/** Shopify CDN: Minification failed

Line 52:9 Unexpected "{"
Line 52:18 Expected ":"
Line 52:25 Unexpected "{"

**/
/* ================================================================
   ACT DAWN — Global Layout Fixes
   v7 — Full-width grids, scroll fix, overflow fix
================================================================ */

/* ── 1. OVERFLOW: mobile/tablet only (fixes iOS sticky header) ── */
@media screen and (max-width: 989px) {
  html, body {
    overflow-x: hidden !important;
    width: 100% !important;
    max-width: 100vw !important;
  }
}
@media screen and (min-width: 990px) {
  html { overflow-x: hidden; }
}

*, *::before, *::after { box-sizing: border-box; }

/* ── 2. SHOPIFY SECTION WRAPPER — always full width, no margin gaps ── */
.shopify-section {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ── 3. FULL-WIDTH GRID FIX — the core fix ──────────────────────
   Every ACT section that wraps its grid in .page-width or its own
   inner container was getting 50px (5rem) of side padding from
   Dawn's base.css .page-width rule, AND extra padding from the
   section's own side_padding / section_padding_h settings.

   Strategy:
   - Override .page-width inside ACT sections to have 0 side padding
     so the grid reaches edge-to-edge.
   - Keep headings/headers readable by giving them a small inset.
   - The grid itself gets padding:0 so it truly fills 100%.
─────────────────────────────────────────────────────────────── */

/* Hero Grid — remove wrap padding so grid is edge-to-edge */
#act-hg-{{ section.id }} { /* handled per-section below via attribute selector */ }
[id^="act-hg-"] .act-hg__wrap {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
[id^="act-hg-"] .act-hg__hdr {
  padding-left: 2rem;
  padding-right: 2rem;
}

/* Shop By Category — inner container edge-to-edge */
.act-sbc .act-sbc__inner {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.act-sbc .act-sbc__header {
  padding-left: 2rem;
  padding-right: 2rem;
}
.act-sbc .act-sbc__footer {
  padding-left: 2rem;
  padding-right: 2rem;
}

/* Flash Sale — .page-width inside section edge-to-edge */
[id^="act-flash-"] .page-width {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* but keep the header inner text readable */
[id^="act-flash-"] .act-flash__header .page-width,
[id^="act-flash-"] .act-flash__header-inner {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

/* Product Grid — .page-width inside section edge-to-edge */
[id^="act-pg-"] .page-width {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
[id^="act-pg-"] .act-section-header {
  padding-left: 2rem;
  padding-right: 2rem;
}

/* Tabbed Product Grid — .page-width inside section edge-to-edge */
[id^="act-tpg-"] .page-width {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
[id^="act-tpg-"] .act-reveal,
[id^="act-tpg-"] [id^="act-tpg-tabs-"] {
  padding-left: 2rem;
  padding-right: 2rem;
}
[id^="act-tpg-"] [role="tabpanel"] > div[style*="text-align:center"] {
  padding-left: 2rem;
  padding-right: 2rem;
}

/* Collection Slider — .page-width inside section edge-to-edge */
[id^="act-cs-"] .page-width {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
[id^="act-cs-"] .act-section-header,
[id^="act-cs-"] .act-reveal {
  padding-left: 2rem;
  padding-right: 2rem;
}

/* Trust Bar — inner container edge-to-edge */
[id^="act-trust-"] .page-width,
[id^="act-trust-"] .act-tb__inner {
  max-width: 100% !important;
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

/* Reviews Carousel — page-width edge-to-edge */
[id^="act-rev-"] .page-width,
[class*="act-reviews"] .page-width {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Brand Story — page-width edge-to-edge */
[id^="act-bs-"] .page-width,
[class*="act-bs"] .page-width {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Newsletter — page-width edge-to-edge */
[id^="act-nl-"] .page-width,
[class*="act-nl"] .page-width {
  max-width: 100% !important;
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

/* Logo Slider — page-width edge-to-edge */
[id^="act-ls-"] .page-width,
[class*="act-logo"] .page-width {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Promo Bar — always full width */
[id^="act-promo-"],
[class*="act-promo"] {
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ── 4. MOBILE HERO — fix padding overflow ── */
@media screen and (max-width: 749px) {
  .act-hero {
    overflow: hidden !important;
    width: 100% !important;
    max-width: 100vw !important;
  }
  [id^="act-hero-"] .act-hero__content,
  section.act-hero .act-hero__content {
    padding: 36px 20px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
  .act-hero__heading { font-size: clamp(24px, 6.5vw, 36px) !important; word-break: break-word !important; }
  .act-hero__subtext { max-width: 100% !important; margin: 0 0 20px !important; }
  .act-hero__actions { flex-direction: column !important; width: 100% !important; align-items: stretch !important; gap: 10px !important; }
  .act-hero__actions .act-btn { width: 100% !important; justify-content: center !important; box-sizing: border-box !important; }
  .act-hero__scroll-indicator { display: none !important; }
}

/* ── 5. TRUST BAR — 2x2 grid on mobile ── */
@media screen and (max-width: 749px) {
  .act-tb__inner {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px 12px !important;
    justify-items: center !important;
    padding: 0 16px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    flex-wrap: unset !important;
    flex-direction: unset !important;
    justify-content: unset !important;
  }
  .act-tb__divider { display: none !important; }
  .act-tb__item {
    width: 100% !important;
    max-width: 100% !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 8px !important;
  }
}

/* ── 6. MOBILE SEARCH BAR ── */
@media screen and (max-width: 989px) {
  .act-mobile-searchbar { display: block !important; width: 100% !important; box-sizing: border-box !important; padding: 0 12px 10px !important; }
  .act-mobile-searchbar form { display: flex !important; align-items: center !important; gap: 10px !important; background: rgba(255,255,255,0.12) !important; border: 1.5px solid rgba(255,255,255,0.3) !important; border-radius: 8px !important; height: 46px !important; padding: 0 14px !important; width: 100% !important; box-sizing: border-box !important; }
  .act-mobile-searchbar form:focus-within { border-color: rgba(255,255,255,0.7) !important; background: rgba(255,255,255,0.18) !important; }
  .act-mobile-searchbar button { background: none !important; border: none !important; cursor: pointer !important; color: rgba(255,255,255,0.8) !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: 0 !important; flex-shrink: 0 !important; width: 20px !important; height: 20px !important; }
  .act-mobile-searchbar button svg { width: 20px !important; height: 20px !important; stroke: currentColor !important; }
  .act-mobile-searchbar input { flex: 1 !important; border: none !important; background: transparent !important; outline: none !important; font-size: 15px !important; color: #ffffff !important; font-family: var(--font-body-family) !important; min-width: 0 !important; padding: 0 !important; width: 100% !important; }
  .act-mobile-searchbar input::placeholder { color: rgba(255,255,255,0.55) !important; opacity: 1 !important; }
}

/* ── 7. HEADER — mobile constrain ── */
@media screen and (max-width: 989px) {
  .act-header-wrapper { width: 100% !important; max-width: 100vw !important; overflow: hidden !important; }
  .act-header-inner { padding-left: 12px !important; padding-right: 12px !important; gap: 8px !important; width: 100% !important; max-width: 100vw !important; box-sizing: border-box !important; }
  .act-header__logo { flex-shrink: 1 !important; min-width: 0 !important; max-width: 50% !important; overflow: hidden !important; }
  .act-header__logo img { max-height: 42px !important; width: auto !important; max-width: 100% !important; object-fit: contain !important; }
  .act-header__icons { display: flex !important; align-items: center !important; flex-shrink: 0 !important; margin-left: auto !important; gap: 0 !important; }
  .act-header__icon, .act-header__account-wrap { display: flex !important; width: 44px !important; height: 44px !important; min-width: 44px !important; align-items: center !important; justify-content: center !important; }
}

/* ── 8. MOBILE GRID OVERRIDES ── */
@media screen and (max-width: 989px) {
  .shopify-section { width: 100% !important; max-width: 100vw !important; overflow-x: hidden !important; }

  /* Product grids 2 col */
  .act-pg__grid, .act-wby__grid, .act-mc__grid, .act-flash__grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }

  /* Tab row scroll */
  .act-mc__tabs { overflow-x: auto !important; flex-wrap: nowrap !important; -webkit-overflow-scrolling: touch !important; scrollbar-width: none !important; }
  .act-mc__tabs::-webkit-scrollbar { display: none !important; }

  /* Split sections stack */
  .act-promo-split__grid, .act-bs__grid { grid-template-columns: 1fr !important; gap: 24px !important; }

  /* Newsletter form stack */
  .act-nl__form { flex-direction: column !important; gap: 10px !important; }
  .act-nl__input, .act-nl__btn { width: 100% !important; box-sizing: border-box !important; }
}

/* ── 9. HERO GRID — mobile padding reset ── */
@media screen and (max-width: 749px) {
  [id^="act-hg-"] .act-hg__wrap { padding: 0 12px !important; }
  [id^="act-hg-"] .act-hg__hdr { padding-left: 0 !important; padding-right: 0 !important; }
}
