@font-face{font-family:Archi;src:url('/assets/archi-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
/* Scoped checkout presentation; other pages retain style.css. */
html:has(.presale-page){min-height:100%;background:#f7f8fa}
.presale-page{--ink:#1d2c3e;--muted:#657384;--line:#e1e6ed;--accent:#137ab5;--focus:#137ab5;--surface:#f4f6f9;--control:46px;--form-gap:14px;color-scheme:light;background:#f7f8fa;color:var(--ink);font-family:Archi,'Segoe UI',sans-serif;min-height:100vh;min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);margin:0}
.presale-page *{box-sizing:border-box}
.presale-header{min-height:68px;display:flex;align-items:center;justify-content:space-between;padding:10px max(32px,calc((100% - 1160px)/2));background:#fff;border-bottom:1px solid var(--line)}
.presale-brand{display:flex;align-items:center;text-decoration:none;padding:2px}.presale-brand img{width:37px;height:39px;object-fit:contain}.header-actions{display:flex;align-items:center}
.presale-page .language{display:flex;align-items:center;justify-content:center;gap:9px;min-width:84px;min-height:44px;padding:10px 17px;border:1px solid transparent;background:var(--surface);border-radius:100px;color:var(--ink);font:500 13px 'Segoe UI',sans-serif;transition:background .15s,border-color .15s}.presale-page .language:hover{background:#eaf0f5;border-color:#d9e2eb}
.icon{width:20px;height:20px;flex-shrink:0;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.language .icon{width:18px;height:18px}
.presale-layout{width:min(1080px,calc(100% - 80px));margin:20px auto;align-self:center;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:64px;align-items:center}.presale-story{min-width:0;padding-block:24px}
.presale-page h1{font:400 clamp(38px,4.3vw,56px)/1.2 Archi,'Segoe UI',sans-serif;letter-spacing:-1.8px;margin:0 0 24px;overflow-wrap:anywhere;text-wrap:balance}
.presale-date{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:13px;line-height:1.6;color:var(--muted)}.presale-date>svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.date-preview{font-size:10px;line-height:1.5;color:#41627c;background:#e8eff5;border-radius:100px;padding:5px 10px;white-space:nowrap}
.countdown-panel{margin-top:40px;max-width:400px}.countdown-heading{font-size:12px;color:var(--muted);margin-bottom:14px}.countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.time-unit{min-width:0;text-align:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px 6px 16px}.time-value{display:block;font:400 36px/1.1 'Segoe UI',sans-serif;letter-spacing:-1px;font-variant-numeric:tabular-nums;color:var(--ink)}.time-label{display:block;font-size:10px;line-height:1.4;color:var(--muted);margin-top:9px}.time-divider{display:none}
.checkout-card{min-width:0;position:relative;background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 8px 32px #213a580a}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.presale-page .card-heading h2{font:400 24px/1.4 Archi,'Segoe UI',sans-serif;letter-spacing:-.4px;margin:0}.card-heading>.icon{width:18px;height:18px;color:#8191a0}
.presale-page .summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;margin:0 0 24px;border:0;border-radius:14px;background:var(--surface)}.presale-page .summary p{margin:0!important}.presale-page .caption{font-size:12px;color:var(--muted)}.presale-page #amount{font:500 26px/1.2 'Segoe UI',sans-serif;letter-spacing:-.8px;overflow-wrap:anywhere;text-align:right;color:var(--ink)}
#checkout-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--form-gap) 14px}#checkout-form>.field-wide,#checkout-form>.consent,#checkout-form>.primary,#checkout-form>.error{grid-column:1/-1}
.presale-page .field{margin:0;min-width:0}.presale-page .field label{font-size:12px;line-height:1.5;display:block;margin:0 0 5px;color:var(--ink)}.presale-page .field small{font-size:10px;line-height:1.5;margin:0;color:var(--muted)}.input-shell,.phone-shell{position:relative}
.presale-page .field input,.presale-page .field textarea{width:100%;border:1px solid #dfe5ed;border-radius:12px;background:var(--surface);color:var(--ink);box-shadow:none;transition:border-color .15s,background .15s,box-shadow .15s}.presale-page .field input{height:var(--control);padding:12px 29px 12px 40px;font:15px/1.4 Archi,'Segoe UI',sans-serif}.presale-page .field input:hover,.presale-page .field textarea:hover{border-color:#adbdcc}.presale-page .field input::placeholder,.presale-page .field textarea::placeholder{font-size:13px;color:#748192;opacity:1}.presale-page .field input:focus,.presale-page .field textarea:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #137ab514}.presale-page input:-webkit-autofill{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 1000px #f1f6fa inset}
.input-shell>.icon{position:absolute;top:50%;left:14px;width:17px;height:17px;transform:translateY(-50%);color:#8191a0;pointer-events:none;transition:color .15s}.input-shell:focus-within>.icon{color:var(--accent)}.field-check{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:none;color:#26845f;pointer-events:none}.field-check .icon{height:14px;width:14px;stroke-width:1.8}.is-complete .field-check{display:block}
.phone-shell{display:flex;align-items:center;min-width:0;height:var(--control);border:1px solid #dfe5ed;border-radius:12px;background:var(--surface);transition:border-color .15s,background .15s,box-shadow .15s}.phone-shell:hover{border-color:#adbdcc}.phone-shell:focus-within{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #137ab514}.presale-page .phone-shell input{min-width:0;flex:1;border:0!important;outline:none!important;background:transparent;height:calc(var(--control) - 2px);padding:10px 29px 10px 12px;box-shadow:none!important}
.country-picker{flex-shrink:0;border-right:1px solid #d7e0e9}.country-picker>summary{display:flex;align-items:center;gap:7px;padding:0 12px;min-height:24px;list-style:none;cursor:pointer;border-radius:6px}.country-picker>summary::-webkit-details-marker{display:none}.country-picker img{width:22px;height:16px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px #0000000d}.country-picker #country-globe{width:21px;color:#5c7b8e}.country-picker #calling-code{font:13px 'Segoe UI',sans-serif;color:#405869;font-variant-numeric:tabular-nums}.country-chevron{width:12px;height:12px;color:#6f8796;transition:transform .15s}.country-picker[open] .country-chevron{transform:rotate(180deg);color:var(--accent)}.phone-shell.has-error{border-color:#b33e42}
.country-options{position:absolute;top:calc(100% + 7px);left:-1px;right:-1px;max-height:min(264px,40dvh);overflow-y:auto;overscroll-behavior:contain;padding:5px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px #213a581a;z-index:10}.country-options>button{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:40px;padding:9px 10px;background:transparent;border:0;border-radius:8px;text-align:left;color:var(--ink);font:12px/1.5 Archi,'Segoe UI',sans-serif}.country-options>button:hover,.country-options>button:focus{background:var(--surface)}.country-options>button[aria-selected=true]{color:var(--accent);background:#edf5fa}.presale-page .country-options>button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.country-option-code{font:12px 'Segoe UI',sans-serif;color:var(--muted);font-variant-numeric:tabular-nums}.country-options .icon{width:20px;height:20px}.presale-page .phone-shell #country-toggle:focus-visible{outline:none;color:var(--accent)}
.presale-page .field textarea{display:block;min-height:var(--control);max-height:260px;resize:vertical;padding:11px 14px 11px 40px;font:14px/1.5 Archi,'Segoe UI',sans-serif}.textarea-shell>.icon{top:calc(var(--control)/2)}.presale-page #payment-amount-help,.presale-page #description-help{display:block;margin-top:7px}.presale-page .field .inline-error{display:block;font-size:11px;color:#a13237;margin-top:6px}
.presale-page .consent{display:flex;align-items:flex-start;gap:10px;margin:2px 0;font-size:11px;line-height:1.7;color:var(--muted)}.presale-page .consent a{color:#24648a;text-decoration-thickness:1px}.presale-page .consent input{width:18px;height:18px;flex-shrink:0;margin:1px 0 0;accent-color:var(--accent);cursor:pointer}
.presale-page .primary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;width:100%;border:1px solid var(--accent);border-radius:13px;padding:12px 16px;background:var(--accent);color:#fff;font:400 14px/1.5 Archi,'Segoe UI',sans-serif;text-decoration:none;transition:background .15s,box-shadow .15s}.presale-page .primary>span{font:inherit}.presale-page .primary>.icon{width:19px;height:19px}.presale-page .primary:hover{background:#106ba0;border-color:#106ba0;box-shadow:0 4px 12px #137ab526}.presale-page .primary:active{background:#0c5d91;box-shadow:none}.presale-page .primary:disabled{opacity:.6;cursor:wait}
.button-spinner{display:none;width:17px;height:17px;border:2px solid #ffffff66;border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.primary[aria-busy=true] .button-spinner{display:block}.primary[aria-busy=true]>.icon{display:none}
.presale-page .demo-notice{display:flex;align-items:flex-start;gap:8px;border:0;background:none;padding:0;margin:12px 0 0;color:#716653;font-size:10px;line-height:1.6;border-radius:0}.demo-notice .icon{height:14px;width:14px;margin-top:1px}.presale-page .error{margin:0;padding:12px 14px;background:#fff4f2;color:#a13237;border:1px solid #f0d1cb;border-radius:10px;font-size:12px;line-height:1.6}.presale-page .notice{padding:15px 0;font-size:13px;color:var(--muted)}.presale-page #assistant-notice{padding:12px 14px;background:#eff6fa;border-radius:12px;color:#315c79;margin:0 0 20px}
.presale-page .result{padding:4px 0 0}.presale-page .status-mark{width:56px;height:56px;font-size:26px;background:#edf4f8;color:#32799f;border-radius:18px;border:0;margin-inline:auto}.presale-page .status-mark.paid{background:#eaf6ef;color:#267550}.presale-page .result h2{font:400 26px/1.4 Archi,'Segoe UI',sans-serif;letter-spacing:-.5px;margin:20px 0 12px}.presale-page .result>p{font-size:13px;line-height:1.7;margin:12px 0;color:var(--muted)}.presale-page .result .reference{font:12px/1.6 'Segoe UI',sans-serif;overflow-wrap:anywhere;background:var(--surface);border-radius:12px;padding:14px}.presale-page .result .primary{margin-top:16px;justify-content:center}
.presale-page .secondary{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;font:12px/1.5 Archi,'Segoe UI',sans-serif;min-height:46px;padding:12px 16px;margin-top:10px;transition:background .15s}.presale-page .secondary:hover{background:#eaf0f5}.previous-payment{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-size:10px;min-width:0}.previous-payment p{margin:0;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.presale-page .previous-payment .secondary{width:auto;flex-shrink:0;min-height:32px;margin:0;padding:7px 10px;border:0;font-size:10px;background:transparent;color:var(--accent)}.presale-page .previous-payment .secondary:hover{background:var(--surface)}
.presale-page .presale-footer{width:min(1160px,calc(100% - 64px));min-height:34px;border:0;display:flex;align-items:center;justify-content:space-between;padding:8px 0;margin:0 auto;color:#728091;font:11px/1.4 'Segoe UI',sans-serif;gap:12px}.presale-footer>span:first-child{font-size:10px;letter-spacing:1px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;top:8px;left:8px;padding:10px 16px;background:var(--accent);color:#fff;border-radius:10px;transform:translateY(-160%);z-index:5}.skip-link:focus{transform:none}@keyframes spin{to{transform:rotate(360deg)}}
/* Keep conversion beside the entered amount, with details available on demand. */
.story-eyebrow{display:inline-flex;margin:0 0 22px;padding:7px 12px;border-radius:100px;background:#eaf1f6;color:#42657d;font-size:10px;letter-spacing:.6px}
.checkout-card:has(#checkout-form:not([hidden])):has(#payment-amount-field:not([hidden]))>.summary{display:none}
.amount-input-shell>span{position:absolute;right:15px;top:50%;transform:translateY(-50%);font:500 12px 'Segoe UI',sans-serif;color:#728297;pointer-events:none}
.presale-page #payment-amount{font:400 18px/1.4 'Segoe UI',sans-serif;font-variant-numeric:tabular-nums;padding-right:62px}
.presale-page #payment-amount::placeholder{font-size:18px;color:#9aa7b5}
.exchange-quote{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 8px;margin-top:2px;padding-left:14px}
.conversion-total{display:flex;align-items:center;gap:9px;color:var(--ink);min-width:0}.conversion-total>.icon{width:16px;height:16px;color:#8191a0}
.conversion-total strong{font:500 17px/1.4 'Segoe UI',sans-serif;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0}
.rate-controls{position:relative;display:flex;align-items:center;gap:2px}
.rate-refresh,.rate-details>summary{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:0;border-radius:10px;padding:0;color:#748597;cursor:pointer;list-style:none;transition:background .15s,color .15s}.rate-details>summary::-webkit-details-marker{display:none}.rate-refresh>.icon,.rate-details>summary>.icon{width:17px;height:17px}
.rate-refresh:hover,.rate-details>summary:hover,.rate-details[open]>summary{background:var(--surface);color:var(--accent)}.rate-refresh:disabled{opacity:.55;cursor:wait}.rate-refresh[aria-busy=true]>.icon{animation:spin .9s linear infinite}
.rate-popover{position:absolute;right:0;top:calc(100% + 8px);width:240px;max-width:calc(100vw - 96px);z-index:5;padding:15px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 28px #213a581a}.rate-popover>p:first-child{margin:0;font:500 13px/1.6 'Segoe UI',sans-serif;color:var(--ink)}
.rate-date{margin:5px 0 0;font-size:10px;line-height:1.8;color:var(--muted)}.rate-date a{color:inherit;text-decoration:none}.rate-date a:hover{color:var(--accent);text-decoration:underline}.rate-date span{white-space:nowrap}
.presale-page .exchange-quote .inline-error{grid-column:1/-1;font-size:11px;margin:4px 0 0;color:#a13237}
.presale-page :is(button,a,summary,input[type=checkbox]):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.conversion-receipt{font-size:11px;line-height:1.8;color:var(--muted);margin:-12px 0 24px}
@media(max-width:1000px){.presale-layout{width:calc(100% - 56px);grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:36px}.presale-page h1{font-size:42px}.time-unit{padding:18px 4px 14px;border-radius:14px}.time-value{font-size:30px}.countdown{gap:6px}}
/* Compact laptops retain full controls; short screens and expanded states can scroll. */
@media(min-width:821px) and (max-height:780px){.presale-page{--control:44px;--form-gap:10px}.presale-header{min-height:60px;padding-block:8px}.presale-brand img{width:33px;height:35px}.presale-layout{margin-block:12px}.checkout-card{padding:20px 24px}.card-heading{margin-bottom:14px}.presale-page .card-heading h2{font-size:22px}.presale-page .presale-footer{min-height:28px;padding-block:6px}.presale-page .field textarea{padding-block:10px}.presale-page #assistant-notice{margin-bottom:12px;padding:8px 10px}.presale-page .demo-notice{margin-top:10px}}
@media(max-width:820px){.presale-header{min-height:60px;padding:8px 24px}.presale-brand img{width:33px;height:35px}.presale-layout{width:min(520px,calc(100% - 32px));grid-template-columns:1fr;gap:18px;margin-block:20px}.presale-story{padding:0 4px}.presale-page h1{font-size:30px;letter-spacing:-1px;margin-bottom:10px}.story-eyebrow{font-size:9px;margin-bottom:12px;padding:5px 10px}.presale-date{font-size:11px;gap:7px}.countdown-panel{margin-top:16px;max-width:none}.countdown-heading{font-size:10px;margin-bottom:8px}.time-unit{padding:10px 6px 8px;border-radius:12px}.time-value{font-size:24px}.time-label{font-size:9px;margin-top:4px}.countdown{gap:8px}.presale-page .field input,.presale-page .field textarea{font-size:16px}.presale-page .presale-footer{width:calc(100% - 40px)}}
@media(max-width:480px){.presale-page{--form-gap:12px}.presale-header{padding-inline:20px}.presale-page .language{min-width:76px;min-height:40px;padding:8px 14px}.presale-layout{margin-block:16px;gap:16px}.presale-page h1{font-size:28px}.story-eyebrow{margin-bottom:10px}.date-preview{font-size:9px;padding:3px 7px}.checkout-card{padding:20px 18px;border-radius:18px}.card-heading{margin-bottom:16px}.presale-page .card-heading h2{font-size:22px}.presale-page .summary{padding:12px;margin-bottom:18px}.presale-page #amount{font-size:24px}#checkout-form{grid-template-columns:1fr}.presale-page .field textarea{padding-block:10px}.presale-page .result h2{font-size:24px}.rate-refresh,.rate-details>summary{width:40px;height:40px}.presale-page .primary{font-size:13px}.presale-page .consent{font-size:10px}.presale-page .previous-payment .secondary{max-width:48%}}
@media(prefers-reduced-motion:reduce){.presale-page *{animation:none!important;transition:none!important}}

/* The country list opens with a search box on top, so a customer types their country instead of scrolling for it. */
.country-menu{position:absolute;top:calc(100% + 7px);left:-1px;right:-1px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px #213a581a;z-index:10;overflow:hidden}.country-menu .country-options{position:static;border:0;border-radius:0;box-shadow:none}#country-search{display:block;box-sizing:border-box;width:calc(100% - 10px);margin:5px 5px 0;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:13px Archi,'Segoe UI',sans-serif}#country-search:focus{outline:2px solid var(--accent);outline-offset:-1px}
