/* ============================================================
   TERRENE — RESPONSIVE
   All breakpoints live here. Desktop is the default.
   ============================================================ */

/* ---------- TABLET: ≤ 1024px ---------- */
@media (max-width: 1024px) {
	.main-navigation { display: none; }
	.menu-toggle { display: block; }

	.brand-story__grid,
	.faq__grid,
	.single-product .product,
	.shop-layout,
	.footer__grid {
		grid-template-columns: 1fr;
	}

	.categories__grid,
	.product-grid,
	.shop-main ul.products {
		grid-template-columns: repeat(2, 1fr);
	}

	.shop-sidebar { order: 2; }
	.cart-collaterals { max-width: 100%; margin-left: 0; }

	.brand-story__media { grid-template-columns: 1fr 1fr; }
	.brand-story__img--b { margin-top: 2rem; }

	.benefit-row { grid-template-columns: 60px 1fr; }
	.benefit-row__body { grid-column: 1 / -1; padding-left: 60px; }
}

/* ---------- MOBILE: ≤ 767px ---------- */
@media (max-width: 767px) {
	.header-inner { padding-block: 1rem; }
	.header-actions { gap: 1rem; }
	.site-title { font-size: 0.95rem; letter-spacing: 0.12em; }
	.custom-logo { max-height: 32px; }

	.hero { min-height: 92svh; }
	.hero-headline { max-width: 100%; font-size: clamp(3rem, 14vw, 6rem); }
	.hero-bottom { flex-direction: column; align-items: flex-start; }
	.hero-scroll { display: none; }

	.categories__grid,
	.product-grid,
	.shop-main ul.products { grid-template-columns: 1fr 1fr; gap: 0.75rem; }
	.product-card__body { padding: 0.75rem; }
	.product-card__title { font-size: 0.85rem; }
	.product-card__cta,
	.product-card__cta--disabled { margin: 0 0.75rem 0.75rem; padding: 0.6rem; font-size: 0.65rem; }

	.section-head--row { flex-direction: column; align-items: flex-start; }

	.brand-story__media { grid-template-columns: 1fr; }
	.brand-story__img--b { margin-top: 0; }

	.benefit-row { grid-template-columns: 1fr; gap: 0.5rem; }
	.benefit-row__body { grid-column: auto; padding-left: 0; }

	.review-card { flex-basis: 85%; }

	.newsletter__form { flex-direction: column; }
	.newsletter__form input { flex: 1 1 auto; }

	.footer__grid { gap: 2rem; }
	.footer__bottom { flex-direction: column; align-items: flex-start; }
	.footer__legal { flex-wrap: wrap; gap: 1rem; }

	.page-about,
	.page-contact,
	.page-faq,
	.page-tracking,
	.page-default,
	.single-post,
	.archive-page,
	.search-page,
	.error-404,
	.shop-page,
	.single-product-page,
	.cart-empty-page { padding: 6rem 0 4rem; }

	.cart-collaterals { margin-top: 2rem; }

	/* Cart table collapse: keep product + subtotal visible, hide thumbnail + price on narrow screens */
	.woocommerce-cart-form table.shop_table thead { display: none; }
	.woocommerce-cart-form .cart_item {
		display: grid;
		grid-template-columns: 1fr auto;
		gap: 0.5rem;
		padding: 1rem 0;
		border-bottom: 1px solid var(--terrene-border);
	}
	.woocommerce-cart-form .cart_item td {
		display: block;
		padding: 0.25rem 0;
		border: 0;
	}
	.woocommerce-cart-form .cart_item td.product-thumbnail,
	.woocommerce-cart-form .cart_item td.product-price { display: none; }
	.woocommerce-cart-form .cart_item td.product-remove { grid-row: 1; grid-column: 2; justify-self: end; }
	.woocommerce-cart-form .cart_item td.product-name { grid-row: 1; grid-column: 1; }
	.woocommerce-cart-form .cart_item td.product-quantity { grid-row: 2; grid-column: 1; }
	.woocommerce-cart-form .cart_item td.product-subtotal { grid-row: 2; grid-column: 2; justify-self: end; font-weight: 700; }
	.woocommerce-cart-form .actions { text-align: left; padding-top: 1.5rem; }
	.woocommerce-cart-form .actions .coupon { flex-direction: column; margin: 0 0 1rem; }
	.woocommerce-cart-form .actions .coupon input { width: 100%; }

	.single-product .summary form.cart { flex-wrap: wrap; }
}

/* ---------- SMALL MOBILE: ≤ 480px ---------- */
@media (max-width: 480px) {
	.hero-headline { font-size: clamp(2.5rem, 16vw, 4.5rem); }

	.categories__grid,
	.product-grid,
	.shop-main ul.products { grid-template-columns: 1fr; }

	.review-card { flex-basis: 92%; }

	.woocommerce-pagination ul { flex-wrap: wrap; }
}