/* The topic pages (demo-owned): the hub's own look - pine-dark, Playfair + Outfit, gold buttons. */
:root{
  --bg:#0d1810; --bg2:#111f15; --card:#16241a; --line:#24382a; --text:#c8d2c4; --muted:#8fa08c; --heading:#eef3ea;
  --accent:#c9a227; --accent2:#d8b544; --btn:#c9a227; --btnText:#14301d; --headerBg:#0a130d; --wrap:980px;
}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--bg);color:var(--text);font-family:'Outfit',system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--accent2)}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;color:var(--heading);letter-spacing:-.3px;line-height:1.15}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
header.top{background:var(--headerBg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
header.top .in{display:flex;align-items:center;gap:14px;min-height:60px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;color:var(--heading);text-decoration:none;font-family:'Playfair Display',serif;font-size:17px}
header.top nav{margin-left:auto;display:flex;gap:16px;flex-wrap:wrap;align-items:center;font-size:14.5px}
header.top nav a{color:var(--text);text-decoration:none}
header.top nav a[aria-current]{color:var(--accent2)}
.btn{display:inline-block;background:var(--btn);color:var(--btnText);font-weight:600;padding:11px 20px;border-radius:6px;text-decoration:none;font-size:15px;border:1px solid var(--btn)}
.btn.ghost{background:transparent;color:var(--heading);border-color:rgba(238,243,234,.35)}
header.top nav .btn{padding:7px 14px;font-size:14px;color:var(--btnText)}
.crumbs{font-size:13.5px;color:var(--muted);padding:18px 0 0}
.crumbs a{color:var(--muted)}
.hero{padding:30px 0 40px}
.eyebrow{color:var(--accent2);font-size:14px;font-weight:500;margin-bottom:8px}
.hero h1{font-size:clamp(30px,5vw,50px);margin-bottom:14px}
.lede{font-size:clamp(16px,1.9vw,19px);max-width:700px}
.ctas{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
section{padding:38px 0;border-top:1px solid var(--line)}
section h2{font-size:clamp(24px,3.4vw,34px);margin-bottom:12px}
section p{max-width:720px;margin-bottom:12px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px}
.card h3{font-size:19px;margin-bottom:6px}
.card p{font-size:15px;margin:0}
ul.plain{margin:10px 0 0 20px;max-width:720px}
ul.plain li{margin:4px 0}
.see{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px}
.see a{display:block;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:14px 16px;text-decoration:none;color:var(--text)}
.see a b{display:block;color:var(--heading);font-weight:500}
.see a small{color:var(--muted);font-size:13.5px}
.see a:hover{border-color:var(--accent)}
.faq{display:grid;gap:8px;max-width:820px;margin-top:14px}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:8px}
.faq summary{cursor:pointer;padding:13px 18px;font-family:'Playfair Display',serif;font-size:17px;color:var(--heading)}
.faq p{padding:0 18px 14px;font-size:15px;margin:0}
.more{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
footer{border-top:1px solid var(--line);padding:24px 0 40px;font-size:14px;color:var(--muted)}
footer a{color:var(--text)}
@media (max-width:820px){ .cards{grid-template-columns:1fr} .see{grid-template-columns:1fr} }
