:root{--forest:#16352f;--green:#315e50;--cream:#f4efdf;--paper:#fffdf6;--orange:#ef6b3d;--lime:#c6d563;--blue:#2f5c78;--ink:#17221f;--muted:#66726c;--line:rgba(23,34,31,.17);--grid:rgba(22,53,47,.08);--sans:Arial,Helvetica,sans-serif;--mono:"SFMono-Regular",Consolas,monospace;--serif:"Iowan Old Style",Georgia,serif;--shell:min(1260px,calc(100% - 48px))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.65 var(--sans)}img{display:block;max-width:100%}a{color:inherit;text-underline-offset:4px}.skip{position:fixed;top:-80px;left:12px;z-index:100;padding:10px;background:#fff}.skip:focus{top:10px}
.topbar{position:sticky;top:0;z-index:40;min-height:82px;display:grid;grid-template-columns:310px 1fr auto;align-items:center;gap:24px;padding:12px max(24px,calc((100vw - 1260px)/2));color:#fff;background:var(--forest);border-bottom:1px solid #ffffff26}.logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}.logo>span{display:grid;width:45px;height:45px;place-items:center;color:var(--forest);background:var(--lime);border-radius:50%;font:900 13px var(--mono)}.logo b{font:900 17px/1 var(--sans);letter-spacing:-.03em}.logo small{margin-left:7px;color:#ffffff7d;font:700 8px var(--mono);letter-spacing:.13em}.topbar nav{display:flex;justify-content:flex-end;gap:8px}.topbar nav a,.about-link{padding:8px 10px;color:#dce9df;font:700 10px var(--mono);text-decoration:none;border:1px solid transparent}.topbar nav a:hover,.about-link:hover{color:var(--forest);background:var(--lime)}.about-link{border-color:#ffffff49}.menu{display:none;color:#fff;background:none;border:1px solid #ffffff66;padding:7px 12px}
.hero{position:relative;min-height:820px;display:grid;grid-template-columns:1fr 1fr;background:var(--paper);overflow:hidden}.map-grid{position:absolute;inset:0;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:34px 34px;pointer-events:none}.hero-copy{position:relative;z-index:1;align-self:center;padding:105px 5vw 100px max(24px,calc((100vw - 1260px)/2))}.overline,.section-code{color:var(--orange);font:800 10px var(--mono);letter-spacing:.14em}.hero h1,.manual-hero h1,.info-hero h1{margin:25px 0;font:500 clamp(62px,7vw,104px)/.9 var(--serif);letter-spacing:-.055em}.hero h1 em{color:var(--green);font-weight:500}.lede{max-width:700px;font:400 22px/1.5 var(--serif)}.route-link{display:inline-block;margin-top:25px;color:var(--forest);font:900 11px var(--mono);text-decoration:none;text-transform:uppercase}.hero figure{position:relative;margin:0;min-height:820px;background:var(--forest)}.hero figure img{width:100%;height:100%;object-fit:cover}.hero figcaption{position:absolute;right:16px;bottom:16px;padding:9px 12px;color:#fff;background:#16352fdd;font:700 9px var(--mono)}.hero>aside{position:absolute;z-index:2;left:calc(50% - 110px);bottom:28px;width:220px;padding:18px;background:var(--lime);border:2px solid var(--forest);box-shadow:8px 8px 0 var(--forest)}.hero>aside b,.hero>aside span{display:block;font:800 10px/1.8 var(--mono)}
.route-strip{display:grid;grid-template-columns:repeat(6,1fr);color:#fff;background:var(--forest)}.route-strip a{min-height:105px;padding:18px;border-right:1px solid #ffffff28;text-decoration:none}.route-strip b,.route-strip span,.route-strip small{display:block}.route-strip b{color:var(--lime);font:800 11px var(--mono)}.route-strip span{margin:15px 0 3px;font-weight:800}.route-strip small{color:#ffffff83}
.section{padding:110px max(24px,calc((100vw - 1260px)/2))}.section>header{display:grid;grid-template-columns:210px 1fr;gap:40px;margin-bottom:50px}.section h2,.closing h2{max-width:900px;margin:0;font:500 clamp(45px,5vw,72px)/1 var(--serif);letter-spacing:-.045em}.intro{display:grid;grid-template-columns:210px 1fr}.intro>div{display:grid;grid-template-columns:1.3fr .7fr;gap:50px}.intro p:last-child{margin:0;color:var(--muted);font-size:18px}
.guides{background:var(--paper)}.guide-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:22px}.guide-card{grid-column:span 4;padding:14px 14px 25px;background:var(--cream);border:1px solid var(--line)}.guide-card:nth-child(1),.guide-card:nth-child(6){grid-column:span 8}.guide-card>a:first-child{display:block;height:360px;overflow:hidden}.guide-card:nth-child(1)>a:first-child,.guide-card:nth-child(6)>a:first-child{height:500px}.guide-card img{width:100%;height:100%;object-fit:cover}.guide-code{display:flex;justify-content:space-between;margin-top:16px;color:var(--orange);font:800 9px var(--mono)}.guide-card h2{margin:15px 0 8px;font-size:35px}.guide-card h2 a{text-decoration:none}.guide-card .mode{color:var(--green);font:800 10px var(--mono);text-transform:uppercase}.guide-card>p:not(.mode){color:var(--muted);font-size:13px}
.dark{color:#fff;background:var(--forest)}.dark .section-code{color:var(--lime)}.rule-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff3b;border-left:1px solid #ffffff3b}.rule-grid article{min-height:250px;padding:22px;border-right:1px solid #ffffff3b;border-bottom:1px solid #ffffff3b}.rule-grid span{color:var(--orange);font:800 10px var(--mono)}.rule-grid h3{margin:55px 0 12px;font:500 25px var(--serif)}.rule-grid p{color:#d6dfda9c;font-size:12px}.rule-grid b{color:var(--lime);font:800 8px var(--mono)}
.visual-log{background:var(--cream)}.visual-log figure{display:grid;grid-template-columns:1fr 350px;gap:32px;margin:0;padding:28px 0;border-top:1px solid var(--line)}.visual-log img{width:100%;height:540px;object-fit:cover}.visual-log figcaption{display:flex;flex-direction:column;justify-content:flex-end}.visual-log figcaption>b{color:var(--orange);font:800 10px var(--mono)}.visual-log h3{margin:15px 0 4px;font:500 34px var(--serif)}.visual-log figcaption p{color:var(--muted)}.visual-log figcaption a{color:var(--green);font:800 10px var(--mono)}
.checklist{background:var(--lime)}.checklist>div{display:grid;grid-template-columns:repeat(5,1fr);border-top:2px solid var(--forest);border-left:2px solid var(--forest)}.checklist article{min-height:210px;padding:18px;border-right:2px solid var(--forest);border-bottom:2px solid var(--forest)}.checklist span{font:800 9px var(--mono)}.checklist h3{margin:42px 0 10px;font:500 21px var(--serif)}.checklist p{font-size:11px}.timeboard{color:#fff;background:var(--blue)}.timeboard>div{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ffffff55}.timeboard article{min-height:280px;padding:28px;background:var(--blue)}.timeboard b{color:var(--lime);font:800 12px var(--mono)}.timeboard h3{margin:90px 0 10px;font:500 31px var(--serif)}.timeboard p{color:#ffffffa3}.closing{padding:140px max(24px,calc((100vw - 1260px)/2));background:var(--orange)}
.manual-hero{display:grid;grid-template-columns:1fr 1fr;background:var(--paper)}.manual-hero>div{padding:100px 5vw 80px max(24px,calc((100vw - 1260px)/2))}.manual-hero figure{position:relative;min-height:690px;margin:0;background:var(--forest)}.manual-hero figure img{width:100%;height:100%;object-fit:cover}.manual-hero figcaption{position:absolute;right:16px;bottom:16px;padding:9px;color:#fff;background:#16352fdd;font:700 9px var(--mono)}.manual-hero dl{display:grid;grid-template-columns:repeat(3,1fr);margin-top:40px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.manual-hero dl>div{padding:15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.manual-hero dt{font:800 8px var(--mono);color:var(--muted)}.manual-hero dd{margin:5px 0 0;font:500 18px var(--serif)}
.manual-layout{width:var(--shell);display:grid;grid-template-columns:230px minmax(0,820px);gap:75px;justify-content:center;margin:0 auto;padding:95px 0}.manual-layout>aside{position:sticky;top:110px;align-self:start;padding:18px;border:1px solid var(--line);background:var(--paper)}.manual-layout aside b{display:block;margin-bottom:14px;font:800 9px var(--mono)}.manual-layout aside a{display:block;margin:9px 0;color:var(--muted);font:700 10px var(--mono);text-decoration:none}.standfirst,.stage-intro{font:400 23px/1.5 var(--serif)}.stage{padding:75px 0;border-bottom:1px solid var(--line);scroll-margin-top:100px}.stage-code{color:var(--orange);font:800 9px var(--mono);letter-spacing:.13em}.stage h2,.field-card>h2,.source-box h2{margin:10px 0 24px;font:500 52px/1 var(--serif);letter-spacing:-.04em}.stage-command{display:grid;grid-template-columns:90px 1fr;margin:28px 0;padding:20px;color:#fff;background:var(--green)}.stage-command b{color:var(--lime);font:800 9px var(--mono)}.stage-command p{margin:0}.stage-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:30px 0}.stage-grid article{min-height:170px;padding:20px;background:var(--paper);border:1px solid var(--line)}.stage-grid span{display:grid;width:30px;height:30px;place-items:center;color:#fff;background:var(--orange);border-radius:50%;font:800 10px var(--mono)}.stage-grid h3{margin:25px 0 7px;font:500 24px var(--serif)}.stage-grid p{color:var(--muted);font-size:12px}.stage>h3{font:500 28px var(--serif)}.stage blockquote{margin:32px 0;padding:24px;background:var(--lime);border-left:7px solid var(--orange)}.stage blockquote b{font:800 9px var(--mono)}.stage blockquote p{font:400 20px var(--serif)}
.field-card{padding:60px 0}.field-card>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-card article{padding:20px;background:var(--paper);border:1px solid var(--line)}.field-card span{font:800 9px var(--mono);color:var(--orange)}.field-card h3{font:500 23px var(--serif)}.field-card p{color:var(--muted);letter-spacing:.08em}.source-box{margin-top:50px;padding:35px;background:var(--paper);border-top:6px solid var(--green)}.next-routes{padding:100px max(24px,calc((100vw - 1260px)/2));color:#fff;background:var(--forest)}.next-routes>div{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff44}.next-routes a{min-height:190px;display:flex;flex-direction:column;padding:23px;background:var(--forest);text-decoration:none}.next-routes b{color:var(--lime);font:800 10px var(--mono)}.next-routes h3{margin:auto 0 8px;font:500 27px var(--serif)}.next-routes span{color:#ffffff8d}
.info-hero{padding:120px max(24px,calc((100vw - 900px)/2));background:var(--lime)}.info-copy{max-width:800px;margin:0 auto;padding:100px 24px}.info-copy h2{margin:60px 0 15px;font:500 42px var(--serif)}.info-copy p{color:var(--muted)}
footer{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:45px;padding:75px max(24px,calc((100vw - 1260px)/2));color:#ffffff9c;background:#0d2520}footer p{max-width:350px;font-size:12px}footer strong{display:block;margin-bottom:12px;color:var(--lime);font:800 9px var(--mono)}footer>div>a:not(.logo){display:block;margin:8px 0;font-size:11px;text-decoration:none}.copyright{grid-column:1/-1;padding-top:25px;border-top:1px solid #ffffff24}
@media(max-width:980px){.topbar{grid-template-columns:1fr auto auto}.menu{display:block}.topbar nav{display:none;grid-column:1/-1;flex-direction:column}.topbar nav[data-open]{display:flex}.hero,.manual-hero{grid-template-columns:1fr}.hero figure{min-height:500px}.hero>aside{left:auto;right:20px}.route-strip{grid-template-columns:repeat(3,1fr)}.intro{grid-template-columns:1fr}.intro>div{grid-template-columns:1fr}.section>header{grid-template-columns:1fr}.guide-card,.guide-card:nth-child(1),.guide-card:nth-child(6){grid-column:span 6}.rule-grid{grid-template-columns:1fr 1fr}.checklist>div{grid-template-columns:repeat(3,1fr)}.manual-layout{grid-template-columns:1fr}.manual-layout>aside{position:static}.visual-log figure{grid-template-columns:1fr}.next-routes>div{grid-template-columns:1fr}footer{grid-template-columns:1fr 1fr}}
@media(max-width:620px){:root{--shell:min(100% - 28px,1260px)}.topbar{padding:10px 14px}.logo small,.about-link{display:none}.hero-copy,.manual-hero>div{padding:75px 18px}.hero h1,.manual-hero h1,.info-hero h1{font-size:57px}.route-strip{grid-template-columns:1fr 1fr}.guide-grid{grid-template-columns:1fr}.guide-card,.guide-card:nth-child(1),.guide-card:nth-child(6){grid-column:auto}.guide-card>a:first-child,.guide-card:nth-child(1)>a:first-child,.guide-card:nth-child(6)>a:first-child{height:390px}.rule-grid,.checklist>div,.timeboard>div,.stage-grid,.field-card>div{grid-template-columns:1fr}.visual-log img,.manual-hero figure{height:420px}footer{grid-template-columns:1fr}.copyright{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
