.customer-account,.customer-checkout{max-width:1800px;margin-inline:auto}.account-layout{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(400px,1.3fr);gap:clamp(24px,3vw,60px);align-items:start}.customer-account .panel,.customer-checkout .panel,.address-editor .panel{padding:clamp(22px,2.2vw,40px);margin-bottom:24px}.customer-account h1,.customer-checkout h1,.address-editor h1{max-width:850px}.account-layout form{position:sticky;top:24px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field-pair label{min-width:0}.account-layout label,.address-editor label{display:block;font-size:14px;font-weight:600;margin-bottom:18px}.customer-account input,.address-editor input:not([type=checkbox]),.address-editor textarea{display:block;width:100%;border:1px solid #ead5ba;border-radius:10px;padding:13px;font:inherit;font-size:16px;background:#fff;color:#34251f;margin-top:8px;min-width:0}.customer-account input[readonly]{background:#fff1df;color:#725e50}.account-layout label small{display:block;font-size:12px;font-weight:400;line-height:1.5;margin-top:8px;color:#725e50}.account-notice:empty{display:none}.account-notice{padding:16px 20px;margin-bottom:24px;background:#eaf5ef;border:1px solid #b9dac7;border-radius:12px;color:#23543c}.address-list,.checkout-addresses{display:grid;gap:16px}.checkout-addresses{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}.address-card{border:1px solid #ead5ba;border-radius:16px;padding:22px;min-width:0;overflow-wrap:anywhere}.address-card.chosen{border:2px solid #a33827;padding:21px;background:#fffaf3}.address-card h3{margin:0}.address-card p{margin:8px 0;font-size:14px}.address-tag,.test-pill{display:inline-block;padding:6px 10px;background:#fff1df;color:#a33827;border-radius:8px;font-size:12px;font-weight:700}.address-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px}.address-actions .text{min-height:44px}.address-empty{padding:25px 0}.address-empty>svg{width:40px;height:40px;margin-bottom:16px;color:#a33827}.address-editor{max-width:800px;margin:auto}.address-editor .confirm-check{display:flex;align-items:center;gap:12px}.address-editor .confirm-check input{width:20px;height:20px}.form-error{color:#a32532;font-size:14px;line-height:1.5;margin-block:12px;overflow-wrap:anywhere}.form-error:empty{display:none}.customer-checkout .order-summary{position:sticky;top:24px;height:max-content}.payment-panel h2{font-size:clamp(28px,3vw,46px);margin-block:22px}.payment-options{display:grid;gap:12px;margin-top:24px}.payment-attempt{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #ead5ba;padding:16px 0}.payment-attempt small{display:block;margin-top:6px;color:#725e50}.customer-account .section-heading,.customer-checkout .section-heading{flex-wrap:wrap}.customer-checkout p,.customer-account p,.address-editor p{overflow-wrap:anywhere}.customer-account .micro,.customer-checkout .micro,.address-editor .micro{font-size:13px}.customer-account .primary,.customer-checkout .primary,.address-editor .primary{min-height:48px}.customer-account .secondary,.customer-checkout .secondary{min-height:44px}
@media(max-width:1050px){.account-layout{grid-template-columns:1fr}.account-layout form{position:static}.customer-checkout .order-summary{position:static}.desktop-nav{gap:10px}}
@media(max-width:650px){.customer-account .panel,.customer-checkout .panel,.address-editor .panel{padding:20px 16px}.field-pair{grid-template-columns:1fr;gap:0}.address-card{padding:17px}.address-card.chosen{padding:16px}.customer-account h1,.customer-checkout h1,.address-editor h1{font-size:32px;letter-spacing:-1px}.customer-account h2,.customer-checkout h2{font-size:23px}.customer-account .section-heading,.customer-checkout .section-heading{gap:12px}.payment-panel h2{font-size:32px}.customer-checkout .order-items{font-size:14px}.mobile-nav{grid-template-columns:repeat(4,1fr)}.mobile-nav button{min-width:0;font-size:11px}.customer-account .page-heading p,.customer-checkout .page-heading p{font-size:16px}}
/* Focused customer screens: natural document scrolling remains available. */
.step-shell{max-width:650px;margin:0 auto}.step-shell h1{font-size:32px;line-height:1.15;letter-spacing:-1px;margin:12px 0 20px}.step-shell>p{margin:12px 0 22px}.step-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:#725e50;margin-bottom:10px}.step-top .text{padding:8px 0;min-height:44px}.step-progress{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0;margin:0 0 18px;color:#725e50;font-size:12px}.step-progress li{border-top:3px solid #ead5ba;padding-top:8px}.step-progress .reached{border-color:#a33827;color:#a33827}.step-progress [aria-current]{font-weight:750}.step-shell .focused-form{padding:24px;margin:0;border-radius:18px}.focused-form label{display:block;font-size:14px;font-weight:600;margin-bottom:14px}.focused-form input:not([type=radio]):not([type=checkbox]),.focused-form select,.focused-form textarea{display:block;width:100%;min-width:0;padding:11px 12px;margin-top:6px;border:1px solid #ead5ba;border-radius:9px;font:inherit;font-size:16px;color:#34251f;background:#fff;min-height:44px}.focused-form input[readonly]{background:#fff1df}.focused-form textarea{resize:vertical}.focused-form .field-pair{grid-template-columns:1fr 1fr;gap:12px}.field-help{font-size:12px!important;line-height:1.45!important;color:#725e50;margin:8px 0 16px;text-align:left!important}.phone-field{display:flex;align-items:center;border:1px solid #ead5ba;border-radius:9px;margin-top:6px;background:#fff}.phone-field>span{padding:0 12px;border-right:1px solid #ead5ba;color:#725e50;font-weight:700}.phone-field input{border:0!important;margin:0!important;flex:1;width:0!important;min-width:0!important}.step-actions{margin-top:18px}.step-actions button{min-height:48px;font-size:15px}.focused-form .confirm-check{display:flex;align-items:center;gap:10px;font-size:14px;margin:12px 0}.focused-form .confirm-check input{width:18px;height:18px}.extra-fields{border-top:1px solid #ead5ba;margin-top:14px;padding-top:4px}.extra-fields summary{padding:12px 0;cursor:pointer;font-size:14px;font-weight:650;min-height:44px}.account-menu{display:grid;gap:12px;margin:24px 0}.account-menu>button{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;background:#fff;border:1px solid #ead5ba;border-radius:16px;padding:20px;color:#34251f}.account-menu>button>span{display:grid;grid-template-columns:26px 1fr;gap:8px 14px}.account-menu b{font-size:16px}.account-menu small{grid-column:2;display:block;color:#725e50;font-size:13px;font-weight:400;line-height:1.4}.account-menu svg{color:#a33827}.account-hub .micro{font-size:12px;text-align:left}.compact-addresses .address-card{padding:16px}.compact-addresses .address-card.chosen{padding:15px}.compact-addresses .address-card p{font-size:14px;line-height:1.45}.compact-addresses .address-actions{gap:8px;margin-top:8px}.compact-addresses .address-actions button{font-size:13px;padding:9px 12px;min-height:44px}.compact-addresses{margin-bottom:16px}.delivery-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;border:0;padding:0;margin:0 0 16px}.delivery-options legend{font-size:14px;font-weight:600;margin-bottom:10px}.delivery-options label{border:1px solid #ead5ba;border-radius:10px;padding:13px 8px;display:flex;align-items:center;gap:8px;margin:0;font-size:14px}.delivery-options label:has(:checked){background:#fff1df;border-color:#a33827}.delivery-options input{width:18px;height:18px;flex-shrink:0}.review-contact p{font-size:13px;line-height:1.5;margin:8px 0;overflow-wrap:anywhere}.step-shell .order-items>div{padding:12px 0}.step-shell .totals{margin-top:16px}.step-shell .payment-panel h2{font-size:28px;margin:18px 0}.step-shell .payment-panel>p{font-size:14px;line-height:1.5}.step-shell .payment-options{margin-top:18px;gap:10px}.step-shell .payment-options button{min-height:48px;font-size:14px}.step-shell .account-notice{font-size:13px;margin:12px 0;padding:12px}.step-shell .test-pill{font-size:11px}
@media(max-width:650px){body[data-role=customer] .demo-bar{min-height:28px;padding:6px 16px;font-size:10px;gap:8px}body[data-role=customer] .demo-bar>span:nth-child(2){display:none}body[data-role=customer] .demo-details{font-size:10px;position:static;margin-left:auto}body[data-role=customer][data-focus=true] header{min-height:66px;padding:12px 16px;gap:8px;flex-wrap:nowrap}body[data-role=customer][data-focus=true] header .signout{display:none}body[data-role=customer][data-focus=true] .mobile-nav{display:none}body[data-role=customer][data-focus=true] main{padding:12px 14px 28px}body[data-role=customer][data-focus=true] header .brand{font-size:24px}body[data-role=customer][data-focus=true] header .brand-icon{width:34px;height:34px}.step-shell h1{font-size:27px;line-height:1.16;margin:8px 0 14px}.step-shell .focused-form{padding:16px 14px}.step-progress{margin-bottom:14px;gap:7px;font-size:11px}.step-top{margin:0}.focused-form label{margin-bottom:11px}.focused-form .field-pair{grid-template-columns:1fr 1fr;gap:10px}.focused-form input:not([type=radio]):not([type=checkbox]),.focused-form select,.focused-form textarea{padding:10px;min-height:44px}.step-actions{position:sticky;bottom:0;padding:10px 0 max(4px,env(safe-area-inset-bottom));background:#fff;z-index:2;margin-top:10px}.account-menu{margin:18px 0;gap:10px}.account-menu>button{padding:16px}.step-shell .panel{box-shadow:none}.delivery-options label{font-size:13px}.step-shell .payment-panel h2{font-size:27px}.step-shell .form-error{font-size:13px}.extra-fields input{max-width:100%}}
.step-shell .focused-form label{margin-top:0}.focused-form .confirm-check{min-height:44px}.legacy-location{margin-top:0}
