/* #### WP Block Styles #### */

/* ## Grid ## */
@media (min-width: 992px) {

    .double-column-gap-desktop,
    .double-column-gap-lg,
    .wp-block-columns.double-column-gap-desktop,
    .wp-block-columns.double-column-gap-lg {
        --double-column-gap: calc(var(--current-column-gap) * 4);
        --df-column-gap: calc(var(--current-column-gap) * 2);

        max-width: calc(100% + (var(--current-column-gap) * 4)) !important;
        margin-left: calc(var(--current-column-gap) * -2) !important;
    }
}

@media (max-width: 992px) {

    .half-column-gap-mobile,
    .has-half-column-gap-mobile>.container>.row,
    .half-column-gap-sm,
    .has-half-column-gap-sm>.container>.row,
    .wp-block-columns.half-column-gap-mobile,
    .wp-block-columns.half-column-gap-sm {
        --double-column-gap: calc(var(--current-column-gap) * 1);
        --df-column-gap: calc(var(--current-column-gap) * 0.5);

        max-width: calc(100% + (var(--current-column-gap) * 4)) !important;
        margin-left: calc(var(--current-column-gap) * -2) !important;
    }

    .has-half-column-gap-mobile>.container>.row,
    .has-half-column-gap-sm>.container>.row {
        margin-left: calc(var(--df-column-gap)* -1) !important;
        margin-right: calc(var(--df-column-gap)* -1) !important;
    }
}

.wp-block-columns {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: none;
    gap: 0 !important;
    width: calc(100% + var(--double-column-gap)) !important;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: calc(var(--df-column-gap) * -1) !important;
    margin-right: calc(var(--df-column-gap) * -1) !important;
    justify-content: space-between !important;
}

.wp-block-columns.is-not-stacked-on-mobile {
    flex-wrap: wrap !important;
}

.block-editor-inner-blocks {
    width: 100%;
}

[class*="col-"] .wp-block-columns {
    width: calc(100% + var(--double-column-gap)) !important;
    max-width: calc(100% + var(--double-column-gap)) !important;
}

.row>.wp-block-columns {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    flex-wrap: wrap;
}

.wp-block-column {
    flex: 1;
    margin-bottom: 10px !important;
    min-width: 0 !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
    margin-bottom: 0 !important;
    padding: 0 var(--df-column-gap) var(--df-column-gap-bottom) !important;
}

.no-padding-bottom-on-columns .wp-block-column,
.no-pd-bt-col .wp-block-column {
    padding-bottom: 0 !important;
}

.no-padding-top-on-columns .wp-block-column {
    padding-top: 0 !important;
}

@media (min-width: 1200px) {
    .wp-block-column.col-lg {
        flex: 1 !important;
    }

    .wp-block-column.col-lg-1 {
        flex: 0 0 8.333333% !important;
    }

    .wp-block-column.col-lg-2 {
        flex: 0 0 16.666667% !important;
    }

    .wp-block-column.col-lg-3 {
        flex: 0 0 25% !important;
    }

    .wp-block-column.col-lg-4 {
        flex: 0 0 33.333333% !important;
    }

    .wp-block-column.col-lg-5 {
        flex: 0 0 41.666667% !important;
    }

    .wp-block-column.col-lg-6 {
        flex: 0 0 50% !important;
    }

    .wp-block-column.col-lg-7 {
        flex: 0 0 58.333333% !important;
    }

    .wp-block-column.col-lg-8 {
        flex: 0 0 66.666667% !important;
    }

    .wp-block-column.col-lg-9 {
        flex: 0 0 75% !important;
    }

    .wp-block-column.col-lg-10 {
        flex: 0 0 83.333333% !important;
    }

    .wp-block-column.col-lg-11 {
        flex: 0 0 91.666667% !important;
    }

    .wp-block-column.col-lg-12 {
        flex: 0 0 100% !important;
    }
}

@media (min-width: 992px) {
    .wp-block-column.col-md {
        flex: 1 !important;
    }

    .wp-block-column.col-1,
    .wp-block-column.col-md-1 {
        flex: 0 0 8.333333% !important;
    }

    .wp-block-column.col-2,
    .wp-block-column.col-md-2 {
        flex: 0 0 16.666667% !important;
    }

    .wp-block-column.col-3,
    .wp-block-column.col-md-3 {
        flex: 0 0 25% !important;
    }

    .wp-block-column.col-4,
    .wp-block-column.col-md-4 {
        flex: 0 0 33.333333% !important;
    }

    .wp-block-column.col-5,
    .wp-block-column.col-md-5 {
        flex: 0 0 41.666667% !important;
    }

    .wp-block-column.col-6,
    .wp-block-column.col-md-6 {
        flex: 0 0 50% !important;
    }

    .wp-block-column.col-7,
    .wp-block-column.col-md-7 {
        flex: 0 0 58.333333% !important;
    }

    .wp-block-column.col-8,
    .wp-block-column.col-md-8 {
        flex: 0 0 66.666667% !important;
    }

    .wp-block-column.col-9,
    .wp-block-column.col-md-9 {
        flex: 0 0 75% !important;
    }

    .wp-block-column.col-10,
    .wp-block-column.col-md-10 {
        flex: 0 0 83.333333% !important;
    }

    .wp-block-column.col-11,
    .wp-block-column.col-md-11 {
        flex: 0 0 91.666667% !important;
    }

    .wp-block-column.col-12,
    .wp-block-column.col-md-12 {
        flex: 0 0 100% !important;
    }

    .wp-block-column:nth-child(odd) {
        margin-right: 0 !important;
    }

    .wp-block-column:nth-child(even) {
        margin-left: 0 !important;
    }

    .wp-block-column:not(:first-child) {
        margin-left: 0 !important;
    }

    .wp-block-column:not(:last-child) {
        margin-right: 0 !important;
    }

    .wp-block-column:last-child {
        margin-right: 0 !important;
    }

    .wp-block-column.centered-column,
    .wp-block-columns.centered-column {
        justify-self: center;
        margin-right: auto !important;
        margin-left: auto !important;
    }
}

@media (max-width: 992px) {
    .wp-block-columns {
        flex-direction: row !important;
        flex-basis: 100% !important;
    }

    .row>.wp-block-columns {
        margin: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        flex-wrap: wrap;
    }

    .wp-block-columns.is-not-stacked-on-mobile {
        flex-wrap: nowrap !important;
    }

    .wp-block-column>.wp-block-columns {
        margin: 0 calc(var(--double-column-gap) * -1) !important;
    }

    .wp-block-column,
    .wp-block-column:not(:only-child) {
        flex-basis: 100% !important;
    }

    .wp-block-column.col-lg,
    .wp-block-column.col-md,
    .wp-block-column[style*="flex-basis"] {
        flex: 1 !important;
        flex-basis: 100% !important;
    }

    .wp-block-column,
    .wp-block-column:not(:last-child),
    .wp-block-column:last-child {
        flex-shrink: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .wp-block-columns.has-1-column-mobile>.wp-block-column {
        flex-basis: 100% !important;
        margin: 0 0 !important;
    }

    .wp-block-columns.has-2-columns-mobile>.wp-block-column,
    .wp-block-columns.has-2-columns-sm>.wp-block-column,
    .wp-block-columns.has-2-columns-xs>.wp-block-column {
        flex-basis: 50% !important;
        margin: 0 0 !important;
    }

    .wp-block-columns.has-3-columns-mobile>.wp-block-column,
    .wp-block-columns.has-3-columns-sm>.wp-block-column,
    .wp-block-columns.has-3-columns-xs>.wp-block-column {
        flex-basis: 33.3333% !important;
        margin: 0 0 !important;
    }

    .wp-block-columns.has-4-columns-mobile>.wp-block-column,
    .wp-block-columns.has-4-columns-sm>.wp-block-column,
    .wp-block-columns.has-4-columns-xs>.wp-block-column {
        flex-basis: 25% !important;
        margin: 0 0 !important;
    }

    [class*="col-"]>.wp-block-columns,
    .container>.wp-block-columns,
    .wp-block-columns.has-1-column-mobile {
        width: calc(100% + var(--double-column-gap)) !important;
        max-width: calc(100% + var(--double-column-gap)) !important;
        margin: 0 0 0 calc(var(--df-column-gap) * -1) !important;
    }

    .wp-block-column.col-12,
    .wp-block-column.col-lg-12,
    .wp-block-column.col-md-12 {
        flex: 0 0 100% !important;
    }

    .wp-block-column.centered-column {
        justify-self: center;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .wp-block-column>.wp-block-columns {
        width: calc(100% + var(--double-column-gap)) !important;
        max-width: calc(100% + var(--double-column-gap)) !important;
        margin-left: calc(var(--df-column-gap) * -1) !important;
    }

    /* Scrollable Column */
    .wp-block-columns.scrollable-on-mobile {
        --scrollable-column-width: 75%;

        flex-wrap: nowrap !important;
        flex-direction: row !important;
        flex-basis: 100% !important;
        overflow: auto !important;
    }

    .wp-block-columns.scrollable-on-mobile>.wp-block-column {
        flex-basis: var(--scrollable-column-width) !important;
        margin: 0 0 !important;
    }

    .wp-block-columns.scrollable-on-mobile>.wp-block-column:last-child {
        margin-right: calc((var(--scrollable-column-width) - 100%) / 2) !important;
    }
}

@media (max-width: 599px) {

    .wp-block-columns.has-2-columns-sm>.wp-block-column,
    .wp-block-columns.has-3-columns-sm>.wp-block-column {
        flex-basis: 100% !important;
        margin: 0 0 !important;
    }

    .wp-block-columns.has-2-columns-xs>.wp-block-column {
        flex-basis: 50% !important;
        margin: 0 0 !important;
    }

    .wp-block-columns.has-3-columns-xs>.wp-block-column {
        flex-basis: 33.3333% !important;
        margin: 0 0 !important;
    }

    .wp-block-columns.has-4-columns-xs>.wp-block-column {
        flex-basis: 25% !important;
        margin: 0 0 !important;
    }

    [class*="col-"]>.wp-block-columns {
        width: calc(100% + var(--double-column-gap)) !important;
        max-width: calc(100% + var(--double-column-gap)) !important;
        margin: 0 0 0 calc(var(--df-column-gap) * -1) !important;
    }
}

@media (max-width: 360px) {
    .wp-block-columns.has-1-columns-xxs>.wp-block-column {
        flex-basis: 100% !important;
        margin: 0 0 !important;
    }

    .wp-block-columns.has-2-columns-xxs>.wp-block-column {
        flex-basis: 50% !important;
        margin: 0 0 !important;
    }

    .wp-block-columns.has-3-columns-xxs>.wp-block-column {
        flex-basis: 33.3333% !important;
        margin: 0 0 !important;
    }

    .wp-block-columns.has-4-columns-xxs>.wp-block-column {
        flex-basis: 25% !important;
        margin: 0 0 !important;
    }
}

/* ## Elements ## */

/* Embedded iframe */
.wp-block-embed {
    margin: var(--df-margin-unit) 0;
}

.wp-block-embed iframe {
    background: transparent;
    width: 100%;
}

.wp-embed-aspect-16-9 iframe {
    height: auto;
    aspect-ratio: 16 / 9;
}

.wp-block-embed__wrapper>* {
    margin-left: auto;
    margin-right: auto;
}

/* Block Images */
.wp-block-image {
    flex-basis: 100%;
    margin-bottom: 2rem;
}

.wp-block-image.aligncenter {
    margin-left: auto;
    margin-right: auto;
}

.wp-block-image img {
    height: auto;
}

.front .lightbox-trigger,
.front .wp-lightbox-overlay {
    display: none;
}

/* Tables */
.wp-block-table table {
    table-layout: fixed;
}

/* Helpers */
.editor-only {
    display: none;
}

.editor-styles-wrapper .editor-only {
    display: block;
}