:root{--ink:#191919;--paper:#f0eadc;--white:#fffdf6;--navy:#17304c;--red:#d8422f;--amber:#e5a927;--blue:#4d8fa6;--muted:#6d6a63;--line:rgba(25,25,25,.24);--display:"Arial Narrow","Avenir Next Condensed","Helvetica Neue",sans-serif;--body:"Avenir Next",Avenir,"Segoe UI",sans-serif;--mono:"SFMono-Regular",Consolas,monospace;--max:1220px;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:1rem/1.68 var(--body)}img{display:block;max-width:100%}a{color:inherit;text-underline-offset:.2em}a:hover{color:var(--red)}button{font:inherit}:focus-visible{outline:3px solid var(--red);outline-offset:4px}.skip-link{position:fixed;z-index:100;top:1rem;left:1rem;padding:.7rem 1rem;color:white;background:var(--navy);transform:translateY(-200%)}.skip-link:focus{transform:none}.wrap{width:min(calc(100% - 3rem),var(--max));margin-inline:auto}.narrow{width:min(calc(100% - 2rem),790px);margin-inline:auto}
.site-header{position:relative;z-index:30;border-bottom:2px solid var(--ink);background:rgba(240,234,220,.98)}.header-row{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:.8rem;color:var(--ink);font:900 1.05rem var(--display);letter-spacing:-.03em;text-decoration:none;text-transform:uppercase}.brand:hover{color:var(--red)}.rail-mark{position:relative;width:46px;height:46px;border:3px solid var(--ink);background:var(--amber)}.rail-mark::before{position:absolute;left:9px;right:9px;top:5px;height:22px;border:3px solid var(--ink);border-bottom:0;background:var(--white);content:""}.rail-mark::after{position:absolute;left:7px;right:7px;bottom:6px;height:4px;background:var(--red);box-shadow:0 -8px 0 var(--ink);content:""}.brand small{display:block;margin-top:.15rem;color:var(--muted);font:650 .55rem var(--mono);letter-spacing:.12em}.site-nav{display:flex;gap:.1rem}.site-nav a{padding:.62rem .72rem;border:1px solid transparent;font:800 .66rem var(--mono);text-decoration:none;text-transform:uppercase}.site-nav a:hover,.site-nav a[aria-current="page"]{color:white;border-color:var(--ink);background:var(--red)}.menu-button{display:none;padding:.55rem .8rem;border:2px solid var(--ink);color:var(--ink);background:var(--amber);font-weight:850}
.kicker{margin:0 0 1rem;color:var(--red);font:850 .68rem var(--mono);letter-spacing:.14em;text-transform:uppercase}h1,h2,h3{margin:0;font-family:var(--display);font-weight:900;line-height:.94;letter-spacing:-.055em;text-transform:uppercase}h1{font-size:clamp(4.2rem,9vw,9.2rem)}h2{font-size:clamp(2.5rem,5.3vw,5.2rem)}h3{font-size:clamp(1.55rem,2.4vw,2.25rem)}p{margin:0 0 1.15rem}.lead{max-width:760px;color:var(--muted);font:1.18rem/1.58 var(--body)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1.05rem;border:2px solid var(--ink);color:white;background:var(--navy);font-weight:900;text-decoration:none;text-transform:uppercase}.button:hover{color:white;background:var(--red)}.button.light{color:var(--ink);background:transparent}.button.light:hover{color:white}.button.red{background:var(--red)}
.hero{position:relative;padding:clamp(3rem,6vw,6rem) 0;border-bottom:2px solid var(--ink);overflow:hidden;background:linear-gradient(90deg,var(--paper) 0 51%,var(--amber) 51%)}.hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,5vw,5rem);align-items:center}.hero-copy{position:relative;z-index:2}.hero h1 span{display:block;color:var(--red)}.hero-copy .lead{margin-top:1.4rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem}.hero-visual{position:relative;border:2px solid var(--ink);background:var(--white)}.hero-visual img{width:100%;height:610px;object-fit:cover;filter:saturate(.78) contrast(1.04)}.ticket{position:absolute;left:-2rem;bottom:2rem;width:255px;padding:1rem;border:2px solid var(--ink);background:var(--white);box-shadow:8px 8px 0 var(--red);font:.67rem/1.55 var(--mono);text-transform:uppercase}.ticket::before{display:block;margin-bottom:.6rem;padding-bottom:.5rem;border-bottom:1px dashed var(--ink);color:var(--red);font-weight:900;content:"FIELD TICKET / 01"}.ticket b{display:block;color:var(--navy)}
.board{border-bottom:2px solid var(--ink);background:var(--navy);color:white}.board-grid{display:grid;grid-template-columns:repeat(4,1fr)}.board-grid div{padding:1rem;border-right:1px solid rgba(255,255,255,.35)}.board-grid div:last-child{border-right:0}.board-grid b{display:block;color:var(--amber);font:900 1.1rem var(--mono)}.board-grid span{font:.62rem var(--mono);text-transform:uppercase}.section{padding:clamp(4.5rem,9vw,8.5rem) 0;border-bottom:2px solid var(--ink)}.section.white{background:var(--white)}.section.navy{color:white;background:var(--navy)}.section.red{color:white;background:var(--red)}.section-head{display:grid;grid-template-columns:1fr .55fr;gap:3rem;align-items:end;margin-bottom:2.7rem}.section-head>p{margin:0;color:var(--muted)}.navy .section-head>p{color:#c4ced8}.navy .kicker{color:var(--amber)}
.note-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}.note-card{grid-column:span 6;display:grid;grid-template-rows:260px 1fr;min-height:490px;border:2px solid var(--ink);background:var(--white)}.note-card picture{overflow:hidden}.note-card picture img{width:100%;height:100%;object-fit:cover;filter:grayscale(.12) saturate(.8);transition:transform .5s var(--ease),filter .4s var(--ease)}.note-card:hover img{transform:scale(1.025);filter:none}.note-copy{display:grid;grid-template-columns:80px 1fr;gap:1.1rem;padding:1.25rem}.note-number{display:grid;place-items:center;height:70px;border:2px solid var(--ink);color:white;background:var(--red);font:900 1.1rem var(--mono)}.note-meta{color:var(--muted);font:700 .62rem var(--mono);text-transform:uppercase}.note-card h3{margin:.45rem 0 .75rem}.note-card h3 a{text-decoration:none}.note-card p{color:var(--muted)}.read-link{color:var(--red);font:900 .68rem var(--mono);text-transform:uppercase}
.sequence{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(2rem,7vw,7rem);align-items:start}.route-strip{position:sticky;top:2rem;min-height:560px;border:2px solid rgba(255,255,255,.45);background:repeating-linear-gradient(0deg,transparent 0 49px,rgba(255,255,255,.08) 49px 50px)}.route-strip::before{position:absolute;left:50%;top:8%;bottom:8%;width:6px;background:var(--amber);content:""}.route-strip i{position:absolute;left:calc(50% - 14px);width:34px;height:34px;border:6px solid var(--amber);border-radius:50%;background:var(--navy)}.route-strip i:nth-child(1){top:13%}.route-strip i:nth-child(2){top:39%}.route-strip i:nth-child(3){top:65%}.route-strip i:nth-child(4){top:84%}.route-strip span{position:absolute;left:1rem;bottom:1rem;color:#b8c8d8;font:.67rem/1.5 var(--mono);text-transform:uppercase}.sequence-step{display:grid;grid-template-columns:74px 1fr;gap:1rem;padding:1.7rem 0;border-top:1px solid rgba(255,255,255,.3)}.sequence-step>span{color:var(--amber);font:900 1.35rem var(--mono)}.sequence-step p{margin:.6rem 0 0;color:#c6d1dc}
.page-hero{padding:clamp(4rem,8vw,7.5rem) 0 3.8rem;border-bottom:2px solid var(--ink);background:linear-gradient(135deg,var(--amber) 0 22%,var(--paper) 22%)}.page-hero .lead{margin-top:1.2rem}.breadcrumbs{margin-bottom:2rem;color:var(--muted);font:.65rem var(--mono);text-transform:uppercase}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}.breadcrumbs li+li::before{margin-right:.45rem;color:var(--red);content:"//"}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:clamp(2rem,7vw,6rem);align-items:start}.article-main{min-width:0}.article-main .lead{margin:1.25rem 0}.article-meta{display:flex;flex-wrap:wrap;gap:.6rem 1.3rem;margin:1.3rem 0;color:var(--muted);font:.65rem var(--mono);text-transform:uppercase}.article-image{margin:2rem 0 2.5rem;border:2px solid var(--ink);background:var(--white)}.article-image img{width:100%;max-height:700px;object-fit:cover}.image-credit{margin:0;padding:.7rem;color:var(--muted);font:.65rem/1.55 var(--mono)}.prose{font:1.05rem/1.84 var(--body)}.prose h2{margin:3rem 0 1rem;font-size:clamp(2.1rem,3.7vw,3.35rem)}.prose h3{margin:2rem 0 .7rem;font-size:1.55rem}.prose a{color:var(--red);font-weight:800}.prose ul,.prose ol{padding-left:1.35rem}.platform-note{margin:2rem 0;padding:1.25rem;border:2px solid var(--ink);background:var(--amber);font-size:.92rem}.platform-note h3{margin:0 0 .7rem;font:900 .7rem var(--mono);letter-spacing:.04em}.article-aside{position:sticky;top:2rem;border:2px solid var(--ink);background:var(--white)}.article-aside h2{padding:.85rem;color:white;background:var(--red);font:900 .7rem var(--mono);letter-spacing:.04em}.article-aside ul{margin:0;padding:0 1rem;list-style:none}.article-aside li{padding:.75rem 0;border-top:1px solid var(--line);font-size:.85rem}.article-aside p{margin:0;padding:1rem;color:var(--muted);font-size:.79rem}
.split-feature{display:grid;grid-template-columns:1.1fr .9fr;border:2px solid var(--ink);background:var(--white)}.split-feature picture img{width:100%;height:100%;min-height:470px;object-fit:cover}.split-copy{padding:clamp(2rem,5vw,4.5rem)}.split-copy h2{margin-bottom:1rem}.split-copy p{color:var(--muted)}.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.practice-card{min-height:255px;padding:1.25rem;border:2px solid var(--ink);background:var(--white)}.practice-card b{display:block;margin-bottom:2rem;color:var(--red);font:800 .68rem var(--mono)}.practice-card p{color:var(--muted)}.source-list{margin:2rem 0;padding:0;list-style:none}.source-list li{padding:1rem 0;border-top:1px solid var(--line)}.source-list strong{display:block;font:900 1.12rem var(--display);text-transform:uppercase}.source-list span{color:var(--muted);font-size:.85rem}.legal h2{margin:2.7rem 0 .8rem;font-size:2rem}.legal p,.legal li{color:var(--muted)}.lost{min-height:66vh;display:grid;place-items:center;text-align:center}.lost .lead{margin:1.3rem auto 2rem}.center{justify-content:center}
.site-footer{padding:4.2rem 0 1.4rem;color:white;background:var(--ink)}.site-footer .brand{color:white}.site-footer .rail-mark{border-color:white}.site-footer .brand small{color:#aaa}.footer-grid{display:grid;grid-template-columns:1.2fr .6fr .6fr;gap:2rem}.footer-intro{max-width:430px;margin-top:1rem;color:#c2c2c2}.footer-title{margin-bottom:.8rem;color:var(--amber);font:.66rem var(--mono);text-transform:uppercase}.footer-links{margin:0;padding:0;list-style:none}.footer-links li{margin:.45rem 0}.footer-links a{color:white;font-size:.87rem}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1rem;border-top:1px solid #555;color:#999;font:.63rem var(--mono);text-transform:uppercase}.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}.js .reveal.is-visible{opacity:1;transform:none}
@media(max-width:900px){.menu-button{display:inline-flex}.site-nav{position:absolute;left:1.5rem;right:1.5rem;top:calc(100% + 2px);display:none;padding:.8rem;border:2px solid var(--ink);background:var(--paper)}.site-nav.is-open{display:grid}.site-nav a{display:block}.hero{background:linear-gradient(180deg,var(--paper) 0 48%,var(--amber) 48%)}.hero-grid,.section-head,.sequence,.article-layout,.split-feature{grid-template-columns:1fr}.hero-copy{max-width:780px}.hero-visual{max-width:800px}.route-strip,.article-aside{position:relative;top:auto}.route-strip{min-height:420px}.practice-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.note-card{grid-column:span 12}}
@media(max-width:620px){.wrap,.narrow{width:min(calc(100% - 1.25rem),var(--max))}.header-row{min-height:70px}.brand{font-size:.9rem}.rail-mark{width:40px;height:40px}.hero{padding-top:2.8rem}.hero-visual img{height:460px}.ticket{left:.8rem;right:.8rem;width:auto;bottom:1rem}.board-grid{grid-template-columns:1fr 1fr}.board-grid div:nth-child(2){border-right:0}.board-grid div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.35)}.note-card{grid-template-rows:230px 1fr}.note-copy{grid-template-columns:58px 1fr}.note-number{height:54px}.practice-grid,.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
