.checkout-page{padding-block-start:120px;padding-block-end:var(--space-xl)}.checkout-page .wrap{max-width:1080px;margin:0 auto;padding-inline:var(--gutter)}.checkout-page h1{font-family:var(--display);font-weight:500;font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:32px}.co-empty{display:flex;flex-direction:column;align-items:flex-start;gap:18px;color:var(--stone)}.co-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:48px;align-items:start}.co-section{border:0;margin:0 0 28px;padding:0}.co-section legend{font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--olive);margin-bottom:14px;padding:0}.field{margin-bottom:18px}.field label{display:block;font-size:.8125rem;color:var(--ink);margin-bottom:6px}.field .req{color:var(--olive)}.field input,.field select,.field textarea{width:100%;font-family:var(--sans);font-size:.9375rem;color:var(--ink);background:var(--canvas);border:1px solid color-mix(in oklab,var(--stone) 50%,transparent);border-radius:var(--radius-sm);padding:11px 13px}.field textarea{resize:vertical}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--olive);outline-offset:1px;border-color:var(--olive)}.field [aria-invalid=true]{border-color:var(--olive-deep);background:color-mix(in oklab,var(--olive) 6%,var(--canvas))}.field .hint{margin:6px 0 0;font-size:.75rem;color:var(--stone)}.field .err{margin:6px 0 0;font-size:.75rem;color:var(--olive-deep);font-weight:500}.form-actions{margin-top:8px}.continue-btn{width:100%;text-align:center}.co-review h2{font-family:var(--display);font-weight:500;font-size:1.5rem;margin:0 0 18px}.co-review h2:focus-visible{outline:2px solid var(--olive);outline-offset:4px}.rev-sub{font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--olive);margin:0 0 12px}.rev-dl{margin:0 0 24px;padding:0}.rev-row{display:grid;grid-template-columns:9rem 1fr;gap:10px;padding:9px 0;border-bottom:1px solid color-mix(in oklab,var(--stone) 25%,transparent);font-size:.9rem}.rev-row dt{color:var(--stone)}.rev-row dd{margin:0;color:var(--ink)}.edit-link{display:inline-block;margin-top:14px;background:none;border:0;padding:0;font-family:var(--sans);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);cursor:pointer}.edit-link:hover{color:var(--olive)}.edit-link:focus-visible{outline:2px solid var(--olive);outline-offset:3px}.co-summary{background:var(--canvas-2);border-radius:var(--radius-sm);padding:28px;position:sticky;top:96px}.co-summary h2{font-family:var(--display);font-weight:500;font-size:1.25rem;margin:0 0 18px}.co-lines{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:12px}.co-line{display:flex;justify-content:space-between;align-items:baseline;gap:14px;font-size:.875rem}.co-line .co-qty{color:var(--stone)}.co-line-price{font-family:var(--display);color:var(--olive-deep);white-space:nowrap}.co-line-price span{font-family:var(--sans);font-size:.7rem;color:var(--stone)}.co-totals{margin:0;padding-block-start:16px;border-block-start:1px solid color-mix(in oklab,var(--stone) 30%,transparent)}.co-totals .row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:.9375rem}.co-totals dt{color:var(--ink)}.co-totals dd{margin:0}.co-totals .muted{color:var(--stone);font-size:.8125rem}.co-totals .total{margin-top:6px;padding-top:12px;border-top:1px solid color-mix(in oklab,var(--stone) 30%,transparent)}.co-totals .total dt{font-weight:500}.co-totals .total dd{font-family:var(--display);font-size:1.25rem;color:var(--olive-deep)}.pay-btn{width:100%;text-align:center;margin-top:8px}.co-status{margin:14px 0 0;padding:12px 14px;background:color-mix(in oklab,var(--olive) 8%,var(--canvas));border-radius:var(--radius-sm);font-size:.8125rem;color:var(--ink);display:flex;flex-direction:column;gap:4px}.co-status strong{color:var(--olive-deep)}.back-link{display:block;margin-top:18px;text-align:center;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);text-decoration:none}.back-link:hover{color:var(--olive)}@media(max-width:860px){.co-grid{grid-template-columns:1fr;gap:28px}.co-summary{position:static;order:-1}}
