:root{
	--image-bevel: 15px;
}

/* Header
----------------------------------------
*/
header{
	margin-top: -60px; /* Fixes background styling */
}

/* Footer on Main
----------------------------------------
*/

footer{
	margin-top: 0 !important;
}

/* Carousel Handler
----------------------------------------
*/
main{
	max-width: none;
}

#carousel-holder {
	background-color: #2f2e31;
	overflow: hidden;
	position: relative;
	/* transform: translate(0, -60px); */
	/* padding: 60px 0; */
	width: 100%;
    z-index: 1;
	height: 100vh;
}

#main-carousel {
	/* opacity: 0.7; */
	filter: blur(4px);
    width: 100%;
    transform: translate(0, -15vh);
	position: absolute;
}

#main-carousel img{
	min-height: 115vh;
	min-width: 100vw;
	position: absolute;
	left: 50%;
	transform: translate(-50%);
}

/* Carousel Content
----------------------------------------
*/

#carousel-content {
	position: relative;
	text-align: center;
	color: var(--textColor);
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	flex-direction: column;
}

h1{
    font-size: clamp(3.5rem, 10vw, 5rem);
    font-weight: 700;
	filter: drop-shadow(0.3rem 0.3rem 0.25rem #191d1f);
	transform: scaleY(90%) translateY(10%);
	margin: 0;
}

#tag-line{
	font-size: 2rem;
	font-weight: normal;
	filter: drop-shadow(0.2em 0.2em 0.1em #191d1f);
	margin: -6px 0 0;
}

#carousel-content h4{
	opacity: 70%;
	font-size: 1.2rem;
	margin: 8px 0 16px 0;
	letter-spacing: 1.5px;
	font-weight: normal;
}

#carousel-content h5{
	color: rgb(228 216 202 / 70%);
	font-size: 1rem;
	margin: 16px 0 0;
	letter-spacing: 1px;
	font-weight: normal;
}

#carousel-content h5 span{
	color: var(--secondaryColor);
}

#hero-logo{
	max-height: 25rem;
	filter: drop-shadow(0.3rem 0.3rem 0.25rem #191d1f);
	margin: -3.5rem 0;
}

#carousel-cta-buttons{
	display: flex;
	justify-content: center;
	gap: 20px;
}

#carousel-cta-buttons a{
	padding: 18px;
	width: 10rem;
	text-align: center;
	display: inline-block;
	text-decoration: none;
	font-size: 1.2rem;
	transition: scale 500ms ease-in-out;
}

#carousel-cta-buttons a:hover{
	scale: 1.025;
	position: relative;
}

#play-now-cta{
	background-image: linear-gradient(to bottom, var(--secondaryColor), var(--secondaryColorDark));
	color: var(--textColor);
}

#discord-cta{
	background-color: var(--primaryColor);
	color: var(--textColor);
}

/* Featured Creator
----------------------------------------
*/

#featured-creator{
	padding: 70px 0;
	text-align: center;
	border-top: solid 5px var(--primaryLight);
}

#creator-label{
	color: var(--muteText);
	letter-spacing: 1.5px;
	text-transform: uppercase;
	margin: 0;
}

#creator-name{
	color: var(--secondaryColor);
	font-size: clamp(2rem, 6vw, 3rem);
	font-weight: normal;
	margin: 5px 0 0;
}

#creator-blurb{
	max-width: 600px;
	margin: 15px auto 0;
	font-size: 1.2rem;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

#creator-link{
	margin-top: 25px;
}

#creator-link[hidden]{
	display: none;
}

/* Features / Body
----------------------------------------
*/

#page-content{
	max-width: 1540px;
	width: 80%;
	padding-inline: 10%;
	justify-content: center;
	display: flex;
	flex-direction: column;
	gap: 80px;
	margin: auto;
	overflow-x: hidden;
}

.fifty-fifty{
	display: flex;
	gap: 24px;
	align-items: center;
}

.fifty-fifty img{
	width: 45%;
	min-width: 320px;
	height: fit-content;
	clip-path: polygon(var(--image-bevel) 0%, calc(100% - var(--image-bevel)) 0%, 100% var(--image-bevel), 100% calc(100% - var(--image-bevel)), calc(100% - var(--image-bevel)) 100%, var(--image-bevel) 100%, 0% calc(100% - var(--image-bevel)), 0% var(--image-bevel));
}

.fifty-fifty > div{
	width: 65%;
	height: auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.info-title{
	font-size: clamp(2rem, 3vw, 3rem);
	margin: 0;
}

.info-paragraph{
	font-size: clamp(1rem, 3vw, 1.5rem);
	margin: 16px 0;
}

@media only screen and (height < 850px){
	#hero-logo{
		scale: 0.7;
	}

	#carousel-cta-buttons a:hover{
		scale: 1;
	}
	
	#carousel-cta-buttons a{
		display: block;
		padding: 12px;
		width: 8rem;
		font-size: 1rem;
		overflow: visible;
	}
}

@media only screen and (width < 600px){
	#hero-logo{
		max-height: 16rem;
		max-width: 80vw;
		margin: -2.25rem 0;
	}

	#carousel-cta-buttons{
		gap: 12px;
	}

	#carousel-cta-buttons a{
		padding: 12px;
		width: 8rem;
		font-size: 1rem;
	}

	.fifty-fifty{
		justify-content: center;
	}

	.fifty-fifty > div{
		width: 100%;
		text-align: center;
	}

	.fifty-fifty img{
		display: none;
	}
}

/* 
Footer
----------------------------------------
*/

footer{
	margin-top: 1.75rem;
	position: relative;
}