/* Default state */
.co_icon .elementor-icon {
    transition: transform 0.3s ease;
    cursor: pointer;
}

/* Hover rotation */
.co_icon:hover .elementor-icon {
    transform: rotate(45deg);
}



/* Our Upcoming Projects start */

.project_post_main {
    transition: all 0.6s ease-in;
    position: relative;
}

.project_post_main .project_excerp {
    height: 0;
    width: 0;
    opacity: 0;
    transition: all 0.3s ease-in !important;
}

.project_post_main:hover .project_excerp {
    opacity: 1;
    height: unset;
    width: unset;
    width: unset;
    transition: all 0.3s ease-in;
}



/* <---------------------> */
.project_post_main {
    --r: 21px;
    --s: 22px;
    --x: 35px;
    --y: 33px;

    aspect-ratio: 1;
    background: #3FB8AF;
    border-radius: var(--r);
    --_m: /calc(2*var(--r)) calc(2*var(--r)) radial-gradient(#000 70%, #0000 72%);
    --_g: conic-gradient(at calc(100% - var(--r)) var(--r), #0000 25%, #000 0);
    --_d: (var(--s) + var(--r));
    mask:
        calc(100% - var(--_d) - var(--x)) 0 var(--_m),
        100% calc(var(--_d) + var(--y)) var(--_m),
        radial-gradient(var(--s) at 100% 0, #0000 99%, #000 calc(100% + 1px)) calc(-1*var(--r) - var(--x)) calc(var(--r) + var(--y)),
        var(--_g) calc(-1*var(--_d) - var(--x)) 0,
        var(--_g) 0 calc(var(--_d) + var(--y));
    mask-repeat: no-repeat;
    max-height: 550px;
    position: relative;
}

/* <---------------------> */

.bttn .elementor-button-icon svg {
    width: 15px;
    height: 16px;
    transition: transform 0.3s ease;
    cursor: pointer;
}

.bttn a:hover .elementor-button-icon svg {
    transform: rotate(50deg);

}

.arrow a:hover .elementor-button-icon svg {
    transform: rotate(50deg);

}

.bttn:hover svg path {
    fill: #4EAFE3 !important;
}


.blue-hove-effect:hover svg path {
    fill: #FFFFFF !important;
}

/* Our Upcoming Projects end */



.sector_loop .swiper-pagination-progressbar {
    top: auto !important;
    bottom: -62px !important;
    max-width: 70% !important;
    width: 100% !important;
}


/* Center the Swiper progress bar */
.sector_loop .swiper-pagination-progressbar {
    position: relative !important;
    left: 50% !important;
    transform: translateX(-56%);
    width: 300px;
    /* adjust as needed */
    margin-top: 30px;
}






.portfolio_post_main {
    --r: 21px;
    --s: 22px;
    --x: 35px;
    --y: 33px;

    /* width: 250px; */
    aspect-ratio: 1;
    background: #3FB8AF;
    border-radius: var(--r);
    --_m: /calc(2*var(--r)) calc(2*var(--r)) radial-gradient(#000 70%, #0000 72%);
    --_g: conic-gradient(at var(--r) var(--r), #000 75%, #0000 0);
    --_d: (var(--s) + var(--r));
    mask:
        calc(var(--_d) + var(--x)) 0 var(--_m),
        0 calc(var(--_d) + var(--y)) var(--_m),
        radial-gradient(var(--s) at 0 0, #0000 99%, #000 calc(100% + 1px)) calc(var(--r) + var(--x)) calc(var(--r) + var(--y)),
        var(--_g) calc(var(--_d) + var(--x)) 0,
        var(--_g) 0 calc(var(--_d) + var(--y));
    mask-repeat: no-repeat;

}


.home_icon_box .elementor-icon-box-icon .elementor-icon {
    position: relative;
    width: 40px;
    height: 40px;
}

.home_icon_box .elementor-icon-box-icon .elementor-icon::before {
    content: url(./image/icon_background.png);
    position: absolute;
    top: -24px;
    left: -31px;
    width: 70px;
    height: 70px;
    z-index: -1;
}






.footer_icon img,
.obj_img img {
    display: inline-block;
    /* ensures no shifting */
    transform-origin: center center;
    /* rotates from exact center */
    animation: rotateIcon 15s linear infinite;
}

@keyframes rotateIcon {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}




/* about page start */

.other_banner {
    position: relative;
}

.other_banner::after {
    position: relative;
}


.left_shape {
    --r: 21px;
    --s: 22px;
    --x: 35px;
    --y: 33px;

    aspect-ratio: 1;
    background: #3FB8AF;
    border-radius: var(--r);

    --_m: /calc(2*var(--r)) calc(2*var(--r)) radial-gradient(#000 70%, #0000 72%);

    /* conic gradient – LEFT side */
    --_g: conic-gradient(at var(--r) var(--r),
            #000 75%, #0000 0);

    --_d: (var(--s) + var(--r));

    mask:
        /* top-left cut */
        calc(var(--_d) + var(--x)) 0 var(--_m),

        /* bottom-left cut */
        0 calc(var(--_d) + var(--y)) var(--_m),

        radial-gradient(var(--s) at 0 0,
            #0000 99%,
            #000 calc(100% + 1px)) calc(var(--r) + var(--x)) calc(var(--r) + var(--y)),

        var(--_g) calc(var(--_d) + var(--x)) 0,
        var(--_g) 0 calc(var(--_d) + var(--y));

    mask-repeat: no-repeat;
    position: relative;
}

.fm_con {
    max-height: 364px;
}

.tech_con {
    max-height: 554px;
}


/* about page end */




/* product page start */
.system_hover {
    transition: background-color all 0.3s ease-in-out;
}

.system_hover:hover p,
.system_hover:hover h5 {
    color: #FFFFFF !important;
    transition: color 0.3s ease-in-out;

}


.right_shape {
    --r: 21px;
    --s: 22px;
    --x: 35px;
    --y: 33px;

    /* width: 250px; */
    aspect-ratio: 1;
    background: #3FB8AF;
    border-radius: var(--r);
    --_m: /calc(2*var(--r)) calc(2*var(--r)) radial-gradient(#000 70%, #0000 72%);
    --_g: conic-gradient(at calc(100% - var(--r)) var(--r), #0000 25%, #000 0);
    --_d: (var(--s) + var(--r));
    mask:
        calc(100% - var(--_d) - var(--x)) 0 var(--_m),
        100% calc(var(--_d) + var(--y)) var(--_m),
        radial-gradient(var(--s) at 100% 0, #0000 99%, #000 calc(100% + 1px)) calc(-1*var(--r) - var(--x)) calc(var(--r) + var(--y)),
        var(--_g) calc(-1*var(--_d) - var(--x)) 0,
        var(--_g) 0 calc(var(--_d) + var(--y));
    mask-repeat: no-repeat;
    max-height: 550px;
    position: relative;
}

.why_sec {
    max-height: 414px;
}

.our_sec {
    max-height: 357px;
}

/* product page end */
.privacy_t_heading h3,
.term_t_heading h3{
    padding-top:10px;
}


@media (max-width: 1024px) {
    .box_img {
        position: relative !important;
    }
}

@media (max-width: 880px) {
    .project_post_main {
        --r: 21px;
        --s: 22px;
        --x: 25px;
        --y: 25px;
    }

    .sector_loop .swiper-pagination-progressbar {
        bottom: -62px !important;
        max-width: 70% !important;

    }

}

@media (max-width: 767px) {
    .our_project_loop .elementor-swiper-button {
        border: 1px solid #4EAFE3 !important;

    }

    .sector_loop .swiper-pagination-progressbar {
        bottom: -10px !important;
        max-width: 90% !important;

    }

    .sector_loop .swiper-pagination-progressbar {
        transform: translateX(-50%);
    }
    
    .project_post_main .project_excerp {
    height: unset;
    width: unset;
    opacity: 1;
    transition: all 0.3s ease-in !important;
    }

}
@media(min-width:1024px){
.privacy_t_heading h3,
.term_t_heading h3{
    font-size:28px !important;
}
}