.pyalichai-contact,
.pyalichai-contact * {
	box-sizing: border-box;
}

.pyalichai-contact {
	width: 100%;
	padding: 72px 24px 84px;
	background:
		radial-gradient(circle at 18% 18%, rgba(255,255,255,.95) 0, rgba(255,255,255,0) 33%),
		linear-gradient(135deg, #f6f4f1 0%, #efede9 100%);
	font-family: var(--pyalichai-font-body, "Manrope", sans-serif);
	color: #2f2925;
}

.pyalichai-contact__shell {
	width: min(1180px, 100%);
	min-height: 560px;
	margin: 0 auto;
	padding: 70px 76px;
	border-radius: 28px;
	background: rgba(250, 248, 245, .93);
	box-shadow: 0 24px 60px rgba(47, 41, 37, .07);
	display: grid;
	grid-template-columns: minmax(0, 1.02fr) minmax(390px, .82fr);
	gap: 88px;
	align-items: center;
}

.pyalichai-contact__copy {
	max-width: 470px;
}

.pyalichai-contact__eyebrow {
	margin: 0 0 13px;
	font-size: 11px;
	line-height: 1.4;
	font-weight: 700;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: #8b837b;
}

.pyalichai-contact__heading {
	margin: 0;
	max-width: 430px;
	font-family: var(--pyalichai-font-body, "Manrope", sans-serif);
	font-size: clamp(42px, 4vw, 58px);
	line-height: .99;
	font-weight: 500;
	letter-spacing: -.045em;
	color: #191816;
}

.pyalichai-contact__intro {
	margin: 28px 0 0;
	max-width: 420px;
	font-size: 14px;
	line-height: 1.75;
	font-weight: 400;
	color: #77716b;
}

.pyalichai-contact__details {
	margin-top: 34px;
	display: grid;
	gap: 17px;
}

.pyalichai-contact__detail {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	width: fit-content;
	color: #2f2925;
	text-decoration: none;
}

.pyalichai-contact__detail:hover,
.pyalichai-contact__detail:focus {
	color: #171512;
}

.pyalichai-contact__detail-icon {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: #2f2925;
	color: #fff;
	display: grid;
	place-items: center;
	flex: 0 0 38px;
}

.pyalichai-contact__detail-icon svg {
	width: 19px;
	height: 19px;
	display: block;
}

.pyalichai-contact__detail-label,
.pyalichai-contact__detail-value {
	display: block;
}

.pyalichai-contact__detail-label {
	margin-bottom: 2px;
	font-size: 10px;
	font-weight: 500;
	color: #8b837b;
}

.pyalichai-contact__detail-value {
	font-size: 13px;
	font-weight: 500;
	color: #36312d;
}

.pyalichai-contact__form-card {
	width: 100%;
	max-width: 455px;
	justify-self: end;
	padding: 30px 31px 28px;
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 17px 36px rgba(40, 35, 31, .13);
}

.pyalichai-contact__form {
	margin: 0;
}

.pyalichai-contact__field {
	display: block;
	margin: 0 0 15px;
}

.pyalichai-contact__field > span:first-child {
	display: block;
	margin: 0 0 7px;
	font-size: 10px;
	line-height: 1.2;
	font-weight: 500;
	color: #77716b;
}

.pyalichai-contact__field input,
.pyalichai-contact__field select,
.pyalichai-contact__field textarea {
	width: 100%;
	margin: 0;
	border: 1px solid #efedea;
	outline: 0;
	border-radius: 6px;
	background: #f7f6f4;
	color: #2f2925;
	font-family: var(--pyalichai-font-body, "Manrope", sans-serif);
	font-size: 12px;
	font-weight: 400;
	box-shadow: inset 0 1px 2px rgba(47, 41, 37, .025);
	transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

.pyalichai-contact__field input,
.pyalichai-contact__field select {
	height: 42px;
	padding: 0 13px;
}

.pyalichai-contact__field textarea {
	height: 110px;
	min-height: 110px;
	max-height: 220px;
	padding: 12px 13px;
	resize: vertical;
	line-height: 1.5;
}

.pyalichai-contact__field input::placeholder,
.pyalichai-contact__field textarea::placeholder {
	color: #b4afa9;
	opacity: 1;
}

.pyalichai-contact__field input:focus,
.pyalichai-contact__field select:focus,
.pyalichai-contact__field textarea:focus {
	border-color: #bcb5ad;
	background: #fff;
	box-shadow: 0 0 0 3px rgba(47, 41, 37, .055);
}

.pyalichai-contact__select-wrap {
	position: relative;
	display: block;
}

.pyalichai-contact__field select {
	appearance: none;
	-webkit-appearance: none;
	padding-right: 36px;
	cursor: pointer;
}

.pyalichai-contact__select-wrap::after {
	content: "";
	position: absolute;
	right: 14px;
	top: 50%;
	width: 7px;
	height: 7px;
	border-right: 1px solid #77716b;
	border-bottom: 1px solid #77716b;
	transform: translateY(-67%) rotate(45deg);
	pointer-events: none;
}

.pyalichai-contact__actions {
	padding-top: 1px;
}

.pyalichai-contact__submit {
	appearance: none;
	min-height: 44px;
	padding: 4px 18px 4px 5px;
	border: 0;
	border-radius: 999px;
	background: #2f2925;
	color: #fff;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: var(--pyalichai-font-body, "Manrope", sans-serif);
	font-size: 11px;
	line-height: 1;
	font-weight: 600;
	cursor: pointer;
	transition: transform .18s ease, opacity .18s ease, background-color .18s ease;
}

.pyalichai-contact__submit:hover,
.pyalichai-contact__submit:focus-visible {
	background: #181512;
	transform: translateY(-1px);
}

.pyalichai-contact__submit:disabled {
	cursor: wait;
	opacity: .62;
	transform: none;
}

.pyalichai-contact__submit-icon {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #faf7f4;
	color: #2f2925;
	display: grid;
	place-items: center;
	font-size: 18px;
	line-height: 1;
}

.pyalichai-contact__status {
	min-height: 18px;
	margin: 10px 0 0;
	font-size: 11px;
	line-height: 1.45;
	color: #6c665f;
}

.pyalichai-contact__status.is-success {
	color: #31563a;
}

.pyalichai-contact__status.is-error {
	color: #9f312b;
}

.pyalichai-contact__honeypot {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
}

@media (max-width: 1024px) {
	.pyalichai-contact {
		padding: 52px 22px 64px;
	}

	.pyalichai-contact__shell {
		padding: 58px 48px;
		grid-template-columns: minmax(0, 1fr) minmax(360px, .95fr);
		gap: 48px;
	}

	.pyalichai-contact__heading {
		font-size: 46px;
	}
}

@media (max-width: 767px) {
	.pyalichai-contact {
		padding: 24px 15px 42px;
	}

	.pyalichai-contact__shell {
		min-height: 0;
		padding: 44px 22px 24px;
		border-radius: 22px;
		grid-template-columns: 1fr;
		gap: 36px;
	}

	.pyalichai-contact__copy {
		max-width: 100%;
	}

	.pyalichai-contact__heading {
		max-width: 330px;
		font-size: 40px;
		line-height: 1.02;
	}

	.pyalichai-contact__intro {
		margin-top: 21px;
		font-size: 13px;
	}

	.pyalichai-contact__details {
		margin-top: 25px;
	}

	.pyalichai-contact__detail-value {
		font-size: 12px;
		word-break: break-word;
	}

	.pyalichai-contact__form-card {
		max-width: none;
		padding: 24px 20px 22px;
		border-radius: 20px;
	}
}
