@import url('https://use.typekit.net/jnu8nej.css');
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500&display=swap');

/* Appartement Boutique typography system. */
:root {
	--appartement-boutique-font-display: 'ivypresto-headline', serif;
	--appartement-boutique-font-body: 'Manrope', sans-serif;
	--appartement-boutique-font-weight-light: 300;
	--appartement-boutique-font-weight-regular: 400;
	--appartement-boutique-font-weight-medium: 500;
	--appartement-boutique-font-size-h1-base: clamp(50px, calc(37.2549px + 3.268vw), 100px);
	--appartement-boutique-font-size-small-h1-base: clamp(12px, calc(10.4706px + 0.3922vw), 18px);
	--appartement-boutique-font-size-h2-base: clamp(40px, calc(34.902px + 1.3072vw), 60px);
	--appartement-boutique-font-size-h3-base: clamp(30px, calc(24.902px + 1.3072vw), 50px);
	--appartement-boutique-font-size-h4-base: clamp(20px, calc(17.451px + 0.6536vw), 30px);
	--appartement-boutique-font-size-body-base: clamp(14px, calc(12.4706px + 0.3922vw), 20px);
	--appartement-boutique-font-size-large-base: clamp(20px, calc(17.451px + 0.6536vw), 30px);
	--appartement-boutique-font-size-button-base: clamp(14px, calc(9.9216px + 1.0458vw), 30px);
	--appartement-boutique-font-size-h1: var(--appartement-boutique-font-size-h1-base);
	--appartement-boutique-font-size-small-h1: var(--appartement-boutique-font-size-small-h1-base);
	--appartement-boutique-font-size-h2: var(--appartement-boutique-font-size-h2-base);
	--appartement-boutique-font-size-h3: var(--appartement-boutique-font-size-h3-base);
	--appartement-boutique-font-size-h4: var(--appartement-boutique-font-size-h4-base);
	--appartement-boutique-font-size-body: var(--appartement-boutique-font-size-body-base);
	--appartement-boutique-font-size-large: var(--appartement-boutique-font-size-large-base);
	--appartement-boutique-font-size-button: var(--appartement-boutique-font-size-button-base);
}

body,
button,
input,
select,
textarea {
	font-family: var(--appartement-boutique-font-body);
}

/* Avoid a persistent outline after pointer activation without hiding keyboard focus. */
a[href]:focus:not(:focus-visible) {
	outline: none;
}

h1,
h2,
h3,
h4,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.fl-builder-content h1,
.fl-builder-content h2,
.fl-builder-content h3,
.fl-builder-content h4 {
	font-family: var(--appartement-boutique-font-display);
	font-weight: var(--appartement-boutique-font-weight-light);
	line-height: 1.1em;
}

h1,
.entry-content h1,
.fl-builder-content h1 {
	font-size: var(--appartement-boutique-font-size-h1);
}

h2,
.entry-content h2,
.fl-builder-content h2 {
	font-size: var(--appartement-boutique-font-size-h2);
}

h3,
.entry-content h3,
.fl-builder-content h3 {
	font-size: var(--appartement-boutique-font-size-h3);
}

h4,
.entry-content h4,
.fl-builder-content h4 {
	font-size: var(--appartement-boutique-font-size-h4);
}

.small-h1,
.appartement-boutique-small-h1,
.small-h1 h1,
.appartement-boutique-small-h1 h1 {
	font-family: var(--appartement-boutique-font-body);
	font-size: var(--appartement-boutique-font-size-small-h1);
	font-weight: var(--appartement-boutique-font-weight-medium);
	letter-spacing: 0.2em;
	line-height: 1.333em;
	text-transform: uppercase;
}

p {
	font-family: var(--appartement-boutique-font-body);
	font-size: var(--appartement-boutique-font-size-body);
	font-weight: var(--appartement-boutique-font-weight-regular);
	line-height: 1.33em;
}

.p-big,
.appartement-boutique-text-large,
.p-big p,
.appartement-boutique-text-large p,
footer,
footer p,
.site-footer,
.site-footer p,
.fl-builder-content[data-type='footer'],
.fl-builder-content[data-type='footer'] p {
	font-family: var(--appartement-boutique-font-body);
	font-size: var(--appartement-boutique-font-size-large);
	font-weight: var(--appartement-boutique-font-weight-regular);
	line-height: 1.1em;
}

button,
input[type='button'],
input[type='reset'],
input[type='submit'],
.button,
.ast-button,
.fl-button,
.wp-block-button__link {
	font-family: var(--appartement-boutique-font-body);
	font-size: var(--appartement-boutique-font-size-button);
	font-weight: var(--appartement-boutique-font-weight-medium);
	letter-spacing: 0.2em;
	line-height: 1.1em;
}
