@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Koh+Santepheap:wght@100;300;400;700;900&display=swap');

:root {
    --navBG-color: #39384e;
    --mainBG-color: #FFE8D1;
    --yellowSection: #FECA1F;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Koh Santepheap", serif;
}

.navBG {
    background-color: var(--navBG-color);
}

.navbar-brand img {
    width: 300px;
    height: 100%;
}

.yellowSection {
    background-color: var(--yellowSection);
}

.fs-70 {
    font-size: 70px;
}

.fs-60 {
    font-size: 60px;
}

.fs-50 {
    font-size: 50px;
}


.lh-14 {
    line-height: 1.4;
}

.zi-9 {
    z-index: 9;
}

.mainHeadBorderImg {
    left: -2%;
    top: 24%;
    z-index: -1;
    width: 57%;
}

.navbar-toggler {
    border: solid 2px #fff;
    border-radius: 3px;
}

.electronDiv {
    overflow: hidden;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

.fontFamilyInter {
    font-family: "Inter", sans-serif;
}

select.form-select {
    border: 1px solid #ced4da;
    outline: none;
}


/* Mega Menu */
.mega-menu {
    width: 85%;
    right: 0;
    display: none;
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.3s ease;
    position: absolute;
    top: 95% !important;
    left: auto !important;
    background: #fff;
    z-index: 999;
    margin-top: 0 !important;
}

/* Arrow */
.mega-menu .arrow-up {
    position: absolute;
    top: -18px;
    right: 24%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-bottom: 20px solid #fff;
}

/* Hover Effect for Desktop */
@media (min-width: 992px) {
    .nav-item.dropdown:hover .mega-menu {
        display: block;
        opacity: 1;
        transform: translateY(0);
    }
}

/* Mobile Friendly */
@media (max-width: 600px) {
    .mega-menu {
        position: static;
        width: 100%;
        box-shadow: none;
        border-top: none;
        opacity: 1;
        transform: none;
        display: none;
        /* pehle block tha, ab hidden */
    }

    .mega-menu.show {
        display: block;
        /* JS is class ko toggle karega */
        height: 50vh;
        overflow-x: hidden;
        overflow-y: auto;
        border-radius: 5px !important;
    }

    .mega-menu .arrow-up {
        display: none;
    }
}


/* Dropdown items */
.dropdown-item {
    padding: 5px 10px;
    transition: all 0.2s;
    font-size: 18px;
    display: flex;
    align-items: center;
}

.dropdown-item img {
    margin-right: 8px;
    width: 18px;
}

.dropdown-item:hover {
    background-color: #f8f9fa;
    padding-left: 15px;
}

.headMenuCircle {
    background-color: var(--mainBG-color);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    cursor: pointer;
}

.headMenuCircle:hover {
    background-color: var(--yellowSection);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    cursor: pointer;
}

.headMenuCircle i {
    color: #FECA1F;
}

.headMenuCircle:hover i {
    color: var(--navBG-color);
}

/* Animated Gradient Border for Nav Items */
.navbar-nav .nav-link {
    position: relative;
    padding-bottom: 6px;
    color: #fff;
    font-weight: 400;
}

.nav-link {
    font-size: 18px;
}

.activeMenu::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 8px;
    width: 80%;
    height: 5px;
    /* Thickness of the border */
    background: linear-gradient(90deg, #FF551D, #FECA1F, #1BB6F9);
    animation: gradientMove 3s linear infinite;
    border-radius: 5px;
}

.navbar-nav .nav-link::after {
    content: "";
    position: absolute;
    left: 10px;
    bottom: 0;
    width: 0;
    height: 5px;
    background: linear-gradient(90deg, #FF551D, #FECA1F, #1BB6F9);
    background-size: 300% 100%;
    animation: gradientMove 3s linear infinite;
    transition: width 0.4s ease;
    border-radius: 5px;
}

.navbar-nav .nav-link:hover::after {
    width: 80%;
}

.megaMenuStyle h6 {
    font-size: 20px;
    margin-bottom: 1.5rem;

}

.dropdown-toggle::after {
    border-top: none;
}

@keyframes gradientMove {
    0% {
        background-position: 0% 50%;
    }

    100% {
        background-position: 100% 50%;
    }
}

.subContent {
    font-weight: 700;
    font-size: 19px;
    margin-bottom: 5rem;
}

.mainBG {
    background-color: var(--mainBG-color);
}

@keyframes floatImage {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-20px);
    }
}

.headLetsWork {
    font-weight: 400;
    font-size: 20px;
    line-height: 100%;
}

.headMphasizes {
    font-weight: 700;
    z-index: 9;
}

.headImg {
    bottom: 2.5rem;
}

.letsPera {
    font-weight: 400;
    font-size: 20px;
}

.letsWork_3 {
    right: 0;
    top: 5%;
    width: 120px;
    /* animation: floatImage 3s ease-in-out infinite; */
}

.letsWork_1 {
    left: 5%;
    bottom: 5%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

.letsWork_2 {
    left: 15%;
    top: 5%;
    width: 40px;
    animation: floatImage 3s ease-in-out infinite;
}


.soclialNetwork {
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.network {
    position: relative;
    width: 90vw;
    height: 90vw;
    max-width: 600px;
    max-height: 600px;
}

#contentBox {
    transition: opacity 0.4s ease, transform 0.4s ease;
}

#contentBox.fade-out {
    opacity: 0;
    transform: translateX(-20px);
}

#contentBox.fade-in {
    opacity: 1;
    transform: translateX(0);
}


/* Client slider css */

/* Second Client Carusel */
.logoCarousel {
    overflow: hidden;
    width: 100%;
    padding: 20px 0;
}

.logoTrack {
    display: flex;
    animation: scroll 20s linear infinite;
    width: max-content;
}

.logoCarousel:hover .logoTrack {
    animation-play-state: paused;
}

.logoCaroselImg {
    flex: 0 0 auto;
    width: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.logoCaroselImg img {
    max-width: 100%;
    height: auto;
    width: 150px;
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-1000px);
    }
}


/* Center Circle */
.center {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 18%;
    height: 18%;
    background: #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2.5vw;
    color: #000;
    z-index: 10;
    animation: pulse 3s infinite;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.2);
}

/* Main Circles */
.circle {
    position: absolute;
    width: 12%;
    height: 12%;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 2vw;
    animation: float 5s infinite ease-in-out;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.circle:hover {
    transform: scale(1.2);
    box-shadow: 0 0 25px rgba(255, 255, 255, 0.7);
    z-index: 20;
}

.circle:nth-child(odd) {
    animation-duration: 6s;
}

.circle:nth-child(even) {
    animation-duration: 4.5s;
}

/* Circle colors + positions (percent-based for responsiveness) */
.facebook {
    background: #1877f2;
    top: 5%;
    left: 20%;
}

.twitter {
    background: #1da1f2;
    top: 15%;
    right: 15%;
}

.instagram {
    background: #e4405f;
    top: 50%;
    right: 5%;
}

.linkedin {
    background: #0077b5;
    bottom: 10%;
    right: 20%;
}

.youtube {
    background: #ff0000;
    bottom: 5%;
    left: 25%;
}

.whatsapp {
    background: #25d366;
    top: 60%;
    left: 5%;
}

.github {
    background: #333;
    top: 30%;
    left: 10%;
}

.snapchat {
    background: #fffc00;
    color: #000;
    bottom: 20%;
    right: 40%;
}

/* Small design circles */
.small-circle {
    position: absolute;
    border-radius: 50%;
    background: #f39c12;
    animation: blink 3s infinite;
}

.s1 {
    width: 2.5%;
    height: 2.5%;
    top: 10%;
    left: 40%;
}

.s2 {
    width: 3%;
    height: 3%;
    bottom: 25%;
    left: 15%;
}

.s3 {
    width: 2%;
    height: 2%;
    top: 70%;
    right: 20%;
}

.s4 {
    width: 2.5%;
    height: 2.5%;
    bottom: 10%;
    right: 30%;
}

.s5 {
    width: 3.5%;
    height: 3.5%;
    top: 40%;
    right: 10%;
}

/* Colors alternate */
.small-circle:nth-child(odd) {
    background: #3498db;
}

.small-circle:nth-child(even) {
    background: #e74c3c;
}

/* Animations */
@keyframes float {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-15px);
    }

    100% {
        transform: translateY(0px);
    }
}

@keyframes pulse {
    0% {
        transform: translate(-50%, -50%) scale(1);
    }

    50% {
        transform: translate(-50%, -50%) scale(1.1);
    }

    100% {
        transform: translate(-50%, -50%) scale(1);
    }
}

@keyframes blink {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.3;
        transform: scale(0.7);
    }
}

/* Responsive font size */
@media (max-width: 768px) {
    .center {
        font-size: 5vw;
    }

    .circle {
        font-size: 4vw;
    }
}


.custom-card {
    transition: box-shadow 0.3s;
}

.custom-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.card-image {
    height: 250px;
    /* object-fit: cover; */
    transition: height 0.4s;
    width: 100%;
}

.custom-card:hover .card-image {
    height: 180px;
    /* border: 3px solid transparent; */
    /* border-image: linear-gradient(90deg, #FF551D, #FECA1F, #1BB6F9) 1; */
}

.card-pera {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    transition: all 0.4s;
    max-height: 1.5em;
}

.custom-card:hover .card-pera {
    white-space: normal;
    max-height: 6em;
    /* overflow: visible; */
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
}

.learn-more-link {
    transition: opacity 0.3s;
    opacity: 0;
    color: #000;
    font-weight: 600;
}

.custom-card:hover .learn-more-link {
    display: flex !important;
    opacity: 1;
    margin-top: 10px;
}

.learn-more-link:hover {
    color: #FECA1F;
}

.tree-container {
    max-width: fit-content;
    margin: 0 auto;
}

.tree-container img {
    top: 0rem;
    right: -4rem;
    width: 100px;
}

/* Vertical line from heading */
.tree-container::after {
    content: "";
    position: absolute;
    top: 94%;
    left: 47%;
    transform: translateX(-50%);
    width: 0;
    height: 67px;
    border-left: 2px dotted #000;
    /* dotted vertical line */
}

/* Custom row (flex like bootstrap row) */
.treeRow {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 100px;
    /* space from heading */
    position: relative;
}

.cardImgRadius {
    border-radius: 1rem 1rem 0 0;
}

/* Horizontal connector line between cards */
.treeRow::before {
    content: "";
    position: absolute;
    top: -40px;
    left: 12.5%;
    right: 12.5%;
    height: 0;
    border-top: 2px dotted #000;
}

.treeCol {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 0 10px;
    height: 385px;
}

/* Vertical line from horizontal bar to card */
.treeCol::before {
    content: "";
    position: absolute;
    top: -64px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 65px;
    border-left: 2px dotted #000;
    /* dotted vertical line */
}

/* Responsive behavior */
@media (max-width: 991px) {
    .treeCol {
        flex: 0 0 50%;
        /* 2 cards per row */
        max-width: 50%;
    }
}

@media (max-width: 575px) {

    .treeRow::before,
    .treeCol::before,
    .tree-container::after {
        display: none;
        /* Mobile pe lines hide */
    }

    .treeCol {
        flex: 0 0 100%;
        /* 1 card per row */
        max-width: 100%;
    }
}


.letsContrary_1 {
    left: 5%;
    top: 5%;
    width: 40px;
    animation: floatImage 3s ease-in-out infinite;
}

.letsContrary_2 {
    left: 0px;
    bottom: 10px;
    width: 40px;
    /* animation: floatImage 3s ease-in-out infinite; */
}

.letsContrary_3 {
    right: 0%;
    top: 10%;
    width: 50px;
    /* animation: floatImage 3s ease-in-out infinite; */
}

.letsContrary_4 {
    right: 30%;
    bottom: 1%;
    width: 40px;
    z-index: 9;
    animation: floatImage 3s ease-in-out infinite;
}


.headSolutions {
    font-weight: 700;
    max-width: fit-content;
    z-index: 9;
}

.headSolutions img {
    width: 300px;
    left: 0;
    z-index: -1;
}

.solutions_1 {
    right: 0;
    top: -8%;
    width: 80px;
    /* animation: floatImage 3s ease-in-out infinite; */
}


/* Tabs Style */
.custom-tabs {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
    padding: 15px 0;
}

.custom-tabs .tab-link {
    font-weight: 600;
    font-size: 18px;
    color: #000;
    text-decoration: none;
    position: relative;
    padding: 4px 10px;
    transition: all 0.3s ease-in-out;
}

/* Active Tab */
.custom-tabs .tab-link.active {
    background: #3c3c4e;
    color: #FECA1F;
    border-radius: 25px;
    padding: 6px 16px;
    position: relative;
}

/* Arrow for Active Tab */
.custom-tabs .tab-link.active::after {
    content: "";
    position: absolute;
    bottom: -8px;
    /* arrow neeche aayega */
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 10px solid #3c3c4e;
    /* arrow ka color same as active bg */
}

/* Tab Content */
.tab-content-section {
    display: none;
    position: relative;
    border-radius: 35px;
    overflow: hidden;
    margin: 20px auto;
    /* max-width: 1200px; */
}

.tab-content-section.active {
    display: block;
    animation: fadeIn 0.6s ease-in-out;
}

.tab-content-section img.bg-img {
    width: 100%;
    height: 85vh;
    display: block;
}

.tab-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* background: rgba(255, 255, 255, 0.20); */
    padding: 20px;
}

.tab-overlay h3 {
    font-weight: bold;
    margin-bottom: 10px;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(15px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media(max-width:768px) {
    .custom-tabs {
        gap: 10px;
        justify-content: center;
    }

    .custom-tabs .tab-link {
        font-size: 16px;
    }
}

.userReview {
    width: 350px;
}

.solutions_2 {
    right: 0;
    top: 35%;
    width: 275px;
    z-index: 9;
    /* animation: floatImage 3s ease-in-out infinite; */
}


.whereContainer {
    max-width: fit-content;
    margin: 0 auto;
}

.whereContainer img {
    top: 0rem;
    left: -4rem;
    width: 100px;
}

.service-card {
    border-radius: 10px;
    padding: 35px;
    text-align: left;
    transition: all 0.3s ease-in-out;
    position: relative;
    overflow: hidden;
    min-height: 230px;
    color: #222;
}

.service-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: inherit;
    filter: blur(40px);
    opacity: 0.4;
    z-index: -1;
    transition: all 0.3s ease-in-out;
}

.servicesLogoDiv {
    width: 82%;
}


/* Hover lift effect */
.service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0px 12px 25px rgba(0, 0, 0, 0.15) !important;
    background: #39384E !important;
    color: #fff !important;
}

.service-card:hover::before {
    opacity: 0;
}


/* Icon box */

.iconBoxParent {
    width: 100%;
    height: 80px;
}

.icon-box {
    width: 80px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0 0 6px 6px;
    transition: all 0.3s ease-in-out;
}

.iconBoxBG_1 {
    background: #c8ffbf;
}

.iconBoxBG_2 {
    background: #6DF1DF;
}

.iconBoxBG_3 {
    background: #F8B5F4;
}

.iconBoxBG_4 {
    background: #FFDD6A;
}

.iconBoxBG_5 {
    background: #AAB9FB;
}

.iconBoxBG_6 {
    background: #FDFF76;
}

/* Hover icon box bg */
.service-card:hover .icon-box {
    background: #FECA1F !important;
}

.service-card h5 {
    font-weight: bold;
    margin-bottom: 10px;
}

.service-card p {
    font-size: 18px;
}

.service-card a {
    font-weight: bold;
    text-decoration: none;
}

.service-card:hover a {
    color: #fff !important;
}

.service-card a:hover {
    color: #FECA1F !important;
}

/* 🎨 Gradient backgrounds */
.bg-digital {
    background: radial-gradient(50% 50% at 50% 50%, #c8ffbf 28.85%, #ffffff 45.19%, #FFFFFF 65.87%, #dcffbf 81.73%);
}

.bg-email {
    background: radial-gradient(50% 50% at 50% 50%, #B4FFF5 28.85%, #FFFFFF 45.19%, #FFFFFF 65.87%, #B4FFF5 81.73%);
}

.bg-graphic {
    background: radial-gradient(50% 50% at 50% 50%, #FFDBFD 28.85%, #FFFFFF 45.19%, #FFFFFF 65.87%, #FFDBFD 81.73%);
}

.bg-webdev {
    background: radial-gradient(50% 50% at 50% 50%, #FFEDB0 28.85%, #FFFFFF 45.19%, #FFFFFF 65.87%, #FFEDB0 81.73%);
}

.bg-webapp {
    background: radial-gradient(50% 50% at 50% 50%, #E0E5FA 28.85%, #FFFFFF 45.19%, #FFFFFF 65.87%, #E0E5FA 81.73%);
}

.bg-webdev2 {
    background: radial-gradient(50% 50% at 50% 50%, #FEFFBF 28.85%, #FFFFFF 45.19%, #FFFFFF 65.87%, #FEFFBF 81.73%);
}

.where_1 {
    left: 10%;
    top: 10%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

.where_2 {
    right: 0%;
    top: 8%;
    width: 80px;
    /* animation: floatImage 3s ease-in-out infinite; */
}

.where_3 {
    left: 1%;
    top: 50%;
    width: 40px;
    animation: floatImage 3s ease-in-out infinite;
}

.where_4 {
    right: 5%;
    bottom: 10%;
    width: 40px;
    animation: floatImage 3s ease-in-out infinite;
}


.zigBGimage {
    background: url('../images/zigBG.png') no-repeat center center;
    background-size: cover;
    padding: 6rem 0;
}

.thereImg {
    bottom: -1rem;
    left: -0.6rem;
}

.headThere {
    font-weight: 700;
    font-size: 50px;
    line-height: 100%;
}

.peraThere {
    font-weight: 400;
    font-size: 25px;
}

.mxWidth {
    max-width: fit-content;
}

.reviewsLink:hover {
    color: #FECA1F !important;
    text-decoration: underline !important;
}

.zigzagImg_1 {
    top: 5%;
    right: 1%;
    width: 25px;
    animation: floatImage 3s ease-in-out infinite;
}

.zigzagImg_2 {
    left: 2%;
    bottom: 5%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

.zigzagImg_3 {
    right: 40%;
    bottom: 10%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

.variationsImg_1 {
    top: 30%;
    left: 2%;
    width: 40px;
    animation: floatImage 3s ease-in-out infinite;
}

.variationsImg_2 {
    bottom: 25%;
    right: 0%;
    width: 100px;
}

.headVariations {
    font-weight: 700;
    line-height: 100%;
}

.ratingText {
    font-size: 14px;
}

.ratingCount {
    font-size: 22px;
    font-weight: 900;
}

.headTestimonials {
    position: relative;
    z-index: 9;
}


.testimonialsContainer {
    max-width: fit-content;
    margin: 0 auto;
}

.testimonialsContainer img {
    top: 5.5rem;
    left: 0rem;
    width: 350px;
    z-index: 1;
}

.testimonial-img {
    width: 200px;
    height: 200px;
    object-fit: cover;
    border-radius: 50%;
    margin: auto;
}

.testimonial-name {
    font-weight: bold;
    background: var(--mainBG-color);
    position: relative;
    bottom: 1.8rem;
    border-radius: 2rem;
    max-width: fit-content;
    margin: 0 auto;
    padding: 5px 12px;
    font-size: 16px;
}

.testimonial-text {
    font-size: 16px;
    color: #333;
    margin: 10px 0;
    max-width: 300px;
    margin: 0 auto;
    position: relative;
    bottom: 1.5rem;
}

.section-title {
    font-weight: 800;
    text-align: center;
    font-size: 2.5rem;
    margin-bottom: 40px;
    position: relative;
}

.section-title::after {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -8px;
    width: 160px;
    height: 12px;
    background: #ff9a9a;
    z-index: -1;
}

.clientSliderLeft {
    left: 4%;
    top: 40%;
}

.clientSliderRight {
    right: 4%;
    top: 40%;
}

.logo-carousel {
    overflow: hidden;
    width: 100%;
    padding: 20px 0;
    border-top: 1px solid #39384E;
    border-bottom: 1px solid #39384E;
}

.logo-track {
    display: flex;
    width: max-content;
    animation: scroll 30s linear infinite;
}

.logo {
    flex: 0 0 auto;
    width: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-right: solid 1px #39384E;
    padding: 5px 0;
}

.logo img {
    width: 50px;
    height: auto;
    filter: grayscale(100%);
    transition: filter 0.3s;
}

.logo img:hover {
    filter: grayscale(0%);
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

/* Pause on hover */
.logo-carousel:hover .logo-track {
    animation-play-state: paused;
}


.revers-logo-carousel {
    overflow: hidden;
    width: 100%;
    padding: 20px 0;
    border-top: 1px solid #39384E;
    border-bottom: 1px solid #39384E;
}

.revers-logo-track {
    display: flex;
    width: max-content;
    animation: revers-scroll 35s linear infinite;
    /* Slow speed */
}

.revers-logo {
    flex: 0 0 auto;
    width: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-right: solid 1px #39384E;
    padding: 5px 0;
}

.revers-logo img {
    width: 50px;
    height: auto;
    filter: grayscale(100%);
    transition: filter 0.3s;
}

.revers-logo img:hover {
    filter: grayscale(0%);
}

@keyframes revers-scroll {
    0% {
        transform: translateX(-50%);
    }

    100% {
        transform: translateX(0);
    }
}

/* Pause on hover */
.revers-logo-carousel:hover .revers-logo-track {
    animation-play-state: paused;
}



.font-16 {
    font-size: 16px;
}

.variationImg_1 {
    left: 2%;
    top: 15%;
    width: 40px;
    animation: floatImage 3s ease-in-out infinite;
}

.variationImg_2 {
    right: 5%;
    bottom: 10%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

.variationImg_3 {
    right: 5%;
    top: 10%;
    width: 40px;
    animation: floatImage 3s ease-in-out infinite;
}

.sliderYellowBG {
    width: 110%;
}

.footer {
    background-color: #39384e;
}

.footer .list-unstyled a:hover {
    color: #FECA1F !important;
}

.footerBorder {
    background-color: var(--yellowSection);
    height: 2px;
}

.footerHeadBorder {
    background-color: #EBEBEB0F;
    height: 4px;
}

.footerHeadBorder div {
    background-color: #FECA1F;
    height: 4px;
    width: 100px;
}

.socialIconDiv {
    padding: 8px;
    border-radius: 50%;
    transition: all 0.3s ease-in-out;
    width: 40px;
    height: 40px;
    background: transparent;
    border: 1px solid #fff;
}

.socialIconDiv i {
    color: #fff;
    font-size: 16px;
    transition: color 0.3s ease-in-out;
}

/* Facebook */
.socialIconDiv:hover .fa-facebook-f {
    color: #fff;
}

.socialIconDiv:hover:nth-child(1) {
    background: #1877f2;
    /* Facebook Blue */
    border-color: #1877f2;
}

/* Instagram */
.socialIconDiv:hover .fa-instagram {
    color: #fff;
}

.socialIconDiv:hover:nth-child(2) {
    background: radial-gradient(circle at 30% 30%, #feda75, #d62976, #962fbf, #4f5bd5);
    border-color: transparent;
}

/* Twitter (X) */
.socialIconDiv:hover .fa-twitter {
    color: #fff;
}

.socialIconDiv:hover:nth-child(3) {
    background: #1d1e1e;
    border-color: #1d1e1e;
}

/* LinkedIn */
.socialIconDiv:hover .fa-linkedin-in {
    color: #fff;
}

.socialIconDiv:hover:nth-child(4) {
    background: #0a66c2;
    /* LinkedIn Blue */
    border-color: #0a66c2;
}

/* YouTube */
.socialIconDiv:hover .fa-youtube {
    color: #fff;
}

.socialIconDiv:hover:nth-child(5) {
    background: #ff0000;
    /* YouTube Red */
    border-color: #ff0000;
}


/* about css */

.aboutBanner {
    background: url('../images/aboutMain.png') no-repeat center center;
    background-size: cover;
    height: 88vh;
    width: 100%;
}

.aboutOverlay {
    width: 35%;
    right: 4%;
    bottom: 8%;
}

.aboutContent {
    background-color: #39384EF7;
}

.aboutBorder {
    border-left: solid 2px #FECA1F;
}

.card-group img {
    width: 200px;
    object-fit: cover;
    border-radius: 0;
}

.card-group .card-text {
    font-size: 14px;
}

.cardShadow {
    box-shadow: 0px 1px 10px 0px #87868640;
}

.directorsHeading {
    top: 1.8rem;
    left: -5%;
    z-index: 9;
}

.historyHeading {
    margin-top: 6rem;
}

.fw-900 {
    font-weight: 900;
}

.aboutNumberFont {
    font-size: 35px;
}

.historyHeading img {
    top: 0.5rem;
    right: 7.8rem;
    width: 100px;
}

.historyCircle {
    width: 200px;
    height: 200px;
    border-radius: 50%;
    transition: transform 200ms ease, box-shadow 200ms ease;
    transform-origin: center center;
}

.historyCircle:hover {
    transform: scale(1.04);
    box-shadow: 0 10px 30px rgba(0, 0, 0, .15) !important;
}

.majorityLogoImgDiv {
    transition: transform 200ms ease, box-shadow 200ms ease;
    transform-origin: center center;
}

.majorityLogoImgDiv:hover {
    transform: scale(1.04);
    box-shadow: 0 10px 30px rgba(0, 0, 0, .15) !important;
}

.zigzagBorder {
    width: 60%;
    position: absolute;
    left: 20%;
    bottom: 40%;
}

.headSolutions_1 {
    max-width: fit-content;
    z-index: 9;
}

.headSolutions_1 img {
    width: 300px;
    left: 0;
    z-index: -1;
    height: 60px;
    top: 16%;
}

.listCircle div {
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

.listCircle p {
    left: -1rem;
}

.listCircle_1 {
    background-color: #F9C935;

}

.listCircle_2 {
    background-color: #868BF9;
}

.listCircle_3 {
    background-color: #FF7F00;
}

.listCircle_4 {
    background-color: #9EF498;
}

.drivesImg_1 {
    left: 3%;
    top: 5%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.drivesImg_2 {
    right: 0%;
    top: 0%;
    width: 100px;
    /* animation: floatImage 3s ease-in-out infinite; */
}

.drivesImg_3 {
    left: 3%;
    bottom: 10%;
    width: 40px;
    animation: floatImage 3s ease-in-out infinite;
}

.drivesImg_4 {
    right: 7%;
    bottom: 5%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.letrasetImg_1 {
    right: 5%;
    bottom: 8%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

/* Services */

.servicesBanner {
    background-size: cover;
    height: 50vh;
    width: 100%;
}

.servicesContainer {
    max-width: fit-content;
    margin: 0 auto;
}

.servicesContainer img {
    top: 4rem;
    left: 0rem;
    width: 260px;
    rotate: -5deg;
}

.headServices {
    font-weight: 700;
    font-size: 50px;
    line-height: 100%;
    z-index: 9;
}

.contactHeadServices {
    font-size: 60px;
    z-index: 9;
}

.servicesSubHead {
    color: #016E97;
    font-size: 18px;
    letter-spacing: 0%;
}

.servicesMainHead {
    color: #222;
}

.marketing-card {
    border-radius: 6px;
    transition: all 0.3s ease-in-out;
    position: relative;
    overflow: hidden;
    min-height: 230px;
    color: #222;
}

.marketing-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: inherit;
    filter: blur(40px);
    opacity: 0.4;
    z-index: -1;
    transition: all 0.3s ease-in-out;
}

.servicesHead p {
    z-index: 9;
}

.servicesHead img {
    width: 300px;
    top: 42%;
    z-index: 0;
    right: 29%;
}

/* Hover lift effect */
.marketing-card:hover {
    transform: translateY(-8px);
    box-shadow: 0px 12px 25px rgba(0, 0, 0, 0.15) !important;
    background: #ffffff !important;
    color: #151414 !important;
}

.marketing-card:hover::before {
    opacity: 0;
}

/* Icon box */
.marketing-iconBoxParent {
    width: 100%;
    height: 80px;
}

.marketing-icon-box {
    width: 100px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease-in-out;
    box-shadow: 0px 4px 4px 0px #00000040;

}

.marketing-iconBoxBG_1 {
    background: #c8ffbf;
}

.marketing-iconBoxBG_2 {
    background: #6DF1DF;
}

.marketing-iconBoxBG_3 {
    background: #F8B5F4;
}

.marketing-iconBoxBG_4 {
    background: #FFDD6A;
}

.marketing-iconBoxBG_5 {
    background: #AAB9FB;
}

.marketing-iconBoxBG_6 {
    background: #FDFF76;
}

.marketing-card .marketing-icon-box i {
    color: #009fdb;
}

/* Hover icon box bg */
.marketing-card:hover .marketing-icon-box {
    background: #FECA1F !important;
    box-shadow: none;
    border-radius: 100% !important;
    height: 100px;
}

.marketing-card:hover .marketing-icon-box i {
    color: #fff;
}

.marketing-card h5 {
    font-weight: bold;
    font-size: 24px;
    margin-bottom: 10px;
    font-family: "Inter", sans-serif;
}

.marketing-card p {
    font-size: 16px;
    font-family: "Inter", sans-serif;
}

.marketing-card a {
    font-weight: bold;
    text-decoration: none;
}

/* 🎨 Gradient backgrounds */
.marketing-bg-digital {
    background: radial-gradient(44% 40% at 50% 50%, #c8ffbf 28.85%, #ffffff 45.19%, #FFFFFF 65.87%, #dcffbf 81.73%);
}

.marketing-bg-email {
    background: radial-gradient(44% 40% at 50% 50%, #B4FFF5 28.85%, #FFFFFF 45.19%, #FFFFFF 65.87%, #B4FFF5 81.73%);
}

.marketing-bg-graphic {
    background: radial-gradient(44% 40% at 50% 50%, #FFDBFD 28.85%, #FFFFFF 45.19%, #FFFFFF 65.87%, #FFDBFD 81.73%);
}

.marketing-bg-webdev {
    background: radial-gradient(44% 40% at 50% 50%, #FFEDB0 28.85%, #FFFFFF 45.19%, #FFFFFF 65.87%, #FFEDB0 81.73%);
}

.marketing-bg-webapp {
    background: radial-gradient(44% 40% at 50% 50%, #E0E5FA 28.85%, #FFFFFF 45.19%, #FFFFFF 65.87%, #E0E5FA 81.73%);
}

.marketing-bg-webdev2 {
    background: radial-gradient(44% 40% at 50% 50%, #FEFFBF 28.85%, #FFFFFF 45.19%, #FFFFFF 65.87%, #FEFFBF 81.73%);
}

.increaseImg_1 {
    left: 10%;
    top: 10%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

.increaseImg_2 {
    right: 5%;
    top: 8%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.increaseImg_3 {
    left: 5%;
    bottom: 20%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.increaseImg_4 {
    right: 5%;
    bottom: 10%;
    width: 40px;
    animation: floatImage 3s ease-in-out infinite;
}

.headMajority {
    font-weight: 700;
    font-size: 50px;
    line-height: 100%;
    z-index: 9;
}

.headSubMajority {
    font-size: 16px;
    letter-spacing: 0%;
}

.publishBorderBottom {
    rotate: 180deg;
}

.majorityLogoImg {
    width: 130px;
}

/* Full Service Page */

.fullServicesBanner {
    /* height: 50vh; */
}

.fullservicesContainer {
    max-width: fit-content;
    margin: 0 auto;
    width: 48%;
}

.fullservicesContainer img {
    left: 22%;
    width: 400px;
    rotate: -5deg;
    bottom: 0%;
}

.headFullservices {
    max-width: fit-content;
    margin: 0 auto;
    width: 48%;
}

.headFullservices p {
    font-size: 40px;
    letter-spacing: 0%;
}

.headFullservices img {
    left: -4rem;
    width: 100px;
    rotate: -5deg;
    bottom: 8%;
}

.textJustify {
    text-align: justify;
}

.fullservicesContent p {
    font-size: 18px;
    letter-spacing: 0%;
    line-height: 1.6;

}

.fullServiceBorderRight {
    background-color: #0147FF;
    right: 0;
    top: 30%;
    width: 50px;
    height: 320px;
}

.fullServiceBorderRight_2 {
    background-color: #00656A;
    left: 0;
    top: 30%;
    width: 50px;
    height: 320px;
}

.fullServiceBorderRight_3 {
    background-color: #F9D22C;
    right: 0;
    top: 30%;
    width: 50px;
    height: 320px;
}

.headFullservices_2 {
    max-width: fit-content;
    margin: 0 auto;
    width: 48%;
}

.headFullservices_2 p {
    font-size: 40px;
    letter-spacing: 0%;
    position: relative;
    z-index: 9;
}

.headFullservices_2 img {
    right: 0rem;
    width: 240px;
    bottom: 5%;
}

.headFullservices_3 {
    max-width: fit-content;
    margin: 0 auto;
    width: 48%;
}

.headFullservices_3 p {
    font-size: 40px;
    letter-spacing: 0%;
    position: relative;
    z-index: 9;
}

.headFullservices_3 img {
    left: 0rem;
    width: 240px;
    bottom: 5%;
}

/* Career */

.careerContainer {
    max-width: fit-content;
    margin: 0 auto;
    width: 48%;
}

.careerContainer img {
    left: 20%;
    width: 300px;
    bottom: -1rem;
}

.tab-button {
    border: none;
    background: var(--mainBG-color);
    color: #333;
    padding: 12px 20px;
    text-align: left;
    width: 100%;
    font-weight: 600;
    cursor: pointer;
    transition: 0.3s;
    border-radius: 5px;
    margin-bottom: 1rem;
    font-family: "Inter", sans-serif;
    font-size: 18px;
}

.accordion-item {
    font-family: "Inter", sans-serif;
    margin-bottom: 1rem;
}

.tab-button.active {
    background-color: var(--navBG-color);
    color: white;
}

.tab-content-custom {
    padding: 20px;
    background: white;
    height: 300px;
}

.topBorderCareet {
    height: 1px;
    background: #CCCCCC;
    position: absolute;
    top: 0;
    width: 33%;
    border-radius: 1rem;
    left: 3.6%;
    top: 1px;
}

.bottomBorderCareet {
    height: 1px;
    background: #CCCCCC;
    position: absolute;
    bottom: 1px;
    width: 18%;
    border-radius: 1rem;
    left: 3.6%;
}

#currentOpenings span:nth-child(1) {
    font-size: 25px;
    color: #FEE8D2;
}

#currentOpenings span:nth-child(2):hover {
    color: #000;
    transition: color 0.3s ease;
    cursor: pointer;
}

.tab-button:hover {
    background-color: var(--navBG-color);
    color: #fff;
}

@media (max-width: 767px) {
    .tab-container {
        flex-direction: column;
    }

    .tab-content-custom {
        border-left: none;
        border-top: 2px solid var(--navBG-color);
    }
}

.careerTextUnderline {
    height: 4px;
    background: #000;
    border-radius: 1rem;
    position: absolute;
    bottom: 14px;
    width: 100%;
}

.careerTextHeading {
    max-width: fit-content;
    margin: 0 auto;
    position: relative;
    z-index: 9;
    padding: 0 10px;
}

.Hereheading {
    z-index: 9;
}

.Hereheading::before,
.Hereheading::after {
    content: "";
    flex: 1;
    border-bottom: 3px solid black;
    margin: 0 10px;
    max-width: 100%;
}


.submitApplication {
    border-bottom: solid 4px var(--navBG-color);
    max-width: fit-content;
}

.mainTextColor {
    color: var(--yellowSection);
}

.careerAnimatedIcon {
    top: 20%;
    left: 2%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

.careerAnimatedIcon1 {
    bottom: 10%;
    left: 3%;
    width: 15px;
    animation: floatImage 3s ease-in-out infinite;
}

.careerAnimatedIconNew {
    position: absolute;
    bottom: 10%;
    left: 5%;
    width: 10px;
    animation: floatImage 3s ease-in-out infinite;
}

.careerAnimatedIcon2 {
    top: 20%;
    right: 5%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.careerAnimatedIcon3 {
    bottom: 35%;
    left: 30%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

.careerAnimatedIcon4 {
    bottom: 30%;
    right: 10%;
    width: 15px;
    animation: floatImage 3s ease-in-out infinite;
}

.careerAnimatedIcon5 {
    bottom: 10%;
    right: 40%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

.privacyPolicyAnimatedIcon_1 {
    position: absolute;
    bottom: 30%;
    right: 7%;
    width: 15px;
    animation: floatImage 3s ease-in-out infinite;
}

.careerHead p {
    z-index: 9;
}

.careerHead img {
    width: 270px;
    top: 34%;
    z-index: 0;
    right: 37%;
}

/* Accordion button jab collapsed (band) ho */
.accordion-button.collapsed {
    background-color: #FFE8D1 !important;
    color: #000 !important;
}

/* Accordion button jab open (active) ho */
.accordion-button:not(.collapsed) {
    background-color: #39384e !important;
    color: #fff !important;
}

/* Arrow ka color (collapsed state = black) */
.accordion-button.collapsed::after {
    filter: invert(0%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(0%) contrast(100%);
}

/* Arrow ka color (active state = white) */
.accordion-button:not(.collapsed)::after {
    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
}

.accordion-button {
    box-shadow: none !important;
    border: none !important;
}


/* contact */

.contactBorder_1 h3 {
    z-index: 9;
}

.contactBorder_1 img {
    width: 280px;
    top: -0.2rem;
}

.contactBorder_2 img {
    width: 60px;
    top: -1.8rem;
    right: 22%;
}

.submitApplication {
    border-bottom: solid 4px #3E3E3E;
    color: #3E3E3E;
    max-width: fit-content;
    line-height: 2;
}

.contactAnimatedIcon {
    bottom: 10%;
    left: 2%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.contactAnimatedIcon1 {
    top: 10%;
    right: 2%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.hereAreImg {
    width: 310px;
    left: 24%;
    top: -20%;
    z-index: 1;
}

/* Contact */

.contactBanner {
    height: 50vh;
}

.contactContainer {
    max-width: fit-content;
    margin: 0 auto;
    width: 48%;
}

.contactContainer img {
    left: auto;
    width: 230px;
    bottom: 12%;
    right: 0%;
}

.contactAnimatedIcon_7 {
    top: 10%;
    left: 2%;
    width: 15px;
    animation: floatImage 3s ease-in-out infinite;
}

.contactAnimatedIcon_1 {
    top: 6%;
    right: 15%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.contactAnimatedIcon_2 {
    bottom: 5%;
    left: 5%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.contactAnimatedIcon_3 {
    bottom: 25%;
    left: 20%;
    width: 10px;
    animation: floatImage 3s ease-in-out infinite;
}

.contactAnimatedIcon_4 {
    bottom: 10%;
    left: 40%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.contactAnimatedIcon_5 {
    bottom: 10%;
    right: 3%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.contactAnimatedIcon_6 {
    top: 34%;
    left: 15%;
    width: 30px;
    animation: floatImage 3s ease-in-out infinite;
}

.contactAnimatedIcon_8 {
    top: 20%;
    left: 35%;
    width: 20px;
    animation: floatImage 3s ease-in-out infinite;
}

.mapHeadCotainer p {
    z-index: 9;
}

.mapHeadCotainer img {
    bottom: 18%;
    width: 200px;
    right: 38%;
}

.tooltip-bubble {
    display: inline-flex;
    align-items: center;
    background: #fff;
    color: #000;
    font-size: 1.5rem;
    font-weight: 500;
    padding: 5px 15px 5px 6px;
    border-radius: 8px;
    position: relative;
    box-shadow: 4px 14px 9.1px -3px #9D999940;
    width: auto;
    /* --pointer: 50%; */
    left: 4.5rem;
    z-index: 1;
}

.tooltip-bubble::after {
    content: "";
    position: absolute;
    bottom: -12px;
    left: 3.6rem;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 15px solid #fff;
    filter: drop-shadow(0px 3px 2px rgba(0, 0, 0, 0.1));
}

.tooltip-icon {
    width: 35px;
    height: 35px;
    border-radius: 8px;
    background: #f2f2f2;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.tooltip-icon img {
    max-width: 70%;
    max-height: 70%;
    object-fit: contain;
}

.tooltip-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1.2;
}

.tooltip-text .country {
    font-size: 1rem;
}

.tooltip-text .count {
    font-size: 1rem;
    font-weight: bold;
}

.mapCircle {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #FECA1F;
    position: relative;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
    left: 50%;
    top: 2%;
}

/* First Ripple */
.mapCircle::after,
.mapCircle::before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 5px solid #F9DF86;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1);
    opacity: 0;
    animation: blurBubble 1.5s ease-out infinite;
}

.mapCircle::before {
    animation-delay: 0.75s;
}

@keyframes blurBubble {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
    }

    100% {
        transform: translate(-50%, -50%) scale(5);
        opacity: 0;
    }
}

.indiaMapImage {
    width: 60%;
}

.usaMapImage {
    width: 75%;
}

.canadaMapImage {
    width: 80%;
}

.ukMapImage {
    width: 55%;
}

.uaeMapImage {
    width: 80%;
    rotate: 15deg;
    position: relative;
    bottom: 2rem;
}

.callDetails {
    width: 85%;
}

.tooltip-bubbleUK {
    /* width: 195px !important; */
    left: 15.5% !important;
}

.tooltip-bubbleUK::after {
    left: 5.8rem;
}

.fa-heart {
    animation: heartbeat 1.2s infinite;
    transform-origin: center;
}

@keyframes heartbeat {
    0% {
        transform: scale(1);
    }

    14% {
        transform: scale(1.3);
    }

    28% {
        transform: scale(1);
    }

    42% {
        transform: scale(1.3);
    }

    70% {
        transform: scale(1);
    }
}

.contactDetailHover:hover {
    color: #FECA1F !important;
}

.whatsapp-float {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 50px;
    height: 50px;
    background-color: #25d366;
    color: white;
    border-radius: 50%;
    font-size: 30px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
    z-index: 9999;
    text-decoration: none;
}

.whatsapp-float:hover {
    background-color: #1ebe57;
    transform: scale(1.1);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
    color: white;
}