.contact-feedback { margin-bottom: 32px; }
.contact-feedback h2, [data-callback] h2 { margin: 0; }
.contact-form { margin-top: 24px; }
.contact-form .validation-summary-valid { display: none; }
.contact-form .form-alert ul { margin: 0; padding-left: 20px; }
.contact-check { padding: 18px; background: var(--eb-bg, #fff); border: 1px solid var(--eb-border); border-radius: 14px; }
.contact-check .consent { color: var(--eb-strong); font-weight: 600; align-items: center; }
.contact-challenge { margin-top: 16px; }
.contact-challenge input[type=text] { max-width: 180px; }
.contact-challenge[hidden] { display: none; }
.contact--phone { display: block; }
.contact-phone-line { display: flex; align-items: center; gap: 18px; }
.contact-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 20px; }
.contact-whatsapp { display: inline-flex; align-items: center; gap: 9px; border-radius: 999px; padding: 12px 18px; color: #fff; background: #147a42; font-weight: 600; }
.contact-whatsapp:hover { color: #fff; background: #106435; }
.contact-whatsapp svg { width: 22px; height: 22px; }
.contact-callback-open { font-size: 14px; padding: 12px 18px; }
.callback-fallback { margin-bottom: 40px; position: relative; }
.callback-close { display: none; }
dialog.callback-dialog { margin: auto; width: min(540px, calc(100% - 32px)); max-height: calc(100dvh - 40px); overflow-y: auto; border: 0; border-radius: 28px; padding: 0; color: var(--eb-text); background: var(--eb-tile); }
dialog.callback-dialog::backdrop { background: rgba(18, 30, 35, .6); backdrop-filter: blur(3px); }
.callback-dialog .callback-fallback { margin: 0; padding: 32px; }
.callback-dialog h2 { padding-right: 20px; font-size: 26px; }
.callback-dialog .callback-close { display: grid; place-items: center; position: absolute; top: 12px; right: 12px; border: 0; background: transparent; color: var(--eb-strong); font-size: 28px; width: 36px; height: 36px; border-radius: 50%; cursor: pointer; }
.callback-close:hover { background: var(--eb-bg, #fff); }
.contact-form button[disabled] { opacity: .7; cursor: wait; }
@media(max-width: 420px) { .contact-phone-line { gap: 12px; } .contact--phone { padding: 22px; } .contact__value { font-size: 18px; } .callback-dialog .callback-fallback { padding: 24px; } }
