/* ═══════════════════════════════ DESIGN TOKENS ═══════════════════════════════ */
:root{
  --white:#ffffff;
  --off:#f8fafc;
  --surface:#f1f5f9;
  --blue:#1e56b0;
  --blue2:#2563eb;
  --blue-dark:#0f2d6e;
  --blue-light:#dbeafe;
  --teal:#0d9488;
  --ai:#6d28d9;
  --ai2:#8b5cf6;
  --ai-light:#ede9fe;
  --text:#0f172a;
  --text2:#1e3a5f;
  --muted:#64748b;
  --muted2:#94a3b8;
  --border:#e2e8f0;
  --border2:#bfdbfe;
  --shadow:0 1px 3px rgba(0,0,0,.06),0 4px 16px rgba(0,0,0,.05);
  --shadow-md:0 4px 24px rgba(0,0,0,.08);
  --shadow-lg:0 12px 48px rgba(0,0,0,.10);
  --r:10px;
  --r-lg:16px;
  --trans:all .22s cubic-bezier(.4,0,.2,1);
  --gap:4.5rem;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{font-size:16px;scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif;background:var(--white);color:var(--text);overflow-x:hidden;cursor:none;}
a{text-decoration:none;color:inherit;}
ul{list-style:none;}
img{max-width:100%;display:block;object-fit:cover;}
::-webkit-scrollbar{width:3px;}
::-webkit-scrollbar-thumb{background:var(--blue2);border-radius:2px;}

/* ═══ CURSOR ═══ */
#cur{position:fixed;width:10px;height:10px;background:var(--blue2);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s;}
#cur-ring{position:fixed;width:36px;height:36px;border:1.5px solid rgba(37,99,235,.4);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .25s,height .25s,border-color .25s,opacity .25s;}
#cur.hov{width:18px;height:18px;background:var(--ai2);}
#cur-ring.hov{width:50px;height:50px;border-color:var(--ai2);opacity:.5;}

/* ═══ PAGE TRANSITIONS ═══ */
.page{display:none;}
.page.active{display:block;animation:pgFade .35s ease both;}
@keyframes pgFade{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);}}

/* ═══ TOPBAR ═══ */
.topbar{background:var(--blue-dark);padding:.4rem 5%;display:flex;justify-content:space-between;align-items:center;height:36px;}
.topbar-left{display:flex;align-items:center;gap:1.6rem;}
.topbar-left a{color:rgba(255,255,255,.7);font-size:.72rem;display:inline-flex;align-items:center;gap:.35rem;transition:color .2s;}
.topbar-left a:hover{color:#fff;}
.topbar-right{display:flex;align-items:center;gap:.45rem;}
.t-social{width:24px;height:24px;border-radius:5px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.55);transition:var(--trans);}
.t-social svg{width:11px;height:11px;}
.t-social:hover{background:var(--teal);color:#fff;}

/* ═══ NAV ═══ */
nav{position:fixed;top:36px;left:0;right:0;z-index:800;background:rgba(255,255,255,.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:0 5%;transition:top .25s ease,box-shadow .25s;}
nav.scrolled{top:0;box-shadow:var(--shadow-md);}
.nav-inner{max-width:1300px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:62px;}
.logo{display:flex;align-items:center;gap:.6rem;cursor:none;}
.logo-badge{background:linear-gradient(135deg,var(--ai),var(--ai2));color:#fff;font-size:.52rem;font-weight:800;padding:.16rem .5rem;border-radius:100px;letter-spacing:.1em;text-transform:uppercase;}
.menu{display:flex;align-items:center;gap:.05rem;}
.menu>li{position:relative;}
.menu>li>a{display:flex;align-items:center;gap:.25rem;padding:.4rem .75rem;border-radius:7px;font-size:.8rem;font-weight:600;color:var(--muted);transition:var(--trans);white-space:nowrap;}
.menu>li>a:hover,.menu>li.act>a{color:var(--blue2);background:var(--blue-light);}
.arr{font-size:.55rem;transition:transform .2s;color:var(--muted2);}
.menu>li:hover>.arr,.menu>li:hover>a .arr{transform:rotate(180deg);}
/* Dropdowns */
.drop{position:absolute;top:calc(100% + 8px);left:0;min-width:200px;background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:.4rem;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(-6px);transition:var(--trans);z-index:100;}
.menu>li:hover .drop{opacity:1;visibility:visible;transform:translateY(0);}
.drop a{display:flex;align-items:center;gap:.5rem;padding:.42rem .75rem;border-radius:6px;font-size:.78rem;font-weight:500;color:var(--muted);transition:var(--trans);}
.drop a:hover{background:var(--blue-light);color:var(--blue2);}
.drop a svg{width:13px;height:13px;flex-shrink:0;color:var(--muted2);}
/* Mega menu */
.mega{position:absolute;top:calc(100% + 8px);left:-160px;width:780px;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:1.4rem;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(-6px);transition:var(--trans);z-index:100;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;}
.menu>li:hover .mega{opacity:1;visibility:visible;transform:translateY(0);}
.mega-col h6{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--blue2);margin-bottom:.65rem;padding-bottom:.4rem;border-bottom:1px solid var(--border);}
.mega-col a{display:flex;align-items:center;gap:.4rem;padding:.3rem .45rem;border-radius:5px;font-size:.75rem;font-weight:500;color:var(--muted);transition:var(--trans);}
.mega-col a svg{width:12px;height:12px;flex-shrink:0;color:var(--muted2);}
.mega-col a:hover{background:var(--blue-light);color:var(--blue2);}
/* Nav actions */
.nav-actions{display:flex;align-items:center;gap:.65rem;}
.nav-search{display:flex;align-items:center;gap:.4rem;background:var(--surface);border:1px solid var(--border);border-radius:7px;padding:.3rem .7rem;}
.nav-search input{background:none;border:none;outline:none;font-size:.76rem;width:110px;font-family:'Inter',sans-serif;color:var(--text);}
.nav-search input::placeholder{color:var(--muted2);}
.nav-search svg{width:13px;height:13px;color:var(--muted2);}
.btn-enq{background:linear-gradient(135deg,var(--blue2),var(--blue-dark));color:#fff;font-size:.78rem;font-weight:700;padding:.48rem 1.15rem;border-radius:7px;box-shadow:0 3px 12px rgba(37,99,235,.28);transition:var(--trans);white-space:nowrap;}
.btn-enq:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(37,99,235,.38);}
.ham{display:none;background:none;border:none;color:var(--text);cursor:pointer;padding:.3rem;}
.ham svg{width:22px;height:22px;}
/* Mobile nav */
.mob-nav{display:none;position:fixed;inset:0;background:#fff;z-index:700;padding:5.5rem 5% 2rem;overflow-y:auto;flex-direction:column;gap:.65rem;}
.mob-nav.open{display:flex;}
.mob-close{position:absolute;top:1.2rem;right:5%;background:none;border:none;color:var(--text);cursor:pointer;}
.mob-close svg{width:22px;height:22px;}
.mob-item{border-bottom:1px solid var(--border);padding:.65rem 0;}
.mob-item>a{font-size:.94rem;font-weight:600;color:var(--text);display:flex;align-items:center;gap:.5rem;}
.mob-item>a svg{width:15px;height:15px;color:var(--muted);}
.mob-sub{display:none;padding:.4rem 0 0 1.1rem;}
.mob-sub.open{display:block;}
.mob-sub a{display:block;padding:.28rem 0;font-size:.8rem;color:var(--muted);font-weight:500;}
/* ═══ LOGO IMAGE STYLES ═══ */
.logo-img{height:42px;width:auto;object-fit:contain;flex-shrink:0;}
.logo-text{display:flex;flex-direction:column;line-height:1;}
.logo-name{font-family:'Sora',sans-serif;font-weight:800;font-size:.92rem;color:var(--blue-dark);letter-spacing:.04em;}
.logo-tagline{font-family:'Inter',sans-serif;font-weight:600;font-size:.52rem;color:#16a34a;letter-spacing:.14em;text-transform:uppercase;margin-top:.15rem;}
.logo-img-footer{height:36px;width:auto;object-fit:contain;flex-shrink:0;}

/* ═══ SHARED ═══ */
.container{max-width:1280px;margin:0 auto;padding:0 5%;}
.section{padding:var(--gap) 0;}
.section-sm{padding:2.5rem 0;}
.tag{display:inline-flex;align-items:center;gap:.38rem;background:var(--blue-light);border:1px solid var(--border2);border-radius:100px;padding:.22rem .82rem;font-size:.63rem;font-weight:700;color:var(--blue2);text-transform:uppercase;letter-spacing:.09em;margin-bottom:.9rem;}
.tag-ai{background:var(--ai-light);border-color:#c4b5fd;color:var(--ai);}
.tag svg{width:10px;height:10px;}
h1.display{font-family:'Sora',sans-serif;font-weight:800;font-size:clamp(2.2rem,4.2vw,3.8rem);line-height:1.1;letter-spacing:-.025em;}
h2.st{font-family:'Sora',sans-serif;font-weight:700;font-size:clamp(1.55rem,2.6vw,2.3rem);line-height:1.18;letter-spacing:-.02em;margin-bottom:.8rem;}
h3.ct{font-family:'Sora',sans-serif;font-weight:700;font-size:1rem;margin-bottom:.4rem;}
.hl{background:linear-gradient(135deg,var(--blue2),var(--blue-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hl-ai{background:linear-gradient(135deg,var(--ai),var(--ai2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.muted{color:var(--muted);font-size:.9rem;line-height:1.8;}

/* Reveal */
.rv{opacity:0;transform:translateY(22px);transition:opacity .55s ease,transform .55s ease;}
.rv.vis{opacity:1;transform:none;}
.rv-l{opacity:0;transform:translateX(-22px);transition:opacity .55s ease,transform .55s ease;}
.rv-l.vis{opacity:1;transform:none;}
.rv-r{opacity:0;transform:translateX(22px);transition:opacity .55s ease,transform .55s ease;}
.rv-r.vis{opacity:1;transform:none;}

/* Cards */
.card{background:#fff;border:1px solid var(--border);border-radius:var(--r);transition:var(--trans);position:relative;overflow:hidden;}
.card:hover{border-color:var(--border2);transform:translateY(-3px);box-shadow:var(--shadow-md);}
.card::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--blue2),transparent);opacity:0;transition:.3s;}
.card:hover::after{opacity:1;}
.card.ai-card:hover{border-color:#c4b5fd;box-shadow:0 8px 36px rgba(109,40,217,.1);}
.card.ai-card::after{background:linear-gradient(90deg,transparent,var(--ai2),transparent);}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.45rem;font-weight:600;font-size:.85rem;padding:.7rem 1.6rem;border-radius:8px;transition:var(--trans);cursor:none;border:none;letter-spacing:-.005em;}
.btn svg{width:15px;height:15px;}
.btn-blue{background:linear-gradient(135deg,var(--blue2),var(--blue-dark));color:#fff;box-shadow:0 3px 14px rgba(37,99,235,.25);}
.btn-blue:hover{transform:translateY(-2px);box-shadow:0 7px 22px rgba(37,99,235,.35);}
.btn-ai-btn{background:linear-gradient(135deg,var(--ai),var(--ai2));color:#fff;box-shadow:0 3px 14px rgba(109,40,217,.25);}
.btn-ai-btn:hover{transform:translateY(-2px);box-shadow:0 7px 22px rgba(109,40,217,.35);}
.btn-outline{background:transparent;color:var(--blue2);border:1.5px solid var(--border2);}
.btn-outline:hover{background:var(--blue-light);}
.btn-white{background:#fff;color:var(--blue-dark);box-shadow:var(--shadow-md);}
.btn-white:hover{transform:translateY(-2px);}
.btn-outline-w{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.4);}
.btn-outline-w:hover{background:rgba(255,255,255,.1);}
.btn-sm{padding:.44rem .95rem;font-size:.76rem;}

/* Stats */
.sn{font-family:'Sora',sans-serif;font-weight:800;font-size:2.4rem;letter-spacing:-.03em;}
.sl{color:var(--muted2);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-top:.1rem;}

/* ═══════════════════════════════════════════
   HERO CAROUSEL
═══════════════════════════════════════════ */
.hero{min-height:100vh;position:relative;overflow:hidden;display:flex;align-items:center;}
/* Carousel slides */
.hero-slides{position:absolute;inset:0;z-index:0;}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s ease;}
.hero-slide.active{opacity:1;}
.hero-slide img{width:100%;height:100%;object-fit:cover;}
.hero-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,rgba(10,20,50,.82) 0%,rgba(10,20,60,.55) 55%,rgba(10,20,40,.25) 100%);}
/* Canvas behind content */
#hcanvas{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.35;}
/* Hero content */
.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;max-width:1280px;width:100%;padding:0 5%;}
.hero-content{color:#fff;}
.hero-tag{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:100px;padding:.22rem .85rem;font-size:.65rem;font-weight:700;color:rgba(255,255,255,.85);text-transform:uppercase;letter-spacing:.09em;margin-bottom:1rem;backdrop-filter:blur(8px);}
.hero-tag svg{width:11px;height:11px;}
.hero-content h1{color:#fff;margin-bottom:1.1rem;}
.hero-content h1 .hl{background:linear-gradient(135deg,#93c5fd,#818cf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hero-desc{font-size:.97rem;line-height:1.82;color:rgba(255,255,255,.75);max-width:500px;margin-bottom:2rem;}
.hero-btns{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:2.2rem;}
.hero-trust{display:flex;gap:2rem;flex-wrap:wrap;}
.ht{display:flex;align-items:center;gap:.4rem;font-size:.76rem;color:rgba(255,255,255,.65);font-weight:500;}
.ht-dot{width:6px;height:6px;border-radius:50%;background:#34d399;animation:pd 2s infinite;}
@keyframes pd{0%,100%{box-shadow:0 0 0 0 rgba(52,211,153,.4);}50%{box-shadow:0 0 0 6px rgba(52,211,153,0);}}
/* Hero chips */
.hero-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.4rem;}
.hchip{display:inline-flex;align-items:center;gap:.32rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:100px;padding:.26rem .8rem;font-size:.7rem;font-weight:600;color:rgba(255,255,255,.8);backdrop-filter:blur(6px);}
.hchip svg{width:11px;height:11px;}
/* Hero visual panel */
.hero-visual{position:relative;}
.hero-panel{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:var(--r-lg);backdrop-filter:blur(20px);padding:1.6rem;display:grid;grid-template-columns:1fr 1fr;gap:.9rem;}
.hp-stat{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:1.1rem;}
.hp-stat .sn{color:#fff;font-size:1.8rem;}
.hp-stat .sl{color:rgba(255,255,255,.55);}
.hp-big{grid-column:span 2;background:linear-gradient(135deg,rgba(37,99,235,.3),rgba(109,40,217,.25));border-color:rgba(139,92,246,.3);}
.hp-big .sn{color:#a5b4fc;}
/* Carousel controls */
.carousel-dots{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;gap:.5rem;z-index:3;}
.cdot{width:28px;height:3px;border-radius:2px;background:rgba(255,255,255,.35);cursor:pointer;transition:all .3s;}
.cdot.active{background:#fff;width:44px;}
.carousel-btns{position:absolute;right:5%;bottom:2rem;display:flex;gap:.5rem;z-index:3;}
.cbtn{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--trans);backdrop-filter:blur(8px);}
.cbtn:hover{background:rgba(255,255,255,.22);}
.cbtn svg{width:15px;height:15px;}

/* ═══ STATS BAR ═══ */
.stats-bar{background:var(--blue-dark);padding:2rem 5%;}
.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1.5rem;max-width:1280px;margin:0 auto;text-align:center;}
.stats-bar .sn{color:#fff;}
.stats-bar .sl{color:rgba(255,255,255,.45);}
.stat-ai .sn{background:linear-gradient(135deg,#a5b4fc,#c4b5fd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.stat-div{width:1px;background:rgba(255,255,255,.1);align-self:stretch;}

/* ═══ AI SECTION ═══ */
.ai-section{background:linear-gradient(160deg,#faf8ff 0%,#fff 50%,#f0f9ff 100%);border-top:1px solid #ede9fe;border-bottom:1px solid #e0f2fe;}
.ai-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;}
.ai-chips{display:flex;flex-wrap:wrap;gap:.42rem;margin-top:1rem;margin-bottom:1.4rem;}
.achip{display:inline-flex;align-items:center;gap:.32rem;background:var(--ai-light);border:1px solid #c4b5fd;border-radius:100px;padding:.26rem .8rem;font-size:.7rem;font-weight:600;color:var(--ai);transition:var(--trans);}
.achip svg{width:11px;height:11px;}
.achip:hover{background:var(--ai);color:#fff;transform:translateY(-2px);}
.ai-svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-top:1.4rem;}
.ai-svc{display:flex;gap:.65rem;align-items:flex-start;background:#fff;border:1px solid #ede9fe;border-radius:10px;padding:.85rem;transition:var(--trans);}
.ai-svc:hover{border-color:#c4b5fd;box-shadow:0 5px 20px rgba(109,40,217,.08);}
.ai-svc-ic{width:32px;height:32px;flex-shrink:0;border-radius:8px;background:var(--ai-light);display:flex;align-items:center;justify-content:center;}
.ai-svc-ic svg{width:15px;height:15px;color:var(--ai);}
.ai-svc h6{font-size:.8rem;font-weight:700;margin-bottom:.08rem;}
.ai-svc p{font-size:.7rem;color:var(--muted);}
/* AI orbit visual */
.ai-vis{position:relative;height:400px;display:flex;align-items:center;justify-content:center;}
.ai-ring{position:absolute;border-radius:50%;border:1px solid rgba(109,40,217,.12);animation:rspin linear infinite;}
.r1{width:310px;height:310px;animation-duration:20s;}
.r2{width:220px;height:220px;animation-duration:14s;animation-direction:reverse;border-color:rgba(37,99,235,.1);}
.r3{width:140px;height:140px;animation-duration:9s;border-color:rgba(109,40,217,.18);}
@keyframes rspin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.ai-ctr{width:80px;height:80px;background:linear-gradient(135deg,var(--ai),var(--ai2));border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 40px rgba(109,40,217,.35);animation:aipulse 3s ease-in-out infinite;z-index:2;}
.ai-ctr svg{width:34px;height:34px;color:#fff;}
@keyframes aipulse{0%,100%{box-shadow:0 0 40px rgba(109,40,217,.35);}50%{box-shadow:0 0 70px rgba(109,40,217,.6);}}
.orbit-dot{position:absolute;width:10px;height:10px;border-radius:50%;}

/* ═══ FEATURES ═══ */
.feat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;}
.feat-card{padding:1.7rem 1.3rem;}
.ficon{width:44px;height:44px;border-radius:10px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin-bottom:1rem;transition:var(--trans);background:var(--surface);}
.ficon svg{width:20px;height:20px;color:var(--blue2);}
.feat-card:hover .ficon{background:linear-gradient(135deg,var(--blue2),var(--blue-dark));border-color:transparent;}
.feat-card:hover .ficon svg{color:#fff;}
.feat-card p{font-size:.82rem;color:var(--muted);line-height:1.72;}

/* ═══ SERVICES ═══ */
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;}
.svc-card{overflow:hidden;cursor:none;}
.svc-img{height:150px;overflow:hidden;position:relative;}
.svc-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
.svc-card:hover .svc-img img{transform:scale(1.07);}
.svc-badge{position:absolute;top:.6rem;right:.6rem;background:rgba(15,45,110,.85);color:#fff;border-radius:5px;padding:.14rem .55rem;font-size:.6rem;font-weight:700;backdrop-filter:blur(6px);}
.svc-body{padding:.9rem 1.2rem 1.2rem;}
.svc-card p{font-size:.78rem;color:var(--muted);line-height:1.6;}
.svc-link{display:inline-flex;align-items:center;gap:.28rem;font-size:.74rem;color:var(--blue2);font-weight:600;margin-top:.8rem;transition:var(--trans);}
.svc-link svg{width:13px;height:13px;transition:transform .2s;}
.svc-link:hover svg{transform:translateX(4px);}

/* ═══ ABOUT ═══ */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:center;}
.about-vis{position:relative;height:420px;}
.av-main{position:absolute;top:0;left:0;width:290px;height:290px;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lg);}
.av-main img{width:100%;height:100%;object-fit:cover;}
.av-sec{position:absolute;bottom:0;right:0;width:190px;height:190px;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);border:4px solid #fff;}
.av-sec img{width:100%;height:100%;object-fit:cover;}
.av-badge{position:absolute;top:260px;left:0;background:#fff;border:1px solid var(--border);border-radius:10px;padding:.8rem 1rem;box-shadow:var(--shadow-md);min-width:138px;z-index:3;}
.av-badge .sn{color:var(--blue2);font-size:1.7rem;}
.av-badge p{font-size:.7rem;color:var(--muted);}
.af-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1.5rem;}
.af-item{display:flex;gap:.6rem;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.8rem;transition:var(--trans);}
.af-item:hover{background:#fff;border-color:var(--border2);}
.af-ic{width:28px;height:28px;flex-shrink:0;border-radius:6px;background:var(--blue-light);display:flex;align-items:center;justify-content:center;}
.af-ic svg{width:13px;height:13px;color:var(--blue2);}
.af-item h6{font-size:.8rem;font-weight:700;margin-bottom:.08rem;}
.af-item p{font-size:.71rem;color:var(--muted);}

/* ═══ INDUSTRIES ═══ */
.ind-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.85rem;}
.ind-card{text-align:center;padding:1.3rem .65rem;cursor:none;}
.ind-ic{width:48px;height:48px;border-radius:12px;background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin:0 auto .8rem;transition:var(--trans);}
.ind-ic svg{width:22px;height:22px;color:var(--muted);}
.ind-card:hover .ind-ic{background:linear-gradient(135deg,var(--blue2),var(--blue-dark));border-color:transparent;}
.ind-card:hover .ind-ic svg{color:#fff;}
.ind-card h6{font-size:.74rem;font-weight:700;color:var(--text2);}

/* ═══ PROCESS ═══ */
.proc-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.85rem;position:relative;}
.proc-grid::before{content:'';position:absolute;top:34px;left:8%;right:8%;height:1px;background:linear-gradient(90deg,transparent,var(--border2),var(--border2),transparent);}
.proc-step{text-align:center;}
.proc-num{width:50px;height:50px;border-radius:50%;background:#fff;border:2px solid var(--border2);display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:800;font-size:.85rem;color:var(--blue2);margin:0 auto .85rem;position:relative;z-index:1;box-shadow:var(--shadow);transition:var(--trans);}
.proc-step:hover .proc-num{background:var(--blue2);color:#fff;border-color:var(--blue2);}
.proc-step h5{font-size:.8rem;font-weight:700;margin-bottom:.25rem;}
.proc-step p{font-size:.71rem;color:var(--muted);line-height:1.6;}

/* ═══ CTA ═══ */
.cta-banner{background:linear-gradient(135deg,var(--blue-dark) 0%,var(--blue2) 60%,#3b82f6 100%);border-radius:var(--r-lg);padding:3rem 3.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;position:relative;overflow:hidden;}
.cta-banner::before{content:'';position:absolute;right:-50px;top:-50px;width:260px;height:260px;background:rgba(255,255,255,.04);border-radius:50%;}
.cta-banner h2{font-family:'Sora',sans-serif;font-weight:800;font-size:1.7rem;color:#fff;max-width:450px;}
.cta-btns{display:flex;gap:.8rem;flex-wrap:wrap;flex-shrink:0;position:relative;z-index:1;}

/* ═══ TESTIMONIALS ═══ */
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;}
.test-card{padding:1.5rem;}
.test-stars{color:#f59e0b;font-size:.75rem;letter-spacing:2px;margin-bottom:.8rem;}
.test-text{font-size:.82rem;color:var(--text2);line-height:1.74;font-style:italic;margin-bottom:1.2rem;}
.test-author{display:flex;align-items:center;gap:.65rem;}
.test-av{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--blue2),var(--blue-dark));display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.72rem;color:#fff;flex-shrink:0;}
.test-author h6{font-weight:700;font-size:.78rem;}
.test-author span{font-size:.69rem;color:var(--muted);}

/* ═══ CLIENTS ═══ */
.clients-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem;}
.client-card{height:64px;border-radius:8px;background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.76rem;color:var(--muted);font-weight:600;transition:var(--trans);}
.client-card:hover{border-color:var(--border2);color:var(--blue2);background:#fff;box-shadow:var(--shadow);}

/* ═══ FAQ ═══ */
.faq-item{border:1px solid var(--border);border-radius:8px;margin-bottom:.5rem;overflow:hidden;}
.faq-q{width:100%;text-align:left;background:var(--surface);border:none;padding:.95rem 1.2rem;color:var(--text);font-family:'Inter',sans-serif;font-size:.84rem;font-weight:600;cursor:none;display:flex;justify-content:space-between;align-items:center;transition:var(--trans);}
.faq-q:hover,.faq-item.open .faq-q{background:#fff;color:var(--blue2);}
.faq-ic{width:18px;height:18px;border-radius:50%;background:var(--blue-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s;}
.faq-ic svg{width:10px;height:10px;color:var(--blue2);}
.faq-item.open .faq-ic{transform:rotate(45deg);background:var(--blue2);}
.faq-item.open .faq-ic svg{color:#fff;}
.faq-a{display:none;padding:0 1.2rem 1rem;font-size:.82rem;color:var(--muted);line-height:1.74;background:#fff;}
.faq-item.open .faq-a{display:block;}

/* ═══ CONTACT ═══ */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start;}
.form-group{margin-bottom:.9rem;}
.form-group label{display:block;font-size:.73rem;font-weight:700;color:var(--text2);margin-bottom:.38rem;}
.form-control{width:100%;background:#fff;border:1.5px solid var(--border);border-radius:7px;padding:.68rem .88rem;color:var(--text);font-family:'Inter',sans-serif;font-size:.84rem;transition:var(--trans);outline:none;}
.form-control:focus{border-color:var(--blue2);box-shadow:0 0 0 3px rgba(37,99,235,.08);}
.form-control::placeholder{color:var(--muted2);}
textarea.form-control{height:108px;resize:vertical;}
.ci-item{display:flex;gap:.8rem;align-items:flex-start;margin-bottom:1.2rem;}
.ci-ic{width:38px;height:38px;flex-shrink:0;border-radius:8px;background:var(--blue-light);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;}
.ci-ic svg{width:16px;height:16px;color:var(--blue2);}
.ci-item h5{font-weight:700;font-size:.82rem;margin-bottom:.14rem;}
.ci-item p,.ci-item a{font-size:.78rem;color:var(--muted);}
.ci-item a:hover{color:var(--blue2);}

/* ═══ SERVICE PAGES ═══ */
.page-hero{padding:8.5rem 5% 4rem;background:linear-gradient(160deg,#f0f6ff 0%,#fff 55%,#f8f0ff 100%);border-bottom:1px solid var(--border);position:relative;overflow:hidden;}
.page-hero::before{content:'';position:absolute;right:-60px;top:-60px;width:340px;height:340px;background:radial-gradient(circle,rgba(37,99,235,.04),transparent);pointer-events:none;}
.page-hero-c{position:relative;z-index:1;max-width:640px;}
.breadcrumb{display:flex;align-items:center;gap:.38rem;font-size:.72rem;color:var(--muted);margin-bottom:1.2rem;}
.breadcrumb a{color:var(--blue2);}
.breadcrumb svg{width:11px;height:11px;color:var(--muted2);}
.svc-detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:2.5rem;align-items:start;}
.sidebar-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.2rem;margin-bottom:1.2rem;box-shadow:var(--shadow);}
.sidebar-card h4{font-family:'Sora',sans-serif;font-weight:700;font-size:.88rem;margin-bottom:.8rem;color:var(--blue2);}
.sl-link{display:flex;align-items:center;gap:.4rem;padding:.44rem .65rem;border-radius:6px;font-size:.78rem;color:var(--muted);transition:var(--trans);cursor:none;font-weight:500;}
.sl-link svg{width:12px;height:12px;flex-shrink:0;}
.sl-link:hover,.sl-link.active{background:var(--blue-light);color:var(--blue2);}
.feat-list{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1.2rem;}
.fl-item{display:flex;gap:.65rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.8rem;transition:var(--trans);}
.fl-item:hover{background:#fff;border-color:var(--border2);box-shadow:var(--shadow);}
.fl-ic{width:30px;height:30px;flex-shrink:0;border-radius:6px;background:var(--blue-light);display:flex;align-items:center;justify-content:center;}
.fl-ic svg{width:14px;height:14px;color:var(--blue2);}
.fl-item h6{font-size:.8rem;font-weight:700;margin-bottom:.08rem;}
.fl-item p{font-size:.71rem;color:var(--muted);}

/* Pricing */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;}
.price-card{padding:1.8rem 1.5rem;position:relative;}
.price-card.feat-p{border-color:var(--border2);background:linear-gradient(160deg,rgba(37,99,235,.03),#fff);box-shadow:0 0 0 1px var(--border2),var(--shadow-md);}
.price-pop{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,var(--blue2),var(--blue-dark));color:#fff;font-size:.6rem;font-weight:700;padding:.22rem .85rem;border-radius:100px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;}
.price-tier{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:.4rem;}
.price-card.feat-p .price-tier{color:var(--blue2);}
.price-amt{font-family:'Sora',sans-serif;font-weight:800;font-size:2rem;letter-spacing:-.03em;margin-bottom:.2rem;}
.price-desc{font-size:.77rem;color:var(--muted);margin-bottom:1.2rem;line-height:1.6;}
.price-feats{margin-bottom:1.5rem;}
.price-feats li{font-size:.78rem;color:var(--text2);padding:.35rem 0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.45rem;}
.price-feats li svg{width:13px;height:13px;color:var(--blue2);flex-shrink:0;}
.btn-plan{display:block;text-align:center;padding:.68rem;border-radius:8px;font-weight:600;font-size:.8rem;border:1.5px solid var(--border);color:var(--muted);transition:var(--trans);}
.btn-plan:hover{border-color:var(--blue2);color:var(--blue2);}
.price-card.feat-p .btn-plan{background:linear-gradient(135deg,var(--blue2),var(--blue-dark));color:#fff;border-color:transparent;box-shadow:0 3px 14px rgba(37,99,235,.25);}

/* ═══ INTERNSHIP ═══ */
.int-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;}
.ic-card{padding:1.6rem;text-align:center;cursor:none;}
.ic-ic{width:58px;height:58px;border-radius:14px;background:var(--blue-light);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;margin:0 auto .9rem;transition:var(--trans);}
.ic-ic svg{width:26px;height:26px;color:var(--blue2);}
.ic-card:hover .ic-ic{background:linear-gradient(135deg,var(--blue2),var(--blue-dark));border-color:transparent;}
.ic-card:hover .ic-ic svg{color:#fff;}
.ic-card h4{font-family:'Sora',sans-serif;font-weight:700;font-size:.92rem;margin-bottom:.4rem;}
.ic-card p{font-size:.75rem;color:var(--muted);line-height:1.6;}
.ic-courses{margin-top:.8rem;display:flex;flex-wrap:wrap;gap:.3rem;justify-content:center;}
.ic-tag{background:var(--surface);border:1px solid var(--border);border-radius:100px;padding:.14rem .58rem;font-size:.63rem;color:var(--muted);}

/* Careers */
.jobs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;}
.job-card{padding:1.3rem;cursor:none;}
.job-dept{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--blue2);margin-bottom:.4rem;}
.job-card h4{font-family:'Sora',sans-serif;font-weight:700;font-size:.92rem;margin-bottom:.65rem;}
.job-meta{display:flex;gap:.65rem;flex-wrap:wrap;}
.job-tag{display:flex;align-items:center;gap:.25rem;background:var(--surface);border-radius:5px;padding:.22rem .55rem;font-size:.67rem;color:var(--muted);}
.job-tag svg{width:10px;height:10px;}

/* Sectors */
.sectors-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;}
.sector-card{padding:1.5rem;text-align:center;}
.sector-ic{width:52px;height:52px;border-radius:14px;background:var(--blue-light);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;margin:0 auto .8rem;transition:var(--trans);}
.sector-ic svg{width:24px;height:24px;color:var(--blue2);}
.sector-card:hover .sector-ic{background:linear-gradient(135deg,var(--blue2),var(--blue-dark));}
.sector-card:hover .sector-ic svg{color:#fff;}
.sector-card h4{font-family:'Sora',sans-serif;font-weight:700;font-size:.86rem;margin-bottom:.35rem;}
.sector-card p{font-size:.74rem;color:var(--muted);line-height:1.6;}

/* Support */
.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;}
.support-card{padding:1.8rem 1.5rem;text-align:center;}
.supp-ic{width:52px;height:52px;border-radius:50%;background:var(--blue-light);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;margin:0 auto .85rem;transition:var(--trans);}
.supp-ic svg{width:22px;height:22px;color:var(--blue2);}
.support-card:hover .supp-ic{background:linear-gradient(135deg,var(--blue2),var(--blue-dark));}
.support-card:hover .supp-ic svg{color:#fff;}
.support-card h4{font-family:'Sora',sans-serif;font-weight:700;font-size:.93rem;margin-bottom:.4rem;}
.support-card p{font-size:.79rem;color:var(--muted);line-height:1.7;}

.generic-hero{padding:7.5rem 5% 3.5rem;background:linear-gradient(160deg,#f0f6ff 0%,#fff 55%);border-bottom:1px solid var(--border);}

/* ═══ MOUSE TRAIL ═══ */
.sparkle{position:fixed;border-radius:50%;pointer-events:none;z-index:9990;transform:translate(-50%,-50%);animation:sp-out .6s ease forwards;}
@keyframes sp-out{0%{opacity:.9;transform:translate(-50%,-50%) scale(1);}100%{opacity:0;transform:translate(-50%,-50%) scale(0);}}

/* ═══ FLOATING BUTTON ═══ */
.ai-fab{position:fixed;bottom:1.8rem;right:1.8rem;z-index:700;background:linear-gradient(135deg,var(--ai),var(--ai2));color:#fff;border:none;border-radius:50px;padding:.78rem 1.3rem;font-family:'Inter',sans-serif;font-weight:700;font-size:.78rem;cursor:none;box-shadow:0 8px 24px rgba(109,40,217,.38);display:flex;align-items:center;gap:.45rem;animation:fab-pulse 3s ease-in-out infinite;transition:var(--trans);}
.ai-fab svg{width:16px;height:16px;}
.ai-fab:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(109,40,217,.5);}
@keyframes fab-pulse{0%,100%{box-shadow:0 8px 24px rgba(109,40,217,.38);}50%{box-shadow:0 8px 36px rgba(109,40,217,.6),0 0 0 8px rgba(109,40,217,.07);}}

/* ═══ FOOTER ═══ */
footer{background:#0c1829;padding:3.5rem 5% 1.6rem;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1.3fr;gap:2.5rem;max-width:1280px;margin:0 auto 2rem;}
.footer-brand p{font-size:.77rem;color:rgba(255,255,255,.4);line-height:1.75;max-width:250px;margin-top:.8rem;}
.f-socials{display:flex;gap:.45rem;margin-top:.9rem;}
.f-socials a{width:30px;height:30px;border-radius:7px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;transition:var(--trans);}
.f-socials a svg{width:13px;height:13px;color:rgba(255,255,255,.4);}
.f-socials a:hover{background:var(--blue2);border-color:var(--blue2);}
.f-socials a:hover svg{color:#fff;}
.footer-col h5{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:#60a5fa;margin-bottom:.9rem;}
.footer-col ul li{margin-bottom:.45rem;}
.footer-col a{color:rgba(255,255,255,.42);font-size:.75rem;transition:var(--trans);}
.footer-col a:hover{color:#fff;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.06);padding-top:1.2rem;display:flex;justify-content:space-between;align-items:center;max-width:1280px;margin:0 auto;flex-wrap:wrap;gap:.7rem;}
.footer-bottom p{font-size:.71rem;color:rgba(255,255,255,.28);}
.footer-links{display:flex;gap:1.2rem;}
.footer-links a{font-size:.7rem;color:rgba(255,255,255,.28);cursor:none;}

/* ═══ RESPONSIVE ═══ */
@media(max-width:1200px){.mega{width:600px;grid-template-columns:repeat(3,1fr);}.mega-col:last-child{display:none;}}
@media(max-width:1024px){
  .menu,.nav-search{display:none;}
  .ham{display:flex;}
  .hero-inner{grid-template-columns:1fr;}
  .hero-visual{display:none;}
  .stats-grid{grid-template-columns:repeat(3,1fr);}
  .feat-grid,.ai-svc-grid{grid-template-columns:repeat(2,1fr);}
  .svc-grid{grid-template-columns:repeat(2,1fr);}
  .about-grid,.contact-grid,.svc-detail-grid,.ai-grid{grid-template-columns:1fr;gap:2rem;}
  .about-vis{height:250px;}
  .ind-grid{grid-template-columns:repeat(4,1fr);}
  .proc-grid{grid-template-columns:repeat(3,1fr);}
  .proc-grid::before{display:none;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:1.8rem;}
  .test-grid,.sectors-grid,.int-grid{grid-template-columns:repeat(2,1fr);}
  .price-grid{grid-template-columns:repeat(2,1fr);}
  .ai-vis{height:250px;}
  #cur,#cur-ring{display:none;}
  body{cursor:auto;}
}
@media(max-width:768px){
  .stats-grid{grid-template-columns:repeat(2,1fr);}
  .feat-grid{grid-template-columns:1fr;}
  .svc-grid{grid-template-columns:1fr;}
  .ind-grid{grid-template-columns:repeat(3,1fr);}
  .proc-grid{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .test-grid,.support-grid,.jobs-grid,.price-grid{grid-template-columns:1fr;}
  .sectors-grid,.int-grid{grid-template-columns:1fr 1fr;}
  .cta-banner{padding:1.8rem;}
  .feat-list,.ai-svc-grid{grid-template-columns:1fr;}
  .clients-grid{grid-template-columns:repeat(3,1fr);}
  .af-grid{grid-template-columns:1fr;}
  .topbar{display:none;}
  .faq-grid{grid-template-columns:1fr!important;}
  .ai-fab span.fab-txt{display:none;}
}
/* ═══ FAMILY SECTION (MATCH LIGHT THEME) ═══ */

.family-wrap{
  background:#f8fafc; /* same as other sections */
}

/* heading */
.family-wrap .tag{
  background:#e0edff;
  border:1px solid #bfdbfe;
  color:#2563eb;
}

.family-desc{
  color:var(--muted);
  max-width:520px;
  margin-bottom:2rem;
}

/* layout */
.family-row{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:1rem;
}

/* card (same as service cards feel) */
.family-box{
  background:#fff;
  border:1px solid var(--border);
  border-radius:12px;
  padding:1.5rem 1rem;
  text-align:center;
  transition:all .25s ease;
  position:relative;
  overflow:hidden;
}

/* top gradient line (same pattern) */
.family-box::after{
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--blue2),transparent);
  opacity:0;
  transition:.3s;
}

.family-box:hover{
  transform:translateY(-4px);
  border-color:var(--border2);
  box-shadow:var(--shadow-md);
}

.family-box:hover::after{
  opacity:1;
}

/* icon */
.family-icon{
  width:48px;
  height:48px;
  margin:0 auto 1rem;
  border-radius:10px;
  background:var(--surface);
  border:1px solid var(--border);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:all .25s ease;
}

.family-icon svg{
  width:20px;
  height:20px;
  color:var(--blue2);
}

/* hover icon like your cards */
.family-box:hover .family-icon{
  background:linear-gradient(135deg,var(--blue2),var(--blue-dark));
  border-color:transparent;
}

.family-box:hover .family-icon svg{
  color:#fff;
}

/* text */
.family-box h4{
  font-family:'Sora',sans-serif;
  font-size:.9rem;
  margin-bottom:.3rem;
}

.family-box p{
  font-size:.75rem;
  color:var(--muted);
}

/* animation (same reveal feel) */
.family-box{
  opacity:0;
  transform:translateY(20px);
  animation:fadeUp2 .5s ease forwards;
}

.family-box:nth-child(1){animation-delay:.1s;}
.family-box:nth-child(2){animation-delay:.2s;}
.family-box:nth-child(3){animation-delay:.3s;}
.family-box:nth-child(4){animation-delay:.4s;}
.family-box:nth-child(5){animation-delay:.5s;}

@keyframes fadeUp2{
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* responsive */
@media(max-width:1024px){
  .family-row{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:600px){
  .family-row{
    grid-template-columns:1fr;
  }
}