/* ===================================================
   THE HAMPER DELIGHTS — Responsive Stylesheet
   Breakpoints: 1280 | 1024 | 768 | 480 | 360
   =================================================== */

/* ===== 1280px and below ===== */
@media (max-width: 1280px) {
  .footer-top { grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 32px; }
  .instagram-grid { grid-template-columns: repeat(4, 1fr); }
  .instagram-grid .insta-item:nth-child(5),
  .instagram-grid .insta-item:nth-child(6) { display: none; }
}

/* ===== 1280px and below ===== */
@media (max-width: 1280px) {
  .hero-counter-block { margin-right: 60px; }
}

/* ===== 1024px — iPad Landscape / Small Desktop ===== */
@media (max-width: 1024px) {
  .section-pad { padding: 64px 0; }
  h1 { font-size: 2.2rem; }
  h2 { font-size: 1.8rem; }

  .nav-links { display: none; }
  .hamburger { display: flex; }
  .mobile-nav { display: flex; }

  .trust-bar-inner { flex-wrap: wrap; }
  .trust-item { min-width: 50%; border-right: none; border-bottom: 1px solid rgba(255,255,255,0.15); }
  .trust-item:nth-child(odd) { border-right: 1px solid rgba(255,255,255,0.15); }
  .trust-item:nth-last-child(-n+2) { border-bottom: none; }

  .story-grid { grid-template-columns: 1fr; gap: 40px; }
  .story-images { max-width: 520px; margin: 0 auto; }

  .steps-grid { grid-template-columns: repeat(2, 1fr); gap: 32px; }
  .steps-grid::before { display: none; }

  .product-detail-grid { grid-template-columns: 1fr; gap: 40px; }
  .product-gallery { max-width: 540px; margin: 0 auto; }

  .contact-grid { grid-template-columns: 1fr; }
  .contact-form-wrap { padding: 36px 28px; }

  .values-grid { grid-template-columns: repeat(2, 1fr); }

  .footer-top { grid-template-columns: 1fr 1fr; gap: 32px; }
  .footer-brand { grid-column: 1 / -1; }

  .cta-inner { flex-direction: column; text-align: center; }
  .cta-text p { max-width: 100%; }
  .cta-actions { justify-content: center; }

  .instagram-grid { grid-template-columns: repeat(3, 1fr); }
  .instagram-grid .insta-item:nth-child(4),
  .instagram-grid .insta-item:nth-child(5),
  .instagram-grid .insta-item:nth-child(6) { display: block; }

  .testimonial-card { min-width: calc(50% - 12px); }
}

/* ===== 768px — iPad Portrait ===== */
@media (max-width: 768px) {
  .section-pad { padding: 48px 0; }
  .container { padding: 0 16px; }

  .hero { height: 88vh; min-height: 520px; }
  .hero-counter-block { display: none; }
  .hero-arrow { width: 42px; height: 42px; }
  .hero-arrow-prev { left: 16px; }
  .hero-arrow-next { right: 16px; }
  .hero-frame { inset: 16px; }
  .hero-slide-label { padding: 14px 12px; font-size: 0.65rem; }

  .trust-item { min-width: 100%; border-right: none; }
  .trust-item:nth-child(odd) { border-right: none; }

  .categories-grid { grid-template-columns: repeat(3, 1fr); gap: 14px; }
  .category-card { padding: 24px 14px 20px; }
  .category-icon { width: 52px; height: 52px; }
  .category-icon svg { width: 24px; height: 24px; }

  .products-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }

  .steps-grid { grid-template-columns: repeat(2, 1fr); gap: 24px; }

  .story-img-accent { display: none; }
  .story-stat-badge { right: 0; }

  .occasions-grid { grid-template-columns: repeat(4, 1fr); }

  .testimonials-track .testimonial-card { min-width: calc(100% - 0px); }

  .footer-top { grid-template-columns: 1fr; gap: 28px; }
  .footer-brand { grid-column: auto; }

  .footer-bottom { flex-direction: column; align-items: flex-start; gap: 12px; }
  .footer-bottom-links { flex-wrap: wrap; gap: 12px; }

  .form-row { grid-template-columns: 1fr; }

  .values-grid { grid-template-columns: 1fr; }

  .story-values { grid-template-columns: 1fr; }

  .product-includes ul { grid-template-columns: 1fr; }

  .instagram-grid { grid-template-columns: repeat(3, 1fr); }
  .instagram-grid .insta-item:nth-child(4),
  .instagram-grid .insta-item:nth-child(5),
  .instagram-grid .insta-item:nth-child(6) { display: none; }

  .shop-controls-inner {
    gap: 8px;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-bottom: 4px;
  }
  .shop-controls-inner::-webkit-scrollbar { display: none; }
  .filter-btn { padding: 7px 14px; font-size: 0.78rem; flex-shrink: 0; }
  .shop-count { flex-shrink: 0; }
}

/* ===== 480px — Large Phone ===== */
@media (max-width: 480px) {
  .section-pad { padding: 40px 0; }

  .hero { height: 100svh; max-height: none; }
  .hero-title-mid { font-size: 2.6rem; }
  .hero-title-top, .hero-title-bot { font-size: 1.5rem; }
  .hero-subtitle { font-size: 0.85rem; }
  .hero-actions { flex-direction: column; align-items: flex-start; gap: 12px; }
  .hero-actions .btn, .hero-btn-ghost { width: 100%; justify-content: center; }
  .hero-slide-labels { display: none; }
  .hero-dots-bar { border-left: none; justify-content: center; width: 100%; }
  .hero-arrow { display: none; }
  .hero-frame { display: none; }

  .header-inner { height: 68px; }
  .logo img { height: 44px; }

  .shop-controls { top: 68px; }
  .shop-controls-inner { padding-bottom: 2px; }

  .categories-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }

  .products-grid { grid-template-columns: 1fr; gap: 20px; }

  .product-card-body { padding: 16px; }

  .steps-grid { grid-template-columns: 1fr; gap: 24px; }

  .occasions-grid { grid-template-columns: repeat(3, 1fr); }

  .contact-form-wrap { padding: 28px 20px; }

  .page-hero { padding: 120px 0 56px; }
  .page-hero h1 { font-size: 1.8rem; }

  .footer-social { gap: 10px; }
  .social-link { width: 36px; height: 36px; }

  .wa-float { bottom: 20px; right: 20px; width: 50px; height: 50px; }
  .wa-float svg { width: 24px; height: 24px; }

  .instagram-grid { grid-template-columns: repeat(2, 1fr); }
  .instagram-grid .insta-item:nth-child(3),
  .instagram-grid .insta-item:nth-child(4),
  .instagram-grid .insta-item:nth-child(5),
  .instagram-grid .insta-item:nth-child(6) { display: none; }
}

/* ===== 360px — Small Phone ===== */
@media (max-width: 360px) {
  .container { padding: 0 12px; }
  .hero-title { font-size: 1.6rem; }
  .btn { padding: 12px 24px; font-size: 0.85rem; }
  .categories-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .occasions-grid { grid-template-columns: repeat(2, 1fr); }
  .category-card { padding: 18px 10px 16px; }
}

/* ===== Landscape mobile ===== */
@media (max-height: 500px) and (orientation: landscape) {
  .hero { height: 100vw; min-height: 320px; max-height: 500px; }
  .hero-title { font-size: 1.6rem; }
  .hero-subtitle { display: none; }
}
