/* Localização e formulário de contacto */
#contact.clinic-location { width: 100%; height: auto; padding: 0; background: none; }
#contact.clinic-location iframe { display: block; width: 100%; height: 450px; border: 0; }
.clinic-contact-form { background: #fff; color: #555; padding: 75px 0 60px; scroll-margin-top: 125px; }
.clinic-contact-form .box-heading-intro { margin-bottom: 35px; }
.clinic-contact-form .heading { color: #555; }
.clinic-contact-form .title-heading { color: #383838; }
#clinic-contact-form { max-width: 900px; margin: 0 auto; }
.clinic-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 28px; }
.clinic-form-field { min-width: 0; }
.clinic-form-field label { display: block; color: #383838; font-weight: 500; margin-bottom: 8px; }
#clinic-contact-form input, #clinic-contact-form textarea { box-sizing: border-box; width: 100%; margin: 0; border: 1px solid #d5d5d5; border-radius: 4px; background: #fff; color: #383838; font: inherit; padding: 13px 15px; }
#clinic-contact-form input { height: 50px; }
#clinic-contact-form textarea { min-height: 165px; resize: vertical; }
#clinic-contact-form input:focus, #clinic-contact-form textarea:focus { outline: 2px solid #666; outline-offset: 2px; }
.clinic-form-wide { grid-column: 1 / -1; }
.clinic-form-note { margin: 18px 0 22px; font-size: 13px; line-height: 1.6; }
.clinic-form-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 15px 24px; }
#clinic-contact-form .clinic-send { background: #444; color: #fff; border: 0; border-radius: 4px; padding: 14px 25px; cursor: pointer; }
#clinic-contact-form .clinic-send:hover { background: #292929; }
#clinic-contact-form .clinic-send:disabled { opacity: .65; cursor: wait; }
.clinic-form-actions a { color: #444; text-decoration: underline; }
#clinic-form-status { margin: 18px 0 0; }
#clinic-form-status[data-state="error"] { color: #a52b2b; }
#clinic-form-status[data-state="success"] { color: #29623b; }
.clinic-form-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width: 767px) {
    #contact.clinic-location iframe { height: 350px; }
    .clinic-contact-form { padding: 45px 0; }
    .clinic-form-grid { grid-template-columns: 1fr; gap: 18px; }
    #clinic-contact-form input, #clinic-contact-form textarea { font-size: 16px; }
}
#clinic-contact-title { scroll-margin-top: 140px; }
