/* Larissa Castro | Perícia Contábil
   Paleta tirada das artes da marca: capa do laudo (marinho e dourado) e páginas internas (creme). */
:root{
  --navy:#283C50;        /* fundo da capa */
  --navy-deep:#1F3042;   /* rodapé e hover escuro */
  --gold:#DCC08C;        /* dourado do título da capa: CTA e ênfase rara */
  --gold-pale:#F3E4C3;   /* hover do dourado */
  --sand:#DCB080;        /* dourado do emblema: linhas e marcadores */
  --bronze:#8B6A3C;      /* acento legível sobre o papel */
  --paper:#FCF8F0;       /* página interna do laudo */
  --paper-band:#F5EBDD;  /* faixa dos títulos de seção do laudo */
  --paper-line:#E7DAC6;
  --ink:#22303E;
  --ink-soft:#52606E;
  --cream:#FBF4E6;
  --ease:cubic-bezier(.22,.8,.24,1);
  --ease-io:cubic-bezier(.65,0,.35,1);
  --gut:clamp(20px,5vw,56px);
  --navh:72px;
  --f-display:"Anton","Arial Narrow",Impact,sans-serif;
  --f-text:"Montserrat","Segoe UI",system-ui,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;
  --emblem:url(emblema.png);
}

/* ---------- base ---------- */
*,*::before,*::after{box-sizing:border-box}
/* telas muito grandes: a pagina inteira cresce junto, em vez de ficar pequena no meio */
@media (min-width:1700px){html{font-size:calc(16px + (100vw - 1700px) * .0062)}}
html{overflow-x:hidden;overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:calc(var(--navh) + 12px);-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden;overflow-x:clip;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.68 var(--f-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg,canvas{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,p,dl,dd,ol,ul{margin:0}
ol,ul{padding:0;list-style:none}
button{font:inherit}
main:focus{outline:none}
:focus-visible{outline:2px solid var(--bronze);outline-offset:3px;border-radius:2px}
.on-navy :focus-visible,.on-navy:focus-visible{outline-color:var(--gold)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip{position:fixed;left:12px;top:-64px;z-index:100;background:var(--gold);color:var(--navy-deep);padding:10px 16px;font-weight:600;text-decoration:none;transition:top .3s var(--ease)}
.skip:focus{top:12px}
.wrap{width:min(73.75rem,calc(100% - 2*var(--gut)));margin-inline:auto}
.wrap-narrow{width:min(56.25rem,calc(100% - 2*var(--gut)))}

/* camada fixa de ambiente: a marca d'água das páginas do laudo */
.ambient{position:fixed;inset:0;z-index:0;pointer-events:none;background:var(--paper)}
.ambient::before{content:"";position:absolute;left:50%;top:52%;width:min(74vh,37.5rem);aspect-ratio:530/607;margin:calc(min(74vh,37.5rem) * -.573) 0 0 calc(min(74vh,37.5rem) * -.5);background:#F5ECDE;-webkit-mask:var(--emblem) center/contain no-repeat;mask:var(--emblem) center/contain no-repeat;animation:breathe 70s var(--ease-io) -20s infinite alternate}
@keyframes breathe{from{transform:scale(1) rotate(-1.4deg)}to{transform:scale(1.09) rotate(1.4deg)}}

.glow-line{display:block;position:relative;height:2px;background:linear-gradient(90deg,transparent,var(--gold) 50%,transparent)}
.glow-line::after{content:"";position:absolute;inset:-3px 12%;background:inherit;filter:blur(5px);opacity:.75}

/* ---------- botões e links ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font:600 .8rem/1 var(--f-text);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;padding:17px 26px;border-radius:2px;border:1px solid transparent;cursor:pointer;transition:background-color .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease)}
.btn svg{width:18px;height:10px;flex:none;transition:transform .35s var(--ease)}
.btn:hover svg{transform:translateX(5px)}
.btn-gold{background:var(--gold);color:var(--navy-deep)}
.btn-gold:hover{background:var(--gold-pale)}
.btn-line{border-color:rgba(220,192,140,.72);color:var(--gold);background:transparent;padding:12px 18px}
.btn-line:hover{background:var(--gold);color:var(--navy-deep)}
.btn-navy{background:var(--navy);color:var(--cream)}
.btn-navy:hover{background:var(--navy-deep)}
@media (pointer:coarse){.btn{min-height:44px}}

.link-down,.link-arrow{display:inline-flex;align-items:center;gap:12px;font:600 .8rem/1.2 var(--f-text);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;padding:8px 0;position:relative}
.link-down::after,.link-arrow::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;opacity:.55;transform-origin:left;transition:transform .5s var(--ease),opacity .35s var(--ease)}
.link-down:hover::after,.link-arrow:hover::after{opacity:1}
.link-down{color:var(--cream)}
.link-arrow{color:var(--navy)}
.link-arrow svg{width:18px;height:10px;transition:transform .35s var(--ease)}
.link-arrow:hover svg{transform:translateX(5px)}

/* ---------- navegação ---------- */
.nav{position:fixed;inset:0 0 auto 0;z-index:50;height:var(--navh);display:flex;align-items:center}
.nav::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(31,48,66,.94);border-bottom:1px solid rgba(220,192,140,.2);opacity:0;transition:opacity .5s var(--ease)}
.nav.solid::before{opacity:1}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--cream)}
.brand img{width:26px;height:30px}
.brand-name{font:300 1.02rem/1 var(--f-text);letter-spacing:.14em;white-space:nowrap}
.brand-name span{color:var(--sand)}
.nav-links{display:flex;align-items:center;gap:clamp(14px,2.4vw,32px)}
.nav-links a:not(.btn){position:relative;font:600 .72rem/1 var(--f-text);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:rgba(251,244,230,.84);padding:12px 0;transition:color .3s var(--ease)}
.nav-links a:not(.btn)::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.nav-links a:not(.btn):hover{color:var(--gold)}
.nav-links a:not(.btn):hover::after{transform:scaleX(1)}

/* ---------- capa ---------- */
.hero{position:relative;z-index:1;min-height:100vh;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(26px,1fr) auto auto minmax(26px,1.3fr) auto;padding-top:calc(var(--navh) + clamp(14px,3.6vh,40px));background:radial-gradient(120% 95% at 72% 38%,#2F465C 0%,var(--navy) 46%,#22364A 100%);color:var(--cream);overflow:hidden;isolation:isolate}
.hero .row{grid-column:1;position:relative;z-index:3;padding-inline:max(var(--gut),calc((100% - 73.75rem)/2))}
.hero-eyebrow{grid-row:1}
.hero-title{grid-row:3}
.hero-body{grid-row:4}
.hero-foot{grid-row:6}
.wake{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}
.hero-mark{position:absolute;z-index:1;right:max(3vw,calc((100% - 73.75rem)/2 - 30px));top:50%;height:min(92%,53.75rem);aspect-ratio:530/607;margin-top:calc(min(92vh,53.75rem) * -.47);background:#354A5F;-webkit-mask:var(--emblem) center/contain no-repeat;mask:var(--emblem) center/contain no-repeat}
.cover-top{position:absolute;z-index:3;top:0;left:max(var(--gut),calc((100% - 73.75rem)/2));width:min(46%,640px);height:6px;background:var(--gold)}
.cover-left{grid-row:3;grid-column:1;justify-self:start;width:clamp(7px,.95vw,14px);background:var(--gold);z-index:3}
.cover-line{position:absolute;z-index:3;right:clamp(16px,3.2vw,52px);top:34%;bottom:0;width:2px;background:var(--sand)}
.cover-line::before{content:"";position:absolute;left:-5px;top:-6px;width:12px;height:12px;background:var(--sand)}

.hero-eyebrow p{width:fit-content;font:600 clamp(.8rem,1.2vw,1rem)/1.3 var(--f-text);letter-spacing:.07em;text-transform:uppercase;color:var(--gold)}
.hero h1{font:400 clamp(2.85rem,7.7vw,6.7rem)/1 var(--f-display);letter-spacing:.004em;text-transform:uppercase;color:var(--gold)}
.h1-vis{display:block}
.ln{display:block;width:fit-content;max-width:100%}
.w{display:inline-block;overflow:hidden;vertical-align:top;padding:.22em .03em .08em;margin:-.22em -.03em -.08em}
.w>span{display:inline-block;position:relative}
.liq::after{content:attr(data-t);position:absolute;left:0;top:0;color:#FFF6DF;opacity:0}
.hero.live .liq::after{animation:glow 7s var(--ease-io) -2s infinite}
@keyframes glow{0%,100%{opacity:0}50%{opacity:.85}}
.hero-caps{width:fit-content;margin-top:clamp(12px,2vw,26px);font:300 clamp(1.02rem,2.5vw,2.05rem)/1.2 var(--f-text);letter-spacing:.05em;text-transform:uppercase;color:#fff}
.hero-body{margin-top:clamp(20px,3.2vh,38px)}
.hero-lede{max-width:37ch;font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.6;color:rgba(251,244,230,.88)}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 30px;width:fit-content;margin-top:26px}
.hero-foot{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px;padding-bottom:clamp(30px,5.5vh,56px)}
.resp{display:grid;gap:1px;width:fit-content;font-size:1rem;line-height:1.5}
.resp-k{color:var(--gold);font-weight:600}
.hint{display:flex;align-items:center;gap:10px;margin-right:clamp(14px,2vw,30px);font:400 .7rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-pale);border:1px solid rgba(220,192,140,.36);border-radius:2px;padding:9px 12px;background:rgba(31,48,66,.5)}
.hint::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold)}
.hero.live .hint::before{animation:blip 3.2s var(--ease-io) -1s infinite}
@keyframes blip{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}
.hint-coarse{display:none}
@media (hover:none){.hint-fine{display:none}.hint-coarse{display:inline}}
.hero-foot .glow-line{position:absolute;left:50%;bottom:16px;width:min(520px,56%);margin-left:calc(min(520px,56%) / -2)}

/* entrada da capa */
.js .hero .w>span{transform:translateY(140%);transition:transform 1.15s var(--ease);transition-delay:calc(var(--i,0)*75ms + 180ms)}
.js.ready .hero .w>span{transform:none}
.js .cover-top{transform:scaleX(0);transform-origin:left;transition:transform 1.3s var(--ease) .05s}
.js .cover-left{transform:scaleY(0);transform-origin:top;transition:transform 1.1s var(--ease) .15s}
.js .cover-line{transform:scaleY(0);transform-origin:top;transition:transform 1.8s var(--ease) .7s}
.js.ready .cover-top,.js.ready .cover-left,.js.ready .cover-line{transform:none}
.js .hero-mark{opacity:0;transition:opacity 2.2s var(--ease) .2s}
.js.ready .hero-mark{opacity:1}
.js .hero [data-in]{opacity:0;transform:translateY(16px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--d,0)*1ms)}
.js.ready .hero [data-in]{opacity:1;transform:none}
.js.ready .hero.touched .hint{opacity:0;transition-delay:0s}

/* ---------- seções ---------- */
.sec{position:relative;z-index:1;padding-block:clamp(72px,10vw,128px)}
.sec-tight{padding-top:0}
.sec-head{position:relative;isolation:isolate;display:flex;align-items:baseline;gap:.55em;padding:11px 20px 11px clamp(18px,9%,116px);font:700 clamp(1rem,1.45vw,1.18rem)/1.3 var(--f-text);letter-spacing:.045em;text-transform:uppercase;color:var(--navy)}
.sec-head::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--paper-band)}
.on-navy .sec-head{color:var(--gold)}
.on-navy .sec-head::before{background:rgba(220,192,140,.12)}
.sec-note{margin-top:clamp(22px,3vw,34px);max-width:62ch;color:var(--ink-soft)}
.lead{max-width:25em;font:300 clamp(1.32rem,2.45vw,1.98rem)/1.38 var(--f-text);letter-spacing:-.004em;color:var(--navy)}

/* entradas */
.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .85s var(--ease),transform .95s var(--ease);transition-delay:calc(var(--i,0)*90ms)}
.js [data-reveal].in{opacity:1;transform:none}
.js [data-reveal].done{transition-delay:0s}
.js .sec-head[data-reveal]{transform:none}
.js .sec-head[data-reveal]::before{transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease)}
.js .sec-head[data-reveal].in::before{transform:scaleX(1)}

/* I. apresentação */
.intro{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,6vw,88px);align-items:start;margin-top:clamp(36px,5vw,60px)}
.intro-text p + p{margin-top:1.15em}
.intro-text p:not(.lead){max-width:60ch}
.ficha{position:relative;background:var(--navy);color:var(--cream);padding:clamp(24px,3vw,36px);border-top:5px solid var(--gold);box-shadow:0 26px 60px -32px rgba(40,60,80,.6)}
.ficha img{width:44px;height:50px;margin-bottom:16px}
.ficha dl div{display:grid;grid-template-columns:6.6em minmax(0,1fr);gap:14px;align-items:baseline;padding:11px 0;border-top:1px solid rgba(220,192,140,.22)}
.ficha dt{font:500 .68rem/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.ficha dd{font-size:.95rem;line-height:1.5;overflow-wrap:anywhere}
.ficha dd a{color:var(--gold-pale);text-underline-offset:3px}
.ficha .glow-line{margin-top:18px}

/* II. atuação */
.areas{position:relative;overflow:hidden;margin-top:clamp(18px,2.6vw,30px);border-bottom:1px solid var(--paper-line)}
.areas li{position:relative;isolation:isolate;display:grid;grid-template-columns:clamp(64px,9vw,128px) minmax(0,1fr) minmax(0,1.1fr);column-gap:clamp(16px,3vw,48px);align-items:baseline;padding:clamp(22px,2.8vw,34px) clamp(8px,1.4vw,20px);border-top:1px solid var(--paper-line)}
.areas li::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--paper-band);transform:scaleX(0);transform-origin:left;transition:transform .65s var(--ease)}
.areas li:hover::before{transform:scaleX(1)}
.area-n{font:400 clamp(2.4rem,4.6vw,4rem)/.9 var(--f-display);color:transparent;-webkit-text-stroke:1px var(--bronze);transition:color .5s var(--ease)}
.areas li:hover .area-n{color:var(--sand)}
.areas h3{font:600 clamp(1.08rem,1.7vw,1.4rem)/1.3 var(--f-text);color:var(--navy)}
.areas p{max-width:46ch;color:var(--ink-soft)}
.areas::after{content:"";position:absolute;left:0;bottom:0;width:140px;height:1px;background:linear-gradient(90deg,transparent,var(--bronze),transparent);transform:translateX(-140px)}
.areas.live::after{animation:glint 11s linear -4s infinite}
@keyframes glint{to{transform:translateX(1200px)}}

/* III. método */
.sec-navy{background:linear-gradient(180deg,#25394D 0%,var(--navy) 42%,#233648 100%);color:var(--cream)}
.metodo-title{margin-top:clamp(32px,4.5vw,56px);font:300 clamp(1.45rem,3vw,2.4rem)/1.25 var(--f-text)}
.steps{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(18px,2.4vw,38px);margin-top:clamp(40px,5vw,68px)}
.steps .track{position:absolute;left:0;right:0;top:6px;height:2px;background:rgba(220,192,140,.2)}
.steps .track i{position:absolute;inset:0;background:var(--gold);transform-origin:left center;transform:scaleX(var(--p,1))}
.step{position:relative;padding-top:40px}
.step::before{content:"";position:absolute;left:0;top:0;width:14px;height:14px;background:var(--navy);border:2px solid var(--gold);transition:background-color .5s var(--ease)}
.step.on::before{background:var(--gold)}
.step::after{content:"";position:absolute;left:-6px;top:-6px;width:26px;height:26px;border:1px solid var(--gold);opacity:0}
.live .step.on::after{animation:pulse 5.5s var(--ease-io) infinite}
.live .step:nth-child(3).on::after{animation-delay:-1.1s}
.live .step:nth-child(4).on::after{animation-delay:-2.2s}
.live .step:nth-child(5).on::after{animation-delay:-3.3s}
.live .step:nth-child(6).on::after{animation-delay:-4.4s}
@keyframes pulse{0%{opacity:0;transform:scale(.55)}30%{opacity:.6}70%,100%{opacity:0;transform:scale(1.25)}}
.js .step>*{opacity:.34;transition:opacity .7s var(--ease)}
.js .step.on>*{opacity:1}
.step-n{font:500 .76rem/1 var(--f-mono);letter-spacing:.1em;color:var(--sand)}
.step h3{margin-top:10px;font:600 1.12rem/1.3 var(--f-text);color:var(--gold)}
.step p{margin-top:10px;font-size:.95rem;line-height:1.6;color:rgba(251,244,230,.88)}
.chip{display:inline-block;margin-top:16px;font:400 .7rem/1 var(--f-mono);letter-spacing:.05em;color:var(--gold-pale);border:1px solid rgba(220,192,140,.36);border-radius:2px;padding:7px 9px}
.metodo-foot{margin-top:clamp(40px,5vw,64px);padding-top:20px;border-top:1px solid rgba(220,192,140,.22);max-width:76ch;font-size:.95rem;color:rgba(251,244,230,.8)}

/* IV. laudo de exemplo */
.sec-desk{background:linear-gradient(180deg,#F3E9DA,#EEE2CF)}
.laudo-top{margin-top:clamp(32px,4.5vw,56px)}
.laudo-top .sec-note{margin-top:10px}
.laudo-grid{position:relative;display:grid;grid-template-columns:minmax(0,4.3fr) minmax(0,7.7fr);gap:clamp(22px,3.6vw,52px);align-items:start;margin-top:clamp(28px,4vw,48px)}
.laudo-left{position:sticky;top:calc(var(--navh) + 24px);display:grid;gap:24px}
.sheet{position:relative;background:var(--paper);color:var(--ink);box-shadow:0 1px 0 rgba(40,60,80,.06),0 26px 60px -30px rgba(40,60,80,.5)}
.titulo{padding:clamp(20px,2.6vw,30px);border-top:5px solid var(--navy)}
.sheet-k{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;font:500 .72rem/1.4 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--navy)}
.sheet-k span{letter-spacing:.06em;color:var(--bronze)}
.partes{display:grid;gap:2px;margin-top:16px;font-size:.88rem}
.partes div{display:flex;gap:8px}
.partes dt{font-weight:700}
.partes dt::after{content:":"}
.titulo-txt{margin-top:16px;font-size:.98rem;line-height:1.8}
mark{background:transparent;color:inherit;cursor:pointer;padding:2px 1px;border-radius:2px;box-shadow:inset 0 -2px 0 var(--paper-line);transition:box-shadow .5s var(--ease),background-color .4s var(--ease);-webkit-box-decoration-break:clone;box-decoration-break:clone}
mark.lit{box-shadow:inset 0 -2px 0 var(--sand)}
mark.is-traced{background:rgba(220,176,128,.4);box-shadow:inset 0 -2px 0 var(--bronze)}
.acompanha{padding-inline:4px}
.acompanha-k{font:500 .72rem/1.4 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--bronze)}
.acompanha ul{display:grid;grid-template-columns:1fr 1fr;gap:7px 18px;margin-top:12px;font-size:.9rem;line-height:1.45}
.acompanha li{position:relative;padding-left:17px}
.acompanha li::before{content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;background:var(--sand)}

.sheet-top{display:grid;justify-items:center;gap:5px;padding:13px 16px 15px;background:var(--navy);text-align:center}
.sheet-top img{width:20px;height:23px}
.sheet-top .glow-line{width:min(300px,62%)}
.sheet-wm{font:300 1.05rem/1 var(--f-text);letter-spacing:.06em;color:#fff}
.sheet-wm span{color:var(--sand)}
.sheet-wm-sub{padding-left:.62em;font:400 .5rem/1 var(--f-text);letter-spacing:.62em;text-transform:uppercase;color:var(--cream)}
.sheet-body{position:relative;isolation:isolate;padding:clamp(22px,3.4vw,44px) clamp(14px,3vw,40px) clamp(22px,3vw,36px)}
.sheet-body::before{content:"";position:absolute;z-index:-1;left:50%;top:50%;width:min(58%,340px);aspect-ratio:530/607;transform:translate(-50%,-50%);background:#F4EADB;-webkit-mask:var(--emblem) center/contain no-repeat;mask:var(--emblem) center/contain no-repeat}
.tab-title{margin-bottom:14px;font:700 1.05rem/1.2 var(--f-text);color:#16202B}
.tab-title span{text-decoration:underline;text-underline-offset:3px}
.tb-scroll{overflow-x:auto}
.tb{width:100%;border-collapse:collapse;color:var(--navy);font:400 .9rem/1.3 var(--f-text)}
.tb thead th{padding:7px 10px;background:var(--navy);color:#fff;font-weight:700;font-size:.86rem;text-align:center}
.tb thead th:first-child{text-align:left}
.tb tbody th{padding:7px 10px;font-weight:400;text-align:left}
.tb td{padding:7px 10px}
.num{display:flex;justify-content:space-between;gap:12px;font:400 .86rem/1.3 var(--f-mono);white-space:nowrap}
.num i{font-style:normal}
.num b{font-weight:400}
.tb tfoot th,.tb tfoot td{padding:7px 10px;background:var(--navy);color:#fff;font-weight:700;text-align:left}
.tb tfoot .num b,.tb tfoot .num i{font-weight:500}
.tb-main td{width:21%}
.tb-main tbody tr,.tb-main tfoot tr{cursor:pointer;transition:opacity .6s var(--ease)}
.tb-main tbody tr>*,.tb-main tfoot tr>*{transition:background-color .35s var(--ease)}
.tb-main tbody tr.is-traced>*{background:rgba(220,176,128,.32)}
.tb-main tfoot tr.is-traced>*{background:var(--navy-deep)}
.tb-main tr:focus-visible{outline-offset:-2px}
.tb-small{max-width:540px;margin-top:22px;font-size:.84rem;transition:opacity .7s var(--ease)}
.tb-small td{width:34%}
.tb-small .sub>*{font-weight:700;background:rgba(245,235,221,.92)}
.tb-small .sub .num b,.tb-small .sub .num i{font-weight:500}
.armed .tb-main tbody tr:not(.filled),.armed .tb-main tfoot tr:not(.filled),.armed .tb-small:not(.filled){opacity:.3}
.readout{min-height:3em;margin-top:14px;padding-left:12px;border-left:2px solid var(--sand);font:400 .8rem/1.5 var(--f-mono);color:var(--bronze)}
.fonte{margin-top:18px;font-size:.9rem}
.sheet-bot{padding:12px 14px;background:var(--navy);color:var(--cream);text-align:center;font-size:.78rem;line-height:1.55}
.trace{position:absolute;inset:0;z-index:4;width:100%;height:100%;overflow:visible;pointer-events:none}
.trace path{fill:none;stroke:var(--bronze);stroke-width:1.5;stroke-dasharray:var(--len,0);stroke-dashoffset:var(--len,0);opacity:0}
.trace circle{fill:var(--bronze);opacity:0;transition:opacity .3s var(--ease)}
.trace.on path{opacity:1;stroke-dashoffset:0;transition:stroke-dashoffset .7s var(--ease)}
.trace.on circle{opacity:1}
.laudo-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;margin-top:clamp(24px,3vw,36px)}
.hint-line{font:400 .8rem/1.5 var(--f-mono);color:var(--ink-soft)}

/* V. formação */
.formacao{display:grid;grid-template-columns:minmax(0,4.2fr) minmax(0,7.8fr);gap:clamp(28px,5vw,72px);align-items:start;margin-top:clamp(36px,5vw,60px)}
.formacao-side{display:grid;gap:24px;justify-items:start}
.vinculo{padding-left:14px;border-left:2px solid var(--sand);font-size:.95rem;line-height:1.55}
.vinculo span{display:block;margin-bottom:4px;font:500 .7rem/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--bronze)}
.titulos{display:grid;grid-template-columns:1fr 1fr;padding:1px 0 0 1px}
.titulos li{position:relative;display:flex;flex-direction:column;gap:8px;min-height:196px;margin:-1px 0 0 -1px;padding:clamp(20px,2.6vw,32px);background:var(--paper);border:1px solid var(--paper-line)}
.titulo-k{font:500 .72rem/1.4 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--bronze)}
.titulos h3{font:600 1.12rem/1.32 var(--f-text);color:var(--navy)}
.titulos p{font-size:.95rem;line-height:1.5;color:var(--ink-soft)}
.titulo-d{margin-top:auto;padding-top:14px;font:400 .78rem/1.4 var(--f-mono);color:var(--ink-soft)}
.titulos li::after{content:"";position:absolute;right:-1px;top:-1px;width:12px;height:12px;background:var(--sand);transform:scale(0);transform-origin:top right;transition:transform .45s var(--ease)}
.titulos li:hover::after{transform:scale(1)}

/* VI. antes da nomeação */
.faq{margin-top:clamp(22px,3.2vw,38px);border-bottom:1px solid var(--paper-line)}
.faq details{border-top:1px solid var(--paper-line)}
.faq summary{display:grid;grid-template-columns:2.2rem minmax(0,1fr) 14px;gap:clamp(10px,2vw,22px);align-items:baseline;padding:22px 6px;cursor:pointer;list-style:none;font:600 1.05rem/1.4 var(--f-text);color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.q-n{font:500 .74rem/1 var(--f-mono);color:var(--bronze)}
.q-i{position:relative;align-self:center;width:14px;height:14px}
.q-i::before,.q-i::after{content:"";position:absolute;left:0;top:6px;width:14px;height:2px;background:var(--navy);transition:transform .4s var(--ease)}
.q-i::after{transform:rotate(90deg)}
.faq details[open] .q-i::after{transform:rotate(0deg)}
.ans{padding:0 6px 24px calc(2.2rem + clamp(10px,2vw,22px) + 6px)}
.ans p{max-width:66ch}
.ans a{color:var(--navy);font-weight:600;text-underline-offset:3px;overflow-wrap:anywhere}
.faq details[open] .ans{animation:ans .5s var(--ease)}
@keyframes ans{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* VII. termo de encerramento */
.sec-fim{overflow:hidden;isolation:isolate}
.sec-fim .wake{z-index:0}
.fim-wrap{position:relative;z-index:1}
.fim{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,6vw,84px);align-items:start;margin-top:clamp(36px,5vw,60px)}
.fim-lede{width:fit-content;max-width:26em;font:300 clamp(1.22rem,2.2vw,1.8rem)/1.42 var(--f-text)}
.fim-mail{margin-top:clamp(22px,3vw,36px)}
.fim-mail a{position:relative;display:inline-block;padding-bottom:6px;font:300 clamp(1.02rem,3.2vw,2.4rem)/1.2 var(--f-text);color:var(--gold);text-decoration:none;overflow-wrap:anywhere}
.fim-mail a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.fim-mail a:hover::after{transform:scaleX(1)}
.fim-cta{width:fit-content;margin-top:28px}
.assina{display:grid;gap:3px;width:fit-content;margin-top:clamp(36px,5vw,60px);font-size:.95rem}
.assina strong{margin-top:20px;font:700 1.05rem/1.3 var(--f-text);letter-spacing:.02em;text-transform:uppercase}
.dados{padding:clamp(22px,2.8vw,32px);border-top:5px solid var(--gold)}
.dados dl{margin-top:14px}
.dados dl div{padding:11px 0;border-top:1px solid var(--paper-line)}
.dados dt{font:500 .68rem/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--bronze)}
.dados dd{margin-top:3px;font-size:.93rem;line-height:1.5;overflow-wrap:anywhere}
.dados-act{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:18px}
.copiado{font:400 .78rem/1.4 var(--f-mono);color:var(--bronze)}

/* rodapé */
.rodape{position:relative;z-index:1;padding:26px 0 30px;background:var(--navy-deep);border-top:1px solid rgba(220,192,140,.2);color:var(--cream);text-align:center;font-size:.84rem;line-height:1.7}
.rodape a{text-decoration:none}
.rodape a:hover{text-decoration:underline;text-underline-offset:3px}
.rodape-nota{margin-top:8px;font:400 .7rem/1.5 var(--f-mono);color:rgba(251,244,230,.64)}

/* loops só rodam com a aba visível */
body.paused *,body.paused *::before,body.paused *::after{animation-play-state:paused !important}

/* ---------- telas menores ---------- */
@media (max-width:1000px){
  .intro,.formacao,.fim,.laudo-grid{grid-template-columns:minmax(0,1fr)}
  .laudo-left{position:static}
  .steps{grid-template-columns:minmax(0,1fr);gap:34px}
  .steps .track{left:6px;right:auto;top:0;bottom:0;width:2px;height:auto}
  .steps .track i{transform-origin:center top;transform:scaleY(var(--p,1))}
  .step{padding:0 0 0 42px}
  .step p{max-width:52ch}
}
@media (max-width:880px){
  .nav-links a:not(.btn){display:none}
}
@media (max-width:640px){
  :root{--navh:62px}
  .hero-mark{right:-22%;height:74%;margin-top:0;top:14%}
  .hero-foot{grid-template-columns:minmax(0,1fr)}
  .hint{justify-self:start;margin-right:0}
  .cover-line{top:46%}
  .areas li{grid-template-columns:54px minmax(0,1fr)}
  .areas li p{grid-column:2;margin-top:6px}
  .titulos{grid-template-columns:minmax(0,1fr)}
  .titulos li{min-height:0}
  .acompanha ul{grid-template-columns:minmax(0,1fr)}
  .sheet-body{padding-inline:12px}
  .tb{font-size:.8rem}
  .tb thead th{font-size:.72rem;padding:6px 5px}
  .tb tbody th,.tb td,.tb tfoot th,.tb tfoot td{padding:6px 5px}
  .num{font-size:.72rem;gap:4px}
  .tb-main .num i{display:none}
  .tb-main .num{justify-content:flex-end}
  .tb-main td{width:22%}
  .ans{padding-left:6px}
}
@media (max-height:560px){.hint{display:none}}

/* ---------- movimento reduzido: tudo no estado final, motores parados ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none !important;transition:none !important}
  .js [data-reveal],.js .hero [data-in]{opacity:1 !important;transform:none !important}
  .js .hero .w>span,.js .cover-top,.js .cover-left,.js .cover-line{transform:none !important}
  .js .sec-head[data-reveal]::before{transform:none !important}
  .js .hero-mark{opacity:1 !important}
  .js .step>*{opacity:1 !important}
  .hint{display:none}
}
