/* ====== Variables ====== */
:root {
    --gradient: linear-gradient(103deg, #E82B85 4.67%, #8B3893 31.18%, #4F57A2 54.31%, #20BCD9 97.45%);
    --font-primary: "Open Sans", sans-serif;
    --font-size-h1: 36px;
	--font-size-h1-sm: 32px;
	--font-size-h1-xsm: 28px;
    --font-size-p: 24px;
    --font-size-p-sm: 20px;
    --font-size-p-xsm: 16px;
    --transition: 0.3s linear;
    --max-width-content: 1055px;
    --max-height-logo: 127px;
    --max-height-clip: 1600px;
}
/* ====== Page Layout ====== */
 * {
	box-sizing: border-box;
}
html {
	margin: 0;
	padding: 0;
	background-image: var(--gradient);
	background-repeat: no-repeat;
	background-size: cover;
}
body {
	margin: 0;
	padding: 0;
}
.landing-page {
	position: relative;
	min-height: 100vh;
	height: 100%;
	width: 100%;
	font-family: var(--font-primary);
	font-style: normal;
	text-align: center;
	color: #fff;
	display: flex;
    flex-direction: column;
    justify-content: space-around;
	-webkit-font-smoothing: antialiased;
}
.landing-page::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background: url(clip_layer.png) no-repeat bottom left;
	width: 100%;
	height: 100%;
	background-size: contain;
	max-height: var(--max-height-clip);
}
.logo {
	background: url('logo_white_text.png') no-repeat center;
	background-size: contain;
	max-height: var(--max-height-logo);
	width: 100%;
	margin: 10px auto 24px;
	aspect-ratio: 1/5;

	-webkit-transition: margin 0.3s linear;
	-moz-transition: margin 0.3s linear;
	-o-transition: margin 0.3s linear;
	transition: margin 0.3s linear;
}
/* ====== Content Section ====== */
.content {
	position: relative;
	max-width: var(--max-width-content);
	margin: 0 auto;
	padding: 50px 20px 200px;
}
.content h1 {
	font-size: var(--font-size-h1);
	font-weight: 700;
	line-height: 100%;
	margin: 0 0 40px;
	-webkit-transition: all 0.3s linear;
	-moz-transition: all 0.3s linear;
	-o-transition: all 0.3s linear;
	transition: all 0.3s linear;
}
.content p,
.link {
	margin: 0;
	font-size: 24px;
	font-weight: 400;
	line-height: 120%;
	letter-spacing: 0.48px;
	max-width: 776px;
	margin: auto;

	-webkit-transition: all 0.3s linear;
	-moz-transition: all 0.3s linear;
	-o-transition: all 0.3s linear;
	transition: all 0.3s linear;
}
/* ====== Link Styles ====== */
.link {
	position: absolute;
	bottom: 4%;
	left: 50%;
	transform: translateX(-50%);
}
.link>a {
	color: white;
	text-decoration: none;
	display: inline;
	text-decoration: none;
	background-image: var(--gradient);
	background-position: 0% 95%;
	background-repeat: no-repeat;
	background-size: 100% 2px;
	transition: background-size .3s;
}
.link>a:hover,
.link>a:focus,
.link>a:visited {
	background-image: var(--gradient);
	background-size: 100% 100%;
}
.link>span {
	font-weight: 600;
}
/* ====== Responsive Styles ====== */
@media screen and (min-width: 500px) {
	.content {
		padding-top: 100px;
	}
}
@media screen and (max-width: 1090px) {
	.content {
		max-width: calc(100% - 40px);
	}
}
@media screen and (max-width: 800px) {
	.content h1 {
		font-size: var(--font-size-h1-sm);
		margin: 0 0 30px;
	}
	.content p,
	.link {
		font-size: var(--font-size-p-sm);
	}
}
@media screen and (max-width: 500px) {
	.logo {
		margin-bottom: 0;
	}
	.content h1 {
		font-size: var(--font-size-h1-xsm);
	}
	.content p,
	.link {
		font-size: var(--font-size-p-xsm);
	}
	
}