/* Popup design is editable in Elementor. These rules bound the external iframe. */
.ig-contact-popup .dialog-widget-content {
    /* Elementor generates an ID selector with overflow:visible for popup skins. */
    overflow: hidden !important;
    max-width: calc(100vw - 24px) !important;
}
.ig-contact-popup .dialog-message {
    max-width: 100% !important;
    max-height: calc(100vh - 40px) !important;
    max-height: calc(100dvh - 40px) !important;
    overflow: hidden !important;
}
.ig-contact-popup .ig-contact-popup-shell {
    max-height: calc(100vh - 40px);
    max-height: calc(100dvh - 40px);
    min-height: 0;
}
.ig-contact-popup .ig-contact-popup-header { flex-shrink: 0; }
.ig-contact-popup .ig-contact-popup-body {
    min-height: 0;
    overflow: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}
.ig-contact-popup .dialog-close-button {
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 10px;
    border-radius: 8px;
}
.ig-contact-popup :is(.dialog-close-button,a):focus-visible { outline: 2px solid #111; outline-offset: 3px; }
.ig-contact-popup :is(.elementor-heading-title,p) { text-box-trim: none; }
.ig-contact-popup .ig-contact-form-frame {
    display: block;
    width: 100%;
    height: min(70vh,760px);
    height: min(70dvh,760px);
    min-height: 360px;
    margin: 0;
    border: 0;
    border-radius: 8px;
    background: #fff;
}
.ig-contact-popup :is(.ig-contact-form-loading,.ig-contact-form-fallback) {
    margin: 0 0 16px;
    font-family: Inter,sans-serif;
    color: #111;
    font-size: 14px;
    line-height: 1.5;
}
.ig-contact-popup .ig-contact-form-fallback a { color: #a64c00; text-decoration: underline; }
.ig-contact-popup [hidden] { display: none !important; }
.ig-contact-popup .ig-ghl-focus-end {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
body.admin-bar .ig-contact-popup {
    height: calc(100vh - 32px);
    height: calc(100dvh - 32px);
}
body.admin-bar .ig-contact-popup :is(.dialog-message,.ig-contact-popup-shell) {
    max-height: calc(100vh - 72px) !important;
    max-height: calc(100dvh - 72px) !important;
}
@media (max-width:782px) {
    body.admin-bar .ig-contact-popup {
        height: calc(100vh - 46px);
        height: calc(100dvh - 46px);
    }
}
@media (max-width:767px) {
    .ig-contact-popup :is(.dialog-message,.ig-contact-popup-shell) {
        max-height: calc(100vh - 24px) !important;
        max-height: calc(100dvh - 24px) !important;
    }
    body.admin-bar .ig-contact-popup :is(.dialog-message,.ig-contact-popup-shell) {
        max-height: calc(100vh - 70px) !important;
        max-height: calc(100dvh - 70px) !important;
    }
}
