/* Ohne Tracking-Consent bleibt der Hinweis bewusst kompakt. */
.person-video-modal .person-video-modal__dialog {
    width: min(720px, calc(100vw - 2rem)) !important;
    max-width: min(720px, calc(100vw - 2rem)) !important;
    margin-right: auto;
    margin-left: auto;
}

/*
 * Sobald das Video freigegeben ist, gibt es kein künstliches 1200px-Limit mehr.
 * JS passt anschließend zusätzlich anhand der verfügbaren Viewport-Höhe an.
 */
.person-video-modal.person-video-modal--video-active .person-video-modal__dialog,
.person-video-modal[data-video-consent="1"] .person-video-modal__dialog {
    width: calc(100vw - 2rem) !important;
    max-width: calc(100vw - 2rem) !important;
}

@supports selector(:has(*)) {
    .person-video-modal:has(.person-video-modal__ratio:not(.d-none)) .person-video-modal__dialog {
        width: calc(100vw - 2rem) !important;
        max-width: calc(100vw - 2rem) !important;
    }
}

.person-video-modal .modal-body {
    overflow: hidden;
}

.person-video-modal__ratio {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
}

.person-video-modal__ratio iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}
