/* V3.2.1: targeted mobile activity spacing and safe-area polish. */

@media (max-width: 760px) {
  .mobile-shop-nav {
    padding-bottom: env(safe-area-inset-bottom);
  }

  body:has(.mobile-shop-nav) {
    padding-bottom: calc(max(84px, 6.5rem) + env(safe-area-inset-bottom));
  }
}

@media (max-width: 640px) {
  .activity-grid {
    grid-auto-rows: auto;
    gap: 16px;
  }

  .activity-card,
  .activity-card-featured,
  .activity-card:nth-child(2),
  .activity-card:nth-child(3),
  .activity-card:nth-child(4),
  .activity-card-wide {
    grid-row: auto;
    align-self: stretch;
    margin: 0;
  }

  .activity-card {
    min-height: 245px;
  }

  .activity-card-featured {
    min-height: 350px;
  }

  .activity-card > .product-photo {
    max-width: calc(100% - 20px);
    max-height: calc(100% - 92px);
  }

  .activity-card-featured > .product-photo {
    bottom: 18px !important;
    height: 58% !important;
  }
}
