.checkout-page { background: #f4f6f8; }
.checkout-main { padding: 72px 0; }
.checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .8fr); gap: 56px; align-items: start; }
.checkout-copy h1 { max-width: 15ch; }
.checkout-copy .lead { max-width: 54ch; }
.checkout-facts { margin: 28px 0 0; padding: 0; list-style: none; border-top: 1px solid #d9e0e8; }
.checkout-facts li { padding: 12px 0; border-bottom: 1px solid #d9e0e8; color: #52606d; }
.checkout-panel { padding: 28px; border: 1px solid #d9e0e8; border-radius: 8px; background: #fff; }
.checkout-panel h2 { margin: 4px 0 10px; font-size: 23px; }
.checkout-price { margin: 0 0 22px; color: #52606d; font-weight: 700; }
.checkout-note { margin: 18px 0 0; color: #52606d; font-size: .9rem; }
.invoice-form { display: grid; gap: 14px; }
.invoice-form[hidden] { display: none; }
.invoice-form label { display: grid; gap: 5px; color: #334155; font-size: .9rem; font-weight: 700; }
.invoice-form input { width: 100%; min-height: 42px; border: 1px solid #cbd5e1; border-radius: 6px; padding: 9px 10px; color: #142033; font: inherit; }
.invoice-form input:focus { outline: 3px solid #fdba74; outline-offset: 2px; border-color: #ea580c; }
.invoice-form .invoice-consent { display: flex; align-items: flex-start; gap: 9px; color: #52606d; font-size: .84rem; font-weight: 400; }
.invoice-form .invoice-consent input { width: 18px; min-height: 18px; margin-top: 2px; }
.invoice-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.invoice-status { min-height: 24px; margin: 0; color: #52606d; font-size: .9rem; }
@media (max-width: 800px) { .checkout-main { padding: 40px 0; } .checkout-layout { grid-template-columns: 1fr; gap: 28px; } .checkout-panel { padding: 21px; } }
