/* ═══════════════════════════════════════
   BASE
═══════════════════════════════════════ */
:root{
  --g:#1a3c34;--gm:#2d6a5a;--gl:#e8f4f0;
  --o:#d4622a;--oh:#bf5523;
  --cr:#fdf8f2;--crd:#f4ede2;
  --tx:#1a1a1a;--txm:#5a5a5a;--bd:#ddd5c8;
  --w:#fff;--r:12px;
  --sh:0 4px 24px rgba(26,60,52,.10);
  --shl:0 8px 48px rgba(26,60,52,.15);
  --max:1120px;
  --ease:cubic-bezier(.4,0,.2,1)
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;color:var(--tx);background:var(--w);line-height:1.6;-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;min-height:100dvh}
main{flex:1}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
::selection{background:var(--g);color:var(--w)}

/* SKIP */
.skip-link{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:fixed;top:0;left:0;width:auto;height:auto;padding:.6rem 1rem;background:var(--o);color:#fff;font-weight:700;z-index:9999;border-radius:0 0 8px 0}

/* ═══════════════════════════════════════
   BUTTONS
═══════════════════════════════════════ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.6rem 1.15rem;border-radius:8px;font-weight:600;font-size:.88rem;border:none;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s;font-family:inherit;text-decoration:none;position:relative;overflow:hidden}
.btn::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,0);transition:background .2s}
.btn:hover::after{background:rgba(255,255,255,.08)}
.btn:active{transform:scale(.96)}
.btn-orange{background:var(--o);color:var(--w);box-shadow:0 2px 12px rgba(212,98,42,.25)}
.btn-orange:hover{background:var(--oh);box-shadow:0 4px 20px rgba(212,98,42,.40)}
.btn-ghost{background:transparent;color:var(--w);border:1.5px solid rgba(255,255,255,.45)}
.btn-ghost:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.7)}
.btn-lg{padding:.85rem 2rem;font-size:1rem;border-radius:10px}
.btn-outline-white{background:transparent;color:var(--w);border:2px solid rgba(255,255,255,.55)}
.btn-outline-white:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.85)}
.btn-white{background:var(--w);color:var(--g);box-shadow:0 2px 10px rgba(0,0,0,.08)}
.btn-white:hover{background:var(--cr);box-shadow:0 4px 18px rgba(0,0,0,.12)}
.btn-cookie-accept{background:var(--w);color:var(--g);font-weight:700;box-shadow:0 2px 10px rgba(0,0,0,.08);display:inline-flex;align-items:center;justify-content:center;padding:.6rem 1.15rem;border-radius:8px;border:none;cursor:pointer;font-family:inherit;transition:background .2s}

/* ═══════════════════════════════════════
   HEADER
═══════════════════════════════════════ */
.nav-toggle{display:none}
.hdr{position:sticky;top:0;z-index:100;background:var(--g);padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;box-shadow:0 2px 16px rgba(0,0,0,.18)}
.hdr-logo{display:flex;align-items:center;gap:.6rem;color:var(--w)}
.hdr-logo svg{width:30px;height:30px;flex-shrink:0;transition:transform .3s var(--ease)}
.hdr-logo:hover svg{transform:scale(1.1) rotate(-3deg)}
.hdr-logo strong{font-weight:700;font-size:.9rem}
.hdr-logo small{display:none;font-size:.7rem;color:rgba(255,255,255,.72)}
.hdr-burger{display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:.4rem;margin-left:auto;order:2}
.hdr-burger span{display:block;width:24px;height:2px;background:var(--w);border-radius:2px;transition:transform .28s var(--ease),opacity .2s}
.nav-toggle:checked ~ .hdr .hdr-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle:checked ~ .hdr .hdr-burger span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-toggle:checked ~ .hdr .hdr-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.hdr-nav{display:none;width:100%;order:4;flex-direction:column;gap:.2rem;padding:.6rem 0 .3rem;border-top:1px solid rgba(255,255,255,.1)}
.nav-toggle:checked ~ .hdr .hdr-nav{display:flex}
.hdr-nav a{color:rgba(255,255,255,.82);font-size:.92rem;font-weight:500;padding:.55rem .75rem;border-radius:7px;transition:background .18s,color .18s,padding-left .18s}
.hdr-nav a:hover,.hdr-nav a.active{background:rgba(255,255,255,.12);color:var(--w);padding-left:1rem}
.hdr-cta{display:flex;align-items:center;gap:.5rem;order:3}
.hdr-phone{color:var(--w);font-weight:700;font-size:.85rem;display:flex;align-items:center;gap:.3rem;white-space:nowrap}
.hdr-phone svg{width:15px;height:15px}
.hdr-cta .btn{display:none}

/* ═══════════════════════════════════════
   HERO
═══════════════════════════════════════ */
.hero{background:linear-gradient(135deg,var(--g) 0%,var(--gm) 55%,#3d8b75 100%);color:var(--w);padding:3rem 1rem 2.5rem;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.025'%3E%3Cpath d='M0 0h40v40H0V0zm40 40h40v40H40V40z'/%3E%3C/g%3E%3C/svg%3E") repeat;pointer-events:none}
.hero-inner{max-width:var(--max);margin:0 auto;position:relative;z-index:1}
.hero-grid{display:flex;flex-direction:column;gap:2rem}
.hero-badge{display:inline-flex;align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:50px;padding:.32rem .85rem;font-size:.74rem;font-weight:500;margin-bottom:.9rem;color:rgba(255,255,255,.9);backdrop-filter:blur(4px)}
.hero h1{font-size:clamp(1.65rem,7vw,2.9rem);font-weight:800;line-height:1.15;margin-bottom:.9rem}
.hero h1 em{font-style:normal;color:#7dd4b8}
.hero-sub{font-size:.95rem;color:rgba(255,255,255,.82);margin-bottom:1.5rem}
.hero-cta{display:flex;gap:.65rem;flex-wrap:wrap;margin-bottom:1.4rem}
.hero-trust{display:flex;gap:1rem;flex-wrap:wrap}
.hero-trust-item{display:flex;align-items:center;gap:.35rem;font-size:.77rem;color:rgba(255,255,255,.72)}
.hero-trust-item::before{content:"✓";color:#7dd4b8;font-weight:700}
.hero-form{background:var(--w);border-radius:var(--r);padding:1.5rem;color:var(--tx);box-shadow:var(--shl)}
.hero-form h2,.hero-form h3{font-size:1rem;font-weight:700;margin-bottom:.22rem;color:var(--g)}
.hero-form > p{font-size:.79rem;color:var(--txm);margin-bottom:.9rem}
.fld{margin-bottom:.7rem}
.fld label{display:block;font-size:.77rem;font-weight:600;margin-bottom:.2rem}
.fld input,.fld textarea,.fld select{width:100%;padding:.58rem .82rem;border:1.5px solid var(--bd);border-radius:8px;font-size:.91rem;font-family:inherit;background:var(--cr);transition:border .18s,box-shadow .18s;outline:none}
.fld input:focus,.fld textarea:focus,.fld select:focus{border-color:var(--gm);background:var(--w);box-shadow:0 0 0 3px rgba(45,106,90,.12)}
.fld textarea{resize:vertical;min-height:66px}
.form-ok{display:none;background:#e8f4f0;border:1.5px solid #7dd4b8;border-radius:8px;padding:1rem;text-align:center;color:var(--g);font-weight:600;margin-bottom:.75rem}
.form-note{font-size:.71rem;color:var(--txm);text-align:center;margin-top:.45rem}

/* ═══════════════════════════════════════
   STATS
═══════════════════════════════════════ */
.stats{background:var(--crd);padding:1.75rem 1rem;border-top:3px solid var(--o)}
.stats > div{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.stat{text-align:center}
.stat-num{font-size:1.8rem;font-weight:800;color:var(--g);line-height:1}
.stat-label{font-size:.77rem;color:var(--txm);margin-top:.2rem}

/* ═══════════════════════════════════════
   CONTENT SECTIONS — structural selectors
═══════════════════════════════════════ */
main > section:not(.hero):not(.stats):not(.cta-band){padding:3rem 1rem}
main > section:not(.hero):not(.stats):not(.cta-band) > div{max-width:var(--max);margin:0 auto}

/* Cream backgrounds */
#pain,#gallery,#kvartali,#process,#reviews,#contact{background:var(--cr)}

/* Tag (small element) */
main > section small{display:inline-block;background:var(--gl);color:var(--gm);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:.26rem .68rem;border-radius:50px;margin-bottom:.55rem}

/* Section heading */
main > section h2{font-size:clamp(1.4rem,5vw,2.15rem);font-weight:800;color:var(--g);margin-bottom:.5rem;line-height:1.2}

/* Lead paragraph — first p after h2 */
main > section h2 + p{font-size:.92rem;color:var(--txm);margin-bottom:1.75rem}

/* ── PAIN ── */
.pain-grid{display:flex;flex-direction:column;gap:1.1rem}
.pain-grid > div{background:var(--w);border:1px solid var(--bd);border-radius:var(--r);padding:1.4rem;border-top:3px solid var(--o);transition:box-shadow .25s,transform .25s}
.pain-grid > div:hover{box-shadow:var(--sh);transform:translateY(-3px)}
.pain-grid > div > div:first-child,.pain-icon{font-size:1.6rem;margin-bottom:.6rem}
.pain-grid h3{font-size:.97rem;font-weight:700;color:var(--g);margin-bottom:.32rem}
.pain-grid p{font-size:.86rem;color:var(--txm);line-height:1.6}

/* ── SERVICES ── */
.svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.svc-grid > div{background:var(--w);border:1px solid var(--bd);border-radius:var(--r);padding:1.2rem;transition:border-color .22s,box-shadow .22s,transform .22s;cursor:default}
.svc-grid > div:hover{border-color:var(--gm);box-shadow:var(--sh);transform:translateY(-3px)}
.svc-grid > div > div:first-child,.svc-icon{width:40px;height:40px;background:var(--gl);border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin-bottom:.7rem}
.svc-grid h3{font-size:.88rem;font-weight:700;color:var(--g);margin-bottom:.28rem}
.svc-grid > div > p{font-size:.8rem;color:var(--txm);line-height:1.55}

/* ── GALLERY ── */
.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}
.gallery-grid > div{border-radius:10px;overflow:hidden;aspect-ratio:4/3;cursor:pointer;position:relative}
.gallery-grid > div img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}
.gallery-grid > div:hover img{transform:scale(1.06)}
.gallery-grid > div span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.68));color:#fff;font-size:.75rem;padding:.5rem .65rem;opacity:0;transform:translateY(4px);transition:opacity .25s,transform .25s}
.gallery-grid > div:hover span{opacity:1;transform:none}
.gallery-grid > .wide{grid-column:span 1}

/* ── VIDEOS ── */
.vid-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}
.vid-tile{border-radius:10px;overflow:hidden;aspect-ratio:9/16;position:relative;background:#111;cursor:pointer}
.vid-tile video,.vid-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}
.vid-tile:hover img{transform:scale(1.04)}
.vid-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.28);transition:background .22s}
.vid-tile:hover .vid-play{background:rgba(0,0,0,.12)}
.vid-play-ic{width:50px;height:50px;background:rgba(255,255,255,.92);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .22s,box-shadow .22s}
.vid-tile:hover .vid-play-ic{transform:scale(1.1);box-shadow:0 4px 20px rgba(0,0,0,.3)}
.vid-play-ic svg{width:18px;height:18px;color:var(--g);margin-left:3px}

/* ── NEIGHBORHOODS ── */
.kvart-grid{display:flex;flex-direction:column;gap:1.75rem;margin-bottom:1.5rem}
.kvart-grid > div:first-child p{color:var(--txm);margin-bottom:.75rem;font-size:.9rem}
.kvart-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.65rem}
.kvart-tags span{background:var(--gl);color:var(--g);font-size:.78rem;font-weight:600;padding:.26rem .65rem;border-radius:50px;transition:background .18s,color .18s}
.kvart-tags span:hover{background:var(--g);color:var(--w)}
.kvart-box{background:var(--g);color:var(--w);border-radius:var(--r);padding:1.4rem}
.kvart-box h3{font-size:.95rem;font-weight:700;margin-bottom:.65rem;color:#7dd4b8}
.kvart-box ul{display:flex;flex-direction:column;gap:.5rem}
.kvart-box li{display:flex;gap:.4rem;font-size:.84rem;color:rgba(255,255,255,.82)}
.kvart-box li::before{content:"✓";color:#7dd4b8;font-weight:700;flex-shrink:0}

/* ── WHY ── */
.why-grid{display:flex;flex-direction:column;gap:1.1rem}
.why-card{display:flex;gap:.9rem;background:var(--w);border:1px solid var(--bd);border-radius:var(--r);padding:1.25rem;transition:border-color .22s,box-shadow .22s,transform .22s}
.why-card:hover{border-color:var(--gm);box-shadow:var(--sh);transform:translateY(-2px)}
.why-ic{width:44px;height:44px;background:var(--g);border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0;transition:transform .22s}
.why-card:hover .why-ic{transform:rotate(-5deg) scale(1.08)}
.why-txt h3{font-size:.92rem;font-weight:700;color:var(--g);margin-bottom:.25rem}
.why-txt p{font-size:.83rem;color:var(--txm);line-height:1.55}

/* ── PROCESS ── */
.process-steps{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;counter-reset:step}
.step{text-align:center;padding:1.25rem;border-radius:var(--r);border:1px solid var(--bd);background:var(--w);transition:box-shadow .22s,transform .22s}
.step:hover{box-shadow:var(--sh);transform:translateY(-3px)}
.step-num{width:48px;height:48px;background:var(--g);color:var(--w);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:800;margin:0 auto .8rem;transition:transform .25s}
.step:hover .step-num{transform:scale(1.12) rotate(5deg)}
.step h3{font-size:.9rem;font-weight:700;color:var(--g);margin-bottom:.3rem}
.step p{font-size:.8rem;color:var(--txm);line-height:1.55}

/* ── CONTENT COLS ── */
.content-cols{display:flex;flex-direction:column;gap:1.75rem}
.content-cols h3{font-size:1rem;font-weight:700;color:var(--g);margin-bottom:.5rem}
.content-cols p,.content-cols li{font-size:.87rem;color:var(--txm);line-height:1.7;margin-bottom:.5rem}
.content-cols ul{display:flex;flex-direction:column;gap:.35rem}
.content-cols li{display:flex;gap:.4rem}
.content-cols li::before{content:"▸";color:var(--o);flex-shrink:0}
.tip-box{background:var(--gl);border-left:4px solid var(--gm);border-radius:0 8px 8px 0;padding:.9rem 1.1rem;margin-top:.8rem}
.tip-box p{color:var(--g);font-size:.84rem;font-weight:500}

/* ── REVIEWS ── */
.reviews-grid{display:flex;flex-direction:column;gap:1rem}
.review{background:var(--w);border:1px solid var(--bd);border-radius:var(--r);padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;transition:box-shadow .25s,transform .25s}
.review:hover{box-shadow:var(--sh);transform:translateY(-2px)}
.review-stars{color:#f59e0b;font-size:.92rem;letter-spacing:.05em}
.review-text{font-size:.86rem;color:var(--tx);line-height:1.65;flex:1}
.review-author{display:flex;align-items:center;gap:.6rem}
.review-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;transition:transform .22s}
.review:hover .review-avatar{transform:scale(1.1)}
.review-info strong{display:block;font-size:.84rem;font-weight:700}
.review-info span{font-size:.73rem;color:var(--txm)}

/* ── FAQ ── */
.faq-list{display:flex;flex-direction:column;gap:.6rem}
.faq-item{border:1px solid var(--bd);border-radius:10px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.faq-item:hover{border-color:var(--gm)}
.faq-item summary{padding:.9rem 1rem;font-weight:600;font-size:.9rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--g);transition:background .18s;user-select:none;-webkit-user-select:none}
.faq-item summary:hover{background:var(--gl)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-size:1.15rem;color:var(--o);flex-shrink:0;transition:transform .25s var(--ease)}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item[open]{border-color:var(--gm);box-shadow:0 2px 12px rgba(26,60,52,.08)}
.faq-body{padding:.05rem 1rem .9rem;font-size:.86rem;color:var(--txm);line-height:1.7}

/* ── CTA BAND ── */
.cta-band{background:linear-gradient(135deg,var(--o) 0%,#c05525 100%);padding:2.75rem 1rem;text-align:center;color:var(--w);position:relative;overflow:hidden}
.cta-band::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Ccircle cx='20' cy='20' r='3'/%3E%3C/g%3E%3C/svg%3E") repeat;pointer-events:none}
.cta-band h2{font-size:clamp(1.35rem,5vw,1.95rem);font-weight:800;margin-bottom:.55rem;position:relative}
.cta-band p{font-size:.9rem;color:rgba(255,255,255,.88);margin-bottom:1.4rem;position:relative}
.cta-btns{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;position:relative}

/* ── CONTACT ── */
.contact-grid{display:flex;flex-direction:column;gap:2rem}
.contact-info h2,.contact-info h3{font-size:1.05rem;font-weight:700;color:var(--g);margin-bottom:1rem}
.c-detail{display:flex;align-items:flex-start;gap:.65rem;margin-bottom:.9rem}
.c-ic{width:38px;height:38px;background:var(--gl);border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0;transition:background .2s,transform .2s}
.c-detail:hover .c-ic{background:var(--g);color:var(--w);transform:scale(1.08)}
.c-txt strong{display:block;font-size:.85rem;font-weight:700;color:var(--g)}
.c-txt span{font-size:.83rem;color:var(--txm)}
.c-txt a{color:#8f3e10;font-weight:600;transition:color .18s}
.c-txt a:hover{color:var(--g)}
.map-wrap{border-radius:var(--r);overflow:hidden;margin-top:1.1rem;height:200px;box-shadow:var(--sh)}
.map-wrap iframe{width:100%;height:100%;border:none;display:block}
.cform-wrap{background:var(--cr);border-radius:var(--r);padding:1.5rem;border:1px solid var(--bd)}
.cform-wrap h2,.cform-wrap h3{font-size:1rem;font-weight:700;color:var(--g);margin-bottom:.9rem}
.contact-note{background:var(--gl);border-radius:var(--r);padding:1rem 1.1rem;margin-top:.75rem}
.contact-note h3{font-size:.9rem;font-weight:700;color:var(--g);margin-bottom:.28rem}
.contact-note p{font-size:.83rem;color:var(--txm)}

/* ── FOOTER ── */
.footer{background:var(--g);color:rgba(255,255,255,.75);padding:2.25rem 1rem 1.5rem}
.footer > div{max-width:var(--max);margin:0 auto}
.footer-grid{display:flex;flex-direction:column;gap:1.75rem;margin-bottom:1.75rem}
.footer-brand{color:var(--w);font-size:.9rem;font-weight:700;margin-bottom:.35rem}
.footer-brand span{color:#7dd4b8}
.footer p{font-size:.8rem;line-height:1.6;margin-top:.4rem}
.footer h4{font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:rgba(255,255,255,.65);margin-bottom:.55rem}
.footer ul{display:flex;flex-direction:column;gap:.4rem}
.footer li a{font-size:.82rem;color:rgba(255,255,255,.68);transition:color .18s,padding-left .18s;display:inline-block}
.footer li a:hover{color:var(--w);padding-left:.35rem}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:1rem;font-size:.73rem;color:rgba(255,255,255,.58);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}

/* ── PAGE HERO ── */
.page-hero{background:linear-gradient(135deg,var(--g) 0%,var(--gm) 100%);color:var(--w);padding:2.5rem 1rem 2rem}
.page-hero > div{max-width:var(--max);margin:0 auto}
.breadcrumb{display:flex;align-items:center;gap:.35rem;font-size:.76rem;color:rgba(255,255,255,.75);margin-bottom:.9rem;flex-wrap:wrap}
.breadcrumb a{color:rgba(255,255,255,.82);transition:color .18s}
.breadcrumb a:hover{color:var(--w)}
.page-hero h1{font-size:clamp(1.5rem,6vw,2.4rem);font-weight:800;line-height:1.2}
.page-hero p,.page-hero .hero-sub{font-size:.95rem;color:rgba(255,255,255,.78);margin-top:.55rem}

/* ── ABOUT ── */
.about-intro{display:flex;flex-direction:column;gap:1.75rem}
.about-intro h2{font-size:clamp(1.35rem,4vw,1.9rem);font-weight:800;color:var(--g);margin-bottom:.65rem;line-height:1.25}
.about-intro p{font-size:.9rem;color:var(--txm);line-height:1.7;margin-bottom:.65rem}
.about-img{border-radius:var(--r);overflow:hidden}
.team-grid{display:flex;flex-direction:column;gap:1.1rem}
.team-card{background:var(--w);border:1px solid var(--bd);border-radius:var(--r);padding:1.35rem;text-align:center;transition:box-shadow .25s,transform .25s}
.team-card:hover{box-shadow:var(--sh);transform:translateY(-3px)}
.team-card img{width:80px;height:80px;border-radius:50%;object-fit:cover;margin:0 auto .8rem;transition:transform .3s}
.team-card:hover img{transform:scale(1.08)}
.team-role{font-size:.77rem;color:#8f3e10;font-weight:600;margin-bottom:.32rem}
.team-card h3{font-size:.9rem;font-weight:700;color:var(--g);margin-bottom:.18rem}
.team-card p{font-size:.8rem;color:var(--txm)}
.timeline{display:flex;flex-direction:column;gap:1.1rem}
.tl-item{display:flex;gap:1.1rem}
.tl-year{min-width:52px;font-weight:800;font-size:.95rem;color:var(--o);padding-top:.05rem}
.tl-body h3{font-size:.9rem;font-weight:700;color:var(--g);margin-bottom:.2rem}
.tl-body p{font-size:.84rem;color:var(--txm);line-height:1.6}

/* ── POLICY ── */
.policy-content h2{font-size:1.1rem;font-weight:700;color:var(--g);margin:1.75rem 0 .55rem}
.policy-content h2:first-child{margin-top:0}
.policy-content p,.policy-content li{font-size:.89rem;color:var(--txm);line-height:1.75;margin-bottom:.5rem}
.policy-content ul{margin:.5rem 0 .5rem 1.1rem;list-style:disc}

/* ── COOKIE BANNER ── */
.cookie-bar{position:fixed;bottom:0;left:0;right:0;background:var(--g);color:rgba(255,255,255,.88);padding:1rem 1.25rem;z-index:500;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 -4px 24px rgba(0,0,0,.2);transform:translateY(100%);animation:slideUp .4s .8s var(--ease) forwards}
@keyframes slideUp{to{transform:none}}
.cookie-bar p{font-size:.82rem;line-height:1.55}
.cookie-bar a{color:#7dd4b8;text-decoration:underline}
.cookie-bar-btns{display:flex;gap:.6rem;flex-wrap:wrap}
.cookie-bar[hidden]{display:none}

/* SCROLL REVEAL */
main > section:not(.hero){opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
main > section:not(.hero).visible,.stats{opacity:1;transform:none}
.stats{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.stats.visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  main > section,.stats{opacity:1;transform:none;transition:none}
  .cookie-bar{animation:none;transform:none}
}

/* ═══════════════════════════════════════
   TABLET  ≥ 600px
═══════════════════════════════════════ */
@media(min-width:600px){
  .hdr{padding:.75rem 1.5rem}
  .hdr-logo small{display:block}
  .hdr-cta .btn{display:inline-flex}
  .hero{padding:4rem 1.5rem 3rem}
  .stats > div{grid-template-columns:repeat(4,1fr)}
  .stat-num{font-size:2rem}
  main > section:not(.hero):not(.stats):not(.cta-band){padding:4rem 1.5rem}
  .pain-grid{display:grid;grid-template-columns:1fr 1fr}
  .gallery-grid{grid-template-columns:repeat(3,1fr)}
  .gallery-grid > .wide{grid-column:span 2}
  .reviews-grid{display:grid;grid-template-columns:1fr 1fr}
  .content-cols{display:grid;grid-template-columns:1fr 1fr;gap:2.25rem}
  .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
  .footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
  .team-grid{display:grid;grid-template-columns:1fr 1fr}
  .cookie-bar{flex-direction:row;align-items:center}
  .cookie-bar p{flex:1}
  .cta-band{padding:3.5rem 1.5rem}
}

/* ═══════════════════════════════════════
   DESKTOP  ≥ 960px
═══════════════════════════════════════ */
@media(min-width:960px){
  .hdr-burger{display:none}
  .hdr-nav{display:flex !important;flex-direction:row;width:auto;order:unset;gap:.15rem;padding:0;border:none}
  .hdr-nav a{padding:.4rem .75rem}
  .hdr-nav a:hover,.hdr-nav a.active{padding-left:.75rem}
  .hero{padding:5rem 1.5rem 4rem}
  .hero-grid{display:grid;grid-template-columns:1fr 400px;gap:3rem;align-items:center}
  .hero-sub{font-size:1.05rem;max-width:520px}
  .pain-grid{grid-template-columns:repeat(3,1fr)}
  .svc-grid{grid-template-columns:repeat(4,1fr)}
  .gallery-grid{grid-template-columns:repeat(4,1fr)}
  .gallery-grid > .wide{grid-column:span 2}
  .kvart-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}
  .why-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
  .process-steps{grid-template-columns:repeat(4,1fr)}
  .reviews-grid{grid-template-columns:repeat(3,1fr)}
  .faq-list{max-width:780px}
  .footer-grid{grid-template-columns:2fr 1fr 1fr}
  .team-grid{grid-template-columns:repeat(3,1fr)}
  .about-intro{display:grid;grid-template-columns:1fr 420px;gap:2.5rem;align-items:start}
}
