:root { --navy:#041d35; --ocean:#075a78; --cyan:#25a9bd; --lime:#acd520; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--navy); background:#f7fbfb; font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
.hero { min-height:760px; height:92vh; position:relative; overflow:hidden; color:white; isolation:isolate; background:radial-gradient(circle at 68% 37%,rgba(68,193,208,.24),transparent 24%),linear-gradient(180deg,#03192e 0%,#06455f 51%,#148ca2 75%,#d9eef0 100%); }
.hero::before { content:""; position:absolute; inset:0; z-index:-1; opacity:.28; background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:90px 90px; mask-image:linear-gradient(to bottom,black,transparent 68%); }
.sea-glow { position:absolute; inset:48% -10% auto; height:36%; background:radial-gradient(ellipse,rgba(89,216,225,.25),transparent 68%); }
.horizon { position:absolute; left:0; right:0; top:67%; height:1px; background:linear-gradient(90deg,transparent,rgba(223,255,255,.55),transparent); }
.site-header { width:min(1180px,calc(100% - 64px)); margin:0 auto; padding:30px 0; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid rgba(255,255,255,.18); }
.brand img { width:245px; height:auto; display:block; }
nav { display:flex; gap:34px; align-items:center; font-size:14px; font-weight:700; }
nav a { opacity:.84; transition:opacity .2s ease; }
nav a:hover { opacity:1; }
.nav-cta { border:1px solid rgba(255,255,255,.46); border-radius:999px; padding:11px 19px; }
.hero-content { width:min(1180px,calc(100% - 64px)); margin:0 auto; padding-top:clamp(100px,15vh,150px); position:relative; z-index:2; }
.eyebrow,.section-label { margin:0 0 18px; color:var(--lime); font-size:12px; font-weight:800; letter-spacing:.2em; text-transform:uppercase; }
h1 { margin:0; max-width:760px; font-size:clamp(52px,6.8vw,94px); line-height:.94; letter-spacing:-.055em; font-weight:750; }
.intro { max-width:590px; margin:28px 0 34px; color:rgba(255,255,255,.78); font-size:clamp(17px,2vw,21px); line-height:1.6; }
.primary-button { display:inline-flex; gap:18px; align-items:center; padding:15px 22px; border-radius:4px; background:var(--lime); color:var(--navy); font-size:14px; font-weight:800; box-shadow:0 12px 30px rgba(0,0,0,.16); }
.platform { position:absolute; right:6%; bottom:16%; width:430px; height:180px; opacity:.36; filter:drop-shadow(0 20px 18px rgba(1,19,29,.3)); }
.platform span { position:absolute; display:block; background:#031a29; }
.deck { left:0; bottom:52px; width:400px; height:8px; }
.hull { left:26px; bottom:0; width:340px; height:55px; clip-path:polygon(0 0,100% 0,82% 100%,13% 100%); }
.module { bottom:60px; height:52px; }
.module-one { left:52px; width:100px; }
.module-two { left:180px; width:138px; }
.flare { left:335px; bottom:60px; width:5px; height:118px; }
.flare::before { content:""; position:absolute; left:-10px; top:0; width:25px; height:4px; background:#031a29; }
.waves { position:absolute; left:-5%; width:110%; border-radius:50% 50% 0 0; }
.waves-back { bottom:-92px; height:180px; background:rgba(205,238,240,.46); transform:rotate(-1deg); }
.waves-front { bottom:-132px; height:190px; background:#f7fbfb; transform:rotate(1.5deg); }
.intro-section { width:min(900px,calc(100% - 48px)); margin:0 auto; padding:110px 0 120px; text-align:center; }
.section-label { color:#5d8f18; }
.intro-section h2,.placeholder-section h2 { margin:0; font-size:clamp(34px,5vw,58px); line-height:1.05; letter-spacing:-.04em; }
.intro-section>p:last-child { max-width:720px; margin:30px auto 0; color:#4d6572; font-size:18px; line-height:1.8; }
.placeholder-section { width:min(1100px,calc(100% - 48px)); margin:0 auto 90px; padding:58px; display:grid; grid-template-columns:.85fr 1.15fr; gap:60px; align-items:start; color:white; background:var(--navy); border-radius:14px; }
.placeholder-section h2 { font-size:clamp(30px,4vw,46px); }
.form-intro { color:#b8ccd4; line-height:1.75; }
.registration-form { display:grid; gap:18px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.registration-form label,.registration-form legend { color:#d9e8ec; font-size:13px; font-weight:700; }
.registration-form input,.registration-form select { width:100%; margin-top:8px; padding:13px 14px; color:#092438; background:#fff; border:1px solid transparent; border-radius:5px; font:inherit; }
.registration-form input:focus,.registration-form select:focus { outline:3px solid rgba(172,213,32,.35); border-color:var(--lime); }
.registration-form fieldset { margin:0; padding:0; border:0; }
.choice-row { display:flex; gap:26px; margin-top:10px; }
.choice-row label { display:flex; gap:8px; align-items:center; }
.choice-row input { width:auto; margin:0; accent-color:var(--lime); }
.registration-form button { padding:14px 20px; color:var(--navy); background:var(--lime); border:0; border-radius:5px; font-size:14px; font-weight:800; cursor:pointer; }
.registration-form button:disabled { opacity:.65; cursor:wait; }
.form-status { min-height:22px; margin:0; color:#dceca6; line-height:1.5; }
.form-honey { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; }
footer { display:flex; gap:16px; align-items:center; justify-content:center; padding:42px 24px; border-top:1px solid #dce8ea; color:#607785; font-size:14px; }
footer img { width:40px; height:40px; object-fit:contain; }
@media (max-width:760px) { .hero{min-height:700px;height:100svh}.site-header,.hero-content{width:calc(100% - 36px)}.site-header{padding:20px 0}.brand img{width:190px}nav a:not(.nav-cta){display:none}.hero-content{padding-top:110px}h1{font-size:clamp(48px,15vw,68px)}.platform{right:-160px;bottom:18%;transform:scale(.72)}.placeholder-section{padding:38px 28px;grid-template-columns:1fr;gap:28px}.form-grid{grid-template-columns:1fr} }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto} }
