:root { --ink:#111; --muted:#595959; --line:#c9c9c9; --paper:#fff; }
* { box-sizing:border-box; } body { margin:0; color:var(--ink); background:var(--paper); font-family:Arial,Helvetica,sans-serif; } a { color:inherit; }
.skip-link { position:fixed; top:8px; left:8px; z-index:9; padding:10px; background:white; transform:translateY(-150%); }.skip-link:focus { transform:none; }
header { min-height:68px; display:flex; justify-content:space-between; align-items:center; padding:0 max(24px,calc((100vw - 1120px)/2)); border-bottom:1px solid var(--line); }.wordmark { font-weight:900; letter-spacing:.08em; text-decoration:none; }.wordmark span { color:#65429b; } header nav { display:flex; gap:22px; font-size:.82rem; }
.hero,.plain-language,.concepts,.boundary,.figures { width:min(1120px,calc(100% - 40px)); margin:0 auto; padding:90px 0; }.hero { min-height:76vh; display:flex; flex-direction:column; justify-content:center; }.eyebrow { margin:0 0 14px; font-size:.7rem; font-weight:900; letter-spacing:.16em; }.hero h1 { max-width:1050px; margin:0; font-size:clamp(2.7rem,7vw,6.5rem); line-height:.92; letter-spacing:-.055em; }.hero p { max-width:800px; margin:28px 0 0; color:var(--muted); font-size:1.05rem; line-height:1.65; }
h2 { max-width:900px; margin:0 0 24px; font-size:clamp(2.1rem,5vw,4.6rem); line-height:1; letter-spacing:-.045em; }.plain-language>p:not(.eyebrow),.boundary>p:not(.eyebrow) { max-width:800px; color:var(--muted); font-size:1.05rem; line-height:1.65; }
.figures { border-top:1px solid var(--line); }.figures figure { margin:42px 0 0; padding:28px; border:1px solid var(--line); background:#fff; }.figures figcaption { margin-bottom:22px; font-size:.78rem; font-weight:900; letter-spacing:.08em; }
.diagram { max-width:850px; margin:auto; color:#111; }.flow { display:flex; flex-direction:column; align-items:stretch; gap:8px; text-align:center; }.flow>span,.flow>strong,.ladder>span,.tether>span { padding:12px; border:1.5px solid #111; }.flow>i { font-style:normal; }.flow>strong { border-width:3px; }.branches { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }.branches span { padding:10px; border:1px solid #111; font-size:.8rem; }.table { display:grid; grid-template-columns:1fr 1.4fr; border:1px solid #111; }.table>* { padding:9px; border-right:1px solid #111; border-bottom:1px solid #111; font-size:.83rem; }.ladder { display:grid; gap:0; }.ladder span:nth-child(2) { margin-left:3%; }.ladder span:nth-child(3) { margin-left:6%; }.ladder span:nth-child(4) { margin-left:9%; }.ladder span:nth-child(5) { margin-left:12%; }.ladder span:nth-child(6) { margin-left:15%; }.diagram small { display:block; margin-top:18px; line-height:1.5; }.tether { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:14px; text-align:center; }.tether b { padding:8px; border-top:3px solid #111; border-bottom:3px solid #111; }.tether small { grid-column:1/-1; text-align:left; }
.concepts { border-top:1px solid var(--line); }.concept-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }.concept-grid article { padding:24px; background:white; }.concept-grid h3 { margin-top:0; }.concept-grid p { color:var(--muted); line-height:1.55; }.boundary { border-top:1px solid var(--line); }
@media (max-width:720px) { header nav a:first-child { display:none; }.hero,.plain-language,.concepts,.boundary,.figures { padding:64px 0; }.figures figure { padding:18px 12px; }.concept-grid { grid-template-columns:1fr; }.branches { grid-template-columns:1fr 1fr; }.tether { grid-template-columns:1fr; }.tether small { grid-column:auto; }.table>* { font-size:.72rem; padding:7px; } }
