/* ===== base: variáveis, reset, peles de seção, marco, entradas ===== */
:root{
  --noite:#11141b; --noite-2:#1a1e29;
  --taupe:#3b3229; --taupe-2:#685740; --madeira:#2a2019;
  --vinho:#5e1c2a;
  --ouro:#d9a441; --ouro-2:#f0cf86; --ouro-tinta:#8a5f12;
  --creme:#f1e9dc; --creme-2:#c9bfae;
  --papel:#efe9df; --papel-2:#e4dccf; --pedra:#c9cbcb;
  --tinta:#1b1712; --tinta-2:#5a4f43;
  --f-titulo:"Antonio","Arial Narrow",sans-serif;
  --f-texto:"Onest",system-ui,sans-serif;
  --t-titulo:clamp(3.6rem, 1.6rem + 6.4vw, 9rem);
  --t-sec:clamp(2.6rem, 1.4rem + 4.6vw, 6rem);
  --t-apoio:clamp(1.02rem, .95rem + .3vw, 1.18rem);
  --t-corpo:1.125rem;
  --t-mini:.875rem;
  --pad:clamp(1.25rem, .6rem + 2.6vw, 3.5rem);
  --max:1320px;
  --sec-y:clamp(5rem, 3rem + 7vw, 10rem);
  --r:6px;
  --curva:cubic-bezier(.2,.7,.2,1);
  --curva-linha:cubic-bezier(.4,.1,.2,1);
  --topo-h:76px;
  --alto:calc(100svh - var(--topo-h));
  --wa:"https://wa.me/5561999098469";
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-padding-top:calc(var(--topo-h) + 1rem)}
html,body{background:var(--noite);color:var(--creme)}
body{font-family:var(--f-texto);font-size:var(--t-corpo);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px;border-radius:4px}
.so-leitor{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pular{position:absolute;left:1rem;top:-4rem;z-index:50;background:var(--ouro);color:#1b140b;padding:.7rem 1rem;border-radius:999px;text-decoration:none;font-weight:600}
.pular:focus{top:1rem}

/* cabeçalho ganha fundo ao rolar */
.topo{transition:background .4s, backdrop-filter .4s}
.rolou .topo{background:color-mix(in oklab, var(--noite) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}

/* peles de seção */
.sec{position:relative;isolation:isolate;padding:var(--sec-y) var(--pad);overflow:clip}
.sec-in{max-width:var(--max);margin:0 auto;position:relative}
.sec-noite{background:var(--noite);color:var(--creme)}
.sec-papel{background:var(--papel);color:var(--tinta)}
.sec-madeira{background:var(--madeira);color:var(--creme)}
.sec-papel ::selection{background:var(--ouro-2)}

/* granulado comum */
.sec::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.sec-papel::after{opacity:.06;filter:invert(1)}

/* ripado de madeira (textura do escritório), para seções madeira */
.ripado-sec{position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:repeating-linear-gradient(90deg, color-mix(in oklab, var(--taupe-2) 30%, transparent) 0 14px, transparent 14px 17px, color-mix(in oklab, #000 34%, transparent) 17px 19px, transparent 19px 34px)}

/* marco: nó + fio + rótulo (o nó da linha do hero) */
.marco{display:inline-flex;align-items:center;gap:.8rem;font-size:.8rem;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--ouro-2)}
.marco::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--ouro);box-shadow:0 0 0 5px color-mix(in oklab, var(--ouro) 18%, transparent);flex:none}
.marco::after{content:"";width:2.4rem;height:1px;background:var(--ouro);order:-1;display:none}
.sec-papel .marco{color:var(--ouro-tinta)}

/* títulos de seção */
.tit-sec{font-family:var(--f-titulo);font-weight:700;font-size:var(--t-sec);line-height:.92;text-transform:uppercase}
.tit-sec .ouro{display:block;font-size:.5em;line-height:1.05;margin-top:.4em;font-weight:600;color:var(--ouro-2)}
.sec-papel .tit-sec .ouro{color:var(--ouro-tinta)}
.apoio-sec{font-size:var(--t-apoio);color:var(--creme-2);max-width:36rem}
.sec-papel .apoio-sec{color:var(--tinta-2)}

/* botões comuns (fora do hero) */
.botao{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:48px;background:var(--ouro);color:#1b140b;font-weight:600;text-decoration:none;padding:1rem 1.6rem;border-radius:999px;box-shadow:0 10px 30px -12px color-mix(in oklab, var(--ouro) 70%, transparent);transition:transform .3s var(--curva), box-shadow .3s}
.botao:hover{transform:translateY(-2px)}
.botao svg{width:20px;height:20px;flex:none}
.link-sec{display:inline-flex;align-items:center;min-height:48px;text-underline-offset:.3em;text-decoration-color:color-mix(in oklab, var(--ouro) 70%, transparent)}

/* WhatsApp flutuante (celular, depois do hero) */
.wa-flut{position:fixed;right:1rem;bottom:1rem;z-index:30;display:none;align-items:center;gap:.55rem;background:var(--ouro);color:#1b140b;font-weight:600;text-decoration:none;padding:.85rem 1.15rem;border-radius:999px;box-shadow:0 12px 30px -8px rgba(0,0,0,.55);transform:translateY(140%);transition:transform .5s var(--curva)}
.wa-flut svg{width:22px;height:22px}
.mostra-wa .wa-flut{transform:none}
@media (max-width:900px){ .wa-flut{display:inline-flex} :root{--topo-h:64px} }

/* entradas por rolagem: [data-rev] (só com .js no html) */
.js [data-rev]{opacity:0;transform:translateY(24px);transition:opacity 1s ease, transform 1.2s var(--curva);transition-delay:calc(var(--d,0) * 140ms)}
.js [data-rev].visto{opacity:1;transform:none}

@property --sobe-n{syntax:'<number>';inherits:true;initial-value:0}
.topo{position:fixed;inset:0 0 auto 0;height:var(--topo-h);display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);z-index:20;background:linear-gradient(180deg in oklab, color-mix(in oklab, var(--noite) 75%, transparent), transparent)}
.marca{display:flex;align-items:center;gap:.75rem;text-decoration:none}
.mono{width:42px;height:42px;color:var(--ouro)}
.marca span{font-family:var(--f-titulo);font-weight:600;letter-spacing:.16em;text-transform:uppercase;font-size:1.08rem;line-height:1}
.marca small{display:block;font-family:var(--f-texto);font-weight:500;font-size:.6rem;letter-spacing:.34em;color:var(--creme-2);margin-top:.32rem}
.nav{display:flex;gap:1.6rem;align-items:center;font-size:.92rem}
.nav a{text-decoration:none;color:var(--creme-2);transition:color .3s}
.nav a:hover{color:var(--creme)}
.nav .nav-wa{color:var(--creme);border:1px solid color-mix(in oklab, var(--ouro) 60%, transparent);padding:.5rem 1rem;border-radius:999px}

.hero{transition:--sobe-n 1s cubic-bezier(.4,.1,.2,1);position:relative;min-height:100svh;padding:calc(var(--topo-h) + 1vh) var(--pad) clamp(1.5rem,4vh,3rem);isolation:isolate;overflow:clip;display:flex;align-items:center}

/* malha */
.malha{position:absolute;inset:0;z-index:-3;background:var(--noite)}
.malha i{position:absolute;border-radius:50%;display:block}
.malha i:nth-child(1){width:64vmax;height:64vmax;left:-20vmax;top:-30vmax;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--taupe-2) 55%, transparent), transparent);animation:deriva1 34s ease-in-out infinite alternate}
.malha i:nth-child(2){width:60vmax;height:60vmax;left:-14vmax;top:30%;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--noite-2) 95%, transparent), transparent);animation:deriva2 28s ease-in-out infinite alternate}
.malha i:nth-child(3){width:52vmax;height:52vmax;left:44%;top:36%;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--vinho) 70%, transparent), transparent);animation:deriva3 38s ease-in-out infinite alternate}
.malha i:nth-child(4){width:40vmax;height:40vmax;left:66%;top:6%;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--ouro) 26%, transparent), transparent);animation:deriva1 30s ease-in-out infinite alternate-reverse}
.malha i:nth-child(5){width:56vmax;height:56vmax;left:36%;top:-34vmax;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--taupe) 85%, transparent), transparent);animation:deriva2 40s ease-in-out infinite alternate-reverse}
@keyframes deriva1{to{transform:translate(-5vmax,4vmax) scale(1.08)}}
@keyframes deriva2{to{transform:translate(5vmax,-3vmax) scale(.94)}}
@keyframes deriva3{to{transform:translate(-4vmax,-5vmax) scale(1.1)}}
.grao{position:absolute;inset:0;z-index:-1;opacity:.05;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}

/* ripado do escritório, aceso pela linha */
.ripado{position:absolute;top:0;bottom:0;right:0;width:62%;z-index:-2;pointer-events:none;
  background:repeating-linear-gradient(90deg, color-mix(in oklab, var(--taupe-2) 26%, transparent) 0 14px, transparent 14px 17px, color-mix(in oklab, #000 30%, transparent) 17px 19px, transparent 19px 34px);
  -webkit-mask:radial-gradient(48% 62% at 72% calc(100% - var(--sobe-n,0) * 55% - 20%) in oklab, #000 0%, rgba(0,0,0,.35) 45%, transparent 75%);
  mask:radial-gradient(48% 62% at 72% calc(100% - var(--sobe-n,0) * 55% - 20%) in oklab, #000 0%, rgba(0,0,0,.35) 45%, transparent 75%);
  opacity:var(--rip,0);transition:opacity 2.4s ease}
.pronto .ripado{--rip:.9}

/* texto */
.texto{position:relative;z-index:4;width:46%;max-width:44rem}
.sobre{font-size:.8rem;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--ouro-2);margin-bottom:1.2rem;display:flex;align-items:center;gap:.8rem}
.sobre::before{content:"";width:2.4rem;height:1px;background:var(--ouro)}
.titulo{font-family:var(--f-titulo);font-weight:700;font-size:var(--t-titulo);line-height:.9;text-transform:uppercase;color:var(--creme)}
.titulo .l{display:block}
.titulo .ouro{font-size:.46em;line-height:1.05;margin-top:.5em;font-weight:600;letter-spacing:.01em;background:linear-gradient(180deg in oklab, var(--ouro-2), var(--ouro));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--ouro-2)}
.apoio{margin-top:1.5rem;max-width:31rem;color:var(--creme-2);font-size:clamp(1.02rem,.95rem + .3vw,1.18rem)}
.acoes{display:flex;flex-wrap:wrap;gap:.8rem 1.6rem;align-items:center;margin-top:2rem}
.bt{display:inline-flex;align-items:center;gap:.6rem;background:var(--ouro);color:#1b140b;font-weight:600;text-decoration:none;padding:1rem 1.6rem;border-radius:999px;box-shadow:0 10px 30px -10px color-mix(in oklab, var(--ouro) 70%, transparent);transition:transform .3s, box-shadow .3s}
.bt:hover{transform:translateY(-2px);box-shadow:0 16px 36px -12px color-mix(in oklab, var(--ouro) 80%, transparent)}
.bt svg{width:20px;height:20px}
.bt-2{color:var(--creme);text-underline-offset:.3em;text-decoration-color:color-mix(in oklab, var(--ouro) 70%, transparent)}
.registro{margin-top:1.8rem;padding-top:1rem;border-top:1px solid color-mix(in oklab, var(--creme) 14%, transparent);font-size:.84rem;letter-spacing:.04em;color:var(--creme-2);max-width:31rem}
.registro b{color:var(--creme);font-weight:600}

/* palco: retrato + linha */
.palco{position:absolute;top:0;bottom:0;right:var(--pad);width:54%;z-index:2;--h:min(calc(var(--alto) * 1.45), calc(54vw * 1.75))}
.figura{position:absolute;left:0;top:calc(var(--topo-h) + 1.5vh);height:var(--h);width:calc(var(--h) * .4284)}
.retrato{position:relative;height:100%;width:100%;display:block;filter:saturate(.96) contrast(1.04) brightness(1.02)}
.contorno{position:absolute;inset:0;background:linear-gradient(270deg in oklab, var(--ouro-2), color-mix(in oklab, var(--ouro) 45%, transparent) 14%, transparent 30%);-webkit-mask:url(../img/retrato-terno.webp) center/100% 100% no-repeat;mask:url(../img/retrato-terno.webp) center/100% 100% no-repeat;transform:translateX(3px);filter:blur(1.6px);opacity:calc(.15 + var(--sobe-n,0) * .75);transition:opacity .9s ease}
.figura::before{content:"";position:absolute;inset:-6% -40% 20% -30%;background:radial-gradient(40% 40% at 60% 28% in oklab, color-mix(in oklab, var(--ouro) 16%, transparent), transparent 70%);z-index:-1}

.linha{position:absolute;top:24%;bottom:26%;left:calc(var(--h) * .4284 + 1.8rem);width:max(11rem, 26%)}
.trilho{position:absolute;left:0;top:0;bottom:0;width:2px;background:color-mix(in oklab, var(--creme) 14%, transparent);border-radius:2px}
.fio{position:absolute;left:0;bottom:0;width:100%;height:var(--sobe,0%);background:linear-gradient(0deg in oklab, var(--ouro), var(--ouro-2));box-shadow:0 0 16px var(--ouro), 0 0 40px color-mix(in oklab, var(--ouro) 50%, transparent);border-radius:2px;transition:height .9s cubic-bezier(.4,.1,.2,1)}
.ponta{position:absolute;left:50%;bottom:var(--sobe,0%);width:7px;height:7px;margin:0 0 -3px -3.5px;border-radius:50%;background:#fff6dc;box-shadow:0 0 12px 4px var(--ouro);transition:bottom .9s cubic-bezier(.4,.1,.2,1);opacity:var(--ponta,0)}
.linha ol{list-style:none;position:absolute;inset:0;display:flex;flex-direction:column-reverse;justify-content:space-between}
.linha li{position:relative;padding-left:1.4rem;font-size:.9rem;line-height:1.2;color:var(--creme-2);opacity:.38;transition:opacity .6s, color .6s;transform:translateY(-.55em)}
.linha li::before{content:"";position:absolute;left:-6px;top:.22em;width:14px;height:14px;border-radius:50%;background:var(--noite);border:2px solid color-mix(in oklab, var(--creme) 30%, transparent);transition:border-color .6s, background .6s, box-shadow .6s}
.linha li:first-child{transform:translateY(.45em)}
.linha li b{font-weight:500;display:block}
.linha li small{display:block;font-size:.74rem;color:var(--creme-2);opacity:.75;margin-top:.2rem;max-width:12rem}
.linha li.on{opacity:1;color:var(--creme)}
.linha li.on::before{border-color:var(--ouro);background:var(--ouro);box-shadow:0 0 0 6px color-mix(in oklab, var(--ouro) 18%, transparent)}

.prova{position:absolute;right:var(--pad);bottom:clamp(1.5rem,5vh,3.2rem);width:min(16rem,20vw);z-index:4}
.prova p{font-family:var(--f-titulo);font-weight:500;font-size:1.3rem;line-height:1.15;text-transform:uppercase;color:var(--creme)}
.prova footer{margin-top:.6rem;color:var(--creme-2);font-size:.8rem;line-height:1.4}
.prova .nota{color:var(--ouro-2);font-weight:600}

/* entrada */
.js .titulo .l,.js .sobre,.js .apoio,.js .acoes,.js .registro,.js .prova{opacity:0;transform:translateY(24px)}
.js .retrato{opacity:0;transform:translateY(24px)}
.js .mono-l,.js .mono-a{stroke-dasharray:80;stroke-dashoffset:80}
.pronto .mono-l,.pronto .mono-a{stroke-dashoffset:0;transition:stroke-dashoffset 1.4s ease .3s}
.pronto .mono-a{transition-delay:.9s}
.pronto .titulo .l,.pronto .sobre,.pronto .apoio,.pronto .acoes,.pronto .registro,.pronto .prova,.pronto .retrato{opacity:1;transform:none;transition:opacity 1s ease, transform 1.2s cubic-bezier(.2,.7,.2,1)}
.pronto .sobre{transition-delay:.1s}
.pronto .titulo .l:nth-child(1){transition-delay:.25s}
.pronto .titulo .l:nth-child(2){transition-delay:.42s}
.pronto .titulo .l:nth-child(3){transition-delay:.62s}
.pronto .retrato{transition-delay:.15s;transition-duration:1.6s}
.pronto .apoio{transition-delay:.9s}
.pronto .acoes{transition-delay:1.05s}
.pronto .registro{transition-delay:1.2s}
.pronto .prova{transition-delay:4.2s}


/* notebook baixo */
@media (max-width:1180px) and (min-width:901px){
  .texto{width:48%}
  .palco{width:52%}
  .prova{width:min(14rem,22vw)}
  .linha li{font-size:.82rem}
}
/* celular e tablet em pé */
@media (max-width:900px){
  :root{--topo-h:64px;--t-titulo:clamp(3.3rem, 1.4rem + 10vw, 6rem)}
  .nav a:not(.nav-wa){display:none}
  .nav .nav-wa{padding:.45rem .9rem;font-size:.85rem}
  .marca span{font-size:.95rem}
  .mono{width:36px;height:36px}
  .hero{display:flex;flex-direction:column;align-items:stretch;padding-top:calc(var(--topo-h) + 1.1rem)}
  .texto{display:contents}
  .sobre{order:1;font-size:.72rem;margin-bottom:.8rem}
  .titulo{order:2;position:relative;z-index:4}
  .titulo .l:nth-child(1),.titulo .l:nth-child(2){display:inline}
  .titulo .ouro{font-size:.5em;margin-top:.25em}
  .palco{order:3;position:relative;inset:auto;width:auto;margin:0 calc(-1 * var(--pad));height:min(118vw,620px);overflow:hidden;-webkit-mask:linear-gradient(180deg, #000 78%, transparent);mask:linear-gradient(180deg, #000 78%, transparent)}
  .palco{--h:calc(min(118vw,620px) * 1.75)}
  .figura{top:3%;left:calc(50% - var(--h) * .4284 * .62)}
  .linha{top:14%;bottom:24%;left:auto;right:var(--pad);width:7.6rem}
  .linha li{font-size:.78rem;padding-left:1.1rem;text-shadow:0 1px 8px rgba(0,0,0,.6)}
  .linha li small{display:none}
  .acoes{order:4;margin-top:-5.2rem;position:relative;z-index:5}
  .apoio{order:5;margin-top:1.2rem;font-size:1.02rem}
  .bt{flex:1 1 100%;justify-content:center}
  .registro{order:6;margin-top:1.3rem}
  .prova{order:7;position:relative;right:auto;bottom:auto;width:auto;margin:1.6rem 0 .6rem}
  .prova p{font-size:1.2rem}
}
@media (max-width:900px) and (min-width:600px){
  .palco{height:min(86vw,720px)}
  .palco{--h:calc(min(86vw,720px) * 1.6)}
  .figura{left:calc(42% - var(--h) * .4284 * .5)}
  .linha{width:12rem;right:calc(var(--pad) + 4vw)}
  .linha li{font-size:.92rem}
}

/* ==== rc ==== */
/* rc · "INSS é comigo" (papel) */
.rc{padding-top:calc(var(--sec-y) * .9);padding-bottom:var(--sec-y);min-height:min(100svh,980px);display:flex;align-items:center;--rc-w:44vw}
.rc .sec-in{width:100%}

/* painel escuro com as ampulhetas */
.rc-foto{position:absolute;left:0;top:0;bottom:0;width:var(--rc-w);z-index:-1;margin:0;overflow:hidden;background:var(--noite)}
.rc-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:46% 40%;filter:sepia(.42) hue-rotate(-10deg) saturate(1.5) contrast(1.12) brightness(.9)}
.rc-foto::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:multiply;
  background:
    linear-gradient(180deg in oklab, color-mix(in oklab, var(--noite) 80%, transparent), color-mix(in oklab, var(--taupe) 22%, transparent) 26%, transparent 46%, color-mix(in oklab, var(--taupe) 26%, transparent) 70%, color-mix(in oklab, var(--noite) 94%, transparent) 92%),
    linear-gradient(90deg in oklab, color-mix(in oklab, var(--noite) 40%, transparent), transparent 35%)}
.rc-luz{position:absolute;inset:0;z-index:2;pointer-events:none;mix-blend-mode:screen;
  background:
    radial-gradient(24% 14% at 21% 40% in oklab, color-mix(in oklab, var(--ouro) 55%, transparent), transparent),
    radial-gradient(24% 14% at 76% 35% in oklab, color-mix(in oklab, var(--ouro) 55%, transparent), transparent),
    linear-gradient(270deg in oklab, color-mix(in oklab, var(--ouro) 42%, transparent), transparent 20%)}
/* a areia que escorre: fio dourado na borda do painel, de cima para baixo */
.rc-foto::after{content:"";position:absolute;right:0;top:0;width:3px;height:100%;z-index:3;background:linear-gradient(180deg in oklab, var(--ouro-2), var(--ouro));box-shadow:0 0 18px var(--ouro), 0 0 46px color-mix(in oklab, var(--ouro) 55%, transparent);transform-origin:top;transition:transform 2.6s var(--curva-linha)}
.rc-leg{position:absolute;z-index:4;left:var(--pad);right:clamp(1.5rem,3vw,3rem);bottom:clamp(2rem,4vw,3.5rem);color:var(--creme);max-width:26rem}
.rc-leg-rot{display:flex;align-items:center;gap:.7rem;font-size:var(--t-mini);font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ouro-2)}
.rc-leg-rot::before{content:"";width:2rem;height:1px;background:var(--ouro)}
.rc-leg-txt{display:block;margin-top:.8rem;font-size:clamp(1.05rem,.95rem + .35vw,1.25rem);line-height:1.45;color:var(--creme);text-shadow:0 1px 14px rgba(0,0,0,.55)}

/* texto */
.rc-texto{margin-left:calc(var(--rc-w) - var(--pad) + clamp(2.5rem,1rem + 4vw,6rem));max-width:42rem}
.rc-coro{list-style:none;margin:1.5rem 0 0}
.rc-l{font-family:var(--f-titulo);font-weight:500;text-transform:uppercase;font-size:clamp(1.55rem,.9rem + 1.7vw,2.6rem);line-height:1.05;letter-spacing:.01em;padding:.16em 0}
.rc-l b{font-weight:700}
.rc-f{position:relative;display:inline-block;transition:color .7s ease}
.rc-f::after{content:"";position:absolute;left:-.1em;right:-.1em;top:52%;height:.09em;min-height:3px;background:var(--ouro);border-radius:2px;transform-origin:left;transition:transform .5s var(--curva-linha)}
.rc-l .rc-f{color:color-mix(in oklab, var(--tinta-2) 58%, var(--papel))}

.rc-titulo{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;line-height:.88;font-size:clamp(4.4rem,1.2rem + 9.4vw,11.5rem);color:var(--tinta);margin-top:.16em;letter-spacing:-.005em}
.rc-t1,.rc-t2{display:block}
.rc-t2{padding-bottom:.1em;margin-bottom:-.1em;background:linear-gradient(180deg in oklab, #a87418, var(--ouro-tinta));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--ouro-tinta)}
/* o fio que sai do painel e corre sob o título, até o nó */
.rc-fio{display:block;position:relative;height:3px;margin-top:.3em;margin-left:calc(-1 * clamp(2.5rem,1rem + 4vw,6rem));width:calc(clamp(2.5rem,1rem + 4vw,6rem) + min(100%,22rem));background:linear-gradient(90deg in oklab, var(--ouro), var(--ouro-2));box-shadow:0 0 14px color-mix(in oklab, var(--ouro) 60%, transparent);transform-origin:left;transition:transform 1s var(--curva-linha)}
.rc-fio i{position:absolute;right:-8px;top:-6.5px;width:16px;height:16px;border-radius:50%;background:var(--ouro);box-shadow:0 0 0 7px color-mix(in oklab, var(--ouro) 24%, transparent), 0 0 18px var(--ouro);transition:transform .6s var(--curva), opacity .6s}

.rc-lead{margin-top:2.2rem;font-size:clamp(1.2rem,1rem + .6vw,1.55rem);line-height:1.4;font-weight:500;color:var(--tinta);max-width:34rem}
.rc-assina{margin-top:.9rem;font-size:var(--t-mini);color:var(--tinta-2);letter-spacing:.02em}
.rc-assina a{color:var(--ouro-tinta);text-underline-offset:.25em;display:inline-flex;align-items:center;min-height:48px}
.rc-marco{font-size:var(--t-mini)}
.rc-acoes{margin-top:1rem}

/* o gesto: as três linhas chegam, são riscadas e recuam; "INSS é comigo." chega grande */
.js .rc-foto::after{transform:scaleY(0)}
.js .rc-l{opacity:0;transform:translateY(18px);transition:opacity .7s ease, transform .9s var(--curva)}
.js .rc-l .rc-f{color:var(--tinta)}
.js .rc-f::after{transform:scaleX(0)}
.js .rc-t1,.js .rc-t2{opacity:0;transform:translateY(.22em);transition:opacity .9s ease, transform 1.1s var(--curva)}
.js .rc-fio{transform:scaleX(0)}
.js .rc-fio i{transform:scale(0);opacity:0}

.rc.rc-vai .rc-foto::after{transform:none}
.rc.rc-vai .rc-l{opacity:1;transform:none}
.rc.rc-vai .rc-l:nth-child(2){transition-delay:.25s}
.rc.rc-vai .rc-l:nth-child(3){transition-delay:.5s}
.rc.rc-vai .rc-f::after{transform:none}
.rc.rc-vai .rc-l .rc-f{color:color-mix(in oklab, var(--tinta-2) 58%, var(--papel))}
.rc.rc-vai .rc-l:nth-child(1) .rc-f,.rc.rc-vai .rc-l:nth-child(1) .rc-f::after{transition-delay:1.1s}
.rc.rc-vai .rc-l:nth-child(2) .rc-f,.rc.rc-vai .rc-l:nth-child(2) .rc-f::after{transition-delay:1.35s}
.rc.rc-vai .rc-l:nth-child(3) .rc-f,.rc.rc-vai .rc-l:nth-child(3) .rc-f::after{transition-delay:1.6s}
.rc.rc-vai .rc-t1,.rc.rc-vai .rc-t2{opacity:1;transform:none}
.rc.rc-vai .rc-t1{transition-delay:2s}
.rc.rc-vai .rc-t2{transition-delay:2.15s}
.rc.rc-vai .rc-fio{transform:none;transition-delay:2.5s}
.rc.rc-vai .rc-fio i{transform:none;opacity:1;transition-delay:3.2s}
.rc.rc-ja *,.rc.rc-ja .rc-foto::after{transition-delay:0s!important}

@media (min-width:1700px){ .rc{--rc-w:42vw} .rc-texto{margin-left:calc(var(--rc-w) - (100vw - var(--max)) / 2 + 6rem)} }
@media (max-width:1180px) and (min-width:901px){
  .rc{--rc-w:40vw}
  .rc-leg-txt{font-size:1rem}
}
@media (max-width:900px){
  .rc{display:block;min-height:0;padding-top:0}
  .rc-foto{position:relative;width:auto;height:min(118vw,640px);margin:0 calc(-1 * var(--pad))}
  .rc-img{object-position:48% 44%}
  .rc-foto::before{background:linear-gradient(180deg in oklab, color-mix(in oklab, var(--noite) 70%, transparent), transparent 30%, transparent 48%, color-mix(in oklab, var(--noite) 92%, transparent) 88%)}
  .rc-foto::after{top:auto;bottom:0;left:0;width:100%;height:3px;transform-origin:left}
  .js .rc-foto::after{transform:scaleX(0)}
  .rc-leg{left:var(--pad);right:var(--pad);bottom:1.6rem}
  .rc-leg-txt{font-size:1.05rem}
  .rc-texto{margin:2.6rem 0 0;position:relative;max-width:none}
  .rc-coro{margin-top:1.1rem}
  .rc-titulo{font-size:clamp(4rem,1rem + 17vw,7.5rem)}
  .rc-fio{margin-left:0;width:min(100%,22rem)}
  .rc-bt{width:100%}
}

/* ==== ar ==== */
/* ar · Áreas — pele noite */
.ar-malha{position:absolute;inset:0;z-index:-3;pointer-events:none}
.ar-malha i{position:absolute;display:block;border-radius:50%}
.ar-malha i:nth-child(1){width:70vmax;height:70vmax;left:-30vmax;top:10%;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--taupe) 70%, transparent), transparent)}
.ar-malha i:nth-child(2){width:60vmax;height:60vmax;right:-28vmax;bottom:-20vmax;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--vinho) 55%, transparent), transparent)}

.ar-cab{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);column-gap:clamp(2rem,1rem + 4vw,6rem);align-items:end;margin-bottom:clamp(3rem,2rem + 4vw,6rem)}
.ar-cab .marco{grid-column:1 / -1}
.ar-tit{margin-top:1.4rem;font-size:clamp(2.8rem,1.4rem + 5.4vw,7rem)}
.ar-apoio{margin-top:1.4rem;padding-left:1.4rem;border-left:1px solid color-mix(in oklab, var(--ouro) 50%, transparent);margin-bottom:.4rem}

.ar{--ar-x:1.1rem;--ar-esq:clamp(3.5rem,2.5rem + 2.5vw,5.5rem)}
.ar-lista{list-style:none;position:relative}
.ar-lista::before{content:"";position:absolute;left:var(--ar-x);top:0;bottom:0;width:2px;margin-left:-1px;background:color-mix(in oklab, var(--creme) 12%, transparent)}

.ar-faixa{position:relative;padding:clamp(2.5rem,2rem + 2.5vw,4.5rem) 0 clamp(2.5rem,2rem + 2.5vw,4.5rem) var(--ar-esq);border-top:1px solid color-mix(in oklab, var(--creme) 12%, transparent)}
.ar-faixa:last-child{border-bottom:1px solid color-mix(in oklab, var(--creme) 12%, transparent)}
/* fio aceso que desce pela faixa */
.ar-faixa::before{content:"";position:absolute;left:var(--ar-x);top:0;width:2px;margin-left:-1px;height:var(--ar-fio,0%);background:linear-gradient(180deg in oklab, var(--ouro-2), var(--ouro));box-shadow:0 0 14px var(--ouro);transition:height 1.4s var(--curva-linha)}
/* brilho quente atrás da faixa acesa */
.ar-faixa::after{content:"";position:absolute;z-index:-1;left:-20%;top:-10%;width:90%;height:120%;pointer-events:none;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--ouro) 11%, transparent), transparent);opacity:0;transition:opacity 1.6s ease .3s}
.ar-faixa.on{--ar-fio:100%}
.ar-faixa.on::after{opacity:1}

.ar-no{position:absolute;left:var(--ar-x);top:calc(clamp(2.5rem,2rem + 2.5vw,4.5rem) + 1.2rem);width:16px;height:16px;margin-left:-8px;border-radius:50%;background:var(--noite);border:2px solid color-mix(in oklab, var(--creme) 30%, transparent);transition:background .6s .5s, border-color .6s .5s, box-shadow .6s .5s;z-index:1}
.ar-faixa.on .ar-no{background:var(--ouro);border-color:var(--ouro);box-shadow:0 0 0 7px color-mix(in oklab, var(--ouro) 18%, transparent), 0 0 24px var(--ouro)}

/* nome: ocupa a largura, medido pelo contêiner */
.ar-nome{position:relative;container-type:inline-size;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:1.5rem}
.ar-h{grid-column:1;grid-row:1;font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;line-height:1;padding-top:.14em;margin-top:-.14em;font-size:clamp(3rem, 12.2cqi, 10.5rem);letter-spacing:-.005em;color:transparent;-webkit-text-stroke:1.5px color-mix(in oklab, var(--creme) 50%, transparent);
  background:linear-gradient(90deg, var(--creme) 50%, transparent 50%) right/200% 100% no-repeat;-webkit-background-clip:text;background-clip:text;transition:background-position 1.4s var(--curva) .35s, -webkit-text-stroke-color 1.2s .35s}
.ar-faixa.on .ar-h{background-position:left;-webkit-text-stroke-color:transparent}
.ar-num{grid-column:2;grid-row:1;align-self:start;font-family:var(--f-titulo);font-weight:600;line-height:1;font-size:clamp(3rem,1.6rem + 5vw,7.5rem);color:transparent;-webkit-text-stroke:1.5px color-mix(in oklab, var(--ouro) 80%, transparent);opacity:.7;background:linear-gradient(0deg in oklab, var(--ouro), var(--ouro-2)) bottom/100% 0% no-repeat;-webkit-background-clip:text;background-clip:text;transition:background-size 1.4s var(--curva-linha) .6s, opacity 1s .6s}
.ar-faixa.on .ar-num{background-size:100% 100%;opacity:1}
.ar-sub{grid-column:1 / -1;margin-top:.9rem;font-size:var(--t-mini);letter-spacing:.24em;text-transform:uppercase;color:var(--ouro-2);font-weight:500;display:flex;align-items:center;gap:.8rem}
.ar-sub::after{content:"";flex:1;height:1px;background:linear-gradient(90deg in oklab, color-mix(in oklab, var(--ouro) 60%, transparent), transparent)}

/* corpo: frase de abertura + eco | lista */
.ar-corpo{margin-top:clamp(1.6rem,1rem + 1.5vw,2.6rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(2rem,1rem + 4vw,6rem);row-gap:1.4rem;align-items:start}
.ar-lead{grid-column:1;font-size:clamp(1.15rem,1rem + .55vw,1.5rem);color:var(--creme);line-height:1.4;max-width:30rem}
.ar-itens{grid-column:2;grid-row:1 / span 2;list-style:none}
.ar-itens li{position:relative;padding:.75rem 0 .75rem 1.6rem;color:var(--creme-2);border-bottom:1px solid color-mix(in oklab, var(--creme) 10%, transparent)}
.ar-itens{border-top:1px solid color-mix(in oklab, var(--creme) 10%, transparent)}
.ar-itens li::before{content:"";position:absolute;left:0;top:calc(.75rem + .72em);width:10px;height:1px;background:var(--ouro)}
.ar-itens li{transition:color .4s}
.ar-faixa:hover .ar-itens li{color:var(--creme)}
.ar-itens b{color:var(--creme);font-weight:500}
.ar-eco{grid-column:1;max-width:30rem}
.ar-eco p{font-family:var(--f-titulo);font-weight:500;text-transform:uppercase;font-size:1.35rem;line-height:1.15;color:var(--ouro-2)}
.ar-eco footer{margin-top:.45rem;font-size:var(--t-mini);color:var(--creme-2)}

.ar-fecho{position:relative;margin-top:0;padding-top:clamp(3rem,2rem + 3vw,5rem);padding-left:var(--ar-esq);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.4rem 2rem}
.ar-no-fim{top:clamp(3rem,2rem + 3vw,5rem);margin-top:.9rem;left:var(--ar-x)}
.ar-fecho::before{content:"";position:absolute;left:var(--ar-x);top:0;width:2px;margin-left:-1px;height:calc(clamp(3rem,2rem + 3vw,5rem) + 1rem);background:linear-gradient(180deg in oklab, var(--ouro), var(--ouro-2))}
.ar-fecho.visto .ar-no-fim{background:var(--ouro);border-color:var(--ouro);box-shadow:0 0 0 7px color-mix(in oklab, var(--ouro) 18%, transparent), 0 0 24px var(--ouro)}
.ar-fecho p{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;font-size:clamp(2rem,1.4rem + 2vw,3.4rem);line-height:.95;max-width:40rem}
.ar-fecho p span{display:block;font-size:.5em;font-weight:600;line-height:1.1;margin-top:.45em;color:var(--ouro-2)}

@media (max-width:900px){
  .ar{--ar-x:.55rem;--ar-esq:2.2rem}
  .ar-cab{grid-template-columns:minmax(0,1fr)}
  .ar-apoio{padding-left:1rem}
  .ar-no{top:calc(clamp(2.5rem,2rem + 2.5vw,4.5rem) + .5rem)}
  .ar-h{font-size:clamp(2.4rem, 15.5cqi, 6rem)}
  .ar-nome{grid-template-columns:minmax(0,1fr)}
  .ar-num{grid-column:1;grid-row:auto;order:-1;font-size:1rem;-webkit-text-stroke:0;color:var(--ouro-2);opacity:1;letter-spacing:.2em;margin-bottom:.5rem}
  .ar-h{grid-row:auto}
  .ar-corpo{grid-template-columns:minmax(0,1fr)}
  .ar-lead,.ar-itens,.ar-eco{grid-column:1;grid-row:auto}
  .ar-fecho{padding-left:var(--ar-esq)}
  .ar-fecho p{font-size:clamp(1.9rem,1.4rem + 2vw,3rem)}
  .ar-fecho p span{font-size:.56em}
  .ar-fecho .botao{flex:1 1 100%}
}

/* ==== cm ==== */
/* cm · Caminho — pele madeira com ripado aceso pela linha */
.cm{--cm-y:0px}
.cm .ripado-sec{opacity:.32;-webkit-mask:linear-gradient(180deg, transparent, #000 18%, #000 82%, transparent);mask:linear-gradient(180deg, transparent, #000 18%, #000 82%, transparent)}
.cm::before{content:"";position:absolute;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(closest-side in oklab, color-mix(in oklab, #000 45%, transparent), transparent) -20% 50%/70% 120% no-repeat}
/* camada de luz: o mesmo ripado, mais claro e dourado, só em volta da ponta da linha */
.cm-luz{position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:repeating-linear-gradient(90deg, color-mix(in oklab, var(--ouro) 55%, var(--taupe-2)) 0 14px, transparent 14px 17px, color-mix(in oklab, #000 30%, transparent) 17px 19px, transparent 19px 34px);
  -webkit-mask:radial-gradient(52rem 34rem at 70% var(--cm-y) in oklab, rgba(0,0,0,.75) 0%, rgba(0,0,0,.25) 45%, transparent 72%);
  mask:radial-gradient(52rem 34rem at 70% var(--cm-y) in oklab, rgba(0,0,0,.85) 0%, rgba(0,0,0,.3) 45%, transparent 72%);opacity:.75}

.cm-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);column-gap:clamp(2rem,1rem + 5vw,7rem);align-items:start}
.cm-cab{position:sticky;top:calc(var(--topo-h) + 3rem)}
.cm-tit{margin-top:1.4rem}
.cm-apoio{margin-top:1.4rem}
.cm-marcas{grid-column:1 / -1;display:flex;gap:6px;margin-top:1rem;max-width:20rem}
.cm-marcas i{flex:1;height:3px;border-radius:2px;background:color-mix(in oklab, var(--creme) 16%, transparent);transition:background .5s, box-shadow .5s}
.cm-marcas i.on{background:var(--ouro);box-shadow:0 0 10px color-mix(in oklab, var(--ouro) 60%, transparent)}
/* chegada: a linha termina no botão */
.cm-acao{position:relative;padding-top:.4rem}
.cm-no-fim{top:1.1rem;width:22px;height:22px;margin-left:-11px}
.cm-acao.on .cm-no-fim{background:var(--ouro-2);border-color:var(--ouro-2);box-shadow:0 0 0 9px color-mix(in oklab, var(--ouro) 22%, transparent), 0 0 34px var(--ouro)}
.cm-acao-txt{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;font-size:clamp(1.7rem,1.2rem + 1.6vw,2.6rem);line-height:1.05;margin-bottom:1.3rem;color:var(--ouro-2)}
.cm-conta{margin-top:clamp(2.5rem,1.5rem + 3vw,4.5rem);display:grid;grid-template-columns:auto 1fr;align-items:end;column-gap:.8rem;font-family:var(--f-titulo);line-height:1}
.cm-atual{font-weight:700;font-size:clamp(6rem,3rem + 7vw,11rem);color:transparent;-webkit-text-stroke:1.5px var(--ouro);background:linear-gradient(0deg in oklab, var(--ouro), var(--ouro-2)) bottom/100% var(--cm-enche,0%) no-repeat;-webkit-background-clip:text;background-clip:text;transition:background-size .6s var(--curva-linha)}
.cm-de{font-weight:600;font-size:2rem;color:var(--creme-2);padding-bottom:.4rem}
.cm-nome-atual{grid-column:1 / -1;margin-top:1.2rem;font-family:var(--f-texto);font-size:var(--t-mini);letter-spacing:.2em;text-transform:uppercase;color:var(--creme-2);line-height:1.4}

.cm-linha{position:relative;padding-left:4.5rem}
.cm-trilho{position:absolute;left:1.5rem;top:.6rem;height:var(--cm-alt,90%);width:2px;margin-left:-1px;background:color-mix(in oklab, var(--creme) 16%, transparent);border-radius:2px}
.cm-fio{position:absolute;left:0;top:0;width:100%;height:var(--cm-h,0px);background:linear-gradient(180deg in oklab, var(--ouro), var(--ouro-2));box-shadow:0 0 16px var(--ouro), 0 0 40px color-mix(in oklab, var(--ouro) 50%, transparent);border-radius:2px}
.cm-ponta{position:absolute;left:50%;top:var(--cm-h,0px);width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:#fff6dc;box-shadow:0 0 14px 5px var(--ouro);opacity:var(--cm-pv,1);transition:opacity .6s}

.cm-passos{list-style:none}
.cm-passo{position:relative;padding-bottom:clamp(2.6rem,2rem + 2vw,4rem)}
.cm-passo>:not(.cm-no):not(.cm-fase){opacity:.4;transform:translateX(-10px);transition:opacity .8s, transform 1s var(--curva)}
.cm-passo.on>*{opacity:1!important;transform:none!important}
.cm-t{transition-delay:.12s!important}
.cm-no{position:absolute;left:-3rem;top:.2rem;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:var(--madeira);border:2px solid color-mix(in oklab, var(--creme) 34%, transparent);transition:background .5s, border-color .5s, box-shadow .5s}
.cm-passo.on .cm-no{background:var(--ouro);border-color:var(--ouro);box-shadow:0 0 0 7px color-mix(in oklab, var(--ouro) 20%, transparent), 0 0 24px var(--ouro)}
.cm-passo:has(.cm-fase) .cm-no{top:calc(.2rem + 1.3125rem + 1rem)}
.cm-fase{position:relative;display:flex;align-items:center;gap:.8rem;margin-bottom:1rem;font-size:var(--t-mini);font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro-2)}
.cm-fase i{font-style:normal;color:var(--creme-2);letter-spacing:.1em}
.cm-fase::after{content:"";flex:1;height:1px;background:linear-gradient(90deg in oklab, color-mix(in oklab, var(--ouro) 55%, transparent), transparent)}
.cm-fase::before{content:"";position:absolute;left:-3rem;top:50%;width:26px;height:2px;margin-left:-13px;background:var(--ouro-2)}
.cm-n{font-family:var(--f-titulo);font-weight:600;font-size:1rem;letter-spacing:.2em;color:var(--ouro-2)}
.cm-h{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;line-height:.95;font-size:clamp(2rem,1.3rem + 2.2vw,3.4rem);margin-top:.3rem;color:var(--creme)}
.cm-t{margin-top:.7rem;color:var(--creme-2);max-width:32rem}
.cm-eco{margin-top:1.6rem}
.cm-eco p{font-family:var(--f-titulo);font-weight:500;text-transform:uppercase;font-size:1.6rem;color:var(--ouro-2);line-height:1}
.cm-eco footer{margin-top:.4rem;font-size:var(--t-mini);color:var(--creme-2)}

@media (max-width:900px){
  .cm-in{grid-template-columns:minmax(0,1fr)}
  .cm-cab{position:relative;top:auto;margin-bottom:3rem}
  .cm-linha{padding-left:2.6rem}
  .cm-trilho{left:.55rem}
  .cm-no{left:-2.05rem}
  .cm-acao .botao{width:calc(100% + 2.6rem);margin-left:-2.6rem;font-size:1rem;padding-inline:1rem;white-space:nowrap}
  .cm-conta{display:none}
  .cm-no-fim{left:-2.05rem}
  .cm-fase::before{left:-2.05rem;width:18px;margin-left:-9px}
  .cm-luz{-webkit-mask:radial-gradient(30rem 26rem at 30% var(--cm-y) in oklab, rgba(0,0,0,.75) 0%, rgba(0,0,0,.25) 45%, transparent 72%);mask:radial-gradient(30rem 26rem at 30% var(--cm-y) in oklab, rgba(0,0,0,.75) 0%, rgba(0,0,0,.25) 45%, transparent 72%)}
}

/* ==== vz ==== */
/* vz · Avaliações (papel) */
.vz .marco{font-size:var(--t-mini)}
.vz-topo{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:2rem 4rem;align-items:end}
.vz-titulo{margin-top:1.4rem;max-width:16ch}
.vz-titulo .ouro{max-width:none}
.vz-tl{display:block;white-space:nowrap}

/* a nota: 5,0 grande, cinco nós numa linha que acendem */
.vz-nota{justify-self:end;position:relative;isolation:isolate;overflow:clip;width:min(100%,24rem);padding:2.4rem 2.4rem 1.6rem;background:var(--noite);color:var(--creme);border-radius:var(--r);box-shadow:0 30px 60px -30px color-mix(in oklab, var(--noite) 70%, transparent)}
.vz-nota::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg in oklab, var(--ouro), var(--ouro-2));box-shadow:0 0 18px var(--ouro)}
.vz-nota::after{content:"";position:absolute;z-index:-1;width:30rem;height:30rem;right:-12rem;top:-14rem;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--ouro) 26%, transparent), transparent);pointer-events:none}
.vz-num{font-family:var(--f-titulo);font-weight:700;font-size:clamp(7rem,3rem + 9vw,13rem);line-height:.82;letter-spacing:-.01em;padding-bottom:.08em}
.vz-num span{background:linear-gradient(180deg in oklab, var(--ouro-2), var(--ouro));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--ouro-2)}
.vz-nos{position:relative;display:flex;justify-content:space-between;align-items:center;width:100%;max-width:none;height:20px;margin-top:1.6rem}
.vz-nos-fio{position:absolute;left:7px;right:7px;top:50%;height:2px;margin-top:-1px;background:color-mix(in oklab, var(--creme) 16%, transparent)}
.vz-nos-fio::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg in oklab, var(--ouro), var(--ouro-2));transform-origin:left;transition:transform 2s var(--curva-linha)}
.vz-nos i{position:relative;width:14px;height:14px;border-radius:50%;background:var(--ouro);box-shadow:0 0 0 6px color-mix(in oklab, var(--ouro) 20%, transparent);transition:background .5s, box-shadow .5s, border-color .5s;border:2px solid var(--ouro)}
.vz-qtd{margin-top:1.2rem;font-size:var(--t-apoio);font-weight:500;color:var(--creme)}
.vz-link{color:var(--ouro-2);font-weight:600;text-decoration:underline}

/* destaque */
.vz-destaque{position:relative;margin:clamp(4rem,3rem + 4vw,7rem) 0 0;padding-top:2.5rem;border-top:1px solid color-mix(in oklab, var(--tinta) 14%, transparent)}
.vz-aspa{position:absolute;left:-.04em;top:.08em;font-family:var(--f-titulo);font-weight:700;font-size:clamp(9rem,6rem + 8vw,16rem);line-height:1;color:color-mix(in oklab, var(--ouro) 55%, var(--papel));pointer-events:none;z-index:-1}
.vz-destaque blockquote p{font-family:var(--f-titulo);font-weight:500;text-transform:uppercase;font-size:clamp(2.4rem,1.1rem + 4.6vw,6.4rem);line-height:.98;max-width:30ch;color:var(--tinta);padding-left:clamp(3.5rem,2rem + 5vw,8rem);text-wrap:balance}
.vz figcaption{margin-top:1rem;font-size:var(--t-mini);font-weight:600;color:var(--tinta);letter-spacing:.02em}
.vz figcaption span{font-weight:400;color:var(--tinta-2)}
.vz-destaque figcaption{padding-left:clamp(3.5rem,2rem + 5vw,8rem);font-size:1rem}

/* meio: a história do Jaudiney (linha com nós) + o jeito de receber */
.vz-meio{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3rem clamp(3rem,6vw,7rem);margin-top:clamp(4rem,3rem + 4vw,7rem)}
.vz-rot{font-size:var(--t-mini);font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro-tinta);margin-bottom:1.2rem}
.vz-historia blockquote{margin:0}
.vz-h-tit{font-family:var(--f-titulo);font-weight:600;text-transform:uppercase;font-size:clamp(1.9rem,1.2rem + 1.8vw,3rem);line-height:1;color:var(--tinta)}
.vz-passos{list-style:none;position:relative;margin-top:1.8rem;padding-left:2.2rem}
.vz-passos::before{content:"";position:absolute;left:6px;top:.5rem;bottom:.5rem;width:2px;background:linear-gradient(180deg in oklab, var(--ouro), var(--ouro-2))}
.vz-passos li{position:relative;font-size:var(--t-corpo);line-height:1.5;color:var(--tinta-2)}
.vz-passos li+li{margin-top:1.1rem}
.vz-passos li::before{content:"";position:absolute;left:calc(-2.2rem + 1px);top:.35em;width:12px;height:12px;border-radius:50%;background:var(--ouro);box-shadow:0 0 0 5px color-mix(in oklab, var(--ouro) 20%, transparent)}

.vz-receber{display:flex;flex-direction:column;position:relative;isolation:isolate;padding:clamp(1.8rem,1rem + 2.5vw,3rem);background:var(--papel-2);border-radius:var(--r);border-left:3px solid var(--ouro)}
.vz-r{margin:0}
.vz-r+.vz-r{margin-top:2rem}
.vz-r blockquote p{font-size:clamp(1.15rem,1rem + .5vw,1.45rem);line-height:1.4;font-weight:500;color:var(--tinta)}
.vz-r2{padding-left:clamp(1rem,3vw,3rem)}
.vz-r3{padding-left:clamp(2rem,6vw,6rem)}
.vz-r figcaption::before{content:"";display:inline-block;width:1.4rem;height:1px;background:var(--ouro-tinta);vertical-align:.3em;margin-right:.6rem}

/* coro: as curtas, em linha corrida */
.vz-fim{margin-top:clamp(4rem,3rem + 4vw,7rem);padding-top:2.5rem;border-top:1px solid color-mix(in oklab, var(--tinta) 14%, transparent)}
.vz-coro{list-style:none;font-family:var(--f-titulo);font-weight:500;text-transform:uppercase;font-size:clamp(1.4rem,1rem + 1.2vw,2.2rem);line-height:1.3;color:var(--tinta)}
.vz-coro li{display:inline}
.vz-coro li:nth-child(even) q{color:var(--tinta-2)}
.vz-coro li+li::before{content:"";display:inline-block;width:12px;height:12px;border-radius:50%;background:var(--ouro);margin:0 .7em;vertical-align:.15em;box-shadow:0 0 0 5px color-mix(in oklab, var(--ouro) 18%, transparent)}
.vz-coro q{quotes:"“" "”"}
.vz-coro cite{font-family:var(--f-texto);font-style:normal;font-weight:600;font-size:var(--t-mini);letter-spacing:.06em;text-transform:none;color:var(--ouro-tinta);white-space:nowrap;vertical-align:.25em;margin-left:.3em}

/* o gesto: o fio corre e os cinco nós acendem, um a um */
.js .vz-nos-fio::after{transform:scaleX(0)}
.js .vz-nos i{background:var(--noite);border-color:color-mix(in oklab, var(--creme) 30%, transparent);box-shadow:0 0 0 0 transparent}
.vz-nota.visto .vz-nos-fio::after{transform:none;transition-delay:.5s}
.js .vz-nota.visto .vz-nos i{background:var(--ouro);border-color:var(--ouro);box-shadow:0 0 0 6px color-mix(in oklab, var(--ouro) 20%, transparent)}
.vz-nota.visto .vz-nos i:nth-of-type(1){transition-delay:.5s}
.vz-nota.visto .vz-nos i:nth-of-type(2){transition-delay:.9s}
.vz-nota.visto .vz-nos i:nth-of-type(3){transition-delay:1.3s}
.vz-nota.visto .vz-nos i:nth-of-type(4){transition-delay:1.7s}
.vz-nota.visto .vz-nos i:nth-of-type(5){transition-delay:2.1s}

@media (max-width:900px){
  .vz-topo{grid-template-columns:minmax(0,1fr)}
  .vz-nota{justify-self:stretch;width:auto;padding:2rem 1.6rem 1.2rem}
  .vz-meio{grid-template-columns:minmax(0,1fr)}
  .vz-r2,.vz-r3{padding-left:0}
  .vz-tl{white-space:normal}
  .vz-destaque blockquote p,.vz-destaque figcaption{padding-left:2.6rem}
  .vz-aspa{font-size:8rem}
}

/* ==== so ==== */
/* so · Sobre o Dr. Lucas (noite) */
@property --so-l{syntax:'<number>';inherits:true;initial-value:0}
.so{--so-l:0;padding-bottom:calc(var(--sec-y) * .7)}
.so-malha{position:absolute;inset:0;z-index:-3;pointer-events:none}
.so-malha i{position:absolute;display:block;border-radius:50%}
.so-malha i:nth-child(1){width:70vmax;height:70vmax;right:-22vmax;top:-18vmax;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--taupe) 80%, transparent), transparent);animation:so-deriva 34s ease-in-out infinite alternate}
.so-malha i:nth-child(2){width:54vmax;height:54vmax;left:-20vmax;bottom:-24vmax;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--vinho) 55%, transparent), transparent);animation:so-deriva 40s ease-in-out infinite alternate-reverse}
@keyframes so-deriva{to{transform:translate(-4vmax,3vmax) scale(1.06)}}

.so-grade{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.18fr);gap:clamp(1.5rem,3vw,4rem);align-items:center}

/* texto */
.so-texto{position:relative;z-index:3}
.so-pre{margin-top:1.6rem;font-family:var(--f-titulo);font-weight:500;text-transform:uppercase;letter-spacing:.06em;font-size:clamp(1.15rem,.9rem + .8vw,1.75rem);color:var(--creme-2)}
.so-titulo{margin-top:.4rem;font-size:clamp(2.9rem,1.4rem + 5.2vw,6.8rem);margin-right:-12%}
.so-fonte{margin-top:1.1rem;font-size:var(--t-mini);color:var(--creme-2);letter-spacing:.06em;display:flex;align-items:center;gap:.7rem}
.so-fonte::before{content:"";width:2.2rem;height:1px;background:var(--ouro)}
.so-historia{margin-top:2.4rem;max-width:33rem;display:grid;gap:1rem;font-size:var(--t-corpo);color:var(--creme-2)}
.so-lide{font-size:clamp(1.25rem,1.05rem + .6vw,1.6rem);line-height:1.32;color:var(--creme);font-weight:500}

.so-nota{margin-top:2.2rem;max-width:31rem;padding:.2rem 0 .2rem 1.3rem;border-left:2px solid var(--ouro)}
.so-nota blockquote p{font-family:var(--f-titulo);font-weight:500;text-transform:uppercase;font-size:clamp(1.1rem,1rem + .35vw,1.32rem);line-height:1.2;color:var(--creme)}
.so-nota figcaption{margin-top:.6rem;font-size:var(--t-mini);color:var(--creme-2)}
.so-nota figcaption a{color:var(--creme);text-underline-offset:.25em;text-decoration-color:color-mix(in oklab, var(--ouro) 70%, transparent);display:inline-block;padding:.75rem 0;margin:-.75rem 0}

/* cena: a sala escurece, ele acende com a luz de contorno */
.so-cena{position:relative;margin-right:calc(-1 * var(--pad))}
.so-quadro{position:relative;aspect-ratio:1060/1130;isolation:isolate}
.so-quadro img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.so-fundo{filter:brightness(calc(.64 - var(--so-l) * .22)) saturate(.72) contrast(1.04);
  -webkit-mask:radial-gradient(74% 66% at 68% 48%, #000 38%, transparent 98%);mask:radial-gradient(74% 66% at 68% 48%, #000 38%, transparent 98%)}
.so-pessoa{-webkit-mask:url(../img/so-mascara.webp) center/100% 100% no-repeat;mask:url(../img/so-mascara.webp) center/100% 100% no-repeat;filter:brightness(calc(.8 + var(--so-l) * .2)) saturate(.98) contrast(1.03)}
.so-contorno,.so-halo,.so-veu{position:absolute;inset:0;-webkit-mask:url(../img/so-mascara.webp) center/100% 100% no-repeat;mask:url(../img/so-mascara.webp) center/100% 100% no-repeat}
.so-contorno{background:radial-gradient(42% 46% at 44% 30% in oklab, #fff1c8, var(--ouro-2) 45%, color-mix(in oklab, var(--ouro) 40%, transparent) 75%, transparent 100%);transform:translateX(-3px);filter:blur(1.2px);opacity:calc(var(--so-l) * .9)}
.so-halo{background:radial-gradient(40% 44% at 46% 30% in oklab, var(--ouro), transparent 100%);transform:translateX(-12px);filter:blur(16px);opacity:calc(var(--so-l) * .42)}
.so-veu{background:radial-gradient(26% 30% at 62% 24% in oklab, var(--ouro-2), transparent 100%);mix-blend-mode:soft-light;opacity:calc(var(--so-l) * .55)}
.so-poca{position:absolute;inset:0;background:radial-gradient(34% 30% at 74% 20% in oklab, color-mix(in oklab, var(--ouro) 34%, transparent), transparent 100%), radial-gradient(60% 18% at 45% 30% in oklab, color-mix(in oklab, var(--ouro-2) 16%, transparent), transparent 100%);opacity:var(--so-l)}
.so-quadro::after{content:"";position:absolute;inset:-1px;pointer-events:none;background:
  linear-gradient(0deg in oklab, var(--noite) 0%, color-mix(in oklab, var(--noite) 60%, transparent) 14%, transparent 32%),
  linear-gradient(180deg in oklab, var(--noite) 0%, transparent 7%)}

/* assinatura: o fio dourado desce até o nome */
.so-assina{position:absolute;left:3%;bottom:-.4rem;z-index:3;padding-left:1.7rem;display:grid;gap:.5rem}
.so-fio{position:absolute;left:0;bottom:.55rem;height:min(30rem,52vw);width:2px;background:color-mix(in oklab, var(--creme) 14%, transparent);border-radius:2px}
.so-fio i{position:absolute;left:0;top:0;width:100%;height:calc(var(--so-l) * 100%);background:linear-gradient(180deg in oklab, transparent, var(--ouro) 30%, var(--ouro-2));box-shadow:0 0 14px var(--ouro);border-radius:2px}
.so-fio::after{content:"";position:absolute;left:50%;bottom:-6px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--noite);border:2px solid color-mix(in oklab, var(--creme) 30%, transparent);transition:background .6s, border-color .6s, box-shadow .6s}
.so.so-aceso .so-fio::after{background:var(--ouro);border-color:var(--ouro);box-shadow:0 0 0 6px color-mix(in oklab, var(--ouro) 18%, transparent)}
.so-nome{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;font-size:clamp(2.2rem,1.2rem + 3vw,4.4rem);line-height:.9;color:var(--creme);text-shadow:0 2px 24px rgba(0,0,0,.6)}
.so-dados{display:flex;flex-wrap:wrap;gap:.2rem 1.1rem;font-size:var(--t-mini);color:var(--creme-2);letter-spacing:.04em;text-shadow:0 1px 10px rgba(0,0,0,.7)}
.so-dados b{color:var(--ouro-2);font-weight:600;letter-spacing:.08em}

.so-acoes{margin-top:2.4rem;display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.8rem}

/* notebook baixo */
@media (max-width:1180px) and (min-width:901px){
  .so-grade{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .so-titulo{margin-right:-20%}
}
/* celular e tablet em pé */
@media (max-width:900px){
  .so{padding-top:calc(var(--topo-h) + 1rem)}
  .so-grade{grid-template-columns:minmax(0,1fr);gap:0}
  .so-cena{order:-1;margin:0 calc(-1 * var(--pad)) 3.2rem}
  .so-quadro{aspect-ratio:1/1.02}
  .so-quadro img{object-position:70% 0}
  .so-contorno,.so-halo,.so-veu,.so-pessoa{-webkit-mask-position:70% 0;mask-position:70% 0;-webkit-mask-size:cover;mask-size:cover}
  .so-assina{left:var(--pad);bottom:-2.2rem}
  .so-fio{height:52vw}
  .so-titulo{margin-right:0}
  .so .marco{display:none}
  .so-pre{margin-top:0}
  .so-acoes .botao{flex:1 1 100%}
  .so-nome{font-size:clamp(2.2rem,1.2rem + 6vw,3.4rem)}
}
@media (prefers-reduced-motion:reduce){ .so{--so-l:1} }

/* ==== es ==== */
/* es · O escritório (papel / pedra) */
.es{background:linear-gradient(180deg in oklab, var(--papel) 0%, color-mix(in oklab, var(--pedra) 38%, var(--papel)) 100%)}

.es-topo{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2rem 4rem;align-items:end}
.es-titulo{margin-top:1.4rem;font-size:clamp(3rem,1.2rem + 6.4vw,8.4rem);line-height:.88}
.es-titulo .ouro{font-size:.42em}
.es-apoio{font-size:var(--t-corpo);padding-bottom:.5rem}

.es-f{position:relative;margin:0}
.es-f img{width:100%;height:auto;object-fit:cover;border-radius:var(--r)}
.es-f figcaption{margin-top:.7rem;font-size:var(--t-mini);color:var(--tinta-2);display:flex;align-items:center;gap:.6rem}
.es-f figcaption::before{content:"";width:1.6rem;height:1px;background:var(--ouro-tinta);flex:none}

/* mosaico: recepção grande, salão um degrau abaixo, placa invadindo a quina */
.es-mosaico{margin-top:clamp(2.5rem,5vw,4.5rem);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto;column-gap:clamp(1rem,2vw,1.8rem)}
.es-recepcao{grid-column:1 / 8;grid-row:1 / 3;z-index:1}
.es-porta{position:relative;aspect-ratio:933/1024;overflow:hidden;border-radius:var(--r)}
.es-porta img{height:100%}
.es-salao{grid-column:8 / 13;grid-row:1;margin-top:clamp(2rem,6vw,6rem)}
.es-salao img{aspect-ratio:4/3}
.es-placa{grid-column:7 / 13;grid-row:2;align-self:end;z-index:2;position:relative;overflow:hidden;margin:2rem 0 -3.5rem;font-style:normal;background:var(--tinta);color:var(--creme);border-radius:var(--r);padding:clamp(1.6rem,2.6vw,2.6rem);box-shadow:0 30px 60px -30px rgba(27,23,18,.55)}
.es-placa-rot{font-size:var(--t-mini);letter-spacing:.2em;text-transform:uppercase;color:var(--ouro-2)}
.es-placa-num{position:absolute;right:-.04em;top:-.12em;font-family:var(--f-titulo);font-weight:700;font-size:clamp(11rem,6rem + 12vw,19rem);line-height:1;color:transparent;-webkit-text-stroke:2px color-mix(in oklab, var(--ouro) 70%, transparent);pointer-events:none}
.es-placa > :not(.es-placa-num){position:relative;max-width:78%}
.es-placa-rua{margin-top:.8rem;font-family:var(--f-titulo);font-weight:600;text-transform:uppercase;font-size:clamp(1.5rem,1.1rem + 1vw,2.1rem);line-height:1.02}
.es-placa-bairro{margin-top:.6rem;color:var(--creme-2)}
.es-placa-hora{margin-top:.9rem;padding-top:.9rem;border-top:1px solid color-mix(in oklab, var(--creme) 14%, transparent);color:var(--creme-2);font-size:1rem}
.es-chegar{margin-top:1.3rem}

/* portas abertas: duas folhas cor de pedra se abrem sobre a recepção */
.js .es-porta::before,.js .es-porta::after{content:"";position:absolute;top:0;bottom:0;width:50.5%;z-index:2;background:linear-gradient(90deg in oklab, var(--pedra), color-mix(in oklab, var(--pedra) 80%, var(--papel)));transition:transform 1.6s var(--curva-linha) .25s}
.js .es-porta::before{left:0;box-shadow:inset -2px 0 0 color-mix(in oklab, var(--tinta) 18%, transparent)}
.js .es-porta::after{right:0;box-shadow:inset 2px 0 0 color-mix(in oklab, var(--tinta) 18%, transparent)}
.js .es-aberta .es-porta::before{transform:translateX(-101%)}
.js .es-aberta .es-porta::after{transform:translateX(101%)}
.es-porta img{transform:scale(1.06);transition:transform 2.4s var(--curva) .25s}
.es-aberta .es-porta img{transform:none}

/* parede de pedra: faixa de ponta a ponta atrás do pé do mosaico */
.es-mosaico{position:relative}
.es-mosaico::before{content:"";position:absolute;z-index:0;left:-50vw;right:-50vw;top:52%;bottom:-7rem;background:linear-gradient(180deg in oklab, color-mix(in oklab, var(--pedra) 85%, var(--papel)), var(--pedra));pointer-events:none}
.es-salao{z-index:1}

/* rotina: a voz dele + quem chegou, e as duas fotos desencontradas */
.es-rotina{margin-top:clamp(6rem,10vw,9rem);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(1rem,2vw,1.8rem);align-items:start}
.es-vozes{grid-column:1 / 7}
.es-cita p{font-family:var(--f-titulo);text-transform:uppercase;line-height:1}
.es-cita-a{display:block;font-weight:700;font-size:clamp(2.2rem,1.2rem + 3.2vw,4.4rem);line-height:.92;color:var(--tinta)}
.es-cita-b{display:block;margin-top:.7rem;font-weight:500;font-size:clamp(1.25rem,1rem + .8vw,1.8rem);line-height:1.12;color:var(--tinta-2);max-width:30ch}
.es-cita footer{margin-top:1rem;font-size:var(--t-mini);color:var(--ouro-tinta);font-weight:600;letter-spacing:.06em}
.es-perfil{grid-column:7 / 10;margin-top:2rem}
.es-perfil img{aspect-ratio:3/4.4;object-position:50% 12%}
.es-bancada{grid-column:10 / 13;margin-top:9rem}
.es-bancada > img:first-of-type{aspect-ratio:3/4}
.es-bancada figcaption{justify-content:flex-end}
.es-themis{position:absolute;left:-30%;bottom:3.6rem;width:52%!important;aspect-ratio:9/14;border:5px solid var(--papel);box-shadow:0 18px 40px -20px rgba(27,23,18,.5);z-index:2}

.es-ecos{margin-top:clamp(2.5rem,4vw,3.5rem);display:grid;gap:1.4rem;padding-top:1.4rem;border-top:1px solid color-mix(in oklab, var(--tinta) 14%, transparent);max-width:34rem}
.es-ecos-rot{font-size:var(--t-mini);letter-spacing:.16em;text-transform:uppercase;color:var(--ouro-tinta);font-weight:600}
.es-ecos blockquote{padding-left:1.1rem;border-left:2px solid var(--ouro)}
.es-ecos blockquote p{font-family:var(--f-titulo);font-weight:500;text-transform:uppercase;font-size:clamp(1.15rem,1rem + .45vw,1.45rem);line-height:1.15;color:var(--tinta)}
.es-ecos footer{margin-top:.4rem;font-size:var(--t-mini);color:var(--tinta-2)}

/* notebook baixo */
@media (max-width:1180px) and (min-width:901px){
  .es-placa{grid-column:6 / 13}
  .es-themis{left:-24%;width:44%!important}
}
/* celular e tablet em pé */
@media (max-width:900px){
  .es-topo{grid-template-columns:minmax(0,1fr);gap:1.2rem}
  .es-mosaico{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:1.6rem}
  .es-recepcao,.es-salao,.es-placa{grid-column:1 / 3;grid-row:auto}
  .es-salao{margin-top:0}
  .es-placa{margin:0}
  .es-rotina{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:4.5rem;row-gap:1.6rem}
  .es-vozes{grid-column:1 / 3}
  .es-perfil{grid-column:1;margin-top:0}
  .es-bancada{grid-column:2;margin-top:1.6rem}
  .es-bancada figcaption{justify-content:flex-start}
  .es-mosaico::before{top:auto;height:34%;bottom:-3rem}
  .es-placa > :not(.es-placa-num){max-width:none}
  .es-placa-num{font-size:12rem;opacity:.7}
  .es-themis{display:none}
  .es-chegar{width:100%}
}
@media (max-width:900px) and (min-width:600px){
  .es-placa{margin:0 0 0 auto;width:min(30rem,76%)}
}

/* ==== pf ==== */
.pf{background:var(--noite)}
.pf-malha{position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:
    radial-gradient(closest-side at 12% 18% in oklab, color-mix(in oklab, var(--taupe-2) 42%, transparent), transparent),
    radial-gradient(60% 55% at 86% 80% in oklab, color-mix(in oklab, var(--vinho) 55%, transparent), transparent),
    radial-gradient(40% 40% at 60% 10% in oklab, color-mix(in oklab, var(--noite-2) 90%, transparent), transparent);
}
.pf-grade{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2.5rem,5vw,6rem);align-items:start}
.pf-cab{position:sticky;top:calc(var(--topo-h) + 2rem)}
.pf-tit{margin-top:1.4rem}
.pf-apoio{margin-top:1.6rem}
.pf-link{margin-top:2.2rem;display:inline-flex;align-items:center;min-height:48px;padding:.8rem 1.4rem;border:1px solid color-mix(in oklab, var(--ouro) 60%, transparent);border-radius:999px;color:var(--creme);font-weight:500;text-decoration:none;transition:background .3s, color .3s}
.pf-link:hover{background:var(--ouro);color:#1b140b}
.pf-grande{position:relative;margin-top:2.6rem;display:flex;align-items:flex-end;gap:.8rem;font-family:var(--f-titulo);font-weight:700;line-height:.8;color:transparent;-webkit-text-stroke:1.5px color-mix(in oklab, var(--ouro) 80%, transparent)}
.pf-grande::before{content:"";position:absolute;left:-20%;top:-30%;width:120%;height:160%;z-index:-1;background:radial-gradient(closest-side in oklab, color-mix(in oklab, var(--ouro) 14%, transparent), transparent)}
.pf-grande span{font-size:clamp(7rem,4rem + 9vw,13rem);display:inline-block;transition:opacity .35s, transform .5s var(--curva)}
.pf-grande span.pf-troca{opacity:0;transform:translateY(16px)}
.pf-grande small{font-family:var(--f-texto);font-size:var(--t-mini);font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--creme-2);-webkit-text-stroke:0;margin-bottom:.6rem}

.pf-lista{position:relative;padding-left:2.4rem}
.pf-trilho{position:absolute;left:6px;top:1.6rem;bottom:1.6rem;width:2px;background:color-mix(in oklab, var(--creme) 12%, transparent);border-radius:2px}
.pf-fio{position:absolute;left:0;top:0;width:100%;height:var(--pf-alto,0px);background:linear-gradient(180deg in oklab, var(--ouro-2), var(--ouro));box-shadow:0 0 14px var(--ouro);border-radius:2px;transition:height .25s linear}

.pf-item{position:relative;border-bottom:1px solid color-mix(in oklab, var(--creme) 12%, transparent)}
.pf-item:first-of-type{border-top:1px solid color-mix(in oklab, var(--creme) 12%, transparent)}
.pf-item::before{content:"";position:absolute;left:calc(-2.4rem + 0px);top:1.85rem;width:14px;height:14px;border-radius:50%;background:var(--noite);border:2px solid color-mix(in oklab, var(--creme) 30%, transparent);transition:border-color .5s, background .5s, box-shadow .5s;z-index:1}
.pf-item.pf-on::before{border-color:color-mix(in oklab, var(--ouro) 70%, transparent)}
.pf-item[open]::before{border-color:var(--ouro);background:var(--ouro);box-shadow:0 0 0 6px color-mix(in oklab, var(--ouro) 18%, transparent)}
.pf-item summary{list-style:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1.2rem;align-items:baseline;padding:1.5rem 0;cursor:pointer;min-height:48px}
.pf-item summary::-webkit-details-marker{display:none}
.pf-item summary::after{content:"";width:14px;height:14px;align-self:center;border-right:2px solid var(--ouro-2);border-bottom:2px solid var(--ouro-2);transform:rotate(45deg) translate(-3px,-3px);transition:transform .4s var(--curva)}
.pf-item[open] summary::after{transform:rotate(-135deg) translate(-3px,-3px)}
.pf-n{font-family:var(--f-titulo);font-weight:600;font-size:1rem;letter-spacing:.08em;color:var(--ouro-2)}
.pf-q{font-family:var(--f-titulo);font-weight:600;font-size:clamp(1.45rem,1.1rem + 1.1vw,2.2rem);line-height:1.08;text-transform:uppercase;color:var(--creme)}
.pf-item summary:hover .pf-q{color:var(--ouro-2)}
.pf-r{padding:0 2rem 1.8rem calc(1.2rem + 1.6ch);color:var(--creme-2);max-width:40rem}
.pf-r p+p,.pf-r ul+p{margin-top:.8rem}
.pf-r ul{margin:.6rem 0 0;padding-left:1.1rem}
.pf-r li{margin:.25rem 0}
.pf-r li::marker{color:var(--ouro)}
.pf-pergunta{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;margin-top:1rem;color:var(--ouro-2);font-weight:500;font-size:1rem;text-decoration:none;border-bottom:1px solid color-mix(in oklab, var(--ouro) 50%, transparent)}
.pf-pergunta::after{content:"→";transition:transform .3s var(--curva)}
.pf-pergunta:hover::after{transform:translateX(4px)}
.js .pf-item[open] .pf-r{animation:pf-abre .6s var(--curva)}
@keyframes pf-abre{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

@media (max-width:900px){
  .pf-grade{grid-template-columns:minmax(0,1fr)}
  .pf-cab{position:static}
  .pf-grande{display:none}
  .pf-wa{display:none}
  .pf-lista{padding-left:1.9rem}
  .pf-item::before{left:-1.9rem;top:1.6rem}
  .pf-item summary{gap:.8rem;padding:1.25rem 0}
  .pf-r{padding:0 0 1.5rem 0}
  .pf-q{font-size:1.4rem}
}

/* ==== ct ==== */
.ct{background:var(--madeira)}
.ct-ripado{opacity:.5;-webkit-mask:radial-gradient(70% 90% at 22% 30% in oklab, #000, rgba(0,0,0,.25) 60%, transparent 90%);mask:radial-gradient(70% 90% at 22% 30% in oklab, #000, rgba(0,0,0,.25) 60%, transparent 90%)}
.ct-luz{position:absolute;inset:0;z-index:-1;pointer-events:none;background:
  radial-gradient(38% 46% at 20% 40% in oklab, color-mix(in oklab, var(--ouro) 16%, transparent), transparent 70%),
  radial-gradient(50% 60% at 85% 90% in oklab, color-mix(in oklab, var(--vinho) 30%, transparent), transparent 70%),
  linear-gradient(180deg in oklab, color-mix(in oklab, var(--noite) 70%, transparent), transparent 22%, transparent 70%, color-mix(in oklab, var(--noite) 85%, transparent))}
.ct-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,6rem);align-items:center}
.ct-tit{margin-top:1.4rem}
.ct-l{display:block}
.ct-obs{margin-top:.6rem;color:var(--creme-2);font-size:1rem;padding-left:1rem}
.ct-mono{position:absolute;right:clamp(1.5rem,1rem + 2vw,2.6rem);top:clamp(1.5rem,1rem + 2vw,2.6rem);width:52px;height:52px;color:color-mix(in oklab, var(--ouro) 70%, transparent)}
.ct-status{margin-top:1.8rem;display:inline-flex;align-items:center;gap:.7rem;font-weight:500;color:var(--creme);padding:.55rem 1rem;border-radius:999px;background:color-mix(in oklab, var(--noite) 55%, transparent);border:1px solid color-mix(in oklab, var(--creme) 14%, transparent)}
.ct-ponto{width:10px;height:10px;border-radius:50%;background:var(--creme-2);box-shadow:0 0 0 4px color-mix(in oklab, var(--creme-2) 18%, transparent)}
.ct-status.ct-aberto .ct-ponto{background:#7fd08a;box-shadow:0 0 0 4px rgba(127,208,138,.2);animation:ct-pulsa 2.4s ease-in-out infinite}
@keyframes ct-pulsa{50%{box-shadow:0 0 0 8px rgba(127,208,138,.06)}}
.ct-acoes{margin-top:1.8rem;display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2rem}
.ct-tel{display:flex;flex-direction:column;justify-content:center;min-height:48px;text-decoration:none;font-family:var(--f-titulo);font-weight:600;font-size:1.6rem;letter-spacing:.02em;color:var(--creme);line-height:1}
.ct-tel small{font-family:var(--f-texto);font-size:var(--t-mini);font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--creme-2);margin-bottom:.35rem}
.ct-tel:hover{color:var(--ouro-2)}
.ct-insta{margin-top:1.6rem;color:var(--creme-2)}
.ct-insta a{color:var(--creme);text-underline-offset:.25em;text-decoration-color:color-mix(in oklab, var(--ouro) 70%, transparent);display:inline-block;padding:.6rem 0}

.ct-lugar{position:relative;border:1px solid color-mix(in oklab, var(--ouro) 35%, transparent);background:color-mix(in oklab, var(--noite) 72%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:var(--r)}
.ct-placa{position:relative;padding:clamp(1.5rem,1rem + 2vw,2.6rem)}
.ct-rot{font-size:var(--t-mini);font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro-2)}
.ct-end{margin-top:1rem;font-size:var(--t-apoio);line-height:1.35;color:var(--creme)}
.ct-end span{display:block;font-family:var(--f-titulo);font-weight:700;font-size:clamp(2.6rem,1.8rem + 2.4vw,4.2rem);line-height:.95;text-transform:uppercase;color:var(--ouro-2);margin-bottom:.5rem}
.ct-bairro{margin-top:.6rem;color:var(--creme-2)}
.ct-horas{margin-top:1.4rem;border-top:1px solid color-mix(in oklab, var(--creme) 14%, transparent)}
.ct-horas div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid color-mix(in oklab, var(--creme) 10%, transparent)}
.ct-horas dt{color:var(--creme-2)}
.ct-horas dd{color:var(--creme);font-weight:500}
.ct-mapa{position:relative;height:clamp(220px,26vw,320px);overflow:hidden;border-top:1px solid color-mix(in oklab, var(--ouro) 35%, transparent);border-radius:0 0 var(--r) var(--r)}
.ct-mapa iframe{position:absolute;left:0;top:-60px;width:100%;height:calc(100% + 60px);border:0;filter:invert(.9) hue-rotate(180deg) grayscale(.7) sepia(.35) brightness(.85) contrast(.9)}
.ct-pino{position:absolute;left:50%;top:calc(50% - 30px);width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:var(--ouro);box-shadow:0 0 0 6px color-mix(in oklab, var(--ouro) 25%, transparent),0 0 30px 8px color-mix(in oklab, var(--ouro) 45%, transparent);pointer-events:none;animation:ct-pino 3s ease-in-out infinite}
@keyframes ct-pino{50%{box-shadow:0 0 0 12px color-mix(in oklab, var(--ouro) 8%, transparent),0 0 30px 8px color-mix(in oklab, var(--ouro) 45%, transparent)}}
.ct-rota{position:absolute;left:1rem;bottom:1rem;display:inline-flex;align-items:center;min-height:44px;padding:.6rem 1.1rem;border-radius:999px;background:var(--noite);color:var(--creme);text-decoration:none;font-weight:500;font-size:.95rem;border:1px solid color-mix(in oklab, var(--ouro) 50%, transparent)}
.ct-rota:hover{background:var(--ouro);color:#1b140b}

@media (max-width:900px){
  .ct-l{display:inline}
  .ct-mono{width:40px;height:40px}
  .ct-grade{grid-template-columns:minmax(0,1fr)}
  .ct-wa{flex:1 1 100%}
  .ct-status{font-size:.95rem;border-radius:14px}
}

/* ==== fim ==== */
.fi{position:relative;background:var(--noite);color:var(--creme-2);padding:clamp(4rem,3rem + 4vw,7rem) var(--pad) 1.5rem;border-top:1px solid color-mix(in oklab, var(--creme) 10%, transparent);font-size:1rem}
.fi::before{content:"";position:absolute;left:var(--pad);right:var(--pad);top:-1px;height:2px;background:linear-gradient(90deg in oklab, var(--ouro), var(--ouro-2) 40%, transparent);transform-origin:left;transform:scaleX(var(--fi-x,1));transition:transform 1.6s var(--curva-linha)}
.js .fi:not(.visto)::before{--fi-x:0}
.fi-in{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.2fr) minmax(0,1fr);gap:2.5rem}
.fi-mono{width:56px;height:56px;color:var(--ouro);margin-bottom:1rem}
.fi-nome{font-family:var(--f-titulo);font-weight:600;font-size:1.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--creme);line-height:1}
.fi-nome span{display:block;font-family:var(--f-texto);font-size:.68rem;letter-spacing:.34em;font-weight:500;color:var(--creme-2);margin-top:.45rem}
.fi-reg{margin-top:1.2rem;line-height:1.5}
.fi-rot{font-size:var(--t-mini);font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro-2);margin-bottom:.8rem}
.fi-col p+p{margin-top:.55rem}
.fi a{color:var(--creme);text-decoration:none;display:inline-block;padding:.25rem 0}
.fi a:hover{color:var(--ouro-2)}
.fi-base{max-width:var(--max);margin:3.5rem auto 0;padding-top:1.2rem;border-top:1px solid color-mix(in oklab, var(--creme) 10%, transparent);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:var(--t-mini)}
.fi-selo a{color:var(--ouro-2);text-decoration:underline;text-underline-offset:.25em;font-weight:500}
@media (max-width:900px){
  .fi-in{grid-template-columns:minmax(0,1fr);gap:2rem}
  .fi{padding-bottom:6rem}
}

/* ==== ajustes ==== */
/* ajustes da montagem (pedidos à base entram aqui) */

/* sobretítulo com 14 px no celular (pedido do agente de Áreas/Caminho) */
@media (max-width:900px){ .marco{font-size:var(--t-mini);letter-spacing:.18em} }

/* movimento reduzido: tudo pronto, nada anda (fica no fim de propósito) */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}
}
