/* ===== HERO MOBILE LAYOUT STABILITY + CLS FIX ===== */

@media (max-width:767px) and (min-height:575px) {

  /* Main mobile hero container */
  .hero-bg-mobile {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 80vh;
    max-height: 600px;
    padding-top: clamp(1.5rem, 4vw, 3rem);
    padding-bottom: clamp(1.5rem, 4vw, 3rem);
    padding-left: calc(var(--bs-gutter-x) * .5) !important;
    padding-right: calc(var(--bs-gutter-x) * .5) !important;
    width: 339px;
  }

  /* Replace old breakpoint-based min-heights */
  .fixed-min-height {
    min-height: clamp(260px, 42vw, 460px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    transform: translate(-50%, -50%);
    width: calc(100% - 30px);
  }

  /* Prevent font + text reflow CLS */
  .fixed-min-height .h1 {
    line-height: 1.05;
    text-wrap: balance;
  }

  /* Reduce paragraph reflow shifts */
  .fixed-min-height p {
    text-wrap: balance;
  }

  /* Optional font-swap stability improvement */
  html {
    font-size-adjust: 0.52;
  }

  /* ===== VIDEO HERO HEIGHT LOCK (IF VIDEO LOADS) ===== */
  .background-video {
    position: absolute;
    inset: 0;
    overflow: hidden;
  }

  .background-video__element {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* ===== SWIPER HEIGHT LOCK TO PREVENT SHIFT ===== */
  .coupon-slider {
    min-height: clamp(260px, 30vw, 420px);
  }

}

/* ==== nav adjustments === */
@media (min-width:1200px) {
  .header-default .nav .nav-item .nav-link {
    font-size:14px !important;
  }
}
@media (min-width:1400px) {
  .header-default .nav .nav-item .nav-link {
    font-size:16px !important;
  }
}
@media (min-width:1800px) {
  .header-default .nav .nav-item .nav-link {
    font-size:20px !important;
  }
}
@media (min-width: 1199px) {
  body {
    background: white !important;
  }
}

.p-3 {
  padding: 1.5rem !important;
}

.px-wrapper,
main#main {
  margin: auto !important;
  padding: 0 1em 1em !important;
}

.px-wrapper section,
main#main section {
  margin-bottom: 1em !important;
}

@media (min-width: 992px) {
  .ps-lg-5 {
    padding-left: 4.5rem !important;
  }

  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667% !important;
  }

  .col-lg-6 {
    flex: 0 0 auto;
    width: 50% !important;
  }

  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333% !important;
  }
}

@media (min-width: 1200px) {

  .container-fluid,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl,
  .container-xxxl,
  .horizontal-menu.get-menu {
    padding-left: 5% !important;
    padding-right: 5% !important;
  }

  .py-xl-fluid-xl {
    padding-bottom: clamp(4.65rem, 7.75vw + 1.55rem, 9.3rem) !important;
    padding-top: clamp(4.65rem, 7.75vw + 1.55rem, 9.3rem) !important;
  }
}

#app {
  overflow-x:hidden;
}
