/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 200 400;
  font-display: swap;
  src: url(f/f1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(f/f2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(f/f3.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(f/f4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --preto:#1A1A1A; --creme:#F6F3E9; --areia:#E7E3DF; --bronze:#734F2F; --oliva:#5F6B4A; --dourado:#C4A67C;
  --bg:#F2EEE3; --panel:#FBF9F3; --panel2:#F6F3E9; --rail:#EDE8DB;
  --ink:#1A1A1A; --ink2:#413B35; --ink3:#665F57; --ink4:#6E675E;
  --line:#DED7C6; --line2:#C2B9A4;
  --accent:#734F2F; --accent2:#8B6039; --oliva2:#5F6B4A;
  --r1:#C1A995; --r2:#AD917A; --r3:#9A7B61; --r4:#866548; --r5:#734F2F; --ctx:#908B84; --nodata:#E7E3DF;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --sans:'Work Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --s1:4px;--s2:8px;--s3:12px;--s4:18px;--s5:26px;--s6:36px;--s7:52px;--s8:72px;--s9:100px;
  --t1:11.5px;--t2:12.5px;--t3:13.5px;--t4:14.5px;--t5:16px;--t6:18.5px;--t7:22px;--t8:29px;--t9:38px;--t10:52px;
  --max:1220px; --maxw:1420px;
  --ease:cubic-bezier(.22,.61,.36,1);
}
html[data-theme="dark"]{
  --bg:#121110; --panel:#1B1918; --panel2:#211E1C; --rail:#171514;
  --ink:#F2EEE3; --ink2:#CFC8BC; --ink3:#A49C91; --ink4:#948C81;
  --line:#2B2724; --line2:#3D3833; --accent:#C4A67C; --accent2:#D8BE97;
  --r1:#654529;--r2:#7B5A3E;--r3:#917052;--r4:#A98668;--r5:#C19D7E;--ctx:#787169;--nodata:#2B2724;
}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16.5px;font-weight:300;
  line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:clip}
h1,h2{font-family:var(--serif);font-weight:200;letter-spacing:-.012em;text-transform:lowercase;line-height:1.08}
h3,h4{font-family:var(--serif);font-weight:300;letter-spacing:-.012em;text-transform:lowercase;line-height:1.08}
a{color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 34%,transparent)}
a:hover{border-bottom-color:var(--accent)}
img{max-width:100%;display:block}
button,select,input{font-family:inherit;font-size:inherit;color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(20px,4vw,44px)}
.wrapw{max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,4vw,44px)}

/* ===== HEADER ===== */
.hd{position:sticky;top:0;z-index:80;background:color-mix(in srgb,var(--bg) 97%,transparent);
  backdrop-filter:saturate(1.2) blur(9px);border-bottom:1px solid var(--line)}
.hdin{display:flex;align-items:center;gap:var(--s5);height:74px}
.brand{display:flex;align-items:baseline;gap:11px;border:0;flex:0 0 auto}
.brand svg{height:17px;width:auto;fill:var(--ink)}
.brand .obs{font-family:var(--serif);font-size:14.5px;color:var(--ink2);white-space:nowrap;letter-spacing:-.01em}
@media(max-width:1180px){.brand .obs{display:none}}
.mnav{display:flex;gap:2px;margin-left:auto;flex-wrap:nowrap}
.mnav a{border:0;font-size:14px;color:var(--ink2);padding:7px 11px;border-radius:0;white-space:nowrap;
  border-bottom:2px solid transparent;transition:color .14s,border-color .14s}
.mnav a:hover{color:var(--ink)}
.mnav a.on{color:var(--accent);border-bottom-color:var(--accent)}
.hdtools{display:flex;align-items:center;gap:var(--s3);margin-left:var(--s4)}
.lang{position:relative}
.langb{background:none;border:1px solid var(--line2);color:var(--ink3);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;padding:6px 10px;cursor:pointer;display:flex;align-items:center;gap:6px}
.langb:hover{border-color:var(--accent);color:var(--accent)}
.langm{display:none;position:absolute;right:0;top:calc(100% + 6px);background:var(--panel);
  border:1px solid var(--line);min-width:184px;z-index:90}
.lang.open .langm{display:block}
.langm button{display:flex;justify-content:space-between;gap:10px;width:100%;background:none;border:0;
  text-align:left;padding:9px 13px;font-size:12.5px;color:var(--ink2);cursor:pointer}
.langm button:hover{background:var(--panel2);color:var(--ink)}
.langm button .st{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink4)}
.langm button.on{color:var(--accent)}
.tgl{background:none;border:1px solid var(--line2);color:var(--ink3);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;padding:6px 10px;cursor:pointer}
.tgl:hover{border-color:var(--accent);color:var(--accent)}
.burger{display:none;width:36px;height:36px;border:1px solid var(--line2);background:none;cursor:pointer;
  flex-direction:column;justify-content:center;align-items:center;gap:4px;margin-left:auto}
.burger i{display:block;width:15px;height:1.4px;background:var(--ink)}
@media(max-width:1240px){
  .mnav{display:none;position:fixed;inset:74px 0 auto 0;background:var(--panel);border-bottom:1px solid var(--line);
    flex-direction:column;padding:var(--s3) 0;max-height:calc(100vh - 74px);overflow:auto}
  body.nav .mnav{display:flex}
  .mnav a{padding:11px clamp(20px,4vw,44px);font-size:14px;border-bottom:1px solid var(--line)}
  .mnav a.on{border-bottom-color:var(--line);background:color-mix(in srgb,var(--accent) 8%,transparent)}
  .burger{display:flex}
  .hdtools{margin-left:var(--s3)}
}

/* banner de idioma */
.langbar{background:var(--preto);color:var(--creme);font-size:12px;padding:9px 0}
html[data-theme="dark"] .langbar{background:var(--accent);color:#1A1A1A}
.langbar .wrap{display:flex;gap:14px;align-items:center;justify-content:space-between}
.langbar button{background:none;border:1px solid color-mix(in srgb,#F6F3E9 42%,transparent);color:inherit;
  font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:4px 9px;cursor:pointer}

/* ===== HERO ===== */
.hero{position:relative;border-bottom:1px solid var(--line);overflow:hidden;background:var(--rail)}
.hero img{width:100%;height:min(64vh,560px);object-fit:cover;object-position:center 60%}
.heroin{position:absolute;inset:0;display:flex;align-items:flex-end;background:rgba(26,26,26,.58)}
.heroin .wrap{width:100%;padding-bottom:var(--s7);padding-top:var(--s7)}
.hero h1{color:#F6F3E9;font-size:clamp(30px,5vw,62px);max-width:19ch;line-height:1.02}
.hero p{color:#E7E3DF;font-size:var(--t6);max-width:62ch;margin-top:var(--s4);font-weight:300}
.hero .kick{color:#F6F3E9;opacity:.82;font-size:var(--t1);letter-spacing:.24em;text-transform:uppercase;margin-bottom:var(--s4)}

/* ===== SEÇÕES ===== */
.sec{padding:var(--s8) 0}
.sec.tight{padding:var(--s7) 0}
.sec.alt{background:var(--panel2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.eyebrow{display:flex;align-items:center;gap:var(--s4);margin:var(--s7) 0 var(--s5)}
.pagehead + .sec .eyebrow:first-child,.wrap > .eyebrow:first-child{margin-top:0}
dl.kv + .eyebrow,.tblwrap + .eyebrow,.cards + .eyebrow,.chart + .eyebrow,.figch + .eyebrow{margin-top:var(--s8)}
.eyebrow .n{font-size:var(--t1);letter-spacing:.2em;color:var(--ink4)}
.eyebrow .rule{flex:1;height:1px;background:var(--line)}
.eyebrow .nm{font-size:var(--t1);letter-spacing:.2em;text-transform:uppercase;color:var(--ink4)}
h2.sec-t{font-size:clamp(25px,3.3vw,40px);margin-bottom:var(--s3);max-width:22ch}
p.lede{font-size:var(--t6);line-height:1.6;color:var(--ink2);max-width:72ch;margin:0 0 var(--s6);font-weight:300}
.pagehead{padding:var(--s8) 0 var(--s6);border-bottom:1px solid var(--line);background:var(--panel2)}
.crumb{font-size:var(--t1);letter-spacing:.18em;text-transform:uppercase;color:var(--ink4);margin-bottom:var(--s4)}
.crumb a{border:0;color:var(--ink4)}.crumb a:hover{color:var(--accent)}
.pagehead h1{font-size:clamp(28px,4.4vw,50px);max-width:19ch}
.pagehead p{font-size:var(--t6);color:var(--ink2);max-width:74ch;margin-top:var(--s4);font-weight:300}
.stamp{display:inline-flex;align-items:center;gap:8px;font-size:var(--t1);letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink4);border:1px solid var(--line2);padding:5px 10px;margin-top:var(--s5)}
.stamp i{width:5px;height:5px;background:var(--oliva);border-radius:50%;display:block}

/* grid */
.grid{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}
.grid>*{background:var(--panel);min-width:0}
.g5{grid-template-columns:repeat(5,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}
@media(max-width:1000px){.g5,.g4{grid-template-columns:repeat(2,1fr)}.g3,.g2{grid-template-columns:1fr}}
@media(max-width:580px){.g5,.g4{grid-template-columns:1fr}}
.card{background:var(--panel);border:1px solid var(--line);padding:var(--s5)}
.stat{padding:var(--s5)}
.stat .k{font-size:var(--t1);letter-spacing:.18em;text-transform:uppercase;color:var(--ink3);display:block;margin-bottom:var(--s3)}
.stat .v{font-family:var(--serif);font-weight:200;font-size:clamp(28px,3.2vw,40px);line-height:.98;color:var(--ink);overflow-wrap:anywhere}
.stat .v em{font-style:normal;font-size:.44em;color:var(--ink3);margin-left:5px}
.stat .d{font-size:var(--t4);color:var(--ink2);margin-top:var(--s3);line-height:1.55}
.stat .src{font-size:var(--t1);color:var(--ink4);margin-top:var(--s3)}
.plab{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink3);display:block}
.chip{display:inline-block;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;
  border:1px solid var(--line2);color:var(--ink3);white-space:nowrap}
.chip.ok{border-color:var(--oliva);color:var(--oliva)}
html[data-theme="dark"] .chip.ok{border-color:#93A47A;color:#93A47A}
.chip.dv{border-color:var(--accent2);color:var(--accent2);background:color-mix(in srgb,var(--accent) 10%,transparent)}
.chip.tA{border-color:var(--accent);color:var(--accent)}
.chip.nl{border-style:dashed}
.note{border-left:2px solid var(--accent);padding:var(--s3) 0 var(--s3) var(--s4);font-size:var(--t4);
  color:var(--ink2);margin:var(--s5) 0;line-height:1.62}
.note strong{color:var(--ink);font-weight:500}
.srcline{font-size:var(--t1);color:var(--ink4);margin-top:var(--s3);line-height:1.7}
.srcline a{font-size:var(--t1)}

/* portas */
.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
@media(max-width:960px){.doors{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.doors{grid-template-columns:1fr}}
.door{background:var(--panel);padding:var(--s5);border:0;display:block;text-align:left;cursor:pointer;
  transition:background .16s var(--ease)}
.door:hover{background:var(--panel2)}
.door svg{width:22px;height:22px;stroke:var(--accent);fill:none;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;margin-bottom:var(--s4)}
.door h3{font-size:var(--t7);margin-bottom:6px}
.door .q{font-size:var(--t4);color:var(--ink2);margin-bottom:var(--s4)}
.door .go{font-size:var(--t2);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}

/* tabela */
.tblwrap{overflow-x:auto;border:1px solid var(--line);background:var(--panel)}
table{border-collapse:collapse;width:100%;font-size:var(--t4)}
th{position:sticky;top:0;background:var(--panel);text-align:left;font-weight:500;font-size:10.5px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);padding:12px;border-bottom:1px solid var(--line2);white-space:nowrap;z-index:2}
td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink2)}
tr:last-child td{border-bottom:0}
tbody tr:hover td{background:var(--panel2)}
td.nm{color:var(--ink);font-weight:400}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
dl.kv{display:grid;grid-template-columns:minmax(170px,250px) 1fr;gap:1px;background:var(--line);border:1px solid var(--line);font-size:var(--t4)}
dl.kv dt{background:var(--panel2);padding:10px 13px;color:var(--ink3);font-size:var(--t2);letter-spacing:.06em;text-transform:uppercase}
dl.kv dd{background:var(--panel);padding:10px 13px;color:var(--ink2)}
@media(max-width:640px){dl.kv{grid-template-columns:1fr}dl.kv dt{padding-bottom:2px}}

/* filtros */
.filters{display:flex;gap:var(--s3);flex-wrap:wrap;align-items:center;margin-bottom:var(--s5)}
.filters input,.filters select{background:var(--panel);border:1px solid var(--line2);padding:9px 12px;font-size:var(--t4);color:var(--ink);min-width:160px}
.filters input{min-width:270px;flex:1}
.filters input:focus,.filters select:focus{outline:0;border-color:var(--accent)}
.count{font-size:var(--t2);letter-spacing:.12em;text-transform:uppercase;color:var(--ink4);margin-left:auto}

/* fichas em grade */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.mcard{background:var(--panel);padding:var(--s5);cursor:pointer;border:0;text-align:left;display:block;transition:background .16s}
.mcard:hover{background:var(--panel2)}
.mcard h3{font-size:var(--t7);margin-bottom:5px}
.mcard .sub{font-size:var(--t2);letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:var(--s3)}
.mcard .ev{font-size:var(--t3);color:var(--ink2)}
.mcard .bot{margin-top:var(--s4);display:flex;gap:7px;flex-wrap:wrap}

/* artigos */
.arts{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.art{background:var(--panel);padding:var(--s6) var(--s5);display:flex;flex-direction:column;gap:var(--s3)}
.art .eix{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.art h3{font-size:var(--t8);line-height:1.14}
.art p{font-size:var(--t4);color:var(--ink2);flex:1}
.art .meta{font-size:var(--t1);letter-spacing:.12em;text-transform:uppercase;color:var(--ink4);
  display:flex;gap:12px;align-items:center;padding-top:var(--s3);border-top:1px solid var(--line)}

/* estudos */
.stud{display:grid;grid-template-columns:230px 1fr;gap:var(--s6);align-items:start;padding:var(--s6) 0;border-top:1px solid var(--line)}
@media(max-width:760px){.stud{grid-template-columns:1fr}}
.stud .cv{border:1px solid var(--line);background:var(--panel2);aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;overflow:hidden}
.stud .cv img{width:100%;height:100%;object-fit:cover}
.stud .cv span{font-family:var(--serif);font-weight:300;font-size:var(--t7);color:var(--ink4);padding:var(--s5);text-align:center}
.stud h3{font-size:var(--t9);line-height:1.08;margin-bottom:var(--s3)}
.stud p{font-size:var(--t5);color:var(--ink2);max-width:66ch}

/* figuras */
.fig{margin:0;border:1px solid var(--line);background:var(--panel2);overflow:hidden}
.fig img{width:100%;height:auto}
.fig.diag{background:#F6F3E9}
html[data-theme="dark"] .fig.diag{background:#F6F3E9}
.fig figcaption{display:flex;gap:var(--s4);align-items:baseline;justify-content:space-between;flex-wrap:wrap;
  padding:var(--s3) var(--s4);border-top:1px solid var(--line);background:var(--panel);font-size:var(--t1);color:var(--ink4)}
.fig figcaption b{font-weight:400;color:var(--ink2);min-width:0}
.fig figcaption .tagi{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--line2);padding:2px 7px;white-space:nowrap}
.figrow{display:grid;gap:var(--s5)}
.figrow.f2{grid-template-columns:1fr 1fr}
.figrow.f12{grid-template-columns:1fr 1.5fr}
.figrow.f21{grid-template-columns:1.5fr 1fr}
@media(max-width:900px){.figrow.f2,.figrow.f12,.figrow.f21{grid-template-columns:1fr}}

/* gráficos */
.chart{background:var(--panel);border:1px solid var(--line);padding:var(--s5)}
.chart h3{font-size:var(--t7);margin-bottom:4px}
.csub{font-size:var(--t2);color:var(--ink3);margin-bottom:var(--s5);line-height:1.55}
.bars{display:flex;flex-direction:column;gap:9px}
.bar{display:grid;grid-template-columns:minmax(96px,1.1fr) 3fr minmax(78px,auto);gap:14px;align-items:center;font-size:var(--t4)}
.bl{color:var(--ink2);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.btr{display:block;background:transparent;height:17px;position:relative}
.bf{display:block;height:100%;background:var(--ctx)}
.bf.hl{background:var(--r5)}
.bv{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.lc{width:100%;height:auto;display:block;overflow:visible}
.lc text{font-family:var(--sans)}
.mapbox svg{width:100%;height:auto;display:block}
.mapbox path{stroke:var(--panel);stroke-width:.7;cursor:pointer;transition:opacity .13s}
.mapbox path:hover{opacity:.72}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:var(--t2);color:var(--ink3);margin-top:var(--s4);align-items:center}
.legend i{width:16px;height:9px;display:inline-block;margin-right:5px;vertical-align:-1px}
.tt{position:fixed;pointer-events:none;background:var(--preto);color:var(--creme);font-size:12.5px;
  padding:7px 10px;z-index:200;opacity:0;transition:opacity .11s;max-width:290px;line-height:1.5}
.tt.on{opacity:1}
html[data-theme="dark"] .tt{background:var(--creme);color:var(--preto)}

/* ferramenta de tarifa */
.tool{background:var(--preto);color:var(--creme);padding:var(--s6);border:1px solid var(--preto)}
html[data-theme="dark"] .tool{background:var(--panel);color:var(--ink);border-color:var(--line2)}
.tool h3{color:var(--dourado);font-size:var(--t8);margin-bottom:var(--s3)}
html[data-theme="dark"] .tool h3{color:var(--accent)}
.tool .sub{font-size:var(--t4);opacity:.72;margin-bottom:var(--s5);max-width:62ch}
.tool .row{display:flex;gap:var(--s4);flex-wrap:wrap;margin-bottom:var(--s5)}
.tool select{background:transparent;border:1px solid color-mix(in srgb,#F6F3E9 34%,transparent);color:inherit;padding:11px 13px;min-width:230px;flex:1}
html[data-theme="dark"] .tool select{border-color:var(--line2)}
.tool option{background:#1A1A1A;color:#F6F3E9}
html[data-theme="dark"] .tool option{background:#1B1918}
.tres{border-top:1px solid color-mix(in srgb,#F6F3E9 22%,transparent);padding-top:var(--s5);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5)}
@media(max-width:760px){.tres{grid-template-columns:1fr}}
.tres .k{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;opacity:.6;display:block;margin-bottom:7px}
.tres .v{font-family:var(--serif);font-weight:200;font-size:var(--t9);line-height:1}
.tres .d{font-size:var(--t3);opacity:.75;margin-top:8px}

/* grafo */
.graf{background:var(--panel);border:1px solid var(--line);padding:var(--s5)}
.graf svg{width:100%;height:auto}
.graf circle{cursor:pointer}
.gsel{display:flex;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s5)}
.gsel button{background:none;border:1px solid var(--line2);color:var(--ink3);padding:6px 11px;font-size:var(--t3);cursor:pointer}
.gsel button.on{border-color:var(--accent);color:var(--accent)}

/* cta correção */
.claim{background:var(--panel2);border:1px solid var(--line2);padding:var(--s5);display:flex;gap:var(--s5);
  align-items:center;justify-content:space-between;flex-wrap:wrap}
.claim p{font-size:var(--t4);color:var(--ink2);max-width:60ch}
.btn{background:var(--accent);color:#F6F3E9;border:1px solid var(--accent);padding:11px 20px;font-size:var(--t3);
  letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.btn:hover{background:var(--preto);border-color:var(--preto)}
html[data-theme="dark"] .btn{color:#1A1A1A}
.btn.gh{background:none;color:var(--accent)}
.btn.gh:hover{background:var(--accent);color:#F6F3E9}

/* footer */
.ft{background:var(--preto);color:#C0B9AC;padding:var(--s8) 0 var(--s6);margin-top:var(--s9);font-size:var(--t3)}
.ft a{color:var(--dourado)}
.ftg{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:var(--s6);padding-bottom:var(--s7);
  border-bottom:1px solid rgba(246,243,233,.14)}
@media(max-width:900px){.ftg{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ftg{grid-template-columns:1fr}}
.ft h4{color:var(--creme);font-size:var(--t2);letter-spacing:.18em;text-transform:uppercase;font-family:var(--sans);margin-bottom:var(--s4)}
.ft ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.ft ul a{border:0;color:#C0B9AC}.ft ul a:hover{color:var(--creme)}
.ft .logo{height:18px;fill:var(--dourado);margin-bottom:var(--s4)}
.ftb span:first-child{text-transform:lowercase;letter-spacing:.06em}
.ftb .bw{text-transform:none;letter-spacing:.01em;font-size:var(--t3);color:#B9B2A6}
.ftb .bw b{color:var(--creme);font-weight:500}
.ftb{color:#8A8377;padding-top:var(--s5);display:flex;justify-content:space-between;gap:var(--s5);flex-wrap:wrap;
  font-size:var(--t1);letter-spacing:.1em;text-transform:uppercase}
.pane{display:none}.pane.on{display:block;animation:fi .3s var(--ease)}
@keyframes fi{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.hatch{background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6'%3E%3Cpath d='M-1 1 L1 -1 M0 6 L6 0 M5 7 L7 5' stroke='%231A1A1A' stroke-opacity='.3' stroke-width='1'/%3E%3C/svg%3E");background-size:6px 6px}

/* linha do tempo */
.tline{border-left:1px solid var(--line2);margin:var(--s5) 0 var(--s6);padding-left:var(--s5)}
.tl{display:grid;grid-template-columns:74px 1fr;gap:var(--s4);padding:var(--s3) 0;border-bottom:1px solid var(--line)}
.tl:last-child{border-bottom:0}
.tl .ty{font-family:var(--serif);font-weight:200;font-size:var(--t7);color:var(--accent);line-height:1.1}
.tl .tc b{display:block;font-weight:400;color:var(--ink);font-size:var(--t5)}
.tl .tc span{display:block;font-size:var(--t3);color:var(--ink2);margin-top:3px}

/* verbetes */
.verbs{border:1px solid var(--line);background:var(--panel);margin-bottom:var(--s6)}
details.verb{border-bottom:1px solid var(--line)}
details.verb:last-child{border-bottom:0}
details.verb summary{cursor:pointer;padding:var(--s4);font-family:var(--serif);font-weight:300;font-size:var(--t6);
  list-style:none;display:flex;justify-content:space-between;gap:var(--s4);align-items:baseline}
details.verb summary::-webkit-details-marker{display:none}
details.verb summary::after{content:'+';color:var(--accent);font-family:var(--sans);font-size:var(--t6);flex:0 0 auto}
details.verb[open] summary::after{content:'–'}
details.verb summary:hover{background:var(--panel2)}
details.verb>div{padding:0 var(--s4) var(--s5);font-size:var(--t4);color:var(--ink2);max-width:88ch}

/* lacunas */
ul.lac{list-style:none;border:1px solid var(--line);background:var(--panel)}
ul.lac li{padding:var(--s4);border-bottom:1px solid var(--line);font-size:var(--t4);color:var(--ink2);position:relative;padding-left:var(--s6)}
ul.lac li:last-child{border-bottom:0}
ul.lac li::before{content:'';position:absolute;left:var(--s4);top:calc(var(--s4) + 9px);width:7px;height:1px;background:var(--accent)}

/* formulário */
.frm{border:1px solid var(--line);background:var(--panel);padding:var(--s6);margin-top:var(--s6);display:flex;flex-direction:column;gap:var(--s4);max-width:820px}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
@media(max-width:640px){.fgrid{grid-template-columns:1fr}}
.frm label{display:flex;flex-direction:column;gap:7px;font-size:var(--t1);letter-spacing:.16em;text-transform:uppercase;color:var(--ink3)}
.frm input,.frm select,.frm textarea{background:var(--panel2);border:1px solid var(--line2);padding:11px 13px;
  font-size:var(--t5);color:var(--ink);letter-spacing:0;text-transform:none;font-family:var(--sans);resize:vertical}
.frm input:focus,.frm select:focus,.frm textarea:focus{outline:0;border-color:var(--accent)}
.frm .btn{align-self:flex-start;margin-top:var(--s2)}
.fmsg{font-size:var(--t4);color:var(--oliva);border-left:2px solid var(--oliva);padding-left:var(--s4)}
html[data-theme="dark"] .fmsg{color:#93A47A;border-color:#93A47A}

.mcard{cursor:default}
.bf.hl{background:var(--r5)}

/* ===== MARCA DO OBSERVATÓRIO ===== */
.sig{flex:0 0 auto;stroke:currentColor;fill:none;stroke-width:1.15;stroke-linejoin:round;stroke-linecap:round}
.obm{display:flex;align-items:center;gap:var(--s4);color:var(--ink);border:0}
.obm .sig{width:30px;height:30px}
.obm .wm{display:flex;flex-direction:column;gap:2px;min-width:0}
.obm .wm b{font-family:var(--serif);font-weight:200;font-size:23px;line-height:1;letter-spacing:-.012em;color:var(--ink)}
.obm .wm span{font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink3);white-space:nowrap}
.obm:hover .wm b{color:var(--accent)}
@media(max-width:520px){.obm .wm span{letter-spacing:.2em;font-size:9px}.obm .wm b{font-size:20px}}

/* assinatura amano no cabeçalho */
.byam{display:flex;align-items:center;gap:7px;padding-left:var(--s4);margin-left:var(--s4);border-left:1px solid var(--line);
  font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink4);white-space:nowrap}
.byam svg{height:12px;width:auto;fill:var(--ink3)}
@media(max-width:1400px){.byam{display:none}}

/* abertura com a marca em primeiro plano */
.hero .brandlock{display:flex;align-items:center;gap:var(--s5);margin-bottom:var(--s5)}
.hero .brandlock .sig{width:clamp(58px,7vw,94px);height:clamp(58px,7vw,94px);color:#F6F3E9;opacity:.95}
.hero .brandlock .wm{display:flex;flex-direction:column;gap:6px}
.hero .brandlock .wm b{font-family:var(--serif);font-weight:200;color:#F6F3E9;
  font-size:clamp(42px,7.2vw,86px);line-height:.94;letter-spacing:-.02em}
.hero .brandlock .wm span{font-size:clamp(10px,1.15vw,14px);letter-spacing:.42em;text-transform:uppercase;color:#F6F3E9;opacity:.86}
.hero .tese{color:#F6F3E9;font-family:var(--serif);font-weight:200;font-size:clamp(19px,2.1vw,27px);
  line-height:1.22;max-width:26ch;opacity:.92;margin-top:var(--s5)}
.hero .selo{display:inline-flex;align-items:center;gap:10px;margin-top:var(--s6);
  font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#F6F3E9;opacity:.9}
.hero .selo svg{height:14px;width:auto;fill:#F6F3E9}
@media(max-width:640px){.hero .brandlock{gap:var(--s4)}.hero .brandlock .sig{width:46px;height:46px}}

/* ===== leitura amano ===== */
.lam{background:var(--preto);color:var(--creme);border:1px solid var(--preto);margin:var(--s7) 0 0;
  display:grid;grid-template-columns:1.65fr 1fr}
html[data-theme="dark"] .lam{background:var(--panel);color:var(--ink);border-color:var(--line2)}
@media(max-width:900px){.lam{grid-template-columns:1fr}}
.lam .txt{padding:var(--s6)}
.lam .tit{display:flex;align-items:center;gap:10px;margin-bottom:var(--s4)}
.lam .tit svg{height:13px;width:auto;fill:var(--dourado)}
html[data-theme="dark"] .lam .tit svg{fill:var(--accent)}
.lam .tit .sep{color:var(--dourado);opacity:.7;font-size:12.5px}
.lam .tit span{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--dourado)}
html[data-theme="dark"] .lam .tit span{color:var(--accent)}
.lam h3{font-family:var(--serif);font-weight:200;font-size:var(--t8);line-height:1.14;color:var(--creme);margin-bottom:var(--s4);max-width:24ch}
html[data-theme="dark"] .lam h3{color:var(--ink)}
.lam p{font-size:var(--t5);line-height:1.66;opacity:.82;max-width:62ch}
.lam p + p{margin-top:var(--s3)}
.lam .cta{padding:var(--s6);border-left:1px solid rgba(246,243,233,.16);display:flex;flex-direction:column;justify-content:center;gap:var(--s4)}
html[data-theme="dark"] .lam .cta{border-left-color:var(--line2)}
@media(max-width:900px){.lam .cta{border-left:0;border-top:1px solid rgba(246,243,233,.16)}}
.lam .cta .q{font-size:var(--t5);line-height:1.55;opacity:.86}
.lam .cta .who{font-size:12px;letter-spacing:.06em;opacity:.62;line-height:1.6}
.lam .cta .who b{font-weight:500;opacity:.9}
.btn.wa{background:var(--dourado);border-color:var(--dourado);color:#1A1A1A;display:inline-flex;align-items:center;
  gap:10px;align-self:flex-start;text-transform:none;letter-spacing:.01em;font-size:var(--t5);padding:13px 22px}
.btn.wa b{font-weight:500}
.btn.wa:hover{background:var(--creme);border-color:var(--creme);color:#1A1A1A}
.btn.wa svg{width:15px;height:15px;fill:currentColor}

/* ===== FICHAS (materiais, produtores, estados) ===== */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.mcard{background:var(--panel);padding:var(--s6) var(--s5);cursor:pointer;border:0;text-align:left;display:flex;
  flex-direction:column;gap:var(--s3);transition:background .16s;min-width:0}
.mcard:hover{background:var(--panel2)}
.mcard .top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s4)}
.mcard h3{font-size:var(--t7);line-height:1.16;font-weight:300;margin:0}
.mcard .sub{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0}
.mcard .ev{font-size:var(--t4);color:var(--ink2);line-height:1.6;margin:0}
.mcard .ev.q{color:var(--ink3)}
.mcard .bot{margin-top:auto;padding-top:var(--s4);border-top:1px solid var(--line);display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.mcard .arw{margin-left:auto;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);opacity:0;transition:opacity .16s}
.mcard:hover .arw{opacity:1}
.uf{flex:0 0 auto;font-family:var(--serif);font-weight:200;font-size:var(--t7);color:var(--ink4);line-height:1}

/* ficha aberta */
.ficha{display:grid;grid-template-columns:1fr 340px;gap:var(--s7);align-items:start}
/* filhos de grid nascem com min-width:auto e não encolhem abaixo do próprio
   min-content: era o que estourava a largura da página no celular */
.ficha>*,.lam>*{min-width:0}
@media(max-width:1000px){.ficha{grid-template-columns:1fr}}
.ficha .side{border:1px solid var(--line);background:var(--panel);position:sticky;top:98px}
.ficha .side .hd2{padding:var(--s4) var(--s5);border-bottom:1px solid var(--line);font-size:10.5px;
  letter-spacing:.18em;text-transform:uppercase;color:var(--ink3)}
.ficha .side ul{list-style:none}
.ficha .side li a{display:block;padding:11px var(--s5);border-bottom:1px solid var(--line);font-size:var(--t4);color:var(--ink2)}
.ficha .side li:last-child a{border-bottom:0}
.ficha .side li a:hover{background:var(--panel2);color:var(--accent)}
.voltar{display:inline-flex;align-items:center;gap:8px;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink4);border:0;background:none;cursor:pointer;margin-bottom:var(--s5)}
.voltar:hover{color:var(--accent)}

/* ===== ARTIGOS ===== */
.artgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.artc{background:var(--panel);padding:var(--s6) var(--s5);display:flex;flex-direction:column;gap:var(--s3);
  cursor:pointer;border:0;text-align:left;transition:background .16s;min-width:0}
.artc:hover{background:var(--panel2)}
.artc .num{font-family:var(--serif);font-weight:200;font-size:var(--t7);color:var(--ink4);line-height:1}
.artc .eix{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.artc h3{font-size:var(--t7);line-height:1.18;font-weight:300}
.artc p{font-size:var(--t4);color:var(--ink2);flex:1;line-height:1.6}
.artc .meta{margin-top:auto;padding-top:var(--s4);border-top:1px solid var(--line);display:flex;gap:12px;
  align-items:center;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink4);flex-wrap:wrap}

.artigo{max-width:none}
.artwrap{display:grid;grid-template-columns:minmax(0,1fr) 268px;gap:var(--s8);align-items:start}
@media(max-width:1080px){.artwrap{grid-template-columns:1fr}}
.artbody{font-size:17.5px;line-height:1.78;color:var(--ink2);max-width:none}
.artbody p{margin:0 0 var(--s5)}
.artbody h2{font-family:var(--serif);font-weight:200;font-size:clamp(26px,2.9vw,36px);line-height:1.12;
  color:var(--ink);text-transform:lowercase;letter-spacing:-.012em;margin:var(--s8) 0 var(--s4);max-width:24ch}
.artbody h3{font-family:var(--serif);font-weight:300;font-size:var(--t7);color:var(--ink);margin:0 0 10px;text-transform:none}
.artbody p.citavel{font-family:var(--serif);font-weight:300;font-size:clamp(19px,2vw,23px);line-height:1.48;
  color:var(--ink);border-left:2px solid var(--accent);padding:var(--s2) 0 var(--s2) var(--s5);margin:0 0 var(--s6);max-width:52ch}
.artbody p.fonte-nota{font-size:var(--t3);line-height:1.7;color:var(--ink3);background:var(--panel2);
  border:1px solid var(--line);padding:var(--s4) var(--s5);margin:var(--s6) 0}
.artbody .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);margin:var(--s6) 0}
@media(max-width:700px){.artbody .stats{grid-template-columns:1fr}}
.artbody .stats .stat{background:var(--panel);padding:var(--s5);display:flex;flex-direction:column;gap:9px}
.artbody .stats .stat strong{font-family:var(--serif);font-weight:200;font-size:clamp(26px,3vw,34px);
  line-height:1;color:var(--ink);overflow-wrap:anywhere}
.artbody .stats .stat span{font-size:var(--t2);color:var(--ink3);line-height:1.5}
.artbody table{margin:var(--s6) 0;border:1px solid var(--line);background:var(--panel)}
.artbody th{position:static}
.artbody ol,.artbody ul{margin:0 0 var(--s6) 0;padding-left:0;list-style:none;counter-reset:li}
.artbody ol li{counter-increment:li;position:relative;padding:var(--s4) 0 var(--s4) var(--s7);border-bottom:1px solid var(--line)}
.artbody ol li::before{content:counter(li,decimal-leading-zero);position:absolute;left:0;top:var(--s4);
  font-family:var(--serif);font-weight:200;font-size:var(--t6);color:var(--accent)}
.artbody ul li{position:relative;padding:var(--s3) 0 var(--s3) var(--s6);border-bottom:1px solid var(--line)}
.artbody ul li::before{content:'';position:absolute;left:0;top:calc(var(--s3) + 13px);width:12px;height:1px;background:var(--accent)}
.artbody li:last-child{border-bottom:0}
.artbody .qa{border:1px solid var(--line);background:var(--panel);padding:var(--s5);margin:0 0 1px}
.artbody .qa p{margin:0;font-size:var(--t4);line-height:1.68}
.artbody strong{color:var(--ink);font-weight:500}
.artsum{border:1px solid var(--line);background:var(--panel);position:sticky;top:98px;max-height:calc(100vh - 130px);overflow:auto}
.artsum .hd2{padding:var(--s4) var(--s5);border-bottom:1px solid var(--line);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink3)}
.artsum ul{list-style:none}
.artsum li a{display:block;padding:10px var(--s5);border-bottom:1px solid var(--line);font-size:var(--t3);color:var(--ink2);line-height:1.45}
.artsum li:last-child a{border-bottom:0}
.artsum li a:hover{background:var(--panel2);color:var(--accent)}
.artmeta{display:flex;gap:var(--s5);flex-wrap:wrap;align-items:center;padding:var(--s4) 0;border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);margin-bottom:var(--s7);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink4)}
.artfontes{border:1px solid var(--line);background:var(--panel2);margin-top:var(--s7)}
.artfontes .hd2{padding:var(--s4) var(--s5);border-bottom:1px solid var(--line);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink3)}
.artfontes li{list-style:none;padding:12px var(--s5);border-bottom:1px solid var(--line);font-size:var(--t3);color:var(--ink2);line-height:1.6}
.artfontes li:last-child{border-bottom:0}
.artfontes li a{word-break:break-word}

@media(max-width:620px){
  .hdin{gap:var(--s3);height:66px}
  .obm{gap:11px}
  .obm .sig{width:24px;height:24px}
  .obm .wm b{font-size:18px}
  .obm .wm span{font-size:8.5px;letter-spacing:.18em}
  .tgl{display:none}
  .hdtools{margin-left:var(--s3);gap:var(--s2)}
  .langb{padding:6px 8px}
  .burger{width:32px;height:32px}
  .mnav{inset:66px 0 auto 0}
}

/* ===== alvos de toque no celular ===== */
@media(max-width:860px){
  .ft ul{gap:0}
  .ft ul a{display:block;padding:12px 0;min-height:44px;line-height:1.5}
  .ft ul li{border-bottom:1px solid rgba(246,243,233,.09)}
  .ft ul li:last-child{border-bottom:0}
  td a,.crumb a{display:inline-block;padding:9px 0;min-height:44px}
  .filters input,.filters select{min-height:46px}
  .langb,.tgl{min-height:44px;min-width:46px;justify-content:center}
  .burger{width:44px;height:44px}
  .langm button{min-height:46px;align-items:center}
  .mnav a{min-height:48px;display:flex;align-items:center}
  details.verb summary{min-height:52px;align-items:center}
  .gsel button,.btn,.btn.gh{min-height:46px}
  .voltar{min-height:44px;align-items:center}
  .side li a{min-height:46px;display:flex;align-items:center}
  .artsum li a{min-height:46px;display:flex;align-items:center}
  .artfontes li a{display:inline-block;padding:8px 0}
}

/* ===== filtro fixo ao rolar ===== */
.filters{position:sticky;top:74px;z-index:40;background:color-mix(in srgb,var(--bg) 97%,transparent);
  backdrop-filter:saturate(1.2) blur(9px);padding:var(--s4) 0;margin-bottom:var(--s5);
  border-bottom:1px solid var(--line)}
@media(max-width:620px){.filters{top:66px}}

/* ===== ver mais ===== */
.vermais{display:flex;align-items:center;gap:var(--s4);justify-content:center;padding:var(--s6) 0}
.vermais button{background:none;border:1px solid var(--line2);color:var(--ink2);padding:13px 26px;
  font-size:var(--t3);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;min-height:46px}
.vermais button:hover{border-color:var(--accent);color:var(--accent)}
.vermais .rest{font-size:var(--t2);letter-spacing:.12em;text-transform:uppercase;color:var(--ink4)}

/* ===== leitura amano no alto ===== */
.lam.alto{margin:0 0 var(--s7)}

/* ===== leia também ===== */
.leia{border:1px solid var(--line);background:var(--panel2);margin:var(--s7) 0}
.leia .hd2{padding:var(--s4) var(--s5);border-bottom:1px solid var(--line);display:flex;
  justify-content:space-between;gap:var(--s4);flex-wrap:wrap;align-items:baseline}
.leia .hd2 span{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink3)}
.leia .hd2 a{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;border:0}
.leia ul{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
@media(max-width:900px){.leia ul{grid-template-columns:1fr}}
.leia li{background:var(--panel)}
.leia li a{display:flex;flex-direction:column;gap:7px;padding:var(--s5);border:0;min-height:100%}
.leia li a:hover{background:var(--panel2)}
.leia li .eix{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.leia li .t{font-family:var(--serif);font-weight:300;font-size:var(--t6);line-height:1.2;color:var(--ink)}
.leia li .m{font-size:var(--t2);letter-spacing:.1em;text-transform:uppercase;color:var(--ink4);margin-top:auto;padding-top:10px}

/* ===== menu: grupo mais ===== */
.mais{position:relative}
.maisb{background:none;border:0;font-size:14px;color:var(--ink2);padding:7px 11px;cursor:pointer;
  display:flex;align-items:center;gap:6px;border-bottom:2px solid transparent;white-space:nowrap}
.maisb:hover{color:var(--ink)}
.mais.open .maisb{color:var(--accent);border-bottom-color:var(--accent)}
.maism{display:none;position:absolute;right:0;top:calc(100% + 8px);background:var(--panel);
  border:1px solid var(--line);min-width:250px;z-index:90}
.mais.open .maism{display:block}
.maism a{display:block;padding:12px 16px;font-size:14px;color:var(--ink2);border:0;border-bottom:1px solid var(--line)}
.maism a:last-child{border-bottom:0}
.maism a:hover{background:var(--panel2);color:var(--accent)}
@media(max-width:1240px){
  .mais{position:static}
  .maisb{display:none}
  .maism{display:block;position:static;border:0;min-width:0;background:transparent}
  .maism a{padding:11px clamp(20px,4vw,44px);font-size:14px;min-height:48px;display:flex;align-items:center}
}

/* ===== anatomia de gráfico ===== */
.figch{border:1px solid var(--line);background:var(--panel);margin:var(--s6) 0}
.figch .bd{padding:var(--s6) var(--s5)}
.figch .cheye{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3);margin-bottom:10px}
.figch .chtit{font-family:var(--serif);font-weight:300;font-size:clamp(19px,2.2vw,25px);line-height:1.22;
  color:var(--ink);max-width:36ch;margin-bottom:9px;text-transform:none}
.figch .chsub{font-size:var(--t4);color:var(--ink2);max-width:66ch;margin-bottom:var(--s5);line-height:1.6}
.figch .chsrc{font-size:var(--t2);color:var(--ink3);margin-top:var(--s5);line-height:1.65;
  padding-top:var(--s4);border-top:1px solid var(--line)}
.figch .chsrc a{font-size:inherit}
.chtabbtn{background:none;border:1px solid var(--line2);color:var(--ink3);font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;padding:6px 12px;cursor:pointer;margin-top:var(--s4);min-height:38px}
.chtabbtn:hover{border-color:var(--accent);color:var(--accent)}
.chtab{display:none;margin-top:var(--s4)}
.chtab.on{display:block}
.leg{display:flex;gap:16px;flex-wrap:wrap;align-items:center;font-size:var(--t2);color:var(--ink3);margin-top:var(--s4)}
.leg i{width:16px;height:10px;display:inline-block;margin-right:6px;vertical-align:-1px}

@media(max-width:860px){
  .obm{min-height:44px}
  .leia .hd2 a{display:inline-flex;align-items:center;min-height:44px}
  .srcline a{display:inline-block;padding:8px 0;min-height:44px}
  .ft p a{display:inline-flex;align-items:center;min-height:44px}
  .note a{display:inline-flex;align-items:center;min-height:44px}
}

/* ================= MENU LATERAL ================= */
.mnav{display:none !important}
.mais{display:none !important}
.hdin{gap:var(--s4)}
.abrir{margin-left:auto;display:flex;align-items:center;gap:12px;background:none;border:0;cursor:pointer;
  padding:10px 4px;min-height:44px;color:var(--ink2);font-size:14px;letter-spacing:.14em;text-transform:uppercase}
.abrir .bars{display:flex;flex-direction:column;gap:4.5px;width:19px}
.abrir .bars i{display:block;height:1.4px;background:var(--ink);transition:transform .22s var(--ease),opacity .16s}
.abrir:hover{color:var(--accent)}
.abrir:hover .bars i{background:var(--accent)}
body.menu .abrir .bars i:nth-child(1){transform:translateY(6px) rotate(45deg)}
body.menu .abrir .bars i:nth-child(2){opacity:0}
body.menu .abrir .bars i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media(max-width:620px){.abrir span{display:none}}

.drawer{position:fixed;inset:0;z-index:120;visibility:hidden;pointer-events:none}
body.menu .drawer{visibility:visible;pointer-events:auto}
.drawer .veu{position:absolute;inset:0;background:rgba(26,26,26,.4);opacity:0;transition:opacity .26s var(--ease)}
body.menu .drawer .veu{opacity:1}
.drawer .painel{position:absolute;top:0;right:0;bottom:0;width:min(560px,100%);background:var(--panel);
  border-left:1px solid var(--line);transform:translateX(100%);transition:transform .3s var(--ease);
  display:flex;flex-direction:column;overflow-y:auto}
body.menu .drawer .painel{transform:none}
.drawer .topo{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);
  padding:var(--s5) var(--s6);border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--panel);z-index:2}
.drawer .topo .t{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink3)}
.drawer .fechar{background:none;border:1px solid var(--line2);color:var(--ink3);cursor:pointer;
  min-height:44px;min-width:44px;padding:0 16px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase}
.drawer .fechar:hover{border-color:var(--accent);color:var(--accent)}
.drawer .corpo{padding:var(--s5) 0 var(--s7)}
.dgrupo{border-bottom:1px solid var(--line);padding:var(--s5) var(--s6)}
.dgrupo:last-child{border-bottom:0}
.dgrupo .gt{display:flex;align-items:baseline;gap:12px;margin-bottom:var(--s4)}
.dgrupo .gt .n{font-size:10.5px;letter-spacing:.18em;color:var(--ink4);font-variant-numeric:tabular-nums}
.dgrupo .gt .l{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink3)}
.dgrupo ul{list-style:none;display:grid;gap:2px}
.dgrupo a{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s4);border:0;
  padding:11px 0;min-height:48px;color:var(--ink)}
.dgrupo a .nome{font-family:var(--serif);font-weight:300;font-size:21px;line-height:1.2;letter-spacing:-.01em}
.dgrupo a .qt{font-size:11.5px;color:var(--ink4);white-space:nowrap;font-variant-numeric:tabular-nums}
.dgrupo a:hover .nome,.dgrupo a.on .nome{color:var(--accent)}
.dgrupo a.on .nome{position:relative}
.dgrupo a.on .nome::before{content:'';position:absolute;left:-16px;top:.62em;width:9px;height:1px;background:var(--accent)}
.drawer .pe{margin-top:auto;padding:var(--s6);border-top:1px solid var(--line);background:var(--panel2)}
.drawer .pe .lb{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3);display:block;margin-bottom:var(--s4)}
.drawer .pe .btn.wa{width:100%;justify-content:center}
@media(max-width:520px){.dgrupo{padding:var(--s4) var(--s5)}.dgrupo a .nome{font-size:19px}}

/* ================= MÓDULOS AMANO ================= */
.mod{border:1px solid var(--line2);background:var(--panel);margin:var(--s7) 0;display:grid;grid-template-columns:1fr}
.mod .cab{display:flex;align-items:center;gap:11px;padding:var(--s4) var(--s5);border-bottom:1px solid var(--line)}
.mod .cab svg.am{height:12px;width:auto;fill:var(--ink3)}
.mod .cab .sep{color:var(--ink2);font-size:12.5px}
.mod .cab .k{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink2);font-weight:500}
.mod .bd{padding:var(--s6) var(--s5)}
.mod h3{font-family:var(--serif);font-weight:300;font-size:var(--t8);line-height:1.16;color:var(--ink);
  margin-bottom:var(--s4);max-width:30ch;text-transform:none}
.mod p{font-size:var(--t5);line-height:1.68;color:var(--ink2);max-width:70ch}
.mod p + p{margin-top:var(--s3)}
.mod .pe{padding:var(--s4) var(--s5);border-top:1px solid var(--line);display:flex;gap:var(--s4);
  align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--panel2)}
.mod .pe .q{font-size:var(--t4);color:var(--ink2);max-width:56ch}
.mod .lista{list-style:none;margin-top:var(--s5)}
.mod .lista li{padding:12px 0 12px var(--s6);border-top:1px solid var(--line);position:relative;font-size:var(--t4);color:var(--ink2)}
.mod .lista li::before{content:'';position:absolute;left:0;top:23px;width:13px;height:1px;background:var(--accent)}
/* oportunidade */
.mod.op{border-color:color-mix(in srgb,var(--oliva) 60%,var(--line2))}
.mod.op .cab{border-bottom-color:color-mix(in srgb,var(--oliva) 30%,transparent);
  background:color-mix(in srgb,var(--oliva) 7%,transparent)}
.mod.op .cab .k{color:var(--oliva)}
html[data-theme="dark"] .mod.op .cab .k{color:#93A47A}
html[data-theme="dark"] .mod.op{border-color:#5C6A46}
.mod.op .lista li::before{background:var(--oliva)}
/* atenção */
.mod.at{border-color:color-mix(in srgb,var(--accent) 55%,var(--line2))}
.mod.at .cab{border-bottom-color:color-mix(in srgb,var(--accent) 30%,transparent);
  background:color-mix(in srgb,var(--accent) 7%,transparent)}
.mod.at .cab .k{color:var(--accent)}
html[data-theme="dark"] .mod.at .cab .k{color:var(--accent2)}
.mod.at .lista li::before{background:var(--accent2)}

/* ================= CAPA ================= */
.hero{min-height:min(86vh,760px);display:flex;align-items:stretch}
.hero img{height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 58%}
.heroin{position:relative}
.faixa{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
@media(max-width:900px){.faixa{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.faixa{grid-template-columns:1fr}}
.faixa figure{margin:0;background:var(--panel);position:relative;overflow:hidden;aspect-ratio:4/3}
.faixa img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--ease)}
.faixa figure:hover img{transform:scale(1.03)}
.faixa figcaption{position:absolute;left:0;right:0;bottom:0;padding:var(--s5) var(--s4) var(--s4);
  background:rgba(26,26,26,.62);color:#F6F3E9;font-size:12.5px;line-height:1.5}
.faixa figcaption b{display:block;font-family:var(--serif);font-weight:300;font-size:17px;margin-bottom:4px}

.mods{display:grid;grid-template-columns:1.35fr 1fr;gap:var(--s7)}
@media(max-width:1000px){.mods{grid-template-columns:1fr}}
.modhd{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s4);
  padding-bottom:var(--s4);border-bottom:1px solid var(--line2);margin-bottom:var(--s5);flex-wrap:wrap}
.modhd h2{font-size:clamp(24px,2.8vw,32px);margin:0}
.modhd a{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;border:0}
.ultart{list-style:none;display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}
.ultart li{background:var(--panel)}
.ultart a{display:grid;grid-template-columns:54px 1fr;gap:var(--s4);padding:var(--s5);border:0;align-items:start}
.ultart a:hover{background:var(--panel2)}
.ultart .num{font-family:var(--serif);font-weight:200;font-size:26px;color:var(--ink4);line-height:1}
.ultart .eix{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);display:block;margin-bottom:5px}
.ultart .t{font-family:var(--serif);font-weight:300;font-size:20px;line-height:1.22;color:var(--ink);display:block}
.ultart .m{font-size:11.5px;color:var(--ink4);display:block;margin-top:7px;letter-spacing:.06em}
.ultest{list-style:none;display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}
.ultest li{background:var(--panel)}
.ultest .it{display:grid;grid-template-columns:78px 1fr;gap:var(--s4);padding:var(--s4) var(--s5);align-items:center}
.ultest .cv{aspect-ratio:3/4;background:var(--panel2);border:1px solid var(--line);overflow:hidden}
.ultest .cv img{width:100%;height:100%;object-fit:cover;display:block}
.ultest .t{font-family:var(--serif);font-weight:300;font-size:17px;line-height:1.24;color:var(--ink)}
.ultest .s{font-size:11.5px;color:var(--ink4);margin-top:6px;letter-spacing:.08em;text-transform:uppercase}

/* ================= EVENTOS ================= */
.evfiltro{display:flex;gap:var(--s3);flex-wrap:wrap;align-items:center;margin-bottom:var(--s5)}
.evfiltro button{background:none;border:1px solid var(--line2);color:var(--ink3);padding:9px 15px;
  font-size:var(--t3);cursor:pointer;min-height:44px;letter-spacing:.04em}
.evfiltro button.on{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,transparent)}
.evfiltro .ct{margin-left:auto;font-size:var(--t2);letter-spacing:.12em;text-transform:uppercase;color:var(--ink4)}

/* calendário em régua */
.cal{border:1px solid var(--line);background:var(--panel);margin:var(--s6) 0;overflow:hidden}
.calano{border-bottom:1px solid var(--line)}
.calano:last-child{border-bottom:0}
.calhd{display:flex;align-items:baseline;gap:var(--s4);padding:var(--s4) var(--s5);background:var(--panel2);border-bottom:1px solid var(--line)}
.calhd .a{font-family:var(--serif);font-weight:200;font-size:26px;color:var(--ink);line-height:1}
.calhd .q{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3)}
.calgrid{display:grid;grid-template-columns:repeat(12,1fr);position:relative;min-height:38px;border-bottom:1px solid var(--line)}
.calgrid.meses{background:var(--panel2)}
.calgrid.meses span{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);
  padding:11px 0 11px 9px;border-right:1px solid var(--line)}
.calgrid.meses span:last-child{border-right:0}
.callin{display:grid;grid-template-columns:repeat(12,1fr);position:relative;border-bottom:1px solid var(--line);min-height:52px;align-items:center}
.callin:last-child{border-bottom:0}
.callin .col{border-right:1px solid var(--line);height:100%}
.callin .col:last-child{border-right:0}
.callin{overflow:visible}
.callin .ev{position:absolute;top:13px;bottom:13px;background:var(--ctx);border:0;padding:0;cursor:pointer;
  min-width:5px;border-radius:2px}
.callin .ev.pA{background:var(--r5)}
.callin .ev.pB{background:var(--r3)}
.callin .ev.pC{background:var(--ctx)}
.callin .ev.feito{opacity:.4}
.callin .ev.fim b{left:auto;right:100%;margin-left:0;margin-right:9px}
.callin .ev b{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:9px;
  font-weight:400;font-size:13px;color:var(--ink2);white-space:nowrap;letter-spacing:.005em}
.callin .ev:hover{outline:2px solid var(--accent);outline-offset:2px;z-index:4}
.callin .ev:hover b{color:var(--accent)}
.callin .ev.feito b{color:var(--ink4)}
@media(max-width:900px){.cal{display:none}}
.calnota{font-size:var(--t2);color:var(--ink4);margin-top:var(--s3);line-height:1.6}

/* cartão de evento */
.evs{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.evc{background:var(--panel);border:0;text-align:left;cursor:pointer;display:flex;flex-direction:column;
  padding:0;transition:background .16s;min-width:0}
.evc:hover{background:var(--panel2)}
.evc .top{display:grid;grid-template-columns:82px 1fr;gap:var(--s4);padding:var(--s5);border-bottom:1px solid var(--line);align-items:start}
.evc .data{border-right:1px solid var(--line);padding-right:var(--s4);text-align:center}
.evc .data .d{font-family:var(--serif);font-weight:200;font-size:34px;line-height:.94;color:var(--ink);font-variant-numeric:tabular-nums}
.evc .data .m{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-top:5px}
.evc .data .y{font-size:11.5px;color:var(--ink4);margin-top:3px;font-variant-numeric:tabular-nums}
.evc h3{font-family:var(--serif);font-weight:300;font-size:21px;line-height:1.2;color:var(--ink);margin-bottom:6px}
.evc .loc{font-size:12.5px;color:var(--ink3);line-height:1.5}
.evc .bd{padding:var(--s5);flex:1;display:flex;flex-direction:column;gap:var(--s3)}
.evc .bd p{font-size:var(--t4);color:var(--ink2);line-height:1.6;margin:0}
.evc .pe{margin-top:auto;padding:var(--s4) var(--s5);border-top:1px solid var(--line);display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.evc .arw{margin-left:auto;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);opacity:0;transition:opacity .16s}
.evc:hover .arw{opacity:1}
.chip.pA{border-color:var(--accent);color:var(--accent)}
.chip.feito{opacity:.6;border-style:dashed}
.chip.breve{border-color:var(--oliva);color:var(--oliva)}
html[data-theme="dark"] .chip.breve{border-color:#93A47A;color:#93A47A}

/* ficha de evento */
.evhero{display:grid;grid-template-columns:1fr 320px;gap:var(--s7);align-items:start;margin-bottom:var(--s7)}
@media(max-width:1000px){.evhero{grid-template-columns:1fr}}
.evbox{border:1px solid var(--line);background:var(--panel)}
.evbox .l{padding:var(--s4) var(--s5);border-bottom:1px solid var(--line);font-size:10.5px;
  letter-spacing:.18em;text-transform:uppercase;color:var(--ink3)}
.evbox dl{display:grid;grid-template-columns:1fr;gap:0}
.evbox dt{padding:12px var(--s5) 2px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink4)}
.evbox dd{padding:0 var(--s5) 12px;font-size:var(--t4);color:var(--ink2);border-bottom:1px solid var(--line)}
.evbox dd:last-child{border-bottom:0}
.notas{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:var(--s5) 0}
@media(max-width:700px){.notas{grid-template-columns:1fr 1fr}}
.notas>div{background:var(--panel);padding:var(--s5)}
.notas .k{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink3);display:block;margin-bottom:10px}
.notas .v{display:flex;gap:4px;align-items:center}
.notas .v i{width:16px;height:5px;background:var(--line2);display:block}
.notas .v i.on{background:var(--r4)}
.notas .n{font-size:11.5px;color:var(--ink4);margin-top:9px;font-variant-numeric:tabular-nums}

/* ================= RODAPÉ ENXUTO ================= */
.ft{padding:var(--s7) 0 var(--s5);margin-top:var(--s8)}
.ftg{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:var(--s6) var(--s5);
  padding-bottom:var(--s5);border-bottom:1px solid rgba(246,243,233,.13)}
@media(max-width:980px){.ftg{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.ftg{grid-template-columns:1fr}}
.ft h4{font-size:10.5px;letter-spacing:.2em;margin-bottom:var(--s3)}
.ft ul{gap:0}
.ft ul a{font-size:13px;padding:5px 0;display:inline-block}
@media(max-width:860px){.ft ul a{padding:11px 0}}
.ft .col p{font-size:13px;line-height:1.65;max-width:36ch}
.ftb{padding-top:var(--s4);font-size:10.5px}

@media(max-width:860px){
  .modhd a{display:inline-flex;align-items:center;min-height:44px}
  .mod .pe a{min-height:46px}
}

/* acervo colapsado */
details.acervo{border:1px solid var(--line2);background:var(--panel2);margin:var(--s6) 0}
details.acervo>summary{cursor:pointer;list-style:none;padding:var(--s5);display:flex;justify-content:space-between;
  gap:var(--s4);align-items:center;flex-wrap:wrap;min-height:52px}
details.acervo>summary::-webkit-details-marker{display:none}
details.acervo>summary b{font-family:var(--serif);font-weight:300;font-size:var(--t7);color:var(--ink)}
details.acervo>summary .q{font-size:var(--t3);color:var(--ink3)}
details.acervo>summary::after{content:'abrir';font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--accent);border:1px solid var(--line2);padding:9px 14px;min-height:40px;display:flex;align-items:center}
details.acervo[open]>summary::after{content:'fechar'}
details.acervo>summary:hover::after{border-color:var(--accent)}
details.acervo .in{padding:0 var(--s5) var(--s5)}
details.acervo .verbs{margin-bottom:0}

/* busca no glossário */
.gbusca{position:sticky;top:74px;z-index:40;background:color-mix(in srgb,var(--bg) 97%,transparent);
  backdrop-filter:saturate(1.2) blur(9px);padding:var(--s4) 0;margin-bottom:var(--s5);border-bottom:1px solid var(--line);
  display:flex;gap:var(--s3);align-items:center;flex-wrap:wrap}
.gbusca input{background:var(--panel);border:1px solid var(--line2);padding:11px 14px;font-size:var(--t4);
  color:var(--ink);flex:1;min-width:280px;min-height:46px}
.gbusca input:focus{outline:0;border-color:var(--accent)}
.gbusca .ct{font-size:var(--t2);letter-spacing:.12em;text-transform:uppercase;color:var(--ink4);margin-left:auto}
@media(max-width:620px){.gbusca{top:66px}}
details.verb.oculto{display:none}
.verbs.vazio{display:none}

/* pequenos múltiplos */
.pm{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:var(--s5) 0}
@media(max-width:1000px){.pm{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pm{grid-template-columns:1fr}}
.pm>div{background:var(--panel);padding:var(--s4) var(--s4) var(--s3)}
.pm .uf{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:9px}
.pm .uf b{font-family:var(--serif);font-weight:300;font-size:var(--t6);color:var(--ink)}
.pm .uf span{font-size:11.5px;color:var(--ink4);font-variant-numeric:tabular-nums}
.pm svg{width:100%;height:auto;display:block;overflow:visible}
.pm.um{grid-template-columns:1fr;margin-bottom:var(--s4)}
.pm.um>div{padding:var(--s5)}
.pm .dst{border-left:2px solid var(--r5)}

/* ================= MAPAS E BANCO ================= */
:root{--oceano:#F1EDE4;--terra:#D5CFC3}
html[data-theme="dark"]{--oceano:#171512;--terra:#312C27}
.mapbox.mundo svg{width:100%;height:auto;display:block}
.mapbox.mundo path{stroke:var(--panel);stroke-width:.4}
.mapbox svg path[data-tt]{cursor:default}
.mapbox svg path[data-tt]:hover{stroke:var(--ink);stroke-width:1.1}
.mapbox.fluxos path.arco{fill:none;stroke:var(--bronze);opacity:.85;stroke-linecap:round}
.mapbox.fluxos path.terra{stroke:var(--oceano);stroke-width:.5}
html[data-theme="dark"] .mapbox.fluxos path.arco{stroke:var(--dourado)}
.mapbox.fluxos path.arco:hover{opacity:1;stroke:var(--ink)}
.mapbox.fluxos circle.no{fill:var(--bronze);opacity:.9;stroke:var(--panel);stroke-width:.8}
html[data-theme="dark"] .mapbox.fluxos circle.no{fill:var(--dourado)}
.mapbox.fluxos circle.orig{fill:var(--ink);stroke:var(--panel);stroke-width:1.4}
.fluxos .rot{fill:var(--ink);font-family:var(--sans);font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.anosel{display:flex;align-items:center;gap:var(--s3);margin:var(--s4) 0 var(--s3);flex-wrap:wrap}
.anosel label{font-size:var(--t2);letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.anosel input[type=range]{flex:1;min-width:220px;accent-color:var(--bronze);height:32px}
.anosel output{font-family:var(--serif);font-size:var(--t6);font-weight:300;min-width:72px;text-align:right;color:var(--ink)}
.conf{display:inline-block;font-size:var(--t2);letter-spacing:.07em;padding:3px 9px;border:1px solid var(--line2);
  color:var(--ink2);background:var(--panel2);white-space:nowrap;font-weight:500}
.conf.cA{border-color:var(--bronze);color:var(--bronze)}
.conf.cAm{border-color:var(--bronze);color:var(--ink2)}
.conf.cBp{border-color:var(--oliva);color:var(--oliva)}
html[data-theme="dark"] .conf.cA,html[data-theme="dark"] .conf.cAm{border-color:var(--dourado);color:var(--dourado)}
html[data-theme="dark"] .conf.cBp{border-color:var(--dourado);color:var(--ink2)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:var(--s4) 0}
.chip.big{font-size:var(--t3);padding:6px 12px;text-transform:none;letter-spacing:.01em}
.cadeiagraf{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:var(--s4) 0 var(--s5);
  border:1px solid var(--line);background:var(--panel);padding:var(--s4)}
.cadeiagraf .no{font-size:var(--t3);border:1px solid var(--line2);padding:6px 11px;color:var(--ink2);background:var(--panel2)}
.cadeiagraf .se{color:var(--ink4);font-size:var(--t3)}
.carregando{font-size:var(--t2);letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);
  padding:var(--s6) 0;text-align:center;border-bottom:1px solid var(--line)}
tr.oculto{display:none}
@media(max-width:620px){
  .chtabbtn{min-height:44px;padding-top:12px;padding-bottom:12px}
  .anosel input[type=range]{height:44px}
  .anosel{gap:var(--s2)}
  .cadeiagraf .no{font-size:var(--t2)}
}

/* ================= ICONOGRAFIA ================= */
svg.ic{width:17px;height:17px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.5;
  stroke-linecap:butt;stroke-linejoin:miter;vertical-align:-3px}
.drawer .corpo li a{display:flex;align-items:center;gap:11px}
.drawer .corpo li a svg.ic{color:var(--ink4);transition:color .18s var(--ease)}
.drawer .corpo li a:hover svg.ic,.drawer .corpo li a.on svg.ic{color:var(--accent)}
.drawer .corpo li a .nome{flex:1}
.mod .cab svg.ic{color:var(--ink2);width:16px;height:16px}
.mod.op .cab svg.ic,.mod.at .cab svg.ic{color:var(--accent)}
html[data-theme="dark"] .mod.op .cab svg.ic,html[data-theme="dark"] .mod.at .cab svg.ic{color:var(--accent2)}

/* ================= ESTUDO SOB ENCOMENDA ================= */
.est{border:1px solid var(--line2);border-left:3px solid var(--accent);background:var(--panel);
  padding:var(--s5) var(--s5) var(--s5) var(--s5);margin:var(--s6) 0;max-width:640px}
.est .cab{display:flex;align-items:center;gap:9px;margin-bottom:var(--s3);color:var(--accent)}
.est .cab .k{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500}
.est h4{font-family:var(--serif);font-weight:300;font-size:var(--t6);line-height:1.28;margin:0 0 var(--s3);color:var(--ink)}
.est h4 svg{height:.72em;width:auto;fill:var(--ink);vertical-align:baseline;margin-right:.06em}
.est p{margin:0 0 var(--s3);color:var(--ink2);font-size:var(--t4);line-height:1.55}
.est ul{list-style:none;margin:0 0 var(--s4);padding:0;border-top:1px solid var(--line)}
.est ul li{position:relative;padding:8px 0 8px 18px;font-size:var(--t3);color:var(--ink2);border-bottom:1px solid var(--line)}
.est ul li::before{content:"";position:absolute;left:0;top:15px;width:7px;height:1px;background:var(--accent)}
.est .btn.wa{display:inline-flex;align-items:center;gap:9px;min-height:44px}
html[data-theme="dark"] .est{border-left-color:var(--accent2)}
html[data-theme="dark"] .est .cab{color:var(--accent2)}
html[data-theme="dark"] .est ul li::before{background:var(--accent2)}
html[data-theme="dark"] .est h4 svg{fill:var(--ink)}

/* ================= FICHAS DE PAÍS ================= */
.atalhos{display:flex;flex-wrap:wrap;gap:1px;background:var(--line);border:1px solid var(--line)}
.atalhos a{flex:1;min-width:150px;background:var(--panel);padding:var(--s4);display:flex;align-items:center;gap:10px;
  color:var(--ink2);text-decoration:none;font-size:var(--t3);letter-spacing:.04em;min-height:56px}
.atalhos a:hover{background:var(--panel2);color:var(--accent)}
.atalhos a svg.ic{color:var(--ink4)} .atalhos a:hover svg.ic{color:var(--accent)}
.pcards{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:var(--s5) 0}
.pcard{background:var(--panel);padding:var(--s5)}
.pcard header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s4)}
.pcard h3{font-size:var(--t7);font-weight:300}
.pcard .num{display:grid;gap:var(--s3);margin-bottom:var(--s4)}
.pcard .num .k{display:flex;align-items:center;gap:7px;font-size:var(--t2);letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.pcard .num .k svg.ic{width:14px;height:14px;color:var(--ink4)}
.pcard .num b{display:block;font-family:var(--serif);font-weight:300;font-size:var(--t7);color:var(--ink);margin-top:3px}
.pcard .num b.up{color:var(--accent)} .pcard .num b.dn{color:var(--oliva2)}
html[data-theme="dark"] .pcard .num b.up{color:var(--accent2)}
.pcard .num i{display:block;font-style:normal;font-size:var(--t2);color:var(--ink3);margin-top:2px}
.pcard .lid{border-top:1px solid var(--line);padding-top:var(--s3);margin-bottom:var(--s3)}
.pcard .lid .k{display:flex;align-items:center;gap:7px;font-size:var(--t2);letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:7px}
.pcard .lid .k svg.ic{width:14px;height:14px;color:var(--ink4)}
.pcard .lid .ch{display:inline-block;font-size:var(--t2);border:1px solid var(--line2);padding:4px 9px;margin:0 4px 4px 0;color:var(--ink2)}
.pcard .ob{font-size:var(--t3);color:var(--ink2);line-height:1.55;margin:0}
.pcard .mais{list-style:none;margin:var(--s3) 0 0;padding:0}
.pcard .mais li{position:relative;padding:7px 0 7px 16px;font-size:var(--t2);color:var(--ink3);border-top:1px solid var(--line)}
.pcard .mais li::before{content:"";position:absolute;left:0;top:14px;width:6px;height:1px;background:var(--line2)}
@media(max-width:900px){.pcards{grid-template-columns:1fr}}

/* ================= FATOS E REFUTAÇÕES ================= */
.fatos{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:var(--s5) 0}
.fato{background:var(--panel);padding:var(--s5)}
.fato .t{display:flex;align-items:center;gap:9px;margin-bottom:var(--s3);color:var(--ink)}
.fato .t span{font-size:var(--t4);font-weight:500;letter-spacing:.01em}
.fato .t svg.ic{color:var(--ink3)}
.fato p{margin:0 0 var(--s3);font-size:var(--t3);color:var(--ink2);line-height:1.55}
.fato .s{font-size:var(--t2);color:var(--ink3);letter-spacing:.03em;display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:44px}
.fato .s a{color:var(--accent);display:inline-flex;align-items:center;min-height:44px;padding:0 2px}
.refut{border:1px solid var(--line2);background:var(--panel2);margin:var(--s5) 0}
.rf{padding:var(--s5);border-bottom:1px solid var(--line)}
.rf:last-child{border-bottom:0}
.rf .t{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:var(--s3)}
.rf .t>span:first-of-type{font-size:var(--t4);font-weight:500;color:var(--ink)}
.rf .t svg.ic{color:var(--accent)}
html[data-theme="dark"] .rf .t svg.ic{color:var(--accent2)}
.rf .vd{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--line2);
  padding:3px 8px;color:var(--ink2);font-weight:500}
.rf .vd.vREFUTADO{border-color:var(--accent);color:var(--accent)}
html[data-theme="dark"] .rf .vd.vREFUTADO{border-color:var(--accent2);color:var(--accent2)}
.rf p{margin:0;font-size:var(--t3);color:var(--ink2);line-height:1.55}
@media(max-width:900px){.fatos{grid-template-columns:1fr}}
@media(max-width:620px){.est{padding:var(--s4)}.atalhos a{min-width:130px}
  /* o botão do WhatsApp herda white-space:nowrap de .btn e não cabia:
     460px de largura numa tela de 390, empurrando a página inteira */
  .btn.wa{white-space:normal;max-width:100%}}


/* ===== REORGANIZAÇÃO EDITORIAL v10 ===== */
.study-hero .hero-sub{font-size:var(--t4);max-width:68ch;margin-top:var(--s3);color:#E7E3DF;opacity:.94}
.primary-gates{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:var(--s6)}
.primary-gate{background:var(--panel);padding:clamp(24px,4vw,44px);border:0!important;min-height:300px;display:flex;flex-direction:column;align-items:flex-start;color:var(--ink);transition:background .18s var(--ease)}
.primary-gate:hover{background:var(--panel2)}.primary-gate>svg{width:28px;height:28px;stroke:var(--accent);fill:none;stroke-width:1.5;margin-bottom:auto}
.primary-gate .k{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink4);margin-top:var(--s6)}
.primary-gate h3{font-family:var(--serif);font-size:clamp(30px,4vw,48px);font-weight:250;line-height:1.02;margin-top:8px}
.primary-gate p{font-size:var(--t5);color:var(--ink2);max-width:43ch;margin-top:var(--s3)}.primary-gate .go{font-size:var(--t2);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-top:var(--s5)}
@media(max-width:760px){.primary-gates{grid-template-columns:1fr}.primary-gate{min-height:240px}}
.macro-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:var(--s5)}
.macro-card{background:var(--panel);padding:var(--s5);border:0!important;display:flex;flex-direction:column;min-height:210px;color:var(--ink)}.macro-card:hover{background:var(--panel2)}
.macro-card>svg{width:22px;height:22px;stroke:var(--accent);fill:none;stroke-width:1.4;margin-bottom:auto}.macro-card h3{font-size:var(--t7);margin-top:var(--s5)}.macro-card p{font-size:var(--t3);color:var(--ink2);margin-top:7px;line-height:1.55}.macro-card>span{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-top:var(--s4)}
@media(max-width:950px){.macro-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.macro-grid{grid-template-columns:1fr}}
.study-page{max-width:1180px}.study-prologue{max-width:840px;margin:0 0 var(--s8)}.study-kicker{display:block;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--s3)}
.study-prologue h2{font-size:clamp(32px,4.4vw,54px);line-height:1.02;max-width:18ch}.study-prologue p{font-size:var(--t5);color:var(--ink2);line-height:1.72;max-width:70ch;margin-top:var(--s4)}
.study-chapters{border-top:1px solid var(--line2);border-bottom:1px solid var(--line2);margin:0 0 var(--s8)}.study-chapters-hd{display:flex;justify-content:space-between;gap:20px;padding:10px 0;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink4)}
.study-chapters-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.study-chapters-grid a{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:16px 14px 16px 0;border:0!important;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink)}
.study-chapters-grid a:hover{background:var(--panel2)}.study-chapters-grid .n{font-size:10px;letter-spacing:.14em;color:var(--ink4)}.study-chapters-grid b{display:block;font-size:var(--t4);font-weight:500}.study-chapters-grid small{display:block;font-size:var(--t2);color:var(--ink4);margin-top:3px;line-height:1.4}
@media(max-width:850px){.study-chapters-grid{grid-template-columns:1fr 1fr}}@media(max-width:540px){.study-chapters-grid{grid-template-columns:1fr}}
.story-bridge{max-width:780px;margin:var(--s7) 0;padding-left:var(--s5);border-left:1px solid var(--accent)}.story-bridge h3{font-size:var(--t8);line-height:1.15}.story-bridge p{font-size:var(--t5);line-height:1.7;color:var(--ink2);margin-top:var(--s3)}
.story-link{display:inline-block;margin-top:var(--s4);font-size:var(--t2);letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.story-links{display:flex;flex-wrap:wrap;gap:8px;margin:var(--s5) 0 var(--s7)}.story-links a{border:1px solid var(--line2);padding:9px 12px;font-size:var(--t2);letter-spacing:.08em;text-transform:uppercase;color:var(--ink2)}.story-links a:hover{border-color:var(--accent);color:var(--accent)}
.chapter-context{border-bottom:1px solid var(--line);background:var(--panel);padding:10px 0}.chapter-context .wrap{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.chapter-context a{display:flex;align-items:center;gap:9px;border:0!important;color:var(--ink)}.chapter-context a>svg{width:17px;height:17px;stroke:var(--accent);fill:none;stroke-width:1.5}.chapter-context small{display:block;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink4)}.chapter-context b{font-size:var(--t3);font-weight:500}.chapter-context>.wrap>.sep{color:var(--ink4)}.chapter-context>.wrap>span:not(.sep):not(.ctx-note){font-size:var(--t3);color:var(--ink2)}.chapter-context .ctx-note{margin-left:auto;font-size:var(--t1);color:var(--ink4)}
@media(max-width:720px){.chapter-context .ctx-note{width:100%;margin-left:26px}}
.world-directory{border:1px solid var(--line);background:var(--panel);margin:var(--s5) 0}.world-dir-head{display:flex;justify-content:space-between;gap:20px;padding:14px 16px;border-bottom:1px solid var(--line);font-size:var(--t3)}.world-dir-head span{color:var(--ink4)}.world-list{display:grid;grid-template-columns:repeat(5,1fr);padding:12px 16px}.world-list span{font-size:var(--t3);color:var(--ink2);padding:6px 4px;border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent)}
@media(max-width:900px){.world-list{grid-template-columns:repeat(3,1fr)}}@media(max-width:560px){.world-list{grid-template-columns:1fr 1fr}.world-dir-head{display:block}.world-dir-head span{display:block;margin-top:5px}}
/* mais espaço entre argumento e evidência: páginas passam a respirar como estudos */
.study-page>.figch,.study-page>.tblwrap,.study-page>.mapbox,.study-page>.grid{margin-top:var(--s5)}

/* governança de dados */
.gov-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin:24px 0 44px}
.gov-status{background:var(--panel,#FBF9F3);padding:18px 20px;min-height:110px}
.gov-status b{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;color:var(--bronze)}
.gov-status span{font-size:13px;line-height:1.5;color:var(--ink2)}
.gov-pri{display:inline-flex;min-width:32px;justify-content:center;padding:3px 6px;border:1px solid var(--line2);font-size:10px;font-weight:600;letter-spacing:.08em}
.gov-pri.p0{border-color:#8B2E20;color:#8B2E20}.gov-pri.p1{border-color:var(--bronze);color:var(--bronze)}
.gov-tag{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.gov-kpis{margin-bottom:52px}
@media(max-width:760px){.gov-status-grid{grid-template-columns:1fr}}

.alias-chip{display:inline-block;border:1px solid var(--line2);padding:3px 6px;margin:2px 3px 2px 0;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink3)}

.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ===== correções do QA visual em navegador real, 10/08/2026 ===== */
/* 1 · botão fantasma ficava com 1,05:1 no tema escuro */
.btn.gh{background:transparent;border:1px solid var(--line2);color:var(--ink2)}
.btn.gh:hover{border-color:var(--accent);color:var(--accent)}
html[data-theme="dark"] .btn.gh{border-color:var(--line2);color:var(--ink2)}
html[data-theme="dark"] .btn.gh:hover{border-color:var(--accent2);color:var(--accent2)}
/* 2 · subtítulo do lockup estava em 4,42:1, abaixo do mínimo de 4,5 */
.obm .wm span,.brandlock .wm span{color:var(--ink2)}
/* 3 · alvo de toque mínimo em links de navegação e de bloco */
.hd a,.ft a,.fr li a,.atalhos a,.pz,.modhd a,main .btn,#app .btn{min-height:44px}
.modhd a,.ft li a,.fr li a{display:inline-flex;align-items:center}
@media(max-width:620px){
  main a,#app a{min-height:24px}
  main .btn,#app .btn,.modhd a,.ft li a{min-height:44px}
}
/* 4 · h1 de leitor de tela */
.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* subtítulo do lockup no hero estava em 4,42:1 sobre o véu */
.hero .brandlock .wm span{opacity:1;color:#FBF9F3}
/* selo de completude usava bronze fixo: no escuro precisa do dourado */
.gov-status b{color:var(--accent)}
.gov-tag{color:var(--ink2)}
