.mh-home {
  position: relative;
  z-index: 1;
  overflow: hidden;
  background: transparent;
  color: #f4f4f5;
}

.mh-home .mh-section {
  background-color: transparent !important;
}

body.mh-site .mh-foot-b {
  position: relative;
  z-index: 1;
}
.mh-section-title { margin: 0; letter-spacing: .01em; }
.mh-section-help { margin-bottom: 0; }

#heroCarousel { position: relative; margin-top: 0; background: #0d0e0f; overflow: hidden; }
.hero-stage {
  position: relative; isolation: isolate; display: grid;
  height: 100svh; min-height: 100svh; max-height: 100svh;
  grid-template-columns: minmax(0,1fr) minmax(360px,.9fr);
  grid-template-areas: "copy art" "cta art"; align-items: center; align-content: center;
  column-gap: clamp(2rem,6vw,7rem); row-gap: 0; overflow: hidden;
  padding: clamp(9rem,16vh,11rem) max(clamp(2.5rem,8vw,7.5rem),calc(var(--page-inline) + 3.5rem)) clamp(2rem,5vh,4rem);
}
.hero-stage::before {
  content: ""; position: absolute; top: -20%; bottom: -20%;
  left: max(-1rem,calc(var(--page-inline,0px) - 1.5rem)); width: min(34vw,420px);
  z-index: 1; pointer-events: none; background: url("../assets/home/bg-dec-left.webp") no-repeat left center/contain;
  opacity: .3; mix-blend-mode: lighten; -webkit-mask-image: linear-gradient(90deg,#000 28%,transparent 92%);
  mask-image: linear-gradient(90deg,#000 28%,transparent 92%); animation: mh-hero-breathe 14s ease-in-out infinite;
}
@keyframes mh-hero-breathe { 50% { transform: translateY(-6px); } }
.hero-copy { position: relative; z-index: 5; grid-area: copy; max-width: 720px; align-self: end; }
.hero-eyebrow { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 24px; color: rgba(255,255,255,.7); font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.hero-eyebrow::before { content: ""; width: 32px; height: 2px; background: #dc2626; }
.hero-title { max-width: 780px; margin: 0; color: #fff; font-size: clamp(2.35rem,4.2vw,4.4rem); font-weight: 800; letter-spacing: -.055em; line-height: .98; text-wrap: balance; }
.hero-title-line { display: block; }
.hero-help { max-width: 620px; margin: 20px 0 0; color: rgba(255,255,255,.68); font-size: clamp(1rem,1.5vw,1.25rem); line-height: 1.65; }
.hero-cta { position: relative; z-index: 5; display: inline-flex; grid-area: cta; min-height: 50px; align-items: center; justify-content: center; align-self: start; justify-self: start; gap: 10px; margin-top: 26px; border-radius: 9999px; background: #dc2626; padding: 13px 24px; color: #fff; font-size: 14px; font-weight: 700; text-decoration: none; transition: transform .25s,background .25s,box-shadow .25s; }
.hero-cta:hover { color: #fff; background: #ef4444; box-shadow: 0 14px 34px rgba(220,38,38,.3); transform: translateY(-2px); }
.hero-cta svg { width: 18px; height: 18px; }
.hero-art { position: relative; z-index: 3; display: grid; grid-area: art; min-height: 420px; place-items: center; align-self: center; }
.hero-art img { width: min(100%,560px); height: auto; max-height: min(62vh,560px); object-fit: contain; }
.hero-noise { position: absolute; inset: 0; z-index: -1; opacity: .06; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E"); }
.hero-red { background: radial-gradient(circle at 76% 48%,rgba(220,38,38,.28),transparent 28%),linear-gradient(120deg,#08090a 0%,#171010 56%,#260707 100%); }
.hero-divide { position: absolute; inset: 0; z-index: 0; pointer-events: none; background: hsla(44,99.2%,49.6%,.53); clip-path: polygon(52% 100%,100% 28%,100% 100%,8% 100%); }
.hero-stage > :not(.hero-divide):not(.hero-noise) { position: relative; z-index: 2; }
#heroCarousel .carousel-inner,
#heroCarousel .carousel-item { height: 100svh; min-height: 100svh; max-height: 100svh; }
#heroCarousel .carousel-indicators { display: none; }
#heroCarousel .carousel-control-prev,#heroCarousel .carousel-control-next { z-index: 20; width: 3rem; opacity: .9; }
#heroCarousel .carousel-control-prev { left: var(--page-inline); justify-content: flex-start; }
#heroCarousel .carousel-control-next { right: var(--page-inline); left: auto; justify-content: flex-end; }

.mh-sales-section { position: relative; overflow: hidden; isolation: isolate; }
.mh-sales-section > .mh-section-wrap { position: relative; z-index: 1; }
.mh-all-sales-card__shade { position: absolute; inset: 0; background: linear-gradient(to top,rgba(0,0,0,.85),rgba(0,0,0,.45),rgba(0,0,0,.25)); }

.mh-home .mh-section.mh-categories-section {
  background-color: rgba(248, 248, 250, 0.05) !important;
  background-image: none;
  border-color: rgba(255, 255, 255, 0.05);
}

.mh-categories-section .mh-section-title { color: #fff !important; }
.mh-categories-section .mh-section-help { color: #a1a1aa !important; }
.mh-categories-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1.35rem .9rem; }
.mh-category-card { display: flex; width: 100%; flex-direction: column; align-items: center; gap: .55rem; border: 0; color: inherit; text-align: center; text-decoration: none; transition: transform .2s,color .2s; }
.mh-category-card:hover { transform: translateY(-2px); }
.mh-category-card__thumb { display: flex; width: 100%; max-width: 6.75rem; aspect-ratio: 1; align-items: center; justify-content: center; overflow: hidden; border: 1px solid rgba(114,114,122,.45); border-radius: 28%; background: #18191b; box-shadow: 0 4px 12px rgba(0,0,0,.45),0 1px 3px rgba(0,0,0,.35); transition: border-color .2s,box-shadow .2s; }
.mh-category-card__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.mh-category-card:hover .mh-category-card__thumb { border-color: rgba(220,38,38,.55); box-shadow: 0 8px 22px rgba(0,0,0,.55),0 0 0 1px rgba(220,38,38,.25),0 0 18px rgba(220,38,38,.12); }
.mh-category-card:hover .mh-category-card__thumb img { transform: scale(1.06); }
.mh-category-card__label { max-width: 100%; padding: 0 .15rem; overflow: hidden; color: #d4d4d8; display: -webkit-box; font-size: .78rem; font-weight: 500; line-height: 1.25; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }

.mh-product-card { --mh-card-radius: 20px; --mh-card-image-h: 280px; position: relative; display: flex; width: 100%; flex-direction: column; overflow: hidden; border: 1px solid #27272a; border-radius: var(--mh-card-radius); background: #18191b; box-shadow: 0 4px 14px rgba(0,0,0,.28); }
.mh-product-card__media { position: relative; }
.mh-product-card__image-wrap { position: relative; display: block; width: 100%; height: var(--mh-card-image-h); flex-shrink: 0; overflow: hidden; background: #09090b; }
.mh-product-card__image-wrap .woocommerce-image-swap-wrapper { position: relative; display: block; width: 100%; height: 100%; overflow: hidden; }
.mh-product-card__image-wrap .woocommerce-image-swap-wrapper img { position: absolute; inset: 0; max-width: none; max-height: none; object-position: center; }
.mh-product-card__image-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.mh-product-card:hover .mh-product-card__image-wrap img { transform: scale(1.05); }
.mh-product-card__content { display: flex; min-width: 0; flex: 1; flex-direction: column; padding: 10px; text-align: left; }
.mh-product-card__title { margin: 0 0 .25rem; color: #fff; font-size: .9375rem; font-weight: 600; line-height: 1.3; }
.mh-product-card__title a { color: inherit; text-decoration: none; }
.mh-product-card__price { margin: 0 0 .5rem; color: #fff; font-size: .9375rem; font-weight: 700; }
.mh-product-card__btn { display: flex; width: 100%; align-items: center; justify-content: center; margin-top: auto; padding: .5rem 1rem; border: 0; border-radius: 15px; background: #dc2626; color: #fff; font-size: .875rem; font-weight: 500; text-decoration: none; white-space: nowrap; transition: background .25s; }
.mh-product-card__btn:hover { background: #ef4444; color: #fff; }
@media (max-width: 1023px) {
  .mh-product-card__btn { border-radius: 9999px; }
}
.mh-promo-banner { background: #141516; }
.mh-promo-banner__media { position: absolute; inset: 0; z-index: 0; overflow: hidden; }
.mh-promo-banner__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.mh-promo-banner__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to right,rgba(20,21,22,.88),rgba(20,21,22,.45) 48%,rgba(20,21,22,.12)); }

.home-new-category-link.is-active { border-color: #dc2626!important; background: #dc2626!important; color: #fff!important; }
.mh-new-products__grid.is-loading { min-height: 320px; opacity: .55; pointer-events: none; }

.mh-offer-card { display: flex; width: 9.8rem; flex-shrink: 0; flex-direction: column; gap: 10px; color: inherit; text-decoration: none; }
.mh-offer-card__media { position: relative; aspect-ratio: 6/7; overflow: hidden; border-radius: 3px 20px 3px 20px; background: #09090b; }
.mh-offer-card__media::after { content: ""; position: absolute; top: 18%; bottom: 18%; left: 0; width: 2px; background: #dc2626; transform: scaleY(.55); transition: transform .35s; }
.mh-offer-card__media img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.92); transition: transform .45s,filter .35s; }
.mh-offer-card:hover .mh-offer-card__media img { transform: scale(1.06); filter: saturate(1.05); }
.mh-offer-card:hover .mh-offer-card__media::after { transform: scaleY(1); }
.mh-offer-card__meta { display: grid; min-height: 2.3rem; grid-template-columns: auto 1fr; align-items: end; gap: 7px; padding-left: 2px; }
.mh-offer-card__index { color: rgba(255,255,255,.14); font-size: 1.25rem; font-weight: 800; letter-spacing: -.06em; line-height: .9; transition: color .3s; }
.mh-offer-card:hover .mh-offer-card__index { color: rgba(220,38,38,.55); }
.mh-offer-card__text { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.mh-offer-card__text h3 { margin: 0; color: #fff; font-size: .9rem; font-weight: 700; line-height: 1.15; }
.mh-offer-card__cta { display: inline-flex; align-items: center; gap: 4px; color: #a1a1aa; font-size: .7rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; transition: color .25s,gap .25s; }
.mh-offer-card__cta svg { width: 12px; height: 12px; }
.mh-offer-card:hover .mh-offer-card__cta { gap: 8px; color: #f87171; }

.mh-about-box { position: relative; margin-top: 1.5rem; padding: 1.25rem 1.25rem 1rem; border: 1px solid #72727a; border-radius: 1rem; background: #18191b; box-shadow: 0 4px 14px rgba(0,0,0,.28); }
#mh-about-content.is-expanded { max-height: none!important; overflow: visible!important; }
#mh-about-fade.is-hidden { display: none; }
#storm-fx { position: fixed; inset: 0; z-index: 9999; width: 100%; height: 100%; pointer-events: none; }

@media (min-width: 768px) {
  .mh-categories-grid { grid-template-columns: repeat(8,minmax(0,1fr)); gap: 1.75rem 1.35rem; }
  .mh-category-card__thumb { max-width: 8rem; }
  .mh-category-card__label { font-size: .875rem; }
  .mh-offer-card { width: 14rem; }
  .mh-about-box { padding: 1.75rem 2rem 1.25rem; }
  .mh-promo-banner__media { top: 0; right: 0; bottom: 0; left: auto; width: 52%; -webkit-mask-image: linear-gradient(to right,transparent,#000 28%); mask-image: linear-gradient(to right,transparent,#000 28%); }
  .mh-promo-banner__media::after { background: linear-gradient(to right,rgba(20,21,22,.55),rgba(20,21,22,.12) 40%,transparent 70%); }
}

@media (max-width: 1023px) {
  #heroCarousel,
  #heroCarousel .carousel-inner,
  #heroCarousel .carousel-item,
  .hero-stage {
    height: var(--hero-viewport-height, 100svh);
    min-height: var(--hero-viewport-height, 100svh);
    max-height: var(--hero-viewport-height, 100svh);
  }
  .hero-stage { --hero-edge: 1.5rem; grid-template-columns: 1fr; grid-template-rows: auto 1fr auto; grid-template-areas: "copy" "art" "cta"; justify-items: center; align-content: stretch; column-gap: 0; row-gap: 12px; padding: calc(var(--header-height,7rem) + var(--hero-edge)) 1rem var(--hero-edge); text-align: center; }
  .hero-copy { display: flex; max-width: 620px; flex-direction: column; align-items: center; justify-self: center; align-self: start; }
  .hero-eyebrow { margin-bottom: 14px; gap: 10px; font-size: 10px; letter-spacing: .14em; }
  .hero-eyebrow::before,.hero-eyebrow::after { width: 24px; height: 1px; }
  .hero-eyebrow::after { content: ""; background: #dc2626; }
  .hero-title { width: 100%; font-size: clamp(1.75rem,8vw,2.6rem); line-height: 1; }
  .hero-help { margin-top: 12px; font-size: .9rem; line-height: 1.48; }
  .hero-cta { min-height: 44px; align-self: end; justify-self: center; margin-top: 0; padding: 10px 20px; }
  .hero-art { width: 100%; max-width: 100%; height: 100%; min-height: 0; align-self: stretch; justify-self: stretch; overflow: hidden; }
  .hero-art img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: 100%; max-height: 100%; margin: auto; object-fit: contain; }
  .hero-divide { clip-path: polygon(0 82%,100% 62%,100% 100%,0 100%); }
  .hero-stage::before { top: -16%; bottom: -16%; left: -.5rem; width: min(58vw,260px); }
  #heroCarousel .carousel-control-prev,#heroCarousel .carousel-control-next { top: var(--mobile-carousel-center,calc(50% + 56px)); bottom: auto; transform: translateY(-50%); }
  #dynamic-content-container.mh-new-products__grid { display: flex!important; width: 100%; max-width: 100%; min-width: 0; flex-wrap: nowrap; gap: 1rem; overflow-x: auto; }
  #dynamic-content-container .mh-product-card { --mh-card-image-h: 180px; --mh-card-radius: 12px; min-width: 200px; max-width: 200px; flex: 0 0 auto; }
}

@media (max-width: 767px) {
  .page-wrap,
  .mh-section-wrap,
  .mh-section { width: 100%; max-width: 100%; }
  .mh-product-strip,.mh-promo-banners { display: flex!important; width: 100%; max-width: 100%; flex-wrap: nowrap; gap: 1rem; overflow-x: auto; padding-bottom: .5rem; }
  .mh-product-strip > .mh-product-card,.mh-product-strip > a { --mh-card-image-h: 180px; --mh-card-radius: 12px; width: 200px; max-width: 200px; flex: 0 0 200px; }
  .mh-promo-banners > .mh-promo-banner { width: min(72vw,260px); max-width: min(72vw,260px); min-height: 200px; flex: 0 0 min(72vw,260px); }
}

@media (prefers-reduced-motion: reduce) {
  .hero-stage::before { animation: none; }
}
