    :root{
      --primary:#00bfff; /* Sky */
      --primary-600:#0ea5e9;
      --dark:#0f172a;    /* Slate-900 */
      --muted:#64748b;   /* Slate-500 */
      --bg:#0b1220;      /* deep navy for hero */
    }
    html{ scroll-behavior:smooth; }
    body{font-family:Inter, sans-serif;}

    .section-title{text-align:center;font-weight:700;margin-bottom:2rem;}
    .clients-slider .swiper-slide{display:flex;justify-content:center;align-items:center;}
    .clients-slider img{height:60px;width:auto;filter:grayscale(1) opacity(.8);transition:filter .3s;}
    .clients-slider img:hover{filter:none;}

    /* Header */
    .navbar-brand img{ height:40px; width:auto; }
    .navbar .nav-link{ font-weight:600; }
    .navbar .nav-link.active{ color:var(--primary)!important; }
    .btn-primary{ background: linear-gradient(90deg,var(--primary),var(--primary-600)); border:none; }
    .btn-outline-primary{ border-color:var(--primary); color:var(--primary); }
    .btn-outline-primary:hover{ background:var(--primary); color:#fff; }

    /* Hero */
    .hero{ position:relative; background: radial-gradient(1000px 600px at 10% 10%, rgba(0,191,255,.18), transparent 60%),
                                   radial-gradient(800px 500px at 90% 20%, rgba(14,165,233,.15), transparent 60%),
                                   var(--bg); color:#e5f6ff; overflow:hidden; isolation:isolate; }
    .hero h1{ font-weight:800; letter-spacing:-.02em; }
    .hero .lead{ color:#c6e7ff; }
    .wave{ position:absolute; left:0; width:100%; height:auto; z-index:0; pointer-events:none; }
    .wave.bottom{ bottom:-1px; transform: translateY(1px); }
    .hero .cta{ position:relative; z-index:3; }

    /* Section headings */
    .section-title{ font-weight:800; letter-spacing:-.02em; }
    .section-sub{ color:var(--muted); }

    /* Feature cards */
    .feature{ height:100%; border:1px solid #e2e8f0; }
    .icon-badge{ width:56px; height:56px; display:grid; place-items:center; border-radius:14px; background:#e6f7ff; color:var(--primary); }

    /* Counters */
    .stat{ text-align:center; }
    .stat .num{ font-size:2.8rem; font-weight:800; line-height:1; }
    .stat p{ margin:0; color:var(--muted); }

    /* Testimonials */
    .testimonial{ background:#ffffff; border:1px solid #e2e8f0; border-radius:1rem; padding:1.25rem; height:100%; }
    .testimonial .avatar{ width:56px; height:56px; border-radius:50%; object-fit:cover; }

    /* Team */
    .team-card{ border:1px solid #e2e8f0; border-radius:1rem; overflow:hidden; height:100%; }
    .team-card img{ height:240px; object-fit:cover; }

    /* FAQ */
    .accordion-button:not(.collapsed){ color:#0f172a; background:#e6f7ff; }

    /* Footer */
    footer{ background:#0b1020; color:#cbd5e1; }
    footer a{ color:#cbd5e1; text-decoration:none; }
    footer a:hover{ color:#fff; }

    /* Back to top */
    .back-to-top{ position:fixed; right:1rem; bottom:1rem; width:44px; height:44px; display:grid; place-items:center; border-radius:50%; background:var(--primary); color:#fff; box-shadow:0 6px 24px rgba(0,0,0,.15); opacity:0; visibility:hidden; transition:all .25s ease; z-index:10; }
    .back-to-top.show{ opacity:1; visibility:visible; }

    /* Utility */
    .bg-faint{ background:#f8fafc; }
    .logo-grid img{ height:44px; filter: grayscale(1) opacity(.8); transition:filter .2s; }
    .logo-grid img:hover{ filter:none; }

    @media (min-width:992px){ .hero-illus{ transform:translateY(16px); } }

    /* ==== Scroll Reveal Animations ==== */
    .reveal {
      opacity: 0;
      transform: translateY(24px);
      transition: opacity .6s ease, transform .6s ease;
      transition-delay: var(--d, 0s);
      will-change: opacity, transform;
    }
    .reveal.in { opacity: 1; transform: none; }
    .reveal.out { opacity: 0; transform: translateY(-14px); }

    [data-anim="fade-up"]   { transform: translateY(24px); }
    [data-anim="fade-down"] { transform: translateY(-24px); }
    [data-anim="fade-right"]{ transform: translateX(-24px); }
    [data-anim="fade-left"] { transform: translateX(24px); }
    [data-anim="zoom-in"]   { transform: scale(.96); }
    [data-anim="zoom-out"]  { transform: scale(1.04); }

    .parallax-in { transform: translateY(16px) scale(1.02); }
    .parallax-in.in { transform: none; }
    /* ===== Modern Navbar (Glass + Underline) ===== */
    .navbar-glass{
      background: rgba(255,255,255,.7);
      backdrop-filter: saturate(140%) blur(10px);
      -webkit-backdrop-filter: saturate(140%) blur(10px);
      border-bottom: 1px solid rgba(15,23,42,.06);
      transition: background .25s ease, box-shadow .25s ease, border-color .25s ease;
    }
    .navbar-glass.scrolled{
      background: rgba(255,255,255,.92);
      box-shadow: 0 8px 24px rgba(15,23,42,.08);
      border-color: rgba(15,23,42,.12);
    }
    .navbar-glass .brand-text{ letter-spacing: -.02em; }

    /* Underline animation */
    .nav-underline .nav-link{
      position: relative;
      padding: .5rem .75rem;
      margin: .25rem .15rem;
      border-radius: .5rem;
      color: #0f172a;
      transition: color .2s ease;
    }
    .nav-underline .nav-link::after{
      content: "";
      position: absolute; left: .6rem; right: .6rem; bottom: .35rem;
      height: 2px; border-radius: 2px;
      background: linear-gradient(90deg, var(--primary), var(--primary-600));
      transform: scaleX(0);
      transform-origin: left; transition: transform .25s ease;
    }
    .nav-underline .nav-link:hover::after{ transform: scaleX(1); }
    .nav-underline .nav-link.active{ color: var(--primary-600)!important; }
    .nav-underline .nav-link.active::after{ transform: scaleX(1); }

    /* Better toggler hit area on mobile */
    .navbar-toggler{ border: none; }
    .navbar-toggler:focus{ box-shadow: none; }