/* ==========================================================================
   KITCHENS PLANET — responsive.css
   Breakpoints:  1200 / 992 / 768 / 576
   ========================================================================== */

/* ---------- Large desktops & down (<= 1200px) ---------- */
@media (max-width: 1200px) {
  .feature-grid { grid-template-columns: repeat(3, 1fr); }
  .cat-grid { grid-template-columns: repeat(3, 1fr); }
  .process-wrap { grid-template-columns: repeat(3, 1fr); row-gap: 40px; }
  .process-step:not(:last-child)::after { display: none; }
}

/* ---------- Tablets (<= 992px) ---------- */
@media (max-width: 992px) {
  .nav-links { display: none; }
  .nav-cta .btn-premium { display: none; }
  .nav-toggle { display: flex; }

  .hero-content { padding-top: 120px; }
  .hero::after {
    background: linear-gradient(90deg, rgba(17,17,17,0.85) 0%, rgba(17,17,17,0.6) 100%);
  }

  .feature-grid { grid-template-columns: repeat(2, 1fr); }
  .cat-grid { grid-template-columns: repeat(2, 1fr); }
  .testi-card { flex: 0 0 calc(50% - 12px); }
  .masonry { columns: 2; }

  .about-media { margin-bottom: 50px; max-width: 560px; }
  .about-media .media-badge { right: 12px; }

  .footer-col { margin-bottom: 36px; }
}

/* ---------- Landscape phones / small tablets (<= 768px) ---------- */
@media (max-width: 768px) {
  body { font-size: 15.5px; }

  .section-pad { padding: 64px 0; }
  .section-pad-sm { padding: 46px 0; }

  .feature-grid { grid-template-columns: 1fr; }
  .cat-grid { grid-template-columns: 1fr; }
  .process-wrap { grid-template-columns: repeat(2, 1fr); }
  .testi-card { flex: 0 0 100%; }
  .masonry { columns: 1; }

  .hero { min-height: 92vh; }
  .hero-actions { flex-direction: column; align-items: flex-start; }
  .hero-actions .btn-premium,
  .hero-actions .btn-outline-premium { width: 100%; justify-content: center; }

  .cta-actions { flex-direction: column; }
  .cta-actions .btn-premium,
  .cta-actions .btn-outline-premium { width: 100%; justify-content: center; }

  .page-banner { padding: 150px 0 66px; }

  .pd-thumbs { grid-template-columns: repeat(4, 1fr); }
  .spec-table th { width: 46%; }

  .about-media .media-badge {
    position: static;
    display: inline-block;
    margin-top: 20px;
  }
}

/* ---------- Phones (<= 576px) ---------- */
@media (max-width: 576px) {
  .container-xl-custom { padding-inline: 18px; }

  .process-wrap { grid-template-columns: 1fr; }

  .navbar-brand-custom { font-size: 1.2rem; }

  .cta-band { padding: 44px 24px; }
  .stat-num { font-size: 2.6rem; }

  .btn-premium, .btn-outline-premium { padding: 13px 26px; font-size: 0.88rem; }

  .lightbox-nav { width: 44px; height: 44px; }
  .lightbox-nav.prev { left: 10px; }
  .lightbox-nav.next { right: 10px; }
}

/* ---------- Fine tuning very small ---------- */
@media (max-width: 380px) {
  .display-hero { font-size: 2.1rem; }
  .section-title { font-size: 1.7rem; }
}
