.home-products,
.products-grid-section,
.blog-listing-grid,
.related-products-grid,
.contact-premium + .site-footer,
.faq-wrap + .site-footer,
.policy-wrap + .site-footer,
.terms-wrap + .site-footer,
.site-footer {
  content-visibility: auto;
  contain-intrinsic-size: 1px 900px;
}

.product-grid > .product-grid-item,
.blog-listing-grid > .blog-listing-card,
.related-products-grid > .related-product-item,
.related-products-grid > [class*="col-"] {
  content-visibility: auto;
  contain-intrinsic-size: 320px 420px;
}

@media (max-width: 767.98px) {
  .product-grid > .product-grid-item,
  .blog-listing-grid > .blog-listing-card,
  .related-products-grid > .related-product-item,
  .related-products-grid > [class*="col-"] {
    contain-intrinsic-size: 280px 400px;
  }
}

.product-grid {
  align-items: stretch;
}

.product-grid > .product-grid-item {
  min-width: 0;
}

.product-grid .product-card-link,
.product-grid .amazon-card,
.product-grid .amazon-card .product-card-inner,
.product-grid .amazon-card .amazon-card-body {
  height: 100%;
}

.product-grid .amazon-card {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  #featured-products {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

.product-detail-page #related-products .related-items.product-grid > .product-grid-item {
  min-width: 0;
}

@media (max-width: 768px) {
  .product-detail-page #related-products .related-items.product-grid > .product-grid-item {
    flex: 0 0 clamp(170px, 74vw, 220px);
    min-width: clamp(170px, 74vw, 220px);
    width: clamp(170px, 74vw, 220px);
    scroll-snap-align: start;
  }
}

/* Shared shell stabilization for 100% zoom and laptop scaling */
:root {
  --vh-shell-max-width: 1440px;
  --vh-shell-padding: clamp(16px, 2.2vw, 30px);
}

.home-products > .container,
.products-grid-section > .container,
.site-footer .footer-top > .container,
.vibe-navbar .container,
.product-detail-page .product-detail-section > .container {
  width: min(100%, var(--vh-shell-max-width));
  max-width: var(--vh-shell-max-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--vh-shell-padding);
  padding-right: var(--vh-shell-padding);
  box-sizing: border-box;
}

.vibe-navbar .container,
.vibe-navbar #navbarNav,
.vibe-navbar #navbarSearchForm,
.vibe-navbar .navbar-nav,
.site-footer .footer-grid,
.site-footer .footer-grid > [class*="col-"],
.product-detail-page .product-detail-layout,
.product-detail-page .product-detail-media-stack,
.product-detail-page .product-detail-main,
.product-detail-page .product-buy-box-wrap {
  min-width: 0;
}

@media (min-width: 992px) {
  .home-products .product-grid,
  .products-grid-section .product-grid {
    gap: clamp(12px, 1.2vw, 18px);
  }
}

@media (min-width: 1024px) and (max-width: 1339.98px) {
  .vibe-navbar #navbarNav {
    flex-wrap: wrap;
    justify-content: flex-end;
    row-gap: 0.45rem;
  }

  .vibe-navbar #navbarSearchForm {
    flex: 1 1 100%;
    max-width: none;
    margin: 0.2rem 0 0;
  }

  .vibe-navbar .navbar-nav {
    width: 100%;
    justify-content: flex-end;
    flex-wrap: wrap;
  }
}

@media (min-width: 992px) and (max-width: 1279.98px) {
  .site-footer .footer-grid {
    flex-wrap: wrap;
    gap: 1.35rem;
  }

  .site-footer .footer-grid > [class*="col-"] {
    flex: 1 1 calc(33.333% - 1.35rem);
    min-width: min(220px, 100%);
  }
}
