/* ===== SOUNDLAB TESTE LOJA V2 ===== */
.hero{
  padding-top:24px!important;
}
.hero-promo-top{
  width:min(1180px,calc(100% - 24px));
  margin:0 auto 18px;
  display:flex;
  justify-content:center;
}
.hero-promo-top .promo-timer-box{
  margin:0;
  width:auto;
  min-width:300px;
  padding:12px 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border-radius:16px;
  border:1px solid rgba(255,106,0,.42);
  background:linear-gradient(90deg,rgba(255,106,0,.16),rgba(255,38,38,.09),rgba(8,9,12,.88));
  box-shadow:0 10px 34px rgba(0,0,0,.28),0 0 28px rgba(255,106,0,.08);
}
.hero-promo-top .promo-timer-label{
  font-size:.82rem;
  font-weight:950;
  letter-spacing:.12em;
  color:#ff9a32;
}
.hero-promo-top #promoCountdown{
  font-size:2rem;
  font-weight:950;
  line-height:1;
  color:#fff;
  min-width:96px;
  text-align:center;
}
.hero-promo-top .promo-timer-sub{
  color:#a9afb9;
  font-size:.75rem;
  font-weight:800;
}

/* Square hero carousel */
.hero-square-carousel{
  position:relative;
  width:min(520px,100%);
  aspect-ratio:1/1;
  border-radius:26px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  background:#08090c;
  box-shadow:0 28px 80px rgba(0,0,0,.46),0 0 50px rgba(255,91,0,.08);
  align-self:center;
}
.hero-square-slide{
  position:absolute;
  inset:0;
  opacity:0;
  transform:scale(1.025);
  transition:opacity .65s ease,transform 1.1s ease;
}
.hero-square-slide.active{
  opacity:1;
  transform:scale(1);
}
.hero-square-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.hero-square-carousel::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 68%,rgba(0,0,0,.34));
  pointer-events:none;
}
.hero-square-dots{
  position:absolute;
  z-index:3;
  left:50%;bottom:14px;
  transform:translateX(-50%);
  display:flex;
  gap:6px;
}
.hero-square-dots span{
  width:6px;height:6px;border-radius:99px;
  background:rgba(255,255,255,.34);
  transition:.25s ease;
}
.hero-square-dots span.active{
  width:20px;
  background:#ff6a00;
}

/* Bigger benefits */
.store-benefits>div{
  min-height:82px;
  justify-content:center;
}
.store-benefits strong{
  font-size:.93rem!important;
  line-height:1.2;
}
.store-benefits span{
  font-size:.84rem!important;
  line-height:1.35;
  margin-top:3px;
}

/* Bigger/colorful categories */
.store-categories a{
  min-height:92px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-width:1px;
}
.store-categories b{
  font-size:.98rem!important;
}
.store-categories small{
  font-size:.78rem!important;
  line-height:1.3;
}
.store-categories a.cat-orange{
  border-color:rgba(255,106,0,.32);
  background:linear-gradient(145deg,rgba(255,106,0,.15),#0b0c0f 62%);
}
.store-categories a.cat-blue{
  border-color:rgba(43,126,255,.32);
  background:linear-gradient(145deg,rgba(43,126,255,.14),#0b0c0f 62%);
}
.store-categories a.cat-red{
  border-color:rgba(255,52,64,.34);
  background:linear-gradient(145deg,rgba(255,52,64,.14),#0b0c0f 62%);
}
.store-categories a.cat-purple{
  border-color:rgba(157,72,255,.34);
  background:linear-gradient(145deg,rgba(157,72,255,.14),#0b0c0f 62%);
}
.store-categories a.cat-green{
  border-color:rgba(0,205,125,.30);
  background:linear-gradient(145deg,rgba(0,205,125,.13),#0b0c0f 62%);
}
.store-categories a.cat-gold{
  border-color:rgba(255,183,0,.32);
  background:linear-gradient(145deg,rgba(255,183,0,.14),#0b0c0f 62%);
}
.store-categories a:hover{
  filter:brightness(1.08);
}

/* Footer branding */
.footer-brand-line{
  width:100%;
  text-align:center!important;
  font-size:1rem!important;
  font-weight:850!important;
  color:#c9cdd5!important;
  letter-spacing:.025em;
  margin:0 auto 10px!important;
}

/* Desktop hero balance */
@media(min-width:1051px){
  .herogrid{
    grid-template-columns:minmax(0,1.05fr) minmax(380px,.78fr)!important;
    align-items:center;
    gap:48px!important;
  }
}
@media(max-width:1050px){
  .hero-square-carousel{
    width:min(600px,92vw);
    margin:18px auto 0;
  }
}
@media(max-width:620px){
  .hero-promo-top .promo-timer-box{
    width:100%;
    min-width:0;
    flex-wrap:wrap;
    gap:7px 11px;
  }
  .hero-promo-top #promoCountdown{font-size:1.7rem}
  .hero-square-carousel{
    width:100%;
    border-radius:20px;
  }
  .store-benefits strong{font-size:.82rem!important}
  .store-benefits span{font-size:.74rem!important}
  .store-categories a{
    min-height:88px;
  }
  .store-categories b{font-size:.9rem!important}
  .store-categories small{font-size:.72rem!important}
  .footer-brand-line{font-size:.9rem!important;padding-inline:12px}
}
