@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Newsreader:opsz,wght@6..72,400;6..72,500&display=swap');
:root{--paper:#f2f0e9;--sheet:#fbfaf5;--ink:#20231f;--muted:#656b64;--line:#aeb2a8;--accent:#c65f3e;--green:#4c6656;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,select,textarea{font:inherit}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.site-shell{max-width:1280px;margin:auto;padding:0 44px}.site-nav{min-height:75px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ink)}.wordmark{text-decoration:none;font-family:'DM Mono',monospace;font-weight:500;font-size:1.18rem;letter-spacing:-.08em}.wordmark-divider{color:var(--accent);padding:0 3px}.nav-note,.eyebrow,.index-marker,.section-line>span,.entry-number,.entry-facts dt,.site-footer,.micro{font-family:'DM Mono',monospace;font-size:.73rem;letter-spacing:.055em}.nav-note,.index-marker,.section-line>span,.entry-number span,.entry-facts dt,.site-footer{color:var(--muted)}.eyebrow{font-weight:500;color:var(--green);text-transform:uppercase}.index-intro{position:relative;padding:75px 0 88px;max-width:780px}.index-marker{position:absolute;right:0;top:83px}.index-intro h1{font-family:'Newsreader',Georgia,serif;font-size:clamp(4rem,9.5vw,8.8rem);font-weight:400;letter-spacing:-.065em;line-height:.9;margin:24px 0}.period{color:var(--accent)}.index-intro>p:last-child{max-width:575px;font-size:1.12rem;line-height:1.6;color:#3e443e;margin:0}
.section-line{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--ink);padding:16px 0 22px}.section-line h2{font:500 .78rem 'DM Mono',monospace;letter-spacing:.06em;text-transform:uppercase;margin:0}.project-entry{display:grid;grid-template-columns:70px minmax(240px,.82fr) minmax(300px,1fr);gap:22px;border-top:1px solid var(--line);padding:28px 0 36px}.entry-number{padding-top:5px}.entry-figure{margin:0;background:#e9e7de;min-height:285px;display:grid;place-items:center;overflow:hidden}.fishing-entry .entry-figure{background:#e5ebe3}.entry-figure svg{display:block;width:100%;max-width:340px;stroke-linecap:round;stroke-linejoin:round}.entry-figure svg text{font:10px 'DM Mono',monospace;fill:var(--muted);letter-spacing:.05em}.diagram-faint{fill:none;stroke:#bbc0b7;stroke-width:1}.diagram-ink{fill:none;stroke:#292f29;stroke-width:2.4}.diagram-ink-fill{fill:#292f29}.diagram-accent{fill:var(--accent);stroke:none}.diagram-dash{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-dasharray:4 6}.entry-content{padding:5px 14px 0 14px;display:flex;flex-direction:column;align-items:flex-start}.entry-content .eyebrow{margin:0}.entry-content h3{font:400 clamp(2.1rem,4vw,3.65rem) 'Newsreader',Georgia,serif;letter-spacing:-.045em;margin:18px 0 14px;line-height:1}.entry-content>p:not(.eyebrow){line-height:1.6;color:#424942;max-width:470px;margin:0}.entry-facts{width:100%;max-width:470px;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin:27px 0 30px;padding-top:13px;gap:12px}.entry-facts div{min-width:0}.entry-facts dt{text-transform:uppercase}.entry-facts dd{font-size:.88rem;margin:6px 0 0}.text-link{font:500 .79rem 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:5px}.text-link span{color:var(--accent);font-size:1rem}.text-link:hover{color:var(--accent)}
.site-footer{border-top:1px solid var(--ink);padding:22px 0 36px;display:flex;justify-content:space-between;gap:15px;margin-top:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.project-hero{padding:72px 0 55px;border-bottom:1px solid var(--ink)}.project-hero h1,.lesson-intro h1{font:400 clamp(3rem,7vw,6.6rem) 'Newsreader',Georgia,serif;letter-spacing:-.055em;line-height:.95;margin:20px 0}.project-hero .lede,.lesson-intro .lede{font-size:1.14rem;line-height:1.65;max-width:680px;color:#414940}.project-columns{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);gap:50px;padding:45px 0;border-bottom:1px solid var(--line)}.project-columns h2,.lesson-content h2{font:400 2.1rem 'Newsreader',Georgia,serif;letter-spacing:-.03em;margin:0 0 16px}.project-columns p,.project-columns li,.lesson-content p,.lesson-content li{line-height:1.7;color:#414940}.project-columns ol{padding-left:20px;margin:0}.project-columns li{padding-left:6px;margin-bottom:10px}.project-side{border-left:1px solid var(--line);padding-left:25px}.project-side dl{margin:0}.project-side div{padding:10px 0;border-bottom:1px solid var(--line)}.project-side dt{font:400 .72rem 'DM Mono',monospace;text-transform:uppercase;color:var(--muted)}.project-side dd{margin:5px 0 0}.study-section{padding:46px 0 65px}.study-link{display:grid;grid-template-columns:65px 1fr auto;gap:18px;align-items:center;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);text-decoration:none;padding:22px 4px}.study-link strong{font:400 1.8rem 'Newsreader',Georgia,serif}.study-link:hover{color:var(--accent)}.study-link .micro{color:var(--muted)}.study-link .arrow{font-size:1.45rem;color:var(--accent)}
@media(max-width:850px){.project-entry{grid-template-columns:50px minmax(190px,.8fr) 1fr;gap:14px}.entry-figure{min-height:250px}.entry-content{padding-right:0}.project-columns{gap:25px}}@media(max-width:660px){.site-shell{padding:0 20px}.site-nav{min-height:62px}.nav-note{font-size:.63rem}.index-intro{padding:61px 0 66px}.index-marker{display:none}.index-intro h1{font-size:clamp(3.8rem,17vw,6rem)}.project-entry{grid-template-columns:1fr;gap:15px;padding:22px 0 37px}.entry-figure{min-height:220px}.entry-content{padding:4px 0 0}.entry-content h3{margin:10px 0 12px}.entry-facts{margin:18px 0 22px}.project-columns{grid-template-columns:1fr;gap:18px}.project-side{border-left:0;border-top:1px solid var(--line);padding:17px 0 0}.study-link{grid-template-columns:40px 1fr 15px}.study-link strong{font-size:1.4rem}.site-footer{font-size:.65rem}}
