:root{--paper:#fffcf5;--bg:#f6f2e8;--ink:#163238;--green:#214e46;--orange:#a44729;--rule:#d6d8cb;--muted:#53645f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--orange)}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}button,select{min-height:44px}button{cursor:pointer;border:1px solid var(--green);padding:9px 16px;color:var(--paper);background:var(--green)}button.secondary{background:transparent;color:var(--green)}button:disabled{opacity:.5;cursor:default}.skip{position:absolute;left:-10000px}.skip:focus{left:15px;top:15px;background:white;z-index:10;padding:10px}.c-header,.c-main,.c-footer{max-width:1200px;margin:auto;padding:24px 40px}.c-header{display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--rule)}.c-brand{display:flex;align-items:center;gap:16px;font-size:12px;text-decoration:none}.c-brand img{width:60px;height:auto}.c-nav{display:flex;gap:22px;flex-wrap:wrap;font-size:13px}.c-hero{padding:55px 0 40px;display:grid;grid-template-columns:1.15fr 1fr;gap:46px;align-items:center}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12;margin:12px 0 20px;letter-spacing:-.025em}h1{font-size:clamp(44px,5.8vw,76px)}h1 em{color:var(--orange);font-style:normal}h2{font-size:clamp(30px,4vw,46px)}h3{font-size:25px}p{margin:12px 0}.kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:bold;color:var(--orange)}.lead{font-size:20px;line-height:1.55;max-width:65ch}.small{font-size:13px;color:var(--muted)}.state{display:inline-block;border:1px solid var(--rule);padding:5px 12px;font-size:12px;color:var(--green)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.button-link{display:inline-flex;align-items:center;padding:10px 20px;background:var(--green);color:var(--paper);text-decoration:none;min-height:44px}.button-link:hover{color:white;background:var(--ink)}.hero-art{background:var(--green);padding:24px;border-radius:2px;color:var(--paper)}.hero-art svg{display:block;width:100%;height:auto}.hero-art p{font-size:12px;color:#dce9df;margin-top:20px}.chapter-nav{display:flex;gap:20px;padding:18px 0;border-block:1px solid var(--rule);flex-wrap:wrap;font-size:13px}.c-section{padding:60px 0;border-bottom:1px solid var(--rule)}.two{display:grid;grid-template-columns:1fr 1fr;gap:32px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.callout{border-left:3px solid var(--orange);padding:18px 22px;background:#efebdf;margin:24px 0}.label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:bold;color:var(--green)}.paper{padding:24px;background:var(--paper);border:1px solid var(--rule)}.lab{background:#e7ecdf;border:1px solid #c1cec0;padding:28px;margin:24px 0}.toolbar{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.toolbar label{display:flex;flex-direction:column;font-size:13px;gap:6px}.toolbar select{padding:8px;border:1px solid var(--green);background:var(--paper);color:var(--ink)}.formula{font:17px/1.9 'Courier New',monospace;overflow-wrap:anywhere;padding:20px 0}.assignment{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0}.assignment button{min-width:60px}.assignment button[aria-pressed="false"]{background:var(--paper);color:var(--ink)}.clause-list{display:grid;gap:8px}.clause{padding:8px 12px;background:var(--paper);border-left:4px solid var(--orange);font-size:14px}.clause.pass{border-color:var(--green)}.candidate-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:5px;margin:20px 0}.candidate{border:1px solid #b8c4b5;background:var(--paper);color:var(--muted);font:11px/1.2 monospace;padding:8px 2px;min-height:36px}.candidate.checked{background:#e4cebf;color:#69351f}.candidate.solution{background:var(--green);color:white}.candidate.current{outline:2px solid var(--ink);outline-offset:1px}.metrics{display:flex;flex-wrap:wrap;gap:22px;margin:18px 0}.metric strong{font:32px Georgia,serif;display:block}.metric span{font-size:12px}.result{min-height:3.5em;font-weight:bold}.growth-bars{margin:24px 0}.growth-row{margin:15px 0}.growth-row div{height:18px;background:var(--green);min-width:2px;transition:width .3s}.growth-row.exp div{background:var(--orange)}.growth-row span{font-size:13px;display:block;margin-bottom:5px}input[type=range]{width:100%;accent-color:var(--green)}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--rule);padding:14px 10px}th{color:var(--green)}.table-wrap{overflow-x:auto}details{border-top:1px solid var(--rule);padding:18px 0}summary{cursor:pointer;font-weight:bold}blockquote{border-left:2px solid var(--green);margin:20px 0;padding-left:20px;font-family:Georgia,serif;font-size:22px}.sources{padding-left:24px}.sources li{margin-bottom:12px}.sources a{overflow-wrap:anywhere}.c-footer{display:flex;justify-content:space-between;gap:20px;font-size:12px}.badge{display:inline-block;font-size:11px;text-transform:uppercase;padding:3px 7px;background:#e7ecdf;margin-bottom:10px}.debate{border-top:3px solid var(--green)}.debate.alt{border-color:var(--orange)}video{width:100%;height:auto;background:var(--green);display:block}.video-frame{margin-top:24px}.mini-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:24px}.profile{max-width:850px;padding-top:55px}.profile h1{font-size:clamp(42px,6vw,68px)}.profile .c-section{padding:35px 0}.code{font:14px/1.8 monospace;white-space:pre-wrap;overflow-wrap:anywhere}.noscript{padding:18px;background:#f1decc}.claim-check{max-width:70ch}.hero-art .pulse{animation:pulse 3s ease-in-out infinite}@keyframes pulse{50%{opacity:.4}}@media(max-width:760px){.c-header,.c-main,.c-footer{padding:18px 20px}.c-header{align-items:flex-start}.c-brand span{display:none}.c-nav{gap:12px}.c-hero,.two,.three{grid-template-columns:1fr;gap:25px}.c-hero{padding:35px 0}.hero-art{max-width:540px}.c-section{padding:40px 0}.lab{padding:18px}.toolbar{align-items:stretch}.toolbar label{width:100%}.candidate-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.candidate{font-size:9px}.c-footer{flex-direction:column}.chapter-nav{gap:12px}.lead{font-size:18px}th,td{padding:10px 7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
