/* ==========================================================================
   Contacts page
   File lives at: /assets/css/contacts.css inside the child theme
   ========================================================================== */

.contacts {
	padding: 7rem 20px 5rem;
}

.contacts__container {
	max-width: 780px;
	margin: 0 auto;
}

.contacts__heading {
	text-align: center;
	font-size: 32px;
	font-weight: 700;
	color: #fff;
	margin: 0 0 30px;
}

.contacts__box {
	background-color: #E6E6E5;
	border-radius: 8px;
	padding: 40px;
}

.contacts__intro {
	text-align: center;
	font-size: 14px;
	line-height: 1.6;
	color: #2a2a2a;
	max-width: 520px;
	margin: 0 auto 28px;
}

.contacts__message {
	text-align: center;
	font-size: 14px;
	font-weight: 600;
	padding: 12px 16px;
	border-radius: 4px;
	margin: 0 0 20px;
}

.contacts__message--success {
	background-color: #dff3e3;
	color: #1e6b34;
}

.contacts__message--error {
	background-color: #fbdede;
	color: #9c1c1c;
}

.contacts-form__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin-bottom: 14px;
}

.contacts-form__input,
.contacts-form__textarea {
	width: 100%;
	background-color: transparent!important;
	border-radius: 4px;
	padding: 12px 14px;
	font-size: 13px;
	color: #393E46!important;
	font-family: inherit;
}

.contacts-form__input::placeholder,
.contacts-form__textarea::placeholder {
	color: #6b6b69;
}

.contacts-form__textarea {
	min-height: 110px;
	resize: vertical;
	margin-bottom: 20px;
}

.contacts-form__button {
	position: relative;
	display: block;
	width: 100%;
	padding: 14px;
	border: none;
	border-radius: 4px;
	background: linear-gradient(90deg, #fb591e 33%, #f4ea8c 88%);
	color: #393E46;
	font-weight: 600;
	font-size: 14px;
	cursor: pointer;
	overflow: hidden;
	z-index: 0;
}

.contacts-form__button span {
	position: relative;
	z-index: 2;
	transition: color 0.35s ease;
}

.contacts-form__button::before {
	content: "";
	position: absolute;
	inset: 0;
	background: #fb591e;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.4s ease;
	z-index: 1;
}

.contacts-form__button:hover::before {
	transform: scaleX(1);
}

.contacts-form__button:hover span {
	color: #ffffff;
}

.contacts-social {
	display: flex;
	justify-content: center;
	gap: 24px;
	margin-top: 24px;
}

.contacts-social__link {
	font-size: 14px;
	font-weight: 600;
	color: #393E46;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.contacts-social__link:hover {
	color: #fb591e;
}

@media (max-width: 600px) {
	.contacts__box {
		padding: 24px;
	}

	.contacts-form__row {
		grid-template-columns: 1fr;
	}
}