/* Footer positioning fix to prevent white space below footer */

/* Make the page wrapper a flex container with full viewport height */
.page-wrapper {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* Make the main content area (everything except footer) flexible */
.page-wrapper > *:not(.main-footer) {
  flex: 1;
}

/* Ensure the footer stays at the bottom */
.main-footer {
  flex-shrink: 0;
  margin-top: auto;
}

/* Specific fix for empty cart to reduce excessive padding */
.cart-area.py-130.rpy-100:has(.text-center) {
  padding-top: 60px;
  padding-bottom: 60px;
}

@media only screen and (max-width: 767px) {
  .cart-area.py-130.rpy-100:has(.text-center) {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

/* Fallback for browsers that don't support :has() selector */
@supports not (selector(:has(*))) {
  .cart-area-empty {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  
  @media only screen and (max-width: 767px) {
    .cart-area-empty {
      padding-top: 40px !important;
      padding-bottom: 40px !important;
    }
  }
}