:root{--navy:#1F2A44;--orange:#FF5A36;--off:#F7F7F5;--gray:#5B6472;--green:#22C55E}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--navy);background:var(--off);line-height:1.6;font-size:17px}
h1,h2,h3{font-family:Montserrat,Inter,Arial,sans-serif;line-height:1.2;margin:0 0 .5em}
h1{font-size:clamp(2rem,6vw,3.2rem);font-weight:800}h2{font-size:clamp(1.5rem,4vw,2.1rem);font-weight:800}
a{color:var(--orange)}a:focus,button:focus,input:focus{outline:3px solid var(--orange);outline-offset:2px}
.wrap{max-width:960px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:9}
header.top{padding:14px 0}header.top img{height:64px;width:auto}
.hero{padding:40px 0 56px}.hero p.lead{font-size:1.2rem;color:var(--gray);max-width:36em}
.accent{color:var(--orange)}
form.signup{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;max-width:520px}
form.signup label{width:100%;font-weight:600}
input[type=email]{flex:1 1 240px;padding:14px;font-size:1rem;border:2px solid var(--navy);border-radius:10px;background:#fff}
button,.btn{background:var(--orange);color:#fff;border:0;border-radius:10px;padding:14px 22px;font-weight:700;font-size:1rem;cursor:pointer;text-decoration:none;display:inline-block}
button:hover{filter:brightness(.95)}.btn.navy{background:var(--navy)}
.small{font-size:.9rem;color:var(--gray)}.hidden{position:absolute;left:-9999px}
section{padding:48px 0}section.alt{background:#fff}
.steps{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));padding:0;list-style:none}
.card{background:var(--off);border-radius:14px;padding:20px;border-left:5px solid var(--orange)}
section.alt .card{background:var(--off)}.num{font-family:Montserrat,sans-serif;font-weight:800;color:var(--orange);font-size:1.6rem}
table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}
th,td{padding:12px;text-align:left;border-bottom:1px solid #e5e7eb}th{background:var(--navy);color:#fff}
details{background:#fff;border-radius:12px;padding:16px 18px;margin:10px 0}summary{font-weight:700;cursor:pointer}
.waitlist{background:var(--navy);color:#fff}.waitlist p{color:#d6dae3}.waitlist input{border-color:#fff}
footer{padding:28px 0;font-size:.9rem;color:var(--gray)}
article{max-width:720px;margin:0 auto;padding:20px}article h2{margin-top:1.6em}
fieldset.equip{width:100%;border:2px solid var(--navy);border-radius:10px;background:#fff;margin:0;padding:10px 14px}fieldset.equip legend{font-weight:600;padding:0 6px}form.signup label.opt{width:auto;font-weight:400;display:flex;align-items:center;gap:8px;padding:6px 0;margin-right:18px;cursor:pointer}label.opt input{width:20px;height:20px;accent-color:var(--orange)}.waitlist fieldset.equip{background:transparent;border-color:#fff}.waitlist .small{color:#d6dae3}
