
.service-wrapper {
    padding: 0 60px;

    @include breakpoint (max-xxl){
        padding: 0;
    }

    .service-card-items {
        margin-top: 30px !important;
        display: flex;
        background-color: $white;
        position: relative;

        br {
            @include breakpoint (max-lg){
                display: none;
            }
        }
    
        .service-content {
            padding: 50px 45px;
            background-color: $white;
            flex-basis: 70%;
            position: relative;
    
            .icon {
                font-size: 70px;
                color: $theme-color;
            }
    
            .content {
                position: absolute;
                bottom: 50px;
                left: 45px;

                @include breakpoint (max-lg){
                   left: 30px;
                }

                @include breakpoint (max-md){
                    left: 50px;
                 }

                @include breakpoint (max-sm){
                    left: 30px;
                }
                
                h4 {
                    color: $theme-color;
                    margin-bottom: 10px;

                    @include breakpoint (max-sm){
                        font-size: 20px;
                    }
                }
    
                h3 {
                    margin-bottom: 10px;
                    text-transform: uppercase;

                    @include breakpoint (max-lg){
                        font-size: 20px;
                    }

                    @include breakpoint (max-md){
                        font-size: 24px;
                    }

                    @include breakpoint (max-sm){
                        font-size: 20px;
                    }
    
                    a {
                        &:hover {
                            color: $theme-color;
                        }
                    }
                }
            }
        }
    
        .service-image {
            width: 260px;
            height: 570px;
            position: relative;

            @include breakpoint (max-lg){
               height: 480px;
            }

            @include breakpoint (max-sm){
                height: 400px;
            }
    
            .arrow-icon {
                width: 65px;
                height: 135px;
                border-radius: 30px;
                background-color: $bg-color;
                display: inline-block;
                text-align: center;
                line-height: 135px;
                position: absolute;
                top: 50%;
                left: -16%;
                transform: translateY(-50%);
                @include transition;
    
                i {
                    transform: rotate(-30deg);
                    color: $header-color;
                    @include transition;
                }

                @include breakpoint (max-sm){
                   width: 50px;
                   height: 100px;
                   line-height: 100px;
                }
    
                &:hover {
                    background-color: $theme-color;
    
                    i {
                        color: $white;
                        transform: rotate(-0deg);
                    }
                }
            }
        }
    }

    .service-carousel-active {
        .slick-slide {
          margin: 0 15px;
        }
      
        .slide-dots{
            text-align: center;
            
            li {
    
            display: inline-block;
            margin: 0px 3px;
            padding-top: 50px;
    
            button {
                position: relative;
                text-indent: -9999px;
                border-radius: 32px;
                width: 65px;
                height: 5px;
                background-color: $white;
                transition: all .3s ease-in-out;
    
                &:hover {
                    background-color: $theme-color;
                }
            }
            &.slick-active{
                button{
                    background-color: $theme-color;
                    border-color: $theme-color;
                }
            }
            }
        }
    
        .slick-list {
            margin: 0 -15px;
        }
    }
}

.service-section {
    position: relative;

    .shape-image {
        position: absolute;
        left: 0;
        top: 0;
    }

    .left-shape {
        position: absolute;
        top: 0;
        left: 0;
    }

    .right-shape {
        position: absolute;
        bottom: 0;
        right: 0;
    }

    .line-shape-2 {
        position: absolute;
        left: 0;
        bottom: 8%;
    }

    .bottom-shape {
        position: absolute;
        bottom: 0;
        right: 0;
    }
}

.service-section-2 {
    position: relative;

    &::before {
        @include before;
        background-color: $bg-color-5;
        z-index: -1;
        top: 68%;
    }
}

.service-box-items {
    position: relative;
    margin-top: 30px;
    background-color: $white;
    box-shadow: $shadow;
    padding: 45px 35px;
    z-index: 9;
    overflow: hidden;

    @include breakpoint (max-sm){
        padding: 30px 25px;
        text-align: center;
    }

    &::before {
        @include before;
        background-color: $theme-color;
        transform: scale(1, 0);
        transition: transform 500ms ease;
        transform-origin: bottom center;
        z-index: -1;
    }

    &::after {
        position: absolute;
        bottom: -50px;
        left: 0;
        right: 0;
        width: 100%;
        height: 320px;
        content: "";
        background-repeat: no-repeat;
        background-size: cover;
        background-image: url(../../assets/img/service/line-shape.png);
        z-index: -1;
        visibility: hidden;
        opacity: 0;
        @include transition;
    }

    .icon {
        position: relative;
        @include transition;
        display: inline-block;
        font-size: 60px;
        color: $theme-color;

        &::before {
            position: absolute;
            bottom: -20px;
            left: 0;
            width: 46px;
            height: 46px;
            border-radius: 50%;
            background: rgba(8, 106, 216, 0.08);
            content: "";
        }
    }

    .content {
        margin-top: 40px;

        @include breakpoint (max-md){
            margin-top: 30px;;
        }

        @include breakpoint (max-sm){
            margin-top: 20px;;
        }

        h3 {
            margin-bottom: 20px;
            font-size: 21px;

            @include breakpoint (max-sm){
               margin-bottom: 10px;
            }
        }
    }

    .arrow-icon {
        transform: rotate(-50deg);
        display: inline-block;
        color: $theme-color;
        margin-top: 50px;
        @include transition;

        @include breakpoint (max-md){
            margin-top: 30px;
        }

        @include breakpoint (max-sm){
            margin-top: 20px;
        }
    }

    &:hover {
       &::before {
            transform: scale(1, 1);
            transform-origin: top center;
       }

       &::after {
            bottom: 0;
            visibility: visible;
            opacity: 1;
       }

       .icon {
            color: $white;
            transform: scaleX(-1);
       }

       .content {
            h3 {

                a {
                    color: $white;
                }
            }

            p {
                color: $white;
            }
       }

       .arrow-icon {
            color: $white;
            transform: initial;
       }
    }

    &.active {
        &::before {
             transform: scale(1, 1);
             transform-origin: top center;
        }
 
        &::after {
             bottom: 0;
             visibility: visible;
             opacity: 1;
        }
 
        .icon {
            color: $white;
        }
 
        .content {
             h3 {
 
                 a {
                     color: $white;
                 }
             }
 
             p {
                 color: $white;
             }
        }
 
        .arrow-icon {
             color: $white;
             transform: initial;
        }
    }

    &.style-2 {
        text-align: center;
        margin: 0 auto;
        padding: 50px 20px;
        width: 100%;

        &::before {
            background-color: $theme-color-2;
        }

        &::after {
            position: absolute;
            bottom: -50px;
            left: 5px;
            width: 12px;
            height: 12px;
            content: "";
            background-repeat: initial;
            background-size: initial;
            background-image: initial;
            background: rgba(255, 255, 255, 0.23);
        }

        .icon {
            font-size: 70px;
            color: $theme-color-2;
        }

        .content {
            h6 {
                font-weight: bold;
            }
        }

        &:hover {
            &::after {
                bottom: 5px;
            }
     
            .icon {
                color: $white;
            }
     
            .content {
                 h6 {
     
                     a {
                         color: $white;
                     }
                 }
            }
     
        }

        &.active {
            &::after {
                bottom: 5px;
            }
     
            .icon {
                color: $white;
            }
     
            .content {
                 h6 {
     
                     a {
                         color: $white;
                     }
                 }
            }
     
        }
    }
}

.service-wrapper-2 {
    .service-content {
        position: relative;
        z-index: 9;

        @include breakpoint (max-sm){
            text-align: center;
        }

        .service-button {
            margin-top: 40px;
        }
    }

    .service-box-items-2 {
        background-color: $white;
        box-shadow: $shadow;
        border-radius: 10px;
        padding: 35px 50px;
        border: 2px solid transparent;
        @include transition;
        position: relative;
        z-index: 9;

        @include breakpoint (max-xl){
            padding: 35px 40px;
        }

        @include breakpoint (max-xl){
            padding: 30px;
        }

        @include breakpoint (max-lg){
            padding: 35px 50px;
        }

        @include breakpoint (max-sm){
            text-align: center;
            padding: 30px;
        }

        .icon {
            font-size: 50px;
            color: $theme-color;
            margin-bottom: 30px;
            @include transition;
            display: inline-block;

            @include breakpoint (max-sm){
                margin-bottom: 20px;
            }
        }

        .content {
            h3 {
                margin-bottom: 10px;

                a {
                    &:hover {
                        color: $theme-color;
                    }
                }
            }
        }

        &:hover {
            border: 2px solid $theme-color;

            .icon {
                transform: scaleX(-1);
            }
        }

        &.active {
            border: 2px solid $theme-color;
        }
    }
}

.service-counter-section {
    position: relative;

    &::before {
        @include before;
        background-color: $bg-color-6;
        z-index: -1;
        top: 55%;
    }
}

.service-counter-wrapper {
    background-color: $theme-color;
    padding: 85px;

    @include breakpoint (max-xl){
      padding: 50px 35px;
    }

    @include breakpoint (max-lg){
        padding: 85px;
    }

    @include breakpoint (max-sm){
        padding: 40px 30px;
    }

    .service-counter-content {

        @include breakpoint (max-lg){
            text-align: center;
            margin: 0 auto;
        }

    }

    .service-counter-items {
        text-align: center;
        position: relative;
        z-index: 9;
        padding-bottom: 50px;
        overflow: hidden;

        &::before {
            @include before;
            background: #1974DA;
            border-radius: 9px;
            z-index: -1;
            top: -50px;
            height: initial;
            @include transition;
            visibility: hidden;
            opacity: 0;
        }

        .icon {
            width: 100px;
            height: 100px;
            line-height: 105px;
            border-radius: 50%;
            text-align: center;
            background-color: $white;
            font-size: 50px;
            color: $theme-color;
            text-align: center;
            margin: 40px auto;
            @include transition;

            @include breakpoint (max-sm){
                font-size: 38px;
                width: 85px;
                height: 85px;
                line-height: 100px;
                margin: 30px auto;
            }
        }

        .content {
            h2 {
                font-size: 55px;
                color: $white;

                @include breakpoint (max-xxl){
                   font-size: 42px;
                } 
                
                @include breakpoint (max-lg){
                    font-size: 55px;
                } 
                
                @include breakpoint (max-sm){
                    font-size: 42px;
                }  
            }

            p {
                color: $white;
                font-size: 18px;
                margin-top: 20px;

                @include breakpoint (max-sm){
                   margin-top: 0;
                }   
            }
        }

        &:hover {
            &::before {
                top: 20%;
                visibility: visible;
                opacity: 1;
            }

            .icon {
                transform: scaleX(-1);
            }
        }

        &.active {
            &::before {
                top: 20%;
                visibility: visible;
                opacity: 1;
            }
        }
    }
}

.service-wrapper-3 {
    @include flex;
    justify-content: space-between;
    width: 100%;
    gap: 25px;
    margin-top: 30px;

    @include breakpoint (max-xxl){
        flex-wrap: wrap;
    }
}

.service-text-area {
    .link-btn-2 {
        span {
            color: $theme-color-2;
            background-size: 100% 1px;
       }
    }
}

.service-details-wrapper {
    .service-details-items {
        .details-image {
            img {
                @include imgw;
            }
        }

        .details-content {
            margin-top: 30px;

            @include breakpoint (max-sm){
                margin-top: 20px;
            }

            h3 {
                font-size: 28px;
                margin-bottom: 15px;

                @include breakpoint (max-sm){
                    font-size: 22px;
                }
            }

            h4 {
                margin-bottom: 15px;
                margin-top: 40px;

                @include breakpoint (max-md){
                   margin-top: 30px;
                }

                @include breakpoint (max-sm){
                    margin-top: 20px;
                 }
            }

            .service-details-video {
                margin-top: 30px;
                margin-bottom: 40px;

                @include breakpoint (max-sm){
                    margin-top: 25px;
                    margin-bottom: 30px;
                 }

                @include breakpoint (max-sm){
                    margin-bottom: 20px;
                    margin-top: 20px;
                }

                .details-video-content {
                    ul {
                        margin-top: 20px;

                        li {
                            &:not(:last-child){
                                margin-bottom: 10px;
                            }

                            i {
                                color: $theme-color;
                                margin-right: 5px;
                            }
                        }
                    }
                }

                .video-image {
                    position: relative;

                    img {
                        @include imgw;
                    }

                    .video-box {
                        position: absolute;
                        top: 50%;
                        left: 50%;
                        transform: translate(-50%,-50%);

                        .video-btn {
                            background-color: $white;
                            width: 80px;
                            line-height: 80px;
                            height: 80px;
                            text-align: center;
                            color: $theme-color;
                            border-radius: 50%;
                            display: inline-block;
                        }

                        .ripple {
                            &::before,&::after {
                                box-shadow: 0 0 0 0 rgba(22, 111, 211, 0.6);
                            }
                        }
                    }
                }
            }

            .details-image-2 {
                margin-top: 40px;

                @include breakpoint (max-md){
                   margin-top: 30px;
                }

                @include breakpoint (max-sm){
                   margin-top: 20px;
                }

                img {
                    @include imgw;
                }
            }
        }

        .faq-content {
            margin-top: 50px;

            .accordion-item {
                border-radius: 0;

                .accordion-header { 
                    .accordion-button { 
                        font-weight: 600;
                    }
                }
            }
        }
    }

    .main-sidebar {
        .single-sidebar-widget {
            background-color: $bg-color-5;
            padding: 30px;
            margin-bottom: 30px;
            
            .service-category {
                margin-top: 30px;

                a {
                    &:not(:last-child){
                        margin-bottom: 10px;
                    }
    
                    position: relative;
                    display: inline-block;
                    padding: 16px 20px;
                    background-color: $white;
                    width: 100%;
                    font-weight: 600;
                    z-index: 9;
    
                    i {
                        font-size: 18px;
                        color: $header-color;
                        position: absolute;
                        top: 25px;
                        right: 20px;
                    }
    
                    &::before {
                        background-color: $theme-color;
                        content: "";
                        height: 100%;
                        width: 100%;
                        position: absolute;
                        top: 0;
                        left: 0;
                        visibility: hidden;
                        opacity: 0;
                        -webkit-transition: all 0.3s ease-in-out;
                        transition: all 0.3s ease-in-out;
                        z-index: -1;
                    }
    
                    &:hover {
                        color: $white;
        
                            i {
                                color: $white;
                            }
                            
                           &::before {
                            visibility: visible;
                             opacity: 1;
                           }
                    }
    
                    &.active {
                        color: $white;
        
                            i {
                                color: $white;
                            }
                            
                           &::before {
                            visibility: visible;
                             opacity: 1;
                           }
                    }
                }
            }

            .message-form {
                margin-top: 30px;

                .single-form-input {
                    input,textarea {
                        border: none;
                        padding: 16px 20px;
                        background-color: $white;
                        width: 100%;
                        text-transform: capitalize;
                        color: $text-color;
                    }

                    textarea {
                        padding: 16px 20px 120px;
                    }
                }
            }
        }
    }
}