:root { color-scheme: dark; --ink:#06090f; --panel:#0c131d; --paper:#f8fafc; --muted:#93a0ad; --blue:#3ba7ff; --line:rgba(255,255,255,.14); }
* { box-sizing:border-box; }
body { min-height:100vh; margin:0; background:var(--ink); color:var(--paper); font-family:Arial,Helvetica,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button,input { font:inherit; }
[hidden] { display:none!important; }
.enrollment-header { height:78px; padding:0 32px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:13px; }
.brand>span { color:var(--blue); font-size:22px; font-weight:950; letter-spacing:-.07em; }
.brand strong { display:flex; flex-direction:column; font-size:12px; letter-spacing:.12em; line-height:1; }
.brand small { margin-top:5px; color:#687382; font-size:7px; letter-spacing:.25em; }
.secure-label,.eyebrow { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:.16em; text-transform:uppercase; }
.enrollment-shell { width:min(1180px,calc(100vw - 48px)); margin:auto; padding:72px 0 90px; }
.state-panel { min-height:calc(100vh - 240px); display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.state-panel h1,.enrollment-intro h1 { margin:18px 0 26px; font-size:clamp(58px,8vw,108px); line-height:.86; letter-spacing:-.075em; text-transform:uppercase; }
.state-panel h1 em,.enrollment-intro h1 em { color:var(--blue); font-family:Georgia,serif; font-weight:400; text-transform:none; }
.state-panel>p:not(.eyebrow) { max-width:600px; margin:0; color:var(--muted); line-height:1.7; }
.primary-action { display:inline-block; margin-top:28px; padding:16px 22px; border:0; background:var(--blue); color:#06101a; cursor:pointer; font-size:10px; font-weight:950; letter-spacing:.08em; text-transform:uppercase; }
.primary-action:disabled { cursor:not-allowed; opacity:.4; }
.secondary-action { margin-top:18px; color:var(--blue); font-size:9px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.enrollment-intro { display:grid; grid-template-columns:1fr 350px; gap:62px; align-items:end; }
.enrollment-intro>div>p:last-child { max-width:650px; color:var(--muted); line-height:1.7; }
.offer-card { padding:28px; border:1px solid var(--line); background:linear-gradient(145deg,rgba(59,167,255,.09),transparent 60%); }
.offer-card h2 { margin:15px 0 8px; font-size:23px; letter-spacing:-.04em; text-transform:uppercase; }
.offer-card>strong { display:block; font-size:30px; color:var(--blue); }
.offer-card>span { display:block; margin-top:8px; color:var(--muted); font-size:10px; line-height:1.5; }
.offer-card dl { margin:24px 0 0; }
.offer-card dl div { padding:10px 0; display:flex; justify-content:space-between; border-top:1px solid var(--line); font-size:9px; }
.offer-card dd { margin:0; }
.offer-card dt { color:var(--muted); }
.canceled-banner,.setup-banner,.signer-banner { margin-top:38px; padding:15px 18px; border-left:2px solid var(--blue); background:rgba(59,167,255,.08); color:#b9c8d5; font-size:11px; line-height:1.6; }
.agreement-panel { margin-top:72px; display:grid; grid-template-columns:300px 1fr; gap:60px; padding:58px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.agreement-panel>header { position:sticky; top:28px; align-self:start; }
.agreement-panel h2 { margin:15px 0; font-size:40px; line-height:.95; letter-spacing:-.055em; text-transform:uppercase; }
.agreement-panel>header>span { color:#667484; font-size:8px; letter-spacing:.1em; }
.agreement-copy section { padding:0 0 28px; margin-bottom:28px; border-bottom:1px solid var(--line); }
.agreement-copy section:last-child { border-bottom:0; }
.agreement-copy h3 { margin:0 0 13px; font-size:14px; text-transform:uppercase; letter-spacing:.02em; }
.agreement-copy p { margin:0 0 12px; color:#9ba8b4; font-size:12px; line-height:1.75; }
.release-acknowledgment { border:1px solid #42a7ff; padding:16px; color:#fff; font-weight:800; letter-spacing:.02em; }
.acceptance-panel { width:min(760px,100%); margin:58px auto 0; }
.acceptance-panel label { padding:18px 0; display:grid; grid-template-columns:20px 1fr; gap:14px; border-bottom:1px solid var(--line); color:#c4d0da; font-size:12px; line-height:1.6; }
.acceptance-panel input { width:18px; height:18px; accent-color:var(--blue); }
.acceptance-panel .primary-action { width:100%; }
.acceptance-panel>small { display:block; margin-top:14px; color:#667484; font-size:9px; line-height:1.5; text-align:center; }
.form-status { padding:12px 14px; background:rgba(219,74,74,.12); color:#ffb4b4; font-size:11px; }
.status-orbit { width:48px; height:48px; margin:28px 0 4px; border:2px solid rgba(59,167,255,.2); border-top-color:var(--blue); border-radius:50%; animation:spin 1s linear infinite; }
.welcome-panel { padding: 36px 0 20px; animation: welcome-in .5s ease both; }
.welcome-heading { display:grid; grid-template-columns:1fr 290px; gap:50px; align-items:end; padding-bottom:48px; border-bottom:1px solid var(--line); }
.welcome-heading h1 { margin:18px 0 0; font-size:clamp(60px,9vw,116px); line-height:.84; letter-spacing:-.075em; text-transform:uppercase; }
.welcome-heading h1 em { color:var(--blue); font-family:Georgia,serif; font-weight:400; text-transform:none; }
.welcome-confirmation { padding:22px; border:1px solid var(--line); display:grid; gap:9px; }
.welcome-confirmation small { color:var(--blue); font-size:8px; font-weight:900; letter-spacing:.13em; }
.welcome-confirmation strong { font-size:12px; }
.welcome-confirmation span { color:var(--muted); font-size:9px; line-height:1.5; }
.welcome-grid { display:grid; grid-template-columns:repeat(3,1fr); }
.welcome-grid article { min-height:180px; padding:30px 28px; display:grid; grid-template-columns:40px 1fr; gap:16px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.welcome-grid article:last-child { border-right:0; }
.welcome-grid article>span { color:var(--blue); font-size:10px; font-weight:900; }
.welcome-grid strong { display:block; font-size:15px; text-transform:uppercase; letter-spacing:.02em; }
.welcome-grid p { margin:12px 0 0; color:var(--muted); font-size:11px; line-height:1.65; }
.welcome-actions { padding:36px 0; display:flex; align-items:center; gap:28px; }
.welcome-actions .primary-action { margin:0; flex:0 0 auto; }
.welcome-actions p { max-width:560px; margin:0; color:var(--muted); font-size:10px; line-height:1.6; }
@keyframes welcome-in { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }
@keyframes spin { to { transform:rotate(360deg); } }
@media (max-width:760px) {
  .enrollment-header { height:68px; padding:0 18px; }
  .secure-label { display:none; }
  .enrollment-shell { width:min(100% - 32px,620px); padding-top:48px; }
  .enrollment-intro,.agreement-panel { grid-template-columns:1fr; gap:34px; }
  .agreement-panel { margin-top:52px; padding:42px 0; }
  .agreement-panel>header { position:static; }
  .offer-card { padding:22px; }
  .welcome-heading,.welcome-grid { grid-template-columns:1fr; }
  .welcome-confirmation { margin-top:24px; }
  .welcome-grid article { border-right:0; min-height:0; padding:26px 4px; }
  .welcome-actions { align-items:stretch; flex-direction:column; }
  .welcome-actions .primary-action { text-align:center; }
}
