@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500&display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body{
    font-size: .9rem;
    font-family: 'Poppins', sans-serif;
    overflow-x: hidden !important;
}
.transition-all-sm{
    transition: all 0.5s ease-in-out;
}
.scale-on-hover{
    transition: all 0.5s ease-in-out;
}
.scale-on-hover:hover{
    transform: scale(1.05)!important;
}
.w-50p{
    width: 50%;
}

.circular-box{
    background-image: linear-gradient(to right top, #1c191b, #403d40, #676668, #929193, #bfbfc0, #d4d4d5, #e9e9ea, #ffffff, #ffffff, #ffffff, #ffffff, #ffffff);
    transition: all 400ms ease-in-out;
    filter: drop-shadow(1rem 0.5rem 1rem rgba(0, 0, 0, 0.61));
    border-radius: 100%;
}
.inverted-2 {
    background:
      linear-gradient( 90deg, #000  50%, #fff 0),
      linear-gradient(-90deg, #000  50%, #fff 0),
      linear-gradient( 90deg, #0000 50%, #ED1E66 0),
      linear-gradient(-90deg, #0000 50%, #ED1E66 0);
    background-repeat: no-repeat;
    background-size: 200% 51%;
    background-position: top left, bottom right;
    -webkit-background-clip: text, text, padding-box, padding-box;
            background-clip: text, text, padding-box, padding-box;
    transition: 0.8s;
    padding: .5rem .7rem;
  }

  .inverted-2:hover {
    background-position: top right, bottom left;
  }
.bg-cred{
    background-color: #ED1E66;
}
.text-cred{
    color: #ED1E66;
}

/* manage-box-pt */
.manage-box-pt{
    padding-top: 0rem;
}
.footer-bg{
    height: 25rem;
}
/* below 600px */
@media screen and (max-width: 600px) {
    .footer-bg{
        height: 35rem;
    }
}
.-z-1{
    z-index: -1;
}
.quad{
    clip-path: polygon(0 0, 100% 0, 66% 99%, 0% 100%);
    height: 10rem;
    width: auto;
    font-family: ebrima;
    display: flex;
    align-items: center;
}
.triangle{
    background-color: white;
    height: 5rem;
    width:7rem;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    cursor: pointer;
    clip-path: polygon(51% 63%, 0 0, 100% 0);
}
.inner-triangle{
    clip-path: polygon(51% 63%, 0 0, 100% 0);
    height: 6rem;
    width: 9rem;
    margin: auto;
}

.bg-label-gradient{
    background-image: linear-gradient(to right, #29abe2, #199ae8, #3f87e7, #696fde, #8e50c9);
}
.testimonial-container{
    margin: 10rem 0;
}
.testimonial-head{
    font-size: 5rem;
    font-family: ebrima;
    font-weight: bolder;
    background-image: linear-gradient(to right, #29abe2, #199ae8, #3f87e7, #696fde, #8e50c9);
    color: white;
    max-width: 60%;
    margin: auto;
    padding: 2rem;
    border-radius: 5rem;
    text-align: center;
}
.testimonial-card{
    background-color: #D9F7FF;
    height: 33rem;
    width: 33rem;
}
.testimonial-card:hover .light-tes{
    transform: scale(1.1);
}
.testimonial-card:hover .black-tes{
    transform: scale(1.1);
}
.testimonial-card:hover .tes-main{
    top: 3rem;
}
.light-tes{
    background-color: #D9F7fF;
    height: 19.6rem;
    position: relative;
    transition: all 400ms ease-in-out;
}
.black-tes{
    background-color: #4B4D51;
    height: 13.4rem;
    margin-top: 1rem;
    position: relative;
    transition: all 400ms ease-in-out;
}
.comment-box img{
    height: 20rem;
    position: absolute;
    left: 2rem;
    top: -9rem;
}
.tes-profile img{
    height: 12rem;
    width: 12rem;
    border-radius: 100%;
}
.tes-profile{
    position: absolute;
    top: -6rem;
    left: 2.8rem;
}
.tes-comment{
    position: absolute;
    text-align: center;
    color: black;
    max-width: 80%;
    margin:0px auto;
    left: 3rem;
}
.tes-main{
    display: flex;
    flex-direction: column;
    font-family: haetten;
    letter-spacing: .2rem;
    color: #FF233B;
    width: fit-content;
    font-weight: bold;
    position: absolute;
    left: 19rem;
    top: 5rem;
    transition: all 400ms ease-in-out;
}

.tes-commenter{
    position: absolute;
    display: flex;
    flex-direction: column;
    gap: .2rem;
    top: -8rem;
    right: 3rem;
}

/* doted snake layout */
.doted bg-img{
    width: 100%;
}

.object-fit-cover{
    object-fit: cover;
}



/*below 530*/
@media screen and (max-width: 415px) {
    .snake-dots{
        width: 100%;
    }
    /*.snake-dots-1st,.snake-dots-2nd, .snake-dots-3rd ,.snake-dots-4th{*/
    /*    */
    /*}*/
    .snake-dots-1st{
        margin-top: 0rem;
    }
    .snake-dots-2nd{
        margin-top: 2rem;
    }
    .snake-dots-3rd{
        margin-top: 2rem;
    }
    .snake-dots-4th{
        margin-top: 2rem;
    }
    .snake-dots-1st .circular-box{
        height: 10rem;
        width: 10rem;
    }
    .snake-dots-1st .text-cred{
        font-size: 1.3rem !important;
    }
    .snake-dots-2nd .circular-box{
        height: 10rem;
        width: 10rem;
    }
    .snake-dots-2nd .text-cred{
        font-size: 1.3rem !important;
    }
    .snake-dots-3rd .circular-box{
        height: 10rem;
        width: 10rem;
    }
    .snake-dots-3rd .text-cred{
        font-size: 1.3rem !important;
    }
    .snake-dots-4th .circular-box{
        height: 10rem;
        width: 10rem;
    }
    .snake-dots-4th .text-cred{
        font-size: 1.3rem !important;
    }

    .snake-dots-1st p,.snake-dots-1st span{
        display: none !important;
    }
    .snake-dots-2nd p ,.snake-dots-1st span{
        display: none !important;
    }
    .snake-dots-3rd p ,.snake-dots-1st span{
        display: none !important;
    }
    .snake-dots-4th p ,.snake-dots-1st span{
        display: none !important;
    }
    .contact-form-bg-img{
        max-width: 0 !important;
    }
}
/*below 400*/
@media screen and (max-width: 400px){
    .snake-dots-1st .circular-box,.snake-dots-2nd .circular-box,.snake-dots-3rd .circular-box,.snake-dots-4th .circular-box{
        height: 7.5rem;
        width: 7.5rem;
    }
    .snake-dots-1st .text-cred,.snake-dots-2nd .text-cred,.snake-dots-3rd .text-cred,.snake-dots-4th .text-cred{
        font-size: 1rem !important;
    }
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 2rem;
    }
    .snake-dots-3rd{
        margin-top: 3rem;
    }
    .snake-dots-4th{
        margin-top: 3rem;
    }
}
/*below 390*/
@media screen and (max-width: 390px){

    .snake-dots-1st .text-cred,.snake-dots-2nd .text-cred,.snake-dots-3rd .text-cred,.snake-dots-4th .text-cred{
        font-size: .9rem !important;
    }
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 2rem;
    }
    .snake-dots-3rd{
        margin-top: 2rem;
    }
    .snake-dots-4th{
        margin-top: 2rem;
    }
}
/*below 370*/
@media screen and (max-width: 370px){
    .snake-dots-1st .circular-box,.snake-dots-2nd .circular-box,.snake-dots-3rd .circular-box,.snake-dots-4th .circular-box{
        height: 6.5rem;
        width: 6.5rem;
    }
    .snake-dots-1st .text-cred,.snake-dots-2nd .text-cred,.snake-dots-3rd .text-cred,.snake-dots-4th .text-cred{
        font-size: .8rem !important;
    }
    .snake-dots-1st{
        margin-top: 1rem;
    }
    .snake-dots-2nd{
        margin-top: 2rem;
    }
    .snake-dots-3rd{
        margin-top: 2rem;
    }
    .snake-dots-4th{
        margin-top: 2rem;
    }
}

/*below 338*/
@media screen and (max-width: 338px){

    .snake-dots-1st{
        margin-top: 0rem;
    }
    .snake-dots-2nd{
        margin-top: 2rem;
    }
    .snake-dots-3rd{
        margin-top: 1rem;
    }
    .snake-dots-4th{
        margin-top: 1rem;
    }
    .text-dots{
        display: none;
    }
}
/*below 333*/
@media screen and (max-width: 333px){
    .snake-dots-1st{
        margin-top: 0rem;
    }
    .snake-dots-2nd{
        margin-top: 1rem;
    }
    .snake-dots-3rd{
        margin-top: 1rem;
    }
    .snake-dots-4th{
        margin-top: 1rem;
    }
}
/*below 325*/
@media screen and (max-width: 325px){
    .snake-dots-1st{
        margin-top: 1rem;
    }
    .snake-dots-2nd{
        margin-top: 1rem;
    }
    .snake-dots-3rd{
        margin-top: 1rem;
    }
    .snake-dots-4th{
        margin-top: 1rem;
    }
}
/*above 400*/
@media screen and (min-width: 400px) {
    .snake-dots-1st{
        margin-top: 1rem;
    }

}
/*above 420*/
@media screen and (min-width: 420px) {
    .snake-dots{
        width: 100%;
    }
    .snake-dots-1st{
        margin-top: 0rem;
    }
    .snake-dots-2nd{
        margin-top: 0rem;
    }
    .snake-dots-3rd{
        margin-top: 0rem;
    }
    .snake-dots-4th{
        margin-top: 0rem;
    }

}
/*above 450*/
@media screen and (min-width: 450px) {
    .snake-dots{
        width: 100%;
    }
    .snake-dots-1st{
        margin-top: 1rem;
    }
    .snake-dots-2nd{
        margin-top: 1rem;
    }
    .snake-dots-3rd{
        margin-top: 1rem;
    }
    .snake-dots-4th{
        margin-top: 1rem;
    }
}
/*above 470*/
@media screen and (min-width: 470px) {
    .snake-dots{
        width: 100%;
    }
    .snake-dots-1st{
        margin-top: 1rem;
    }
    .snake-dots-2nd{
        margin-top: 1rem;
    }
    .snake-dots-3rd{
        margin-top: 2rem;
    }
    .snake-dots-4th{
        margin-top: 2rem;
    }
}
/*above 480*/
@media screen and (min-width: 480px) {
    .snake-dots{
        width: 100%;
    }
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 2rem;
    }
    .snake-dots-3rd{
        margin-top: 2rem;
    }
    .snake-dots-4th{
        margin-top: 2rem;
    }
}
/*above 500*/
@media screen and (min-width: 500px) {
    .snake-dots{
        width: 100%;
    }
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 2rem;
    }
    .snake-dots-3rd{
        margin-top: 3rem;
    }
    .snake-dots-4th{
        margin-top: 3rem;
    }
}
/*above 510*/
@media screen and (min-width: 510px) {
    .snake-dots{
        width: 100%;
    }
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 3rem;
    }
    .snake-dots-3rd{
        margin-top: 3rem;
    }
    .snake-dots-4th{
        margin-top: 3rem;
    }
}
/*above 530*/
@media screen and (min-width: 530px) {
    .snake-dots{
        width: 100%;
    }
    .snake-dots-1st{
        margin-top: 1rem;
    }
    .snake-dots-2nd{
        margin-top: 4rem;
    }
    .snake-dots-3rd{
        margin-top: 4rem;
    }
    .snake-dots-4th{
        margin-top: 4rem;
    }
}
@media screen and (min-width: 540px) {
    .snake-dots{
        width: 100%;
    }
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 4rem;
    }
    .snake-dots-3rd{
        margin-top: 4rem;
    }
    .snake-dots-4th{
        margin-top: 4rem;
    }

}
/*above 560  */
@media screen and (min-width: 560px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 5rem;
    }
    .snake-dots-3rd{
        margin-top: 5rem;
    }
    .snake-dots-4th{
        margin-top: 5rem;
    }
}
/*above 580*/
@media screen and (min-width: 580px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 5rem;
    }
    .snake-dots-3rd{
        margin-top: 6rem;
    }
    .snake-dots-4th{
        margin-top: 6rem;
    }
}
/* above 617 */
@media screen and (min-width: 617px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 6rem;
    }
    .snake-dots-3rd{
        margin-top: 8rem;
    }
    .snake-dots-4th{
        margin-top: 8rem;
    }
}
/*above 650 */
@media screen and (min-width: 650px) {
    .snake-dots{
        width: 95%;
    }
}
/*above 650 */
@media screen and (min-width: 690px) {
    .snake-dots{
        width: 90%;
    }
}
/*above 710*/
@media screen and (min-width: 710px) {
    .snake-dots{
        width: 85%;
    }
}
/*@above 745*!*/
@media screen and (min-width: 745px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 6rem;
    }
    .snake-dots-3rd{
        margin-top: 8rem;
    }
    .snake-dots-4th{
        margin-top: 8rem;
    }
}
/*above 750*/
@media screen and (min-width: 750px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 7rem;
    }
    .snake-dots-3rd{
        margin-top: 8rem;
    }
    .snake-dots-4th{
        margin-top: 8rem;
    }
}
/*above 767*/
@media screen and (min-width: 767px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 6rem;
    }
    .snake-dots-3rd{
        margin-top: 6rem;
    }
    .snake-dots-4th{
        margin-top: 6rem;
    }
}
/*above 780*/
@media screen and (min-width: 780px) {
    .snake-dots{
        /*width: 80%;*/
    }
}
/*above 795*/
@media screen and (min-width: 795px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 6.5rem;
    }
    .snake-dots-3rd{
        margin-top: 6rem;
    }
    .snake-dots-4th{
        margin-top: 7rem;
    }
}
/*above 840*/
@media screen and (min-width: 840px) {
    .snake-dots{
        width: 83%;
    }
}
/*above 865*/
@media screen and (min-width: 865px) {
    .snake-dots{
        width: 80%;
    }
}
/*above 900*/
@media screen and (min-width: 900px) {
    .snake-dots{
        width: 77%;
    }
}
/*above 930*/
@media screen and (min-width: 930px) {
    .snake-dots{
        width: 75%;
    }
}
/*above 960*/
@media screen and (min-width: 960px) {
    .snake-dots{
        width: 73%;
    }
}
/*above 975*/
@media screen and (min-width: 975px) {
    .snake-dots{
        width: 70%;
    }
}
/*above 1020*/
@media screen and (min-width: 1020px) {
    .snake-dots{
        width: 68%;
    }
}
/*above 1060*/
@media screen and (min-width: 1060px) {
    .snake-dots{
        width: 65%;
    }
}
/* above 1100 */
@media screen and (min-width: 1100px) {
    .snake-dots{
        width: 63%;
    }
}
/* above 1150 */
@media screen and (min-width: 1150px) {
    .snake-dots{
        width: 60%;
    }
}
/* above 1200 */
@media screen and (min-width: 1200px) {
    .snake-dots{
        width: 58%;
    }
}
/* above 1250 */
@media screen and (min-width: 1250px) {
    .snake-dots{
        width: 55%;
    }
}
/* above 1330 */
@media screen and (min-width: 1330px) {
    .snake-dots{
        width: 53%;
    }
}
/*above 1390*/
@media screen and (min-width: 1390px) {
    .snake-dots{
        width: 50%;
    }
}
/*above 1450*/
@media screen and (min-width: 1450px) {
    .snake-dots{
        width: 48%;
    }
}
/*above 1520*/
@media screen and (min-width: 1520px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 7rem;
    }
    .snake-dots-3rd{
        margin-top: 7rem;
    }
    .snake-dots-4th{
        margin-top: 7rem;
    }
}
/*above 1560*/
@media screen and (min-width: 1560px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 8rem;
    }
    .snake-dots-3rd{
        margin-top: 8rem;
    }
    .snake-dots-4th{
        margin-top: 8rem;
    }
}
/* above 1640*/
@media screen and (min-width: 1640px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 10rem;
    }
    .snake-dots-3rd{
        margin-top: 9rem;
    }
    .snake-dots-4th{
        margin-top: 9rem;
    }
}
/*above 1660*/
@media screen and (min-width: 1660px) {
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 10rem;
    }
    .snake-dots-3rd{
        margin-top: 10rem;
    }
    .snake-dots-4th{
        margin-top: 10rem;
    }
}
/*above 1700*/
@media screen and (min-width: 1700px) {
    .snake-dots{
        width: 45%;
    }
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 8rem;
    }
    .snake-dots-3rd{
        margin-top: 8rem;
    }
    .snake-dots-4th{
        margin-top: 8rem;
    }
}
/* above 1720*/
@media screen and (min-width: 1720px) {
    .snake-dots{
        width: 43%;
    }
}
/*above 1780*/
@media screen and (min-width: 1780px) {
    .snake-dots{
        width: 40%;
    }
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 7rem;
    }
    .snake-dots-3rd{
        margin-top: 7rem;
    }
    .snake-dots-4th{
        margin-top: 7rem;
    }
}
/* above 1860*/
@media screen and (min-width: 1860px) {
    .snake-dots{
        width: 38%;
    }
}
/* above 1890*/
@media screen and (min-width: 1890px) {
    .snake-dots{
        width: 35%;
    }
    .snake-dots-1st{
        margin-top: 2rem;
    }
    .snake-dots-2nd{
        margin-top: 5rem;
    }
    .snake-dots-3rd{
        margin-top: 5rem;
    }
    .snake-dots-4th{
        margin-top: 5rem;
    }
}
/*hexagon*/
.hexagon{
    width: 280px;
    height: 280px;
    clip-path: polygon(25% 5%, 75% 5%, 100% 50%, 75% 95%, 25% 95%, 0% 50%);
}
.service_cat_desc{
    transition: all 500ms ease-in-out;
    overflow: hidden;
}
.service_cat_desc_extended{
    /*height:10rem!important;*/
}
.model_dilog{
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 10001;
}

.max-lines {
    display: block;/* or inline-block */
    text-overflow: ellipsis;
    word-wrap: break-word;
    overflow: hidden;
    max-height: 3.6em;
    line-height: 1.8em;
}
.service_full_dec{
    display: none;
}

.service_cat_desc_extended .service_sort_dec{
    display: none!important;
}
.service_cat_desc_extended .service_full_dec{
    display: block !important;
}
.service_line_width{
    width: 16rem;
}
/*above  370*/
@media screen and (min-width: 370px) {
    .service_line_width{
        width: 20rem;
    }
}
/*above  420*/
@media screen and (min-width: 420px) {
    .service_line_width{
        width: 22rem;
    }
}

/*above  460*/
@media screen and (min-width: 460px) {
    .service_line_width{
        width: 24rem;
    }
}
