

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;color:#e0e0e0;background:#0d0d0d;line-height:1.7;-webkit-font-smoothing:antialiased}
body::before{content:'';position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 20% 50%,rgba(122,21,21,.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(184,29,19,.1) 0%,transparent 50%),radial-gradient(ellipse at 50% 80%,rgba(94,10,5,.12) 0%,transparent 50%);z-index:-1;pointer-events:none}
a{color:#F8CB59;text-decoration:none;transition:all .3s}
a:hover{color:#e6b840}
img{max-width:100%;height:auto}
.container{max-width:1140px;margin:0 auto;padding:0 1.5rem}

/* ===== NAV — Glassmorphism ===== */
nav{position:fixed;top:0;left:0;right:0;z-index:1000}
nav .nav-top{background:rgba(15,5,5,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}
nav .nav-top .container{display:flex;justify-content:flex-end;gap:2rem}
nav .nav-top a{color:rgba(255,255,255,.7);font-size:.82rem;font-weight:500}
nav .nav-main{background:rgba(15,5,5,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.06);transition:all .3s}
nav .nav-main .container{display:flex;align-items:center;justify-content:space-between;min-height:68px}
nav .logo img{height:45px;filter:drop-shadow(0 0 10px rgba(184,29,19,.5)) brightness(1.1)}
nav .logo span{font-size:1.25rem;font-weight:700;color:#F8CB59}
nav .logo-text{font-size:.82rem;font-weight:800;color:#F8CB59;text-decoration:none;letter-spacing:.02em;line-height:1.1;display:flex;align-items:center;gap:.1rem;white-space:nowrap;flex-shrink:0}
nav .logo-text .logo-amp{color:#B81D13;font-size:1.1rem}
@media(max-width:768px){nav .logo-text{font-size:.75rem}}
nav .menu{display:flex;gap:.7rem;list-style:none;align-items:center;white-space:nowrap}
nav .menu a{color:rgba(255,255,255,.75);font-size:.78rem;font-weight:500;padding:.25rem 0;position:relative;transition:all .3s}
nav .menu a::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(90deg,#B81D13,#F8CB59);transition:width .3s;border-radius:2px}
nav .menu a:hover{color:#F8CB59}
.nav-dropdown{position:relative}
.nav-dropdown-toggle{cursor:pointer}
.nav-dropdown-menu{display:none;position:absolute;top:100%;left:0;background:rgba(15,5,5,.95);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:.5rem 0;min-width:220px;z-index:1001}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown-menu.show{display:block}
.nav-dropdown-menu a{display:block;padding:.65rem 1.25rem;font-size:.85rem;color:rgba(255,255,255,.7);white-space:nowrap}
.nav-dropdown-menu a:hover{background:rgba(248,203,89,.08);color:#F8CB59}
nav .menu a:hover::after{width:100%}
nav .menu a.active{color:#F8CB59;font-weight:600}
nav .btn-book{display:inline-block;background:linear-gradient(135deg,#F8CB59,#e6b840);color:#000!important;padding:.6rem 1.5rem;border-radius:25px;font-size:.85rem;font-weight:600;transition:all .3s;box-shadow:0 2px 12px rgba(248,203,89,.2)}
nav .btn-book:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(248,203,89,.35)}
nav.scrolled .nav-main{box-shadow:0 4px 30px rgba(0,0,0,.3)}


.clinic-name{font-size:.8rem;font-weight:600;color:rgba(255,255,255,.5);letter-spacing:.2em;text-transform:uppercase;margin-bottom:.75rem}


/* ===== SECTIONS ===== */
section{padding:5rem 0;position:relative}
section h2{font-size:2rem;font-weight:800;text-align:center;margin-bottom:1rem;background:linear-gradient(135deg,#F8CB59,#e6b840);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
section .subtitle{text-align:center;color:rgba(255,255,255,.5);margin-bottom:3rem;font-size:.95rem;max-width:550px;margin-left:auto;margin-right:auto}
section.alt{background:rgba(255,255,255,.02)}

.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1)}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ===== GOOGLE REVIEWS BAR ===== */
.reviews-bar{background:rgba(15,5,5,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:1.5rem 0;text-align:center;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}
.reviews-bar h2{font-size:1.5rem;color:#F8CB59;margin-bottom:0;font-weight:700;-webkit-text-fill-color:#F8CB59}

/* ===== SERVICES — Glass cards ===== */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.service-card{display:block!important;text-align:center;padding:2rem 1.5rem;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}
.service-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(184,29,19,.08),transparent 70%);opacity:0;transition:opacity .4s}
.service-card:hover{transform:translateY(-6px);border-color:rgba(184,29,19,.3);box-shadow:0 12px 40px rgba(184,29,19,.1),0 0 0 1px rgba(184,29,19,.1) inset}
.service-card:hover::before{opacity:1}
.service-card .icon{font-size:2.5rem;margin-bottom:.75rem;display:block;filter:drop-shadow(0 2px 8px rgba(184,29,19,.2))}.service-card-img{width:100%;height:140px;object-fit:cover;border-radius:8px;margin-bottom:.75rem;display:block;transition:all .4s cubic-bezier(.4,0,.2,1)}.service-card:hover .service-card-img{transform:scale(1.03);filter:brightness(1.1)}
.service-card .price-badge{display:inline-block;background:rgba(248,203,89,.15);color:#F8CB59;font-size:.78rem;font-weight:700;padding:.2rem .8rem;border-radius:12px;margin-bottom:.5rem;border:1px solid rgba(248,203,89,.25)}
.service-card:hover .price-badge{background:rgba(248,203,89,.25);border-color:rgba(248,203,89,.4)}
.service-card .calc-badge{display:inline-block;background:rgba(184,29,19,.15);color:#B81D13;font-size:.72rem;font-weight:700;padding:.18rem .65rem;border-radius:10px;margin-top:.3rem;border:1px solid rgba(184,29,19,.25);cursor:pointer;transition:all .3s;position:relative;z-index:2}
.service-card:hover .calc-badge{background:rgba(184,29,19,.3);color:#f05a4a;border-color:rgba(184,29,19,.5)}
.service-card .calc-badge{display:inline-block;background:rgba(184,29,19,.15);color:#B81D13;font-size:.72rem;font-weight:700;padding:.18rem .65rem;border-radius:10px;margin-top:.3rem;border:1px solid rgba(184,29,19,.25);cursor:pointer;transition:all .3s;position:relative;z-index:2}
.service-card:hover .calc-badge{background:rgba(184,29,19,.3);color:#f05a4a;border-color:rgba(184,29,19,.5)}
.service-card h3{font-size:1.05rem;font-weight:700;margin-bottom:.5rem;color:#F8CB59}
.service-card p{font-size:.82rem;color:rgba(255,255,255,.55);line-height:1.5;max-width:280px;margin:0 auto}

/* ===== REVIEWS — Glass cards ===== */
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.review-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.5rem;transition:all .4s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(4px)}
.review-card:hover{border-color:rgba(248,203,89,.2);box-shadow:0 8px 32px rgba(0,0,0,.3);transform:translateY(-4px)}
.review-card .stars{color:#F8CB59;font-size:.9rem;margin-bottom:.5rem}
.review-card .stars span{color:rgba(255,255,255,.3);font-size:.75rem;margin-left:.5rem}
.review-card p{font-size:.88rem;color:rgba(255,255,255,.6);line-height:1.6}
.review-card .author{font-size:.82rem;font-weight:600;color:#F8CB59;margin-top:.6rem}

/* ===== CASES — Glass cards ===== */
.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.case-card{display:block!important;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;padding:0;aspect-ratio:1/1}
.case-card:hover{transform:translateY(-6px);border-color:rgba(184,29,19,.3);box-shadow:0 12px 40px rgba(184,29,19,.1),0 0 0 1px rgba(184,29,19,.1) inset}
.case-card .case-img{height:100%;background-size:cover;background-position:center;position:relative}
.case-card .case-img .case-tag{position:absolute;top:12px;left:12px;background:rgba(184,29,19,.9);backdrop-filter:blur(4px);color:#fff;font-size:.68rem;font-weight:700;padding:.2rem .7rem;border-radius:6px}
.case-card .case-body{padding:1.25rem}
.case-card .case-body h3{font-size:1rem;font-weight:700;color:#F8CB59;margin-bottom:.35rem}
.case-card .case-body .case-patient{font-size:.8rem;color:#B81D13;font-weight:600;margin-bottom:.5rem}
.case-card .case-body p{font-size:.84rem;color:rgba(255,255,255,.55);line-height:1.6}
.case-card .case-body .case-outcome{display:inline-block;margin-top:.6rem;padding:.25rem .6rem;background:rgba(45,122,45,.15);border:1px solid rgba(45,122,45,.3);color:#4ade80;font-size:.72rem;font-weight:600;border-radius:6px}
.case-card .case-body{display:none}

.case-card .case-img{cursor:pointer;position:relative}
.case-card .case-img::after{content:'📱 Lihat di Facebook';position:absolute;bottom:0;left:0;right:0;background:rgba(15,5,5,.9);backdrop-filter:blur(4px);color:rgba(255,255,255,.8);font-size:.7rem;font-weight:600;padding:.35rem;text-align:center;transition:all .3s;opacity:0}
.case-card:hover .case-img::after{opacity:1}


/* ===== HOURS — Glass box ===== */
.hours-box{max-width:480px;margin:0 auto;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;background:rgba(255,255,255,.02);backdrop-filter:blur(4px)}
.hours-box .row{display:flex;justify-content:space-between;padding:1rem 1.5rem;font-size:.9rem;color:rgba(255,255,255,.7);transition:background .3s}
.hours-box .row+.row{border-top:1px solid rgba(255,255,255,.05)}
.hours-box .row:hover{background:rgba(255,255,255,.04)}

/* ===== CONTACT ===== */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.contact-item{display:flex;gap:.85rem;padding:.85rem 0}
.contact-item+.contact-item{border-top:1px solid rgba(255,255,255,.06)}
.contact-item .ci{font-size:1.2rem;flex-shrink:0}
.contact-item h4{font-size:.9rem;font-weight:700;color:#F8CB59;margin-bottom:.15rem}
.contact-item p,.contact-item a{font-size:.85rem;color:rgba(255,255,255,.5);line-height:1.5}
.map-frame{border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08);height:340px}
.map-frame iframe{width:100%;height:100%;border:0;filter:grayscale(80%) contrast(1.1)}

/* ===== FOOTER ===== */
footer{background:rgba(10,3,3,.98);backdrop-filter:blur(12px);color:rgba(255,255,255,.6);padding:4rem 0 0;border-top:1px solid rgba(255,255,255,.06)}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:2.5rem}
.footer-grid h3{color:#F8CB59;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:1rem;position:relative;padding-bottom:.5rem}
.footer-grid h3::after{content:'';position:absolute;bottom:0;left:0;width:30px;height:2px;background:linear-gradient(90deg,#B81D13,#F8CB59);border-radius:2px}
.footer-grid p,.footer-grid a,.footer-grid li{font-size:.84rem;color:rgba(255,255,255,.45);line-height:2;transition:all .3s}
.footer-grid a:hover{color:#F8CB59;padding-left:4px}
.footer-about p{line-height:1.8;margin-bottom:.75rem}
.footer-about .clinic-name{font-size:1.1rem;font-weight:800;color:#F8CB59;margin-bottom:.5rem;display:block}
.footer-links{list-style:none;padding:0}
.footer-links li::before{content:'›';color:#B81D13;margin-right:.4rem;font-weight:700}
.footer-contact .contact-row{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:.6rem;line-height:1.6}
.footer-contact .contact-row .ci{flex-shrink:0;font-size:.9rem;margin-top:2px}
.footer-bottom{text-align:center;padding:1.5rem 0;margin-top:3rem;border-top:1px solid rgba(255,255,255,.06);font-size:.78rem;color:rgba(255,255,255,.3);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
@media(max-width:768px){.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
.footer-bottom{flex-direction:column;text-align:center}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}
/* FAQ */
.faq-list{max-width:800px;margin:0 auto}
.faq-item{border:1px solid rgba(255,255,255,.06);border-radius:12px;margin-bottom:.75rem;overflow:hidden;background:rgba(15,15,15,.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.faq-q{padding:1.1rem 1.4rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-weight:600;font-size:.95rem;color:#e0e0e0;transition:color .2s}
.faq-q:hover{color:#F8CB59}
.faq-q::after{content:'+';font-size:1.4rem;color:#B81D13;transition:transform .3s;flex-shrink:0}
.faq-item.open .faq-q::after{transform:rotate(45deg)}
.faq-item.open .faq-q{color:#F8CB59}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s}
.faq-item.open .faq-a{max-height:2000px;padding:0 1.4rem 1.2rem}
.faq-a p,.faq-a ul{font-size:.88rem;color:rgba(255,255,255,.6);line-height:1.8}
.faq-a ul{padding-left:1.2rem;margin:.4rem 0}
.faq-a li{margin-bottom:.3rem}
.faq-cat{margin-top:2rem;margin-bottom:1rem}
.faq-cat h3{color:#F8CB59;font-size:1rem;font-weight:700;display:flex;align-items:center;gap:.5rem}
.faq-cat h3::before{content:'';flex:0 0 4px;height:4px;background:#B81D13;border-radius:2px}
/* Booking */
.booking-form{max-width:500px;margin:0 auto;background:rgba(15,15,15,.8);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:2rem}
.booking-form label{display:block;font-size:.85rem;color:rgba(255,255,255,.6);margin-bottom:.3rem;font-weight:600}
.booking-form select,.booking-form input{width:100%;padding:.75rem 1rem;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:rgba(10,10,10,.8);color:#e0e0e0;font-size:.9rem;font-family:inherit;margin-bottom:1rem;appearance:auto}
.booking-form select:focus,.booking-form input:focus{outline:none;border-color:#F8CB59}
.booking-form .btn-wa{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;background:#25D366;color:#fff;font-size:1rem;font-weight:700;border:none;border-radius:12px;cursor:pointer;transition:background .2s;font-family:inherit}
.booking-form .btn-wa:hover{background:#1da851}
/* Loyalty */
.loyalty-wrap{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center;max-width:900px;margin:0 auto}
.loyalty-img{border-radius:16px;overflow:hidden;border:2px solid rgba(248,203,89,.3);box-shadow:0 10px 40px rgba(0,0,0,.3)}
.loyalty-img img{width:100%;display:block}
.loyalty-info h3{color:#F8CB59;font-size:1.2rem;font-weight:800;margin-bottom:.8rem}
.loyalty-info p,.loyalty-info li{font-size:.88rem;color:rgba(255,255,255,.6);line-height:1.8}
.loyalty-info ul{padding-left:1.2rem;margin:.5rem 0}
.loyalty-info li{margin-bottom:.3rem}
.loyalty-info .loyalty-highlight{color:#F8CB59;font-weight:700;font-size:1rem;margin-top:1rem}
@media(max-width:768px){.loyalty-wrap{grid-template-columns:1fr}}

/* Team */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:900px;margin:0 auto}
.team-photo{border-radius:16px;overflow:hidden;border:2px solid rgba(184,29,19,.3);box-shadow:0 20px 60px rgba(0,0,0,.4)}
.team-photo img{width:100%;display:block}
@media(max-width:600px){.team-grid{grid-template-columns:1fr}}
/* Emergency */
.emergency-banner{background:linear-gradient(135deg,rgba(184,29,19,.15),rgba(10,3,3,.95));border:1px solid rgba(184,29,19,.3);border-radius:16px;padding:2rem;margin-bottom:2rem;text-align:center}
.emergency-banner .eb-icon{font-size:3rem;margin-bottom:.5rem}
.emergency-banner h3{color:#B81D13;font-size:1.2rem;margin-bottom:.5rem}
.emergency-banner p{color:rgba(255,255,255,.7);font-size:.9rem;line-height:1.7}
.emergency-banner a{color:#F8CB59;font-weight:700}
.emergency-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}
.emergency-card{background:rgba(15,15,15,.8);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.5rem;transition:border-color .3s}
.emergency-card:hover{border-color:rgba(184,29,19,.4)}
.emergency-card h4{color:#F8CB59;font-size:1rem;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}
.emergency-card .ec-dist{font-size:.75rem;color:#B81D13;background:rgba(184,29,19,.15);padding:2px 8px;border-radius:20px;font-weight:600}
.emergency-card p{font-size:.85rem;color:rgba(255,255,255,.55);line-height:1.7;margin-bottom:.4rem}
.emergency-card .ec-phone{display:inline-flex;align-items:center;gap:.4rem;font-size:.9rem;color:#F8CB59;font-weight:600;margin-top:.5rem}
.emergency-card .ec-phone:hover{color:#e6b840}
.emergency-card .ec-note{font-size:.78rem;color:rgba(255,255,255,.35);margin-top:.5rem;font-style:italic}
/* Gallery */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.75rem}
.gallery-item{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:12px;cursor:pointer;border:1px solid rgba(255,255,255,.06);transition:border-color .3s,transform .3s}
.gallery-item:hover{border-color:rgba(248,203,89,.3);transform:scale(1.02)}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gallery-item:hover img{transform:scale(1.08)}
.gallery-item .gi-label{position:absolute;bottom:0;left:0;right:0;padding:.6rem .8rem;background:linear-gradient(transparent,rgba(0,0,0,.85));font-size:.8rem;color:rgba(255,255,255,.8)}
.gallery-lightbox{display:none;position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);justify-content:center;align-items:center;cursor:pointer}
.gallery-lightbox.open{display:flex}
.gallery-lightbox img{max-width:92vw;max-height:90vh;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.gallery-lightbox .lb-close{position:absolute;top:1.5rem;right:1.5rem;font-size:2rem;color:#fff;cursor:pointer;background:rgba(255,255,255,.1);border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center}
.gallery-empty{text-align:center;padding:3rem;color:rgba(255,255,255,.3);font-size:.9rem}

/* ===== FLOATING ===== */






/* ===== MOBILE MENU ===== */
.hamburger{display:none;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#F8CB59;padding:.5rem}
@media(max-width:768px){
  .social-float-bar{display:none}
  body{padding-bottom:64px}

  .services-grid{grid-template-columns:1fr}
  .cases-grid{grid-template-columns:1fr}
  .pricing-grid{grid-template-columns:repeat(2,1fr)}
  .contact-grid,.review-grid{grid-template-columns:1fr}
  .hamburger{display:block;position:absolute;right:1rem;top:50%;transform:translateY(-50%);z-index:1001}
  nav .menu{display:none;flex-direction:column;position:fixed;top:0;right:0;width:75%;max-width:320px;height:100vh;background:rgba(15,5,5,.98);backdrop-filter:blur(20px);padding:4rem 2rem 2rem;gap:.6rem;box-shadow:-4px 0 40px rgba(0,0,0,.5);z-index:1000;overflow-y:auto;-webkit-overflow-scrolling:touch}
  nav .menu.open{display:flex}
  nav .menu a{font-size:.85rem;padding:.45rem 0;min-height:36px;display:flex;align-items:center}
  nav .nav-main .container{position:relative}
  .nav-dropdown-menu{position:static;border:none;box-shadow:none;background:rgba(255,255,255,.03);border-radius:8px;margin-top:.3rem}
  .nav-dropdown-menu a{padding:.35rem 1rem;font-size:.8rem}
  nav .btn-book{display:none}
  nav .nav-top .container{justify-content:center}
  .case-card .case-img{height:100%}
  .map-frame{height:240px}
  section{padding:3rem 0}
  section h2{font-size:1.5rem}
  .subtitle{font-size:.85rem;padding:0 .5rem}
  footer{text-align:center}
  
  
}
@media(max-width:480px){
  .pricing-grid{grid-template-columns:1fr}
  .cases-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.85rem!important}
  .cases-facebook-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1rem;line-height:1.35;text-align:center;border:1px solid rgba(248,203,89,.45);border-radius:8px}
}

/* ===== SOCIAL FLOAT BAR ===== */
.mobile-cta-bar{display:none}.mobile-cta-bar a{flex:1;text-align:center;padding:.65rem .4rem;font-size:.78rem;font-weight:700}.mobile-wa{background:#25d366;color:#fff}.mobile-book{background:#F8CB59;color:#000}.mobile-cta-bar{position:fixed;bottom:0;left:0;right:0;z-index:999;gap:4px;padding:.4rem;background:#160606;box-shadow:0 -4px 20px rgba(0,0,0,.4);padding-bottom:calc(.4rem + env(safe-area-inset-bottom))}@media(max-width:768px){body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.mobile-cta-bar{display:flex}}
.social-float-bar{position:fixed;right:12px;top:50%;transform:translateY(-50%);z-index:998;display:flex;flex-direction:column;gap:2px}
.social-float-bar a{display:flex;align-items:center;justify-content:center;width:48px;height:48px;color:#fff;font-size:1.2rem;transition:all .3s;border-radius:8px 0 0 8px;text-decoration:none}
.social-float-bar .soc-wa{background:#25d366}
.social-float-bar .soc-wa:hover{background:#1da851;padding-right:8px}
.social-float-bar .soc-call{background:#B81D13}
.social-float-bar .soc-call:hover{background:#8a150e;padding-right:8px}
.social-float-bar .soc-fb{background:#1877f2}
.social-float-bar .soc-fb:hover{background:#0d65d9;padding-right:8px}
.social-float-bar .soc-email{background:#F8CB59;color:#000}
.social-float-bar .soc-email:hover{background:#e6b840;padding-right:8px}
.social-float-bar .soc-tiktok{background:#000}
.social-float-bar .soc-tiktok:hover{background:#333;padding-right:8px}
@media(max-width:768px){.social-float-bar{right:4px;gap:2px}.social-float-bar a{width:40px;height:40px;font-size:1rem;border-radius:6px 0 0 6px}}


/* ===== SCROLL PROGRESS BAR ===== */
.scroll-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,#B81D13,#F8CB59);z-index:9999;width:0%;transition:width .1s linear}

/* ===== STICKY CTA ===== */
.sticky-cta{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);z-index:997;opacity:0;transition:all .4s cubic-bezier(.4,0,.2,1)}
.sticky-cta.show{transform:translateX(-50%) translateY(0);opacity:1}
.sticky-cta a{display:inline-block;padding:.65rem 2rem;border-radius:30px;font-size:.85rem;font-weight:700;background:linear-gradient(135deg,#F8CB59,#e6b840);color:#000!important;box-shadow:0 4px 24px rgba(248,203,89,.35);text-decoration:none;letter-spacing:.02em}
.sticky-cta a:hover{box-shadow:0 8px 32px rgba(248,203,89,.5);transform:translateY(-2px)}
@media(max-width:600px){body{padding-bottom:calc(5rem + env(safe-area-inset-bottom))}.sticky-cta{bottom:max(16px,env(safe-area-inset-bottom))}.featured-services{grid-template-columns:1fr!important}}

/* ===== SERVICE ICON ANIMATIONS ===== */
.service-card .icon{transition:all .4s cubic-bezier(.4,0,.2,1)}
.service-card:hover .icon{transform:scale(1.15);filter:drop-shadow(0 4px 16px rgba(248,203,89,.4))!important}
/* all service icons now use images */


/* ===== TRUST STATS ===== */
.trust-stats{padding:2.5rem 0;text-align:center;border-bottom:1px solid rgba(255,255,255,.05)}
.trust-grid{display:flex;justify-content:center;gap:2.5rem;flex-wrap:wrap}
.trust-item{text-align:center;min-width:120px}
.trust-item strong{display:block;font-size:2rem;font-weight:800;color:#F8CB59;line-height:1.2}
.trust-item span{font-size:.82rem;color:rgba(255,255,255,.5);font-weight:500}
@media(max-width:768px){.trust-grid{gap:1.5rem}.trust-item strong{font-size:1.5rem}.trust-item span{font-size:.75rem}}

/* ===== KENAPA FAWA ===== */
.kenapa-fawa{background:rgba(255,255,255,.015)}
.pain-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;max-width:900px;margin:0 auto}
.pain-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:1.5rem;backdrop-filter:blur(4px);transition:all .3s}
.pain-card:hover{border-color:rgba(184,29,19,.2);transform:translateY(-2px)}
.pain-card .pain-emoji{font-size:1.8rem;margin-bottom:.5rem}
.pain-card h3{font-size:.95rem;font-weight:700;color:#F8CB59;margin-bottom:.4rem}
.pain-card p{font-size:.82rem;color:rgba(255,255,255,.55);line-height:1.6}
@media(max-width:768px){.pain-grid{grid-template-columns:1fr}}

/* ===== BLOG TIPS ===== */
.tips-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.tip-card{display:block;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:1.5rem;backdrop-filter:blur(4px);text-decoration:none;transition:all .3s}
.tip-card:hover{border-color:rgba(184,29,19,.2);transform:translateY(-4px);box-shadow:0 8px 30px rgba(184,29,19,.08)}
.tip-card img{width:100%;height:180px;object-fit:cover;border-radius:8px;margin-bottom:.75rem}
.tip-card h3{font-size:.95rem;font-weight:700;color:#F8CB59;margin-bottom:.4rem}
.tip-card p{font-size:.8rem;color:rgba(255,255,255,.5);line-height:1.5}
.tips-cta{text-align:center;margin-top:1.5rem}
.tips-cta a{display:inline-block;padding:.75rem 1.5rem;border:1px solid rgba(248,203,89,.55);border-radius:25px;color:#F8CB59;font-weight:600;text-decoration:none;transition:all .3s}
.tips-cta a:hover,.tips-cta a:focus-visible{background:rgba(248,203,89,.12);border-color:#F8CB59;outline:2px solid #F8CB59;outline-offset:3px}
@media(max-width:768px){.tips-grid{grid-template-columns:1fr}.tips-cta a{width:100%;max-width:280px;text-align:center}}

/* ===== LANGUAGE TOGGLE ===== */
.lang-toggle{display:flex;gap:.25rem;margin-left:1rem;flex-shrink:0}
.lang-toggle button{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.5);font-size:.72rem;font-weight:600;min-width:44px;min-height:44px;padding:.2rem .6rem;border-radius:4px;cursor:pointer;transition:all .2s}
.lang-toggle button.active{background:rgba(248,203,89,.15);border-color:#F8CB59;color:#F8CB59}
.lang-toggle button:hover{color:#F8CB59;border-color:rgba(248,203,89,.3)}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}
.blog-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.5rem;transition:all .3s;opacity:1;transform:translateY(0)}
.blog-card:hover{border-color:rgba(184,29,19,.3);transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.3)}
.blog-card .blog-tag{display:inline-block;background:rgba(184,29,19,.15);color:#B81D13;font-size:.72rem;font-weight:600;padding:.2rem .6rem;border-radius:4px;margin-bottom:.8rem}
.blog-card h3{font-size:1.05rem;font-weight:700;color:#fff;margin-bottom:.5rem;line-height:1.4}
.blog-card h3 a{color:#fff}
.blog-card h3 a:hover{color:#F8CB59}
.blog-card p{color:rgba(255,255,255,.55);font-size:.85rem;margin-bottom:.8rem}
.blog-card .blog-meta{color:rgba(255,255,255,.35);font-size:.75rem}
@media(max-width:768px){
  .lang-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);margin-left:0}
  .hamburger{right:5.5rem}
}
@media(max-width:480px){
  nav .nav-main .container{display:grid!important;grid-template-columns:minmax(0,1fr) 48px 92px!important;align-items:center;column-gap:.35rem;padding-right:1rem!important}
  nav .logo-text{grid-column:1;min-width:0;max-width:none;font-size:.68rem;white-space:nowrap;overflow:hidden}
  nav .hamburger{grid-column:2;position:static!important;transform:none!important;width:48px;height:48px;padding:.5rem;display:flex;align-items:center;justify-content:center;z-index:1001}
  nav .lang-toggle{grid-column:3;position:static!important;transform:none!important;width:92px;height:48px;margin:0!important;display:flex;justify-content:flex-end;gap:.25rem;z-index:1002}
  nav .lang-toggle button{min-width:44px;min-height:44px}
}

/* ===== REVIEW CAROUSEL ===== */
.review-track-wrapper{overflow:hidden;position:relative}
.review-track{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1)}
.review-track .review-card{flex:0 0 calc(33.333% - 1rem);margin-right:1.5rem;min-width:280px}
.review-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1.5rem}
.review-dots button{width:10px;height:10px;border-radius:50%;border:none;background:rgba(255,255,255,.15);cursor:pointer;transition:all .3s;padding:0}
.review-dots button.active{background:#F8CB59;width:24px;border-radius:5px}
@media(max-width:768px){.review-track .review-card{flex:0 0 calc(100% - 1rem)}}


/* ===== SYMPTOM CHECKER — Editorial Feature ===== */
.symptom-feature{padding:4rem 0 3rem;position:relative}
.symptom-feature::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:1px;height:60px;background:linear-gradient(transparent,rgba(184,29,19,.3))}
.symptom-label{font-size:.7rem;font-weight:700;color:#B81D13;letter-spacing:.15em;text-transform:uppercase;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}
.symptom-label::before{content:'';width:20px;height:1px;background:#B81D13}
.symptom-headline{font-size:1.8rem;font-weight:800;color:#fff;line-height:1.2;margin-bottom:.5rem;max-width:500px}
.symptom-sub{font-size:.9rem;color:rgba(255,255,255,.5);max-width:420px;margin-bottom:2rem}
.symptom-widget{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:2rem;position:relative;overflow:hidden}
.symptom-widget::before{content:'';position:absolute;top:-40%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,rgba(184,29,19,.06),transparent 70%);pointer-events:none}
.symptom-step{display:none}
.symptom-step.active{display:block}
.symptom-q{font-size:.95rem;font-weight:700;color:rgba(255,255,255,.9);margin-bottom:.35rem;display:flex;align-items:center;gap:.5rem}
.symptom-hint{font-size:.78rem;color:rgba(255,255,255,.58);margin:0 0 1rem 1.9rem}
.symptom-q .step-num{background:#B81D13;color:#fff;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;flex-shrink:0}
.symptom-options{display:grid;gap:.6rem}
.symptom-opt{display:flex;align-items:center;gap:.8rem;padding:.9rem 1rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .25s;font-size:.88rem;color:rgba(255,255,255,.86);text-align:left;width:100%;font-family:inherit;min-height:52px}
.symptom-opt:hover{border-color:rgba(248,203,89,.3);background:rgba(248,203,89,.05);color:#F8CB59}
.symptom-opt .opt-icon{font-size:1.2rem;flex-shrink:0}
.symptom-opt .opt-text{flex:1}
.symptom-opt .opt-arrow{color:rgba(255,255,255,.2);font-size:.8rem;transition:color .2s}
.symptom-opt:hover .opt-arrow{color:#F8CB59}
.symptom-opt:focus-visible{outline:3px solid #F8CB59;outline-offset:3px}
.urgency-note{margin:0 0 1.25rem;padding:.9rem 1rem;border:1px solid rgba(248,203,89,.3);border-radius:10px;background:rgba(248,203,89,.08);color:rgba(255,255,255,.82);font-size:.82rem;line-height:1.55}
.triage-disclaimer{margin-top:1.25rem;padding:.85rem 1rem;border-left:3px solid #B81D13;background:rgba(184,29,19,.1);color:rgba(255,255,255,.72);font-size:.78rem;line-height:1.55}
.critical-shortcut{margin:0 0 1rem;padding:1rem;border:1px solid rgba(184,29,19,.45);border-radius:12px;background:rgba(184,29,19,.12);color:#fff;font-size:.82rem;line-height:1.5}
.critical-shortcut strong{color:#ffb4a9}
.critical-shortcut button{margin-top:.7rem;padding:.65rem 1rem;border:0;border-radius:8px;background:#B81D13;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.critical-shortcut button:focus-visible{outline:3px solid #F8CB59;outline-offset:3px}
.symptom-result{padding:1.5rem;border-radius:14px;margin-top:.5rem}
.symptom-result.urgent{background:rgba(184,29,19,.1);border:1px solid rgba(184,29,19,.3)}
.symptom-result.moderate{background:rgba(248,203,89,.06);border:1px solid rgba(248,203,89,.2)}
.symptom-result.mild{background:rgba(45,122,45,.08);border:1px solid rgba(45,122,45,.2)}
.symptom-result h4{font-size:1rem;font-weight:700;margin-bottom:.5rem}
.symptom-result.urgent h4{color:#B81D13}
.symptom-result.moderate h4{color:#F8CB59}
.symptom-result.mild h4{color:#4ade80}
.symptom-result p{font-size:.85rem;color:rgba(255,255,255,.6);line-height:1.7;margin-bottom:.5rem}
.symptom-result .result-cost{font-size:.82rem;color:rgba(255,255,255,.4);padding:.5rem .8rem;background:rgba(255,255,255,.03);border-radius:8px;margin-top:.75rem}
.symptom-result .result-cost strong{color:#F8CB59}
.symptom-result .wa-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.7rem 1.5rem;background:#25D366;color:#fff;border-radius:10px;font-weight:700;font-size:.88rem;text-decoration:none;transition:all .2s}
.symptom-result .wa-btn:hover{background:#1da851;transform:translateY(-1px)}
.symptom-restart{margin-top:1rem;font-size:.8rem;color:rgba(255,255,255,.35);cursor:pointer;transition:color .2s;background:none;border:none;font-family:inherit}
.symptom-restart:hover{color:#F8CB59}
@media(max-width:768px){.symptom-headline{font-size:1.4rem}.symptom-widget{padding:1.25rem}}
@media(max-width:768px){
  .symptom-feature .container>div{grid-template-columns:1fr!important;gap:1.5rem!important;min-width:0}
  .symptom-feature .container>div>div{min-width:0}
  .symptom-widget,.symptom-opt{max-width:100%;min-width:0}
  .symptom-opt{overflow-wrap:anywhere}
  .social-float-bar{display:none}
}
@media(max-width:480px){
  nav .nav-top .container{display:grid!important;grid-template-columns:1fr!important;justify-items:center;gap:.2rem;padding-top:.35rem;padding-bottom:.35rem}
  nav .nav-top a{font-size:.7rem;line-height:1.35;white-space:normal;text-align:center;width:100%}
}

/* ===== EDITORIAL PRICING — Magazine Style ===== */
.pricing-editorial{display:grid;grid-template-columns:1fr 1fr;gap:0;max-width:900px;margin:0 auto;border:1px solid rgba(255,255,255,.06);border-radius:16px;overflow:hidden}
.pricing-col{padding:2rem}
.pricing-col:first-child{border-right:1px solid rgba(255,255,255,.06)}
.pricing-col h3{font-size:.75rem;font-weight:700;color:#B81D13;letter-spacing:.12em;text-transform:uppercase;margin-bottom:1.25rem}
.price-row{display:flex;justify-content:space-between;align-items:baseline;padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.04)}
.price-row:last-child{border-bottom:none}
.price-row .svc{font-size:.88rem;color:rgba(255,255,255,.7)}
.price-row .amt{font-size:.9rem;font-weight:700;color:#F8CB59;white-space:nowrap}
.price-row .amt small{font-weight:400;color:rgba(255,255,255,.35);font-size:.72rem}
@media(max-width:600px){.pricing-editorial{grid-template-columns:1fr}.pricing-col:first-child{border-right:none;border-bottom:1px solid rgba(255,255,255,.06)}}

/* ===== SERVICES — Asymmetric 2-Column ===== */
.services-editorial{display:grid;grid-template-columns:1.2fr 1fr;gap:1.5rem;align-items:start}
.services-feature{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);border-radius:16px;overflow:hidden;transition:all .3s}
.services-feature:hover{border-color:rgba(184,29,19,.2);transform:translateY(-3px)}
.services-feature img{width:100%;height:220px;object-fit:cover;display:block}
.services-feature-body{padding:1.5rem}
.services-feature-body h3{font-size:1.1rem;font-weight:700;color:#F8CB59;margin-bottom:.4rem}
.services-feature-body p{font-size:.85rem;color:rgba(255,255,255,.55);line-height:1.6}
.services-feature-body .price-tag{display:inline-block;margin-top:.6rem;padding:.25rem .7rem;background:rgba(248,203,89,.12);color:#F8CB59;font-size:.78rem;font-weight:700;border-radius:6px;border:1px solid rgba(248,203,89,.2)}
.services-list{display:flex;flex-direction:column;gap:.6rem}
.service-row{display:flex;align-items:center;gap:1rem;padding:.85rem 1rem;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:12px;text-decoration:none;transition:all .25s}
.service-row:hover{border-color:rgba(184,29,19,.2);background:rgba(255,255,255,.04)}
.service-row .sr-icon{font-size:1.5rem;flex-shrink:0}
.service-row .sr-info{flex:1}
.service-row .sr-info h4{font-size:.88rem;font-weight:600;color:rgba(255,255,255,.85);margin-bottom:.1rem}
.service-row .sr-info p{font-size:.75rem;color:rgba(255,255,255,.4);margin:0}
.service-row .sr-price{font-size:.82rem;font-weight:700;color:#F8CB59;white-space:nowrap}
@media(max-width:768px){.services-editorial{grid-template-columns:1fr}}

/* ===== REVIEWS — Minimal Editorial ===== */
.reviews-editorial{max-width:700px;margin:0 auto;text-align:left}
.review-quote{padding:1.5rem 0;border-bottom:1px solid rgba(255,255,255,.04)}
.review-quote:last-child{border-bottom:none}
.review-quote p{font-size:1rem;color:rgba(255,255,255,.65);line-height:1.7;font-style:italic;position:relative;padding-left:1.25rem}
.review-quote p::before{content:'"';position:absolute;left:0;top:-.1rem;font-size:1.8rem;color:#B81D13;font-style:normal;line-height:1}
.review-quote .r-author{font-size:.8rem;color:#F8CB59;font-weight:600;margin-top:.5rem;padding-left:1.25rem}
.review-quote .r-meta{font-size:.72rem;color:rgba(255,255,255,.3);padding-left:1.25rem}

/* ===== CONTACT — Side-by-side ===== */
.contact-editorial{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}
.contact-editorial .map-frame{height:100%;min-height:300px}
@media(max-width:768px){.contact-editorial{grid-template-columns:1fr}}

/* ===== BLOG — Horizontal Cards ===== */
.blog-editorial{display:flex;flex-direction:column;gap:1rem}
.blog-row{display:flex;gap:1rem;padding:1rem;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:12px;text-decoration:none;transition:all .25s}
.blog-row:hover{border-color:rgba(184,29,19,.2);transform:translateX(4px)}
.blog-row .br-tag{font-size:.68rem;font-weight:700;padding:.2rem .5rem;border-radius:4px;white-space:nowrap;align-self:flex-start;margin-top:.1rem}
.blog-row .br-body{flex:1}
.blog-row .br-body h4{font-size:.9rem;font-weight:600;color:rgba(255,255,255,.85);margin-bottom:.25rem;line-height:1.4}
.blog-row .br-body p{font-size:.78rem;color:rgba(255,255,255,.4);margin:0;line-height:1.5}
.blog-row .br-body .br-meta{font-size:.7rem;color:rgba(255,255,255,.25);margin-top:.3rem}
@media(max-width:600px){.blog-row{flex-direction:column;gap:.5rem}}

/* ===== ASTRA / PHASE 1 — Warm editorial veterinary =====
   Presentation only. Keep clinical content and application scripts intact. */
:root{--ink:#141816;--surface:#1d2420;--surface-raised:#252e28;--paper:#f4f0e5;--muted:#bdc4ba;--gold:#ecd394;--line:#3c473e;--radius:18px}
body{background:var(--ink);color:var(--paper);line-height:1.75}
body::before,.symptom-feature::before,.symptom-widget::before{display:none}
a{color:var(--gold);transition:color .18s,background-color .18s,border-color .18s,transform .18s}
a:hover{color:#fff0c4}
.container{max-width:1240px;padding-inline:clamp(1.25rem,4vw,3rem)}
:where(a,button,input,select,[tabindex]):focus-visible{outline:3px solid var(--gold);outline-offset:5px;box-shadow:0 0 0 2px var(--ink)}
:where(section,[id]){scroll-margin-top:155px}
button,input,select{font-family:inherit}
nav{position:sticky;top:0;background:var(--ink)}
nav .nav-top{background:#101411;border-bottom:1px solid var(--line);backdrop-filter:none;padding:.35rem 0}
nav .nav-top .container{justify-content:space-between;gap:1rem}
nav .nav-top a{font-size:.75rem;color:var(--muted)}
nav .nav-main{background:var(--ink);backdrop-filter:none;border-bottom:1px solid var(--line)}
nav .nav-main .container{flex-wrap:wrap;gap:.5rem 1rem;padding-block:.85rem}
nav .logo-text{font-size:.87rem;letter-spacing:.025em;color:var(--paper);min-height:44px}
nav .logo-text .logo-amp{color:var(--gold);padding-inline:.2rem}
nav .menu{order:3;width:100%;justify-content:space-between;gap:.5rem;border-top:1px solid var(--line);padding-top:.5rem}
nav .menu a{font-size:.78rem;color:var(--muted);min-height:36px;display:inline-flex;align-items:center}
nav .menu a:hover,nav .menu a.active{color:var(--gold)}
nav .menu a::after{background:var(--gold)}
.nav-dropdown-menu{background:var(--surface);border-color:var(--line);backdrop-filter:none}
.nav-dropdown:focus-within .nav-dropdown-menu{display:block}
nav .nav-dropdown-menu a{display:flex;padding:.7rem 1rem}
.lang-toggle{margin-left:auto}
.lang-toggle button{color:var(--muted);border-color:var(--line);background:transparent}
.lang-toggle button.active{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.btn-outline,.tips-cta a{border-radius:8px;min-height:50px;padding:.85rem 1.2rem;font-size:.9rem;box-shadow:none}
section{padding:clamp(3rem,6vw,5rem) 0;border-bottom:1px solid var(--line)}
section.alt,.kenapa-fawa{background:var(--surface)}
section h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,3.4vw,3rem);font-weight:400;line-height:1.18;letter-spacing:-.025em;background:none;color:var(--paper);-webkit-text-fill-color:currentColor;text-align:left;margin-bottom:1rem}
section .subtitle{text-align:left;color:var(--muted);font-size:1rem;max-width:680px;margin:0 0 2rem}
.reveal,.reveal.visible{opacity:1;transform:none;transition:none}
.trust-stats{background:#101411;border-block:1px solid var(--line)}
.trust-stats h2{font-family:Georgia,'Times New Roman',serif;font-weight:400!important;font-size:1.5rem!important}
.trust-stats .container>p{color:var(--muted)!important}
.trust-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:1.75rem}
.trust-item{min-width:0;padding:.5rem 1rem;border-right:1px solid var(--line)}
.trust-item:last-child{border:0}
.trust-item strong{font-size:1.6rem;font-weight:600;color:var(--gold)}
.trust-item span{color:var(--muted);font-size:.8rem}
.symptom-label,.pricing-col h3{color:var(--gold);font-size:.75rem;letter-spacing:.12em}
.symptom-label::before{background:var(--gold)}
.symptom-headline{max-width:480px;text-align:left}
.symptom-sub{color:var(--muted);font-size:1rem}
.symptom-widget{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.75rem}
.symptom-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
.symptom-opt{background:#222b25;border-color:#475249;border-radius:9px;font-size:.88rem;padding:.85rem;min-height:68px;color:var(--paper)}
.symptom-opt:hover{background:#303c31;border-color:var(--gold)}
.symptom-opt .opt-arrow{color:var(--muted)}
.symptom-hint,.triage-disclaimer,.symptom-result p,.symptom-result .result-cost{color:var(--muted);font-size:.85rem}
.critical-shortcut{background:#382322;border-color:#a75b50}
.critical-shortcut button{min-height:44px;background:#a93125}
.symptom-result.urgent h4,.emergency-banner h3{color:#ffb4a9}
.symptom-restart{color:var(--gold);min-height:44px}
.symptom-result .wa-btn,.booking-form .btn-wa{background:var(--gold);color:var(--ink);min-height:48px}
.pricing-editorial{max-width:none;background:var(--surface);border-color:var(--line);border-radius:var(--radius)}
.pricing-col{padding:2rem 2.5rem}
.pricing-col:first-child{border-color:var(--line)}
.price-row{padding:.8rem 0;border-color:var(--line);gap:1rem}
.price-row .svc{color:var(--paper)}
.price-row .amt{color:var(--gold);font-variant-numeric:tabular-nums}
.price-row .amt small{color:var(--muted)}
.services-feature,.tip-card,.team-photo,.case-card{background:var(--ink);border:1px solid var(--line);border-radius:var(--radius);backdrop-filter:none;box-shadow:none}
.services-feature:hover,.tip-card:hover,.case-card:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:none}
.services-feature img{height:auto;aspect-ratio:4/3;object-fit:cover}
.services-feature-body{padding:1.5rem}
.services-feature-body h3,.tip-card h3{font-size:1.1rem;color:var(--paper)}
.services-feature-body p,.tip-card p{color:var(--muted);font-size:.9rem}
.services-feature-body .price-tag{border:0;background:transparent;color:var(--gold);padding:0;font-size:.9rem;margin-top:1rem}
.services-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem}
.service-row{border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;padding:1.1rem 0;gap:.8rem}
.service-row .sr-info{min-width:0}
.service-row .sr-info h4{font-size:.95rem;color:var(--paper)}
.service-row .sr-info p{font-size:.82rem;color:var(--muted)}
.service-row .sr-price{color:var(--gold);font-size:.85rem}
.case-card .case-img .case-tag{background:var(--ink);color:var(--paper);backdrop-filter:none;font-size:.75rem}
.case-card:focus-visible .case-img::after{opacity:1}
.reviews-editorial{max-width:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem 2rem}
.review-actions{margin-bottom:1.5rem}
.review-quote{border-bottom:1px solid var(--line);padding:1.5rem 0}
.review-quote p{font-family:Georgia,'Times New Roman',serif;font-size:1.2rem;color:var(--paper);font-style:normal}
.review-quote .r-meta{color:var(--muted);font-size:.8rem}
.review-quote .r-author{color:var(--gold);margin-top:1rem}
.contact-editorial{gap:3rem}
.contact-item{padding:1rem 0}
.contact-item p,.contact-item a{color:var(--muted);font-size:.95rem}
.contact-item a{text-decoration:underline;text-underline-offset:4px}
.contact-editorial .map-frame{display:flex;flex-direction:column;min-height:430px;height:100%;border-color:var(--line);border-radius:var(--radius)}
.first-floor-notice{padding:1.15rem;background:var(--surface);font-size:.9rem;color:var(--paper)}
.map-frame iframe{flex:1;min-height:320px;filter:none}
#hours span[style*="color:#B81D13"]{color:#ffb4a9!important}
.emergency-banner{background:#322421;border:1px solid #a75b50;border-left:5px solid #dc8175;text-align:left;border-radius:12px;padding:1.5rem 2rem}
.emergency-banner .eb-icon{font-size:1.6rem}
.emergency-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.emergency-card{background:var(--ink);border-color:var(--line);padding:1.5rem}
.emergency-card h4{flex-wrap:wrap;color:var(--paper)}
.emergency-card .ec-dist{color:#ffb4a9;background:#382322}
.emergency-card p,.emergency-card .ec-note{color:var(--muted);font-size:.85rem}
.emergency-card .ec-phone{min-height:44px;flex-wrap:wrap}
.faq-list{max-width:900px;margin:0}
.faq-item{background:transparent;backdrop-filter:none;border:0;border-bottom:1px solid var(--line);border-radius:0}
.faq-q{padding:1.2rem 0;color:var(--paper)}
.faq-q::after{color:var(--gold)}
.faq-item.open .faq-a{padding:0 0 1.5rem}
.faq-a p,.faq-a ul{color:var(--muted);font-size:.95rem}
.booking-form{max-width:720px;background:var(--ink);border-color:var(--line);border-radius:var(--radius);padding:clamp(1.25rem,4vw,2.5rem)}
.booking-form label{color:var(--paper);font-size:.9rem}
.booking-form input,.booking-form select{background:var(--surface);border-color:#687567;color:var(--paper);min-height:48px;font-size:1rem;max-width:100%;min-width:0}
.booking-form input::placeholder{color:var(--muted)}
.form-note{font-size:.85rem;color:var(--muted);margin-bottom:1rem}
.blog-editorial{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2.5rem;margin-top:2rem}
.blog-row{flex-direction:column;gap:.8rem;background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:1.5rem 0}
.blog-row:hover{transform:none;background:var(--surface)}
.blog-row .br-tag{font-size:.75rem}
.blog-row .br-body h4{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:1.4rem;color:var(--paper);line-height:1.3}
.blog-row .br-body p{font-size:.9rem;color:var(--muted)}
.blog-row .br-body .br-meta{font-size:.8rem;color:var(--muted);margin-top:.75rem}
.team-grid{max-width:none;align-items:start;gap:1.5rem}
.team-photo img{aspect-ratio:4/5;object-fit:cover;object-position:top}
.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.gallery-item{border-color:var(--line);border-radius:12px}
.gallery-item .gi-label{font-size:.85rem}
footer{background:#101411;backdrop-filter:none;border-color:var(--line);padding-top:3rem}
.footer-grid p,.footer-grid a,.footer-grid li,.footer-bottom{color:var(--muted)}
.footer-grid h3,.footer-about .clinic-name{color:var(--gold)}
.footer-grid h3::after,.scroll-progress{background:var(--gold)}
.social-float-bar{position:static;transform:none;flex-direction:row;justify-content:center;background:#101411;padding:0 1rem 1.5rem;gap:.5rem}
.social-float-bar a{border-radius:50%;width:44px;height:44px}
/* Existing duplicated social markup is retained; present one set only. */
.social-float-bar~.social-float-bar{display:none}
.sticky-cta{visibility:hidden;pointer-events:none}
.sticky-cta.show{visibility:visible;pointer-events:auto}
.sticky-cta a{background:var(--gold);box-shadow:0 4px 20px #0005;border-radius:8px}
.back-top{display:block;text-align:center;background:#101411;min-height:44px;padding:.5rem}
.mobile-cta-bar{background:var(--ink);border-top:1px solid var(--line);box-shadow:none;gap:.6rem;padding:.6rem}
.mobile-cta-bar a{border-radius:8px;display:flex;align-items:center;justify-content:center;min-height:48px;font-size:.8rem;line-height:1.3}
.mobile-wa{background:var(--surface);color:var(--paper);border:1px solid #8e9b8d}
.mobile-book{background:var(--gold);color:var(--ink)}
@media(max-width:1050px){
  nav .menu{flex-wrap:wrap;justify-content:flex-start;gap:.2rem 1.1rem}

  .emergency-grid{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:768px){
  :where(section,[id]){scroll-margin-top:145px}
  body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}
  nav .nav-main .container{display:grid!important;grid-template-columns:minmax(0,1fr) 44px 92px!important;gap:.4rem;padding-block:.5rem;padding-right:1rem!important}
  nav .logo-text{white-space:normal;font-size:.68rem;line-height:1.4;display:block;overflow:visible}
  nav .hamburger{position:static!important;transform:none!important;grid-column:2;width:44px;height:44px;padding:0;display:block}
  nav .lang-toggle{position:static!important;transform:none!important;grid-column:3;width:92px;margin:0;height:44px}
  nav .menu{width:min(90vw,360px);max-width:none;top:0;height:100dvh;order:initial;flex-wrap:nowrap;align-items:stretch;padding:8rem 1.5rem 6rem;background:var(--ink);border:1px solid var(--line);gap:.15rem;backdrop-filter:none}
  nav .menu a{min-height:44px;font-size:.95rem}

  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:1rem}
  .trust-item{border:0}
  .trust-item:last-child{grid-column:1/-1}
  .trust-stats h2{font-size:1.3rem!important}
  .symptom-widget{padding:1.25rem}
  .symptom-options{grid-template-columns:1fr}
  .symptom-opt{min-height:56px}
  .featured-services{grid-template-columns:1fr!important}
  .services-feature{display:grid;grid-template-columns:120px minmax(0,1fr)}
  .services-feature img{height:100%;aspect-ratio:auto}
  .services-feature-body{padding:1rem}
  .services-feature-body h3{font-size:1rem}
  .services-feature-body p{font-size:.85rem}
  .services-list,.reviews-editorial,.blog-editorial{grid-template-columns:1fr}
  .cases-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .pricing-col{padding:1.5rem}
  .contact-editorial{gap:1.5rem}
  .contact-editorial .map-frame{min-height:380px}
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .team-grid{gap:1rem}
  footer{text-align:left}
  .social-float-bar{display:flex}
  .sticky-cta,.sticky-cta.show{display:none}
  .mobile-cta-bar{padding-bottom:calc(.6rem + env(safe-area-inset-bottom))}
}
@media(max-width:480px){
  .container{padding-inline:1.15rem}

  .cases-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .services-feature{grid-template-columns:100px minmax(0,1fr)}
  .service-row{flex-wrap:wrap}
  .service-row .sr-price{margin-left:auto}
  .contact-editorial>div>div>div[style*="display:flex"]{gap:.5rem;flex-wrap:wrap}
  .emergency-banner{padding:1.25rem}
  .emergency-card{padding:1.25rem}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}

/* FAWA: aperture, field, register. Presentation is independent of clinical logic.
   The established source brand red is #B81D13. Legacy hooks remain compatible. */
:root{
  --fawa-red:#B81D13;--ink:#171719;--surface:#222225;--surface-raised:#2d2b2e;
  --paper:#f4f1eb;--muted:#c2beba;--gold:#f4f1eb;--line:#49464a;
  --accent-text:#f4f1eb;--radius:4px;--ease-out:cubic-bezier(.23,1,.32,1);
  --display:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
html{scroll-padding-top:132px}
body{background:var(--ink);color:var(--paper);line-height:1.65}
body::before{display:none}
::selection{background:var(--fawa-red);color:#fff}
a{color:var(--accent-text);text-underline-offset:.3em;transition:color .18s ease-out,background-color .18s ease-out,border-color .18s ease-out,transform .18s var(--ease-out)}
a:hover{color:var(--accent-text)}
button{font-family:inherit}
img{vertical-align:middle}
.container{max-width:1440px;padding-inline:clamp(1.2rem,5vw,5rem)}
:where(section,[id]){scroll-margin-top:1rem}
:where(a,button,input,select,summary,[tabindex]):focus-visible{outline:3px solid var(--fawa-red);outline-offset:5px;box-shadow:0 0 0 2px var(--paper);transition:none!important}
section{padding:clamp(4rem,8vw,8rem) 0;border:0}
section.alt{background:var(--surface)}
section h2{font-family:var(--display);font-size:clamp(2.1rem,4.6vw,4.4rem);font-weight:600;line-height:1.06;letter-spacing:-.04em;color:var(--paper);text-align:left;background:none;-webkit-text-fill-color:currentColor;max-width:20ch;text-wrap:balance}
section .subtitle{color:var(--muted);font-size:1rem;line-height:1.7;max-width:57ch;margin:1.25rem 0 2.75rem;text-align:left;padding:0}
.reveal,.reveal.visible{opacity:1;transform:none;transition:none}
:where(.hero-copy,.services-feature-body,.sr-info,.br-body,.contact-editorial>div,.booking-field){min-width:0}
.skip-link{position:fixed;top:1rem;left:1rem;z-index:10001;background:#f4f1eb;color:#171719;padding:.75rem 1rem;transform:translateY(-180%)}
.skip-link:focus{transform:none}
:where(p,h1,h2,h3,h4,figcaption){overflow-wrap:break-word}
/* Remap old presentation-only inline colors without touching their content. */
body :where(p,span,strong,div,a)[style*="color:#F8CB59"]{color:var(--accent-text)!important}
body :where(p,span,div)[style*="color:rgba(255,255,255"]{color:var(--muted)!important}
/* Navigation: a compact primary line, with a native secondary index. */
nav{position:sticky;top:0;z-index:1000;background:var(--ink)}
nav .nav-top{background:var(--ink);border-bottom:1px solid var(--line);padding:.3rem 0;backdrop-filter:none}
nav .nav-top .container{display:flex;justify-content:space-between;gap:1rem}
nav .nav-top a{font-size:.76rem;line-height:1.5;color:var(--muted)}
nav .nav-main{background:var(--ink);border-bottom:1px solid var(--line);backdrop-filter:none;transition:background-color .2s ease-out}
nav.scrolled .nav-main{background:#222225;box-shadow:none}
nav .nav-main .container{display:flex;flex-wrap:nowrap;min-height:80px;gap:clamp(.75rem,2vw,2rem);padding-block:.5rem}
nav .logo-text{max-width:285px;white-space:normal;font-size:.76rem;font-weight:700;letter-spacing:.035em;line-height:1.4;color:var(--paper);flex-shrink:1;min-width:170px}
nav .logo-text .logo-amp{color:var(--paper);font-size:1.2rem;padding-inline:.2rem}
nav .menu{order:0;width:auto;margin-left:auto;gap:clamp(.75rem,1.4vw,1.5rem);border:0;padding:0;flex-wrap:nowrap;justify-content:flex-end}
nav .menu a{font-size:.83rem;min-height:44px;color:var(--paper);white-space:nowrap}
nav .menu a::after{background:var(--fawa-red);height:2px;transition:transform .18s var(--ease-out);width:100%;transform:scaleX(0);transform-origin:left}
nav .menu a:hover::after,nav .menu a.active::after{transform:scaleX(1)}
nav .menu a.active{color:var(--paper)}
nav .menu .nav-appointment{padding:.65rem 1.15rem;background:var(--fawa-red);color:#fff;border-radius:3px}
nav .menu .nav-appointment::after{display:none}
.nav-more{position:relative}
.nav-more summary{display:flex;align-items:center;gap:.75rem;min-height:44px;cursor:pointer;font-size:.83rem;list-style:none}
.nav-more summary::-webkit-details-marker{display:none}
.nav-more summary::after{content:'+';font-size:1.3rem;color:var(--paper)}
.nav-more[open] summary::after{content:'−'}
.nav-more-links{position:absolute;right:0;top:calc(100% + .8rem);width:340px;padding:1.25rem;background:var(--surface);border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:.25rem 1rem}
.nav-dropdown-menu{background:var(--surface);border:1px solid var(--line);border-radius:3px;backdrop-filter:none;min-width:235px}
.nav-dropdown-menu a:hover{background:var(--surface-raised);color:var(--paper)}
.nav-dropdown:focus-within .nav-dropdown-menu{display:block}
.lang-toggle{margin:0;gap:0;border:1px solid var(--line);border-radius:3px}
.lang-toggle button{font-size:.76rem;min-width:44px;min-height:44px;border:0;border-radius:0;background:transparent;color:var(--muted)}
.lang-toggle button.active{background:var(--paper);color:var(--ink);box-shadow:inset 0 -3px var(--fawa-red)}
.lang-toggle button:hover{color:var(--paper)}
.lang-toggle button.active:hover{color:var(--ink)}
.hamburger{color:var(--paper)}
/* Homepage master: warm FAWA editorial. Future visuals adapt to this palette. */
.hero{background:var(--paper);color:var(--ink);padding:clamp(1.5rem,3vw,3rem) 0 4rem;position:relative;--muted:#575256;--accent-text:var(--fawa-red)}
.hero .container{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:2rem clamp(2rem,5vw,5rem);align-items:start;text-align:left}
.hero-masthead{grid-column:1/-1;font-family:var(--display);font-size:clamp(6rem,19.5vw,17.5rem);line-height:.86;font-weight:800;letter-spacing:-.04em;padding-bottom:1.75rem;color:var(--ink);border-bottom:1px solid #cbc5c0}
.hero-copy{min-width:0}
.hero h1{font-family:var(--display);font-size:clamp(2rem,3.5vw,3.35rem);font-weight:700;letter-spacing:-.035em;line-height:1.15;color:var(--fawa-red);margin:0 0 1.5rem;max-width:20ch;text-wrap:balance}
.hero .hero-intro{font-family:var(--display);font-size:clamp(1.25rem,2vw,1.8rem);font-weight:600;line-height:1.4;letter-spacing:-.025em;color:var(--ink);max-width:34ch}
.hero p{font-size:1rem;line-height:1.7;max-width:46ch;color:var(--muted);margin:0 0 2rem}
.hero-btns{display:flex;gap:.75rem;flex-wrap:wrap}
.hero .btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;border-radius:var(--radius);padding:.9rem 1.25rem;font-size:1rem;font-weight:700;text-align:center;line-height:1.5;max-width:100%}
.hero .btn-gold{background:var(--fawa-red);color:var(--paper);border:1px solid var(--fawa-red)}
.hero .btn-wa{background:#25d366;color:#102019;border-color:#25d366;font-weight:800}
.hero .btn-gold,.hero .btn-wa{min-height:60px;padding-inline:1.45rem;box-shadow:0 8px 20px rgba(23,23,25,.12)}
.hero .btn-gold:hover{background:#94170f}
.hero .btn-wa:hover{background:#e4dfd9}
.hero-calculator{display:inline-flex;align-items:center;min-height:44px;margin-top:1rem;font-size:.94rem;text-decoration:underline;color:var(--muted)}
.hero-calculator:hover{color:var(--fawa-red)}
.hero-portrait{margin:0;min-width:0}
.hero-media{width:100%;aspect-ratio:6/5;position:relative;border-radius:45% 0 45% 0;overflow:hidden;background:#fff}
.hero-media img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.hero-portrait figcaption{padding:.75rem 0 0;color:var(--muted);font-size:.82rem;line-height:1.6}
/* FAWA Robot Phase 2B — lightweight parallax, no heavy 3D runtime. */
.hero-portrait[data-hero-visual="fawa-cat-robot"]{position:relative;animation:fawaRobotEnter .72s cubic-bezier(.22,1,.36,1) .08s both}
.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media{--fawa-rx:0deg;--fawa-ry:0deg;--fawa-tx:0px;--fawa-ty:0px;--fawa-scale:1;--fawa-gx:50%;--fawa-gy:58%;--fawa-vx:50%;--fawa-vy:38%;--fawa-shadow-x:0px;--fawa-shadow-y:24px;--fawa-tap-x:0px;isolation:isolate;transform:translateZ(0);box-shadow:var(--fawa-shadow-x) var(--fawa-shadow-y) 50px rgba(23,18,18,.12);animation:fawaRobotFloat 5.8s ease-in-out 1s infinite;touch-action:manipulation;transition:box-shadow .24s ease-out}
.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media::before{content:'';position:absolute;inset:18% 12% 8%;z-index:0;pointer-events:none;background:radial-gradient(ellipse at var(--fawa-gx) var(--fawa-gy),rgba(184,29,19,.34) 0%,rgba(184,29,19,.13) 30%,transparent 68%);filter:blur(22px);opacity:.2;transform:scale(.96);animation:fawaRobotGlow 3.8s ease-in-out 1.1s infinite}
.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media::after{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(ellipse at var(--fawa-vx) var(--fawa-vy),rgba(255,38,24,.22) 0%,rgba(255,38,24,.06) 22%,transparent 38%);mix-blend-mode:screen;opacity:.1;animation:fawaRobotVisorPulse 5.4s ease-in-out 1.5s infinite}
.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media img{position:relative;z-index:2;transform:perspective(900px) translate3d(calc(var(--fawa-tx) + var(--fawa-tap-x)),var(--fawa-ty),22px) rotateX(var(--fawa-rx)) rotateY(var(--fawa-ry)) scale(var(--fawa-scale));transform-origin:50% 56%;transition:transform .18s ease-out;will-change:transform}
@media(hover:hover) and (pointer:fine){.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media:hover{--fawa-scale:1.022}}
.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media.is-tapped{animation:fawaRobotTap .48s cubic-bezier(.22,1,.36,1)}
.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media.is-tapped img{--fawa-scale:1.028}
.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media.is-tapped::after{animation:fawaRobotTapFlash .48s ease-out}
@keyframes fawaRobotEnter{from{opacity:0;transform:translate3d(0,18px,0) scale(.985)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes fawaRobotFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-8px,0)}}
@keyframes fawaRobotGlow{0%,100%{opacity:.16;transform:scale(.96)}50%{opacity:.3;transform:scale(1.04)}}
@keyframes fawaRobotVisorPulse{0%,70%,100%{opacity:.08}75%{opacity:.3}79%{opacity:.11}83%{opacity:.24}88%{opacity:.08}}
@keyframes fawaRobotTap{0%{transform:translate3d(0,0,0) scale(1)}38%{transform:translate3d(0,-11px,0) scale(1.012)}72%{transform:translate3d(0,2px,0) scale(.998)}100%{transform:translate3d(0,0,0) scale(1)}}
@keyframes fawaRobotTapFlash{0%{opacity:.08}35%{opacity:.42}100%{opacity:.08}}
/* FAWA Robot Phase 2C — contextual personality layer. */
.fawa-robot-bubble{position:absolute;z-index:6;right:1rem;bottom:1rem;max-width:min(250px,72%);padding:.72rem .9rem;background:rgba(23,24,22,.94);color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:12px 12px 2px 12px;font-size:.82rem;line-height:1.45;box-shadow:0 14px 30px rgba(0,0,0,.18);opacity:0;transform:translate3d(0,8px,0) scale(.98);pointer-events:none;transition:opacity .22s ease,transform .22s ease}
.fawa-robot-bubble.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1)}
.fawa-robot-bubble strong{color:#ff756b;font-weight:700}
.hero-portrait[data-hero-visual="fawa-cat-robot"].is-reacting .hero-media::after{opacity:.34}
.hero-portrait[data-hero-visual="fawa-cat-robot"].is-reacting .hero-media img{--fawa-scale:1.022}
@media(max-width:480px){.fawa-robot-bubble{right:.65rem;bottom:.65rem;max-width:78%;font-size:.76rem}}
.fawa-mini-assistant{position:fixed;right:18px;bottom:22px;z-index:996;display:flex;align-items:flex-end;gap:.65rem;opacity:0;transform:translate3d(0,10px,0);pointer-events:none;transition:opacity .22s ease,transform .22s ease}
.fawa-mini-assistant.is-active{opacity:1;transform:translate3d(0,0,0);pointer-events:auto}
.fawa-mini-button{width:58px;height:58px;border:1px solid #5a5557;border-radius:50%;background:#171719;padding:3px;overflow:hidden;box-shadow:0 12px 28px rgba(0,0,0,.26);cursor:pointer}
.fawa-mini-button img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;transform:scale(1.28)}
.fawa-mini-button:focus-visible{outline:3px solid var(--fawa-red);outline-offset:4px}
.fawa-mini-bubble{max-width:230px;padding:.68rem .82rem;background:#171719;color:#fff;border:1px solid #555054;border-radius:10px 10px 2px 10px;font-size:.78rem;line-height:1.45;box-shadow:0 12px 26px rgba(0,0,0,.2);opacity:0;transform:translate3d(6px,0,0);pointer-events:none;transition:opacity .2s ease,transform .2s ease}
.fawa-mini-bubble.is-visible{opacity:1;transform:translate3d(0,0,0)}
.fawa-mini-bubble strong{color:#ff756b}
@media(max-width:768px){.fawa-mini-assistant{right:10px;bottom:88px;gap:.45rem}.fawa-mini-button{width:48px;height:48px}.fawa-mini-bubble{max-width:190px;font-size:.72rem}}
/* FAWA Robot Phase 3 — on-demand true WebGL mode with 2D fallback. */
.fawa-3d-canvas{position:absolute;inset:0;z-index:4;width:100%;height:100%;display:block;opacity:0;pointer-events:none;transition:opacity .28s ease;cursor:grab}
.fawa-3d-canvas:active{cursor:grabbing}
.hero-media.is-3d .fawa-3d-canvas{opacity:1;pointer-events:auto}
.hero-media.is-3d>img{opacity:0;pointer-events:none}
.hero-media.is-3d::after{opacity:.04}
.fawa-3d-toggle{position:absolute;z-index:8;top:.72rem;right:.72rem;min-height:38px;padding:.45rem .72rem;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(23,24,22,.88);color:#fff;font:700 .72rem/1 inherit;letter-spacing:.02em;backdrop-filter:blur(8px);cursor:pointer}
.fawa-3d-toggle:hover{background:#B81D13}.fawa-3d-toggle:focus-visible{outline:3px solid #B81D13;outline-offset:3px}
.fawa-3d-toggle[aria-busy="true"]{opacity:.68;cursor:wait}
.fawa-3d-hint{position:absolute;z-index:7;left:.75rem;bottom:.65rem;padding:.35rem .55rem;background:rgba(23,24,22,.78);color:#fff;border-radius:6px;font-size:.68rem;opacity:0;pointer-events:none;transition:opacity .2s ease}
.hero-media.is-3d .fawa-3d-hint{opacity:.78}
@media(max-width:480px){.fawa-3d-toggle{top:.5rem;right:.5rem;min-height:36px;font-size:.68rem}.fawa-3d-hint{font-size:.62rem}}
@media(prefers-reduced-motion:reduce){
 .hero-portrait[data-hero-visual="fawa-cat-robot"],.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media,.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media::before,.hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media::after{animation:none!important;transform:none!important}
 .hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media img{transition:none!important;transform:none!important}
 .hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media::before{opacity:.14}
 .hero-portrait[data-hero-visual="fawa-cat-robot"] .hero-media::after{opacity:.06}
 .fawa-robot-bubble,.fawa-mini-assistant,.fawa-mini-bubble,.fawa-3d-canvas,.fawa-3d-hint{transition:none!important}
}
.clinic-context{grid-column:1/-1;grid-row:3;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--line);max-width:75ch;color:var(--muted);font-size:.9rem}
.clinic-context p{margin:0 0 .65rem}
.clinic-context a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline}
@media(max-width:900px){
  .hero .container{grid-template-columns:minmax(0,1fr);gap:2rem}
  .hero h1{font-size:clamp(2rem,5vw,3rem)}
  .hero-portrait{width:100%;max-width:32rem;justify-self:center}
}
@media(max-width:480px){
  .hero{padding:2rem 0}
  .hero-masthead{font-size:clamp(5rem,24vw,7.2rem);padding-bottom:1.25rem}
  .hero h1{font-size:clamp(2rem,8vw,2.4rem)}
  .hero-btns{flex-direction:column;align-items:stretch}
  .hero .btn{width:100%}
}
/* Compact proof rail, not another hero or collection of cards. */
.trust-stats{background:var(--ink);padding:2.25rem 0!important;border:0;text-align:left}
.trust-stats .container{display:block}
.trust-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.trust-item{display:block;padding:1.15rem 1.25rem;border:0;border-right:1px solid var(--line);min-width:0;text-align:left;text-decoration:none}
.trust-item:last-child{border-right:0}
a.trust-item:hover{background:var(--surface);color:var(--paper)}
.trust-item strong{display:block;font-size:clamp(1.2rem,1.9vw,1.65rem);line-height:1.3;font-weight:600;color:var(--paper);letter-spacing:-.03em}
.trust-item span{display:block;font-size:.78rem;color:var(--muted);margin-top:.35rem;line-height:1.45}
/* Clinical interface: the option register and explicit warning surfaces. */
.symptom-feature{background:var(--surface);padding-block:clamp(4rem,7vw,7rem)}
.symptom-feature::before,.symptom-widget::before{display:none}
.symptom-feature .container>div{grid-template-columns:minmax(0,.82fr) minmax(0,1.4fr)!important;gap:clamp(2rem,6vw,6rem)!important}
.symptom-label{font-size:.78rem;letter-spacing:.06em;color:var(--paper);margin-bottom:1.5rem}
.symptom-label::before{background:var(--fawa-red);width:28px;height:2px}
.symptom-headline{font-size:clamp(2.1rem,3.5vw,3.6rem);max-width:15ch}
.symptom-sub{font-size:.95rem;line-height:1.7;color:var(--muted);max-width:38ch}
.symptom-feature .container>div>div:first-child>div[style]{background:none!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:1.2rem 0!important}
.symptom-widget{background:#f4f1eb;color:var(--ink);border:0;border-top:3px solid var(--fawa-red);border-radius:0;padding:clamp(1.25rem,3vw,2.5rem);--paper:#171719;--muted:#575256;--accent-text:#B81D13;--line:#cbc5c0}
.critical-shortcut{background:#171719;border:2px solid #171719;border-radius:3px;padding:1.15rem;color:#f4f1eb;font-size:.88rem;line-height:1.65;margin-bottom:1rem}
.critical-shortcut strong{color:#f4f1eb;font-size:1.06rem}
.critical-shortcut button{background:#f4f1eb;color:#171719;border-radius:3px;min-height:46px;padding:.7rem 1rem;font-weight:700}
.urgency-note{background:#e8e0d9;border:1px solid #aea19a;color:#302827;border-radius:3px;font-size:.86rem;line-height:1.65;padding:1rem}
.symptom-q{font-size:1.08rem;line-height:1.5;color:var(--ink);align-items:flex-start;margin:1.5rem 0 .65rem}
.symptom-q .step-num{width:28px;height:28px;background:var(--fawa-red);font-size:.85rem;line-height:28px;flex-shrink:0}
.symptom-hint{font-size:.87rem;color:var(--muted);margin:0 0 1.2rem;line-height:1.6}
.symptom-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.25rem}
.symptom-opt{border:0;border-bottom:1px solid #b5adab;background:transparent;color:var(--ink);border-radius:0;padding:1rem .15rem;min-height:76px;font-size:.88rem;gap:.6rem;transition:background-color .16s ease-out,color .16s ease-out}
.symptom-opt .opt-icon{font-size:1.05rem;width:24px}
.symptom-opt .opt-arrow{color:var(--fawa-red);font-size:1.1rem}
.symptom-opt:hover,.symptom-opt:active{background:#e4ded8;color:var(--ink);border-color:var(--fawa-red)}
.symptom-opt:hover .opt-arrow{color:var(--fawa-red)}
.symptom-opt:focus-visible,.critical-shortcut button:focus-visible{outline:3px solid var(--fawa-red);outline-offset:3px}
.symptom-result{border-radius:0;padding:1.5rem 0;margin:0;border:0!important;background:transparent!important}
.symptom-result h4{font-size:1.45rem;line-height:1.35;letter-spacing:-.025em;color:var(--ink)!important}
.symptom-result p{font-size:.96rem;color:#403b3d;line-height:1.75}
.symptom-result .result-cost{font-size:.88rem;color:#403b3d;border-top:1px solid #cbc5c0;border-radius:0;background:none;padding:1rem 0}
.symptom-result.urgent{padding:1.3rem;background:#171719!important;color:#f4f1eb;border:2px solid #171719!important}
.symptom-result.urgent :is(h4,p,.result-cost,.triage-disclaimer){color:#f4f1eb!important}
.symptom-result.urgent h4{padding-bottom:1rem;border-bottom:2px solid #f4f1eb}
.symptom-result .wa-btn{background:var(--fawa-red);color:#fff;border-radius:3px;line-height:1.5;padding:.85rem 1rem;min-height:48px}
.symptom-result.urgent .wa-btn{background:#f4f1eb;color:#171719}
.symptom-result .wa-btn:hover{transform:none;background:#8f1913;color:#fff}
.triage-disclaimer{border:0;border-top:1px solid #8e817e;background:none;padding:1rem 0;font-size:.86rem;color:#575256;line-height:1.7}
.symptom-restart{color:inherit;min-height:44px;font-size:.88rem;text-decoration:underline;text-underline-offset:.25em}
/* Pricing is a typographic brand statement on a calm, open surface. */
#pricing{background:var(--paper);--paper:#171719;--muted:#575256;--line:#cbc5c0;--accent-text:#B81D13;background:#f4f1eb;color:var(--paper)}
#pricing .container{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:2rem}
#pricing .symptom-label{grid-column:1/-1;justify-content:flex-start!important;color:var(--fawa-red);margin-bottom:1.5rem}
#pricing h2{grid-column:1/-1;text-align:left!important;font-size:clamp(2.5rem,4.5vw,4.25rem);font-weight:600;line-height:1.1;max-width:23ch;margin-bottom:0}
#pricing .subtitle{grid-column:1/-1;max-width:62ch;margin:1.25rem 0 2rem}
#pricing{padding-block:clamp(3.5rem,5vw,5rem)}
.pricing-editorial{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,4rem);max-width:none;background:none;border:0;border-radius:0;overflow:visible}
.pricing-col{padding:0;border:0!important}
.pricing-col h3{color:var(--fawa-red);font-size:1.1rem;font-weight:700;letter-spacing:0;text-transform:none;padding:0 0 1rem;margin:0;border-bottom:2px solid var(--fawa-red)}
.price-row{gap:1.25rem;align-items:baseline;padding:1.1rem 0;border-bottom:1px solid var(--line)}
.price-row .svc{color:var(--paper);font-size:1rem;min-width:0}
.price-row .amt{color:var(--fawa-red);font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:700;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.price-row .amt small{font-size:.9rem;letter-spacing:0;font-weight:500;color:var(--muted)}
/* Services: one visual lead, two supporting compositions, then an index. */
#services{background:var(--ink);padding-bottom:4rem}
.featured-services{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)!important;gap:2rem 3rem!important;margin:0 0 3rem!important;align-items:start}
.services-feature{border:0;border-radius:0;box-shadow:none;background:none;backdrop-filter:none;overflow:visible;display:grid;grid-template-columns:1fr;gap:0}
.services-feature:first-child{grid-row:1/3}
.services-feature img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:0}
.services-feature:first-child img{aspect-ratio:1/1;border-radius:0 0 42% 0}
.services-feature:not(:first-child){grid-template-columns:38% minmax(0,1fr);gap:1.5rem;align-items:start;border-top:1px solid var(--line);padding-top:1.5rem}
.services-feature:not(:first-child) img{aspect-ratio:1/1}
.services-feature-body{padding:1.5rem 0 0}
.services-feature:not(:first-child) .services-feature-body{padding:0}
.services-feature-body h3{color:var(--paper);font-size:clamp(1.1rem,2vw,1.8rem);line-height:1.25;letter-spacing:-.035em;margin-bottom:.75rem;font-weight:600}
.services-feature:first-child h3{font-size:clamp(1.6rem,3vw,2.5rem)}
.services-feature-body p{font-size:1rem;color:var(--muted);line-height:1.65;max-width:48ch}
.services-feature-body .price-tag{color:var(--paper);background:none;border:0;border-radius:0;font-size:1rem;padding:0;margin-top:1rem;display:flex;justify-content:space-between;gap:1rem}
.services-feature-body .price-tag::after{content:'↗';color:var(--paper);font-size:1.3rem}
.services-feature:hover{transform:none;box-shadow:none}
.services-list{display:grid;grid-template-columns:1fr 1fr;gap:0 4rem;border-top:2px solid var(--fawa-red)}
.service-row{border:0;border-bottom:1px solid var(--line);background:none;border-radius:0;padding:1.25rem 0;gap:.85rem;min-width:0;flex-wrap:nowrap}
.service-row .sr-icon{font-size:1.2rem;flex-basis:24px}
.service-row .sr-info h4{font-size:1.1rem;font-weight:600;color:var(--paper);line-height:1.4;margin-bottom:.35rem}
.service-row .sr-info p{font-size:.96rem;line-height:1.6;color:var(--muted)}
.service-row .sr-price{font-size:1rem;font-weight:600;color:var(--paper);margin-left:auto}
.service-row:hover{background:var(--surface);border-color:var(--fawa-red)}
/* Cases: a featured story and a smaller contact sheet. No medical zoom effect. */
#cases{background:var(--ink);padding-block:3.5rem 5rem}
#cases .container{border-top:1px solid var(--line);padding-top:3rem}
.cases-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:1.5rem!important;align-items:start}
.case-card{grid-column:span 1;aspect-ratio:3/4!important;border:0;border-radius:0;background:none;backdrop-filter:none;box-shadow:none;overflow:visible}
.case-card:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:3/4!important}
.case-card .case-img{height:100%;background-size:cover;background-position:center;border-radius:0;position:relative}
.case-card .case-img .case-tag{position:absolute;inset:auto 0 0;display:block;background:#171719;color:#f4f1eb;font-size:.79rem;border-radius:0;padding:.6rem .65rem;backdrop-filter:none}
.case-card .case-img::after{display:none}
.case-card:hover{transform:none;box-shadow:none;outline:1px solid var(--fawa-red);outline-offset:5px}
.cases-facebook-cta{border:0;border-radius:0;text-decoration:underline;text-underline-offset:.4em;min-height:44px;display:inline-flex;align-items:center}
/* Reviews: the leading voice occupies a field, not a testimonial card. */
.client-voices{background:#f4f1eb!important;--paper:#171719;--muted:#575256;--line:#cbc5c0;--accent-text:#B81D13;color:var(--paper)}
.client-voices{padding-block:clamp(3.5rem,7vw,7rem)}
.client-voices h2{font-size:clamp(2.2rem,4.5vw,4rem);letter-spacing:-.035em;font-weight:600;max-width:20ch;text-align:left}
.client-voices .subtitle{margin:1.5rem 0 .25rem;font-size:1.05rem;font-weight:600;color:var(--paper);text-align:left}
.client-voices .review-actions{font-size:.95rem;margin:0 0 clamp(2.5rem,5vw,4rem);text-align:left}
.client-voices .review-actions a{display:inline-flex;align-items:center;min-height:44px;padding-block:.5rem;color:var(--paper);text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:1px}
.client-voices .review-actions a:hover{color:var(--fawa-red)}
.client-voices .review-actions a:focus-visible{outline:2px solid var(--fawa-red);outline-offset:4px}
.client-voices .reveal{opacity:1;transform:none;transition:none}
.client-voices .reviews-editorial{max-width:none;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3.5rem 2.5rem;align-items:start}
.client-voices .review-quote{grid-column:span 3;min-width:0;padding:1.5rem 0 0;border:0;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}
.client-voices .review-quote p{font-family:var(--display);font-style:normal;font-size:1.05rem;line-height:1.65;letter-spacing:0;color:var(--paper);padding:0;margin:0;overflow-wrap:anywhere}
.client-voices .review-quote p::before{display:none}
.client-voices .review-quote:first-child{grid-column:span 7;border-top:2px solid var(--fawa-red);padding-top:2rem}
.client-voices .review-quote:first-child p{font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.25;font-weight:600;letter-spacing:-.03em;max-width:25ch}
.client-voices .review-quote:nth-child(2){grid-column:span 5;padding-top:2rem}
.client-voices .review-quote:nth-child(2) p{font-size:clamp(1.2rem,1.7vw,1.5rem);line-height:1.5;max-width:32ch}
.client-voices .review-quote .r-author{font-size:.95rem;font-weight:700;line-height:1.5;color:var(--paper);padding:0;margin:1.5rem 0 .2rem;overflow-wrap:anywhere}
.client-voices .review-quote .r-meta{font-size:.85rem;line-height:1.5;color:var(--muted);padding:0}
@media(max-width:1023px){
  .client-voices .reviews-editorial{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 2rem}
  .client-voices .review-quote,.client-voices .review-quote:nth-child(2){grid-column:span 1;padding-top:1.5rem}
  .client-voices .review-quote:first-child,.client-voices .review-quote:last-child{grid-column:1/-1}
  .client-voices .review-quote:nth-child(2) p{font-size:1.1rem;line-height:1.65}
}
@media(max-width:600px){
  .client-voices .reviews-editorial{grid-template-columns:minmax(0,1fr);gap:2rem}
  .client-voices .review-quote,.client-voices .review-quote:first-child,.client-voices .review-quote:nth-child(2),.client-voices .review-quote:last-child{grid-column:1;padding-top:1.25rem}
  .client-voices .review-quote p,.client-voices .review-quote:nth-child(2) p{font-size:1.1rem;line-height:1.65;max-width:36ch}
  .client-voices .review-quote:first-child p{font-size:clamp(1.75rem,7vw,2.2rem);line-height:1.3;max-width:25ch}
}
/* Contact: practical schedule and an expansive, framed map field. */
#hours{padding-bottom:6rem}
#hours h2{max-width:15ch}
.contact-editorial{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:5rem;align-items:stretch}
.contact-editorial>div:first-child>div:first-child{border-top:2px solid var(--fawa-red);padding-top:.5rem}
.contact-editorial>div:first-child>div:first-child>div{padding:1rem 0!important;border-color:var(--line)!important;gap:1rem}
.contact-editorial>div:first-child>div:first-child span{font-size:.94rem}
#hours span[style*="color:#B81D13"]{color:#f4f1eb!important;font-weight:700}
.contact-item{padding:1.25rem 0;gap:1rem}
.contact-item+.contact-item{border-color:var(--line)}
.contact-item h4{font-size:.82rem;font-weight:600;color:var(--muted);margin-bottom:.6rem}
.contact-item p,.contact-item a{font-size:1rem;color:var(--paper);line-height:1.75}
.contact-item .ci{font-size:1rem}
.contact-editorial .map-frame{height:auto;min-height:560px;border:0;border-radius:45% 0 0 0;background:#e5e1dc;display:flex;flex-direction:column;position:relative;overflow:hidden}
.first-floor-notice{order:2;background:#f4f1eb;color:#171719;padding:1.5rem 2rem;font-size:.9rem;border-top:2px solid var(--fawa-red)}
.map-frame iframe{order:1;width:100%;flex:1;min-height:410px;filter:none}
/* Emergency information has its own warning hierarchy, independent of red. */
#emergency{background:var(--ink);padding-block:3rem 4rem}
#emergency h2{font-size:clamp(1.9rem,3.3vw,3rem);max-width:24ch}
.emergency-banner{display:grid;grid-template-columns:48px 1fr;gap:.5rem 1.25rem;background:#f4f1eb;color:#171719;border:2px solid #f4f1eb;border-radius:3px;padding:1.5rem;text-align:left}
.emergency-banner .eb-icon{grid-row:1/3;font-size:1.8rem;margin:0}
.emergency-banner h3{color:#171719;font-size:1.15rem}
.emergency-banner p{color:#302827;font-size:.95rem;line-height:1.7}
.emergency-grid{display:block}
.emergency-card{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:.5rem 2rem;background:none;border:0;border-top:1px solid #777077;border-radius:0;padding:1.5rem 0;box-shadow:none}
.emergency-card h4{grid-column:1;grid-row:1/4;align-self:start;font-size:1rem;line-height:1.55;color:var(--paper);display:block;max-width:28ch}
.emergency-card .ec-dist{display:block;width:max-content;font-size:.8rem;color:var(--muted);background:none;border:0;border-radius:0;padding:0;margin-top:.5rem}
.emergency-card p{font-size:.88rem;color:var(--muted);grid-column:2;margin:0;line-height:1.7}
.emergency-card .ec-phone{grid-column:3;font-size:.95rem;line-height:1.6;color:var(--paper);margin:0!important;min-height:44px;display:flex;align-items:center}
.emergency-card .ec-note{grid-column:3;font-size:.83rem;color:var(--muted);font-style:normal}
#emergency .container>div:last-child[style]{border:0!important;border-top:1px solid #777077!important;border-radius:0!important;background:none!important;padding:1.25rem 0!important;text-align:left!important}
/* FAQ: category spine with offset question/answer tracks. */
#faq{background:#f4f1eb;--paper:#171719;--muted:#575256;--line:#cbc5c0;--accent-text:#B81D13;color:var(--paper)}
#faq .container{max-width:1220px}
.faq-list{max-width:none;margin:0;padding-left:clamp(0rem,8vw,8rem)}
.faq-cat{margin:3rem 0 0;padding:1.25rem 0;border-top:2px solid var(--fawa-red)}
.faq-cat h3{color:var(--fawa-red);font-size:.9rem;font-weight:600;letter-spacing:0}
.faq-cat h3::before{display:none}
.faq-item{background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;backdrop-filter:none;margin:0;overflow:visible}
.faq-q{font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.55;letter-spacing:-.015em;color:var(--paper);padding:1.4rem 0;font-weight:500;min-height:70px;gap:2rem}
.faq-q::after{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #b7aeab;border-radius:50%;color:var(--fawa-red);font-size:1.25rem;transition:transform .18s var(--ease-out)}
.faq-q:hover,.faq-item.open .faq-q{color:var(--fawa-red)}
.faq-item.open .faq-q::after{background:var(--fawa-red);border-color:var(--fawa-red);color:#fff}
.faq-a{max-height:none;display:none;transition:none}
.faq-item.open .faq-a{display:block;max-height:none;padding:.1rem 4rem 1.75rem 0}
.faq-a p,.faq-a ul{font-size:1rem;line-height:1.85;color:var(--muted);max-width:63ch}
.faq-a a{display:inline-flex;align-items:center;min-height:44px;margin-top:.75rem;text-decoration:underline}
/* Booking: an open working surface, integrated with its section title. */
#booking{background:var(--ink);position:relative}
#booking .container{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);column-gap:clamp(2rem,6vw,6rem);align-items:start}
#booking h2{grid-column:1;font-size:clamp(2.2rem,4.4vw,4.2rem);max-width:10ch;margin:0}
#booking .subtitle{grid-column:1;max-width:28ch;margin:1.5rem 0 0}
.booking-form{grid-column:2;grid-row:1/4;max-width:none;width:100%;margin:0;padding:0;background:none;border:0;border-top:2px solid var(--fawa-red);border-radius:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 1.75rem;padding-top:2rem}
.booking-field-wide,.booking-form .form-note,.booking-form>.btn-wa{grid-column:1/-1}
.booking-form label{color:var(--muted);font-size:.88rem;line-height:1.5;margin-bottom:.65rem}
.booking-form input,.booking-form select{border:1px solid #7b7479;border-radius:3px;background:var(--surface);color:var(--paper);font-size:1rem;line-height:1.5;min-height:52px;padding:.85rem;width:100%;max-width:100%;min-width:0;margin:0}
.booking-form input::placeholder{color:#c2beba;opacity:1}
.booking-form input:focus,.booking-form select:focus{border-color:var(--paper);outline:2px solid var(--fawa-red);outline-offset:3px}
.booking-form input[type=file]{font-size:.84rem;overflow:hidden;padding:.7rem}
.booking-form input::file-selector-button{background:var(--paper);color:var(--ink);border:0;border-radius:2px;padding:.4rem .6rem;font:inherit;margin-right:.65rem}
.booking-field:focus-within label{color:var(--paper)}
.booking-form .form-note{font-size:.87rem;color:var(--muted);margin:0;line-height:1.65}
.booking-form>.btn-wa{min-height:56px;background:var(--fawa-red);color:#fff;border-radius:3px;font-size:.95rem;line-height:1.5;padding:1rem}
.booking-form>.btn-wa:hover{background:#8f1913}
/* Publication: one leading article, a quieter two-column reading register. */
#blog{background:var(--ink);padding-block:4rem}
#blog .container{border-top:1px solid var(--line);padding-top:3rem}
#blog h2{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:600}
#blog .container>p:not(.subtitle){text-align:left!important;line-height:2}
#blog .container>p:not(.subtitle) a{display:inline-block;text-decoration:underline;min-height:44px}
.blog-editorial{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 4rem;margin-top:2.5rem}
.blog-row{border:0;border-top:1px solid var(--line);border-radius:0;background:none;padding:1.5rem 0;display:grid;grid-template-columns:90px minmax(0,1fr);gap:1rem;align-items:start;transition:color .18s ease-out}
.blog-row:first-child{grid-column:1/-1;grid-template-columns:90px minmax(0,1fr);gap:1rem;padding:1.75rem 0 2rem;border-top:2px solid var(--fawa-red)}
.blog-row .br-tag{font-size:.8rem!important;padding:.1rem 0!important;color:var(--paper)!important;background:none!important;font-weight:500;white-space:normal}
.blog-row:first-child .br-tag{font-size:1rem!important}
.blog-row .br-body h4{font-family:var(--display);font-size:1.15rem;font-weight:500;line-height:1.4;letter-spacing:-.025em;color:var(--paper);margin:0 0 .7rem}
.blog-row:first-child .br-body h4{font-size:clamp(1.6rem,2.8vw,2.5rem);line-height:1.25;max-width:38ch}
.blog-row .br-body p{font-size:1rem;color:var(--muted);line-height:1.65}
.blog-row .br-body .br-meta{font-size:.8rem;color:var(--muted);margin-top:.8rem}
.blog-row:hover{background:none;transform:none}
.blog-row:hover h4{text-decoration:underline;text-decoration-color:var(--fawa-red);text-decoration-thickness:2px;text-underline-offset:.2em}
.btn-outline,.tips-cta a{border:0;border-bottom:1px solid var(--fawa-red);border-radius:0;min-height:48px;padding:.65rem 0;box-shadow:none;color:var(--paper);font-size:.95rem}
/* Health tips form an image-led companion spread, not three equal tiles. */
#tips{padding-block:1rem 4rem;background:var(--ink)}
#tips .container{border-top:1px solid var(--line);padding-top:4rem}
#tips h2{font-size:clamp(1.9rem,3.2vw,3rem)}
.tips-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:2rem 4rem;align-items:start}
.tip-card{display:grid;grid-template-columns:145px minmax(0,1fr);gap:.7rem 1.5rem;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;padding:0}
.tip-card:first-child{grid-column:1;grid-row:1/3;display:block}
.tip-card img{grid-row:1/3;width:100%;height:100%;aspect-ratio:1;object-fit:cover;border-radius:0;margin:0;max-height:240px}
.tip-card:first-child img{height:auto;aspect-ratio:4/3;max-height:340px;margin-bottom:1.5rem}
.tip-card h3{font-size:1.15rem;line-height:1.4;letter-spacing:-.02em;color:var(--paper);margin:0}
.tip-card p{font-size:.9rem;color:var(--muted);line-height:1.7;max-width:52ch}
.tip-card:first-child p{margin-top:.65rem}
.tip-card:hover{transform:none;background:none;border:0;box-shadow:none}
.tip-card:hover h3{text-decoration:underline;text-decoration-color:var(--fawa-red);text-underline-offset:.25em}
.tips-cta{text-align:left;margin-top:2rem}
.tips-cta a:hover{background:none;color:var(--paper)}
/* Insurance is a supporting note, below the clinical hierarchy. */
#oyen{background:var(--ink);padding-block:3rem;border-block:1px solid var(--line)}
#oyen .container{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:0 4rem}
#oyen h2{font-size:1.6rem;letter-spacing:-.025em;grid-column:1}
#oyen .subtitle{grid-column:1;font-size:.9rem;margin:.5rem 0 0;max-width:30ch}
#oyen .container>div{grid-column:2;grid-row:1/3;max-width:none!important;text-align:left!important;margin:0!important}
#oyen .container>div>a{background:none!important;color:var(--paper)!important;padding:.6rem 0!important;border-radius:0!important;border-bottom:1px solid var(--fawa-red);font-size:.92rem;min-height:44px}
/* Team editorial: the doctor leads; the clinic team remains secondary. */
#team{background:#f4f1eb;color:#171719;--paper:#171719;--muted:#575256;--line:#cbc5c0;--accent-text:#B81D13;padding-block:clamp(3rem,6vw,6rem)}
#team .doctor-feature{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:start;gap:clamp(2rem,6vw,6rem)}
#team .doctor-portrait{margin:0;max-width:460px;width:100%;min-width:0}
#team .doctor-portrait img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border:0;border-radius:0}
#team .doctor-copy{min-width:0;max-width:36rem;padding-top:clamp(1rem,2.5vw,2.5rem)}
#team .doctor-eyebrow{color:#B81D13;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin:0 0 1.25rem}
#team h2{font-family:inherit;font-size:clamp(2.15rem,4.4vw,4.5rem);font-weight:600;line-height:1.08;letter-spacing:-.045em;text-align:left;color:#171719;margin:0;max-width:15ch;text-wrap:balance}
#team h2::after{display:none}
#team .doctor-name-line{display:block}
#team .doctor-title{font-size:clamp(1rem,1.5vw,1.2rem);font-weight:600;line-height:1.5;margin:1.5rem 0 0;color:#171719}
#team .doctor-clinic{font-size:1rem;line-height:1.7;margin:1.25rem 0 .25rem;color:#575256}
#team .doctor-positioning{font-size:1rem;line-height:1.7;margin:0;color:#575256;max-width:34ch}
#team .supporting-team{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,280px);gap:2rem;align-items:start;border-top:1px solid #cbc5c0;margin-top:clamp(2.5rem,5vw,4.5rem);padding-top:1.75rem}
#team .supporting-team h3{font-family:inherit;font-size:1.35rem;line-height:1.3;letter-spacing:-.02em;color:#171719;margin:0 0 .5rem}
#team .supporting-team p{font-size:.95rem;line-height:1.7;color:#575256;margin:0}
#team .supporting-team img{display:block;width:100%;height:auto;border:0;border-radius:0}
@media(max-width:768px){
  #team .doctor-feature{grid-template-columns:minmax(0,1fr);gap:2rem}
  #team .doctor-portrait{max-width:440px}
  #team .doctor-copy{padding-top:0}
  #team h2{font-size:clamp(2.15rem,7vw,3.5rem);max-width:18ch}
  #team .doctor-title{margin-top:1.25rem}
  #team .supporting-team{grid-template-columns:minmax(0,1fr) minmax(0,220px);gap:1.5rem}
}
@media(max-width:480px){
  #team .supporting-team{grid-template-columns:minmax(0,1fr);gap:1.25rem}
  #team .supporting-team img{max-width:280px}
}
/* Editorial clinic tour: a lead photograph and supporting register. */
#gallery{padding:clamp(3.5rem,7vw,6rem) 0 clamp(4rem,8vw,7rem);background:var(--ink)}
#gallery .container{max-width:1440px;border-top:1px solid var(--line);padding-top:clamp(2rem,4vw,3.5rem)}
#gallery h2{font-size:clamp(2.5rem,5.5vw,5rem);line-height:1.06;letter-spacing:-.035em;margin-bottom:1rem;text-align:left}
#gallery .subtitle{max-width:42ch;margin:0 0 clamp(2rem,4vw,3.5rem);text-align:left}
#gallery .gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:2rem clamp(1rem,2.5vw,2.5rem);align-items:start}
#gallery .gallery-item{grid-column:span 4;aspect-ratio:auto;min-width:0;border:0;border-radius:0;overflow:visible;background:none;transition:none}
#gallery .gallery-item:first-child{grid-column:1/9;grid-row:1/3}
#gallery .gallery-item:nth-child(2),#gallery .gallery-item:nth-child(3){grid-column:9/13}
#gallery .gallery-item img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;border-radius:0;transition:none}
#gallery .gallery-item .gi-label{position:static;background:none;color:var(--paper);padding:.8rem 0;font-size:.95rem;line-height:1.5;border-bottom:1px solid var(--line);overflow-wrap:break-word}
#gallery .gallery-item:first-child .gi-label{font-size:1.2rem;padding:1rem 0;border-color:var(--fawa-red)}
#gallery .gallery-item:hover{transform:none;border:0}
#gallery .gallery-item:hover img{transform:none}
#gallery .gallery-item:focus-visible{outline:2px solid var(--fawa-red);outline-offset:6px}
#gallery .gallery-item:focus-visible .gi-label{color:var(--paper);border-color:var(--fawa-red)}
@media(max-width:1000px){
  #gallery .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.25rem}
  #gallery .gallery-item:first-child,#gallery .gallery-item:nth-child(2),#gallery .gallery-item:nth-child(3),#gallery .gallery-item{grid-column:auto;grid-row:auto}
  #gallery .gallery-item:first-child .gi-label{font-size:1rem;padding:.8rem 0}
}
@media(max-width:540px){
  #gallery .gallery-grid{grid-template-columns:minmax(0,1fr);gap:1.75rem}
  #gallery h2{font-size:clamp(2.25rem,9vw,3rem)}
}
.gallery-lightbox{background:#171719f5;backdrop-filter:none}
.gallery-lightbox img{border-radius:0;box-shadow:none;object-fit:contain}
.gallery-lightbox .lb-close{background:#f4f1eb;color:#171719}
/* The closing masthead creates an intentional end rather than leftover links. */
footer{background:#f4f1eb;--paper:#171719;--muted:#575256;--line:#cbc5c0;--accent-text:#B81D13;color:var(--paper);border:0;backdrop-filter:none;padding:3rem 0 0;text-align:left}
.footer-signature{font-size:clamp(5rem,14vw,13rem);line-height:1;font-weight:800;letter-spacing:-.04em;display:flex;align-items:center;gap:2rem;padding-bottom:2rem;border-bottom:2px solid var(--fawa-red);margin-bottom:3rem}
.footer-signature span{display:block;flex:1;height:1px;background:var(--line)}
.footer-grid{grid-template-columns:1.25fr 1fr 1fr 1.1fr;gap:3rem}
.footer-grid h3{color:var(--fawa-red);font-size:.8rem;letter-spacing:.03em;padding:0;margin-bottom:1rem}
.footer-grid h3::after,.footer-links li::before{display:none}
.footer-about .clinic-name{color:var(--paper);font-size:1.3rem;font-weight:600;letter-spacing:-.02em}
.footer-grid p,.footer-grid a,.footer-grid li{font-size:.88rem;color:var(--muted);line-height:1.8}
.footer-grid a{display:inline-block;min-height:36px;padding-block:.3rem}
.footer-grid a:hover{padding-left:0;color:var(--fawa-red);text-decoration:underline}
.footer-contact .contact-row{margin-bottom:.8rem;gap:.6rem}
.footer-bottom{color:var(--muted);border-color:var(--line);font-size:.8rem;margin-top:2rem;padding:1.5rem 0}
.social-float-bar{position:static;display:flex;flex-direction:row;justify-content:center;transform:none;background:#f4f1eb;padding:0 1rem 1rem;gap:.5rem}
.social-float-bar a{background:none!important;color:#171719!important;border:1px solid #cbc5c0;width:44px;height:44px;border-radius:50%;font-size:1rem}
.social-float-bar a:hover{padding:0;background:#e4dfd9!important}
.social-float-bar~.social-float-bar{display:none}
.back-top{display:flex;justify-content:center;align-items:center;min-height:48px;background:#f4f1eb;color:#B81D13;font-size:1.5rem}
.scroll-progress{height:2px;background:var(--fawa-red);transition:none}
/* Keep the existing generated destination, but remove the repeated floating pitch. */
.sticky-cta,.sticky-cta.show{display:none}
.mobile-cta-bar{background:var(--ink);border-top:1px solid var(--line);box-shadow:none;padding:.65rem;gap:.65rem}
.mobile-cta-bar a{font-size:.83rem;font-weight:600;min-height:48px;border-radius:3px;line-height:1.4;display:flex;align-items:center;justify-content:center;padding:.7rem .5rem}
.mobile-wa{background:transparent;color:var(--paper);border:1px solid #8b8488}
.mobile-book{background:var(--fawa-red);color:#fff;border:1px solid var(--fawa-red)}
@media(min-width:769px){.mobile-cta-bar{display:none!important}}
.blog-more{margin-top:1rem;border-top:1px solid var(--line)}
.blog-more summary{cursor:pointer;min-height:48px;padding:1rem 0;font-size:1rem;color:var(--paper)}
.blog-more>p{font-size:1rem;line-height:1.75}
.blog-more>p a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline}
.blog-more .blog-editorial{margin-top:0}
.blog-more .blog-row:first-child{grid-column:auto;grid-template-columns:1fr;gap:.7rem;border-top:1px solid var(--line);padding:1.5rem 0}
.blog-more .blog-row:first-child .br-body h4{font-size:1.15rem;line-height:1.4}
#blog .container>div:last-child{text-align:left!important;margin-top:1.5rem!important}
#blog .btn-outline{background:var(--paper);color:var(--ink);border:0;border-radius:3px;padding:.85rem 1.3rem;font-size:1rem;font-weight:700}
#blog .btn-outline:hover{background:#e4dfd9;color:var(--ink)}
/* Tablet navigation is deliberately a drawer before the primary line crowds. */
@media(max-width:1100px){
  nav .nav-main .container{display:grid!important;grid-template-columns:minmax(0,1fr) 44px 90px!important;gap:.75rem;min-height:72px;padding-block:.5rem;padding-right:clamp(1.2rem,5vw,5rem)!important}
  nav .logo-text{max-width:300px;font-size:.76rem;min-width:0;display:flex;white-space:normal;overflow:visible}
  nav .hamburger{grid-column:2;position:static!important;transform:none!important;width:44px;height:44px;display:block;z-index:1002;padding:0}
  nav .lang-toggle{grid-column:3;position:static!important;transform:none!important;width:90px;height:46px;margin:0!important;z-index:1002}
  nav .menu{display:none;position:fixed;inset:0 0 0 auto;width:min(90vw,420px);max-width:none;height:100dvh;margin:0;padding:8rem 1.75rem 6rem;border-left:1px solid var(--line);flex-direction:column;align-items:stretch;justify-content:flex-start;flex-wrap:nowrap;gap:.35rem;background:var(--ink);overflow-y:auto;backdrop-filter:none;box-shadow:none;z-index:1001}
  nav .menu.open{display:flex}
  nav .menu a{font-size:1rem;min-height:46px;white-space:normal;display:flex}
  .nav-dropdown-menu{position:static;border:0;border-left:1px solid var(--line);background:none;margin:0 0 1rem;padding:0 0 0 .75rem}
  .nav-more summary{font-size:1rem;justify-content:space-between;min-height:48px}
  .nav-more-links{position:static;width:auto;padding:1rem 0;background:none;border:0;gap:.3rem 1.2rem}

  .trust-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .featured-services{gap:2rem!important}
  .services-feature:not(:first-child){grid-template-columns:1fr;gap:1rem}
  .services-feature:not(:first-child) img{aspect-ratio:16/9}
  .contact-editorial{gap:2.5rem}
  .emergency-card{grid-template-columns:1fr 1fr}
  .emergency-card h4{grid-row:auto;grid-column:1/-1;max-width:none}
  .emergency-card p{grid-column:1}
  .emergency-card .ec-phone,.emergency-card .ec-note{grid-column:2}
  .blog-row{grid-template-columns:1fr;gap:.7rem}
  .tips-grid{gap:2rem}
  .tip-card{grid-template-columns:100px minmax(0,1fr);gap:1rem}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2.5rem 4rem}
}
/* Mobile navigation and existing content sections. */
@media(max-width:768px){
  html{scroll-padding-top:142px}
  :where(section,[id]){scroll-margin-top:1rem}
  body{padding-bottom:calc(82px + env(safe-area-inset-bottom))}
  nav .nav-top .container{display:flex!important;flex-direction:column;align-items:flex-start;gap:.15rem;justify-content:flex-start;padding-block:.1rem}
  nav .nav-top a{font-size:.75rem;text-align:left;width:auto;line-height:1.4}
  nav .logo-text{font-size:.65rem;line-height:1.45;display:block;max-width:210px}
  nav .logo-text .logo-amp{font-size:.8rem}
  nav .nav-main .container{gap:.45rem;min-height:68px}
  .container{padding-inline:1.25rem}
  section{padding-block:4rem}
  section h2{font-size:clamp(2rem,7.7vw,3.3rem);max-width:19ch}
  section .subtitle{font-size:.94rem;margin:1.1rem 0 2rem}

  .trust-stats{padding:1.75rem 0!important}
  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
  .trust-item{grid-column:auto;min-width:0;border-right:0;border-bottom:1px solid var(--line);padding:1rem .75rem}
  .trust-item:nth-child(odd):not(:last-child){border-right:1px solid var(--line)}
  .trust-item:last-child{grid-column:1/-1;border-bottom:0;border-right:0}
  .trust-item strong{font-size:1.3rem}
  .trust-item span{font-size:.76rem}
  .symptom-feature .container>div{grid-template-columns:1fr!important;gap:2rem!important}
  .symptom-headline{max-width:19ch}
  .symptom-sub{max-width:55ch;margin-bottom:1rem}
  .symptom-feature .container>div>div:first-child>div[style]{margin-top:1rem!important}
  .symptom-label{margin-bottom:1rem}
  .symptom-widget{padding:1.25rem;overflow:visible}
  .symptom-options{grid-template-columns:1fr;gap:0}
  .symptom-opt{min-height:58px;font-size:.92rem;padding:.9rem .1rem;gap:.7rem}
  .symptom-opt .opt-arrow{margin-left:auto}
  .symptom-opt .opt-icon{width:24px}
  .symptom-result.urgent{padding:1rem}
  .symptom-result .wa-btn{width:100%;justify-content:center;font-size:.9rem}
  #pricing .container{display:block}
  #pricing h2{font-size:clamp(2.15rem,7vw,3.3rem);max-width:22ch}
  #pricing .subtitle{margin:1rem 0 1.75rem}
  .pricing-editorial{grid-template-columns:1fr;gap:2.5rem}
  .pricing-col{padding:0}
  .price-row{padding:1rem 0;gap:.65rem}
  .price-row .svc{font-size:1rem}
  .price-row .amt{font-size:1.4rem}
  .price-row .amt small{font-size:.9rem}
  .featured-services{grid-template-columns:1fr!important;gap:2rem!important}
  .services-feature:first-child{grid-row:auto;display:block}
  .services-feature:first-child img{aspect-ratio:4/3;border-radius:0 0 35% 0}
  .services-feature:first-child h3{font-size:1.7rem}
  .services-feature:not(:first-child){grid-template-columns:35% minmax(0,1fr);gap:1.2rem;padding-top:1.25rem}
  .services-feature:not(:first-child) img{height:auto;aspect-ratio:1/1;object-fit:cover}
  .services-feature:not(:first-child) .services-feature-body{padding:0}
  .services-feature-body h3{font-size:1.25rem}
  .services-feature-body p{font-size:1rem}
  .services-feature-body .price-tag{font-size:1.05rem;margin-top:.75rem}
  .services-list{grid-template-columns:1fr;gap:0}
  .service-row{padding:1.1rem 0;flex-wrap:nowrap;gap:.65rem}
  .service-row .sr-info h4{font-size:1.1rem}
  .service-row .sr-info p{font-size:.96rem}
  .service-row .sr-price{font-size:1rem}
  #cases{padding-block:3.5rem}
  .cases-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1rem!important}
  .case-card:first-child{grid-column:1/3;grid-row:1/3;aspect-ratio:3/4!important}
  .case-card .case-img .case-tag{font-size:.77rem;padding:.5rem .4rem;line-height:1.4}
  .case-card:nth-child(4){grid-column:span 1}
  .reviews-editorial{grid-template-columns:1fr;gap:1.5rem}
  .review-quote:first-child p{font-size:clamp(1.4rem,4vw,1.85rem);max-width:30ch;line-height:1.4}
  .review-quote p{font-size:1.1rem}
  .contact-editorial{grid-template-columns:1fr;gap:2.5rem}
  .contact-editorial .map-frame{min-height:440px;border-radius:90px 0 0 0}
  .map-frame iframe{min-height:330px}
  .first-floor-notice{padding:1.25rem;font-size:.9rem}
  #hours{padding-bottom:4rem}
  .emergency-banner{grid-template-columns:30px minmax(0,1fr);gap:.6rem 1rem;padding:1rem}
  .emergency-banner .eb-icon{font-size:1.5rem}
  .emergency-banner h3{font-size:1.05rem}
  .emergency-banner p{font-size:.91rem}
  .emergency-card{display:block;padding:1.5rem 0}
  .emergency-card h4{margin-bottom:.75rem;font-size:1.08rem}
  .emergency-card .ec-dist{display:inline;margin-left:.5rem}
  .emergency-card p{margin-bottom:.5rem}
  .emergency-card .ec-phone{display:flex;min-height:48px;font-size:1rem}
  .faq-list{padding:0}
  .faq-cat{margin-top:2.25rem}
  .faq-q{font-size:1rem;gap:1rem;padding:1.25rem 0}
  .faq-q::after{width:32px;height:32px}
  .faq-item.open .faq-a{padding:0 1rem 1.5rem 0}
  .faq-a p{font-size:.95rem;line-height:1.8}
  #booking .container{display:block}
  #booking h2{font-size:clamp(2.7rem,10vw,4rem);max-width:13ch}
  #booking .subtitle{max-width:45ch;margin:1.25rem 0 2rem}
  .booking-form{grid-template-columns:1fr;gap:1.35rem;padding:1.5rem 0 0}
  .booking-field-wide,.booking-form .form-note,.booking-form>.btn-wa{grid-column:auto}
  .booking-form label{font-size:.9rem}
  .booking-form input,.booking-form select{font-size:1rem;min-height:54px}
  #blog h2{font-size:clamp(2.5rem,9vw,4rem)}
  .blog-editorial{grid-template-columns:1fr;gap:0}
  .blog-row{grid-template-columns:1fr;padding:1.4rem 0;gap:.65rem}
  .blog-row:first-child{grid-template-columns:1fr;gap:1rem;grid-column:auto;padding:1.5rem 0 2rem}
  .blog-row:first-child .br-body h4{font-size:clamp(1.7rem,7vw,2.7rem)}
  .blog-row .br-body h4{font-size:1.13rem}
  .blog-row .br-tag{font-size:.8rem!important}
  #tips{padding-top:0}
  #tips .container{padding-top:3rem}
  .tips-grid{grid-template-columns:1fr;gap:2rem}
  .tip-card:first-child{grid-row:auto;grid-column:auto;display:block}
  .tip-card{grid-template-columns:90px minmax(0,1fr);gap:.6rem 1.2rem}
  .tip-card img{height:auto;aspect-ratio:3/4}
  .tip-card h3{font-size:1.08rem}
  .tip-card p{font-size:.88rem}
  #oyen .container{display:block}
  #oyen .subtitle{margin:.75rem 0 1.5rem;max-width:none}
  #oyen h2{font-size:1.6rem}
  .team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
  .team-photo:first-child{grid-column:1/-1;grid-row:auto}
  .team-photo:first-child img{aspect-ratio:auto}
  .team-photo:nth-child(2){grid-column:1;margin:0}
  .team-photo:nth-child(3){grid-column:2;margin:0}
  .team-photo:first-child>div{display:block;padding:1rem 0!important}
  .team-photo:first-child>div>div{font-size:.86rem!important;line-height:1.75}
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1rem}
  .gallery-item .gi-label{font-size:.94rem;padding:.65rem 0}
  .footer-signature{font-size:clamp(4.5rem,19vw,8rem);gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}
  .footer-about,.footer-contact{grid-column:1/-1}
  .footer-grid a{min-height:44px;display:inline-flex;align-items:center;font-size:.88rem}
  .footer-grid p,.footer-grid li{font-size:.9rem}
  .footer-contact .contact-row{align-items:center;margin-bottom:.35rem}
  .footer-bottom{align-items:flex-start;text-align:left;gap:1rem}
  .social-float-bar{display:flex}
  .mobile-cta-bar{display:flex;padding-bottom:calc(.65rem + env(safe-area-inset-bottom))}
}
/* Continuation polish: explicit disclosure states and compact small screens. */
nav .nav-dropdown-toggle{display:flex;align-items:center;gap:.5rem;min-height:44px;padding:.25rem 0;border:0;background:none;color:var(--paper);font:inherit;font-size:.83rem;white-space:nowrap;cursor:pointer;text-align:left}
nav .nav-dropdown:is(:hover,:focus-within) .nav-dropdown-menu{display:none}
nav .nav-dropdown .nav-dropdown-menu.show{display:block}
nav .nav-dropdown-toggle[aria-expanded="true"]{text-decoration:underline;text-decoration-color:var(--fawa-red);text-underline-offset:.4em}
.nav-more-links{max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain}
.hero .btn,.service-row,.services-feature,.tip-card,.booking-form>.btn-wa{transition:background-color .18s ease-out,color .18s ease-out,transform .18s var(--ease-out)}
.services-feature:focus-visible h3,.tip-card:focus-visible h3{text-decoration:underline;text-underline-offset:.2em}
.tips-cta a:hover,.tips-cta a:focus-visible{border-color:var(--fawa-red);outline:2px solid var(--fawa-red);outline-offset:4px}
.symptom-restart:hover{color:inherit;text-decoration-thickness:2px}
.contact-item a,.review-actions a{display:inline-flex;align-items:center;min-height:44px}
.gallery-lightbox{padding:5.5rem 1rem 1.5rem}
.gallery-lightbox img{max-height:calc(100dvh - 7rem)}
.booking-form input[type="date"],.booking-form select{color-scheme:dark}
@media(max-width:1100px){
  nav .nav-dropdown-toggle{font-size:1rem;min-height:48px;width:100%;white-space:normal}
  nav .menu{overscroll-behavior:contain;padding-top:max(8rem,calc(env(safe-area-inset-top) + 7rem))}
  .nav-more-links{max-height:none;overflow:visible}
}
@media(max-width:480px){
  nav .lang-toggle{gap:0}

  .services-feature:not(:first-child){grid-template-columns:minmax(0,1fr);gap:1rem}
  .services-feature:not(:first-child) img{aspect-ratio:4/3}
  .team-grid{grid-template-columns:minmax(0,1fr)}
  .team-photo:nth-child(2),.team-photo:nth-child(3){grid-column:1}
  .service-row{display:grid;grid-template-columns:24px minmax(0,1fr);gap:.35rem .65rem}
  .service-row .sr-icon{grid-row:1/3;align-self:start}
  .service-row .sr-price{grid-column:2;margin-left:0}
  .case-card .case-img .case-tag{font-size:.75rem;overflow-wrap:anywhere}
  .footer-grid{gap:2rem 1rem}
}
/* Feedback only. Content is never dependent on motion or intersection observers. */
@keyframes fawa-answer-enter{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){
  .faq-item.open:not(:has(.faq-q:focus-visible)) .faq-a{animation:fawa-answer-enter .18s var(--ease-out)}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .hero .btn:hover,.booking-form>.btn-wa:hover{transform:translateY(-2px)}
  .gallery-item:hover .gi-label{color:var(--paper);border-color:var(--fawa-red)}
  .services-feature:hover .price-tag::after{transform:translate(2px,-2px)}
  .price-tag::after{transition:transform .18s var(--ease-out)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal,.reveal.visible{opacity:1;transform:none}
}
@media(forced-colors:active){
  .hero .btn,.mobile-cta-bar a,.symptom-opt,.faq-q::after{border:1px solid ButtonText}
  .critical-shortcut,.symptom-result.urgent,.emergency-banner{border:2px solid CanvasText}
}

/* Closing spread: scoped to the final CTA and footer only. */
#final-cta{background:#171719;color:#f4f1eb;padding:clamp(3.5rem,7vw,7rem) 0;border-top:1px solid #494447}
#final-cta .closing-layout{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2.5rem 4rem}
#final-cta h2{color:#f4f1eb;font-size:clamp(2.75rem,5.8vw,5.5rem);font-weight:700;line-height:1.04;letter-spacing:-.045em;text-align:left;max-width:13ch;margin:0 0 1.5rem}
#final-cta p{color:#d4ceca;font-size:1.05rem;line-height:1.65;max-width:44ch;margin:0}
#final-cta .closing-actions{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;min-width:15rem}
#final-cta .closing-actions a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:.85rem 1.5rem;border:1px solid #f4f1eb;border-radius:0;font-size:1rem;font-weight:600;line-height:1.4;text-align:center;text-decoration:none;transition:none}
#final-cta .closing-primary{background:#f4f1eb;color:#171719}
#final-cta .closing-secondary{background:transparent;color:#f4f1eb}
#final-cta .closing-actions a:hover{background:#B81D13;border-color:#B81D13;color:#fff}
#final-cta a:focus-visible{outline:3px solid #f4f1eb;outline-offset:5px}
footer{padding-top:clamp(2.5rem,5vw,5rem);background:#f4f1eb;color:#171719}
footer .footer-signature{font-size:clamp(5rem,16vw,15rem);line-height:.9;letter-spacing:-.055em;gap:clamp(1rem,4vw,4rem);padding-bottom:clamp(2rem,4vw,4rem);margin-bottom:clamp(2.5rem,5vw,4.5rem);border-bottom:1px solid #B81D13}
footer .footer-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr) minmax(0,1fr) minmax(0,1.2fr);gap:clamp(1.5rem,3vw,3rem)}
footer .footer-grid>div{min-width:0}
footer .footer-grid h3{font-size:.75rem;letter-spacing:.12em;line-height:1.5;margin-bottom:1.25rem;color:#B81D13}
footer .footer-about .clinic-name{font-size:1.35rem;letter-spacing:.04em;line-height:1.2;margin-bottom:1.25rem}
footer .footer-grid p,footer .footer-grid li,footer .footer-grid a{font-size:.9rem;line-height:1.7;color:#575256;overflow-wrap:break-word}
footer .footer-grid a,footer .footer-bottom a{display:inline-flex;align-items:center;min-height:44px;padding:.5rem 0;transition:none}
footer a:hover{color:#B81D13;text-decoration:underline;text-underline-offset:4px}
footer a:focus-visible{outline:2px solid #B81D13;outline-offset:4px}
footer .footer-contact .contact-row{gap:0;margin-bottom:.2rem;align-items:flex-start}
footer .footer-contact .contact-row:first-of-type{margin-bottom:1rem}
footer .footer-contact .ci{display:none}
footer .footer-bottom{align-items:center;text-align:left;margin-top:clamp(2.5rem,5vw,4.5rem);padding:1.25rem 0;gap:.75rem 2rem;border-top:1px solid #cbc5c0;line-height:1.6;color:#575256}
@media(max-width:1000px){
  #final-cta .closing-layout{grid-template-columns:minmax(0,1fr)}
  #final-cta .closing-actions{flex-direction:row;flex-wrap:wrap;min-width:0}
  #final-cta .closing-actions a{min-width:15rem}
  footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 3rem}
  footer .footer-about,footer .footer-contact{grid-column:auto}
}
@media(max-width:600px){
  #final-cta .closing-actions{flex-direction:column}
  #final-cta .closing-actions a{min-width:0;width:100%}
  footer .footer-grid{grid-template-columns:minmax(0,1fr);gap:2rem}
  footer .footer-grid>div+div{border-top:1px solid #cbc5c0;padding-top:2rem}
  footer .footer-bottom{flex-direction:column;align-items:flex-start}
}
/* Official clinic identity: navigation and footer only. */
nav .logo-text{display:flex;align-items:center;gap:.6rem}
nav .clinic-logo{display:block;width:38px;height:38px;object-fit:contain;flex-shrink:0}
nav .clinic-wordmark{min-width:0}
footer .clinic-logo{display:block;width:48px;height:48px;object-fit:contain;margin-bottom:1rem}
@media(max-width:768px){
  nav .logo-text{gap:.4rem}
  nav .clinic-logo{width:32px;height:32px}
}
