/*
 * STROYOPTORG / Editorial Premium V9.
 * Visual-only styling for product cards INSIDE the homepage's existing sections.
 * Does not style category tiles, checkout, catalog, modals, campaign covers or admin.
 * Reuses the original sf_product_card markup and data-card-cart-control handlers.
 */
.store-home .sf-section .sf-product {
  min-width:0;
  padding:13px;
  background:#fff;
  border:1px solid #e5e8ec;
  border-radius:15px;
  box-shadow:0 3px 18px rgba(17,31,50,.035);
  overflow:hidden;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
@media (hover:hover) and (pointer:fine) {
  .store-home .sf-section .sf-product:hover {
    transform:translateY(-2px);
    border-color:#cdd5df;
    box-shadow:0 12px 27px rgba(21,35,55,.082);
  }
}
.store-home .sf-section .sf-product-picture {
  margin-bottom:12px;
  aspect-ratio:1.3;
  background:#f7f8fa;
  border-radius:10px;
  overflow:hidden;
}
.store-home .sf-section .sf-product-picture>a {
  display:grid;
  place-items:center;
  padding:11px;
}
.store-home .sf-section .sf-product-picture img {
  width:100%;height:100%;max-width:100%;max-height:100%;
  object-fit:contain;
}
.store-home .sf-section .sf-product .sf-favorite {
  width:34px;height:34px;right:7px;top:7px;
  background:rgba(255,255,255,.97);
  border:1px solid #e5e9ee;
  box-shadow:0 2px 7px rgba(18,31,47,.05);
  font-size:15px;color:#24354b;
}
.store-home .sf-section .sf-product .sf-favorite[aria-pressed="true"]{color:#d92332}
.store-home .sf-section .sf-product .sf-discount {
  top:10px;left:10px;padding:5px 9px;border-radius:5px;
  background:#fcf0e6;color:#b64119;font-size:10px;letter-spacing:.015em;
}
.store-home .sf-section .sf-product .sf-sku {
  margin:0 0 5px;font-size:10px;line-height:1.3;
  color:#84909d;font-weight:500;
}
.store-home .sf-section .sf-product-title {
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
  color:#192638;font-size:13px;line-height:1.44;font-weight:630;
  letter-spacing:-.012em;min-height:38px;max-height:38px;
  margin:0 0 8px;overflow:hidden;overflow-wrap:anywhere;
}
.store-home .sf-section .sf-product-title:hover{color:#264678}
.store-home .sf-section .sf-product .sf-stock {
  color:#5d7683;font-size:10px;line-height:1.4;
  margin-top:auto;margin-bottom:7px;
}
.store-home .sf-section .sf-product .sf-stock:not(.sf-stock-available){color:#8c6b6b}
.store-home .sf-section .sf-product .sf-price {margin:0 0 11px;min-width:0}
.store-home .sf-section .sf-product .sf-old-price {min-height:0;line-height:1.35;margin:0 0 2px;color:#939ba6;font-size:10px}
.store-home .sf-section .sf-product .sf-old-price:empty{display:none}
.store-home .sf-section .sf-product .sf-price b {
  color:#122035;font-size:21px;font-weight:800;
  line-height:1.22;letter-spacing:-.038em;
}
.store-home .sf-section .sf-product .sf-buy {
  position:relative;min-height:43px;padding:9px 9px;
  border:1px solid #19263d;border-radius:8px;
  background:#19263d;color:#fff;
  font-size:12px;font-weight:690;letter-spacing:-.008em;
}
.store-home .sf-section .sf-product .sf-buy:not(:disabled)::before {
  content:"";flex:0 0 15px;width:15px;height:15px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E") center/contain no-repeat;
}
.store-home .sf-section .sf-product .sf-buy:hover:not(:disabled){background:#30415c;border-color:#30415c}
.store-home .sf-section .sf-product .sf-buy:disabled{background:#e5e9ef;border-color:#e5e9ef;color:#647184}
.store-home .sf-section .sf-product .sf-buy:focus-visible,
.store-home .sf-section .sf-product .sf-favorite:focus-visible,
.store-home .sf-section .sf-product a:focus-visible {outline:2px solid #3d60a3;outline-offset:3px}
.store-home .sf-section .sf-product .sf-card-qty {
  width:100%;height:43px;border-radius:8px;
  border-color:#dce2e9;background:#fff;
}
.store-home .sf-section .sf-product .sf-card-qty button{min-height:41px}

/* Editorial feature: generous photo and a strongly differentiated lead card. */
.store-home .hb-showcase-featured-grid {gap:14px}
.store-home .hb-showcase-featured-grid>.sf-product:first-child {
  padding:14px;background:#fff;border-color:#e5e8ec;border-radius:16px;
}
.store-home .hb-showcase-featured-grid>.sf-product:first-child .sf-product-picture {
  flex:1 1 auto;min-height:240px;max-height:none;
  aspect-ratio:1.24;margin-bottom:18px;
  background:#f4f3f0;border-radius:12px;
}
.store-home .hb-showcase-featured-grid>.sf-product:first-child .sf-product-picture>a{padding:22px}
.store-home .hb-showcase-featured-grid>.sf-product:first-child .sf-product-title{
  font-size:17px;line-height:1.34;min-height:0;max-height:50px;letter-spacing:-.025em;
}
.store-home .hb-showcase-featured-grid>.sf-product:first-child .sf-price b{font-size:29px}
.store-home .hb-showcase-featured-grid>.sf-product:not(:first-child){padding:11px}
.store-home .hb-showcase-featured-grid>.sf-product:not(:first-child) .sf-product-picture{
  aspect-ratio:1.75;margin-bottom:8px;background:#f9fafb;
}
.store-home .hb-showcase-featured-grid>.sf-product:not(:first-child) .sf-product-picture>a{padding:8px}
.store-home .hb-showcase-featured-grid>.sf-product:not(:first-child) .sf-product-title{font-size:12px;min-height:34px;max-height:34px}
.store-home .hb-showcase-featured-grid>.sf-product:not(:first-child) .sf-price b{font-size:18px}
.store-home .hb-showcase-featured-grid>.sf-product:not(:first-child) .sf-buy{min-height:38px}

/* Editorial category product montage: compact horizontal presentation on wide screens. */
@media (min-width:1101px) {
  .store-home .hb-showcase-category-products>.sf-product {
    display:grid;grid-template-columns:minmax(80px,.8fr) minmax(0,1.25fr);
    grid-template-rows:min-content auto min-content min-content min-content;
    column-gap:12px;row-gap:4px;padding:11px;
    align-items:start;
  }
  .store-home .hb-showcase-category-products .sf-product-picture{
    grid-column:1;grid-row:1/6;align-self:stretch;aspect-ratio:auto;
    height:100%;min-height:143px;margin:0;
  }
  .store-home .hb-showcase-category-products .sf-product-picture>a{padding:5px}
  .store-home .hb-showcase-category-products .sf-sku{grid-column:2;grid-row:1;margin:0}
  .store-home .hb-showcase-category-products .sf-product-title{
    grid-column:2;grid-row:2;min-height:34px;max-height:48px;font-size:12px;margin:0;
  }
  .store-home .hb-showcase-category-products .sf-stock{grid-column:2;grid-row:3;margin:0}
  .store-home .hb-showcase-category-products .sf-price{grid-column:2;grid-row:4;margin:0}
  .store-home .hb-showcase-category-products .sf-price b{font-size:18px}
  .store-home .hb-showcase-category-products .sf-cart-control{grid-column:2;grid-row:5;align-self:end}
  .store-home .hb-showcase-category-products .sf-buy{min-height:39px;font-size:11px}
}

/* Ordinary grids, tabs and scrolling rows use the same editorial typography and actions. */
.store-home .sf-product-grid,.store-home .hb-showcase-category-products{gap:13px}
.store-home .hb-showcase-tab-products .sf-product-picture{aspect-ratio:1.25}
.store-home .sf-product-carousel-track .sf-product-picture{aspect-ratio:1.2}
.store-home .hb-showcase-compact-list>.sf-product{padding:11px 15px;box-shadow:none}
.store-home .hb-showcase-compact-list .sf-product-picture{aspect-ratio:1;margin:0}
.store-home .hb-showcase-compact-list .sf-product-title{max-height:42px}
.store-home .hb-showcase-compact-list .sf-stock{margin:0}
.store-home .hb-showcase-compact-list .sf-price{margin:0}

@media (max-width:1100px) {
  .store-home .hb-showcase-category-products>.sf-product{display:flex;flex-direction:column}
}
@media (max-width:700px) {
  .store-home .sf-section .sf-product {padding:10px;border-radius:12px;box-shadow:none}
  .store-home .sf-product-grid,.store-home .hb-showcase-category-products,.store-home .hb-showcase-featured-grid{gap:9px}
  .store-home .sf-section .sf-product-picture{aspect-ratio:1.05;margin-bottom:9px;border-radius:8px}
  .store-home .sf-section .sf-product-picture>a{padding:7px}
  .store-home .sf-section .sf-product .sf-favorite {width:32px;height:32px;top:3px;right:3px;font-size:14px}
  .store-home .sf-section .sf-product .sf-sku{font-size:9px;line-height:1.3;margin-bottom:3px}
  .store-home .sf-section .sf-product-title{font-size:11.5px;line-height:1.4;min-height:33px;max-height:33px;margin-bottom:7px}
  .store-home .sf-section .sf-product .sf-stock{font-size:9px;line-height:1.3;margin-bottom:5px}
  .store-home .sf-section .sf-product .sf-price{margin-bottom:8px}
  .store-home .sf-section .sf-product .sf-price b{font-size:18px}
  .store-home .sf-section .sf-product .sf-buy{min-height:44px;font-size:11px;padding:7px 4px;gap:5px}
  .store-home .sf-section .sf-product .sf-buy:not(:disabled)::before{width:13px;height:13px;flex-basis:13px}
  .store-home .sf-section .sf-product .sf-card-qty{height:44px}
  .store-home .hb-showcase-featured-grid>.sf-product:first-child {padding:11px;border-radius:12px}
  .store-home .hb-showcase-featured-grid>.sf-product:first-child .sf-product-picture{
    aspect-ratio:1.52;min-height:170px;max-height:240px;margin-bottom:11px;
  }
  .store-home .hb-showcase-featured-grid>.sf-product:first-child .sf-product-picture>a{padding:10px}
  .store-home .hb-showcase-featured-grid>.sf-product:first-child .sf-product-title{font-size:15px;min-height:0;max-height:42px}
  .store-home .hb-showcase-featured-grid>.sf-product:first-child .sf-price b{font-size:24px}
  .store-home .hb-showcase-featured-grid>.sf-product:not(:first-child) {padding:9px;border-radius:11px}
  .store-home .hb-showcase-featured-grid>.sf-product:not(:first-child) .sf-product-picture{aspect-ratio:1.08}
  .store-home .hb-showcase-featured-grid>.sf-product:not(:first-child) .sf-product-title{font-size:11px;min-height:32px;max-height:32px}
  .store-home .hb-showcase-featured-grid>.sf-product:not(:first-child) .sf-price b{font-size:17px}
  .store-home .hb-showcase-featured-grid>.sf-product:not(:first-child) .sf-buy{min-height:44px}
  .store-home .hb-showcase-category-products>.sf-product{padding:9px}
  .store-home .hb-showcase-category-products .sf-product-picture{aspect-ratio:1.05}
  .store-home .hb-showcase-category-products .sf-price b{font-size:17px}
  .store-home .hb-showcase-compact-list>.sf-product{padding:11px;box-shadow:none}
  .store-home .hb-showcase-compact-list .sf-product-picture{aspect-ratio:1.05;margin:0}
  .store-home .hb-showcase-compact-list .sf-product-title{min-height:0;max-height:38px}
  .store-home .hb-showcase-compact-list .sf-price{margin:0}
}
@media (max-width:360px) {
  .store-home .sf-section .sf-product{padding:8px}
  .store-home .sf-section .sf-product-title{font-size:11px}
  .store-home .sf-section .sf-product .sf-price b{font-size:17px}
  .store-home .sf-section .sf-product .sf-buy{font-size:10px;gap:3px}
  .store-home .sf-section .sf-product .sf-buy:not(:disabled)::before{width:12px;height:12px;flex-basis:12px}
}
@media (prefers-reduced-motion:reduce){
  .store-home .sf-section .sf-product{transition:none}
  .store-home .sf-section .sf-product:hover{transform:none}
}
