/* Billing pages share the preview typography, frosted surfaces and accent. */
:where(body) {
 --bf-ink:#fcfcfc;--bf-muted:#aaa;--bf-line:rgba(252,252,252,.13);--bf-base:#1f1f1f;
 --bf-glass:radial-gradient(ellipse at 12% 12%,rgba(255,255,255,.055),transparent 65%),radial-gradient(ellipse at 88% 86%,rgba(255,255,255,.025),transparent 65%),#1b1b1b;
 --bf-soft:rgba(255,110,46,.1);
}
:where(body.light-mode) {
 --bf-ink:#0b0b0b;--bf-muted:#666;--bf-line:rgba(11,11,11,.12);--bf-base:#f5f5f5;
 --bf-glass:radial-gradient(ellipse at 12% 12%,rgba(255,255,255,.85),transparent 65%),radial-gradient(ellipse at 88% 86%,rgba(225,227,230,.24),transparent 65%),#f5f5f5;
 --bf-soft:rgba(255,110,46,.08);
}
.billing-family-tabs {display:flex;width:min(1240px,calc(100% - 96px));margin:0 auto 56px;border-bottom:1px solid var(--bf-line);gap:0}
.billing-family-tabs a {position:relative;flex:1;display:flex;justify-content:center;align-items:center;padding:18px 16px;color:var(--bf-muted);font-size:20px;line-height:1.5;font-weight:500;text-decoration:none;transition:color .25s}
.billing-family-tabs a::after {content:'';position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:#ff6e2e;transform:scaleX(0);transition:transform .3s}
.billing-family-tabs a[aria-current],.billing-family-tabs a:hover {color:#ff6e2e}
.billing-family-tabs a[aria-current]::after {transform:scaleX(1)}
.billing-family-link {display:inline-flex;align-items:center;gap:12px;font-size:16px;font-weight:500;color:var(--bf-ink);text-decoration:none;border-bottom:1px solid var(--bf-line);padding-block:10px;transition:color .25s,border-color .25s}
.billing-family-link span {color:#ff6e2e;font-size:24px;line-height:1}
.billing-family-link:hover {color:#ff6e2e;border-color:#ff6e2e}
#page-billing .snap-section.billing-snap {min-height:100svh!important;padding:156px 0 112px!important;justify-content:flex-start!important;color:var(--bf-ink)}
#page-billing .sub-header {width:min(1240px,calc(100% - 96px));margin:0 auto 44px;padding:0}
#page-billing .sub-header .page-title-desc {margin-top:20px;color:var(--bf-muted);line-height:1.7;word-break:keep-all}
#page-billing .billing-family-layout {display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;width:min(1240px,calc(100% - 96px));align-items:start}
#page-billing .billing-container {padding:0;max-width:none;min-width:0}
#page-billing .billing-guide {padding:28px 0}
.billing-eyebrow {display:block;color:#ff6e2e;font-size:12px;font-weight:500;letter-spacing:.13em;margin-bottom:24px}
#page-billing .billing-guide h2 {font-size:clamp(28px,2.5vw,38px);font-weight:600;line-height:1.4;letter-spacing:-.035em;margin:0 0 20px;color:var(--bf-ink)}
#page-billing .billing-guide>p {color:var(--bf-muted);font-size:17px;line-height:1.8;margin:0;word-break:keep-all}
.billing-guide-facts {margin:36px 0 22px}
.billing-guide-facts>div {border-top:1px solid var(--bf-line);padding:18px 0}
.billing-guide-facts dt {color:var(--bf-ink);font-size:17px;font-weight:500;margin-bottom:6px}
.billing-guide-facts dd {color:var(--bf-muted);font-size:15px;line-height:1.65;margin:0;word-break:keep-all}
#page-billing .billing-login-required {min-height:480px;padding:56px 32px;background:var(--bf-glass);border:0;border-radius:24px;gap:20px;justify-content:center;box-sizing:border-box}
#page-billing .billing-lock-icon {display:grid;place-items:center;width:64px;height:64px;background:var(--bf-soft);color:#ff6e2e;border-radius:50%;margin-bottom:4px}
#page-billing .billing-lock-icon svg {width:28px;height:28px}
#page-billing .billing-login-title {font-size:26px;font-weight:600;margin:0;letter-spacing:-.03em;color:var(--bf-ink)}
#page-billing .billing-login-msg {font-size:17px;line-height:1.8;color:var(--bf-muted);margin:0}
#page-billing :is(.billing-btn-login,.billing-btn-submit) {display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:13px 30px;border:0;border-radius:8px;background:#ff6e2e;color:#fff;font-size:16px;line-height:1.5;font-weight:500;transition:background .25s,opacity .25s}
#page-billing .billing-btn-login {margin-top:10px}
#page-billing :is(.billing-btn-login,.billing-btn-submit):hover {background:#ec6126}
#page-billing .billing-btn-submit:disabled {background:var(--bf-base);color:var(--bf-muted);opacity:.55}
#page-billing .billing-card {background:var(--bf-glass);border:0;border-radius:24px;color:var(--bf-ink)}
#page-billing .billing-section {padding:30px;border-bottom:1px solid var(--bf-line)}
#page-billing .billing-section-title {font-size:20px;letter-spacing:-.02em;font-weight:600;color:var(--bf-ink);margin-bottom:16px}
#page-billing .billing-section-help {color:var(--bf-muted);line-height:1.7}
#page-billing .billing-amount-label {border:1px solid var(--bf-line);border-radius:8px;color:var(--bf-ink);background:transparent;font-size:15px;font-weight:400;padding:14px 8px}
#page-billing .billing-amount-option input:checked+.billing-amount-label {background:var(--bf-soft);border-color:#ff6e2e;color:#ff6e2e}
#page-billing .billing-amount-option input:focus-visible+.billing-amount-label {outline:2px solid #ff6e2e;outline-offset:3px}
#page-billing .billing-terms-box {border-radius:10px;border-color:var(--bf-line);background:var(--bf-base);color:var(--bf-muted);font-size:14px;line-height:1.8}
#page-billing .billing-info-value,#page-billing .billing-checkbox {color:var(--bf-ink)}
#page-billing .billing-info-label {color:var(--bf-muted)}
#page-billing .billing-custom-input input {border-radius:8px;color:var(--bf-ink);background:var(--bf-base);border-color:var(--bf-line)}
#page-billing .billing-custom-input input:focus {border-color:#ff6e2e;outline:none}
#page-billing a:focus-visible,.billing-family-tabs a:focus-visible,.billing-family-link:focus-visible {outline:2px solid #ff6e2e;outline-offset:5px}
@media(max-width:1100px) {
 #page-billing .snap-section.billing-snap {padding-top:140px!important}
 #page-billing .billing-family-layout {gap:36px;grid-template-columns:.9fr 1.1fr}
 #page-billing .billing-amount-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px) {
 .billing-family-tabs,#page-billing .billing-family-layout,#page-billing .sub-header {width:calc(100% - 48px)}
 #page-billing .billing-family-layout {grid-template-columns:1fr;gap:32px}
 .billing-family-tabs {margin-bottom:36px}
 .billing-family-tabs a {font-size:18px;padding-block:15px}
 #page-billing .billing-guide {padding:0}
 #page-billing .billing-guide h2 {font-size:30px}
 #page-billing .billing-login-required {min-height:340px;padding:40px 24px}
}
@media(max-width:500px) {
 #page-billing .snap-section.billing-snap {padding:120px 0 96px!important}
 #page-billing .sub-header {margin-bottom:30px}
 .billing-family-tabs a {font-size:16px}
 #page-billing .billing-guide>p,#page-billing .billing-login-msg {font-size:15px}
 #page-billing .billing-guide h2 {font-size:28px}
 #page-billing .billing-section {padding:24px 20px}
 #page-billing .billing-section-title {font-size:19px}
 #page-billing .billing-login-title {font-size:24px}
}
@media(prefers-reduced-motion:reduce) {.billing-family-tabs a,.billing-family-tabs a::after,.billing-family-link {transition:none}}

/* Standalone guest billing: no navigation tabs or editorial sidebar. */
#page-billing .billing-family-layout--guest {display:block;width:min(640px,calc(100% - 48px));margin-inline:auto}
#page-billing .billing-family-layout--guest .billing-login-required {min-height:380px;padding:44px 28px}
#page-billing .billing-snap:has(.billing-family-layout--guest) {min-height:calc(100svh - var(--site-footer-h,150px))!important}
@media(max-width:600px) {
 #page-billing .billing-family-layout--guest {width:calc(100% - 40px)}
 #page-billing .billing-family-layout--guest .billing-login-required {min-height:320px;padding:32px 24px}
}

#page-billing .billing-session-exit {display:inline-block;margin-top:18px;color:var(--bf-muted);font-size:14px;text-underline-offset:4px;text-decoration:underline}
#page-billing .billing-session-exit:hover {color:#ff6e2e}
