:root {
            --primary:#1a2f7a; --secondary:#2646cc;
            --accent:#3a5fe8; --light:#e8eeff; --dark:#0d1b4b;
        }
        *{scroll-behavior:smooth;box-sizing:border-box;}
        body{font-family:'Hind Siliguri','Inter',sans-serif;overflow-x:hidden;}

        #announce-bar{
            position:relative;z-index:100;overflow:hidden;
            background:linear-gradient(90deg,#0d1b4b,#1a2f7a,#2646cc,#1a2f7a,#0d1b4b);
            background-size:300% 100%;
            animation:barShift 6s ease infinite;
        }
        @keyframes barShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}

        #navbar{
            position:fixed;left:0;right:0;z-index:99;
            transition:all .35s ease;
            padding:0;
        }
        .nav-glass{
            position:absolute;inset:0;
            background:rgba(255,255,255,0);
            backdrop-filter:blur(0px);
            transition:all .35s ease;
            border-bottom:1px solid transparent;
        }
        #navbar.scrolled .nav-glass{
            background:rgba(255,255,255,.92);
            backdrop-filter:blur(18px);
            border-bottom-color:rgba(58,95,232,.1);
            box-shadow:0 4px 30px rgba(26,47,122,.1);
        }
        .nav-inner{
            max-width:80rem;margin:0 auto;
            padding:0 1.5rem;
            display:flex;align-items:center;justify-content:space-between;
            height:68px;transition:height .35s ease;
        }
        #navbar.scrolled .nav-inner{height:58px;}

        .nav-link{
            position:relative;font-weight:500;font-size:.875rem;
            color:#4b5563;text-decoration:none;
            padding:6px 4px;transition:color .2s;
        }
        .nav-link::after{
            content:'';position:absolute;bottom:-2px;left:0;
            width:0;height:2px;border-radius:2px;
            background:linear-gradient(90deg,var(--primary),var(--secondary));
            transition:width .3s ease;
        }
        .nav-link:hover{color:var(--primary);}
        .nav-link:hover::after,.nav-link.active::after{width:100%;}
        .nav-link.active{color:var(--primary);font-weight:600;}

        .nav-cta{
            position:relative;overflow:hidden;
            background:linear-gradient(135deg,var(--primary),var(--secondary));
            color:white;font-weight:700;font-size:.85rem;
            padding:10px 20px;border-radius:12px;text-decoration:none;
            display:inline-flex;align-items:center;gap:8px;
            box-shadow:0 4px 15px rgba(38,70,204,.35);
            transition:transform .2s,box-shadow .2s;
        }
        .nav-cta::before{
            content:'';position:absolute;inset:0;
            background:linear-gradient(135deg,var(--secondary),#6d6aff);
            opacity:0;transition:opacity .3s;
        }
        .nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(38,70,204,.45);}
        .nav-cta:hover::before{opacity:1;}
        .nav-cta span,.nav-cta i{position:relative;z-index:1;}
        .nav-cta::after{
            content:'';position:absolute;top:0;left:-100%;width:60%;height:100%;
            background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
            transform:skewX(-20deg);
            transition:left .6s ease;
        }
        .nav-cta:hover::after{left:150%;}

        #mobile-menu{
            max-height:0;overflow:hidden;
            transition:max-height .35s ease,opacity .3s ease;
            opacity:0;
        }
        #mobile-menu.open{max-height:500px;opacity:1;}
        .ham-line{
            display:block;width:22px;height:2px;border-radius:2px;
            background:var(--primary);transition:all .3s ease;
        }
        #hamburger.open .ham-line:nth-child(1){transform:translateY(8px) rotate(45deg);}
        #hamburger.open .ham-line:nth-child(2){opacity:0;transform:scaleX(0);}
        #hamburger.open .ham-line:nth-child(3){transform:translateY(-8px) rotate(-45deg);}

        .hero-bg{
            position:relative;overflow:hidden;
            background:linear-gradient(135deg,#f0f4ff 0%,#e8eeff 50%,#dce6ff 100%);
        }
        .hero-grad-anim{
            position:absolute;inset:0;pointer-events:none;
            background:linear-gradient(300deg,#e0e8ff,#f0f4ff,#dce6ff,#eef2ff,#e8eeff);
            background-size:400% 400%;
            animation:gradShift 10s ease infinite;opacity:.7;
        }
        @keyframes gradShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
        #particles-canvas{position:absolute;inset:0;pointer-events:none;z-index:0;}
        .float-icon{
            position:absolute;pointer-events:none;user-select:none;
            font-weight:800;color:var(--primary);opacity:.07;
            font-size:clamp(1.5rem,3vw,2.8rem);
            animation:floatAnim 7s ease-in-out infinite;
        }
        .float-icon:nth-child(2){animation-delay:1.2s;}
        .float-icon:nth-child(3){animation-delay:2.4s;}
        .float-icon:nth-child(4){animation-delay:3.6s;}
        .float-icon:nth-child(5){animation-delay:4.8s;}
        .float-icon:nth-child(6){animation-delay:.6s;}
        .float-icon:nth-child(7){animation-delay:2s;}
        .float-icon:nth-child(8){animation-delay:3s;}
        @keyframes floatAnim{0%,100%{transform:translateY(0) rotate(-4deg);}50%{transform:translateY(-20px) rotate(4deg);}}

        .typed-cursor{display:inline-block;width:3px;height:.9em;background:var(--secondary);animation:blink .8s step-end infinite;vertical-align:middle;margin-left:3px;border-radius:2px;}
        @keyframes blink{0%,100%{opacity:1}50%{opacity:0}}

        .orbit-ring{position:absolute;border-radius:50%;border:1.5px dashed rgba(58,95,232,.2);}
        .orbit-ring-1{inset:0;animation:spin 22s linear infinite;}
        .orbit-ring-2{inset:28px;border-color:rgba(26,47,122,.12);animation:spin 16s linear infinite reverse;}
        @keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
        .orbit-icon-wrap{position:absolute;width:40px;height:40px;animation:orbitMove 22s linear infinite;}
        @keyframes orbitMove{
            0%  {top:0;left:50%;transform:translate(-50%,-50%);}
            25% {top:50%;left:100%;transform:translate(-50%,-50%);}
            50% {top:100%;left:50%;transform:translate(-50%,-50%);}
            75% {top:50%;left:0;transform:translate(-50%,-50%);}
            100%{top:0;left:50%;transform:translate(-50%,-50%);}
        }
        .orbit-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.12);}

        .logo-marquee{overflow:hidden;}
        .marquee-track{display:flex;gap:3rem;animation:marquee 25s linear infinite;width:max-content;}
        @keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

        .section-eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--secondary);background:#e8eeff;padding:4px 14px;border-radius:100px;margin-bottom:12px;}

        .btn-primary{background:linear-gradient(135deg,var(--primary),var(--secondary));transition:all .3s;position:relative;overflow:hidden;box-shadow:0 4px 15px rgba(38,70,204,.35);}
        .btn-primary::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--secondary),#6d6aff);opacity:0;transition:opacity .3s;}
        .btn-primary:hover::after{opacity:1;}
        .btn-primary>*{position:relative;z-index:1;}
        .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(38,70,204,.45);}
        .btn-outline{border:2px solid var(--primary);transition:all .3s;position:relative;overflow:hidden;}
        .btn-outline::before{content:'';position:absolute;inset:0;background:var(--primary);transform:scaleX(0);transform-origin:left;transition:transform .3s ease;}
        .btn-outline:hover::before{transform:scaleX(1);}
        .btn-outline>*{position:relative;z-index:1;}
        .btn-outline:hover span{color:white!important;}

        .neon-card{position:relative;border-radius:1.25rem;border:1.5px solid rgba(58,95,232,.12);transition:all .35s ease;background:white;}
        .neon-card:hover{transform:translateY(-6px);border-color:rgba(58,95,232,.45);box-shadow:0 0 0 1px rgba(58,95,232,.1),0 12px 40px rgba(58,95,232,.12),0 0 60px rgba(77,125,255,.06);}
        .service-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#e8eeff,#dce6ff);display:flex;align-items:center;justify-content:center;transition:all .3s;}
        .neon-card:hover .service-icon{background:linear-gradient(135deg,var(--primary),var(--secondary));box-shadow:0 0 20px rgba(38,70,204,.3);}
        .neon-card:hover .service-icon i{color:white!important;}
        .tilt-card{transform-style:preserve-3d;transition:transform .1s ease;}

        .portfolio-card{overflow:hidden;transition:all .3s;}
        .portfolio-thumb{transition:transform .45s ease;}
        .portfolio-card:hover .portfolio-thumb{transform:scale(1.07);}
        .portfolio-overlay{background:linear-gradient(to top,rgba(13,27,75,.88) 0%,transparent 100%);opacity:0;transition:opacity .35s;position:absolute;inset:0;display:flex;align-items:flex-end;padding:1rem;}
        .portfolio-card:hover .portfolio-overlay{opacity:1;}
        .portfolio-card:hover{box-shadow:0 16px 48px rgba(26,47,122,.18);}

        .testimonial-card{border-top:3px solid var(--secondary);}

        .pricing-card{border:1.5px solid #e8eeff;border-radius:1.5rem;transition:all .35s ease;}
        .pricing-card:hover{transform:translateY(-8px);box-shadow:0 20px 60px rgba(38,70,204,.14);}
        .pricing-popular{border-color:var(--secondary);background:linear-gradient(135deg,var(--primary),var(--secondary));position:relative;}
        .pricing-popular *{color:white!important;}
        .popular-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#f59e0b,#f97316);color:white;font-size:.7rem;font-weight:700;padding:4px 14px;border-radius:100px;white-space:nowrap;box-shadow:0 4px 12px rgba(249,115,22,.4);}

        .faq-item{border:1.5px solid #e8eeff;border-radius:1rem;overflow:hidden;transition:all .3s;}
        .faq-item.open{border-color:var(--accent);box-shadow:0 4px 20px rgba(58,95,232,.1);}
        .faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease;}
        .faq-item.open .faq-answer{max-height:300px;}
        .faq-icon{transition:transform .3s;}
        .faq-item.open .faq-icon{transform:rotate(45deg);}

        .reveal{opacity:0;transform:translateY(30px);transition:all .6s cubic-bezier(.22,1,.36,1);}
        .reveal.delay-1{transition-delay:.1s;}
        .reveal.delay-2{transition-delay:.2s;}
        .reveal.delay-3{transition-delay:.3s;}
        .reveal.visible{opacity:1;transform:translateY(0);}

        .parallax-layer{will-change:transform;}

        .stats-section{background:linear-gradient(135deg,var(--dark) 0%,var(--primary) 50%,var(--secondary) 100%);position:relative;overflow:hidden;}
        .stats-blob{position:absolute;border-radius:50%;background:rgba(255,255,255,.04);}

        #back-top{position:fixed;bottom:90px;right:24px;z-index:999;width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:translateY(20px);transition:all .3s;box-shadow:0 4px 15px rgba(38,70,204,.35);}
        #back-top.show{opacity:1;transform:translateY(0);}
        #back-top:hover{transform:translateY(-3px);}

        #wa-float{position:fixed;bottom:24px;right:24px;z-index:999;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#25d366,#128c7e);color:white;display:flex;align-items:center;justify-content:center;font-size:1.5rem;text-decoration:none;box-shadow:0 4px 20px rgba(37,211,102,.5);animation:waPulse 2.5s ease-in-out infinite;}
        @keyframes waPulse{0%,100%{box-shadow:0 4px 20px rgba(37,211,102,.5);}50%{box-shadow:0 4px 30px rgba(37,211,102,.8),0 0 0 8px rgba(37,211,102,.1);}}
        .wa-tooltip{position:absolute;right:62px;top:50%;transform:translateY(-50%);background:var(--dark);color:white;font-size:.75rem;font-weight:600;white-space:nowrap;padding:6px 12px;border-radius:8px;opacity:0;transition:opacity .3s;pointer-events:none;}
        .wa-tooltip::after{content:'';position:absolute;left:100%;top:50%;transform:translateY(-50%);border:5px solid transparent;border-left-color:var(--dark);}
        #wa-float:hover .wa-tooltip{opacity:1;}

        .counter{font-variant-numeric:tabular-nums;}

        .service-card-item:hover .svc-bottom-line { transform: scaleX(1) !important; }
        .service-card-item:hover .svc-icon-box { transform: scale(1.08); }
        .logo-marquee:hover .marquee-track { animation-play-state: paused; }
        a:hover .concern-line { transform: scaleX(1) !important; }
        a:hover .blog-thumb-icon { transform: scale(1.1); }

/* =====================================================
   ADDED — converted from inline styles (index.php)
   Pattern used for dynamic per-item colors (services,
   reasons, sister concerns, blog posts, client chips,
   tech icons): the PHP loop sets CSS custom properties
   like --clr / --bg / --bd on the element via a short
   inline style (e.g. style="--clr:#2646cc"), and the
   class below does all the actual styling with var().
   This keeps 100% of real CSS in this file; only the
   raw color *data* coming from the PHP arrays stays
   inline, the same way you'd pass a prop in JSX.
   ===================================================== */

/* ---- generic helpers reused across sections ---- */
.rel-z1{position:relative;z-index:1;}
.section-inner{max-width:80rem;margin:0 auto;padding:0 1.5rem;position:relative;z-index:1;}
.section-blob{position:absolute;border-radius:50%;pointer-events:none;
    width:var(--sb-w,300px);height:var(--sb-h,300px);
    top:var(--sb-top,auto);right:var(--sb-right,auto);
    bottom:var(--sb-bottom,auto);left:var(--sb-left,auto);
    background:radial-gradient(circle,var(--sb-color,rgba(58,95,232,.05)),transparent 70%);
}
.section-dot-overlay{position:absolute;inset:0;pointer-events:none;
    background-image:radial-gradient(rgba(58,95,232,0.05) 1px,transparent 1px);
    background-size:var(--dot-size,32px) var(--dot-size,32px);opacity:var(--dot-op,.6);
}
.section-head{text-align:center;margin-bottom:48px;}
.section-badge{display:inline-flex;align-items:center;gap:8px;background:white;border:1px solid rgba(38,70,204,.15);border-radius:100px;padding:5px 14px 5px 8px;margin-bottom:16px;box-shadow:0 4px 14px rgba(26,47,122,.06);}
.section-badge--flat{background:#e8eeff;box-shadow:none;}
.section-badge--mb20{margin-bottom:20px;}
.section-badge-dot{width:20px;height:20px;background:linear-gradient(135deg,#1a2f7a,#2646cc);border-radius:50%;display:flex;align-items:center;justify-content:center;}
.section-badge-dot i{color:white;font-size:7px;}
.section-badge-label{font-size:.72rem;font-weight:700;color:#2646cc;text-transform:uppercase;letter-spacing:.08em;}
.section-title--sm{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;color:#1a2f7a;margin:10px 0 12px;}
.section-title--md{font-size:clamp(1.7rem,3vw,2.3rem);font-weight:900;color:#1a2f7a;margin:0 0 12px;}
.section-title--lg{font-size:clamp(1.8rem,3.2vw,2.4rem);font-weight:900;color:#1a2f7a;margin:0 0 12px;}
.section-title--flush{margin:0;}
.section-desc{color:#6b7280;line-height:1.7;margin:0 auto;}
.section-desc--92{font-size:.92rem;max-width:480px;}
.section-desc--95{font-size:.95rem;max-width:500px;}
.reveal{transition-delay:var(--rd,0s);}

/* ---- HERO ---- */
.hero-bg{min-height:75vh;}
.hero-grid-overlay{position:absolute;inset:0;background-image:linear-gradient(rgba(58,95,232,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(58,95,232,.03) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;z-index:0;}
.float-icon:nth-child(1){top:10%;left:4%;}
.float-icon:nth-child(2){top:18%;right:6%;}
.float-icon:nth-child(3){top:55%;left:2%;}
.float-icon:nth-child(4){bottom:22%;right:4%;}
.float-icon:nth-child(5){top:72%;right:13%;}
.float-icon:nth-child(6){top:38%;left:10%;}
.float-icon:nth-child(7){bottom:35%;left:20%;}
.float-icon:nth-child(8){top:25%;left:30%;}
.hero-container{position:relative;z-index:2;padding-top:2rem;padding-bottom:3rem;}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(58,95,232,.08);border:1px solid rgba(58,95,232,.2);border-radius:100px;padding:5px 16px 5px 6px;margin-bottom:20px;}
.hero-badge-icon{width:24px;height:24px;background:linear-gradient(135deg,#1a2f7a,#2646cc);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.hero-badge-icon i{color:white;font-size:9px;}
.hero-badge-text{font-size:.72rem;font-weight:700;letter-spacing:.08em;color:#2646cc;text-transform:uppercase;}
.hero-title{font-size:clamp(2rem,4.5vw,3.2rem);font-weight:900;color:#1a2f7a;line-height:1.15;margin:0 0 1.25rem;}
.hero-title-gradient{background:linear-gradient(135deg,#1a2f7a,#2646cc,#3a5fe8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hero-desc{color:#4b5563;line-height:1.8;max-width:480px;font-size:1rem;margin-bottom:1.75rem;}
.hero-cta-group{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:2rem;}
.btn-cta{padding:13px 26px;color:white;font-weight:700;font-size:.9rem;display:inline-flex;align-items:center;gap:8px;text-decoration:none;border-radius:12px;}
.btn-outline{padding:11px 26px;font-weight:700;font-size:.9rem;display:inline-flex;align-items:center;gap:8px;text-decoration:none;border-radius:12px;color:#1a2f7a;}
.btn-cta-gradient{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;border-radius:12px;background:linear-gradient(135deg,#1a2f7a,#2646cc);color:white;font-weight:700;font-size:.9rem;text-decoration:none;box-shadow:0 4px 15px rgba(38,70,204,.3);transition:all .3s;}
.btn-cta-gradient--alt{padding:13px 26px;font-size:.875rem;box-shadow:0 4px 15px rgba(38,70,204,.35);}
.hero-rating-box{display:inline-flex;align-items:center;gap:14px;background:rgba(255,255,255,.75);backdrop-filter:blur(10px);border:1px solid rgba(58,95,232,.12);border-radius:14px;padding:12px 16px;margin-bottom:1.5rem;}
.hero-avatars{display:flex;}
.avatar-circle{width:28px;height:28px;border-radius:50%;background:var(--clr);border:2px solid white;display:flex;align-items:center;justify-content:center;color:white;font-size:10px;font-weight:700;margin-left:-7px;z-index:var(--z,1);}
.avatar-circle:first-child{margin-left:0;}
.hero-rating-stars{display:flex;gap:2px;margin-bottom:2px;}
.hero-rating-stars i{color:#f59e0b;font-size:10px;}
.hero-rating-text{font-size:.72rem;color:#6b7280;}
.hero-rating-text strong{color:#1a2f7a;}
.hero-stats-box{display:flex;flex-wrap:wrap;gap:0;border:1px solid rgba(58,95,232,.1);border-radius:14px;overflow:hidden;background:rgba(255,255,255,.6);backdrop-filter:blur(8px);max-width:380px;}
.hero-stat-item{flex:1;padding:14px 10px;text-align:center;border-left:1px solid rgba(58,95,232,.08);}
.hero-stat-item:first-child{border-left:none;}
.hero-stat-top{display:flex;align-items:center;justify-content:center;gap:4px;}
.hero-stat-top i{color:#2646cc;font-size:11px;}
.hero-stat-num{font-size:1.4rem;font-weight:900;color:#1a2f7a;}
.hero-stat-suffix{font-size:1rem;font-weight:900;color:#2646cc;}
.hero-stat-label{font-size:.68rem;color:#9ca3af;margin-top:2px;font-weight:500;}
.hero-visual{position:relative;}
.hero-visual-glow{position:absolute;inset:-40px;border-radius:50%;background:radial-gradient(circle,rgba(58,95,232,.07),transparent 70%);}
.hero-visual-wrap{position:relative;width:320px;height:320px;}
.hero-orb-glow{position:absolute;inset:44px;border-radius:50%;background:conic-gradient(from 0deg,#1a2f7a 0%,#2646cc 25%,#3a5fe8 50%,#7c3aed 75%,#1a2f7a 100%);animation:spinGradient 6s linear infinite;}
@keyframes spinGradient{to{transform:rotate(360deg);}}
.hero-orb-core{position:absolute;inset:52px;border-radius:50%;background:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:0 20px 60px rgba(26,47,122,.15),0 0 0 1px rgba(58,95,232,.08);}
.hero-orb-core-bar{position:absolute;top:0;left:25%;right:25%;height:2px;background:linear-gradient(90deg,transparent,#2646cc,transparent);border-radius:2px;}
.hero-orb-logo{height:44px;width:auto;}
.hero-orb-caption{font-size:.58rem;color:#9ca3af;font-weight:700;letter-spacing:.12em;}
.hero-orb-available{display:flex;align-items:center;gap:5px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:100px;padding:3px 10px;}
.hero-orb-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;animation:waPulse 2s infinite;display:block;}
.hero-orb-available-text{font-size:.62rem;color:#16a34a;font-weight:700;}
.orbit-icon-wrap{animation-delay:var(--od,0s);}
.orbit-icon-tint{background:var(--bg);border:1.5px solid var(--bd);}
.orbit-icon-tint i{color:var(--clr);font-size:18px;}
.hero-float-card{position:absolute;background:white;border-radius:12px;padding:8px 12px;box-shadow:0 8px 24px rgba(26,47,122,.1);border:1px solid rgba(58,95,232,.1);animation:floatAnim 4s ease-in-out infinite;white-space:nowrap;}
.hero-float-card--tr{top:14%;right:-50px;}
.hero-float-card--bl{bottom:14%;left:-54px;animation-duration:5s;animation-delay:.8s;}
.hero-float-card-label{font-size:.65rem;color:#9ca3af;font-weight:600;}
.hero-float-card-value{font-size:1.1rem;font-weight:900;color:#1a2f7a;}
.hero-float-card-value--alt{color:#2646cc;}
.hero-wave{position:absolute;bottom:0;left:0;right:0;z-index:1;}
.hero-wave svg{display:block;width:100%;height:60px;}
.hero-scroll-indicator{position:absolute;bottom:70px;left:50%;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:5px;opacity:.4;animation:floatAnim 2s ease-in-out infinite;}
.hero-scroll-label{font-size:.6rem;color:#1a2f7a;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
.hero-scroll-line{width:1px;height:24px;background:linear-gradient(to bottom,#2646cc,transparent);}

/* ---- CLIENT LOGOS ---- */
.clients-section{background:linear-gradient(135deg,#f8f9ff,#ffffff);padding:32px 0;border-bottom:1px solid #f0f0f0;position:relative;overflow:hidden;}
.clients-eyebrow-row{display:flex;align-items:center;gap:14px;margin-bottom:20px;}
.eyebrow-line{flex:1;height:1px;}
.eyebrow-line--l{background:linear-gradient(90deg,transparent,#e5e7eb);}
.eyebrow-line--r{background:linear-gradient(90deg,#e5e7eb,transparent);}
.clients-eyebrow-label{font-size:.7rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.12em;white-space:nowrap;display:flex;align-items:center;gap:6px;}
.clients-eyebrow-label i{color:#2646cc;font-size:.75rem;}
.clients-marquee-wrap{position:relative;}
.marquee-fade{position:absolute;top:0;bottom:0;width:60px;z-index:2;pointer-events:none;}
.marquee-fade--l{left:0;background:linear-gradient(90deg,#f8f9ff,transparent);}
.marquee-fade--r{right:0;background:linear-gradient(270deg,#f8f9ff,transparent);}
.marquee-track--clients{gap:14px;animation-duration:28s;}
.client-chip{flex-shrink:0;display:flex;align-items:center;gap:8px;background:white;border:1.5px solid #f0f0f0;border-radius:100px;padding:9px 18px 9px 12px;transition:all .25s;cursor:default;white-space:nowrap;}
.client-chip-icon{width:26px;height:26px;border-radius:50%;background:var(--bg);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.client-chip-icon i{color:var(--clr);font-size:.65rem;}
.client-chip-name{font-weight:800;font-size:.85rem;color:#374151;letter-spacing:-.01em;}

/* ---- SERVICES ---- */
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;}
.service-card-item{transition-delay:var(--rd,0s);background:white;border-radius:18px;border:1.5px solid #f0f0f0;padding:24px;cursor:pointer;position:relative;overflow:hidden;transition:all .35s ease;}
.service-card-number{position:absolute;top:-10px;right:12px;font-size:5rem;font-weight:900;color:var(--clr);opacity:.06;line-height:1;user-select:none;pointer-events:none;}
.service-card-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px;}
.svc-icon-box{width:52px;height:52px;border-radius:14px;background:var(--bg);border:1.5px solid var(--bd);display:flex;align-items:center;justify-content:center;transition:all .3s;flex-shrink:0;}
.service-card-icon{font-size:1.3rem;color:var(--clr);}
.service-card-num-badge{font-size:.7rem;font-weight:800;color:var(--clr);background:var(--bg);padding:3px 10px;border-radius:100px;letter-spacing:.05em;}
.service-card-title{font-size:1rem;font-weight:800;color:#1a2f7a;margin:0 0 8px;line-height:1.3;}
.service-card-desc{font-size:.82rem;color:#6b7280;line-height:1.7;margin:0 0 14px;}
.service-card-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:16px;}
.service-tag{font-size:.68rem;font-weight:700;padding:3px 10px;border-radius:100px;background:var(--bg);color:var(--clr);border:1px solid var(--bd);}
.service-card-link{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;color:var(--clr);margin-top:auto;}
.service-card-link i{font-size:.7rem;transition:transform .2s;}
.svc-bottom-line{position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--clr),var(--clr-soft));transform:scaleX(0);transform-origin:left;transition:transform .35s ease;}
.section-cta-wrap{text-align:center;margin-top:40px;}

/* ---- WHY DIFFERENT / ABOUT cards ---- */
.diff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;}
.diff-card{background:white;border:1.5px solid #f0f0f0;border-radius:20px;padding:30px 24px;text-align:center;position:relative;overflow:hidden;transition:all .35s;transition-delay:var(--rd,0s);}
.diff-card-num{position:absolute;top:-6px;right:6px;font-size:3.4rem;font-weight:900;color:var(--clr);opacity:.06;line-height:1;user-select:none;pointer-events:none;}
.diff-icon-box{width:60px;height:60px;border-radius:16px;background:var(--bg);border:1.5px solid var(--bd);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;position:relative;z-index:1;}
.diff-icon-box i{color:var(--clr);font-size:1.4rem;}
.diff-card-title{font-weight:800;color:#1a2f7a;font-size:1rem;margin-bottom:8px;position:relative;z-index:1;}
.diff-card-desc{color:#6b7280;font-size:.83rem;line-height:1.65;position:relative;z-index:1;}
.diff-bottom-line{position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--clr),var(--clr-soft));transform:scaleX(0);transform-origin:left;transition:transform .35s ease;}

/* ---- ABOUT US ---- */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin-bottom:80px;}
.about-visual{position:relative;}
.about-visual-card{border-radius:26px;overflow:hidden;position:relative;box-shadow:0 30px 70px rgba(26,47,122,.16);}
.about-visual-top{background:linear-gradient(135deg,#0d1b4b 0%,#1a2f7a 55%,#2646cc 100%);padding:42px 36px;position:relative;overflow:hidden;}
.about-visual-blob{position:absolute;border-radius:50%;}
.about-visual-blob--1{top:-50px;right:-50px;width:200px;height:200px;background:rgba(58,95,232,.28);filter:blur(34px);}
.about-visual-blob--2{bottom:-40px;left:-20px;width:160px;height:160px;background:rgba(167,139,250,.18);filter:blur(28px);}
.about-since-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:100px;padding:5px 13px;margin-bottom:22px;position:relative;z-index:1;}
.about-since-dot{width:6px;height:6px;background:#22c55e;border-radius:50%;display:block;animation:waPulse 2s infinite;}
.about-since-text{font-size:.7rem;color:rgba(255,255,255,.82);font-weight:600;letter-spacing:.05em;}
.about-visual-title{font-size:1.7rem;font-weight:900;color:white;line-height:1.25;margin:0 0 12px;position:relative;z-index:1;}
.about-visual-desc{font-size:.86rem;color:rgba(255,255,255,.62);line-height:1.75;position:relative;z-index:1;max-width:320px;margin:0;}
.about-tech-row{display:flex;gap:8px;margin-top:26px;position:relative;z-index:1;}
.about-tech-icon{width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);}
.about-tech-icon i{color:var(--clr);font-size:1rem;}
.about-tech-more{width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;}
.about-tech-more span{font-size:.65rem;color:rgba(255,255,255,.55);font-weight:700;}
.about-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);background:white;}
.about-mini-stat{padding:20px 16px;text-align:center;border-left:1px solid #f0f0f0;}
.about-mini-stat:first-child{border-left:none;}
.about-mini-stat-num{font-size:1.5rem;font-weight:900;color:#1a2f7a;}
.about-mini-stat-label{font-size:.72rem;color:#9ca3af;font-weight:600;margin-top:2px;}
.about-float-badge{position:absolute;background:white;border-radius:16px;padding:13px 16px;box-shadow:0 10px 32px rgba(26,47,122,.16);border:1px solid #e8eeff;z-index:10;}
.about-float-badge--tr{top:-18px;right:-18px;}
.about-float-badge--bl{bottom:-18px;left:-18px;border-radius:14px;padding:11px 15px;box-shadow:0 10px 28px rgba(26,47,122,.14);}
.about-float-badge-row{display:flex;align-items:center;gap:9px;}
.about-trophy-icon{width:38px;height:38px;background:linear-gradient(135deg,#f59e0b,#f97316);border-radius:11px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(249,115,22,.35);}
.about-trophy-icon i{color:white;font-size:.9rem;}
.about-float-title{font-size:.74rem;font-weight:800;color:#1a2f7a;white-space:nowrap;}
.about-float-sub{font-size:.66rem;color:#9ca3af;}
.about-avatar-stack{display:flex;}
.about-avatar{width:25px;height:25px;border-radius:50%;background:var(--clr);border:2px solid white;margin-left:-7px;z-index:var(--z,1);}
.about-avatar:first-child{margin-left:0;}
.about-stars-row{display:flex;gap:1px;margin-bottom:1px;}
.about-stars-row i{color:#f59e0b;font-size:8px;}
.about-clients-text{font-size:.68rem;color:#6b7280;font-weight:600;white-space:nowrap;}
.about-content{}
.about-quote{background:linear-gradient(135deg,#f8f9ff,#f0f4ff);border-left:3px solid #2646cc;border-radius:0 12px 12px 0;padding:14px 18px;margin-bottom:22px;}
.about-quote p{color:#1a2f7a;font-weight:600;font-style:italic;font-size:.92rem;line-height:1.6;margin:0 0 4px;}
.about-quote-source{color:#9ca3af;font-size:.72rem;margin:0;}
.about-text{color:#4b5563;line-height:1.85;font-size:.94rem;margin-bottom:14px;}
.about-text--last{margin-bottom:26px;}
.perks-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:30px;}
.perk-item{display:flex;align-items:center;gap:11px;background:white;border:1.5px solid #f0f0f0;border-radius:13px;padding:13px 14px;transition:all .25s;}
.perk-icon-box{width:34px;height:34px;border-radius:10px;background:var(--bg);border:1.5px solid var(--bd);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.perk-icon-box i{color:var(--clr);font-size:.78rem;}
.perk-text{font-size:.83rem;color:#374151;font-weight:700;line-height:1.3;}
.about-links-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.about-link-secondary{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;font-weight:700;color:#2646cc;text-decoration:none;transition:gap .2s;}

/* ---- SISTER CONCERNS ---- */
.concerns-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px;}
.concern-card{display:flex;flex-direction:column;text-decoration:none;background:white;border-radius:20px;border:1.5px solid #f0f0f0;padding:26px 24px;position:relative;overflow:hidden;transition:all .35s;transition-delay:var(--rd,0s);}
.concern-card-bgicon{position:absolute;bottom:-10px;right:-10px;font-size:5.5rem;color:var(--clr);opacity:.06;pointer-events:none;}
.concern-card-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px;position:relative;z-index:1;}
.concern-icon-box{width:52px;height:52px;border-radius:15px;background:var(--bg);border:1.5px solid var(--bd);display:flex;align-items:center;justify-content:center;}
.concern-icon-box i{color:var(--clr);font-size:1.3rem;}
.concern-ext-box{width:30px;height:30px;border-radius:8px;background:#f8f9ff;border:1px solid #e8eeff;display:flex;align-items:center;justify-content:center;}
.concern-ext-box i{color:#9ca3af;font-size:.65rem;}
.concern-card-body{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;}
.concern-tag{display:inline-block;font-size:.65rem;font-weight:700;color:var(--clr);background:var(--bg);padding:3px 10px;border-radius:100px;margin-bottom:10px;border:1px solid var(--bd);width:fit-content;}
.concern-card-title{font-size:1.05rem;font-weight:900;color:#1a2f7a;margin:0 0 8px;line-height:1.3;}
.concern-card-desc{font-size:.8rem;color:#6b7280;line-height:1.7;margin:0 0 18px;flex:1;}
.concern-card-link{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--clr);font-weight:700;}
.concern-card-link i{font-size:.65rem;}
.concern-line{position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--clr),var(--clr-soft));transform:scaleX(0);transform-origin:left;transition:transform .35s ease;}
.concerns-footnote{text-align:center;margin-top:36px;}
.concerns-footnote p{font-size:.82rem;color:#9ca3af;}
.concerns-footnote strong{color:#1a2f7a;}

/* ---- BLOG ---- */
.blog-head-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:44px;}
.blog-all-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border-radius:12px;border:2px solid #1a2f7a;text-decoration:none;font-weight:700;font-size:.85rem;color:#1a2f7a;transition:all .3s;flex-shrink:0;}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;}
.blog-card{display:flex;flex-direction:column;text-decoration:none;background:white;border-radius:20px;border:1.5px solid #f0f0f0;overflow:hidden;transition:all .35s;transition-delay:var(--rd,0s);}
.blog-thumb{height:160px;background:linear-gradient(135deg,var(--clr),var(--clr-soft));position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.blog-thumb-icon{font-size:4.4rem;color:rgba(255,255,255,.18);transition:transform .45s ease;}
.blog-cat-badge{position:absolute;top:12px;left:12px;}
.blog-cat-badge span{font-size:.68rem;font-weight:700;padding:4px 11px;border-radius:100px;background:white;color:var(--clr);}
.blog-card-body{padding:20px;display:flex;flex-direction:column;flex:1;}
.blog-card-title{font-weight:800;color:#1a2f7a;font-size:1rem;margin:0 0 8px;line-height:1.4;}
.blog-card-excerpt{color:#6b7280;font-size:.82rem;line-height:1.65;margin:0 0 16px;flex:1;}
.blog-meta-row{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid #f3f4f6;}
.blog-author{display:flex;align-items:center;gap:8px;}
.blog-author-avatar{width:28px;height:28px;border-radius:50%;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--clr);font-size:.72rem;font-weight:800;}
.blog-author-name{font-size:.76rem;color:#6b7280;font-weight:600;}
.blog-meta-right{display:flex;align-items:center;gap:10px;font-size:.72rem;color:#9ca3af;}
.blog-read-time{color:var(--clr);font-weight:700;}

/* ---- CONTACT ---- */
.contact-info-row{display:flex;align-items:center;gap:12px;}
.contact-icon-box{width:44px;height:44px;border-radius:12px;background:#e8eeff;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.contact-icon-box i{color:var(--accent);font-size:1rem;}
.contact-info-label{font-weight:600;color:var(--primary);font-size:.82rem;}
.contact-info-value{color:#6b7280;font-size:.82rem;}
.contact-map-frame{border-radius:16px;overflow:hidden;border:1px solid #e8eeff;box-shadow:0 4px 16px rgba(26,47,122,.06);margin-bottom:20px;}
.contact-map-frame iframe{border:0;display:block;}
.contact-social-row{display:flex;gap:8px;}
.contact-social-link{width:38px;height:38px;border-radius:10px;background:#e8eeff;color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:.8rem;text-decoration:none;transition:all .2s;}
.contact-form-card{background:#f8f9ff;border-radius:20px;padding:28px;border:1px solid #e8eeff;box-shadow:0 8px 30px rgba(26,47,122,.06);}
.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;}
.form-group{margin-bottom:12px;}
.form-group--last{margin-bottom:16px;}
.form-label{display:block;font-size:.8rem;font-weight:600;color:#374151;margin-bottom:5px;}
.form-input{width:100%;padding:11px 14px;border-radius:10px;border:1.5px solid #e5e7eb;background:white;font-size:.85rem;outline:none;transition:border-color .2s;font-family:inherit;}
.form-input:focus{border-color:var(--accent);}
textarea.form-input{resize:none;}
.btn-submit{width:100%;padding:13px;border-radius:12px;color:white;font-weight:700;font-size:.9rem;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;}

/* ---- FAQ ---- */
.faq-row{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;cursor:pointer;}
.faq-question{font-weight:600;color:var(--primary);font-size:.9rem;padding-right:14px;line-height:1.5;}
.faq-icon{color:var(--accent);flex-shrink:0;font-size:.85rem;}
.faq-answer-text{color:#6b7280;font-size:.85rem;line-height:1.7;padding:0 18px 16px;}

/* ---- CONTACT (extra) ---- */
.contact-lead-text{color:#6b7280;line-height:1.7;margin-bottom:20px;}
.contact-info-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;}

/* ---- section wrapper backgrounds (replacing remaining inline style on <section> tags) ---- */
.section-decor{position:relative;overflow:hidden;}
.section-tinted{padding:80px 0;background:linear-gradient(135deg,#f8f9ff,#f0f4ff);position:relative;overflow:hidden;}
.section-plain{padding:80px 0;background:#ffffff;position:relative;overflow:hidden;}
.bg-tinted{background:linear-gradient(135deg,#f8f9ff,#f0f4ff);}
.hero-title-gradient--alt{background:linear-gradient(135deg,#2646cc,#3a5fe8,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
/* ---- FOOTER ---- */
.site-footer{background:linear-gradient(135deg,var(--dark),var(--primary));padding:56px 0 28px;position:relative;overflow:hidden;}
.footer-glow{position:absolute;border-radius:50%;background:rgba(255,255,255,.04);pointer-events:none;}
.footer-glow--1{top:-100px;right:-80px;width:320px;height:320px;}
.footer-glow--2{bottom:-120px;left:-100px;width:280px;height:280px;}
.footer-logo{height:38px;width:auto;margin-bottom:14px;filter:brightness(0) invert(1);}
.footer-about-text{color:#9ca3af;font-size:.85rem;line-height:1.75;max-width:260px;}
.footer-social-row{display:flex;gap:10px;margin-top:18px;}
.footer-social-link{width:34px;height:34px;border-radius:9px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);color:#9ca3af;display:flex;align-items:center;justify-content:center;font-size:.78rem;text-decoration:none;transition:all .25s;}
.footer-col-title{font-weight:700;color:white;margin-bottom:16px;font-size:.875rem;letter-spacing:.02em;position:relative;padding-bottom:10px;}
.footer-col-title::after{content:'';position:absolute;left:0;bottom:0;width:24px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--accent),transparent);}
.footer-link-list{list-style:none;padding:0;margin:0;}
.footer-link-item{margin-bottom:10px;}
.footer-link{color:#9ca3af;text-decoration:none;font-size:.83rem;transition:color .2s;}
.footer-contact-item{display:flex;align-items:flex-start;gap:10px;color:#9ca3af;font-size:.83rem;margin-bottom:12px;line-height:1.5;}
.footer-contact-icon{color:var(--accent);width:14px;flex-shrink:0;margin-top:2px;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;color:#6b7280;font-size:.8rem;}
.footer-heart{color:#f87171;margin:0 3px;}