/* Dark cinematic checkout. Scoped to this shell; no paper panels or remote assets. */
body.purchase-page {
  --purchase-ink:#071016; --purchase-panel:#132129; --purchase-deep:#0a161b;
  --purchase-cyan:#86dfff; --purchase-white:#f7f9f7; --purchase-text:#c5d4db;
  --purchase-muted:#9fb3bd; --purchase-line:#36505c;
  color-scheme:dark; margin:0; min-height:100vh; color:var(--purchase-text);
  background:radial-gradient(ellipse at 90% 0, #12303a 0, transparent 42rem),var(--purchase-ink);
  font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.65;
  display:flex; flex-direction:column;
}
.purchase-page *, .purchase-page *::before, .purchase-page *::after {box-sizing:border-box;}
.purchase-page a {color:var(--purchase-cyan);text-decoration-thickness:1px;text-underline-offset:4px;}
.purchase-page a:visited {color:var(--purchase-cyan);}
.purchase-page a:hover {color:var(--purchase-white);}
.purchase-page :focus-visible {outline:3px solid var(--purchase-white);outline-offset:4px;}
.purchase-page ::selection {color:#071016;background:#86dfff;}
.purchase-page .purchase-header {border-bottom:1px solid #263b45;background:#071016;}
.purchase-header-inner {width:min(100% - 64px,1280px);min-height:84px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.purchase-page .purchase-brand {display:inline-block;flex-shrink:0;line-height:1;}
.purchase-brand img {width:198px;height:14px;max-width:100%;filter:brightness(0) invert(1);}
.purchase-page .purchase-nav {position:static;display:flex;align-items:center;gap:28px;height:auto;padding:0;border:0;box-shadow:none;background:none;backdrop-filter:none;font-size:14px;}
.purchase-nav a {text-decoration:none;color:#c5d4db;}
.purchase-nav .purchase-back {color:#86dfff;}
.purchase-confirmation {width:min(100% - 48px,800px);margin:0 auto;padding:56px 0 80px;flex:1;}
.purchase-eyebrow {margin:0 0 14px;color:#86dfff;text-transform:uppercase;font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;font-weight:600;}
.purchase-confirmation h1 {color:#f7f9f7;font-size:clamp(30px,4.5vw,50px);line-height:1.12;letter-spacing:-.045em;font-weight:700;margin:0 0 30px;overflow-wrap:anywhere;}
.purchase-card {padding:32px;border:1px solid #36505c;border-radius:6px;background:#132129;box-shadow:0 24px 80px #0003;}
.purchase-card > p {margin:0 0 24px;}
.purchase-card form {margin:0;}
.purchase-card label {display:block;color:#e1edf2;font-size:16px;line-height:1.6;}
.purchase-card select {appearance:auto;width:100%;max-width:100%;min-height:50px;margin:10px 0 16px;padding:12px 14px;color:#f7f9f7;border:1px solid #668391;border-radius:4px;background:#0a161b;font:inherit;line-height:1.4;color-scheme:dark;}
.purchase-card option {background:#0a161b;color:#f7f9f7;}
.purchase-card button,.purchase-page .purchase-button {display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:13px 22px;border:1px solid #86dfff;border-radius:3px;background:#86dfff;color:#09202b;font:700 15px/1.4 Arial,Helvetica,sans-serif;text-decoration:none;text-align:center;cursor:pointer;transition:background .15s,color .15s;}
.purchase-card button:hover,.purchase-page .purchase-button:hover {background:#b1eaff;border-color:#b1eaff;color:#09202b;}
.purchase-card button:active,.purchase-page .purchase-button:active {background:#65d4f7;color:#09202b;}
.purchase-card button:focus-visible,.purchase-page .purchase-button:focus-visible {outline-color:#f7f9f7;}
.purchase-page .purchase-button:visited {color:#09202b;}
.purchase-country-form {padding-bottom:24px;margin-bottom:24px!important;border-bottom:1px solid #36505c;}
.purchase-country-form button {background:transparent;color:#86dfff;}
.purchase-country-form button:hover {background:#173442;color:#f7f9f7;}
.purchase-card .purchase-seller {padding:14px 16px;margin:0 0 24px;background:#0a161b;border-left:3px solid #86dfff;color:#d8e7ed;font-size:14px;overflow-wrap:anywhere;}
.purchase-ack {padding:18px;margin:0 0 16px;background:#0a161b;border:1px solid #36505c;border-radius:4px;}
.purchase-ack label {display:grid;grid-template-columns:22px 1fr;gap:14px;cursor:pointer;}
.purchase-ack input[type=checkbox] {appearance:auto;width:21px;height:21px;margin:3px 0 0;accent-color:#86dfff;color-scheme:dark;cursor:pointer;}
.purchase-declarations button {margin:8px 0 0;}
.purchase-card details {margin-top:28px;border:1px solid #36505c;border-radius:4px;background:#0a161b;}
.purchase-card summary {padding:18px;color:#d8e7ed;cursor:pointer;font-weight:600;line-height:1.5;}
.purchase-card summary:hover {background:#173442;color:#f7f9f7;}
.purchase-card pre {white-space:pre-wrap;overflow-wrap:anywhere;padding:20px;margin:0;border-top:1px solid #36505c;color:#c5d4db;font:14px/1.8 Arial,Helvetica,sans-serif;}
.purchase-card [role=alert] {padding:16px 18px;border:1px solid #ad874c;border-left:3px solid #f0c27b;border-radius:3px;background:#30291d;color:#f9ddb0;}
.purchase-page .purchase-footer {padding:32px 0;margin:0;border-top:1px solid #263b45;background:#071016;color:#9fb3bd;}
.purchase-footer-inner {width:min(100% - 64px,1280px);margin:auto;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:start;}
.purchase-footer p {font-size:12px;margin:14px 0 0;line-height:1.8;}
.purchase-footer-links {display:flex;gap:20px;flex-wrap:wrap;font-size:13px;}
.purchase-footer-links a {color:#c5d4db;}
.purchase-footer .purchase-legal {grid-column:1/-1;margin:0;color:#9fb3bd;}
.purchase-skip {position:absolute;top:-100px;left:16px;z-index:100;padding:12px 18px;background:#132129;}
.purchase-skip:focus {top:12px;}
@media(max-width:600px){
 .purchase-header-inner {width:calc(100% - 40px);min-height:88px;gap:16px;flex-wrap:wrap;padding:20px 0;}
 .purchase-page .purchase-nav {gap:18px;font-size:13px;}
 .purchase-brand img {width:178px;height:auto;}
 .purchase-confirmation {width:calc(100% - 32px);padding:34px 0 48px;}
 .purchase-confirmation h1 {margin-bottom:24px;}
 .purchase-card {padding:22px 18px;}
 .purchase-card button,.purchase-page .purchase-button {width:100%;}
 .purchase-ack {padding:14px;}
 .purchase-ack label {gap:12px;font-size:15px;}
 .purchase-card pre {padding:16px;}
 .purchase-footer-inner {width:calc(100% - 40px);grid-template-columns:1fr;gap:20px;}
 .purchase-footer-links {gap:14px 20px;}
}
@media(prefers-reduced-motion:reduce){.purchase-card button,.purchase-page .purchase-button {transition:none;}}

/* Native full-site navigation remains usable under nonce-only CSP and without JS. */
.purchase-header-inner {position:relative;flex-wrap:wrap;}
.purchase-menu {margin-left:auto;}
.purchase-menu>summary {list-style:none;color:#c5d4db;cursor:pointer;padding:12px 0;}
.purchase-menu>summary::-webkit-details-marker {display:none;}
.purchase-menu>summary span {margin-left:10px;color:#86dfff;}
.purchase-menu[open] {width:100%;margin:0;padding-bottom:22px;}
.purchase-menu[open]>summary {position:absolute;right:0;top:18px;}
.purchase-menu .purchase-nav {display:flex;flex-wrap:wrap;gap:20px 28px;align-items:center;}
.purchase-nav details {position:relative;}
.purchase-nav summary {color:#c5d4db;cursor:pointer;}
.purchase-nav ul {position:absolute;z-index:5;min-width:190px;margin:12px 0 0;padding:16px 20px;background:#132129;border:1px solid #36505c;list-style:none;box-shadow:0 12px 30px #0008;}
.purchase-nav li {margin:6px 0;}
.purchase-nav .purchase-download {color:#86dfff;}
.purchase-hero {height:clamp(180px,24vw,310px);overflow:hidden;background:#071016;}
.purchase-hero img {display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%;opacity:.8;}
.purchase-confirmation {padding-top:36px;}
@media(max-width:600px){
 .purchase-header-inner {min-height:80px;}
 .purchase-menu[open]>summary {top:13px;}
 .purchase-menu .purchase-nav {display:grid;grid-template-columns:1fr;gap:16px;}
 .purchase-nav ul {position:static;min-width:0;box-shadow:none;}
 .purchase-hero {height:180px;}
}

.purchase-menu {display:none;}
.purchase-desktop-navigation {display:block;margin-left:auto;}
.purchase-desktop-navigation .purchase-nav {gap:20px;font-size:13px;}
@media(max-width:1000px){
 .purchase-desktop-navigation {display:none;}
 .purchase-menu {display:block;}
}
