.preferences{display:flex;align-items:center;gap:8px;flex-shrink:0;font-size:14px;letter-spacing:0}.preferences button{font:inherit;color:var(--ink);cursor:pointer;border:0;background:transparent;min-width:32px;min-height:36px;padding:5px 8px;border-radius:5px}.pref-theme,.pref-size,.pref-language{display:flex;align-items:center;border:1px solid var(--line)!important;border-radius:7px;background:var(--wash)!important}.pref-theme{gap:5px}.pref-size output{width:1ch;min-width:1ch;flex:0 0 1ch;padding:0;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}.preferences button:disabled{opacity:.4;cursor:default}.pref-language button[aria-pressed=true]{background:var(--blue);color:#fff}.preferences button:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--blue)}
.nav{gap:18px;flex-wrap:wrap;padding-block:14px}.nav nav{gap:20px}.nav>.button.small{margin-left:auto}.nav .preferences{margin-left:0}.nav .back-home{margin-left:auto}
html[data-theme=dark]{color-scheme:dark;--ink:#edf0fa;--muted:#bac3d9;--line:#394359;--wash:#1d273a;--white:#101827;--blue:#8fa8ff}html[data-theme=dark] header{background:rgba(16,24,39,.98)}html[data-theme=dark] .button:not(.outline):not(.light),html[data-theme=dark] .launch-card,html[data-theme=dark] .plan-ribbon,html[data-theme=dark] .closing{background:#304fda;color:#fff}html[data-theme=dark] .launch-card{box-shadow:14px 14px 0 #263149}html[data-theme=dark] .speed{background:#0b1120}html[data-theme=dark] .button.outline,html[data-theme=dark] .field input,html[data-theme=dark] .field textarea{background:var(--white);color:var(--ink)}html[data-theme=dark] .speed-label,html[data-theme=dark] .confirmation-icon{color:#11162b}html[data-theme=dark] .notice{background:#1d2d51;color:#e0e8ff;border-color:#52699d}html[data-theme=dark] .notice.error{background:#401f2b;color:#ffd7dc}html[data-theme=dark] .skip{background:#1d273a}html[data-theme=dark] .button.light{color:#2448ff}html[data-theme=dark] .hosting-panel{border-color:var(--line)}
@media(max-width:1200px){.nav{gap:14px}.nav nav{gap:16px}.nav>.button.small{display:none}}
@media(max-width:760px){.nav nav{display:flex!important;flex-wrap:wrap;margin-left:0;gap:18px}.nav .brand{flex:1}.nav .preferences{margin-left:auto;flex-wrap:wrap}.nav{gap:12px}.wrap{width:calc(100% - 36px)}.hero h1{overflow-wrap:anywhere}.speed-stat strong{white-space:normal}.order-summary{position:static}}
@media(max-width:430px){.nav nav{width:100%;order:2}.nav .preferences{order:3;margin-left:0}.nav .back-home{order:2}.preferences{max-width:100%}.card-price{font-size:7rem}}

/* Larger navigation and preference controls. */
#top .nav nav{font-size:1.125rem;line-height:1.5;gap:22px;flex-wrap:wrap}
.preferences{font-size:1.0625rem;gap:10px}
.preferences button{min-width:40px;min-height:44px;padding:7px 10px}
.pref-theme{gap:7px}




#top .nav>.button.small{display:inline-flex;font-size:calc(1.0625rem + 2px);font-weight:800;line-height:1.5;min-height:48px;padding:12px 18px}
#top .nav{gap:16px 22px}
@media(max-width:1200px){#top .nav>.button.small{margin-left:0}}
@media(max-width:760px){
 #top .nav nav{width:100%;order:2;margin-left:0}
 #top .nav .preferences{order:3;margin-left:0;flex-wrap:wrap}
 #top .nav>.button.small{order:4}
}

/* Single moon control for the existing light/dark switch. */
.preferences .pref-theme{justify-content:center;min-width:44px;min-height:44px;padding:9px;border:0!important;background:transparent!important}
.pref-theme svg{width:1.5rem;height:1.5rem;display:block}
.preferences .pref-theme[aria-checked=true]{color:var(--blue)}
.pref-theme[aria-checked=true] svg{fill:currentColor}
.preferences .pref-theme:focus-visible{outline:2px solid var(--blue);outline-offset:3px}

/* Portal navigation and keyboard-accessible login dialog. */
.preferences .auth-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:7px 10px;color:var(--ink);font-size:1.125rem;font-weight:700;white-space:nowrap}
.logout-form{margin:0}
.login-dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:32px;border:1px solid var(--line);border-radius:14px;background:var(--white);color:var(--ink);box-shadow:0 24px 80px #0005;overflow:auto}
.login-dialog::backdrop{background:#0b112099}
.login-dialog h2{font-size:2rem;margin:0 40px 24px 0}
.login-dialog .login-close{position:absolute;right:12px;top:12px;font-size:1.75rem}
.login-form{display:grid;gap:12px;text-align:left}
.login-form label{font-size:1.125rem;font-weight:700}
.login-form input:not([type=hidden]){box-sizing:border-box;width:100%;min-width:0;padding:12px;font:inherit;font-size:1.125rem;background:var(--wash);color:var(--ink);border:1px solid var(--line);border-radius:6px;margin-bottom:8px}
.login-dialog .login-submit{background:var(--blue);color:var(--white);font-size:1.125rem;font-weight:700;min-height:48px}
.login-error{margin:0 0 8px;color:var(--ink);font-size:1rem;line-height:1.5}
.login-form input:focus-visible,.preferences .auth-link:focus-visible{outline:2px solid var(--blue);outline-offset:3px}

/* Keep navigation and account/display controls together beside the brand. */
#top .nav{width:calc(100% - 32px);max-width:1800px;display:grid;grid-template-columns:max-content minmax(0,max-content) max-content;justify-content:start;gap:14px 5ch}
#top .nav .brand{white-space:nowrap}
#top .nav-tools{display:flex;align-items:center;gap:14px;min-width:0;overflow-x:auto;padding:5px 0;scrollbar-width:thin}
#top .nav-tools nav{display:flex;width:auto;margin:0;gap:14px;flex-wrap:nowrap;flex-shrink:0}
#top .nav-tools nav a{white-space:nowrap}
#top .nav-tools .preferences{margin:0;gap:5px;flex-wrap:nowrap;max-width:none}
#top .nav-tools .preferences .auth-link{padding-inline:6px}
#top .nav>.button.small{margin:0;white-space:nowrap;padding-inline:14px;gap:10px}
@media(max-width:1450px) and (min-width:761px){
 #top .nav{grid-template-columns:auto minmax(0,1fr)}
 #top .nav>.button.small{grid-column:2;justify-self:start}
}
@media(max-width:760px){
 #top .nav{grid-template-columns:minmax(0,1fr);gap:10px}
 #top .nav-tools{grid-row:2}
 #top .nav>.button.small{grid-row:3;justify-self:start}
}

/* Mobile header: fitted branding and an expandable navigation panel. */
.mobile-menu-toggle{display:none}
@media(max-width:760px){
 header .nav,#top header .nav{width:calc(100% - 24px);display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px 10px;padding-block:10px;min-height:70px}
 header .nav .brand,#top header .nav .brand,body footer .brand{min-width:0;gap:6px;font-size:clamp(22px,6.1vw,36px);letter-spacing:-.055em;white-space:nowrap}
 header .brand .brand-name,body footer .brand .brand-name{font-size:1em}
 header .brand .brand-icon,#top header .brand .brand-icon,body footer .brand .brand-icon{width:clamp(36px,10vw,52px);height:clamp(36px,10vw,52px)}
 header .nav .brand,#top header .nav .brand{container-type:inline-size;width:100%}
 header .brand .brand-name{font-size:clamp(20px,11.5cqw,58px)}
 header .brand .brand-icon,#top header .brand .brand-icon{width:clamp(40px,20cqw,80px);height:clamp(40px,20cqw,80px)}
 .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--wash);color:var(--ink);cursor:pointer;grid-column:2;grid-row:1}
 header .nav>.nav-tools,#top .nav>.nav-tools,header .nav>#header-action,#top .nav>#header-action{display:none}
 header .nav.menu-open>.nav-tools,#top .nav.menu-open>.nav-tools{display:flex;flex-direction:column;align-items:stretch;grid-column:1/-1;grid-row:2;gap:16px;overflow:visible;padding:14px 0;border-top:1px solid var(--line)}
 #top .nav-tools nav{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;width:100%;order:0}
 #top .nav-tools nav a{display:block;padding:10px 0;white-space:normal;min-height:44px}
 header .nav-tools .preferences,#top .nav-tools .preferences{display:flex;flex-wrap:wrap;gap:8px;margin:0;max-width:100%;order:0}
 header .nav.menu-open>#header-action,#top .nav.menu-open>#header-action{display:inline-flex;grid-column:1/-1;grid-row:3;justify-self:start;margin:0 0 4px;white-space:normal;max-width:100%}
 header:has(.menu-open){max-height:100dvh;overflow-y:auto}
}

.footer-navigation{display:none}
@media(max-width:760px){
 body footer .footer-inner{width:calc(100% - 24px);display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:18px 10px;align-items:center}
 body footer .brand{container-type:inline-size;width:100%;grid-column:1;grid-row:1}
 body footer .brand .brand-name{font-size:clamp(20px,11.5cqw,58px)}
 body footer .brand .brand-icon{width:clamp(40px,20cqw,80px);height:clamp(40px,20cqw,80px)}
 body footer .footer-inner>p,body footer .footer-inner>a:not(.brand){grid-column:1/-1}
 body footer .footer-inner>p{order:0}
 body .footer-inner.menu-open .footer-navigation{display:flex;flex-direction:column;gap:16px;grid-column:1/-1;padding-block:14px;border-block:1px solid var(--line);min-width:0}
 body .footer-navigation nav{display:flex;flex-direction:column;gap:0;margin:0;font-size:1.125rem}
 body .footer-navigation nav a{padding:10px 0;min-height:44px}
 body .footer-navigation .preferences{flex-wrap:wrap;gap:8px;max-width:100%}
 body .footer-navigation>.button{align-self:flex-start;max-width:100%;white-space:normal}
}

.login-dialog button{cursor:pointer;min-width:44px;min-height:44px;border:0;border-radius:6px}
.login-dialog .login-close{background:transparent;color:var(--ink)}

.secondary-site-nav{display:none}
/* Give every menu item identical typography, including the final link. */
body footer .footer-navigation nav a{font-size:1.125rem;font-weight:600;line-height:1.5;color:var(--ink)}
@media(max-width:760px){
 header .nav-tools .secondary-site-nav{display:flex!important;flex-direction:column;gap:0;margin:0;width:100%;order:0}
 header .nav-tools .secondary-site-nav a{padding:10px 0;min-height:44px;white-space:normal}
 header .nav-tools nav a,#top .nav-tools nav a{font-size:1.125rem;font-weight:600;line-height:1.5}
}
