/* Design system adapted from PureVolt template tokens (colors, type scale, radii); no template assets copied */
:root{--green:#063024;--heading:#0c2f0c;--body:#063024b3;--muted:#06302499;--line:#0630241a;--lime:#d6f48f;--yellow:#ffe100;--sand:#f4f4f4;--gray:#e9e9e9;--off:#fdfffd;--white:#fff;
--ok:#1f6b3a;--warn:#7a5d00;--bad:#a3261b;--hfont:"Cabinet Grotesk",Arial,sans-serif;--bfont:"Source Sans 3",sans-serif;--r4:4px;--r100:100px;--max:1240px}
*{box-sizing:border-box}body{margin:0;background:var(--sand);color:var(--body);font:400 1rem/1.5 var(--bfont)}
a{color:var(--green)}a:hover{color:var(--heading);opacity:.85}
h1,h2,h3,h4,.serif{font-family:var(--hfont);color:var(--heading);font-weight:700;letter-spacing:-.01em}
h1{font-size:4.2rem;line-height:1.08;margin:.1em 0 .35em}h2{font-size:2.5rem;line-height:1.14;margin:4.5rem 0 1.4rem}h2:before{content:"";display:block;width:44px;height:4px;background:var(--lime);margin-bottom:14px}
h3{font-size:1.35rem;line-height:1.3}
.w{max-width:var(--max);margin:0 auto;padding:0 32px}
header.site{position:sticky;top:0;z-index:5;background:var(--white);border-bottom:1px solid var(--line)}
header.site .w{display:flex;align-items:center;gap:28px;height:68px}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;font:700 1.25rem var(--hfont);color:var(--heading)}
.brand .bars{width:20px;height:20px;background:linear-gradient(var(--lime),var(--lime)) center/6px 100% no-repeat,linear-gradient(var(--lime),var(--lime)) center/100% 6px no-repeat}
.brand .sub{font-weight:500;color:var(--muted)}
nav.main{display:flex;gap:26px;margin-left:auto;font-size:.82rem;font-weight:500;text-transform:uppercase;letter-spacing:.02em}nav.main a{text-decoration:none;color:var(--heading)}
nav.util{display:flex;gap:10px}nav.util a{text-decoration:none;font-size:.82rem;font-weight:600;text-transform:uppercase;padding:12px 18px;border-radius:var(--r4);border:1px solid var(--line);color:var(--heading)}
nav.util a:last-child{background:var(--green);color:var(--white);border-color:var(--green)}
.hero{background:radial-gradient(1200px 500px at 85% -10%,#0f4a37 0,transparent 60%),linear-gradient(160deg,#063024 0,#052419 100%);color:var(--soft,#fdfffdcc);padding:96px 0 72px}
.hero .w{display:grid;grid-template-columns:1.35fr 1fr;gap:56px;align-items:end}
.hero h1{color:var(--off)}.hero .lede{color:#fdfffdcc;font-size:1.125rem;line-height:1.45;max-width:600px;border-left:1px solid #fdfffd40;padding-left:16px}
.hero .updated{color:#fdfffd99}
.btn{display:inline-block;background:var(--lime);color:var(--green);border-radius:var(--r4);padding:15px 26px;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.02em;text-decoration:none}.btn:hover{background:var(--yellow);color:var(--green)}
.stats{display:inline-flex;margin:0 0 0 14px;vertical-align:middle;font-size:.85rem;color:#fdfffdcc}.stats span{padding:0 14px}.stats span+span{border-left:1px solid #fdfffd40}.stats b{color:var(--lime);font:700 1.1rem var(--hfont)}
.scorecard{background:var(--white);border-radius:var(--r4);padding:26px 28px;width:100%;max-width:400px;justify-self:end}
.eyebrow,.tag{display:inline-block;background:var(--green);color:var(--off);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-radius:var(--r4);padding:4px 9px}
.big{font:700 3rem/1 var(--hfont);color:var(--heading)}.big small{font-size:1rem;color:var(--muted)}
.lbl{font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.chip{font-size:.75rem;font-weight:600;color:var(--green);background:var(--lime);border-radius:var(--r100);padding:4px 12px}
.pill{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border-radius:var(--r4);padding:5px 10px}
.pill.hr{background:var(--green);color:var(--lime)}.pill.r{background:var(--lime);color:var(--green)}.pill.c{background:#fff3a6;color:var(--warn)}.pill.n{background:#f8dcd8;color:var(--bad)}
.row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.feat{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}
.card{background:var(--white);border-radius:var(--r4);padding:26px 28px;border:1px solid transparent}
a.card{display:block;text-decoration:none;color:var(--body);transition:border-color .2s}a.card:hover{border-color:var(--green);opacity:1}
.ring{display:inline-flex;flex-direction:column;align-items:flex-start}.ring b{font:700 2.2rem/1 var(--hfont);color:var(--heading)}.ring b small{font-size:.9rem;color:var(--muted)}
.fit{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.fit div{border-radius:var(--r4);padding:14px 16px;font-size:.92rem;background:var(--sand)}.fit .yes{border-top:3px solid var(--lime)}.fit .no{border-top:3px solid #e8a49b}
.fit .lbl{display:block;margin-bottom:4px;color:var(--heading)}
.how{background:var(--green);color:#fdfffdcc;border-radius:var(--r4);padding:28px}.how h3{color:var(--off)}.how p{font-size:.95rem}.how .more{color:var(--lime)}
.wbar{display:flex;background:var(--white);border:1px solid var(--line);border-radius:var(--r4);margin:12px 0;overflow:hidden}
.how .wbar{background:#0a3d2e;border-color:#fdfffd26}
.wbar div{flex:1;text-align:center;padding:12px 2px;font:700 1.05rem var(--hfont);color:var(--heading)}.how .wbar div{color:var(--lime)}.wbar div+div{border-left:1px solid var(--line)}.how .wbar div+div{border-color:#fdfffd26}
.wbar small{display:block;font:600 .62rem var(--bfont);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.how .wbar small{color:#fdfffd99}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:8px}.steps li{background:var(--white);border-radius:var(--r4);padding:12px 14px;font-size:.9rem;color:var(--body)}
.how .steps li{background:#0a3d2e;color:#fdfffdcc}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cat h3{margin:0 0 6px}.cat p{margin:0 0 12px;font-size:.95rem}.more{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--green)}
.icon{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:var(--r4);background:var(--lime);margin-bottom:14px}.icon svg{display:block}
.soon{font-size:.7rem;font-weight:600;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:var(--r4);padding:3px 8px}
.meta{font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.updated{color:var(--muted);font-size:.85rem}
table{border-collapse:collapse;width:100%;background:var(--white);border-radius:var(--r4);overflow:hidden;font-size:.95rem}
th,td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}th{background:var(--green);color:var(--off);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;font-weight:600}tr:last-child td{border-bottom:0}
.note{background:var(--white);border-left:4px solid var(--lime);border-radius:var(--r4);padding:14px 18px;font-size:.95rem}
.band{background:var(--green);padding:110px 0;margin-top:90px;text-align:center}.band p{font:700 2.4rem/1.2 var(--hfont);color:var(--off);max-width:900px;margin:0 auto}.band p em{font-style:normal;color:var(--lime)}
main{padding-bottom:90px}main>.w>p,main>.w>ul{max-width:800px}
footer.site{background:var(--green);color:#fdfffdcc;padding:70px 0 28px;font-size:.95rem}
footer.site .serif{color:var(--off)!important;font-size:1.5rem!important}
footer.site .cols{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:28px 0 40px}footer.site a{text-decoration:none;color:#fdfffdcc}footer.site a:hover{color:var(--lime)}footer.site h4{color:var(--off);margin:0 0 10px;font-size:1rem}
footer.site .bot{border-top:1px solid #fdfffd26;padding-top:20px;display:flex;justify-content:space-between;font-size:.85rem;color:#fdfffd99}
@media(max-width:900px){.hero .w,.feat,.grid3,.grid2,.fit{grid-template-columns:1fr}nav.main{display:none}.scorecard{justify-self:start}h1{font-size:2.6rem}h2{font-size:2rem}.band p{font-size:1.7rem}}

/* Phase 1 additions: breadcrumbs, hub nav, changelog, FAQ, sources */
.crumbs{background:var(--white);border-bottom:1px solid var(--line);font-size:.82rem}.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:10px 0}.crumbs li{color:var(--muted)}.crumbs li+li:before{content:"\203A";margin-right:6px;color:var(--muted)}.crumbs a{text-decoration:none;font-weight:600}
.hubnav{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 0}.hubnav a{text-decoration:none;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;padding:9px 14px;border-radius:var(--r4);border:1px solid var(--line);background:var(--white);color:var(--heading)}.hubnav a.on{background:var(--green);color:var(--lime);border-color:var(--green)}
.stack{display:grid;gap:12px}
.tw{overflow-x:auto}
.kv td:first-child{width:180px;font-weight:600;color:var(--heading)}
.reveal li{margin:6px 0}
.verified{margin-top:48px;background:var(--white);border-radius:var(--r4);padding:16px 20px}.verified p{margin:0 0 6px}
details.changelog summary,.faq summary{cursor:pointer;font-weight:600;color:var(--heading)}details.changelog ul{margin:10px 0 0;padding-left:18px;font-size:.92rem}details.changelog time{font-weight:600;margin-right:6px}
.faq{display:grid;gap:8px}.faq details{background:var(--white);border-radius:var(--r4);padding:14px 18px}.faq details p{margin:10px 0 0}
.srcs{font-size:.9rem}.srcs li{margin:4px 0}
code{background:var(--gray);padding:1px 5px;border-radius:3px}
