/* =============================================
   CAPRI CLEANERS — RESPONSIVE
   responsive.css
   ============================================= */

/* ── 1280px (Large Laptops) ── */
@media (max-width: 1280px) {
  :root { --container-max: 1100px; }

  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr 1.2fr; gap: 2rem; }
  .services-grid { grid-template-columns: repeat(3, 1fr); }
  .reviews-grid  { grid-template-columns: repeat(3, 1fr); }
}

/* ── 1024px (Tablets Landscape / Small Laptops) ── */
@media (max-width: 1024px) {
  :root { --nav-height: 72px; }

  .nav__links { gap: 0; }
  .nav__links a { padding: 0.5rem 0.65rem; font-size: 0.8rem; }

  .services-grid  { grid-template-columns: repeat(2, 1fr); }
  .reviews-grid   { grid-template-columns: repeat(2, 1fr); }
  .stats-grid     { grid-template-columns: repeat(2, 1fr); }
  .stats-grid > * + * { border-left: none; }
  .stats-grid > *:nth-child(odd) + * { border-left: 1px solid rgba(255,255,255,0.08); }

  .footer-grid { grid-template-columns: 1fr 1fr; gap: 2.5rem; }

  .why-grid  { grid-template-columns: 1fr; gap: 2.5rem; }
  .form-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .gallery-grid { grid-template-columns: repeat(2, 1fr); }
  .rating-summary { grid-template-columns: 1fr; gap: 2rem; }

  .section { padding-block: 4rem; }
  .section--lg { padding-block: 5.5rem; }
}

/* ── 768px (Tablets Portrait) ── */
@media (max-width: 768px) {
  :root { --nav-height: 66px; }

  /* Nav */
  .nav__links  { display: none; }
  .nav__right .btn { display: none; }
  .nav__phone  { display: none; }
  .nav__hamburger { display: flex; }

  /* Hero */
  .hero-ctas { flex-direction: column; align-items: flex-start; }

  /* Services */
  .services-grid { grid-template-columns: 1fr 1fr; }

  /* Reviews */
  .reviews-grid { grid-template-columns: 1fr; }

  /* Stats */
  .stats-grid { grid-template-columns: 1fr 1fr; gap: 1.5rem; }
  .stats-grid > * + * { border-left: none; }
  .stat-item__number { font-size: var(--fs-3xl); }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr; gap: 2rem; }
  .footer-bottom { flex-direction: column; text-align: center; gap: 0.5rem; }

  /* Gallery */
  .gallery-grid { grid-template-columns: repeat(2, 1fr); }

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

  /* CTA */
  .cta-banner__btns { flex-direction: column; align-items: center; }

  /* Section headings */
  .section-title { font-size: var(--fs-3xl); }

  .section { padding-block: 3.5rem; }
  .section--lg { padding-block: 4.5rem; }

  /* Page hero */
  .page-hero { padding: 6rem 0 3rem; }
}

/* ── 640px ── */
@media (max-width: 640px) {
  .services-grid { grid-template-columns: 1fr; }
  .gallery-grid  { grid-template-columns: 1fr; }
  .stats-grid    { grid-template-columns: 1fr 1fr; }

  .container { padding-inline: 1rem; }

  .btn { padding: 0.75rem 1.5rem; font-size: var(--fs-sm); }
  .btn--lg { padding: 0.85rem 2rem; font-size: var(--fs-base); }
}

/* ── 480px ── */
@media (max-width: 480px) {
  :root { --nav-height: 62px; }

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

  .section-title { font-size: var(--fs-2xl); }
  .section-subtitle { font-size: var(--fs-base); }

  .page-hero { padding: 5rem 0 2.5rem; }
  .page-hero__title { font-size: var(--fs-3xl); }

  .cta-banner { padding: 3.5rem 0; }
  .form-card { padding: 1.5rem; }

  .review-tab { font-size: var(--fs-xs); padding: 0.4rem 0.9rem; }

  .pricing-table th,
  .pricing-table td { padding: 0.7rem 0.85rem; font-size: var(--fs-xs); }

  .rating-summary { padding: 1.5rem; }
  .rating-big__number { font-size: 3.5rem; }
}

/* ── 360px (Small Phones) ── */
@media (max-width: 360px) {
  .stats-grid { grid-template-columns: 1fr; }
  .stats-grid > * + * { border-left: none; border-top: 1px solid rgba(255,255,255,0.08); }
}

/* ── Print ── */
@media print {
  .site-header,
  .mobile-sticky-bar,
  .scroll-top,
  .cta-banner,
  .hero-section { display: none !important; }

  body { font-size: 12pt; }
  .section { padding-block: 1rem; }
  a { text-decoration: underline; }
}
