/* Hero D · Aconchegante — Dra. Andressa Gomes */

@font-face{font-family:"Erode";src:url("../fonts/erode-300.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Erode";src:url("../fonts/erode-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Synonym";src:url("../fonts/synonym-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Synonym";src:url("../fonts/synonym-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Synonym";src:url("../fonts/synonym-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
  /* cores tiradas das fotos da clínica e do retrato */
  --marmore-claro:#efe7dd;   /* mármore na luz */
  --marmore:#d6c7b9;         /* mármore areia */
  --marmore-fundo:#c3b2a2;   /* veio/sombra do mármore */
  --boucle:#f6f1ea;          /* bouclé creme */
  --ripado:#a9a597;          /* ripado cinza-sálvia do balcão */
  --ripado-escuro:#857f70;
  --dourado-claro:#d9c39a;
  --dourado:#b19c81;
  --dourado-fundo:#8f7756;
  --caramelo:#a0623a;        /* cadeira do consultório, acento pequeno */
  --led:#ffd7a1;             /* fita de LED morna */
  --tinta:#352b23;           /* texto */
  --tinta-suave:#5f5246;
  --branco:#fffdf9;

  --f-titulo:"Erode", "Iowan Old Style", Georgia, serif;
  --f-texto:"Synonym", "Segoe UI", system-ui, sans-serif;

  --margem:clamp(20px, 5vw, 76px);
  --esp-1:8px; --esp-2:14px; --esp-3:22px; --esp-4:34px; --esp-5:52px;
  --raio:999px;
  --sombra-suave:0 30px 60px -30px rgb(70 50 30 / .35);
  --ease:cubic-bezier(.22,.8,.24,1);
  --topo-h:76px;
}

*,*::before,*::after{box-sizing:border-box}
html,body{margin:0}
body{
  font-family:var(--f-texto);color:var(--tinta);background:var(--marmore-claro);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img{display:block;max-width:100%}
a{color:inherit}

/* ───────── topo ───────── */
.topo{
  position:absolute;inset:0 0 auto 0;z-index:20;height:var(--topo-h);
  display:flex;align-items:center;gap:var(--esp-4);padding:0 var(--margem);
}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none}
.marca__ag{
  width:40px;height:41px;flex:none;
  background:linear-gradient(135deg in oklab,#c9b07f 0%,#e8d6ad 38%,#a88a5a 62%,#cdb688 100%);
  -webkit-mask:url("../img/logo-ag.svg") center/contain no-repeat;
          mask:url("../img/logo-ag.svg") center/contain no-repeat;
}
.marca__nome{white-space:nowrap;font-family:var(--f-titulo);font-weight:600;font-size:18px;letter-spacing:.02em;line-height:1.1;display:flex;flex-direction:column}
.marca__nome small{font-family:var(--f-texto);font-weight:500;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--tinta-suave);margin-top:3px}
.menu{display:flex;gap:30px;margin-left:auto}
.menu a{font-size:14.5px;font-weight:500;text-decoration:none;color:var(--tinta-suave);letter-spacing:.02em;position:relative;padding:6px 0}
.menu a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--dourado-fundo);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.menu a:hover{color:var(--tinta)}
.menu a:hover::after{transform:scaleX(1)}
.topo__zap{
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;
  font-size:14px;font-weight:600;padding:10px 18px;border-radius:var(--raio);
  background:rgb(255 253 249 / .72);border:1px solid rgb(143 119 86 / .35);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  transition:background .3s, border-color .3s;
}
.topo__zap svg{width:17px;height:17px;fill:currentColor}
.topo__zap:hover{background:var(--branco);border-color:var(--dourado-fundo)}

/* ───────── hero ───────── */
.hero{
  position:relative;isolation:isolate;overflow:clip;
  min-height:max(100svh, 700px);
  display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);
}

/* malha: manchas radiais sobrepostas, cores das fotos */
.malha{position:absolute;inset:0;z-index:-2;background:var(--marmore-claro);overflow:hidden}
.malha::before,.malha::after{content:"";position:absolute;inset:-20%;will-change:transform}
.malha::before{
  background:
    radial-gradient(in oklab closest-side at 18% 22%, rgb(250 244 236 / .95), rgb(250 244 236 / 0)),
    radial-gradient(in oklab closest-side at 30% 80%, rgb(222 205 186 / .9), rgb(222 205 186 / 0)),
    radial-gradient(in oklab closest-side at 70% 30%, rgb(214 199 185 / .95), rgb(214 199 185 / 0)),
    radial-gradient(in oklab closest-side at 88% 75%, rgb(196 192 176 / .8), rgb(196 192 176 / 0));
  background-size:100% 100%;
  animation:malha-a 34s ease-in-out infinite alternate;
}
.malha::after{
  background:
    radial-gradient(in oklab closest-side at 62% 62%, rgb(240 214 178 / .75), rgb(240 214 178 / 0)),
    radial-gradient(in oklab closest-side at 8% 55%, rgb(234 224 210 / .8), rgb(234 224 210 / 0)),
    radial-gradient(in oklab closest-side at 50% 8%, rgb(205 189 172 / .55), rgb(205 189 172 / 0));
  animation:malha-b 27s ease-in-out infinite alternate;
  mix-blend-mode:multiply;opacity:.55;
}
@keyframes malha-a{from{transform:translate3d(-3%,-2%,0) scale(1)}to{transform:translate3d(4%,3%,0) scale(1.08)}}
@keyframes malha-b{from{transform:translate3d(3%,2%,0) rotate(0deg)}to{transform:translate3d(-4%,-3%,0) rotate(6deg)}}
/* granulado fino fixo */
.hero::after{
  content:"";position:absolute;inset:0;z-index:15;pointer-events:none;opacity:.05;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 1.1 0'/></filter><rect width='100%' height='100%' filter='url(%23g)'/></svg>");
}

/* ───────── cena: a clínica em planos ───────── */
.cena{
  grid-column:2;grid-row:1;position:relative;container-type:size;
  min-height:100%;
}
.camada{position:absolute;inset:0;will-change:transform}

/* plano do fundo: a recepção, fora de foco */
.painel--longe{
  position:absolute;inset:0;margin:0;
  -webkit-mask-image:radial-gradient(ellipse 85% 80% at 68% 72%, #000 45%, transparent 100%);
          mask-image:radial-gradient(ellipse 85% 80% at 68% 72%, #000 45%, transparent 100%);
}
.painel--longe img{width:100%;height:100%;object-fit:cover;object-position:50% 100%;filter:blur(12px) saturate(.8);opacity:.4;transform:scale(1.1)}

/* painéis em arco com moldura dourada fina (como a porta de vidro) */
.painel{margin:0}
.painel--espera,.painel--recepcao{
  position:absolute;overflow:hidden;
  border-radius:var(--raio) var(--raio) 6px 6px;
  box-shadow:0 0 0 1.5px rgb(177 156 129 / .9), 0 0 0 7px rgb(255 253 249 / .35), var(--sombra-suave);
  background:var(--marmore);
}
.painel--espera{left:1cqw;top:17cqh;width:31cqh;height:70cqh}
.painel--recepcao{right:3cqw;top:9cqh;width:25cqh;height:78cqh}
.painel img{width:100%;height:100%;object-fit:cover}
.painel--espera img{object-position:18% 62%}
.painel--recepcao img{object-position:47% 40%}
/* LED que acende de baixo em cada painel */
.painel--espera::after,.painel--recepcao::after{
  content:"";position:absolute;inset:auto 0 0 0;height:55%;pointer-events:none;
  background:linear-gradient(0deg in oklab, rgb(255 210 150 / .55), rgb(255 210 150 / 0));
  mix-blend-mode:soft-light;opacity:var(--acende,1);
}
.painel figcaption{
  position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:3;white-space:nowrap;
  font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--tinta);
  background:rgb(255 253 249 / .82);padding:6px 12px;border-radius:var(--raio);
}
.painel--espera figcaption{bottom:auto;top:44%;left:auto;right:auto;transform:none;left:14px}
.painel--recepcao figcaption{bottom:auto;top:61%}

/* ripas: o painel ripado que se abre e revela a foto */
.ripas{position:absolute;inset:0;display:flex;z-index:2;perspective:900px;pointer-events:none}
.ripa{
  flex:1;height:100%;transform-origin:50% 50%;
  background:linear-gradient(90deg in oklab,var(--ripado-escuro),var(--ripado) 30%,#c9c5b8 55%,var(--ripado) 80%,var(--ripado-escuro));
  transform:rotateY(0deg);
  transition:transform 1.25s var(--ease);
  transition-delay:calc(var(--i) * 55ms + var(--atraso, 0ms));
  backface-visibility:hidden;
}
.aberta .ripa{transform:rotateY(86deg)}

/* luz quente que sobe do balcão */
.luz-quente{
  position:absolute;inset:auto -10% 0 -10%;height:70%;pointer-events:none;
  background:radial-gradient(in oklab closest-side at 50% 100%, rgb(255 215 161 / .55), rgb(255 215 161 / 0));
  opacity:.9;transition:opacity 1.6s ease .5s;
}
.js .luz-quente{opacity:0}
.js .acesa .luz-quente{opacity:.9}

/* ela, no primeiro plano, recebendo */
.pessoa{
  position:absolute;z-index:4;
  height:70cqh;aspect-ratio:980/1222;
  left:calc(46cqw - 29.7cqh);
  bottom:calc(17cqh - 1.6cqh);
  filter:drop-shadow(0 26px 30px rgb(80 58 38 / .18));
}
.pessoa img{width:100%;height:100%;object-fit:contain;object-position:bottom}

/* balcão ripado com tampo claro e fita de LED (como o da recepção) */
.balcao{position:absolute;z-index:5;left:-3cqw;right:-1px;bottom:0;height:17cqh}
.balcao__tampo{
  position:absolute;inset:0 0 auto 0;height:max(10px,1.5cqh);
  background:linear-gradient(180deg in oklab,#fffdf9,#ece5dc 70%,#cfc5b8);
  box-shadow:0 1px 0 rgb(255 255 255 / .8) inset, 0 6px 14px -6px rgb(60 45 30 / .35);
  border-radius:22px 0 0 0;
}
.balcao__ripas{
  position:absolute;inset:max(10px,1.5cqh) 0 0 0;border-radius:0 0 0 0;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 26px);mask-image:linear-gradient(90deg,transparent 0,#000 26px);
  background:
    linear-gradient(0deg in oklab, rgb(255 205 140 / .55), rgb(255 205 140 / 0) 60%),
    repeating-linear-gradient(90deg in oklab, #8b8676 0 2px, #b3afa1 2px 9px, #c8c4b7 9px 14px, #9f9b8d 14px 19px, #7d786a 19px 21px),
    #a9a597;
  background-blend-mode:soft-light,normal,normal;
  box-shadow:0 14px 26px -12px rgb(50 40 30 / .45) inset;
}
.balcao__ag{
  position:absolute;left:46cqw;top:28%;width:min(6.2cqh,52px);aspect-ratio:3864/3954;transform:translateX(-50%) translateX(3cqw);
  background:linear-gradient(135deg in oklab,#c9b07f 0%,#f1e2bf 40%,#a88a5a 64%,#d6c092 100%);
  -webkit-mask:url("../img/logo-ag.svg") center/contain no-repeat;
          mask:url("../img/logo-ag.svg") center/contain no-repeat;
  filter:drop-shadow(0 0 6px rgb(255 214 150 / .55));
}
.balcao__led{
  position:absolute;left:0;right:0;bottom:7px;height:2px;border-radius:2px;
  background:var(--led);
  box-shadow:0 0 10px 2px rgb(255 215 161 / .9), 0 0 34px 10px rgb(255 205 140 / .5), 0 -20px 50px 12px rgb(255 205 140 / .28);
  transform-origin:50% 50%;
}
.js .balcao__led{transform:scaleX(0);opacity:0;transition:transform 1.3s var(--ease) .25s, opacity .6s ease .25s}
.js .acesa .balcao__led{transform:scaleX(1);opacity:1}

/* ───────── texto ───────── */
.texto{
  grid-column:1;grid-row:1;position:relative;z-index:10;
  align-self:center;
  padding:calc(var(--topo-h) + 30px) 0 56px var(--margem);
  max-width:680px;
}
.sobretitulo{
  display:flex;align-items:center;gap:14px;margin:0 0 var(--esp-3);
  font-size:12.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--dourado-fundo);
}
.sobretitulo .linha{width:44px;height:1px;background:currentColor;display:block}
.titulo{
  font-family:var(--f-titulo);font-weight:300;
  font-size:clamp(42px, 4.75vw, 84px);line-height:1.02;letter-spacing:-.015em;
  margin:0 0 var(--esp-4);color:var(--tinta);
}
.titulo strong{font-weight:600}
.t-linha{display:block;overflow:clip;overflow-clip-margin:.2em;padding-bottom:.06em;white-space:nowrap}
.t-in{display:inline-block}
.apoio{font-size:clamp(17px, 1.3vw, 19px);line-height:1.6;color:var(--tinta-suave);margin:0 0 var(--esp-4);max-width:31em}
.apoio b{font-weight:600;color:var(--tinta)}

.acoes{display:flex;flex-wrap:wrap;align-items:center;gap:var(--esp-2) var(--esp-4);margin-bottom:var(--esp-5)}
.botao{
  display:inline-flex;align-items:center;gap:11px;text-decoration:none;
  background:var(--tinta);color:var(--boucle);
  font-size:16.5px;font-weight:600;letter-spacing:.01em;
  padding:17px 28px 17px 24px;border-radius:var(--raio);
  box-shadow:0 14px 30px -14px rgb(53 43 35 / .7), 0 0 0 0 rgb(255 215 161 / 0);
  transition:transform .4s var(--ease), box-shadow .4s var(--ease), background .3s;
}
.botao svg{width:21px;height:21px;fill:var(--dourado-claro)}
.botao:hover{transform:translateY(-2px);background:#2a221b;box-shadow:0 18px 34px -14px rgb(53 43 35 / .75), 0 0 0 6px rgb(255 215 161 / .35)}
.link-sec{font-size:16px;font-weight:500;text-decoration:none;border-bottom:1px solid rgb(143 119 86 / .55);padding-bottom:3px}
.link-sec span{display:inline-block;transition:transform .4s var(--ease)}
.link-sec:hover span{transform:translateX(4px)}

.prova{
  margin:0 0 var(--esp-3);display:grid;grid-template-columns:auto 1fr;gap:4px 18px;align-items:center;
  padding:18px 22px 18px 18px;border-radius:22px;max-width:470px;
  background:rgb(255 253 249 / .62);border:1px solid rgb(177 156 129 / .35);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}
.prova::before{
  content:"";grid-row:1 / span 2;width:52px;height:52px;border-radius:50%;
  background:
    radial-gradient(circle at 35% 30%, #fffdf9, #efe8de 60%, #ddd3c6);
  box-shadow:inset 0 0 0 1px rgb(177 156 129 / .5);
  -webkit-mask:none;
}
.prova blockquote{margin:0;font-family:var(--f-titulo);font-weight:300;font-size:21px;line-height:1.25;color:var(--tinta)}
.prova figcaption{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:14px;color:var(--tinta-suave)}
.prova__quem{font-weight:500}
.prova__nota{font-weight:600;color:var(--tinta)}
.estrelas{color:var(--dourado-fundo);letter-spacing:.08em;margin-right:4px}
.registro{margin:0;font-size:13.5px;letter-spacing:.03em;color:var(--tinta-suave)}

/* selo AG dentro do círculo da prova (bouclé com a almofada AG) */
.prova{position:relative}
.prova::after{
  content:"";position:absolute;left:31px;top:50%;width:26px;height:27px;transform:translateY(-50%);
  background:var(--dourado-fundo);
  -webkit-mask:url("../img/logo-ag.svg") center/contain no-repeat;
          mask:url("../img/logo-ag.svg") center/contain no-repeat;
}

/* ───────── entrada coreografada (só com JS) ───────── */
.js .sobretitulo,.js .apoio,.js .acoes,.js .prova,.js .registro,.js .topo{opacity:0;transform:translateY(14px);transition:opacity .9s var(--ease), transform .9s var(--ease)}
.js .t-in{transform:translateY(105%);transition:transform 1.1s var(--ease)}
.js .pessoa{opacity:0;transform:translateY(5%);transition:opacity 1.2s ease .35s, transform 1.5s var(--ease) .35s}
.js .painel--espera,.js .painel--recepcao{opacity:0;transition:opacity .9s ease}
.js .painel--longe{opacity:0;transition:opacity 1.6s ease}
.js .painel--espera::after,.js .painel--recepcao::after{opacity:0;transition:opacity 1.4s ease 1s}
.entrou .topo{opacity:1;transform:none;transition-delay:.05s}
.entrou .painel--longe{opacity:1}
.entrou .painel--espera,.entrou .painel--recepcao{opacity:1;transition-delay:.15s}
.entrou .painel--espera::after,.entrou .painel--recepcao::after{opacity:1}
.entrou .pessoa{opacity:1;transform:none}
.entrou .sobretitulo{opacity:1;transform:none;transition-delay:.35s}
.entrou .t-linha:nth-child(1) .t-in{transform:none;transition-delay:.45s}
.entrou .t-linha:nth-child(2) .t-in{transform:none;transition-delay:.6s}
.entrou .apoio{opacity:1;transform:none;transition-delay:.85s}
.entrou .acoes{opacity:1;transform:none;transition-delay:1s}
.entrou .prova{opacity:1;transform:none;transition-delay:1.25s}
.entrou .registro{opacity:1;transform:none;transition-delay:1.4s}

/* telas baixas de notebook/tablet deitado */
@media (max-height:820px) and (min-width:901px){
  .texto{padding-top:calc(var(--topo-h) + 6px);padding-bottom:30px}
  .sobretitulo{margin-bottom:14px}
  .titulo{margin-bottom:20px}
  .apoio{margin-bottom:24px}
  .acoes{margin-bottom:26px}
  .prova{padding:14px 18px 14px 14px}
}

/* ───────── tablet ───────── */
@media (max-width:1180px){
  .menu{gap:22px}
  .menu a:nth-child(4){display:none}
}
@media (max-width:1100px) and (min-width:901px){
  .hero{grid-template-columns:minmax(0,46fr) minmax(0,54fr)}
  .titulo{font-size:clamp(42px, 5.4vw, 64px)}
  .painel--espera{left:3cqw;top:20cqh;width:26cqh;height:66cqh}
  .painel--espera figcaption{display:none}
  .painel--recepcao{right:1cqw;top:8cqh;width:23cqh;height:78cqh}
  .texto{padding-right:28px}
  .pessoa{height:66cqh;left:calc(43cqw - 28cqh)}
  .prova{max-width:420px}
}

/* ───────── celular ───────── */
@media (max-width:900px){
  :root{--topo-h:64px}
  .menu{display:none}
  .topo__zap{margin-left:auto;padding:9px 14px}
  .marca__ag{width:32px;height:33px}
  .marca__nome{font-size:16px}
  .marca__nome small{font-size:9px;letter-spacing:.12em}
  .hero{grid-template-columns:minmax(0,1fr);min-height:0}
  .cena{grid-column:1;grid-row:1;height:min(122vw, 620px);min-height:0;margin-top:var(--topo-h)}
  .painel--espera{left:-6cqw;top:6cqh;width:34cqw;height:90cqh}
  .painel--recepcao{right:-5cqw;top:3cqh;width:34cqw;height:92cqh}
  .painel--recepcao img{object-position:47% 34%}
  .painel--espera img{object-position:22% 60%}
  .painel figcaption{display:none}
  .pessoa{height:82cqh;left:calc(50cqw - 0.53 * 82cqh * 0.802);bottom:calc(14cqh - 1.6cqh)}
  .balcao{height:14cqh;left:-1px}
  .balcao__ag{left:50cqw;transform:translateX(-50%) translateX(6cqw);width:30px;top:30%}
  .texto{grid-column:1;grid-row:2;padding:30px var(--margem) 44px;max-width:none}
  .sobretitulo{font-size:11.5px;margin-bottom:14px}
  .titulo{font-size:clamp(36px, 10.6vw, 58px);margin-bottom:20px}
  .apoio{margin-bottom:26px}
  .acoes{margin-bottom:34px;gap:16px 26px}
  .botao{width:100%;justify-content:center;font-size:16px;padding:17px 20px}
  .prova{max-width:none}
  .prova blockquote{font-size:19px}
}
@media (max-width:440px){
  .marca__nome small{display:none}
}
@media (max-width:380px){
  .topo__zap span{display:none}
  .topo__zap{padding:10px}
  .marca__nome small{display:none}
}

/* ───────── movimento reduzido ───────── */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;transition-delay:0s !important;scroll-behavior:auto !important}
  .camada{transform:none !important}
}
[data-confirmar]{white-space:nowrap}

/* ═════════════════════════ BASE DO SITE (componentes comuns) ═════════════════════════ */
:root{
  --s-claro:#efe7dd;      /* mármore na luz */
  --s-boucle:#f6f1ea;     /* bouclé */
  --s-areia:#e4d8ca;      /* mármore areia mais quente */
  --s-salvia:#cfd2c8;     /* ripado sálvia clareado */
  --s-noite:#2b221c;      /* café da noite (seções escuras) */
  --s-noite-2:#3a2f27;
  --tinta-noite:#f3ebe0;  /* texto sobre a noite */
  --tinta-noite-suave:#cdbfae;
  --dourado-texto:#7a6446;/* dourado para texto miúdo sobre claro (AA) */
  --t-mini:.875rem;       /* 14px: rótulos mínimos */
  --t-corpo:clamp(18px,1.25vw,19.5px);
  --t-h2:clamp(36px,4.2vw,68px);
  --t-h3:clamp(23px,1.8vw,30px);
  --sec-y:clamp(88px,11vw,168px);
}
html{scroll-padding-top:84px}
.wf-sec{position:relative;isolation:isolate;overflow:clip;padding:var(--sec-y) var(--margem);font-size:var(--t-corpo);line-height:1.62}
.wf-sec--claro{background:var(--s-claro)}
.wf-sec--boucle{background:var(--s-boucle)}
.wf-sec--areia{background:var(--s-areia)}
.wf-sec--noite{background:var(--s-noite);color:var(--tinta-noite)}
.wf-miolo{max-width:1280px;margin:0 auto;position:relative}

/* malha de fundo para seções (mesma lógica do hero; a máscara vertical apaga emendas) */
.wf-malha{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 14%,#000 86%,transparent);
          mask-image:linear-gradient(180deg,transparent,#000 14%,#000 86%,transparent)}
.wf-malha::before{content:"";position:absolute;inset:-15%;
  background:
    radial-gradient(in oklab closest-side at var(--m1x,20%) var(--m1y,30%), var(--m1,rgb(250 244 236 / .9)), transparent),
    radial-gradient(in oklab closest-side at var(--m2x,78%) var(--m2y,40%), var(--m2,rgb(214 199 185 / .8)), transparent),
    radial-gradient(in oklab closest-side at var(--m3x,55%) var(--m3y,85%), var(--m3,rgb(240 214 178 / .55)), transparent);
  animation:malha-a 36s ease-in-out infinite alternate}
.wf-sec--noite .wf-malha::before{
  --m1:rgb(255 205 140 / .16);--m2:rgb(169 165 151 / .14);--m3:rgb(143 119 86 / .22)}
.wf-grao::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.05;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 1.1 0'/></filter><rect width='100%' height='100%' filter='url(%23g)'/></svg>")}
.wf-sec--noite.wf-grao::after{mix-blend-mode:screen;opacity:.06}

/* sobretítulo, títulos, apoio */
.wf-sobre{display:flex;align-items:center;gap:14px;margin:0 0 var(--esp-3);font-size:12.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--dourado-texto)}
.wf-sobre::before{content:"";width:44px;height:1px;background:currentColor}
.wf-sec--noite .wf-sobre{color:var(--dourado-claro)}
.wf-titulo{font-family:var(--f-titulo);font-weight:300;font-size:var(--t-h2);line-height:1.04;letter-spacing:-.015em;margin:0 0 var(--esp-4);text-wrap:balance}
.wf-titulo strong{font-weight:600}
.wf-h3{font-family:var(--f-titulo);font-weight:600;font-size:var(--t-h3);line-height:1.15;margin:0 0 10px}
.wf-apoio{color:var(--tinta-suave);max-width:36em;margin:0 0 var(--esp-4)}
.wf-sec--noite .wf-apoio{color:var(--tinta-noite-suave)}

/* botões (mesmos do hero) */
.wf-botao{display:inline-flex;align-items:center;gap:11px;text-decoration:none;background:var(--tinta);color:var(--boucle);font-size:16.5px;font-weight:600;padding:17px 28px 17px 24px;border-radius:var(--raio);box-shadow:0 14px 30px -14px rgb(53 43 35 / .7);transition:transform .4s var(--ease),box-shadow .4s var(--ease),background .3s;min-height:48px}
.wf-botao svg{width:21px;height:21px;fill:var(--dourado-claro)}
.wf-botao:hover{transform:translateY(-2px);background:#2a221b;box-shadow:0 18px 34px -14px rgb(53 43 35 / .75),0 0 0 6px rgb(255 215 161 / .35)}
.wf-sec--noite .wf-botao{background:var(--boucle);color:var(--tinta)}
.wf-sec--noite .wf-botao svg{fill:var(--dourado-fundo)}
.wf-link{display:inline-flex;align-items:center;gap:6px;min-height:48px;font-size:16px;font-weight:500;text-decoration:none;border-bottom:1px solid rgb(143 119 86 / .55)}
.wf-sec--noite .wf-link{border-color:rgb(217 195 154 / .6)}

/* moldura em arco com filete dourado (motivo: os arcos do hero) */
.wf-arco{position:relative;margin:0;overflow:hidden;border-radius:999px 999px 8px 8px;background:var(--marmore);
  box-shadow:0 0 0 1.5px rgb(177 156 129 / .9),0 0 0 7px rgb(255 253 249 / .35),var(--sombra-suave)}
.wf-arco img{width:100%;height:100%;object-fit:cover}
.wf-sec--noite .wf-arco{box-shadow:0 0 0 1.5px rgb(217 195 154 / .8),0 0 0 7px rgb(255 253 249 / .06),0 30px 60px -30px rgb(0 0 0 / .6)}

/* monograma AG como máscara (usa currentColor do fundo dourado) */
.wf-ag{display:inline-block;width:40px;aspect-ratio:3864/3954;
  background:linear-gradient(135deg in oklab,#c9b07f 0%,#efdfb8 40%,#a88a5a 64%,#d6c092 100%);
  -webkit-mask:url("../img/logo-ag.svg") center/contain no-repeat;mask:url("../img/logo-ag.svg") center/contain no-repeat}

/* motivo: ripado com fita de LED (divisor entre seções / base de blocos) */
.wf-balcao{position:relative;height:clamp(54px,7vw,92px);
  background:linear-gradient(0deg in oklab,rgb(255 205 140 / .5),rgb(255 205 140 / 0) 60%),
    repeating-linear-gradient(90deg in oklab,#8b8676 0 2px,#b3afa1 2px 9px,#c8c4b7 9px 14px,#9f9b8d 14px 19px,#7d786a 19px 21px),#a9a597;
  background-blend-mode:soft-light,normal,normal}
.wf-balcao::before{content:"";position:absolute;inset:0 0 auto 0;height:10px;background:linear-gradient(180deg in oklab,#fffdf9,#ece5dc 70%,#cfc5b8);box-shadow:0 6px 14px -6px rgb(60 45 30 / .35)}
.wf-balcao::after{content:"";position:absolute;left:0;right:0;bottom:7px;height:2px;background:var(--led);
  box-shadow:0 0 10px 2px rgb(255 215 161 / .9),0 0 34px 10px rgb(255 205 140 / .5);transform:scaleX(var(--led-x,1));transition:transform 1.4s var(--ease)}
.js .wf-balcao:not(.on)::after{--led-x:0}

/* ripas que se abrem sobre uma foto (WF.ripas cria; abrem quando a foto entra na tela) */
.wf-ripas{position:absolute;inset:0;display:flex;z-index:2;perspective:900px;pointer-events:none}
.wf-ripas>span{flex:1;height:100%;background:linear-gradient(90deg in oklab,var(--ripado-escuro),var(--ripado) 30%,#c9c5b8 55%,var(--ripado) 80%,var(--ripado-escuro));
  transition:transform 1.25s var(--ease);transition-delay:calc(var(--i) * 55ms + var(--atraso,0ms));backface-visibility:hidden}
.wf-ripas.aberta>span{transform:rotateY(86deg)}

/* revelação na rolagem (só com JS; o ritmo é o do hero) */
.js [data-rev]{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform 1.1s var(--ease);transition-delay:var(--atraso,0s)}
.js [data-rev].on{opacity:1;transform:none}

/* citação de paciente (componente) */
.wf-fala{margin:0}
.wf-fala blockquote{margin:0;font-family:var(--f-titulo);font-weight:300;line-height:1.28}
.wf-fala figcaption{margin-top:10px;font-size:var(--t-mini);letter-spacing:.04em;color:var(--tinta-suave)}
.wf-sec--noite .wf-fala figcaption{color:var(--tinta-noite-suave)}

/* topo: fica fixo e compacto depois do hero */
.topo{transition:background .4s,box-shadow .4s,height .4s,opacity .9s var(--ease),transform .9s var(--ease)}
body.rolou .topo{position:fixed;height:64px;background:rgb(246 241 234 / .86);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 0 rgb(143 119 86 / .18)}

/* botão flutuante do WhatsApp (celular) */
.wf-zap{position:fixed;right:16px;bottom:16px;z-index:40;display:none;align-items:center;gap:8px;padding:14px 18px;border-radius:999px;background:var(--tinta);color:var(--boucle);text-decoration:none;font-weight:600;font-size:15px;box-shadow:0 14px 30px -10px rgb(40 30 20 / .55);transition:opacity .4s,transform .4s var(--ease);min-height:48px}
.wf-zap svg{width:20px;height:20px;fill:var(--dourado-claro)}
@media (max-width:900px){.wf-zap{display:inline-flex}}
.wf-zap.some{opacity:0;transform:translateY(20px);pointer-events:none}

:focus-visible{outline:2px solid var(--dourado-fundo);outline-offset:3px;border-radius:4px}
.wf-sec--noite :focus-visible{outline-color:var(--dourado-claro)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media (max-width:900px){ .wf-sec{padding:clamp(72px,18vw,104px) var(--margem)} }
@media (prefers-reduced-motion:reduce){ .js [data-rev]{opacity:1;transform:none} .wf-ripas{display:none} }

/* ═════ fd ═════ */
/* fd · Mãos de fada (noite) — o retrato dela num nicho em arco e um fio de luz que sai da mão e acende as falas */
.fd{--fd-x:57%;--fd-y:39.5%; /* ponta dos dedos no recorte */
  background:
    radial-gradient(in oklab 60% 50% at 22% 62%, rgb(255 205 140 / .10), transparent),
    var(--s-noite)}
.fd-malha::before{--m1x:18%;--m1y:60%;--m1:rgb(255 205 140 / .14);--m2x:82%;--m2y:22%;--m2:rgb(169 165 151 / .10);--m3x:60%;--m3y:92%;--m3:rgb(143 119 86 / .18)}

.fd-palco{display:grid;grid-template-columns:minmax(0,11fr) minmax(0,12fr);grid-template-areas:"ret cab" "ret tempos";column-gap:clamp(40px,5vw,88px);align-items:start}
.fd-cab{grid-area:cab;position:relative;z-index:2}
.fd-titulo{max-width:13em;margin-bottom:clamp(40px,5vw,72px)}
.fd-titulo strong{color:#fff3df;text-shadow:0 0 28px rgb(255 205 140 / .35)}

/* ── retrato no nicho (acompanha a leitura no computador) ── */
.fd-retrato{grid-area:ret;align-self:stretch;position:relative;z-index:1}
.fd-fig{position:sticky;top:104px;width:min(100%, calc((100svh - 190px) / 1.268));margin:0 auto 12px}
.fd-fig::before{content:"";position:absolute;left:-10%;right:-16%;top:35%;bottom:-14%;z-index:-1;pointer-events:none;
  background:radial-gradient(in oklab closest-side at 55% 80%, rgb(255 205 140 / .22), rgb(255 205 140 / 0))}
.fd-nicho{position:absolute;left:17%;width:76%;top:20%;bottom:0;border-radius:999px 999px 8px 8px;
  background:
    radial-gradient(in oklab closest-side at 50% 100%, rgb(255 205 140 / .42), rgb(255 205 140 / 0)),
    linear-gradient(180deg in oklab, #7d8885, #4f4a41 62%, #3a2f27);
  box-shadow:0 0 0 1.5px rgb(217 195 154 / .85),0 0 0 7px rgb(255 253 249 / .05),0 40px 80px -30px rgb(0 0 0 / .7)}
.fd-foto{position:relative;width:100%;height:auto;
  /* arco (círculo + corpo) somado à cabeça, que sai por cima do arco */
  -webkit-mask:
    radial-gradient(circle closest-side,#000 99.4%,transparent 100%) 70.83% 49.9% / 76% 59.95% no-repeat,
    linear-gradient(#000,#000) 70.83% 100% / 76% 50.1% no-repeat,
    radial-gradient(closest-side,#000 99%,transparent 100%) 46.7% 4.5% / 42% 36% no-repeat;
          mask:
    radial-gradient(circle closest-side,#000 99.4%,transparent 100%) 70.83% 49.9% / 76% 59.95% no-repeat,
    linear-gradient(#000,#000) 70.83% 100% / 76% 50.1% no-repeat,
    radial-gradient(closest-side,#000 99%,transparent 100%) 46.7% 4.5% / 42% 36% no-repeat}
.fd-tampo{position:absolute;left:9%;right:-2%;bottom:-12px;height:12px;border-radius:6px 6px 2px 2px;
  background:linear-gradient(180deg in oklab,#fffdf9,#ece5dc 70%,#cfc5b8);box-shadow:0 18px 30px -10px rgb(0 0 0 / .6)}
.fd-tampo::after{content:"";position:absolute;left:4%;right:4%;top:100%;height:2px;margin-top:5px;background:var(--led);border-radius:2px;
  box-shadow:0 0 10px 2px rgb(255 215 161 / .9),0 0 34px 10px rgb(255 205 140 / .45)}

/* a faísca na ponta dos dedos: estrela fina de quatro pontas que cintila */
.fd-faisca{position:absolute;left:var(--fd-x);top:var(--fd-y);width:44px;height:44px;margin:-22px 0 0 -22px;z-index:4;pointer-events:none}
.fd-faisca::before,.fd-faisca::after{content:"";position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%)}
.fd-faisca::before{width:100%;height:2px;background:linear-gradient(90deg,rgb(255 236 200 / 0),#fff8ea 50%,rgb(255 236 200 / 0))}
.fd-faisca::after{width:2px;height:100%;background:linear-gradient(180deg,rgb(255 236 200 / 0),#fff8ea 50%,rgb(255 236 200 / 0))}
.fd-faisca i{position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-4.5px;border-radius:50%;background:#fffaf0;
  box-shadow:0 0 8px 3px rgb(255 225 180 / .95),0 0 26px 10px rgb(255 205 140 / .45)}
.fd-faisca{animation:fd-cintila 4.2s ease-in-out infinite}
@keyframes fd-cintila{0%,100%{transform:scale(.7) rotate(0deg);opacity:.7}45%{transform:scale(1.08) rotate(12deg);opacity:1}55%{transform:scale(1) rotate(15deg);opacity:1}}

/* ── o fio de luz ── */
.fd-fio{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:3}
.fd-fio path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.fd-fio__trilho{stroke:rgb(217 195 154 / .22);stroke-width:1}
.fd-fio__luz,.fd-fio__ponte{stroke:var(--led);stroke-width:1.6;filter:drop-shadow(0 0 3px rgb(255 215 161 / .95)) drop-shadow(0 0 10px rgb(255 205 140 / .55))}
.fd-fio__luz{transition:stroke-dashoffset 1.6s var(--ease)}
.fd-fio__ponte{stroke-width:1.3;opacity:0;transition:opacity .6s ease}
.fd-fio__ponte.on{opacity:1}
.fd-fio__ponte.desenha{transition:opacity .4s ease,stroke-dashoffset 1.5s var(--ease)}
.fd-fio__conta{fill:#fffaf0;opacity:0;filter:drop-shadow(0 0 4px #ffd7a1) drop-shadow(0 0 12px rgb(255 205 140 / .9))}
/* varredura de luz nas palavras do apelido, uma vez, quando o tempo 02 acende */
.fd-brilho{background:linear-gradient(100deg,#fff3df 0 40%,#fffdf6 47%,#ffd7a1 50%,#fffdf6 53%,#fff3df 60% 100%) 100% 0 / 300% 100% no-repeat;
  -webkit-background-clip:text;background-clip:text}
.js .fd-brilho{-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(0 0 18px rgb(255 205 140 / .4))}
.fd-tempo.acesa .fd-brilho{animation:fd-varre 2.2s var(--ease) .7s both}
@keyframes fd-varre{from{background-position:100% 0}to{background-position:0% 0}}

/* ── os quatro tempos ── */
.fd-tempos{grid-area:tempos;list-style:none;margin:0;padding:0 0 0 clamp(44px,4vw,60px);position:relative;z-index:2;display:grid;gap:clamp(56px,6.5vw,104px)}
.fd-tempo{position:relative;transition:opacity 1.1s var(--ease)}
.js .fd-tempo:not(.acesa){opacity:.26}
.fd-ponto{position:absolute;left:calc(-1 * clamp(44px,4vw,60px) - 8.5px);top:-3px;width:30px;height:30px;opacity:.5;transform:scale(.6);transition:opacity .8s,transform 1.2s var(--ease)}
/* marcador: a mesma estrela fina da faísca (não um ponto), apagada até a luz chegar */
.fd-ponto::before,.fd-ponto::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%}
.fd-ponto::before{width:100%;height:1.5px;background:linear-gradient(90deg,rgb(255 236 200 / 0),#ffe9c6 50%,rgb(255 236 200 / 0))}
.fd-ponto::after{width:1.5px;height:100%;background:linear-gradient(180deg,rgb(255 236 200 / 0),#ffe9c6 50%,rgb(255 236 200 / 0))}
.fd-tempo.acesa .fd-ponto,html:not(.js) .fd-ponto{opacity:1;transform:scale(1);filter:drop-shadow(0 0 4px rgb(255 215 161 / .9)) drop-shadow(0 0 10px rgb(255 205 140 / .6))}
.fd-rot{display:flex;align-items:baseline;gap:12px;margin:0 0 16px;font-size:12.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--dourado-claro)}
.fd-rot span{font-family:var(--f-titulo);font-weight:300;font-size:15px;letter-spacing:.06em;color:var(--tinta-noite-suave)}

.fd-fala blockquote{font-size:clamp(23px,2vw,30px);color:var(--tinta-noite)}
.fd-fala--eco{margin-top:22px;padding-left:20px;border-left:1px solid rgb(217 195 154 / .3)}
.fd-fala--eco blockquote{font-size:clamp(19px,1.45vw,22px);color:var(--tinta-noite-suave)}
.fd-fala--nome blockquote{font-size:clamp(34px,3.7vw,58px);line-height:1.08;letter-spacing:-.01em}
.fd-fala--nome b{font-weight:600;color:#fff3df;text-shadow:0 0 30px rgb(255 205 140 / .45)}

.fd-dela{margin:0}
.fd-dela blockquote{margin:0}
.fd-dela p{margin:0}
.fd-dela__grito{font-family:var(--f-titulo);font-weight:600;font-size:clamp(28px,2.7vw,42px);line-height:1.1;color:var(--tinta-noite)}
.fd-dela .fd-dela__resto{margin-top:12px;font-family:var(--f-titulo);font-weight:300;font-size:clamp(20px,1.55vw,24px);line-height:1.4;color:var(--tinta-noite-suave);max-width:30em}
.fd-dela figcaption{display:flex;align-items:center;gap:12px;margin-top:18px;font-size:var(--t-mini);letter-spacing:.04em;color:var(--tinta-noite-suave)}
.fd-ag{width:26px;flex:none}

.fd-promessa{margin:0;font-family:var(--f-titulo);font-weight:300;font-size:clamp(30px,3vw,46px);line-height:1.16;color:#fff3df;max-width:17em}
.fd-promessa__quem{display:flex;align-items:center;gap:12px;margin:16px 0 0;font-size:var(--t-mini);letter-spacing:.04em;color:var(--tinta-noite-suave)}
.fd-fecho{margin-top:clamp(44px,4.5vw,64px);padding-top:clamp(30px,3vw,40px);border-top:1px solid rgb(217 195 154 / .22)}
.fd-convite{margin:0 0 26px;color:var(--tinta-noite-suave);max-width:32em}
.fd-convite b{display:block;font-family:var(--f-titulo);font-weight:600;font-size:clamp(23px,1.8vw,28px);line-height:1.2;color:var(--tinta-noite);margin-bottom:8px}
.fd-conta{margin:26px 0 0;font-size:var(--t-mini);color:var(--tinta-noite-suave);max-width:36em;opacity:.9}

/* ── celular ── */
@media (max-width:900px){
  .fd-palco{grid-template-columns:minmax(0,1fr);grid-template-areas:"cab" "ret" "tempos"}
  .fd-titulo{margin-bottom:24px}
  .fd-fig{position:relative;top:auto;width:min(116%,540px);margin:0 0 76px 50%;transform:translateX(-55%)}
  .fd-tempos{padding-left:36px;gap:60px}
  .fd-ponto{left:-44.5px}
  .fd-botao{width:100%;justify-content:center}
  .fd-tampo{left:14%;right:4%}
  .fd-rot{letter-spacing:.16em}
}
@media (prefers-reduced-motion:reduce){.fd-faisca{animation:none}.js .fd-tempo:not(.acesa){opacity:1}}

/* ═════ cl ═════ */
/* cl · A clínica (claro) — três arcos de alturas crescentes sobre o balcão ripado: recepção → sala de espera → consultório */
.cl{padding-bottom:0}
.cl-malha::before{--m1x:16%;--m1y:24%;--m2x:84%;--m2y:56%;--m3x:48%;--m3y:80%;--m3:rgb(240 214 178 / .6)}

.cl-cab{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,6vw,110px);align-items:end;margin-bottom:clamp(48px,6vw,88px)}
.cl-titulo{margin:0;max-width:11.5em}
.cl-apoio{margin:24px 0 0;font-size:17px;max-width:30em}
.cl-fala-cab blockquote{font-size:clamp(28px,2.7vw,42px);line-height:1.12;color:var(--tinta)}

/* a sala: os arcos em pé sobre o balcão */
.cl-sala{position:relative;margin:0 calc(-1 * var(--margem))}
.cl-passos{list-style:none;margin:0 auto;padding:0 var(--margem);max-width:calc(1280px + 2 * var(--margem));
  display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,.96fr) minmax(0,1.18fr);gap:clamp(20px,3vw,48px);align-items:end}
.cl-passo{display:flex;flex-direction:column;min-width:0}
.cl-rot{display:flex;align-items:baseline;gap:10px;margin:0 0 16px;font-size:12.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--dourado-texto)}
.cl-rot span{font-family:var(--f-titulo);font-weight:300;font-size:15px;letter-spacing:.06em;color:var(--tinta-suave)}
.cl-arco{width:100%}
.cl-passo--recepcao .cl-arco{height:clamp(300px,30vw,440px)}
.cl-passo--espera .cl-arco{height:clamp(360px,36vw,530px)}
.cl-passo--consultorio .cl-arco{height:clamp(420px,42vw,620px)}
.cl-passo--recepcao img{object-position:20% 100%;transform:scale(1.75);transform-origin:18% 98%}
.cl-passo--espera img{object-position:46% 58%}
.cl-passo--consultorio img{object-position:64% 62%}
/* luz morna do LED subindo em cada arco: acende junto com o balcão */
.cl-arco::after{content:"";position:absolute;inset:auto 0 0 0;height:50%;pointer-events:none;z-index:3;
  background:linear-gradient(0deg in oklab,rgb(255 205 140 / .7),rgb(255 210 150 / 0));mix-blend-mode:soft-light;opacity:.25;transition:opacity 1.6s ease 1.2s}
.cl-sala.cl-acesa .cl-arco::after{opacity:1}
/* sombra de contato no tampo: o arco pisa no balcão */
.cl-passo{position:relative}
.cl-passo::after{content:"";position:absolute;left:6%;right:6%;bottom:-14px;height:16px;z-index:3;pointer-events:none;
  background:radial-gradient(in oklab closest-side,rgb(60 45 30 / .32),rgb(60 45 30 / 0))}

.cl-balcao{margin-top:-2px;z-index:2}
/* depois de girar, as ripas desta seção recolhem de vez (a foto fica limpa) */
.cl-arco .wf-ripas>span{transition:transform 1.25s var(--ease),opacity .6s ease;
  transition-delay:calc(var(--i) * 55ms + var(--atraso,0ms)),calc(var(--i) * 55ms + var(--atraso,0ms) + .75s)}
.cl-arco .wf-ripas.aberta>span{opacity:0}
.cl-fala{margin:0 0 22px;max-width:19em}
.cl-fala blockquote{font-size:clamp(20px,1.55vw,24px);color:var(--tinta)}
.cl-balcao::after{transition-delay:.9s}
.cl-dica{display:none}


@media (max-width:900px){
  .cl-cab{grid-template-columns:minmax(0,1fr);gap:22px}
  .cl-titulo{max-width:none}
  .cl-passos{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--margem);
    align-items:flex-end;scrollbar-width:none;padding-top:10px;padding-bottom:0}
  .cl-passos::-webkit-scrollbar{display:none}
  .cl-passo{flex:0 0 min(74vw,340px);scroll-snap-align:start}
  .cl-passo:last-child{margin-right:var(--margem)}
  .cl-passos{align-items:stretch}
  .cl-passo .cl-arco{height:min(96vw,430px);margin-top:auto}
  .cl-dica{display:block;margin:0 var(--margem) 14px;text-align:right;font-size:var(--t-mini);color:var(--tinta-suave);letter-spacing:.04em}
  .cl-fala{margin-bottom:16px}
  .cl-fala blockquote{font-size:19px}
}

/* ═════ pr ═════ */
/* pr · Procedimentos — lista tipográfica + painel em arco que abre pelas ripas */
.pr{--pr-painel:clamp(420px,37vw,520px)}
.pr-malha::before{
  --m1:rgb(255 251 244 / .95);--m1x:12%;--m1y:20%;
  --m2:rgb(228 216 202 / .75);--m2x:84%;--m2y:46%;
  --m3:rgb(246 222 186 / .5);--m3x:70%;--m3y:92%}

/* cabeçalho */
.pr-cabeca{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px 6vw;align-items:end;margin-bottom:clamp(96px,9vw,132px)}
.pr-cabeca .wf-sobre{grid-column:1 / -1;margin-bottom:0}
.pr-titulo{margin:0;max-width:13em}
.pr-bio{margin:0;padding-left:22px;border-left:1px solid rgb(143 119 86 / .4);max-width:30em}
.pr-bio blockquote{margin:0;font-family:var(--f-titulo);font-weight:300;font-size:clamp(20px,1.55vw,24px);line-height:1.34;color:var(--tinta)}
.pr-bio figcaption{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:var(--t-mini);color:var(--tinta-suave)}
.pr-bio-ag{width:24px}

/* palco: lista à esquerda, painel à direita */
.pr-palco{display:grid;grid-template-columns:minmax(0,1fr) var(--pr-painel);grid-template-rows:repeat(6,auto);position:relative}
.pr-item{display:contents}
.pr-h3{grid-column:1;grid-row:var(--n);margin:0;align-self:stretch;display:flex;position:relative;z-index:2}
.pr-gatilho{
  all:unset;box-sizing:border-box;cursor:pointer;width:100%;
  display:grid;grid-template-columns:3.6rem auto minmax(40px,1fr);grid-template-rows:auto auto;column-gap:0;align-content:center;
  padding:clamp(8px,.85vw,13px) 0;
  /* linha só até a parede: não corta o ripado */
  background:linear-gradient(rgb(143 119 86 / .24),rgb(143 119 86 / .24)) 0 0 / calc(100% - 92px) 1px no-repeat;
  -webkit-tap-highlight-color:transparent;
}
.pr-item:last-child .pr-gatilho{background:linear-gradient(rgb(143 119 86 / .24),rgb(143 119 86 / .24)) 0 0 / calc(100% - 92px) 1px no-repeat,linear-gradient(rgb(143 119 86 / .24),rgb(143 119 86 / .24)) 0 100% / calc(100% - 92px) 1px no-repeat}
.pr-num{grid-column:1;grid-row:1;align-self:start;padding-top:.9em;font-size:13px;font-weight:600;letter-spacing:.16em;color:var(--dourado-texto)}
.pr-nome{
  grid-column:2;grid-row:1;font-family:var(--f-titulo);font-weight:300;
  font-size:clamp(44px,4.5vw,76px);line-height:.98;letter-spacing:-.02em;color:rgb(95 82 70 / .8);
  transition:color .6s var(--ease),transform .7s var(--ease);transform-origin:left 70%;
}
.pr-tec{grid-column:2;grid-row:2;font-size:var(--t-mini);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--tinta-suave);margin-top:6px;opacity:.75;transition:opacity .5s}
.pr-fio{grid-column:3;grid-row:1 / span 2;align-self:center;height:1px;margin-left:clamp(18px,2vw,32px);margin-right:calc(-1 * var(--pr-ate,0px));position:relative;
  background:linear-gradient(90deg in oklab,rgb(177 156 129 / 0),var(--dourado) 30%,var(--dourado-fundo));
  transform:scaleX(0);transform-origin:left;transition:transform .9s var(--ease)}
.pr-fio::after{content:"";position:absolute;right:-5px;top:-5px;width:11px;height:11px;border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#fff6e4,#d9c39a 45%,#8f7756);
  box-shadow:0 0 0 3px rgb(255 253 249 / .7),0 0 16px 4px rgb(255 215 161 / .9);opacity:0;transform:scale(.4);transition:opacity .4s .6s,transform .6s var(--ease) .6s}
.pr-mais{display:none}
.pr-gatilho:hover .pr-nome{color:var(--tinta)}
.pr-gatilho:hover .pr-fio{transform:scaleX(.18)}
.pr-gatilho:focus-visible{outline:2px solid var(--dourado-fundo);outline-offset:4px;border-radius:6px}
.pr-aberto .pr-nome{color:var(--tinta);font-weight:600;letter-spacing:-.025em}
.pr-aberto .pr-tec{opacity:1;color:var(--dourado-texto)}
.pr-aberto .pr-fio,.pr-aberto .pr-gatilho:hover .pr-fio{transform:scaleX(1)}
.pr-aberto .pr-fio::after{opacity:1;transform:none}

/* painel em arco (a porta da clínica) */
.pr-moldura,.pr-veu{grid-column:2;grid-row:1 / 7;border-radius:999px 999px 12px 12px;overflow:hidden;position:relative;z-index:1}
/* parede ripada sálvia (o balcão da recepção) onde o arco é um nicho; sangra até a borda */
.pr-parede{grid-column:2;grid-row:1 / 7;position:relative;z-index:0;margin:-56px -50vw -56px -64px;border-radius:14px 0 0 14px;
  background:
    linear-gradient(180deg in oklab,rgb(60 50 40 / .16),rgb(60 50 40 / 0) 30%),
    radial-gradient(in oklab closest-side at calc(64px + var(--pr-painel) / 2) 100%, rgb(255 205 140 / .55), rgb(255 205 140 / 0)),
    repeating-linear-gradient(90deg in oklab,#8b8676 0 2px,#b3afa1 2px 9px,#c8c4b7 9px 14px,#9f9b8d 14px 19px,#7d786a 19px 21px),#a9a597;
  background-size:100% 100%,calc(64px * 2 + var(--pr-painel)) 70%,auto,auto;background-repeat:no-repeat,no-repeat,repeat,repeat;background-position:0 0,0 100%,0 0,0 0;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .25),0 40px 70px -40px rgb(60 45 30 / .5)}
.pr-parede::before{content:"";position:absolute;inset:0 0 auto 0;height:10px;border-radius:14px 0 0 0;background:linear-gradient(180deg in oklab,#fffdf9,#ece5dc 70%,#cfc5b8);box-shadow:0 6px 14px -6px rgb(60 45 30 / .35)}
.pr-moldura{
  background:
    radial-gradient(in oklab closest-side at 50% 12%, rgb(255 253 249 / .95), rgb(255 253 249 / 0)),
    linear-gradient(180deg in oklab,#fbf7f1,#efe7dd 55%,#e2d5c6);
  box-shadow:0 0 0 1.5px rgb(177 156 129 / .9),0 0 0 8px rgb(255 253 249 / .55),0 0 0 9px rgb(177 156 129 / .18),0 50px 80px -40px rgb(70 50 30 / .45);
}
.pr-luz{position:absolute;inset:auto -10% 0 -10%;height:58%;
  background:radial-gradient(in oklab closest-side at 50% 100%, rgb(255 210 150 / .6), rgb(255 210 150 / 0));
  opacity:0;transition:opacity 1.6s ease .6s}
.pr-led{position:absolute;left:12%;right:12%;bottom:16px;height:2px;border-radius:2px;background:var(--led);
  box-shadow:0 0 10px 2px rgb(255 215 161 / .9),0 0 34px 10px rgb(255 205 140 / .45);
  transform:scaleX(0);transition:transform 1.4s var(--ease) .5s}
.pr-palco.on .pr-luz{opacity:1}
.pr-palco.on .pr-led{transform:scaleX(1)}
.pr-veu{z-index:4;pointer-events:none}

/* ripas (criadas pelo JS) */
.pr-ripas{position:absolute;inset:0;display:flex;perspective:1000px;pointer-events:none;z-index:4}
.pr-ripas>span{flex:1;height:100%;backface-visibility:hidden;
  background:linear-gradient(90deg in oklab,var(--ripado-escuro),var(--ripado) 30%,#c9c5b8 55%,var(--ripado) 80%,var(--ripado-escuro));
  transform:rotateY(90deg);opacity:0;
  transition:transform 1.05s var(--ease) calc(var(--i) * 48ms + 80ms),opacity .35s linear calc(var(--i) * 48ms + 620ms)}
.js .pr-palco:not(.on) .pr-veu .pr-ripas>span,
.pr-veu.pr-fecha .pr-ripas>span{transform:none;opacity:1;
  transition:transform .4s cubic-bezier(.55,0,.8,.3) calc(var(--i) * 26ms),opacity .08s linear calc(var(--i) * 26ms)}

/* conteúdo do painel */
.pr-corpo{grid-column:2;grid-row:1 / 7;position:relative;z-index:3;display:flex;
  opacity:0;visibility:hidden;transition:opacity .3s ease,visibility 0s linear .3s}
.pr-aberto .pr-corpo{opacity:1;visibility:visible;transition:opacity .5s ease .05s,visibility 0s}
.pr-dentro{flex:1;display:flex}
.pr-cartao{flex:1;position:relative;display:flex;flex-direction:column;justify-content:center;
  padding:calc(var(--pr-painel) * .44) clamp(36px,3.4vw,54px) clamp(64px,5.4vw,84px)}
.pr-cartao>.pr-ripas{display:none}
.pr-coroa{position:absolute;left:0;right:0;top:calc(var(--pr-painel) * .1);margin:0;text-align:center;
  font-family:var(--f-titulo);font-weight:300;font-size:clamp(64px,6vw,96px);line-height:1;letter-spacing:-.02em;
  background:linear-gradient(160deg in oklab,#c9b07f,#efdfb8 42%,#a88a5a 70%,#d6c092);-webkit-background-clip:text;background-clip:text;color:transparent}
.pr-coroa::after{content:"";display:block;width:56px;height:1px;margin:10px auto 0;background:var(--dourado)}
.pr-rot{position:absolute;left:0;right:0;top:calc(var(--pr-painel) * .1 + clamp(64px,6vw,96px) + 30px);margin:0;text-align:center;font-size:12.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--dourado-texto)}
.pr-oque{margin:0 0 24px;font-family:var(--f-titulo);font-weight:300;font-size:clamp(23px,1.85vw,29px);line-height:1.22;color:var(--tinta);text-wrap:pretty}
.pr-quem{margin:0 0 22px;color:var(--tinta-suave);font-size:var(--t-corpo);line-height:1.55}
.pr-quem-rot{display:block;font-family:var(--f-texto);font-size:var(--t-mini);font-weight:600;letter-spacing:.06em;line-height:1.4;color:var(--dourado-texto);margin-bottom:6px}
.pr-fala{margin:0 0 26px;display:grid;grid-template-columns:26px 1fr;gap:4px 12px;align-items:start}
.pr-fala-ag{width:24px;margin-top:4px;grid-row:1 / span 2}
.pr-fala blockquote{margin:0;font-family:var(--f-titulo);font-weight:300;font-size:19px;line-height:1.35;color:var(--tinta)}
.pr-fala figcaption{font-size:var(--t-mini);color:var(--tinta-suave)}
.pr-botao{align-self:flex-start;margin-top:6px;font-size:15.5px;padding:15px 24px 15px 20px}

/* o texto pousa depois que as ripas abrem */
.js .pr-cartao>:not(.pr-ripas){opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .7s var(--ease)}
.js .pr-palco.on .pr-aberto .pr-cartao>:not(.pr-ripas){opacity:1;transform:none;transition:opacity .8s ease,transform 1s var(--ease)}
.js .pr-palco.on .pr-aberto .pr-cartao>:nth-child(2){transition-delay:.3s}
.js .pr-palco.on .pr-aberto .pr-cartao>:nth-child(3){transition-delay:.38s}
.js .pr-palco.on .pr-aberto .pr-cartao>:nth-child(4){transition-delay:.46s}
.js .pr-palco.on .pr-aberto .pr-cartao>:nth-child(5){transition-delay:.54s}
.js .pr-palco.on .pr-aberto .pr-cartao>:nth-child(6){transition-delay:.62s}
.js .pr-palco.on .pr-aberto .pr-cartao>:nth-child(1){transition-delay:.22s}

/* nota final */
.pr-nota{margin:calc(56px + clamp(40px,4vw,60px)) 0 0;display:grid;grid-template-columns:auto minmax(0,40em) auto;justify-content:start;align-items:center;gap:10px 26px;color:var(--tinta-suave)}
.pr-nota p{margin:0}
.pr-nota-ag{width:34px}
.pr-nota strong{color:var(--tinta);font-weight:600}
.pr-link{color:var(--tinta)}

/* ───── tablet estreito / celular: acordeão ───── */
@media (max-width:900px){
  .pr-cabeca{grid-template-columns:minmax(0,1fr);gap:20px}
  .pr-palco{display:block}
  .pr-item{display:block;border-top:1px solid rgb(143 119 86 / .25)}
  .pr-item:last-child{border-bottom:1px solid rgb(143 119 86 / .25)}
  .pr-moldura,.pr-veu,.pr-fio,.pr-coroa{display:none}
  .pr-h3{display:block}
  .pr-cabeca{margin-bottom:48px}
  .pr-gatilho,.pr-item:last-child .pr-gatilho{grid-template-columns:2.6rem minmax(0,1fr) 48px;padding:16px 0;border:0;min-height:76px;background:none}
  .pr-num{padding-top:.75em}
  .pr-nome{font-size:clamp(34px,9.6vw,48px)}
  .pr-tec{font-size:var(--t-mini);letter-spacing:.1em}
  .pr-mais{display:block;grid-column:3;grid-row:1 / span 2;align-self:center;justify-self:end;width:44px;height:44px;border-radius:50%;
    border:1px solid rgb(143 119 86 / .45);position:relative;transition:background .4s,transform .6s var(--ease)}
  .pr-mais::before,.pr-mais::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;margin:-.75px 0 0 -7px;background:var(--tinta);transition:transform .5s var(--ease)}
  .pr-mais::after{transform:rotate(90deg)}
  .pr-aberto .pr-mais{background:var(--tinta);border-color:var(--tinta)}
  .pr-aberto .pr-mais::before,.pr-aberto .pr-mais::after{background:var(--boucle)}
  .pr-aberto .pr-mais::after{transform:rotate(0deg)}
  .pr-aberto .pr-nome{font-weight:600}

  .pr-corpo{display:grid;grid-template-rows:0fr;opacity:1;transition:grid-template-rows .7s var(--ease),visibility 0s linear .7s}
  .pr-aberto .pr-corpo{grid-template-rows:1fr;transition:grid-template-rows .8s var(--ease),visibility 0s}
  .pr-dentro{min-height:0;overflow:hidden;display:block}
  .pr-cartao{display:block;margin:0 0 24px;padding:26px 20px 44px;border-radius:30px 30px 12px 12px;overflow:hidden;
    border:10px solid transparent;border-top-width:14px;
    background:
      linear-gradient(180deg in oklab,#fdfaf5,#efe7dd 60%,#e6d9ca) padding-box,
      linear-gradient(180deg,#fffdf9 0 5px,#cfc5b8 5px 6px,transparent 6px) border-box,
      repeating-linear-gradient(90deg in oklab,#8b8676 0 2px,#b3afa1 2px 9px,#c8c4b7 9px 14px,#9f9b8d 14px 19px,#7d786a 19px 21px) border-box,
      #a9a597 border-box;
    box-shadow:inset 0 0 0 1.5px rgb(177 156 129 / .85),0 30px 50px -34px rgb(70 50 30 / .5)}
  .pr-cartao::after{content:"";position:absolute;left:14%;right:14%;bottom:12px;height:2px;border-radius:2px;background:var(--led);
    box-shadow:0 0 10px 2px rgb(255 215 161 / .9),0 0 30px 8px rgb(255 205 140 / .4)}
  .pr-cartao>.pr-ripas{display:flex}
  .pr-cartao>.pr-ripas>span{transition:transform 1s var(--ease) calc(var(--i) * 45ms + 260ms),opacity .35s linear calc(var(--i) * 45ms + 760ms)}
  .pr-item:not(.pr-aberto) .pr-cartao>.pr-ripas>span,
  .js .pr-palco:not(.on) .pr-cartao>.pr-ripas>span{transform:none;opacity:1;transition:transform .3s ease,opacity .1s}
  .pr-oque{font-size:23px}
  .pr-rot{display:none}
  .pr-botao{width:100%;justify-content:center;text-align:center;margin-top:6px;font-size:15px;padding:15px 18px;line-height:1.3}
  .pr-nota{grid-template-columns:auto minmax(0,1fr);margin-top:48px}
  .pr-nota .pr-link{grid-column:2;justify-self:start}
  .pr-nota-ag{width:28px;align-self:start;margin-top:4px}
  .pr-parede{display:none}
}
@media (min-width:901px) and (max-width:1100px){
  .pr{--pr-painel:clamp(380px,42vw,440px)}
  .pr-nome{font-size:clamp(40px,4.6vw,54px)}
}
@media (prefers-reduced-motion:reduce){
  .pr-ripas{display:none !important}
  .js .pr-cartao>:not(.pr-ripas){opacity:1;transform:none}
}

/* ═════ so ═════ */
/* so · Quem é a Dra. Andressa — dois arcos de alturas diferentes, as palavras dela, letreiro do ensaio */
.so{padding-bottom:0}
.so-malha::before{
  --m1:rgb(244 234 222 / .9);--m1x:22%;--m1y:30%;
  --m2:rgb(207 210 200 / .55);--m2x:12%;--m2y:70%;
  --m3:rgb(246 216 176 / .55);--m3x:80%;--m3y:62%}

.so-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:clamp(40px,6vw,104px);align-items:start;position:relative;z-index:2}

/* dois arcos, alturas diferentes */
.so-fotos{position:relative;min-height:clamp(560px,52vw,780px);align-self:stretch}
.so-halo{position:absolute;left:-18%;top:-8%;width:110%;aspect-ratio:1;pointer-events:none;
  background:radial-gradient(in oklab closest-side,rgb(155 174 173 / .42),rgb(155 174 173 / 0));z-index:-1}
.so-arco{position:absolute}
.so-arco--estudio{left:0;top:0;width:82%;aspect-ratio:3 / 4.1}
.so-arco--estudio img{object-position:42% 22%}
.so-arco--jardim{right:-2%;bottom:calc(-1 * clamp(110px,10vw,170px));width:50%;aspect-ratio:3 / 4.3;z-index:3;
  box-shadow:0 0 0 1.5px rgb(177 156 129 / .9),0 0 0 9px var(--s-areia),0 0 0 10.5px rgb(177 156 129 / .35),var(--sombra-suave)}
.so-arco--jardim img{object-position:44% 22%}

/* texto */
.so-texto{padding-top:clamp(0px,2vw,24px)}
.so-titulo{margin-bottom:14px;max-width:12em}
.so-dela{display:flex;align-items:center;gap:10px;margin:0 0 clamp(40px,4vw,60px);font-size:var(--t-mini);color:var(--tinta-suave)}
.so-dela-ag{width:22px}
.so-proposito{margin:0 0 clamp(40px,4vw,60px);padding:0 0 0 26px;border-left:1.5px solid var(--dourado)}
.so-proposito blockquote{margin:0;font-family:var(--f-titulo);font-weight:300;font-size:clamp(26px,2.35vw,38px);line-height:1.22;color:var(--tinta);text-wrap:pretty}
.so-proposito em{font-style:normal;font-weight:600}
.so-proposito figcaption{margin-top:12px;font-size:var(--t-mini);color:var(--tinta-suave)}
.so-notas{display:grid;gap:0;margin-bottom:var(--esp-5)}
.so-nota{margin:0;padding:18px 0;border-top:1px solid rgb(143 119 86 / .4);display:grid;grid-template-columns:9.5em minmax(0,1fr);gap:6px 24px;align-items:baseline}
.so-nota:last-child{border-bottom:1px solid rgb(143 119 86 / .4)}
.so-nota-rot{margin:0;font-size:12.5px;font-weight:600;letter-spacing:.18em;line-height:1.5;text-transform:uppercase;color:var(--dourado-texto)}
.so-nota blockquote{margin:0;font-size:var(--t-corpo);line-height:1.58;color:var(--tinta-suave)}
.so-assina{display:flex;align-items:center;gap:18px}
.so-assina p{margin:0;display:flex;flex-direction:column;gap:2px}
.so-assina-ag{width:52px;flex:none}
.so-assina-nome{font-family:var(--f-titulo);font-weight:600;font-size:24px;line-height:1.15;color:var(--tinta)}
.so-assina-reg{font-size:15px;letter-spacing:.03em;color:var(--tinta-suave);line-height:1.5}
.so-assina-nome{margin-bottom:4px}

/* letreiro do ensaio: anda com a rolagem, devagar */
.so-letreiro{position:relative;z-index:1;margin:clamp(40px,4vw,64px) calc(-1 * var(--margem)) 0;padding:0 0 clamp(72px,7vw,120px);overflow:clip}
/* luz de fim de tarde: o dourado morno sobe no pé da seção (depois vem a noite) */
.so::before{content:"";position:absolute;inset:auto 0 0 0;height:min(70%,720px);z-index:-1;pointer-events:none;
  background:
    radial-gradient(in oklab closest-side at 50% 100%,rgb(240 196 140 / .5),rgb(240 196 140 / 0)),
    linear-gradient(0deg in oklab,rgb(214 180 140 / .45),rgb(214 180 140 / 0))}
.so-letreiro-rot{margin:0 auto 6px;max-width:1280px;padding:0 var(--margem);box-sizing:content-box;display:flex;justify-content:flex-end;font-size:12.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--dourado-texto)}
.so-trilho{display:flex;align-items:center;gap:clamp(28px,3vw,52px);width:max-content;padding-left:var(--margem);will-change:transform}
.so-faixa{display:flex;align-items:center;gap:clamp(28px,3vw,52px);white-space:nowrap;width:max-content;
  font-family:var(--f-titulo);font-weight:300;font-size:clamp(54px,8.4vw,136px);line-height:1.1;letter-spacing:-.02em;color:var(--tinta);
  will-change:transform}
.so-faixa b{font-weight:600}
.so-letreiro-rot span{display:flex;align-items:center;gap:14px;width:calc((100% - clamp(40px,6vw,104px)) * 1.04 / 2.04)}
.so-letreiro-rot span::before{content:"";width:44px;height:1px;background:currentColor}
.so-faixa .wf-ag{width:clamp(30px,3.4vw,54px);flex:none}

@media (max-width:900px){
  .so-grade{grid-template-columns:minmax(0,1fr);gap:40px}
  .so-fotos{min-height:0;height:min(128vw,620px);order:2}
  .so-texto{display:contents}
  .so-texto>.wf-sobre,.so-titulo,.so-dela{order:1}
  .so-proposito,.so-notas,.so-assina{order:3}
  .so-grade{display:flex;flex-direction:column;gap:0;align-items:stretch}
  .so-arco--jardim{bottom:0}
  .so-nota{grid-template-columns:1fr}
  .so-dela{margin-bottom:34px}
  .so-fotos{margin-bottom:44px}
  .so-arco--estudio{width:74%}
  .so-arco--jardim{width:48%}
  .so-notas{grid-template-columns:1fr;gap:22px}
  .so-nota blockquote{font-size:17px}
  .so-proposito{padding-left:18px}
  .so-letreiro-rot{justify-content:flex-start}
  .so-letreiro-rot span{width:auto}
  .so-assina{flex-direction:column;align-items:flex-start;gap:14px}
  .so-assina-ag{width:40px}
  .so-assina-reg{letter-spacing:.01em}
  .so-letreiro{margin-top:0;padding-top:64px}
  .so-trilho{display:block;width:auto;padding-left:0;will-change:auto}
  .so-faixa{font-size:clamp(44px,12.5vw,64px);padding-left:var(--margem);will-change:transform}
  .so-faixa+.so-faixa{margin-top:4px}
}
@media (prefers-reduced-motion:reduce){
  .so-trilho{transform:none !important;display:block;width:auto;padding:0 var(--margem)}
  .so-faixa{transform:none !important;white-space:normal;width:auto;flex-wrap:wrap;padding:0;font-size:clamp(36px,5vw,72px)}
}
.so-nq{white-space:nowrap}
@media (min-width:901px) and (max-width:1180px){
  .so-nota{grid-template-columns:1fr;gap:6px}
  .so-arco--jardim{width:56%}
}

/* ═════ av ═════ */
/* av · Avaliações (noite): régua de luz com os temas + uma fala por vez */
.av .wf-malha::before{--m1x:12%;--m1y:70%;--m2x:86%;--m2y:22%;--m3x:60%;--m3y:96%}
.av-miolo{display:flex;flex-direction:column;gap:clamp(40px,5vw,72px)}

.av-cabeca{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px 64px}
.av-titulo{margin:0;max-width:13em}
.av-nota{position:relative;display:grid;grid-template-columns:auto auto;align-items:center;gap:4px 18px;padding-bottom:20px}
.av-nota::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--led);box-shadow:0 0 10px 2px rgb(255 215 161 / .8),0 -8px 30px 6px rgb(255 205 140 / .25);transform-origin:left;transition:transform 1.4s var(--ease) .3s}
.js .av-nota:not(.on)::after{transform:scaleX(0)}
.av-nota p{margin:0}
.av-nota__num{grid-row:1 / span 2;font-family:var(--f-titulo);font-weight:600;font-size:clamp(64px,7vw,112px);line-height:.9;letter-spacing:-.02em;
  background:linear-gradient(160deg in oklab,#f1e2bf 0%,#d9c39a 45%,#a88a5a 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.av-nota__estrelas{color:var(--dourado-claro);letter-spacing:.14em;font-size:20px;line-height:1}
.av-nota__txt{font-size:16px;line-height:1.45;color:var(--tinta-noite-suave);max-width:15em}
.av-nota__txt b{color:var(--tinta-noite);font-weight:600}
.av-nota__txt span{display:block;font-size:var(--t-mini);color:rgb(205 191 174 / .75);margin-top:2px}

.av-corpo{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,4vw,64px);align-items:stretch}

/* régua de luz */
.av-regua{display:flex;flex-direction:column;justify-content:center}
.av-regua__rot{margin:0 0 14px;text-wrap:balance;max-width:24em;line-height:1.6;font-size:12.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--dourado-claro)}
.av-temas{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.av-tema{all:unset;box-sizing:border-box;cursor:pointer;width:100%;min-height:58px;padding:12px 0 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"nome n" "luz luz";align-items:baseline;gap:12px 16px;
  border-bottom:1px solid rgb(217 195 154 / .12);position:relative}
.av-tema__nome{grid-area:nome}
.av-tema__n{grid-area:n}
.av-tema__luz{grid-area:luz}
/* ponto aceso e luz derramada do tema ativo */
.av-tema::before{content:"";position:absolute;left:-18px;top:calc(50% - 12px);width:6px;height:6px;border-radius:50%;background:var(--led);box-shadow:0 0 10px 2px rgb(255 215 161 / .8);opacity:0;transform:scale(.4);transition:opacity .5s,transform .5s var(--ease)}
.av-tema::after{content:"";position:absolute;left:-8%;bottom:-26px;height:46px;width:calc(var(--n) / 11 * 100% + 16%);pointer-events:none;
  background:radial-gradient(in oklab closest-side,rgb(255 205 140 / .2),rgb(255 205 140 / 0));opacity:0;transition:opacity .7s var(--ease)}
.av-tema[aria-pressed="true"]::before{opacity:1;transform:none}
.av-tema[aria-pressed="true"]::after{opacity:1}
.av-tema__nome{font-family:var(--f-titulo);font-weight:300;font-size:clamp(20px,1.6vw,25px);line-height:1.1;color:var(--tinta-noite-suave);transition:color .5s var(--ease)}
.av-tema__n{font-family:var(--f-titulo);font-size:clamp(22px,1.7vw,27px);font-weight:300;line-height:1;color:var(--dourado-claro);font-variant-numeric:tabular-nums lining-nums;opacity:.7;transition:opacity .5s}
.av-tema[aria-pressed="true"] .av-tema__n{font-weight:600}
.av-tema__luz{height:3px;border-radius:2px;width:calc(var(--n) / 11 * 100%);background:var(--led);
  box-shadow:0 0 8px 1px rgb(255 215 161 / .55);opacity:.4;transform-origin:left;transition:opacity .6s var(--ease),box-shadow .6s var(--ease),transform 1.2s var(--ease);
  transition-delay:0s,0s,calc(var(--i) * 120ms + .2s)}
.js .av-regua:not(.on) .av-tema__luz{transform:scaleX(0)}
.av-tema:hover .av-tema__nome{color:var(--tinta-noite)}
.av-tema[aria-pressed="true"] .av-tema__nome{color:var(--tinta-noite);font-weight:600}
.av-tema[aria-pressed="true"] .av-tema__n{opacity:1}
.av-tema[aria-pressed="true"] .av-tema__luz{opacity:1;box-shadow:0 0 10px 2px rgb(255 215 161 / .9),0 0 30px 8px rgb(255 205 140 / .4)}
.av-tema:focus-visible{outline:2px solid var(--dourado-claro);outline-offset:4px}
.av-regua__nota{margin:18px 0 0;font-size:var(--t-mini);line-height:1.5;color:rgb(205 191 174 / .8)}

/* palco */
.av-palco{position:relative;border-radius:28px 28px 10px 10px;padding:clamp(28px,3.4vw,56px) clamp(24px,3.4vw,60px) clamp(30px,2.8vw,40px);
  background:linear-gradient(160deg in oklab,rgb(58 47 39 / .95),rgb(43 34 28 / .6));
  box-shadow:inset 0 0 0 1px rgb(217 195 154 / .18),0 40px 80px -40px rgb(0 0 0 / .6);overflow:clip}
.av-ag{position:absolute;right:clamp(-70px,-3vw,-30px);top:50%;width:clamp(240px,27vw,400px);transform:translateY(-54%);opacity:.13;pointer-events:none}
.av-brilho{position:absolute;right:-6%;top:8%;width:min(46vw,560px);aspect-ratio:1;pointer-events:none;
  background:radial-gradient(in oklab closest-side,rgb(255 205 140 / .16),rgb(255 205 140 / 0))}
.av-trilho{position:relative;z-index:1;display:flex;align-items:flex-start;overflow-x:auto;overflow-y:hidden;transition:height .7s var(--ease);scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.av-trilho::-webkit-scrollbar{display:none}
.av-trilho:focus-visible{outline:2px solid var(--dourado-claro);outline-offset:6px}
.av-fala{flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:start;display:flex;flex-direction:column;align-items:flex-start;padding-right:4px;transition:opacity .9s var(--ease),filter .9s var(--ease)}
.js .av-fala:not(.av-agora){opacity:.12;filter:blur(2px)}
.av-fala__tema{margin:0 0 18px;font-size:12.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--dourado-claro)}
.av-fala blockquote{margin:0}
.av-fala blockquote p{max-width:19em}
.av-fala blockquote p{margin:0;font-family:var(--f-titulo);font-weight:300;font-size:clamp(30px,3vw,48px);line-height:1.17;letter-spacing:-.01em;color:var(--tinta-noite);text-wrap:pretty}
.av-fala figcaption{margin-top:22px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;font-size:16px;color:var(--tinta-noite-suave)}
.av-fala__quem{font-weight:600;color:var(--tinta-noite)}
.av-fala__est{color:var(--dourado-claro);letter-spacing:.1em;font-size:14px}
.av-fala__link{margin-top:18px;display:inline-flex;align-items:center;gap:6px;min-height:48px;font-size:16px;font-weight:500;color:var(--dourado-claro);text-decoration:none}
.av-fala__link:hover{color:var(--tinta-noite)}

/* resposta dela */
.av-resp{margin-top:30px;padding-top:24px;border-top:1px solid rgb(217 195 154 / .16);display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 14px;align-items:start;max-width:36em}
.av-resp__ag{width:30px;grid-row:1 / span 2;margin-top:2px}
.av-resp__rot{margin:0;font-size:var(--t-mini);font-weight:600;letter-spacing:.06em;color:var(--dourado-claro)}
.av-resp__txt{margin:0;font-size:17px;line-height:1.55;color:var(--tinta-noite-suave)}

/* controles */
.av-ctrl{position:relative;z-index:1;display:flex;align-items:center;gap:12px;margin-top:clamp(22px,2.4vw,34px);padding-top:18px;border-top:1px solid rgb(217 195 154 / .14)}
.av-seta{all:unset;box-sizing:border-box;cursor:pointer;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;
  box-shadow:inset 0 0 0 1px rgb(217 195 154 / .45);transition:background .3s,box-shadow .3s}
.av-seta svg{width:20px;height:20px;fill:none;stroke:var(--tinta-noite);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.av-seta:hover{background:rgb(255 215 161 / .1);box-shadow:inset 0 0 0 1px var(--dourado-claro),0 0 18px rgb(255 215 161 / .25)}
.av-seta:focus-visible{outline:2px solid var(--dourado-claro);outline-offset:3px}
.av-seta[disabled]{opacity:.35;cursor:default}
.av-conta{margin:0;min-width:5.2em;text-align:center;font-variant-numeric:tabular-nums;font-size:15px;color:var(--tinta-noite-suave)}
.av-conta__i{color:var(--tinta-noite);font-weight:600}
.av-todas{margin-left:auto;color:var(--tinta-noite)}

/* fita de LED na base do palco: o progresso */
.av-fita{position:absolute;left:0;right:0;bottom:0;height:12px;display:flex;gap:5px;padding:0 0 6px;
  background:linear-gradient(180deg in oklab,rgb(255 253 249 / 0),rgb(255 253 249 / .03))}
.av-fita span{flex:1;height:3px;align-self:flex-end;border-radius:2px;background:rgb(217 195 154 / .14);transition:background .6s,box-shadow .6s}
.av-fita span.visto{background:rgb(255 205 140 / .38)}
.av-fita span.agora{background:var(--led);box-shadow:0 0 10px 2px rgb(255 215 161 / .85),0 -10px 30px 6px rgb(255 205 140 / .3)}

.av-palco::after{content:"";position:absolute;z-index:0;bottom:-120px;left:calc((var(--pos,0) + .5) / 8 * 100%);width:min(70%,560px);height:300px;transform:translateX(-50%);pointer-events:none;
  background:radial-gradient(in oklab closest-side,rgb(255 205 140 / .2),rgb(255 205 140 / 0));transition:left 1s var(--ease)}
.av-todas--cel{display:none;justify-content:center;margin-top:8px;padding:0 20px;border:1px solid rgb(217 195 154 / .5);border-radius:999px;color:var(--tinta-noite)}

/* tablet */
@media (max-width:1100px){
  .av-corpo{grid-template-columns:minmax(0,1fr)}
  .av-regua{order:2}
  .av-temas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px}
}
/* celular */
@media (max-width:900px){
  .av-miolo{gap:36px}
  .av-cabeca{grid-template-columns:minmax(0,1fr);gap:26px}
  .av-nota{justify-self:start}
  .av-temas{display:flex}
  .av-tema{min-height:52px;padding:10px 0;grid-template-columns:minmax(0,1fr) 24% 2.2em;column-gap:12px;grid-template-areas:"nome luz n";align-items:center}
  .av-tema__luz{justify-self:start}
  .av-tema::before{display:none}
  .av-tema::after{left:auto;right:0;width:60%}
  .av-tema__nome{font-size:19px}
  .av-tema__n{text-align:right}
  .av-palco{border-radius:22px 22px 8px 8px;padding:30px 22px 22px;margin:0 calc(var(--margem) * -.4)}
  .av-ag{width:104px;right:-14px;top:18px;transform:none;opacity:.12}
  .av-brilho{width:120vw;right:-50%;top:auto;bottom:-30%}
  .av-fala blockquote p{font-size:clamp(23px,6.4vw,30px);line-height:1.2}
  .av-fala figcaption{font-size:15px;margin-top:18px}
  .av-resp__txt{font-size:16px}
  .av-ctrl{justify-content:space-between}
  .av-ctrl .av-todas{display:none}
  .av-todas--cel{display:flex;align-self:stretch;margin-left:0;margin-top:18px}
}

/* ═════ pc ═════ */
/* pc · Primeira consulta (claro): quatro passos de pé sobre o balcão; o LED acende passo a passo na rolagem */
.pc{padding-bottom:0}
.pc .wf-malha::before{--m1x:80%;--m1y:20%;--m2x:15%;--m2y:60%;--m3x:50%;--m3y:92%}
.pc-cabeca{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"sobre sobre" "titulo apoio";align-items:end;gap:0 clamp(32px,5vw,80px);margin-bottom:clamp(56px,6vw,96px)}
.pc-cabeca .wf-sobre{grid-area:sobre}
.pc-titulo{grid-area:titulo;margin:0}
.pc-apoio{grid-area:apoio;margin:0 0 .4em}

.pc-passos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3vw,48px);align-items:stretch}
.pc-passos{grid-template-rows:auto auto 1fr auto;row-gap:0}
.pc-passo{display:grid;grid-row:span 4;grid-template-rows:subgrid;position:relative}
.pc-txt{display:contents}
.pc-txt>p{margin:0 0 22px;color:var(--tinta-suave)}
.pc-h3{margin-bottom:12px}
.pc-fala{align-self:start;padding-top:18px;border-top:1px solid rgb(143 119 86 / .28)}
.pc-fala blockquote p{margin:0;font-size:clamp(19px,1.35vw,21px);line-height:1.32;color:var(--tinta)}
.pc-fala figcaption{color:var(--dourado-texto);font-weight:500}

/* algarismo dourado, como as letras da placa: contorno apagado, enche de ouro quando o LED passa */
.pc-num{order:2;grid-row:4;position:relative;justify-self:start;margin-top:clamp(30px,3.4vw,52px);margin-bottom:-.035em;font-family:var(--f-titulo);font-weight:600;font-size:clamp(110px,11vw,180px);line-height:.74;letter-spacing:-.02em;
  color:transparent;-webkit-text-stroke:1.4px rgb(122 100 70 / .7)}
.pc-num::after{content:attr(data-n);position:absolute;inset:0;color:transparent;-webkit-text-stroke:0;
  background:linear-gradient(160deg in oklab,#ecdcb4 0%,#c9b07f 38%,#a88a5a 62%,#d6c092 100%);-webkit-background-clip:text;background-clip:text;
  opacity:0;transition:opacity 1s var(--ease);filter:drop-shadow(0 10px 14px rgb(255 190 110 / .35))}
.pc-passo.pc-aceso .pc-num::after{opacity:1}
/* poça de luz no tampo, sob o algarismo aceso */
.pc-num::before{content:"";position:absolute;left:-30%;right:-30%;bottom:-40px;height:70px;pointer-events:none;
  background:radial-gradient(in oklab closest-side,rgb(255 205 140 / .55),rgb(255 205 140 / 0));opacity:0;transition:opacity 1.2s var(--ease) .2s}
.pc-passo.pc-aceso .pc-num::before{opacity:1}
.pc-passos{position:relative;z-index:2}
/* passos que a luz ainda não alcançou ficam em espera */
.pc-h3,.pc-txt>p,.pc-fala{transition:opacity 1s var(--ease),color 1s var(--ease)}
.js .pc-passo:not(.pc-aceso) .pc-txt>p,.js .pc-passo:not(.pc-aceso) .pc-fala{opacity:.45}
.js .pc-passo:not(.pc-aceso) .pc-h3{opacity:.6}
.pc-h3{position:relative}
.pc-h3::before{content:"";position:absolute;left:1px;top:-16px;width:6px;height:6px;border-radius:50%;background:var(--led);box-shadow:0 0 10px 2px rgb(255 205 140 / .9);opacity:0;transform:scale(.3);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.pc-passo.pc-aceso .pc-h3::before{opacity:1;transform:none}

/* balcão: o LED anda com a rolagem */
.pc-balcao{margin:0 calc(var(--margem) * -1);height:clamp(64px,7vw,96px)}
.pc .pc-balcao::after{transform-origin:left;transform:scaleX(var(--pc-prog,0));transition:transform .35s linear}
.pc-balcao__ag{position:absolute;left:50%;top:44%;width:34px;transform:translate(-50%,-50%);filter:drop-shadow(0 0 6px rgb(255 214 150 / .5))}

.pc-fim{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px 40px;padding:clamp(44px,5vw,72px) 0 var(--sec-y)}
.pc-fim__txt{margin:0;font-family:var(--f-titulo);font-weight:300;font-size:clamp(26px,2.4vw,38px);line-height:1.15}
.pc-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:14px 32px}

@media (max-width:1100px) and (min-width:901px){
  .pc-passos{column-gap:22px}
  .pc-txt>p{font-size:17px}
}
@media (max-width:900px){
  .pc-cabeca{grid-template-columns:minmax(0,1fr);grid-template-areas:"sobre" "titulo" "apoio";gap:0;margin-bottom:44px}
  .pc-apoio{margin-top:18px}
  .pc-passos{grid-template-columns:minmax(0,1fr);gap:40px;position:relative;padding-left:0}
  .pc-passos{grid-template-rows:none}
  .pc-passo{display:grid;grid-row:auto;grid-template-rows:none;grid-template-columns:52px minmax(0,1fr);grid-template-areas:"num h" ". p" ". f";gap:0 14px;align-items:start}
  .pc-h3{align-self:end;margin-bottom:12px}
  .pc-h3::before{display:none}
  .pc-h3{grid-area:h}.pc-txt>p{grid-area:p}.pc-fala{grid-area:f}
  .pc-num{grid-area:num;grid-row:auto;margin:0 0 10px;font-size:68px;line-height:.78;justify-self:start;align-self:end}
  .pc-num::before{display:none}
  /* trilho vertical com LED */
  .pc-passos::before,.pc-passos::after{content:"";position:absolute;left:calc(var(--margem) * -.55);top:6px;bottom:0;width:2px;border-radius:2px}
  .pc-passos::before{background:rgb(143 119 86 / .2)}
  .pc-passos::after{background:var(--led);box-shadow:0 0 10px 2px rgb(255 215 161 / .9),0 0 26px 6px rgb(255 205 140 / .45);transform-origin:top;transform:scaleY(var(--pc-prog,0));transition:transform .35s linear}
  .pc-passo>*{position:relative;z-index:1}
  .pc-fala blockquote p{font-size:19px}
  .pc-balcao{height:72px}
  .pc-balcao__ag{width:30px}
  .pc-fim{padding-top:36px}
  .pc-fim{flex-direction:column;align-items:stretch}
  .pc-acoes .wf-botao{width:100%;justify-content:center;padding-left:18px;padding-right:18px}
  .pc-link{display:block;text-align:center;align-self:center;padding:12px 0;line-height:1.45}
}
@media (prefers-reduced-motion:reduce){ .pc{--pc-prog:1} .pc-num::after{opacity:1} }

/* ═════ dv ═════ */
/* 7 · dv — Dúvidas (bouclé): o nicho de mármore com o AG; a luz acompanha a pergunta aberta */
.dv-malha::before{--m1:rgb(255 253 249 / .95);--m1x:12%;--m1y:20%;--m2:rgb(228 216 202 / .75);--m2x:30%;--m2y:70%;--m3:rgb(255 215 161 / .32);--m3x:80%;--m3y:30%}

.dv-miolo{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-areas:"lado cabeca" "lado lista";column-gap:clamp(48px,7vw,120px);align-items:start}
.dv-cabeca{grid-area:cabeca}
.dv-titulo{margin-bottom:var(--esp-3)}
.dv-apoio{margin-bottom:clamp(28px,3.4vw,48px);max-width:30em}

/* ── o nicho ── */
.dv-lado{grid-area:lado;position:sticky;top:calc(64px + 4vh);align-self:start}
.dv-nicho{position:relative;width:100%;max-width:470px;aspect-ratio:47/62;max-height:calc(100vh - 64px - 10vh);margin:0;
  border-radius:999px 999px 10px 10px;overflow:hidden;background:var(--marmore);isolation:isolate;
  box-shadow:0 0 0 1.5px rgb(177 156 129 / .9),0 0 0 8px rgb(255 253 249 / .7),0 0 0 9px rgb(177 156 129 / .25),0 50px 80px -40px rgb(70 50 30 / .45)}
.dv-nicho__pedra{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:sepia(.28) saturate(1.05) brightness(1.1) contrast(.88);transform:scale(1.04)}
/* tom mel por cima da pedra: a parede na luz morna */
.dv-nicho::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg in oklab,rgb(250 228 196 / .38),rgb(214 186 150 / .22) 60%,rgb(255 205 140 / .3));mix-blend-mode:multiply}
.dv-nicho>*{z-index:1}
.dv-nicho__pedra{z-index:0}
/* sanca: luz morna que desce do alto do arco */
.dv-nicho__sanca{position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(in oklab closest-side at 50% 0%,rgb(255 226 184 / .75),rgb(255 226 184 / 0)) 50% 0/130% 70% no-repeat,
             linear-gradient(90deg in oklab,rgb(255 230 190 / 0) 22%,rgb(255 230 190 / .35) 50%,rgb(255 230 190 / 0) 78%),
             linear-gradient(180deg in oklab,rgb(255 248 238 / .3),rgb(70 50 30 / .1));mix-blend-mode:screen;opacity:.7}
.dv-nicho__halo{position:absolute;left:50%;top:9%;width:78%;aspect-ratio:1;transform:translateX(-50%);pointer-events:none;
  background:radial-gradient(in oklab closest-side,rgb(255 222 168 / .95),rgb(255 222 168 / 0));mix-blend-mode:screen;opacity:.8}
.dv-nicho__halo.acende{animation:dv-acende 2.2s var(--ease)}
@keyframes dv-acende{0%{opacity:.8;transform:translateX(-50%) scale(.92)}30%{opacity:1;transform:translateX(-50%) scale(1.12)}100%{opacity:.8;transform:translateX(-50%) scale(1)}}
.dv-nicho__relevo{position:absolute;left:50%;top:15%;width:46%;transform:translateX(-50%);
  filter:drop-shadow(-.6px -.6px 0 rgb(255 246 222 / .9)) drop-shadow(1.5px 2.5px 1.2px rgb(60 38 14 / .55)) drop-shadow(0 16px 22px rgb(60 38 14 / .2))}
.dv-nicho__ag{display:block;width:100%;aspect-ratio:3864/3954;
  background:linear-gradient(115deg in oklab,#a88a5a 0%,#c9b07f 30%,#f6e7c4 44%,#c9b07f 56%,#9c7f50 80%,#c9ae7c 100%) 0 0/260% 100%;
  background-position:var(--dv-brilho,100%) 0;transition:background-position 1.6s var(--ease);
  -webkit-mask:url("../img/logo-ag.svg") center/contain no-repeat;mask:url("../img/logo-ag.svg") center/contain no-repeat}
.dv-nicho__led{position:absolute;left:8%;right:8%;bottom:0;height:2px;background:var(--led);border-radius:2px;
  box-shadow:0 0 10px 2px rgb(255 215 161 / .9),0 -18px 46px 14px rgb(255 205 140 / .45)}

/* fala dela, em vidro bouclé, troca com a pergunta */
.dv-voz{position:absolute;left:7%;right:7%;bottom:7%;display:grid;padding:20px 24px 20px;border-radius:20px;
  background:rgb(250 245 238 / .93);border:1px solid rgb(177 156 129 / .45);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 20px 40px -24px rgb(70 50 30 / .45)}
.dv-voz__f{grid-area:1 / 1;margin:0;opacity:0;transform:translateY(8px);transition:opacity .7s ease,transform .9s var(--ease);align-self:end}
.dv-voz__f.ativa{opacity:1;transform:none;transition-delay:.25s}
.dv-voz__rot{margin:0 0 8px;font-size:12.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--dourado-texto)}
.dv-voz blockquote{margin:0;text-indent:-.42em;font-family:var(--f-titulo);font-weight:300;font-size:clamp(19px,1.45vw,23px);line-height:1.28;color:var(--tinta);text-wrap:pretty}
.dv-voz figcaption{margin-top:10px;font-size:14px;color:var(--dourado-texto);letter-spacing:.02em}

/* ── a lista ── */
.dv-lista{grid-area:lista;position:relative}
.dv-trilho{position:absolute;left:calc(-1 * clamp(24px,3.5vw,60px));top:0;bottom:120px;width:1px;
  background:linear-gradient(180deg,rgb(177 156 129 / 0),rgb(177 156 129 / .55) 8%,rgb(177 156 129 / .55) 92%,rgb(177 156 129 / 0))}
.dv-ponto{position:absolute;left:-4px;top:0;width:9px;height:9px;border-radius:50%;background:var(--led);
  box-shadow:0 0 8px 2px rgb(255 215 161 / .95),0 0 30px 10px rgb(255 205 140 / .45);
  transform:translateY(var(--dv-y,34px));transition:transform 1s var(--ease),opacity .4s}
.dv-ponto::before{content:"";position:absolute;left:4px;top:-60px;width:1px;height:129px;background:linear-gradient(180deg,transparent,var(--led),transparent)}
.dv-lista:not(.tem-aberto) .dv-ponto{opacity:.35}

.dv-item{border-top:1px solid rgb(143 119 86 / .28)}
.dv-item:last-of-type{border-bottom:1px solid rgb(143 119 86 / .28)}
.dv-q{margin:0;font:inherit}
.dv-q button{all:unset;box-sizing:border-box;width:100%;cursor:pointer;display:grid;grid-template-columns:64px minmax(0,1fr) 44px;align-items:center;gap:0 14px;
  padding:clamp(20px,2vw,28px) 0;min-height:48px;color:var(--tinta)}
.dv-q button:focus-visible{outline:2px solid var(--dourado-fundo);outline-offset:4px;border-radius:6px}
.dv-num{font-family:var(--f-titulo);font-weight:300;font-size:clamp(28px,2.4vw,38px);line-height:1;color:var(--dourado-texto);letter-spacing:-.02em;font-variant-numeric:lining-nums tabular-nums;transition:color .4s}
.aberto .dv-num{color:var(--caramelo)}
.dv-item{position:relative}
.dv-item::before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:linear-gradient(90deg in oklab,rgb(255 205 140 / 0),var(--led) 20%,#e9b878 50%,var(--led) 80%,rgb(255 205 140 / 0));
  box-shadow:0 0 12px 1px rgb(255 205 140 / .7);transform:scaleX(0);opacity:0;transition:transform 1.1s var(--ease),opacity .5s}
.dv-item.aberto::before{transform:none;opacity:1}
.dv-pergunta{font-family:var(--f-titulo);font-weight:300;font-size:clamp(23px,2.05vw,32px);line-height:1.15;letter-spacing:-.01em;text-wrap:balance;transition:color .3s}
.aberto .dv-pergunta{font-weight:600}
.dv-q button:hover .dv-pergunta{color:#1f1813}
.dv-sinal{position:relative;width:44px;height:44px;border-radius:50%;border:1px solid rgb(143 119 86 / .5);transition:background .5s var(--ease),border-color .5s}
.dv-sinal::before,.dv-sinal::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;margin:-.75px 0 0 -7px;background:var(--tinta);transition:transform .6s var(--ease),background .4s}
.dv-sinal::after{transform:rotate(90deg)}
.aberto .dv-sinal{background:var(--tinta);border-color:var(--tinta)}
.aberto .dv-sinal::before,.aberto .dv-sinal::after{background:var(--dourado-claro)}
.aberto .dv-sinal::after{transform:rotate(0deg)}
.dv-q button:hover .dv-sinal{border-color:var(--dourado-fundo)}

/* resposta: abre pela altura (grade 0fr → 1fr) */
.dv-resp{display:grid;grid-template-rows:1fr}
.js .dv-resp{grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .8s var(--ease),visibility 0s linear .8s}
.js .aberto .dv-resp{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .8s var(--ease),visibility 0s}
.dv-resp__in{min-height:0;overflow:hidden;padding-left:78px;padding-right:58px;color:var(--tinta-suave)}
.dv-resp__in>:last-child{margin-bottom:clamp(26px,2.6vw,36px)}
.dv-resp__in>*{opacity:1;transform:none}
.js .dv-resp__in>*{opacity:0;transform:translateY(8px);transition:opacity .4s ease,transform .6s var(--ease)}
.js .aberto .dv-resp__in>*{opacity:1;transform:none;transition:opacity .7s ease .2s,transform .9s var(--ease) .2s}
.dv-resp__in p{margin:0 0 16px;max-width:34em}
.dv-resp__in b{color:var(--tinta);font-weight:600}
.dv-cita{margin:6px 0 20px;padding-left:20px;border-left:1.5px solid var(--dourado)}
.dv-cita blockquote{margin:0;font-family:var(--f-titulo);font-weight:300;font-size:clamp(21px,1.6vw,25px);line-height:1.3;color:var(--tinta);text-wrap:pretty}
.dv-cita figcaption{margin-top:8px;font-size:14px;color:var(--dourado-texto);letter-spacing:.02em}
.dv-zap{display:inline-flex;align-items:center;gap:8px;min-height:48px;font-size:16.5px;font-weight:600;color:var(--tinta);text-decoration:none;border-bottom:1px solid rgb(143 119 86 / .6);line-height:1.2}
.dv-zap span{transition:transform .4s var(--ease)}
.dv-zap:hover span{transform:translateX(4px)}
.dv-acoes{display:flex;flex-wrap:wrap;gap:4px 28px}
.dv-zap--sec{font-weight:500}
/* a fala dela no fim da resposta: só no celular (no computador ela está no nicho) */
.dv-assina{display:none}

.dv-fecho{margin-top:clamp(40px,4.4vw,64px);position:relative}
.dv-fecho__tampo{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 28px;
  padding:clamp(22px,2.2vw,30px) clamp(22px,2.4vw,34px);border-radius:16px 16px 4px 4px;
  background:linear-gradient(180deg in oklab,#fffdf9,#f3ece3 80%,#e6dccf);
  box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgb(177 156 129 / .35),0 18px 26px -18px rgb(60 45 30 / .45)}
.dv-fecho__led{height:clamp(46px,4.4vw,60px);margin:0 14px;border-radius:0 0 10px 10px;overflow:hidden}
.dv-fecho__led::before{display:none}
.dv-fecho p{margin:0;font-family:var(--f-titulo);font-weight:300;font-size:clamp(22px,1.8vw,28px);line-height:1.2;color:var(--tinta)}

@media (min-width:901px){
  .dv-assina{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}

/* ── tablet e celular ── */
@media (max-width:1100px) and (min-width:901px){
  .dv-miolo{grid-template-columns:minmax(0,4fr) minmax(0,7fr)}
  .dv-voz{padding:14px 16px;left:6%;right:6%;bottom:5%}
  .dv-voz blockquote{font-size:17px}
  .dv-voz__rot{font-size:11.5px;margin-bottom:6px}
  .dv-voz figcaption{font-size:13px;margin-top:6px}
  .dv-nicho{aspect-ratio:47/70}
  .dv-nicho__relevo{top:10%;width:40%}
}
@media (max-width:900px){
  .dv-miolo{grid-template-columns:minmax(0,1fr) clamp(108px,30vw,170px);grid-template-areas:"sobre sobre" "titulo titulo" "apoio lado" "lista lista";column-gap:20px}
  .dv-cabeca{display:contents}
  .dv-cabeca>.wf-sobre{grid-area:sobre}
  .dv-cabeca>.dv-titulo{grid-area:titulo}
  .dv-cabeca>.dv-apoio{grid-area:apoio;align-self:center;margin:0}
  .dv-lado{position:relative;top:auto;margin:0;align-self:center}
  .dv-nicho{width:100%;max-width:none;aspect-ratio:47/66;max-height:none;margin:0;box-shadow:0 0 0 1.5px rgb(177 156 129 / .9),0 0 0 5px rgb(255 253 249 / .7),0 30px 40px -24px rgb(70 50 30 / .45)}
  .dv-lista{margin-top:36px}
  .dv-nicho__relevo{top:22%;width:54%}
  .dv-nicho__halo{top:14%}
  .dv-voz{display:none}
  .dv-trilho{display:none}
  .dv-q button{grid-template-columns:minmax(0,1fr) 44px;grid-template-areas:"num sinal" "perg sinal";gap:4px 14px;padding:20px 0}
  .dv-num{grid-area:num;font-size:24px}
  .dv-pergunta{grid-area:perg}
  .dv-sinal{grid-area:sinal}
  .dv-pergunta{font-size:clamp(21px,5.6vw,24px)}
  .dv-resp__in{padding-left:0;padding-right:0}
  .dv-resp__in p{font-size:17.5px}
  .dv-assina{display:grid;grid-template-columns:30px minmax(0,1fr);gap:4px 14px;margin:8px 0 0;padding:18px 18px 16px;border-radius:18px;background:rgb(228 216 202 / .5);border:1px solid rgb(177 156 129 / .3)}
  .dv-assina .wf-ag{width:30px;grid-row:1 / span 2;margin-top:3px}
  .dv-assina blockquote{margin:0;font-family:var(--f-titulo);font-weight:300;font-size:19px;line-height:1.3;color:var(--tinta)}
  .dv-assina figcaption{font-size:14px;color:var(--dourado-texto)}
  .dv-fecho .wf-botao{width:100%;justify-content:center}
  .dv-fecho__led{margin:0 10px}
}

/* ═════ ct ═════ */
/* 8 · ct — Como chegar e agendar (areia → noite): a porta de vidro, a placa da sala 513, o mapa sobre o balcão */
.ct{background:linear-gradient(180deg in oklab,var(--s-areia) 0%,var(--s-areia) 57%,#b9a691 65%,#5a4a3d 76%,var(--s-noite) 84%);padding-bottom:clamp(48px,5vw,72px)}
.ct-malha::before{--m1:rgb(255 248 238 / .8);--m1x:78%;--m1y:12%;--m2:rgb(255 215 161 / .3);--m2x:20%;--m2y:30%;--m3:rgb(255 205 140 / .14);--m3x:50%;--m3y:92%}
.ct.wf-grao::after{mix-blend-mode:overlay}

.ct-miolo{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-areas:"porta texto" "mapa mapa" "fim fim";column-gap:clamp(48px,7vw,120px);align-items:center}

/* a porta, em arco */
.ct-porta{grid-area:porta;aspect-ratio:3/4.1;max-height:760px;width:100%}
.ct-porta img{object-position:42% 50%}
.ct-porta::after{content:"";position:absolute;inset:auto 0 0 0;height:40%;pointer-events:none;background:linear-gradient(0deg in oklab,rgb(255 210 150 / .45),rgb(255 210 150 / 0));mix-blend-mode:soft-light}

.ct-texto{grid-area:texto}
.ct-titulo{max-width:12em}
.ct-apoio{max-width:30em}

/* a placa: como as letras douradas da parede */
.ct-placa{font-style:normal;position:relative;isolation:isolate;display:flex;flex-direction:column;gap:2px;margin:0 0 var(--esp-5);max-width:520px;
  padding:clamp(24px,2.4vw,34px) clamp(26px,2.8vw,40px) clamp(22px,2.2vw,30px);border-radius:6px;overflow:hidden;
  background:url("../img/ct-marmore.webp") 30% 40%/cover,#d8c9bb;
  box-shadow:inset 6px 0 0 -1px #b89a68,inset -6px 0 0 -1px #b89a68,inset 7px 0 0 -1px rgb(255 240 210 / .7),0 0 0 1px rgb(143 119 86 / .35),0 26px 44px -24px rgb(70 50 30 / .5)}
.ct-placa::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(160deg in oklab,rgb(255 250 242 / .62),rgb(255 246 232 / .42) 55%,rgb(255 214 160 / .3));pointer-events:none}
.ct-placa__sala{font-family:var(--f-titulo);font-weight:600;font-size:clamp(44px,5vw,80px);line-height:1;letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px;
  background:linear-gradient(105deg in oklab,#7d6337 0%,#a9864e 22%,#e9cf98 34%,#fff1cf 40%,#c9a666 48%,#94763f 66%,#b8955a 84%,#7d6337 100%) 100% 0/300% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(-.5px -.5px 0 rgb(255 248 228 / .9)) drop-shadow(1.5px 2px 1px rgb(60 40 15 / .45));transition:background-position 2.6s var(--ease) .35s}
.ct-placa.on .ct-placa__sala{background-position:40% 0}
.ct-placa__linha{font-size:var(--t-corpo);color:var(--tinta);font-weight:500}
.ct-placa__plus{margin-top:8px;font-size:var(--t-mini);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--dourado-texto)}

.ct-acoes{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:var(--esp-4)}
.ct-zap{padding:18px 32px 18px 26px;font-size:18px}
.ct-zap span{display:flex;flex-direction:column;line-height:1.15}
.ct-zap small{font-size:14px;font-weight:500;color:var(--dourado-claro);letter-spacing:.03em;margin-top:3px}
.ct-zap svg{width:26px;height:26px}
.ct-horario{margin:0 0 0 6px;display:flex;align-items:center;gap:10px;font-size:16px;color:var(--tinta-suave)}
.ct-horario__ponto{width:7px;height:7px;border-radius:50%;background:#e9b878;box-shadow:0 0 8px 2px rgb(255 205 140 / .8)}
.ct-links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.ct-links a{display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:0 20px 0 16px;border-radius:999px;text-decoration:none;font-size:15.5px;font-weight:600;color:var(--tinta);
  background:rgb(255 253 249 / .55);border:1px solid rgb(143 119 86 / .4);transition:background .3s,border-color .3s,transform .4s var(--ease)}
.ct-links a:hover{background:var(--branco);border-color:var(--dourado-fundo);transform:translateY(-2px)}
.ct-links svg{width:19px;height:19px;fill:none;stroke:var(--dourado-fundo);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* o mapa, sobre o balcão com LED */
.ct-mapa{grid-area:mapa;margin-top:clamp(56px,6vw,96px)}
.ct-mapa__janela{position:relative;height:clamp(340px,34vw,480px);overflow:hidden;border-radius:22px 22px 4px 4px;background:#d9cdbf;
  box-shadow:0 0 0 1.5px rgb(177 156 129 / .9),0 0 0 7px rgb(255 253 249 / .18),0 40px 70px -30px rgb(20 12 6 / .6)}
/* recorta o topo (cartão do Google) */
.ct-mapa__janela iframe{position:absolute;left:0;top:-150px;width:100%;height:calc(100% + 300px);border:0;filter:sepia(.42) saturate(.6) hue-rotate(-8deg) brightness(.98) contrast(.95);transition:filter .8s ease}
.ct-mapa__janela:hover iframe,.ct-mapa__janela:focus-within iframe{filter:none}
.ct-mapa__etiqueta{position:absolute;left:calc(50% + 22px);top:calc(50% - 74px);margin:0;display:flex;align-items:center;gap:10px;padding:10px 16px 10px 12px;border-radius:999px;pointer-events:none;
  background:rgb(43 34 28 / .9);color:var(--tinta-noite);font-family:var(--f-titulo);font-weight:600;font-size:17px;line-height:1.05;box-shadow:0 14px 26px -12px rgb(20 12 6 / .6);white-space:nowrap}
.ct-mapa__etiqueta::before{content:"";position:absolute;left:-14px;bottom:10px;width:16px;height:1.5px;background:var(--dourado-claro)}
.ct-mapa__etiqueta small{display:block;font-family:var(--f-texto);font-weight:500;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dourado-claro);margin-top:3px}
.ct-mapa__etiqueta .wf-ag{width:26px}
.ct-mapa__balcao{height:clamp(40px,4vw,56px);margin:0 18px;border-radius:0 0 10px 10px}
.ct-mapa__balcao::before{height:12px;left:-12px;right:-12px;border-radius:2px}
.ct-mapa__balcao{overflow:visible}

.ct-fim{grid-area:fim;display:flex;align-items:center;justify-content:center;gap:18px;margin:clamp(56px,6vw,88px) 0 0;
  font-family:var(--f-titulo);font-weight:300;font-size:clamp(26px,2.6vw,40px);line-height:1.15;color:var(--tinta-noite);text-align:center}
.ct-fim strong{font-weight:600;white-space:nowrap}
.ct-fim .wf-ag{width:44px;flex:none;filter:drop-shadow(0 0 14px rgb(255 205 140 / .55))}
.ct-fim{position:relative}
.ct-fim::after{content:"";position:absolute;left:50%;bottom:-40px;width:min(560px,80%);height:80px;transform:translateX(-50%);pointer-events:none;z-index:-1;
  background:radial-gradient(in oklab closest-side,rgb(255 205 140 / .22),rgb(255 205 140 / 0))}

@media (max-width:900px){
  .ct{background:linear-gradient(180deg in oklab,var(--s-areia) 0%,var(--s-areia) 62%,#b9a691 72%,#5a4a3d 84%,var(--s-noite) 92%)}
  .ct-miolo{grid-template-columns:minmax(0,1fr);grid-template-areas:"sobre" "titulo" "porta" "apoio" "placa" "acoes" "links" "mapa" "fim"}
  .ct-texto{display:contents}
  .ct-texto>.wf-sobre{grid-area:sobre}
  .ct-texto>.ct-titulo{grid-area:titulo}
  .ct-texto>.ct-apoio{grid-area:apoio;margin-top:28px}
  .ct-texto>.ct-placa{grid-area:placa}
  .ct-texto>.ct-acoes{grid-area:acoes}
  .ct-texto>.ct-links{grid-area:links}
  .ct-porta{max-height:none;aspect-ratio:3/3.3;margin-top:4px}
  .ct-placa__sala{font-size:clamp(40px,12vw,56px)}
  .ct-mapa__etiqueta{font-size:15px;left:50%;top:calc(50% - 112px);transform:translateX(-50%)}
  .ct-mapa__etiqueta::before{left:50%;bottom:-14px;width:1.5px;height:16px}
  .ct-fim__l2{display:block}
  .ct-links{flex-direction:column;align-items:stretch}
  .ct-links a{justify-content:flex-start}
  .ct-zap{width:100%;justify-content:center}
  .ct-mapa{margin-top:64px}
  .ct-mapa__janela{height:340px}
  .ct-mapa__balcao{margin:0 10px}
  .ct-fim{flex-direction:column;gap:12px}
}
.ct-nw{white-space:nowrap}

/* ═════ rp ═════ */
.rp{position:relative;isolation:isolate;overflow:clip;background:var(--s-noite);color:var(--tinta-noite);font-size:16px;line-height:1.6}
.rp-balcao{height:46px}
.rp-miolo{max-width:1280px;margin:0 auto;padding:clamp(56px,7vw,96px) var(--margem) 48px;display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:40px}
.rp-ag{width:54px;margin-bottom:18px}
.rp-nome{font-family:var(--f-titulo);font-weight:600;font-size:28px;margin:0;line-height:1.1}
.rp-oficio{margin:6px 0 14px;font-size:var(--t-mini);letter-spacing:.16em;text-transform:uppercase;color:var(--dourado-claro)}
.rp-registro{margin:0;color:var(--tinta-noite-suave)}
.rp-rot{margin:0 0 12px;font-size:12.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--dourado-claro)}
.rp-col{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.rp-col a{color:var(--tinta-noite);text-decoration:none;padding:6px 0;border-bottom:1px solid transparent;transition:border-color .3s}
.rp-col a:hover{border-color:var(--dourado-claro)}
.rp address{font-style:normal;color:var(--tinta-noite-suave);margin-bottom:6px}
.rp-linha{max-width:1280px;margin:0 auto;padding:22px var(--margem) 28px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 30px;border-top:1px solid rgb(217 195 154 / .18);font-size:var(--t-mini);color:var(--tinta-noite-suave)}
.rp-linha p{margin:0}
.rp-selo a{color:var(--tinta-noite);font-weight:600;text-decoration:underline;text-decoration-color:var(--dourado-claro);text-underline-offset:3px;display:inline-block;padding:12px 0;margin:-12px 0}
@media (max-width:900px){.rp-miolo{grid-template-columns:1fr 1fr}.rp-marca{grid-column:1 / -1}}
@media (max-width:560px){.rp-miolo{grid-template-columns:1fr;gap:32px}.rp-linha{padding-bottom:96px}}

/* ═════ ajustes ═════ */
.registro{font-size:14px}
