:root{--ink:#161b1e;--paper:#f4f4ee;--red:#c72b20;--edge:clamp(1.25rem,5vw,6.25rem);font:100%/1.5 Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body,figure,h1,h2,p{margin:0}a{color:inherit}img{max-width:100%;display:block}a:focus-visible{outline:3px solid #036bd6;outline-offset:4px}.skip{position:absolute;z-index:5;transform:translateY(-150%);background:white;padding:1rem}.skip:focus{transform:none}
header,footer{display:flex;align-items:center;justify-content:space-between;padding:1rem var(--edge);gap:1rem}.brand,nav a,footer a,.action,.route-picker a,.shots a{text-decoration:none}.brand{display:flex;align-items:center;gap:.65rem;text-transform:uppercase;font-size:.91rem;letter-spacing:.065em;font-weight:900}.brand img{border-radius:4px}nav{display:flex;gap:clamp(1rem,3vw,3rem)}nav a,footer>a:last-child{font-size:.875rem;font-weight:700}nav a:hover,footer a:hover{color:var(--red)}
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(470px,44vw,710px);display:flex;align-items:center;border-block:1px solid #c3c7c5}
.hero-shot{position:absolute;inset:0 0 0 auto;width:68%;height:100%;object-fit:cover;object-position:60% center;z-index:-3}
.hero::before,.hero::after{content:"";position:absolute;inset:0;z-index:-2;background:#ee3224;clip-path:polygon(0 0,54.6% 0,38.7% 100%,0 100%)}
.hero::after{background:var(--paper);clip-path:polygon(0 0,53.7% 0,37.8% 100%,0 100%);z-index:-1}
.hero-copy{margin-left:var(--edge);width:35%;padding:3rem 0 3.8rem}.status,.kicker{font:700 .73rem/1.5 Consolas,monospace;text-transform:uppercase;letter-spacing:.14em}.status{display:inline-flex;align-items:center;gap:.55rem}.status:before{content:"";display:block;background:var(--red);width:.55rem;height:.55rem;transform:skew(-14deg)}
h1{margin:1.65rem 0 1.4rem}h1 img{width:100%;height:auto}.hero-copy>p{font-size:clamp(1.06rem,1.55vw,1.55rem);line-height:1.35;max-width:28ch}.action{display:inline-flex;align-items:center;gap:1.65rem;padding:.84rem 1.15rem;background:var(--ink);color:white;margin-top:1.8rem;font-weight:700}.action:hover{background:var(--red)}.action span{font-size:1.35rem;line-height:1}
.district,.gallery{padding:clamp(3rem,6vw,6rem) var(--edge)}.intro{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:2.5rem}.intro>p{max-width:44ch;font-size:1.1rem}.kicker{color:var(--red);margin-bottom:.55rem}h2{font-size:clamp(2.6rem,5.5vw,6rem);line-height:.96;letter-spacing:-.065em}.route-picker{margin-top:2.2rem;display:flex;border-bottom:1px solid #b4bcb9;gap:.5rem}.route-picker a{font-weight:700;padding:.7rem 1rem;border-bottom:4px solid transparent}.route-picker a[aria-current=true]{border-color:var(--red);color:var(--red)}.route-picker a:hover{background:#e5e7e1}.route{margin-top:1rem;position:relative;background:#20292d}.route img{width:100%;height:auto;aspect-ratio:2.4;object-fit:cover;object-position:center 55%}.route figcaption{display:flex;align-items:baseline;gap:1.25rem;padding:1rem 1.35rem;color:#f4f4ee}.route strong{font-size:1.2rem;white-space:nowrap}.route span{color:#d2d8d6}
.gallery{background:var(--ink);color:var(--paper)}.gallery .kicker{color:#ff766a}.shots{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.8rem,2vw,2.5rem);margin-top:2rem}.shots img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.shots a:hover img{outline:2px solid #ff766a}.shots span{display:flex;justify-content:space-between;padding:.7rem 0;font-weight:700}.shots b{color:#ff766a}footer{padding-block:1.5rem}
@media(max-width:720px){.hero{display:flex;flex-direction:column-reverse;align-items:stretch;min-height:0}.hero-shot{position:static;width:100%;height:auto;aspect-ratio:2/1;object-position:center 65%;border-top:5px solid #ee3224}.hero::before,.hero::after{display:none}.hero-copy{margin:0;width:auto;padding:2rem var(--edge)}h1{max-width:25rem;margin:1rem 0}.hero-copy>p{max-width:36ch}.action{margin-top:1.3rem}.intro{display:block}.intro>p{margin-top:1rem}.shots{grid-template-columns:1fr}.route figcaption{display:grid;gap:.3rem}.route img{aspect-ratio:1.55}.route-picker{margin-top:1.5rem}nav{gap:.8rem}.brand{font-size:.78rem;gap:.4rem}header{padding-block:.8rem}nav a{font-size:.8rem}}
