:root {
  --olive-900:#263410; --olive-800:#2E3F14; --olive-700:#40571C; --olive-600:#547023;
  --olive-100:#E8EEDA; --olive-50:#F2F5E9; --gold-700:#8F6808; --gold-100:#F5EAD1;
  --ink:#1C1B15; --ink-60:#5B584C; --ink-40:#736F61; --bg:#F7F4EC; --card:#FFFFFF;
  --border:#EAE4D5; --border-strong:#DCD4BE; --radius:12px;
  --shadow-sm:0 1px 2px rgba(20,18,10,0.03);
  --shadow-md:0 2px 4px rgba(20,18,10,0.03),0 14px 28px -16px rgba(20,18,10,0.10);
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body { font-family:'Work Sans',system-ui,sans-serif; color:var(--ink); background:var(--card); font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased; }
h1, h2, h3, h4 { font-family:'Fraunces',ui-serif,Georgia,serif; margin:0; color:var(--ink); letter-spacing:-0.01em; text-wrap:balance; }
p { margin:0; }
a { color: var(--olive-700); text-decoration: none; }
img { max-width:100%; display:block; }
.container { max-width:1200px; margin:0 auto; padding:0 32px; }

/* ---------- NAV ---------- */
.nav { position:sticky; top:0; z-index:50; background:rgba(255,255,255,0.92); backdrop-filter:saturate(140%) blur(10px); border-bottom:1px solid var(--border); }
.nav-inner { display:flex; align-items:center; justify-content:space-between; height:72px; }
.brand { display:flex; align-items:center; gap:12px; color: var(--ink); }
.brand-mark { width:36px; height:36px; background:var(--olive-700); border-radius:8px; display:grid; place-items:center; color:#fff; font-family:'Fraunces',serif; font-weight:600; font-size:17px; }
.brand-text { display:flex; flex-direction:column; line-height:1.15; }
.brand-name { font-family:'Fraunces',serif; font-weight:600; font-size:18px; }
.brand-sub { font-family:'Work Sans',sans-serif; font-weight:600; font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ink-40); }
.nav-links { display:flex; gap:36px; }
.nav-link { font-size:14.5px; font-weight:500; color:var(--ink-60); }
.nav-link:hover, .nav-link.active { color:var(--olive-700); }
.nav-cta { display:inline-flex; align-items:center; gap:8px; background:var(--olive-700); color:#fff; padding:11px 18px; border-radius:8px; font-weight:500; font-size:14.5px; white-space:nowrap; }
.nav-actions { display:flex; align-items:center; }
.lang-switch { display:flex; align-items:center; gap:2px; background:var(--olive-50); border:1px solid var(--border); border-radius:999px; padding:3px; margin-right:4px; }
.lang-switch a { font-family:'Work Sans',sans-serif; font-weight:600; font-size:12px; padding:5px 11px; border-radius:999px; color:var(--ink-40); }
.lang-switch a.active { background:var(--olive-700); color:#fff; }

/* ---------- ARTICLE HEADER ---------- */
.article-head { background:var(--bg); padding:56px 0 48px; border-bottom:1px solid var(--border); }
.article-head .container { max-width: 760px; }
.article-tag { display:inline-block; font-family:'Work Sans',sans-serif; font-size:12px; color:var(--olive-700); text-transform:uppercase; letter-spacing:0.14em; margin-bottom:16px; font-weight:600; }
.article-head h1 { font-weight:600; font-size:40px; line-height:1.15; }
.article-meta { display:flex; gap:18px; margin-top:20px; font-family:'Work Sans',sans-serif; font-size:12.5px; letter-spacing:0.02em; color:var(--ink-40); flex-wrap: wrap; }

/* ---------- ARTICLE BODY ---------- */
.article-body { max-width:720px; margin:0 auto; padding:56px 32px 40px; }
.article-body p { color:var(--ink); font-size:17px; line-height:1.75; margin-bottom:20px; }
.article-body p.lede { font-size: 19px; color: var(--ink-60); line-height: 1.6; }
.article-body h2 { font-size:28px; font-weight:600; margin:44px 0 16px; }
.article-body h3 { font-size:20px; font-weight:600; margin:32px 0 12px; }
.article-body ul, .article-body ol { color:var(--ink); font-size:17px; line-height:1.75; padding-left:22px; margin-bottom:20px; }
.article-body li { margin-bottom:8px; }
.article-body strong { font-weight: 600; }
.callout {
  background:var(--olive-50); border:1px solid var(--olive-100); border-radius:var(--radius);
  padding:22px 26px; margin:28px 0; font-size:15.5px; color:var(--olive-900); line-height:1.65;
}
.callout strong { font-weight:600; }
.fact-table { background:var(--card); border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; margin: 28px 0; }
.fact-row { display:flex; align-items:baseline; justify-content:space-between; padding:13px 20px; border-bottom:1px solid var(--border); gap:16px; }
.fact-row:last-child { border-bottom:none; }
.fact-row.head { background:var(--olive-700); color:#fff; font-family:'Work Sans',sans-serif; font-size:11px; letter-spacing:0.08em; text-transform:uppercase; font-weight:600; }
.fact-label { font-size:14.5px; color:var(--ink-60); }
.fact-value { font-family:'Work Sans',sans-serif; font-variant-numeric:tabular-nums; font-size:14.5px; color:var(--olive-800); font-weight:600; text-align:right; }
.article-cta {
  margin: 44px 0 8px; background: var(--olive-700); border-radius: var(--radius); padding: 30px 32px;
  display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap;
}
.article-cta p { color: #fff; font-size: 16px; font-weight: 500; margin: 0; }
.article-cta a.btn {
  display: inline-flex; align-items: center; gap: 8px; background: #fff; color: var(--olive-800);
  padding: 11px 18px; border-radius: 8px; font-weight: 600; font-size: 14.5px; white-space: nowrap;
}
.byline { display:flex; align-items:center; gap:12px; margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--border); }
.byline .brand-mark { width: 32px; height: 32px; font-size: 14px; }
.byline-text { font-size: 13.5px; color: var(--ink-60); line-height: 1.4; }
.byline-text b { color: var(--ink); font-weight: 600; }

/* ---------- RELATED ---------- */
.related { background: var(--bg); border-top: 1px solid var(--border); padding: 56px 0; }
.related .container { max-width: 760px; }
.related h3 { font-size: 13px; font-family:'Work Sans',sans-serif; text-transform: uppercase; letter-spacing: 0.1em; color: var(--ink-40); margin-bottom: 20px; font-weight: 600; }
.related-list { display: flex; flex-direction: column; gap: 2px; }
.related-list a { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 16px 0; border-top: 1px solid var(--border); color: var(--ink); font-weight: 500; font-size: 15.5px; }
.related-list a:first-child { border-top: none; }
.related-list a span.arrow { color: var(--olive-700); flex-shrink: 0; }

/* ---------- FOOTER ---------- */
footer { background:var(--olive-800); color:#B9C6A4; padding:56px 0 28px; }
.footer-row { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; padding-bottom:24px; border-bottom:1px solid rgba(255,255,255,0.08); }
.footer-row a.back { color:#fff; font-size:14.5px; font-weight:500; display:inline-flex; align-items:center; gap:8px; }
.footer-bottom { padding-top:24px; font-size:13px; color:#97AB80; }

@media (max-width:980px) {
  .article-head h1 { font-size: 30px; }
  .nav-links { display:none; }
}
@media (max-width: 620px) {
  .article-body { padding: 40px 20px 32px; }
  .article-cta { flex-direction: column; align-items: flex-start; }
}
