/* AURA Contact — Gravity Forms is intentionally left to own its form markup. */
.aura-contact { --aura-contact-modal-width: 680px; color: inherit; }
.aura-contact__panel { position: relative; max-width: 100%; padding: var(--aura-contact-padding, 24px); background: var(--aura-contact-panel, #fff); color: #16231f; border-radius: var(--aura-contact-panel-radius, 18px); box-shadow: 0 16px 48px rgba(0,0,0,.14); }
.aura-contact__title { margin: 0 2.75rem 1.25rem 0; color: var(--aura-contact-title-color, #16231f); font-size: var(--aura-contact-title-size, 32px); line-height: 1.15; }
.aura-contact__notice { padding: 1rem; border: 1px solid #c8d0cc; border-radius: 8px; background: #fff; }
.aura-contact__details { display: grid; gap: .5rem; margin-top: 1.5rem; }
.aura-contact__details p { margin: 0; }
.aura-contact__map { display: block; width: 100%; min-height: 280px; margin-top: 1rem; border: 0; border-radius: 10px; }
.aura-contact--lightbox { display: inline-block; }
.aura-contact--lightbox.aura-contact--global { display: contents; }
.aura-contact--external-only .aura-contact__trigger { display: none; }
.aura-contact__trigger { cursor: pointer; }
.aura-contact__backdrop { position: fixed; z-index: 99999; inset: 0; display: grid; place-items: center; padding: 1rem; background: var(--aura-contact-backdrop, rgba(7,12,10,.72)); backdrop-filter: blur(3px); opacity: 0; transition: opacity .22s ease; }
.aura-contact__backdrop[hidden] { display: none; }
.aura-contact__backdrop.is-open { opacity: 1; }
.aura-contact--lightbox .aura-contact__panel { width: min(var(--aura-contact-modal-width), calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); overflow-x: hidden; overflow-y: auto; transform: translateY(10px) scale(.98); transition: transform .22s ease; }
.aura-contact__form .gform_fields { row-gap: var(--aura-contact-field-gap, 14px); }
.aura-contact__form .gfield { margin-bottom: var(--aura-contact-field-gap, 14px); }
.aura-contact__form .gfield_label, .aura-contact__form .gform-field-label { color: var(--aura-contact-label-color, #26352f); font-size: var(--aura-contact-label-size, 14px); }
.aura-contact__form input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), .aura-contact__form textarea, .aura-contact__form select { box-sizing: border-box; max-width: 100%; border: 1px solid var(--aura-contact-field-border, #cbd5cf); border-radius: var(--aura-contact-field-radius, 8px); background: var(--aura-contact-field-bg, #fff); }
.aura-contact__form input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), .aura-contact__form select { min-height: var(--aura-contact-field-height, 46px); }
.aura-contact__form textarea { display: block; width: 100%; height: var(--aura-contact-textarea-height, 120px); min-height: 80px; resize: vertical; }
.aura-contact__form .gform-footer { margin-top: 1rem; }
.aura-contact__form .gform_button { border-radius: var(--aura-contact-button-radius, 8px); background: var(--aura-contact-submit-bg, #008d49); color: var(--aura-contact-submit-color, #fff); }
.aura-contact__form--lazy { position: relative; min-height: 220px; }
.aura-contact__loading { position: absolute; inset: 0; display: grid; place-items: center; color: var(--aura-contact-label-color, #26352f); }
.aura-contact__frame { display: block; width: 100%; min-height: 220px; border: 0; background: transparent; opacity: 0; transition: opacity .18s ease; }
.aura-contact__form--lazy.is-loaded .aura-contact__loading { display: none; }
.aura-contact__form--lazy.is-loaded .aura-contact__frame { opacity: 1; }
.aura-contact-embed { margin: 0; padding: 2px; background: transparent; overflow-x: hidden; }
.aura-contact-embed .aura-contact { display: block; }
/* Gravity Forms' enhanced phone UI may lack its stylesheet in a footer-rendered form. */
.aura-contact__form .gform-phone__dropdown--hidden { display: none !important; }
.aura-contact__form .gform-phone__input-wrapper { display: flex; align-items: end; gap: .5rem; }
.aura-contact__form .ginput_country-selector_container { flex: 0 0 auto; }
.aura-contact__form .ginput_phone_container { flex: 1 1 auto; min-width: 0; }
.aura-contact__form .gform-phone__country-selector { min-width: 50px; min-height: var(--aura-contact-field-height, 46px); border: 1px solid var(--aura-contact-field-border, #cbd5cf); border-radius: var(--aura-contact-field-radius, 8px); background: var(--aura-contact-field-bg, #fff); color: inherit; cursor: pointer; }
.aura-contact__form .gform-phone__input { width: 100%; }
.aura-contact__backdrop.is-open .aura-contact__panel { transform: none; }
.aura-contact__close { position: absolute; top: .7rem; right: .7rem; width: 2.25rem; height: 2.25rem; border: 0; border-radius: 50%; background: transparent; color: inherit; font-size: 1.75rem; line-height: 1; cursor: pointer; }
body.aura-contact-scroll-lock { overflow: hidden; }
@media (max-width: 767px) { .aura-contact__backdrop { padding: 0; } .aura-contact--lightbox .aura-contact__panel { width: 100vw; max-width: none; height: 100dvh; max-height: none; border-radius: 0; } }
@media (prefers-reduced-motion: reduce) { .aura-contact__backdrop, .aura-contact--lightbox .aura-contact__panel { transition: none; } }
