/* ============================================================
   Responsive Styles
   Scoped to avoid conflicts with Flatsome's layout system.
   ============================================================ */

/* Tablet */
@media (max-width: 991px) {
	/* Shop grid: 2 columns */
	.pa-shop-content .products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 16px;
	}

	/* Sidebar as top section */
	.pa-shop-sidebar {
		padding-right: 0;
		margin-bottom: 24px;
	}

	/* Trust bar */
	.pa-trust-bar {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Mobile */
@media (max-width: 767px) {
	/* Shop grid: 2 columns still, smaller gap */
	.pa-shop-content .products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 12px;
	}

	/* List view: single column */
	.pa-shop-content .products.list-view {
		grid-template-columns: 1fr !important;
	}

	.pa-shop-content .products.list-view .product {
		grid-template-columns: 1fr !important;
	}

	.pa-shop-content .products.list-view .pa-card-image-wrap {
		aspect-ratio: 1;
	}

	/* Header */
	.woocommerce-products-header__title {
		font-size: 22px;
	}

	/* Results bar */
	.pa-results-bar {
		flex-direction: column;
		align-items: flex-start;
	}

	/* Sidebar: collapsed off-canvas */
	.pa-shop-sidebar {
		position: fixed;
		top: 0;
		left: -100%;
		width: 85%;
		max-width: 320px;
		height: 100vh;
		background: var(--pa-white, #fff);
		z-index: 1000;
		padding: 20px;
		overflow-y: auto;
		transition: left 0.3s ease;
		box-shadow: 2px 0 10px rgba(0, 0, 0, 0.15);
	}

	.pa-shop-sidebar.open {
		left: 0;
	}

	.pa-sidebar-overlay {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgba(0, 0, 0, 0.4);
		z-index: 999;
	}

	.pa-sidebar-overlay.open {
		display: block;
	}

	.pa-filter-toggle {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 10px 16px;
		background: var(--pa-white, #fff);
		border: 1px solid var(--pa-border, #e2e8f0);
		border-radius: var(--pa-radius, 8px);
		font-size: 14px;
		font-weight: 500;
		cursor: pointer;
		margin-bottom: 16px;
	}

	.pa-sidebar-close {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding-bottom: 16px;
		border-bottom: 1px solid var(--pa-border, #e2e8f0);
		margin-bottom: 16px;
	}

	.pa-sidebar-close__title {
		font-size: 18px;
		font-weight: 700;
	}

	.pa-sidebar-close__btn {
		background: none;
		border: none;
		font-size: 24px;
		cursor: pointer;
		color: var(--pa-text, #1e293b);
		padding: 4px;
	}

	/* Product page */
	.single-product .product_title {
		font-size: 22px;
	}

	.single-product .summary .price {
		font-size: 20px;
	}

	/* Tabs */
	.single-product .woocommerce-tabs ul.tabs {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		flex-wrap: nowrap;
	}

	.single-product .woocommerce-tabs ul.tabs li a {
		padding: 10px 16px;
		white-space: nowrap;
		font-size: 13px;
	}

	/* Gallery thumbnails */
	.flex-control-thumbs li {
		width: 56px;
		height: 56px;
	}

	/* CTA Section */
	.pa-cta-section {
		padding: 24px 16px;
	}

	/* Sticky cart mobile */
	.pa-sticky-cart__inner {
		flex-direction: column;
		text-align: center;
		gap: 8px;
	}

	.pa-sticky-cart__info {
		flex-wrap: wrap;
		justify-content: center;
	}

	.pa-sticky-cart__btn {
		width: 100%;
		justify-content: center;
	}

	/* Trust bar */
	.pa-trust-bar {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
		padding: 24px 0;
	}

	/* Card content spacing */
	.pa-shop-content .products .product .woocommerce-loop-product__title {
		font-size: 14px;
		padding: 0 12px;
	}

	.pa-shop-content .products .product .price {
		font-size: 16px;
		padding: 0 12px;
	}

	.pa-card-description {
		display: none;
	}

	.pa-shop-content .products .product .button {
		margin: 0 12px 12px;
		padding: 8px;
		font-size: 13px;
	}
}

/* Small mobile */
@media (max-width: 479px) {
	.pa-shop-content .products {
		grid-template-columns: 1fr !important;
	}

	.pa-trust-bar {
		grid-template-columns: 1fr;
	}

	.pa-spec-cards {
		grid-template-columns: 1fr;
	}

	.pa-badges {
		flex-direction: column;
	}

	.pa-cta-buttons {
		flex-direction: column;
	}
}

/* Desktop filter toggle hidden */
@media (min-width: 768px) {
	.pa-filter-toggle {
		display: none;
	}

	.pa-sidebar-close {
		display: none;
	}
}