body {
	line-height: 1.5;
	font-size: 1.125rem;
}

@font-face {
	font-family: 'Hammersmith One';
	font-style: normal;
	font-weight: 200;
	font-display: swap;
	src: url(/fonts/hammersmith-one.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Sora';
	font-style: normal;
	src: url(/fonts/sora.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 1rem 0 1rem;
	line-height: 1.1;
	font-family: var(--headerFont);
	font-weight: lighter;
}

h2.sectionHeader {
    display: flex;
    align-items: center;
    white-space: nowrap;
}

h2.sectionHeader::after {
    content: "";
    height: 0.2rem;
    background-color: var(--darkest4);
    width: 100%;
	margin: 0.5rem;
    border-radius: 1rem;
}

h1 {
	font-size: clamp(2.25rem, calc(1.8rem + 1vw), 2.5rem);
	margin: 0 0 2rem;
	position: relative;
	overflow: hidden;
}

h2:not(:has(span)) {
	font-size: clamp(1.8rem, calc(1.8rem + 1vw), 2rem);
}

h3 {
	font-size: clamp(1.6rem, calc(1.6rem + 1vw), 2rem);
}

h4 {
	font-size: clamp(1.5rem, calc(1.5rem + 1vw), 1.8rem);
}

h5 {
	font-size: clamp(1.4rem, calc(1.4rem + 1vw), 1.4rem);
}

h1:not(#hero h1), h2 {
	text-shadow: 0px 3px 1rem var(--blue1);
}

a {
	color: var(--lightest3);
}

a:has(> h1, h2, h3, h4),
h2 a {
	text-decoration: none !important;
}

/* Subtext */
span.subtext {
	color: var(--darkest4);
	font-size: 1.5rem;
	position: relative;
	font-family: var(--primaryFont);
	font-weight: 500;
	text-shadow: none;
}

span.subtext::before {
	content: '◆';
	position: relative;
	padding: 0.5rem;
	bottom: 0.2rem;
	font-size: 1rem;
	color: var(--blue2);
}

@media (max-width: 750px) {
	.subtext { display: none; }
}