 :root{--navy:#081426;--blue:#075bff;--muted:#596d8d;--line:#e0e7ef}body{line-height:1.5}h2{font-size:26px;line-height:1.25;letter-spacing:-.7px;margin:0 0 18px}h3{font-size:19px}button{font:inherit;background:var(--blue);color:white;border:1px solid transparent;border-radius:9px;padding:12px 18px;font-weight:650}button:hover:not(:disabled){filter:brightness(.95)}button:disabled{opacity:.45;cursor:not-allowed}a{color:var(--blue)}input,textarea,select{display:block;width:100%;border:1px solid #cbd5e2;border-radius:8px;padding:12px;background:white;color:var(--navy);min-height:46px}label{display:block;font-weight:600;font-size:14px;margin-bottom:18px}label input,label textarea{margin-top:7px;font-weight:400}.optional,.muted{color:var(--muted)}.optional{font-weight:400}.full{width:100%}.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.steps{display:flex;gap:20px;list-style:none;padding:0;color:var(--muted)}.steps li{display:flex;align-items:center}.steps b{border-radius:50%;background:#e8edf5;color:#617188;display:grid;place-items:center}.steps .active{color:var(--blue);font-weight:700}.steps .active b{background:var(--blue);color:white}.steps .done b{background:#dbe8ff;color:var(--blue)}.quantity button{background:white;color:var(--navy);border-color:var(--line);padding:4px 10px}.quantity .remove,.text-button{border:0;background:none;color:var(--muted)}.configuration label{margin:16px 0 7px}.total-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.fine{margin:10px 0 18px}.contact-link{display:flex;justify-content:center;align-items:center}.notice,.error{padding:16px 18px;border-radius:10px;margin:0 0 24px;background:#eaf2ff;border:1px solid #c7dbff;color:#20466f}.error{background:#fff0ee;border-color:#f4c2bc;color:#9c2f25}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.actions{display:flex;justify-content:space-between;gap:15px;margin-top:26px}.secondary{background:white;border-color:var(--line);color:var(--navy)}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.slots p{grid-column:1/-1}.slots button{background:white;color:var(--blue);border-color:#bed2fa;padding:10px 6px}.slots button[aria-pressed=true]{background:var(--blue);color:white}#date{max-width:280px;margin-top:8px}.review-row{border-bottom:1px solid var(--line);padding:14px 0;overflow-wrap:anywhere}.review-row b{font-size:13px;color:var(--muted)}#review-message{margin-top:22px}#addons:empty{display:none}input[type=checkbox]{accent-color:var(--blue)}.configuration .contact-link{justify-content:flex-start}.check-label{font-weight:400}
/* Cart-first layout: one page scroll, spacious configuration, compact cost summary. */
body{font-family:"Inter Variable",Inter,Arial,sans-serif!important;background:#f7f9fc}.checkout-page{max-width:1280px;margin:auto;padding:42px 36px 60px}.intro{max-width:800px;margin:0 0 30px}.intro h1{font-size:44px;letter-spacing:-1.7px;line-height:1.1;margin:12px 0 16px}.intro p:not(.eyebrow){font-size:17px;line-height:1.7;color:var(--muted)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start}.workspace{min-width:0}.cart{position:sticky;top:24px;max-height:none!important;overflow:visible!important;padding:26px!important}.panel{border-radius:16px;border:1px solid var(--line);box-shadow:none;background:white;padding:28px}.steps{margin-bottom:24px}.steps li{font-size:14px;gap:8px}.steps b{width:30px;height:30px;min-width:30px;font-size:13px}.cart-line{display:flex;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.line-image{width:116px;height:82px;object-fit:cover;border-radius:10px}.line-content{flex:1;min-width:0}.line-head{display:flex;align-items:start;justify-content:space-between;gap:20px}.line-head h3{font-size:18px;margin:0;line-height:1.35}.line-head strong{font-size:17px;white-space:nowrap}.purchase-type{font-size:13px;color:var(--muted);margin:7px 0 10px}.quantity{display:flex;gap:12px;align-items:center;margin:10px 0}.quantity button{min-height:40px;min-width:40px;font-size:16px}.quantity .remove{font-size:13px;min-height:40px;margin-left:auto;text-decoration:underline}.quantity span{font-size:14px}.item-scope{font-size:14px;color:var(--muted)}.item-scope summary{padding:8px 0;cursor:pointer;min-height:40px}.item-scope p{line-height:1.7}.configuration{background:#f6f9ff;border:1px solid #e0e8f5;border-radius:12px;margin:24px 0;padding:24px}.configuration h3{font-size:20px;margin:0 0 20px}.configuration input,.configuration select{font-size:16px;min-height:48px}.fine{font-size:14px!important;line-height:1.65!important}.text-button{font-size:14px;min-height:44px;padding:8px}.browse-link{display:inline-flex;align-items:center;min-height:48px;color:var(--blue);font-weight:600;font-size:14px;margin-top:16px}.total-row{font-size:15px;gap:16px;padding:13px 0}.total-row strong{text-align:right}.cart h2{font-size:23px;margin:8px 0 18px}.contact-link{min-height:44px;font-size:13px;line-height:1.5}.cart .full{margin-top:16px;min-height:50px;font-size:15px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.review-row{display:grid;gap:7px;margin:15px 0;font-size:15px;line-height:1.65}.review-group{margin:24px 0;border-top:1px solid var(--line);padding-top:18px}.review-group h3{font-size:18px}.review-group ul{padding-left:20px;line-height:1.8;color:var(--muted)}#quote-actions,#subscription-actions,#thanks-actions{border:1px solid var(--line);padding:22px;border-radius:12px;margin:24px 0;background:#f7faff}#quote-actions h3,#subscription-actions h3,#thanks-actions h3{font-size:19px;margin-top:0}#quote-actions p,#thanks-actions p{font-size:14px;line-height:1.7;color:var(--muted)}.subscription-buttons{margin-top:18px}.subscription-buttons button{width:100%;white-space:normal;min-height:48px}.check-label{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.65}.check-label input{flex-shrink:0;width:20px;height:20px;min-height:20px;margin:3px 0}.actions{flex-wrap:wrap}.actions button{min-height:48px;white-space:normal}.result-actions{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-top:25px}.empty{padding:30px 0}.empty h3{font-size:24px}.empty p{line-height:1.7;color:var(--muted)}.empty .primary{margin-top:12px}.slots button{font-size:14px;min-height:48px}.notice,.error{font-size:14px;line-height:1.65}.offer-note{border-top:1px solid var(--line);padding-top:15px}#addons:empty{display:none}@media(max-width:950px){.layout{grid-template-columns:minmax(0,1fr) 290px;gap:20px}.checkout-page{padding:32px 24px}.panel{padding:22px}.line-image{width:84px;height:65px}.line-head{display:block}.line-head strong{display:block;margin-top:7px}}@media(max-width:760px){.checkout-page{padding:28px 18px}.intro h1{font-size:35px}.layout{grid-template-columns:1fr;gap:24px}.cart{position:static;max-height:none!important}.panel{padding:22px}.line-head{display:flex;gap:12px}.line-head strong{margin:0}.line-image{width:80px;height:62px}.cart-line{gap:14px}.line-head h3{font-size:16px}.line-head strong{font-size:15px}.configuration{padding:19px}.steps{gap:12px;flex-wrap:wrap}.steps li{font-size:12px}.steps b{width:26px;height:26px;min-width:26px}.form-grid{grid-template-columns:1fr}.actions{gap:12px}.actions button{flex:1}.line-head{display:block}.line-head strong{margin-top:6px}}@media(max-width:380px){.line-image{display:none}.panel{padding:18px}.steps{gap:8px}}

.cart{order:0}.configuration h3{font-size:20px}.configuration label,.configuration input,.configuration select{font-size:15px}.dh-footer{max-width:none;width:100%;margin:40px 0 0}.dh-footer nav{font-size:13px}
@media(max-width:480px){.steps{gap:10px;flex-wrap:nowrap}.steps li{gap:5px;font-size:11px}.steps b{width:22px;height:22px;flex-shrink:0}.section-head h2{font-size:22px}.section-head .text-button{white-space:nowrap;padding:8px 0}.panel{padding:20px}}


.service-details,.address-section{margin:1.5rem 0;padding:1.25rem;border:1px solid #d5deea;border-radius:12px;background:#f8faff;min-width:0}
.service-details h3,.address-section h3{margin:0 0 .65rem}.address-section>legend{font-size:19px;font-weight:700;padding:0 .4rem}
.service-details fieldset,#billing-fields{border:0;padding:0;margin:0;min-width:0}label select{margin-top:7px;font-weight:400}
#details-form [hidden]{display:none!important}#details-form .form-grid{gap:0 16px}
