/**
 * Soft Furni Responsive Styles
 *
 * @package Soft_Furni
 */

/* ============================================
   Mobile First (default styles are mobile)
   ============================================ */

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
	.sf-featured__grid {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.sf-categories__grid {
		grid-template-columns: repeat(3, 1fr);
	}
	
	.sf-footer__bottom-inner {
		flex-direction: row;
		justify-content: space-between;
	}
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
	.sf-testimonials__grid {
		grid-template-columns: repeat(3, 1fr);
	}
	
	.sf-footer__grid {
		grid-template-columns: repeat(3, 1fr);
	}
	
	.sf-newsletter__form {
		flex-direction: row;
	}
	
	.sf-hero__buttons {
		flex-direction: row;
	}
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
	.sf-nav {
		display: block;
	}
	
	.sf-mobile-toggle {
		display: none;
	}
	
	.sf-product-page__grid {
		grid-template-columns: 1fr 1fr;
		gap: 3rem;
	}
	
	.sf-cart-page__grid {
		grid-template-columns: 2fr 1fr;
	}
	
	.sf-checkout-page__grid {
		grid-template-columns: 2fr 1fr;
	}
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
	.sf-categories__grid {
		grid-template-columns: repeat(6, 1fr);
		gap: 1.5rem;
	}
	
	.sf-featured__grid {
		grid-template-columns: repeat(4, 1fr);
		gap: 2rem;
	}
	
	.sf-why__grid {
		grid-template-columns: repeat(4, 1fr);
	}
	
	.sf-footer__grid {
		grid-template-columns: 2fr 1fr 1fr 1fr 1.5fr;
		gap: 3rem;
	}
	
	.sf-section {
		padding: 6rem 0;
	}
	
	.sf-hero__content {
		padding: 8rem 0;
	}
}

/* ============================================
   Mobile Specific Overrides
   ============================================ */

@media (max-width: 991px) {
	.sf-header__inner {
		height: 64px;
	}
	
	.sf-logo {
		font-size: 1.5rem;
	}
	
	.sf-hero__content {
		padding: 3rem 0;
	}
	
	.sf-hero__title {
		font-size: 2rem;
	}
	
	.sf-hero__subtitle {
		font-size: 1rem;
	}
	
	.sf-section {
		padding: 2.5rem 0;
	}
	
	.sf-section-header__title {
		font-size: 1.75rem;
	}
	
	.sf-product-info__title {
		font-size: 1.5rem;
	}
	
	.sf-product-info__price-current {
		font-size: 1.5rem;
	}
	
	.sf-product-info__qty-add {
		flex-direction: column;
		align-items: stretch;
	}
	
	.sf-product-info__add-btn {
		min-width: auto;
		width: 100%;
	}
	
	.sf-cart-item {
		flex-direction: column;
	}
	
	.sf-cart-item__img {
		width: 100%;
		height: auto;
		aspect-ratio: 4/3;
	}
	
	.sf-flip-card {
		height: 220px;
	}
}

@media (max-width: 767px) {
	.sf-categories__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 1rem;
	}
	
	.sf-featured__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 1rem;
	}
	
	.sf-why__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 1rem;
	}
	
	.sf-testimonials__grid {
		grid-template-columns: 1fr;
	}
	
	.sf-footer__grid {
		grid-template-columns: 1fr 1fr;
		gap: 2rem;
	}
	
	.sf-footer__brand {
		grid-column: 1 / -1;
	}
	
	.sf-hero__trust {
		padding: 0.5rem 1rem;
	}
	
	.sf-hero__trust-text {
		font-size: 0.75rem;
	}
}

@media (max-width: 575px) {
	.sf-container {
		padding: 0 1rem;
	}
	
	.sf-featured__header {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.75rem;
	}
	
	.sf-hero__buttons .sf-btn {
		width: 100%;
		justify-content: center;
	}
	
	.sf-product-gallery__thumbs {
		gap: 0.5rem;
	}
	
	.sf-product-gallery__thumb {
		width: 60px;
		height: 60px;
	}
	
	.sf-footer__grid {
		grid-template-columns: 1fr;
	}
	
	.sf-footer__bottom-links {
		flex-direction: column;
		gap: 0.5rem;
	}
	
	.sf-footer__bottom-links span {
		display: none;
	}
	
	.sf-newsletter__form {
		flex-direction: column;
	}
	
	.sf-newsletter__btn {
		width: 100%;
		justify-content: center;
	}
	
	.sf-whatsapp-float {
		width: 48px;
		height: 48px;
		bottom: 16px;
		right: 16px;
	}
	
	.sf-whatsapp-float svg {
		width: 24px;
		height: 24px;
	}
	
	.sf-whatsapp-float__tooltip {
		display: none;
	}
}

/* ============================================
   Touch Device Optimisations
   ============================================ */

@media (hover: none) {
	.sf-flip-card:hover .sf-flip-card__inner {
		transform: none;
	}
	
	.sf-category-card__link {
		opacity: 1;
		transform: none;
	}
	
	.sf-product-card__quick-add {
		opacity: 1;
		transform: none;
	}
	
	.sf-product-gallery__main:hover img {
		transform: none;
	}
}

/* ============================================
   Reduced Motion
   ============================================ */

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
	
	.sf-flip-card__inner {
		transition: none;
	}
	
	.sf-product-card__img img,
	.sf-category-card__img img {
		transition: none;
	}
}

/* ============================================
   Dark Mode Support (optional)
   ============================================ */

@media (prefers-color-scheme: dark) {
	/* Uncomment for dark mode support */
	/*
	body {
		background: #1a1a1a;
		color: #e5e5e5;
	}
	
	.sf-header {
		background: #222;
	}
	
	.sf-product-card__img,
	.sf-product-gallery__main {
		background: #333;
	}
	*/
}
