.enroll-shell{padding:40px var(--gutter) 100px;max-width:1500px;margin:auto}.enroll-topline{display:flex;justify-content:space-between;gap:20px;margin:8px 0 40px;color:var(--muted);font-size:15px}.enroll-progress{display:flex;list-style:none;padding:0;margin:0 0 55px;border-bottom:1px solid var(--border)}.enroll-progress li{flex:1;padding:0 10px 20px 0;color:var(--muted);position:relative;font-size:17px}.enroll-progress li>span{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid var(--border);border-radius:50%;margin-right:10px;font-size:13px}.enroll-progress .current{color:var(--red)}.enroll-progress .current:after,.enroll-progress .complete:after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--red)}.enroll-progress .current>span{background:var(--red);border-color:var(--red);color:#fff}.enroll-progress .complete>span{border-color:#c91d3260;color:var(--red)}.enroll-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(30px,6vw,95px);align-items:start}.enroll-main{min-width:0}.enroll-main h1{font-size:clamp(42px,4.8vw,72px);line-height:1.02;margin:14px 0 24px;letter-spacing:-.03em}.enroll-main>.enroll-intro{font-size:20px;line-height:1.5;color:var(--muted);max-width:640px;margin-bottom:30px}.enroll-main h2{font-size:28px;line-height:1.15;letter-spacing:-.01em;margin:25px 0 16px}.enroll-main h3{font-size:25px;margin-bottom:8px}.enroll-summary{position:sticky;top:116px;perspective:1100px}.summary-ticket{padding:28px;border:1px solid var(--border);border-top:3px solid var(--red);box-shadow:12px 20px 0 -10px #eff1f3,0 25px 65px #1a24300c;background:#fff;transform:rotateY(-3deg);transform-origin:left center}.summary-flight{display:flex;align-items:center;gap:14px;margin-bottom:30px;color:var(--red)}.summary-flight>span:first-child{font-size:29px}.summary-flight>span:last-child{font-size:10px;letter-spacing:.11em}.summary-flight i{height:1px;background:var(--border);flex:1}.summary-ticket h2{font-size:32px;line-height:1.13;letter-spacing:-.02em;margin:12px 0 24px;overflow-wrap:anywhere}.summary-ticket dl,.payment-ledger{margin:0}.summary-ticket dl>div,.payment-ledger>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--border);font-size:16px}.summary-ticket dt,.payment-ledger dt{color:var(--muted)}.summary-ticket dd,.payment-ledger dd{margin:0;text-align:right;overflow-wrap:anywhere}.summary-ticket .inline-link{margin-top:18px;width:100%}.summary-help{padding:35px 10px}.summary-help p{font-size:17px;margin:7px 0}.summary-help .eyebrow{font-size:11px}.summary-help a{display:block;padding:5px 0;color:var(--red);overflow-wrap:anywhere}.funding-form{margin-top:32px}.funding-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;border:0;margin:0;padding:0}.funding-options legend{font-size:23px;margin-bottom:15px}.funding-choice{padding:24px 20px;border:1px solid var(--border);background:linear-gradient(130deg,#fff,#f5f6f8);cursor:pointer;position:relative;transition:border-color .2s,box-shadow .2s}.funding-choice:has(input:checked){border-color:var(--red);box-shadow:0 5px 22px #c91d3212}.funding-choice input{accent-color:var(--red);position:absolute;top:24px;right:20px;width:18px;height:18px}.funding-choice .choice-symbol{display:block;font-size:28px;color:var(--red);margin-bottom:15px}.funding-choice strong{display:block;font-size:25px;font-weight:400;margin-bottom:7px}.funding-choice small{display:block;font-size:16px;color:var(--muted);line-height:1.45}.funding-branch{margin-top:30px;padding-top:10px;border-top:1px solid var(--border)}.funding-branch[hidden]{display:none}.payment-choice{display:flex;justify-content:space-between;gap:15px;border:1px solid var(--border);padding:18px;margin-bottom:12px;cursor:pointer}.payment-choice>span{display:flex;gap:12px;align-items:center}.payment-choice strong{font-weight:400;white-space:nowrap}.payment-choice:has(input:checked){border-color:var(--red);background:#fff8f9}.funding-form input{accent-color:var(--red)}.funding-form input:focus-visible,.login-form input:focus-visible{outline:2px solid var(--red);outline-offset:3px}.funding-terms{padding:20px;max-height:220px;overflow:auto;background:var(--surface);border:1px solid var(--border);white-space:pre-wrap;font-size:16px;line-height:1.6}.funding-check{display:flex;align-items:flex-start;gap:12px;margin:20px 0;font-size:17px;line-height:1.5}.funding-check input{flex-shrink:0;width:18px;height:18px;margin-top:4px}.funding-upload{display:block;padding:20px;background:var(--surface);margin:20px 0;font-size:20px}.funding-upload input{display:block;max-width:100%;font:16px Abel,sans-serif;margin-top:13px}.funding-note{font-size:15px;color:var(--muted);line-height:1.6;margin:15px 0}.funding-submit{width:100%;margin-top:10px}.funding-submit:disabled{opacity:.6;cursor:wait}.status-orbit{width:88px;height:88px;border-radius:50%;border:1px solid #c91d3240;display:grid;place-items:center;color:var(--red);font-size:35px;position:relative;margin:0 0 32px;background:radial-gradient(circle,#fff 45%,#fff1f3)}.status-orbit:before{content:'';position:absolute;inset:-9px;border:1px dashed #c91d3230;border-radius:50%;animation:enroll-orbit 35s linear infinite}.next-step{padding:25px;border-left:2px solid var(--red);background:var(--surface);margin:30px 0}.next-step .eyebrow{font-size:12px;color:var(--red);margin-bottom:10px}.next-step p{font-size:19px}.enroll-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:25px 0}.payment-ledger{margin-top:25px}.payment-ledger>div{font-size:18px}.account-steps{list-style:none;margin:35px 0;padding:0;counter-reset:account}.account-steps li{counter-increment:account;position:relative;padding:22px 0 25px 53px;border-bottom:1px solid var(--border)}.account-steps li:before{content:'0' counter(account);position:absolute;left:0;top:24px;color:var(--red);font-size:18px}.account-steps p{font-size:17px;color:var(--muted)}.login-layout{display:grid;grid-template-columns:1.1fr 1fr;max-width:1120px;margin:70px auto 100px;padding:0 30px;gap:clamp(35px,7vw,100px);align-items:center}.login-intro h1{font-size:clamp(56px,6vw,86px);line-height:.98;margin:18px 0 30px}.login-intro>p{color:var(--muted);max-width:420px}.login-art{height:140px;margin-top:35px;background:repeating-radial-gradient(ellipse at 0 100%,transparent 0 21px,#c91d321c 22px 23px,transparent 24px 45px);position:relative;overflow:hidden}.login-art span{position:absolute;right:20%;top:15%;font-size:60px;color:var(--red);transform:rotate(-12deg)}.login-card{padding:38px;border:1px solid var(--border);border-top:3px solid var(--red);background:#fff;box-shadow:14px 18px 0 -5px #f2f3f5}.login-card h2{font-size:34px;letter-spacing:-.02em;margin-bottom:27px}.login-form label{display:block;margin:20px 0 10px;font-size:17px}.login-form input{display:block;width:100%;font:18px Abel,sans-serif;border:1px solid #b8c1cb;padding:15px;border-radius:0}.login-form .button{width:100%;margin-top:27px}.login-links{margin-top:20px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:15px;color:var(--muted)}.login-card .funding-note a{text-decoration:underline;color:var(--red)}@keyframes enroll-orbit{to{transform:rotate(360deg)}}@media(max-width:950px){.enroll-grid{grid-template-columns:minmax(0,1fr) 290px;gap:30px}.summary-ticket{padding:22px}.enroll-progress li{font-size:15px}.enroll-progress li>span{margin-right:6px}}@media(max-width:760px){.enroll-shell{padding-top:25px}.enroll-topline>.eyebrow{display:none}.enroll-progress{margin-bottom:30px}.enroll-progress li{font-size:13px;padding-right:6px}.enroll-progress li>span{display:grid;margin-bottom:10px}.enroll-grid{grid-template-columns:1fr}.enroll-summary{position:static;grid-row:1}.summary-ticket{transform:none;padding:22px}.summary-flight{display:none}.summary-ticket h2{font-size:28px;margin:8px 0 14px}.summary-ticket dl{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.summary-ticket dl>div{font-size:14px;padding:9px 0}.summary-ticket .inline-link{margin-top:8px;font-size:14px}.summary-help{display:none}.enroll-main h1{font-size:48px}.login-layout{grid-template-columns:1fr;margin:40px auto 70px}.login-intro h1{font-size:60px}.login-art{display:none}}@media(max-width:430px){.funding-options{grid-template-columns:1fr}.funding-choice{padding:18px 20px}.funding-choice .choice-symbol{display:none}.funding-choice strong{padding-right:28px}.payment-choice{flex-wrap:wrap}.summary-ticket dl{grid-template-columns:1fr}.summary-ticket dl>div:nth-child(2),.summary-ticket dl>div:nth-child(4){display:none}.enroll-progress li{font-size:12px}.enroll-main h1{font-size:42px}.login-card{padding:25px}.login-layout{padding:0 24px}.enroll-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){.summary-ticket{transform:none}.status-orbit:before{animation:none}}.motion-paused .summary-ticket{transform:none}.motion-paused .status-orbit:before{animation:none}

/* Match the class briefing and wide boarding passes throughout enrollment. */
.enrollment-site { background: #edf2f7; }
.enrollment-site .enroll-shell { max-width: 1320px; margin: auto; padding: 35px 24px 80px; }
.enrollment-site .enroll-topline { margin-bottom: 28px; }
.enrollment-site .enroll-grid { grid-template-columns: minmax(0,1fr) 350px; gap: 28px; align-items: start; }
.enrollment-site .enroll-main { padding: 35px; background: white; border: 1px solid #dbe4ec; border-radius: 9px; box-shadow: 0 8px 24px #0b293f05; min-width: 0; }
.enrollment-site .enroll-main h1 { font-size: clamp(38px,4vw,58px); }
.enrollment-site .enroll-progress { background: white; border: 1px solid #dbe4ec; border-radius: 8px; padding: 22px; margin-bottom: 28px; }
.enrollment-site .enroll-progress li { position: relative; padding-bottom: 14px; }
.enrollment-site .enroll-progress li.current::after { content: '✈'; position: absolute; right: 12px; bottom: -9px; background: white; color: #df0038; padding: 0 6px; font-size: 20px; }
.enrollment-site .summary-ticket { transform: none; padding: 0; border: 1px solid #dbe4ec; border-radius: 8px; box-shadow: 0 8px 24px #0b293f08; overflow: hidden; }
.enrollment-site .summary-ticket::before,.enrollment-site .summary-ticket::after { display: none; }
.enrollment-site .summary-flight { background: #0c293f; color: white; padding: 22px 24px; margin: 0; }
.enrollment-site .summary-flight i { border-color: #8098ac; }
.enrollment-site .summary-ticket > .eyebrow { margin: 22px 24px 8px; }
.enrollment-site .summary-ticket h2 { margin: 0 24px 20px; font-size: 32px; }
.enrollment-site .summary-ticket dl { margin: 0 24px; }
.enrollment-site .summary-ticket dl > div { padding-block: 12px; }
.enrollment-site .summary-ticket > .inline-link { display: flex; width: auto; margin: 20px 24px; }
.enrollment-site .summary-help { padding: 22px 24px; }
.enrollment-site .funding-choice { border-radius: 6px; background: #f7f9fc; }
.enrollment-site .funding-choice:has(input:checked) { background: #f0f5fa; border-color: #173c57; box-shadow: inset 0 0 0 1px #173c57; }
.enrollment-site .payment-choice { border-radius: 6px; }
.enrollment-site .funding-submit { border-radius: 5px; }
.enrollment-site .funding-terms { background: #f7f9fc; border-radius: 5px; }
@media(max-width:950px) {
  .enrollment-site .enroll-grid { grid-template-columns: minmax(0,1fr) 290px; gap: 20px; }
  .enrollment-site .enroll-main { padding: 25px; }
}
@media(max-width:760px) {
  .enrollment-site .enroll-shell { padding: 24px 18px 60px; }
  .enrollment-site .enroll-grid { grid-template-columns: minmax(0,1fr); }
  .enrollment-site .enroll-progress { padding: 16px 12px; }
  .enrollment-site .summary-ticket > .eyebrow { margin: 18px 20px 8px; }
  .enrollment-site .summary-ticket h2 { margin: 0 20px 10px; }
  .enrollment-site .summary-ticket dl { margin-inline: 20px; }
  .enrollment-site .summary-flight { display: flex; padding: 14px 20px; font-size: 11px; }
  .enrollment-site .enroll-main { padding: 25px 20px; }
  .enrollment-site .enroll-progress li.current::after { right: 5px; font-size: 16px; }
}
