:root{--bg:#07080b;--panel:#0c0f15;--panel2:#11151d;--line:#292c35;--text:#f6f0e3;--muted:#a6acba;--gold:#d7ad51;--gold2:#f0d48c;--ink:#12100a;--danger:#ff786d}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{margin:0;color:var(--text);background:radial-gradient(circle at 50% -20%,#22200f 0,transparent 32rem),var(--bg);font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.site-header,main,footer{width:min(100% - 32px,690px);margin-inline:auto}
.site-header{padding:30px 0 14px;text-align:center}
.brand{display:block;width:min(320px,76vw);height:auto;margin:0 auto;mix-blend-mode:screen}
.eyebrow,.step-label{margin:12px 0 0;color:var(--gold);font-size:.75rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase}
.intro{padding:28px 8px 34px;text-align:center}
h1,h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:600;letter-spacing:-.025em;line-height:1.05}
h1{font-size:clamp(2.55rem,10vw,4.55rem)}
h1 em{color:var(--gold2);font-weight:500}
.intro>p{max-width:590px;margin:24px auto 0;color:var(--muted);font-size:clamp(1.05rem,3vw,1.24rem)}
.step{padding:26px 22px 22px;border:1px solid rgba(215,173,81,.33);border-radius:22px;background:linear-gradient(145deg,rgba(14,17,24,.98),rgba(8,10,15,.98));box-shadow:0 30px 80px rgba(0,0,0,.38)}
.step[hidden]{display:none}
.progress{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:28px}
.progress span{height:5px;border-radius:20px;background:#252932}
.progress .on{background:linear-gradient(90deg,var(--gold),var(--gold2))}
.step h2{margin-top:8px;font-size:clamp(2.15rem,8vw,3.35rem)}
.step>p:not(.step-label,.error,.unlock-note){color:var(--muted);font-size:1rem}
.video-shell{position:relative;overflow:hidden;margin:24px 0 18px;border:1px solid #343843;border-radius:14px;aspect-ratio:16/9;background:#000}
.video-shell iframe{width:100%;height:100%;border:0}
.video-complete-card{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:22px;color:var(--text);background:radial-gradient(circle at 50% 30%,#28230f 0,transparent 55%),#090b10;text-align:center}
.video-complete-card[hidden]{display:none}
.video-complete-card .complete-check{display:grid;width:48px;height:48px;place-items:center;margin-bottom:4px;border:1px solid rgba(240,212,140,.7);border-radius:50%;color:var(--ink);background:linear-gradient(105deg,#c99b42,#f2d891);font-size:1.55rem;font-weight:900}
.video-complete-card strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.45rem,5vw,2rem)}
.video-complete-card>span:not(.complete-check){color:var(--muted);font-size:.9rem}
.video-complete-card button{margin-top:5px;padding:7px 11px;border:0;color:var(--gold2);background:transparent;font-size:.78rem;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.unlock-note{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-size:.88rem}
.unlock-note span{flex:0 0 8px;height:8px;margin-top:.42rem;border-radius:50%;background:var(--gold);box-shadow:0 0 14px rgba(215,173,81,.7)}
button,input,textarea{font:inherit}
.primary{width:100%;margin-top:18px;padding:17px 20px;border:0;border-radius:11px;color:var(--ink);background:linear-gradient(105deg,#c99b42,#f2d891);box-shadow:0 8px 26px rgba(201,155,66,.16);font-size:.85rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;cursor:pointer;transition:transform .18s ease,filter .18s ease}
.primary:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}
.primary:focus-visible,.back:focus-visible,input:focus-visible,textarea:focus-visible,.choice:has(input:focus-visible){outline:3px solid rgba(240,212,140,.65);outline-offset:3px}
.primary:disabled{opacity:.38;cursor:not-allowed;filter:saturate(.3)}
.fields{display:grid;gap:16px;margin:28px 0}
.fields label{display:grid;gap:7px;color:#e8e9ed;font-size:.91rem;font-weight:700}
input[type="text"],input[type="email"],input[type="tel"],textarea{width:100%;border:1px solid var(--line);border-radius:10px;color:var(--text);background:var(--panel2)}
.fields input{height:52px;padding:0 14px}
input::placeholder,textarea::placeholder{color:#737b8a}
fieldset{min-width:0;margin:0;padding:26px 0;border:0;border-top:1px solid #252933}
legend{display:block;width:100%;padding:0 0 13px;color:#f2f2f4;font-weight:750;line-height:1.45}
.choice{display:flex;align-items:flex-start;gap:12px;margin:9px 0;padding:14px;border:1px solid #242934;border-radius:10px;background:#11151d;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.choice:hover,.choice:has(input:checked){border-color:rgba(215,173,81,.66);background:#171713}
.choice input{flex:0 0 auto;margin-top:.28em;accent-color:var(--gold)}
.choice span{font-size:.91rem;line-height:1.42}
.error{min-height:1.3em;color:var(--danger);font-size:.88rem;font-weight:700}
textarea{min-height:220px;margin-top:20px;padding:16px;resize:vertical;line-height:1.5}
.back{display:block;margin:18px auto 0;padding:8px 12px;border:0;color:var(--muted);background:transparent;cursor:pointer}
.submission-actions{padding-bottom:72px}
.submit-status{margin:12px 0 0!important;color:var(--muted);font-size:.82rem!important;text-align:center}
footer{padding:68px 0 42px;text-align:center;color:#777e8b;font-size:.78rem}
footer img{width:170px;opacity:.45;mix-blend-mode:screen}
.success{text-align:center}.success h2{margin-top:10px}.success p:last-child{max-width:520px;margin:18px auto 4px;color:var(--muted)}
.honey,.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media (max-width:520px){.site-header,main,footer{width:min(100% - 22px,690px)}.site-header{padding-top:20px}.intro{padding:18px 5px 28px}.step{padding:22px 16px 18px;border-radius:18px}.choice{padding:13px 11px}.primary{font-size:.79rem;letter-spacing:.1em}.submission-actions{padding-bottom:130px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.primary{transition:none}}
