.cart-page{background:#f4f6f5}.checkout-head{padding:72px 0 48px;text-align:center}.checkout-head>p,.checkout-copy>p{color:var(--accent-dark);font-size:12px;font-weight:800}.checkout-head h1{margin:12px 0 38px;font-size:clamp(40px,4.5vw,62px);letter-spacing:-.04em}.checkout-steps{display:flex;justify-content:center;gap:0}.checkout-steps span{min-width:180px;padding:13px 18px;border-bottom:2px solid #cbd4d1;color:#76837f;font-size:12px;font-weight:750}.checkout-steps .is-active{border-color:var(--ink);color:var(--ink)}.checkout-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,.65fr);gap:32px;align-items:start;padding-bottom:110px}.cart-panel,.order-summary,.checkout-form{background:#fff;border-radius:14px}.cart-panel{padding:32px}.cart-panel>header{display:flex;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--line)}.cart-panel h2,.order-summary h2{margin:0;font-size:25px}.cart-panel header p{margin:8px 0 0;color:var(--muted);font-size:13px}.cart-panel header>a{font-size:13px;font-weight:750;text-decoration:underline}.cart-item{display:grid;grid-template-columns:150px minmax(0,1fr) 80px 110px;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}.cart-item img{display:block;width:150px;aspect-ratio:4/3;object-fit:contain;background:#f2f5f4;padding:10px}.cart-item__details>span{font-size:11px;color:var(--accent-dark);font-weight:800}.cart-item h3{font-size:18px;margin:8px 0}.cart-item p{margin:0;color:var(--muted);font-size:12px}.cart-item__details button{margin-top:15px;padding:0;border:0;background:none;color:#6b7773;text-decoration:underline;cursor:pointer}.cart-item__quantity label{display:block;margin-bottom:7px;font-size:11px;color:var(--muted)}.cart-item__quantity select{width:68px;height:42px;border:1px solid #aebbb6;border-radius:6px;background:#fff;padding:0 10px}.cart-item>strong{text-align:right;font-size:17px}.cart-empty{padding:64px 20px;text-align:center}.cart-empty[hidden]{display:none}.cart-empty p{color:var(--muted);margin-bottom:26px}.order-summary{position:sticky;top:24px;padding:30px}.order-summary dl{margin:28px 0}.order-summary dl>div{display:flex;justify-content:space-between;gap:25px;padding:11px 0;font-size:13px}.order-summary dd{margin:0;text-align:right}.order-summary .order-total{margin-top:14px;padding-top:22px;border-top:1px solid var(--line);font-size:17px;font-weight:850}.order-summary>p{font-size:11px;line-height:1.7;color:var(--muted)}.order-summary .button{width:100%;margin-top:15px}.button:disabled{opacity:.45;cursor:not-allowed}.checkout-form-section{padding:110px 0;background:#e4e9e7}.checkout-form-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:start}.checkout-copy{position:sticky;top:40px}.checkout-copy h2{font-size:clamp(40px,4vw,58px);line-height:1.1;letter-spacing:-.04em;margin:12px 0 25px}.checkout-copy>p:last-child{max-width:420px;color:var(--muted);line-height:1.75}.checkout-form{padding:36px}.checkout-form fieldset{padding:0 0 36px;margin:0 0 36px;border:0;border-bottom:1px solid var(--line)}.checkout-form legend{font-size:21px;font-weight:850;margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field-wide{grid-column:1/-1}.checkout-form label:not(.payment-options label,.consent){display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700}.checkout-form input,.checkout-form select{width:100%;height:50px;border:1px solid #9caaa5;border-radius:7px;background:#fff;padding:0 14px;color:var(--ink);font:inherit}.checkout-form input:focus,.checkout-form select:focus{outline:3px solid rgba(20,184,121,.22);border-color:#157252}.payment-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}.payment-options label{display:block}.payment-options input{position:absolute;opacity:0;pointer-events:none}.payment-options span{display:flex;min-height:92px;flex-direction:column;justify-content:center;padding:15px;border:1px solid #aebbb6;border-radius:8px;cursor:pointer}.payment-options input:checked+span{border:2px solid var(--ink);padding:14px;background:#f2f5f4}.payment-options small{margin-top:6px;color:var(--muted);line-height:1.4}.consent{display:flex;gap:12px;align-items:flex-start;font-size:12px;line-height:1.6}.consent input{width:20px;height:20px;flex:none;margin-top:1px}.checkout-submit{width:100%;margin-top:25px}.payment-notice{font-size:11px;text-align:center;color:var(--muted)}.invoice-note{margin:14px 0 0;font-size:12px;line-height:1.6;color:var(--muted)}.form-error{padding:12px;background:#fff1ef;color:#a1342b}.form-error[hidden]{display:none}.order-success{padding-block:130px;text-align:center}.order-success[hidden]{display:none}.order-success>span{color:var(--accent-dark);font-size:12px;font-weight:850}.order-success h2{font-size:52px;margin:14px 0}.order-success p{max-width:620px;margin:10px auto;color:var(--muted);line-height:1.7}.order-success .button{margin-top:25px}
@media(max-width:950px){.checkout-layout,.checkout-form-layout{grid-template-columns:1fr}.order-summary,.checkout-copy{position:static}.checkout-form-layout{gap:40px}.cart-item{grid-template-columns:125px minmax(0,1fr) 70px 100px}.cart-item img{width:125px}}
@media(max-width:640px){.checkout-head{padding:50px 0 35px}.checkout-head h1{font-size:38px}.checkout-steps span{min-width:0;flex:1;padding-inline:4px}.checkout-layout{padding-bottom:75px}.cart-panel{padding:20px}.cart-panel>header{align-items:flex-start}.cart-item{grid-template-columns:92px minmax(0,1fr);gap:16px}.cart-item img{width:92px}.cart-item__quantity{grid-column:2}.cart-item>strong{grid-column:2;text-align:left}.checkout-form-section{padding:75px 0}.checkout-copy h2{font-size:38px}.checkout-form{padding:22px 18px}.form-grid,.payment-options{grid-template-columns:1fr}.field-wide{grid-column:auto}.payment-options span{min-height:72px}.order-success{padding-block:90px}.order-success h2{font-size:40px}}
.cart-page *{box-sizing:border-box}.checkout-form input:not([type="radio"]):not([type="checkbox"]),.checkout-form select{max-width:100%;min-width:0}.checkout-form .payment-options input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.consent a{text-decoration:underline;text-underline-offset:2px;margin-inline:3px}.order-success>div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:25px}.order-success>div .button{margin-top:0}
