@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');

:root{--ink:#17231f;--green:#173f38;--green-2:#27695c;--mint:#b8d8cb;--cream:#f4f0e7;--paper:#fcfbf7;--orange:#e56e3f;--line:rgba(23,35,31,.15);--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--mono:'DM Mono',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit}button{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:100;left:1rem;top:1rem;padding:.65rem 1rem;background:var(--ink);color:#fff;transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,4vw,4.5rem);border-bottom:1px solid var(--line);background:rgba(252,251,247,.88);backdrop-filter:blur(14px);position:relative;z-index:20}.wordmark{display:flex;align-items:center;gap:.65rem;text-decoration:none;font-weight:600;letter-spacing:-.02em}.wordmark-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff;font-family:var(--serif);font-size:1.35rem}.site-nav{display:flex;align-items:center;gap:2rem}.site-nav a{text-decoration:none;font-size:.9rem}.site-nav a:not(.nav-cta):hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{border:1px solid var(--ink);border-radius:99px;padding:.65rem 1rem}.nav-cta:hover{background:var(--ink);color:#fff}.menu-button{display:none;background:none;border:0;padding:.5rem}.menu-button span:not(.sr-only){display:block;width:24px;height:1px;background:var(--ink);margin:6px}
.hero{min-height:calc(100vh - 84px);display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);overflow:hidden}.hero-copy{padding:clamp(5rem,9vw,9rem) clamp(2rem,7vw,8rem);padding-right:3rem}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:600;color:var(--green-2);margin:0 0 1.25rem}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(4.2rem,7.4vw,8.2rem);line-height:.86;letter-spacing:-.055em;margin:0;max-width:780px}.hero h1 em{font-size:.46em;color:var(--orange);font-weight:400}.hero h1 .amp{color:var(--green-2)}.subtitle{font-family:var(--serif);font-size:clamp(1.15rem,1.65vw,1.55rem);line-height:1.4;max-width:650px;margin:2.4rem 0 1rem}.authors{font-size:.92rem;font-weight:600}.authors span{font-family:var(--serif);font-style:italic;font-weight:400;color:#65716c;margin:0 .35rem}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2.25rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.85rem 1.2rem;border-radius:3px;text-decoration:none;font-weight:600;font-size:.9rem;transition:.2s ease}.button-primary{background:var(--green);color:#fff}.button-primary:hover{background:var(--green-2);transform:translateY(-2px)}.button-secondary{border:1px solid var(--line)}.button-secondary:hover{border-color:var(--ink);background:#fff}
.hero-visual{position:relative;background:var(--green);display:grid;place-items:center;min-height:660px;overflow:hidden}.hero-art{margin:0;width:100%;height:100%;position:absolute;inset:0}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,31,25,.18),transparent 35%),linear-gradient(0deg,rgba(8,31,25,.28),transparent 32%)}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-art figcaption{position:absolute;z-index:2;left:1.5rem;bottom:1.2rem;color:rgba(255,255,255,.72);font-family:var(--mono);font-size:.6rem;letter-spacing:.06em;text-transform:uppercase}.model-chip{position:absolute;z-index:3;right:7%;top:9%;background:var(--orange);color:#fff;font-family:var(--mono);padding:.75rem 1rem;box-shadow:0 10px 25px rgba(0,0,0,.2);transform:rotate(2deg)}.model-chip span{font-size:1.2rem}
.section{padding:clamp(5rem,9vw,9rem) clamp(1.5rem,7vw,8rem)}.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1.05fr .8fr;gap:8vw;align-items:end;border-bottom:1px solid var(--line);padding-bottom:4rem}.intro h2,.code-copy h2,.contents h2,.resource-card h2{font-family:var(--serif);font-size:clamp(2.7rem,4.6vw,5.1rem);font-weight:400;letter-spacing:-.045em;line-height:1.02;margin:0}.intro-grid>p{font-size:1.08rem;margin:0;max-width:560px}.question-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:4rem}.question-grid article{padding:1rem clamp(1rem,3vw,3rem) 0;border-right:1px solid var(--line);min-height:230px;position:relative;overflow:hidden}.question-grid article:first-child{padding-left:0}.question-grid article:last-child{border:0}.question-number{font-family:var(--mono);font-size:.7rem;color:var(--green-2)}.question-grid h3{font-family:var(--serif);font-size:2rem;font-weight:400;margin:1.2rem 0 .45rem}.question-grid p{font-size:.92rem;max-width:300px;color:#4f5d57}.mini-line{position:absolute;bottom:6px;left:0;right:15%;height:40px;border-top:2px solid var(--orange);transform:skewY(-6deg);opacity:.65}.predictive{border-radius:50% 70% 0 0;border-top-color:var(--green-2);transform:skewY(3deg)}.causal{border-top-color:#a98c3e;transform:skewY(-2deg)}
.code-bridge{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center;background:#dce8e2}.code-copy>p:not(.section-kicker){max-width:520px;margin:2rem 0}.language-tags{display:flex;gap:1rem}.language-tags span{display:flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.r-dot{background:#27695c}.py-dot{background:#e6a93c}.code-window{background:#18231f;color:#e8ede9;box-shadow:0 30px 60px rgba(23,63,56,.18);min-width:0}.window-bar{height:48px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;padding:0 1rem;gap:.45rem}.window-bar span{width:8px;height:8px;border-radius:50%;background:#64706b}.window-bar span:first-child{background:#e56e3f}.window-bar strong{font-family:var(--mono);font-size:.67rem;font-weight:400;margin-left:auto;color:#94a099}.code-tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.1)}.code-tabs button{background:none;color:#93a29b;border:0;border-bottom:2px solid transparent;padding:.75rem 1.4rem;font-family:var(--mono);font-size:.75rem;cursor:pointer}.code-tabs button[aria-selected=true]{color:#fff;border-bottom-color:var(--orange)}pre{margin:0;padding:2.2rem;overflow:auto;min-height:210px;font-family:var(--mono);font-size:clamp(.72rem,1.1vw,.9rem);line-height:1.9}.comment{color:#7e9188}.operator{color:#f19a73}.function{color:#8ed3bb}.string{color:#f2cb76}
.contents{background:var(--paper)}.contents-heading{display:grid;grid-template-columns:1fr .65fr;gap:7vw;align-items:end;margin-bottom:5rem}.contents-heading>p{max-width:520px;margin:0;color:#52605a}.chapter-groups{border-top:1px solid var(--ink)}.chapter-group{display:grid;grid-template-columns:.28fr 1fr;border-bottom:1px solid var(--line);padding:2.7rem 0}.group-label{text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:600}.group-label span{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;margin-right:.65rem}.chapter-list{margin:0;padding:0;list-style:none;counter-reset:item var(--list-start,0)}.chapter-list[start="1"]{--list-start:0}.chapter-list[start="5"]{--list-start:4}.chapter-list[start="10"]{--list-start:9}.chapter-list li{counter-increment:item;display:grid;grid-template-columns:2.5rem 1fr;align-items:center;min-height:52px;border-bottom:1px dotted var(--line)}.chapter-list li:last-child{border:0}.chapter-list li:before{content:counter(item,decimal-leading-zero);font-family:var(--mono);font-size:.7rem;color:#829089}.chapter-list a,.chapter-list li>span{display:flex;justify-content:space-between;align-items:center;gap:1rem;text-decoration:none;padding:.7rem 0}.chapter-list a:hover span{color:var(--orange)}.chapter-list small{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:#7b8983;white-space:nowrap}
.resources{display:grid;grid-template-columns:1.35fr .65fr;gap:1rem;background:var(--cream);padding-top:0}.resource-card{padding:clamp(2rem,5vw,5rem);min-height:460px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between}.primary-resource{background:var(--green);color:#fff}.primary-resource .section-kicker{color:var(--mint)}.primary-resource p:not(.section-kicker){max-width:620px;color:#c5d5ce}.button-light{background:#fff;color:var(--green)}.button-light:hover{background:var(--mint);transform:translateY(-2px)}.scope-card{background:#f4c76d;justify-content:flex-start}.scope-icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(23,35,31,.4);border-radius:50%;font-size:2rem}.scope-card h3{font-family:var(--serif);font-weight:400;font-size:2rem;line-height:1.1;margin:3rem 0 1rem}.scope-card p{font-size:.9rem}
footer{background:#111b17;color:#dae3df;padding:4rem clamp(1.5rem,7vw,8rem) 2rem}.footer-title{font-family:var(--serif);font-size:clamp(2rem,4vw,4.2rem)}footer>p{color:#87958e}.footer-meta{border-top:1px solid rgba(255,255,255,.13);margin-top:3rem;padding-top:1.5rem;display:flex;justify-content:space-between;font-size:.75rem;color:#87958e}.footer-meta a{color:#dae3df;text-decoration:none}
@media(max-width:900px){.site-header{height:70px}.menu-button{display:block}.site-nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:1.5rem;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.site-nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding-right:2rem}.hero-visual{min-height:600px}.intro-grid,.contents-heading{grid-template-columns:1fr;gap:2rem}.question-grid{grid-template-columns:1fr}.question-grid article{border-right:0;border-bottom:1px solid var(--line);padding:2rem 0;min-height:190px}.code-bridge{grid-template-columns:1fr}.chapter-group{grid-template-columns:1fr;gap:1.5rem}.resources{grid-template-columns:1fr}.resource-card{min-height:390px}}
@media(max-width:560px){.hero h1{font-size:3.8rem}.hero-copy{padding:4.5rem 1.4rem}.hero-visual{min-height:470px}.hero-art img{object-position:62% center}.model-chip{right:1rem}.section{padding:4.5rem 1.4rem}.chapter-list a,.chapter-list li>span{align-items:flex-start;flex-direction:column;gap:.1rem}.chapter-list small{white-space:normal}.resources{padding-top:0}.resource-card{padding:2rem}.footer-meta{flex-direction:column;gap:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Selected chapter reader */
.reading-banner{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.25rem 1.5rem;background:#f2c465;text-decoration:none;margin:-2rem 0 4rem;font-size:.88rem}.reading-banner strong{display:inline-block;background:var(--ink);color:#fff;border-radius:99px;padding:.15rem .55rem;margin-right:.55rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.reading-banner b{font-size:1.2rem;margin-left:.6rem}.reading-progress{position:fixed;z-index:100;top:0;left:0;right:0;height:3px}.reading-progress span{display:block;width:100%;height:100%;background:var(--orange);transform:scaleX(0);transform-origin:left}.reading-header{position:sticky;top:0}.reader-hero{min-height:72vh;padding:clamp(5rem,10vw,10rem) clamp(1.5rem,8vw,9rem);display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.reader-hero h1{font-family:var(--serif);font-size:clamp(4rem,8vw,8.5rem);font-weight:400;line-height:.82;letter-spacing:-.06em;margin:0}.reader-hero h1 em{color:var(--orange);font-weight:400}.reader-hero>div>p:last-child{max-width:620px;font-size:1.05rem;margin-top:2rem}.reader-map{position:relative;height:420px;background:var(--green);overflow:hidden}.reader-map:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(229,110,63,.3),transparent 18%),radial-gradient(circle at 80% 20%,rgba(184,216,203,.22),transparent 20%)}.reader-map svg{position:absolute;inset:10%;width:80%;height:80%;overflow:visible}.reader-map path{fill:none;stroke:#f2c465;stroke-width:3}.reader-map circle{fill:var(--paper);stroke:var(--orange);stroke-width:4}.map-point{position:absolute;z-index:2;color:#fff;font-family:var(--mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}.p1{left:7%;bottom:10%}.p2{left:47%;top:44%}.p3{right:5%;top:8%}.lesson-index{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin:0 clamp(1.5rem,8vw,9rem) 8rem}.lesson-index a{padding:2rem;border-right:1px solid var(--line);display:grid;grid-template-columns:2rem 1fr;text-decoration:none}.lesson-index a:last-child{border:0}.lesson-index span{font-family:var(--mono);font-size:.7rem;color:var(--orange)}.lesson-index strong{font-family:var(--serif);font-size:1.5rem;font-weight:400}.lesson-index small{grid-column:2;color:#6e7a75}.web-lesson{scroll-margin-top:80px}.lesson-title{padding:clamp(5rem,9vw,9rem) clamp(1.5rem,8vw,9rem);display:grid;grid-template-columns:1.4fr .6fr;gap:8vw;align-items:end}.lesson-number,.concept-label{font-family:var(--mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;margin:0 0 1rem}.lesson-title h2{font-family:var(--serif);font-weight:400;font-size:clamp(4rem,8vw,8.5rem);letter-spacing:-.06em;line-height:.82;margin:0}.lesson-title>p{font-family:var(--serif);font-size:1.35rem;line-height:1.45}.lesson-coral .lesson-title{background:#e77b50}.lesson-mint .lesson-title{background:#b8d8cb}.lesson-gold .lesson-title{background:#f2c465}.lesson-grid{padding:clamp(5rem,8vw,8rem) clamp(1.5rem,8vw,9rem);display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:center}.lesson-grid.reverse{grid-template-columns:1.2fr .8fr}.lesson-grid.reverse .lesson-copy{order:2}.lesson-copy h3,.formula-stage h3,.ovb-section h3,.code-intro h3,.selection-card h3,.reader-end h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,4.5vw,5rem);line-height:1;letter-spacing:-.04em;margin:.5rem 0 1.5rem}.lesson-copy>p:not(.concept-label){font-size:1.05rem}.insight{border-left:3px solid var(--orange);padding:1rem 0 1rem 1.3rem;display:grid;gap:.35rem;margin-top:2rem}.insight strong{text-transform:uppercase;letter-spacing:.1em;font-size:.67rem}.insight span{font-family:var(--serif);font-size:1.1rem}.concept-visual{min-height:430px;position:relative;background:var(--cream);overflow:hidden}.scatter-visual{background-image:linear-gradient(rgba(23,63,56,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(23,63,56,.09) 1px,transparent 1px);background-size:60px 60px}.scatter-visual span{position:absolute;left:var(--x);top:var(--y);width:14px;height:14px;background:var(--green);border-radius:50%;transform:translate(-50%,-50%)}.scatter-visual i{position:absolute;width:120%;height:4px;background:var(--orange);left:-10%;top:52%;transform:rotate(-31deg)}.scatter-visual b,.scatter-visual em,.plane-visual span,.plane-visual b,.plane-visual em{position:absolute;font-family:var(--serif);font-size:1.3rem}.scatter-visual b{right:1rem;bottom:.5rem}.scatter-visual em{left:1rem;top:.5rem}.formula-stage{padding:clamp(5rem,8vw,8rem) clamp(1.5rem,8vw,9rem);display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;background:#dce8e2;align-items:center}.formula-card{background:var(--paper);padding:clamp(1.5rem,4vw,4rem);text-align:center;font-family:var(--serif);font-size:clamp(1rem,1.5vw,1.25rem);overflow-x:auto}.formula-card small{text-transform:uppercase;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em}.formula-card hr{border:0;border-top:1px solid var(--line);margin:2rem}.takeaway-row{display:grid;grid-template-columns:repeat(3,1fr);padding:5rem clamp(1.5rem,8vw,9rem);background:var(--green);color:#fff}.takeaway-row div{border-right:1px solid rgba(255,255,255,.18);padding:0 2rem}.takeaway-row div:last-child{border:0}.takeaway-row span{font-family:var(--serif);font-size:4rem;color:#f2c465}.takeaway-row p{max-width:250px;color:#c8d8d1}.code-pair{padding:clamp(5rem,8vw,8rem) clamp(1.5rem,8vw,9rem);display:grid;grid-template-columns:.65fr 1.35fr;gap:8vw;align-items:center}.code-intro>a,.did-stage a{font-size:.8rem;font-weight:600;text-underline-offset:4px}.mini-code{background:#18231f;color:#e7eee9}.mini-code>div{display:grid;grid-template-columns:70px 1fr;border-bottom:1px solid rgba(255,255,255,.12)}.mini-code>div:last-child{border:0}.mini-code strong{padding:2rem 1rem;text-align:center;border-right:1px solid rgba(255,255,255,.12);color:#f2c465}.mini-code pre{min-height:auto;padding:1.7rem;font-size:.75rem;white-space:pre-wrap}.plane-visual{background:var(--green);perspective:700px}.plane{position:absolute;width:70%;height:60%;left:15%;top:20%;background:linear-gradient(135deg,rgba(184,216,203,.9),rgba(242,196,101,.55));transform:rotateX(63deg) rotateZ(-17deg);box-shadow:0 30px 50px rgba(0,0,0,.25)}.plane-visual i{position:absolute;width:70%;height:2px;background:var(--orange);left:15%;top:35%;transform:rotate(-15deg)}.plane-visual i:nth-of-type(2){top:50%}.plane-visual i:nth-of-type(3){top:65%}.plane-visual span{right:8%;bottom:8%;color:#fff}.plane-visual b{left:8%;bottom:8%;color:#fff}.plane-visual em{left:8%;top:8%;color:#fff}.dark-formula{background:#17231f;color:#fff}.dark-formula .formula-card{color:var(--ink)}.ovb-section{padding:clamp(5rem,8vw,8rem) clamp(1.5rem,8vw,9rem);background:var(--cream)}.ovb-title{display:grid;grid-template-columns:.5fr 1fr;align-items:end}.bias-path{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin:4rem 0;flex-wrap:wrap}.bias-path span{background:#fff;border:1px solid var(--line);padding:1.2rem 1.6rem}.bias-path i{color:var(--orange);font-family:var(--serif)}.ovb-section>p{max-width:780px;margin-left:auto}.counterfactual-stage{padding:7rem clamp(1.5rem,8vw,9rem);display:grid;grid-template-columns:100px 1fr 1fr;gap:2rem;align-items:center;background:var(--green);color:#fff}.person-mark{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:var(--orange);font-family:var(--serif);font-size:2.4rem}.outcome{padding:3rem;border:1px solid rgba(255,255,255,.18);display:grid}.outcome small{text-transform:uppercase;letter-spacing:.12em;font-size:.6rem}.outcome strong{font-family:var(--serif);font-size:4rem;font-weight:400}.outcome span{color:#b8c9c2}.outcome.missing{border-style:dashed;opacity:.63}.brace{grid-column:2/4;text-align:center;color:#f2c465}.principles{display:grid;grid-template-columns:1fr 1fr}.principles div{min-height:150px;border:1px solid var(--line);padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between}.principles span{font-family:var(--mono);font-size:.65rem;color:var(--orange)}.principles strong{font-family:var(--serif);font-size:1.2rem;font-weight:400}.selection-card{padding:clamp(5rem,8vw,8rem) clamp(1.5rem,8vw,9rem);display:grid;grid-template-columns:.7fr 1.3fr;gap:6vw;background:#df8057}.selection-card .formula-card{align-self:center}.design-grid{padding:0 clamp(1.5rem,8vw,9rem) 8rem;display:grid;grid-template-columns:repeat(4,1fr);background:#df8057}.design-grid article{padding:2rem;border:1px solid rgba(23,35,31,.22);border-right:0;background:rgba(255,255,255,.08)}.design-grid article:last-child{border-right:1px solid rgba(23,35,31,.22)}.design-grid span{font-family:var(--mono);font-size:.7rem}.design-grid h3{font-family:var(--serif);font-weight:400;font-size:1.45rem;line-height:1.1}.design-grid p{font-size:.85rem}.did-stage{background:#f0e6cc}.formula-caption{font-family:var(--sans);font-size:.9rem}.reader-end{text-align:center;padding:10rem 1.5rem}.reader-end p{max-width:620px;margin:1.5rem auto 2rem}.reader-end .eyebrow{margin-bottom:1.5rem}
@media(max-width:900px){.reader-hero,.lesson-title,.lesson-grid,.lesson-grid.reverse,.formula-stage,.code-pair,.selection-card{grid-template-columns:1fr}.reader-map{height:330px}.lesson-index{grid-template-columns:1fr;margin-bottom:5rem}.lesson-index a{border-right:0;border-bottom:1px solid var(--line)}.lesson-index a:last-child{border:0}.lesson-grid.reverse .lesson-copy{order:0}.lesson-title>p{max-width:600px}.takeaway-row,.design-grid{grid-template-columns:1fr 1fr}.takeaway-row div:nth-child(2){border-right:0}.counterfactual-stage{grid-template-columns:70px 1fr}.counterfactual-stage .missing{grid-column:2}.brace{grid-column:2}.ovb-title{grid-template-columns:1fr}.reading-banner{margin-top:0}}
@media(max-width:560px){.reader-hero{min-height:auto;padding-top:5rem}.reader-hero h1,.lesson-title h2{font-size:3.8rem}.reader-map{height:270px}.lesson-index{margin-left:1.4rem;margin-right:1.4rem}.takeaway-row,.design-grid,.principles{grid-template-columns:1fr}.takeaway-row div{border-right:0;border-bottom:1px solid rgba(255,255,255,.18);padding:1.4rem 0}.design-grid article{border-right:1px solid rgba(23,35,31,.22);border-bottom:0}.counterfactual-stage{grid-template-columns:1fr}.person-mark{margin:auto}.counterfactual-stage .missing,.brace{grid-column:1}.outcome{text-align:center}.mini-code>div{grid-template-columns:1fr}.mini-code strong{border-right:0;border-bottom:1px solid rgba(255,255,255,.12);text-align:left}.reading-banner{align-items:flex-start;flex-direction:column;gap:.75rem}}

/* Home learning map */
.hero-stats{display:flex;gap:1.5rem;margin-top:2.2rem;padding-top:1.4rem;border-top:1px solid var(--line);max-width:640px}.hero-stats span{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:#6a7771}.hero-stats b{font-family:var(--serif);font-size:1.2rem;font-weight:400;color:var(--ink);margin-right:.25rem;text-transform:none;letter-spacing:0}.featured-lessons{background:#15241f;color:#fff}.featured-heading{display:grid;grid-template-columns:1fr .65fr;gap:7vw;align-items:end;margin-bottom:4rem}.featured-heading h2{font-family:var(--serif);font-size:clamp(2.7rem,4.6vw,5.1rem);font-weight:400;letter-spacing:-.045em;line-height:1.02;margin:0}.featured-heading>p{color:#afc1b9}.featured-lessons .section-kicker{color:var(--mint)}.lesson-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.lesson-card{min-height:430px;padding:2rem;display:flex;flex-direction:column;text-decoration:none;color:var(--ink);transition:transform .2s ease}.lesson-card:hover{transform:translateY(-6px)}.lesson-card>span{font-family:var(--mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.1em}.lesson-card h3{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem,3.2vw,3.8rem);line-height:.95;margin:3.5rem 0 1rem}.lesson-card p{max-width:270px;font-size:.88rem}.lesson-card b{margin-top:auto;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.card-coral{background:#e77b50}.card-mint{background:#b8d8cb}.card-gold{background:#f2c465}
@media(max-width:900px){.featured-heading{grid-template-columns:1fr;gap:2rem}.lesson-cards{grid-template-columns:1fr}.lesson-card{min-height:330px}}
@media(max-width:560px){.hero-stats{flex-direction:column;gap:.5rem}}

/* Code and QR explorer */
.code-hero{min-height:76vh;padding:clamp(5rem,9vw,9rem) clamp(1.5rem,8vw,9rem);display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center;background:#e77b50}.code-hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(4rem,7.5vw,8rem);line-height:.83;letter-spacing:-.06em;margin:0}.code-hero h1 em{color:var(--paper);font-weight:400}.code-hero>div>p:not(.eyebrow){max-width:550px;font-size:1.05rem}.code-metrics{display:flex;gap:1.5rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(23,35,31,.2)}.code-metrics span{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.code-metrics b{font-family:var(--serif);font-size:1.5rem;font-weight:400;margin-right:.25rem}.hero-terminal{background:#17231f;color:#e8eee9;box-shadow:0 30px 70px rgba(23,35,31,.25)}.terminal-top{height:50px;display:flex;align-items:center;gap:.5rem;padding:0 1rem;border-bottom:1px solid rgba(255,255,255,.12)}.terminal-top i{width:8px;height:8px;border-radius:50%;background:#66736d}.terminal-top i:first-child{background:var(--orange)}.terminal-top span{margin-left:auto;font:400 .65rem var(--mono);color:#8c9993}.hero-terminal pre{min-height:310px}.terminal-result{padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.12);font:400 .67rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:#a9b6b0}.terminal-result span{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8ed3bb;margin-right:.5rem}.qr-intro{display:grid;grid-template-columns:1fr .65fr;gap:8vw;align-items:end}.qr-intro h2,.code-index-head h2{font:400 clamp(2.8rem,5vw,5.4rem)/.98 var(--serif);letter-spacing:-.045em;margin:0}.qr-intro>p{max-width:570px;margin:0}.featured-code{padding:0 clamp(1.5rem,8vw,9rem) 8rem}.code-feature{border-top:1px solid var(--ink);padding:5rem 0}.code-feature>header{display:grid;grid-template-columns:.25fr .75fr 1fr;gap:2rem;align-items:end;margin-bottom:3rem}.code-feature>header>span{font:400 .67rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--orange)}.code-feature>header h2{font:400 clamp(2rem,3.6vw,4rem)/1 var(--serif);letter-spacing:-.04em;margin:0}.code-feature>header p{margin:0;max-width:520px}.code-feature-body{display:grid;grid-template-columns:1fr 260px;gap:1rem}.paired-source{background:#17231f;color:#e6ede9}.paired-source>div{display:grid;grid-template-columns:72px 1fr;border-bottom:1px solid rgba(255,255,255,.12)}.paired-source>div:last-child{border:0}.paired-source strong{padding:2rem 1rem;border-right:1px solid rgba(255,255,255,.12);color:#f2c465;text-align:center}.paired-source pre{min-height:auto;padding:1.8rem;font-size:.73rem;white-space:pre-wrap}.qr-pair{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.qr-pair a{display:flex;flex-direction:column;justify-content:center;background:var(--cream);padding:.8rem;text-align:center;text-decoration:none}.qr-pair img{width:100%;height:auto;display:block}.qr-pair span{font-size:.65rem;font-weight:600;margin-top:.6rem}.feature-mint>header>span{color:var(--green-2)}.feature-gold>header>span{color:#9b751a}.code-index{background:#dce8e2}.code-index-head{display:grid;grid-template-columns:1fr .65fr;gap:7vw;align-items:end;margin-bottom:4rem}.code-search{display:grid;grid-template-columns:1fr auto;gap:.6rem}.code-search label{grid-column:1/3;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}.code-search input{background:var(--paper);border:1px solid var(--ink);padding:.9rem 1rem;font:400 .9rem var(--sans);min-width:0}.code-search span{align-self:center;font:400 .68rem var(--mono)}.code-module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(23,35,31,.22);border:1px solid rgba(23,35,31,.22)}.code-module{background:var(--paper);padding:2rem;min-height:270px;display:flex;flex-direction:column}.code-module[hidden]{display:none}.code-module>span{font:400 .65rem var(--mono);color:var(--orange);text-transform:uppercase;letter-spacing:.08em}.code-module h3{font:400 1.65rem/1.1 var(--serif);margin:2rem 0 .6rem}.code-module p{font-size:.82rem;color:#5c6964}.code-module>div{display:flex;gap:.5rem;margin-top:auto}.code-module a{border:1px solid var(--line);padding:.5rem .65rem;font-size:.68rem;text-decoration:none}.code-module a:hover{background:var(--green);color:#fff}
@media(max-width:900px){.code-hero,.qr-intro,.code-index-head{grid-template-columns:1fr}.code-feature>header{grid-template-columns:1fr}.code-feature-body{grid-template-columns:1fr}.qr-pair{max-width:340px}.code-module-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.code-hero h1{font-size:3.8rem}.code-metrics{flex-direction:column;gap:.5rem}.hero-terminal pre{min-height:auto}.code-module-grid{grid-template-columns:1fr}.paired-source>div{grid-template-columns:1fr}.paired-source strong{border-right:0;border-bottom:1px solid rgba(255,255,255,.12);text-align:left}.qr-pair{max-width:none}.code-search{grid-template-columns:1fr}.code-search label{grid-column:1}.code-search span{display:none}}
.code-hero>*,.code-feature-body>*,.paired-source{min-width:0}

/* Full fourteen-chapter map */
.full-chapter-map{padding:2rem clamp(1.5rem,8vw,9rem) 9rem;scroll-margin-top:80px}.map-heading{display:grid;grid-template-columns:1fr .6fr;gap:8vw;align-items:end;margin-bottom:5rem}.map-heading h2,.notes-heading h2{font:400 clamp(2.8rem,5vw,5.6rem)/.96 var(--serif);letter-spacing:-.05em;margin:0}.map-heading>p{max-width:500px}.chapter-band{display:grid;grid-template-columns:50px 1fr auto;align-items:center;border-top:1px solid var(--ink);padding:1.35rem 0;margin-top:4rem}.chapter-band>span{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;font:400 .7rem var(--mono)}.chapter-band strong{text-transform:uppercase;letter-spacing:.1em;font-size:.73rem}.chapter-band small{font:400 .65rem var(--mono);color:#74817b}.overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.overview-grid.five-grid{grid-template-columns:repeat(5,1fr)}.overview-grid.three-grid{grid-template-columns:repeat(3,1fr)}.overview-grid.two-grid{grid-template-columns:repeat(2,1fr)}.chapter-overview{background:var(--paper);padding:1.7rem;min-height:360px;display:flex;flex-direction:column}.chapter-overview>span{font:400 .7rem var(--mono);color:var(--orange)}.chapter-overview h3{font:400 1.65rem/1.05 var(--serif);margin:2rem 0 .8rem}.chapter-overview p{font-size:.82rem;color:#53615b}.chapter-overview ul{list-style:none;padding:0;margin:1rem 0}.chapter-overview li{font-size:.72rem;padding:.28rem 0;border-bottom:1px dotted var(--line)}.chapter-overview a,.chapter-overview>small{margin-top:auto;font-size:.67rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;text-underline-offset:4px}.featured-overview{background:#dce8e2}.featured-overview:nth-child(odd){background:#f2c465}.concept-notes{padding:8rem clamp(1.5rem,8vw,9rem);background:#17231f;color:#fff;scroll-margin-top:80px}.notes-heading{display:grid;grid-template-columns:.25fr .75fr 1fr;gap:2rem;align-items:end;margin-bottom:5rem}.notes-heading .section-kicker{color:var(--mint)}.notes-heading p:last-child{color:#aebdb6}.concept-note{display:grid;grid-template-columns:60px 1fr 1fr;gap:3rem;align-items:center;padding:3.5rem 0;border-top:1px solid rgba(255,255,255,.15);scroll-margin-top:90px}.concept-note>span{font:400 .72rem var(--mono);color:#f2c465}.concept-note h3{font:400 clamp(1.7rem,2.8vw,3rem)/1 var(--serif);margin:0 0 1rem}.concept-note p{color:#bdcbc5}.note-equation{background:rgba(255,255,255,.06);padding:2rem;text-align:center;overflow-x:auto}.note-equation small{font-size:.68rem;color:#aebdb6}.bandwidth-visual{height:180px;position:relative;background:rgba(255,255,255,.06);overflow:hidden}.bandwidth-visual i{position:absolute;left:8%;right:8%;top:52%;height:2px;background:#f2c465;transform:skewY(-9deg)}.bandwidth-visual i:nth-child(2){top:44%;background:var(--orange);transform:skewY(4deg);border-radius:50%}.bandwidth-visual span{position:absolute;bottom:1rem;font:400 .6rem var(--mono);text-transform:uppercase;letter-spacing:.08em}.bandwidth-visual span:nth-of-type(1){left:1rem}.bandwidth-visual span:nth-of-type(2){right:1rem}
@media(max-width:1100px){.overview-grid.five-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.map-heading,.notes-heading{grid-template-columns:1fr}.overview-grid,.overview-grid.five-grid,.overview-grid.three-grid{grid-template-columns:repeat(2,1fr)}.concept-note{grid-template-columns:40px 1fr}.concept-note>:last-child{grid-column:2}.chapter-overview{min-height:330px}}
@media(max-width:560px){.overview-grid,.overview-grid.five-grid,.overview-grid.three-grid,.overview-grid.two-grid{grid-template-columns:1fr}.chapter-band{grid-template-columns:42px 1fr}.chapter-band small{display:none}.concept-note{grid-template-columns:1fr;gap:1rem}.concept-note>:last-child{grid-column:1}.chapter-overview{min-height:300px}}
