/* BLAZIEST LIMITED / THE DAILY DROP — Homepage V3
   Scopes every override to the homepage. Other pages and cart/checkout untouched.
*/
.bz-homepage { overflow-x: clip; --bz-daily-black: #0d0d0d; }
/* centered logo on desktop, nav left, utilities right */
@media (min-width: 769px) {
  .bz-homepage .site-header .header-inner {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
    gap: 22px;
    min-height: 74px;
  }
  .bz-homepage .site-header .brand { grid-column:2; grid-row:1; font-size:clamp(29px,3vw,37px); }
  .bz-homepage .site-header .site-nav { grid-column:1; grid-row:1; margin:0; min-width:0; }
  .bz-homepage .site-header .nav-list { gap:clamp(14px,1.9vw,32px); }
  .bz-homepage .site-header .nav-list a { font-size:10px; }
  .bz-homepage .site-header .header-actions { grid-column:3; grid-row:1; justify-content:flex-end; min-width:0; }
  .bz-homepage .site-header .header-actions .bz-desktop-search { display:none; }
  .bz-homepage .site-header .header-actions .bz-cart-action>span:not(.bz-desktop-count) { display:none; }
}
@media(min-width:769px) and (max-width:940px) {
  .bz-homepage .site-header .nav-list { gap:12px; }
  .bz-homepage .site-header .nav-list a { font-size:9px; }
  .bz-homepage .site-header .header-actions { gap:14px; }
}
/* Shipping marquee: two pixel-identical runs, translated by exactly one run.
   This seamless CSS-only loop does not pause on hover, and does not affect the hero carousel.
   Display this offer only if your live shipping policy supports it. */
.bz-homepage .bz-shipping-band {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #070707;
  color: #eeec26;
  min-height: 37px;
  display: flex;
  align-items: center;
  z-index: 3;
  border-bottom: 1px solid #333;
}
.bz-homepage .bz-shipping-track {
  display: flex;
  flex: none;
  width: max-content;
  white-space: nowrap;
  align-items: center;
  animation: bz-shipping-scroll 60s linear infinite;
  will-change: transform;
}
.bz-homepage .bz-shipping-run {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
}
.bz-homepage .bz-shipping-run span {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 30px;
  padding: 8px 18px;
  font-size: 12px;
  line-height: 18px;
  font-weight: 900;
  letter-spacing: .02em;
}
.bz-homepage .bz-shipping-run b { font-size: 17px; font-weight: 400; }
@keyframes bz-shipping-scroll {
  from { transform: translate3d(0, 0, 0); }
  to   { transform: translate3d(-50%, 0, 0); }
}
/* campaign */
.bz-homepage .bz-editorial-hero.bz-campaign {
  min-height:clamp(515px,46vw,730px); background:#0f1112; position:relative;
}
.bz-homepage .bz-campaign .bz-hero-media { z-index:-2; background:linear-gradient(110deg,#14191d,#303438); }
.bz-homepage .bz-campaign-slide {
  position:absolute; inset:0; opacity:0; pointer-events:none; transition:opacity .68s ease;
}
.bz-homepage .bz-campaign-slide.active { opacity:1; }
.bz-homepage .bz-campaign-slide img {
  display:block; width:100%; height:100%; object-fit:cover; object-position:center 35%; border:0; border-radius:0;
}
.bz-homepage .bz-campaign::after {
  z-index:-1; background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.30) 49%,rgba(0,0,0,.09) 100%), linear-gradient(0deg,rgba(0,0,0,.52) 0%,transparent 28%);
}
.bz-homepage .bz-campaign .bz-hero-inner { align-items:center; padding-top:98px; padding-bottom:112px; }
.bz-homepage .bz-campaign .bz-hero-copy { max-width:640px; }
.bz-homepage .bz-campaign .bz-hero-copy .display { max-width:680px; font-size:clamp(58px,7.1vw,113px); letter-spacing:-.045em; line-height:.89; margin:20px 0; overflow-wrap:break-word; }
.bz-homepage .bz-campaign .bz-hero-copy .lead { font-size:clamp(12px,1.2vw,15px); letter-spacing:.17em; max-width:430px; line-height:1.6; text-transform:uppercase; margin:0 0 26px; }
.bz-homepage .bz-campaign .bz-hero-btn { color:#fff; background:transparent; border:1px solid #fff; min-height:48px; }
.bz-homepage .bz-campaign .bz-hero-btn:hover { color:#111; background:#fff; }
.bz-homepage .bz-campaign-controls {
  position:absolute; z-index:5; bottom:24px; left:clamp(18px,4vw,70px); right:clamp(18px,4vw,70px);
  display:flex; align-items:center; justify-content:space-between; gap:20px; color:#fff;
}
.bz-homepage .bz-campaign-pagination { display:flex; align-items:center; gap:24px; font-weight:800; font-size:11px; letter-spacing:.08em; }
.bz-homepage .bz-campaign-dots { display:flex; gap:8px; align-items:center; }
.bz-homepage .bz-campaign-dot { width:34px; height:3px; padding:0; border:0; border-radius:0; background:rgba(255,255,255,.38); transition:background .2s; }
.bz-homepage .bz-campaign-dot.active { background:#fff; }
.bz-homepage .bz-campaign-arrows { display:flex; align-items:center; gap:12px; }
.bz-homepage .bz-campaign-arrows button { width:45px; height:45px; border-radius:50%; border:1px solid #fff; color:#fff; background:rgba(0,0,0,.18); font-size:23px; line-height:1; }
.bz-homepage .bz-campaign-arrows button:hover:not(:disabled) { color:#111; background:#fff; }
.bz-homepage .bz-campaign-arrows button:disabled { opacity:.3; cursor:default; }
/* product-led storefront */
.bz-homepage .bz-daily-catalog { background:#fff; padding:clamp(42px,5vw,83px) 0 clamp(76px,8vw,130px); }
.bz-homepage .bz-daily-heading { display:flex; justify-content:space-between; align-items:end; gap:22px; margin-bottom:33px; }
.bz-homepage .bz-daily-heading>div { flex:1; text-align:center; }
.bz-homepage .bz-daily-heading .bz-eyebrow { letter-spacing:.23em; color:#666; }
.bz-homepage .bz-daily-heading h2 { margin:5px 0 0; font:900 clamp(29px,3.6vw,53px)/1 var(--bz-display); color:#101010; }
.bz-homepage .bz-daily-viewall { font-size:11px; color:#111; font-weight:800; text-decoration:underline; text-underline-offset:5px; white-space:nowrap; }
.bz-homepage .bz-daily-viewall span { margin-left:8px; }
.bz-homepage .bz-daily-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(42px,5vw,82px) clamp(13px,1.7vw,26px); }
.bz-homepage .bz-daily-product { min-width:0; margin:0; padding:0; }
.bz-homepage .bz-daily-product-link { display:block; color:#0d0d0d; text-decoration:none; text-align:center; }
.bz-homepage .bz-daily-image { aspect-ratio: .91; display:block; position:relative; overflow:hidden; background:#f4f4f2; }
.bz-homepage .bz-daily-image img { display:block; width:100%; height:100%; object-fit:contain; transition:transform .32s ease; }
.bz-homepage .bz-daily-product-link:hover img { transform:scale(1.035); }
.bz-homepage .bz-daily-product h3 { font-family: "Blaziest Switzer", Arial, sans-serif; font-size:clamp(12px,1.4vw,19px); font-weight:700; line-height:1.4; letter-spacing:.01em; text-transform:uppercase; margin:17px 0 7px; }
.bz-homepage .bz-daily-product p { font-size:clamp(12px,1.4vw,18px); font-weight:500; color:#272727; margin:0; }
.bz-homepage .bz-daily-tag { position:absolute; left:12px; top:12px; background:#111; color:#fff; padding:7px 9px; font-size:10px; font-weight:800; letter-spacing:.06em; }
.bz-homepage .bz-daily-loading,.bz-homepage .bz-daily-message { grid-column:1/-1; text-align:center; padding:45px 10px; margin:0; font-size:13px; color:#727575; }
.bz-homepage .bz-daily-message[hidden] { display:none!important; }
.bz-homepage .bz-statement { padding-block:60px; }
@media (max-width:768px) {
  .bz-homepage .bz-shipping-band { min-height:34px; }
  .bz-homepage .bz-shipping-run span { font-size:10px; padding-block:7px; gap:20px; }
  .bz-homepage .bz-editorial-hero.bz-campaign { min-height:clamp(535px,75svh,690px); }
  .bz-homepage .bz-campaign .bz-hero-inner { padding-top:110px; padding-bottom:110px; align-items:flex-end; }
  .bz-homepage .bz-campaign .bz-hero-copy .display { font-size:clamp(43px,11vw,78px); max-width:520px; margin:11px 0 15px; }
  .bz-homepage .bz-campaign .bz-hero-copy .lead { max-width:295px; font-size:11px; letter-spacing:.12em; margin-bottom:19px; }
  .bz-homepage .bz-campaign-slide img { object-position:center; }
  .bz-homepage .bz-campaign::after { background:linear-gradient(0deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.22) 67%,rgba(0,0,0,.1) 100%); }
  .bz-homepage .bz-campaign-controls { bottom:22px; }
  .bz-homepage .bz-campaign-arrows button { width:38px; height:38px; font-size:20px; }
  .bz-homepage .bz-campaign-pagination { gap:12px; font-size:10px; }
  .bz-homepage .bz-campaign-dot { width:21px; }
  .bz-homepage .bz-daily-heading { margin-bottom:23px; }
  .bz-homepage .bz-daily-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 13px; }
  .bz-homepage .bz-daily-image { aspect-ratio:.88; }
  .bz-homepage .bz-daily-product h3 { margin-top:10px; font-size:12px; }
  .bz-homepage .bz-daily-product p { font-size:12px; }
  .bz-homepage .bz-daily-tag { font-size:8px; padding:6px; left:6px; top:6px; }
}
@media(max-width:380px) {
  .bz-homepage .bz-campaign .bz-hero-copy .display { font-size:40px; }
  .bz-homepage .bz-daily-heading>div { text-align:left; }
  .bz-homepage .bz-daily-heading h2 { font-size:31px; }
  .bz-homepage .bz-daily-viewall { font-size:9px; }
  .bz-homepage .bz-campaign-pagination { gap:9px; }
  .bz-homepage .bz-campaign-dot { width:17px; }
}
@media(prefers-reduced-motion:reduce) {
  .bz-homepage .bz-shipping-track { animation:none; }
  .bz-homepage .bz-campaign-slide { transition:none; }
  .bz-homepage .bz-daily-image img { transition:none; }
}

/* MOBILE HERO VISIBILITY FIX / 2026-10-17
   The prior aspect-ratio-only rule could collapse a flex hero to height: 0.
   Explicit responsive height always gives the campaign slides a painting area.
   Only the homepage is targeted; JS, slide data, cart, and other pages stay intact.
*/
@media (max-width: 768px) {
  /* Keep wordmark truly centered between unequal menu / utility areas. */
  .bz-homepage .m-header .m-row {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0;
    min-height: 62px;
    padding-inline: 16px;
  }
  .bz-homepage .m-header .m-brand {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
  }
  .bz-homepage .m-header #mMenuBtn,
  .bz-homepage .m-header .m-right {
    position: relative;
    z-index: 2;
  }
  .bz-homepage .m-header .m-right { margin-left: auto; }

  /* 3:4 on phones; capped on wide mobile/tablet so products appear sooner. */
  .bz-homepage .bz-editorial-hero.bz-campaign {
    height: min(133.333vw, 560px);
    min-height: 0;
    max-height: none;
    aspect-ratio: auto;
    flex: none;
    display: flex;
  }
  .bz-homepage .bz-campaign .bz-hero-media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .bz-homepage .bz-campaign .bz-hero-inner {
    height: 100%;
    min-height: 0;
    padding-top: clamp(28px, 10vw, 52px);
    padding-bottom: 68px;
    align-items: flex-end;
  }
  .bz-homepage .bz-campaign .bz-hero-copy { max-width: 92%; }
  .bz-homepage .bz-campaign .bz-hero-copy .display {
    font-size: clamp(34px, 9.2vw, 62px);
    line-height: .92;
    margin: 9px 0 12px;
    max-width: 100%;
  }
  .bz-homepage .bz-campaign .bz-hero-copy .lead {
    font-size: clamp(9px, 2.6vw, 11px);
    line-height: 1.5;
    letter-spacing: .09em;
    max-width: 285px;
    margin-bottom: 15px;
  }
  .bz-homepage .bz-campaign .bz-hero-btn {
    min-height: 42px;
    font-size: 10px;
    padding-inline: 15px;
  }
  .bz-homepage .bz-campaign-controls {
    left: 16px;
    right: 16px;
    bottom: 15px;
    gap: 12px;
  }
  .bz-homepage .bz-campaign-pagination { gap: 9px; font-size: 10px; }
  .bz-homepage .bz-campaign-dots { gap: 6px; }
  .bz-homepage .bz-campaign-dot { width: 17px; }
  .bz-homepage .bz-campaign-arrows { gap: 9px; }
  .bz-homepage .bz-campaign-arrows button { width: 35px; height: 35px; font-size: 19px; }

  /* Bring featured products closer to the fold without compressing the grid. */
  .bz-homepage .bz-daily-catalog { padding-top: 28px; }
  .bz-homepage .bz-daily-heading { margin-bottom: 18px; }
}
@media (max-width: 350px) {
  .bz-homepage .m-header .m-brand { font-size: 19px; }
  .bz-homepage .m-header .m-row { padding-inline: 9px; }
  .bz-homepage .m-header .m-btn { min-width: 38px; width: 38px; }
  .bz-homepage .m-header .m-right { gap: 0; }
  .bz-homepage .bz-campaign .bz-hero-copy .display { font-size: 31px; }
}


/* V3.2 — Mobile search relocated inside the slide-out menu.
   Stays beside the existing Close (X) button, without touching desktop search. */
@media (max-width: 768px) {
  .bz-homepage .m-drawer .bz-drawer-actions {
    margin-left: auto;
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
  }
  .bz-homepage .m-drawer-head .bz-drawer-search {
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 43px;
    height: 43px;
    min-width: 43px;
    padding: 0;
    text-decoration: none;
  }
  .bz-homepage .m-drawer-head .bz-drawer-search svg {
    display: block;
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .bz-homepage .m-drawer-head .bz-drawer-search:hover,
  .bz-homepage .m-drawer-head .bz-drawer-search:focus-visible {
    color: #e7e9e9;
  }
}
