:root{--paper: #fefcf9;--paper-2: #faf5ed;--ink: #111721;--muted: #5a6370;--faint: #8892a0;--line: #e8e6e1;--line-strong: #d9d6cf;--accent: #e8634a;--accent-ink: #c1442e;--font-sans: "Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--measure: 42rem;--container: 74rem;--gutter: clamp(1.25rem, 5vw, 4rem);--step-hero: clamp(2.75rem, 7vw, 5.5rem);--step-h1: clamp(2rem, 4.5vw, 3rem);--step-h2: clamp(1.5rem, 3vw, 2rem);--step-h3: 1.25rem;--step-body: 1.0625rem;--step-small: .8125rem;--step-label: .75rem;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--paper: #0f1520;--paper-2: #141a27;--ink: #f4f1ec;--muted: #a8b0bd;--faint: #8892a0;--line: rgba(255, 255, 255, .11);--line-strong: rgba(255, 255, 255, .18);--accent: #ff8a6a;--accent-ink: #ff8a6a}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--step-body);line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.wrap{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:clamp(3.5rem,8vw,7rem)}.section+.section{border-top:1px solid var(--line)}h1,h2,h3,h4{font-weight:700;letter-spacing:-.02em;line-height:1.08;margin:0;text-wrap:balance}p{margin:0}p+p{margin-top:1em}a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--accent);transition:color .15s ease,border-color .15s ease,background .15s ease}a:hover{color:var(--accent-ink);border-bottom-color:var(--accent-ink)}.kicker{font-size:var(--step-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500;margin:0 0 1.25rem;display:flex;align-items:center;gap:.6rem}.kicker:before{content:"";width:1.5rem;height:1px;background:var(--accent);flex:none}.lede{font-size:clamp(1.125rem,2vw,1.375rem);line-height:1.5;color:var(--ink);max-width:var(--measure);letter-spacing:-.01em}.muted{color:var(--muted)}.measure{max-width:var(--measure)}.btn-row{display:flex;flex-wrap:wrap;gap:.75rem}.btn{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--step-small);font-weight:500;letter-spacing:.01em;padding:.7rem 1.15rem;border:1px solid var(--line-strong);border-radius:2px;color:var(--ink);background:transparent;transition:border-color .15s ease,color .15s ease,background .15s ease}.btn:hover{border-color:var(--ink);color:var(--ink)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-ink);border-color:var(--accent-ink);color:#fff}@media(prefers-color-scheme:dark){.btn.primary,.btn.primary:hover{color:#0f1520}}.mono{font-family:var(--font-mono);font-size:.8125rem;line-height:1.65;background:var(--paper-2);border:1px solid var(--line);border-radius:3px;padding:1.25rem 1.4rem;overflow-x:auto;color:var(--ink);tab-size:2}.mono .cmt{color:var(--muted)}.mono .acc{color:var(--accent-ink)}.site-header{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--line)}.site-header .bar{display:flex;align-items:center;justify-content:space-between;height:3.75rem}.brand{font-weight:700;letter-spacing:-.02em;font-size:1.0625rem;color:var(--ink);border:none;display:inline-flex;align-items:baseline;gap:.05em}.brand .dot{color:var(--accent)}.nav{display:flex;align-items:center;gap:1.5rem}.nav a{border:none;font-size:var(--step-small);color:var(--muted);font-weight:500}.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}.site-footer{border-top:1px solid var(--line);padding-block:2.5rem;color:var(--muted);font-size:var(--step-small)}.site-footer .row{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:baseline;justify-content:space-between}.site-footer a{border:none;color:var(--muted)}.site-footer a:hover{color:var(--accent-ink)}.grid{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:3px;overflow:hidden}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.cell{background:var(--paper);padding:1.75rem;min-width:0}.cell h3{font-size:var(--step-h3);margin-bottom:.5rem;letter-spacing:-.01em}.cell p{color:var(--muted);font-size:.9375rem}.cell .num{font-family:var(--font-mono);font-size:var(--step-label);color:var(--accent-ink);display:block;margin-bottom:.9rem}.card-link{border:none;display:block;background:var(--paper);padding:1.75rem;min-width:0}.card-link:hover{background:var(--paper-2)}.card-link h3{color:var(--ink)}.card-link .go{color:var(--accent-ink);font-size:var(--step-small);font-weight:500;margin-top:1rem;display:inline-block}@media(max-width:46rem){.grid-3,.grid-2{grid-template-columns:1fr}}.hero{padding-block:clamp(4rem,12vw,9rem) clamp(3rem,8vw,6rem)}.hero h1{font-size:var(--step-hero);letter-spacing:-.035em;line-height:.98;max-width:16ch}.hero .tagline{font-size:clamp(1.25rem,2.4vw,1.75rem);font-weight:400;color:var(--muted);letter-spacing:-.01em;margin-top:1.5rem;max-width:32ch}.sample-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2.5rem;align-items:start}.sample-grid figure{margin:0;min-width:0}.sample-grid figcaption{font-size:var(--step-label);text-transform:uppercase;letter-spacing:.1em;color:var(--faint);margin-bottom:.6rem}@media(max-width:52rem){.sample-grid{grid-template-columns:1fr}}.stack-sm>*+*{margin-top:1rem}.section-head{max-width:var(--measure);margin-bottom:2.5rem}.section-head h2{font-size:var(--step-h2)}.section-head p{color:var(--muted);margin-top:.9rem}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:1px}::selection{background:color-mix(in srgb,var(--accent) 22%,transparent)}.lineage{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:2.25rem}.lineage .step{background:var(--paper);padding:.55rem .95rem;font-size:var(--step-small);color:var(--muted);white-space:nowrap}.lineage .step.now{color:var(--accent-ink);font-weight:500}.lineage .arrow{color:var(--faint);font-size:var(--step-small)}.standards-list{list-style:none;margin:0 0 2.25rem;padding:0;max-width:var(--measure)}.standards-list li{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;padding:.85rem 0;border-bottom:1px solid var(--line)}.standards-list li:first-child{border-top:1px solid var(--line)}.standards-list a{flex:0 0 11rem;font-weight:500}.standards-list span{flex:1 1 20rem;color:var(--muted);font-size:.9375rem}
