:root,[data-theme=light]{--bg:#EFEEE8;--bg2:#F6F6F4;--ink:#0B151C;--mute:#4A555B;--line:#E3E1DC;--acc:#D96725;--acct:#A64F1C;--strip:#0B151C;--onstrip:#E9E6E1;color-scheme:light}
[data-theme=dark]{--bg:#0B151C;--bg2:#141C20;--ink:#F2EEEA;--mute:#A9B3B8;--line:#2B383E;--acc:#D96725;--acct:#E38C59;--strip:#080C0E;--onstrip:#C9CFD2;color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1rem/1.6 'Public Sans',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;transition:background .3s,color .3s}
img{max-width:100%;height:auto}
a{color:inherit}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--acc);color:#0B151C;font-weight:600;padding:10px 16px;z-index:99;text-decoration:none;border-radius:0 0 6px 0}.skip:focus{left:0;top:0}
.wrap{max-width:1120px;margin:0 auto;padding:0 clamp(20px,5vw,40px)}
.fd,h1,h2,h3,.fdh{font-family:'Archivo','Arial Narrow',Arial,sans-serif;font-stretch:75%;letter-spacing:.005em}
/* topo */
.topo{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}
.topo .wrap{display:flex;align-items:center;gap:24px;height:72px}
.logo img{display:block;height:44px;width:auto}
.logo .lg-b{display:none}[data-theme=dark] .logo .lg-a{display:none}[data-theme=dark] .logo .lg-b{display:block}
.menu{display:flex;gap:4px;margin-left:auto}
.menu a{padding:8px 12px;text-decoration:none;font-size:.9375rem;color:var(--mute);border-bottom:2px solid transparent}
.menu a:hover{color:var(--ink)}
.menu a[aria-current=page]{color:var(--ink);border-bottom-color:var(--acc)}
.ibtn{background:none;border:1px solid var(--line);color:var(--ink);width:40px;height:40px;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.ibtn:hover{border-color:var(--acc)}
.ibtn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
[data-theme=light] #tema svg{transform:rotate(180deg)}
.prog{position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--acc)}
/* tipografia comum */
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--mute)}
.eyebrow::before{content:'';width:8px;height:8px;background:var(--acc);border-radius:50%}
h1{font-weight:700;font-size:clamp(2rem,4.6vw,3.25rem);line-height:1.08;margin:.4em 0 .5em;text-wrap:balance}
h2{font-weight:700;font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.15;margin:0 0 .6em}
.lede{font-size:1.125rem;color:var(--mute);max-width:60ch;margin:0}
.tag,.tbc{display:inline-block;font:600 .6875rem/1.4 'Public Sans',sans-serif;letter-spacing:.03em;text-transform:uppercase;border:1px solid var(--acct);color:var(--acct);border-radius:3px;padding:1px 6px;vertical-align:middle}
.view{animation:vin .35s ease both}
@keyframes vin{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
main{min-height:60vh}
.hero{padding:clamp(36px,7vw,72px) 0 clamp(20px,4vw,36px)}
.crumbs{font-size:.8125rem;color:var(--mute);display:flex;flex-wrap:wrap;gap:6px}
.crumbs a{color:var(--mute)}.crumbs a:hover{color:var(--acct)}
.crumbs span[aria-hidden]{opacity:.6}
/* trilhas em destaque */
.trilhas-d{padding:8px 0 40px}
.trilhas-d h2{font-size:1.25rem;margin-bottom:16px}
.tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(176px,1fr));gap:14px;margin:0;padding:0;list-style:none}
.tcard{display:flex;flex-direction:column;height:100%;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:6px;text-decoration:none;background:var(--bg);transition:border-color .2s,transform .2s}
.tcard:hover{border-color:var(--acc);transform:translateY(-2px)}
.tcard .cv{border-radius:0;border-bottom:1px solid var(--line)}
.tcard .tb{display:flex;flex-direction:column;flex:1;padding:14px 18px 18px}
.tcard .n{font:700 1.5rem/1 'Archivo',Arial,sans-serif;color:var(--acct);font-stretch:75%}
.tcard b{font-family:'Archivo','Arial Narrow',sans-serif;font-stretch:75%;font-size:1.1875rem;line-height:1.15;margin:10px 0 6px;display:block}
.tcard small{color:var(--mute);font-size:.8125rem;margin-top:auto}
/* filtros e lista */
.tools{display:flex;flex-direction:column;gap:14px;padding:22px 0;border-top:1px solid var(--line)}
.busca{width:100%;max-width:420px;padding:11px 14px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink);font:inherit}
.busca:hover{border-color:var(--mute)}
.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.chips .lb{font-size:.8125rem;font-weight:600;color:var(--mute);min-width:64px}
.chip{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:99px;padding:6px 13px;font:500 .875rem/1.2 'Public Sans',sans-serif;cursor:pointer}
.chip:hover{border-color:var(--acc)}
.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.chip sup{font-size:.7rem;margin-left:4px;opacity:.75}
.lista{list-style:none;margin:0;padding:0}
.lista>li{border-top:1px solid var(--line)}
.lista>li:last-child{border-bottom:1px solid var(--line)}
.item{display:grid;grid-template-columns:280px 1fr;gap:6px 28px;padding:24px 0;text-decoration:none;position:relative}
.item .cv{border-radius:6px;border:1px solid var(--line);grid-row:1}
.item .mt{font-size:.8125rem;color:var(--mute);display:flex;flex-direction:row;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.item h3{font-size:clamp(1.25rem,2.2vw,1.625rem);line-height:1.15;font-weight:700;margin:0 0 8px;text-wrap:balance}
.item p{margin:0;color:var(--mute);max-width:64ch;font-size:.96rem}
.item:hover h3{text-decoration:underline;text-decoration-color:var(--acc);text-decoration-thickness:2px;text-underline-offset:4px}
.ed{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-weight:600}
.ed::before{content:'';width:6px;height:6px;background:var(--acc);border-radius:50%}
.vazio{padding:28px;border:1px dashed var(--line);border-radius:6px;color:var(--mute)}
.sec{padding:clamp(28px,5vw,56px) 0}
/* trilhas (pagina) */
.trilha{padding:32px 0;border-top:1px solid var(--line)}
.trilha ol{list-style:none;margin:18px 0 0;padding:0;counter-reset:t}
.trilha li{counter-increment:t;display:grid;grid-template-columns:44px 1fr;gap:4px 12px;padding:14px 0;border-top:1px dashed var(--line)}
.trilha li::before{content:counter(t);font:700 1.375rem/1.2 'Archivo',Arial,sans-serif;font-stretch:75%;color:var(--acct)}
.trilha li a{font-weight:600;text-decoration:none;font-size:1.0625rem}
.trilha li a:hover{text-decoration:underline;text-decoration-color:var(--acc);text-underline-offset:4px;text-decoration-thickness:2px}
.trilha li small{display:block;color:var(--mute);font-weight:400}
.trilha li.pend{border:1px dashed var(--acct);border-radius:6px;padding:14px;margin-top:8px}
.trilha li.pend::before{content:'+';color:var(--acct)}
/* artigo */
.art-wrap{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:clamp(32px,6vw,80px);padding-bottom:64px}
.art-head{padding:clamp(28px,5vw,56px) 0 12px}
.art-head h1{font-size:clamp(1.85rem,4vw,2.75rem);max-width:24ch;text-wrap:balance}
.byline{display:flex;align-items:center;gap:12px;color:var(--mute);font-size:.9rem;margin-top:8px}
.byline .txt{display:flex;flex-direction:column;gap:2px}
.byline strong{color:var(--ink)}
.byline-ph{width:44px;height:44px;border-radius:99px;object-fit:cover;flex:none}
.trail-chip{display:inline-flex;gap:6px;margin-top:14px;font-size:.8125rem;color:var(--mute);text-decoration:none;border:1px solid var(--line);border-radius:99px;padding:4px 12px}
.trail-chip:hover{border-color:var(--acc)}
.trail-chip b{color:var(--acct)}
.hcap{margin:26px 0 0}
.hcap .cv{aspect-ratio:4/1;border-radius:8px;border:1px solid var(--line)}
.box{background:var(--bg2);border-radius:6px;border-left:3px solid var(--acc);padding:18px 22px;margin:28px 0}
.box h2{font-size:1.125rem;margin:0 0 10px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.box ul{margin:0;padding-left:1.1em}
.box li{margin:6px 0;color:var(--ink)}
.prose{max-width:66ch;overflow-wrap:anywhere;font-size:1.125rem;line-height:1.75}
.prose p{margin:0 0 1.15em}
.prose h2,.prose h3{margin:2em 0 .6em;line-height:1.2;max-width:none}
.prose h2{font-size:1.75rem}.prose h3{font-size:1.375rem}
.prose ul,.prose ol{padding-left:1.3em;margin:0 0 1.2em}
.prose li{margin:.35em 0}
.prose li::marker{color:var(--acct)}
.prose blockquote{margin:1.4em 0;padding:.2em 0 .2em 1.2em;border-left:3px solid var(--line);color:var(--mute)}
.prose a{text-decoration:underline;text-decoration-color:var(--acc);text-decoration-thickness:2px;text-underline-offset:3px;overflow-wrap:anywhere}
.prose a:hover{color:var(--acct)}
.prose :target,.flash{background:rgba(246,102,24,.12);transition:background .6s}
.faq{max-width:66ch;margin-top:44px}
.faq h2{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.faq details{border-top:1px solid var(--line)}
.faq details:last-of-type{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;padding:16px 28px 16px 0;font-weight:600;list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';position:absolute;right:4px;top:12px;font-size:1.4rem;color:var(--acct);font-weight:400}
.faq details[open] summary::after{content:'−'}
.faq .ans{padding:0 0 16px;color:var(--ink)}
.faq .ans p{margin:0 0 8px}
.faq button{background:none;border:0;padding:0;color:var(--acct);font:600 .875rem 'Public Sans',sans-serif;text-decoration:underline;text-decoration-color:var(--acc);text-underline-offset:3px;cursor:pointer}
.notas{max-width:66ch;margin-top:44px;font-size:.9rem;color:var(--mute)}
.notas h2{font-size:1.125rem;color:var(--ink)}
.notas ul{padding-left:1.1em;margin:8px 0}
.notas a{color:var(--mute);overflow-wrap:anywhere}
.notas li{margin:4px 0}
.bl-data{font-size:.8125rem;margin-top:10px}
/* lateral */
.side{position:sticky;top:96px;align-self:start;max-height:calc(100vh - 116px);overflow:auto;font-size:.9rem;padding-top:clamp(28px,5vw,56px)}
.side h2{font:600 .75rem/1.3 'Public Sans',sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);margin:0 0 10px}
.toc{list-style:none;margin:0 0 28px;padding:0;counter-reset:n;border-left:1px solid var(--line)}
.toc li{margin:0}
.toc a{display:block;padding:6px 0 6px 14px;text-decoration:none;color:var(--mute);border-left:2px solid transparent;margin-left:-1px;line-height:1.35}
.toc li.h2 a{counter-increment:n}
.toc li.h2 a::before{content:counter(n)'  ';color:var(--acct);font-weight:700}
.toc li.sub a{padding-left:30px;font-size:.85rem}
.toc a:hover{color:var(--ink)}
.toc a.on{color:var(--ink);border-left-color:var(--acc);font-weight:600}
.rel-side{list-style:none;margin:0;padding:0}
.rel-side li{border-top:1px solid var(--line);padding:10px 0}
.rel-side a{text-decoration:none;font-weight:600;line-height:1.3;display:block}
.rel-side a:hover{text-decoration:underline;text-decoration-color:var(--acc);text-underline-offset:3px}
.rel-side small{color:var(--mute);font-weight:400}
.toc-m{display:none}
/* continue lendo */
.cont{border-top:1px solid var(--line);padding:44px 0 56px;background:var(--bg2)}
.cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:18px 0 0;padding:0;list-style:none}
.ccard{display:block;height:100%;text-decoration:none;background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:0;overflow:hidden}
.ccard .cv{border-bottom:1px solid var(--line)}
.ccard .cb{padding:14px 18px 18px}
.ccard:hover{border-color:var(--acc)}
.ccard b{display:block;font-family:'Archivo','Arial Narrow',sans-serif;font-stretch:75%;font-size:1.1875rem;line-height:1.2;margin:8px 0}
.ccard p{margin:0;color:var(--mute);font-size:.875rem}
.pn{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}
.pn a{border:1px solid var(--line);background:var(--bg);border-radius:6px;padding:14px 18px;text-decoration:none}
.pn a:hover{border-color:var(--acc)}
.pn small{display:block;color:var(--acct);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.pn .nx{text-align:right;grid-column:2}
/* capa: imagem de cobertura, generica em toda lista/artigo */
.cv{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;background:var(--bg2)}
[data-theme=dark] .cv{filter:brightness(.92)}
/* rodape */
.rod{border-top:1px solid var(--line);padding:36px 0 28px;font-size:.9rem;color:var(--mute)}
.rod .wrap{display:flex;flex-wrap:wrap;gap:24px 56px;justify-content:space-between}
.rod .logo img{height:38px}
.rod p{margin:8px 0 0;max-width:38ch}
.strip{background:var(--strip);color:var(--onstrip);font-size:.78rem;padding:10px 0}
.strip a{text-decoration:underline}
.strip .wrap{display:flex;flex-wrap:wrap;gap:6px 24px}
@media (max-width:900px){
 .art-wrap{grid-template-columns:minmax(0,1fr)}
 .side{position:static;max-height:none;padding-top:0}
 .side .toc-d{display:none}
 .toc-m{display:block;margin:20px 0;border:1px solid var(--line);border-radius:6px}
 .toc-m summary{padding:12px 16px;cursor:pointer;font-weight:600}
 .toc-m .toc{margin:0 0 12px 16px}
 .item{grid-template-columns:220px 1fr}
}
@media (max-width:640px){
 .menu a{padding:8px 8px;font-size:.875rem}
 .topo .wrap{gap:10px;height:64px}
 .logo img{height:38px}
 .item{grid-template-columns:1fr}
 .prose{font-size:1.0625rem}
 .pn{grid-template-columns:1fr}.pn .nx{grid-column:1;text-align:left}
 .hcap .cv{aspect-ratio:5/2;object-position:100% 50%}
}
