@import url('https://fonts.googleapis.com/css2?family=Montserrat&display=swap');

:root {
	--max-width: 1260px;
	--spacing: 120px;
	--grid-columnns: 12;
	--gradient: linear-gradient(45deg, #7821cd, #401c64);
	--white: #fff;
	--purple: #7821cd;
	--purple-hover: #471f6f;
	--black: #0f021b;
	--light-black: #1f132b;
	--light-grey: #d8d8d8;
	--light-grey-hover: #ababab;
	--dark-grey: #333333;
	--footer-size: 299px;
}

a {
	text-decoration: none;
	color: var(--white);
}

a:hover {
	text-decoration: none;
	color: var(--white);
}

@media screen and (max-width: 1350px) {
	:root {
		--max-width: 800px;
		--spacing: 80px;
		--footer-size: 238px;
	}
}

body {
	font-family: 'Montserrat', sans-serif;
	margin: 0px;
}

.main-container {
	min-height: calc(100vh - var(--footer-size));
}

.fade-in {
	opacity: 0;
	transform: translateY(30px);
}

.fade-in-visible {
	opacity: 1;
	transform: none;
	transition: opacity 0.6s ease-out, transform 0.75s ease-out;
	visibility: visible;
}

.title-area-container {
	width: 100%;
	background: var(--gradient);
}

.top-bar {
	width: 100%;
	max-width: var(--max-width);
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: auto;
}

.link {
	font-weight: bold;
	font-size: 16px;
	padding: 10px;
	margin-left: 10px;
	margin-right: 10px;
}

.link:hover {
	text-decoration: underline;
}


.grid {
	max-width: var(--max-width);
	margin: auto;
	padding-top: var(--spacing);
	padding-bottom: var(--spacing);
	display: grid;
	grid-template-columns: repeat(var(--grid-columnns), 1fr);
}

.title-container {
	width: 100%;
	max-width: var(--max-width);
	margin: auto;
}

.title-text-container {
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	justify-content: flex-start;
}

.title-image-container {
	display: flex;
	align-content: center;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.content-area {
	width: 100%;
}

.content-area-dark {
	width: 100%;
	background-color: var(--light-grey);
}

.credit-text {
	text-align: center;
	font-size: 12px;
	padding-bottom: 10px;
	color: var(--white);
}

.page-title {
	color: var(--white);
	font-size: 42px;
	font-weight: bold;
}

.page-desc {
	color: var(--white);
	font-size: 24px;
}

.footer {
	width: 100%;
	background-color: var(--dark-grey);
}

.footer-left-container {
	grid-column-start: 1;
	grid-column-end: span 5;
}

.flag-container {
	display: flex;
	justify-content: flex-start;
}

.flag {
	height: 30px;
	width: auto;
	padding-right: 5px;
}

.footer-text {
	color: var(--white);
	font-size: 16px;
	padding-top: 10px;
	padding-bottom: 10px;
}

.footer-right-container {
	grid-column-start: 9;
	grid-column-end: span 4;
}

.social-icons {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.social-text {
	font-size: 16px;
	margin-left: 10px;
}

#social-text-right {
	text-align: right;
}

.social-icon {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-left: 10px;
}