/* Final Persian typography and storefront chrome safeguards. */
:root {
	--zc-type-body: clamp(.92rem, .88rem + .12vw, 1rem);
	--zc-type-small: clamp(.75rem, .73rem + .08vw, .82rem);
	--zc-type-label: clamp(.78rem, .75rem + .1vw, .86rem);
	--zc-type-h1: clamp(1.75rem, 1.35rem + 1.55vw, 2.75rem);
	--zc-type-h2: clamp(1.3rem, 1.12rem + .7vw, 1.85rem);
	--zc-type-h3: clamp(1.05rem, .96rem + .34vw, 1.32rem);
}

body {
	font-size: var(--zc-type-body);
	line-height: 1.9;
	text-rendering: optimizeLegibility;
}

:where(.woocommerce, .entry-content, .zc-page-content, .woocommerce-MyAccount-content) :where(p, li, dd, address) {
	line-height: 1.9;
}

body:not(.home) :where(main, .woocommerce-MyAccount-content) h1 { font-size: var(--zc-type-h1); line-height: 1.42; letter-spacing: -.028em; }
:where(.woocommerce, .entry-content, .zc-page-content, .woocommerce-MyAccount-content) h2 { font-size: var(--zc-type-h2); line-height: 1.5; letter-spacing: -.022em; }
:where(.woocommerce, .entry-content, .zc-page-content, .woocommerce-MyAccount-content) h3 { font-size: var(--zc-type-h3); line-height: 1.55; letter-spacing: -.016em; }

:where(.woocommerce, .zc-page-content, .woocommerce-MyAccount-content) :where(label, button, .button, input, select, textarea) {
	font-size: var(--zc-type-label);
}

:where(.woocommerce, .zc-page-content, .woocommerce-MyAccount-content) :where(small, .description, .meta, .woocommerce-form__label-for-checkbox) {
	font-size: var(--zc-type-small);
	line-height: 1.8;
}

@media (max-width: 620px) {
	body:not(.woocommerce-cart):not(.woocommerce-checkout) > main {
		min-inline-size: 0;
		padding-inline: max(12px, env(safe-area-inset-left));
		overflow-wrap: anywhere;
	}

	body:not(.home) :where(main, .woocommerce-MyAccount-content) h1 {
		max-inline-size: 100%;
		font-size: clamp(1.7rem, 8vw, 2.25rem);
	}
}

