/* ==========================================================================
   MAHESHWARI MIRAL B — RESPONSIVE STYLESHEET
   ========================================================================== */

.nav-menu { display: none; }
.hamburger { display: flex; }
.hero { min-height: auto; padding: 150px 0 90px; text-align: left; }
.hero-buttons { flex-direction: column; align-items: stretch; }
.hero-buttons .btn { width: 100%; }
.hero-glass-row .grid-3 { grid-template-columns: 1fr; }
.footer-grid { grid-template-columns: 1fr; }
.stats-grid { grid-template-columns: repeat(2, 1fr); }
.gallery-preview-grid { grid-template-columns: 1fr; }
.about-check-grid { grid-template-columns: 1fr; }
.page-hero { padding: 130px 0 70px; }
.footer-bottom { flex-direction: column; text-align: center; }
.back-to-top { bottom: 18px; right: 18px; width: 46px; height: 46px; font-size: 1.15rem; }
.cta-section { padding: 40px 22px; }
.section { padding: 60px 0; }

@media (min-width: 480px) {
  .hero-buttons { flex-direction: row; align-items: center; }
  .hero-buttons .btn { width: auto; }
  .gallery-preview-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 576px) {
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .masonry { column-count: 2; }
}

@media (min-width: 768px) {
  .grid-2, .grid-3 { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
  .stats-grid { grid-template-columns: repeat(4, 1fr); }
  .about-check-grid { grid-template-columns: repeat(2, 1fr); }
  .hero { min-height: 92vh; padding: 0; text-align: left; }
}

@media (min-width: 992px) {
  .nav-menu { display: flex; }
  .hamburger, .mobile-menu { display: none !important; }
  .grid-3 { grid-template-columns: repeat(3, 1fr); }
  .grid-4 { grid-template-columns: repeat(4, 1fr); }
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr 1.2fr; }
  .about-preview-grid { grid-template-columns: 1fr 1fr; }
  .hero-glass-row .grid-3 { grid-template-columns: repeat(3, 1fr); }
  .masonry { column-count: 3; }
  .section { padding: 100px 0; }
}

@media (min-width: 1200px) {
  .container { padding: 0 26px; }
}

@media print {
  .site-header, .site-footer, .back-to-top { display: none !important; }
}
