:root{--ink:#12313a;--ink2:#0b2229;--cream:#f3ead6;--paper:#faf4e6;--orange:#e5541b;--teal:#2e8c8a;--muted:#5f6b6a;--kit-focus:#e5541b;--kit-err:#c0392b;--kit-ok:#12313a;
--disp:"Oswald","Arial Narrow",sans-serif;--serif:"Source Serif 4",Georgia,serif;--mono:"IBM Plex Mono",monospace;--type:"Special Elite","Courier New",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:18px;line-height:1.6}
a{color:var(--teal)}
.teletype-bar{background:var(--ink2);color:#cfe3df;font-family:var(--mono);font-size:.78rem;letter-spacing:.06em;padding:.4rem 1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.teletype-bar .dot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;background:var(--orange);margin-right:.3rem;animation:bl 1.4s steps(2) infinite}
@keyframes bl{50%{opacity:.2}}
.top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.8rem;padding:.8rem 1.4rem;background:var(--cream);border-bottom:4px solid var(--ink);position:sticky;top:0;z-index:20}
.logo{font-family:var(--disp);font-weight:700;font-size:1.7rem;letter-spacing:.08em;color:var(--ink);text-decoration:none}.logo span{color:var(--orange)}
.top nav{display:flex;flex-wrap:wrap;gap:1rem;font-family:var(--disp);text-transform:uppercase;letter-spacing:.08em;font-size:.9rem}.top nav a{color:var(--ink);text-decoration:none}
.pill{background:var(--orange);color:#fff!important;padding:.15rem .7rem}
.wrap{max-width:1140px;margin:0 auto;padding:3.5rem 1.4rem}
.hero{position:relative;min-height:640px;display:flex;align-items:flex-end;color:#fff;overflow:hidden}
.hero-sky{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,34,41,.1) 0%,rgba(11,34,41,.55) 55%,rgba(11,34,41,.95) 100%),url("img/sky/atlantic.jpg") center/cover}
.hero-sky::after{content:"";position:absolute;left:-10%;right:-10%;bottom:-40px;height:180px;background:radial-gradient(60% 100% at 50% 100%,rgba(46,140,138,.55),transparent);animation:swell 6s ease-in-out infinite}
@keyframes swell{50%{transform:translateY(-14px) rotate(-.6deg)}}
.hero-copy{position:relative;max-width:1140px;margin:0 auto;padding:3rem 1.4rem 3.5rem;width:100%}
.kicker{font-family:var(--disp);text-transform:uppercase;letter-spacing:.18em;font-size:.85rem;color:var(--orange);margin:0}
h1{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:clamp(3rem,9vw,6.4rem);line-height:.95;margin:.3rem 0 1rem;letter-spacing:.01em}
h1 em{font-style:normal;color:var(--orange)}
h2{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:clamp(2rem,5vw,3.2rem);line-height:1;margin:.3rem 0 1rem}
h3{font-family:var(--disp);font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:1.3rem;margin:0 0 .4rem}
.sub{max-width:40rem;font-size:1.15rem;color:#e7efe9}.sub b{color:#fff}
.lead{font-size:1.15rem;max-width:44rem}
.cta{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.4rem 0}
.btn{display:inline-block;font-family:var(--disp);text-transform:uppercase;letter-spacing:.1em;font-size:1rem;text-decoration:none;background:var(--orange);color:#fff;border:3px solid var(--orange);padding:.6rem 1.2rem;cursor:pointer}
.btn:hover{background:var(--ink);border-color:var(--ink)}
.btn.ghost{background:transparent;color:#fff;border-color:#fff}
.radio{display:flex;gap:.9rem;align-items:center;max-width:34rem;background:rgba(11,34,41,.55);border:1px solid rgba(255,255,255,.25);padding:.7rem .9rem;color:#fff}
.radio > div{flex:1}.radio b{display:block;font-family:var(--disp);font-weight:500;letter-spacing:.03em}.radio small{color:#bcd2cd;font-family:var(--mono);font-size:.78rem}
.radio.dark{background:var(--ink);margin-top:1rem}.radio.light{background:#fff;color:var(--ink);border-color:#d8ccb0}.radio.light small{color:var(--muted)}
.play{width:2.9rem;height:2.9rem;flex:none;border-radius:50%;border:2px solid currentColor;background:transparent;color:inherit;font-size:1rem;cursor:pointer}.play.is-playing{background:var(--orange);border-color:var(--orange);color:#fff}
.two{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:2.4rem;align-items:center}
.byline{font-family:var(--mono);font-size:.8rem;color:var(--muted)}
.muster{background:var(--ink);color:var(--cream);padding:2rem;text-align:center;box-shadow:10px 10px 0 var(--orange)}
.muster-n{font-family:var(--disp);font-weight:700;font-size:clamp(4rem,10vw,6.5rem);line-height:1;margin:0;color:#fff}
.muster-l{font-family:var(--type);margin:.4rem 0 1rem}.muster-s{font-size:.95rem;color:#cfe3df;margin:0}
.band{background:var(--cream);border-top:4px solid var(--ink);border-bottom:4px solid var(--ink)}
.band.dark{background:var(--ink);color:var(--cream)}.band.dark .kicker{color:#ff8a5c}
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem;margin-top:1.2rem}
.pillars article{background:var(--paper);border:2px solid var(--ink);padding:1.1rem}
.pillars p{font-size:1rem;margin:0}
.ranks{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:2rem;justify-content:center}
.ranks span{font-family:var(--disp);text-transform:uppercase;letter-spacing:.06em;font-size:.85rem;background:var(--ink);color:var(--cream);padding:.3rem .6rem;position:relative}
.ranks span:not(:last-child)::after{content:"›";position:absolute;right:-.45rem;color:var(--orange)}
.ranks .top-rank{background:var(--orange)}
.fine{font-size:.85rem;color:var(--muted)}.center{text-align:center}
.forecast{margin-top:1.2rem;border:3px solid var(--ink);background:#fff}
.regions{display:flex;flex-wrap:wrap;border-bottom:3px solid var(--ink)}
.regions button{flex:1;min-width:120px;font-family:var(--disp);text-transform:uppercase;letter-spacing:.06em;background:var(--cream);border:0;border-right:1px solid var(--ink);padding:.7rem;cursor:pointer;color:var(--ink)}
.regions button[aria-selected=true]{background:var(--ink);color:#fff}
.fc-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.fc-sky{min-height:280px;background:center/cover;transition:background-image .3s}
.fc-tty{padding:1.4rem;font-family:var(--type);font-size:1.05rem;background:repeating-linear-gradient(#fffef8 0 28px,#f0ead8 28px 29px)}
.fc-head{font-family:var(--mono);font-size:.8rem;letter-spacing:.08em;color:var(--orange);margin-top:0}
.fc-state{font-family:var(--disp);letter-spacing:.1em;color:var(--ink);border:2px solid var(--ink);display:inline-block;padding:.1rem .5rem}
.crew,.rogues{display:grid;gap:1.2rem;margin-top:1.2rem}
.crew{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.rogues{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.crew figure,.rogues figure{margin:0;background:rgba(255,255,255,.06);border:1px solid rgba(243,234,214,.25)}
.crew img,.rogues img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:top}
figcaption{padding:.7rem .8rem;font-size:.92rem}figcaption b{display:block;font-family:var(--disp);text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.rogues figcaption{font-size:.82rem}
.sub-h{margin-top:2.4rem;color:#ff8a5c}
.sponsors{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1rem;margin:1.4rem 0}
.sponsors figure{margin:0;text-align:center}.sponsors img{width:100%;height:auto;filter:drop-shadow(0 6px 10px rgba(0,0,0,.15))}
.sponsors figcaption{padding:.3rem 0;font-size:.82rem;color:var(--muted)}.sponsors b{color:var(--ink)}
.spots{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.8rem}.spots .radio{max-width:none}
.trials{background:var(--ink);color:var(--cream)}.trials .lead{color:#e6eee9}
.facts{padding-left:1.2rem}.tm{font-family:var(--mono);font-size:.75rem;color:#9fb4ae}
.form{display:grid;gap:.9rem;background:var(--paper);color:var(--ink);padding:1.6rem;box-shadow:10px 10px 0 var(--orange)}
.form label{display:grid;gap:.25rem;font-family:var(--disp);text-transform:uppercase;letter-spacing:.06em;font-size:.85rem}
.form .opt{text-transform:none;letter-spacing:0;color:var(--muted)}
.form input[type=email],.form input[type=text],.form select{font-family:var(--serif);font-size:1rem;padding:.6rem .7rem;border:2px solid var(--ink);background:#fff;border-radius:0}
fieldset{border:2px solid var(--ink);display:flex;flex-wrap:wrap;gap:.3rem 1rem;padding:.5rem .8rem}legend{font-family:var(--disp);text-transform:uppercase;letter-spacing:.06em;font-size:.85rem;padding:0 .3rem}
.form label.chk{display:flex;align-items:center;gap:.4rem;font-family:var(--serif);text-transform:none;letter-spacing:0;font-size:.95rem}
.form .btn{justify-self:start}.form .kit-status{font-family:var(--type)}
.real{font-size:.8rem;color:var(--muted);margin:0;border-top:1px dashed #cbbd9c;padding-top:.6rem}
.foot{text-align:center;padding:2.4rem 1.4rem 3rem;font-size:.9rem;color:var(--muted)}.signoff{font-family:var(--type);font-size:1.2rem;color:var(--ink)}.ow{font-size:.78rem}
@media (max-width:860px){.two,.fc-panel{grid-template-columns:minmax(0,1fr)}.form select{max-width:100%;min-width:0}.hero{min-height:560px}}
.form select,.form input{max-width:100%;min-width:0}
