body {
    overflow: unset;
}

section {
    overflow-x: hidden;
}

/* Our Solution CSS */
.our-solution {
    padding: 100px 0;
    overflow-x: clip;
}

.our-solution [class*="container-"] {
    position: relative;
}

.our-solution [class*="container-"]::before,
.testimonials .container::before,
.testimonials .container::after {
    display: inline-block;
    cursor: pointer;
    -webkit-mask-image: var(--svg);
    mask-image: var(--svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
}

.our-solution [class*="container-"]::before {
    content: '';
    --svg: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="278" height="314" viewBox="0 0 278 314" fill="none"><path d="M128.699 3.6795C134.887 0.106841 142.511 0.106837 148.699 3.67949L266.397 71.6325C272.585 75.2051 276.397 81.8077 276.397 88.953V224.859C276.397 232.004 272.585 238.607 266.397 242.18L148.699 310.133C142.511 313.705 134.887 313.705 128.699 310.133L11.0012 242.18C4.81314 238.607 1.00117 232.004 1.00117 224.859V88.953C1.00117 81.8077 4.81315 75.2051 11.0012 71.6325L128.699 3.6795Z" stroke="%2300AEA9" stroke-width="2"/></svg>');
    background-color: #00AEA9;
    width: 278px;
    height: 314px;
    position: absolute;
    top: -70px;
    left: -270px;
    transform: rotate(90deg);
}

.our-solution [class*="container-"]:after {
    content: '';
    background: url(../images/dash-circle.svg);
    position: absolute;
    top: 210px;
    right: -160px;
    width: 145px;
    height: 128px;
    transform: rotate(-18.934deg);
    background-size: cover;
    z-index: -1;
}

.our-solution img {
    width: 100%;
    position: sticky;
    top: 120px;
    border-radius: 20px;
}

.content-area {
    padding-left: 70px;
}

/* Icon Boxes CSS */
.icon-boxes {
    padding: 0 0 100px;
}

.icon-boxes .data-block svg {
    margin-bottom: 20px;
}

.icon-boxes .special-projects-bottom-row .data-block p {
    max-width: 100%;
}

/* Testimonials CSS */
.testimonials {
    padding: 150px 0;
    background: #EEF7FF;
    overflow: hidden;
}

.testimonials .container {
    position: relative;
}

.testimonials .container::before {
    content: '';
    background: url(../images/dash-circle.svg);
    position: absolute;
    bottom: -100px;
    left: -390px;
    width: 145px;
    height: 128px;
    background-size: cover;
}

.testimonials .container:after {
    content: '';
    background: url(../images/dash-circle.svg);
    position: absolute;
    top: -100px;
    right: -445px;
    width: 240px;
    height: 212px;
    background-size: cover;
    transform: rotate(-27.94deg);
}

.inner-slider {
    /* max-width: 775px; */
    margin: 0 auto;
    text-align: center;
    position: relative;
    padding: 0 207px;
}

.testimonials .swiper:before,
.testimonials .swiper:after {
    position: absolute;
    top: 30%;
    left: 50px;
    background: url(../images/quote.svg) no-repeat 0 0;
    width: 87px;
    height: 65px;
    content: "";
}

.testimonials .swiper:after {
    transform: rotate(180deg);
    left: auto;
    right: 50px;
}

.inner p {
    position: relative;
}

.inner-slider span {
    font-weight: 700;
    font-family: 'DM_Sans';
}

.icon-boxes .container-fluid>p:last-child {
    margin-bottom: 0;
}

.icon-boxes .container-fluid>p {
    margin-top: 50px;
}

@media screen and (max-width: 1799px) {
    .our-solution [class*="container-"]:after {
        right: -70px;
    }

    .our-solution [class*="container-"]::before {
        left: -170px;
        width: 222px;
        height: 251px;
    }

    .testimonials .container::before {
        left: -200px;
    }

    .testimonials .container:after {
        width: 192px;
        height: 170px;
        right: -230px;
    }
}

@media screen and (max-width: 1499px) {
    .our-solution {
        padding: 80px 0;
    }

    .icon-boxes {
        padding: 0 0 80px;
    }

    .testimonials {
        padding: 100px 0;
    }

    .testimonials .container::before {
        left: -60px;
        bottom: -60px;
    }

    .testimonials .container:after {
        right: -130px;
        top: -60px;
    }

    .content-area {
        padding-left: 30px;
    }

    .icon-boxes .data-block svg {
        max-width: 70px;
        height: auto;
    }

    .icon-boxes .container-fluid>p {
        margin-top: 30px;
    }
}

@media screen and (max-width: 1199px) {
    .our-solution img {
        width: auto;
        max-width: 100%;
        margin: 0 auto;
        display: block;
    }

    .content-area {
        padding-top: 30px;
        padding-left: 0;
    }

    .inner-slider {
        padding: 0 170px;
    }
}

@media screen and (max-width: 991px) {
    .our-solution {
        padding: 80px 0;
    }

    .content-area {
        padding: 50px 0 0;
    }

    .our-solution {
        padding: 60px 0;
    }

    .icon-boxes {
        padding: 0 0 60px;
    }

    .testimonials .swiper:before,
    .testimonials .swiper:after {
        width: 65px;
        height: 65px;
        content: "";
        background-size: 60px;
        left: 0;
    }

    .testimonials .swiper:after {
        right: 0;
        left: auto;
    }

    .content-area {
        padding-left: 0;
    }

    .testimonials {
        padding: 60px 0;
    }

    .inner-slider {
        padding: 0 90px;
    }

    .testimonials {
        padding: 70px 0;
    }
}

@media screen and (max-width: 767px) {
    .our-solution [class*="container-"]::before {
        left: -80px;
        width: 125px;
        height: 141px;
        top: -40px;
    }

    .our-solution [class*="container-"]:after {
        width: 116px;
        height: 102px;
        right: -70px;
        top: 230px;
    }

    .icon-boxes .data-block svg {
        max-width: 60px;
    }

    .testimonials .container:after {
        width: 108px;
        height: 95px;
        right: -50px;
        top: -30px;
    }

    .testimonials .container::before {
        left: -70px;
        bottom: -40px;
        width: 116px;
        height: 102px;
    }
}

@media screen and (max-width: 767px) {
    .our-solution {
        padding: 50px 0;
    }

    .icon-boxes {
        padding: 0 0 50px;
    }

    .testimonials .swiper:before {
        top: 0;
    }

    .testimonials .swiper:after {
        top: auto;
        bottom: 0;
    }

    .inner-slider {
        padding: 50px 0 0;
    }

    .testimonials {
        padding: 50px 0;
    }
}