/* Public Store only. ERP geometry and tokens are not changed by this sheet. */
:is(.sf-store,.sf-preview) { --sf-body-font:system-ui,sans-serif; --sf-display-font:Georgia,serif; }
.sf-store body,.sf-preview { font:var(--sf-body-size,15px)/1.5 var(--sf-body-font); color:var(--text); background:var(--background); }
:is(.sf-store,.sf-preview) :is(h1,h2,h3) { font-family:var(--sf-display-font); font-weight:400; letter-spacing:-.025em; line-height:1.12; }
:is(.sf-store,.sf-preview) p { overflow-wrap:break-word; }
.sf-store main,.sf-preview main { width:100%; max-width:var(--sf-max-width,1440px); margin-inline:auto; padding-inline:clamp(16px,3vw,48px); }
.sf-store #main { padding-top:24px; padding-bottom:24px; min-width:0; }
:is(.sf-store,.sf-preview) :is(.muted,.eyebrow) { color:var(--sf-text-muted,#62665f); }
:is(.sf-store,.sf-preview) .eyebrow { font:500 .7rem/1.4 var(--sf-body-font); letter-spacing:.13em; text-transform:uppercase; }
:is(.sf-store,.sf-preview) :is(button,.action,.quick-action) { min-height:var(--sf-button-height,46px); border-radius:var(--sf-button-radius,3px); }
:is(.sf-store,.sf-preview) :is(button,.action):not(.secondary,.size-chip,.filter-chip) { background:var(--sf-button-background,var(--brand-primary)); color:var(--sf-button-text,var(--text-on-primary)); border-color:var(--sf-button-background,var(--brand-primary)); }
:is(.sf-store,.sf-preview) :is(button,.action):not(.secondary,.size-chip,.filter-chip):hover:not(:disabled) { background:var(--sf-button-hover,var(--brand-secondary)); color:var(--sf-button-text,var(--text-on-primary)); }
:is(.sf-store,.sf-preview) :is(button,.action).secondary { background:var(--sf-button-secondary-background,var(--background)); color:var(--sf-button-secondary-text,var(--text)); border:1px solid var(--sf-button-outline,var(--border)); }
:is(.sf-store,.sf-preview) :is(input,select,textarea) { background:var(--sf-input-background,var(--surface)); color:var(--text); border:var(--sf-border-width,1px) solid var(--sf-border-color,var(--border)); border-radius:var(--sf-input-radius,3px); min-height:44px; }
:is(.sf-store,.sf-preview) :is(button,a,input,select,textarea,summary):focus-visible { outline:3px solid var(--focus-ring); outline-offset:3px; }
:is(.sf-store,.sf-preview) :is(button,input,select):disabled { cursor:not-allowed; }
.sf-store .store-promo { padding:7px 16px; font:500 .72rem/1.4 var(--sf-body-font); text-align:center; background:var(--brand-secondary); color:var(--text-on-secondary); }
.sf-store .store-header { background:var(--sf-header-background,var(--background)); color:var(--sf-header-text,var(--text)); box-shadow:none; border-bottom:var(--sf-border-width,1px) solid var(--sf-border-color,var(--border)); }
.sf-store .store-header :is(a,button) { color:inherit; }
.sf-store .store-topbar { min-height:var(--sf-header-height,70px); max-width:var(--sf-max-width,1440px); margin:auto; gap:20px; padding:12px clamp(16px,3vw,48px); }
.sf-store .store-header .logo { font-family:var(--sf-display-font); letter-spacing:.1em; font-size:1.3rem; }
.sf-store .store-header .logo>span { font:400 .65rem var(--sf-body-font); letter-spacing:.08em; }
.sf-store .commerce-logo { max-width:170px; max-height:58px; object-fit:contain; }
.sf-store .header-search input { background:var(--sf-input-background,var(--surface)); border-color:var(--sf-border-color,var(--border)); }
.sf-store .header-search button { background:transparent; color:var(--sf-header-text,var(--text)); }
.sf-store .store-menu { justify-content:center; gap:24px; border:0; background:var(--sf-header-background,var(--background)); padding-block:0 10px; }
.sf-store .store-menu>a { min-height:32px; padding:4px; font-size:.8rem; }
.sf-store .sf-mobile-account { display:none; }
.sf-store[data-sf-header-sticky=false] .store-header { position:static; }
.sf-store[data-sf-header-sticky=true] .store-header { position:sticky; top:0; z-index:20; }
.sf-store .store-section,.sf-store .home-page .store-section { margin-block:var(--sf-section-gap,48px); }
:is(.sf-store,.sf-preview) .section-heading { display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:20px; }
:is(.sf-store,.sf-preview) .section-heading h2 { font-size:clamp(1.6rem,2.5vw,2.35rem); margin:6px 0 0; }
:is(.sf-store,.sf-preview) .section-heading>a { font:.8rem var(--sf-body-font); text-decoration:none; border-bottom:1px solid currentColor; padding-block:8px; }
:is(.sf-store,.sf-preview) .hero { display:grid; grid-template-columns:55fr 45fr; min-height:0; height:auto; margin:0 0 var(--sf-section-gap,48px); border-radius:var(--sf-radius,0); background:var(--sf-hero-background,#f0ede6); overflow:hidden; }
:is(.sf-store,.sf-preview) .hero-visual { min-width:0; height:auto; background:var(--sf-image-background,#f2f0eb); }
:is(.sf-store,.sf-preview) .hero-visual picture { display:block; height:100%; }
:is(.sf-store,.sf-preview) .hero-visual img { display:block; width:100%; height:100%; max-height:550px; min-height:0; aspect-ratio:5/4; object-fit:cover; padding:0; mix-blend-mode:normal; }
:is(.sf-store,.sf-preview) .hero-visual img.sf-original-photo { object-fit:contain; padding:16px; }
:is(.sf-store,.sf-preview) .hero-copy { display:flex; flex-direction:column; justify-content:center; align-items:start; padding:clamp(24px,4vw,58px); background:var(--sf-hero-background,#f0ede6); }
:is(.sf-store,.sf-preview) .hero-copy h1 { font-size:clamp(2rem,calc(3.6vw * var(--sf-heading-scale,1)),3.8rem); max-width:15ch; line-height:1.05; margin:12px 0 16px; }
:is(.sf-store,.sf-preview) .hero-copy p { font-size:.95rem; max-width:39ch; line-height:1.6; margin:0 0 20px; }
:is(.sf-store,.sf-preview) .hero-copy .actions { display:flex; gap:10px; flex-wrap:wrap; }
:is(.sf-store,.sf-preview) .hero-copy .actions a { padding:12px 16px; font-size:.82rem; }
:is(.sf-store,.sf-preview) .sf-editorial-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
:is(.sf-store,.sf-preview) .sf-editorial-card { display:block; min-width:0; color:var(--text); text-decoration:none; background:transparent; }
:is(.sf-store,.sf-preview) .sf-editorial-photo { display:block; width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; border-radius:var(--sf-card-radius,0); background:var(--sf-image-background,#f2f0eb); }
:is(.sf-store,.sf-preview) .sf-editorial-photo.sf-original-photo { object-fit:contain; }
:is(.sf-store,.sf-preview) .sf-editorial-copy { padding-block:15px 4px; }
:is(.sf-store,.sf-preview) .sf-editorial-copy h3 { font-size:1.5rem; margin:0 0 6px; }
:is(.sf-store,.sf-preview) .sf-editorial-copy p { font-size:.82rem; color:var(--sf-text-muted,#62665f); margin:0 0 10px; max-width:34ch; }
:is(.sf-store,.sf-preview) .sf-editorial-cta { display:inline-block; font-size:.76rem; letter-spacing:.025em; padding-block:4px; border-bottom:1px solid currentColor; }
.sf-store .catalogue-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
.sf-store .catalogue-filters { position:static; width:auto; max-height:none; background:var(--sf-filters-background,var(--background)); border:var(--sf-border-width,1px) solid var(--sf-border-color,var(--border)); border-radius:var(--sf-radius,0); padding:16px; }
.sf-store .catalogue-filters>h2 { font:500 .78rem var(--sf-body-font); margin:0 0 12px; }
.sf-store .catalogue-filters form { display:grid; grid-template-columns:repeat(auto-fit,minmax(115px,1fr)); gap:12px; align-items:end; }
.sf-store .catalogue-filters label { display:grid; gap:4px; font-size:.72rem; }
.sf-store .catalogue-filters :is(input,select) { width:100%; font-size:.85rem; }
.sf-store .catalogue-toolbar { display:flex; justify-content:space-between; gap:12px; align-items:center; margin:0 0 14px; padding:0; }
.sf-store .catalogue-toolbar>span { font-size:.8rem; margin-right:auto; }
.sf-store .catalogue-toolbar label { display:flex; align-items:center; gap:8px; font-size:.78rem; }
.sf-store .catalogue-toolbar select { font-size:.8rem; min-width:130px; }
.sf-store .catalogue-toolbar button { font-size:.8rem; min-height:44px; }
.sf-store .filter-chips { gap:8px; margin-bottom:16px; }
.sf-store .filter-chips button { min-height:38px; font-size:.75rem; padding:6px 10px; }
:is(.sf-store,.sf-preview) .grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--sf-card-gap,18px); }
@media(min-width:1101px) { :is(.sf-store,.sf-preview)[data-sf-columns-desktop='5'] .grid { grid-template-columns:repeat(5,minmax(0,1fr)); } }
:is(.sf-store,.sf-preview) article.product { display:flex; flex-direction:column; min-width:0; margin:0; padding:0; background:var(--sf-card-background,var(--background)); border:var(--sf-card-border,0); border-radius:var(--sf-card-radius,0); box-shadow:var(--sf-card-shadow,none); overflow:hidden; }
:is(.sf-store,.sf-preview) .product-visual { display:block; position:relative; min-width:0; background:var(--sf-image-background,#f2f0eb); }
:is(.sf-store,.sf-preview) .product-visual img { display:block; width:100%; height:auto; aspect-ratio:var(--sf-image-ratio,4/5); object-fit:var(--sf-image-fit,contain); background:var(--sf-image-background,#f2f0eb); padding:0; }
:is(.sf-store,.sf-preview) .product>.body { display:grid; align-content:start; gap:5px; padding:var(--sf-card-padding,10px); }
:is(.sf-store,.sf-preview) .product>.body :is(p,small,.eyebrow) { margin:0; }
:is(.sf-store,.sf-preview) .product-name { color:var(--text); font:400 clamp(.87rem,1.2vw,1rem)/1.35 var(--sf-body-font); text-decoration:none; }
:is(.sf-store,.sf-preview) .commercial-price { display:flex; flex-wrap:wrap; align-items:baseline; gap:3px 8px; margin:0; line-height:1.35; }
:is(.sf-store,.sf-preview) .commercial-price .price { font:var(--sf-price-weight,600) var(--sf-price-size,17px)/1.3 var(--sf-body-font); color:var(--sf-price-color,var(--text)); }
:is(.sf-store,.sf-preview) .commercial-price:has(del) .price { color:var(--sf-promo-price-color,var(--brand-primary)); }
:is(.sf-store,.sf-preview) .commercial-price del { color:var(--sf-old-price-color,var(--text-muted)); font-size:.75rem; }
:is(.sf-store,.sf-preview) .commercial-price small { font-size:.72rem; }
:is(.sf-store,.sf-preview) .wholesale-saving { color:var(--sf-savings-color,var(--brand-primary)); font-size:.74rem; }
:is(.sf-store,.sf-preview) .product .quick-action { display:flex; align-items:center; justify-content:start; align-self:start; margin:0 var(--sf-card-padding,10px) 8px; width:auto; min-height:44px; padding:6px 0; background:transparent; color:var(--text); border:0; font-size:.76rem; text-decoration:underline; text-underline-offset:4px; }
:is(.sf-store,.sf-preview)[data-sf-button-style=outline] .product .quick-action { border:1px solid var(--sf-button-outline,var(--border)); text-decoration:none; padding:8px 12px; }
:is(.sf-store,.sf-preview)[data-sf-button-style=solid] .product .quick-action { background:var(--sf-button-background,var(--brand-primary)); color:var(--sf-button-text,var(--text-on-primary)); text-decoration:none; padding:8px 12px; }
:is(.sf-store,.sf-preview) :is(.sf-badge-new,.sf-badge-promo,.sf-badge-low,.sf-badge-sold,.sf-badge-wholesale) { font:500 .67rem/1.3 var(--sf-body-font); padding:4px 7px; border-radius:2px; width:fit-content; max-width:100%; }
:is(.sf-store,.sf-preview) .sf-badge-new { color:var(--sf-badge-new-text,#24392f); background:var(--sf-badge-new-background,#ede7db); }
:is(.sf-store,.sf-preview) .sf-badge-promo { color:var(--sf-badge-promo-text,#fff); background:var(--sf-badge-promo-background,var(--brand-primary)); }
:is(.sf-store,.sf-preview) .sf-badge-low { color:var(--sf-badge-low-text,#704600); background:var(--sf-badge-low-background,#f5ebd6); }
:is(.sf-store,.sf-preview) .sf-badge-sold { color:var(--sf-badge-sold-text,#6e433a); background:var(--sf-badge-sold-background,#eee9e6); }
:is(.sf-store,.sf-preview) .sf-badge-wholesale { color:var(--sf-badge-wholesale-text,var(--brand-primary)); background:var(--sf-badge-wholesale-background,#e6eee8); }
.sf-store .quick-view,.sf-preview .quick-view { width:min(var(--sf-modal-width,1040px),calc(100vw - 40px)); max-width:var(--sf-modal-width,1040px); height:auto; max-height:calc(100dvh - 40px); border:var(--sf-border-width,1px) solid var(--sf-border-color,var(--border)); border-radius:var(--sf-modal-radius,8px); background:var(--sf-modal-background,var(--background)); color:var(--text); box-shadow:var(--sf-shadow,none); }
.sf-store .quick-view::backdrop { background:var(--sf-overlay-color,#18251e80); }
.sf-store .quick-view-header { background:var(--sf-modal-background,var(--background)); padding:12px 16px; border-bottom:var(--sf-border-width,1px) solid var(--sf-border-color,var(--border)); }
.sf-store .quick-view-header h2 { font:500 .9rem var(--sf-body-font); }
.sf-store .quick-view-header button { width:46px; min-width:46px; min-height:46px; padding:10px; }
.sf-store[data-sf-close-style=solid] .quick-view-header button { background:var(--sf-button-background,var(--brand-primary)); color:var(--sf-button-text,var(--text-on-primary)); }
.sf-store .quick-view-body { padding:20px; background:var(--sf-modal-background,var(--background)); }
.sf-store .quick-view-body .detail,.sf-store .detail { grid-template-columns:minmax(0,55fr) minmax(0,45fr); gap:24px; margin:0; align-items:start; }
.sf-store .product-gallery { margin:0; background:var(--sf-image-background,#f2f0eb); }
.sf-store .product-gallery>.photo { width:100%; height:auto; max-height:min(55dvh,540px); object-fit:contain; aspect-ratio:1; background:var(--sf-image-background,#f2f0eb); }
.sf-store .product-gallery>button { margin:8px; min-height:44px; font-size:.75rem; }
.sf-store .product-info { display:grid; gap:10px; align-content:start; }
.sf-store .product-info>.product-title { font-size:clamp(1.5rem,2.5vw,2.2rem); margin:0; }
.sf-store .product-info :is(p,h2) { margin:0; }
.sf-store .product-info h2:not(.product-title) { font:600 .85rem var(--sf-body-font); }
.sf-store .sf-product-characteristics { font-size:.83rem; color:var(--sf-text-muted,#62665f); }
.sf-store .sf-product-promotion:empty,.sf-store .wholesale-selection:empty { display:none; }
.sf-store .product-info .size-picker { display:flex; flex-wrap:wrap; gap:8px; margin:0; }
.sf-store .product-info .size-chip { min-width:46px; min-height:46px; font-size:.82rem; padding:8px 10px; }
.sf-store .product-info .size-chip:disabled { text-decoration:line-through; }
.sf-store .product-info .quantity-field { display:grid; gap:5px; font-size:.8rem; max-width:120px; margin:0; }
.sf-store .product-benefits { margin:4px 0 0; font-size:.78rem; }
.sf-store .product-benefits>p { margin:0 0 4px; }
.sf-store .product-benefits details>summary { min-height:44px; display:flex; align-items:center; cursor:pointer; }
.sf-store .product-feedback { margin:0; padding:10px; }
.sf-store .product-feedback:empty { display:none; }
.sf-store .filter-dialog { width:min(760px,calc(100vw - 32px)); max-height:85dvh; background:var(--sf-filters-background,var(--background)); border-radius:var(--sf-modal-radius,8px); padding:20px; }
.sf-store .filter-dialog form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:16px; }
.sf-store .filter-dialog label { display:grid; gap:4px; font-size:.82rem; }
.sf-store .filter-dialog form>button { grid-column:1/-1; }
.sf-store .filter-dialog::backdrop { background:var(--sf-overlay-color,#18251e80); }
.sf-store .campaign { border-radius:var(--sf-radius,0); background:var(--sf-hero-background,#f0ede6); }
.sf-store .campaign>div { padding:clamp(24px,4vw,54px); }
.sf-store .campaign img { padding:0; object-fit:cover; mix-blend-mode:normal; }
.sf-store .store-footer { margin-top:var(--sf-section-gap,48px); padding-top:36px; background:var(--sf-footer-background,var(--brand-secondary)); color:var(--sf-footer-text,var(--text-on-secondary)); }
.sf-store .store-footer :is(a,p,h2,strong,small) { color:inherit; }
.sf-store .store-footer h2 { font:500 .85rem var(--sf-body-font); }
.sf-store .store-footer .footer-grid { max-width:var(--sf-max-width,1440px); margin:auto; gap:28px; }
.sf-store .store-footer a { font-size:.8rem; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 :is(.sf-store,.sf-preview)[data-sf-card-hover=subtle] .product:hover { box-shadow:0 4px 18px #18251e14; }
 :is(.sf-store,.sf-preview)[data-sf-card-hover=lift] .product { transition:transform 150ms; }
 :is(.sf-store,.sf-preview)[data-sf-card-hover=lift] .product:hover { transform:translateY(-3px); }
}
@media(min-width:768px) and (max-width:1100px) {
 :is(.sf-store,.sf-preview) .sf-editorial-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 :is(.sf-store,.sf-preview) .grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 :is(.sf-store,.sf-preview)[data-sf-columns-tablet='2'] .grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sf-store .store-topbar { gap:12px; }
 .sf-store .store-account { font-size:.75rem; }
}
@media(max-width:767px) {
 .sf-store #main { padding-top:16px; padding-inline:16px; }
 .sf-store .store-topbar { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:8px; padding:8px 16px; min-height:0; }
 .sf-store .store-topbar .logo { grid-column:1; grid-row:1; font-size:1.15rem; }
 .sf-store .store-topbar .logo>span { display:none; }
 .sf-store .store-topbar .commerce-logo { max-width:135px; max-height:42px; }
 .sf-store .store-account { grid-column:3; grid-row:1; margin:0; display:flex; }
 .sf-store .store-account>a { min-height:44px; display:flex; align-items:center; gap:4px; padding:5px; font-size:.75rem; white-space:nowrap; }
 .sf-store #store-menu-toggle { grid-column:2; grid-row:1; display:grid; place-items:center; min-height:44px; width:44px; padding:9px; margin:0; background:transparent; border:0; }
 .sf-store .header-search { grid-column:1/-1; grid-row:2; width:100%; margin:0; }
 .sf-store .header-search input { min-height:44px; padding-block:8px; font-size:.86rem; }
 .sf-store .header-search button { min-height:44px; }
 .sf-store .store-menu { display:none; background:var(--sf-drawer-background,var(--background)); color:var(--text); padding:8px 16px 16px; max-height:65dvh; overflow:auto; }
 .sf-store .store-header.is-open .store-menu { display:flex; flex-direction:column; gap:0; align-items:stretch; }
 .sf-store .store-menu>a { padding:10px 4px; min-height:44px; }
 .sf-store .sf-mobile-account { display:flex; flex-direction:column; gap:8px; border-top:1px solid var(--sf-border-color,var(--border)); padding-top:12px; margin-top:8px; }
 .sf-store .sf-mobile-account a { min-height:44px; display:flex; align-items:center; padding:6px 4px; }
 :is(.sf-store,.sf-preview) .hero { grid-template-columns:minmax(0,1fr); }
 :is(.sf-store,.sf-preview) .hero-visual { height:auto; max-height:none; order:0; }
 :is(.sf-store,.sf-preview) .hero-visual img { aspect-ratio:5/4; width:100%; height:auto; max-height:350px; }
 :is(.sf-store,.sf-preview) .hero-copy { order:1; padding:24px 20px; }
 :is(.sf-store,.sf-preview) .hero-copy h1 { font-size:clamp(1.9rem,7vw,2.5rem); max-width:17ch; margin:10px 0 12px; }
 :is(.sf-store,.sf-preview) .hero-copy p { font-size:.87rem; margin-bottom:16px; }
 :is(.sf-store,.sf-preview) .hero-copy .actions a { flex:0 1 auto; }
 :is(.sf-store,.sf-preview) .sf-editorial-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
 :is(.sf-store,.sf-preview) .sf-editorial-photo { aspect-ratio:5/4; max-height:440px; }
 :is(.sf-store,.sf-preview) .section-heading { align-items:start; gap:10px; flex-wrap:wrap; }
 :is(.sf-store,.sf-preview) .section-heading h2 { font-size:1.8rem; }
 :is(.sf-store,.sf-preview) .grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 :is(.sf-store,.sf-preview)[data-sf-columns-mobile='1'] .grid { grid-template-columns:minmax(0,1fr); }
 .sf-store .catalogue-filters { display:none; }
 .sf-store .catalogue-toolbar { display:grid; grid-template-columns:auto minmax(0,1fr); gap:10px; align-items:end; }
 .sf-store .catalogue-toolbar>span { grid-column:1/-1; }
 .sf-store .catalogue-toolbar label { font-size:.75rem; justify-content:end; min-width:0; }
 .sf-store .catalogue-toolbar select { width:100%; min-width:0; max-width:180px; }
 .sf-store .filter-dialog { width:calc(100vw - 16px); max-width:760px; max-height:88dvh; margin:auto 8px 8px; border-radius:12px 12px 4px 4px; padding:16px 16px calc(16px + env(safe-area-inset-bottom)); }
 .sf-store .quick-view { width:calc(100vw - 16px); max-width:1040px; height:auto; max-height:calc(100dvh - 24px); margin:auto; border-radius:var(--sf-modal-radius,8px); }
 .sf-store .quick-view-body { padding:16px; }
 .sf-store .quick-view-body .detail,.sf-store .detail { grid-template-columns:minmax(0,1fr); gap:16px; }
 .sf-store .quick-view .product-gallery>.photo { max-height:32dvh; aspect-ratio:4/3; }
 .sf-store .product-gallery>button { padding:6px 10px; }
 .sf-store .quick-view .product-info>.product-title { font-size:1.7rem; }
 .sf-store .quick-view .add-to-cart { position:sticky; bottom:0; z-index:3; margin-top:4px; box-shadow:0 -5px 16px var(--shadow-soft); }
 .sf-store .quick-view .size-row { grid-template-columns:minmax(65px,1fr) auto minmax(80px,100px); }
 .sf-store .store-footer { padding:28px 16px calc(24px + env(safe-area-inset-bottom)); }
 .sf-store .store-footer .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 16px; }
 .sf-store .store-footer .footer-grid>div { grid-column:1/-1; }
}
@media(max-width:359px) {
 .sf-store #main { padding-inline:12px; }
 .sf-store .store-topbar { padding-inline:12px; }
 :is(.sf-store,.sf-preview) .product-name { font-size:.83rem; }
 :is(.sf-store,.sf-preview) .product>.body { padding:8px; }
 .sf-store .quick-view .size-row { grid-template-columns:minmax(0,1fr) auto; }
 .sf-store .quick-view .size-row .size-quantity { grid-column:1/-1; }
}
@media(prefers-reduced-motion:reduce) { :is(.sf-store,.sf-preview) * { scroll-behavior:auto; transition:none; } }

/* V1.30.2: the same Store tokens, canonical variants and compact purchase controls. */
.sf-store .wholesale-banner .eyebrow { color:var(--text-on-secondary-muted); }
.sf-store .sf-product-detail { grid-template-rows:auto 1fr; column-gap:24px; row-gap:12px; }
.sf-store .sf-product-detail>.product-gallery { grid-column:1; grid-row:1 / span 2; }
.sf-store .sf-product-identity { grid-column:2; grid-row:1; display:grid; gap:4px; min-width:0; }
.sf-store .sf-product-identity .product-title { font-size:clamp(1.5rem,2.5vw,2rem); margin:0; }
.sf-store .sf-product-identity p { margin:0; }
.sf-store .sf-product-detail>.product-info { grid-column:2; grid-row:2; gap:10px; min-width:0; }
.sf-store .sf-size-heading { font:600 .85rem var(--sf-body-font); margin:2px 0 0; }
.sf-store .product-info .sf-size-option { display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; flex:0 0 52px; width:52px; min-width:52px; max-width:52px; height:46px; min-height:46px; padding:0; margin:0; font:500 .82rem var(--sf-body-font); border:1px solid var(--sf-border-color); border-radius:var(--sf-button-radius); background:var(--sf-input-background); color:var(--text); box-shadow:none; opacity:1; }
.sf-store .product-info .sf-size-option[data-state=SELECTED] { border-color:var(--sf-button-background); background:var(--sf-button-background); color:var(--sf-button-text); box-shadow:inset 0 0 0 1px var(--sf-button-text); }
.sf-store .product-info .sf-size-option[data-state=OUT_OF_STOCK] { color:var(--sf-text-muted); border-style:dashed; text-decoration:line-through; text-decoration-thickness:2px; }
.sf-store .product-info .sf-size-option[data-state=DISABLED] { border-style:dotted; }
.sf-store .sf-size-help,.sf-store .sf-stock-status { font-size:.75rem; color:var(--sf-text-muted); margin:0; }
.sf-store .sf-quantity-stepper { display:inline-grid; grid-template-columns:44px 60px 44px; align-items:stretch; width:148px; max-width:100%; border:1px solid var(--sf-border-color); border-radius:var(--sf-input-radius); background:var(--sf-input-background); }
.sf-store .sf-quantity-stepper :is(button,input) { min-width:0; width:100%; height:44px; min-height:44px; box-sizing:border-box; padding:0; margin:0; border:0; border-radius:0; box-shadow:none; text-align:center; color:var(--text); background:var(--sf-input-background); opacity:1; font:500 .9rem var(--sf-body-font); }
.sf-store .sf-quantity-stepper button { font-size:1.15rem; color:var(--sf-button-secondary-text); background:var(--sf-button-secondary-background); }
.sf-store .sf-quantity-stepper button:disabled { color:var(--sf-text-muted); cursor:not-allowed; }
.sf-store .sf-quantity-stepper input { appearance:textfield; border-inline:1px solid var(--sf-border-color); }
.sf-store .sf-quantity-stepper input::-webkit-inner-spin-button,.sf-store .sf-quantity-stepper input::-webkit-outer-spin-button { appearance:none; margin:0; }
.sf-store .sf-quantity-stepper input:invalid { outline:2px solid var(--error); outline-offset:-2px; }
.sf-store .product-info .quantity-field { max-width:none; width:fit-content; font-size:.78rem; gap:4px; }
.sf-store .sf-product-description { min-width:0; font-size:.82rem; line-height:1.5; }
.sf-store .sf-product-description p { margin:0; white-space:pre-line; overflow-wrap:anywhere; }
.sf-store .sf-description-summary { margin-bottom:6px; }
.sf-store .sf-description-text.is-collapsed { display:-webkit-box; -webkit-line-clamp:4; line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
.sf-store .sf-description-toggle:not([hidden]) { display:inline-flex; align-items:center; min-height:44px; padding:0; border:0; color:var(--text); background:transparent; text-decoration:underline; text-underline-offset:3px; font:.78rem var(--sf-body-font); }
.sf-store .sf-chosen-sizes { padding:0; border:1px solid var(--sf-border-color); border-radius:var(--sf-input-radius); }
.sf-store .sf-chosen-sizes[hidden] { display:none; }
.sf-store .sf-chosen-sizes>summary { min-height:44px; padding:10px 12px; font:600 .8rem var(--sf-body-font); cursor:pointer; }
.sf-store .sf-chosen-rows { display:grid; gap:8px; padding:0 10px 10px; }
.sf-store .product-info .sf-chosen-row { display:grid; grid-template-columns:minmax(0,1fr) 148px 44px; gap:8px; padding:8px 0; margin:0; border:0; border-top:1px solid var(--sf-border-color); align-items:center; }
.sf-store .sf-chosen-row>div:first-child>strong { font-size:.8rem; }
.sf-store .sf-chosen-row .commercial-price .price { font-size:.82rem; }
.sf-store .sf-chosen-row .commercial-price small { display:none; }
.sf-store .sf-chosen-row .commercial-price del { display:none; }
.sf-store .sf-chosen-row>div:first-child { min-width:0; }
.sf-store .sf-remove-size { min-width:44px; min-height:44px; width:44px; padding:0; margin:0; border:0; background:transparent; color:var(--text); font-size:1.2rem; }
.sf-store .sf-purchase-actions { display:grid; gap:8px; background:var(--sf-modal-background); }
.sf-store .sf-purchase-actions .add-to-cart { position:static; margin:0; box-shadow:none; min-height:46px; width:100%; padding:10px 12px; }
.sf-store .sf-purchase-actions .wholesale-selection { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 10px; margin:0; padding:0; border:0; font-size:.78rem; background:transparent; }
.sf-store .sf-purchase-actions .wholesale-selection[hidden] { display:none; }
.sf-store .sf-selection-note,.sf-store .sf-selection-level,.sf-store .wholesale-selection .wholesale-saving { grid-column:1/-1; font-size:.7rem; margin:0; }
.sf-store .sf-selection-note { color:var(--sf-text-muted); }
.sf-store .sf-delivery-details>summary { cursor:pointer; display:flex; align-items:center; min-height:44px; font-size:.75rem; }
.sf-store .sf-delivery-details p,.sf-store .sf-full-product-link { font-size:.75rem; }
.sf-store .sf-full-product-link { display:flex; align-items:center; min-height:44px; color:var(--text); }
.sf-store .quick-view[open] { display:flex; flex-direction:column; overflow:hidden; }
.sf-store .quick-view-header { flex:0 0 auto; }
.sf-store .quick-view-body { min-height:0; overflow:auto; flex:1 1 auto; padding:16px; overscroll-behavior:contain; }
.sf-store .quick-view-purchase { flex:0 0 auto; max-height:40dvh; overflow:auto; padding:12px 16px calc(12px + env(safe-area-inset-bottom)); border-top:1px solid var(--sf-border-color); background:var(--sf-modal-background); }
.sf-store .quick-view-purchase .product-feedback:not(:empty) { padding:10px 0 0; font-size:.8rem; }
.sf-store .quick-view-purchase .product-feedback .action-group { margin-top:8px; }
.sf-store .quick-view .sf-product-identity .product-title { display:none; }
.sf-store .sf-brand-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:20px; }
.sf-store .sf-brand-card { display:grid; grid-template-columns:minmax(0,1fr); min-width:0; margin:0; padding:0; text-decoration:none; color:var(--text); border:var(--sf-border-width) solid var(--sf-border-color); border-radius:var(--sf-card-radius); box-shadow:var(--sf-card-shadow); background:var(--sf-card-background); overflow:hidden; }
.sf-store .sf-brand-image { display:block; width:100%; height:240px; margin:0; object-fit:cover; background:var(--sf-image-background); }
.sf-store .sf-brand-image.sf-original-photo { object-fit:contain; }
.sf-store .sf-brand-wordmark { display:flex; align-items:center; justify-content:center; padding:24px; font:400 clamp(1.8rem,4vw,3.5rem) var(--sf-display-font); text-align:center; }
.sf-store .sf-brand-copy { display:grid; align-content:center; gap:8px; padding:clamp(20px,3vw,36px); min-width:0; }
.sf-store .sf-brand-copy :is(h3,p) { margin:0; }
.sf-store .sf-brand-copy h3 { font-size:clamp(1.7rem,2.4vw,2.6rem); }
.sf-store .sf-brand-copy .sf-brand-description { font-size:.82rem; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.sf-store .sf-brand-subtitle { font-size:.95rem; }
.sf-store .sf-brand-count { font-size:.72rem; color:var(--sf-text-muted); }
.sf-store .sf-brand-copy .directory-cta { font-size:.78rem; color:var(--text); padding:8px 0 0; width:fit-content; }
.sf-store .sf-brand-logo { width:120px; max-height:48px; height:auto; object-fit:contain; }
.sf-store .sf-brand-grid[data-count='1'] { grid-template-columns:minmax(0,1fr); }
.sf-store .sf-brand-grid[data-count='1'] .sf-brand-card { grid-template-columns:minmax(0,45fr) minmax(0,55fr); }
.sf-store .sf-brand-grid[data-count='1'] .sf-brand-image { height:100%; min-height:260px; max-height:360px; }
@media(max-width:767px) {
 .sf-store .sf-product-detail { grid-template-columns:minmax(0,1fr); grid-template-rows:auto auto auto; gap:12px; }
 .sf-store .sf-product-detail>.sf-product-identity { grid-column:1; grid-row:1; }
 .sf-store .sf-product-detail>.product-gallery { grid-column:1; grid-row:2; }
 .sf-store .sf-product-detail>.product-info { grid-column:1; grid-row:3; }
 .sf-store .quick-view .product-gallery { position:relative; }
 .sf-store .quick-view .product-gallery>.photo { max-height:18dvh; aspect-ratio:3/2; }
 .sf-store .quick-view .product-gallery>button { position:absolute; bottom:4px; left:4px; margin:0; min-height:44px; padding:4px 8px; font-size:.7rem; }
 .sf-store .quick-view .sf-product-identity>.product-code { display:none; }
 .sf-store .quick-view .sf-description-text.is-collapsed { -webkit-line-clamp:3; line-clamp:3; }
 .sf-store .quick-view .gallery-thumbs { display:none; }
 .sf-store .quick-view-header { padding:6px 12px; }
 .sf-store .quick-view-body { padding:12px; }
 .sf-store .quick-view-purchase { padding-inline:12px; }
 .sf-store .sf-brand-grid { grid-template-columns:minmax(0,1fr); gap:20px; }
 .sf-store .sf-brand-grid[data-count='1'] .sf-brand-card { grid-template-columns:minmax(0,1fr); }
 .sf-store .sf-brand-grid[data-count='1'] .sf-brand-image,.sf-store .sf-brand-image { height:220px; min-height:0; max-height:280px; }
 .sf-store .sf-brand-copy { padding:20px; }
}
@media(max-width:389px) {
 .sf-store .product-info .sf-chosen-row { grid-template-columns:minmax(0,1fr) 44px; }
 .sf-store .sf-chosen-row .sf-quantity-stepper { grid-row:2; grid-column:1/-1; }
 .sf-store .sf-chosen-row .sf-remove-size { grid-column:2; grid-row:1; }
}
