/** Shopify CDN: Minification failed

Line 179:24 Unexpected "0"

**/
/* ============ Sign-up $50 OFF text visibility ============ */
@media (min-width: 992px) {
  .img-container-right { position: relative; }
  .img-container-right::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.15) 0%, rgba(0,0,0,.42) 55%, rgba(0,0,0,.45) 100%);
    pointer-events: none;
    z-index: 1;
  }
  .offer-container-right { z-index: 2; }
}
.offer-price-1st-line p,
.offer-price-1st-column p,
.offer-price-2nd-column p,
.offer-price-3rd-column-1st-line p,
.offer-price-3rd-column-2nd-line p,
.text-above-images-right p {
  text-shadow: 0 1px 2px rgba(0,0,0,.35), 0 4px 16px rgba(0,0,0,.55);
}
.offer-disclaimer { text-shadow: 0 1px 2px rgba(0,0,0,.4); }

/* ============ Mobile hero — match Figma 390×405 spec exactly ============ */
@media (max-width: 991px) {

  .template-index .ps30f-img-container-left,
  .template-index .ps30f-img-container-right {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 390 / 405 !important;
    height: auto !important;
    max-height: none !important;
    overflow: hidden !important;
  }

  /* Mobile images: shown + cover their container on phones */
  .template-index .ps30f-img-container-left .ps30f-mobile-image,
  .template-index .ps30f-img-container-right .ps30f-mobile-image,
  .template-index .ps30f-img-container-left .ps30f-hero-img,
  .template-index .ps30f-img-container-right .ps30f-hero-img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }
  /* Desktop images: HIDE on mobile. (2026-06-22) These were wrongly grouped into
     the display:block!important rule above, forcing the 1500px desktop hero to
     render on phones ON TOP of the 780px mobile image — so mobile downloaded both
     image sets and the oversized desktop one won LCP. Same source photo, so hiding
     the desktop variant is visually identical and cuts the mobile LCP. */
  .template-index .ps30f-img-container-left .ps30f-desktop-image,
  .template-index .ps30f-img-container-right .ps30f-desktop-image {
    display: none !important;
  }

  .template-index .ps30f-text-above-images-left,
  .template-index .ps30f-text-above-images-right {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 2 !important;
  }

  .template-index .ps30f-left-side-main-container,
  .template-index .ps30f-right-side-main-container {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
  }
  .template-index .ps30f-left-side-main-container-top,
  .template-index .ps30f-right-side-main-container-top,
  .template-index .ps30f-right-side-main-container-top-1 {
    display: none !important;
  }
  .template-index .ps30f-left-side-main-container-bottom,
  .template-index .ps30f-right-side-main-container-bottom {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: center !important;
    padding: 0 16px 28px !important;
  }

  .template-index .ps30f-left-side-main-container-bottom-inner,
  .template-index .ps30f-right-side-main-container-bottom-inner {
    width: 100% !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 14px !important;
    padding: 0 !important;
  }

  .template-index .ps30f-left-side-main-container-bottom-inner-top,
  .template-index .ps30f-right-side-main-container-bottom-inner-top-1 {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 8px !important;
    height: auto !important;
    width: 100% !important;
  }

  .template-index .ps30f-main-text,
  .template-index .ps30f-main-text-right {
    text-align: center !important;
    width: 100% !important;
    margin: 0 !important;
  }
  .template-index .ps30f-sub-text {
    text-align: center !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .template-index .ps30f-left-side-main-container-bottom-inner-bottom,
  .template-index .ps30f-right-side-main-container-bottom-inner-bottom {
    height: auto !important;
    width: 100% !important;
    margin: 10px 0 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    max-width: 340px !important;
  }
  .template-index .ps30f-left-side-main-container-bottom-inner-bottom-1,
  .template-index .ps30f-right-side-main-container-bottom-inner-bottom-1 {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
  }
  .template-index .ps30f-right-side-main-container-bottom-inner-bottom-1-link {
    width: 100% !important;
  }

  .template-index .ps30f-left-side-main-container-bottom-inner-bottom-1 p,
  .template-index .ps30f-right-side-main-container-bottom-inner-bottom-1 p {
    width: 100% !important;
    padding: 14px 24px !important;
    background: #ffffff !important;
    background-image: none !important;
    border: 1px solid #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    color: #0A1D2E !important;
    -webkit-text-stroke: 0 !important;
    font-family: var(--typeBasePrimary), var(--typeBaseFallback) !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: 2.4px !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }

  .template-index .ps30f-right-side-main-container-bottom-inner-bottom-2 {
    display: none !important;
  }

  /* v5 "OUR VISION" block deleted 2026-07-05: it targeted the pre-rebuild
     section id #shopify-section-our_vision_9dwywk (now renders as
     shopify-section-template--…__our_vision_9dwywk) and old vision_*/cta_bg
     classes that occur 0 times in the theme — the section was rebuilt with
     ovis-* classes + its own inline style. Verified dead in fresh DOMs. */
}


/* ================================================================
   HOMEPAGE SECTION-HEADING NORMALIZATION (2026-07-05, picker-only era)
   Every section previously hardcoded its own heading size/tracking/case
   (27.2px vs 28px vs 36px vs 40px). ONE canonical style now — edit HERE
   only. Weight follows the theme-editor picker via --font-weight-header.
   ================================================================ */
.template-index .navy_section_header,
.template-index .navy_header_title,
.template-index .dedu-heading,
.template-index .ovis-heading,
.template-index .ocrt-heading,
.template-index .jdgm-title.jdgm-title {
  font-family: var(--font-stack-header) !important;
  font-weight: var(--font-weight-header) !important;
  font-size: clamp(22px, 1.9vw, 28px) !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  line-height: 1.3 !important;
}
