:root,
html[data-theme="claro"]{
  --bg:#d8ccac;
  --bg-deep:#3a3d29;
  --panel:#f4ecd4;
  --panel-2:#e7dcbf;
  --ink:#1f2118;
  --ink-soft:#4c4e3b;
  --cream:#f4ecd4;
  --cream-text:#ece2c6;
  --olive:#51623d;
  --line:#9a8c62;
  --line-soft:rgba(31,33,24,.18);
  --gold:#d8a323;
  --red:#b6372d;
  --shadow:0 24px 60px -32px rgba(0,0,0,.58);
  --mono:'Special Elite',monospace;
  --disp:'Saira Condensed',sans-serif;
  --text:'Saira',sans-serif;
}
html[data-theme="escuro"]{
  --bg:#12160e;
  --bg-deep:#101108;
  --panel:#171a11;
  --panel-2:#222519;
  --ink:#ece2c6;
  --ink-soft:#a89a72;
  --cream:#ece2c6;
  --cream-text:#ece2c6;
  --olive:#7d9460;
  --line:#3b3e2c;
  --line-soft:rgba(232,178,42,.22);
  --gold:#e8b22a;
  --red:#d2543f;
  --shadow:0 30px 70px -34px rgba(0,0,0,.92);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  min-width:320px;
  overflow-x:hidden;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--text);
  -webkit-font-smoothing:antialiased;
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:80;
  pointer-events:none;
  opacity:.055;
  mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
}
html[data-theme="escuro"] body::after{mix-blend-mode:screen;opacity:.035}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.wrap{width:min(1120px,100%);margin-inline:auto;padding-inline:clamp(18px,4vw,34px)}
.hazard{height:14px;background:repeating-linear-gradient(45deg,#0d0d09 0 22px,var(--gold) 22px 44px);border-bottom:1px solid rgba(0,0,0,.45)}
.ticker{overflow:hidden;border-bottom:1px solid var(--line-soft);background:var(--bg-deep);color:var(--cream-text);font-family:var(--mono);font-size:.66rem;letter-spacing:.18em;white-space:nowrap;text-transform:uppercase}
.ticker span{display:inline-block;padding:9px 0;animation:roll 38s linear infinite}
.ticker b{color:var(--gold);font-weight:400}
@keyframes roll{to{transform:translateX(-50%)}}
.nav{position:sticky;top:0;z-index:70;border-bottom:1px solid var(--line-soft);background:color-mix(in srgb,var(--panel) 88%,transparent);backdrop-filter:blur(14px)}
.nav-inner{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-title{font-family:var(--disp);font-weight:700;font-size:1.8rem;letter-spacing:.02em;line-height:.9;text-transform:uppercase}
.brand-title span{color:var(--red)}
.brand-sub{margin-top:3px;font-family:var(--mono);font-size:.58rem;letter-spacing:.18em;color:var(--ink-soft);text-transform:uppercase}
.nav-links{display:flex;align-items:center;gap:4px}
.nav-links a,.theme-toggle{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;border:1px solid transparent;color:var(--ink);font-family:var(--disp);font-weight:700;font-size:.88rem;letter-spacing:.05em;text-transform:uppercase}
.nav-links a:hover,.theme-toggle:hover{border-color:var(--line);background:color-mix(in srgb,var(--gold) 18%,transparent)}
.theme-toggle{cursor:pointer;background:transparent}
.theme-dot{width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 14px var(--gold)}
.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 18px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-family:var(--disp);font-weight:700;font-size:1rem;letter-spacing:.06em;text-transform:uppercase;box-shadow:4px 4px 0 rgba(0,0,0,.28);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.btn:hover{transform:translateY(-2px);box-shadow:6px 7px 0 rgba(0,0,0,.28)}
.btn.primary{background:var(--red);color:#fff;border-color:#181a12}
.btn.gold{background:var(--gold);color:#17160d;border-color:#181a12}
.btn.ghost{background:color-mix(in srgb,var(--panel) 76%,transparent)}
.hero{position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--line-soft);background:var(--bg-deep);color:var(--cream-text)}
.hero-media{position:absolute;inset:0;z-index:-3;background:#101108}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 24%;filter:saturate(.92) contrast(1.05);opacity:.42}
html[data-theme="escuro"] .hero-media img{opacity:.3}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(16,17,8,.5) 0%,rgba(16,17,8,.7) 50%,var(--bg-deep) 100%),radial-gradient(90% 78% at 15% 78%,rgba(0,0,0,.58),transparent 58%),radial-gradient(70% 60% at 82% 42%,rgba(232,178,42,.16),transparent 58%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:32px;align-items:end;padding-block:clamp(72px,12vh,126px) clamp(42px,7vh,70px)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:rgba(216,163,35,.2);padding:6px 10px;color:var(--gold);font-family:var(--mono);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase}
h1,h2,h3{font-family:var(--disp);text-transform:uppercase}
h1{max-width:780px;margin:.18em 0 0;font-size:clamp(3.3rem,8vw,7.4rem);line-height:.84;color:var(--cream-text);text-shadow:3px 3px 0 rgba(0,0,0,.25),0 18px 46px rgba(0,0,0,.58)}
h1 span{display:block;color:var(--gold)}
.lead{max-width:680px;margin:20px 0 0;color:rgba(244,236,212,.9);font-size:clamp(1.02rem,1.8vw,1.28rem);line-height:1.5;text-shadow:0 2px 18px rgba(0,0,0,.72)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}
.brief{border:1px solid rgba(232,178,42,.38);background:rgba(8,11,6,.78);box-shadow:var(--shadow);padding:18px}
.brief h2{margin:0 0 12px;font-size:1.6rem;color:var(--gold)}
.brief ul{display:grid;gap:10px;margin:0;padding:0;list-style:none;color:rgba(244,236,212,.84);line-height:1.45}
.brief li{display:flex;gap:9px}
.brief li::before{content:"";width:8px;height:8px;margin-top:.48em;flex:none;background:var(--gold)}
.section{padding-block:clamp(54px,9vw,88px)}
.section.alt{background:var(--panel-2)}
.section.dark{background:var(--bg-deep);color:var(--cream-text)}
.section-head{max-width:780px;margin-bottom:30px}
.section-head .eyebrow{color:var(--red);background:color-mix(in srgb,var(--gold) 22%,transparent)}
.section.dark .section-head .eyebrow{color:var(--gold)}
h2{margin:.32em 0 0;font-size:clamp(2rem,5vw,4.2rem);line-height:.95;letter-spacing:.006em}
.section-head p,.article-body p,.article-body li{color:var(--ink-soft);font-size:1.05rem;line-height:1.68}
.section.dark .section-head p{color:rgba(236,226,198,.75)}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.post-card{display:flex;flex-direction:column;gap:14px;border:1px solid var(--line);background:var(--panel);padding:22px;box-shadow:var(--shadow)}
.section.dark .post-card{color:var(--ink)}
.post-card.featured{background:var(--gold);color:#16170d}
.post-card.latest-card{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}
.post-card h3{margin:0;font-size:1.65rem;line-height:1}
.post-card.latest-card h3{font-size:clamp(2rem,4vw,3.2rem)}
.post-card p{margin:0;color:color-mix(in srgb,currentColor 72%,transparent);line-height:1.52}
.meta{font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:color-mix(in srgb,currentColor 66%,transparent)}
.post-card .btn{margin-top:auto;width:100%}
.post-card.latest-card .btn{width:auto;min-width:190px}
.article-shell{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,320px);gap:42px;align-items:start}
.article-body{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);padding:clamp(22px,5vw,42px)}
.article-body h2{margin-top:1.3em;font-size:clamp(1.75rem,4vw,2.7rem)}
.article-body h2:first-child{margin-top:0}
.article-body p{margin:1em 0 0}
.article-body ul{margin:1em 0 0;padding-left:1.2em}
.article-body a{color:var(--red);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.source-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);padding:22px}
.source-card h3{margin:0 0 12px;font-size:1.55rem;line-height:1}
.source-card ul{display:grid;gap:9px;margin:0;padding-left:1.15em;color:var(--ink-soft);line-height:1.45}
.source-card a{color:var(--red);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.callout{border:1px solid var(--line);background:color-mix(in srgb,var(--gold) 16%,var(--panel));padding:18px;margin-top:22px}
.callout p{margin:0;color:var(--ink-soft)}
.sidebar{position:sticky;top:92px;border:1px solid var(--line);background:var(--panel-2);box-shadow:var(--shadow);padding:18px}
.sidebar h2{margin:0;font-size:1.45rem}
.sidebar ul{display:grid;gap:10px;margin:14px 0 0;padding:0;list-style:none;color:var(--ink-soft);line-height:1.42}
.footer{border-top:1px solid var(--line-soft);background:var(--bg-deep);color:var(--cream-text);padding:34px 0}
.footer-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:24px}
.footer p{margin:8px 0 0;color:rgba(236,226,198,.68);line-height:1.56}
.footer a{color:var(--gold)}
.footer h3{margin:0;font-family:var(--disp);font-size:1.2rem;text-transform:uppercase}
.footer ul{display:grid;gap:6px;margin:8px 0 0;padding:0;list-style:none;color:rgba(236,226,198,.8)}
[data-motion="reduzido"] *,body[data-ops-motion="reduzido"] *{animation:none!important;transition-duration:.001s!important;scroll-behavior:auto!important}
@media (max-width:920px){
  .nav-links a[href^="/#"],.nav-links a.hide-mobile{display:none}
  .hero-grid,.article-shell{grid-template-columns:1fr}
  .post-grid{grid-template-columns:1fr}
  .post-card.latest-card{grid-template-columns:1fr}
  .post-card.latest-card .btn{width:100%}
  .source-grid{grid-template-columns:1fr}
  .sidebar{position:static}
  .footer-grid{grid-template-columns:1fr}
}
@media (max-width:620px){
  .nav-inner{min-height:64px}
  .brand-title{font-size:1.48rem}
  .brand-sub{display:none}
  .nav-links .btn{min-height:38px;padding:0 12px;font-size:.78rem}
  .theme-toggle{width:40px;padding:0;font-size:0}
  h1{font-size:clamp(3.1rem,18vw,5rem)}
  .hero-actions .btn{width:100%}
  .section{padding-block:44px}
}
