.whatsapp-icon { width: 1.25rem; height: 1.25rem; flex: 0 0 auto; }
.contact-section { background: #eee9de; color: var(--color-green); padding-block: clamp(5rem, 8vw, 8rem); }
.contact-section__grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(4rem, 8vw, 8rem); }
.contact-section__intro .eyebrow { color: var(--color-blue); margin-bottom: 1.75rem; }
.contact-section__intro h2 { max-width: 12ch; font-size: clamp(2.7rem, 4.3vw, 4.7rem); line-height: 1.05; font-weight: 300; letter-spacing: -.045em; }
.contact-section__intro > p:not(.eyebrow) { max-width: 42ch; margin-top: 1.75rem; line-height: 1.75; color: rgb(30 61 54 / 76%); }
.contact-section__whatsapp { display: inline-flex; align-items: center; gap: .75rem; min-height: 3.25rem; margin-top: 2.25rem; padding: .8rem 1.2rem; border-radius: 3px; background: var(--color-green); color: var(--color-sand); text-decoration: none; cursor: pointer; }
.contact-section__whatsapp:focus-visible, .contact-form :is(input,select,textarea,button):focus-visible { outline: 2px solid var(--color-blue); outline-offset: 3px; }
.contact-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem 1.25rem; }
.contact-form__field { display: flex; flex-direction: column; gap: .6rem; }
.contact-form__field--wide, .contact-form__actions { grid-column: 1 / -1; }
.contact-form label { font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; }
.contact-form :is(input,select,textarea) { width: 100%; border: 0; border-bottom: 1px solid rgb(30 61 54 / 30%); border-radius: 0; background: transparent; color: inherit; font: inherit; padding: .7rem .1rem; }
.contact-form textarea { resize: vertical; min-height: 8rem; }
.contact-form__actions { display: flex; align-items: center; gap: 1.25rem; }
.contact-form button { min-height: 3.25rem; border: 0; border-radius: 3px; padding: .8rem 1.4rem; background: var(--color-blue); color: white; font: inherit; cursor: pointer; }
.contact-form__actions p { font-size: .85rem; color: var(--color-blue); }
@media (max-width: 767px) {
    .contact-section__grid, .contact-form { grid-template-columns: 1fr; }
    .contact-section__grid { gap: 3.5rem; }
    .contact-section__intro h2 { font-size: clamp(2.4rem, 11vw, 3.2rem); }
    .contact-form__field--wide, .contact-form__actions { grid-column: auto; }
}
