/* Focused customer pages: shared rhythm, restrained copy, and small-screen layout. */
.customer-dashboard-body .customer-dashboard-shell{width:min(100% - 32px,1280px);padding-block:28px 48px}
.customer-dashboard-body .customer-dashboard-grid.has-rail{grid-template-columns:minmax(0,1fr) 300px;gap:20px}
.customer-dashboard-body .customer-hero{min-height:300px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);border-radius:18px;box-shadow:0 10px 28px rgba(64,32,95,.06)}
.customer-dashboard-body .customer-hero.customer-hero--image-only{display:block;min-height:0;aspect-ratio:3/1;background:none}
.customer-dashboard-body .customer-hero.customer-hero--image-only>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.customer-dashboard-body .customer-hero::after,.customer-dashboard-body .customer-hero-mark{display:none}
.customer-dashboard-body .customer-hero-copy{padding:clamp(24px,3vw,40px)}
.customer-dashboard-body .customer-hero h1{max-width:440px;font-size:clamp(2rem,3.5vw,3rem);line-height:1.08}
.customer-dashboard-body .customer-primary-button{margin-top:22px;box-shadow:none}
.customer-dashboard-body .dashboard-section{margin-top:28px}
.customer-dashboard-body .dashboard-section-head{margin-bottom:14px}
.customer-dashboard-body .dashboard-section-head h2{font-size:1.25rem}
.customer-dashboard-body .featured-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.customer-dashboard-body .featured-card{display:flex;min-width:0;flex-direction:column;border-radius:14px;box-shadow:none}
.customer-dashboard-body .featured-image{height:125px}
.customer-dashboard-body .featured-content{display:flex;flex:1;flex-direction:column;padding:12px}
.customer-dashboard-body .featured-content h3{min-height:2.5em;margin:0 0 4px;white-space:normal;font-size:.86rem}
.customer-dashboard-body .featured-content p{margin:0 0 8px}
.customer-dashboard-body .featured-content>strong{margin-top:auto;margin-bottom:10px}
.customer-dashboard-body .featured-content button{min-height:40px}
.customer-dashboard-body .customer-dashboard-rail{gap:12px}
.customer-dashboard-body .rail-card{border-radius:14px;box-shadow:none}
.customer-dashboard-body .rail-card-head{align-items:center}
.customer-dashboard-body .delivery-card,.customer-dashboard-body .order-card,.customer-dashboard-body .account-shortcut{padding:16px}
.customer-dashboard-body .rail-order{grid-template-columns:38px minmax(0,1fr) auto;gap:6px 10px}
.customer-dashboard-body .rail-order-thumb{width:38px;height:38px}
.customer-dashboard-body .rail-order-copy strong{font-size:.75rem}
.customer-dashboard-body .rail-status{grid-column:2;grid-row:2;justify-self:start;max-width:none;white-space:normal;font-size:.68rem}
.customer-dashboard-body .rail-chevron{grid-column:3;grid-row:1/3}
.customer-dashboard-body .account-shortcut{min-height:68px}

.customer-clean-page .container{max-width:1280px}
.customer-clean-page .site-footer{padding:32px 0 16px}
.customer-clean-page .site-footer p{display:none}
.customer-clean-page .site-footer .row>.col-lg-4{display:none}
.customer-clean-page .site-footer .row>.col-lg-5,.customer-clean-page .site-footer .row>.col-lg-3{width:50%}
.customer-clean-page .footer-bottom{margin-top:24px}

.customer-clean-page .orders-workspace{min-height:0;padding:32px 0 48px}
.customer-clean-page .orders-page-head{margin-bottom:24px}
.customer-clean-page .orders-page-head h1{margin:0;font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.2}
.customer-clean-page .orders-sections{gap:12px;margin-bottom:26px}
.customer-clean-page .orders-section-card{min-width:0;min-height:94px;padding:15px;border-radius:14px;box-shadow:none}
.customer-clean-page .orders-section-card strong{font-size:1.4rem}
.customer-clean-page .orders-section-icon{width:40px;height:40px;flex-basis:40px}
.customer-clean-page .orders-list-heading{align-items:center;margin-bottom:12px}
.customer-clean-page .orders-list-heading h2{margin:0;font-size:1.2rem}
.customer-clean-page .orders-card-list{gap:14px}
.customer-clean-page .customer-order-card{border-radius:14px;box-shadow:none}
.customer-clean-page .customer-order-head{padding:17px 20px}
.customer-clean-page .customer-order-body{padding:18px 20px}
.customer-clean-page .order-card-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:0 20px}
.customer-clean-page .order-activity{min-width:0;flex:1}
.customer-clean-page .order-activity summary{padding:14px 0}
.customer-clean-page .order-detail-link{position:static;flex:0 0 auto;padding:14px 0}
.customer-clean-page .order-event-list li{grid-template-columns:28px minmax(0,1fr) auto;gap:10px;padding-bottom:12px}
.customer-clean-page .order-event-list time{text-align:right}
.customer-clean-page .orders-empty{padding:36px 20px}

.customer-cart-page{min-height:55vh;padding-block:32px 48px}
.customer-cart-page h1{margin:0 0 20px;font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.2}
.customer-cart-list{overflow:hidden;border:1px solid #e9e0ee;border-radius:15px;background:#fff}
.customer-cart-item{display:grid;grid-template-columns:minmax(0,2fr) minmax(120px,.8fr) minmax(120px,.8fr) auto;align-items:center;gap:16px;padding:18px 20px;border-bottom:1px solid #ede5f0}
.customer-cart-item:last-child{border-bottom:0}
.customer-cart-product{display:flex;min-width:0;align-items:center;gap:12px}
.customer-cart-product>div{display:grid;min-width:0;gap:3px}
.customer-cart-product strong{overflow-wrap:anywhere}
.customer-cart-product small,.customer-cart-quantity span,.customer-cart-quantity small{color:#82738b;font-size:.78rem}
.customer-cart-quantity{display:grid;gap:3px}
.customer-cart-quantity strong{font-size:.9rem;font-weight:600}
.customer-cart-price{font-size:.95rem;text-align:right;white-space:nowrap}
.customer-cart-item form{margin:0}
.customer-cart-summary{display:flex;align-items:center;justify-content:flex-end;gap:24px;margin-top:20px}
.customer-cart-summary>div:first-child{display:grid;gap:2px;text-align:right}
.customer-cart-summary span{color:#82738b;font-size:.78rem}
.customer-cart-summary strong{font-size:1.25rem}
.customer-cart-empty{padding:30px;border:1px solid #e9e0ee;border-radius:15px;background:#fff}

.customer-profile-page{padding-block:32px 48px}
.customer-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px}
.customer-profile-column{display:grid;min-width:0;gap:20px}
.customer-profile-page .card{min-width:0;border:1px solid #e9e0ee;border-radius:16px;box-shadow:none}
.customer-profile-card,.customer-profile-page .customer-addresses-panel{padding:24px}
.customer-profile-card h1{margin:0 0 20px;font-size:clamp(1.5rem,2.4vw,2rem)}
.customer-profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.customer-profile-fields>div{min-width:0}
.customer-profile-fields .form-label{margin-bottom:6px;font-size:.82rem;font-weight:600}
.customer-profile-fields .form-control{min-height:46px;border-radius:10px}
.customer-profile-photo{grid-column:1/-1}
.customer-profile-photo>div{display:flex;align-items:center;gap:12px}
.customer-profile-photo .store-avatar{width:54px;height:54px;flex-basis:54px}
.customer-profile-photo input{min-width:0}
.customer-profile-actions{display:flex;justify-content:flex-end;margin-top:20px}
.customer-profile-page .customer-addresses-head{margin-bottom:0;padding-bottom:16px}
.customer-profile-page .customer-addresses-head h2{font-size:1.25rem}
.customer-profile-page .customer-saved-address{margin-top:16px;padding:16px;background:#fff}
.customer-profile-page .customer-saved-address p{margin-bottom:12px;overflow-wrap:anywhere}
.customer-profile-page .customer-password-card{overflow:hidden}
.customer-password-card summary{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;list-style:none;cursor:pointer;font-size:1.05rem;font-weight:600}
.customer-password-card summary::-webkit-details-marker{display:none}
.customer-password-card summary span{color:#603085;font-size:1.3rem}
.customer-password-card[open] summary span{transform:rotate(180deg)}
.customer-password-card form{display:grid;gap:6px;padding:20px 24px;border-top:1px solid #e9e0ee}
.customer-password-card .form-label{margin:8px 0 0;font-size:.82rem;font-weight:600}
.customer-password-card .form-control{min-height:46px;border-radius:10px}
.customer-password-card button{justify-self:end;margin-top:14px}

@media(max-width:1100px){.customer-dashboard-body .customer-dashboard-grid.has-rail{grid-template-columns:minmax(0,1fr) 260px}.customer-dashboard-body .featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.customer-clean-page .orders-sections{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.customer-dashboard-body .customer-dashboard-grid.has-rail{grid-template-columns:1fr}.customer-dashboard-body .customer-dashboard-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-dashboard-body .order-card{grid-row:span 3}.customer-profile-grid{grid-template-columns:1fr}.customer-cart-item{grid-template-columns:minmax(0,1.5fr) minmax(100px,.7fr) auto}.customer-cart-price{grid-column:2;grid-row:2;text-align:left}.customer-cart-item form{grid-column:3;grid-row:1/3}}
@media(max-width:640px){.customer-dashboard-body .customer-dashboard-shell{width:calc(100% - 24px);max-width:calc(100vw - 24px);padding-block:16px 32px}.customer-dashboard-body .customer-hero,.customer-dashboard-body .customer-dashboard-grid:not(.has-rail) .customer-hero{min-width:0;max-width:100%;min-height:0;grid-template-columns:1fr}.customer-dashboard-body .customer-hero-copy{padding:22px}.customer-dashboard-body .customer-hero-art{min-height:170px}.customer-dashboard-body .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.customer-dashboard-body .featured-image{height:115px}.customer-dashboard-body .customer-dashboard-rail{grid-template-columns:1fr}.customer-dashboard-body .order-card{grid-row:auto}.customer-clean-page .orders-workspace,.customer-cart-page,.customer-profile-page{padding-block:20px 36px}.customer-clean-page .orders-page-head{align-items:stretch;gap:12px}.customer-clean-page .orders-page-head .btn{width:100%}.customer-clean-page .orders-section-card{min-height:78px;padding:12px}.customer-clean-page .orders-list-heading{align-items:flex-start}.customer-clean-page .customer-order-head,.customer-clean-page .customer-order-body{padding:14px}.customer-clean-page .order-card-footer{padding:0 14px}.customer-cart-item{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:14px}.customer-cart-product{grid-column:1/-1}.customer-cart-quantity{grid-column:1;grid-row:2}.customer-cart-price{grid-column:1;grid-row:3}.customer-cart-item form{grid-column:2;grid-row:2/4;align-self:end}.customer-cart-summary{align-items:stretch;flex-direction:column;gap:14px}.customer-cart-summary>div:first-child{text-align:left}.customer-cart-summary .btn{width:100%}.customer-profile-card,.customer-profile-page .customer-addresses-panel{padding:18px}.customer-profile-fields{grid-template-columns:1fr}.customer-profile-photo{grid-column:auto}.customer-profile-actions .btn{width:100%}.customer-password-card summary{padding:16px 18px}.customer-password-card form{padding:16px 18px}.customer-password-card button{justify-self:stretch}.customer-clean-page .site-footer{padding-top:24px}.customer-clean-page .site-footer .row>.col-lg-5,.customer-clean-page .site-footer .row>.col-lg-3{width:100%}}
@media(max-width:420px){.customer-dashboard-body .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-dashboard-body .featured-content{padding:9px}.customer-clean-page .orders-sections{gap:8px}.customer-clean-page .orders-section-card{gap:8px}.customer-clean-page .orders-section-icon{width:32px;height:32px;flex-basis:32px}.customer-clean-page .orders-section-card strong{font-size:1.15rem}.customer-clean-page .order-card-footer{flex-wrap:wrap;gap:0}.customer-clean-page .order-activity{flex-basis:100%}.customer-clean-page .order-detail-link{padding:0 0 14px}.customer-clean-page .order-event-list li{grid-template-columns:26px minmax(0,1fr)}.customer-clean-page .order-event-list time{grid-column:2;text-align:left}.customer-profile-photo>div{align-items:stretch;flex-direction:column}}

/* Customer shop showcase, product cards, and POS-style quantity picker. */
.customer-showcase{display:grid;min-width:0}
.customer-showcase.has-profile{grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:stretch}
.customer-showcase .customer-hero{width:100%;height:100%;min-width:0;aspect-ratio:3/1}
.customer-profile-summary{display:flex;min-width:0;flex-direction:column;align-items:center;padding:24px 20px;border:1px solid rgba(103,52,147,.14);border-radius:18px;background:linear-gradient(155deg,#fff,#faf6fc);box-shadow:0 10px 28px rgba(64,32,95,.06)}
.customer-profile-summary-photo{display:grid;width:82px;height:82px;flex:0 0 82px;place-items:center;overflow:hidden;border:4px solid #fff;border-radius:50%;background:linear-gradient(145deg,#7437cc,#4a1b8a);color:#fff;font-size:1.7rem;font-weight:800;text-decoration:none;box-shadow:0 9px 25px rgba(80,34,116,.2)}
.customer-profile-summary-photo img{width:100%;height:100%;object-fit:cover}
.customer-profile-summary-heading{display:grid;justify-items:center;gap:2px;width:100%;margin:13px 0 18px;text-align:center}
.customer-profile-summary-heading strong{max-width:100%;overflow:hidden;color:#211428;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}
.customer-profile-summary-heading a{color:#6b2ca0;font-size:.7rem;font-weight:700;text-decoration:none}
.customer-profile-summary dl{display:grid;width:100%;gap:12px;margin:auto 0 0}
.customer-profile-summary dl>div{min-width:0;padding-top:11px;border-top:1px solid #eee6f1}
.customer-profile-summary dt{margin-bottom:3px;color:#8a7b90;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.customer-profile-summary dd{margin:0;overflow-wrap:anywhere;color:#3a2a40;font-size:.72rem;line-height:1.45}
.customer-profile-summary.is-guest{justify-content:center}
.customer-profile-summary.is-guest .customer-profile-summary-photo .store-icon{width:34px;height:34px}
.customer-profile-summary.is-guest .customer-profile-summary-heading{margin-bottom:18px}
.customer-profile-summary-login{display:inline-flex;align-items:center;justify-content:center;min-height:42px;width:100%;padding:9px 16px;border-radius:10px;background:#603085;color:#fff;font-size:.8rem;font-weight:750;text-decoration:none}
.customer-profile-summary-login:hover,.customer-profile-summary-login:focus-visible{background:#4f2474;color:#fff}

.customer-dashboard-body .featured-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.customer-dashboard-body .featured-card{padding:10px;border-radius:24px;background:#fff;box-shadow:0 12px 28px rgba(45,22,62,.07);transition:transform .2s ease,box-shadow .2s ease}
.customer-dashboard-body .featured-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(45,22,62,.11)}
.customer-dashboard-body .featured-image{width:100%;height:auto;aspect-ratio:1;border-radius:18px;background:#eee7f4}
.customer-dashboard-body .featured-image img{object-fit:cover}
.customer-dashboard-body .featured-content{display:grid;gap:13px;padding:15px 5px 5px}
.customer-dashboard-body .featured-content h3{min-height:0;margin:0;color:#211428;font-size:1rem;font-weight:750;line-height:1.35}
.customer-dashboard-body .featured-content h3 a{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.featured-card-action{display:flex;align-items:center;justify-content:space-between;gap:10px}
.customer-dashboard-body .featured-card-action>strong{margin:0;color:#211428;font-size:1rem;white-space:nowrap}
.featured-card-action form{margin:0}
.customer-dashboard-body .featured-card-action button{width:auto;min-height:40px;padding:8px 15px;border-radius:999px;background:#2d2730;color:#fff;white-space:nowrap}
.customer-dashboard-body .featured-card-action button:hover{background:#603085}

.customer-quantity-open{overflow:hidden}
.customer-quantity-modal[hidden],.customer-quantity-modal [hidden]{display:none!important}
.customer-quantity-modal{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:16px;opacity:0;visibility:hidden;transition:opacity .16s ease,visibility .16s ease}
.customer-quantity-modal.is-open{opacity:1;visibility:visible}
.customer-quantity-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(36,20,46,.58);backdrop-filter:blur(5px)}
.customer-quantity-dialog{position:relative;width:min(32rem,100%);max-height:calc(100dvh - 32px);overflow:hidden;border:1px solid rgba(96,48,133,.18);border-radius:18px;background:#fff;box-shadow:0 28px 75px rgba(35,16,50,.3);transform:translateY(10px) scale(.985);transition:transform .16s ease}
.customer-quantity-modal.is-open .customer-quantity-dialog{transform:none}
.customer-quantity-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #eee6f1}
.customer-quantity-dialog>header h2{margin:0;color:#26172d;font-size:1.25rem}
.customer-quantity-close{display:grid;width:40px;height:40px;place-items:center;border:1px solid #e6dce9;border-radius:11px;background:#fff;color:#47364d;font-size:1.35rem;cursor:pointer}
.customer-quantity-body{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;padding:20px;overflow-y:auto}
.customer-quantity-preview{display:grid;width:52px;height:52px;overflow:hidden;place-items:center;border-radius:13px;background:linear-gradient(145deg,#f2e7f7,#e9daf3);color:#603085;font-size:1.25rem;font-weight:900}
.customer-quantity-preview.has-image{border:1px solid #eadfed;background:#fff}
.customer-quantity-preview img{width:100%;height:100%;object-fit:cover}
.customer-quantity-product{display:grid;min-width:0;gap:2px}
.customer-quantity-product strong{overflow:hidden;color:#2c1c33;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}
.customer-quantity-product small{color:#7d6d83;font-size:.76rem}
.customer-quantity-field{display:grid;grid-column:1/-1;gap:8px;margin-top:8px}
.customer-quantity-field>label,.customer-measurement-field>label{color:#3c2c43;font-size:.76rem;font-weight:750}
.customer-quantity-control{display:grid;grid-template-columns:48px minmax(64px,1fr) 48px minmax(92px,34%);overflow:hidden;border:1px solid rgba(96,48,133,.25);border-radius:12px}
.customer-quantity-control button{min-width:0;min-height:50px;border:0;background:#f6effb;color:#6526b7;font-size:1.35rem;font-weight:900;cursor:pointer}
.customer-quantity-control button:first-child{border-right:1px solid #e7dced}
.customer-quantity-control button:nth-child(3){border-left:1px solid #e7dced}
.customer-quantity-control button:hover:not(:disabled),.customer-quantity-control button:focus-visible{background:#6526b7;color:#fff}
.customer-quantity-control button:disabled{color:#b8a8c1;cursor:not-allowed}
.customer-quantity-control input,.customer-quantity-control select{width:100%;min-width:0;min-height:50px;padding:8px 10px;border:0;border-radius:0;background:#fff;color:#2d2030;font:inherit;font-size:1rem;font-weight:800;text-align:center;outline:0}
.customer-quantity-control select{border-left:1px solid #e7dced;background:#f6effb;color:#6526b7;font-size:.8rem}
.customer-quantity-control input::-webkit-inner-spin-button,.customer-quantity-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.customer-measurement-field{display:grid;gap:6px;margin-top:4px}
.customer-measurement-field>div{display:flex;overflow:hidden;border:1px solid #dfd2e4;border-radius:10px}
.customer-measurement-field input{min-width:0;flex:1;padding:10px 12px;border:0;outline:0}
.customer-measurement-field span{display:grid;min-width:70px;place-items:center;background:#f6effb;color:#6526b7;font-size:.78rem;font-weight:750}
.customer-quantity-presets{display:flex;flex-wrap:wrap;gap:7px;margin-top:3px}
.customer-quantity-preset{min-width:42px;min-height:32px;padding:5px 10px;border:1px solid #ddcfe4;border-radius:999px;background:#fff;color:#603085;font:inherit;font-size:.7rem;font-weight:800;cursor:pointer}
.customer-quantity-preset:hover,.customer-quantity-preset.is-selected{border-color:#603085;background:#f3e9f8}
.customer-quantity-feedback{min-height:18px;color:#5b3a70;font-size:.72rem;text-align:center}
.customer-quantity-feedback.is-error{color:#a33b49}
.customer-quantity-dialog>footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #eee6f1;background:#fdfbfd}
.customer-quantity-dialog>footer button{min-width:120px;min-height:44px;padding:9px 16px;border-radius:10px;font:inherit;font-size:.78rem;font-weight:750;cursor:pointer}
.customer-quantity-cancel{border:1px solid #ded3e3;background:#fff;color:#4c3b53}
.customer-quantity-confirm{border:1px solid #603085;background:#603085;color:#fff}
.customer-quantity-confirm:disabled{opacity:.45;cursor:not-allowed}

@media(max-width:1100px){.customer-dashboard-body .featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.customer-showcase.has-profile{grid-template-columns:minmax(0,1fr) 250px}}
@media(max-width:850px){.customer-showcase.has-profile{grid-template-columns:1fr}.customer-profile-summary{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:0 16px}.customer-profile-summary-heading{justify-items:start;margin:0;text-align:left}.customer-profile-summary dl{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.customer-profile-summary.is-guest .customer-profile-summary-heading{margin:0}.customer-profile-summary.is-guest .customer-profile-summary-login{grid-column:1/-1;margin-top:16px}.customer-dashboard-body .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.customer-dashboard-body .featured-grid{gap:10px}.customer-dashboard-body .featured-card{padding:7px;border-radius:17px}.customer-dashboard-body .featured-image{border-radius:13px}.customer-dashboard-body .featured-content{gap:9px;padding:10px 3px 3px}.customer-dashboard-body .featured-content h3{font-size:.82rem}.customer-dashboard-body .featured-card-action{align-items:stretch;flex-direction:column;gap:7px}.customer-dashboard-body .featured-card-action>strong{font-size:.88rem}.featured-card-action form,.customer-dashboard-body .featured-card-action button{width:100%}.customer-dashboard-body .featured-card-action button{min-height:38px;padding:7px 9px}.customer-profile-summary{padding:18px}.customer-quantity-body{padding:16px}.customer-quantity-control{grid-template-columns:44px minmax(54px,1fr) 44px}.customer-quantity-control select{grid-column:1/-1;border-top:1px solid #e7dced;border-left:0}.customer-quantity-dialog>footer{display:grid;grid-template-columns:1fr 1fr;padding:12px 16px}.customer-quantity-dialog>footer button{min-width:0}}

/* Clean customer navigation and six-column desktop shop. */
.customer-dashboard-body .customer-dashboard-shell{width:min(calc(100% - clamp(48px,6vw,96px)),1240px)}
.customer-dashboard-body .featured-card{padding:8px;border:1px solid rgba(92,52,116,.11);border-radius:20px;box-shadow:0 10px 26px rgba(45,22,62,.055)}
.customer-dashboard-body .featured-image{border-radius:15px}
.customer-dashboard-body .featured-content{gap:11px;padding:12px 4px 4px}
.customer-dashboard-body .featured-content h3{font-size:.9rem;line-height:1.3}
.customer-dashboard-body .featured-card-action{gap:7px}
.customer-dashboard-body .featured-card-action>strong{font-size:.9rem}
.customer-dashboard-body .featured-card-action button{min-height:37px;padding:7px 12px;font-size:.72rem}

.customer-store-nav{min-height:70px!important;border-bottom:1px solid #eee7f1;background:rgba(255,255,255,.96);box-shadow:0 5px 18px rgba(44,25,54,.045)}
.customer-store-nav .container{width:min(calc(100% - clamp(48px,6vw,96px)),1240px);max-width:1240px;padding-inline:0}
.customer-store-nav .navbar-brand{min-width:0;gap:0;margin-right:1rem;padding:.25rem 0}
.customer-store-nav .brand-wordmark{display:block;flex:0 0 auto;width:154px;aspect-ratio:322.5 / 131.25}
.customer-store-nav .brand-wordmark img{display:block;width:100%;height:100%;object-fit:contain}
.customer-store-nav .brand-symbol{width:2.35rem;height:2.35rem;flex-basis:2.35rem}
.customer-store-nav .brand-name{font-size:.94rem;font-weight:750;line-height:1.1}
.customer-store-nav .navbar-nav{gap:.35rem!important}
.customer-store-nav .navbar-nav>.nav-item{display:flex;align-items:center}
.customer-store-nav .nav-link,.customer-store-nav .store-profile-trigger,.customer-store-nav .store-language{min-height:40px}
.customer-store-nav .nav-link{padding:.5rem .68rem!important;border-radius:.7rem;font-size:.75rem;font-weight:600}
.customer-store-nav .store-nav-action>.store-icon{width:1.05rem;height:1.05rem}
.customer-store-nav .store-nav-back{min-height:34px;padding:.38rem .55rem!important;color:#716675;font-size:.68rem}
.customer-store-nav .store-nav-back>.store-icon{width:.92rem;height:.92rem}
.customer-store-nav .nav-link.is-current{background:#f1e8f7;color:#603085}
.customer-store-nav .store-language{align-items:center;padding:.2rem;border-radius:.7rem}
.customer-store-nav .store-language button{min-height:32px;padding:.3rem .48rem}
.customer-store-nav .nav-cart{position:relative;width:auto;min-width:86px;min-height:40px;gap:.42rem;padding:.48rem .62rem .48rem .72rem!important;background:#603085;color:#fff!important;box-shadow:0 7px 18px rgba(96,48,133,.2)}
.customer-store-nav .nav-cart:hover,.customer-store-nav .nav-cart:focus-visible{background:#4c246b;color:#fff!important}
.customer-store-nav .nav-cart .store-icon{width:1.15rem;height:1.15rem}
.customer-store-nav .store-cart-label{font-size:.72rem;font-weight:750}
.customer-store-nav .nav-cart-count{position:static;min-width:1.25rem;height:1.25rem;border:0;background:rgba(255,255,255,.2);font-size:.62rem}
.customer-store-nav .store-profile-trigger{display:flex;align-items:center;gap:.6rem;min-width:0;max-width:210px;min-height:40px;padding:.2rem .55rem .2rem .2rem;border-radius:.75rem;color:#392640;text-decoration:none}
.customer-store-nav .store-profile-trigger:hover{border-color:#cdb4df;background:#faf6fc;color:#603085}
.customer-store-nav .store-profile-trigger:focus-visible,.customer-store-nav .store-logout-button:focus-visible{outline:3px solid #ad7bd3;outline-offset:2px}
.customer-store-nav .store-avatar{width:34px;height:34px;flex-basis:34px}
.customer-store-nav .store-profile-name{min-width:0;font-size:.75rem}
.customer-store-nav .store-logout-form{width:100%;margin:0}
.customer-store-nav .store-logout-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:40px;padding:.5rem .68rem;border:1px solid #e8dfee;border-radius:.7rem;background:#fff;color:#603085;font-size:.75rem;font-weight:650;white-space:nowrap;cursor:pointer}
.customer-store-nav .store-logout-button:hover{background:#f6effb}
.customer-store-nav .store-logout-button .store-icon{width:1rem;height:1rem}
.customer-store-nav .navbar-toggler{position:relative}
.customer-store-nav .customer-nav-cart-count{display:none}
.customer-mobile-nav-actions,.customer-nav-drawer-head{display:none}
.customer-floating-cart{display:none}
.customer-nav-backdrop[hidden]{display:none!important}
.customer-store-nav :is(.nav-cart,.navbar-toggler).is-just-added,.customer-floating-cart.is-just-added{animation:customer-cart-pop .62s ease}

.customer-cart-flyer{position:fixed;z-index:1400;display:grid;overflow:hidden;place-items:center;border:2px solid rgba(255,255,255,.9);border-radius:18px;background:#efe5f5;color:#603085;font-size:2rem;font-weight:850;box-shadow:0 18px 45px rgba(39,19,51,.28);pointer-events:none;transform-origin:center}
.customer-cart-flyer img{width:100%;height:100%;object-fit:cover}
@keyframes customer-cart-pop{0%,100%{transform:scale(1)}45%{transform:scale(1.13);box-shadow:0 10px 28px rgba(96,48,133,.34)}}

@media(max-width:1240px){.customer-dashboard-body .featured-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.customer-dashboard-body .featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991px){
    .customer-store-nav .container{width:calc(100% - 32px)}
    .customer-store-nav.is-drawer-open{z-index:1050}
    .customer-mobile-nav-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}
    .customer-store-nav .store-language-mobile{display:inline-flex;min-height:40px;align-items:center;gap:0;margin:0}
    .customer-store-nav .store-language-mobile button{min-width:34px;min-height:32px;padding:.25rem .45rem}
    .customer-store-nav .navbar-toggler{display:inline-flex;min-width:42px;min-height:40px;align-items:center;justify-content:center;margin:0;border:1px solid #e8dfee;border-radius:.7rem}
    .customer-store-nav .customer-nav-cart-count{display:none}
    .public-body .customer-store-nav .navbar-collapse{position:fixed;z-index:1062;top:0;right:0;bottom:0;display:block!important;width:min(50vw,420px);max-width:100vw;max-height:none;height:100dvh;margin:0;padding:calc(16px + env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom));overflow-x:hidden;overflow-y:auto;border-left:1px solid #e8dfee;border-radius:0;background:#fff;box-shadow:-16px 0 40px rgba(32,17,44,.16);visibility:hidden;pointer-events:none;clip-path:inset(0 0 0 100%);transition:clip-path .24s ease,visibility .24s}
    .public-body .customer-store-nav .navbar-collapse.show{visibility:visible;pointer-events:auto;clip-path:inset(0)}
    .customer-nav-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #eee7f1;color:#2e2038;font-size:1rem}
    .customer-nav-drawer-head button{display:grid;width:38px;height:38px;place-items:center;border:1px solid #e8dfee;border-radius:10px;background:#fff;color:#432c4e;font-size:1.4rem;line-height:1;cursor:pointer}
    .customer-store-nav .navbar-nav{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch!important;gap:.5rem!important;width:100%;margin:0!important}
    .customer-store-nav .navbar-nav>.nav-item{min-width:0;align-items:stretch}
    .customer-store-nav .navbar-nav>.store-nav-language-item{display:none!important}
    .customer-store-nav .nav-link{width:100%;justify-content:flex-start;white-space:normal}
    .customer-store-nav .store-nav-back{min-height:40px}
    .customer-store-nav .nav-cart{justify-content:flex-start}
    .customer-store-nav .store-profile{margin:0}
    .customer-store-nav .store-profile-trigger{width:100%;max-width:none;min-height:44px;padding:.35rem;text-align:left}
    .customer-store-nav .store-logout-form,.customer-store-nav .store-logout-button{width:100%;min-width:0}
    .customer-store-nav .store-logout-button{justify-content:flex-start;min-height:44px;padding:.55rem .6rem;white-space:normal}
    .customer-store-nav .nav-action{width:100%;margin:0}
    .customer-store-nav .customer-nav-backdrop{position:fixed;z-index:1061;inset:0;width:100%;height:100%;border:0;background:rgba(27,15,37,.48);cursor:pointer}
    .customer-floating-cart{position:fixed;z-index:1040;right:calc(32px + env(safe-area-inset-right));bottom:calc(64px + env(safe-area-inset-bottom));display:flex;width:58px;height:58px;align-items:center;justify-content:center;border:0;border-radius:50%;background:#603085;color:#fff;text-decoration:none;box-shadow:0 12px 30px rgba(56,25,78,.3)}
    .customer-floating-cart:hover,.customer-floating-cart:focus-visible{background:#4c246b;color:#fff}
    .customer-floating-cart>.store-icon{width:25px;height:25px}
    .customer-floating-cart-count{position:absolute;top:-5px;right:-5px;display:grid;min-width:24px;height:24px;padding:0 4px;place-items:center;border:2px solid #fff;border-radius:999px;background:#8b4db5;color:#fff;font-size:.65rem;font-weight:800;line-height:1}
    body.customer-nav-open{overflow:hidden}
}
@media(max-width:640px){.customer-dashboard-body .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-dashboard-body .customer-dashboard-shell{width:calc(100% - 24px)}}
@media(max-width:520px){.customer-store-nav .brand-wordmark{width:132px}.customer-store-nav .navbar-toggler{padding:.42rem .5rem}.public-body .customer-store-nav .navbar-collapse{padding-inline:14px}.customer-store-nav .nav-link{padding:.55rem .6rem!important;font-size:.72rem}.customer-store-nav .store-nav-back{font-size:.68rem}.customer-dashboard-body .featured-card-action{gap:6px}}
@media(max-width:360px){.customer-store-nav .container{width:calc(100% - 20px)}.customer-store-nav .navbar-brand{margin-right:0}.customer-store-nav .brand-wordmark{width:108px}}
@media(prefers-reduced-motion:reduce){.customer-store-nav :is(.nav-cart,.navbar-toggler).is-just-added,.customer-floating-cart.is-just-added{animation:none}.public-body .customer-store-nav .navbar-collapse{transition:none}.customer-cart-flyer{display:none}}

/* Keep the shop canvas inside the viewport at touch breakpoints. */
@media(max-width:991px){
    html.customer-shop-document,.customer-shop-document body{max-width:100%;overflow-x:clip;overscroll-behavior-x:none;touch-action:pan-y pinch-zoom}
    html.customer-shop-document{--shop-gutter:clamp(16px,3vw,32px)}
    .customer-shop-document .customer-store-nav .container{box-sizing:border-box;flex:0 0 auto;width:calc(100% - var(--shop-gutter) * 2);max-width:none;margin-inline:var(--shop-gutter)}
    .customer-shop-document .customer-dashboard-body .customer-dashboard-shell{box-sizing:border-box;width:auto;max-width:none;margin-inline:var(--shop-gutter)}
    .customer-dashboard-body .customer-dashboard-shell,.customer-dashboard-body .customer-dashboard-main,.customer-dashboard-body .dashboard-section{min-width:0;max-width:100%}
    .customer-showcase.has-profile{grid-template-columns:minmax(0,1fr);gap:0}
    .customer-showcase .customer-profile-summary{display:none}
    .customer-dashboard-body .featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:640px){.customer-dashboard-body .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Customer profile */
.customer-clean-page .customer-profile-page{position:relative;overflow:clip;padding:32px 0 56px;background:#faf9fd}
.customer-clean-page .customer-profile-page::before{display:none}
.customer-profile-page>.container{position:relative}
.customer-profile-page-head{margin-bottom:22px}
.customer-profile-page-head h1{margin:0 0 4px;color:#1e1531;font-size:clamp(2rem,3.3vw,2.65rem);font-weight:800;letter-spacing:-.04em}
.customer-profile-page-head p{margin:0;color:#726983;font-size:1rem}
.customer-profile-page .customer-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.customer-profile-page .customer-profile-column{gap:18px}
.customer-profile-page .card{border:1px solid #e8e2f0;border-radius:18px;box-shadow:0 8px 24px rgba(55,38,83,.04)}
.customer-profile-page .customer-profile-card{overflow:hidden;padding:7px;background:#fff}
.customer-profile-identity{display:flex;align-items:center;gap:23px;min-height:148px;padding:22px 26px;border-radius:13px;background:#f2edfa}
.customer-profile-avatar-wrap{position:relative;flex:none}
.customer-profile-avatar{display:grid;width:112px;height:112px;place-items:center;overflow:hidden;border:5px solid #fff;border-radius:50%;background:#5f3188;color:#fff;font-size:2.5rem;font-weight:700;box-shadow:0 5px 20px rgba(58,31,88,.12)}
.customer-profile-avatar img{width:100%;height:100%;object-fit:cover}
.customer-profile-camera{position:absolute;right:0;bottom:0;display:grid;width:37px;height:37px;place-items:center;padding:0;border:3px solid #fff;border-radius:50%;background:#67328e;color:#fff;line-height:1;cursor:pointer}
.customer-profile-camera svg{width:18px;height:18px}
.customer-profile-photo-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.customer-profile-avatar-wrap:focus-within .customer-profile-camera{outline:3px solid #a56dd1;outline-offset:2px}
.customer-profile-identity-copy{min-width:0;flex:1}
.customer-profile-identity-copy h2{margin:0 0 5px;color:#1d1430;font-size:clamp(1.35rem,2vw,1.7rem);font-weight:750;overflow-wrap:anywhere}
.customer-profile-identity-copy p{margin:0;color:#756b85;font-size:.9rem}
.customer-profile-status{display:inline-flex;align-items:center;gap:8px;align-self:center;white-space:nowrap;padding:8px 12px;border:1px solid #c7e8d4;border-radius:999px;background:#eaf8ef;color:#278353;font-size:.82rem;font-weight:600}
.customer-profile-status span{width:8px;height:8px;border-radius:50%;background:#23a364}
.customer-profile-information{padding:24px 26px 26px}
.customer-profile-section-head{display:flex;align-items:center;gap:13px;margin-bottom:23px}
.customer-profile-section-icon,.customer-address-symbol{display:grid;flex:none;width:44px;height:44px;place-items:center;border-radius:14px;background:#f1e9fc;color:#67309b}
.customer-profile-section-icon svg,.customer-address-symbol svg{width:21px;height:21px}
.customer-profile-section-head>div,.customer-addresses-head>div{min-width:0;flex:1}
.customer-profile-section-head h3,.customer-profile-page .customer-addresses-head h2{margin:0;color:#211732;font-size:1.12rem;font-weight:750}
.customer-profile-section-head p,.customer-profile-page .customer-addresses-head p{margin:3px 0 0;color:#847991;font-size:.85rem}
.customer-profile-edit-link{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:8px 11px;border:1px solid #e7d9f8;border-radius:10px;background:#faf6ff;color:#652f93;font-size:.82rem;font-weight:700;cursor:pointer}
.customer-profile-edit-link svg{width:15px;height:15px}
.customer-profile-page .customer-profile-edit-link[hidden],.customer-profile-page .customer-profile-actions[hidden],.customer-profile-page .customer-profile-field-error[hidden]{display:none!important}
.customer-profile-edit-link:focus-visible{outline:3px solid #a56dd1;outline-offset:2px}
.customer-profile-page .customer-profile-fields{gap:16px 18px}
.customer-profile-page .customer-profile-field-wide{grid-column:1/-1}
.customer-profile-page .customer-profile-fields .form-label{margin-bottom:7px;color:#372e4c;font-size:.83rem}
.customer-profile-input{display:flex;align-items:center;gap:12px;min-width:0;min-height:52px;padding:0 14px;border:1px solid #dfd8eb;border-radius:11px;background:#fcfbfe}
.customer-profile-input:focus-within{border-color:#9f71cb;box-shadow:0 0 0 3px rgba(112,49,154,.1)}
.customer-profile-input:has(input[readonly]){background:#f9f8fc}
.customer-profile-input.is-invalid{border-color:#c4344c;box-shadow:0 0 0 2px rgba(196,52,76,.1)}
.customer-profile-input svg{flex:none;width:18px;height:18px;color:#6b6384}
.customer-profile-input input{width:100%;min-width:0;height:50px;border:0;outline:0;background:transparent;color:#271c3b;font:inherit}
.customer-profile-input input[readonly]{cursor:default}
.customer-profile-field-error{margin:6px 0 0;color:#b42338;font-size:.76rem;line-height:1.4}
.customer-profile-avatar-wrap.is-invalid .customer-profile-avatar{outline:2px solid #c4344c}
.customer-profile-page .customer-profile-actions{display:grid;grid-template-columns:1fr 1.3fr;gap:12px;margin-top:28px}
.customer-profile-page .customer-profile-actions .btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:52px;border-radius:11px;font-weight:700}
.customer-profile-actions svg{width:17px;height:17px}
.customer-profile-page .customer-addresses-panel{padding:24px}
.customer-profile-page .customer-addresses-head{display:flex;align-items:center;gap:12px;margin:0 0 19px;padding:0;border:0}
.customer-profile-page .customer-address-open{min-height:43px;padding:9px 14px;border-radius:10px;font-size:.84rem;font-weight:700}
.customer-address-list{display:grid;gap:13px}
.customer-profile-page .customer-saved-address{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:start;gap:13px;margin:0;padding:18px;border:1px solid #e7dfef;border-radius:14px;background:#fff}
.customer-profile-page .customer-saved-address.is-default{border-color:#b78edc;background:#fbf8ff}
.customer-address-symbol{width:46px;height:46px}
.customer-address-copy{min-width:0}
.customer-address-copy h3{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:2px 0 7px;color:#241836;font-size:1rem;font-weight:750}
.customer-address-default{padding:4px 9px;border-radius:999px;background:#f0e4ff;color:#683194;font-size:.73rem;font-weight:700}
.customer-profile-page .customer-saved-address p{margin:0;color:#716780;font-size:.86rem;line-height:1.55;overflow-wrap:anywhere}
.customer-saved-address a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.customer-address-actions{display:flex;gap:8px}
.customer-address-actions form{margin:0}
.customer-address-icon-button{display:grid;width:39px;height:39px;place-items:center;border:1px solid #e3daee;border-radius:10px;background:#fff;color:#4e3970;cursor:pointer}
.customer-address-icon-button:hover{background:#f6efff}
.customer-address-icon-button.is-delete{border-color:#f4d8df;color:#d64661}
.customer-address-icon-button.is-delete:hover{background:#fff1f4}
.customer-address-icon-button svg{width:17px;height:17px}
.customer-profile-page .customer-password-card{display:flex;width:100%;align-items:center;gap:13px;padding:23px 25px;border:1px solid #eadff0;background:#fff;color:#211732;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.customer-profile-page .customer-password-card:hover{border-color:#cdb5dc;box-shadow:0 12px 28px rgba(70,34,92,.1);transform:translateY(-1px)}
.customer-profile-page .customer-password-card:focus-visible{outline:3px solid rgba(103,48,155,.2);outline-offset:3px}
.customer-profile-page .customer-password-card .customer-profile-section-icon{color:#67309b;font-size:initial;transform:none}
.customer-password-summary-copy{display:grid;flex:1;gap:3px;min-width:0;color:#211732!important;font-size:1.06rem!important;transform:none!important}
.customer-password-summary-copy small{color:#847991;font-size:.83rem;font-weight:400}
.customer-profile-page .customer-password-card>svg{width:18px;height:18px;transform:rotate(-90deg);color:#6a5c7c}
.customer-password-dialog{width:min(31rem,calc(100vw - 2rem))}
.customer-password-modal-body{display:grid;gap:18px}
.customer-password-modal-body .form-label{margin-bottom:7px;font-size:.86rem;font-weight:700;color:#30223c}
.customer-password-modal-body .form-control{min-height:48px;border-radius:11px}
.customer-password-error{margin:6px 0 0;color:#b42318;font-size:.82rem}

@media(max-width:1050px){.customer-profile-page .customer-profile-grid{grid-template-columns:1fr}.customer-profile-page .customer-profile-column{min-width:0}}
@media(max-width:640px){.customer-clean-page .customer-profile-page{padding:25px 0 42px}.customer-clean-page .customer-profile-page::before{display:none}.customer-profile-page-head{margin-bottom:20px}.customer-profile-page-head h1{font-size:2rem}.customer-profile-page-head p{font-size:.9rem}.customer-profile-page .customer-profile-grid{gap:14px}.customer-profile-page .customer-profile-column{gap:14px}.customer-profile-identity{display:grid;grid-template-columns:74px minmax(0,1fr);gap:5px 14px;min-height:0;padding:18px}.customer-profile-avatar-wrap{grid-row:1/3}.customer-profile-avatar{width:74px;height:74px;border-width:3px;font-size:1.7rem}.customer-profile-camera{width:30px;height:30px}.customer-profile-camera svg{width:14px;height:14px}.customer-profile-status{justify-self:start;width:max-content;padding:6px 9px;font-size:.75rem}.customer-profile-information{padding:20px 16px}.customer-profile-section-head{flex-wrap:wrap;gap:10px;margin-bottom:18px}.customer-profile-section-head>div{flex-basis:calc(100% - 58px)}.customer-profile-edit-link{margin-left:54px}.customer-profile-page .customer-profile-fields{grid-template-columns:1fr;gap:14px}.customer-profile-page .customer-profile-field-wide{grid-column:auto}.customer-profile-page .customer-profile-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:22px}.customer-profile-page .customer-addresses-panel{padding:18px 15px}.customer-profile-page .customer-addresses-head{flex-wrap:wrap}.customer-profile-page .customer-addresses-head>div{flex-basis:calc(100% - 60px)}.customer-profile-page .customer-address-open{width:100%;justify-content:center}.customer-profile-page .customer-saved-address{grid-template-columns:40px minmax(0,1fr);gap:10px;padding:14px}.customer-address-symbol{width:38px;height:38px}.customer-address-symbol svg{width:18px;height:18px}.customer-address-actions{grid-column:2;justify-self:start}.customer-profile-page .customer-password-card{padding:18px 16px}.customer-password-dialog .customer-address-modal-actions{display:grid;grid-template-columns:1fr 1fr}.customer-password-dialog .customer-address-modal-actions .btn{width:100%}}
@media(max-width:640px){.customer-profile-page .customer-profile-section-head>div{flex:1 1 calc(100% - 58px)}.customer-profile-page .customer-profile-edit-link{margin-left:auto}.customer-profile-page .customer-profile-identity-copy h2{font-size:1.25rem}.customer-profile-page .customer-addresses-head>div{flex:1 1 calc(100% - 60px)}}

/* Match the shop's centered desktop canvas and equal touch-screen gutters on every customer page. */
.customer-portal-page .customer-store-nav>.container,
.customer-portal-page #main>.section>.container,
.customer-portal-page #main>.orders-workspace>.container,
.customer-portal-page .site-footer>.container{
    box-sizing:border-box;
    width:min(calc(100% - clamp(48px,6vw,96px)),1240px);
    max-width:1240px;
    margin-inline:auto;
    padding-inline:0;
}
.customer-portal-page .customer-store-nav>.container{flex:0 0 auto;min-width:0}
.customer-portal-page #main>.section>.container,
.customer-portal-page #main>.orders-workspace>.container{min-width:0}
@media(max-width:991px){
    .customer-portal-page{--customer-portal-gutter:clamp(16px,3vw,32px)}
    .customer-portal-page .customer-store-nav>.container,
    .customer-portal-page #main>.section>.container,
    .customer-portal-page #main>.orders-workspace>.container,
    .customer-portal-page .site-footer>.container{
        width:calc(100% - var(--customer-portal-gutter) * 2);
        max-width:none;
        margin-inline:auto;
    }
}
@media(max-width:575px){
    .customer-portal-page .customer-profile-page .customer-addresses-head{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;min-width:0}
    .customer-portal-page .customer-profile-page .customer-addresses-head>.customer-profile-section-icon{grid-column:1;width:40px;height:40px}
    .customer-portal-page .customer-profile-page .customer-addresses-head>div{grid-column:2;min-width:0}
    .customer-portal-page .customer-profile-page .customer-addresses-head>.customer-address-open{grid-column:1/-1;width:100%;min-width:0;max-width:100%;justify-content:center;white-space:normal;margin:0}
    .customer-portal-page .customer-profile-page .customer-addresses-panel{min-width:0;overflow:hidden}
}

/* Shop-style profile summary with a separate edit state. */
.customer-profile-page .customer-profile-grid{grid-template-columns:minmax(0,360px) minmax(0,1fr)}
.customer-profile-page .customer-profile-card{width:100%;max-width:360px;padding:24px;background:linear-gradient(155deg,#fff,#faf6fc)}
.customer-profile-page .customer-profile-summary-view[hidden],
.customer-profile-page .customer-profile-editor[hidden]{display:none!important}
.customer-profile-summary-view{display:flex;min-width:0;min-height:340px;flex-direction:column;align-items:center}
.customer-profile-summary-view .customer-profile-summary-photo{width:100px;height:100px;flex:0 0 100px;border-width:5px;font-size:2rem}
.customer-profile-summary-view .customer-profile-summary-heading{margin:16px 0 20px}
.customer-profile-summary-view .customer-profile-summary-heading h2{max-width:100%;margin:0;overflow-wrap:anywhere;color:#211428;font-size:1.22rem;font-weight:750;line-height:1.3}
.customer-profile-summary-edit{padding:2px 8px;border:0;background:transparent;color:#6b2ca0;font-size:.83rem;font-weight:750;cursor:pointer}
.customer-profile-summary-edit:hover{text-decoration:underline;text-underline-offset:3px}
.customer-profile-summary-edit:focus-visible{outline:3px solid #ad7bd3;outline-offset:2px;border-radius:5px}
.customer-profile-summary-view dl{display:grid;width:100%;gap:15px;margin:auto 0 0}
.customer-profile-summary-view dl>div{min-width:0;padding-top:15px;border-top:1px solid #e9e2ef}
.customer-profile-summary-view dt{margin-bottom:5px;color:#8a7b90;font-size:.69rem;font-weight:750;text-transform:uppercase;letter-spacing:.07em}
.customer-profile-summary-view dd{margin:0;overflow-wrap:anywhere;color:#3a2a40;font-size:.86rem;line-height:1.5}
.customer-profile-page .customer-profile-editor .customer-profile-identity{display:flex;min-height:0;flex-direction:column;gap:10px;padding:20px 14px;text-align:center}
.customer-profile-page .customer-profile-editor .customer-profile-avatar{width:94px;height:94px;font-size:2rem}
.customer-profile-page .customer-profile-editor .customer-profile-identity-copy h2{margin:0;font-size:1.18rem}
.customer-profile-page .customer-profile-editor .customer-profile-information{padding:24px 0 0}
.customer-profile-page .customer-profile-editor .customer-profile-fields{grid-template-columns:1fr}
.customer-profile-page .customer-profile-editor .customer-profile-field-wide{grid-column:auto}
.customer-profile-page .customer-profile-editor .customer-profile-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:22px}
.customer-profile-page .customer-profile-editor .customer-profile-actions .btn{min-width:0;padding-inline:8px;font-size:.85rem}
@media(max-width:1050px){.customer-profile-page .customer-profile-grid{grid-template-columns:1fr}.customer-profile-page .customer-profile-card{justify-self:center}}
@media(max-width:640px){.customer-profile-page .customer-profile-card{max-width:none;padding:20px}.customer-profile-page .customer-profile-editor .customer-profile-identity{display:flex;flex-direction:column;gap:10px;padding:18px}.customer-profile-page .customer-profile-editor .customer-profile-avatar{width:88px;height:88px}.customer-profile-summary-view{min-height:320px}}

/* Compact account details and preferences. */
.customer-loyalty-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:3px 9px;border:1px solid #e4d5f1;border-radius:999px;background:#f4ebfc;color:#63308d;font-size:.69rem;font-weight:750;line-height:1.3;white-space:nowrap}
.customer-profile-summary-heading .customer-loyalty-badge{margin:2px 0}
.customer-profile-summary-view{position:relative;min-height:0}
.customer-profile-summary-view .customer-profile-summary-heading{display:grid;justify-items:center;gap:2px;margin:14px 0 18px}
.customer-profile-summary-view .customer-profile-summary-photo{overflow:hidden}
.customer-profile-summary-camera{position:absolute;top:67px;left:calc(50% + 23px);display:grid;width:34px;height:34px;place-items:center;padding:0;border:3px solid #fff;border-radius:50%;background:#67328e;color:#fff;cursor:pointer;box-shadow:0 3px 10px rgba(51,24,81,.18)}
.customer-profile-summary-camera svg{width:16px;height:16px}
.customer-profile-summary-camera:focus-visible{outline:3px solid #ad7bd3;outline-offset:2px}
.customer-profile-summary-view dl{gap:0}
.customer-profile-summary-view dl>div{padding-block:11px}
.customer-profile-page .customer-profile-column{min-width:0}
.customer-profile-side-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:start;gap:16px;min-width:0}
.customer-payment-column{display:grid;align-content:start;gap:12px;min-width:0}
.customer-profile-page .customer-addresses-panel,.customer-profile-page .customer-payment-panel{min-width:0;padding:18px}
.customer-profile-page .customer-addresses-head{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;margin-bottom:14px}
.customer-profile-page .customer-addresses-head .customer-profile-section-icon,.customer-profile-page .customer-payment-head .customer-profile-section-icon{width:34px;height:34px;border-radius:10px}
.customer-profile-page .customer-addresses-head .customer-profile-section-icon svg,.customer-profile-page .customer-payment-head .customer-profile-section-icon svg{width:18px;height:18px}
.customer-profile-page .customer-addresses-head h2,.customer-profile-page .customer-payment-head h2{font-size:.98rem;line-height:1.3}
.customer-profile-page .customer-address-open{grid-column:1/-1;justify-self:start;min-height:34px;padding:6px 10px;font-size:.76rem}
.customer-profile-page .customer-saved-address{grid-template-columns:34px minmax(0,1fr);gap:9px;padding:12px}
.customer-profile-page .customer-address-symbol{width:34px;height:34px;border-radius:9px}
.customer-profile-page .customer-address-symbol svg{width:17px;height:17px}
.customer-profile-page .customer-saved-address h3{margin:0 0 4px;font-size:.88rem}
.customer-profile-page .customer-saved-address p{font-size:.78rem;line-height:1.42}
.customer-profile-page .customer-address-actions{grid-column:2;justify-self:end;gap:5px}
.customer-profile-page .customer-address-icon-button{width:31px;height:31px;border-radius:8px}
.customer-profile-page .customer-address-icon-button svg{width:15px;height:15px}
.customer-payment-head{display:flex;align-items:center;gap:9px;margin-bottom:14px}
.customer-payment-head h2{margin:0;color:#211732;font-weight:750}
.customer-payment-options{display:grid;gap:8px}
.customer-payment-option{display:flex;align-items:center;gap:9px;min-width:0;min-height:39px;padding:8px 11px;border:1px solid #e7dfef;border-radius:10px;background:#fff;color:#2c2039;font-size:.85rem;font-weight:700;cursor:pointer}
.customer-payment-option:has(input:checked){border-color:#8b53b6;background:#faf5ff;color:#5f278c}
.customer-payment-option input{accent-color:#67309b}
.customer-payment-save{min-height:35px;margin-top:12px;padding:6px 15px;border-radius:9px;font-size:.78rem;font-weight:700}
.customer-profile-page .customer-password-card{display:flex;width:100%;min-height:42px;align-items:center;justify-content:center;gap:8px;padding:9px 14px;border:1px solid #603085;border-radius:10px;background:#603085;color:#fff;font-size:.82rem;font-weight:700;box-shadow:0 6px 15px rgba(73,28,110,.14)}
.customer-profile-page .customer-password-card svg{width:16px;height:16px;color:#fff;transform:none}
.customer-profile-page .customer-password-card:hover{border-color:#512570;background:#512570;color:#fff}
@media(max-width:1180px){.customer-profile-side-grid{grid-template-columns:1fr}}
@media(min-width:801px) and (max-width:1050px){.customer-profile-page .customer-profile-grid{grid-template-columns:minmax(0,360px) minmax(0,1fr)}}
@media(max-width:800px){.customer-profile-page .customer-profile-grid{grid-template-columns:1fr}.customer-profile-page .customer-profile-card{max-width:none;justify-self:stretch}.customer-profile-side-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.customer-profile-side-grid{grid-template-columns:1fr}.customer-profile-page .customer-address-open{width:auto;max-width:100%}}
@media(max-width:640px){.customer-profile-summary-view{min-height:0}.customer-profile-page .customer-profile-card{padding:18px}.customer-profile-page .customer-addresses-panel,.customer-profile-page .customer-payment-panel{padding:15px}.customer-profile-page .customer-password-card{padding:8px 13px}.customer-profile-page .customer-addresses-head{display:grid;grid-template-columns:34px minmax(0,1fr)}.customer-profile-page .customer-addresses-head>.customer-address-open{grid-column:1/-1;width:max-content;max-width:100%}}
@media(max-width:575px){.customer-portal-page .customer-profile-page .customer-addresses-head>.customer-address-open{width:max-content;max-width:100%;justify-self:start}}
.customer-profile-page .customer-profile-date-control{min-height:0;padding:0;border:0;background:transparent}
.customer-profile-page .customer-profile-date-control:has(input[readonly]){background:transparent}
.customer-profile-page .customer-profile-date-control:focus-within{border:0;box-shadow:none}
.customer-profile-page .customer-profile-date-control .premium-date-trigger{min-height:52px;border-color:#dfd8eb;border-radius:11px}
.customer-profile-page .customer-profile-date-control .premium-date-trigger-value{font-size:.85rem}
.customer-profile-page .customer-profile-date-control:has(input[aria-invalid="true"]) .premium-date-trigger{border-color:#c4344c}

/* Cart: balanced item list, compact total, and a focused empty state. */
.customer-portal-page .customer-cart-page{min-height:50vh;padding-block:clamp(24px,3vw,42px) 56px}
.customer-cart-page .container{min-width:0}
.customer-cart-page .customer-cart-head{margin-bottom:18px}
.customer-cart-page .customer-cart-head h1{margin:0;color:#24172f;font-size:clamp(1.8rem,3vw,2.35rem);font-weight:750;letter-spacing:-.035em}
.customer-cart-page .customer-cart-empty{display:grid;align-content:center;justify-items:center;gap:14px;width:min(100%,480px);min-height:240px;margin:0 auto;padding:32px 20px;border:1px solid #e8e1ed;border-radius:18px;background:#fff;text-align:center;box-shadow:0 9px 30px rgba(51,29,72,.04)}
.customer-cart-empty-icon{display:grid;width:54px;height:54px;place-items:center;border-radius:15px;background:#f1e8fa;color:#603085}
.customer-cart-empty-icon svg{width:25px;height:25px}
.customer-cart-page .customer-cart-empty h2{align-self:end;margin:0;color:#281a34;font-size:1.22rem;font-weight:700}
.customer-cart-page .customer-cart-empty .btn{align-self:start;min-height:42px;padding:9px 20px;border-radius:10px;font-size:.88rem;font-weight:700}
.customer-cart-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(255px,300px);align-items:start;gap:18px;min-width:0}
.customer-cart-page .customer-cart-list{min-width:0;overflow:hidden;border:1px solid #e8e1ed;border-radius:17px;background:#fff;box-shadow:0 9px 30px rgba(51,29,72,.04)}
.customer-cart-page .customer-cart-item{grid-template-columns:minmax(0,1fr) minmax(88px,auto) minmax(104px,auto) auto;gap:14px;min-width:0;padding:17px 18px;border-color:#eee8f1}
.customer-cart-page .customer-cart-product{gap:12px}
.customer-cart-page .customer-cart-product .linked-product-thumb{width:56px;height:56px;flex-basis:56px;border-radius:11px}
.customer-cart-page .customer-cart-product strong{display:block;color:#281b34;font-size:.96rem;font-weight:700;line-height:1.35}
.customer-cart-page .customer-cart-quantity{min-width:0;gap:2px}
.customer-cart-page .customer-cart-quantity span{font-size:.69rem}
.customer-cart-page .customer-cart-quantity strong{overflow-wrap:anywhere;color:#372841;font-size:.86rem;font-weight:650}
.customer-cart-page .customer-cart-quantity small{font-size:.68rem}
.customer-cart-page .customer-cart-price{color:#281a34;font-size:.93rem;font-weight:750}
.customer-cart-remove{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:6px 8px;border:1px solid transparent;border-radius:8px;background:transparent;color:#8b5161;font-size:.76rem;font-weight:650;cursor:pointer;white-space:nowrap}
.customer-cart-remove svg{width:16px;height:16px}
.customer-cart-remove:hover,.customer-cart-remove:focus-visible{border-color:#f2d9df;background:#fff3f5;color:#b22949}
.customer-cart-page .customer-cart-summary{position:sticky;top:104px;display:grid;gap:17px;min-width:0;margin:0;padding:20px;border:1px solid #e8e1ed;border-radius:17px;background:#fff;box-shadow:0 9px 30px rgba(51,29,72,.04)}
.customer-cart-page .customer-cart-total-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-width:0;text-align:left}
.customer-cart-page .customer-cart-total-row span{color:#786b80;font-size:.85rem}
.customer-cart-page .customer-cart-total-row strong{color:#281a34;font-size:1.12rem;white-space:nowrap}
.customer-cart-page .customer-cart-checkout{min-width:0}
.customer-cart-page .customer-cart-checkout .btn{display:flex;width:100%;min-height:43px;align-items:center;justify-content:center;padding:9px 14px;border-radius:10px;font-size:.85rem;font-weight:700;text-align:center;white-space:normal}
@media(max-width:1050px){.customer-cart-layout{grid-template-columns:1fr}.customer-cart-page .customer-cart-summary{position:static;justify-self:end;width:min(100%,360px)}}
@media(max-width:700px){.customer-portal-page .customer-cart-page{padding-block:22px 40px}.customer-cart-page .customer-cart-head{margin-bottom:14px}.customer-cart-page .customer-cart-item{grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;padding:14px}.customer-cart-page .customer-cart-product{grid-column:1/-1}.customer-cart-page .customer-cart-quantity{grid-column:1;grid-row:2}.customer-cart-page .customer-cart-price{grid-column:2;grid-row:2;text-align:right}.customer-cart-page .customer-cart-item form{grid-column:1/-1;grid-row:3;justify-self:end}.customer-cart-page .customer-cart-summary{justify-self:stretch;width:100%}.customer-cart-page .customer-cart-empty{min-height:220px}}
@media(max-width:400px){.customer-cart-page .customer-cart-product .linked-product-thumb{width:48px;height:48px;flex-basis:48px}.customer-cart-page .customer-cart-item{gap:9px;padding:12px}.customer-cart-page .customer-cart-price{font-size:.86rem}.customer-cart-page .customer-cart-summary{padding:16px}}

/* Let the complete supplied logo anchor the customer footer without duplicate text. */
.public-body .footer-brand{flex-direction:column;align-items:flex-start;gap:12px}
.public-body .footer-brand .footer-wordmark{display:block;width:170px;max-width:100%;margin:0}
.public-body .footer-brand .footer-wordmark img{display:block;width:100%;height:auto;object-fit:contain}
.public-body .footer-brand p{margin:0}
