.checkout-page { min-height: 100vh; }
.checkout-header-note { color: var(--red); font-size: .68rem; font-weight: 800; letter-spacing: .12em; }
.checkout-main { max-width: var(--max); margin: 0 auto; padding: clamp(48px,7vw,92px) 28px 110px; display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(42px,7vw,92px); align-items: start; }
.checkout-intro { position: sticky; top: 32px; }
.checkout-intro h1 { font-size: clamp(3rem,5.3vw,5.15rem); }
.checkout-intro > p:not(.eyebrow) { max-width: 550px; font-size: 1.04rem; }
.checkout-price { display: grid; gap: 2px; margin: 28px 0 24px; padding: 22px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.checkout-price strong { color: var(--red); font-size: 1.4rem; }
.checkout-price span, .checkout-intro li { font-size: .87rem; }
.checkout-intro ol { padding-left: 20px; line-height: 1.8; }
.checkout-panel { padding: clamp(25px,4vw,46px); border: 1px solid var(--line); background: var(--paper); box-shadow: 14px 16px 0 rgba(165,42,36,.1); }
.checkout-panel h2 { margin-bottom: 4px; font-size: clamp(2rem,3vw,3rem); }
.checkout-required { margin: 0 0 24px; color: #665e57; font-size: .82rem; }
.checkout-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 18px; }
.checkout-grid .wide { grid-column: 1 / -1; }
.buyer-type, .address-block { margin: 0 0 24px; padding: 0; border: 0; }
.buyer-type legend, .address-block legend { margin-bottom: 10px; font-weight: 800; }
.buyer-type { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.buyer-type legend { grid-column: 1 / -1; }
.buyer-type label { display: flex; gap: 10px; padding: 14px; border: 1px solid var(--line); background: #fff; cursor: pointer; }
.buyer-type span { display: grid; gap: 4px; }
.buyer-type small, .field small { color: #6c6259; font-size: .72rem; line-height: 1.4; }
.field small { display: block; margin-top: 7px; }
.address-grid { grid-template-columns: .55fr 1fr; }
.address-block > p { margin: -4px 0 0; color: #6c6259; font-size: .78rem; }
.checkout-notice { margin: 22px 0 14px; padding: 12px 14px; background: rgba(165,42,36,.07); font-size: .8rem; line-height: 1.5; }
.checkout-submit { width: 100%; text-align: center; }
.checkout-submit[disabled] { cursor: wait; opacity: .65; }
.honeypot { position: absolute !important; left: -9999px !important; }
@media (max-width: 860px) { .checkout-main { grid-template-columns: 1fr; } .checkout-intro { position: static; } }
@media (max-width: 600px) { .checkout-main { padding: 38px 20px 78px; gap: 32px; } .checkout-panel { margin: 0 -6px; padding: 24px 18px; box-shadow: 8px 10px 0 rgba(165,42,36,.1); } .checkout-grid, .buyer-type, .address-grid { grid-template-columns: 1fr; } .checkout-grid .wide, .buyer-type legend { grid-column: 1; } .checkout-header-note { max-width: 145px; text-align: right; } }

