/* Full-bleed correction for themes that constrain shortcode content. */
.mdv-app {
    position: relative;
    display: block;
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding: 0 !important;
    clear: both;
    overflow-x: hidden;
}

.mdv-app .mdv-top,
.mdv-app .mdv-hero {
    width: 100% !important;
    max-width: none !important;
}

.mdv-app .mdv-brand-logo {
    display: block !important;
    width: auto !important;
    height: 54px !important;
    max-width: 260px !important;
    object-fit: contain;
    object-position: left center;
}

.mdv-app .mdv-inner {
    width: min(1040px, calc(100% - 48px)) !important;
    max-width: 1040px !important;
}

@media (min-width: 761px) {
    .mdv-app .mdv-row {
        display: flex !important;
        flex-direction: row !important;
        align-items: stretch !important;
    }

    .mdv-app .mdv-row input {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
    }

    .mdv-app .mdv-row button {
        flex: 0 0 285px !important;
        width: 285px !important;
    }

    .mdv-app .mdv-stages,
    .mdv-app .mdv-progress {
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    .mdv-app .mdv-brand-logo {
        height: 42px !important;
        max-width: 190px !important;
    }
    .mdv-app .mdv-inner {
        width: 100% !important;
    }

    .mdv-app .mdv-row {
        display: flex !important;
        flex-direction: column !important;
    }

    .mdv-app .mdv-row input,
    .mdv-app .mdv-row button {
        width: 100% !important;
        min-width: 0 !important;
    }
}
