/* ==========================================================================
   CUSTOM FEATURES: SKELETON LOADERS, LAZY LOADING, SMOOTH SCROLL REVEALS
   ========================================================================== */

/* --- 1. Skeletal Placeholders & Lazy Loading --- */

@keyframes pulse-bg {
    0%, 100% {
        background-color: #e2e8f0 !important;
    }
    50% {
        background-color: #cbd5e1 !important;
    }
}

@keyframes shimmer {
    0% {
        transform: translateX(-150%) skewX(-15deg);
    }
    100% {
        transform: translateX(150%) skewX(-15deg);
    }
}

/* Container loading background state */
.skeleton-loading {
    position: relative !important;
    overflow: hidden !important;
    background: #e2e8f0 !important;
    background-image: none !important;
    animation: pulse-bg 1.8s infinite ease-in-out !important;
    border-color: #e2e8f0 !important;
}

.skeleton-loading::after {
    position: absolute !important;
    top: 0 !important;
    right: -50px !important;
    bottom: 0 !important;
    left: -50px !important;
    transform: translateX(-150%) skewX(-15deg);
    background: linear-gradient(
        110deg,
        rgba(255, 255, 255, 0) 30%,
        rgba(255, 255, 255, 0.75) 50%,
        rgba(255, 255, 255, 0) 70%
    ) !important;
    animation: shimmer 1.3s infinite cubic-bezier(0.4, 0, 0.2, 1) !important;
    content: '' !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

/* Image styling for smooth fade-in */
img.lazy-img {
    opacity: 0;
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

img.lazy-img.loaded {
    opacity: 1 !important;
}


/* --- 2. Premium Smooth Scroll Reveal Overrides (WOW.js) --- */

/* 
   WOW.js defaults to CSS Keyframe animations. By forcing transition properties
   and disabling the standard animate.css keyframe animations, we create 
   a premium, decelerating cubic-bezier slide-in reveal effect.
*/
.wow {
    opacity: 0 !important;
    /* Soft start scale and vertical translation */
    transform: translateY(45px) scale(0.98);
    transition: opacity 1.2s cubic-bezier(0.215, 0.61, 0.355, 1), 
                transform 1.2s cubic-bezier(0.215, 0.61, 0.355, 1) !important;
    animation-name: none !important; /* Disable standard quick keyframe rules */
    visibility: visible !important;
}

/* Directional reveal starting points */
.wow.fadeInLeft {
    transform: translateX(-50px) scale(1) !important;
}

.wow.fadeInRight {
    transform: translateX(50px) scale(1) !important;
}

.wow.fadeInUp {
    transform: translateY(50px) scale(1) !important;
}

.wow.fadeInDown {
    transform: translateY(-50px) scale(1) !important;
}

.wow.zoomIn {
    transform: scale(0.92) !important;
}

/* Revealed final state triggered by WOW.js adding 'animated' class */
.wow.animated {
    opacity: 1 !important;
    transform: translate(0, 0) scale(1) !important;
}

/* ==========================================================================
   GLOBAL HEADER & FOOTER MOBILE RESPONSIVENESS OVERRIDES
   ========================================================================== */

/* Mobile Screens (< 767px) */
@media (max-width: 767px) {
    /* --- 1. Header Overrides --- */
    .topbar-one {
        display: none !important; /* Hide crowded topbar info/socials on mobile */
    }

    .main-header__right__call {
        display: none !important; /* Hide call widget to prevent header overflow */
    }

    .main-header__search-container {
        display: none !important; /* Hide desktop search field inside main header */
    }

    .main-header__inner {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 10px 15px !important;
    }

    /* scale down header logo width slightly */
    .main-header__logo img {
        width: 120px !important;
    }
    
    .mobile-nav__btn {
        margin: 0 !important;
    }

    /* --- 2. Mobile Nav Drawer overrides --- */
    .mobile-search-results {
        background: rgba(43, 16, 85, 0.95) !important;
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        border-radius: 12px !important;
        max-height: 250px !important;
        overflow-y: auto !important;
        position: absolute !important;
        width: calc(100% - 40px) !important;
        z-index: 999 !important;
        margin-top: -10px !important;
        backdrop-filter: blur(10px) !important;
    }

    .search-dropdown-item {
        display: flex !important;
        align-items: center !important;
        padding: 10px 15px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
        text-decoration: none !important;
        transition: background 0.3s !important;
    }

    .search-dropdown-item:hover {
        background: rgba(255, 255, 255, 0.05) !important;
    }

    .search-dropdown-item img {
        width: 40px !important;
        height: 40px !important;
        object-fit: contain !important;
        margin-right: 12px !important;
        border-radius: 4px !important;
        background: #fff !important;
        padding: 2px !important;
    }

    .search-dropdown-item .product-info {
        display: flex !important;
        flex-direction: column !important;
        text-align: left !important;
    }

    .search-dropdown-item .product-name {
        color: #fff !important;
        font-size: 14px !important;
        font-weight: 500 !important;
    }

    .search-dropdown-item .product-view-btn {
        color: #00C1D4 !important;
        font-size: 11px !important;
        margin-top: 2px !important;
    }

    .search-dropdown-no-results {
        color: rgba(255, 255, 255, 0.6) !important;
        font-size: 14px !important;
        padding: 15px !important;
        text-align: center !important;
    }

    /* --- 3. Footer Overrides — Modern Mobile Design --- */

    /* Tighten top padding on mobile */
    .main-footer__inner {
        padding: 48px 0 16px 0 !important;
    }

    /* Remove desktop vertical divider lines on mobile */
    .footer-col-divider-logo::after,
    .footer-col-divider-links::after {
        display: none !important;
    }

    /* ── Logo Widget ── */
    .footer-widget--info {
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 20px !important;
        margin-bottom: 0 !important;
    }

    .footer-widget--info .footer-widget__logo {
        display: inline-block !important;
        margin: 0 auto 14px auto !important;
    }

    .footer-widget--info .footer-widget__logo img {
        max-width: 160px !important;
        height: auto !important;
    }

    .footer-widget--info .footer-widget__text {
        font-size: 13px !important;
        line-height: 1.75 !important;
        max-width: 320px !important;
        margin: 0 auto 20px auto !important;
        opacity: 0.85 !important;
        text-align: center !important;
    }

    /* Social icons — pill row */
    .footer-widget__social {
        display: flex !important;
        justify-content: center !important;
        gap: 10px !important;
        flex-wrap: wrap !important;
        margin-top: 4px !important;
        margin-bottom: 0 !important;
    }

    .footer-widget__social .social-icon {
        width: 40px !important;
        height: 40px !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: rgba(255, 255, 255, 0.18) !important;
        border: 1px solid rgba(255, 255, 255, 0.22) !important;
        backdrop-filter: blur(4px) !important;
        transition: transform 0.25s ease, background 0.25s ease !important;
        text-decoration: none !important;
    }

    .footer-widget__social .social-icon:hover {
        transform: translateY(-3px) scale(1.08) !important;
        background: rgba(255, 255, 255, 0.35) !important;
    }

    .footer-widget__social .social-icon i {
        font-size: 15px !important;
    }

    /* ── Gradient Divider between sections ── */
    .footer-mobile-divider {
        display: block;
        height: 1px;
        background: linear-gradient(90deg, transparent 0%, rgba(168,168,168,0.55) 30%, rgba(168,168,168,0.55) 70%, transparent 100%);
        margin: 24px 24px;
    }

    /* ── Links Widget ── */
    .footer-widget--link {
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-bottom: 0 !important;
        padding: 0 20px !important;
    }

    .footer-widget__title {
        font-size: 13px !important;
        letter-spacing: 1.2px !important;
        text-transform: uppercase !important;
        font-weight: 700 !important;
        margin-bottom: 14px !important;
        position: relative !important;
    }

    .footer-widget__title::after {
        content: '' !important;
        display: block !important;
        width: 100% !important;
        height: 2px !important;
        background: linear-gradient(90deg, #9333ea, #6413a6) !important;
        border-radius: 2px !important;
        margin: 6px auto 0 auto !important;
    }

    /* Links in a 2-column responsive grid */
    .footer-widget__links {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        /* gap: 12px 24px !important; */
        padding-left: 0 !important;
        list-style: none !important;
        width: 100% !important;
        max-width: 280px !important;
        margin-left: 3rem;
    }

    .footer-widget__links__item {
        padding-top: 2px !important;
        padding-bottom: 2px !important;
        border-bottom: none !important;
        text-align: left !important;
        display: flex !important;
        justify-content: flex-start !important;
        margin-top: 0 !important;
    }

    .footer-widget__links__item a {
        font-size: 13px !important;
        transform: none !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        text-decoration: none !important;
    }

    .footer-widget__links__item a::before {
        content: '›' !important;
        font-size: 15px !important;
        color: #9333ea !important;
        line-height: 1 !important;
    }

    /* ── Contact Widget ── */
    .footer-widget--about {
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-bottom: 0 !important;
        padding: 0 20px !important;
    }

    .footer-widget__info {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        padding-left: 0 !important;
        width: 100% !important;
        max-width: 340px !important;
        margin: 0 auto !important;
        gap: 4px !important;
    }

    .footer-widget__info__item {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        gap: 12px !important;
        text-align: left !important;
        margin-bottom: 0 !important;
        padding: 12px 16px !important;
        background: rgba(255, 255, 255, 0.07) !important;
        border-radius: 12px !important;
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        backdrop-filter: blur(4px) !important;
    }

    .footer-widget__info__item i {
        margin-right: 0 !important;
        margin-bottom: 0 !important;
        margin-top: 2px !important;
        font-size: 15px !important;
        min-width: 18px !important;
        color: #9333ea !important;
        flex-shrink: 0 !important;
    }

    .footer-widget__info__item a {
        font-size: 13px !important;
        line-height: 1.6 !important;
        text-decoration: none !important;
    }

    /* ── Copyright bar ── */
    .footer-copyright {
        text-align: center !important;
        padding: 8px 15px !important;
    }

    .footer-copyright-container {
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }

    .footer-text {
        white-space: normal !important;
        font-size: 11px !important;
        line-height: 1.5 !important;
        padding: 0 !important;
        margin: 0 !important;
        text-align: center !important;
    }
} /* end @media (max-width: 767px) */

/* Extra safety: hide mobile dividers on desktop */
@media (min-width: 768px) {
    .footer-mobile-divider {
        display: none !important;
    }
}

/* Space footer columns out nicely on mobile */
@media (max-width: 767px) {
    .footer-col-divider-logo,
    .footer-col-divider-links,
    .footer-col-contact {
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }
}

/* --- Footer Links — Desktop Spacing --- */
@media (min-width: 768px) {
    .footer-widget__links li + li {
        margin-top: 12px !important;
    }
}

/* --- Our Partners / Logo Slider Overlap Fix --- */
.our-partners {
    padding-top: 80px !important;
    /* padding-bottom: 50px !important; */
    position: relative !important;
    z-index: 10 !important;
    background-color: #ffffff !important;
}

.our-partners .client-carousel-one {
    margin-top: 40px !important;
}

@media (max-width: 767px) {
    .our-partners {
        padding-top: 50px !important;
        padding-bottom: 30px !important;
    }
    
    .our-partners .client-carousel-one {
        margin-top: 25px !important;
    }
}

/* Scrolling left column image for about-two section on desktop */
.page-wrapper {
    overflow: clip !important;
}

@media (min-width: 992px) {
    .about-two__left {
        position: relative !important;
        z-index: 5;
    }
    
    /* Disable persistent animation transform/animation properties once animated 
       to prevent them from overriding the positioning containing block */
    .about-two__left.animated {
        transform: none !important;
        animation: none !important;
    }
}

/* Remove pink/orange block background behind image in about-two container */
.about-two__thumb__item {
    background: transparent !important;
    box-shadow: none !important;
    height: auto !important;
}

.about-two__thumb__item img {
    margin-top: 0 !important;
    top: 0 !important;
    transform: none !important;
    border-radius: 20px !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15) !important;
}

/* Ensure consistent line breaks/spacing between list items in about-two, even when wrapped in readMore/readLess */
.about-two__list__item {
    margin-top: 20px !important;
}

.about-two__list .readMore .about-two__list__item:first-child {
    margin-top: 0 !important;
}

.about-two__list > .about-two__list__item:first-child {
    margin-top: 0 !important;
}

/* Add vertical spacing above Read More/Less buttons */
#readMoreBtn,
#readLessBtn {
    margin-top: 25px !important;
    display: inline-block; /* Removed !important to allow jQuery's inline display: none to override it */
}

/* Hide readLess content by default to prevent flashing or overlapping on page load */
.readLess {
    display: none;
}

/* Floating Dots for WHAT WE NEED Section on About page */
.testimonials-twooo {
    overflow: hidden !important; /* Ensure dots don't bleed out */
}

.floating-dots-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    pointer-events: none;
    z-index: 0;
}

.floating-dots-container .dot {
    position: absolute;
    border-radius: 50%;
    filter: blur(2px);
    transition: all 0.3s ease;
}

/* Dots gradients and positions (16 smaller dots) */
.floating-dots-container .d1 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.45) 0%, rgba(100, 19, 166, 0) 75%);
    left: 6%;
    top: 18%;
    animation: floatUpAnimation 8s ease-in-out infinite;
}

.floating-dots-container .d2 {
    width: 18px;
    height: 18px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.45) 0%, rgba(245, 58, 158, 0) 75%);
    right: 10%;
    top: 22%;
    animation: floatDownAnimation 9s ease-in-out infinite;
    animation-delay: 1.5s;
}

.floating-dots-container .d3 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.5) 0%, rgba(14, 189, 102, 0) 75%);
    left: 14%;
    bottom: 25%;
    animation: floatDownAnimation 7s ease-in-out infinite;
    animation-delay: 2.2s;
}

.floating-dots-container .d4 {
    width: 20px;
    height: 20px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.45) 0%, rgba(255, 165, 38, 0) 75%);
    right: 7%;
    bottom: 15%;
    animation: floatUpAnimation 10s ease-in-out infinite;
    animation-delay: 0.8s;
}

.floating-dots-container .d5 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.35) 0%, rgba(100, 19, 166, 0) 75%);
    left: 40%;
    top: 12%;
    animation: floatUpAnimation 11s ease-in-out infinite;
    animation-delay: 3s;
}

.floating-dots-container .d6 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.35) 0%, rgba(245, 58, 158, 0) 75%);
    left: 62%;
    bottom: 10%;
    animation: floatDownAnimation 9.5s ease-in-out infinite;
    animation-delay: 1.8s;
}

.floating-dots-container .d7 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 22%;
    top: 40%;
    animation: floatUpAnimation 6.5s ease-in-out infinite;
    animation-delay: 4.2s;
}

.floating-dots-container .d8 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.4) 0%, rgba(14, 189, 102, 0) 75%);
    right: 28%;
    top: 15%;
    animation: floatDownAnimation 8.5s ease-in-out infinite;
    animation-delay: 2.5s;
}

.floating-dots-container .d9 {
    width: 9px;
    height: 9px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    right: 35%;
    bottom: 25%;
    animation: floatUpAnimation 12s ease-in-out infinite;
    animation-delay: 1.2s;
}

.floating-dots-container .d10 {
    width: 18px;
    height: 18px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.45) 0%, rgba(100, 19, 166, 0) 75%);
    left: 32%;
    bottom: 35%;
    animation: floatDownAnimation 10.5s ease-in-out infinite;
    animation-delay: 0.4s;
}

.floating-dots-container .d11 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 52%;
    bottom: 42%;
    animation: floatUpAnimation 7.5s ease-in-out infinite;
    animation-delay: 3.5s;
}

.floating-dots-container .d12 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    right: 48%;
    top: 32%;
    animation: floatDownAnimation 9s ease-in-out infinite;
    animation-delay: 2.1s;
}

.floating-dots-container .d13 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    right: 20%;
    bottom: 45%;
    animation: floatUpAnimation 8.2s ease-in-out infinite;
    animation-delay: 1.7s;
}

.floating-dots-container .d14 {
    width: 8px;
    height: 8px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 75%;
    top: 48%;
    animation: floatDownAnimation 11.5s ease-in-out infinite;
    animation-delay: 0.9s;
}

.floating-dots-container .d15 {
    width: 17px;
    height: 17px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 82%;
    top: 12%;
    animation: floatUpAnimation 9.2s ease-in-out infinite;
    animation-delay: 3.1s;
}

.floating-dots-container .d16 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.35) 0%, rgba(255, 165, 38, 0) 75%);
    right: 18%;
    top: 58%;
    animation: floatDownAnimation 7.8s ease-in-out infinite;
    animation-delay: 2.7s;
}

/* Additional left-side dots (Middle-Left and Bottom-Left) */
.floating-dots-container .d17 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.45) 0%, rgba(100, 19, 166, 0) 75%);
    left: 5%;
    top: 45%;
    animation: floatUpAnimation 8.5s ease-in-out infinite;
    animation-delay: 1.2s;
}

.floating-dots-container .d18 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.45) 0%, rgba(245, 58, 158, 0) 75%);
    left: 10%;
    top: 55%;
    animation: floatDownAnimation 9.2s ease-in-out infinite;
    animation-delay: 3.4s;
}

.floating-dots-container .d19 {
    width: 9px;
    height: 9px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.5) 0%, rgba(14, 189, 102, 0) 75%);
    left: 7%;
    top: 38%;
    animation: floatUpAnimation 6.8s ease-in-out infinite;
    animation-delay: 0.5s;
}

.floating-dots-container .d20 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.45) 0%, rgba(255, 165, 38, 0) 75%);
    left: 6%;
    bottom: 12%;
    animation: floatUpAnimation 10s ease-in-out infinite;
    animation-delay: 2.3s;
}

.floating-dots-container .d21 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 12%;
    bottom: 8%;
    animation: floatDownAnimation 7.4s ease-in-out infinite;
    animation-delay: 4.1s;
}

.floating-dots-container .d22 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 18%;
    bottom: 15%;
    animation: floatUpAnimation 8.9s ease-in-out infinite;
    animation-delay: 1.9s;
}

/* Additional right-side dots (Right-side Top and Right-side Middle) */
.floating-dots-container .d23 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    right: 6%;
    top: 12%;
    animation: floatUpAnimation 7.9s ease-in-out infinite;
    animation-delay: 2.5s;
}

.floating-dots-container .d24 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    right: 15%;
    top: 8%;
    animation: floatDownAnimation 9.1s ease-in-out infinite;
    animation-delay: 0.7s;
}

.floating-dots-container .d25 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.45) 0%, rgba(245, 58, 158, 0) 75%);
    right: 22%;
    top: 18%;
    animation: floatUpAnimation 8.4s ease-in-out infinite;
    animation-delay: 3.1s;
}

.floating-dots-container .d26 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    right: 8%;
    top: 48%;
    animation: floatDownAnimation 10.2s ease-in-out infinite;
    animation-delay: 1.4s;
}

.floating-dots-container .d27 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    right: 18%;
    top: 52%;
    animation: floatUpAnimation 6.7s ease-in-out infinite;
    animation-delay: 4.3s;
}

.floating-dots-container .d28 {
    width: 18px;
    height: 18px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.45) 0%, rgba(100, 19, 166, 0) 75%);
    right: 12%;
    top: 38%;
    animation: floatDownAnimation 8.8s ease-in-out infinite;
    animation-delay: 2.0s;
}

.floating-dots-container .d29 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 15%;
    top: 15%;
    animation: floatUpAnimation 8.2s ease-in-out infinite;
    animation-delay: 0.3s;
}

.floating-dots-container .d30 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 25%;
    top: 8%;
    animation: floatDownAnimation 9.5s ease-in-out infinite;
    animation-delay: 1.1s;
}

.floating-dots-container .d31 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 35%;
    top: 22%;
    animation: floatUpAnimation 7.1s ease-in-out infinite;
    animation-delay: 2.5s;
}

.floating-dots-container .d32 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 45%;
    top: 15%;
    animation: floatDownAnimation 10.2s ease-in-out infinite;
    animation-delay: 0.9s;
}

.floating-dots-container .d33 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 55%;
    top: 5%;
    animation: floatUpAnimation 8.8s ease-in-out infinite;
    animation-delay: 1.8s;
}

.floating-dots-container .d34 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 65%;
    top: 18%;
    animation: floatDownAnimation 9.1s ease-in-out infinite;
    animation-delay: 3.2s;
}

.floating-dots-container .d35 {
    width: 9px;
    height: 9px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.45) 0%, rgba(245, 58, 158, 0) 75%);
    left: 75%;
    top: 10%;
    animation: floatUpAnimation 7.6s ease-in-out infinite;
    animation-delay: 0.4s;
}

.floating-dots-container .d36 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 85%;
    top: 22%;
    animation: floatDownAnimation 8.4s ease-in-out infinite;
    animation-delay: 2.1s;
}

.floating-dots-container .d37 {
    width: 17px;
    height: 17px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 92%;
    top: 15%;
    animation: floatUpAnimation 10.5s ease-in-out infinite;
    animation-delay: 1.5s;
}

.floating-dots-container .d38 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 3%;
    top: 30%;
    animation: floatDownAnimation 9.2s ease-in-out infinite;
    animation-delay: 0.8s;
}

.floating-dots-container .d39 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 18%;
    top: 35%;
    animation: floatUpAnimation 7.9s ease-in-out infinite;
    animation-delay: 2.7s;
}

.floating-dots-container .d40 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.45) 0%, rgba(255, 165, 38, 0) 75%);
    left: 28%;
    top: 28%;
    animation: floatDownAnimation 8.6s ease-in-out infinite;
    animation-delay: 3.6s;
}

.floating-dots-container .d41 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 38%;
    top: 38%;
    animation: floatUpAnimation 6.9s ease-in-out infinite;
    animation-delay: 1.2s;
}

.floating-dots-container .d42 {
    width: 18px;
    height: 18px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 48%;
    top: 26%;
    animation: floatDownAnimation 11.2s ease-in-out infinite;
    animation-delay: 0.2s;
}

.floating-dots-container .d43 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 58%;
    top: 32%;
    animation: floatUpAnimation 8.5s ease-in-out infinite;
    animation-delay: 2.9s;
}

.floating-dots-container .d44 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 68%;
    top: 36%;
    animation: floatDownAnimation 9.8s ease-in-out infinite;
    animation-delay: 1.7s;
}

.floating-dots-container .d45 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.4) 0%, rgba(14, 189, 102, 0) 75%);
    left: 78%;
    top: 28%;
    animation: floatUpAnimation 7.4s ease-in-out infinite;
    animation-delay: 4.1s;
}

.floating-dots-container .d46 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 88%;
    top: 34%;
    animation: floatDownAnimation 8.9s ease-in-out infinite;
    animation-delay: 2.4s;
}

.floating-dots-container .d47 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.45) 0%, rgba(245, 58, 158, 0) 75%);
    left: 95%;
    top: 42%;
    animation: floatUpAnimation 10.1s ease-in-out infinite;
    animation-delay: 0.6s;
}

.floating-dots-container .d48 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 12%;
    top: 50%;
    animation: floatDownAnimation 7.8s ease-in-out infinite;
    animation-delay: 3.1s;
}

.floating-dots-container .d49 {
    width: 17px;
    height: 17px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 24%;
    top: 48%;
    animation: floatUpAnimation 9.4s ease-in-out infinite;
    animation-delay: 1.4s;
}

.floating-dots-container .d50 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 36%;
    top: 55%;
    animation: floatDownAnimation 8.2s ease-in-out infinite;
    animation-delay: 2.8s;
}

.floating-dots-container .d51 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.45) 0%, rgba(245, 58, 158, 0) 75%);
    left: 44%;
    top: 45%;
    animation: floatUpAnimation 10.8s ease-in-out infinite;
    animation-delay: 0.5s;
}

.floating-dots-container .d52 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 54%;
    top: 52%;
    animation: floatDownAnimation 7.3s ease-in-out infinite;
    animation-delay: 3.9s;
}

.floating-dots-container .d53 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 64%;
    top: 48%;
    animation: floatUpAnimation 8.7s ease-in-out infinite;
    animation-delay: 1.1s;
}

.floating-dots-container .d54 {
    width: 9px;
    height: 9px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.45) 0%, rgba(100, 19, 166, 0) 75%);
    left: 74%;
    top: 54%;
    animation: floatDownAnimation 9.9s ease-in-out infinite;
    animation-delay: 2.3s;
}

.floating-dots-container .d55 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 84%;
    top: 46%;
    animation: floatUpAnimation 8.1s ease-in-out infinite;
    animation-delay: 0.7s;
}

.floating-dots-container .d56 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 90%;
    top: 58%;
    animation: floatDownAnimation 7.5s ease-in-out infinite;
    animation-delay: 3.4s;
}

.floating-dots-container .d57 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 8%;
    top: 70%;
    animation: floatUpAnimation 9.3s ease-in-out infinite;
    animation-delay: 1.9s;
}

.floating-dots-container .d58 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 16%;
    top: 65%;
    animation: floatDownAnimation 8.4s ease-in-out infinite;
    animation-delay: 0.3s;
}

.floating-dots-container .d59 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 29%;
    top: 72%;
    animation: floatUpAnimation 7.8s ease-in-out infinite;
    animation-delay: 2.6s;
}

.floating-dots-container .d60 {
    width: 17px;
    height: 17px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 39%;
    top: 68%;
    animation: floatDownAnimation 10.6s ease-in-out infinite;
    animation-delay: 1.5s;
}

.floating-dots-container .d61 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 49%;
    top: 75%;
    animation: floatUpAnimation 8.2s ease-in-out infinite;
    animation-delay: 3.3s;
}

.floating-dots-container .d62 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 59%;
    top: 62%;
    animation: floatDownAnimation 9.4s ease-in-out infinite;
    animation-delay: 0.8s;
}

.floating-dots-container .d63 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 69%;
    top: 70%;
    animation: floatUpAnimation 7.9s ease-in-out infinite;
    animation-delay: 2.2s;
}

.floating-dots-container .d64 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.45) 0%, rgba(255, 165, 38, 0) 75%);
    left: 79%;
    top: 66%;
    animation: floatDownAnimation 10.1s ease-in-out infinite;
    animation-delay: 4.0s;
}

.floating-dots-container .d65 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.4) 0%, rgba(14, 189, 102, 0) 75%);
    left: 89%;
    top: 74%;
    animation: floatUpAnimation 8.5s ease-in-out infinite;
    animation-delay: 1.3s;
}

.floating-dots-container .d66 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 2%;
    top: 85%;
    animation: floatDownAnimation 9.2s ease-in-out infinite;
    animation-delay: 0.9s;
}

.floating-dots-container .d67 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 14%;
    top: 92%;
    animation: floatUpAnimation 8.6s ease-in-out infinite;
    animation-delay: 3.1s;
}

.floating-dots-container .d68 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.45) 0%, rgba(255, 165, 38, 0) 75%);
    left: 22%;
    top: 80%;
    animation: floatDownAnimation 7.4s ease-in-out infinite;
    animation-delay: 1.4s;
}

.floating-dots-container .d69 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 32%;
    top: 88%;
    animation: floatUpAnimation 9.7s ease-in-out infinite;
    animation-delay: 2.5s;
}

.floating-dots-container .d70 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 42%;
    top: 90%;
    animation: floatDownAnimation 8.8s ease-in-out infinite;
    animation-delay: 0.2s;
}

.floating-dots-container .d71 {
    width: 17px;
    height: 17px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.45) 0%, rgba(245, 58, 158, 0) 75%);
    left: 52%;
    top: 82%;
    animation: floatUpAnimation 10.4s ease-in-out infinite;
    animation-delay: 3.7s;
}

.floating-dots-container .d72 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 62%;
    top: 86%;
    animation: floatDownAnimation 8.1s ease-in-out infinite;
    animation-delay: 1.8s;
}

.floating-dots-container .d73 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.4) 0%, rgba(14, 189, 102, 0) 75%);
    left: 72%;
    top: 92%;
    animation: floatUpAnimation 9.5s ease-in-out infinite;
    animation-delay: 2.9s;
}

.floating-dots-container .d74 {
    width: 9px;
    height: 9px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.45) 0%, rgba(100, 19, 166, 0) 75%);
    left: 82%;
    top: 80%;
    animation: floatDownAnimation 7.9s ease-in-out infinite;
    animation-delay: 0.5s;
}

.floating-dots-container .d75 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 92%;
    top: 88%;
    animation: floatUpAnimation 10.2s ease-in-out infinite;
    animation-delay: 3.3s;
}

.floating-dots-container .d76 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 20%;
    top: 42%;
    animation: floatDownAnimation 8.3s ease-in-out infinite;
    animation-delay: 1.1s;
}

.floating-dots-container .d77 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(14, 189, 102, 0.45) 0%, rgba(14, 189, 102, 0) 75%);
    left: 30%;
    top: 48%;
    animation: floatUpAnimation 9.2s ease-in-out infinite;
    animation-delay: 2.2s;
}

.floating-dots-container .d78 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 50%;
    top: 58%;
    animation: floatDownAnimation 8.0s ease-in-out infinite;
    animation-delay: 0.7s;
}

.floating-dots-container .d79 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.45) 0%, rgba(245, 58, 158, 0) 75%);
    left: 70%;
    top: 44%;
    animation: floatUpAnimation 9.6s ease-in-out infinite;
    animation-delay: 3.4s;
}

.floating-dots-container .d80 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 80%;
    top: 52%;
    animation: floatDownAnimation 8.5s ease-in-out infinite;
    animation-delay: 1.6s;
}

@keyframes floatUpAnimation {
    0%, 100% {
        transform: translateY(0) scale(1);
        opacity: 0.5;
    }
    50% {
        transform: translateY(-25px) scale(1.15);
        opacity: 0.95;
    }
}

@keyframes floatDownAnimation {
    0%, 100% {
        transform: translateY(0) scale(1.1);
        opacity: 0.6;
    }
    50% {
        transform: translateY(25px) scale(0.9);
        opacity: 0.85;
    }
}

/* --- Big Orange Floating Circles for Why Choose Us --- */
.choose-us-one1 {
    overflow: hidden !important;
}

.floating-dots-container-green {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    pointer-events: none;
    z-index: 0;
}

.big-orange-circle {
    position: absolute;
    border-radius: 50%;
    /* Soft glow gradient with high opacity */
    background: radial-gradient(circle, rgba(255, 120, 0, 0.85) 0%, rgba(255, 60, 0, 0.5) 70%, rgba(255, 60, 0, 0) 100%);
    bottom: -250px; /* Start below the section */
    animation: floatUpBig 10s linear infinite;
    pointer-events: none;
    z-index: 0;
    filter: blur(1px);
}

@keyframes floatUpBig {
    0% {
        transform: translateY(0) scale(0.8) rotate(0deg);
        opacity: 0;
    }
    5% {
        opacity: 0.85; /* high opacity */
    }
    98% {
        opacity: 0.85; /* stay fully visible until the absolute top edge */
    }
    100% {
        transform: translateY(-1400px) scale(1.2) rotate(360deg);
        opacity: 0;
    }
}

/* Distinct sizes, horizontal positions and animation speeds/delays */
.big-orange-circle.c1 {
    width: 120px;
    height: 120px;
    left: 8%;
    animation-duration: 5s;
    animation-delay: 0s;
}

.big-orange-circle.c2 {
    width: 160px;
    height: 160px;
    left: 28%;
    animation-duration: 7s;
    animation-delay: 1.5s;
}

.big-orange-circle.c3 {
    width: 90px;
    height: 90px;
    left: 48%;
    animation-duration: 4.5s;
    animation-delay: 0.8s;
}

.big-orange-circle.c4 {
    width: 180px;
    height: 180px;
    left: 65%;
    animation-duration: 8s;
    animation-delay: 2.2s;
}

.big-orange-circle.c5 {
    width: 110px;
    height: 110px;
    left: 82%;
    animation-duration: 6s;
    animation-delay: 1.2s;
}

.big-orange-circle.c6 {
    width: 140px;
    height: 140px;
    left: 93%;
    animation-duration: 6.5s;
    animation-delay: 3s;
}

.floating-dots-container-green .g27 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.5) 0%, rgba(14, 150, 70, 0) 75%);
    left: 45%;
    bottom: 42%;
    animation: floatUpAnimation 7.4s ease-in-out infinite;
    animation-delay: 2.1s;
}

.floating-dots-container-green .g28 {
    width: 8px;
    height: 8px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    right: 14%;
    bottom: 48%;
    animation: floatDownAnimation 11s ease-in-out infinite;
    animation-delay: 0.4s;
}

.floating-dots-container-green .g29 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    right: 28%;
    bottom: 15%;
    animation: floatUpAnimation 9.5s ease-in-out infinite;
    animation-delay: 2.8s;
}

.floating-dots-container-green .g30 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 32%;
    top: 52%;
    animation: floatDownAnimation 8.3s ease-in-out infinite;
    animation-delay: 1.7s;
}

.floating-dots-container-green .g31 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    right: 40%;
    bottom: 35%;
    animation: floatUpAnimation 6.5s ease-in-out infinite;
    animation-delay: 3.9s;
}

.floating-dots-container-green .g32 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.35) 0%, rgba(255, 165, 38, 0) 75%);
    left: 58%;
    top: 15%;
    animation: floatDownAnimation 9.2s ease-in-out infinite;
    animation-delay: 2.2s;
}

.floating-dots-container-green .g33 {
    width: 8px;
    height: 8px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 25%;
    top: 10%;
    animation: floatUpAnimation 7.8s ease-in-out infinite;
    animation-delay: 0.9s;
}

.floating-dots-container-green .g34 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.45) 0%, rgba(245, 58, 158, 0) 75%);
    left: 82%;
    top: 50%;
    animation: floatDownAnimation 10.5s ease-in-out infinite;
    animation-delay: 3.1s;
}

.floating-dots-container-green .g35 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    right: 15%;
    bottom: 8%;
    animation: floatUpAnimation 8.1s ease-in-out infinite;
    animation-delay: 1.6s;
}

.floating-dots-container-green .g36 {
    width: 9px;
    height: 9px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.35) 0%, rgba(255, 165, 38, 0) 75%);
    left: 68%;
    bottom: 15%;
    animation: floatDownAnimation 11.2s ease-in-out infinite;
    animation-delay: 2.5s;
}

.floating-dots-container-green .g37 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 88%;
    top: 35%;
    animation: floatUpAnimation 6.6s ease-in-out infinite;
    animation-delay: 4.2s;
}

.floating-dots-container-green .g38 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    right: 45%;
    top: 55%;
    animation: floatDownAnimation 9s ease-in-out infinite;
    animation-delay: 1.1s;
}

.floating-dots-container-green .g39 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.4) 0%, rgba(14, 150, 70, 0) 75%);
    left: 74%;
    bottom: 45%;
    animation: floatUpAnimation 8.4s ease-in-out infinite;
    animation-delay: 2.7s;
}

.floating-dots-container-green .g40 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    right: 22%;
    top: 62%;
    animation: floatDownAnimation 7.9s ease-in-out infinite;
    animation-delay: 3.6s;
}

.floating-dots-container-green .g41 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 18%;
    top: 12%;
    animation: floatUpAnimation 8.5s ease-in-out infinite;
    animation-delay: 0.5s;
}

.floating-dots-container-green .g42 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 28%;
    top: 18%;
    animation: floatDownAnimation 7.4s ease-in-out infinite;
    animation-delay: 1.4s;
}

.floating-dots-container-green .g43 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 38%;
    top: 5%;
    animation: floatUpAnimation 9.8s ease-in-out infinite;
    animation-delay: 2.1s;
}

.floating-dots-container-green .g44 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 48%;
    top: 15%;
    animation: floatDownAnimation 8.0s ease-in-out infinite;
    animation-delay: 3.2s;
}

.floating-dots-container-green .g45 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 58%;
    top: 22%;
    animation: floatUpAnimation 9.2s ease-in-out infinite;
    animation-delay: 0.9s;
}

.floating-dots-container-green .g46 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 68%;
    top: 8%;
    animation: floatDownAnimation 8.6s ease-in-out infinite;
    animation-delay: 1.8s;
}

.floating-dots-container-green .g47 {
    width: 17px;
    height: 17px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 78%;
    top: 20%;
    animation: floatUpAnimation 10.4s ease-in-out infinite;
    animation-delay: 2.7s;
}

.floating-dots-container-green .g48 {
    width: 9px;
    height: 9px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 88%;
    top: 10%;
    animation: floatDownAnimation 7.1s ease-in-out infinite;
    animation-delay: 0.3s;
}

.floating-dots-container-green .g49 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 4%;
    top: 38%;
    animation: floatUpAnimation 9.5s ease-in-out infinite;
    animation-delay: 3.5s;
}

.floating-dots-container-green .g50 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 14%;
    top: 28%;
    animation: floatDownAnimation 8.2s ease-in-out infinite;
    animation-delay: 1.2s;
}

.floating-dots-container-green .g51 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 24%;
    top: 35%;
    animation: floatUpAnimation 7.8s ease-in-out infinite;
    animation-delay: 2.6s;
}

.floating-dots-container-green .g52 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 34%;
    top: 40%;
    animation: floatDownAnimation 8.9s ease-in-out infinite;
    animation-delay: 0.8s;
}

.floating-dots-container-green .g53 {
    width: 18px;
    height: 18px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 44%;
    top: 32%;
    animation: floatUpAnimation 11.2s ease-in-out infinite;
    animation-delay: 2.9s;
}

.floating-dots-container-green .g54 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.45) 0%, rgba(100, 19, 166, 0) 75%);
    left: 54%;
    top: 28%;
    animation: floatDownAnimation 7.3s ease-in-out infinite;
    animation-delay: 3.6s;
}

.floating-dots-container-green .g55 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 64%;
    top: 38%;
    animation: floatUpAnimation 8.7s ease-in-out infinite;
    animation-delay: 1.5s;
}

.floating-dots-container-green .g56 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 74%;
    top: 30%;
    animation: floatDownAnimation 9.1s ease-in-out infinite;
    animation-delay: 0.4s;
}

.floating-dots-container-green .g57 {
    width: 17px;
    height: 17px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 84%;
    top: 35%;
    animation: floatUpAnimation 10.5s ease-in-out infinite;
    animation-delay: 3.1s;
}

.floating-dots-container-green .g58 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 94%;
    top: 28%;
    animation: floatDownAnimation 7.5s ease-in-out infinite;
    animation-delay: 1.7s;
}

.floating-dots-container-green .g59 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 10%;
    top: 48%;
    animation: floatUpAnimation 8.3s ease-in-out infinite;
    animation-delay: 2.4s;
}

.floating-dots-container-green .g60 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 20%;
    top: 55%;
    animation: floatDownAnimation 8.0s ease-in-out infinite;
    animation-delay: 0.6s;
}

.floating-dots-container-green .g61 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 30%;
    top: 45%;
    animation: floatUpAnimation 9.6s ease-in-out infinite;
    animation-delay: 3.8s;
}

.floating-dots-container-green .g62 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 40%;
    top: 52%;
    animation: floatDownAnimation 7.2s ease-in-out infinite;
    animation-delay: 1.1s;
}

.floating-dots-container-green .g63 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 50%;
    top: 48%;
    animation: floatUpAnimation 8.9s ease-in-out infinite;
    animation-delay: 2.3s;
}

.floating-dots-container-green .g64 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 60%;
    top: 55%;
    animation: floatDownAnimation 8.1s ease-in-out infinite;
    animation-delay: 0.7s;
}

.floating-dots-container-green .g65 {
    width: 17px;
    height: 17px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 70%;
    top: 48%;
    animation: floatUpAnimation 10.1s ease-in-out infinite;
    animation-delay: 3.4s;
}

.floating-dots-container-green .g66 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 80%;
    top: 54%;
    animation: floatDownAnimation 7.9s ease-in-out infinite;
    animation-delay: 1.9s;
}

.floating-dots-container-green .g67 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 90%;
    top: 46%;
    animation: floatUpAnimation 8.4s ease-in-out infinite;
    animation-delay: 0.2s;
}

.floating-dots-container-green .g68 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 96%;
    top: 58%;
    animation: floatDownAnimation 8.7s ease-in-out infinite;
    animation-delay: 2.8s;
}

.floating-dots-container-green .g69 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 8%;
    top: 70%;
    animation: floatUpAnimation 9.3s ease-in-out infinite;
    animation-delay: 1.3s;
}

.floating-dots-container-green .g70 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 18%;
    top: 65%;
    animation: floatDownAnimation 7.6s ease-in-out infinite;
    animation-delay: 3.9s;
}

.floating-dots-container-green .g71 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 28%;
    top: 72%;
    animation: floatUpAnimation 8.2s ease-in-out infinite;
    animation-delay: 0.5s;
}

.floating-dots-container-green .g72 {
    width: 17px;
    height: 17px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 38%;
    top: 68%;
    animation: floatDownAnimation 10.2s ease-in-out infinite;
    animation-delay: 2.2s;
}

.floating-dots-container-green .g73 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 48%;
    top: 75%;
    animation: floatUpAnimation 8.0s ease-in-out infinite;
    animation-delay: 1.6s;
}

.floating-dots-container-green .g74 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 58%;
    top: 62%;
    animation: floatDownAnimation 9.4s ease-in-out infinite;
    animation-delay: 3.3s;
}

.floating-dots-container-green .g75 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 68%;
    top: 70%;
    animation: floatUpAnimation 7.9s ease-in-out infinite;
    animation-delay: 0.9s;
}

.floating-dots-container-green .g76 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.45) 0%, rgba(255, 165, 38, 0) 75%);
    left: 78%;
    top: 66%;
    animation: floatDownAnimation 10.0s ease-in-out infinite;
    animation-delay: 2.7s;
}

.floating-dots-container-green .g77 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.4) 0%, rgba(14, 150, 70, 0) 75%);
    left: 88%;
    top: 74%;
    animation: floatUpAnimation 8.5s ease-in-out infinite;
    animation-delay: 1.4s;
}

.floating-dots-container-green .g78 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 2%;
    top: 85%;
    animation: floatDownAnimation 9.2s ease-in-out infinite;
    animation-delay: 0.8s;
}

.floating-dots-container-green .g79 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 12%;
    top: 90%;
    animation: floatUpAnimation 8.6s ease-in-out infinite;
    animation-delay: 3.1s;
}

.floating-dots-container-green .g80 {
    width: 10px;
    height: 10px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 22%;
    top: 82%;
    animation: floatDownAnimation 7.4s ease-in-out infinite;
    animation-delay: 1.5s;
}

.floating-dots-container-green .g81 {
    width: 15px;
    height: 15px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 32%;
    top: 88%;
    animation: floatUpAnimation 9.7s ease-in-out infinite;
    animation-delay: 0.3s;
}

.floating-dots-container-green .g82 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 42%;
    top: 92%;
    animation: floatDownAnimation 8.8s ease-in-out infinite;
    animation-delay: 2.5s;
}

.floating-dots-container-green .g83 {
    width: 17px;
    height: 17px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.45) 0%, rgba(245, 58, 158, 0) 75%);
    left: 52%;
    top: 80%;
    animation: floatUpAnimation 10.4s ease-in-out infinite;
    animation-delay: 1.1s;
}

.floating-dots-container-green .g84 {
    width: 11px;
    height: 11px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 62%;
    top: 88%;
    animation: floatDownAnimation 8.1s ease-in-out infinite;
    animation-delay: 3.7s;
}

.floating-dots-container-green .g85 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.4) 0%, rgba(14, 150, 70, 0) 75%);
    left: 72%;
    top: 82%;
    animation: floatUpAnimation 9.5s ease-in-out infinite;
    animation-delay: 0.6s;
}

.floating-dots-container-green .g86 {
    width: 9px;
    height: 9px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.45) 0%, rgba(100, 19, 166, 0) 75%);
    left: 82%;
    top: 90%;
    animation: floatDownAnimation 7.9s ease-in-out infinite;
    animation-delay: 2.9s;
}

.floating-dots-container-green .g87 {
    width: 16px;
    height: 16px;
    background: radial-gradient(circle, rgba(245, 58, 158, 0.4) 0%, rgba(245, 58, 158, 0) 75%);
    left: 92%;
    top: 84%;
    animation: floatUpAnimation 10.2s ease-in-out infinite;
    animation-delay: 1.8s;
}

.floating-dots-container-green .g88 {
    width: 12px;
    height: 12px;
    background: radial-gradient(circle, rgba(255, 165, 38, 0.4) 0%, rgba(255, 165, 38, 0) 75%);
    left: 15%;
    top: 52%;
    animation: floatDownAnimation 8.3s ease-in-out infinite;
    animation-delay: 0.4s;
}

.floating-dots-container-green .g89 {
    width: 14px;
    height: 14px;
    background: radial-gradient(circle, rgba(14, 150, 70, 0.45) 0%, rgba(14, 150, 70, 0) 75%);
    left: 35%;
    top: 58%;
    animation: floatUpAnimation 9.2s ease-in-out infinite;
    animation-delay: 3.5s;
}

.floating-dots-container-green .g90 {
    width: 13px;
    height: 13px;
    background: radial-gradient(circle, rgba(100, 19, 166, 0.4) 0%, rgba(100, 19, 166, 0) 75%);
    left: 65%;
    top: 48%;
    animation: floatDownAnimation 8.5s ease-in-out infinite;
    animation-delay: 2.1s;
}

/* Dynamic floating dots styled elements */
.dynamic-dot {
    position: absolute;
    border-radius: 50%;
    filter: none; /* Removed blur to make dots sharp and fully visible */
    pointer-events: none;
    opacity: 0.9;  /* High base visibility */
    transition: all 0.3s ease;
}

@keyframes dynamicFloat {
    0%, 100% {
        transform: translateY(0) scale(1);
    }
    50% {
        transform: translateY(var(--float-y, -25px)) scale(var(--float-scale, 1.12));
        opacity: var(--float-opacity, 0.85);
    }
}

/* Center topbar email icon and text vertically */
.topbar-one__info__item {
    display: inline-flex !important;
    align-items: center !important;
}

.topbar-one__info__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 8px !important;
    margin-top: 3px !important; /* Shift icon slightly down to center perfectly with text */
}

/* Light Gradient Mobile Navigation Sidebar Overrides */
.mobile-nav__content {
    background: linear-gradient(180deg, #fbfafd 0%, #f3f9fa 100%) !important;
    box-shadow: 5px 0 25px rgba(0, 0, 0, 0.08) !important;
    border-right: 1px solid rgba(127, 83, 172, 0.15) !important;
}

.mobile-nav__close {
    color: #6413a6 !important;
}
.mobile-nav__close:hover {
    color: #0ebd32 !important;
}

/* Search Box Light Styles */
.mobile-nav__search-box {
    background: #ffffff !important;
    border: 1px solid rgba(127, 83, 172, 0.2) !important;
    box-shadow: 0 4px 10px rgba(127, 83, 172, 0.05) !important;
}

.mobile-nav__search-box input {
    color: #333333 !important;
}

.mobile-nav__search-box input::placeholder {
    color: #888888 !important;
}

.mobile-nav__search-box .search-icon {
    color: #6413a6 !important;
}

.mobile-nav__search-box .mobile-search-clear {
    color: #888888 !important;
}

/* Sidebar Menu Links */
.mobile-nav__content .main-menu__list li > a {
    color: #2b2b2b !important;
    text-shadow: none !important;
}

.mobile-nav__content .main-menu__list li:not(:last-child) {
    border-bottom: 1px solid rgba(127, 83, 172, 0.1) !important;
}

.mobile-nav__content .main-menu__list li > a:hover,
.mobile-nav__content .main-menu__list li a.expanded {
    color: #6413a6 !important;
}

/* Submenu dropdown buttons */
.mobile-nav__content .main-menu__list li a button {
    background-color: rgba(127, 83, 172, 0.1) !important;
    color: #6413a6 !important;
}

.mobile-nav__content .main-menu__list li a button.expanded {
    background-color: #6413a6 !important;
    color: #ffffff !important;
}

/* Contact Details at bottom of sidebar */
.mobile-nav__contact li {
    color: #444444 !important;
}

.mobile-nav__contact li a {
    color: #2b2b2b !important;
}

.mobile-nav__contact li a:hover {
    color: #6413a6 !important;
}

.mobile-nav__contact li > i {
    background-color: #6413a6 !important;
    color: #ffffff !important;
}

/* Permanent Sticky Header Container */
.sticky-header-wrapper {
    position: sticky !important;
    top: 0 !important;
    z-index: 999 !important;
    width: 100% !important;
    background-color: #ffffff !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06) !important;
}

/* Hide cloned header to prevent duplication/overlaps on scroll */
.sticky-header--cloned {
    display: none !important;
}

/* Enable Topbar on mobile and style it in a clean horizontal row */
@media (max-width: 1200px) {
    .topbar-one {
        display: block !important;
    }
    
    .topbar-one__inner {
        padding: 6px 15px !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
    
    .topbar-one__info {
        display: flex !important;
        margin-bottom: 0 !important;
        padding-left: 0 !important;
    }
    
    .topbar-one__right {
        display: flex !important;
        margin-top: 0 !important;
    }
    
    .topbar-one__social {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        margin: 0 !important;
    }
    
    .topbar-one__social a {
        padding: 4px !important;
    }
    
    .topbar-one__social i {
        font-size: 16px !important;
    }
}

/* ==========================================================================
   HERO BANNER MOBILE RESPONSIVENESS (EXPAND TO COVER / NO BLACK BARS)
   ========================================================================== */

@media (max-width: 991.98px) {
    /* --- Homepage Hero Video & Slider Banner --- */
    .main-slider-three {
        min-height: auto !important;
    }

    .video-slider__item {
        position: relative !important;
        width: 100% !important;
        height: auto !important;
        min-height: 220px !important;
        aspect-ratio: 16 / 9 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .video-slider__bg {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
    }

    .main-slider-three__bg {
        background-size: 100% 100% !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
        width: 100% !important;
        height: 100% !important;
    }

    /* --- Inner Pages Hero Header Banners --- */
    .page-header {
        position: relative !important;
        width: 100% !important;
        background: transparent !important;
    }

    .page-header__bg,
    .about-custom-1,
    .blog-custom-2,
    .blog_details-custom-1,
    .career-custom-2,
    .contact-custom-2,
    .credo-custom-2,
    .csr-custom-2,
    .ibs-custom-2,
    .manufacturing-custom-2,
    .product-custom-2,
    .productdetails-custom-1,
    .r_d-custom-2 {
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
        padding: 55px 15px !important;
        min-height: auto !important;
        width: 100% !important;
    }

    .page-header__overlay {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
    }

    .banner-text,
    .page-header .container {
        position: relative !important;
        z-index: 5 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        width: 100% !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .page-header__title,
    .page-header__title_blog,
    .page-header__title_cr,
    .page-header__title_credo,
    .page-header__title_csr,
    .page-header__title_ib,
    .page-header__title_manf,
    .page-header__title_product,
    .page-header__title_r_d {
        font-size: 26px !important;
        line-height: 1.3 !important;
        margin-top: 0 !important;
        margin-bottom: 8px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
        width: 100% !important;
    }

    .nionx-breadcrumb {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        margin-top: 4px !important;
        margin-bottom: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 !important;
        text-align: center !important;
        width: 100% !important;
    }

    .nionx-breadcrumb li {
        display: inline-flex !important;
        align-items: center !important;
    }

    .nionx-breadcrumb li a,
    .nionx-breadcrumb li span {
        font-size: 14px !important;
        line-height: 1.4 !important;
    }

    .page-header__subtitle,
    .page-header__subtitle_about,
    .page-header__subtitle_blog,
    .page-header__subtitle_credo,
    .page-header__subtitle_manf,
    .page-header__subtitle_product {
        font-size: 14px !important;
        line-height: 1.4 !important;
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
        width: 100% !important;
    }

    /* Blog Details Hero Image */
    .blog-details__banner-img {
        width: 100% !important;
        height: auto !important;
        object-fit: cover !important;
    }
}

@media (max-width: 575.98px) {
    .video-slider__item {
        min-height: 180px !important;
        aspect-ratio: 16 / 9 !important;
    }

    .page-header__bg,
    .about-custom-1,
    .blog-custom-2,
    .blog_details-custom-1,
    .career-custom-2,
    .contact-custom-2,
    .credo-custom-2,
    .csr-custom-2,
    .ibs-custom-2,
    .manufacturing-custom-2,
    .product-custom-2,
    .productdetails-custom-1,
    .r_d-custom-2 {
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
        padding: 45px 10px !important;
        min-height: auto !important;
    }

    .page-header__title,
    .page-header__title_blog,
    .page-header__title_cr,
    .page-header__title_credo,
    .page-header__title_csr,
    .page-header__title_ib,
    .page-header__title_manf,
    .page-header__title_product,
    .page-header__title_r_d {
        font-size: 22px !important;
    }

    .nionx-breadcrumb li a,
    .nionx-breadcrumb li span {
        font-size: 13px !important;
    }

    .page-header__subtitle,
    .page-header__subtitle_about,
    .page-header__subtitle_blog,
    .page-header__subtitle_credo,
    .page-header__subtitle_manf,
    .page-header__subtitle_product {
        font-size: 12px !important;
    }
}

/* ==========================================================================
   PRODUCT CARDS GRID EQUAL HEIGHT & ALIGNMENT ENHANCEMENTS
   ========================================================================== */

#product-container {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}

.product-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
}

.product__item {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    height: 100% !important;
    width: 100% !important;
    flex: 1 !important;
    border-radius: 16px !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    background: #ffffff !important;
    overflow: hidden !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.product__item:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 16px 36px rgba(14, 189, 50, 0.12) !important;
}

.product__item__img {
    width: 100% !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.product__item__img__item {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.product__item__img__item img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}

.product__item__content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex: 1 !important;
    text-align: center !important;
}

.product__item__title {
    min-height: 2.7em !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    margin: 0 !important;
    font-weight: 700 !important;
}

a.product__item__link {
    margin-top: auto !important;
}




