* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --333-black: #333;
    --111-black: #111;
    --ae2-red: #AE2525;
    --999-gray: #999;
    --bbb-gray: #BBB;
    --ddd-gray: #ddd;
    --eee-gray: #EEE;
    --fob-yellow: #F0BC11;
    --005-blue: #005762;
}

body {
    color: var(--333-black);
    font-family: 'Manrope', sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
}

/* comman classes */
.mt-100 {
    margin-top: 100px;
}

.mt-50 {
    margin-top: 50px;
}

/* .mt-60 {
    margin-top: 60px;
} */

a {
    text-decoration: none;
    color: unset;
}

.br-5 {
    border-radius: 5px;
}

.br-10 {
    border-radius: 10px;
}

.invisible {
    visibility: hidden !important;
}

.blue_txt {
    color: var(--005-blue) !important;
}

.yellow_txt {
    color: var(--fob-yellow) !important;
}

.btn_0 {
    display: inline-block;
    width: fit-content;
    color: #fff;
    border-radius: 5px;
    background: linear-gradient(0deg, #c32e2d -0.02%, #ddab28 99.98%), #c22523;
    padding: 15px 20px;
    transition: all 0.3s ease;
    border: none;
    line-height: 16px;
    font-weight: 500;
    align-content: center;
}

.btn_0:hover {
    background: var(--005-blue);
    transition: all 0.3s ease;
}

.btn_1 {
    display: inline-block;
    width: fit-content;
    color: var(--005-blue);
    border-radius: 5px;
    padding: 15px 20px;
    transition: all 0.3s ease;
    border: 1px solid var(--005-blue);
    line-height: 16px;
}

.btn_1:hover {
    background: linear-gradient(0deg, #c32e2d -0.02%, #ddab28 99.98%), #c22523;
    border:none;
    color: #fff;
    transition: all 0.3s ease;
}

.title_24 {
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 30px;
}

.title_36 {
    font-family: 'Oswald', sans-serif;
    font-size: 36px;
    font-style: normal;
    font-weight: 400;
    line-height: 44px;
    color: var(--111-black);
}

.para_36 {
    font-size: 36px;
    font-weight: 400;
    line-height: 44px;
}

.title_48 {
    font-family: 'Oswald', sans-serif;
    font-size: 48px;
    font-style: normal;
    font-weight: 400;
    line-height: 54px;
    margin-bottom: 40px;
    color: var(--111-black);
}

.title_62 {
    font-family: 'Oswald', sans-serif;
    color: var(--111-black);
    font-size: 62px;
    font-style: normal;
    font-weight: 400;
    line-height: 72px;
}

/* comman classes */
/* Custom Hand Cursor Styles */
/* Add this to hide default cursor on target elements */
.custom-hand-cursor-target {
    cursor: none;
}

/* Rest of your cursor CSS remains the same */
.custom-hand-cursor {
    position: fixed;
    width: 35px;
    height: 37px;
    pointer-events: none;
    z-index: 9999;
    transition: transform 0.15s ease, opacity 0.2s ease;
    opacity: 0;
    transform: translate(-50%, -50%);
}

.custom-hand-cursor.active {
    opacity: 1;
}

.custom-hand-cursor svg {
    width: 100%;
    height: 100%;
    filter: drop-shadow(2px 2px 6px rgba(0, 0, 0, 0.8));
}

.custom-hand-cursor.click-effect {
    transform: translate(-50%, -50%) scale(0.8);
}

.custom-hand-cursor.pulse {
    animation: cursorPulse 0.6s ease-out;
}

@keyframes cursorPulse {
    0% {
        transform: translate(-50%, -50%) scale(1);
    }

    50% {
        transform: translate(-50%, -50%) scale(1.2);
    }

    100% {
        transform: translate(-50%, -50%) scale(1);
    }
}

/* custom cursor */

/* header */
.fixed-top.glass-effect {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.navbar-toggler:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: none;
}

.navbar {
    padding: 0px;
}

.toggle_logo{
    display:none;
    height:45px;
    transition: opacity 0.4s ease, visibility 0.4s ease;
}
.mob_logo{display:none;}
.head_social {
    display: flex;
    gap: 10px;
    align-items: center;
}

.menu_btn {
    font-family: inherit;
    font-size: 16px;
    background: transparent;
    color: var(--005-blue);
    fill: var(--005-blue);
    padding: 15px 14px;
    display: flex;
    align-items: center;
    cursor: pointer;
    border: 1px solid var(--005-blue);
    border-radius: 5px;
    font-weight: 500;
    text-decoration: none;
    gap: 10px;
    width: fit-content;
    line-height: 16px;
    transition: all 0.3s ease-in-out;
}

.svg-wrapper-1 {
    display: flex;
    align-items: center;
}

.svg-wrapper {
    display: flex;
    align-items: center;
    transform-origin: center center;
    transition: transform 0.3s ease-in-out;
}

.menu_btn span {
    display: block;
    transition: all 0.3s ease-in-out;
}

.menu_btn svg {
    display: block;
    transform-origin: center center;
    transition: transform 0.3s ease-in-out;
}

.menu_btn:hover {
    background: linear-gradient(0deg, #c32e2d -0.02%, #ddab28 99.98%), #c22523;
    border:none;
    color: white;
}

.menu_btn:hover .svg-wrapper {
    transform: scale(1.25);
    transition: 0.5s linear;
}

.menu_btn:hover svg {
    transform: translateX(1.2em) scale(1.1);
    fill: #fff;
}

.menu_btn:hover span {
    opacity: 0;
    transition: 0.5s linear;
}

.menu_btn:active {
    transform: scale(0.95);
}

 /*------------------------ mega menu style start ------------------------*/

        .sub_menu_wrapper,
        .sub_menu_wrapper2,
        .sub_menu_wrapper3 {
            /*visibility: hidden;*/
            display:none;
            margin-top: 0px
        }

        .sub_menu_wrapper.active,
        .sub_menu_wrapper2.active,
        .sub_menu_wrapper3.active {
            /*visibility: visible;*/
            display:block;
        }

        .sub-menu-items {
            margin-top: 15px;
            padding: 0;
        }


        .sub-menu-items li {
            margin-bottom: 16px;
            margin-bottom: 1px solid #DDD;
        }

        .back-btn, .back-btn-2 ,.back-btn-3 {
            font-size: 14px;
            font-weight: 800;
            display: block;
            /*border-bottom: 2px solid var(--ae2-red);*/
            cursor: pointer;
            /*padding-bottom: 12px;*/
        }

        /**/


        .menu_main {
            position: relative;
            z-index: 1001;
            padding: 10px 20px;
            padding-right:0;
        }

        .menu_btn {
            position: relative;
            z-index: 10;
            /* above background but below menu */
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            gap: 10px;
            font-size: 18px;
            transition: all 0.5s ease;
        }

        .menu_btn.open {
            color: #ff0000;
        }
        
        .offcanvas-body::-webkit-scrollbar {
          width: 0px;
        }
        
        .custom-offcanvas {
            position: absolute;
            top: 17px;
            right: 17px;
            width: 0;
            height: 0;
            background: #fff;
            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
            border-radius: 15px;
            overflow: hidden;
            opacity: 0;
            transform: scale(0);
            transform-origin: top right;
            transition: all 0.5s ease;
            z-index: 1000;
            /* below button */
            padding: 0;
        }

        .custom-offcanvas.open {
            width: 400px;
            height: 700px;
            opacity: 1;
            transform: scale(1);
            padding: 20px;
        }

        .offcanvas-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .offcanvas-header h5 {
            margin: 0;
            font-size: 24px;
        }

        .close-offcanvas {
            font-size: 50px;
            cursor: pointer;
        }

        .menu-items {
            list-style: none;
            padding: 0;
            margin: 0px 0 0 0;
            counter-reset: item;
        }

        .menu-items li {
            opacity: 0;
            transform: translateX(20px);
            margin-bottom: 24px;
            font-size: 20px;
            font-weight: 400;
            cursor: pointer;
            transition: all 0.6s ease;
            counter-increment: item;
            position: relative;
        }
        
        .menu-items a{transition: all 0.6s ease;}
        
        .menu-items a::after {
            content: counter(item, decimal-leading-zero) ".";
            position: absolute;
            top: 10%;
            left: -30px;
            /*transform: translateY(-50%);*/
            opacity: 0;
            transition: opacity 0.3s ease, left 0.3s ease;
            color: #036f5c;
            font-size:14px;
        }

        .menu-items li:hover a::after {
            opacity: 1;
            left: 0;
            transition: all .7s ease;
        }

        .menu-items li:hover a {
            margin-left: 30px;
            transition: all .7s ease;
        }

        .custom-offcanvas.open .menu-items li {
            opacity: 1;
            transform: translateX(0);
        }

        .menu-items li:nth-child(1) {
            transition-delay: 0.1s;
        }

        .menu-items li:nth-child(2) {
            transition-delay: 0.2s;
        }

        .menu-items li:nth-child(3) {
            transition-delay: 0.3s;
        }

        .menu-items li:nth-child(4) {
            transition-delay: 0.4s;
        }
        .menu-items li:nth-child(5) {
            transition-delay: 0.4s;
        }
        .menu-items li:nth-child(6) {
            transition-delay: 0.4s;
        }
        .menu-items li:nth-child(7) {
            transition-delay: 0.4s;
        }
        

/* header */
.hero {
    padding-top: 100px;
    background-image: url("../images/hero_bg.webp");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.hero_parent {
    position: relative;
    justify-content: flex-end;
}

/*.hero_left {*/
/*    position: absolute;*/
/*    left: 0;*/
/*}*/

.hero_btn {
    display: flex;
    gap: 20px;
    margin-top: 60px;
}

/* hero_slider */
.hero_slide {
    position: relative;
}
.hero_model{margin-left:auto;width:100%;
height:56vh;
}
.hero_slide img{margin-left:auto;}

.hero_slide_box {
    /* Core glassmorphism properties */
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(15px);

    /* Enhanced border with gradient */
    border-radius: 5px;
    border: 1px solid rgba(51, 51, 51, 0.30);

    /* Layout properties */
    padding: 20px 40px;
    color: var(--333-black);
    width: fit-content;
    position: absolute;
    text-align: center;

    /* Text styling for better readability */
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.hero_slide_box_1 {
    bottom: 0;
    left: 5%;
}

.hero_slide_box_2 {
    top: 20%;
    right: 5%;
}

.hero_slider_nav {
    display: flex;
    justify-content: flex-end;
    margin-top: 50px;
}

.hero_slider_nav .nav-item {
    position: relative;
    width: 240px;
}

.hero_slider_nav .nav-item::before {
    position: absolute;
    content: "";
    background-image: url("../images/hero_head.svg");
    background-repeat: no-repeat;
    height: -webkit-fill-available;
    width: -webkit-fill-available;
    top: -43%;
    left: -17%;
}

.hero_slider_nav .nav-item {
    display: none;
    cursor: pointer;
}

.hero_slider_nav .nav-item.active {
    display: block;
}

.hero_slider_nav img {
    display: block;
    max-width: 100%;
}

.hero_slider_for {
    position: relative;
    overflow: hidden;
}

.hero_slider_for .slick-slide {
    opacity: 0;
    transform: scale(0.8);
}

/* Active slide stays visible */
.hero_slider_for .slick-current {
    opacity: 1;
    transform: scale(1);
}

/* Animate-in effect */
@keyframes expandFromNav {
    0% {
        opacity: 0;
        transform: scale(0.2);
    }

    60% {
        opacity: 1;
        transform: scale(1.05);
        /* overshoot */
    }

    80% {
        transform: scale(0.97);
        /* settle back */
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* Apply keyframe when animating */
.hero_slider_for .slick-slide.animating {
    animation: expandFromNav 0.7s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* hero_slider */

/* our core */
.mob_core_wrapper{display:none;}
.core_wrapper {
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    width: 100%;
}

.comp_bus_child {
    border-radius: 10px;
    border: 1px solid var(--bbb-gray);
    padding: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    position: relative;
    overflow: hidden;
    flex: 1;
    height: 250px;
}

.comp_bus_child:hover {
    flex: 3;
    height: 500px;
    padding: 50px;
    border-radius: 10px;
    z-index: 10;
    background: linear-gradient(0deg, rgb(195, 46, 45) -0.02%, rgb(221, 171, 40) 99.98%), rgb(194, 37, 35);
}

.comp_bus_front {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    text-align: center;
    width: 100%;
    height: 100%;
}

.comp_bus_fronts {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
}

.comp_bus_front img {
    border-radius: 5px;
    margin-bottom: 15px;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.comp_bus_num {
    color: #999;
    font-family: 'Oswald', sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 32px;
    text-align:left;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.comp_bus_child:hover .comp_bus_num {
    color: #fff;
    font-size: 36px;
    font-style: normal;
    font-weight: 400;
    line-height: 44px;
}

.comp_bus_back {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    text-align: center;
    opacity: 0;
    padding: 50px;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.comp_bus_child:hover .comp_bus_front {
    opacity: 0;
}

.comp_bus_child:hover .comp_bus_back {
    opacity: 1;
}

.comp_bus_back img {
    border-radius: 10px;
    margin-bottom: 20px;
}

.comp_bus_back_bt {
    text-align: left;
}

.comp_bus_back .comp_bus_num {
    color: #111;
    font-family: 'Oswald', sans-serif;
    font-size: 36px;
    font-style: normal;
    font-weight: 400;
    line-height: 44px;
}

.comp_bus_ext {
    color: #fff;
    font-family: Manrope;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
}

/* Shimmer effect */
.comp_bus_child::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.6s;
}

.comp_bus_child:hover::before {
    left: 100%;
}

.core_wrapper h1 {
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    color: white;
    font-size: 2.5rem;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
    z-index: 100;
}

/* our core */

/* info */
.info .container-fluid {
    position: relative;
    padding-top: 150px;
}

.info .container {
    position: absolute;
    top: 0;
    left: 0;
}

.stats_wrapper {
    display: flex;
    gap: 20px;
    margin-top: 50px;
}

.stats_box {
    display: flex;
    flex-direction: column;
    padding: 30px 45px;
    border-radius: 10px;
    border: 1px solid var(--ddd-gray);
    min-width: 240px;
    background-color: #fff;
}

.stats_box h2 {
    color: var(--fob-yellow);
}

/* info */
/* inds */
.inds_slider_wrapper {
    margin-top: 50px;
    padding-bottom: 50px;
}

.inds_slider .slick-slide {
    margin-right: 20px;
}

.inds_slide {
    border-radius: 10px;
    background-color: var(--eee-gray);
    padding: 20px;
    height: 300px;
    width: 300px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.inds_top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 5px;
}

.plus_icon {
    width: fit-content;
    height: fit-content;
    border-radius: 16px;
    background: #fff;
    padding: 8px;
    display: flex;
    transition: transform 0.3s ease;
    position: relative;
    z-index: 3;
}

.slide_title {
    color: var(--111-black);
    font-size: 24px;
}

/* back content overlay */
.inds_backslide {
    position: absolute;
    inset: 0;
    border-radius: 10px;
    background: linear-gradient(0deg, #c32e2d -0.02%, #ddab28 99.98%), #c22523;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    opacity: 0;
    transform: translateY(100%);
    transition: all 0.4s ease;
    z-index: 2;
    color: #fff;
    /* dark text on yellow bg */
}

.inds_backslide .plus_icon {
    visibility: hidden;
}

.inds_backslide p {
    margin-top: 20px;
}

/* Hover effect */
.inds_slide:hover .inds_backslide {
    opacity: 1;
    transform: translateY(0);
}

.inds_slide:hover .plus_icon {
    transform: rotate(45deg);
    /* + to × effect */
}

.slick-dots {
    bottom: -15%;
}

.slick-dots li button {
    width: 14px;
    height: 8px;
    border-radius: 10px;
    background: var(--ddd-gray);
    transition: all 0.3s ease;
}

.slick-dots li.slick-active button {
    width: 30px;
    height: 8px;
    border-radius: 10px;
    background: linear-gradient(90deg, #c32e2d 0%, #ddab28 100%), #c22523;
    transform: translateX(-6px);
    transition: all 0.3s ease;
}

.slick-dots li button:before {
    display: none;
}

/* inds */
/* partner */
.partner {
    padding: 75px 0;
    background: #EEE;
    box-shadow: 0 15px 24px 0 rgba(0, 0, 0, 0.20);
}

.partner_slider {
    margin-top: 60px;
}

.partner_slider img {
    /*display: block;*/
    height: 120px;
}

.core_slider .core_slide {
    /*display: block;*/
    height: 300px;
}

.partner_slider .slick-slide {
    margin-right: 50px;
}

/* partner */

.partner_bg
{
    padding:10px 0;
}

/* tech */
.tech_head {
    text-align: center;
    margin-bottom: 50px;
}

.tech_wrapper {
    margin-top: 60px;
}

.tech_slider .slick-slide {
    margin-right: 60px;
}

.tech_left h2 {
    color: var(--111-black);
    font-family: 'Oswald', sans-serif;
    font-size: 36px;
    font-style: normal;
    font-weight: 400;
    line-height: 44px;
}

.head_2 span {

    font-size: 30px;
    font-style: normal;
    font-weight: 400;
    line-height: 44px;
}

.tech_des {
    display: flex;
    align-items: start;
    gap: 20px;
    padding: 20px 40px;
    background: var(--eee-gray);
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    position: relative;
}

.tech_right {
    position: absolute;
    right: 5%;
    top: -15%;
}

.arrow_2 {
    height: 60px;
    width: 60px;
    transition: all 0.3s ease;
}

.tech_slide:hover .arrow_2 {
    transition: all 0.3s ease;
    rotate: 45deg;
}

/* tech */
/* steps */
.mob_step_wrapper{margin-top: 50px;display:none;}
.step_wrapper {
    margin-top: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
}

.step_image {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    height: 100%;
}

.step {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    width: fit-content;
    height: -webkit-fill-available;
}

.step_content {
    margin-top: 50px;
    text-align: center;
}

.step .title_36 {
    color: var(--fob-yellow);
}

/* steps */
/* testi */
.testimonial {
    background: var(--eee-gray);
    box-shadow: 0 15px 24px 0 rgba(0, 0, 0, 0.20);
    padding: 60px 0;
}

.testi_wrapper {
    margin-top: 50px;
}

.testi_slide {
    border-radius: 10px;
    border: 1px solid var(--ddd-gray);
    background: #FFF;
    padding: 60px 40px;
    display: flex;
    align-items: center;
    justify-self: center;
    flex-direction: column;
    gap: 60px;
    margin-right: 50px;
}

.testi_slider .slick-dots {
    bottom: -50px;
}

/* testi */
/* feature css start */

.head-box {
    justify-content: space-between;
}

.head-box .fa-solid {
    ---fa-style: 400;
}

.head-box .fa-arrow-right {
    transform: rotate(-47deg);
    transition: transform 0.5s ease;
}

.head-box .btn_0:hover .fa-arrow-right {
    transform: rotate(0deg);
}

.featured-projects-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
    margin-top: 25px;
}

.featured-project-item {
    position: relative;
    overflow: hidden;
    /*border-radius: 10px;*/
    cursor: none;
}

.featured-project-item img {
    width: 100%;
    object-fit: cover;
    /*border-radius: 10px;*/
    display: block;
    transition: transform 0.3s ease;
}

.featured-project-item:hover img {
    transform: scale(1.05);
}

.featured-project-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 8, 8, 0.801);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    opacity: 0;
    transition: opacity 0.6s ease;
    /*border-radius: 10px;*/
    text-align: center;
    padding: 40px 30px 0;
    flex-direction: column;
}

.featured-project-item:hover .featured-project-overlay {
    opacity: 1;
}

.featured-project-overlay h3 {
    font-size: 24px;
    margin-bottom: 10px;
    color: #ddab28;
    font-weight: 400;
}

/* fature css ends */
/* contact */
.contact_head {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.contact_btn {
    display: flex;
    gap: 50px;
    align-items: center
}
.ct_a:hover{color:var(--005-blue);}

.ct_arrow {
    width: 315px;
    position: relative;
}

.arrow_svg {
    position: absolute;
    top: 50%;
    animation: mover 1s infinite alternate;
}

@keyframes mover {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-10px);
    }
}

.map_wrapper {
    margin: 30px 0;
}

.ct_info {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 20px;
}

.ct_form {
    padding: 40px;
    border-radius: 10px;
    border: 1px solid var(--ddd-gray);
}

.form-floating {
    margin-bottom: 60px;
}

.ct_form .form-check {
    margin-top: 30px;
    margin-bottom: 40px;
}

.form-control {
    border: none;
    border-bottom: 1px solid var(--ddd-gray);
    border-radius: 0;
}

.form-control:focus {
    border-color: unset;
    outline: 0;
    box-shadow: none
}

textarea {
    resize: none;
}

/* contact */
/* footer */
.ft_wrapper {
    display: flex;
    /* gap: 140px; */
    justify-content: space-between;
    border-top: 1px solid var(--ddd-gray);
    padding-top: 80px;
    margin-top: 80px;
}

.ft_top {
    display: flex;
    gap: 60px;
}

.ft_left {
    max-width: 583px;
}

.ft_top_left {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.ft_social {
    display: flex;
    align-items: center;
    gap: 10px;
}

.head_social .icon,
.ft_social .icon,
.head_social a,
.ft_social a {
    position: relative;
    border-radius: 50%;
    width: 35px;
    height: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    text-decoration: none;
}

.head_social svg,
.ft_social svg {
    width: 24px;
    height: 24px;
    transition: all 0.2s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.head_social svg path, .ft_social svg path {
  /*fill: #999999;*/
  transition: fill 0.3s ease;
}

.head_social svg:hover path , .ft_social svg:hover path {
  fill: #005762;
}

.head_social .tooltip,
.ft_social .tooltip {
    position: absolute;
    top: 0;
    font-size: 14px;
    background: #fff;
    color: #333;
    padding: 5px 8px;
    border-radius: 5px;
    box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    white-space: nowrap;
    left: 50%;
    transform: translateX(-50%);
}

.head_social .tooltip::before,
.ft_social .tooltip::before {
    position: absolute;
    content: "";
    height: 8px;
    width: 8px;
    background: #fff;
    bottom: 26px;
    left: 50%;
    transform: translate(-50%) rotate(45deg);
    transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.head_social a:hover .tooltip,
.ft_social a:hover .tooltip,
.head_social .icon:hover .tooltip,
.ft_social .icon:hover .tooltip {
    top: 48px;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.1);
}

/* LinkedIn hover effects */
/*.head_social a:first-child:hover,*/
/*.ft_social a:first-child:hover,*/
/*.head_social .linkedin:hover,*/
/*.ft_social .linkedin:hover {*/
/*    background: #0077b5;*/
/*    color: #fff;*/
/*}*/

.head_social a:first-child:hover .tooltip,
.ft_social a:first-child:hover .tooltip,
.head_social .linkedin:hover .tooltip,
.ft_social .linkedin:hover .tooltip {
    background: #0077b5;
    color: #fff;
}

.head_social a:first-child:hover .tooltip::before,
.ft_social a:first-child:hover .tooltip::before,
.head_social .linkedin:hover .tooltip::before,
.ft_social .linkedin:hover .tooltip::before {
    background: #0077b5;
}

.head_social a:first-child:hover svg,
.ft_social a:first-child:hover svg,
.head_social .linkedin:hover svg,
.ft_social .linkedin:hover svg {
    fill: #fff;
}

/* Twitter/X hover effects */
/*.head_social a:nth-child(2):hover,*/
/*.ft_social a:nth-child(2):hover,*/
/*.head_social .twitter:hover,*/
/*.ft_social .twitter:hover {*/
/*    background: #000;*/
/*    color: #fff;*/
/*}*/

.head_social a:nth-child(2):hover .tooltip,
.ft_social a:nth-child(2):hover .tooltip,
.head_social .twitter:hover .tooltip,
.ft_social .twitter:hover .tooltip {
    background: #000;
    color: #fff;
}

.head_social a:nth-child(2):hover .tooltip::before,
.ft_social a:nth-child(2):hover .tooltip::before,
.head_social .twitter:hover .tooltip::before,
.ft_social .twitter:hover .tooltip::before {
    background: #000;
}

.head_social a:nth-child(2):hover svg,
.ft_social a:nth-child(2):hover svg,
.head_social .twitter:hover svg,
.ft_social .twitter:hover svg {
    fill: #fff;
}

/* Facebook hover effects (if applicable) */
/*.head_social a:nth-child(3):hover,*/
/*.ft_social a:nth-child(3):hover,*/
/*.head_social .facebook:hover,*/
/*.ft_social .facebook:hover {*/
/*    background: #1877f2;*/
/*    color: #fff;*/
/*}*/

.head_social a:nth-child(3):hover .tooltip,
.ft_social a:nth-child(3):hover .tooltip,
.head_social .facebook:hover .tooltip,
.ft_social .facebook:hover .tooltip {
    background: #1877f2;
    color: #fff;
}

.head_social a:nth-child(3):hover .tooltip::before,
.ft_social a:nth-child(3):hover .tooltip::before,
.head_social .facebook:hover .tooltip::before,
.ft_social .facebook:hover .tooltip::before {
    background: #1877f2;
}

.head_social a:nth-child(3):hover svg,
.ft_social a:nth-child(3):hover svg,
.head_social .facebook:hover svg,
.ft_social .facebook:hover svg {
    fill: #fff;
}

/* Instagram hover effects */
/*.head_social a:nth-child(4):hover,*/
/*.ft_social a:nth-child(4):hover,*/
/*.head_social .instagram:hover,*/
/*.ft_social .instagram:hover {*/
/*    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);*/
/*    color: #fff;*/
/*}*/

.head_social a:nth-child(4):hover .tooltip,
.ft_social a:nth-child(4):hover .tooltip,
.head_social .instagram:hover .tooltip,
.ft_social .instagram:hover .tooltip {
    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    color: #fff;
}

.head_social a:nth-child(4):hover .tooltip::before,
.ft_social a:nth-child(4):hover .tooltip::before,
.head_social .instagram:hover .tooltip::before,
.ft_social .instagram:hover .tooltip::before {
    background: #e4405f;
}

.head_social a:nth-child(4):hover svg,
.ft_social a:nth-child(4):hover svg,
.head_social .instagram:hover svg,
.ft_social .instagram:hover svg {
    fill: #fff;
}

 .ym_cpy.ym_mob{display:none;}
.ym_cpy {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 50px;
    font-size: 14px;
}

.ym_cpy a {
    color: var(--333-black);
    text-decoration: underline;
}

.ft_right {
    display: flex;
    gap: 120px;
}

.ft_head {
    color: var(--005-blue);
    font-family: Oswald;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    margin-bottom: 20px;
    /* 100% */
}

.ft_list {
    padding: 0;
    list-style: none;
}

.ft_list li:not(:last-child) {
    margin-bottom: 10px;
}

.ft_list a {
    color: var(--333-black);
    display: inline-block;
    transition: all 0.3s ease;
}

.ft_list a:hover {
    /*text-shadow: 2px 2px #ddd;*/
    transform: translateY(-5px);
    transition: all 0.3s ease;
}

.ft_bottom {
    text-align: center;
    margin-top: 50px;
}

/* footer */

/* story */
.banner {
    padding-top: 200px;
}
.service_banner p{color:var(--333-black);}

.banner_para {
    margin-top: 40px;
    margin-bottom: 60px;
}

.ethics_wrapper {
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 30px;
}

.ethic_1 {
    border-radius: 10px;
    border: 1px solid var(--bbb-gray);
    padding: 40px 60px;
    width: 50%;
}

.story_mid {
    margin-top: -75px;
    position: relative;
    z-index: -1;
}

.core_slide {
    background-color: var(--eee-gray);
    padding: 25px;
    display: flex;
    flex-direction: column;
    gap: 40px;
    border-radius: 10px;
    margin-right: 25px;

    &:hover {
        svg path {
            color: #fff;
            fill: #fff;
        }
        .slide_title, p {
            color: #fff;
        }

        background: linear-gradient(0deg, #c32e2d -0.02%, #ddab28 99.98%), #c22523;
        transition: all 0.5s ease;
    }
}

/* our-story */
/* process */
.pc_banner_wrapper {
    display: flex;
    align-items: center;
}

.procedure_wrapper {
    display: flex;
    flex-direction: column;
    gap: 50px;
}

.proced_box {
    position: sticky;
    z-index: 1;
    height: 650px;
}

.proced_box p {
    font-weight: 400;
}

.proced_content_1 {
    position: absolute;
    width: 600px;
    top: 60px;
    right: 53px;
}

.proced_content_2 {
    position: absolute;
    width: 600px;
    top: 60px;
    left: 74px;
}

.proced_pill {
    border-radius: 20px;
    background: var(--fob-yellow);
    font-family: "Oswald", sans-serif;
    display: inline-block;
    margin-bottom: 20px;
    padding: 5px 30px;

}

.proced {
    border-radius: 10px;
    border: 1px solid var(--bbb-gray);
    overflow: hidden;
    position: relative;
    background-color: #fff;
    height: 100%;
    display: flex;
    align-items: end;
}

.proced .svg_wrapper {
    margin-bottom: 50px
}

.proced_1 {
    top: 12%;
}

.proced_2 {
    top: 14%;
}

.proced_3 {
    top: 16%;
}

.proced_4 {
    top: 18%;
}

.draw-path {
    stroke: #BBBBBB;
    fill: none;
    stroke-width: 1;
    /* Remove initial dasharray and dashoffset to avoid pre-animation */
}

.animate-draw {
    stroke-dasharray: 3000;
    /* Initial estimate, updated dynamically */
    stroke-dashoffset: 3000;
    animation: draw 50s linear forwards;
}

@keyframes draw {
    to {
        stroke-dashoffset: 0;
    }
}

.proced_slider {
    display: flex;
}

.proced_slide {
    position: relative;
    overflow: hidden;
}

.proced_slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0.3s ease-in-out;
    opacity: 1;
    display: block;
}

.proced_slide img:hover, .gallery_wrapper img:hover {
    scale: 1.1;
    transition: all 0.3s ease;
}

.fade-out {
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

/* process */

/* team */
.team_wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 95px;
    row-gap: 100px;
}

.team_box {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.desg {
    color: var(--005-blue);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
}

.gallery_wrapper {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    /* 5 equal columns */
    grid-template-rows: repeat(2, 1fr);
    /* 2 equal rows */
    width: 100%;
    height: 100%;
    overflow: hidden;
    transition: all 0.3s ease;
}

/* team */
/*contact*/
.ct_form_wraper {
    border: 1px solid var(--bbb-gray);
    padding: 69px 110px;
    border-radius: 10px;
}

.ct_box_wrapper {
    display: flex;
    align-items: stretch;
    /* ✅ key: makes all .ct_box match tallest one */
    gap: 40px;
     position: relative;
    z-index: 2;
   
}

.ct_box {
    background-color: var(--005-blue);
    padding: 35px;
    display: flex;
    flex-direction: column;
    gap: 37px;
    align-items: flex-start;
    border-radius: 10px;
    border: 5px solid #FFF;
    /* ✅ remove height: 100%; */
    box-sizing: border-box;
}
.ct_box .title_24, .ct_box a{color:#fff;}
.ct_box img{filter:invert(1);}

/* 1️⃣ Fixed - Address */
.ct_box_wrapper .ct_box:nth-child(1) {
    flex: 0 0 450px;
}

/* 2️⃣ Flexible - Call Us */
.ct_box_wrapper .ct_box:nth-child(2) {
    flex: 1 1 400px;
    min-width: 250px;
}

/* 3️⃣ Flexible - Mail Us */
.ct_box_wrapper .ct_box:nth-child(3) {
    flex: 1 1 670px;
    min-width: 300px;
}

.email_box {
    display: flex;
    flex-wrap: wrap;
}

.email_box a:nth-child(1),
.email_box a:nth-child(2) {
    border-right: 1px solid #fff;
}


.map {
    position: relative;
    z-index: 1;
    margin-top: -5%;
}

.map iframe {
    height: 740px;
}

/*contact*/

/* career */
.cc_box {
    display: flex;
    padding: 60px 35px;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
    border-radius: 10px;
    background: var(--eee-gray);
    height: 100%;
}

.life_inside {
    padding: 79px 57px;
    border-radius: 10px;
    border: 1px solid var(--ddd-gray);
    background: #FFF;
    margin-top: -10%;
    position: relative;
}

.life_inside p {
    color: var(--333-black);
    font-size: 36px;
    font-style: normal;
    font-weight: 400;
    line-height: 50px;
}

.job_box {
    border-radius: 20px;
    background: var(--eee-gray);
    padding: 63px 58px;
}

.job_box p {
    margin: 20px 0 20px 0;
}

.work_time {
    color: var(--005-blue);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
}

/* career */

/* 3-d printing */
.service_wrapper {
    border-radius: 10px;
    border: 1px solid var(--bbb-gray);
    padding: 65px 0;
}

.yellow_pill {
    border-radius: 20px;
    background: var(--fob-yellow);
    display: inline-block;
    padding: 10px 30px;
    color: var(--111-black);
    font-family: 'Oswald', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 24px;
    margin-bottom: 20px;
}

.bl {
    border-left: 1px solid var(--bbb-gray);
    padding-left: 30px;
}

.serv_app_slider .slick-track {
    width: auto !important;
}
.serv_app_slider_multi .slick-track {
    margin-left:0;
}

.serv_cta {
    background-image: url('../images/serv_cta.png');
    background-repeat: no-repeat;
    background-size: cover;
    padding: 84px 114px;
}

.serv_cta_ctnt {
    border-left: 1px solid white;
    padding-left: 50px;
}

.serv_cta_ctnt ul li {
    color: white;
}

/* 3-d printing */
/* project */

.project .nav {
    gap: 20px;
}

.project .nav-link.active {
    display: inline-block;
    width: fit-content;
    color: #fff;
    border-radius: 5px;
    background: linear-gradient(0deg, #c32e2d -0.02%, #ddab28 99.98%), #c22523;
    padding: 15px 20px;
    transition: all 0.3s ease;
    border: none;
    line-height: 16px;
    font-weight: 500;
}

.project .nav-link.active:hover {
    /*background: var(--ae2-red);*/
    transition: all 0.3s ease;
}

.project .nav-link {
    display: inline-block;
    width: fit-content;
    color: var(--333-black);
    border-radius: 5px;
    padding: 15px 20px;
    transition: all 0.3s ease;
    border: 1px solid rgba(153, 153, 153, 0.60);
    line-height: 16px;
    font-weight: 500;
}

/* project */
/* architecture */
.how_head span {
    color: var(--005-blue);
    font-family: 'Oswald', sans-serif;
    font-size: 48px;
    font-style: normal;
    font-weight: 400;
    line-height: 44px;
    background: #fff;
}

.how_head {
    border-bottom: 1px solid var(--bbb-gray);
    margin-bottom: 30px;
}

.why li::marker, .why span {
    color: var(--fob-yellow);
}

.expect_slide {
    border-radius: 10px;
    background: var(--eee-gray);
    padding: 60px 35px;
    margin-right: 27px;
}

.serv_img_slide {
    position: relative;
    overflow: hidden;

    .serv_img_ctnt {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0);
        opacity: 0;
        transition: background 0.4s ease, opacity 0.4s ease;
        display: flex;
        justify-content: flex-end;
        flex-direction: column;
        padding: 40px 20px;

        p,
        h3 {
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 3;
            overflow: hidden;
            transform: translateY(100%);
            transition: transform 0.4s ease;
        }
    }

    &:hover {
        .serv_img_ctnt {
            background: rgba(0, 0, 0, 0.7);
            opacity: 1;

            p,
            h3 {
                transform: translateY(0);
            }
        }
    }
}

.serv_img_slider .slick-slide {
    margin-right: 10px;
    transform: translateX(20%);
}
.serv_img_slider .slick-dots{bottom:-5%;}

/* how css for 5 imaegs */
.how_5 {
    display: grid;
    gap: 20px;
    grid-template-areas:
        "a b c"
        "a d e";
        grid-template-columns: 2fr 1fr 1fr; 
        margin:50px 0
}

/* Assign each child to its grid area */
.how_5 > div:nth-child(1) {
    grid-area: a;
}

.how_5 > div:nth-child(2) {
    grid-area: b;
}

.how_5 > div:nth-child(3) {
    grid-area: c;
}

.how_5 > div:nth-child(4) {
    grid-area: d;
}

.how_5 > div:nth-child(5) {
    grid-area: e;
}

.how_wrapper {
    position: relative;
}

.how_ctnt {
    position: absolute;
    width: 100%;
    height: 100%;
    inset: 0;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    padding: 20px;
}

/* architecture */
/* how css for 5 imaegs */
/* how-3 */
.how_3{
    display: flex;
    gap:50px;
    margin:50px 0;
}
/* how-3 */
/* how-4 */
.how_4 {
    display: grid;
    gap: 20px;
    grid-template-areas:
        "a b "
        "c d ";
    margin: 50px 0;
}

.how_4 > div:nth-child(1) {
    grid-area: a;
}

.how_4 > div:nth-child(2) {
    grid-area: b;
}

.how_4 > div:nth-child(3) {
    grid-area: c;
}

.how_4 > div:nth-child(4) {
    grid-area: d;
}

/* how-4 */

/*blog_listing__*/
.blog_wrapper .head_2, .blog_wrapper .tech_slide p{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.blog_list li:not(:last-child) {
  margin-bottom: 10px;
}
/*blog_listing__*/

/*gsap*/
     .gsap_text span {
      display: inline-block;
      opacity: 0.1;
    }
/*gsap*/


/*--------------------------*/

.service_how .comp_bus_ext
{
    color:#333;
}

.sheikh-zayed-mosque
{
   scale: 1.3;
}

.Inquiry_jump {
    top: 25%;
     right: -30px;
     transform: rotate(270deg);
      padding: 15px 20px !important;
     position: fixed;
    border-radius: 10px 10px 0 0;
        z-index: 2;
}

.float-buttons{animation: 1s infinite alternate button-updown;}
@keyframes button-updown {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-15px);
    }
/*new css*/
/*.hero_model{height:63vh;}*/
/*.hero_parent{height:100vh;}*/
/*.thumb_wrapper{position: absolute;*/
/*    right: 0;*/
/*    bottom: 18%;*/
/*}*/
/*.model_wrapper{position:absolute;inset:0;}*/
/*.engine_1{scale:1.5;}*/
/*.sheikh-zayed-mosque{scale:1.5;}*/
/*.f-16{scale:1.8;}*/