:root{color-scheme:dark;--bg:#0e1b19;--panel:#192e29;--panel2:#263e36;--text:#f4f0dd;--muted:#bed2c4;--lime:#b9ed8c;--border:#4e6d60;--gold:#efd398}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at top right,#204734,transparent 56%),var(--bg);color:var(--text);font:16px/1.55 system-ui,sans-serif}a{color:var(--lime)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.skip{position:absolute;top:-90px;background:white;color:#111;padding:8px}.skip:focus{top:2px}header,main,footer{max-width:1200px;margin:auto;padding-left:23px;padding-right:23px}header{border-bottom:1px solid var(--border);padding-top:17px;padding-bottom:17px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px}header nav{display:flex;gap:17px;align-items:center;flex-wrap:wrap}header a{text-decoration:none}.logo{font-size:22px;letter-spacing:-.05em;color:var(--text);font-weight:800}.logo span{color:var(--lime)}.logo small{font-size:10px;letter-spacing:.13em;display:block;color:var(--muted)}header nav a{font-size:13px;color:var(--muted)}section{padding:70px 0;border-bottom:1px solid var(--border)}.hero{padding:92px 0}.kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--lime);font-weight:750}.hero h1{font-size:clamp(2.8rem,7vw,6.3rem);letter-spacing:-.065em;line-height:1.04;margin:15px 0 30px}.hero h1 em{font-style:normal;color:var(--lime)}h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.11;letter-spacing:-.05em;max-width:900px}h3{font-size:1.5rem;line-height:1.22;margin:8px 0}p{max-width:800px}strong{font-weight:780}.lede{font-size:1.3rem;color:#d6e3ce}.warning,.gate{border-left:3px solid var(--gold);padding:12px 20px;background:var(--panel);font-size:14px;color:var(--muted)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:35px 0}.metrics div{padding:20px;background:var(--panel);border:1px solid var(--border)}.metrics strong{font-size:2rem;display:block;line-height:1.2}.metrics span{font-size:12px;color:var(--muted)}.buttons{display:flex;gap:10px;flex-wrap:wrap}.btn,.trailtabs button,.projects button{background:var(--panel2);border:1px solid var(--border);border-radius:6px;padding:10px 15px;color:var(--text);text-decoration:none;display:inline-block;text-align:left}.btn:hover,.trailtabs button:hover,.projects button:hover{border-color:var(--lime)}.btn.primary,.trailtabs button[aria-pressed=true],.projects button[aria-pressed=true]{background:var(--lime);color:#102316;border-color:var(--lime);font-weight:750}.trailtabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:25px 0}.trailtabs button{min-height:64px}.trailpanel,.detail{background:var(--panel);padding:24px;border:1px solid var(--border);border-radius:8px}.trailhead{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}.trailhead p{color:var(--muted)}.steps{display:flex;overflow-x:auto;gap:13px;padding:22px 0 28px;scroll-snap-type:x proximity}.steps button{flex:0 0 175px;padding:16px;text-align:left;background:var(--panel2);border:1px solid var(--border);color:var(--text);border-radius:6px;scroll-snap-align:start}.steps button:hover{border-color:var(--lime)}.steps button strong{display:block;font-size:15px}.steps button small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.steps button[aria-pressed=true]{border:2px solid var(--lime);padding:15px}.steps .arrow{color:var(--lime);align-self:center}.gate{margin-top:7px}.gate strong{color:var(--gold);font-size:11px;letter-spacing:.1em}.gate p{margin:4px 0 0}.filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:25px 0}.filters label{font-size:12px;color:var(--muted);font-weight:750}.filters input,.filters select{display:block;margin-top:6px;width:100%;border-radius:5px;border:1px solid var(--border);background:var(--panel);color:var(--text);padding:13px}.fine{font-size:12px;color:var(--muted)}.inventory-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:22px;align-items:start}.projects{display:grid;grid-template-columns:1fr 1fr;max-height:710px;overflow:auto;gap:8px;padding:3px}.projects button{padding:12px}.projects button strong{display:block}.projects button span{display:block;font-size:11px;margin-top:5px;color:var(--muted)}.projects button[aria-pressed=true] span{color:#214534}.detail{position:sticky;top:12px}.detail p{color:var(--muted)}.detail dl{display:grid;grid-template-columns:130px 1fr;gap:8px;font-size:13px;margin:22px 0}.detail dt{color:var(--lime)}.detail dd{margin:0}.detail .btn{margin-top:12px}.relations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.relation{padding:20px;background:var(--panel);border:1px solid var(--border)}.relation b{display:block;margin-bottom:8px}.relation p{font-size:13px;color:var(--muted)}.closing{padding-bottom:90px}footer{padding-top:24px;padding-bottom:40px;font-size:12px;color:var(--muted)}@media(max-width:850px){.trailtabs,.filters{grid-template-columns:repeat(2,1fr)}.inventory-grid{grid-template-columns:1fr}.detail{position:static}.projects{max-height:480px}.metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){header,main,footer{padding-left:17px;padding-right:17px}.hero{padding:55px 0}section{padding:48px 0}.trailtabs,.filters,.projects,.relations{grid-template-columns:1fr}.metrics div{padding:14px}.steps button{flex-basis:155px}}@media print{body{background:white;color:black}.btn,.trailtabs,.projects,header nav{display:none}.detail,.trailpanel,.relation,.metrics div{background:white;color:black}section{padding:20px 0}.metrics span,.fine,p{color:black!important}}
/* Keep long refs, admission labels and project paths within narrow phones. Trail steps alone may scroll horizontally. */
html,body{max-width:100%;overflow-x:clip}main,section,.trailpanel,.inventory-grid,.detail,.trailhead,.steps{min-width:0;max-width:100%}.detail dl{grid-template-columns:minmax(92px,35%) minmax(0,1fr)}.detail dd,.detail a,.relation,.projects button,.trailhead,.kicker{overflow-wrap:anywhere}.steps{overscroll-behavior-x:contain}
