.checkout-page{--checkout-gap:clamp(20px,1.5vw,32px);isolation:isolate;min-height:80vh;padding:24px 0 calc(88px + env(safe-area-inset-bottom));background:var(--ec-bg);color:var(--ec-text);font-size:16px;position:relative;overflow:clip}.checkout-page *,.checkout-page :before,.checkout-page :after{box-sizing:border-box}.checkout-shell{z-index:1;width:min(100% - clamp(32px,9vw,340px),3000px);margin-inline:auto;position:relative}.checkout-background{z-index:0;pointer-events:none;background-image:url(/assets/checkout/checkout-background.webp);background-position:top;background-repeat:no-repeat;background-size:100%;position:absolute;inset:0}.checkout-heading-surface{border:1px solid var(--ec-border);background:var(--ec-bg-card);border-radius:16px;min-width:0;margin-bottom:24px;padding:clamp(20px,1.8vw,36px)}.checkout-heading-surface .checkout-progress{margin-bottom:0}.checkout-title-row,.checkout-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.checkout-intro h1{font-size:clamp(28px,2vw,36px);font-weight:750;line-height:1.25}.checkout-intro p{color:var(--ec-text-secondary);margin-top:8px}.checkout-mobile-intro{display:none}.checkout-text-link{text-underline-offset:3px;min-height:44px;color:var(--ec-accent);align-items:center;font-weight:600;text-decoration:underline;display:inline-flex}.checkout-reassurances{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0;display:grid}.checkout-reassurances>div{align-items:center;gap:12px;min-width:0;display:flex}.checkout-reassurances strong,.checkout-reassurances small{display:block}.checkout-reassurances small{color:var(--ec-text-secondary);margin-top:3px;font-size:14px}.checkout-progress{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0;padding:0;list-style:none;display:grid}.checkout-progress li{border-bottom:2px solid var(--ec-border);color:var(--ec-text-secondary);align-items:center;gap:10px;padding:12px 0;font-weight:600;display:flex}.checkout-progress li.checkout-step-active{border-color:var(--ec-accent);color:var(--ec-text)}.checkout-progress li>span:first-child{border:1px solid var(--ec-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.checkout-layout{gap:var(--checkout-gap);border:0;grid-template-columns:minmax(0,1fr) clamp(340px,25vw,520px);align-items:start;min-width:0;margin:0;padding:0;display:grid}.checkout-main-column,.checkout-summary{min-width:0}.checkout-card{border:1px solid var(--ec-border);background:var(--ec-bg-card);border-radius:16px;min-width:0;padding:clamp(20px,1.8vw,36px)}.checkout-card h2{font-size:clamp(20px,1.3vw,24px);font-weight:700;line-height:1.4}.checkout-card h3{margin-bottom:18px;font-size:20px;font-weight:650}.checkout-contact-address-body{margin-top:18px;display:block}.checkout-contact-section{min-width:0}.checkout-contact-summary{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 16px;max-width:760px;display:flex}.checkout-contact-summary>div{flex:180px;min-width:0}.checkout-contact-summary .checkout-label{margin-bottom:4px}.checkout-contact-summary .checkout-text-link{flex-shrink:0}.checkout-contact-value{overflow-wrap:anywhere;font-weight:600;line-height:1.6}.checkout-text-link:disabled{opacity:.55;cursor:not-allowed}.checkout-delivery-section{min-width:0;margin-top:28px}.checkout-guest-reassurance{margin:0 0 20px}.checkout-phone-controls{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;max-width:760px;display:grid}.checkout-phone-contact-only{grid-template-columns:auto minmax(0,1fr)}.checkout-input,.checkout-button,.checkout-phone-prefix{border-radius:8px;min-height:48px;font-size:1rem}.checkout-input{border:1px solid var(--ec-input-border);background:var(--ec-input-bg);width:100%;min-width:0;color:var(--ec-text);padding:10px 12px;line-height:1.5}.checkout-input::placeholder{color:var(--ec-text-secondary);opacity:1}.checkout-phone-prefix{border:1px solid var(--ec-input-border);background:var(--ec-input-bg);align-items:center;padding:10px 12px;display:flex}.checkout-button{justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:650;line-height:1.5;display:inline-flex}.checkout-secondary{border:1px solid var(--ec-border);color:var(--ec-text);background:var(--ec-bg-card)}.checkout-secondary:hover{background:var(--ec-hover)}.checkout-primary{background:var(--ec-action-primary);color:var(--ec-on-action);border:1px solid #0000}.checkout-primary:hover{background:var(--ec-action-primary-hover)}.checkout-input:focus-visible,.checkout-button:focus-visible,.checkout-text-link:focus-visible,.checkout-disclosure:focus-visible,.checkout-summary-toggle:focus-visible{outline:2px solid var(--ec-accent);outline-offset:3px}.checkout-button:disabled{opacity:.55;cursor:not-allowed}.checkout-input[aria-invalid=true]{border-color:var(--ec-status-danger-border,#b91c1c)}.checkout-label{margin-bottom:7px;font-weight:600;display:block}.checkout-helper{color:var(--ec-text-secondary);font-size:14px;line-height:1.65}.checkout-helper p{margin:8px 0}.checkout-address-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;display:grid}.checkout-field{min-width:0}.checkout-pin-status{min-height:24px;color:var(--ec-text-secondary);grid-column:1/-1;margin:0;font-size:14px;line-height:1.5}.checkout-field-error{color:var(--ec-status-danger-text,#991b1b);margin-top:6px;font-size:14px;line-height:1.5}.checkout-optional{margin-top:16px}.checkout-disclosure{cursor:pointer;min-height:44px;padding:9px 0;font-weight:600;list-style-position:inside;display:list-item}.checkout-optional-fields{gap:12px;margin-top:12px;display:grid}.checkout-continue{width:100%;min-height:52px;margin-top:24px}.checkout-legal{color:var(--ec-text-secondary);margin-top:14px;font-size:14px;line-height:1.6}.checkout-legal a{text-underline-offset:3px;text-decoration:underline}.checkout-saved-addresses{gap:12px;margin-top:24px;display:grid}.checkout-checkbox{align-items:center;gap:10px;min-height:44px;display:flex}.checkout-checkbox input,.checkout-warning input{width:18px;height:18px;accent-color:var(--ec-accent);flex-shrink:0}.checkout-summary-toggle{display:none}.checkout-summary-body{gap:18px;margin-top:24px;display:grid}.checkout-summary-product{border-bottom:1px solid var(--ec-border);grid-template-columns:64px minmax(0,1fr) auto;align-items:start;gap:12px;min-width:0;padding-bottom:18px;display:grid}.checkout-product-image{-o-object-fit:contain;object-fit:contain;background:var(--ec-bg);border-radius:8px;width:64px;height:64px}.checkout-product-copy{overflow-wrap:anywhere;min-width:0}.checkout-product-copy strong,.checkout-product-copy span{display:block}.checkout-product-copy span{color:var(--ec-text-secondary);margin-top:4px;font-size:14px}.checkout-summary-product>strong{text-align:right;font-size:14px}.checkout-coupon{border-bottom:1px solid var(--ec-border);padding-bottom:12px}.checkout-coupon-controls{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.checkout-offer{border:1px solid var(--ec-border);text-align:left;border-radius:8px;padding:12px}.checkout-offer span,.checkout-offer strong{display:block}.checkout-offer span{color:var(--ec-text-secondary);margin-top:4px;font-size:14px}.checkout-summary-prices{gap:14px;display:grid}.checkout-final-total{border-top:1px solid var(--ec-border);padding-top:18px;font-size:20px;font-weight:750}.checkout-support{margin-top:20px}.checkout-support h3{font-size:18px}.checkout-secure-note{color:var(--ec-text-secondary);border:1px solid var(--ec-border);background:var(--ec-bg-card);border-radius:8px;align-items:center;gap:10px;margin-top:14px;padding:12px;font-size:14px;display:flex}.checkout-review-address{overflow-wrap:anywhere;margin-top:24px;line-height:1.7}.checkout-review-address p{color:var(--ec-text-secondary)}.checkout-payment-method{border:1px solid var(--ec-border);border-radius:12px;gap:14px;margin-top:24px;padding:16px;display:flex}.checkout-payment-method svg{flex-shrink:0}.checkout-payment-method p{color:var(--ec-text-secondary);margin-top:4px;font-size:14px;line-height:1.6}.checkout-access-copy{color:var(--ec-text-secondary);margin-top:20px;font-size:14px;line-height:1.65}.checkout-warning,.checkout-alert,.checkout-notice{border:1px solid var(--ec-border);background:var(--ec-bg-card);overflow-wrap:anywhere;border-radius:12px;align-items:flex-start;gap:10px;margin:16px 0;padding:14px;line-height:1.6;display:flex}.checkout-alert{border-color:var(--ec-status-danger-border,#b91c1c)}.checkout-alert svg,.checkout-notice svg{flex-shrink:0;margin-top:4px}.checkout-session-choice{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.checkout-sign-in-dialog{border:1px solid var(--ec-border);background:var(--ec-bg-card);width:min(580px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ec-text);border-radius:16px;margin:auto;padding:24px;overflow:auto}.checkout-sign-in-dialog::backdrop{background:#00000080}.checkout-sign-in-dialog h2{font-size:22px;font-weight:700}.checkout-sign-in-dialog>.checkout-helper{margin:12px 0 20px}@media (min-width:2400px){.checkout-contact-address-body{grid-template-columns:minmax(340px,.7fr) minmax(640px,1.7fr);align-items:start;gap:40px;display:grid}.checkout-delivery-section{border-inline-start:1px solid var(--ec-border);margin-top:0;padding-inline-start:32px}.checkout-page{font-size:18px}}@media (max-width:1099px){.checkout-layout{grid-template-columns:minmax(0,1fr)}.checkout-summary{grid-row:1}.checkout-summary-title{display:none}.checkout-summary-toggle{text-align:left;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:48px;font-weight:600;display:flex}.checkout-summary-toggle svg{flex-shrink:0}.checkout-summary-body{display:none}.checkout-summary-body.checkout-summary-expanded{display:grid}.checkout-support{display:none}.checkout-reassurances{gap:16px}}@media (max-width:767px){.checkout-shell{width:calc(100% - 32px)}.checkout-page{padding-top:18px}.checkout-address-fields{grid-template-columns:minmax(0,1fr)}.checkout-card,.checkout-heading-surface{padding:18px 16px}.checkout-desktop-intro,.checkout-reassurances{display:none}.checkout-mobile-intro{display:block}.checkout-progress{gap:12px;font-size:14px}.checkout-title-row h1{font-size:28px}.checkout-summary-product{grid-template-columns:48px minmax(0,1fr)}.checkout-product-image{width:48px;height:48px}.checkout-summary-product>strong{text-align:left;grid-column:2}.checkout-phone-prefix{padding-inline:8px}.checkout-phone-controls .checkout-button{padding-inline:10px}.checkout-section-heading{gap:8px}.checkout-section-heading .checkout-text-link{font-size:14px}}@media (max-width:1099px){.checkout-summary:has(.checkout-summary-expanded) .checkout-support{display:block}}
