/* Mioday storefront refresh v10.1 — five-card homepage carousels + four-column catalog. */

.storefront{
  --refresh-soft:#f8f8f6;
  --refresh-line:#ececef;
  --refresh-shadow:0 18px 45px rgba(24,24,28,.08);
}

/* Homepage rhythm */
.storefront .hero{margin-top:28px;border-radius:28px;box-shadow:0 18px 55px rgba(20,20,24,.08)}
.storefront .hero-slide{min-height:520px}
.storefront .hero-copy{padding-left:76px}
.storefront .hero h1,.storefront .hero h2{max-width:650px;font-weight:640;letter-spacing:-.058em}
.storefront .hero-copy>p{max-width:500px;font-size:16px}
.storefront .hero .primary-button{min-height:50px;padding-inline:24px;font-weight:760}
.storefront .benefit-strip{margin-top:22px;border-color:var(--refresh-line);border-radius:20px;background:#fff;box-shadow:0 8px 28px rgba(20,20,24,.035)}
.storefront .benefit-strip>div{padding:18px}
.storefront .benefit-icon{width:38px;height:38px}
.storefront .benefit-strip strong{font-size:13px}
.storefront .benefit-strip small{font-size:10.5px}

.storefront .category-showcase{padding-block:72px 30px}
.storefront .products-section{padding-block:54px}
.storefront .section-heading-row{margin-bottom:28px}
.storefront .section-heading-row h2{font-size:clamp(28px,2.55vw,38px);font-weight:640}
.storefront .section-heading-row>a{font-weight:720}

.storefront .category-tiles{gap:20px}
.storefront .category-tiles>a{padding:0 0 4px}
.storefront .category-photo{aspect-ratio:1.52;border-radius:20px;background:var(--refresh-soft);box-shadow:inset 0 0 0 1px rgba(0,0,0,.025);transition:transform .25s ease,box-shadow .25s ease}
.storefront .category-photo img{padding:28px}
.storefront .category-tiles>a:hover .category-photo{transform:translateY(-3px);box-shadow:var(--refresh-shadow)}
.storefront .category-copy strong{font-size:14.5px;font-weight:680}
.storefront .category-copy small{font-size:10.5px}

/* Product cards */
.storefront .product-carousel-shell{position:relative}
.storefront .product-carousel{grid-auto-columns:calc((100% - 64px)/5);gap:16px;padding:2px 1px 24px;scroll-behavior:smooth;scroll-padding-inline:2px}
.storefront .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 18px}
.storefront .product-card{border-radius:18px;transition:transform .24s ease}
.storefront .product-card:hover{transform:translateY(-3px)}
.storefront .product-card>.product-image-wrap{aspect-ratio:1/1.02;border-color:var(--refresh-line);border-radius:18px;background:var(--refresh-soft);box-shadow:0 6px 22px rgba(20,20,24,.035);transition:border-color .24s ease,box-shadow .24s ease}
.storefront .product-card:hover>.product-image-wrap{border-color:#dddddf;box-shadow:var(--refresh-shadow)}
.storefront .product-card>.product-image-wrap>img{padding:22px;transition:transform .3s ease}
.storefront .product-card:hover>.product-image-wrap>img{transform:scale(1.045)}
.storefront .discount-badge,.storefront .shipping-badge{top:11px;padding:6px 8px;font-size:8.5px}
.storefront .discount-badge{left:11px}
.storefront .shipping-badge{right:11px}
.storefront .product-card-body{min-height:176px;padding:14px 2px 0!important}
.storefront .product-brand{font-size:9px;letter-spacing:.12em}
.storefront .product-title{height:44px;margin:6px 0 8px;font-size:13.5px;font-weight:610;line-height:1.55}
.storefront .card-stock{margin-bottom:10px;font-size:10px}
.storefront .price-row{gap:10px}
.storefront .price-row del{font-size:10px}
.storefront .price-row strong{font-size:18px;font-weight:760;letter-spacing:-.025em}
.storefront .price-row button{height:36px;padding-inline:11px;border-color:#d7d7da;background:#fff;font-size:9px;font-weight:780;white-space:nowrap}
.storefront .price-row button:hover{border-color:var(--shop-brand);background:var(--shop-brand);color:#fff}

.storefront .product-carousel-nav{position:absolute;top:39%;z-index:8;width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid #e0e0e3;border-radius:50%;background:rgba(255,255,255,.97);color:#26272b;box-shadow:0 8px 26px rgba(20,20,24,.12);font-size:29px;line-height:1;cursor:pointer;transform:translateY(-50%)}
.storefront .product-carousel-nav:hover{border-color:#cfcfd3;background:#fff;color:var(--shop-brand);transform:translateY(-50%) scale(1.04)}
.storefront .product-carousel-nav:disabled{opacity:.28;cursor:default;transform:translateY(-50%)}
.storefront .product-carousel-prev{left:-22px}
.storefront .product-carousel-next{right:-22px}
.storefront .product-carousel-shell.not-scrollable .product-carousel-nav{display:none}

/* Confidence block */
.storefront .home-confidence{margin-top:48px;margin-bottom:82px;padding:64px;border-radius:28px;background:linear-gradient(135deg,#202124 0%,#2a2a2e 100%);box-shadow:0 22px 60px rgba(20,20,24,.14)}
.storefront .home-confidence h2{font-weight:610}
.storefront .confidence-points p{padding:22px 0}

/* Footer / Tosla-facing visibility */
.storefront .site-footer{margin-top:54px;background:#f6f6f4}
.storefront .footer-grid{grid-template-columns:1.3fr .8fr .8fr 1.15fr .9fr;gap:42px;padding-block:58px}
.storefront .footer-grid>div{gap:11px}
.storefront .footer-grid strong{font-size:12.5px}
.storefront .footer-grid a,.storefront .footer-grid span,.storefront .footer-grid address{color:#56575c;font-size:10.5px;line-height:1.6}
.storefront .footer-grid address{max-width:260px;margin:0;font-style:normal}
.storefront .footer-contact .footer-company{color:var(--shop-ink);font-weight:750}
.storefront .footer-contact>a[href^="mailto:"]{color:var(--shop-brand);font-weight:750}
.storefront .payment-trust{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #dedede}
.storefront .payment-security{display:flex;align-items:center;gap:11px;color:#4b4c51}
.storefront .payment-security svg{width:22px;height:22px;flex:0 0 auto;color:var(--shop-success)}
.storefront .payment-security p{display:flex;flex-direction:column;margin:0}
.storefront .payment-security strong{font-size:11.5px}
.storefront .payment-security small{margin-top:2px;color:#85868b;font-size:9.5px}
.storefront .payment-brands{display:flex;align-items:center;gap:10px}
.storefront .payment-logo-frame{height:38px;min-width:68px;display:flex;align-items:center;justify-content:center;padding:5px 10px;border:1px solid #dedee1;border-radius:8px;background:#fff}
.storefront .payment-logo{display:block;width:auto;max-width:78px;max-height:28px;object-fit:contain}
.storefront .visa-logo{height:22px}
.storefront .mastercard-logo{height:28px}
.storefront .troy-frame{min-width:82px;overflow:hidden}
.storefront .troy-logo{width:76px;max-width:76px;max-height:32px;height:auto;object-fit:contain}
.storefront .footer-bottom{min-height:62px}

@media(max-width:1100px){
  .storefront .hero-copy{padding-left:52px}
  .storefront .product-carousel{grid-auto-columns:calc((100% - 64px)/5);gap:16px}
  .storefront .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 16px}
  .storefront .footer-grid{grid-template-columns:1.2fr repeat(2,1fr);gap:34px}
}

@media(max-width:840px){
  .storefront .hero{margin-top:16px;border-radius:20px;box-shadow:none}
  .storefront .hero-copy{padding:35px 28px 86px}
  .storefront .hero-slide{min-height:0}
  .storefront .category-showcase{padding-block:54px 20px}
  .storefront .products-section{padding-block:42px}
  .storefront .section-heading-row{margin-bottom:22px}
  .storefront .product-carousel{grid-auto-columns:72%;gap:16px}
  .storefront .product-carousel-nav{display:none}
  .storefront .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 13px}
  .storefront .product-card-body{min-height:184px}
  .storefront .home-confidence{margin-top:34px;margin-bottom:58px;padding:38px;border-radius:22px}
  .storefront .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px;padding-block:46px}
  .storefront .payment-trust{align-items:flex-start;flex-direction:column;padding-block:22px}
}

@media(max-width:560px){
  .storefront .benefit-strip{border-radius:16px}
  .storefront .benefit-strip>div{padding:14px 10px}
  .storefront .benefit-strip small{font-size:9.5px}
  .storefront .category-tiles{gap:18px 10px}
  .storefront .category-photo{border-radius:16px}
  .storefront .category-photo img{padding:20px}
  .storefront .section-heading-row h2{font-size:27px}
  .storefront .product-carousel{grid-auto-columns:78%;gap:14px}
  .storefront .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}
  .storefront .product-card>.product-image-wrap{border-radius:16px}
  .storefront .product-card>.product-image-wrap>img{padding:18px}
  .storefront .product-card-body{min-height:176px;padding-top:13px!important}
  .storefront .product-title{height:44px;font-size:13px;line-height:1.55}
  .storefront .price-row{display:block}
  .storefront .price-row button{width:100%;margin-top:10px}
  .storefront .footer-grid{grid-template-columns:1fr;gap:28px;padding-block:38px}
  .storefront .footer-promise{grid-template-columns:1fr 1fr}
  .storefront .payment-brands{width:100%;justify-content:flex-start;flex-wrap:wrap}
  .storefront .payment-logo-frame{height:36px;min-width:64px;padding:5px 8px}
  .storefront .footer-bottom{align-items:flex-start;flex-direction:column;justify-content:center;padding-block:16px}
}
