@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Aleo:ital,wght@0,100..900;1,100..900&display=swap');

body {
	font-family: "Aleo", serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	font-size: 100%;
	background: #EDF2F4;
	color: #2B2D42;
}
h1, h2, h3, h4 {
	  font-family: "Poppins", sans-serif;
	  font-weight: 900;
	  font-style: normal;
	  text-transform: uppercase;
}
h1 { 
	font-size: 3.8rem; 
	margin: 3rem 0 1rem 0;
	line-height: 4.56rem;
}
h2 { 
	font-size: 3.1rem; 
	margin: 3rem 0 1rem 0;
	line-height: 3.72rem;
}
h3 { 
	font-size: 2.5rem; 
	margin: 3rem 0 1rem 0;
	line-height: 3rem;
}
h4 { 
	font-size: 2rem; 
	margin: 3rem 0 1rem 0;
	line-height: 2.4rem;
}
p, pre, .quote  { 
	font-size: 1.25rem; 
	margin: 0 0 1rem 0;
	line-height: 1.5rem;
}
p.list {
	margin: 0 0 0 0;
}
ol, ul {
	margin: 0 0 1rem 0;
	padding: 0 0 0 2rem;
}
li {
	font-size: 1.25rem; 
	line-height: 1.5rem;
}
caption { 
	font-size: .9rem; 
}
.quote {
	margin: 1rem 2rem;
	background: #fff;
	padding: 2rem;
	border-radius: 1rem;
	font-size: 1.5rem;
	line-height: 1.8rem;
}
blockquote,
.photo {
	margin: 0;
}
figure.quote figcaption {
	text-align: right;
}
figure.photo figcaption {
	margin: .5rem 0 1rem 1rem;
}
a {
	color: #2b2d42;
	text-decoration-color: #EF233C;
	text-decoration-thickness: 0.075em;
	text-underline-offset: 1px;
	text-decoration-style: solid;
}
a:visited {
	text-decoration-color: #2b2d42;
}
section {
	margin: 5rem 0 5rem 0;
}
main {
	width: 90vw;
	margin: auto;
}
pre { 
	white-space: pre-wrap; 
	overflow-x: auto;
}
img.photo{
	width: 100%;
	height: auto;
}
.photo,
.video-container,
pre {
	border-radius: 1rem;
}
/* IMAGE AND VIDEO STYLES */
.media-container {
	position: relative;
}
.fullscreen-button {
	z-index: 1;
	position: absolute;
	top: 10px;
	left: 10px;
}
button {
	display: flex;
	align-items: center;
	padding: .5rem 1rem;
	margin: 0;
	text-decoration: none;
	background: transparent;
	color: #ffffff;
	font-family: sans-serif;
	font-size: 1rem;
	cursor: pointer;
	text-align: center;
	opacity: 80%;
	transition: opacity 250ms ease-in-out, 
				transform 150ms ease;
	-webkit-appearance: none;
	-moz-appearance: none;
	border: 2px solid;
	border-radius: .5rem;
}
button:hover,
button:focus {
	opacity: 100%;
}
button:focus {
	outline: 1px solid #fff;
	outline-offset: -4px;
}
button:active {
	transform: scale(0.99);
}
button img {
	width: 25px;
	height: auto;
	margin-right: 5px;
}
.video-container,
.sc-video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	margin-bottom: 2rem;
}
.video-container iframe,
.video-container object,
.video-container embed,
.video-container video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.sc-video-container iframe,
.sc-video-container object,
.sc-video-container embed,
.sc-video-container video {
	position: absolute;
	top: 5%;
	left: 5%;
	width: 90%;
	height: 90%;
}
.sd {
	padding-bottom: 75%;
}

.sq {
	padding-bottom: 100%;
}

.vt {
	padding-bottom: 178%;
}
p.after-video {
	margin-top: -.75rem;
}
section.after-video {
	/*margin-top: -3rem;*/
}
div.after-video {
	/*margin-top: -2.5rem;*/
}
/* END OF IMAGE AND VIDEO STYLES */
/* LAYOUT ADJUSTMENTS */
@media only screen and (min-width: 1024px) {
	main {
	width: 70vw;
	}
}
/* DARK MODE */
@media (prefers-color-scheme: dark) {
	body {
		background: #2B2D42;
		color: #EDF2F4;
	}
	a {
		color: #EDF2F4;
	}
	a:visited {
		text-decoration-color: #EDF2F4;
	}
	.quote {
		background: #0d0e18;
	}
}