/* Base Styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
html {
	font-size: 137.5%;
}

body {
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
	font-size: 1em;
	font-weight: 400;
	color: var(--color-text);
}

/* 1440px */
@media (max-width: 90em) {

	html {
		font-size: 112.5%;
	}

}

/* 900px */
@media (max-width: 56.25em) {

	html {
		font-size: 100%;
	}

}

/* 768px */
@media (max-width: 48em) {

	html {
		font-size: 75%;
	}

}


/* Typography
–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5 {
	margin: 2rem 0 1rem;
	font-weight: 400;
}

h1, .h1 {
	margin: 0 0 1.5rem;
	font-size: 1.75rem;
	font-family: 'Times New Roman', Times, serif;
	font-weight: 400;
}

h2, .h2 {
	font-size: 1.5rem;
}

h3, .h3 {
	font-size: 1.25rem;
}

h4, .h4 {
	font-size: 1.125rem;
}

h5, .h5 {
	font-size: 1rem;
}

p {
	margin-top: 1.15rem;
}

small {
	font-size: 0.8889rem;
}

/* 900px */
@media (max-width: 56.25em) {

	h1 {
		font-size: 1.65rem;
	}
	
	h2 {
		font-size: 1.45rem;
	}

}

/* 768px */
@media (max-width: 48em) {

	h1, .h1 {
		font-size: 1.5rem;
	}
	
	h2, .h2 {
		font-size: 1.3rem;
	}

	h3, .h3 {
		font-size: 1.2rem;
	}

	h4, .h4 {
		font-size: 1.1rem;
	}

}


/* Links
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a {
	color: var(--color-link);
	cursor: pointer;
}

a:not(.btn) {
	text-underline-offset: 0.2em;
	text-decoration-color: rgb(64, 113, 219, 0.4);
}

a:not(.btn):hover,
a:not(.btn):focus {
	text-decoration-color: currentColor;
}


/* Utility Classes
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.color-primary {
	color: var(--color-primary);
}

.color-secondary {
	color: var(--color-secondary);
}

.color-highlight {
	color: var(--color-highlight);
}

.color-link {
	color: var(--color-link);
}

.color-blue {
	color: var(--color-blue);
}

.color-dark-blue {
	color: var(--color-dark-blue);
}

.color-red {
	color: var(--color-red);
}

.txt-center {
	text-align: center;
}

.txt-flow > * + *:not(h1, h2, h3, h4, h5, .img-banner) {
	margin-top: 1.15rem;
}

.txt-flow > *:first-child {
	margin-top: 0;
}

.txt-clip {
	height: 0;
	margin: 0;
	position: absolute;
	clip-path: rect(0 0 0 0);
}