/* GRY — Precision Editorial redesign
   A camada fica isolada para manter o projeto reversível e preservar os assets clínicos. */

:root{
  --gry-ink:#241b17;
  --gry-ink-soft:#625751;
  --gry-paper:#f5f0eb;
  --gry-paper-2:#eee5de;
  --gry-white:#fffaf6;
  --gry-blue:#173a72;
  --gry-blue-deep:#081727;
  --gry-rose:#d9b6aa;
  --gry-rose-deep:#a47e72;
  --gry-line:rgba(66,48,40,.14);
  --gry-shadow:0 26px 70px rgba(44,31,25,.12);
  --gry-ease:cubic-bezier(.22,.75,.2,1);
}

html{scroll-padding-top:76px}
body{
  color:var(--gry-ink);
  background:var(--gry-paper);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
::selection{background:var(--gry-blue);color:var(--gry-white)}

/* A direção nova substitui efeitos genéricos e loops decorativos antigos. */
.site-intro-screen,
.scroll-progress,
.cursor-aura,
.hero-depth-scene{display:none!important}
.reveal{
  opacity:1;
  visibility:visible;
  filter:none;
  transform:none;
  transition:none;
  pointer-events:auto!important;
}
.cinematic-tilt,
.cinematic-tilt:hover,
.cinematic-tilt > *,
.cinematic-tilt .service-photo,
.cinematic-tilt .transform-photo{transform:none}

.container{width:min(1200px,calc(100% - 64px))}
.eyebrow{
  gap:12px;
  color:var(--gry-rose-deep);
  font-size:.69rem;
  letter-spacing:.2em;
}
.eyebrow::before{width:30px;background:currentColor}
h1,h2,h3{color:var(--gry-ink);letter-spacing:-.035em}
p{color:var(--gry-ink-soft)}

/* Navegação */
.topbar{
  z-index:10020;
  background:rgba(248,244,240,.88);
  border-bottom:1px solid rgba(62,44,36,.1);
  box-shadow:none;
  backdrop-filter:blur(18px) saturate(1.15);
  -webkit-backdrop-filter:blur(18px) saturate(1.15);
}
.topbar.scrolled{background:rgba(248,244,240,.96);box-shadow:0 8px 30px rgba(48,34,28,.07)}
.nav{height:76px}
.brand-copy strong{color:#173a72}
.menu{gap:25px;color:#6c625c;font-size:.79rem}
.menu a{position:relative}
.menu > a:not(.nav-cta)::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:-8px;
  height:1px;
  background:var(--gry-blue);
  transition:right .35s var(--gry-ease);
}
.menu > a:not(.nav-cta):hover::after{right:0}
.menu a:hover{color:var(--gry-blue)}
.nav-cta{
  color:var(--gry-ink);
  border-color:rgba(50,36,30,.32);
  background:rgba(255,255,255,.26);
}
.nav-cta:hover{background:var(--gry-blue);border-color:var(--gry-blue);color:#fff}

/* Signature Moment #1 — split editorial -> full bleed */
.hero{
  --hero-overlay-opacity:1;
  height:172svh;
  min-height:1200px;
  padding:0;
  display:block;
  overflow:visible;
  background:var(--gry-blue-deep);
}
.hero::after{display:none}
.hero-stage{
  position:sticky;
  top:0;
  height:100svh;
  min-height:680px;
  overflow:hidden;
  isolation:isolate;
  background:var(--gry-paper);
}
.hero-video-bg{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  clip-path:inset(8.5% 2.5% 5% 49% round 34px);
  background:#13263b url("optimized/hero-banner-poster-hq-1666w.webp") center / cover no-repeat;
  will-change:clip-path,transform;
}
.hero-video-bg video{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:58% center;
  transform:scale(1.025);
  will-change:transform;
}
.hero-video-bg::after{
  content:"";
  position:absolute;
  inset:0;
  opacity:var(--hero-overlay-opacity);
  background:
    linear-gradient(90deg,rgba(245,240,235,.98) 0%,rgba(245,240,235,.82) 37%,rgba(245,240,235,.04) 68%,rgba(5,15,27,.12) 100%),
    linear-gradient(180deg,rgba(9,21,35,.05),rgba(9,21,35,.28));
  transition:none;
}
.hero-grid{
  position:relative;
  z-index:3;
  height:100%;
  padding-top:76px;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  align-items:center;
  gap:8vw;
}
.hero-copy{
  z-index:4;
  max-width:620px;
  transform:none;
  will-change:transform,opacity;
}
.hero-copy .eyebrow{max-width:520px;color:#7d655b}
.hero-title-intro{
  max-width:640px;
  margin-top:22px;
  color:var(--gry-ink);
  font-size:clamp(4.4rem,6.2vw,6.9rem);
  line-height:.86;
  text-wrap:balance;
}
.hero-title-intro em{display:inline;color:var(--gry-blue);font-weight:500;font-style:italic}
.hero-lead{max-width:560px;margin:28px 0 30px;color:#625751;font-size:1rem;line-height:1.72}
.hero-actions{gap:10px}
.hero .btn-primary{
  color:#fff;
  background:var(--gry-blue);
  border-color:var(--gry-blue);
  box-shadow:0 15px 32px rgba(23,58,114,.18);
}
.hero .btn-primary:hover{background:#102e60;box-shadow:0 18px 42px rgba(23,58,114,.25)}
.hero .btn-ghost{color:var(--gry-ink);border-color:rgba(54,39,32,.2);background:rgba(255,255,255,.38)}
.hero .btn-ghost:hover{color:var(--gry-blue);border-color:var(--gry-blue)}
.hero-proof{margin-top:26px;color:#746a64}
.hero-proof strong{color:var(--gry-ink)}
.hero-proof .dot{background:var(--gry-rose-deep)}
.hero-media{position:relative;min-height:630px;pointer-events:none}
.floating-note{
  left:auto;
  right:0;
  bottom:110px;
  width:min(290px,78%);
  padding:21px 22px;
  border:1px solid rgba(255,255,255,.54);
  border-radius:3px 24px 3px 3px;
  color:var(--gry-ink);
  background:rgba(252,248,244,.9);
  box-shadow:0 20px 55px rgba(18,31,46,.16);
  animation:none;
  will-change:transform,opacity;
}
.floating-note::before,.floating-note::after{display:none}
.floating-note small{color:#7c655b}
.floating-note strong{font-size:1.52rem;line-height:1.08}
.hero-handoff{
  position:absolute;
  left:clamp(28px,7vw,110px);
  bottom:clamp(70px,10vh,120px);
  z-index:4;
  width:min(650px,70vw);
  color:#fffaf6;
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(3.6rem,6vw,6.8rem);
  font-weight:600;
  line-height:.9;
  letter-spacing:-.045em;
  opacity:0;
  visibility:hidden;
  text-wrap:balance;
  text-shadow:0 16px 48px rgba(0,0,0,.28);
  will-change:transform,opacity;
}
.hero-scroll-cue{
  position:absolute;
  left:auto;
  right:max(32px,calc((100vw - 1200px)/2));
  bottom:21px;
  z-index:5;
  display:flex;
  align-items:center;
  gap:14px;
  color:rgba(255,255,255,.78);
  font-size:.61rem;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.hero-scroll-cue i{display:block;width:64px;height:1px;background:linear-gradient(90deg,#efc6b9,transparent)}

/* Seções calmas */
section{padding:clamp(100px,10vw,150px) 0}
#sobre{position:relative;background:var(--gry-paper);overflow:hidden}
#sobre::before{
  content:"01";
  position:absolute;
  right:4vw;
  top:6vw;
  color:rgba(36,27,23,.035);
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(10rem,22vw,24rem);
  line-height:.7;
  pointer-events:none;
}
.about-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(58px,8vw,118px)}
.about-photo img{
  aspect-ratio:4/5.35;
  border:0;
  border-radius:3px 86px 3px 3px;
  box-shadow:var(--gry-shadow);
}
.about-photo::before{inset:22px -18px -18px 22px;border-color:rgba(23,58,114,.18);border-radius:3px 86px 3px 3px}
.about-photo::after{
  content:"ANÁPOLIS · GO";
  position:absolute;
  left:-31px;
  bottom:18px;
  color:#78675e;
  font-size:.59rem;
  font-weight:700;
  letter-spacing:.22em;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
}
.about-copy h2{max-width:690px;margin:16px 0 30px;font-size:clamp(3.8rem,5.2vw,6rem);line-height:.92}
.about-copy>p{max-width:650px;font-size:.98rem;line-height:1.78}
.about-copy .quote{margin:32px 0;padding-left:24px;color:var(--gry-blue);border-left-color:var(--gry-rose-deep);font-size:clamp(1.65rem,2.2vw,2.15rem)}

.section-head{grid-template-columns:minmax(0,1.15fr) minmax(300px,.65fr);gap:8vw;margin-bottom:70px}
.section-head h2{max-width:780px;margin-top:14px;font-size:clamp(3.7rem,5.5vw,6rem);line-height:.9}
.section-head p{max-width:520px;line-height:1.75}

/* Pranchas clínicas editoriais */
.services{background:#eee6df;border-color:rgba(59,42,34,.1)}
.service-grid{display:grid;grid-template-columns:1fr;gap:42px}
.service-card{
  display:grid;
  grid-template-columns:minmax(0,1.14fr) minmax(330px,.86fr);
  min-height:520px;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(65,47,39,.13);
  border-radius:4px 34px 4px 4px;
  background:rgba(249,245,241,.76);
  box-shadow:0 22px 60px rgba(69,48,38,.07);
  transition:transform .45s var(--gry-ease),box-shadow .45s var(--gry-ease);
}
.service-card:nth-child(even){grid-template-columns:minmax(330px,.86fr) minmax(0,1.14fr);border-radius:34px 4px 4px 4px}
.service-card:hover{transform:translateY(-3px);border-color:rgba(23,58,114,.2);box-shadow:0 28px 70px rgba(69,48,38,.11)}
.service-card::after{display:none}
.service-photo{
  grid-column:1;
  grid-row:1;
  order:initial;
  height:100%;
  min-height:520px;
  aspect-ratio:auto;
  background:#d8ccc4;
}
.service-card:nth-child(even) .service-photo{grid-column:2}
.service-content{
  grid-column:2;
  grid-row:1;
  order:initial;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  margin:0;
  padding:74px 60px 60px;
}
.service-card:nth-child(even) .service-content{grid-column:1}
.service-num{
  position:absolute;
  left:calc(57% + 60px);
  top:44px;
  z-index:4;
  order:initial;
  margin:0;
  color:var(--gry-rose-deep);
  font-size:.77rem;
  letter-spacing:.18em;
}
.service-card:nth-child(even) .service-num{left:60px}
.service-card h3{margin:0 0 18px;color:var(--gry-ink);font-size:clamp(2.6rem,3.5vw,4rem);line-height:.92}
.service-card p{color:#655a54;font-size:.94rem;line-height:1.75}
.service-link{margin-top:24px;color:var(--gry-blue);font-size:.79rem;letter-spacing:.02em}
.compare-tag{border-radius:999px;background:rgba(16,29,43,.48);border-color:rgba(255,255,255,.45);backdrop-filter:blur(6px)}
.compare-handle{width:52px;height:52px;color:var(--gry-blue);border-color:rgba(23,58,114,.2);box-shadow:0 12px 30px rgba(30,22,18,.17)}
.compare-range:focus-visible{opacity:0;outline:0}
.compare-slider:focus-within{box-shadow:0 0 0 3px #fff,0 0 0 6px rgba(23,58,114,.5)}

/* Otomodelação — uma única composição forte, sem camadas decorativas em loop */
.oto-section{background:var(--gry-paper)}
.oto-section::before{opacity:.45}
.oto-shell{
  padding:clamp(54px,6vw,88px);
  border:1px solid rgba(255,255,255,.16);
  border-radius:6px 64px 6px 6px;
  background:linear-gradient(145deg,#173a72 0%,#0f2e5d 58%,#0a2247 100%);
  box-shadow:0 34px 90px rgba(23,58,114,.19);
}
.oto-shell::after{display:none}
.oto-marble-bg::before,.oto-marble-bg::after{animation:none!important;filter:none!important;opacity:.18!important}
.oto-intro{gap:clamp(50px,8vw,108px)}
.oto-copy h2{max-width:680px;font-size:clamp(4rem,5.8vw,6.4rem);line-height:.88}
.oto-copy>p{max-width:620px;line-height:1.76}
.oto-visual{border-radius:4px 46px 4px 4px}
.oto-visual img{border-radius:4px 46px 4px 4px}
.oto-visual-badge{border-radius:3px 22px 3px 3px}
.oto-info-card{border-radius:3px 24px 3px 3px;background:rgba(255,255,255,.075)}
.oto-cta-row{border-radius:3px 24px 3px 3px}
.oto-results-head h3{font-size:clamp(2.8rem,4vw,4.5rem)}
.oto-slide{border-radius:3px 24px 3px 3px}
.oto-slide-media{border-radius:3px 24px 3px 3px}

/* Áreas de atuação como mosaico editorial, não grade de cards idênticos */
.specialties{background:#f7f2ed}
.specialty-grid{grid-template-columns:repeat(12,1fr);gap:18px}
.specialty-card{min-height:360px;border-radius:3px 32px 3px 3px;border-color:rgba(72,51,42,.13);background:#e8ddd5}
.specialty-card:nth-child(1){grid-column:span 7;min-height:430px}
.specialty-card:nth-child(2){grid-column:span 5;min-height:430px}
.specialty-card:nth-child(3),
.specialty-card:nth-child(4),
.specialty-card:nth-child(5){grid-column:span 4}
.specialty-card:hover{transform:translateY(-3px)}
.specialty-card.with-photo::before{background:linear-gradient(90deg,rgba(247,242,237,.97),rgba(247,242,237,.72) 48%,rgba(247,242,237,.15))}
.specialty-card h3{font-size:clamp(2.3rem,3vw,3.45rem)}
.specialty-tags span{border-radius:999px;background:rgba(255,255,255,.35)}

.signature{background:#c6b4a7}
.signature-grid{min-height:940px}
.signature-media img{filter:saturate(.88) contrast(1.02)}
.signature-copy{padding:clamp(64px,8vw,120px)}
.signature-copy h2{max-width:650px;font-size:clamp(3.8rem,5vw,5.8rem)}
.signature-item{padding:23px 0;border-color:rgba(56,40,33,.14)}

.reviews{background:#d8cbc0}
.review-card{border-radius:3px 28px 3px 3px;border-color:rgba(60,44,36,.1);box-shadow:none}
.review-card blockquote{font-size:1.48rem;line-height:1.3}

[aria-label="Galeria profissional"]{background:#f7f2ed;overflow:hidden}
.gallery-grid{gap:16px;align-items:stretch}
.gallery-grid figure{overflow:hidden;border-radius:3px 34px 3px 3px;background:#ddd0c7}
.gallery-grid figure:nth-child(2){margin-top:90px}
.gallery-grid figure:nth-child(3){margin-top:180px}
.gallery-grid img{height:100%;min-height:600px;object-fit:cover;transition:transform .8s var(--gry-ease)}
.gallery-grid figure:hover img{transform:scale(1.018)}

#contato{background:var(--gry-paper-2)}
.contact-grid{gap:clamp(54px,8vw,104px);align-items:start}
.contact-copy h2{font-size:clamp(4rem,5.5vw,6.1rem);line-height:.9}
.contact-item{border-color:rgba(63,45,37,.12)}
.contact-icon{border-radius:3px 14px 3px 3px}
.map-card,.form-card{border-radius:3px 30px 3px 3px;border-color:rgba(63,45,37,.13);background:rgba(249,245,241,.74);box-shadow:0 24px 65px rgba(58,42,34,.07)}
.field input,.field select,.field textarea{border-radius:3px 16px 3px 3px}
.form-card .btn-primary{background:var(--gry-blue);color:#fff}
.site-footer{background:#e7ddd5;border-color:rgba(63,45,37,.1)}

/* CTA flutuante: sempre acessível, sem três loops simultâneos. */
.whatsapp-fab{
  right:16px!important;
  bottom:calc(16px + env(safe-area-inset-bottom,0px))!important;
  width:56px!important;
  height:56px!important;
}
.whatsapp-fab::before{animation:none!important;opacity:.52}
.whatsapp-orb{animation:none!important}
.whatsapp-orb::after{display:none!important}

/* Signature Moment #2 — UI editorial do estudo 3D */
.face-experience{height:480svh}
.face-stage{background:linear-gradient(120deg,#061321,#102744 58%,#08182a)}
.face-stage::before{background:linear-gradient(105deg,rgba(6,16,28,.97),rgba(6,16,28,.72) 31%,rgba(6,16,28,.04) 63%,rgba(6,16,28,.38))}
.face-copy .eyebrow{color:#e2bdb1}
.face-copy h2{font-size:clamp(3.75rem,5.15vw,6.2rem)}
.face-copy h2,.face-copy h3{line-height:.86}
.face-copy p{color:rgba(255,250,246,.78)}
.face-scene-index{
  position:absolute;
  left:max(40px,calc((100vw - 1200px)/2));
  bottom:31px;
  z-index:7;
  display:flex;
  align-items:center;
  gap:9px;
  color:rgba(255,250,246,.7);
  font-size:.61rem;
  font-weight:700;
  letter-spacing:.16em;
}
.face-scene-index i{display:block;width:30px;height:1px;background:rgba(255,255,255,.25)}
.face-scene-index b{font-weight:500;color:rgba(255,255,255,.35)}

/* Tablet */
@media (max-width:980px){
  .container{width:min(100% - 40px,760px)}
  .nav{height:68px}
  .hero{height:142svh;min-height:1050px}
  .hero-stage{min-height:620px}
  .hero-video-bg{clip-path:inset(0 round 0);transform:none}
  .hero-video-bg video{object-position:60% center;transform:scale(1.06)}
  .hero-video-bg::after{
    background:linear-gradient(180deg,rgba(6,17,30,.5) 0%,rgba(6,17,30,.34) 31%,rgba(6,17,30,.72) 68%,rgba(6,17,30,.92) 100%);
  }
  .hero-grid{padding:96px 20px 30px;grid-template-columns:1fr;align-items:start;gap:0;width:100%}
  .hero-copy{max-width:650px}
  .hero-copy .eyebrow,.hero-title-intro,.hero-lead,.hero-proof{color:#fffaf6}
  .hero-title-intro{margin-top:18px;font-size:clamp(4rem,10.5vw,6rem);text-shadow:0 12px 44px rgba(0,0,0,.26)}
  .hero-title-intro em{color:#efc6b9}
  .hero-lead{max-width:570px;color:rgba(255,250,246,.86)}
  .hero .btn-ghost{color:#fff;border-color:rgba(255,255,255,.42);background:rgba(6,19,33,.18)}
  .hero-proof strong{color:#fff}
  .hero-media{display:none}
  .hero-handoff{left:24px;bottom:80px;width:calc(100% - 48px);font-size:clamp(3.8rem,10vw,6rem)}
  .hero-scroll-cue{left:24px;color:rgba(255,255,255,.72)}
  .hero-scroll-cue{right:auto}
  .hero-scroll-cue i{background:linear-gradient(90deg,#efc6b9,transparent)}
  .about-grid{grid-template-columns:1fr;gap:70px}
  .about-photo{max-width:650px}
  .section-head{grid-template-columns:1fr;gap:30px}
  .service-card,.service-card:nth-child(even){grid-template-columns:1fr 1fr}
  .service-content{padding:72px 38px 44px}
  .service-num{left:calc(50% + 38px)}
  .service-card:nth-child(even) .service-num{left:38px}
  .specialty-card:nth-child(1),.specialty-card:nth-child(2){grid-column:span 6}
  .specialty-card:nth-child(3),.specialty-card:nth-child(4),.specialty-card:nth-child(5){grid-column:span 6}
  .specialty-card:nth-child(5){grid-column:4/span 6}
  .gallery-grid figure:nth-child(2),.gallery-grid figure:nth-child(3){margin-top:0}
  .gallery-grid img{min-height:520px}
  .face-scene-index{left:28px;bottom:calc(31% + 18px)}
}

/* Mobile */
@media (max-width:680px){
  html{scroll-padding-top:66px}
  .container{width:calc(100% - 28px)}
  .topbar{background:rgba(248,244,240,.95)}
  .nav{height:66px}
  .brand{gap:10px}
  .brand-logo{width:48px;min-width:48px}
  .brand-copy strong{font-size:1.05rem}
  .brand-copy .brand-subline{font-size:.58rem}
  .menu-toggle{color:var(--gry-ink);width:44px;height:44px;border-radius:12px}
  .menu{
    top:66px;
    left:10px;
    right:10px;
    padding:18px 22px 22px;
    border:1px solid rgba(63,45,37,.12);
    border-radius:3px 24px 3px 3px;
    background:rgba(248,244,240,.98);
    box-shadow:0 22px 55px rgba(42,30,25,.13);
  }
  .menu a{color:#5e544f;padding:10px 4px}
  .menu > a:not(.nav-cta)::after{display:none}
  .nav-cta{margin-top:5px;color:var(--gry-ink)}
  .hero{height:136svh;min-height:980px}
  .hero-stage{min-height:610px}
  /* Centraliza o estado inicial dentro dos 100svh do stage, preservando
     zonas estáveis para a navegação e para o indicador inferior. */
  .hero-grid{
    padding:max(76px,calc(66px + env(safe-area-inset-top,0px))) 14px max(84px,calc(72px + env(safe-area-inset-bottom,0px)));
    align-items:center;
  }
  .hero-copy .eyebrow{font-size:.6rem;line-height:1.45}
  .hero-title-intro{max-width:345px;margin-top:14px;font-size:clamp(3.25rem,14vw,4.25rem);line-height:.84}
  .hero-lead{max-width:345px;margin:20px 0 22px;font-size:.87rem;line-height:1.62}
  .hero-actions{display:grid;grid-template-columns:1fr;width:100%;gap:9px}
  .hero-actions .btn{width:100%;min-height:49px}
  .hero-proof{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;font-size:.7rem}
  .hero-proof div{gap:6px}
  .hero-proof strong{font-size:.83rem}
  .hero-handoff{left:20px;bottom:82px;width:calc(100% - 40px);font-size:clamp(3.2rem,14vw,4.25rem)}
  .hero-scroll-cue{left:20px;bottom:20px;font-size:.55rem}
  section{padding:92px 0}
  #sobre::before{font-size:14rem;right:-22px;top:82px}
  .about-grid{gap:58px}
  .about-photo img{border-radius:2px 48px 2px 2px}
  .about-photo::before{inset:12px -7px -7px 12px;border-radius:2px 48px 2px 2px}
  .about-photo::after{display:none}
  .about-copy h2,.section-head h2{font-size:clamp(3.15rem,13vw,4.3rem)}
  .about-copy .quote{font-size:1.65rem}
  .section-head{gap:22px;margin-bottom:48px}
  .service-grid{gap:24px}
  .service-card,.service-card:nth-child(even){display:flex;min-height:0;border-radius:3px 26px 3px 3px}
  .service-photo,.service-card:nth-child(even) .service-photo{order:1;min-height:0;aspect-ratio:1/1;grid-column:auto}
  .service-num,.service-card:nth-child(even) .service-num{position:static;order:2;margin:24px 24px 0}
  .service-content,.service-card:nth-child(even) .service-content{order:3;padding:7px 24px 28px}
  .service-card h3{font-size:2.55rem}
  .compare-handle{width:48px;height:48px}
  .oto-shell{margin-inline:-2px;padding:38px 18px;border-radius:3px 34px 3px 3px}
  .oto-copy h2{font-size:clamp(3.2rem,13.5vw,4.35rem)}
  .oto-visual,.oto-visual img{border-radius:3px 28px 3px 3px}
  .specialty-grid{grid-template-columns:1fr}
  .specialty-card:nth-child(n){grid-column:1;min-height:330px;border-radius:3px 25px 3px 3px}
  .signature-grid{min-height:auto}
  .signature-copy{padding:62px 20px}
  .signature-copy h2{font-size:3.45rem}
  .review-card{border-radius:3px 24px 3px 3px}
  .gallery-grid figure{border-radius:3px 26px 3px 3px}
  .gallery-grid img{min-height:0}
  .contact-copy h2{font-size:clamp(3.45rem,14vw,4.5rem)}
  .map-card,.form-card{border-radius:3px 24px 3px 3px}
  .whatsapp-fab{right:12px!important;bottom:calc(12px + env(safe-area-inset-bottom,0px))!important;width:54px!important;height:54px!important}
  .face-experience{height:470svh}
  .face-scene-index{left:20px;bottom:calc(34% + 13px);font-size:.55rem}
  .face-scroll-cue{left:auto;right:18px}
  .face-copy h2,.face-copy h3{font-size:clamp(2.65rem,11.8vw,3.45rem)}
  .face-copy p{font-size:.79rem;line-height:1.5}
}

@media (max-width:390px){
  .hero-title-intro{font-size:clamp(3rem,13.5vw,3.75rem)}
  .hero-lead{font-size:.83rem}
  .hero-proof{margin-top:16px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero{height:auto;min-height:100svh}
  .hero-stage{position:relative;min-height:100svh}
  .hero-video-bg{clip-path:inset(0);transform:none!important}
  .hero-video-bg video{transform:none!important}
  .hero-copy{opacity:1!important;visibility:visible!important;transform:none!important}
  .hero-handoff,.hero-scroll-cue{display:none}
  .service-card,.specialty-card,.gallery-grid img{transition:none}
  .oto-marquee-track{transform:none!important}
}
