/* Débora Boutin, nutricionista em Alphaville e Bethaville (recolorida de café e caramelo por recolore.py, a partir da Natasha Navarro). Modelo CAT N'CLAW (mesma base da Harmonize, da Sorriclin, da Apausa, da Dayla, da Aisthesis, da Kyrokura, da Olyra e do Davi Reis).
   As camadas de baixo vêm dos sites anteriores; os blocos "Davi Reis" (recolorido) e "André Soratto" no fim do arquivo são o que muda para ela.
   O fundo de fibras atravessa a página inteira e é o mesmo ambiente do começo ao fim.
   Regra da casa: só transform e opacity animam, e nada mede elemento durante o movimento do mouse. */
@font-face{font-family:'Jost';font-style:normal;font-weight:400 600;font-display:swap;src:url(assets/fonts/jost-latin.woff2) format('woff2')}
@font-face{font-family:'Karla';font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/karla-latin.woff2) format('woff2')}

:root{
  --tinta:#1e140f;
  --tinta-2:#201610;
  --superficie:#261a14;
  --superficie-2:#2c1e17;
  --roxo:#c69053;
  --roxo-claro:#f2eee8;
  --roxo-fundo:#2c1e17;
  --teal:#ddbd98;
  --teal-2:#d2a878;
  --areia:#faf6f2;
  --texto:#f7f1eb;
  --texto-2:#aa9e97;
  --linha:rgba(250,246,242,.12);
  --linha-2:rgba(250,246,242,.22);
  --papel:#f9f4f0;
  --papel-texto:#291b13;
  --marrom:#2c1d15;
  --verde-post:#c79256;
  --f-titulo:Fraunces,Georgia,serif;
  --f-texto:Karla,"Segoe UI",system-ui,sans-serif;
  --f-mono:Jost,"Century Gothic",system-ui,sans-serif;
  --tshadow:0 1px 2px rgba(19,13,10,.95),0 3px 12px rgba(19,13,10,.7),0 10px 44px rgba(19,13,10,.6);
  --r:14px;
  --r-g:22px;
  --gutter:clamp(18px,4vw,40px);
  --largura:1200px;
  --ease:cubic-bezier(.22,1,.36,1);
  --ease-io:cubic-bezier(.65,0,.35,1);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden;overflow-x:clip}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;background:var(--tinta);color:var(--texto);
  font:400 16.5px/1.65 var(--f-texto);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;overflow-x:clip;
}
img{max-width:100%;display:block}
h1,h2,h3{font-family:var(--f-titulo);font-weight:600;color:var(--areia);letter-spacing:-.02em;line-height:1.08;margin:0;text-wrap:balance}
h1{font-size:clamp(38px,5.6vw,68px);letter-spacing:-.035em}
h2{font-size:clamp(28px,3.6vw,46px);position:relative}
h3{font-size:19px;font-family:var(--f-texto);font-weight:700;letter-spacing:-.01em}
p{margin:0}
a{color:inherit}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:4px}
.so-leitor{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- o ambiente: uma camada de luz fixa atrás da página inteira ---------- */
.ambiente{position:fixed;inset:0;z-index:0;width:100%;height:100%;display:block;opacity:0;transition:opacity 1.6s ease;pointer-events:none}
.ambiente.is-pronto{opacity:1}
.veu{position:fixed;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(130% 80% at 50% 0,rgba(29,20,15,0) 42%,rgba(29,20,15,.5) 100%)}
.topo,main,.rodape,.zap-flutua,.pular{position:relative;z-index:1}

.container{width:min(var(--largura),100% - var(--gutter)*2);margin-inline:auto;position:relative;z-index:1}
.estreito{max-width:820px}
/* as seções escuras deixam a luz passar por baixo, em dose calma */
.secao{padding-block:clamp(70px,9vw,124px);position:relative;isolation:isolate;background:rgba(29,20,15,.62)}
.secao-papel{color:var(--papel-texto);
  background:
    radial-gradient(120% 90% at 50% -10%,rgba(254,252,251,.85),rgba(254,252,251,0) 62%),
    radial-gradient(80% 70% at 100% 100%,rgba(47,31,22,.05),rgba(47,31,22,0) 60%),
    var(--papel)}
.secao-papel::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    radial-gradient(125% 105% at 50% 38%,rgba(249,244,240,0) 26%,rgba(249,244,240,.6) 68%,var(--papel) 100%),
    radial-gradient(rgba(47,31,22,.19) 1.15px,transparent 1.25px),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E");
  background-size:auto,24px 24px,120px 120px}
/* o foco que acompanha o mouse: bolha de tamanho fixo movida por translate, nunca repinta a seção */
.secao-papel::after{content:"";position:absolute;left:0;top:0;width:760px;height:760px;margin:-380px 0 0 -380px;
  border-radius:50%;pointer-events:none;opacity:0;transition:opacity .5s ease;will-change:translate;
  translate:var(--fx,50%) var(--fy,50%);
  background:radial-gradient(closest-side,rgba(254,252,251,.66),rgba(205,158,105,.07) 52%,transparent)}
.secao-papel.is-perto::after{opacity:1}
.secao-papel h2,.secao-papel h3{color:#2c1e17}
.secao-duvidas{background:rgba(33,22,16,.78)}
.olho{font:500 12px/1 var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--teal);margin-bottom:16px}
.secao-papel .olho{color:var(--roxo)}
.lede{font-size:clamp(16.5px,1.5vw,19px);line-height:1.7;color:var(--texto-2);max-width:60ch}
.secao-papel .lede,.secao-papel>.container>p{color:#3e2a1f}
.mini{font-size:14px;color:var(--texto-2);margin-top:16px}
.secao-papel .mini{color:#4e3526}
.cabeca{max-width:760px;margin-bottom:clamp(36px,5vw,60px)}
.cabeca .lede{margin-top:18px}
.confirmar{display:inline-block;padding:1px 8px;border-radius:999px;background:rgba(220,187,149,.14);border:1px dashed rgba(220,187,149,.5);color:#e8d3ba;font:600 12.5px/1.5 var(--f-texto)}
.secao-papel .cartao-endereco .confirmar,.secao-papel .dupla-texto .confirmar{background:rgba(205,158,105,.08);border-color:rgba(205,158,105,.4);color:#c79256}

.pular{position:absolute;left:-9999px;top:0;z-index:60;background:var(--teal);color:#1e140f;padding:10px 16px;border-radius:0 0 10px 0;font-weight:700}
.pular:focus{left:0}


/* ---------- botões ---------- */
.btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:48px;padding:0 22px;border-radius:999px;border:1px solid transparent;
  font:700 14.5px/1 var(--f-texto);letter-spacing:.01em;text-decoration:none;cursor:pointer;
  transition:transform .3s var(--ease),background-color .25s,border-color .25s,color .25s;
}
.btn .i{width:18px;height:18px;fill:currentColor;flex:none}
.btn-g{min-height:56px;padding:0 28px;font-size:15.5px}
.btn-zap{background:var(--teal);color:#1e140f;box-shadow:0 14px 30px -18px rgba(220,187,149,.9)}
.btn-zap:hover{background:#e3c8aa;transform:translateY(-2px)}
.btn-linha{border-color:var(--linha-2);color:var(--areia)}
.btn-linha:hover{border-color:var(--teal);color:#f8f2ed;transform:translateY(-2px)}
.secao-papel .btn-linha{border-color:rgba(47,31,22,.3);color:#291b13}
.secao-papel .btn-linha:hover{border-color:var(--roxo);color:var(--roxo)}

.btn-grande{
  position:relative;display:inline-flex;align-items:center;gap:16px;margin-top:34px;
  padding:16px 24px 16px 20px;border-radius:20px;overflow:hidden;text-decoration:none;color:#fefcfb;
  background:linear-gradient(118deg,#36241a 0%,#c89459 42%,#d4ac7e 100%);
  box-shadow:0 22px 44px -22px rgba(205,158,105,.9);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease);
}
.btn-grande:hover{transform:translateY(-3px);box-shadow:0 32px 56px -24px rgba(205,158,105,.95)}
.btn-grande .i{width:30px;height:30px;fill:#fefcfb;flex:none;opacity:.95}
.btn-grande-texto{display:grid;gap:3px;text-align:left}
.btn-grande b{font-size:17.5px;font-weight:700;letter-spacing:-.01em;color:#fefcfb}
.btn-grande em{font-style:normal;font-size:13px;color:rgba(254,252,251,.84)}
.btn-grande .seta{width:20px;height:20px;stroke:#fefcfb;fill:none;flex:none;transition:transform .35s var(--ease)}
.btn-grande:hover .seta{transform:translateX(5px)}
.btn-grande-luz{
  position:absolute;left:0;top:0;width:45%;height:100%;pointer-events:none;
  background:linear-gradient(104deg,transparent,rgba(254,252,251,.3),transparent);
  transform:translateX(-140%);will-change:transform;
}
.btn-grande.is-vivo .btn-grande-luz{animation:varre 5s var(--ease-io) 1s infinite}
@keyframes varre{0%{transform:translateX(-140%)}42%,100%{transform:translateX(320%)}}

/* ---------- topo ---------- */
.topo{position:sticky;top:0;z-index:40;background:rgba(29,20,15,.86);border-bottom:1px solid transparent;transition:border-color .3s,background-color .3s}
.topo.is-rolando{border-bottom-color:var(--linha);background:rgba(29,20,15,.97)}
.faixa-topo{display:flex;align-items:center;gap:clamp(14px,3vw,34px);min-height:76px}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
.marca img{width:176px;height:32px;object-fit:contain}
.marca span{font:500 11px/1 var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--teal);padding-left:10px;border-left:1px solid var(--linha-2)}
.menu{display:flex;gap:clamp(12px,2vw,26px);margin-left:auto;font-size:14.5px;font-weight:600}
.menu a{display:inline-flex;align-items:center;text-decoration:none;color:var(--texto);padding:6px 2px;position:relative}
.menu a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.menu a:hover{color:var(--areia)}
.menu a:hover::after{transform:scaleX(1)}
.topo-zap{min-height:42px;padding:0 18px;font-size:13.5px}
.abrir{display:none;width:44px;height:44px;border:1px solid var(--linha-2);border-radius:12px;background:none;padding:12px 11px;cursor:pointer;flex-direction:column;justify-content:space-between}
.abrir span{display:block;height:2px;background:var(--areia);border-radius:2px;transition:transform .3s var(--ease),opacity .2s}
.menu-aberto .abrir span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-aberto .abrir span:nth-child(2){opacity:0}
.menu-aberto .abrir span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- topo da página ---------- */
.hero{position:relative;isolation:isolate;padding-block:clamp(48px,7vw,86px) clamp(64px,9vw,120px)}
.hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(100deg,rgba(25,17,13,.86) 0 38%,rgba(25,17,13,.5) 60%,rgba(25,17,13,.12) 80%,transparent)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(30px,5vw,70px);align-items:center}
.hero-texto{text-shadow:0 2px 24px rgba(25,17,12,.5)}
.selo{display:inline-flex;align-items:center;gap:9px;padding:7px 15px 7px 11px;border-radius:999px;border:1px solid rgba(220,187,149,.35);background:rgba(37,25,18,.55);color:#ecd9c4;font:600 13px/1 var(--f-texto);margin-bottom:22px}
.ponto{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 0 rgba(220,187,149,.6);animation:pulso 2.6s ease-out infinite}
@keyframes pulso{0%{box-shadow:0 0 0 0 rgba(220,187,149,.55)}70%,100%{box-shadow:0 0 0 12px rgba(220,187,149,0)}}
.marcado{font-style:normal;position:relative;display:inline-block;color:transparent;background:linear-gradient(105deg,var(--roxo-claro) 0 42%,#fefcfb 50%,var(--roxo-claro) 58% 100%);background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text}
.hero.is-dentro .marcado{animation:brilho 6.5s var(--ease-io) 1.6s infinite}
@keyframes brilho{0%{background-position:100% 0}34%,100%{background-position:0 0}}
.hero .lede{margin-top:22px;color:#b9a091}
.hero .lede strong{color:var(--areia);font-weight:600}
.acoes{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.rail{display:grid;grid-template-columns:repeat(4,auto);gap:clamp(14px,3vw,34px);justify-content:start;list-style:none;margin:40px 0 0;padding:26px 0 0;border-top:1px solid var(--linha)}
.rail strong{display:block;font-family:var(--f-titulo);font-weight:600;font-size:clamp(22px,2.4vw,30px);color:var(--areia);line-height:1}
.rail span{display:block;margin-top:6px;font-size:12.5px;color:var(--texto-2);max-width:16ch}

.cena{perspective:880px}
.hero-foto{position:relative;margin:0;border-radius:var(--r-g);transform-style:preserve-3d;
  box-shadow:0 44px 84px -44px rgba(17,12,9,.95);
  transition:transform .55s var(--ease);will-change:transform}
.hero-foto.is-pegando{transition:transform .12s linear}
.foto-quadro{display:block;position:relative;border-radius:var(--r-g);overflow:hidden;background:var(--superficie);box-shadow:0 0 0 1px var(--linha)}
.hero-foto img{width:100%;height:auto}
.foto-brilho{position:absolute;left:0;top:0;width:560px;height:560px;margin:-280px 0 0 -280px;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side,rgba(254,252,251,.26),rgba(254,252,251,.07) 55%,transparent);
  opacity:0;translate:var(--gx,50%) var(--gy,50%);transition:opacity .45s ease;will-change:translate}
.hero-foto.is-pegando .foto-brilho{opacity:1}
.hero-foto figcaption{position:absolute;left:14px;bottom:14px;padding:8px 14px;border-radius:999px;background:rgba(25,17,12,.86);font-size:12.5px;color:var(--areia);
  transform:translateZ(58px);box-shadow:0 10px 24px -14px rgba(17,12,9,.9)}

/* ---------- tarja ---------- */
.tarja{position:relative;background:rgba(38,26,20,.9);border-block:1px solid var(--linha)}
.tarja-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,40px);padding-block:26px}
.tarja p{display:flex;flex-direction:column;gap:3px;font-size:14px;color:var(--texto-2)}
.tarja b{font-size:16.5px;color:var(--areia);font-weight:700}

/* ---------- cartões que viram ---------- */
.giros{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.giro{position:relative;height:clamp(300px,26vw,344px);perspective:1500px}
.giro-eixo{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateY(0deg);transition:transform .85s var(--ease-io)}
.giros:not(.is-fora) .giro-eixo,.giros:not(.is-fora) .verso{will-change:transform}
.giro:is(.is-morno,.is-girando,.is-virado,.is-espia) .nevoa i{will-change:transform}
.giro.is-virado .giro-eixo{transform:rotateY(180deg)}
@keyframes giro-espia{0%,100%{transform:none}38%{transform:rotateY(-26deg)}72%{transform:rotateY(7deg)}}
.giro.is-espia .giro-eixo{animation:giro-espia 1.15s var(--ease-io)}
.face{position:absolute;inset:0;overflow:hidden;border-radius:var(--r-g);border:1px solid transparent;
  background-origin:border-box;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.frente{background:linear-gradient(#211610,#211610) padding-box,
  linear-gradient(150deg,rgba(233,212,189,.62),rgba(220,187,149,.34) 58%,rgba(233,212,189,.2)) border-box}
.frente img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sombra{position:absolute;inset:0;background:linear-gradient(180deg,rgba(25,17,13,.24) 0,rgba(25,17,13,.52) 44%,rgba(25,17,13,.94) 100%)}
.n{position:absolute;left:20px;top:18px;padding:7px 11px;border-radius:999px;
  font:500 12px/1 var(--f-mono);letter-spacing:.14em;color:#fefcfb;
  background:rgba(25,17,12,.55);border:1px solid rgba(254,252,251,.2)}
.frente-texto{position:absolute;left:24px;right:24px;bottom:24px;text-shadow:var(--tshadow)}
.frente-texto h3{color:#fefcfb;margin-bottom:8px}
.frente-texto p{font-size:15px;line-height:1.55;color:#f7f1eb}
.giro-dica{position:absolute;right:18px;top:18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-width:42px;height:42px;padding:0 13px;border-radius:999px;font-style:normal;
  border:1px solid rgba(254,252,251,.26);background:rgba(25,17,12,.5);color:#fefcfb;
  font:700 12px/1 var(--f-texto)}
.giro-dica svg{width:17px;height:17px;transition:transform .7s var(--ease)}
.giro-dica b{font-weight:700;letter-spacing:.02em}
.giro:hover .giro-dica svg{transform:rotate(180deg)}
.giro-dica-verso{border-color:rgba(220,187,149,.42);background:rgba(37,25,18,.5);color:#ecd9c4}
.verso{transform:rotateY(180deg);
  background:linear-gradient(#1e140f,#1e140f) padding-box,
  linear-gradient(150deg,rgba(220,187,149,.5),rgba(233,212,189,.4) 60%,rgba(220,187,149,.18)) border-box}
.verso::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(27,19,14,0) 16%,rgba(27,19,14,.82) 72%)}
.verso-texto{position:absolute;left:26px;right:26px;bottom:26px;z-index:1}
.verso-texto h3{color:var(--areia);margin-bottom:9px}
.verso-texto p{font-size:15px;line-height:1.62;color:#ece7df}
.verso-texto small{display:block;margin-top:14px;font:500 11.5px/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:#e8d3ba}
.verso .confirmar{margin-top:6px}
/* névoa fosca passando atrás do verso */
.nevoa{position:absolute;inset:-32%;z-index:0;overflow:hidden;pointer-events:none}
.nevoa i{position:absolute;width:70%;height:70%;border-radius:50%;background:radial-gradient(circle closest-side,var(--b) 52%,transparent);opacity:.8}
.nevoa i:nth-child(1){--b:#c79256;top:0;left:-8%;animation:nuvem-v 9s ease-in-out infinite}
.nevoa i:nth-child(2){--b:#e9d4bd;top:12%;right:-14%;opacity:.5;transform-origin:10% 80%;animation:nuvem-c 11s linear infinite reverse}
.nevoa i:nth-child(3){--b:#d3aa7b;bottom:-12%;left:4%;opacity:.55;transform-origin:85% 15%;animation:nuvem-c 14s linear infinite}
.nevoa i:nth-child(4){--b:#c79256;right:0;bottom:-6%;opacity:.6;animation:nuvem-h 10s ease-in-out infinite}
.nevoa i:nth-child(5){--b:#dcbb95;top:28%;left:26%;width:56%;height:56%;opacity:.38;transform-origin:-10% 50%;animation:nuvem-c 8s linear infinite}
@keyframes nuvem-v{0%,100%{transform:translate3d(0,-6%,0)}50%{transform:translate3d(4%,10%,0)}}
@keyframes nuvem-h{0%,100%{transform:translate3d(-8%,0,0)}50%{transform:translate3d(10%,-4%,0)}}
@keyframes nuvem-c{to{transform:rotate(360deg)}}
.giro:not(.is-virado,.is-girando,.is-morno) .nevoa i,.giros.is-fora .nevoa i{animation-play-state:paused}
/* a área de clique fica vazia: o anel nunca repinta o conteúdo do cartão */
.giro-hit{position:absolute;inset:0;z-index:2;border:0;border-radius:var(--r-g);background:none;padding:0;cursor:pointer}
.giro-hit::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  box-shadow:0 0 0 1px rgba(220,187,149,.5),0 26px 54px -34px rgba(17,12,9,.95);
  opacity:0;transition:opacity .35s var(--ease)}
.giro:hover .giro-hit::after,.giro.is-virado .giro-hit::after{opacity:1}
/* enquanto o cartão está girando o anel sai de cena, senão ele fica parado em volta de uma coisa que gira */
.giro.is-girando .giro-hit::after,.giro.is-espia .giro-hit::after{opacity:0;transition-duration:.12s}
.giro-hit:focus-visible{outline-offset:3px}

/* ---------- tratamentos presos à rolagem ---------- */
.trilha{position:relative;background:rgba(29,20,15,.4)}
.trilha-rolagem{position:relative;height:470vh}
.trilha-palco{position:sticky;top:0;min-height:100svh;display:flex;align-items:center;padding-block:clamp(36px,5vh,80px)}
.trilha-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(34px,6vw,80px);align-items:center;width:min(var(--largura),100% - var(--gutter)*2);margin-inline:auto}
.trilha-texto h2{margin-bottom:10px;max-width:14ch}
.trilha-lista{list-style:none;margin:clamp(22px,3vw,34px) 0 0;padding:0;display:grid;gap:clamp(6px,1vw,12px)}
.trilha-lista button{
  display:flex;align-items:baseline;gap:18px;width:100%;text-align:left;cursor:pointer;
  padding:clamp(11px,1.4vw,16px) 0 clamp(11px,1.4vw,16px) 26px;
  border:0;border-left:2px solid var(--linha);background:none;color:inherit;font:inherit;
  opacity:.3;transition:opacity .45s var(--ease),border-color .45s var(--ease),padding-left .45s var(--ease)}
.trilha-lista i{font:500 12px/1 var(--f-mono);letter-spacing:.12em;color:var(--teal);flex:none}
.trilha-lista b{font-family:var(--f-titulo);font-size:clamp(19px,2vw,26px);font-weight:600;color:var(--areia);letter-spacing:-.02em}
.trilha-lista button:hover{opacity:.62}
.trilha-lista li.is-ativa button{opacity:1;border-color:var(--teal);padding-left:32px}
.trilha-foto{display:grid;gap:20px}
.trilha-pilha{position:relative;aspect-ratio:3/2;border-radius:var(--r-g);overflow:hidden;background:var(--superficie);box-shadow:0 40px 80px -46px rgba(17,12,9,.95),0 0 0 1px var(--linha)}
.quadro{position:absolute;inset:0;margin:0;opacity:0;transform:scale(1.05);transition:opacity .7s var(--ease),transform 1.1s var(--ease);will-change:opacity,transform}
.quadro img{width:100%;height:100%;object-fit:cover}
.quadro.is-ativa{opacity:1;transform:none}
.quadro-conta{position:absolute;right:14px;top:14px;padding:7px 13px;border-radius:999px;background:rgba(25,17,12,.78);
  font:500 12px/1 var(--f-mono);letter-spacing:.1em;color:var(--texto-2)}
.quadro-conta b{color:var(--areia);font-weight:500}
.trilha-legenda{position:relative;min-height:84px}
.trilha-legenda p{position:absolute;inset:0;font-size:15.5px;line-height:1.6;color:var(--texto-2);opacity:0;transition:opacity .45s var(--ease)}
.trilha-legenda p.is-ativa{opacity:1}
.trilha-pontos{display:flex;gap:7px}
.trilha-pontos i{display:block;height:3px;flex:1;border-radius:2px;background:var(--linha);transition:background-color .4s}
.trilha-pontos i.is-ativa{background:var(--teal)}
.trilha-btn{justify-self:start}

/* ---------- a dentista ---------- */
.dentista-caixa{position:relative;display:flex;align-items:center;padding-block:clamp(10px,2vw,30px)}
@media (hover:hover) and (pointer:fine) and (min-width:1001px){
  #equipe .container{perspective:1600px}
  .dentista-caixa{transform-style:preserve-3d;transition:transform .6s var(--ease);will-change:transform}
  .dentista-caixa.is-pegando{transition:transform .14s linear}
  #equipe .retrato{transform:translateZ(58px)}
}
.retrato{position:absolute;left:0;top:0;bottom:0;margin-block:auto;height:-moz-fit-content;height:fit-content;
  z-index:2;width:min(30%,300px);border-radius:24px;overflow:hidden;background:#fefcfb;
  box-shadow:0 40px 70px -40px rgba(47,31,22,.75)}
.retrato img{width:100%;height:auto}
.retrato figcaption{position:absolute;left:0;right:0;bottom:0;padding:38px 18px 16px;
  background:linear-gradient(0deg,rgba(29,20,15,.93),transparent);color:#fefcfb;display:grid;gap:3px}
.retrato figcaption b{font-size:16px}
.retrato figcaption span{font:500 11px/1.4 var(--f-mono);letter-spacing:.08em;color:#f6efe8}
.painel{position:relative;flex:1;overflow:hidden;border-radius:28px;background:#1c130e;
  padding:clamp(34px,4.4vw,58px) clamp(26px,4vw,56px) clamp(34px,4.4vw,58px) clamp(26px,33%,392px);
  box-shadow:0 50px 90px -50px rgba(38,25,18,.85)}
.painel-fundo{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity 1.4s ease}
.painel-fundo.is-pronto{opacity:1}
.painel::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(100deg,rgba(27,19,14,.93) 20%,rgba(27,19,14,.66) 60%,rgba(27,19,14,.36))}
.painel-texto{position:relative;z-index:2;max-width:56ch}
.painel-texto .olho{color:#e8d3ba}
.painel-texto h2{color:var(--areia);margin-bottom:18px}
.painel-texto>p{color:#b9a091}
.lista{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:14px}
.lista li{position:relative;padding-left:30px;font-size:15.5px;line-height:1.6;color:#b9a091}
.lista li::before{content:"";position:absolute;left:0;top:9px;width:14px;height:14px;border-radius:50%;border:2px solid var(--teal);background:rgba(220,187,149,.18)}
.lista b{color:var(--areia)}

/* ---------- vídeos e galeria ---------- */
.videos{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;list-style:none;margin:0;padding:0}
.videos a{position:relative;display:block;border-radius:var(--r-g);overflow:hidden;text-decoration:none;background:#110c09;border:1px solid var(--linha)}
.videos img{width:100%;height:auto;opacity:.82;transition:opacity .35s,transform .6s var(--ease)}
.videos a:hover img{opacity:1;transform:scale(1.04)}
.play{position:absolute;left:50%;top:50%;width:62px;height:62px;margin:-31px 0 0 -31px;border-radius:50%;background:rgba(220,187,149,.92);transition:transform .35s var(--ease)}
.play::after{content:"";position:absolute;left:24px;top:19px;border-style:solid;border-width:12px 0 12px 18px;border-color:transparent transparent transparent #1e140f}
.videos a:hover .play{transform:scale(1.08)}
.rot{position:absolute;left:14px;bottom:12px;font-size:12.5px;color:#fefcfb;background:rgba(25,17,12,.7);padding:5px 11px;border-radius:999px}
.galeria{margin-top:clamp(44px,6vw,72px)}
.molduras{display:grid;grid-template-columns:1.25fr .875fr .875fr;gap:16px}
.foto-clinica{position:relative;margin:0;aspect-ratio:3/2;border-radius:var(--r-g);overflow:hidden;background:var(--superficie);border:1px solid var(--linha)}
.foto-clinica img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.foto-clinica:hover img{transform:scale(1.045)}
.foto-clinica figcaption{position:absolute;left:12px;bottom:12px;padding:6px 12px;border-radius:999px;background:rgba(25,17,12,.78);font-size:12.5px;color:var(--areia)}

/* ---------- dúvidas ---------- */
.faq{display:grid;gap:10px}
.faq details{border:1px solid var(--linha);border-radius:var(--r);background:rgba(38,26,20,.82);overflow:hidden}
.faq summary{list-style:none;cursor:pointer;padding:20px 54px 20px 22px;font-weight:700;color:var(--areia);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:22px;top:50%;width:11px;height:11px;margin-top:-7px;border-right:2px solid var(--teal);border-bottom:2px solid var(--teal);transform:rotate(45deg);transition:transform .3s var(--ease)}
.faq details[open] summary::after{transform:rotate(-135deg);margin-top:-3px}
.faq p{padding:0 22px 22px;font-size:15.5px;color:var(--texto-2);max-width:70ch}

/* ---------- formulário ---------- */
.dupla{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(30px,5vw,72px);align-items:center}
.dupla-texto h2{margin-bottom:18px}
.forma{display:grid;gap:16px;padding:clamp(24px,3vw,34px);border-radius:var(--r-g);background:#fefcfb;border:1px solid rgba(47,31,22,.14);box-shadow:0 30px 60px -44px rgba(47,31,22,.5)}
.campo{display:grid;gap:7px}
.campo label{font-size:13.5px;font-weight:700;color:#3e2a1f}
.campo input,.campo select{width:100%;min-height:50px;padding:12px 14px;border:1px solid rgba(47,31,22,.32);border-radius:var(--r);background:#fdfaf8;color:#2c1e17;font:inherit;font-size:16px}
.campo input:focus,.campo select:focus{outline:none;border-color:var(--roxo);box-shadow:0 0 0 4px rgba(205,158,105,.12)}
.forma .btn{width:100%}
.forma-nota{font-size:13px;color:#4e3526;text-align:center}
.erro{margin:0;font-size:14px;color:#cd9f69;font-weight:600}
.contatos{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:20px;font-weight:700}
.contatos a{text-decoration:none;color:var(--roxo);border-bottom:1px solid rgba(205,158,105,.35)}

/* ---------- a visita: mapa de ponta a ponta com o cartão por cima ---------- */
.visita{position:relative;padding-bottom:clamp(60px,8vw,110px);background:rgba(29,20,15,.62)}
.visita .mapa{height:clamp(320px,42vw,480px);border-bottom:1px solid var(--linha);background:var(--superficie)}
.visita .mapa iframe{display:block;width:100%;height:100%;border:0;filter:grayscale(.35) contrast(1.05) brightness(.92)}
.cartao-endereco{position:relative;margin-top:clamp(-150px,-12vw,-90px);max-width:520px;
  padding:clamp(26px,3vw,38px);border-radius:26px;background:rgba(35,24,17,.96);border:1px solid var(--linha-2);
  box-shadow:0 40px 80px -46px rgba(17,12,9,.95)}
.endereco{margin-top:12px;font-size:19px;font-weight:600;color:var(--areia);line-height:1.5}
.cartao-endereco .acoes{margin-top:26px}

/* ---------- rodapé ---------- */
.rodape{background:rgba(33,22,16,.93);border-top:1px solid var(--linha);padding-block:48px 28px}
.rodape-inner{display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;align-items:flex-start}
.rodape-logo{width:200px;height:37px;object-fit:contain;margin-bottom:14px}
.rodape p{font-size:14px;color:var(--texto-2);line-height:1.7}
.rodape nav{display:grid;gap:10px;font-size:14.5px}
.rodape nav a{text-decoration:none;color:var(--texto)}
.rodape nav a:hover{color:var(--teal)}
.creditos{margin-top:34px;padding-top:18px;border-top:1px solid var(--linha);font-size:12.5px;color:var(--texto-2)}

/* ---------- WhatsApp flutuante ---------- */
.zap-flutua{position:fixed;right:20px;bottom:20px;bottom:max(20px,env(safe-area-inset-bottom));z-index:45;
  display:inline-flex;align-items:center;gap:10px;padding:14px 20px 14px 16px;border-radius:999px;
  background:var(--teal);color:#1e140f;text-decoration:none;font-weight:700;font-size:14.5px;
  box-shadow:0 18px 40px -18px rgba(220,187,149,.9);transition:transform .3s var(--ease),background-color .25s}
.zap-flutua svg{width:24px;height:24px;fill:currentColor}
.zap-flutua:hover{transform:translateY(-3px);background:#e3c8aa}

/* ---------- entradas ---------- */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.is-dentro{opacity:1;transform:none}
.videos .reveal:nth-child(2),.molduras>.reveal:nth-child(2){transition-delay:.09s}
.videos .reveal:nth-child(3),.molduras>.reveal:nth-child(3){transition-delay:.18s}
.videos .reveal.is-pronta,.molduras>.reveal.is-pronta{transition-delay:0s}

/* aba escondida: nada anima */
body.is-parado *,body.is-parado *::before,body.is-parado *::after{animation-play-state:paused!important}

/* ---------- telas menores ---------- */
@media (pointer:coarse){
  .btn{min-height:44px}
  .menu a{min-height:44px}
}
@media (max-width:1000px){
  .hero-grid,.dupla,.trilha-grid{grid-template-columns:1fr}
  .cena{order:-1}
  .giros,.videos,.molduras,.tarja-inner{grid-template-columns:repeat(2,1fr)}
  .trilha-rolagem{height:430vh}
  .trilha-texto h2{font-size:clamp(26px,4.4vw,34px);max-width:none}
  .trilha-btn{display:none}
  .dentista-caixa{display:block}
  .retrato{position:relative;inset:auto;margin:0 0 -70px 22px;width:min(280px,62%);height:auto}
  .painel{padding:clamp(80px,10vw,100px) clamp(24px,5vw,44px) clamp(30px,5vw,48px)}
  .cartao-endereco{max-width:none;margin-top:clamp(-90px,-10vw,-60px)}
}
@media (min-width:1001px) and (max-height:760px){
  .trilha-texto h2{font-size:clamp(24px,2.6vw,33px)}
  .trilha-lista{margin-top:16px}
  .trilha-lista button{padding-block:8px}
  .trilha-lista b{font-size:clamp(18px,1.7vw,21px)}
  .trilha-btn{display:none}
  .trilha-legenda{min-height:72px}
}
@media (max-width:760px){
  .menu{position:fixed;inset:76px 0 auto;flex-direction:column;gap:0;padding:10px var(--gutter) 24px;background:rgba(29,20,15,.99);border-bottom:1px solid var(--linha);transform:translateY(-12px);opacity:0;pointer-events:none;transition:opacity .25s,transform .3s var(--ease)}
  .menu a{padding:14px 0;border-bottom:1px solid var(--linha);font-size:16px}
  .menu-aberto .menu{opacity:1;transform:none;pointer-events:auto}
  .abrir{display:flex;margin-left:auto}
  .topo-zap{display:none}
  .giros,.videos,.molduras,.tarja-inner{grid-template-columns:1fr}
  .giro{height:clamp(280px,74vw,320px)}
  .rail{grid-template-columns:repeat(2,1fr);gap:20px}
  .rail span{max-width:none}
  .zap-flutua span{display:none}
  .zap-flutua{padding:15px;border-radius:50%}
  .trilha-palco{padding-block:26px}
  .trilha-lista li{display:none}
  .trilha-lista li.is-ativa{display:block}
  .trilha-lista button{padding-left:16px;opacity:1}
  .trilha-lista li.is-ativa button{padding-left:20px}
  .trilha-legenda{min-height:112px}
  .btn-grande{width:100%}
  .retrato{width:min(220px,58%);margin-left:0}
}
@media (max-height:560px){.zap-flutua span{display:none}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .reveal{opacity:1;transform:none}
  .quadro{opacity:0;transform:none}
  .quadro.is-ativa{opacity:1}
  .giro.is-virado .giro-eixo{transform:rotateY(180deg)}
}

/* ---------- o que veio da Sorriclin (espaços de foto, galeria em pé, esteira) ---------- */
/* espaço reservado de foto: fica bonito sozinho e diz exatamente qual foto falta */
.espera{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;text-align:center;
  background:radial-gradient(120% 90% at 30% 20%,rgba(205,158,105,.28),transparent 60%),repeating-linear-gradient(135deg,rgba(251,248,246,.035) 0 12px,transparent 12px 24px),var(--superficie);
  color:var(--texto-2)}
.espera::after{content:"";position:absolute;inset:12px;border:1.5px dashed rgba(220,187,149,.4);border-radius:calc(var(--r-g) - 8px);pointer-events:none}
.espera svg{width:34px;height:34px;color:var(--teal);margin-bottom:4px}
.espera b{font:600 15px/1.3 var(--f-texto);color:var(--areia)}
.espera small{font:500 11px/1.4 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:#e8d3ba}
.espera-cartao{justify-content:flex-start;padding-top:44px}
.espera-retrato{position:relative;inset:auto;aspect-ratio:1;border-radius:inherit}
.retrato .espera-retrato{padding-bottom:70px}
/* a foto do topo é a da equipe, deitada */
.hero-foto .foto-quadro img{aspect-ratio:5/4;object-fit:cover}
/* avaliações do Google em texto, no lugar dos vídeos do modelo */
.notas{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;list-style:none;margin:0;padding:0}
.nota{height:100%;margin:0;display:flex;flex-direction:column;gap:14px;padding:24px 24px 22px;border-radius:var(--r-g);border:1px solid var(--linha);
  background:linear-gradient(180deg,rgba(38,26,20,.92),rgba(33,22,16,.92))}
.estrelas{color:var(--teal);letter-spacing:3px;font-size:15px}
.nota blockquote{margin:0;flex:1}
.nota blockquote p{margin:0;font-size:15.5px;line-height:1.65;color:var(--texto)}
.nota figcaption{font:600 15px/1.3 var(--f-texto);color:var(--areia)}
.nota figcaption span{display:block;margin-top:4px;font:500 10.5px/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--texto-2)}
.notas .reveal:nth-child(3n+2){transition-delay:.09s}
.notas .reveal:nth-child(3n+3){transition-delay:.18s}
.notas .reveal.is-pronta{transition-delay:0s}
/* galeria da odontopediatria: fotos em pé */
.molduras-kids{grid-template-columns:repeat(4,1fr)}
.foto-kids{aspect-ratio:413/600}
@media (max-width:980px){.notas{grid-template-columns:repeat(2,1fr)}.molduras-kids{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.notas{grid-template-columns:1fr}.molduras-kids{grid-template-columns:repeat(2,1fr)}.marca img{width:150px;height:28px}}
.retrato .espera small{display:none}
/* bloco "A clínica": foto do consultório com o logo por cima */
.retrato>img{aspect-ratio:1;object-fit:cover}
.retrato-marca{position:absolute;left:14px;right:14px;top:14px;display:flex;justify-content:center;padding:12px 16px;border-radius:16px;
  background:rgba(29,20,15,.86);box-shadow:0 0 0 1px rgba(254,252,251,.1)}
.retrato-marca img{width:100%;max-width:190px;height:auto}
/* depoimentos: fotos das crianças primeiro, avaliações passando embaixo (mesma esteira do modelo do advogado) */
.galeria-kids{margin-top:clamp(26px,4vw,40px)}
.olho-notas{margin:clamp(48px,6vw,72px) 0 0}
.esteira{margin-top:clamp(18px,2.6vw,28px);display:grid;gap:16px;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#110c09 6%,#110c09 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,#110c09 6%,#110c09 94%,transparent)}
.trilho{display:flex;gap:16px;width:max-content;will-change:transform;animation:desfile 70s linear infinite}
.trilho-volta{animation-direction:reverse;animation-duration:84s}
.esteira:hover .trilho,.esteira.is-fora .trilho{animation-play-state:paused}
@keyframes desfile{to{transform:translate3d(-50%,0,0)}}
.trilho .nota{flex:none;width:min(380px,82vw);height:auto}
@media (prefers-reduced-motion:reduce){
  .esteira{-webkit-mask-image:none;mask-image:none}
  .trilho{animation:none;width:auto;overflow-x:auto;padding:0 20px 8px;scroll-snap-type:x mandatory}
  .trilho .nota{scroll-snap-align:start}
  .trilho-volta,.trilho [aria-hidden="true"]{display:none}
}

/* ---------- Harmonize: o que muda em relação à Sorriclin ---------- */
/* a Cormorant é mais fina e mais baixa que a Fraunces: sobe um pouco o corpo dos títulos */
h1,h2{letter-spacing:-.01em;line-height:1.1}
h1{font-size:clamp(44px,6.3vw,80px)}
h2{font-size:clamp(33px,4.1vw,54px)}
.marcado{font-style:italic;padding-right:.06em}
.rail strong{font-size:clamp(25px,2.7vw,34px)}
.trilha-lista b{font-size:clamp(22px,2.3vw,30px);letter-spacing:-.005em}
/* o Cinzel entra nos rótulos, como o "CLÍNICA" do selo */
.olho{font-size:12.5px;letter-spacing:.24em}
.marca span{font-size:10.5px;letter-spacing:.2em}
.marca img{width:168px;height:32px}
.rodape-logo{width:200px;height:38px}
/* botão grande: dourado escuro, texto claro */
.btn-grande{box-shadow:0 22px 44px -22px rgba(54,36,26,.9)}
.btn-grande:hover{box-shadow:0 32px 56px -24px rgba(54,36,26,.95)}
/* as fotos do Instagram são em pé: o topo e a trilha ficam em retrato e quadrado */
.hero-foto{max-width:440px;margin-inline:auto}
.hero-foto .foto-quadro img{aspect-ratio:4/5;object-fit:cover}
.trilha-pilha{aspect-ratio:1;max-height:min(58vh,540px);width:100%;justify-self:start}
@media (max-width:1000px){.hero-foto{max-width:380px}.trilha-pilha{max-height:46vh;max-width:46vh}}
.quadro .espera{border-radius:inherit}
/* legenda nas fotos da galeria */
.foto-kids figcaption{font-size:12px}
/* espaço dos depoimentos, esperando os prints do destaque "Feedback" */
.espera-depo{position:relative;margin-top:clamp(18px,2.6vw,28px);display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;
  padding:clamp(34px,5vw,56px) 24px;border-radius:var(--r-g);color:var(--texto-2);
  background:radial-gradient(120% 90% at 30% 20%,rgba(205,158,105,.22),transparent 60%),repeating-linear-gradient(135deg,rgba(251,248,246,.03) 0 12px,transparent 12px 24px),var(--superficie)}
.espera-depo::after{content:"";position:absolute;inset:12px;border:1.5px dashed rgba(220,187,149,.4);border-radius:calc(var(--r-g) - 8px);pointer-events:none}
.espera-depo svg{width:34px;height:34px;color:var(--teal)}
.espera-depo b{font:600 16px/1.3 var(--f-texto);color:var(--areia)}
.espera-depo span{font-size:14.5px;max-width:52ch}
/* aviso do formulário quando a mensagem vai copiada para o direct */
.erro.is-aviso{color:#412c1f}
@media (max-width:640px){.marca img{width:146px;height:28px}.marca span{display:none}}
/* celular: a foto do topo deita (mostra a parede com o logo) para o título aparecer já na primeira tela;
   a etiqueta do logo sai da foto da sala; o rodapé ganha folga para o botão flutuante não cobrir o texto */
@media (max-width:760px){
  .hero{padding-top:22px}
  .hero-foto{max-width:none}
  .hero-foto .foto-quadro img{aspect-ratio:16/10;object-position:50% 12%}
  .hero-grid{gap:26px}
  .retrato-marca{display:none}
  .rodape{padding-bottom:96px}
}
/* 7 tratamentos na trilha: um pouco mais de rolagem para cada um */
.trilha-rolagem{height:540vh}
@media (max-width:1000px){.trilha-rolagem{height:500vh}}
/* a Cormorant usa números de estilo antigo: nos destaques os números ficam alinhados */
h1,h2,.rail strong,.trilha-lista b{font-variant-numeric:lining-nums}

/* bloco "A clínica": a inclinação 3D continua no computador; saiu só a luz que seguia o mouse,
   e o fundo de fibras vira uma imagem fixa tirada do próprio efeito */
.secao-papel::after{display:none}
.retrato>img{object-position:50% 50%}
/* etiqueta da foto do topo: canto direito, sempre dentro da foto */
.hero-foto figcaption{left:auto;right:16px;bottom:16px;transform:translateZ(24px)}
/* o quadro da trilha fica sempre quadrado: as fotos (e o cartaz do NeoGlúteo) aparecem inteiras */
.trilha-pilha{max-height:none;max-width:none;width:min(100%,58vh,540px)}
@media (max-width:1000px){.trilha-pilha{width:min(100%,46vh)}}
/* contador da trilha no canto de baixo: não cobre títulos que ficam no alto das fotos */
.quadro-conta{top:auto;bottom:14px}

/* logo oficial da clínica (PNG dela, recortado com fundo transparente): proporção 6,3 : 1 */
.marca img{width:202px;height:32px}
.rodape-logo{width:240px;height:38px}
@media (max-width:640px){.marca img{width:177px;height:28px}}
/* 8 tratamentos na trilha */
.trilha-rolagem{height:670vh}
@media (max-width:1000px){.trilha-rolagem{height:625vh}}
.inteiro{white-space:nowrap}
/* 8 itens na trilha: lista mais compacta no desktop para caber inteira na tela */
@media (min-width:1001px){
  .trilha-texto h2{font-size:clamp(28px,2.9vw,40px)}
  .trilha-lista{margin-top:clamp(14px,2vh,24px);gap:2px}
  .trilha-lista button{padding-block:clamp(7px,1.1vh,12px)}
  .trilha-lista b{font-size:clamp(19px,1.75vw,24px)}
}
@media (min-width:1001px) and (max-height:760px){
  .trilha-lista button{padding-block:5px}
  .trilha-lista b{font-size:clamp(17px,1.5vw,20px)}
}
/* o texto dourado em degradê só pinta dentro da caixa da palavra: folga embaixo para a perna do "g" */
.marcado{padding-bottom:.2em;margin-bottom:-.2em}
/* a foto do bloco "A clínica" sai menos à frente no 3D: fica nítida e o texto da legenda não borra */
@media (hover:hover) and (pointer:fine) and (min-width:1001px){#equipe .retrato{transform:translateZ(28px)}}
.tarja-link{display:flex;flex-direction:column;gap:3px;text-decoration:none;color:inherit}
.tarja-link:hover b{color:var(--teal)}

/* ---------- equipe: o quadradão da Sorriclin (fundo de fibras animado + abas), um nome por aba ---------- */
.secao-equipe .container{width:min(1360px,100% - var(--gutter)*2)}
.quadrao{position:relative;overflow:hidden;isolation:isolate;border-radius:30px;background:#1c130e;padding:clamp(20px,3vw,44px);min-height:640px;
  box-shadow:0 50px 90px -50px rgba(38,25,18,.85)}
.quadrao::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:linear-gradient(100deg,rgba(27,19,14,.55),rgba(27,19,14,.2) 55%,rgba(27,19,14,.6))}
.quadrao .painel-fundo{z-index:0}
.sorr{position:relative;z-index:1;display:grid;grid-template-columns:minmax(260px,320px) 1fr;gap:clamp(18px,2.6vw,34px);align-items:stretch}
.sorr-lado{display:flex;flex-direction:column;gap:22px}
.sorr-lado .sorr-cta{margin-top:auto;align-self:stretch;justify-content:center;white-space:nowrap}
.sorr-cta .i{width:18px;height:18px;fill:currentColor}
.sorr-abas{display:grid;gap:8px;align-content:start}
.sorr-abas button{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 18px;border-radius:14px;
  border:1px solid rgba(233,212,189,.16);background:rgba(36,24,17,.9);color:#f7f1eb;font:600 16px/1.25 var(--f-texto);text-align:left;cursor:pointer;
  transition:border-color .25s ease,background-color .25s ease,transform .25s var(--ease),box-shadow .25s ease}
.sorr-abas button span{display:grid;gap:3px}
.sorr-abas button em{font:500 10.5px/1.3 var(--f-mono);font-style:normal;letter-spacing:.1em;text-transform:uppercase;color:#a07e6b}
.sorr-abas button small{flex:none;min-width:30px;padding:3px 9px;border-radius:999px;border:1px solid rgba(220,187,149,.55);background:rgba(220,187,149,.14);
  font:600 11.5px/1.4 var(--f-texto);text-align:center;color:#e8d3ba;transition:background-color .25s ease,color .25s ease}
.sorr-abas button:hover{border-color:rgba(220,187,149,.5);background:rgba(41,29,22,.96)}
.sorr-abas button[aria-selected="true"]{border-color:var(--teal);background:linear-gradient(90deg,rgba(220,187,149,.22),rgba(41,29,22,.96) 70%);
  box-shadow:0 0 0 1px rgba(220,187,149,.35),0 16px 34px -20px rgba(220,187,149,.8);transform:translateX(6px)}
.sorr-abas button[aria-selected="true"]::before{content:"";position:absolute;left:-1px;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--teal)}
.aba-ponto{flex:none;width:10px;height:10px;border-radius:50%;border:1.5px solid rgba(220,187,149,.7);transition:background-color .25s ease,box-shadow .25s ease}
.sorr-abas button[aria-selected="true"] .aba-ponto{background:var(--teal);border-color:var(--teal);box-shadow:0 0 0 4px rgba(220,187,149,.2),0 0 12px rgba(220,187,149,.8)}
.sorr-abas button[aria-selected="true"] em{color:#e8d3ba}
.sorr-abas button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.sorr-paineis{position:relative;display:grid}
.sorr-painel{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:18px;min-height:100%;padding:clamp(22px,3.2vw,44px);border-radius:20px;
  border:1px solid rgba(233,212,189,.14);background:rgba(29,20,15,.86);animation:sorr-entra .5s var(--ease)}
.sorr-painel[hidden]{display:none}
.sorr-painel::before{content:"";position:absolute;left:28px;right:28px;top:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--teal),transparent)}
.sorr-marca{position:absolute;right:-6px;bottom:-40px;font:600 clamp(150px,16vw,230px)/1 var(--f-titulo);color:rgba(233,212,189,.05);pointer-events:none;letter-spacing:-.04em}
.sorr-topo{position:relative;max-width:58ch}
.sorr-conta{font:500 11px/1.5 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:#e8d3ba;margin-bottom:10px}
.sorr-topo h3{font:600 clamp(30px,3vw,42px)/1.1 var(--f-titulo);color:var(--areia);margin-bottom:10px}
.sorr-topo p:not(.sorr-conta){color:#b9a091;font-size:16px;line-height:1.6}
.sorr-itens{position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.sorr-itens li{display:flex;align-items:center;gap:12px;padding:13px 15px;border-radius:14px;border:1px solid rgba(251,248,246,.09);background:rgba(251,248,246,.04);
  font-size:15px;line-height:1.35;color:var(--texto)}
.sorr-itens svg{flex:none;width:16px;height:16px;padding:4px;box-sizing:content-box;border-radius:50%;background:rgba(220,187,149,.16);color:#e8d3ba}
.sorr-itens.desc li{align-items:flex-start}
.sorr-itens.desc span{display:grid;gap:4px;color:#a07e6b;font-size:14px;line-height:1.5}
.sorr-itens.desc b{color:var(--areia);font-size:15.5px}
.sorr-itens.poucos{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
.sorr-itens.poucos li{flex-direction:column;align-items:flex-start;justify-content:space-between;gap:26px;min-height:150px;padding:22px;font:600 22px/1.25 var(--f-titulo);color:var(--areia);
  background:linear-gradient(160deg,rgba(220,187,149,.14),rgba(251,248,246,.03));border-color:rgba(220,187,149,.22)}
.sorr-itens.poucos svg{width:20px;height:20px;padding:7px}
.eq-cabeca{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(18px,2.6vw,32px);align-items:center;margin-bottom:8px}
.eq-foto{width:clamp(150px,15vw,210px);aspect-ratio:4/5;margin:0;border-radius:18px;overflow:hidden;border:1px solid rgba(220,187,149,.35);
  box-shadow:0 26px 50px -30px rgba(17,12,9,.95);background:#261a14}
.eq-foto img{width:100%;height:100%;object-fit:cover;display:block}
.eq-sem{display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,rgba(220,187,149,.22),transparent 65%),#211610}
.eq-sem span{font:600 clamp(44px,5vw,64px)/1 var(--f-titulo);color:#e5ccb0;letter-spacing:.02em}
.eq-sub{position:relative;font:500 11px/1 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:#e8d3ba;margin-top:6px;
  display:flex;align-items:center;gap:12px}
.eq-sub::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(220,187,149,.4),transparent)}
.eq-texto{position:relative;color:#b9a091;font-size:15px;line-height:1.65;max-width:75ch;padding:16px 18px;border-radius:14px;
  border:1px solid rgba(220,187,149,.25);background:rgba(220,187,149,.06)}
.eq-fecho{position:relative;color:#a07e6b;font-size:14.5px;line-height:1.6;font-style:italic;max-width:70ch;margin-top:4px}
@keyframes sorr-entra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:900px){
  .sorr{grid-template-columns:1fr}
  .sorr-abas{display:flex;overflow-x:auto;gap:8px;margin-inline:calc(clamp(20px,3vw,44px)*-1);padding:2px clamp(20px,3vw,44px) 8px;
    scrollbar-width:none;scroll-snap-type:x proximity;scroll-padding-inline:clamp(20px,3vw,44px)}
  .sorr-abas::-webkit-scrollbar{display:none}
  .sorr-abas button{width:auto;flex:none;white-space:nowrap;padding:10px 14px;scroll-snap-align:start}
  .sorr-abas button[aria-selected="true"]{transform:none}
  .sorr-abas button[aria-selected="true"]::before{left:10px;right:10px;top:auto;bottom:-1px;width:auto;height:3px;border-radius:3px 3px 0 0}
  .sorr-itens{grid-template-columns:1fr}
  .sorr-lado{display:contents}
  .sorr-abas{order:1}.sorr-paineis{order:2}
  .sorr-lado .sorr-cta{order:3;margin-top:0;align-self:stretch;justify-content:center}
  .quadrao{min-height:0}
}
@media (max-width:560px){
  .quadrao{border-radius:24px;padding:16px}
  .sorr-abas{margin-inline:-16px;padding-inline:16px;scroll-padding-inline:16px}
  .eq-cabeca{grid-template-columns:1fr;justify-items:start}
  .eq-foto{width:150px}
  .sorr-painel{padding:20px 18px}
}
@media (prefers-reduced-motion:reduce){.sorr-painel{animation:none}}
.sorr-itens.desc{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
@media (max-width:900px){.sorr-itens.desc{grid-template-columns:1fr}.sorr-itens.poucos{grid-template-columns:repeat(3,1fr);gap:8px}.sorr-itens.poucos li{min-height:0;gap:14px;padding:14px;font-size:17px}}

/* ---------- a clínica por dentro: leque de fotos (o "Card Spread" da React Bits, refeito sem React).
   As cartas ficam presas a um arco; a do mouse/toque sobe, as vizinhas abrem espaço e as outras apagam um pouco.
   Só transform e opacity animam; a posição de cada carta vem do JS em variáveis CSS. */
.leque{position:relative;margin-top:clamp(20px,3vw,40px);display:flex;justify-content:center}
.leque-palco{position:relative;flex:none;transform-origin:50% 0}
.leque-carta{--a:0deg;--sobe:0px;position:absolute;left:50%;top:var(--topo,0px);width:var(--cw);height:var(--ch);margin-left:calc(var(--cw) / -2);
  padding:3px;border:0;border-radius:20px;cursor:pointer;
  background:linear-gradient(155deg,#e4ded3 0%,#d8b48b 22%,#c79256 45%,#e6cfb4 62%,#d2a878 80%,#efdfcd 100%);
  transform-origin:50% calc(100% + var(--raio));transform:rotate(var(--a)) translate3d(0,calc(var(--sobe) * -1),0);
  box-shadow:0 0 0 1px rgba(198,144,83,.35),0 10px 22px -8px rgba(54,36,26,.45),0 30px 50px -20px rgba(33,22,16,.8),0 0 30px -6px rgba(216,180,139,.45);
  will-change:transform;backface-visibility:hidden;
  opacity:0;transition:transform .55s cubic-bezier(.22,1.25,.36,1),opacity .4s ease;-webkit-tap-highlight-color:transparent}
.leque-carta::before{content:"";position:absolute;inset:-2px;border-radius:22px;pointer-events:none;z-index:-1;opacity:0;transition:opacity .4s ease;
  box-shadow:0 0 0 1px rgba(230,207,180,.7),0 0 26px 4px rgba(220,187,149,.55),0 40px 60px -26px rgba(33,22,16,.9)}
.leque-carta.is-ativa::before{opacity:1}
.leque.is-dentro .leque-carta{opacity:var(--op,1)}
.leque-carta img{display:block;width:100%;height:100%;object-fit:cover;border-radius:17px;pointer-events:none;-webkit-user-drag:none}
.leque-carta:focus-visible{outline:2px solid var(--roxo);outline-offset:4px}
.leque-legenda{margin-top:18px;text-align:center;font:600 clamp(22px,2.2vw,28px)/1.2 var(--f-titulo);color:#2c1e17;min-height:1.2em}
.leque-zoom{border:0;padding:0;background:transparent;max-width:min(92vw,520px);max-height:92vh;overflow:visible}
.leque-zoom::backdrop{background:rgba(25,17,13,.82)}
.leque-zoom img{display:block;width:100%;height:auto;max-height:88vh;object-fit:contain;border-radius:18px;box-shadow:0 40px 80px -30px rgba(17,12,9,.9)}
.leque-fechar{position:absolute;top:-14px;right:-14px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(220,187,149,.6);
  background:#201610;color:var(--areia);cursor:pointer}
@media (prefers-reduced-motion:reduce){.leque-carta{transition:opacity .2s}}

/* equipe e clínica por dentro: o mesmo papel, um tom mais escuro e sem a vinheta de cada seção (não fica a emenda entre as duas) */
.secao-equipe,.secao-espaco{background:#f7f0ea}
.secao-equipe::before,.secao-espaco::before{background-image:radial-gradient(rgba(47,31,22,.2) 1.15px,transparent 1.25px),
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E");
  background-size:24px 24px,120px 120px}
.secao-equipe{padding-bottom:clamp(40px,5vw,70px)}
.secao-espaco{padding-top:clamp(40px,5vw,70px)}

/* o quadro da equipe sem sombra embaixo: o papel continua igual até as fotos da clínica */
.secao-equipe .quadrao{box-shadow:none}

/* topo: o agendar já flutua no canto, então aqui fica o Instagram, com a borda nas cores do Instagram girando (o mesmo da CARBON) */
.btn-insta{overflow:hidden;isolation:isolate;border:0;min-height:42px;padding:0 18px 0 14px;font-size:13.5px;color:var(--areia);background:transparent}
.btn-insta::before{content:"";position:absolute;z-index:-2;left:50%;top:50%;width:140%;aspect-ratio:1;translate:-50% -50%;
  background:conic-gradient(#ecdcc9,#e2c7a8,#d9b58c,#962fbf,#c9975d,#ecdcc9);animation:insta-gira 5.5s linear infinite;will-change:transform}
.btn-insta::after{content:"";position:absolute;z-index:-1;inset:2.5px;border-radius:inherit;background:#110c09;transition:opacity .35s}
.btn-insta:hover{transform:translateY(-2px)}
.btn-insta:hover::after{opacity:.85}
.btn-insta .i{width:18px;height:18px;fill:none}
@keyframes insta-gira{to{transform:rotate(1turn)}}
@media (max-width:760px){
  .topo-insta{margin-left:auto;min-height:40px;width:40px;padding:0}
  .topo-insta span{display:none}
  .abrir{margin-left:10px}
}
@media (prefers-reduced-motion:reduce){.btn-insta::before{animation:none}}


/* =====================================================================
   Elisiane Mendes: o que muda em relação à Harmonize
   ===================================================================== */
/* a Fraunces é mais larga que a Cormorant: títulos um pouco menores */
h1{font-size:clamp(40px,5.4vw,70px);letter-spacing:-.03em;line-height:1.04}
h2{font-size:clamp(30px,3.6vw,48px);letter-spacing:-.025em}
h2 em{font-style:italic;color:var(--teal)}
.secao-papel h2 em{color:var(--verde-post)}
.olho{font:500 12.5px/1 var(--f-mono);letter-spacing:.26em}
.marcado{font-style:italic;background:linear-gradient(105deg,var(--teal) 0 40%,#fcf9f6 50%,var(--teal) 60% 100%);background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text}

/* nome no lugar da logo, como na parede do consultório */
.marca{flex-direction:column;align-items:center;gap:5px;line-height:1}
.marca b{font:500 20px/1 var(--f-mono);letter-spacing:.07em;color:var(--areia)}
.marca span{font:400 13px/1 var(--f-mono);letter-spacing:.1em;text-transform:none;color:var(--teal);padding:0;border:0}
.topo-agenda{min-height:42px;padding:0 18px;font-size:13.5px;margin-left:clamp(4px,1vw,12px)}
.btn .i-linha{fill:none}

/* topo: a foto inteira, do jeito que está no Instagram, e a coluna desenhada ao lado */
.hero-foto{max-width:420px}
.hero-foto .foto-quadro img{aspect-ratio:auto;object-fit:initial}
.hero-foto figcaption{left:auto;right:16px;bottom:16px}
.cena{position:relative}
.espinha{position:absolute;left:-46px;top:6%;width:44px;height:88%;overflow:visible;pointer-events:none}
.espinha path{fill:none;stroke:var(--teal);stroke-width:1.4;stroke-dasharray:1200;stroke-dashoffset:1200;opacity:.6}
.espinha circle{fill:var(--tinta);stroke:var(--teal);stroke-width:1.4;opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.3)}
.hero.is-dentro .espinha path{animation:desenha 2.6s var(--ease-io) .5s forwards}
.hero.is-dentro .espinha circle{animation:vertebra .6s var(--ease) forwards}
.espinha circle:nth-child(1){animation-delay:.7s}.espinha circle:nth-child(2){animation-delay:.95s}
.espinha circle:nth-child(3){animation-delay:1.2s}.espinha circle:nth-child(4){animation-delay:1.45s}
.espinha circle:nth-child(5){animation-delay:1.7s}.espinha circle:nth-child(6){animation-delay:1.95s}
.espinha circle:nth-child(7){animation-delay:2.2s}.espinha circle:nth-child(8){animation-delay:2.45s}
.espinha circle:nth-child(9){animation-delay:2.7s}
@keyframes desenha{to{stroke-dashoffset:0}}
@keyframes vertebra{to{opacity:.9;transform:none}}

/* tarja e dúvidas: o marrom dela, em dose pontual */
.tarja{background:rgba(44,29,21,.94)}
.secao-duvidas{background:rgba(40,28,21,.9)}
.secao-duvidas .faq details{background:rgba(49,33,24,.7);border-color:rgba(242,238,232,.12)}

/* ---------- cartões que viram, com a frente igual aos posts dela ---------- */
.giros-6{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
.giros-6 .giro{height:clamp(320px,27vw,360px)}
.frente{display:flex;flex-direction:column;justify-content:center;padding:58px 30px 64px}
.f-verde{background:linear-gradient(var(--verde-post),var(--verde-post)) padding-box,linear-gradient(150deg,rgba(242,238,232,.5),rgba(221,189,152,.3)) border-box}
.f-creme{background:linear-gradient(#f9f4f0,#f9f4f0) padding-box,linear-gradient(150deg,#fefcfb,rgba(221,189,152,.5)) border-box}
.f-marrom{background:linear-gradient(var(--marrom),var(--marrom)) padding-box,linear-gradient(150deg,rgba(221,189,152,.55),rgba(242,238,232,.18)) border-box}
.post{margin:0;font:600 clamp(22px,2vw,27px)/1.25 var(--f-titulo);letter-spacing:-.015em;color:#faf6f2}
.post em{font-style:italic;font-weight:600}
.post b{font-weight:600;font-family:var(--f-titulo);font-style:normal}
.f-verde .post em{color:#faf6f2;opacity:.85}
.f-verde .post b{color:#fefcfb}
.f-creme .post{color:#291b13}
.f-creme .post em,.f-creme .post b{color:var(--verde-post)}
.f-marrom .post{color:#b69c8d}
.f-marrom .post em{color:#e3c8aa}
.f-marrom .post b{color:#f8f1eb}
.post-pe{position:absolute;left:30px;right:24px;bottom:22px;display:flex;align-items:center;justify-content:flex-end;gap:10px;font:500 10.5px/1 var(--f-mono);letter-spacing:.06em;color:rgba(250,246,242,.75)}
.f-creme .post-pe{color:#483022}
.rabisco{width:54px;height:22px}
.rabisco path{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.frente .n{background:rgba(25,17,12,.3)}
.f-creme .n{color:#291b13;background:rgba(41,27,19,.06);border-color:rgba(41,27,19,.18)}
.f-creme .giro-dica{color:#291b13;background:rgba(41,27,19,.06);border-color:rgba(41,27,19,.2)}
.verso{background:linear-gradient(#201610,#201610) padding-box,linear-gradient(150deg,rgba(221,189,152,.5),rgba(242,238,232,.4) 60%,rgba(221,189,152,.18)) border-box}
.nevoa i:nth-child(1){--b:#c79256}
.nevoa i:nth-child(2){--b:#f2eee8}
.nevoa i:nth-child(3){--b:#c69053}
.nevoa i:nth-child(4){--b:#38261c}
.nevoa i:nth-child(5){--b:#ddbd98}
.verso-texto h3{font:600 23px/1.15 var(--f-titulo);letter-spacing:-.01em}
.verso-texto small{color:var(--teal)}

/* ---------- primeira consulta presa à rolagem: 4 passos, quadro em retrato ---------- */
.trilha-rolagem{height:360vh}
@media (max-width:1000px){.trilha-rolagem{height:340vh}}
.trilha-pilha{aspect-ratio:4/5;width:min(100%,62vh,440px)}
@media (max-width:1000px){.trilha-pilha{width:min(100%,44vh)}}
.quadro img{object-fit:contain;background:#1e140f}
.trilha-lista b{font-size:clamp(21px,2.1vw,29px)}

/* ---------- sobre: a trajetória dentro do quadrão ---------- */
.sorr-topo h3{font-size:clamp(28px,2.7vw,38px)}
.eq-fecho{font-family:var(--f-titulo);font-size:18px;color:var(--teal);font-style:italic}
.marcos{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;align-items:start}
.marco{margin:0;display:grid;gap:12px}
.marco img{width:100%;height:auto;border-radius:16px;border:1px solid rgba(221,189,152,.3)}
.marco figcaption,.marco-texto p{font-size:14.5px;line-height:1.55;color:#ede8df}
.marco b{display:block;font:600 26px/1 var(--f-titulo);color:var(--teal);margin-bottom:6px}
.marco-texto{padding:20px;border-radius:16px;border:1px solid rgba(221,189,152,.25);background:rgba(221,189,152,.06)}
.marco-texto .eq-fecho{font-size:15px;margin-top:12px}
.sorr-itens.poucos{grid-template-columns:repeat(5,minmax(0,1fr))}
.sorr-itens.poucos li{min-height:120px;font-size:21px}
@media (max-width:900px){.marcos{grid-template-columns:1fr 1fr}.marco-texto{grid-column:span 2}.sorr-itens.poucos{grid-template-columns:repeat(2,1fr)}}

/* ---------- leque: cartas em pé 9:16, a mesma proporção das fotos ---------- */
.leque-carta{background:linear-gradient(155deg,#f7f0ea 0%,#ddbd98 24%,#c79256 48%,#e6ceb4 66%,#d2a878 82%,#f6eee7 100%)}
.leque-legenda{color:#2c1e17}

/* ---------- planos ---------- */
.planos{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:center}
.plano{position:relative;overflow:hidden;padding:30px 28px 32px;border-radius:var(--r-g);border:1px solid var(--linha);background:linear-gradient(180deg,rgba(38,26,20,.92),rgba(29,20,15,.92))}
.plano h3{font:600 27px/1.1 var(--f-titulo);color:var(--areia);margin:0 0 12px}
.plano p:last-child{color:var(--texto-2);font-size:15.5px}
.plano-tag{display:inline-block;margin-bottom:16px;font:500 11.5px/1 var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--teal)}
.plano-destaque{padding-block:44px;border-color:rgba(221,189,152,.55);background:linear-gradient(160deg,rgba(221,189,152,.22),rgba(38,26,20,.94) 55%);box-shadow:0 40px 70px -40px rgba(221,189,152,.55)}
.plano-luz{position:absolute;inset:-40% -60%;background:linear-gradient(100deg,transparent 40%,rgba(251,247,243,.14) 50%,transparent 60%);animation:plano-brilho 7s var(--ease-io) infinite;pointer-events:none}
@keyframes plano-brilho{0%,30%{transform:translateX(-40%)}70%,100%{transform:translateX(40%)}}
.planos-pe{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 30px;margin-top:30px;padding-top:26px;border-top:1px solid var(--linha)}
.planos-pe p{color:var(--texto-2);font-size:15.5px}
.planos-pe b{color:var(--areia)}

/* ---------- avaliações ---------- */
.secao-aval{background:rgba(29,20,15,.45)}
.aval-cabeca{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px}
.nota-google{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 16px;text-decoration:none;padding:16px 24px;border-radius:20px;border:1px solid rgba(221,189,152,.4);background:rgba(37,25,18,.8);transition:transform .3s var(--ease),border-color .3s}
.nota-google:hover{transform:translateY(-3px);border-color:var(--teal)}
.nota-google b{grid-row:span 2;font:600 50px/1 var(--f-titulo);color:var(--areia)}
.nota-google small{font-size:13.5px;color:var(--texto-2)}
.nota-ig{background:linear-gradient(160deg,var(--verde-post),#38261c);border-color:rgba(221,189,152,.35)}
.nota-ig blockquote p{font:600 21px/1.35 var(--f-titulo);color:#fefcfb}
.nota-ig figcaption{color:#fefcfb}
.nota-ig figcaption span{color:var(--teal)}
.aval-pe{margin-top:28px}
.link-seta{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--teal);text-decoration:none}
.link-seta svg{transition:transform .3s var(--ease)}
.link-seta:hover svg{transform:translateX(4px)}

/* ---------- agendar: WhatsApp para a 1ª vez, Calendly para pacientes ---------- */
.dupla{align-items:start}
.dupla-texto>p:not(.olho):not(.contatos){color:#3d291d}
.dupla-texto>p b{color:#2c1e17}
.btn-grande{background:linear-gradient(118deg,#2e1f16 0%,#c79256 48%,#d3aa7b 100%);box-shadow:0 22px 44px -22px rgba(58,40,29,.9)}
.btn-grande .i{fill:#fefcfb}
.btn-grande .seta{fill:none}
.contatos a{color:#c79256;border-bottom-color:rgba(199,146,86,.35)}
.agenda{position:relative;padding:14px;border-radius:26px;background:#fefcfb;border:1px solid rgba(41,27,19,.12);box-shadow:0 40px 70px -46px rgba(44,30,23,.7)}
.agenda-tag{position:absolute;left:24px;top:-15px;z-index:1;display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 11px;border-radius:999px;background:#2c1e17;color:#faf6f2;font:500 11px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase}
.agenda-quadro{height:640px;border-radius:16px;overflow:hidden;background:#fcf9f7}
.agenda-quadro iframe{display:block;width:100%;height:100%;border:0}
.agenda-nota{margin:12px 6px 2px;font-size:13.5px;color:#503627}

/* ---------- visita ---------- */
.chegar{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}
.chegar li{font-size:14.5px;color:var(--texto-2)}
.chegar b{display:inline-block;min-width:82px;font:500 11px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.horarios{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:20px}
.horarios p{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;border:1px solid var(--linha);background:rgba(250,246,242,.04)}
.horarios b{font-size:13px;color:var(--areia)}
.horarios span{font-size:13px;color:var(--texto-2)}
.cartao-endereco{max-width:600px}
.visita .mapa iframe{filter:grayscale(.3) sepia(.15) brightness(.9)}

/* ---------- rodapé ---------- */
.rodape-marca{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;line-height:1}
.rodape-marca b{font:500 22px/1 var(--f-mono);letter-spacing:.07em;color:var(--areia)}
.rodape-marca span{font:400 14px/1 var(--f-mono);letter-spacing:.1em;color:var(--teal)}

/* ---------- telas menores ---------- */
@media (max-width:1000px){
  .giros-6{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planos{grid-template-columns:1fr}
  .espinha{display:none}
  .cena{order:0}
  .hero-foto{max-width:360px}
}
@media (max-width:860px){
  .menu{position:fixed;inset:76px 0 auto;flex-direction:column;gap:0;padding:10px var(--gutter) 24px;background:rgba(29,20,15,.99);border-bottom:1px solid var(--linha);transform:translateY(-12px);opacity:0;pointer-events:none;transition:opacity .25s,transform .3s var(--ease)}
  .menu a{padding:14px 0;border-bottom:1px solid var(--linha);font-size:16px}
  .menu-aberto .menu{opacity:1;transform:none;pointer-events:auto}
  .abrir{display:flex}
  .topo-agenda{margin-left:auto}
}
@media (max-width:760px){
  .hero{padding-top:30px}
  .hero-foto{max-width:300px}
  .hero-foto .foto-quadro img{aspect-ratio:auto;object-position:initial}
  .giros-6{grid-template-columns:1fr}
  .giros-6 .giro{height:clamp(300px,82vw,340px)}
  .marca b{font-size:16px}
  .marca span{font-size:11.5px}
  .topo-agenda{padding:0 12px;min-height:40px}
  .topo-agenda .i{display:none}
  .agenda-quadro{height:600px}
  .horarios{grid-template-columns:repeat(2,1fr)}
  .chegar b{display:block;margin-bottom:4px}
  .nota-google b{font-size:42px}
}
@media (max-width:640px){.marca span{display:block}}
@media (max-width:359px){.topo-agenda{display:none}}
@media (prefers-reduced-motion:reduce){
  .espinha path{stroke-dashoffset:0}
  .espinha circle{opacity:.9;transform:none}
  .plano-luz{display:none}
}


/* =====================================================================
   Patrícia Serralha: o que muda em relação à Elisiane
   ===================================================================== */
/* cartões dos serviços: foto na frente (como na Harmonize), não o post colorido */
.frente{display:block;padding:0}
.giros-6 .giro{height:clamp(340px,29vw,400px)}
.frente-texto h3{font:600 clamp(24px,2.1vw,28px)/1.1 var(--f-titulo);letter-spacing:-.015em}
.frente .sombra{background:linear-gradient(180deg,rgba(25,17,13,.1) 0,rgba(25,17,13,.38) 42%,rgba(25,17,13,.92) 100%)}
.verso-texto p{font-size:14.5px}
.nevoa i:nth-child(1){--b:#c79256}
.nevoa i:nth-child(4){--b:#38261c}

/* fotos dela inteiras, sem corte */
.eq-foto{aspect-ratio:auto}
.eq-foto img{height:auto}
.eq-foto-quadrada{width:clamp(170px,17vw,230px)}

/* onde atendo: três quadros de texto */
.marcos{grid-template-columns:repeat(3,1fr)}
.marco-texto b{font-size:24px}
.marco-texto p{font-size:15px}
.sorr-itens{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}

/* visita: só dois blocos de horário */
.horarios{grid-template-columns:repeat(2,minmax(0,200px))}

/* o traço do topo vira uma linha de respiração */
.espinha{left:-50px}

@media (max-width:900px){.marcos{grid-template-columns:1fr}.marco-texto{grid-column:auto}}
@media (max-width:760px){
  .giros-6 .giro{height:clamp(340px,96vw,400px)}
  .eq-cabeca{grid-template-columns:1fr}
  .eq-foto{width:min(220px,62vw)}
  .eq-foto-quadrada{width:min(260px,72vw)}
  .horarios{grid-template-columns:1fr 1fr}
}

/* ---------- celular: a sessão vira carrossel de deslizar, sem rolagem presa ---------- */
.trilha-setas{display:none}
@keyframes trilha-dica{0%,100%{transform:none}30%{transform:translateX(-26px)}60%{transform:translateX(8px)}}
@media (max-width:760px){
  .trilha-rolagem.is-deslizar{height:auto}
  .is-deslizar .trilha-palco{position:relative;min-height:0;padding-block:clamp(60px,14vw,90px)}
  .is-deslizar .trilha-pilha{width:100%;touch-action:pan-y}
  .is-deslizar .trilha-pilha.is-dica{animation:trilha-dica 1.4s var(--ease-io)}
  .is-deslizar .trilha-legenda{min-height:120px}
  .is-deslizar .trilha-btn{display:inline-flex}
  .is-deslizar .trilha-setas{display:flex;align-items:center;justify-content:space-between;gap:12px}
  .trilha-setas span{font:500 11px/1 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--texto-2)}
  .trilha-setas button{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid var(--linha-2);background:rgba(221,189,152,.12);color:var(--teal);cursor:pointer;transition:opacity .3s,transform .3s var(--ease)}
  .trilha-setas button:active{transform:scale(.92)}
  .trilha-setas button:disabled{opacity:.3;cursor:default}
  .trilha-setas svg{fill:none}
  [data-trilha-volta] svg{transform:rotate(180deg)}
  .is-deslizar .trilha-setas{order:1}
  .is-deslizar .trilha-legenda,.is-deslizar .trilha-pontos,.is-deslizar .trilha-btn{order:2}
}


/* =====================================================================
   Apausa: o que muda em relação à Patrícia Serralha
   ===================================================================== */
:root{
  --tinta:#1e140f;
  --tinta-2:#211610;
  --superficie:#281c15;
  --superficie-2:#2e1f16;
  --roxo:#c89459;
  --roxo-claro:#f7f1eb;
  --teal:#e7d0b6;
  --teal-2:#d9b68e;
  --areia:#fbf7f3;
  --texto:#f8f2ed;
  --texto-2:#b29889;
  --papel:#faf5f1;
  --papel-texto:#261a14;
  --verde-post:#c8955b;
  --rosa:#e8d2b9;
}
.secao-papel .cabeca h2,.secao-papel .dupla-texto h2{color:#322219}

/* a logo dela, vetorizada: o "A" em gota e o nome */
.marca{flex-direction:row;align-items:center;gap:12px}
.marca-simbolo{width:30px;height:35px;color:var(--teal);flex:none}
.marca .marca-txt{display:flex;flex-direction:column;gap:6px;padding:0;border:0;line-height:1}
.marca-nome{width:118px;height:20px;color:var(--areia)}
.marca .marca-txt span{font:500 9.5px/1 var(--f-mono);letter-spacing:.42em;text-transform:uppercase;color:var(--teal);padding:0;border:0}
.topo-insta{margin-left:clamp(4px,1vw,10px);flex:none;white-space:nowrap}
.menu a{white-space:nowrap}
/* seis seções no menu: abaixo de 1320px ele vira o botão de três linhas (Affettuosa: nome longo, sete seções) */
@media (max-width:1320px){
  .menu{position:fixed;inset:76px 0 auto;flex-direction:column;gap:0;padding:10px var(--gutter) 24px;background:rgba(30,20,15,.99);border-bottom:1px solid var(--linha);transform:translateY(-12px);opacity:0;pointer-events:none;transition:opacity .25s,transform .3s var(--ease)}
  .menu a{padding:14px 0;border-bottom:1px solid var(--linha);font-size:16px}
  .menu-aberto .menu{opacity:1;transform:none;pointer-events:auto}
  .abrir{display:flex}
  .topo-insta{margin-left:auto}
  .topo-agenda{margin-left:0}
}
@media (max-width:560px){.topo-insta{width:42px;padding:0;justify-content:center}.topo-insta span{display:none}}

/* topo: a foto inteira, em pé como no Instagram, com a gota da logo atrás */
.hero-foto{max-width:370px}
.hero-marca{position:absolute;right:-6%;top:-6%;width:72%;height:auto;aspect-ratio:103/120;color:var(--teal);opacity:.13;pointer-events:none;
  animation:gota-flutua 9s var(--ease-io) infinite alternate}
@keyframes gota-flutua{from{transform:translate3d(0,0,0) rotate(-3deg)}to{transform:translate3d(-14px,22px,0) rotate(3deg)}}
.hero-foto{z-index:1}
@media (max-width:1000px){.hero-foto{max-width:330px}.hero-marca{right:2%;width:60%}}

/* outubro rosa */
.rosa{position:relative;z-index:1;background:linear-gradient(90deg,rgba(232,210,185,.16),rgba(231,208,182,.08) 60%,rgba(232,210,185,.12));border-bottom:1px solid rgba(232,210,185,.25)}
.rosa-inner{display:flex;align-items:center;gap:14px;padding-block:14px;font-size:14.5px;color:var(--texto)}
.rosa-inner p{flex:1}
.rosa-inner b{color:#f8f2ed}
.rosa-laco{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;flex:none;color:var(--rosa);background:rgba(232,210,185,.14);border:1px solid rgba(232,210,185,.35)}
.rosa-link{display:inline-flex;align-items:center;gap:8px;flex:none;padding:9px 16px;border-radius:999px;border:1px solid rgba(232,210,185,.45);color:#f8f2ed;text-decoration:none;font-weight:700;font-size:13.5px;transition:background-color .3s}
.rosa-link:hover{background:rgba(232,210,185,.16)}
.rosa-link svg{fill:none}
@media (max-width:760px){.rosa-inner{flex-wrap:wrap;gap:10px 12px;font-size:14px}.rosa-inner p{flex:1 1 calc(100% - 52px)}.rosa-link{margin-left:50px}}

/* cartões: a foto inteira, na proporção dela (9:16), sem corte */
.giros-6 .giro{height:auto;aspect-ratio:9/16}
.frente-texto h3{font-size:clamp(24px,2.2vw,30px)}
.verso-texto p+p{margin-top:10px}
.verso-texto small{color:var(--teal)}
.nevoa i:nth-child(1){--b:#c8955b}
.nevoa i:nth-child(4){--b:#402b1e}
.giros-setas{display:none}
@keyframes giros-dica{0%,100%{transform:none}50%{transform:translateX(6px)}}
@media (max-width:760px){
  .giros-6{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--gutter)*-1);padding:6px var(--gutter) 10px;scrollbar-width:none;overscroll-behavior-x:contain}
  .giros-6::-webkit-scrollbar{display:none}
  .giros-6 .giro{flex:0 0 min(78vw,340px);height:auto;scroll-snap-align:center}
  .giros-setas{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;font:500 11px/1 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--texto-2)}
  .giros-setas svg{fill:none;color:var(--teal);animation:giros-dica 1.6s var(--ease-io) infinite}
}

/* primeira consulta: as fotos em pé, inteiras */
.trilha-pilha{aspect-ratio:9/16;width:min(100%,calc(66vh * .5625));max-height:none;max-width:none}
@media (max-width:1000px){.trilha-pilha{width:min(100%,calc(54vh * .5625))}}
.trilha-foto{display:grid;justify-items:start}
.trilha-legenda,.trilha-pontos{width:100%}
@media (max-width:760px){.is-deslizar .trilha-pilha{width:min(74vw,330px)}}

/* quem somos */
.eq-foto{width:clamp(160px,16vw,220px)}
.eq-foto-larga{width:clamp(200px,21vw,280px)}
.eq-fecho span{display:block;margin-top:6px;font:500 11.5px/1.4 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;font-style:normal;opacity:.75}
.sorr-itens{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
@media (max-width:760px){.eq-foto{width:min(210px,60vw)}.eq-foto-larga{width:min(280px,78vw)}}

/* agendar: o botão do Instagram ao lado do WhatsApp */
.btn-insta-g{margin-top:14px;min-height:52px;padding:0 22px 0 18px;font-size:15px}
.btn-insta-g .i{width:20px;height:20px}

/* visita: três blocos de horário */
.horarios{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:760px){.horarios{grid-template-columns:1fr 1fr 1fr;gap:8px}}

/* rodapé com a logo completa */
.rodape-logo{display:block;width:150px;height:118px;color:var(--teal);margin-bottom:16px}
@media (prefers-reduced-motion:reduce){.hero-marca,.giros-setas svg{animation:none}}
/* topo no celular: logo, Instagram e menu cabem lado a lado (o WhatsApp fica no botão flutuante) */
@media (max-width:560px){
  .faixa-topo{gap:10px}
  .marca{gap:9px}
  .marca-simbolo{width:25px;height:29px}
  .marca-nome{width:100px;height:17px}
  .marca .marca-txt span{font-size:8.5px;letter-spacing:.36em}
}
@media (max-width:440px){.topo-agenda{display:none}}




/* =====================================================================
   Davi Reis (recolorido para a André Soratto): o que muda em relação à Olyra
   Cores: marinho, azul royal e o dourado do logo.
   Títulos em letra condensada e caixa alta (Barlow Condensed), como nas artes do Instagram;
   o nome em Jost fina e espaçada, como no "DAVi REiS" do logo. O símbolo (triângulo listrado + triângulo amarelo) é vetor: #i-marca.
   ===================================================================== */
:root{
  --tinta:#19110d;
  --tinta-2:#231811;
  --superficie:#342218;
  --superficie-2:#452e20;
  --roxo:#c08541;
  --roxo-claro:#f6efe8;
  --roxo-fundo:#3f2a1e;
  --teal:#d3aa7b;
  --teal-2:#c8955b;
  --areia:#ffffff;
  --texto:#f7f0ea;
  --texto-2:#c4b2a7;
  --linha:rgba(255,255,255,.12);
  --linha-2:rgba(255,255,255,.22);
  --papel:#f8f3ee;
  --papel-texto:#2c1d15;
  --verde-post:#c08541;
  --f-titulo:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;
  --f-marca:Jost,"Century Gothic",system-ui,sans-serif;
  --tshadow:0 1px 2px rgba(0,0,0,.95),0 3px 12px rgba(0,0,0,.7),0 10px 44px rgba(0,0,0,.6);
}
body{background:var(--tinta)}
h1,h2{font-family:var(--f-titulo);font-weight:500;letter-spacing:-.01em;line-height:1.02}
h1{font-size:clamp(46px,6.6vw,86px);letter-spacing:-.015em}
h2{font-size:clamp(34px,4.3vw,56px)}
h1 em,h2 em{font-style:italic;font-weight:500}
.rail strong{font-family:var(--f-titulo);font-weight:600;font-size:clamp(28px,3vw,38px);letter-spacing:0}
h1,h2,.rail strong,.trilha-lista b,.nota-google b{font-variant-numeric:lining-nums}
.veu{background:radial-gradient(130% 80% at 50% 0,rgba(25,17,13,0) 42%,rgba(25,17,13,.55) 100%)}
.secao:not(.secao-papel):not(.secao-duvidas):not(.secao-aval){background:rgba(25,17,13,.6)}
.topo{background:rgba(25,17,13,.84)}
.topo.is-rolando{background:rgba(25,17,13,.97)}
.tarja{background:rgba(52,34,24,.94)}
.tarja b{color:var(--areia)}
.secao-aval{background:rgba(35,24,17,.72)}
.secao-duvidas{background:rgba(40,28,21,.92)}
.secao-duvidas .faq details{background:rgba(69,46,32,.7);border-color:rgba(255,255,255,.12)}
.faq summary{font-family:var(--f-titulo);font-size:21px;font-weight:600}
.secao-papel h2,.secao-papel .cabeca h2,.secao-papel .dupla-texto h2{color:#2c1d15}
.secao-papel h2 em{color:#c08541}
.secao-papel .olho{color:#c08541}
.secao-papel::before{background-image:
    radial-gradient(125% 105% at 50% 38%,rgba(248,243,238,0) 26%,rgba(248,243,238,.6) 68%,var(--papel) 100%),
    radial-gradient(rgba(83,57,42,.16) 1.15px,transparent 1.25px),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E")}
.olho{color:var(--teal)}
.selo{border-color:rgba(211,170,123,.38);background:rgba(52,34,24,.6);color:#eee9e0}
.selo .ponto{background:var(--teal)}
.btn-zap{background:var(--teal);color:#ffffff;box-shadow:0 14px 30px -18px rgba(211,170,123,.95)}
.btn-zap:hover{background:#dfc09e}
.zap-flutua{background:var(--teal);color:#ffffff;box-shadow:0 18px 40px -18px rgba(211,170,123,.95)}
.zap-flutua:hover{background:#dfc09e}
.btn-grande{background:linear-gradient(118deg,#3f2a1e 0%,#c08541 46%,#d3aa7b 100%);box-shadow:0 22px 44px -22px rgba(102,68,49,.9)}
.marcado{font-style:italic;padding-right:.06em;background:linear-gradient(105deg,var(--teal) 0 40%,#f8f2ed 50%,var(--teal) 60% 100%);background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text}

/* a marca: a folha e o nome em serifa espaçada, como na logo */
.marca{flex-direction:row;align-items:center;gap:10px}
.marca .marca-simbolo{width:34px;height:34px;flex:none;color:var(--teal)}
.marca .marca-txt{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:0;border:0;line-height:1}
.marca .marca-nome{display:block;width:auto;height:auto;font:500 25px/.9 var(--f-marca);letter-spacing:.2em;text-transform:uppercase;color:var(--areia);margin-right:-.2em}
.marca .marca-txt .marca-sub{display:block;font:500 8.5px/1 var(--f-mono);letter-spacing:.42em;text-transform:uppercase;color:var(--teal);padding:0;border:0}
.menu{gap:clamp(10px,1.4vw,22px)}
@media (max-width:1320px){
  .menu{position:fixed;inset:76px 0 auto;flex-direction:column;gap:0;padding:10px var(--gutter) 24px;background:rgba(25,17,13,.99);border-bottom:1px solid var(--linha);transform:translateY(-12px);opacity:0;pointer-events:none;transition:opacity .25s,transform .3s var(--ease)}
  .menu a{padding:14px 0;border-bottom:1px solid var(--linha);font-size:16px}
  .menu-aberto .menu{opacity:1;transform:none;pointer-events:auto}
  .abrir{display:flex}
  .topo-insta{margin-left:auto}
  .topo-agenda{margin-left:0}
}
@media (max-width:560px){
  .marca{gap:8px}
  .marca .marca-simbolo{width:28px;height:28px}
  .marca .marca-nome{font-size:21px}
  .marca .marca-txt .marca-sub{font-size:7px;letter-spacing:.34em}
}
@media (max-width:440px){.topo-agenda{display:none}}

/* topo: a foto da cascata inteira num quadro, com a folha flutuando atrás e um halo dourado */
@media (min-width:1001px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.hero{overflow:hidden;overflow:clip}
.hero::before{background:linear-gradient(100deg,rgba(19,13,10,.88) 0 34%,rgba(19,13,10,.4) 60%,rgba(19,13,10,.05) 82%,transparent)}
.hero h1 em{color:var(--teal)}
.cena{position:relative;display:grid;place-items:center}
.hero-foto{position:relative;z-index:2;width:100%;max-width:600px;margin-inline:auto;will-change:auto}
.hero-foto.is-pegando{will-change:transform}
.hero-foto .foto-quadro{border-radius:28px;box-shadow:0 0 0 1px rgba(211,170,123,.35),0 0 0 9px rgba(211,170,123,.07)}
.hero-foto .foto-quadro img{aspect-ratio:1300/1224;object-fit:cover}
.hero-foto figcaption{left:auto;right:18px;bottom:18px;display:flex;flex-direction:column;gap:3px;padding:11px 16px;border-radius:14px;
  background:rgba(31,21,16,.84);border:1px solid rgba(211,170,123,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  font-size:12px;color:var(--texto-2);line-height:1.2;transform:translateZ(40px)}
.hero-foto figcaption b{font:600 19px/1 var(--f-titulo);color:var(--areia)}
.hero-aro{position:absolute;z-index:0;left:50%;top:50%;width:min(110%,680px);aspect-ratio:1;translate:-50% -50%;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side,rgba(211,170,123,.34),rgba(192,133,65,.18) 55%,rgba(192,133,65,0) 100%);
  animation:soratto-pulsa 6s var(--ease-io) infinite alternate}
.hero-aro::after{content:"";position:absolute;inset:6%;border-radius:50%;border:1px dashed rgba(211,170,123,.25);animation:soratto-gira 80s linear infinite}
.hero-marca{position:absolute;z-index:1;right:-6%;top:-12%;width:min(62%,380px);height:auto;aspect-ratio:1;color:var(--teal);opacity:.22;pointer-events:none;
  animation:soratto-folha 9s var(--ease-io) infinite alternate}
@keyframes soratto-gira{to{rotate:360deg}}
@keyframes soratto-pulsa{from{transform:scale(.95);opacity:.75}to{transform:scale(1.04);opacity:1}}
@keyframes soratto-folha{from{transform:translate3d(0,0,0) rotate(-4deg)}to{transform:translate3d(-14px,20px,0) rotate(5deg)}}
@media (max-width:1000px){
  .hero .cena{order:-1;margin-top:8px}
  .hero-foto{max-width:min(560px,100%)}
  .hero-aro{width:min(100%,560px)}
  .hero-marca{right:-2%;top:-8%;width:min(46vw,260px)}
  .hero-grid{gap:30px}
}
@media (max-width:760px){
  .hero-foto .foto-quadro img{aspect-ratio:1300/1224;object-position:50% 50%}
  .hero-foto figcaption{right:10px;bottom:10px;padding:9px 13px}
  .hero-foto figcaption b{font-size:16.5px}
}

/* o ritual: oito cartões 4:5, quatro por linha */
.giros-6{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.giros-6 .giro{height:auto;aspect-ratio:4/5}
@media (max-width:1100px) and (min-width:761px){.giros-6{grid-template-columns:repeat(2,minmax(0,1fr))}}
.frente-texto h3{font:600 clamp(25px,2.1vw,30px)/1.05 var(--f-titulo);letter-spacing:0}
.giros-6 .verso-texto p{font-size:14.5px;line-height:1.55}
.verso-texto h3{font:600 26px/1.08 var(--f-titulo);letter-spacing:0}
.verso-texto small{color:var(--teal)}
.preco{display:inline-block;margin-bottom:10px;padding:5px 11px;border-radius:999px;font:600 10.5px/1.2 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;
  color:#ffffff;background:rgba(211,170,123,.95);box-shadow:0 8px 20px -10px rgba(0,0,0,.8);text-shadow:none}
.verso-mandala{position:absolute;left:50%;top:7%;width:44%;height:auto;aspect-ratio:1;translate:-50% 0;opacity:.16;z-index:0;pointer-events:none;color:var(--teal)}
.nevoa i:nth-child(1){--b:#c08541}
.nevoa i:nth-child(2){--b:#f6efe8}
.nevoa i:nth-child(3){--b:#c8955b}
.nevoa i:nth-child(4){--b:#3f2a1e}
.nevoa i:nth-child(5){--b:#d3aa7b}

/* a experiência: fotos 3:4 */
.trilha-rolagem{height:420vh}
@media (max-width:1000px){.trilha-rolagem{height:400vh}}
.trilha-pilha{aspect-ratio:3/4;max-height:none;max-width:none;width:min(100%,calc(56vh * .75),400px)}
@media (max-width:1000px){.trilha-pilha{width:min(100%,calc(50vh * .75))}}
@media (max-width:760px){.is-deslizar .trilha-pilha{width:min(78vw,340px)}}
.quadro img{object-fit:cover}
.trilha-lista i{color:var(--teal)}
.trilha-lista b{font-family:var(--f-titulo);font-weight:600;font-size:1.25em}

/* head spa: abas */
.eq-foto{border-color:rgba(211,170,123,.45)}
.sorr-topo h3{font:600 clamp(26px,2.3vw,32px)/1.08 var(--f-titulo);letter-spacing:0}
.sorr-abas b{font-family:var(--f-titulo);font-size:21px;font-weight:600}
.marco b{font-family:var(--f-titulo);font-weight:600;font-size:21px}
.eq-fecho{font-family:var(--f-titulo);font-style:italic;font-size:21px}

/* os detalhes: fotos 4:5, três por linha; no celular, de deslizar */
.antes-depois{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ad{margin:0;position:relative}
.ad-foto{display:block;width:100%;padding:0;border:1px solid var(--linha-2);border-radius:var(--r-g);overflow:hidden;cursor:zoom-in;background:var(--superficie);
  box-shadow:0 24px 50px -30px rgba(0,0,0,.9);transition:transform .5s var(--ease),border-color .3s}
.ad-foto img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;transition:transform .7s var(--ease)}
.ad-foto:hover{transform:translateY(-4px);border-color:rgba(211,170,123,.6)}
.ad-foto:hover img{transform:scale(1.03)}
.ad figcaption{position:absolute;left:12px;top:12px;padding:6px 12px;border-radius:999px;background:rgba(25,17,13,.84);border:1px solid rgba(211,170,123,.3);font-size:12.5px;color:var(--areia);pointer-events:none}
.antes-depois>.reveal:nth-child(3n+2){transition-delay:.09s}
.antes-depois>.reveal:nth-child(3n){transition-delay:.18s}
.res-setas{display:none}
@media (max-width:760px){
  .antes-depois{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--gutter)*-1);padding:6px var(--gutter) 10px;scrollbar-width:none;overscroll-behavior-x:contain}
  .antes-depois::-webkit-scrollbar{display:none}
  .ad{flex:0 0 min(76vw,330px);scroll-snap-align:center}
  .antes-depois>.reveal{transition-delay:0s}
  .res-setas{display:flex}
}

/* o espaço: cartas 3:4 */
.leque-carta{background:linear-gradient(155deg,#f9f4ef 0%,#d3aa7b 24%,#c08541 48%,#e7d1b8 66%,#c8955b 82%,#fcf9f7 100%)}
.leque-legenda{color:#2c1d15;font-family:var(--f-titulo);font-size:24px;font-style:italic}
.leque-zoom img{object-fit:contain}

/* avaliações */
.nota blockquote p{font-size:15.5px}
.nota figcaption span{color:var(--texto-2)}
.nota-google b{font-family:var(--f-titulo);font-weight:600}

/* agendar: o horário no cartão que leva ao WhatsApp */
.agenda-tag{background:#2c1d15}
.agenda-quadro{position:relative;height:560px;background:#ffffff}
.agenda-capa{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:34px 28px;text-align:center;
  text-decoration:none;color:#2c1d15;
  background:radial-gradient(90% 60% at 50% 25%,rgba(211,170,123,.3),transparent 70%),linear-gradient(180deg,#ffffff,#f2eee7)}
.capa-simbolo{width:84px;height:84px;color:#c8955b;animation:soratto-folha 9s var(--ease-io) infinite alternate}
.agenda-capa b{font:600 clamp(30px,2.8vw,36px)/1.1 var(--f-titulo);color:#2c1d15}
.horas{list-style:none;margin:0;padding:0;width:min(100%,340px);display:grid}
.horas li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 2px;border-bottom:1px solid rgba(44,29,21,.25)}
.horas li:first-child{border-top:1px solid rgba(44,29,21,.25)}
.horas span{font:500 11.5px/1 var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:#9a7865}
.horas strong{font:600 23px/1 var(--f-titulo);color:#2c1d15;font-variant-numeric:lining-nums}
.agenda-capa .btn{pointer-events:none;margin-top:6px}
.agenda-capa:hover .btn{background:#dfc09e;transform:translateY(-2px)}
.agenda-capa small{font-size:13px;color:#9a7865}
.contas-insta{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center}
.contas-insta .btn-linha{color:#2c1d15;border-color:rgba(44,29,21,.3)}
.contas-insta .btn-linha:hover{border-color:#c08541}
@media (max-width:760px){.agenda-quadro{height:540px}}

/* rodapé: a folha e o nome */
.rodape-marca{display:flex;flex-direction:row;align-items:center;gap:14px}
.rodape-logo{width:52px;height:52px;margin:0;color:var(--teal)}
.rodape-nome{display:flex;flex-direction:column;gap:7px}
.rodape-marca .rodape-nome b{font:500 36px/.86 var(--f-marca);color:var(--areia);letter-spacing:.2em;text-transform:uppercase}
.rodape-marca .rodape-nome>span{font:500 10px/1 var(--f-mono);letter-spacing:.42em;text-transform:uppercase;color:var(--teal)}
@media (prefers-reduced-motion:reduce){.hero-marca,.hero-aro,.hero-aro::after,.capa-simbolo{animation:none}}

/* celular: os cartões viram sem 3D (o Safari do iPhone trava o deslize da faixa com perspective/preserve-3d).
   As setas passam um item por toque. Igual à Kyrokura. */
@media (max-width:760px){
  .giros-6 .giro{perspective:none;touch-action:pan-x pan-y}
  .giros-6 .giro-eixo{transform-style:flat;transform:none!important;transition:none;animation:none!important;will-change:auto!important}
  .giros-6 .face{-webkit-backface-visibility:visible;backface-visibility:visible}
  .giros-6 .verso{transform:scaleX(.6);opacity:0;visibility:hidden;will-change:auto!important;
    transition:transform .45s var(--ease),opacity .3s ease,visibility 0s linear .45s}
  .giros-6 .frente{transition:transform .45s var(--ease),opacity .3s ease}
  .giros-6 .giro.is-virado .verso{transform:none;opacity:1;visibility:visible;transition:transform .45s var(--ease),opacity .3s ease,visibility 0s}
  .giros-6 .giro.is-virado .frente{transform:scaleX(.6);opacity:0}
  .giros-6 .giro-hit{touch-action:pan-x pan-y;-webkit-tap-highlight-color:transparent}
  .antes-depois .ad-foto{touch-action:pan-x pan-y}
  .giros-setas{gap:14px}
  .giros-setas button{display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%;cursor:pointer;
    border:1px solid rgba(211,170,123,.45);background:rgba(52,34,24,.7);color:var(--teal);transition:opacity .25s,background-color .25s}
  .giros-setas button:active{background:rgba(211,170,123,.25)}
  .giros-setas button:disabled{opacity:.3;cursor:default}
  .giros-setas button svg{animation:none}
  .giros-setas [data-volta] svg{transform:scaleX(-1)}
  .giros-setas [data-vai]:not(:disabled) svg{animation:giros-dica 1.6s var(--ease-io) infinite}
  .rodape{padding-bottom:96px}
}

/* =====================================================================
   Davi Reis: letra condensada em caixa alta, a marca e o que é novo nele
   ===================================================================== */
h1,h2{font-weight:700;text-transform:uppercase;letter-spacing:.005em;line-height:.98}
h1{font-size:clamp(50px,6.4vw,90px)}
h2{font-size:clamp(36px,4.4vw,60px)}
h1 em,h2 em{font-style:normal;font-weight:700}
.marcado{font-style:normal}
.secao-papel h2 em,.secao-papel .cabeca h2 em{color:#c08541}
.secao-papel h2,.secao-papel .cabeca h2,.secao-papel .dupla-texto h2,.agenda-capa b{color:#2c1d15}
.quadrao h3,.secao-papel .quadrao h3{color:#ffffff}
.secao-papel .lede,.secao-papel>.container>p,.secao-papel .dupla-texto p{color:#a0775f}
.secao-papel .btn-linha{border-color:rgba(44,29,21,.3);color:#2c1d15}
.secao-papel .btn-linha:hover{border-color:#c08541;color:#c08541}
.rail strong{font-weight:700}
.frente-texto h3,.verso-texto h3,.sorr-topo h3{font-weight:700;text-transform:uppercase;letter-spacing:.01em}
.frente-texto h3{font-size:clamp(26px,2.2vw,31px)}
.verso-texto h3{font-size:27px}
.sorr-topo h3{font-size:clamp(26px,2.3vw,32px);line-height:1.02}
.sorr-abas b,.marco b,.trilha-lista b{font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.faq summary{font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:21px}
.eq-fecho{font-family:inherit;font-style:italic;font-size:17px}
.agenda-capa b{font-weight:700;text-transform:uppercase}
.horas strong{font-weight:700}
.leque-legenda{font-style:normal;text-transform:uppercase;letter-spacing:.04em;font-weight:700;font-size:26px}
.hero-foto figcaption b{font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.nota-google b{font-weight:700}

/* a marca: o símbolo e o nome em Jost fina e espaçada, como no logo */
.marca .marca-simbolo{width:36px;height:36px;color:#ffffff}
.marca .marca-nome{font:300 22px/.9 var(--f-marca);letter-spacing:.24em;margin-right:-.24em}
.marca .marca-txt .marca-sub{letter-spacing:.5em}
@media (max-width:560px){
  .marca .marca-simbolo{width:30px;height:30px}
  .marca .marca-nome{font-size:18px;letter-spacing:.2em}
  .marca .marca-txt .marca-sub{font-size:7px;letter-spacing:.42em}
}
.rodape-logo{color:#ffffff}
.rodape-marca .rodape-nome b{font:300 30px/.9 var(--f-marca);letter-spacing:.22em}
.hero-marca{color:#ffffff;opacity:.13}
.verso-mandala{color:#ffffff;opacity:.12}
.capa-simbolo{color:#2c1d15}

/* topo: a foto do post fixado (retrato 3:4, só existe em 640 px), um pouco menor */
.hero-foto{max-width:460px}
.hero-foto .foto-quadro img{aspect-ratio:3/4;object-fit:cover}
@media (max-width:760px){.hero-foto .foto-quadro img{aspect-ratio:3/4}.hero-foto{max-width:min(400px,100%)}}

/* a trajetória: a formação logo abaixo das fotos */
.formacao{list-style:none;margin:34px 0 0;padding:26px 0 0;border-top:1px solid var(--linha);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 26px}
.formacao li{display:flex;flex-direction:column;gap:6px}
.formacao b{font:700 24px/1 var(--f-titulo);text-transform:uppercase;letter-spacing:.02em;color:var(--teal)}
.formacao span{font-size:14px;line-height:1.45;color:var(--texto-2)}
@media (max-width:900px){.formacao{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.formacao{grid-template-columns:1fr}}


/* =====================================================================
   André Soratto: títulos em Jost (geométrica, como o "ANDRÉ SORATTO" do logo), a marca e os detalhes em dourado
   O símbolo (as duas pernas + o "S" dourado) é vetor: #i-marca, com o gradiente #ouro definido no sprite.
   ===================================================================== */
:root{--ouro:#c69053;--ouro-claro:#dfc19f;--f-titulo:Jost,"Century Gothic",system-ui,sans-serif}
h1,h2{font-family:var(--f-titulo);font-weight:600;text-transform:none;letter-spacing:-.022em;line-height:1.04}
h1{font-size:clamp(42px,5.4vw,76px)}
h2{font-size:clamp(32px,3.8vw,52px)}
h1 em,h2 em{font-style:normal;font-weight:600}
.secao-papel h2 em,.secao-papel .cabeca h2 em{color:#c08541}
.rail strong{font-family:var(--f-titulo);font-weight:600;letter-spacing:-.02em}
.frente-texto h3,.verso-texto h3,.sorr-topo h3{font-family:var(--f-titulo);font-weight:600;text-transform:none;letter-spacing:-.01em}
.frente-texto h3{font-size:clamp(22px,1.8vw,26px);line-height:1.08}
.verso-texto h3{font-size:23px;line-height:1.1}
.sorr-topo h3{font-size:clamp(23px,2vw,28px);line-height:1.12}
.sorr-abas b,.marco b,.trilha-lista b{font-family:var(--f-titulo);font-weight:600;text-transform:none;letter-spacing:-.005em}
.trilha-lista b{font-size:1.15em}
.faq summary{font-family:var(--f-titulo);font-weight:600;text-transform:none;letter-spacing:-.005em;font-size:19px}
.agenda-capa b{font-family:var(--f-titulo);font-weight:600;text-transform:none;font-size:clamp(26px,2.4vw,32px)}
.horas strong{font-family:var(--f-titulo);font-weight:600}
.leque-legenda{font-family:var(--f-titulo);text-transform:none;letter-spacing:-.005em;font-weight:600;font-size:24px}
.hero-foto figcaption b{font-family:var(--f-titulo);font-weight:600;text-transform:none;letter-spacing:0}
.nota-google b{font-family:var(--f-titulo);font-weight:600}
.formacao b{font-family:var(--f-titulo);font-weight:600;text-transform:none;letter-spacing:-.01em;font-size:22px;color:var(--ouro-claro)}

/* a marca: o símbolo com o S dourado e o nome em Jost forte, como no logo */
.marca .marca-simbolo{width:40px;height:40px;color:#f6efe9}
.marca .marca-txt{gap:6px}
.marca .marca-nome{font:700 21px/.9 var(--f-marca);letter-spacing:.06em;margin-right:0;color:#ffffff}
.marca .marca-txt .marca-sub{font:400 8.2px/1 var(--f-marca);letter-spacing:.2em;color:var(--ouro-claro)}
@media (max-width:560px){
  .marca .marca-simbolo{width:32px;height:32px}
  .marca .marca-nome{font-size:17px;letter-spacing:.05em}
  .marca .marca-txt .marca-sub{font-size:6.6px;letter-spacing:.14em}
}
.rodape-logo{color:#f6efe9}
.rodape-marca .rodape-nome b{font:700 30px/.9 var(--f-marca);letter-spacing:.05em;color:#ffffff}
.rodape-marca .rodape-nome>span{font:400 10px/1 var(--f-marca);letter-spacing:.24em;color:var(--ouro-claro)}
.hero-marca{color:#f6efe9;opacity:.1}
.verso-mandala{color:#f6efe9;opacity:.14}
.capa-simbolo{color:#2c1d15}

/* detalhes em dourado: estrelas, o ponto do selo, o aro da foto */
.estrelas{color:var(--ouro)}
.selo{border-color:rgba(198,144,83,.42);color:#e4cbae}
.selo .ponto{background:var(--ouro)}
.hero-foto .foto-quadro{box-shadow:0 0 0 1px rgba(198,144,83,.5),0 0 0 9px rgba(211,170,123,.08),0 40px 90px -40px rgba(0,0,0,.9)}
.hero-foto figcaption{border-color:rgba(198,144,83,.45)}
.hero-foto figcaption span{color:var(--ouro-claro)}
.marcado{background:linear-gradient(105deg,#dbb992 0 40%,#f8f2ed 50%,#dbb992 60% 100%);background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text}
.verso-texto small{color:var(--ouro-claro)}
.preco{color:#ffffff;background:rgba(192,133,65,.95)}
.btn-zap,.zap-flutua{color:#ffffff}
.btn-grande{background:linear-gradient(118deg,#3f2a1e 0%,#c08541 52%,#d3aa7b 100%)}

/* topo: a foto que ele escolheu, retrato 3:4 */
.hero-foto{max-width:460px}
.hero-foto .foto-quadro img{aspect-ratio:3/4;object-fit:cover}

/* os números do topo numa linha só */
.rail strong{white-space:nowrap;font-size:clamp(26px,2.5vw,34px)}
.rail span{font-size:12.5px}

/* =====================================================================
   Dr. Davi Souza: o que muda em relação à André Soratto
   Cores das artes dele: azul petróleo escuro e dourado. O monograma "DS" (D em traço claro, S dourado) é #i-marca.
   Seção nova: antes e depois (evolução foto a foto, comparadores de arrastar e o dia do transplante).
   ===================================================================== */
.secao-papel h2 em,.secao-papel .cabeca h2 em{color:#8b602e}
.secao-papel .olho{color:#8b602e}
.marca .marca-nome{font-size:19px;letter-spacing:.08em;text-transform:uppercase}
.marca .marca-txt .marca-sub{font-size:8px;letter-spacing:.26em;text-transform:uppercase}
.rodape-marca .rodape-nome b{font-size:26px;text-transform:uppercase}
.rodape-marca .rodape-nome>span{text-transform:uppercase}
.capa-simbolo{color:#291b13}
.preco{color:#181108;background:linear-gradient(120deg,#dfc19f,#c69053)}
.btn-zap,.zap-flutua{color:#ffffff}
.hero-foto .foto-quadro{box-shadow:0 0 0 1px rgba(198,144,83,.55),0 0 0 9px rgba(198,144,83,.07),0 40px 90px -40px rgba(0,0,0,.9)}
.marcado{background:linear-gradient(105deg,#d1a675 0 40%,#f2ede3 50%,#d1a675 60% 100%);background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text}

/* subtítulos dentro da seção */
.cabeca-2{margin:clamp(54px,7vw,84px) 0 22px}
.sub{font:600 clamp(22px,2.2vw,28px)/1.15 var(--f-titulo);color:var(--areia);letter-spacing:-.01em}
.secao-resultados{background:rgba(25,17,12,.72)}

/* evolução: quatro fotos do mesmo paciente, com uma linha do tempo dourada por baixo */
.evolucao{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;position:relative;padding-bottom:6px}
.ev .ad-foto img{aspect-ratio:4/5}
.ad figcaption{display:flex;flex-direction:column;gap:2px;border-radius:12px;max-width:calc(100% - 24px)}
.ad figcaption b{font:600 15px/1.15 var(--f-titulo);color:#ffffff}
.ad figcaption span{font-size:12px;line-height:1.3;color:var(--ouro-claro)}
.ev:last-child .ad-foto{border-color:rgba(198,144,83,.75);box-shadow:0 0 0 4px rgba(198,144,83,.12)}
.ev:last-child figcaption{background:linear-gradient(120deg,rgba(198,144,83,.95),rgba(147,101,49,.95));border-color:transparent}
.ev:last-child figcaption b,.ev:last-child figcaption span{color:#181108}
.evolucao>.reveal:nth-child(2){transition-delay:.08s}
.evolucao>.reveal:nth-child(3){transition-delay:.16s}
.evolucao>.reveal:nth-child(4){transition-delay:.24s}

/* comparadores: a foto do depois embaixo, a do antes recortada por cima até a divisa (--pos) */
.comparas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.compara-item{margin:0}
.compara{--pos:50%;position:relative;overflow:hidden;border-radius:var(--r-g);border:1px solid rgba(198,144,83,.4);background:var(--superficie);
  box-shadow:0 30px 70px -40px rgba(0,0,0,.9);touch-action:pan-y;user-select:none;-webkit-user-select:none}
.compara img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.compara-antes{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.compara-linha{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;margin-left:-1px;background:linear-gradient(#dfc19f,#c69053);pointer-events:none;box-shadow:0 0 18px rgba(198,144,83,.6)}
.compara-linha i{position:absolute;top:50%;left:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(140deg,#e1c5a5,#bb813e);color:#181108;box-shadow:0 8px 24px rgba(0,0,0,.45)}
.compara-linha svg{fill:none}
.compara-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;-webkit-appearance:none;appearance:none;touch-action:pan-y}
.compara-range:focus-visible+*{outline:none}
.compara:has(.compara-range:focus-visible){outline:2px solid var(--ouro-claro);outline-offset:3px}
.compara-tag{position:absolute;top:12px;padding:5px 11px;border-radius:999px;font:600 10.5px/1.2 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;pointer-events:none}
.compara-tag-antes{left:12px;background:rgba(25,17,13,.84);color:var(--areia);border:1px solid rgba(250,246,242,.25)}
.compara-tag-depois{right:12px;background:linear-gradient(120deg,#dfc19f,#c69053);color:#181108}
.compara-item figcaption{margin-top:14px;display:flex;flex-direction:column;gap:4px}
.compara-item figcaption b{font:600 19px/1.2 var(--f-titulo);color:var(--areia)}
.compara-item figcaption span{font-size:14.5px;color:var(--texto-2)}
.comparas>.reveal:nth-child(2){transition-delay:.09s}
.comparas>.reveal:nth-child(3){transition-delay:.18s}

/* o dia do transplante e o aviso */
.dia .ad-foto img{aspect-ratio:4/5}
.aviso-res{margin-top:26px;font-size:13px;color:var(--texto-2);max-width:760px}

/* o doutor: quatro fotos */
.antes-depois-4{grid-template-columns:repeat(4,minmax(0,1fr))}

@media (max-width:980px){
  .evolucao{grid-template-columns:repeat(2,minmax(0,1fr))}
  .comparas{grid-template-columns:repeat(2,minmax(0,1fr))}
  .antes-depois-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .evolucao{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--gutter)*-1);padding:6px var(--gutter) 10px;scrollbar-width:none;overscroll-behavior-x:contain}
  .evolucao::-webkit-scrollbar{display:none}
  .evolucao .ev{flex:0 0 min(72vw,300px);scroll-snap-align:center}
  .evolucao>.reveal{transition-delay:0s}
  .comparas{grid-template-columns:1fr;gap:34px}
  .compara-item{max-width:420px;margin-inline:auto;width:100%}
  .antes-depois-4{display:flex}
}

/* ajustes depois da revisão: título do topo em 3 linhas, comparadores maiores, cartões em 3 colunas */
h1{font-size:clamp(40px,4.6vw,64px)}
.comparas{grid-template-columns:repeat(2,minmax(0,1fr));max-width:920px;margin-inline:auto;gap:30px}
.giros-6{grid-template-columns:repeat(3,minmax(0,1fr))}
.giros-6 .giro{aspect-ratio:4/5}
@media (max-width:980px){.giros-6{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.comparas{grid-template-columns:1fr}.giros-6 .giro{aspect-ratio:3/4}}


/* =====================================================================
   Clínica Affettuosa: o que muda em relação ao Dr. Davi Souza
   Cores das artes dela no Instagram: o degradê de marrom café e o creme, com o caramelo do tronco e o verde das folhas da árvore.
   Títulos em Cormorant (a serifa fina das artes), o nome em Cinzel (as capitulares do logo "CLÍNICA AFFETTUOSA").
   A árvore é vetor: #i-marca (uma cor) e #i-marca-cor (tronco em degradê e folhas verdes).
   Seções novas: lista de especialidades (folhinhas) e os planos de emagrecimento.
   ===================================================================== */
:root{
  --f-titulo:Cormorant,Georgia,serif;
  --f-marca:Cinzel,Georgia,serif;
  --ouro:#c69053;--ouro-claro:#e4cbae;
  --caramelo:#c69053;--caramelo-claro:#e4cbae;
  --folha:#be9075;--folha-escura:#654330;
}
h1,h2{font-family:var(--f-titulo);font-weight:600;letter-spacing:-.012em;line-height:1.02}
h1{font-size:clamp(48px,5.8vw,84px)}
h2{font-size:clamp(36px,4.2vw,58px)}
h1 em,h2 em{font-style:italic;font-weight:600;color:var(--caramelo-claro)}
.secao-papel h2 em,.secao-papel .cabeca h2 em{color:#8e622f}
.secao-papel .olho{color:#7f572a}
.marcado{background:linear-gradient(105deg,#e4cbae 0 40%,#fff4e6 50%,#e4cbae 60% 100%);background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text}
.rail strong{font-family:var(--f-titulo);font-weight:600;letter-spacing:-.01em;font-size:clamp(32px,3vw,42px)}
.frente-texto h3,.verso-texto h3,.sorr-topo h3{font-family:var(--f-titulo);font-weight:600;letter-spacing:-.005em}
.frente-texto h3{font-size:clamp(27px,2.2vw,32px);line-height:1.02}
.verso-texto h3{font-size:28px;line-height:1.05}
.sorr-topo h3{font-size:clamp(27px,2.4vw,34px);line-height:1.06}
.sorr-abas b,.marco b,.trilha-lista b{font-family:var(--f-titulo);font-weight:600;letter-spacing:0}
.sorr-abas b{font-size:1.25em}
.trilha-lista b{font-size:1.35em}
.marco b{font-size:30px}
.faq summary{font-family:var(--f-titulo);font-weight:600;font-size:23px;letter-spacing:0}
.agenda-capa b{font-family:var(--f-titulo);font-weight:600;font-size:clamp(32px,3vw,40px)}
.horas strong{font-family:var(--f-titulo);font-weight:600;font-size:1.2em}
.leque-legenda{font-family:var(--f-titulo);font-weight:600;font-size:30px;letter-spacing:0}
.hero-foto figcaption b{font-family:var(--f-titulo);font-weight:600;font-size:1.3em}
.nota-google b{font-family:var(--f-titulo);font-weight:600}
.sub{font-family:var(--f-titulo);font-weight:600;font-size:clamp(28px,2.6vw,34px)}
.plano h3{font-family:var(--f-titulo);font-size:34px}
.compara-item figcaption b,.ad figcaption b{font-family:var(--f-titulo);font-size:20px}

/* a marca: a árvore colorida e o nome em capitulares, como no logo */
.marca .marca-simbolo{width:46px;height:46px;flex:none}
.marca .marca-txt{gap:6px}
.marca .marca-nome{font:500 16px/1 var(--f-marca);letter-spacing:.1em;margin-right:0;text-transform:uppercase;color:#fbf4ea}
.marca .marca-txt .marca-sub{font:500 9px/1 var(--f-texto);letter-spacing:.24em;text-transform:uppercase;color:var(--caramelo-claro)}
@media (max-width:560px){
  .marca .marca-simbolo{width:36px;height:36px}
  .marca .marca-nome{font-size:13.5px;letter-spacing:.08em}
  .marca .marca-txt .marca-sub{font-size:7.4px;letter-spacing:.16em}
}
.rodape-logo{width:62px;height:62px}
.rodape-marca .rodape-nome b{font:500 25px/1 var(--f-marca);letter-spacing:.1em;text-transform:uppercase;color:#fbf4ea}
.rodape-marca .rodape-nome>span{font:500 10px/1 var(--f-texto);letter-spacing:.24em;text-transform:uppercase;color:var(--caramelo-claro)}
.hero-marca{color:#e4cbae;opacity:.09}
.verso-mandala{color:#e4cbae;opacity:.12}
.capa-simbolo{width:104px;height:104px}

/* detalhes: estrelas e selo em caramelo, a folhinha verde */
.estrelas{color:#d1a675}
.selo{border-color:rgba(198,144,83,.45);color:#e9d4bd}
.selo .ponto{background:var(--folha)}
.hero-foto .foto-quadro{box-shadow:0 0 0 1px rgba(198,144,83,.55),0 0 0 9px rgba(190,144,117,.08),0 40px 90px -40px rgba(0,0,0,.9)}
.hero-foto figcaption{border-color:rgba(198,144,83,.45)}
.hero-foto figcaption span{color:var(--caramelo-claro)}
.preco{color:#24190c;background:linear-gradient(120deg,#e6cfb4,#c69053)}
.verso-texto small{color:var(--caramelo-claro)}
.btn-grande{background:linear-gradient(118deg,#362419 0%,#9a6a33 50%,#cd9e69 100%)}
.formacao b{color:var(--caramelo-claro);font-family:var(--f-titulo);font-size:26px}

/* especialidades: a lista com folhinhas */
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 12px}
.chips li{display:inline-flex;align-items:center;gap:8px;padding:9px 16px 9px 12px;border-radius:999px;border:1px solid rgba(228,203,174,.22);
  background:rgba(228,203,174,.06);color:#ede8de;font-size:15px;line-height:1.2;transition:border-color .3s,background .3s}
.chips li:hover{border-color:rgba(190,144,117,.6);background:rgba(190,144,117,.1)}
.chips svg{color:var(--folha);flex:none}

/* emagrecimento: três cartões, o do meio (Ouro) em destaque */
.secao-planos{background:rgba(23,16,12,.7)}
.planos{align-items:stretch}
.plano{display:flex;flex-direction:column}
.plano-tag{color:var(--folha)}
.plano-itens{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:10px}
.plano-itens li{position:relative;padding-left:26px;color:#e3ded4;font-size:15.5px;line-height:1.45}
.plano-itens li::before{content:"";position:absolute;left:2px;top:.42em;width:12px;height:7px;border-left:2px solid var(--folha);border-bottom:2px solid var(--folha);transform:rotate(-45deg)}
.plano-destaque{border-color:rgba(228,203,174,.55)}
@media (max-width:900px){.planos{grid-template-columns:1fr}}

/* a equipe: legenda com a especialidade */
.ad figcaption span{font-size:12.5px;line-height:1.3;color:var(--caramelo-claro)}

/* topo: com o nome por extenso, o botão do Instagram só aparece em tela bem larga */
@media (min-width:1321px){.topo-insta{display:none}}
.hero h1{font-size:clamp(46px,5.2vw,78px)}


/* =====================================================================
   Carla Bonfim, estética natural: o que muda em relação à Clínica Affettuosa
   Cores: verde-musgo escuro (os títulos do "Menu de Terapias" dela) e terracota rosada (as argilas e o "Menu"),
   com o verde-sálvia das folhas. A marca é um raminho com flor desenhado em vetor (#i-marca / #i-marca-cor),
   e o nome vai em Cormorant itálico, delicado como as artes dela.
   ===================================================================== */
:root{--folha:#c69f89;--folha-escura:#704b35}
.marca .marca-nome{font:italic 600 25px/1 var(--f-titulo);letter-spacing:.01em;text-transform:none;color:#fbf4ea}
.marca .marca-txt .marca-sub{letter-spacing:.2em}
@media (max-width:560px){.marca .marca-nome{font-size:21px;letter-spacing:0}.marca .marca-txt .marca-sub{font-size:7.6px;letter-spacing:.14em}}
.rodape-marca .rodape-nome b{font:italic 600 34px/1 var(--f-titulo);letter-spacing:0;text-transform:none}
.cartao-endereco .endereco b{font-family:var(--f-titulo);font-size:1.3em;font-weight:600;color:var(--caramelo-claro)}
.cartao-endereco .endereco+.endereco{margin-top:14px}
.hero-marca{opacity:.07}
#loja .planos-pe{margin-top:34px}
@media (min-width:761px){#loja .antes-depois{max-width:1000px;margin-inline:auto}}


/* =====================================================================
   Clínica KI, fisioterapia na Aclimação: o que muda em relação à Carla Bonfim
   Cores: azul-petróleo bem escuro no fundo e o turquesa do kanji 気 da logo (#b47c3c) nos destaques.
   A marca é o kanji Ki vetorizado do logo (#i-marca / #i-marca-cor) e o nome vai em Cinzel espaçado, como no logo.
   ===================================================================== */
.marca .marca-nome{font:500 21px/1 Cinzel,var(--f-titulo);letter-spacing:.14em;text-transform:uppercase;font-style:normal;color:#f2fbfb}
.marca .marca-txt .marca-sub{letter-spacing:.24em}
@media (max-width:560px){.marca .marca-nome{font-size:18px;letter-spacing:.1em}}
.rodape-marca .rodape-nome b{font:500 28px/1 Cinzel,var(--f-titulo);letter-spacing:.14em;text-transform:uppercase;font-style:normal}
.hero-marca{opacity:.09}
#historias .planos-pe{margin-top:34px}
@media (min-width:761px){#historias .antes-depois{max-width:1000px;margin-inline:auto}}
.chips li svg{color:var(--teal)}

/* ---------- topo de partículas (mesmo efeito da Carbon): a logo da KI em partículas sobre um céu estrelado ----------
   O canvas cobre o topo inteiro e passa por baixo da barra; .hero-slot só marca onde a logo fica (particulas.js).
   Enquanto a logo está na tela, a marca da barra fica escondida; quando a rolagem desfaz a logo, ela aparece
   no canto da barra (classe marca-no-topo, de hero-particulas.js). No celular: logo em cima, centralizada, e o texto embaixo. */
.hero-particulas{--h-topo:72px;margin-top:calc(var(--h-topo) * -1);padding-top:calc(var(--h-topo) + clamp(28px,4vw,56px));padding-bottom:clamp(56px,7vw,96px);
  min-height:clamp(640px,100svh,900px);display:flex;align-items:center;background:#17100c}
.hero-particulas .hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,4vw,64px)}
.hero-particulas::before{display:none}
.hero-ceu{position:absolute;inset:0;z-index:-1;pointer-events:none}
.hero-ceu::after{content:"";position:absolute;inset:auto 0 0;height:22%;background:linear-gradient(180deg,rgba(23,16,12,0),var(--tinta))}
.hero-campo{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;transition:opacity .6s}
.hero-campo.is-pronto{opacity:1}
.hero-logo{display:flex;flex-direction:column;align-items:center;min-width:0}
.hero-slot{width:100%;height:clamp(400px,44vw,560px);display:grid;place-items:center;pointer-events:none}
.hero-slot-logo{height:92%;width:auto;max-width:92%;object-fit:contain;opacity:0;transition:opacity .4s}
.sem-particulas .hero-slot-logo{opacity:1}
.hero-logo-sub{display:flex;align-items:center;gap:14px;margin:6px 0 0;font:500 12.5px/1 Cinzel,var(--f-titulo);letter-spacing:.34em;text-transform:uppercase;color:#ead6c2;
  opacity:0;animation:ki-sub 1s 1.25s var(--ease) forwards}
.hero-logo-sub i{display:block;width:clamp(26px,4vw,46px);height:1px;background:linear-gradient(90deg,transparent,rgba(211,170,123,.7))}
.hero-logo-sub i:last-child{transform:scaleX(-1)}
@keyframes ki-sub{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.sem-particulas .hero-logo-sub{animation:none;opacity:1}
@media (prefers-reduced-motion:reduce){.hero-logo-sub{animation:none;opacity:1}}

/* a barra do topo: transparente sobre o céu; a marca só aparece depois que a logo de partículas se desfaz */
html.tem-particulas:not(.marca-no-topo):not(.menu-aberto) .topo{background:transparent;border-bottom-color:transparent}
.topo .marca{transition:opacity .35s .05s,transform .35s .05s var(--ease),visibility 0s}
html.tem-particulas:not(.marca-no-topo) .topo .marca{opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s,transform .25s,visibility 0s linear .25s}

@media (max-width:1000px){
  .hero-particulas{min-height:0;padding-top:calc(var(--h-topo) + 14px);padding-bottom:64px;display:block}
  .hero-particulas .hero-grid{grid-template-columns:minmax(0,1fr);gap:18px}
  .hero-logo{order:-1}
  .hero-slot{height:clamp(250px,58vw,400px)}
  .hero-logo-sub{font-size:11px;letter-spacing:.3em;margin-top:2px}
  .hero-particulas .hero-texto{text-align:center;max-width:620px;margin-inline:auto}
  .hero-particulas .selo{margin-bottom:18px}
  .hero-particulas .acoes{justify-content:center}
  .hero-particulas .rail{justify-content:center;justify-items:center;text-align:center}
  .hero-particulas .rail span{margin-inline:auto}
}
@media (max-width:760px){
  .hero-slot{height:clamp(270px,80vw,350px)}
  .hero-particulas h1{font-size:clamp(36px,10.4vw,46px)}
  .hero-particulas .lede{font-size:15.5px}
  .hero-particulas .acoes{flex-direction:column;align-items:stretch;gap:10px}
  .hero-particulas .acoes .btn{width:100%;justify-content:center}
  .hero-particulas .rail{grid-template-columns:repeat(2,1fr);gap:18px 10px;margin-top:30px}
}


/* =====================================================================
   Débora Boutin, nutricionista em Alphaville e Bethaville: o que muda em relação à Mollina Cerimonial
   Cores: café no fundo (o marrom dos destaques dela) e caramelo dourado nos destaques (o aro das capas); papel claro nas seções de texto.
   Títulos em Fraunces, ênfases em Fraunces itálico caramelo. A marca é o nome dela (marca/faz-logo.py → assets/img/logo-debora.png).
   ===================================================================== */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/fraunces-600-latin.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:600;font-display:swap;src:url(assets/fonts/fraunces-600i-latin.woff2) format('woff2')}
:root{
  --f-titulo:Fraunces,Georgia,serif;
  --f-enfase:Fraunces,Georgia,serif;
  --ouro:#e6c196;--ouro-2:#f3dcbf;--ouro-claro:#edd2b2;--papel:#f7f3ee;--papel-texto:#221813;
  --logo-t:#e6c196;--roxo:#e4ba8a;--teal:#edd2b2
}
h1,h2{font-weight:600;letter-spacing:-.015em}
h1 em,h2 em{font-family:var(--f-enfase);font-weight:600;font-style:italic;letter-spacing:-.01em;color:var(--ouro)}
.secao-papel h2 em{color:#9a6328}
.frente-texto h3,.verso-texto h3,.sorr-topo h3,.trilha-lista b,.leque-legenda,.rail strong,.nota-google b{font-weight:600;letter-spacing:-.01em}

/* a marca: o nome dela */
.marca{gap:0}
.marca-logo{display:block;width:190px;height:auto;aspect-ratio:640/119;flex:none}
@media (max-width:560px){.marca-logo{width:146px}}
.rodape-marca{margin-bottom:18px}
.rodape-logo{display:block;width:250px;height:auto}
.capa-simbolo{color:var(--ouro)}
.verso-mandala{opacity:.16;color:var(--ouro)}
.chips li svg{color:var(--ouro)}

/* topo: o nome é deitado (6,3 : 1), então o espaço das partículas é baixo */
.hero-slot{height:clamp(120px,12vw,180px)}
.hero-logo-sub{font:600 italic clamp(22px,2.1vw,30px)/1.1 var(--f-enfase);letter-spacing:-.01em;color:var(--ouro-2);margin-top:18px;text-transform:none}
.hero-logo-sub i{background:linear-gradient(90deg,transparent,rgba(230,193,150,.75))}
@media (max-width:1000px){
  .hero-slot{height:clamp(84px,20vw,140px)}
  .hero-logo-sub{font-size:22px;margin-top:8px}
}
@media (max-width:760px){.hero-slot{height:clamp(72px,24vw,110px)}}

/* vida real: a foto quase inteira (4:5), três por linha no PC */
#vida .ad-foto img{aspect-ratio:4/5}
@media (min-width:761px){#vida .antes-depois{max-width:1080px;margin-inline:auto}}
#vida figcaption b{font-family:var(--f-titulo);font-weight:600;font-size:20px}
#vida .planos-pe{margin-top:34px}

/* retrato das abas com o rosto inteiro */
.eq-foto img{object-position:50% 22%}

/* faixa do que ela trabalha */
.destinos{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;margin:34px auto 0;padding:0;list-style:none;max-width:1000px}
.destinos li{font:500 13px/1.3 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--texto-2);display:flex;align-items:center;gap:10px}
.destinos li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ouro);opacity:.85}
.destinos li b{color:var(--areia);font-weight:600}
.secao-papel .destinos li{color:#6b625d}
.secao-papel .destinos li b{color:var(--papel-texto)}

/* botões do WhatsApp: rosa com letra verde-escura (branco no rosa claro não lia) */
.btn-zap,.zap-flutua{background:#e6c196;color:#1e140f}
.btn-zap:hover{background:#ecceac}
.btn-zap .i,.zap-flutua svg{color:#1e140f}

/* frase de efeito entre seções */
.frase-faixa{padding:clamp(54px,7vw,96px) 0;text-align:center}
.frase-faixa p{margin:0 auto;max-width:880px;font:600 clamp(28px,4.2vw,56px)/1.12 var(--f-titulo);letter-spacing:-.02em;color:var(--areia)}
.frase-faixa p em{font-style:italic;color:var(--ouro)}
.frase-faixa small{display:block;margin-top:18px;font:500 12.5px/1 var(--f-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--texto-2)}

/* seções claras: texto corrido em verde-escuro legível e legenda do leque escura */
.secao-papel .lede,.secao-papel>.container>p,.secao-papel .dupla-texto p{color:#56443a}
.secao-papel .leque-legenda{color:#2c1d15}

/* topo: a foto dela no consultório embaixo do nome (no PC); no celular ela vem depois dos botões */
.hero-foto-n{position:relative;margin:26px 0 0;width:min(100%,470px);border-radius:var(--r-g);overflow:hidden;
  box-shadow:0 0 0 1px rgba(230,193,150,.45),0 0 0 9px rgba(230,193,150,.07),0 40px 80px -34px #000000}
.hero-foto-n img{display:block;width:100%;height:auto;aspect-ratio:5/4;object-fit:cover}
.hero-foto-n figcaption{position:absolute;left:14px;bottom:14px;display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;
  background:rgba(25,17,12,.78);backdrop-filter:blur(6px);font:500 12px/1 var(--f-mono);letter-spacing:.08em;color:var(--areia)}
.hero-foto-n .ponto{width:7px;height:7px;border-radius:50%;background:var(--ouro)}
@media (max-width:1000px){
  .hero-particulas .hero-logo{display:contents}
  .hero-particulas .hero-slot{order:-2}
  .hero-particulas .hero-logo-sub{order:-1;justify-self:center}
  .hero-foto-n{order:1;justify-self:center;margin-top:8px}
}

/* PC: a coluna da direita fica centrada no bloco do título até os botões (sem contar os números de baixo) */
@media (min-width:1001px){
  .hero-slot{height:clamp(110px,10vw,150px)}
  .hero-particulas .hero-logo{margin-bottom:clamp(130px,11.5vw,180px)}
}

/* crédito do rodapé: o nome da CAT N' CLAW leva ao site da agência */
.creditos-link{color:#f2938a;text-decoration:none;font-weight:700;transition:color .25s}
.creditos-link:hover{color:#f8b3ac;text-decoration:underline;text-underline-offset:3px}

/* topo: o Instagram também aparece no PC, colado no Agendar; só o ícone redondo (o mesmo do celular), porque com o nome escrito o topo passa dos 1200px */
@media (min-width:1321px){
  .topo-insta{display:inline-flex;width:42px;padding:0;justify-content:center;margin-left:0}
  .topo-insta span{display:none}
  .topo-agenda{margin-left:-22px}
}

/* cartão do endereço: o CEP não quebra no meio no celular */
.endereco .cep{white-space:nowrap}
