/*********************************************
 * Column Padding
**********************************************/
/* Column spacing, revert to VC spacing for screen smaller 1024px */
@media only screen and (min-width:1025px) {
    .main_content .vc_row {margin-left:calc(var(--bb-gap-vc-column) * -1); margin-right:calc(var(--bb-gap-vc-column) * -1);}
    .main_content .vc_column_container > .vc_column-inner {padding-left:var(--bb-gap-vc-column); padding-right:var(--bb-gap-vc-column);}
    .main_content .vc_row.vc_row-no-padding .vc_column-inner {padding-left:0; padding-right:0;}
}


/*********************************************
 * Padding Top (Row has fill)
**********************************************/
/* Spacing: Visual Composer */
.main_content .wpb_content_element {margin-bottom:var(--bb-spacing-default);}
.main_content .vc_col-has-fill > .vc_column-inner,
.main_content .vc_row-has-fill + .vc_row-full-width + .vc_row > .vc_column_container > .vc_column-inner,
.main_content .vc_row-has-fill + .vc_row > .vc_column_container > .vc_column-inner,
.main_content .vc_row-has-fill > .vc_column_container > .vc_column-inner {
    padding-top:var(--bb-spacing-default);
}

/* Row has fill > one col 767 > only the first col has padding top */
@media only screen and (max-width:767px) {
    .main_content .vc_row-has-fill + .vc_row-full-width + .vc_row > .vc_column_container:not(:first-child) > .vc_column-inner,
    .main_content .vc_row-has-fill > .vc_column_container:not(:first-child) > .vc_column-inner {padding-top:0;}
}

/* Option to clear padding top: no-padding-top */
.vc_row.no-padding-top > .vc_column_container > .vc_column-inner {padding-top:0 !important;}

/* clear padding-top of the next row, use custom bottom spacing instead */
.main_content .vc_row-has-fill.bb-row-bg-color + .vc_row-full-width + .vc_row:not(.bb-row-bg-color) > .vc_column_container > .vc_column-inner {padding-top:0;}


/*********************************************
 * Row container
**********************************************/
.bb-row-container {padding-left:0; padding-right:0;}
@media only screen and (min-width:1025px) {
    .bb-row-container > .vc_row {padding-right:var(--bb-gap-container); padding-left:var(--bb-gap-container);}
}

/*********************************************
 * Row container 1280
**********************************************/
@media only screen and (min-width:1025px) {
    .vc_row.bb-row-1280 {
        margin-left:calc(-1 * var(--bb-gap-side) - 0.5px); margin-right:calc(-1 * var(--bb-gap-side));
        padding:0 clamp(var(--bb-gap-container), calc(var(--bb-gap-side) - 92px - var(--bb-gap-vc-column)), 80vw);
    }
    .vc_row.bb-row-1280.left {
        padding-left:calc(var(--bb-gap-side) - var(--bb-gap-vc-column));
    }
    .vc_row.bb-row-1280.left .wpb_single_image.vc_align_right {margin-left:auto;}

    /* fullwidth */
    .vc_row.bb-row-1280 .bb-full-width {
        margin-left:calc(-1 * clamp(var(--bb-gap-container), calc(var(--bb-100vw)/2 - 640px), 50vw) - .5px);
        margin-right:calc(-1 * clamp(var(--bb-gap-container), calc(var(--bb-100vw)/2 - 640px), 50vw));
    }
    .vc_row.bb-row-1280.left .bb-full-width {
        margin-left:calc(-1 * clamp(var(--bb-gap-container), calc(var(--bb-100vw)/2 - 640px), 50vw) - 92.5px);
    }
}

/*********************************************
 * Text block container
**********************************************/
.bb-text-block-container {padding-left:0; padding-right:0;}
@media only screen and (min-width:1025px) {
    .bb-text-block-container > .wpb_wrapper {padding-right:var(--bb-gap-container); padding-left:var(--bb-gap-container);}
}


/*********************************************
 * Row reverse columns on mobile
**********************************************/
@media only screen and (max-width:767px) {
    .vc_row.bb-reverse-col-mobile {
        display:flex;
        flex-direction:column-reverse;
    }
}