/* bento box */


.bg-lightBlue {
    background-color: #E6EBF5;
}

.bg-sky {
    background-color: #CDF9FF;
}

.bg-ash {
    background-color: #FDFBF7;
}


/* rocket animation */
.flyRocket {
    animation-name: floating;
    animation-duration: 3s;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
    margin-left: 30px;
    margin-top: 5px;
}



@keyframes floating {
    from {
        transform: translate(0, 0px);
    }

    65% {
        transform: translate(0, 15px);
    }

    to {
        transform: translate(0, -0px);
    }
}



/* Grid Section */
.testimonial:nth-child(1) {
    grid-area: one;
}

.testimonial:nth-child(2) {
    grid-area: two;
}

.testimonial:nth-child(3) {
    grid-area: three;
}

.testimonial:nth-child(4) {
    grid-area: four;
}




.testimonial-grid {
    display: grid;
    gap: 1rem;
    grid-template-areas:
        'one'
        'two'
        'three'
        'four'
    ;
}




/* frid media query */
@media screen and (min-width: 33em) {
    .testimonial-grid {
        grid-template-areas:
            "one one"
            "two three"
            "five five"
            "four four";
    }
}

@media screen and (min-width: 38em) {
    .testimonial-grid {
        grid-template-areas:
            "one two three"
            "one two four";
    }
}

@media screen and (min-width: 54em) {
    .testimonial-grid {
        grid-template-areas:
            "one two three"
            "one two four";
    }
}

@media screen and (min-width: 75em) {
    .testimonial-grid {
        grid-template-areas:
            "one two three"
            "one two four";
    }
}


.iconAnimate {
    position: relative;
    animation-name: leftToRight;
    animation-duration: 2s;
    animation: leftToRight 2s infinite;
}


@keyframes leftToRight {
    0% {
        left: 0px;
    }

    50% {
        left: 5px;
    }

    100% {
        left: 0px;
    }
}


/* ============================================================
   Client Logo Marquee — pure CSS
   ============================================================ */

.logo-marquee-wrapper {
    width: 100%;
    max-width: 100%;
    overflow: hidden;          /* clips the scrolling track */
    height: 80px;
    position: relative;
    /* isolation prevents stacking context bleeding */
    isolation: isolate;
}

.logo-marquee-track {
    display: flex;             /* horizontal row */
    flex-direction: row;
    flex-wrap: nowrap;
    width: max-content;
    align-items: center;
    height: 100%;
    animation: logo-marquee-scroll 22s linear infinite;
    /* NO will-change, NO position:absolute — stays in flow */
}

.logo-marquee-wrapper:hover .logo-marquee-track {
    animation-play-state: paused;
}

.logo-marquee-item {
    flex: 0 0 auto;
    width: 130px;
    height: 70px;
    padding: 0 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Override Bootstrap img-fluid to enforce max-height */
.logo-marquee-item img,
.logo-marquee-item img.img-fluid {
    max-height: 55px !important;
    height: auto !important;
    width: auto !important;
    max-width: 102px !important;
    object-fit: contain !important;
    display: block !important;
}

@keyframes logo-marquee-scroll {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

@media (max-width: 576px) {
    .logo-marquee-wrapper { height: 56px; }
    .logo-marquee-item    { width: 90px; padding: 0 10px; height: 56px; }
    .logo-marquee-item img,
    .logo-marquee-item img.img-fluid {
        max-height: 30px !important;
        max-width: 70px !important;
    }
}

.blog-trend-img {
    width: 100%;
    height: 250px;
    object-fit: cover;
}