:root{
    --store-pink:#e83e72;
    --store-pink-dark:#cb285d;
    --store-pink-soft:#fff0f5;
    --store-mint:#dff7ef;
    --store-text:#252631;
    --store-muted:#777b8b;
    --store-border:#ececf1;
    --store-bg:#fffdfd;
    --store-card:#fff;
    --store-green:#14804a;
    --store-green-soft:#eaf8f0;
    --store-red:#b42318;
    --store-red-soft:#fff0ef;
    --store-shadow:0 12px 34px rgba(36,31,40,.07)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0}
body{font-family:Tahoma,"Segoe UI",sans-serif;color:var(--store-text);background:linear-gradient(180deg,#fffafb 0,#fff 34%,#fffdfd 100%);line-height:1.7}
button,input,select{font:inherit}
a{color:inherit}
.storefront-body{min-height:100vh;padding-bottom:0}
.storefront-container{width:min(1180px,calc(100% - 32px));margin-inline:auto}
.storefront-main{min-height:70vh}

/* Header */
.storefront-header{position:sticky;top:0;z-index:80;background:rgba(255,251,252,.93);backdrop-filter:blur(18px);border-bottom:1px solid rgba(234,228,232,.78)}
.storefront-header-inner{min-height:84px;display:grid;grid-template-columns:110px minmax(0,1fr) 110px;align-items:center;gap:14px}
.storefront-brand{justify-self:center;display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}
.storefront-brand-mark{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid #f2a9bd;color:var(--store-pink);font-weight:950;font-size:1.28rem;box-shadow:0 5px 18px rgba(232,62,114,.12)}
.storefront-brand-copy{min-width:0;text-align:center}
.storefront-brand-copy strong{display:block;color:#d42e64;font-size:1.2rem;font-weight:950;line-height:1.4}
.storefront-brand-copy small{display:block;color:#89838a;font-size:.69rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}
.storefront-love-note{justify-self:end;display:grid;grid-template-columns:34px auto;text-decoration:none;color:#bd6079;line-height:1.25;align-items:center}
.storefront-love-note>span{grid-row:1/3;width:30px;height:30px;display:grid;place-items:center;font-size:1.25rem;color:var(--store-pink)}
.storefront-love-note strong{font-size:.72rem}.storefront-love-note small{font-size:.62rem;color:#a88490}
.storefront-menu-button{justify-self:start;width:46px;height:46px;border:0;background:transparent;display:flex;flex-direction:column;justify-content:center;gap:6px;cursor:pointer;padding:8px}
.storefront-menu-button span{height:3px;border-radius:6px;background:#20232b;display:block;width:29px}

/* Drawer */
.storefront-drawer{position:fixed;inset:0;z-index:1200;background:rgba(20,20,26,.42);display:none;direction:rtl}
.storefront-drawer.open{display:block}
.store-drawer-open{overflow:hidden}
.storefront-drawer-panel{position:absolute;right:0;top:0;bottom:0;width:min(340px,88vw);background:#fff;padding:24px;box-shadow:-20px 0 50px rgba(0,0,0,.14)}
.storefront-drawer-close{position:absolute;left:18px;top:17px;width:36px;height:36px;border:0;border-radius:50%;background:#f5f5f7;color:#555;font-size:1.3rem}
.storefront-drawer-brand{display:flex;align-items:center;gap:10px;padding:8px 0 24px;border-bottom:1px solid var(--store-border)}
.storefront-drawer-brand .storefront-brand-mark{width:48px;height:48px}
.storefront-drawer-brand strong{display:block;font-size:.88rem}.storefront-drawer-brand small{display:block;font-size:.63rem;color:var(--store-muted)}
.storefront-drawer nav{display:flex;flex-direction:column;padding-top:18px;gap:4px}
.storefront-drawer nav a{padding:12px 10px;text-decoration:none;border-radius:12px;font-weight:800;font-size:.82rem}
.storefront-drawer nav a:hover{background:var(--store-pink-soft);color:var(--store-pink-dark)}

/* Home search */
.store-home-top{padding:22px 0 0}
.store-home-search{height:64px;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #eee9ec;border-radius:22px;padding:8px 10px 8px 18px;box-shadow:0 12px 30px rgba(43,38,44,.07);margin-bottom:20px}
.store-home-search .store-search-icon{font-size:1.9rem;line-height:1;color:#8b8b95;transform:rotate(-15deg)}
.store-home-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:.94rem;color:#333;padding:8px}
.store-home-search input::placeholder{color:#aaa6ad}
.store-home-search button{border:0;border-radius:14px;background:var(--store-pink);color:#fff;padding:10px 20px;font-size:.78rem;font-weight:900;cursor:pointer}.store-home-search .store-search-reset{white-space:nowrap;text-decoration:none;color:#777;font-size:.7rem;font-weight:800;padding:8px 6px}

/* Slider */
.store-hero-slider{position:relative;border-radius:26px;overflow:hidden;background:#ffe9f0;box-shadow:var(--store-shadow);isolation:isolate}
.store-hero-slide{display:none;min-height:0;aspect-ratio:1600/540}.store-hero-slide.active{display:block}
.store-hero-slide-link{position:relative;display:block;min-height:0;aspect-ratio:1600/540;text-decoration:none;color:inherit}
.store-hero-slide picture,.store-hero-slide img{display:block;width:100%;height:100%}
.store-hero-slide img{position:absolute;inset:0;object-fit:contain;background:#fff8fa}
.store-hero-overlay{position:absolute;z-index:2;right:5%;top:50%;transform:translateY(-50%);max-width:48%;display:flex;flex-direction:column;align-items:flex-start;text-align:right;text-shadow:0 1px 2px rgba(255,255,255,.5)}
.store-hero-overlay strong{font-size:clamp(1.4rem,3vw,2.4rem);font-weight:950;line-height:1.45}
.store-hero-overlay>span{margin-top:8px;font-size:.9rem;color:#4a4650}
.store-hero-overlay em{margin-top:18px;background:var(--store-pink);color:#fff;border-radius:999px;padding:10px 18px;font-style:normal;font-size:.75rem;font-weight:900}
.store-slider-dots{position:absolute;z-index:4;bottom:13px;left:50%;transform:translateX(-50%);display:flex;gap:8px}
.store-slider-dots button{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.72);box-shadow:0 0 0 1px rgba(0,0,0,.08);padding:0;cursor:pointer}
.store-slider-dots button.active{background:var(--store-pink);transform:scale(1.1)}
.store-hero-fallback{min-height:380px;padding:56px clamp(28px,7vw,82px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:radial-gradient(circle at 75% 25%,#ffd9e4 0,transparent 33%),linear-gradient(135deg,#fff2f6,#ffe6ee 52%,#fff9fb);position:relative;overflow:hidden}
.store-hero-fallback:after{content:"ش";position:absolute;left:9%;top:50%;transform:translateY(-50%);width:190px;height:190px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.72);color:#ef7297;font-size:5rem;font-weight:950;box-shadow:0 18px 45px rgba(232,62,114,.1)}
.store-hero-kicker{display:inline-flex;background:#fff;color:var(--store-pink);padding:5px 11px;border-radius:999px;font-size:.68rem;font-weight:900}
.store-hero-fallback h1{font-size:clamp(1.8rem,4vw,3rem);max-width:620px;line-height:1.45;margin:12px 0 8px;font-weight:950}.store-hero-fallback p{max-width:570px;color:#6f6870;font-size:.88rem}.store-hero-fallback a{display:inline-flex;margin-top:12px;padding:10px 18px;border-radius:999px;background:var(--store-pink);color:#fff;text-decoration:none;font-size:.76rem;font-weight:900}

/* Two banners */
.store-home-banners{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}
.store-home-banner{position:relative;display:block;width:100%;height:auto;aspect-ratio:1200/480;border-radius:22px;overflow:hidden;background:#fff8fa;box-shadow:0 9px 24px rgba(30,24,27,.06);text-decoration:none}
.store-home-banner img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .3s ease}.store-home-banner:hover img{transform:scale(1.018)}
.store-banner-overlay{position:absolute;inset:0;padding:26px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:linear-gradient(270deg,rgba(255,255,255,.78),rgba(255,255,255,.12) 65%,transparent)}
.store-banner-overlay strong{font-size:1.2rem;font-weight:950}.store-banner-overlay small{font-size:.72rem;margin-top:2px}.store-banner-overlay em{width:38px;height:38px;border-radius:50%;margin-top:12px;display:grid;place-items:center;background:rgba(190,52,92,.88);color:#fff;font-style:normal}

/* Sections */
.store-home-section{padding:34px 0 10px}.store-featured-section{padding-bottom:56px}
.store-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px}.store-section-head h1,.store-section-head h2{margin:4px 0 0;font-size:1.45rem;line-height:1.45;font-weight:950}.store-section-head p{margin:3px 0 0;color:var(--store-muted);font-size:.73rem}.store-section-head>a{color:var(--store-pink);font-size:.73rem;font-weight:900;text-decoration:none;white-space:nowrap}
.store-section-eyebrow{display:inline-flex;font-size:.66rem;font-weight:900;color:#78515d;background:#fff1f5;padding:4px 9px;border-radius:999px}.store-section-eyebrow.pink{color:var(--store-pink-dark)}
.store-home-heading{margin-bottom:16px}

/* Category strip */
.store-category-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:16px}
.store-category-bubble{min-width:0;display:flex;flex-direction:column;align-items:center;text-decoration:none;text-align:center;gap:9px}
.store-category-bubble-image{width:100%;aspect-ratio:1;border-radius:50%;padding:9px;background:linear-gradient(135deg,#fff0f4,#eefbf7);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(235,225,229,.8);transition:.18s ease}
.store-category-bubble:nth-child(3n+2) .store-category-bubble-image{background:linear-gradient(135deg,#ecfbf7,#f4f7ff)}
.store-category-bubble:nth-child(3n+3) .store-category-bubble-image{background:linear-gradient(135deg,#fff2f5,#fff8ed)}
.store-category-bubble-image img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
.store-category-bubble strong{font-size:.74rem;line-height:1.55;font-weight:900;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.store-category-bubble:hover .store-category-bubble-image{transform:translateY(-3px);box-shadow:0 12px 25px rgba(84,53,64,.09)}

/* Product grid/cards */
.store-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.store-product-card{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid #efedf0;border-radius:20px;overflow:hidden;box-shadow:0 8px 24px rgba(33,26,30,.045);transition:.18s ease}.store-product-card:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(33,26,30,.075)}
.store-product-image-shell{position:relative}.store-featured-star{position:absolute;z-index:4;top:10px;right:10px;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.93);color:var(--store-pink);font-size:.88rem;box-shadow:0 4px 12px rgba(0,0,0,.08)}
.store-product-image-wrap{display:block;aspect-ratio:1.15;background:#faf9fa;overflow:hidden}.store-product-image-wrap img{width:100%;height:100%;object-fit:contain;display:block;padding:5px;transition:transform .25s ease}.store-product-card:hover .store-product-image-wrap img{transform:scale(1.025)}
.store-product-body{display:flex;flex-direction:column;gap:8px;padding:13px;flex:1}.store-product-title{text-decoration:none;color:#31313a;font-size:.82rem;font-weight:900;line-height:1.75;min-height:3em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.store-product-code{font-size:.64rem;color:#9995a0}.store-stock-banner{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:4px 9px;border-radius:999px;font-size:.66rem;font-weight:900}.store-stock-banner span{width:7px;height:7px;border-radius:50%}.store-stock-banner.available{background:var(--store-green-soft);color:var(--store-green)}.store-stock-banner.available span{background:var(--store-green)}.store-stock-banner.out{background:var(--store-red-soft);color:var(--store-red)}.store-stock-banner.out span{background:var(--store-red)}
.store-inquiry-btn{margin-top:auto;width:100%;border:0;border-radius:13px;padding:10px 12px;background:linear-gradient(135deg,#ef4e80,#e83e72);color:#fff;font-size:.73rem;font-weight:950;cursor:pointer;box-shadow:0 6px 16px rgba(232,62,114,.16)}.store-inquiry-btn:hover{background:linear-gradient(135deg,#e83e72,#ce2e61)}.store-inquiry-btn.notify{background:#6b7280;box-shadow:none}.store-inquiry-btn.notify:hover{background:#4b5563}.store-inquiry-btn.large{max-width:390px;padding:13px 20px;font-size:.84rem}

/* Search/category pages */
.store-search-results-page{padding:28px 0 56px}.store-search-results-page .store-home-search{margin-bottom:28px}.search-head{margin-top:4px}
.storefront-page-head{background:linear-gradient(180deg,#fff,#fffafb);border-bottom:1px solid var(--store-border);padding:28px 0}.storefront-page-head.modern{padding-top:22px}.store-category-page-title h1{font-size:1.7rem;font-weight:950;margin:6px 0 2px}.store-category-page-title p{margin:0;color:var(--store-muted);font-size:.72rem}
.store-category-filter{display:grid;grid-template-columns:minmax(240px,1fr) 170px 170px auto auto;gap:9px;margin-top:18px}.store-category-search{display:flex;align-items:center;gap:5px;background:#fff;border:1px solid #e6e4e8;border-radius:14px;padding:0 11px}.store-category-search span{font-size:1.3rem;color:#8d8a92}.store-category-search input{border:0;outline:0;min-width:0;flex:1;padding:10px 5px;background:transparent;font-size:.79rem}.store-category-filter select{border:1px solid #e6e4e8;border-radius:14px;background:#fff;padding:9px 11px;outline:0;font-size:.74rem;color:#555}.store-category-filter>button{border:0;border-radius:14px;background:var(--store-pink);color:#fff;padding:9px 18px;font-size:.74rem;font-weight:900}.store-category-filter .store-filter-reset{display:flex;align-items:center;justify-content:center;border:1px solid #e6e4e8;border-radius:14px;background:#fff;color:#777;text-decoration:none;padding:9px 14px;font-size:.7rem;font-weight:800;white-space:nowrap}
.store-category-products{padding:24px 0 56px}.store-back-link{display:inline-flex;color:var(--store-pink);text-decoration:none;font-weight:900;font-size:.72rem;margin-bottom:5px}
.store-empty{min-height:180px;border:1px dashed #dcd9de;background:#fff;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;color:var(--store-muted);padding:22px}.store-empty.compact{min-height:130px}.store-empty strong{font-size:.9rem}.store-empty span,.store-empty a{font-size:.7rem}.store-empty a{color:var(--store-pink)}
.store-pagination{display:flex;justify-content:center;align-items:center;gap:9px;margin-top:26px}.store-pagination a,.store-pagination span{background:#fff;border:1px solid var(--store-border);padding:8px 12px;border-radius:12px;font-size:.7rem;text-decoration:none}.store-pagination a{color:var(--store-pink);font-weight:900}

/* Product details */
.store-detail-section{padding:24px 0 64px}.store-product-detail-breadcrumb{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:#9995a0;font-size:.67rem;margin-bottom:16px}.store-product-detail-breadcrumb a{color:var(--store-pink);text-decoration:none}.store-product-detail-breadcrumb strong{color:#74717a;font-weight:700;max-width:45vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.store-product-detail{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1fr);gap:34px;background:#fff;border:1px solid var(--store-border);border-radius:26px;padding:24px;box-shadow:0 10px 30px rgba(33,25,30,.045)}.store-product-detail-image{background:#faf9fa;border-radius:20px;overflow:hidden;aspect-ratio:1.08}.store-product-detail-image img{width:100%;height:100%;object-fit:contain;display:block;padding:10px}.store-product-detail-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.store-product-detail-copy h1{font-size:clamp(1.35rem,2.8vw,2rem);line-height:1.55;font-weight:950;margin:12px 0 4px}.store-product-detail-copy .store-product-code{font-size:.69rem;margin:0;color:#9995a0}.store-detail-availability{margin:18px 0 8px;display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;font-size:.78rem}.store-detail-availability span{width:9px;height:9px;border-radius:50%}.store-detail-availability.available{background:var(--store-green-soft);color:var(--store-green)}.store-detail-availability.available span{background:var(--store-green)}.store-detail-availability.out{background:var(--store-red-soft);color:var(--store-red)}.store-detail-availability.out span{background:var(--store-red)}.store-price-note{font-size:.76rem;color:#706d76;max-width:590px;margin:6px 0 18px}.store-related-products{margin-top:42px}.store-mobile-sticky-cta{display:none}

/* Modal */
.storefront-modal{position:fixed;inset:0;z-index:1500;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(24,21,24,.56);backdrop-filter:blur(5px)}.storefront-modal.open{display:flex}.storefront-modal-open{overflow:hidden}.storefront-modal-card{position:relative;width:min(450px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-radius:24px;padding:21px;box-shadow:0 30px 80px rgba(0,0,0,.2)}.storefront-modal-close{position:absolute;left:14px;top:12px;width:34px;height:34px;border:0;border-radius:50%;background:#f3f2f4;color:#666;font-size:1.18rem;cursor:pointer}.inquiry-product-preview{display:grid;grid-template-columns:68px minmax(0,1fr);gap:12px;align-items:center;padding-left:38px}.inquiry-product-preview img{width:68px;height:68px;border-radius:15px;object-fit:contain;background:#faf9fa}.inquiry-product-preview small{display:block;color:var(--store-pink);font-size:.65rem;font-weight:900}.inquiry-product-preview strong{display:block;font-size:.87rem;font-weight:950;margin-top:2px}.inquiry-mode-message{margin:14px 0 5px;padding:10px 12px;border-radius:12px;font-size:.69rem}.inquiry-mode-message.price{background:#fff1f5;color:#8e3b56}.inquiry-mode-message.notify{background:#f2f4f7;color:#59606d}.store-field{display:flex;flex-direction:column;gap:5px;margin-top:11px}.store-field label{font-size:.68rem;font-weight:900;color:#49454d}.store-field input{width:100%;padding:11px 12px;border:1px solid #dfdce1;border-radius:12px;outline:0;font-size:.82rem}.store-field input:focus{border-color:#f08baa;box-shadow:0 0 0 3px rgba(232,62,114,.09)}.inquiry-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.inquiry-privacy-note{font-size:.62rem;color:#9b97a0;margin-top:9px}.inquiry-form-status{min-height:22px;margin:9px 0 1px;font-size:.68rem}.inquiry-form-status.success,.inquiry-form-status.error{padding:8px 9px;border-radius:9px}.inquiry-form-status.success{background:#ecfdf3;color:#027a48}.inquiry-form-status.error{background:#fef3f2;color:#b42318}.store-inquiry-submit,.store-inquiry-cancel{width:100%;border:0;border-radius:12px;padding:11px 13px;font-size:.75rem;font-weight:950;cursor:pointer}.store-inquiry-submit{background:var(--store-pink);color:#fff;margin-top:4px}.store-inquiry-submit.notify{background:#59616f}.store-inquiry-submit:disabled{opacity:.6}.store-inquiry-cancel{margin-top:7px;background:#f4f4f6;color:#666}

/* Footer/mobile nav */
.storefront-footer{background:#29272e;color:#fff;margin-top:20px}.storefront-footer .storefront-container{min-height:130px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:3px}.storefront-footer strong{font-size:.86rem}.storefront-footer span,.storefront-footer a{font-size:.66rem;color:#d3ced5}.storefront-footer a{color:#ffadc5;text-decoration:none;margin-top:3px}.storefront-mobile-nav{display:none}

/* Product image preview */
.product-image-preview-open{overflow:hidden}.product-image-preview-overlay{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(10,10,14,.78);backdrop-filter:blur(5px)}.product-image-preview-overlay.open{display:flex}.product-image-preview-dialog{position:relative;width:min(860px,96vw);max-height:92vh;background:#fff;border-radius:20px;padding:14px;display:flex;flex-direction:column;align-items:center;box-shadow:0 30px 90px rgba(0,0,0,.35)}.product-image-preview-large{max-width:100%;max-height:76vh;object-fit:contain;border-radius:14px}.product-image-preview-close{position:absolute;top:10px;left:10px;z-index:2;width:38px;height:38px;border:0;border-radius:50%;background:rgba(30,30,34,.8);color:#fff;font-size:1.25rem}.product-image-preview-caption{padding:9px 8px 1px;text-align:center;font-size:.75rem;font-weight:800;color:#555}

/* SMS helper kept for admin-generated token page */
.sms-launch-wrap{display:flex;justify-content:center}.sms-launch-card{width:min(620px,100%);background:#fff;border:1px solid var(--store-border);border-radius:22px;padding:24px;box-shadow:var(--store-shadow)}.sms-launch-card h1{font-size:1.4rem;font-weight:950;margin:12px 0 18px}.sms-customer,.sms-product{display:grid;grid-template-columns:90px 1fr auto;gap:8px;align-items:center;padding:11px 0;border-top:1px solid #eee;font-size:.73rem}.sms-customer span,.sms-product span{color:#8b93a3}.sms-customer a{direction:ltr;color:var(--store-pink);text-decoration:none}.sms-product small{font-weight:900}.sms-launch-card pre{white-space:pre-wrap;word-break:break-word;background:#fff7f9;border:1px solid #f2e4e9;border-radius:12px;padding:14px;font:inherit;font-size:.73rem;margin:16px 0}.sms-open-btn{margin-top:0}.sms-launch-card>p{font-size:.66rem;color:#8b93a3;text-align:center;margin:9px 0 0}

@media(max-width:900px){
    .storefront-container{width:min(100% - 22px,760px)}
    .storefront-header-inner{min-height:72px;grid-template-columns:64px minmax(0,1fr) 64px}
    .storefront-brand-mark{width:45px;height:45px;font-size:1rem}.storefront-brand-copy strong{font-size:.95rem}.storefront-brand-copy small{font-size:.58rem;max-width:250px}.storefront-love-note{justify-self:end}.storefront-love-note strong,.storefront-love-note small{display:none}.storefront-love-note>span{width:34px;height:34px;font-size:1.25rem}
    .store-home-search{height:57px;border-radius:18px;margin-bottom:14px}.store-home-search button{display:none}.store-home-search .store-search-icon{font-size:1.55rem}.store-home-search input{font-size:.82rem}
    .store-hero-slide,.store-hero-slide-link{min-height:0}.store-hero-slider{border-radius:20px}.store-hero-overlay{right:5%;max-width:53%}.store-hero-overlay strong{font-size:1.55rem}.store-hero-overlay>span{font-size:.75rem}.store-hero-overlay em{font-size:.67rem;padding:8px 13px;margin-top:12px}.store-hero-fallback{min-height:300px;padding:36px 28px}.store-hero-fallback:after{width:135px;height:135px;font-size:3.5rem;left:7%}.store-hero-fallback h1{font-size:1.75rem;max-width:68%}.store-hero-fallback p{font-size:.75rem;max-width:68%}
    .store-home-banner{height:auto;border-radius:18px}.store-banner-overlay{padding:18px}.store-banner-overlay strong{font-size:.95rem}.store-banner-overlay small{font-size:.64rem}
    .store-category-strip{display:flex;overflow-x:auto;gap:14px;padding:2px 1px 8px;scrollbar-width:none;scroll-snap-type:x proximity}.store-category-strip::-webkit-scrollbar{display:none}.store-category-bubble{flex:0 0 106px;scroll-snap-align:start}.store-category-bubble strong{font-size:.68rem}
    .store-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
    .store-product-detail{grid-template-columns:1fr 1fr;gap:20px}.store-product-detail-copy h1{font-size:1.35rem}
    .store-category-filter{grid-template-columns:1fr 1fr}.store-category-search{grid-column:1/-1}.store-category-filter>button{grid-column:1/-1}.store-category-filter .store-filter-reset{grid-column:1/-1}
}

@media(max-width:700px){
    /* Mobile storefront media must follow the real uploaded artwork ratio.
       Do not keep a fixed slider/banner canvas: it creates empty bands or clips text-heavy banners. */
    .store-home-top{overflow-x:hidden}
    .store-home-top .storefront-container{min-width:0}
    .store-hero-slider{width:100%;max-width:100%;height:auto;min-height:0}
    .store-hero-slide,
    .store-hero-slide.has-mobile-image,
    .store-hero-slide.desktop-image-only,
    .store-hero-slide .store-hero-slide-link,
    .store-hero-slide.has-mobile-image .store-hero-slide-link,
    .store-hero-slide.desktop-image-only .store-hero-slide-link{
        width:100%;
        max-width:100%;
        height:auto;
        min-height:0;
        aspect-ratio:auto;
    }
    .store-hero-slide picture,
    .store-hero-slide.has-mobile-image picture,
    .store-hero-slide.desktop-image-only picture{display:block;width:100%;height:auto;line-height:0}
    .store-hero-slide img,
    .store-hero-slide.has-mobile-image img,
    .store-hero-slide.desktop-image-only img{
        position:static;
        inset:auto;
        display:block;
        width:100%;
        max-width:100%;
        height:auto;
        aspect-ratio:auto;
        object-fit:contain;
        background:transparent;
    }
    .store-home-banners{width:100%;max-width:100%;min-width:0;overflow:hidden}
    .store-home-banner{width:100%;max-width:100%;min-width:0;height:auto;aspect-ratio:auto;overflow:hidden}
    .store-home-banner img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:auto;object-fit:contain;transform:none}
    .store-home-banner:hover img{transform:none}

    /* Some mobile slides uploaded by the old 960x600 pipeline contain large blank
       bands inside the image itself. JavaScript marks only those legacy canvases;
       crop the blank bands at render time without touching genuine mobile artwork. */
    .store-hero-slide.legacy-mobile-canvas,
    .store-hero-slide.legacy-mobile-canvas .store-hero-slide-link{
        position:relative;
        width:100%;
        aspect-ratio:1600/540;
        height:auto;
        overflow:hidden;
    }
    .store-hero-slide.legacy-mobile-canvas picture{
        position:absolute;
        inset:0;
        width:100%;
        height:100%;
    }
    .store-hero-slide.legacy-mobile-canvas img{
        position:absolute;
        inset:0;
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:center;
    }
}

@media(max-width:640px){
    .storefront-body{padding-bottom:70px;max-width:100%;overflow-x:hidden}.storefront-main{max-width:100%;overflow-x:hidden}.storefront-footer{margin-bottom:-70px;padding-bottom:76px}
    .storefront-container{width:calc(100% - 20px);max-width:calc(100% - 20px);margin-inline:auto}
    .storefront-header-inner{grid-template-columns:46px minmax(0,1fr) 46px;gap:5px;min-height:66px}.storefront-menu-button{width:42px;height:42px;padding:6px}.storefront-menu-button span{width:25px;height:2.5px}.storefront-brand{gap:7px}.storefront-brand-mark{width:40px;height:40px;border-width:1.5px}.storefront-brand-copy strong{font-size:.84rem}.storefront-brand-copy small{font-size:.52rem;max-width:190px}.storefront-love-note>span{font-size:1.1rem;width:32px}
    .store-home-top{padding-top:12px;max-width:100%;overflow-x:hidden}.store-home-search{height:54px;border-radius:17px;padding-inline:10px;margin-bottom:10px}.store-home-search input{font-size:.75rem}
    .store-hero-slider{border-radius:17px}.store-hero-slide,.store-hero-slide-link{min-height:0}.store-hero-overlay{right:6%;max-width:56%}.store-hero-overlay strong{font-size:1.15rem}.store-hero-overlay>span{font-size:.62rem;margin-top:4px}.store-hero-overlay em{font-size:.58rem;padding:7px 10px;margin-top:9px}.store-slider-dots{bottom:7px;gap:6px}.store-slider-dots button{width:7px;height:7px}.store-hero-fallback{min-height:230px;padding:24px 20px}.store-hero-fallback:after{width:105px;height:105px;font-size:2.6rem;left:5%}.store-hero-kicker{font-size:.57rem}.store-hero-fallback h1{font-size:1.25rem;margin:7px 0 3px;max-width:68%}.store-hero-fallback p{font-size:.6rem;line-height:1.7;max-width:67%;margin:0}.store-hero-fallback a{font-size:.58rem;padding:7px 10px;margin-top:8px}
    .store-home-banners{grid-template-columns:minmax(0,1fr);gap:10px;margin:12px 0 0;padding:0;width:100%;max-width:100%;overflow:hidden}.store-home-banner{display:block;width:100%;max-width:100%;margin:0;height:auto;border-radius:14px;overflow:hidden}.store-banner-overlay{padding:12px}.store-banner-overlay strong{font-size:.75rem}.store-banner-overlay small{font-size:.52rem}.store-banner-overlay em{width:28px;height:28px;font-size:.7rem;margin-top:5px}
    .store-home-section{padding-top:24px}.store-home-heading{align-items:center;margin-bottom:12px}.store-section-head h1,.store-section-head h2{font-size:1.05rem}.store-section-head>a{font-size:.61rem}.store-section-eyebrow{font-size:.54rem;padding:3px 7px}.store-category-bubble{flex-basis:82px;gap:6px}.store-category-bubble-image{padding:5px}.store-category-bubble strong{font-size:.59rem;line-height:1.45}
    .store-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.store-product-card{border-radius:14px}.store-featured-star{top:6px;right:6px;width:24px;height:24px;font-size:.72rem}.store-product-body{padding:9px;gap:6px}.store-product-title{font-size:.68rem;line-height:1.65;min-height:3.1em}.store-stock-banner{font-size:.56rem;padding:3px 7px}.store-stock-banner span{width:6px;height:6px}.store-inquiry-btn{font-size:.61rem;padding:8px 6px;border-radius:10px}
    .store-search-results-page{padding:15px 0 42px}.storefront-page-head.modern{padding:17px 0}.store-product-detail-breadcrumb{font-size:.57rem;margin-bottom:10px}.store-category-page-title h1{font-size:1.25rem}.store-category-page-title p{font-size:.61rem}.store-category-filter{margin-top:12px;gap:7px}.store-category-filter select,.store-category-search input,.store-category-filter>button{font-size:.64rem}.store-category-filter select{padding:8px}.store-category-products{padding-top:15px}
    .store-detail-section{padding:16px 0 85px}.store-product-detail{grid-template-columns:1fr;padding:13px;border-radius:18px;gap:14px}.store-product-detail-image{aspect-ratio:1.2;border-radius:14px}.store-product-detail-copy{align-items:stretch}.store-product-detail-copy .store-section-eyebrow{align-self:flex-start}.store-product-detail-copy h1{font-size:1.15rem;margin-top:8px}.store-detail-availability{margin:11px 0 5px;font-size:.65rem;align-self:flex-start}.store-price-note{font-size:.65rem;margin-bottom:10px}.store-product-detail-copy>.store-inquiry-btn{display:none}.store-related-products{margin-top:30px}.store-mobile-sticky-cta{position:fixed;z-index:900;left:8px;right:8px;bottom:76px;display:grid;grid-template-columns:minmax(0,1fr) minmax(132px,44%);align-items:center;gap:8px;background:rgba(255,255,255,.96);border:1px solid #ebe7ea;box-shadow:0 12px 35px rgba(20,18,21,.18);backdrop-filter:blur(12px);padding:8px;border-radius:16px}.store-mobile-sticky-cta>span{min-width:0;padding-right:5px}.store-mobile-sticky-cta strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.62rem}.store-mobile-sticky-cta small{display:block;font-size:.54rem;color:var(--store-muted)}.store-mobile-sticky-cta .store-inquiry-btn{font-size:.58rem;margin:0;padding:9px 5px}
    .storefront-modal{align-items:flex-end;padding:8px}.storefront-modal-card{width:100%;max-height:88vh;border-radius:22px 22px 14px 14px;padding:17px}.inquiry-product-preview{grid-template-columns:57px minmax(0,1fr)}.inquiry-product-preview img{width:57px;height:57px}.inquiry-mode-message{font-size:.62rem}.store-field input{font-size:.76rem}
    .storefront-mobile-nav{position:fixed;z-index:850;left:0;right:0;bottom:0;height:68px;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(255,255,255,.98);border-top:1px solid #eee8ec;box-shadow:0 -8px 25px rgba(31,27,29,.06);padding-bottom:env(safe-area-inset-bottom)}.storefront-mobile-nav a,.storefront-mobile-nav button{border:0;background:transparent;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#77737b}.storefront-mobile-nav span{font-size:1.15rem;line-height:1.1}.storefront-mobile-nav small{font-size:.54rem;font-weight:800}.storefront-mobile-nav .active{color:var(--store-pink)}
    .product-image-preview-overlay{padding:9px}.product-image-preview-dialog{padding:8px;border-radius:15px}.product-image-preview-large{max-height:78vh}
}

@media(max-width:370px){
    .storefront-brand-copy small{display:none}.storefront-brand-copy strong{font-size:.78rem}.storefront-header-inner{grid-template-columns:42px 1fr 42px}
    .store-hero-slide,.store-hero-slide-link{min-height:0}.store-hero-fallback{min-height:205px}.store-home-banner{height:auto}.store-category-bubble{flex-basis:74px}.store-product-body{padding:7px}.store-product-title{font-size:.63rem}.store-inquiry-btn{font-size:.57rem}
}
.store-home-banner:only-child{grid-column:1/-1}
.storefront-kicker{display:inline-flex;color:var(--store-pink-dark);background:var(--store-pink-soft);border-radius:999px;padding:5px 10px;font-size:.66rem;font-weight:900}
