/* Tablet */
@media (max-width: 1024px) {
	.invstore-cat-grid, .invstore-cat-grid--compact { grid-template-columns: repeat(3, 1fr); }
	.invstore-product-grid, .invstore-archive__main .invstore-product-grid { grid-template-columns: repeat(3, 1fr); }
	.invstore-steps, .invstore-trust__list, .invstore-reviews__grid { grid-template-columns: repeat(2, 1fr); }
	.invstore-footer__grid { grid-template-columns: 1fr 1fr; }
	.woocommerce div.product { grid-template-columns: 1fr; }
	.woocommerce div.product div.images { position: static; }
}

/* Mobile nav + off-canvas filters kick in below this */
@media (max-width: 782px) {
	.invstore-primary-menu,
	.invstore-header__secondary-nav { display: none; }
	.invstore-hamburger { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; background: none; border: none; cursor: pointer; }

	.invstore-hero__grid { grid-template-columns: 1fr; }
	.invstore-hero__media { order: -1; }

	.invstore-cat-grid, .invstore-cat-grid--compact { grid-template-columns: repeat(2, 1fr); }
	.invstore-product-grid, .invstore-archive__main .invstore-product-grid { grid-template-columns: repeat(2, 1fr); }
	.invstore-steps, .invstore-trust__list, .invstore-reviews__grid { grid-template-columns: 1fr; }
	.invstore-footer__grid { grid-template-columns: 1fr; }

	/* Off-canvas filter drawer */
	.invstore-archive__layout { grid-template-columns: 1fr; }
	.invstore-filter-toggle { display: inline-flex; }
	.invstore-archive__sidebar {
		position: fixed; inset: 0 15% 0 0; z-index: 300;
		background: var(--color-surface);
		padding: var(--spacing-md);
		overflow-y: auto;
		transform: translateX(-100%);
		transition: transform 200ms ease;
		box-shadow: 2px 0 12px rgba(0,0,0,0.15);
	}
	.invstore-archive__sidebar.is-open { transform: translateX(0); }
	.invstore-filters__header { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--spacing-sm); }

	.woocommerce-checkout form.checkout { grid-template-columns: 1fr; }
	.woocommerce-checkout #order_review { position: static; }

	body.single-product { padding-bottom: 72px; } /* room for sticky buy bar */
}

@media (max-width: 480px) {
	.invstore-cat-grid, .invstore-cat-grid--compact,
	.invstore-product-grid, .invstore-archive__main .invstore-product-grid { grid-template-columns: 1fr; }
}

/* Never allow wide content (tables, embeds) to force page-level horizontal scroll */
.invstore-container, body { overflow-x: hidden; }
table { display: block; overflow-x: auto; }
