/* --------------------------------- HELPER CLASSES --------------------------------- */

/* --------------------------------- Text --------------------------------- */

/* section text small */

.section-text-small {
    color: #A3A3A3;
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 24px;
}

.section-text-small ul li + li {
    margin-top: 24px;
}

.text-medium b, .text-medium strong {
    font-weight: 500;
}

.list-styled {
    list-style: none;
    padding-left: 0 !important;
}

.list-styled li {
    overflow: hidden;
    position: relative;
    padding-left: 51px;
}

.list-styled li::before {
    content: "";
    position: absolute;
    top: 13px;
    left: 0;
    width: 13px;
    height: 13px;
    background: #2E57C4;
    border-radius: 50%;
}

.list-styled li + li {
    margin-top: 20px;
}

.infobox {
    position: relative;
}

.infobox h3 {
    text-align: left;
    font-size: 24px;
    line-height: 43px;
}

.infobox .wpb_content_element {
    margin-bottom: 0;
}

.infobox .wpb_content_element > .wpb_wrapper p {
    margin-bottom: 35px !important;
}

.infobox > .vc_column_container > .vc_column-inner > .wpb_wrapper img {
    margin-top: -28px;
    margin-bottom: 0;
}

@media (min-width: 768px) {
    .infobox > .vc_column_container > .vc_column-inner > .wpb_wrapper {
        padding: 58px 90px;
        background: #F8F8F8;
        border-radius: 10px;
    }

    .infobox > .vc_column_container > .vc_column-inner > .wpb_wrapper img {
        display: none;
    }

    .infobox .wpb_content_element > .wpb_wrapper p:last-child {
        margin-bottom: 0 !important;
    }

    .infobox-with-dots::before {
        content: "";
        position: absolute;
        z-index: -1;
        top: -63px;
        right: -45px;
        -webkit-transform: scale(-1);
        -ms-transform: scale(-1);
        transform: scale(-1);
        margin: 0 !important;
        width: 107px;
        height: 140px;
        background: url("/wp-content/uploads/2021/05/kropeczki.svg") no-repeat;
    }
}

.infobox-sm > .vc_column_container > .vc_column-inner > .wpb_wrapper {
    margin-top: 20px;
    padding: 33px 58px;
    color: #2E57C4;
    font-size: 24px;
    line-height: 38px;
    border-radius: 10px;
}

.infobox-lightblue > .vc_column_container > .vc_column-inner > .wpb_wrapper {
    background: #EFF4F9;
}

@media (max-width: 767px) {
    .infobox-sm > .vc_column_container > .vc_column-inner > .wpb_wrapper {
        margin-top: 0;
        padding: 28px;
        font-size: 18px;
        line-height: 29px;
    }

    .infobox-sm .text-large {
        font-size: 18px;
        line-height: 29px;
    }
}

@media (min-width: 1200px) {
    .text-large {
        font-size: 24px;
        line-height: 43px;
    }

    .text-medium {
        font-size: 22px;
        line-height: 40px;
    }

    .text-medium-sm {
        font-size: 20px;
        line-height: 180%;
    }

    .text-large p:not(.mb-0) {
        margin-bottom: 55px !important;
    }
}

@media (max-width: 1199px) {
    .text-large {
        font-size: 20px;
        line-height: 36px;
    }

    .list-styled li {
        padding-left: 33px;
    }

    .list-styled li::before {
        width: 10px;
        height: 10px;
        top: 8px;
    }
}

@media (max-width: 767px) {
    .infobox h3 {
        font-size: 22px;
        line-height: 39px;
    }

    .infobox-mobile > .vc_column_container > .vc_column-inner > .wpb_wrapper {
        padding: 50px 25px;
        background: #F8F8F8;
    }

    .infobox .wpb_content_element > .wpb_wrapper p:last-child {
        margin-bottom: 0 !important;
    }
}

@media (max-width: 575px) {
    .infobox-mobile > .vc_column_container > .vc_column-inner {
        padding-left: 0;
        padding-right: 0;
    }
}



/* --------------------------------- Grid --------------------------------- */

.padding-left-0 > .vc_column-inner {
    padding-left: 0 !important;
}

.padding-right-0 > .vc_column-inner {
    padding-right: 0 !important;
}

@media (min-width: 768px) {
    .padding-left-xxl .vc_column-inner {
        padding-left: 45px !important;
    }
    .padding-right-xxl .vc_column-inner {
        padding-right: 45px !important;
    }

    .columns-gap-lg.vc_row {
        margin-left: -25px;
        margin-right: -25px;
    }

    .columns-gap-lg.vc_row > .vc_column_container > .vc_column-inner {
        padding-left: 25px;
        padding-right: 25px;
    }

    .columns-gap-md.vc_row {
        margin-left: -20px;
        margin-right: -20px;
    }

    .columns-gap-md.vc_row > .vc_column_container > .vc_column-inner {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media (min-width: 991px) {
    .padding-left-xxl .vc_column-inner {
        padding-left: 65px !important;
    }
    .padding-right-xxl .vc_column-inner {
        padding-right: 65px !important;
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1170px;
    }

    .padding-left-lg .vc_column-inner {
        padding-left: 67px !important;
    }
    .padding-right-lg .vc_column-inner {
        padding-right: 67px !important;
    }

    .padding-left-xl .vc_column-inner {
        padding-left: 81px !important;
    }
    .padding-right-xl .vc_column-inner {
        padding-right: 81px !important;
    }

    .padding-left-xxl .vc_column-inner {
        padding-left: 95px;
    }
    .padding-right-xxl .vc_column-inner {
        padding-right: 95px;
    }

    .columns-gap-lg.vc_row {
        margin-left: -50px;
        margin-right: -50px;
    }

    .columns-gap-lg.vc_row > .vc_column_container > .vc_column-inner {
        padding-left: 50px;
        padding-right: 50px;
    }

    .columns-gap-md.vc_row {
        margin-left: -40px;
        margin-right: -40px;
    }

    .columns-gap-md.vc_row > .vc_column_container > .vc_column-inner {
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media (max-width: 991px) {
    .vc_rtl-columns-reverse:not(.breakpoint-767) {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

@media (max-width: 767px) {
    .vc_rtl-columns-reverse.breakpoint-767 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}


/* --------------------------------- Display --------------------------------- */

@media (min-width: 768px) {
    .hide-on-desktop {
        display: none !important;
    }
}

@media (min-width: 992px) {
    .hide-desktop {
        display: none;
    }
}

@media (max-width: 991px) {
    .hide-mobile {
        display: none;
    }
}

@media (max-width: 767px) {
    .hide-on-mobile {
        display: none !important;
    }
}



/* --------------------------------- Counters --------------------------------- */

.counter-title {
    counter-reset: section;
}

.counter-title h3 {
    position: relative;
    padding-left: 43px;
    text-align: left;
}

.counter-title h3::before {
    counter-increment: section;
    content: counter(section);
    position: absolute;
    top: 7px;
    left: 0;
    width: 23px;
    height: 23px;
    background: #2E57C4;
    border-radius: 50%;
    font-family: Rubik;
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 25px;
    color: #FFFFFF;
    text-align: center;
}

@media (min-width: 768px) {
    .counter-title ul li + li {
        margin-top: 24px;
    }
}