.contact {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.contact-header {
	display: flex;
	flex-direction: column;
	max-width: 70vw;
	text-align: center;
}

.contact-header h1 {
	position: relative;
	font-size: 4rem;
	margin: 1.25rem 1.25rem -0.25rem 1.25rem;
	text-align: center;
	text-transform: uppercase;
	font-weight: bold;
}

.map-with-text {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 90vw;
	max-width: 90vw;
}

.contact-text {
	flex: 1;
	padding: 1rem;
	color: white;
	text-align: center;
}

.contact-text h1 {
	font-size: 2rem;
	margin-bottom: 0.5rem;
}

.contact-text h3 {
	font-size: 1.25rem;
	margin: 0.3rem;
}

.map {
	flex: 1;
	width: 100%;
	max-width: 100%;
	height: 50vh;
}

.contact-form {
	display: flex;
	flex-direction: column;
	position: relative;
	top: 0;
	left: 0;
	color: white;
	border: var(--bg3) 3px solid;
	background-color: var(--bg2);
	border-radius: 10px;
	width: 90vw;
	min-width: 70vw;
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}

.contact-form form {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	padding: 10px;
}

.contact-form label {
	font-size: 18px;
	margin-top: 10px;
}

.contact-form input,
.contact-form textarea {
	padding: 10px;
	margin-top: 5px;
	margin-bottom: 10px;
	border-radius: 5px;
	border: none;
	background-color: var(--bg3);
	color: white;
}

.contact-form textarea {
	resize: vertical;
	min-height: 100px;
}

.contact-form button {
	background-color: var(--bg3);
	color: white;
	border: none;
	border-radius: 5px;
	padding: 10px;
	margin-top: 10px;
	cursor: pointer;
}

.contact-form button:hover {
	background-color: var(--bg4);
}

.contact-form button:active {
	background-color: var(--bg5);
}

.contact-form .error-message {
	color: red;
	font-size: 14px;
	margin-top: -5px;
	margin-bottom: 10px;
}

@media (max-width: 768px) {
	.contact-header h1 {
		font-size: 2.5rem;
	}

	.map-with-text {
		flex-direction: column;
		width: 80vw;
		max-width: 80vw;
	}

	.contact-text {
		margin-top: -2.5rem;
	}

	.contact-text h1 {
		font-size: 1.75rem;
	}

	.contact-text h3 {
		font-size: 1rem;
	}

	.contact-form {
		width: 80vw;
	}

	.contact-form label {
		font-size: 14px;
	}
}