/* ===========================================================
   contact.css
   =========================================================== */

.contact-hero { padding-top: 160px; padding-bottom: 64px; }
.contact-hero__title { font-size: clamp(2.5rem, 6vw + 1rem, 5.5rem); margin: 0 0 var(--vc-s-6); max-width: 16ch; }
.contact-hero__intro { font-size: var(--vc-text-lg); max-width: 56ch; color: var(--vc-fg-soft); margin: 0; }

.contact-body { padding-bottom: clamp(80px, 10vw, 160px); }
.contact-body__inner {
	display: grid; gap: var(--vc-s-12);
	grid-template-columns: 1fr;
}
@media (min-width: 1024px) {
	.contact-body__inner { grid-template-columns: 2fr 1fr; gap: var(--vc-s-16); }
}

.contact-form-wrap { background: var(--vc-bg-alt); border: 1px solid var(--vc-line); border-radius: var(--vc-radius-lg); padding: clamp(28px, 4vw, 48px); }
.contact-form__head { margin-bottom: var(--vc-s-8); }
.contact-form__feedback { margin-top: var(--vc-s-5); padding: var(--vc-s-4); border-radius: var(--vc-radius); display: none; }
.contact-form__feedback.is-success { display: block; background: rgba(34,211,238,.08); border: 1px solid rgba(34,211,238,.32); color: #22D3EE; }
.contact-form__feedback.is-error   { display: block; background: rgba(255,110,123,.08); border: 1px solid rgba(255,110,123,.32); color: #FF6E7B; }

.contact-info { display: flex; flex-direction: column; gap: var(--vc-s-6); }
.contact-info__item { padding-bottom: var(--vc-s-5); border-bottom: 1px solid var(--vc-line); }
.contact-info__item:last-child { border-bottom: 0; }
.contact-info__item a { display: inline-block; font-size: var(--vc-text-md); color: var(--vc-fg); }
.contact-info__item a:hover { color: var(--vc-accent); }
.contact-info address { font-style: normal; color: var(--vc-fg-soft); }
