:root{
  --bg:#ffffff;
  --panel:#0f1724;
  --muted:#ffffff;
  --accent:#AEDBE9;
  --accent-2:#AEDBE9;
  --glass: rgba(255,255,255,0.03);
  --radius:14px;
  --container:1180px;
  --text:#e6eef8;
  --contenttxt:#e6eef8;
  font-family: 'Inter', system-ui, sans-serif;
  color-scheme: dark;
}
*{box-sizing:border-box}
html,body{height:auto}

 
body {
  margin: 0;
  background-color: var(--bg);
  color: var(--text);
  overflow-x: hidden;
      background: radial-gradient(circle at top left, #0b1020, #05070f 60%);
}


.container{
  max-width:var(--container);
  margin:0 auto;
  padding:1rem;
}

/* NAV */
.nav {
  position: sticky;
  top: 0;
  z-index: 50;
  /* background: #262626; */
      background: linear-gradient(90deg, #0b0f1a, #363c49);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}

.logo img {
  height: 42px;        /* navbar ke height ke hisab se perfect */
  width: auto;         /* aspect ratio maintain karega */
  object-fit: contain; /* image stretch nahi hogi */
  display: block;
}

.menu{display:flex;gap:1rem;align-items:center}
.menu a{color:var(--muted);text-decoration:none;padding:8px 10px;border-radius:10px}
.menu a:hover{color:#fff;background:rgba(255,255,255,0.03)}
.btn{display:inline-block;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:600}
.btn.primary{background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#2c2a2a}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,0.04);color:var(--muted)}

/* hamburger */
.hamb{display:none;background:none;border:0;color:#fff;font-size:20px;padding:6px}

/* HERO */
.hero {
  position: relative;
  padding: 3.5rem 0;
  overflow: hidden;
}

/* ✅ Only hero background grid effect */
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(90deg, rgba(255, 255, 255, 0.088) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.088) 1px, transparent 1px),
    linear-gradient(180deg,#010101 0%, #000000 100%);
  background-size: 25px 25px, 25px 25px, auto;
  z-index: 0;
}

/* make hero content appear above pattern */
.hero * {
  position: relative;
  z-index: 1;
}
.hero-inner{display:flex;gap:2rem;align-items:center;justify-content:space-between}
.hero-left{flex:1;max-width:720px}
.kicker{display:inline-block;background:rgba(255,255,255,0.03);padding:6px 10px;border-radius:999px;color:var(--muted);font-weight:600;margin-bottom:12px}
.hero-left h1{font-size:2.4rem;margin:0 0 0.6rem}
.lead{color:var(--muted);max-width:640px;margin-bottom:1rem;padding: 10px;}
.cta-row{display:flex;gap:12px;margin-bottom:16px;padding: 10px;}
.trust-stats{display:flex;gap:18px;list-style:none;padding:0;margin:0}
.trust-stats li{background:linear-gradient(180deg, rgba(255,255,255,0.02), transparent);padding:10px;border-radius:10px;text-align:center;min-width:90px}
.trust-stats strong{display:block;font-size:1.05rem}

/* hero card */
.hero-right{width:420px;display:flex;justify-content:flex-end}
.hero-card{background:var(--panel);padding:14px;border-radius:18px;box-shadow:0 10px 40px rgba(4,8,16,0.6);overflow:hidden}
.card-top{display:flex;gap:8px;justify-content:space-between;color:var(--muted);font-weight:600;margin-bottom:10px}
.card-media img{width:100%;height:290px;object-fit:cover;border-radius:12px}
.card-footer{display:flex;gap:12px;justify-content:space-between;margin-top:10px}
.mini-stat{text-align:center}
.mini-stat strong{display:block}


/* Animated Heading */
/* Animated Heading */
.animated-heading {
  font-size: 2.4rem;
  margin: 0 0 0.6rem;
  font-weight: 700;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  align-items: center;
  padding: 10px;
}

/* Reset state */
.animated-heading .word,
.animated-heading .accent {
  opacity: 0;
  transform: translateY(20px);
}

/* Animate only when .animate class added */
.animated-heading.animate .word {
  animation: fadeUp 1s ease forwards;
}
.animated-heading.animate .word:nth-child(1) {
  animation-delay: 0.3s;
}
.animated-heading.animate .word:nth-child(2) {
  animation-delay: 0.8s;
}
.animated-heading.animate .word:nth-child(3) {
  animation-delay: 1.3s;
}

/* Gradient accent animation */
.animated-heading.animate .accent {
  background: linear-gradient(90deg, #2bdcff, #8b5cff, #2bdcff);
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: fadeUp 1s ease forwards 1.8s, gradientMove 4s linear infinite;
  font-weight: 800;
  margin-left: 4px;
}

/* Keyframes */
@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes gradientMove {
  0% {
    background-position: 0% center;
  }
  100% {
    background-position: 200% center;
  }
}


/* --- Service Card Animation --- */
.service-card {
  background: var(--card);
  border-radius: var(--radius);
  padding: 2rem;
  box-shadow: 0 10px 20px rgba(0,0,0,0.1);
  transform: translateY(40px);
  opacity: 0;
  transition: all 0.6s ease;
}

.service-card.show {
  transform: translateY(0);
  opacity: 1;
}

/* Optional: little hover effect for interactivity */
.service-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 25px rgba(0,0,0,0.15);
  transition: all 0.4s ease;
}



#download-pdf {
    pointer-events: auto;
    cursor: pointer;
}

/* CAPABILITIES MARQUEE */
.capabilities-marquee {
  width: 100%;
  overflow: hidden;
  background: linear-gradient(90deg, #0b0f1a, #0f172a);
  border-top: 1px solid rgba(255,255,255,0.08);
  border-bottom: 1px solid rgba(255,255,255,0.08);
}

.marquee-track {
  display: flex;
  width: max-content;
  animation: marqueeMove 30s linear infinite;
}

.marquee-track span {
  padding: 18px 40px;
  font-size: 0.95rem;
  font-weight: 600;
  color: #e5e7eb;
  letter-spacing: 0.4px;
  white-space: nowrap;
  position: relative;
}

.marquee-track span::after {
  content: "•";
  position: absolute;
  right: -10px;
  color: rgba(255,255,255,0.3);
}

/* LEFT → RIGHT movement */
@keyframes marqueeMove {
  from {
    transform: translateX(-50%);
  }
  to {
    transform: translateX(0);
  }
}

/* GLOBAL 3D BACKGROUND WRAPPER */
.global-3d-bg {
  position: fixed;
  inset: 0;
  z-index: -1;
  background: #ffffff;
  overflow: hidden;
}

/* FLOATING ORBS */
.orb {
  position: absolute;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  filter: blur(90px);
  opacity: 0.25;
  animation: orbFloat 22s ease-in-out infinite alternate;
}

/* COLORS */
.orb-a {
  background: radial-gradient(circle, #6366f1, #4f46e5);
  top: -120px;
  left: -120px;
}

.orb-b {
  background: radial-gradient(circle, #22d3ee, #0ea5e9);
  top: 20%;
  right: -140px;
  animation-delay: 4s;
}

.orb-c {
  background: radial-gradient(circle, #facc15, #fb923c);
  bottom: -160px;
  left: 30%;
  animation-delay: 8s;
}

.orb-d {
  background: radial-gradient(circle, #34d399, #10b981);
  top: 60%;
  left: 60%;
  animation-delay: 12s;
}

/* FLOAT ANIMATION */
@keyframes orbFloat {
  from {
    transform: translateY(0) translateX(0) scale(1);
  }
  to {
    transform: translateY(-60px) translateX(40px) scale(1.15);
  }
}


/* Mobile optimization */
@media (max-width: 768px) {
  .marquee-track span {
    padding: 14px 24px;
    font-size: 0.85rem;
  }
}

/* ================================
   HOVER SHOWCASE SECTION
================================ */
/* ================================
   DARK HOVER SHOWCASE SECTION
================================ */

.hover-showcase {
  padding: 120px 0;
  /* background: radial-gradient(
    circle at top left,
    #0b1020,
    #05070f 60%
  ); */
}

/* Layout */
.hover-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

/* LEFT SIDE */
.hover-list {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

/* BOX */
.hover-item {
  position: relative;
  padding: 26px 28px;
  border-radius: 14px;
  background: linear-gradient(
    145deg,
    #0b1224,
    #070b16
  );
  border: 1px solid rgba(255,255,255,0.08);
  cursor: pointer;
  transition: all 0.35s ease;
  overflow: hidden;
}

/* DARK GLOW */
.hover-item::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(
    circle at left center,
    rgba(99,102,241,0.18),
    transparent 65%
  );
  opacity: 0;
  transition: opacity 0.35s ease;
}

/* TEXT */
.hover-item h4 {
  font-size: 1.1rem;
  font-weight: 700;
  color: #e5e7eb;
  margin-bottom: 6px;
}

.hover-item p {
  font-size: 0.95rem;
  color: #94a3b8;
}

/* HOVER STATE */
.hover-item:hover {
  transform: translateX(8px);
  border-color: rgba(99,102,241,0.5);
  background: linear-gradient(
    145deg,
    #0f172a,
    #020617
  );
}

.hover-item:hover::before {
  opacity: 1;
}

/* ACTIVE DEFAULT */
.hover-item.active {
  border-color: rgba(99,102,241,0.7);
  background: linear-gradient(
    145deg,
    #111827,
    #020617
  );
}

/* RIGHT IMAGE */
.hover-visual {
  position: relative;
  height: 420px;
  border-radius: 18px;
  overflow: hidden;
  box-shadow:
    0 40px 80px rgba(0,0,0,0.6);
  background: #020617;
}

.hover-visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transform: scale(1.06);
  transition: opacity 0.45s ease, transform 0.6s ease;
  filter: brightness(0.9) contrast(1.05);
}

.hover-visual img.active {
  opacity: 1;
  transform: scale(1);
}
.services {
  position: relative;
  background: transparent;

  /* Border (no bottom) */
  border: 5px solid rgba(99, 102, 241, 0.7);;
  border-bottom: none;

  border-radius: 50px;
  padding: clamp(40px, 6vw, 80px) clamp(20px, 5vw, 40px);
  margin: clamp(24px, 6vw, 80px) auto;
  max-width: 1400px;

  box-shadow:
    0 0 0 1px rgba(79, 163, 255, 0.18),
    0 0 40px rgba(0, 156, 255, 0.25);

  background-clip: padding-box;
  overflow: hidden;
}

/* Bottom fade effect */
.services::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;

  height: 80px;

  /* background: linear-gradient(
    to bottom,
    rgba(0, 156, 255, 0.6),
    rgba(0, 156, 255, 0.25),
    rgba(0, 156, 255, 0)
  ); */

  pointer-events: none;
}

.features {
  position: relative;
  margin: clamp(40px, 8vw, 120px) auto;
}

.features-inner {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: clamp(30px, 6vw, 80px);
  align-items: flex-start;
}

/* Image side */
.feature-media {
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* Tagline wrapper */
.feature-tagline-wrapper {
  margin-bottom: 24px; /* space above image */
}

/* Main tagline */
.feature-tagline {
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #ffffff;
  text-shadow: 0 4px 20px rgba(0,0,0,0.55);
  display: block;
}

/* Sub tagline */
.feature-subtagline {
  font-size: clamp(20px, 3vw, 32px);
  font-weight: 600;
  color: #009CFF; /* blue accent */
  display: block;
  margin-top: 8px;
}

/* Image */
.feature-media img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 20px;
  display: block;
}

/* Content side */
.feature-list {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(0, 156, 255, 0.25);
  border-radius: 28px;
  padding: clamp(32px, 6vw, 56px);
  backdrop-filter: blur(8px);
}

.feature-list .eyebrow {
  display: inline-block;
  margin-bottom: 12px;
  font-size: 13px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #4fa3ff;
}

.feature-list h2 {
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.2;
  margin-bottom: 18px;
}

.feature-list p {
  color: rgba(255,255,255,0.85);
  line-height: 1.7;
  margin-bottom: 28px;
}

.feature-list h3 {
  font-size: 18px;
  margin-bottom: 14px;
}

/* List */
.feature-list ul {
  list-style: none;
  padding: 0;
  margin: 0 0 32px;
}

.feature-list ul li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 14px;
  color: rgba(255,255,255,0.9);
}

.feature-list ul li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #009CFF;
  font-weight: 600;
}



/* Mobile */
@media (max-width: 900px) {
  .features-inner {
    grid-template-columns: 1fr;
  }

  .feature-media {
    order: -1;
  }
}




/* IMAGE SWITCH (PURE CSS) */
.hover-item:nth-child(1):hover ~ .hover-visual .img1,
.hover-item:nth-child(2):hover ~ .hover-visual .img2,
.hover-item:nth-child(3):hover ~ .hover-visual .img3,
.hover-item:nth-child(4):hover ~ .hover-visual .img4 {
  opacity: 1;
  transform: scale(1);
}

/* Step text highlight (data-text) */
.step p::before {
  content: attr(data-text);
  display: block;
  font-weight: 700;
  font-size: 1.2rem;
  color: #009CFF; /* blue accent */
  margin-bottom: 0.8rem;
}

/* Step boxes border & glow */
.step p {
  border: 2px solid #009CFF;  /* border highlight */
  box-shadow: 0 20px 50px rgba(0, 156, 255, 0.25); /* soft blue glow */
  /* background: rgba(255, 255, 255, 0.05); */
  padding: 2rem;
  border-radius: 15px;
  transition: all 0.4s ease;
      background: linear-gradient(145deg, #111827, #020617);
}

/* Optional hover effect for extra polish */
.step p:hover {
  transform: translateY(-5px);
  box-shadow: 0 25px 60px rgba(0, 156, 255, 0.35);
  
}




/* MOBILE */
@media (max-width: 900px) {
  .hover-inner {
    grid-template-columns: 1fr;
  }

  .hover-visual {
    height: 300px;
  }
}


/* sections */
.section{padding:2rem 0}
.section-title{font-size:2.1rem;margin-bottom:30px;color:#009CFF; text-align: center;}
.section-sub{color:var(--muted);margin-bottom:18px}

/* services */
.services-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.service-card{background:var(--panel);padding:18px;border-radius:12px;min-height:160px;display:flex;flex-direction:column;gap:10px}
.service-card .icon{font-size:24px}

/* features */
.features-inner{display:flex;gap:2rem;align-items:flex-start}
.feature-media img{    width: 520px;
    height: 564px;
    object-fit: cover;
    border-radius: 12px;}
.feature-media2 img{width:600px;height:527px;object-fit:cover;border-radius:12px}
.feature-list{flex:1; color:var(--contenttxt)}
.feature-list ul{padding-left:1rem;color:var(--contenttxt)}

/* projects */
.projects-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.proj-card{background:var(--panel);border-radius:12px;overflow:hidden;    box-shadow: 0 6px 10px rgb(111 165 246 / 60%); margin-top: 30px;}
.proj-card img{width:100%;height:180px;object-fit:cover}
.proj-body{padding:12px}

/* team */
.team-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.team-card{background:var(--panel);padding:16px;border-radius:12px;text-align:center}
.team-card img{width:110px;height:110px;border-radius:999px;object-fit:cover;margin-bottom:10px}

/* pricing */
.pricing-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.price-card{background:var(--panel);padding:18px;border-radius:12px;text-align:center}
.price-card.featured{border:2px solid rgba(91,63,255,0.18);transform:translateY(-6px);box-shadow:0 12px 40px rgba(91,63,255,0.06)}
.price{font-size:1.6rem;margin:12px 0}


/* contact */
.section-contact{background-image:
    linear-gradient(90deg, rgba(255, 255, 255, 0.088) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.088) 1px, transparent 1px),
    linear-gradient(180deg,#010101 0%, #000000 100%);
  background-size: 25px 25px, 25px 25px, auto;}
.contact-inner{display:grid;gap:18px;grid-template-columns:1fr 320px;align-items:start}
.contact-form-card{background:linear-gradient(180deg,rgba(255,255,255,0.02),transparent);padding:18px;border-radius:12px}
.contact-form .row{display:flex;gap:10px}
.contact-form input, .contact-form textarea{width:100%;padding:10px;border-radius:8px;border:0;background:#fff;color:black;margin-bottom:10px}
.form-row{display:flex;align-items:center;gap:12px}

/* footer */
.footer{border-top:1px solid rgba(255,255,255,0.02);text-align:center;color:#ebeaea;  background: linear-gradient(90deg, #0b0f1a, #363c49);}

/* small screens */
@media (max-width:1000px){
  .hero-right{width:100%}
  .hero-inner{flex-direction:column-reverse}
  .features-inner{flex-direction:column}
  .feature-media img{width:100%;height:260px}
  .feature-media2 img{width:100%;height:260px}
}
@media (max-width:820px){
  .menu{display:none;position:absolute;right:12px;top:64px;background:var(--panel);padding:12px;border-radius:12px;flex-direction:column}
  .hamb{display:inline-block}
  .nav-inner{position:relative}
  .contact-inner{grid-template-columns:1fr}
  .hero-left h1{font-size:1.8rem}
}




