/* Fallback font overrides to match custom font metrics and reduce CLS */
@font-face {
	font-family: 'PxGroteskLight-fallback';
	src: local('Arial');
	size-adjust: 105%;
	ascent-override: 95%;
	descent-override: 25%;
	line-gap-override: 0%;
}

@font-face {
	font-family: 'PxGroteskRegular-fallback';
	src: local('Arial');
	size-adjust: 105%;
	ascent-override: 95%;
	descent-override: 25%;
	line-gap-override: 0%;
}

@font-face {
	font-family: 'PxGroteskBold-fallback';
	src: local('Arial');
	size-adjust: 105%;
	ascent-override: 95%;
	descent-override: 25%;
	line-gap-override: 0%;
}

@font-face {
	font-family: 'Haffer-Regular-fallback';
	src: local('Arial');
	size-adjust: 102%;
	ascent-override: 92%;
	descent-override: 23%;
	line-gap-override: 0%;
}

@font-face {
	font-family: 'Haffer-SemiBold-fallback';
	src: local('Arial');
	size-adjust: 102%;
	ascent-override: 92%;
	descent-override: 23%;
	line-gap-override: 0%;
}

/* Custom fonts with fallbacks */
@font-face {
	font-family: 'PxGroteskLight';
	src: url('Px-Grotesk-Light.eot');
	src: url('Px-Grotesk-Light.woff2') format('woff2'),
		 url('Px-Grotesk-Light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'PxGroteskRegular';
	src: url('Px-Grotesk-Regular.eot');
	src: url('Px-Grotesk-Regular.woff2') format('woff2'),
		 url('Px-Grotesk-Regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'PxGroteskBold';
	src: url('Px-Grotesk-Bold.eot');
	src: url('Px-Grotesk-Bold.woff2') format('woff2'),
		 url('Px-Grotesk-Bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Haffer-Regular';
	src: url('Haffer-Regular.woff2') format('woff2'),
		url('Haffer-Regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Haffer-SemiBold';
	src: url('Haffer-SemiBold.woff2') format('woff2'),
		url('Haffer-SemiBold.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

/******************************************************************************************/
html {
	--font-b: "PxGroteskRegular", "PxGroteskRegular-fallback", sans-serif;
	--font-b-2: "Haffer-Regular", "Haffer-Regular-fallback", sans-serif;
	--font-l: "PxGroteskLight", "PxGroteskLight-fallback", sans-serif;
	--font-sb: "Haffer-Semibold", "Haffer-SemiBold-fallback", sans-serif;
	--font-h: "PxGroteskBold", "PxGroteskBold-fallback", sans-serif;
}

body,
.font-b {
	font-family: var(--font-b);
	font-kerning: none;
}

.font-b-2 {
	font-family: var(--font-b-2);
	font-kerning: none;
}

.font-l {
	font-family: var(--font-l);
	font-kerning: none;
}

.font-sb {
	font-family: var(--font-sb);
	font-kerning: none;
}

.font-h {
	font-family: var(--font-h);
	font-kerning: none;
}

.h1, .h2, .h3, .h4, .h5, .h6, .h7, .h8, h1, h2, h3, h4, h5, h6, p, a {
    margin-top: 0;
    margin-bottom: 0;
    -webkit-font-kerning: none;
    font-kerning: none;
    text-rendering: optimizeLegibility;
    color: var(--color-black);
}
/********************************************************************/
h1, .h1 {
    font-size: calc(3.125rem + ((1vw - 0.225rem) * 17.1569)); /* 50 - 120 */
    line-height: 100%;
}
@media (min-width: 768px) {
    h1, .h1 {
        font-size: calc(7.5rem + ((1vw - 0.48rem) * 9.6899)); /* 120 - 220 */
    }
}
@media (min-width: 1800px) {
    h1, .h1 {
        font-size: 13.75rem; /* 220 */
        letter-spacing: -4.4px;
    }
}
/********************************************************************/
h2, .h2 {
    font-size: calc(9.375rem + ((1vw - 0.225rem) * -17.1569)); /* 150 - 50 */
    line-height: 100%;
}
@media (min-width: 768px) {
    h2, .h2 {
        font-size: calc(5rem + ((1vw - 0.48rem) * 6.7829)); /* 80 - 150 */
    }
}
@media (min-width: 1800px) {
    h2, .h2 {
        font-size: 9.375rem; /* 150 */
        letter-spacing: -3px;
    }
}
/********************************************************************/
h3, .h3 {
    font-size: calc(2.1875rem + ((1vw - 0.225rem) * 3.6765)); /* 35 - 50 */
    line-height: 100%;
}
@media (min-width: 768px) {
    h3, .h3 {
        font-size: calc(3.125rem + ((1vw - 0.48rem) * 6.7829)); /* 50 - 120 */
    }
}
@media (min-width: 1800px) {
    h3, .h3 {
        font-size: 7.5rem; /* 120 */
        letter-spacing: -2.4px;
    }
}
/********************************************************************/
h4, .h4 {
    font-size: calc(2.5rem + ((1vw - 0.225rem) * 4.902)); /* 40 - 60 */
    line-height: 100%;
}
@media (min-width: 768px) {
    h4, .h4 {
        font-size: calc(3.75rem + ((1vw - 0.48rem) * 3.876)); /* 60 - 100 */
    }
}
@media (min-width: 1800px) {
    h4, .h4 {
        font-size: 6.25rem; /* 100 */
        line-height: 95%;
        letter-spacing: -2px;
    }
}
/********************************************************************/
h5, .h5 {
    font-size: calc(2.1875rem + ((1vw - 0.225rem) * 3.6765)); /* 35 - 50 */
    line-height: 100%;
}
@media (min-width: 768px) {
    h5, .h5 {
        font-size: calc(3.125rem + ((1vw - 0.48rem) * 2.907)); /* 50 - 80 */
    }
}
@media (min-width: 1800px) {
    h5, .h5 {
        font-size: 5rem; /* 80 */
        line-height: 95%;
    }
}
/********************************************************************/
h6, .h6 {
    font-size: calc(1.25rem + ((1vw - 0.225rem) * 4.902)); /* 20 - 40 */
    line-height: 100%;
}
@media (min-width: 768px) {
    h6, .h6 {
        font-size: calc(2.5rem + ((1vw - 0.48rem) * 0.969)); /* 40 - 50 */
    }
}
@media (min-width: 1800px) {
    h6, .h6 {
        font-size: 3.125rem; /* 50 */
    }
}
/********************************************************************/
.h7 {
    font-size: calc(1.5625rem + ((1vw - 0.225rem) * 1.2255)); /* 25 - 30 */
    line-height: 120%;
}
@media (min-width: 768px) {
    .h7 {
        font-size: calc(1.875rem + ((1vw - 0.48rem) * 1.938)); /* 30 - 40 */
    }
}
@media (min-width: 1800px) {
    .h7 {
        font-size: 3.125rem; /* 50 */
    }
}
/********************************************************************/
.h8 {
    font-size: calc(1.125rem + ((1vw - 0.225rem) * 1.7157)); /* 18 - 25 */
    line-height: 100%;
}
@media (min-width: 768px) {
    .h8 {
        font-size: calc(1.5625rem + ((1vw - 0.48rem) * 1.1628)); /* 25 - 37 */
    }
}
@media (min-width: 1800px) {
    .h8 {
        font-size: 2.3125rem; /* 37 */
    }
}
/********************************************************************/
.h9 {
    font-size: calc(1.125rem + ((1vw - 0.225rem) * 2.9412)); /* 18 - 30 */
    line-height: 100%;
}
@media (min-width: 768px) {
    .h9 {
        font-size: 1.875rem; /* 30 */
    }
}
/********************************************************************/
.h10 {
    font-size: calc(1.125rem + ((1vw - 0.225rem) * 1.7157)); /* 18 - 25 */
    line-height: 100%;
}
@media (min-width: 768px) {
    .h10 {
        font-size: calc(1.5625rem + ((1vw - 0.48rem) * 0.4845)); /* 25 - 30 */
    }
}
@media (min-width: 1800px) {
    .h10 {
        font-size: 1.875rem; /* 30 */
    }
}
/********************************************************************/
.h11 {
    font-size: calc(1.125rem + ((1vw - 0.225rem) * 0.4902)); /* 18 - 20 */
    line-height: 135%;
}
@media (min-width: 768px) {
    .h11 {
        font-size: calc(1.25rem + ((1vw - 0.48rem) * 0.969)); /* 20 - 30 */
        line-height: 125%;
    }
}
@media (min-width: 1800px) {
    .h11 {
        font-size: 1.875rem; /* 30 */
    }
}
/********************************************************************/
.h12 {
    font-size: calc(1.125rem + ((1vw - 0.225rem) * 0.4902)); /* 18 - 20 */
    line-height: 100%;
}
@media (min-width: 768px) {
    .h12 {
        font-size: calc(1.25rem + ((1vw - 0.48rem) * 0.4845)); /* 20 - 25 */
    }
}
@media (min-width: 1800px) {
    .h12 {
        font-size: 1.5625rem; /* 25 */
    }
}
/********************************************************************/
.h13 {
    font-size: calc(1.125rem + ((1vw - 0.225rem) * 0.4902)); /* 18 - 20 */
    line-height: 135%;
}
@media (min-width: 768px) {
    .h13 {
        font-size: calc(1.25rem + ((1vw - 0.48rem) * 0.2907)); /* 20 - 23 */
        line-height: 130%;
    }
}
@media (min-width: 1800px) {
    .h13 {
        font-size: 1.4375rem; /* 23 */
        line-height: 120%;
    }
}
/********************************************************************/
.h14 {
    font-size: calc(0.9375rem + ((1vw - 0.225rem) * 0.7353)); /* 15 - 18 */
    line-height: 130%;
}
@media (min-width: 768px) {
    .h14 {
        font-size: calc(1.125rem + ((1vw - 0.48rem) * 0.1938)); /* 18 - 20 */
    }
}
@media (min-width: 1800px) {
    .h14 {
        font-size: 1.25rem; /* 20 */
    }
}
/********************************************************************/
.h15 {
    font-size: 0.9375rem; /* 15 */
    line-height: 100%;
}
@media (min-width: 768px) {
    .h15 {
        font-size: calc(1rem + ((1vw - 0.48rem) * 0.1938)); /* 16 - 18 */
    }
}
@media (min-width: 1800px) {
    .h15 {
        font-size: 1.125rem; /* 18 */
    }
}
/********************************************************************/
.h16 {
    font-size: 0.9375rem; /* 15 */
    line-height: 135%;
}
@media (min-width: 768px) {
    .h16 {
        font-size: calc(0.9375rem + ((1vw - 0.48rem) * 0.2907)); /* 15 - 18 */
    }
}
@media (min-width: 1800px) {
    .h16 {
        font-size: 1.125rem; /* 18 */
    }
}
/********************************************************************/
.h17 {
    font-size: 0.9375rem; /* 15 */
    line-height: 135%;
}
@media (min-width: 768px) {
    .h17 {
        font-size: calc(0.9375rem + ((1vw - 0.48rem) * 0.1938)); /* 15 - 17 */
    }
}
@media (min-width: 1800px) {
    .h17 {
        font-size: 1.0625rem; /* 17 */
    }
}
/********************************************************************/
.h18 {
    font-size: 0.9375rem; /* 15 */
    line-height: 135%;
}
/********************************************************************/
.h19 {
    font-size: calc(0.6875rem + ((1vw - 0.225rem) * 0.2451)); /* 11 - 12 */
    line-height: 150%;
}
@media (min-width: 768px) {
    .h19 {
        font-size: calc(0.75rem + ((1vw - 0.48rem) * 0.0969)); /* 12 - 13 */
    }
}
@media (min-width: 1800px) {
    .h19 {
        font-size: 0.8125rem; /* 13 */
        line-height: 180%;
    }
}
/********************************************************************/
.h20 {
    font-size: 0.75rem; /* 12 */
    line-height: 100%;
}
@media (min-width: 768px) {
    .h20 {
        font-size: calc(0.75rem + ((1vw - 0.48rem) * 0.0969)); /* 12 - 13 */
    }
}
@media (min-width: 1800px) {
    .h20 {
        font-size: 0.8125rem; /* 13 */
    }
}
/********************************************************************/
.h21 {
    font-size: 0.75rem; /* 12 */
    line-height: 150%;
}
/********************************************************************/
.ls-3 {
    letter-spacing: -0.39px;
}
/********************************************************************/
.theContent p {
    margin-bottom: 1rem;
}
.theContent > *:last-child {
    margin-bottom: 0;
}
.theContent * {
    color: inherit;
    font-size: inherit;
    font-family: inherit;
    line-height: inherit;
}
.theContent [style*="text-decoration: underline"] {
    text-decoration: none !important;
    color: var(--color-orange);
}
.theContent b, .theContent strong {
    font-weight: normal;
    font-family: var(--font-sb);
}
.theContent.font-b b, .theContent.font-b strong {
    font-family: var(--font-h);
}
.theContent ul, .theContent ol {
    padding-inline-start: 1.6rem;
    list-style: "— ";
}
/* .theContent ul li::before {
    content: "— ";
} */