@font-face {
	font-family: philosopher;
	src: url(Philosopher-Regular.ttf);
}

html, body {
	background-color: #333333;
	padding: 0;
	margin: 0;
	height: 100%;
	font-family: philosopher;
	color: white;
}

.header .logo {
	height: 80px;
	margin: 4px 8px 0px 0px;
}

.footer .logo {
	height: 100px;
	margin: 0px 0px 16px 0px;
}

body {
	display: grid;
	grid-template-columns: 1fr minmax(auto, 800px) 1fr;
	grid-template-rows: auto auto 1fr auto;
	grid-template-areas: 
		"header header header"
		"hero hero hero"
		". content ."
		"footer footer footer";
}

.header {
	border-bottom: 4px solid #ffffff;
	grid-area: header;
	display: grid;
	grid-template-columns: 1fr minmax(auto, 300px) minmax(auto, 500px) 1fr;
	grid-template-rows: auto;
	grid-template-areas: 
		". headerleft headerright ."
}

.header-left {
	grid-area: headerleft;
}

.header-right {
	grid-area: headerright;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
}

.hero {
	grid-area: hero;
	height: 500px;
	background-position: center;
	background-size: cover;
	
	display: grid;
	grid-template-columns: minmax(auto, 300px) 1fr minmax(auto, 300px);
	grid-template-rows: auto;
	grid-template-areas: 
		"heroleft herocenter heroright"
}

.hero[slide='1'] {
	background-image: url("hero1.jpg");
}
.hero[slide='2'] {
	background-image: url("hero2.jpg");
}
.hero[slide='3'] {
	background-image: url("hero3.jpg");
}
.hero[slide='4'] {
	background-image: url("hero4.jpg");
}
.hero[slide='5'] {
	background-image: url("hero5.jpg");
}
.hero[slide='6'] {
	background-image: url("hero6.jpg");
}

.heroleft {
	grid-area: heroleft;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.herocenter {
	grid-area: herocenter;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
}

.heroright {
	grid-area: heroright;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-end;
}

.hero img {
	max-height: 70%;
}

.content {
	grid-area: content;
	padding-top: 40px;
	padding-bottom: 80px;
}

.content p {
	line-height: 32px;
	margin-bottom: 36px;
	font-size: 20px;
}

h1 {
	padding-bottom: 12px;
}

.footer {
	grid-area: footer;
	background-color: #454545;
	display: grid;
	grid-template-columns: 1fr minmax(auto, 800px) 1fr;
	grid-template-rows: auto;
	grid-template-areas: 
		". footercontent ."
}

.footer-content {
	grid-area: footercontent;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 48px 0px;
}

img.social {
	color: white;
	width: 32px;
	margin: 8px;
	cursor: pointer;
}

.link {
	display: flex;
	align-items: center;
	margin-right: 16px;
	margin-bottom: 16px;
	cursor: pointer;
}

.link i img {
	width: 32px;
	margin-right: 32px;
}

a:link,
a:active,
a:hover,
a:visited {
	color: #FFFFFF;
	text-decoration: none;
	cursor: pointer;
}
a:hover {
	text-decoration: underline;
}

.link a:hover {
	text-decoration: unset;
}

.link:hover .link-text {
	text-decoration: underline;
}

.header-link {
	margin-right: 24px;
}

#buy {
	background-color: #085394;
	padding: 24px 48px;
	color: white;
	font-family: philosopher;
	border: none;
	border-radius: 12px;
	margin-bottom: 48px;
	font-size: 32px;
	cursor: pointer;
}
#buy:hover {
	background-color: #084f8c;
}
#buy:active {
	background-color: #054780;
}
#buy:link,
#buy:hover,
#buy:visited,
#buy:hover {
	text-align: center;
	text-decoration: none;
}
#buy .subtext {
	line-height: 36px;
}

.seek-button {
	background-color: rgba(0, 0, 0, 0.2);
	border: 1px solid #333;
	color: white;
	height: 64px;
	width: 64px;
	cursor: pointer;
	font-size: 28px;
}
.seek-button:hover {
	background-color: rgba(0, 0, 0, 0.5);
}
.seek-button:active {
	background-color: rgba(0, 0, 0, 0.6);
}




@media screen and (max-width: 600px) {
	.header-right {
		display: none;
	}
	#buy {
		display: none;
	}
	.hero {
		height: 300px;
	}
	p {
		text-align: justify;
	}
	.header-left {
		grid-column-start: 2;
		grid-column-end: 4;
		text-align: center;
	}
}

@media screen and (max-width: 816px) {
	.content {
		padding: 16px;
	}
}