/*
 * Hairport typography system
 *
 * Body, UI and commerce: Assistant
 * Editorial display headings: Frank Ruhl Libre
 *
 * Both families are self-hosted and split by Unicode range so browsers only
 * download the subsets needed by the current page.
 */

/* Assistant — Hebrew */
@font-face {
	font-family: "Assistant";
	font-style: normal;
	font-weight: 300 800;
	font-display: swap;
	src: url("../fonts/assistant-hebrew-variable.woff2") format("woff2");
	unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}

/* Assistant — Latin Extended */
@font-face {
	font-family: "Assistant";
	font-style: normal;
	font-weight: 300 800;
	font-display: swap;
	src: url("../fonts/assistant-latin-ext-variable.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Assistant — Latin */
@font-face {
	font-family: "Assistant";
	font-style: normal;
	font-weight: 300 800;
	font-display: swap;
	src: url("../fonts/assistant-latin-variable.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Frank Ruhl Libre — Hebrew */
@font-face {
	font-family: "Frank Ruhl Libre";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("../fonts/frank-ruhl-libre-hebrew-variable.woff2") format("woff2");
	unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}

/* Frank Ruhl Libre — Latin Extended */
@font-face {
	font-family: "Frank Ruhl Libre";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("../fonts/frank-ruhl-libre-latin-ext-variable.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Frank Ruhl Libre — Latin */
@font-face {
	font-family: "Frank Ruhl Libre";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("../fonts/frank-ruhl-libre-latin-variable.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--hairport-font-ui: "Assistant", Arial, sans-serif;
	--hairport-font-display: "Frank Ruhl Libre", Georgia, serif;
	--hairport-text-size: 17px;
	--hairport-text-line-height: 1.55;

	/* Elementor global typography aliases. */
	--e-global-typography-primary-font-family: var(--hairport-font-ui);
	--e-global-typography-secondary-font-family: var(--hairport-font-display);
	--e-global-typography-text-font-family: var(--hairport-font-ui);
	--e-global-typography-accent-font-family: var(--hairport-font-ui);
}

body.hpds-enabled {
	--hpds-font-sans: var(--hairport-font-ui);
	--hpds-font-display: var(--hairport-font-display);
}

html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

body {
	font-family: var(--hairport-font-ui);
	font-size: var(--hairport-text-size);
	font-weight: 400;
	line-height: var(--hairport-text-line-height);
}

button,
input,
select,
textarea {
	font-family: var(--hairport-font-ui);
}

/* UI, navigation and commerce stay clear and compact. */
.c-header,
.c-footer,
.menu,
.nav-menu,
.woocommerce,
.woocommerce-page,
.button,
.c-button,
.elementor-button,
.elementor-widget-text-editor,
.elementor-widget-nav-menu,
.elementor-widget-form,
.elementor-widget-woocommerce-menu-cart,
.elementor-widget-woocommerce-product-title,
.elementor-widget-woocommerce-breadcrumb {
	font-family: var(--hairport-font-ui) !important;
}

/* Editorial hierarchy: only the two highest heading levels use the serif. */
h1,
h2,
.c-page-header__title,
.page-title,
.entry-title,
.woocommerce-products-header__title,
.elementor-widget-heading h1.elementor-heading-title,
.elementor-widget-heading h2.elementor-heading-title {
	font-family: var(--hairport-font-display) !important;
	font-optical-sizing: auto;
}

h3,
h4,
h5,
h6,
.elementor-widget-heading h3.elementor-heading-title,
.elementor-widget-heading h4.elementor-heading-title,
.elementor-widget-heading h5.elementor-heading-title,
.elementor-widget-heading h6.elementor-heading-title {
	font-family: var(--hairport-font-ui) !important;
}

h1,
.c-page-header__title,
.page-title,
.woocommerce-products-header__title {
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -0.025em;
}

h2 {
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.018em;
}

h3,
h4,
h5,
h6 {
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.01em;
}

@media (max-width: 767px) {
	:root {
		--hairport-text-size: 16px;
		--hairport-text-line-height: 1.5;
	}

	h1,
	.c-page-header__title,
	.page-title,
	.woocommerce-products-header__title {
		line-height: 1.16;
		letter-spacing: -0.018em;
	}
}

