:root { --navy:#1E2761; --navy2:#2E3A78; --gold:#C9A227; --goldlight:#EFE0A6; --scarlet:#C8102E;
        --slate:#6b7385; --line:#E6EAF2; --ink:#16181f; --shell:#141826; --shell2:#1d2333; --canvas:#EEF1F7; }
* { box-sizing:border-box; margin:0; }
body { font-family:"Segoe UI",system-ui,sans-serif; color:var(--ink); line-height:1.6; background:var(--canvas); }
.stripe { position:fixed; left:0; top:0; bottom:0; width:6px; background:var(--scarlet); z-index:50; }
nav { background:var(--shell); display:flex; align-items:center; gap:1.4rem; padding:.8rem 1.5rem .8rem 2rem; position:sticky; top:0; z-index:40; box-shadow:0 2px 14px rgba(10,14,40,.25); }
nav .brand { display:flex; align-items:center; gap:10px; color:#fff; text-decoration:none; font-family:Georgia,serif; font-weight:bold; letter-spacing:.22em; font-size:1rem; }
nav a.link { color:#9aa3b8; text-decoration:none; font-size:.9rem; padding:.3rem 0; }
nav a.link:hover { color:#e5e9f2; }
nav a.link.active { color:var(--goldlight); border-bottom:2px solid var(--gold); }
nav .cta { margin-left:auto; background:var(--gold); color:var(--shell); font-weight:700; text-decoration:none; padding:.5rem 1.1rem; border-radius:999px; font-size:.9rem; }
nav .cta:hover { background:#d9b23a; }
header.hero { background:linear-gradient(135deg,var(--shell) 0%,#20264a 100%); color:#fff; padding:4.2rem 1.5rem 3.6rem 2rem; }
.wrap { max-width:920px; margin:0 auto; padding-left:.5rem; }
h1 { font-family:Georgia,serif; font-size:2.5rem; line-height:1.15; max-width:680px; }
.hero .sub { color:#c3cadd; font-size:1.12rem; margin-top:1.1rem; max-width:620px; }
.hero .tag { color:var(--gold); font-size:.95rem; font-style:italic; margin-top:1.4rem; }
.statrow { display:flex; gap:1rem; flex-wrap:wrap; margin-top:2.2rem; }
.stat { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); border-left:4px solid var(--gold); padding:.8rem 1.2rem; border-radius:0 10px 10px 0; backdrop-filter:blur(4px); }
.stat b { display:block; font-family:Georgia,serif; font-size:1.6rem; color:#fff; }
.stat span { font-size:.78rem; color:var(--goldlight); }
main { padding:2.5rem 1.5rem 1rem 2rem; }
h2 { font-family:Georgia,serif; color:var(--navy); font-size:1.5rem; margin:2rem 0 .8rem; }
h3 { font-family:Georgia,serif; color:var(--navy); font-size:1.1rem; margin:1.4rem 0 .4rem; }
.cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1rem; margin-top:1rem; }
.card { border:0; border-left:4px solid var(--gold); border-radius:12px; padding:1.1rem 1.3rem; background:#fff; box-shadow:0 1px 5px rgba(20,24,38,.08); }
.card strong { color:var(--navy); display:block; margin-bottom:.3rem; }
.card p { font-size:.95rem; color:var(--slate); }
.btn { display:inline-block; background:var(--shell); color:#fff; text-decoration:none; padding:.75rem 1.5rem; border-radius:10px; font-weight:600; margin:1rem 1rem 0 0; box-shadow:0 4px 14px rgba(20,24,38,.18); }
.btn:hover { background:var(--shell2); }
.btn.ghost { background:#fff; color:var(--shell); border:2px solid var(--shell); box-shadow:none; }
.callout { background:#fff; border-radius:12px; padding:1.3rem 1.5rem; margin:2rem 0; border-left:4px solid var(--scarlet); box-shadow:0 1px 5px rgba(20,24,38,.08); }
.callout strong { color:var(--navy); }
table { border-collapse:collapse; width:100%; margin:1rem 0; font-size:.92rem; background:#fff; }
th,td { border:1px solid var(--line); padding:.55rem .75rem; text-align:left; vertical-align:top; }
th { background:var(--shell); color:#fff; border-color:var(--shell); }
.miss { background:#FDF6F6; }
.ok { color:#15803d; font-weight:700; }
ul.tight { padding-left:1.2rem; } ul.tight li { margin:.35rem 0; }
.pledge { border:2px solid var(--gold); border-radius:14px; padding:1.7rem 1.9rem; margin:1.5rem 0; background:#fff; box-shadow:0 4px 18px rgba(20,24,38,.08); }
.pledge ol { padding-left:1.3rem; } .pledge li { margin:.55rem 0; font-size:1.02rem; }
.pledge .sig { margin-top:1.2rem; font-family:Georgia,serif; font-style:italic; color:var(--navy); }
footer { background:var(--shell); color:#9aa3b8; padding:2.2rem 1.5rem 2.2rem 2rem; font-size:.88rem; margin-top:3rem; }
footer a { color:var(--goldlight); text-decoration:none; }
@media (max-width:640px){ h1{font-size:1.8rem} nav{flex-wrap:wrap} nav .cta{margin-left:0} }
