:root {
	--manna-font-body: 'Neue Haas Grotesk Text', 'Avenir Next', 'Helvetica Neue', 'Segoe UI', sans-serif !important;
	--manna-font-ui: 'Neue Haas Grotesk Text', 'Avenir Next', 'Helvetica Neue', 'Segoe UI', sans-serif !important;
	--manna-font-display: 'Canela', 'Noe Display', 'Bodoni 72', 'Playfair Display', Georgia, serif !important;
	--manna-type-hero: clamp(2rem, 4.5vw, 3.35rem);
	--manna-type-h1: clamp(1.85rem, 3.2vw, 2.7rem);
	--manna-type-h2: clamp(1.45rem, 2.1vw, 2rem);
	--manna-type-h3: clamp(1.18rem, 1.45vw, 1.45rem);
	--manna-type-body: 1rem;
	--manna-type-small: 0.92rem;
	--manna-leading-tight: 1.15;
	--manna-leading-body: 1.58;
	--manna-space-1: 0.38rem;
	--manna-space-2: 0.7rem;
	--manna-space-3: 1rem;
	--manna-space-4: 1.35rem;
	--manna-space-5: 1.8rem;
	--manna-ink-strong: #171717;
	--manna-ink-body: #2f2f2f;
	--manna-ink-muted: #646464;
}

html {
	font-size: 16px;
}

body,
input,
select,
textarea,
button,
.woocommerce,
.woocommerce-page,
.entry-content p,
.entry-content li,
.woocommerce div.product p,
.woocommerce .woocommerce-loop-product__title + * {
	font-family: var(--manna-font-body) !important;
}

body,
input,
select,
textarea,
button {
	font-size: var(--manna-type-body) !important;
	line-height: var(--manna-leading-body) !important;
	font-weight: 400 !important;
	color: var(--manna-ink-body) !important;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
h6,
.woocommerce-loop-product__title,
.product_title {
	font-family: var(--manna-font-ui, 'Neue Haas Grotesk Text', 'Avenir Next', 'Helvetica Neue', 'Segoe UI', sans-serif) !important;
	color: var(--manna-ink-strong) !important;
	letter-spacing: -0.01em !important;
	text-transform: none !important;
}

h1 {
	font-size: var(--manna-type-h1) !important;
	font-weight: 650 !important;
	line-height: var(--manna-leading-tight) !important;
	margin: 0 0 var(--manna-space-3) !important;
}

h2 {
	font-size: var(--manna-type-h2) !important;
	font-weight: 620 !important;
	line-height: 1.2 !important;
	margin: 0 0 var(--manna-space-3) !important;
}

h3 {
	font-size: var(--manna-type-h3) !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	margin: 0 0 var(--manna-space-2) !important;
}

h4,
h5,
h6 {
	font-size: 1rem !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	margin: 0 0 var(--manna-space-2) !important;
}

p,
li,
dd,
dt,
.woocommerce .woocommerce-breadcrumb,
.price,
.amount {
	font-size: var(--manna-type-body) !important;
	line-height: var(--manna-leading-body) !important;
}

p,
ul,
ol,
dl,
table {
	margin-top: 0 !important;
	margin-bottom: var(--manna-space-3) !important;
}

small,
.small,
.meta,
.posted-on,
.woocommerce-result-count,
.product_meta {
	font-size: var(--manna-type-small) !important;
	line-height: 1.45 !important;
	color: var(--manna-ink-muted) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 1.03rem !important;
	font-weight: 560 !important;
	line-height: 1.34 !important;
	margin-bottom: var(--manna-space-1) !important;
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	font-family: var(--manna-font-ui, 'Neue Haas Grotesk Text', 'Avenir Next', 'Helvetica Neue', 'Segoe UI', sans-serif) !important;
	font-size: 1.02rem !important;
	font-weight: 650 !important;
	line-height: 1.25 !important;
	color: var(--manna-ink-strong) !important;
	letter-spacing: 0 !important;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.button,
button,
.ux-menu-link__text,
.checkout-breadcrumbs,
.checkout-breadcrumbs a,
.checkout-breadcrumbs .divider {
	font-family: var(--manna-font-ui, 'Neue Haas Grotesk Text', 'Avenir Next', 'Helvetica Neue', 'Segoe UI', sans-serif) !important;
}

.checkout-breadcrumbs,
.checkout-breadcrumbs a,
.checkout-breadcrumbs .divider {
	font-weight: 500 !important;
	letter-spacing: 0.01em !important;
	text-transform: none !important;
}

a.button:not(.plus):not(.minus):not(.remove),
button.button:not(.plus):not(.minus):not(.remove),
input.button:not(.plus):not(.minus):not(.remove),
.woocommerce a.button:not(.plus):not(.minus):not(.remove),
.woocommerce button.button:not(.plus):not(.minus):not(.remove),
.woocommerce input.button:not(.plus):not(.minus):not(.remove),
a.button:not(.remove),
button.button:not(.remove),
input.button:not(.remove),
.woocommerce a.button:not(.remove),
.woocommerce button.button:not(.remove) {
	font-family: var(--manna-font-ui) !important;
	font-size: 0.98rem !important;
	font-weight: 620 !important;
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

.woocommerce-cart table.shop_table th,
.woocommerce-checkout table.shop_table th,
.woocommerce-account table.shop_table th,
.woocommerce-page table.shop_table th,
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th {
	font-family: var(--manna-font-ui) !important;
	font-weight: 600 !important;
}

.woocommerce-cart table.shop_table th {
	letter-spacing: 0.02em !important;
}

.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th {
	letter-spacing: 0.01em !important;
}

.woocommerce-cart .cart_totals table td,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
	font-family: var(--manna-font-ui) !important;
	font-weight: 500 !important;
}

.woocommerce-cart .cart_totals h2 {
	font-family: var(--manna-font-display) !important;
	font-weight: 500 !important;
	letter-spacing: 0.01em !important;
}

.section,
.section-content,
.shop-container,
.woocommerce-tabs,
.cart-collaterals,
.footer-widgets {
	padding-top: clamp(18px, 2.1vw, 34px);
	padding-bottom: clamp(18px, 2.1vw, 34px);
}

.entry-content > * + *,
.woocommerce-Tabs-panel > * + * {
	margin-top: var(--manna-space-3) !important;
}

@media (max-width: 640px) {
	body {
		font-size: 15.5px !important;
	}

	h1 {
		font-size: clamp(1.7rem, 8vw, 2.2rem) !important;
	}

	h2 {
		font-size: clamp(1.35rem, 6.3vw, 1.75rem) !important;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 1rem !important;
	}

	.button,
	a.button {
		font-size: 0.95rem !important;
	}
}
