
:root{color-scheme:light;--ink:#17243a;--muted:#48586c;--accent:#234ea4;--line:#d9e1eb;--wash:#f3f6fb}
*{box-sizing:border-box}
html{font:100%/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{margin:0;background:#fff;color:var(--ink);overflow-wrap:anywhere}
a{color:var(--accent);text-underline-offset:.2em;text-decoration-thickness:.08em}
a:hover{text-decoration-thickness:.15em}
a:focus-visible,main:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.skip{position:absolute;left:1rem;top:-6rem;z-index:10;padding:.7rem 1rem;background:#fff}
.skip:focus{top:1rem}
.wrap{width:min(70rem,calc(100% - 3rem));margin-inline:auto}
.site-header{border-bottom:1px solid var(--line)}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 0;flex-wrap:wrap}
.brand{display:inline-flex;align-items:center;gap:.65rem;color:var(--ink);font-size:1.4rem;font-weight:750;text-decoration:none;letter-spacing:-.04em}
.mark{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.55rem;background:var(--ink);color:white;font-size:1rem;letter-spacing:0}
.site-nav{display:flex;gap:.25rem;flex-wrap:wrap}
.site-nav a{display:inline-flex;align-items:center;min-height:44px;padding:.4rem .8rem;color:var(--muted);border-radius:.4rem;text-decoration:none}
.site-nav a[aria-current=page]{background:var(--wash);color:var(--ink);font-weight:700;text-decoration:underline}
main{min-height:60vh;padding:3.5rem 0 4rem}
h1,h2,h3{line-height:1.18;letter-spacing:-.035em;text-wrap:balance}
h1{font-size:clamp(2.25rem,5.5vw,4.25rem);margin:.7rem 0 1.25rem;max-width:16ch}
h2{font-size:1.5rem;margin:0 0 .85rem}
h3{font-size:1.15rem;margin:0 0 .6rem}
p{margin:0 0 1rem}
p:last-child{margin-bottom:0}
.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:750}
.lead{font-size:1.15rem;max-width:55ch;color:var(--muted)}
.muted,.meta{color:var(--muted)}
.meta{font-size:.9rem;margin-bottom:2rem}
.hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:3rem;align-items:center;padding:.5rem 0 3rem}
.panel{padding:1.75rem;border:1px solid var(--line);border-radius:1rem;background:var(--wash)}
.panel p{color:var(--muted)}
.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.65rem 1rem;border:1px solid var(--accent);border-radius:.45rem;background:var(--accent);color:#fff;font-weight:650;text-decoration:none}
.button.secondary{background:#fff;color:var(--accent)}
.section{border-top:1px solid var(--line);padding-top:2rem;margin-top:1rem}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:1.5rem 0 2.5rem}
.card{border-left:3px solid var(--line);padding-left:1.1rem}
.card p{color:var(--muted);font-size:.95rem}
.prose{max-width:48rem;margin-inline:auto}
.prose h1{font-size:clamp(2.2rem,4vw,3.2rem);max-width:none}
.prose section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.prose ul,.prose ol{padding-left:1.5rem}
.prose li{margin:.5rem 0}
.notice{padding:1.25rem 1.5rem;border-left:4px solid var(--accent);background:var(--wash);border-radius:0 .5rem .5rem 0}
code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9em;overflow-wrap:anywhere}
.site-footer{border-top:1px solid var(--line);background:var(--wash);padding:1.75rem 0;color:var(--muted);font-size:.9rem}
.footer-row{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
@media(max-width:46rem){.hero{grid-template-columns:1fr;gap:1.75rem}.cards{grid-template-columns:1fr;gap:1.25rem}main{padding-top:2rem}.wrap{width:calc(100% - 2rem)}}
@media(max-width:23rem){.site-nav a{padding-inline:.65rem}.panel{padding:1.25rem}}
@media print{.site-header,.actions,.skip{display:none}.wrap{width:100%}main{padding:0}.panel,.notice,.site-footer{background:#fff}a{color:inherit}.site-footer{margin-top:2rem}}
