/* Interdente — estilos da página (antes inline no index.html; separados para permitir uma CSP sem 'unsafe-inline') */
/* ============ tokens ============ */
:root{
  --gelo:#F3F4F2;        /* fundo */
  --nevoa:#E1E7EA;       /* superfície azul-acinzentada (peça de Instagram) */
  --noite:#15181A;       /* vitrine do pico */
  --grafite:#2A2F33;     /* tinta — o cinza do "D" */
  --ouro:#B08D5B;        /* o acento: a linha dourada */
  --ouro-texto:#8A6A3C;  /* dourado com contraste para texto sobre claro */
  --serif:"Newsreader", "Times New Roman", serif;
  --sans:"Geist", system-ui, sans-serif;
  --mono:"Geist Mono", ui-monospace, monospace;
  --suave:color-mix(in srgb, currentColor 66%, transparent);
  --fio:color-mix(in srgb, currentColor 16%, transparent);
  --margem:clamp(20px, 5vw, 88px);
  --ease:cubic-bezier(.22,1,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--gelo);color:var(--grafite);-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--gelo);color:var(--grafite);font:400 18px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:300;margin:0;letter-spacing:-.02em}
p{margin:0}
::selection{background:var(--ouro);color:#fff}
.rotulo{font:500 12px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--suave)}
.rotulo--ouro{color:var(--ouro-texto)}
.rotulo--ouro-vivo{color:var(--ouro)}
.sprite{position:absolute}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px}

/* ============ botões ============ */
.btn{display:inline-flex;align-items:center;gap:14px;text-decoration:none;font:500 15px/1 var(--sans);letter-spacing:.02em;border-radius:999px;padding:18px 26px 18px 22px;transition:transform .5s var(--ease), background .4s, color .4s}
.btn svg{width:20px;height:20px;flex:none}
.btn--cheio{background:var(--grafite);color:var(--gelo)}
.btn--cheio:hover{background:#000;transform:translateY(-2px)}
.btn .seta{display:inline-block;transition:transform .5s var(--ease)}
.btn:hover .seta{transform:translateX(4px)}
.link-fino{font:400 15px/1.4 var(--sans);text-decoration:none;border-bottom:1px solid var(--fio);padding-bottom:2px;transition:border-color .3s}
.link-fino:hover{border-color:var(--ouro)}

/* ============ cabeçalho ============ */
.topo{position:fixed;inset:0 0 auto 0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:18px var(--margem);
  background:color-mix(in srgb, var(--fx-fundo, var(--gelo)) 78%, transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  transition:background .7s ease}
.marca{display:flex;align-items:center;gap:14px;text-decoration:none}
.marca svg{height:30px;width:auto}
.marca span{font:400 13px/1 var(--sans);letter-spacing:.42em;margin-right:-.42em}
.topo nav{display:flex;align-items:center;gap:34px}
.topo nav a:not(.btn){font:400 14px/1 var(--sans);text-decoration:none;color:var(--suave);transition:color .3s}
.topo nav a:not(.btn):hover{color:inherit}
.topo .btn{padding:12px 18px 12px 14px;font-size:14px}
.topo .btn svg{width:17px;height:17px}

/* ============ régua lateral (movimento-assinatura, parte 2) ============ */
.regua{position:fixed;left:calc(var(--margem) / 2 - 7px);top:22vh;height:56vh;width:14px;z-index:30;pointer-events:none;
  background:
    repeating-linear-gradient(to bottom, var(--fio) 0 1px, transparent 1px 8px) left/6px 100% no-repeat,
    repeating-linear-gradient(to bottom, color-mix(in srgb, currentColor 34%, transparent) 0 1px, transparent 1px 40px) left/12px 100% no-repeat;
  opacity:0;transition:opacity .6s}
.regua.ativa{opacity:1}
.regua i{position:absolute;left:0;top:0;width:24px;height:1px;background:var(--ouro);transform:translateY(calc(var(--r, 0) * 56vh));}
.regua i::after{content:"";position:absolute;left:0;top:-14px;width:1px;height:28px;background:var(--ouro)}
.regua b{position:absolute;left:18px;top:0;writing-mode:vertical-rl;transform:translateY(calc(var(--r, 0) * 56vh + 22px));font:500 10px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;color:var(--ouro-texto)}
@media (max-width:1100px){.regua{display:none}}

/* ============ WhatsApp flutuante ============ */
.zap{position:fixed;right:clamp(16px,3vw,36px);bottom:clamp(16px,3vw,36px);z-index:50;display:flex;align-items:center;gap:12px;
  text-decoration:none;background:var(--grafite);color:#F3F4F2;border-radius:999px;padding:8px;box-shadow:0 10px 30px -12px rgba(0,0,0,.45), inset 0 0 0 1px color-mix(in srgb, var(--ouro) 70%, transparent);
  transform:translateY(calc(100% + 72px));transition:transform .7s var(--ease), background .3s}
.zap.visivel{transform:none}
.zap:hover{background:#000}
.zap .ic{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--ouro)}
.zap .ic svg{width:22px;height:22px;fill:#fff;display:block}
.zap span:not(.ic){font:500 14px/1.2 var(--sans);padding-right:14px}
.zap small{display:block;font:400 11px/1.3 var(--mono);letter-spacing:.06em;opacity:.7}
@media (max-width:640px){.zap span:not(.ic){display:none}}

/* ============ 1 · Calibração ============ */
.abertura{min-height:100svh;display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;padding:128px var(--margem) 36px;position:relative}
.abertura__texto{grid-column:1 / span 7;align-self:center;position:relative;z-index:2}
.abertura h1{font-size:clamp(46px,7.2vw,118px);line-height:.94;margin:26px 0 34px}
.abertura h1 .linha{display:block;overflow:hidden;padding-bottom:.08em}
.abertura h1 .linha > span{display:inline-block;transform:translateY(105%);animation:sobe 1.3s var(--ease) forwards}
.abertura h1 .linha:nth-child(2) > span{animation-delay:.12s}
.abertura h1 .linha:nth-child(3) > span{animation-delay:.24s}
.abertura h1 em{font-style:italic;color:var(--ouro-texto)}
@keyframes sobe{to{transform:none}}
.abertura__lead{max-width:40ch;font-size:clamp(17px,1.35vw,20px);color:var(--suave);opacity:0;animation:aparece 1.2s .7s forwards}
.abertura__acoes{display:flex;flex-wrap:wrap;align-items:center;gap:22px 28px;margin-top:40px;opacity:0;animation:aparece 1.2s .9s forwards}
@keyframes aparece{to{opacity:1}}
.abertura__figura{grid-column:8 / span 5;align-self:center;justify-self:center;position:relative;width:min(100%, 500px)}
.abertura__figura svg{width:100%;height:auto;overflow:visible}
.monograma .t{fill:none;stroke-width:3.2}
.monograma .t-ouro{stroke:var(--ouro);--len:105}
.monograma .t-grafite{stroke:var(--grafite)}
.monograma .t-reta{--len:93}
.monograma .t-arco{--len:190}
.monograma .t{stroke-dasharray:var(--len);stroke-dashoffset:var(--len)}
.monograma .t-ouro{animation:desenha 1.6s .2s var(--ease) forwards}
.monograma .t-reta{animation:desenha 1.1s 1.0s var(--ease) forwards}
.monograma .t-arco{animation:desenha 2.2s 1.3s cubic-bezier(.65,0,.35,1) forwards}
.monograma .marcas{opacity:0;animation:aparece 1s 2.8s forwards}
.monograma .marcas line{stroke:var(--ouro);stroke-width:.4}
.monograma .marcas text{font:400 3.2px var(--mono);fill:var(--ouro-texto);letter-spacing:.1em}
@keyframes desenha{to{stroke-dashoffset:0}}
.abertura__base{grid-column:1 / -1;align-self:end;display:flex;gap:40px;justify-content:space-between;border-top:1px solid var(--fio);padding-top:18px;margin-top:40px}
.abertura__base p{font:400 12px/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--suave)}
@media (max-width:900px){
  .abertura{grid-template-columns:1fr;padding-top:104px}
  .abertura__texto,.abertura__figura,.abertura__base{grid-column:1}
  .abertura__figura{order:-1;width:120px;justify-self:start;margin-top:8px}
  .abertura__figura .marcas{display:none}
  .abertura__base{flex-direction:column;gap:6px}
}

/* ============ 2 · Manifesto ============ */
.manifesto{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;padding:clamp(96px,14vh,180px) var(--margem)}
.manifesto__foto{grid-column:1 / span 5;margin:0}
.manifesto__foto .janela{aspect-ratio:4/5;overflow:hidden;border-radius:2px}
.manifesto__foto img{width:100%;height:124%;object-fit:cover;object-position:50% 50%;margin-top:-12%}
.manifesto__foto figcaption{margin-top:14px}
.manifesto__texto{grid-column:7 / span 6;align-self:center}
.manifesto__frase{font-family:var(--serif);font-weight:300;font-size:clamp(30px,3.3vw,52px);line-height:1.12;letter-spacing:-.015em;margin:22px 0 40px}
.manifesto__corpo{max-width:58ch;color:var(--suave);display:grid;gap:18px}
.numeros{display:flex;gap:56px;margin-top:56px;padding-top:28px;border-top:1px solid var(--fio)}
.numeros div{display:grid;gap:8px}
.numeros strong{font:300 clamp(48px,5vw,80px)/.9 var(--serif);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.numeros div > span{font:400 14px/1.4 var(--sans);color:var(--suave);max-width:18ch}
@media (max-width:900px){
  .manifesto{grid-template-columns:1fr}
  .manifesto__foto,.manifesto__texto{grid-column:1}
  .manifesto__texto{margin-top:56px}
  .numeros{gap:36px}
}

/* ============ 3 · Anatomia da faceta ============ */
.anatomia .fx-palco{display:block}
.anatomia__grade{height:100%;display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;align-items:center;padding:96px var(--margem) 48px}
.anatomia__esq{grid-column:1 / span 5;display:grid;align-content:center;gap:28px}
.anatomia__esq h2{font-size:clamp(36px,4.2vw,68px);line-height:1}
.passos{display:grid}
.passos .fx-etapa{grid-area:1/1;transform:translateY(24px);transition:opacity .6s, transform .8s var(--ease)}
.anatomia[data-etapa="1"] .passos .fx-etapa:nth-of-type(1),
.anatomia[data-etapa="2"] .passos .fx-etapa:nth-of-type(2),
.anatomia[data-etapa="3"] .passos .fx-etapa:nth-of-type(3){transform:none}
.passo__num{font:300 clamp(72px,9vw,140px)/.8 var(--serif);color:transparent;-webkit-text-stroke:1px var(--ouro);letter-spacing:-.04em}
.passo h3{font-size:clamp(26px,2.4vw,36px);margin:22px 0 12px}
.passo p{color:var(--suave);max-width:44ch}
.trilha{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.trilha span{height:2px;background:var(--fio);position:relative;overflow:hidden}
.trilha span::after{content:"";position:absolute;inset:0;background:var(--ouro);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease)}
.anatomia[data-etapa="1"] .trilha span:nth-child(-n+1)::after,
.anatomia[data-etapa="2"] .trilha span:nth-child(-n+2)::after,
.anatomia[data-etapa="3"] .trilha span:nth-child(-n+3)::after{transform:none}
.anatomia__dir{grid-column:7 / span 6;display:grid;height:100%;max-height:640px;align-items:center}
.caso{grid-area:1/1;margin:0;display:grid;gap:10px;transform:scale(.97);transition:opacity .6s, transform 1s var(--ease)}
.anatomia[data-etapa="1"] .caso:nth-of-type(1),
.anatomia[data-etapa="2"] .caso:nth-of-type(2),
.anatomia[data-etapa="3"] .caso:nth-of-type(3){transform:none}
.caso__quadro{position:relative;overflow:hidden;border-radius:2px;aspect-ratio:2/1;background:#3a2c2c}
.caso__quadro img{width:100%;height:100%;object-fit:cover}
.caso__quadro--antes img{filter:grayscale(1) contrast(1.05) brightness(.95)}
.caso__quadro .etiqueta{position:absolute;left:14px;top:12px;font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(21,24,26,.55);padding:7px 9px;border-radius:2px}
.caso__quadro--depois .etiqueta{background:var(--ouro)}
.caso svg.guias{position:absolute;inset:0;width:100%;height:100%}
.caso svg.guias line{stroke:#fff;stroke-width:1;stroke-dasharray:3 5;opacity:.75;vector-effect:non-scaling-stroke}
.caso svg.guias line.ouro{stroke:var(--ouro);stroke-dasharray:none;opacity:1}
.caso figcaption{display:flex;justify-content:space-between}
@media (max-width:900px){
  .anatomia__grade{grid-template-columns:1fr;align-content:center;gap:28px;padding-top:88px}
  .anatomia__esq,.anatomia__dir{grid-column:1}
  .anatomia__dir{height:auto;order:-1}
  .anatomia__esq{gap:16px}
  .anatomia__esq h2{font-size:32px}
  .passo__num{font-size:56px}
  .passo h3{margin:10px 0 6px;font-size:24px}
  .passo p{font-size:15px}
  .caso{gap:6px}
  .caso__quadro{aspect-ratio:423/150}
}

/* ============ 4 · A Medida (pico) ============ */
.medida .fx-palco{display:block;background:var(--noite);color:#ECEEEC}
.medida__grade{height:100%;display:grid;grid-template-columns:1fr auto 1fr;column-gap:clamp(24px,4vw,72px);align-items:center;padding:92px var(--margem) 40px}
.medida__esq{justify-self:end;max-width:340px;display:grid;gap:26px}
.medida__esq h2{font-size:clamp(34px,3.4vw,56px);line-height:1.02}
.medida__esq p.sub{color:var(--suave)}
.leitura{display:grid;gap:12px;border-top:1px solid var(--fio);padding-top:18px}
.leitura__linha{display:flex;justify-content:space-between;font:400 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--suave)}
.leitura__linha output{color:var(--ouro);font-variant-numeric:tabular-nums}
.leitura__barra{height:1px;background:var(--fio);position:relative}
.leitura__barra::after{content:"";position:absolute;inset:0;background:var(--ouro);transform-origin:left;transform:scaleX(var(--corte-n,0))}
.rosto{position:relative;height:min(80vh,820px);aspect-ratio:734/1450;margin:0}
.rosto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rosto .mascara{position:absolute;inset:0;overflow:hidden;transform:translateX(calc((var(--corte,0) - 100) * 1%));will-change:transform}
.rosto .mascara img{transform:translateX(calc((100 - var(--corte,0)) * 1%));will-change:transform}
.rosto__regua{position:absolute;left:0;right:0;top:-18px;height:10px;
  background:repeating-linear-gradient(to right, color-mix(in srgb, currentColor 40%, transparent) 0 1px, transparent 1px 10%) bottom/100% 10px no-repeat,
             repeating-linear-gradient(to right, color-mix(in srgb, currentColor 22%, transparent) 0 1px, transparent 1px 2%) bottom/100% 5px no-repeat}
.lamina{position:absolute;inset:-26px 0 -26px 0;pointer-events:none;will-change:transform;transform:translateX(calc(var(--corte,0) * 1%))}
.lamina::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--ouro);box-shadow:0 0 0 .5px rgba(176,141,91,.25)}
.lamina::after{content:"";position:absolute;left:-5px;top:50%;width:10px;height:10px;border:1px solid var(--ouro);background:var(--noite);transform:translateY(-50%) rotate(45deg)}
.guias-rosto{position:absolute;inset:0;width:100%;height:100%;overflow:visible;opacity:var(--g,0)}
.guias-rosto line{stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:4 6;opacity:.7}
.guias-rosto path{fill:none;stroke:var(--ouro);stroke-width:1.2;vector-effect:non-scaling-stroke}
.guias-rosto text{font:500 9px var(--mono);fill:#fff;letter-spacing:.14em;text-transform:uppercase}
.lado{position:absolute;top:14px;font:500 11px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:#fff;background:rgba(21,24,26,.6);padding:7px 9px}
.lado--antes{right:12px;opacity:calc(1 - var(--corte-n,0) * 1.6)}
.lado--depois{left:12px;background:var(--ouro);opacity:calc(var(--corte-n,0) * 2.2 - .15)}
.medida__dir{max-width:300px;display:grid;gap:26px}
.criterio{opacity:.18;transition:opacity .6s, transform .8s var(--ease);transform:translateX(-8px);border-left:1px solid var(--fio);padding-left:18px}
.criterio.ok{opacity:1;transform:none;border-color:var(--ouro)}
.criterio h3{font:400 22px/1.2 var(--serif);margin-bottom:6px}
.criterio p{font-size:15px;color:var(--suave)}
.veredito{will-change:opacity,transform;position:absolute;left:0;right:0;bottom:clamp(28px,7vh,72px);text-align:center;pointer-events:none;opacity:var(--f,0);transform:translateY(calc((1 - var(--f,0)) * 30px))}
.veredito p{display:inline-block;font:300 clamp(40px,6.2vw,104px)/1 var(--serif);letter-spacing:-.03em;color:#F3F4F2;text-shadow:0 2px 40px rgba(0,0,0,.85), 0 0 90px rgba(0,0,0,.6)}
.veredito em{color:var(--ouro)}
.medida__grade > *{transition:opacity .6s}
.medida.final .medida__esq,.medida.final .medida__dir{opacity:.25}
@media (max-width:1000px){
  .medida__grade{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;justify-items:center;row-gap:18px;padding:84px 20px 24px}
  .medida__esq{justify-self:stretch;max-width:none;gap:10px}
  .medida__esq h2{font-size:28px}
  .medida__esq p.sub{display:none}
  .medida__dir{display:none}
  .rosto{height:min(58vh,620px)}
  .veredito{bottom:96px}
  .veredito p{font-size:40px}
  .leitura{padding-top:10px}
}

/* ============ 5 · O ateliê ============ */
.atelie .fx-palco{display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding-top:72px}
.atelie__topo{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:0 var(--margem);margin-bottom:clamp(28px,5vh,56px)}
.atelie__topo h2{font-size:clamp(36px,4.4vw,72px);line-height:1;max-width:14ch}
.atelie__topo p{max-width:36ch;color:var(--suave)}
.atelie [data-fx="trilho"]{gap:20px;padding:0 var(--margem);width:100%}
.cartao{flex:0 0 clamp(260px,24vw,340px);height:clamp(300px,44vh,420px);position:relative;border:1px solid var(--fio);border-radius:2px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;background:color-mix(in srgb, #fff 55%, transparent);transition:border-color .4s, background .4s}
.cartao:not(.cartao--foto)::before{content:"";position:absolute;left:28px;right:28px;top:56px;height:9px;background:repeating-linear-gradient(to right, var(--fio) 0 1px, transparent 1px 8px) bottom/100% 5px no-repeat, repeating-linear-gradient(to right, color-mix(in srgb, var(--ouro) 70%, transparent) 0 1px, transparent 1px 40px) bottom/100% 9px no-repeat}
.atelie [data-fx="trilho"]::after{content:"";flex:0 0 calc(var(--margem) - 20px)}
.cartao:hover{border-color:var(--ouro);background:#fff}
.cartao__num{font:400 12px/1 var(--mono);letter-spacing:.14em;color:var(--ouro-texto)}
.cartao h3{font-size:clamp(28px,2.2vw,36px);line-height:1.04;margin-bottom:14px}
.cartao p{font-size:15px;color:var(--suave)}
.cartao--foto{padding:0;overflow:hidden;flex-basis:clamp(320px,34vw,520px);border:0;position:relative}
.cartao--foto img{width:100%;height:100%;object-fit:cover}
.cartao--foto figcaption{position:absolute;left:16px;bottom:14px;color:#fff;background:rgba(21,24,26,.55);padding:7px 9px}
.cartao--destaque{background:var(--grafite);color:var(--gelo);border-color:var(--grafite)}
.cartao--destaque:hover{background:#000}
.cartao--destaque .cartao__num{color:var(--ouro)}
@media (max-width:900px){
  .atelie__topo{flex-direction:column;align-items:start;gap:12px}
  .atelie__topo p{font-size:15px}
  .cartao{flex-basis:76vw;height:min(46vh,380px)}
  .cartao--foto{flex-basis:84vw}
}

/* ============ 6 · Quem confia ============ */
.confia{padding:clamp(110px,16vh,200px) var(--margem) clamp(90px,12vh,160px);display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;row-gap:96px}
.confia__esq{grid-column:1 / span 5}
.confia__foto{margin:0;position:relative}
.confia__foto .janela{overflow:hidden;border-radius:2px;aspect-ratio:4/5}
.confia__foto img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.comparador{margin:64px 0 0;display:grid;gap:14px}
.comparador__quadro{position:relative;aspect-ratio:1276/440;overflow:hidden;border-radius:2px;cursor:ew-resize;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.comparador__quadro img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.comparador__quadro .mascara{position:absolute;inset:0;overflow:hidden;transform:translateX(calc((var(--x,50) - 100) * 1%))}
.comparador__quadro .mascara img{transform:translateX(calc((100 - var(--x,50)) * 1%))}
.comparador__lamina{position:absolute;inset:0;pointer-events:none;transform:translateX(calc(var(--x,50) * 1%))}
.comparador__lamina::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--ouro)}
.comparador__lamina::after{content:"‹ ›";position:absolute;left:-19px;top:50%;width:38px;height:38px;margin-top:-19px;border-radius:50%;border:1px solid var(--ouro);background:rgba(21,24,26,.72);color:var(--ouro);display:grid;place-items:center;font:400 15px/1 var(--mono);letter-spacing:.1em}
.comparador__quadro .tag{position:absolute;top:12px;font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(21,24,26,.6);padding:7px 9px;pointer-events:none}
.comparador__quadro .tag--depois{left:12px;background:var(--ouro)}
.comparador__quadro .tag--antes{right:12px}
.comparador input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.comparador__quadro:has(input:focus-visible){outline:2px solid var(--ouro);outline-offset:3px}
.comparador__rodape{display:flex;justify-content:space-between;gap:16px}
.confia__foto figcaption{margin-top:16px;display:grid;gap:6px}
.confia__foto figcaption p{font:300 22px/1.3 var(--serif)}
.confia__foto::before{content:"";position:absolute;left:-18px;top:-18px;width:1px;height:46%;background:var(--ouro)}
.confia__equipe{grid-column:7 / span 6;align-self:stretch}
.confia__equipe-in{position:sticky;top:120px;display:grid;gap:40px}
.confia__equipe h2{font-size:clamp(36px,4vw,64px);line-height:1.02}
.dentista{display:grid;grid-template-columns:120px 1fr;gap:22px;align-items:center;padding-top:26px;border-top:1px solid var(--fio)}
.dentista img{width:120px;height:150px;object-fit:cover;object-position:50% 20%;border-radius:2px}
.dentista h3{font-size:28px}
.dentista p{font-size:15px;color:var(--suave)}
.dentista .cro{font:400 12px/1 var(--mono);letter-spacing:.12em;color:var(--ouro-texto);margin-top:8px}
.vozes{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.voz{margin:0;border-top:1px solid var(--fio);padding-top:24px;display:grid;gap:18px;align-content:space-between}
.voz blockquote{margin:0;font:300 clamp(22px,1.8vw,28px)/1.25 var(--serif);letter-spacing:-.01em}
.voz blockquote::before{content:"“";color:var(--ouro);margin-right:2px}
.voz blockquote::after{content:"”";color:var(--ouro)}
@media (max-width:900px){
  .confia{grid-template-columns:1fr;row-gap:64px}
  .confia__esq,.confia__equipe,.vozes{grid-column:1}
  .confia__equipe-in{position:static}
  .comparador__rodape span:last-child{display:none}
  .confia__foto::before{left:-10px}
  .vozes{grid-template-columns:1fr;gap:32px}
}

/* ============ 7 · Agendamento ============ */
.contato{padding:clamp(110px,16vh,190px) var(--margem) 40px}
.contato__titulo{margin-top:22px}
.contato h2{font-size:clamp(44px,7.2vw,120px);line-height:.95;max-width:13ch}
.contato h2 em{font-style:italic;color:var(--ouro-texto)}
.chamada{margin-top:56px;display:flex;align-items:center;justify-content:space-between;gap:24px;text-decoration:none;background:var(--grafite);color:var(--gelo);padding:clamp(24px,3.4vw,44px) clamp(24px,3.4vw,48px);border-radius:2px;position:relative;overflow:hidden;transition:background .4s}
.chamada:hover{background:#000}
.chamada::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--ouro);transform:translateX(0);transition:transform 1.1s var(--ease)}
.chamada:hover::before{transform:translateX(calc(100vw))}
.chamada__txt{display:grid;gap:10px}
.chamada__txt strong{font:300 clamp(28px,3.4vw,56px)/1 var(--serif);letter-spacing:-.02em}
.chamada__txt span{font:400 13px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb, var(--gelo) 70%, transparent)}
.chamada__ic{flex:none;width:clamp(64px,7vw,104px);aspect-ratio:1;border-radius:50%;background:var(--ouro);display:grid;place-items:center;transition:transform .6s var(--ease)}
.chamada:hover .chamada__ic{transform:rotate(-8deg) scale(1.05)}
.chamada__ic svg{width:44%;fill:#fff}
.unidades{margin-top:72px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--fio)}
.unidade{position:relative;display:grid;gap:14px;align-content:start;padding:26px 24px 8px;border-left:1px solid var(--fio)}
.unidade:first-child{border-left:0;padding-left:0}
.unidade::before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--ouro);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease)}
.unidade.ativa::before{transform:none}
.unidade__nome{display:flex;align-items:center;gap:10px;font:500 13px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ouro-texto)}
.unidade__nome svg{height:22px;width:auto;flex:none;color:var(--grafite)}
.unidade address{font:300 20px/1.35 var(--serif);font-style:normal}
.unidade__acoes{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:4px}
.unidade__mapa,.unidade__ir{font:500 13px/1.4 var(--sans);color:var(--suave);text-decoration:none;background:none;border:0;border-bottom:1px solid var(--fio);padding:0 0 2px;cursor:pointer;transition:color .3s, border-color .3s}
.unidade__mapa:hover,.unidade__ir:hover{color:var(--grafite);border-color:var(--ouro)}
.unidade__mapa[aria-pressed="true"]{color:var(--ouro-texto);border-color:var(--ouro);cursor:default}
.unidade__ir .seta{display:inline-block;transition:transform .5s var(--ease)}
.unidade__ir:hover .seta{transform:translateX(3px)}
@media (max-width:1100px){
  .unidades{grid-template-columns:repeat(2,1fr)}
  .unidade:nth-child(odd){border-left:0;padding-left:0}
  .unidade:nth-child(n+3){border-top:1px solid var(--fio);margin-top:18px}
}
@media (max-width:640px){
  .unidades{grid-template-columns:1fr}
  .unidade{border-left:0;padding-left:0}
  .unidade:nth-child(n+2){border-top:1px solid var(--fio);margin-top:0}
  .unidade{padding-bottom:22px}
}
.contato__grade{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;margin-top:72px}
.dados{grid-column:1 / span 5;display:grid;gap:30px;align-content:start}
.dados div{display:grid;gap:8px;padding-bottom:26px;border-bottom:1px solid var(--fio)}
.dados div p,.dados div a{font:300 24px/1.3 var(--serif);text-decoration:none}
.dados div a:hover{color:var(--ouro-texto)}
.mapa{grid-column:7 / span 6;min-height:380px;border-radius:2px;overflow:hidden;position:relative;background:var(--gelo)}
.mapa__capa{position:absolute;inset:0;display:flex;align-items:flex-end;padding:28px;text-decoration:none;color:var(--grafite);
  background:
    linear-gradient(115deg, transparent 47.6%, color-mix(in srgb, var(--grafite) 22%, transparent) 47.6% 48.4%, transparent 48.4%),
    linear-gradient(28deg, transparent 61.5%, color-mix(in srgb, var(--grafite) 14%, transparent) 61.5% 62.1%, transparent 62.1%),
    repeating-linear-gradient(0deg, color-mix(in srgb, var(--grafite) 8%, transparent) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(90deg, color-mix(in srgb, var(--grafite) 8%, transparent) 0 1px, transparent 1px 44px),
    #EEF1F2}
.mapa__pino{position:absolute;left:52%;top:42%;width:18px;height:18px;border-radius:50% 50% 50% 0;background:var(--ouro);transform:translate(-50%,-100%) rotate(-45deg);box-shadow:0 0 0 8px color-mix(in srgb, var(--ouro) 18%, transparent)}
.mapa__txt{display:grid;gap:6px;background:color-mix(in srgb, #fff 82%, transparent);padding:16px 18px;border-radius:2px}
.mapa__txt strong{font:300 24px/1.2 var(--serif)}
.mapa__abrir{font:500 13px/1 var(--sans);color:var(--ouro-texto)}
.mapa__capa:hover .seta{transform:translateX(4px)}
.mapa__abrir .seta{display:inline-block;transition:transform .5s var(--ease)}
.mapa__carregar{position:absolute;right:16px;top:16px;z-index:2;display:grid;gap:3px;text-align:left;cursor:pointer;border:1px solid var(--fio);border-radius:2px;background:#fff;color:var(--grafite);padding:10px 14px;font:500 13px/1.2 var(--sans)}
.mapa__carregar small{font:400 11px/1.2 var(--mono);letter-spacing:.04em;color:var(--suave)}
.mapa__carregar:hover{border-color:var(--ouro)}
.mapa iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(1) contrast(.95) brightness(1.02)}
.rodape{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-top:110px;padding-top:26px;border-top:1px solid var(--fio)}
.rodape .marca svg{height:40px}
.rodape p{font:400 12px/1.6 var(--mono);letter-spacing:.06em;color:var(--suave)}
@media (max-width:900px){
  .contato__grade{grid-template-columns:1fr;row-gap:40px}
  .dados,.mapa{grid-column:1}
  .mapa{min-height:300px}
  .chamada__txt strong{font-size:30px}
}
@media (max-width:760px){.topo nav a:not(.btn){display:none}}

/* ============ movimento reduzido ============ */
.fx-reduzido .abertura h1 .linha > span,.fx-reduzido .abertura__lead,.fx-reduzido .abertura__acoes,.fx-reduzido .monograma .marcas{animation:none;transform:none;opacity:1}
.fx-reduzido .monograma .t{animation:none;stroke-dashoffset:0}
.fx-reduzido .anatomia__grade,.fx-reduzido .medida__grade{height:auto}
.fx-reduzido .anatomia__dir{height:auto;max-height:none;gap:24px}
.fx-reduzido .rosto{height:min(80vh,760px)}
.fx-reduzido .caso{transform:none}
.fx-reduzido .passos .fx-etapa{transform:none}
.fx-reduzido .medida{--corte:50;--corte-n:.5;--g:1;--f:1}
.fx-reduzido .veredito{position:static;margin-top:24px}
.fx-reduzido .criterio{opacity:1;transform:none}
.fx-reduzido .atelie [data-fx="trilho"]{gap:20px}
.fx-reduzido .cartao{flex-basis:300px}

/* ============ desempenho ============ */
/* --progresso é publicado pelo motor a cada quadro; sem herança, só a própria seção é recalculada */
@property --progresso{syntax:"*";inherits:false}
/* camadas de GPU só enquanto a revelação acontece, não para sempre */
[data-fx="surgir"],[data-fx="subir"],[data-fx="esquerda"],[data-fx="direita"],[data-fx="crescer"]{will-change:auto}
/* altura estável no celular: a barra de endereço não força relayout das cenas fixas */
.fx-palco{height:100vh;height:100svh}
/* só o fundo faz a transição entre cenas; a cor do texto troca de uma vez
   (animar a cor herdada obrigava o celular a redesenhar todo o texto da página a cada quadro) */
.fx-fundo-ativo body{transition:background-color .7s ease}
/* desfoque de fundo é caro em GPU de celular: cabeçalho quase opaco no lugar */
@media (max-width:900px), (pointer:coarse){
  .topo{backdrop-filter:none;-webkit-backdrop-filter:none;background:color-mix(in srgb, var(--fx-fundo, var(--gelo)) 94%, transparent)}
}
