/* National approval + generic ballot Mediavine: class-only wells.
   Desktop wells are reserved on first paint so a late creative does not push the page. */

:root {
    --pm-poll-ad-object-gap: 1.75rem;
}
@media (min-width: 640px) {
    :root {
        --pm-poll-ad-object-gap: 2.25rem;
    }
}

.pm-tx-ad-band {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    border: 0;
    background: transparent;
    text-align: center;
}

@media (max-width: 767px) {
    body.national-approval-polls-page .pm-tx-ad-band[data-pm-na-place="above-table"] {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border: 0 !important;
        pointer-events: none !important;
    }
}

body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop .pm-ad-slot {
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 250px !important;
    height: 250px !important;
    max-height: 250px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop .mv-ad-box,
body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop [id^="mvp-"] {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: max-content;
    max-width: 100%;
    height: auto !important;
    min-height: 0 !important;
    max-height: 100%;
    margin: auto !important;
    overflow: hidden;
    align-self: center;
}
body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop iframe,
body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop img {
    display: block !important;
    float: none !important;
    margin: auto !important;
    align-self: center;
    max-width: 100%;
    max-height: 100%;
    flex-shrink: 0;
}

@media (max-width: 767px) {
    body.national-approval-polls-page .pm-tx-ad-band[data-pm-na-place="page-top"],
    body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border: 0 !important;
        pointer-events: none !important;
        background: transparent !important;
    }

    /* Reserved under-chart well owns equal air above (stats) and below (table). */
    html:not(.pollsmax-ads-hidden) body.sleek-home.national-approval-polls-page
    .pm-tx-ad-band.pm-tx-ad-band--mobile[data-pm-mob-place="under-chart"] {
        margin-top: 24px !important;
        margin-bottom: 24px !important;
    }
    html:not(.pollsmax-ads-hidden) body.sleek-home.national-approval-polls-page
    main > section:has(#avgChart) > div {
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }
    html:not(.pollsmax-ads-hidden) body.sleek-home.national-approval-polls-page
    .pm-tx-ad-band.pm-tx-ad-band--mobile[data-pm-mob-place="under-chart"] + section:has(#pollsTableShell),
    html:not(.pollsmax-ads-hidden) body.sleek-home.national-approval-polls-page
    .pm-tx-ad-band.pm-tx-ad-band--mobile[data-pm-mob-place="under-chart"] + section:has(#pollsTableShell) > div {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }
    html:not(.pollsmax-ads-hidden) body.sleek-home.national-approval-polls-page
    .pm-tx-ad-band.pm-tx-ad-band--mobile[data-pm-mob-place="under-chart"] + section:has(#pollsTableShell) .state-polls-shell {
        margin-top: 0 !important;
    }
}

@media (min-width: 768px) {
    body.national-approval-polls-page main.mv-content {
        overflow: visible;
    }
    body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop {
        position: relative;
        display: flex !important;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        box-sizing: border-box;
        width: 100%;
        max-width: none;
        margin: 0 !important;
        padding: 12px 1.5rem 20px !important;
        height: calc(250px + 58px) !important;
        min-height: calc(250px + 58px) !important;
        max-height: calc(250px + 58px) !important;
        overflow: hidden !important;
        border-top: none;
        border-bottom: 1px solid rgb(30 41 55 / 0.8) !important;
        background: #0b0e13 !important;
        text-align: center;
        pointer-events: auto;
        opacity: 1;
    }
    body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop[data-pm-na-place="page-top"] {
        padding-top: 12px !important;
        padding-bottom: 20px !important;
    }
    body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop[data-pm-na-place="above-table"] {
        border-top: 1px solid rgb(30 41 55 / 0.8) !important;
        border-bottom: 1px solid rgb(30 41 55 / 0.8) !important;
    }
    body.sleek-home.national-approval-polls-page main > section:has(#avgChart):has(+ .pm-tx-ad-band) > div {
        padding-bottom: var(--pm-poll-ad-object-gap) !important;
    }
    body.sleek-home.national-approval-polls-page .pm-tx-ad-band + section:has(#pollsTableShell) > div {
        padding-top: var(--pm-poll-ad-object-gap) !important;
        margin-top: 0 !important;
    }
    body.sleek-home.national-approval-polls-page .pm-tx-ad-band + section:has(#pollsTableShell) .state-polls-shell {
        margin-top: 0 !important;
    }
    @media (min-width: 1024px) {
        body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop {
            padding-left: 2.5rem !important;
            padding-right: 2.5rem !important;
        }
    }
    @media (min-width: 1280px) {
        body.national-approval-polls-page .pm-tx-ad-band.pm-tx-ad-band--desktop {
            padding-left: 3.5rem !important;
            padding-right: 3.5rem !important;
        }
    }
}

body.national-approval-polls-page main.mv-content.pb-20,
body.national-approval-polls-page main.mv-content {
    padding-bottom: 0 !important;
}
body.national-approval-polls-page footer[data-et-site-footer="1"].mt-32,
body.national-approval-polls-page footer[data-et-site-footer="1"] {
    margin-top: 0 !important;
    border-top: none !important;
}
body.national-approval-polls-page aside.pollsmax-site-multiplex,
body.national-approval-polls-page aside.pollsmax-site-multiplex.pollsmax-ad-shell,
body.national-approval-polls-page aside.pollsmax-site-multiplex[data-ad-state],
body.national-approval-polls-page #pollsmaxSiteMultiplex,
body.national-approval-polls-page #homeAdMultiplex {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
}

@media (min-width: 768px) {
    .pm-tx-ad-band.pm-tx-ad-band--desktop::before {
        content: "ADVERTISEMENT";
        display: block;
        flex: 0 0 auto;
        width: 100%;
        box-sizing: border-box;
        margin: 0 0 10px;
        padding: 0;
        color: #64748b;
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 0.16em;
        line-height: 16px;
        text-align: center;
    }
}
