/* Section Title */
.section-title {
    font-size: 1.1429em;
    line-height: 1.4;
    font-weight: $font-weight-bold;
    text-transform: uppercase;
    margin-bottom: 1.25em;
    letter-spacing: normal;
}

/* Section Featured */
.section {
    margin-top: 30px;
    margin-bottom: 30px;
    padding: 50px 0;

    &.section-center {
        text-align: center;
    }

    &.section-text-light {
        color: #fff;
        h1, h2, h3, h4, h5, h6 {
            color: #fff;
        }

        p {
            color: darken(#fff, 10%);
        }
    }

    &.section-background {
        background-repeat: repeat;
        border: 0;
    }

    &.section-overlay {
        position: relative;
        &:before {
            content: "";
            display: block;
            background: url("../images/video-overlay.png") repeat scroll 0 0 transparent;
            bottom: 0;
            height: 100%;
            left: 0;
            position: absolute;
            right: 0;
            top: 0;
            width: 100%;
        }
    }

    &.section-video {
        background: none !important;
        border: 0;
    }

    &.section-parallax {
        background-color: transparent;
        border: 0;
    }

    &.section-with-divider {
        margin: 56px 0 35px;
        .section-divider {
            margin: -56px 0 44px;
        }
    }

    &.section-with-divider-footer {
        margin: 35px 0 56px;
        position: relative;
        .section-divider {
            margin: 44px 0 -56px;
        }
    }

    &.section-footer {
        margin-bottom: -50px;
    }

    .porto-section:last-child {
        > div > *:last-child {
            margin-bottom: 0;
        }
    }

    &.section-no-borders {
        border-width: 0;
    }
}

.vc_row,
.vc_column_container {
    &.section {
        &.section-with-divider {
            .section-divider {
                position: absolute;
                #{$left}: 0;
                width: 100%;
                top: 50px;
            }
        }

        &.section-with-divider-footer {
            .section-divider {
                position: absolute;
                #{$left}: 0;
                width: 100%;
                bottom: 55px;
            }
        }
    }
}

@media (min-width: 768px) {
    .vc_row-o-full-height > .container > .row,
    .vc_row-o-equal-height > .container > .row > .vc_column_container > .vc_column-inner {
        height: 100%;
    }
}
.vc_row-o-columns-middle > .container > .row {
    -ms-flex-align: center;
    align-items: center;
}

.vc_column_container.section {
    margin: 0;
    padding: 50px var(--porto-column-spacing, 15px);
}

.vc_row.section > .vc_column_container,
.vc_row.section > .porto-container > .vc_row > .vc_column_container,
.vc_column_container.section {
    .wpb_wrapper {
        > div:last-child {
            margin-bottom: 0;
        }
    }
}

.porto-section {
    position: relative;
    /*z-index: 0;*/
    padding-top: 50px;
    padding-bottom: 50px
}
.porto-section.vc_section {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0
}

.section-parallax > .parallax-background {
    z-index: 0;
}

.section-parallax > * {
    position: relative;
    z-index: 1;
}

.section-with-shape-divider {
    position: relative;
    overflow: hidden;
    .shape-divider {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 80px;
        z-index: 1;
        svg {
            position: absolute;
            width: 100%;
            top: 0;
            left: 50%;
            height: 100%;
            transform: translate3d(-50%, 0, 0);
        }
        &.shape-divider-bottom {
            top: auto;
            bottom: 0;
        }
        &.shape-divider-reverse-x {
            transform: rotateX(180deg);
        }
        &.shape-divider-reverse-y {
            transform: rotateY(180deg);
        }
        &.shape-divider-reverse-xy {
            transform: rotateY(180deg) rotateX(180deg);
        }
    }
}

@media (min-width: 1921px) {
    .section-with-shape-divider .shape-divider svg {
        width: 100%;
    }
}

.row.no-padding > .vc_column_container.section {
    padding-left: var(--porto-res-spacing, 15px);
    padding-right: var(--porto-res-spacing, 15px);
    .col-half-section {
        padding-left: 0;
        padding-right: 0
    }
}


/* half container */
.col-half-section {
    width: 100%;
    min-height: 1px;
    position: relative;
    max-width: calc(var(--porto-container-width) / 2 - var(--porto-grid-gutter-width));
    .elementor-column & {
        max-width: calc(var(--porto-container-width) / 2);
    }
}

.col-half-section-right {
    @if $rtl == 1 {
        justify-self: flex-start;
    }
    @else {
        justify-self: flex-end;
    }
    margin-left: auto
}

.row.no-padding .col-half-section,
.elementor-column-gap-no .col-half-section {
    padding-left: var(--porto-res-spacing, 15px);
    padding-right: var(--porto-res-spacing, 15px);
}

@media (min-width: 992px) {
    .row.no-padding .col-half-section {
        max-width: calc(var(--porto-container-width) / 2);
    }
    .row.no-padding > .section .col-half-section {
        max-width: calc(var(--porto-container-width) / 2 - var(--porto-grid-gutter-width));
    }
}

@media #{$screen-normal} {
    .col-half-section {
        max-width: 360px;
    }
    .col-half-section.col-fullwidth-md {
        max-width: 720px;
        margin-left: auto;
        margin-right: auto;
        justify-self: auto
    }
}
@media #{$screen-medium} {
    .col-half-section {
        max-width: 540px;
        margin-left: auto;
        margin-right: auto;
        justify-self: auto
    }
}