html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	font-family: "Open Sans", sans-serif;
}

header {
	background-image: url("/img/hth.webp");
	background-position: center;
	background-size: cover;
	height: 300px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: white;
	position: relative;
}

header .overlay {
	position: absolute;
	inset: 0;
	background-color: rgba(19, 101, 116, 0.5);
	box-shadow: 5px 0 5px inset rgba(0, 0, 0, 0.1);
}

header p {
	z-index: 1;
	margin: 0;
}

header h1 {
	font-size: 3rem;
	z-index: 1;
	margin: 0;
}

nav {
	position: sticky;
	top: 0;
	display: flex;
	justify-content: space-around;
	background-color: rgb(88, 141, 151);
	padding: 0.5rem 0;
	z-index: 2;
}

nav a {
	color: white;
	font-weight: bold;
}

p {
	line-height: 2;
}

blockquote {
	font-family: "Libre Baskerville", serif;
	font-style: italic;
	font-size: 1.2rem;
	margin: 0;
	color: #424242;
}

blockquote:before {
	content: "\201C";
	color: #424242;
	font-family: serif;
	font-size: 5rem;
	position: relative;
	top: 1rem;
}

cite {
	font-family: "Libre Baskerville", serif;
	margin-top: 1rem;
	float: right;
	color: #BDBDBD;
	position: relative;
	left: 2rem;
}

section {
	padding: 3rem;
}

.column-section {
	display: grid;
	gap: 2rem;
}

.column {
	direction: ltr;
}

.column-image, .column iframe {
	width: 100%;
	max-width: 500px;
	border-radius: 2rem;
	border: none;
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
	display: flex;
	flex-direction: column;
	gap: 2rem;
	margin: auto;
}

a {
	color: black;
	text-decoration: none;
	border: none;
}

a:hover, a:focus {
	text-decoration: underline;
	text-decoration-thickness: 3px;
	outline: none;
}

.icon-link img, .icon-link svg {
	height: 1.4rem;
}

.icon-link {
	margin-top: 3rem;
	font-weight: bold;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

summary {
	font-weight: bold;
	margin-bottom: 3rem;
}

#hth {
	margin-left: 0;
	max-width: 200px;
	border-radius: 1rem;
	margin-top: 2rem;
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
}

.contact-card {
	display: inline-flex;
	align-items: center;
	background-color: white;
	border-radius: 1rem;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
}

.contact-card img {
	border-top-left-radius: 1rem;
	border-bottom-left-radius: 1rem;
}

.contact-card .content {
	padding-left: 2rem;
	padding-right: 2rem;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	align-items: flex-start;
}

.contact-card .content a {
	color: #0288D1;
}

.contact-card .content a:hover {
	text-decoration-thickness: 2px;
}

.image-slider-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1rem;
	margin: auto;
	user-select: none;
}

.image-slider-arrow {
	color: #BDBDBD;
	cursor: pointer;
	transition: color 200ms ease-in-out;
}

.image-slider-arrow:hover {
	color: black;
}

.image-slider {
	flex: 1;
	display: flex;
	overflow-x: scroll;
	position: relative;
	scroll-behavior: smooth;
	width: 100%;
	max-width: 500px;
	gap: 2rem;
	scrollbar-width: none;
}

.image-slider img {
	width: 500px;
	max-width: 100%;
	margin: 1rem;
}

@media (min-width: 1024px) {
	header h1 {
		font-size: 4rem;
	}

	section {
		grid-template-columns: 1fr 1fr;
		padding: 5rem 10vw 5rem 10vw;
		gap: 5rem;
	}

	nav {
		justify-content: center;
		gap: 3rem;
	}
}

@media (max-width: 1024px) {
	.image-slider-arrow {
		display: none;
	}
}

