/**
 * Responsive JotForm iframe embeds & lightbox (mobile + desktop)
 */

/* --- Inline embed pages (subscriptions, donate, e911) --- */
html.jotform-embed-page-root {
    max-width: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    height: auto;
    -webkit-overflow-scrolling: touch;
}

/* 100vw on the PMV loader can introduce horizontal overflow on mobile Safari */
html.jotform-embed-page-root #pmvLoadingOverlay {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
}

body.jotform-embed-page {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    height: auto !important;
    -webkit-text-size-adjust: 100%;
    -webkit-overflow-scrolling: touch;
}

.jotform-embed-wrap {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.jotform-embed-wrap iframe[id^="JotFormIFrame"] {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    border: 0 !important;
    box-sizing: border-box;
    vertical-align: top;
}

@media (max-width: 991.98px) {
    .jotform-embed-page .container-fluid.py-5 {
        padding-left: max(0.5rem, env(safe-area-inset-left, 0px));
        padding-right: max(0.5rem, env(safe-area-inset-right, 0px));
    }

    .jotform-embed-page .container {
        max-width: 100%;
        padding-left: 0.25rem;
        padding-right: 0.25rem;
    }

    .jotform-embed-page .row.gx-5 {
        --bs-gutter-x: 0;
        margin-left: 0;
        margin-right: 0;
    }

    .jotform-embed-page .col-lg-10 {
        padding-left: 0;
        padding-right: 0;
        max-width: 100%;
        flex: 0 0 100%;
        width: 100%;
    }

    .jotform-embed-wrap {
        margin-left: auto;
        margin-right: auto;
        width: 100%;
        max-width: 100%;
        overflow: visible;
    }

    .jotform-embed-wrap iframe[id^="JotFormIFrame"] {
        min-height: 70dvh;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* Subscriptions & donate: full-bleed form area, page scroll on mobile */
    body.jotform-embed-page--subscriptions .container-fluid.py-5,
    body.jotform-embed-page--donate .container-fluid.py-5 {
        padding-left: max(0.35rem, env(safe-area-inset-left, 0px));
        padding-right: max(0.35rem, env(safe-area-inset-right, 0px));
    }

    body.jotform-embed-page--subscriptions .jotform-embed-wrap,
    body.jotform-embed-page--donate .jotform-embed-wrap {
        width: 100%;
        max-width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        padding-bottom: 2rem;
    }

    body.jotform-embed-page--subscriptions .jotform-embed-wrap iframe#JotFormIFrame-260754389423060,
    body.jotform-embed-page--donate .jotform-embed-wrap iframe[id^="JotFormIFrame"] {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 50vh;
        overflow: visible !important;
        -webkit-overflow-scrolling: auto;
    }
}

@media (min-width: 992px) {
    .jotform-embed-wrap iframe[id^="JotFormIFrame"] {
        min-height: 900px;
    }
}

/* --- Jobs lightbox (JotformFeedback) --- */
body.jobs-jotform-page {
    overflow-x: hidden;
}

@media (max-width: 991.98px) {
    body.jobs-jotform-page.jf-modal-open,
    body.jobs-jotform-page:has(iframe#260753092470052:not([aria-hidden="true"])) {
        overflow: hidden;
    }

    /* Overlay */
    body.jobs-jotform-page div[id^="overlay-"],
    body.jobs-jotform-page .jfOverlay {
        width: 100% !important;
        max-width: 100vw !important;
    }

    /* Modal shell */
    body.jobs-jotform-page div[id^="modal-"],
    body.jobs-jotform-page div[id*="260753092470052"],
    body.jobs-jotform-page .jfModal,
    body.jobs-jotform-page .wasi-jf-lightbox-modal {
        box-sizing: border-box !important;
        width: calc(100vw - 1rem) !important;
        max-width: calc(100vw - 1rem) !important;
        left: 0.5rem !important;
        right: 0.5rem !important;
        margin-left: auto !important;
        margin-right: auto !important;
        max-height: calc(100dvh - 1rem) !important;
        height: calc(100dvh - 1rem) !important;
        top: 0.5rem !important;
        bottom: auto !important;
        transform: none !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        border-radius: 12px;
    }

    body.jobs-jotform-page iframe#260753092470052:not(#jotform-preload-260753092470052),
    body.jobs-jotform-page .jfModal iframe,
    body.jobs-jotform-page .wasi-jf-lightbox-modal iframe {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        box-sizing: border-box !important;
        border: 0 !important;
    }
}

@media (min-width: 992px) {
    body.jobs-jotform-page .jfModal iframe,
    body.jobs-jotform-page iframe#260753092470052:not(#jotform-preload-260753092470052) {
        max-width: 900px;
    }
}
