@font-face {
	font-family: "Solido W00 Black";
	src: url("https://db.onlinewebfonts.com/t/9d7989c7561bb0c59f251545344d5f3a.eot");
	src:
		url("https://db.onlinewebfonts.com/t/9d7989c7561bb0c59f251545344d5f3a.eot?#iefix") format("embedded-opentype"),
		url("https://db.onlinewebfonts.com/t/9d7989c7561bb0c59f251545344d5f3a.woff2") format("woff2"),
		url("https://db.onlinewebfonts.com/t/9d7989c7561bb0c59f251545344d5f3a.woff") format("woff"),
		url("https://db.onlinewebfonts.com/t/9d7989c7561bb0c59f251545344d5f3a.ttf") format("truetype"),
		url("https://db.onlinewebfonts.com/t/9d7989c7561bb0c59f251545344d5f3a.svg#Solido W00 Black") format("svg");
}

html,
body {
	height: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
}

body {
	flex: 1;
	font-family: "Solido W00 Black", "Arial Black", Impact, sans-serif;
	background: url("../img/background.png") center center / cover no-repeat fixed;
}

.main-content {
	flex: 1;
}

.top-header {
	margin: 5% 10% 0;
	text-align: center;
}

.header-logo {
	width: 100%;
	max-width: 800px;
	height: auto;
	margin: 0 auto;
	display: block;
}

.secondary-logo-container {
	margin-top: 2%;
	text-align: center;
}

.secondary-logo {
	width: 150px;
	height: 150px;
	display: inline-block;
}

.promo-banner {
	text-align: center;
	margin: 60px auto;
	padding: 0 20px;
}

.promo-image {
	width: 100%;
	max-width: 800px;
	height: auto;
	display: inline-block;
}

.promo-buttons {
	margin-top: 30px;
	display: flex;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
}

.promo-btn {
	font-family: "Solido W00 Black", "Arial Black", Impact, sans-serif;
	font-size: 1.2rem;
	text-decoration: none;
	color: white;
	background-color: #636463;
	padding: 12px 24px;
	border-radius: 20px;
	transition: background-color 0.3s ease;
}

.promo-btn:hover {
	background-color: #4d4d4d;
}

.promo-btn.outline {
	background-color: transparent;
	color: #636463;
	border: 2px solid #636463;
}

.promo-btn.outline:hover {
	background-color: #636463;
	color: white;
}

.footer-logo {
	text-align: center;
	margin-top: 60px;
}

.footer-logo .header-logo {
	margin-bottom: 30px;
}

.sponsor-logos {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 10px;
	max-width: 750px;
	margin: 0 auto;
	padding: 0 20px;
}

.sponsor {
	flex: 1 1 33%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.sponsor-title {
	font-size: clamp(0.8rem, 1.2vw, 1.2em);
	margin-bottom: 10px;
	font-weight: bold;
	color: #636463;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sponsor img {
	height: 70px;
	object-fit: contain;
	width: 100%;
}

.divider {
	width: 1px;
	height: 70px;
	background-color: #636463;
	margin: 0 10px;
	align-self: flex-end;
}

.custom-divider {
	height: 1px;
	background-color: #636463;
	margin: 30px 10px;
}

.partners-grid {
	max-width: 800px;
	display: grid;
	grid-template-columns: repeat(5, 1fr); /* exactly 5 columns */
	gap: 20px;
	padding: 40px 20px;
	justify-items: center;
	align-items: center;
	margin: 0 auto;
}

.partners-grid img {
	height: 50px;
	width: 100%;
	max-width: 100%;
	object-fit: contain;
	display: block;
}

.section-heading {
	display: block;
	max-width: 750px;
	margin: 60px auto 0;
	text-align: left;
	padding: 0 20px;
}

.site-footer {
	padding: 40px 20px;
	background: transparent;
}

.footer-content {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
}

.social-icon {
	width: 50px;
	height: 50px;
}

.footer-title {
	font-size: clamp(2rem, 4vw, 3em);
	color: #636463;
	white-space: nowrap;
}
