/* =============================================================
   SM Furniture — Responsive Rules
   Mobile-first project, with progressive enhancement upward.
   Breakpoints: 480 / 768 / 1024 / 1280 / 1600 (ultra-wide)
   ============================================================= */

/* ---------- Ultra-wide (1600px+) ---------- */
@media (min-width: 1600px) {
	:root { --smf-container: 1440px; }
	.hero-heading { font-size: 4rem; }
}

/* ---------- Small desktop / large tablet (max 1280px) ---------- */
@media (max-width: 1280px) {
	.category-grid, .product-grid, .related.products ul.products { grid-template-columns: repeat(3, 1fr); }
	.gallery-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ---------- Tablet (max 1024px) ---------- */
@media (max-width: 1024px) {
	.why-us-grid { grid-template-columns: repeat(2, 1fr); }
	.reviews-grid { grid-template-columns: repeat(2, 1fr); }
	.content-grid { grid-template-columns: repeat(2, 1fr); }
	.single-product-grid { gap: 36px; }
	.footer-grid { grid-template-columns: 1fr 1fr; }
}

/* ---------- Show mobile menu toggle / hide desktop nav ---------- */
@media (max-width: 900px) {
	.primary-navigation { display: none; }
	.mobile-menu-toggle { display: flex; }
	.header-actions .btn-header span { display: none; }
	.header-actions .btn-header { padding: 12px; border-radius: 50%; }
	.header-actions .btn-header .icon-whatsapp { margin: 0; }
}
@media (min-width: 901px) {
	.mobile-menu { display: none; }
}

/* ---------- Mobile (max 768px) ---------- */
@media (max-width: 768px) {
	.section { padding: 64px 0; }
	.section-heading { margin-bottom: 36px; }

	.hero { min-height: 88vh; }
	.hero-inner { text-align: left; }
	.hero-ctas { flex-direction: column; align-items: stretch; }
	.hero-ctas .btn { width: 100%; }

	.category-grid, .product-grid, .related.products ul.products { grid-template-columns: repeat(2, 1fr); gap: 16px; }
	.category-card-body, .product-card-body { padding: 14px 16px 18px; }

	.why-us-grid { grid-template-columns: 1fr; gap: 24px; }
	.about-grid, .contact-grid { grid-template-columns: 1fr; gap: 32px; }
	.about-image { order: -1; }

	.reviews-grid { grid-template-columns: 1fr; }
	.gallery-grid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 160px; }

	.content-grid { grid-template-columns: 1fr; }
	.footer-grid { grid-template-columns: 1fr; gap: 32px; text-align: left; }
	.footer-cta-inner { flex-direction: column; text-align: center; }

	.single-product-grid { grid-template-columns: 1fr; }
	.related.products ul.products { grid-template-columns: repeat(2, 1fr) !important; }

	.sticky-product-bar { display: block; }
	.sticky-product-bar-inner { flex-direction: column; gap: 10px; align-items: stretch; text-align: center; }

	.whatsapp-float { width: 52px; height: 52px; bottom: 16px; right: 16px; }
	.whatsapp-float svg { width: 26px; height: 26px; }
}

/* ---------- Small phones (max 480px) ---------- */
@media (max-width: 480px) {
	.container { padding: 0 16px; }
	.category-grid, .product-grid, .gallery-grid, .related.products ul.products { grid-template-columns: 1fr !important; }
	.hero-heading { font-size: 2rem; }
	.hero-subheading { font-size: 1rem; }
	h2 { font-size: 1.6rem; }
	.product-specs table th { width: 130px; }
}

/* Show sticky bar only on single product template (desktop hides it by default) */
@media (min-width: 769px) {
	.sticky-product-bar { display: none; }
}
