@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

:root{
  /* IgniteUp mockup: deep navy, dark blue bands, bright cyan accent */
  --primary:#031529;
  --secondary:#002244;
  --accent:#00D2FF;
  --accent-hover:#00b8e6;
  --bg-light:#F7F9FC;
  --text-dark:#1A1A1A;
  --text-muted:#6B7280;
  --text-inverse:#FFFFFF;
  --white:#FFFFFF;
  --grad-hero:linear-gradient(135deg, #031529 0%, #002244 48%, rgba(0,210,255,.35) 100%);
  --grad-cta:linear-gradient(135deg, #031529 0%, #002244 50%, #053a5c 72%, #00D2FF 100%);
  --grad-ai:radial-gradient(circle at 100% 0%, #002244 0%, #031529 58%, #020d18 100%);
  --radius:12px;
  --spacing:24px;
  --container-pad:24px;
  /* Wider desktop layout */
  --max:1320px;
  --section-y:100px;
  --section-y-sm:60px;
  --read-max:600px;
  --ease-ui:0.3s ease;
  --ease:cubic-bezier(.2,.9,.2,1);
  --font:"Inter",Helvetica,Arial,sans-serif;
  --font-serif:var(--font);
  --shadow-card:0 10px 30px rgba(0,0,0,.05);
  --shadow-card-hover:0 20px 40px rgba(0,0,0,.08);
  --shadow-header:0 2px 10px rgba(0,0,0,.05);
  --brand-wordmark-teal:var(--accent);
  --navy-deep:var(--primary);
  --navy-heading:var(--primary);
  --bg0:#031529;
  /* Match the dark tone in IgniteUp logo_final background */
  --header-footer-bg:#000000;
  --header-overlap:72px;
  --btn-navy-grad:linear-gradient(135deg,#031529 0%,#002244 42%,#0c3358 100%);
  --btn-navy-grad-hover:linear-gradient(135deg,#052238 0%,#002f5c 48%,#144a6e 100%);
  --btn-navy-shadow:0 8px 28px rgba(2,16,36,.42);
  --btn-navy-shadow-hover:0 12px 32px rgba(2,20,44,.5);
  --bg1:#0D2B5C;
  --text:rgba(255,255,255,.93);
  --muted:rgba(255,255,255,.72);
  --faint:rgba(255,255,255,.56);
  --panel:rgba(255,255,255,.055);
  --stroke:rgba(255,255,255,.10);
  --stroke2:rgba(255,255,255,.16);
  --shadow:0 26px 80px rgba(0,0,0,.25);
  --shadow2:0 12px 30px rgba(0,0,0,.15);
  --accent2:#00D2FF;
  --accent3:#00D2FF;
  --fs-h1:clamp(34px,4.5vw,56px);
  --fs-h2:clamp(26px,3vw,36px);
  --fs-h3:clamp(20px,2.2vw,24px);
  --fs-card:18px;
  --fs-body:16px;
  --fs-small:14px;
  --fs-btn:15px;
  --lh-h1:1.1;
  --lh-h2:1.2;
  --lh-h3:1.3;
  --lh-card:1.4;
  --lh-body:1.6;
  --lh-small:1.5;
  --fw-h1:700;
  --fw-h2:600;
  --fw-h3:600;
  --fw-body:400;
  --fw-btn:500;
}

@media (min-width: 1400px){
  :root{
    --max:1400px;
    --container-pad:32px;
  }
}

*{box-sizing:border-box}
html{
  scroll-padding-top:84px;
}
html,body{height:100%}
body{
  margin:0;
  font-family:var(--font);
  font-size:var(--fs-body);
  font-weight:var(--fw-body);
  line-height:var(--lh-body);
  letter-spacing:0;
  color:var(--text-dark);
  background:var(--bg-light);
  -webkit-font-smoothing:antialiased;
  /* Keep content visible under the fixed header */
  padding-top:84px;
}

a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}

#main{
  position:relative;
  z-index:0;
}

.container{width:min(var(--max), calc(100% - var(--container-pad) * 2)); margin:0 auto; padding-left:var(--container-pad); padding-right:var(--container-pad)}
.muted{color:var(--muted)}
.faint{color:var(--faint)}
.text-center{text-align:center}

/* Full-width section: center the sub block (max-width + no horizontal auto was hugging the left) */
.section.light p.sub.text-center{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}

.skip-link{
  position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden
}
.skip-link:focus{
  position:fixed;left:16px;top:14px;width:auto;height:auto;padding:10px 12px;
  background:#111827;border:1px solid var(--stroke);border-radius:10px;z-index:9999
}

/* Header — same base colour as footer */
.header{
  position:fixed;top:0;left:0;right:0;z-index:500;
  min-height:0;
  padding-top:10px;
  padding-bottom:10px;
  display:flex;
  align-items:center;
  /* Must be visible so Services dropdown isn't clipped */
  overflow:visible;
  /* Filled header to match "Why Choose Us" band */
  background:var(--primary);
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:none;
  backdrop-filter:blur(14px) saturate(1.1);
  -webkit-backdrop-filter:blur(14px) saturate(1.1);
  transition:box-shadow var(--ease-ui);
}
.header .container{
  padding-left:var(--container-pad);
  padding-right:var(--container-pad);
}
/* Keep header appearance constant while scrolling */
.nav{
  display:flex;align-items:center;justify-content:space-between;
  width:100%;
  padding:0;gap:16px;
}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.2px}
.header .brand{margin-left:0}
.brand--logo{
  gap:0;
  line-height:0;
}
.header .brand--logo{
  /* Move logo down ~0.2cm */
  margin-top:8px;
}
.brand--logo:hover{text-decoration:none}
/* Wordmark (text-only logo) */
.brand-wordmark{
  font-weight:800;
  font-size:clamp(23px,2.75vw,34px);
  letter-spacing:-.02em;
}
.header .brand-wordmark{
  /* Keep menu compact while the wordmark stays prominent */
  font-size:clamp(23px,2.40vw,30px);
}
.footer .brand-wordmark{
  font-size:clamp(23px,2.75vw,32px);
}
.brand--footer-logo{
  margin-bottom:12px;
}
.brand-title{display:flex;flex-direction:column;gap:1px}
.brand-wordmark{
  display:inline-flex;
  align-items:baseline;
  font-family:var(--font);
  font-weight:700;
  font-size:1.02em;
  letter-spacing:.02em;
  line-height:1.2;
  white-space:nowrap;
}
.brand-ignite{color:var(--primary)}
.header .brand-ignite{color:#fff}
.footer .brand-ignite{color:#fff}
.header .brand small{color:rgba(255,255,255,.72)}
.brand-ignite-i{
  position:relative;
  display:inline-block;
}
/* Teal ^ chevron above “I” — stroke chevron, centered on glyph */
.brand-ignite-i::before{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  top:-0.35em;
  width:0.72em;
  height:0.52em;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 12' fill='none'%3E%3Cpath stroke='%2300D2FF' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3.5 9.5 10 3.5l6.5 6'/%3E%3C/svg%3E") no-repeat center center/contain;
  pointer-events:none;
  opacity:.98;
}
.brand-up{color:var(--brand-wordmark-teal)}
.brand small{display:block;font-weight:500;font-size:var(--fs-small);color:var(--text-muted);margin-top:1px}

/* Nav links (desktop) — light on navy header (matches footer tone) */
.navlinks{display:flex;align-items:center;gap:6px}
.header .navlinks a{
  color:rgba(255,255,255,.88);
  font-size:var(--fs-body);
  font-weight:500;
  padding:6px 12px;
  border-radius:8px;
  border:1px solid transparent;
  transition:color var(--ease-ui),background var(--ease-ui),border-color var(--ease-ui),transform var(--ease-ui);
}
.header .navlinks a[aria-current="page"]{
  color:#fff;
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.18);
}
.header .navlinks a:hover{
  color:#fff;
  background:rgba(0,210,255,.14);
  border-color:rgba(0,210,255,.28);
  text-decoration:none;
  transform:translateY(-1px);
}

/* CSS-only dropdown (details/summary) */
details.dropdown{position:relative}
details.dropdown > summary{
  list-style:none;
  color:var(--muted);
  padding:10px 12px;
  border-radius:14px;
  border:1px solid transparent;
  cursor:pointer;
  user-select:none;
  display:flex;
  align-items:center;
  gap:8px;
  transition:background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease),transform .18s var(--ease);
}
details.dropdown > summary::-webkit-details-marker{display:none}
details.dropdown > summary:hover{
  color:var(--text);
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.10);
  transform:translateY(-1px);
}
.caret{
  width:10px;height:10px;display:inline-block;
  border-right:2px solid rgba(255,255,255,.55);
  border-bottom:2px solid rgba(255,255,255,.55);
  transform:rotate(45deg);
  margin-top:-2px;
}
details.dropdown[open] > summary{
  color:var(--text);
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.10);
}
.dropdown-menu{
  position:absolute;right:0;top:calc(100% + 10px);
  width:320px;
  background:rgba(9,12,20,.88);
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  box-shadow:var(--shadow);
  padding:10px;
}
.dropdown-menu a{
  display:block;
  padding:10px 12px;
  border-radius:12px;
  color:#000;
}
.dropdown-menu a:hover{background:rgba(0,210,255,.08);color:#000;text-decoration:none}

/* CTA buttons */
.nav-cta{display:flex;gap:10px;align-items:center}
.header .nav-cta .btn{
  padding:8px 18px;
}
.header .nav-cta .btn.btn-teal{
  /* Match index hero "Business Triumph" accent color */
  background:var(--accent);
  border-color:rgba(0,210,255,.65);
  color:#031529;
  box-shadow:0 10px 22px rgba(0,210,255,.18);
}
.header .nav-cta .btn.btn-teal:hover{
  background:var(--accent-hover);
  border-color:rgba(0,184,230,.75);
  color:#031529;
  box-shadow:0 12px 28px rgba(0,210,255,.24);
}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 24px;border-radius:8px;
  font-family:var(--font);
  font-size:var(--fs-btn);
  font-weight:var(--fw-btn);
  line-height:1.2;
  border:1px solid rgba(255,255,255,.35);
  background:transparent;
  color:var(--text-inverse);
  cursor:pointer;
  letter-spacing:0;
  transition:background var(--ease-ui),border-color var(--ease-ui),color var(--ease-ui),transform var(--ease-ui),box-shadow var(--ease-ui);
}
.btn:hover{
  background:rgba(255,255,255,.1);
  transform:translateY(-1px);
  text-decoration:none;
  color:#fff;
}
.btn:active{transform:translateY(0) scale(.99)}
.btn.primary{
  border:1px solid rgba(255,255,255,.22);
  background:var(--btn-navy-grad);
  color:#fff;
  box-shadow:var(--btn-navy-shadow);
}
.btn.primary:hover{
  background:var(--btn-navy-grad-hover);
  border-color:rgba(255,255,255,.32);
  color:#fff;
  box-shadow:var(--btn-navy-shadow-hover);
}
.btn.ghost{background:transparent}
.section.light .btn:not(.primary):not(:hover){
  color:var(--text-dark);
  border-color:rgba(10,31,68,.2);
  background:transparent;
}
.section.light .btn:not(.primary):hover{
  color:var(--primary);
  border-color:var(--accent);
  background:rgba(0,210,255,.06);
  box-shadow:none;
}
.section.light .btn.ghost:not(:hover){
  color:var(--text-dark);
  border-color:rgba(10,31,68,.15);
  background:transparent;
}
.section.light .btn.primary{
  border:1px solid rgba(255,255,255,.22);
  background:var(--btn-navy-grad);
  color:#fff;
  box-shadow:var(--btn-navy-shadow);
}
.section.light .btn.primary:hover{
  background:var(--btn-navy-grad-hover);
  border-color:rgba(255,255,255,.32);
  color:#fff;
  box-shadow:var(--btn-navy-shadow-hover);
}

/* Mobile nav via details */
.mobile-nav{display:none}
.mobile-nav details{
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
}
.mobile-nav summary{
  list-style:none;
  padding:8px 12px;
  cursor:pointer;
  color:rgba(255,255,255,.92);
  user-select:none;
}
.mobile-nav summary::-webkit-details-marker{display:none}
.mobile-panel{padding:10px 10px 12px;display:grid;gap:8px}
.mobile-panel a{
  display:block;
  padding:12px 12px;
  border-radius:8px;
  border:1px solid rgba(10,31,68,.1);
  background:#fff;
  color:var(--text-muted);
}
.mobile-panel a:hover{color:var(--primary);background:#fafafa;text-decoration:none}
.mobile-panel details{
  border:0;
  border-radius:0;
  background:transparent;
  overflow:visible;
}
.mobile-panel summary{
  list-style:none;
  display:block;
  padding:12px 12px;
  border-radius:8px;
  border:1px solid rgba(10,31,68,.1);
  background:#fff;
  color:var(--text-muted);
  cursor:pointer;
  user-select:none;
}
.mobile-panel summary::-webkit-details-marker{display:none}
.mobile-panel summary:hover{color:var(--primary);background:#fafafa}
.mobile-panel details[open] > summary{
  color:var(--primary);
  background:#f7fafc;
  border-color:rgba(0,210,255,.35);
}
.mobile-sub{
  padding-left:10px;
  border-left:1px solid rgba(10,31,68,.12);
  display:grid;
  gap:8px;
  margin:6px 0 2px;
}
.mobile-sub a{
  padding:10px 12px;
  font-size:14px;
}

/* Hero */
.hero{padding:64px 0 18px}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:stretch}
.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.h1{
  font-size:clamp(32px,4vw,52px);
  line-height:1.18;
  margin:14px 0 10px;
  padding-bottom:.08em;
  letter-spacing:-.6px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.78));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}
.lead{font-size:16px;color:var(--muted);margin:0 0 18px;max-width:64ch}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}

.panel{
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.10);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}

/* Graphic block (unique abstract, no external images) */
.graphic{
  padding:18px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
}
.graphic::before{
  content:"";
  position:absolute;
  inset:-120px -140px auto auto;
  width:340px;height:340px;
  background:radial-gradient(circle at 30% 30%, rgba(139,92,246,.34), transparent 60%);
  filter:blur(2px);
}
.graphic::after{
  content:"";
  position:absolute;
  inset:auto -160px -160px auto;
  width:360px;height:360px;
  background:radial-gradient(circle at 30% 30%, rgba(34,211,238,.18), transparent 60%);
  filter:blur(2px);
}
.graphic .mini,.graphic .kpis{position:relative}

/* Layout 4 hero right visual (network) */
.hero-network{
  padding:0;
  min-height: 320px;
  background:
    linear-gradient(90deg, rgba(5,6,10,.92) 0%, rgba(5,6,10,.55) 55%, rgba(5,6,10,.18) 100%),
    radial-gradient(900px 420px at 60% 40%, rgba(34,211,238,.18), transparent 60%),
    radial-gradient(900px 520px at 30% 70%, rgba(139,92,246,.16), transparent 60%),
    url("images/hero-network.png");
  background-size: cover;
  background-position: center;
  position:relative;
  overflow:hidden;
}
.hero-network::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(700px 380px at 70% 35%, rgba(34,211,238,.10), transparent 62%),
    radial-gradient(700px 420px at 25% 70%, rgba(139,92,246,.10), transparent 62%),
    linear-gradient(135deg, rgba(255,255,255,.04), rgba(255,255,255,0));
  opacity: .95;
}

/* Light section styling */
.section.light{
  background:var(--bg-light);
  color:var(--text-dark);
}

/* Reusable AI-Tech (index "AI & Tech Solutions") background */
.section.band.ai.ai-band-bg{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:transparent;
  border-color:rgba(255,255,255,.06);
  color:#fff;
}
.section.band.ai.ai-band-bg::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background-color:var(--primary);
  background-image:
    var(--grad-ai),
    radial-gradient(800px 500px at 100% 0%, rgba(0,210,255,.2), transparent 55%),
    url("images/hero-network.png");
  background-size:cover,cover,cover;
  background-position:center;
  background-repeat:no-repeat;
}
.section.band.ai.ai-band-bg .container{
  position:relative;
  z-index:1;
}
.section.band.ai.ai-band-bg .section-header h2{
  color:#fff;
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
}
.section.band.ai.ai-band-bg .sub,
.section.band.ai.ai-band-bg .muted,
.section.band.ai.ai-band-bg label{
  color:rgba(255,255,255,.72);
}
.section.light a{ color: inherit; }
.section.light .sub, .section.light .muted, .section.light label{ color: var(--text-muted); }
.section.light .card{
  background:var(--white);
  border:1px solid rgba(10,31,68,.08);
  box-shadow:var(--shadow-card);
  border-radius:var(--radius);
  transition:transform var(--ease-ui),box-shadow var(--ease-ui),border-color var(--ease-ui);
}
.section.light .card:hover{
  box-shadow:var(--shadow-card-hover);
  transform:translateY(-6px);
}

/* Insights & Resources */
.section.light.insights{
  background:var(--white);
}
.section.light.insights .section-header h2{
  color:var(--primary);
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
}
.section.light.insights .section-header .sub{
  color:var(--text-muted);
}
.section.light.insights .card{
  background:var(--white);
  border:1px solid rgba(10,31,68,.08);
  box-shadow:var(--shadow-card);
  color:var(--text-dark);
}
.section.light.insights .card p{
  color:var(--text-muted);
}
.section.light.insights .card h3{
  color:var(--primary);
}
.section.light.insights .thumb{
  border-color:rgba(10,31,68,.1);
  overflow:hidden;
  padding:0;
}
.section.light.insights .thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Light section header contrast */
.section.light .section-header h2{
  color:var(--primary);
  font-size:var(--fs-h2);
  font-weight:var(--fw-h2);
  line-height:var(--lh-h2);
}
.section.light .section-header .sub{
  color:var(--text-muted);
}
.section.light .pill{
  background: rgba(11,18,32,.04);
  border-color: rgba(11,18,32,.10);
  color: rgba(11,18,32,.70);
}

/* Service icon badge */
.service{
  --svc1: rgba(139,92,246,.22);
  --svc2: rgba(34,211,238,.16);
  --svcInk: rgba(11,18,32,.82);
}
.service .service-icon{
  width:42px;height:42px;border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center;
  background: linear-gradient(135deg, var(--svc1), var(--svc2));
  border:1px solid rgba(11,18,32,.12);
  margin-bottom: 10px;
  box-shadow: 0 10px 18px rgba(0,0,0,.10);
}
.service .service-icon svg{
  width:32px;height:32px;
  color: var(--svcInk);
}
.service .service-icon svg [stroke]{
  stroke-width: 1.4;
}
.section.light .service{
  --svcInk: rgba(11,18,32,.82);
}

/* Individual service accents */
.service-finance{ --svc1: rgba(34,211,153,.26); --svc2: rgba(34,211,238,.18); }
.service-risk{
  --svc1: rgba(59,130,246,.22);
  --svc2: rgba(34,211,238,.16);
  --svcInk: rgba(255,255,255,.96);
}
.service-incentives{
  /* Match Risk & Compliance badge + icon ink */
  --svc1: rgba(59,130,246,.22);
  --svc2: rgba(34,211,238,.16);
  --svcInk: rgba(255,255,255,.96);
}
.service-digital{ --svc1: rgba(139,92,246,.26); --svc2: rgba(59,130,246,.16); }
.service-cyber{ --svc1: rgba(14,165,233,.24); --svc2: rgba(34,211,238,.16); }
.service-forensics{ --svc1: rgba(59,130,246,.22); --svc2: rgba(0,210,255,.14); }
.service-cyber-forensics{ --svc1: rgba(14,165,233,.26); --svc2: rgba(59,130,246,.2); }
.service-managed{ --svc1: rgba(236,72,153,.20); --svc2: rgba(139,92,246,.16); }
.service-marketing{
  /* Match Risk & Compliance badge + icon ink */
  --svc1: rgba(59,130,246,.22);
  --svc2: rgba(34,211,238,.16);
  --svcInk: rgba(255,255,255,.96);
}
.service-rnd{ --svc1: rgba(99,102,241,.24); --svc2: rgba(34,211,238,.18); }

/* Improve service card visual weight slightly on light section */
.section.light .service.card{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(220px 160px at 18% 18%, var(--svc1), transparent 62%),
    radial-gradient(260px 180px at 82% 78%, var(--svc2), transparent 60%),
    linear-gradient(180deg, rgba(11,18,32,.96), rgba(11,18,32,.92));
  border-color: rgba(255,255,255,.14);
  box-shadow: 0 16px 34px rgba(0,0,0,.16);
  color: rgba(255,255,255,.93);
}
.section.light .service.card p{ color: rgba(255,255,255,.76); }
.section.light .service.card h3{ color: rgba(255,255,255,.93); }
.section.light .service.card p{
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.section.light .service.card h3{
  min-height: 2.5em;
}
.section.light .service.card .service-icon{
  margin-bottom: 2px;
}
.section.light .service.card:hover{
  box-shadow: 0 22px 46px rgba(0,0,0,.22);
  border-color: rgba(255,255,255,.20);
}
.section.light .service.card::after{
  content:"";
  position:absolute;
  inset:auto -30% -40% auto;
  width: 260px;
  height: 260px;
  background: radial-gradient(circle at 30% 30%, var(--svc2), transparent 62%);
  opacity:.55;
  transform: rotate(-10deg);
  pointer-events:none;
}

/* Split band section (AI & Tech block in layout 4) */
.band{
  background: linear-gradient(180deg, rgba(6,7,11,.65), rgba(6,7,11,.35));
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.band .eyebrow{ color: rgba(34,211,238,.78); }
.band h2{ color: rgba(255,255,255,.94); }
.band .sub{ color: rgba(255,255,255,.72); }
.band-inner{
  display:grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 18px;
  align-items: start;
}

/* AI band heading accents */
.section.band.ai .eyebrow{
  color: rgba(34,211,238,.86);
}
.section.band.ai h2{
  background: linear-gradient(90deg, rgba(34,211,238,1), rgba(139,92,246,1));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.section.band.ai .sub{
  color: rgba(255,255,255,.76);
}
.section.band.ai .ai-band-intro .sub{
  max-width: 52ch;
}
.ai-band-video-wrap{
  margin: 16px 0 18px;
  max-width: 520px;
}
.ai-band-video{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
  border-radius:var(--radius);
  border:1px solid rgba(255,255,255,.14);
  background:rgba(5,7,12,.75);
  box-shadow:0 20px 50px rgba(0,0,0,.4), inset 0 0 0 1px rgba(255,255,255,.06);
}
.ai-band-video:focus{
  outline:3px solid rgba(34,211,238,.45);
  outline-offset:3px;
}
/* AI cards — icon left of heading + glass panel (reference layout) */
.section.band.ai .ai-solutions-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:clamp(12px,1.8vw,18px);
  align-items:stretch;
}
.section.band.ai .ai-solutions-grid > .card-link{
  display:flex;
  flex-direction:column;
  height:100%;
  min-height:0;
  border-radius:14px;
  transition:transform .28s var(--ease);
}
.section.band.ai .ai-solutions-grid > .card-link:hover,
.section.band.ai .ai-solutions-grid > .card-link:focus-visible{
  transform:translateY(-3px);
}
.section.band.ai .ai-solutions-grid > .card-link .card.ai-card{
  flex:1 1 auto;
  width:100%;
  min-height:clamp(108px,12vw,138px);
}
.section.band.ai .grid-3 .card.ai-card{
  position:relative;
  overflow:hidden;
  padding:0;
  gap:0;
  border-radius:14px;
  border-color:rgba(34,211,238,.2);
  box-shadow:
    0 4px 0 rgba(34,211,238,.12),
    0 20px 48px rgba(0,0,0,.32),
    inset 0 1px 0 rgba(255,255,255,.07);
  color:rgba(255,255,255,.93);
  background:
    linear-gradient(165deg,rgba(255,255,255,.06) 0%,transparent 42%),
    rgba(11,20,48,.52);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  transition:border-color .28s var(--ease),box-shadow .28s var(--ease),background .28s var(--ease);
}
.section.band.ai .grid-3 .card.ai-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:2px;
  border-radius:14px 14px 0 0;
  background:linear-gradient(90deg,var(--ai1),var(--ai2));
  opacity:.88;
  pointer-events:none;
}
.section.band.ai .ai-card-content{
  padding:clamp(11px,1.3vw,15px) clamp(12px,1.5vw,17px) clamp(12px,1.5vw,16px);
  display:flex;
  flex-direction:column;
  gap:8px;
  flex:1;
  align-items:stretch;
  justify-content:flex-start;
  min-width:0;
  width:100%;
}
.section.band.ai .ai-card-head{
  display:flex;
  gap:clamp(10px,1.4vw,14px);
  align-items:flex-start;
  width:100%;
}
.section.band.ai .ai-card-head .ai-icon{
  flex-shrink:0;
  margin:0;
  margin-top:3px;
  width:auto;
  height:auto;
  padding:0;
  border:none;
  border-radius:0;
  background:none;
  box-shadow:none;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
}
.section.band.ai .ai-card-head .ai-icon svg{
  width:clamp(22px,2.2vw,26px);
  height:clamp(22px,2.2vw,26px);
  display:block;
  color:rgba(125,232,250,.98);
  filter:drop-shadow(0 0 12px rgba(34,211,238,.22));
}
.section.band.ai .grid-3 .card.ai-card h3{
  flex:1;
  min-width:0;
  color:rgba(255,255,255,.98);
  min-height:0;
  font-size:clamp(13px,.95vw,15px);
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1.32;
  margin:0;
}
.section.band.ai .grid-3 .card.ai-card h3::after{
  content:"";
  display:block;
  width:36px;
  height:2px;
  border-radius:2px;
  margin-top:5px;
  background:linear-gradient(90deg,rgba(34,211,238,.95),rgba(56,189,248,.35));
}
.section.band.ai .grid-3 .card.ai-card p{
  margin:0;
  margin-top:auto;
  padding-top:2px;
  color:rgba(255,255,255,.7);
  font-size:clamp(12px,.85vw,13.5px);
  line-height:1.55;
  width:100%;
  max-width:none;
}
.section.band.ai .grid-3 .card.ai-card:hover,
.section.band.ai .ai-solutions-grid > .card-link:focus-visible .card.ai-card{
  border-color:rgba(34,211,238,.38);
  box-shadow:
    0 4px 0 rgba(34,211,238,.2),
    0 28px 56px rgba(0,0,0,.38),
    0 0 40px -12px rgba(34,211,238,.15),
    inset 0 1px 0 rgba(255,255,255,.1);
  background:
    linear-gradient(165deg,rgba(255,255,255,.09) 0%,transparent 45%),
    rgba(12,24,52,.62);
}

/* Why Choose Us — banded backdrop + tinted cards */
.section.why{
  position: relative;
  padding: 40px 0 44px;
  border-top: 1px solid rgba(255,255,255,.09);
  border-bottom: 1px solid rgba(255,255,255,.06);
  background:
    radial-gradient(900px 420px at 10% 15%, rgba(52,211,153,.11), transparent 58%),
    radial-gradient(820px 400px at 92% 22%, rgba(139,92,246,.12), transparent 56%),
    radial-gradient(720px 480px at 50% 100%, rgba(34,211,238,.09), transparent 52%),
    linear-gradient(180deg, rgba(5,7,12,.97) 0%, rgba(8,11,22,.99) 45%, rgba(5,7,12,.97) 100%);
}
.section.why .section-header h2{
  background: linear-gradient(100deg, rgba(52,211,153,.98) 0%, rgba(34,211,238,.98) 42%, rgba(167,139,250,.98) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.section.why .section-header .sub{
  color: rgba(255,255,255,.78);
  max-width: 60ch;
}
/* Per-card accent (home grid order) */
.section.why .grid-3 > .card:nth-child(1){ --why1: rgba(52,211,153,.18); --why2: rgba(34,211,238,.14); --whyBorder: rgba(52,211,153,.22); }
.section.why .grid-3 > .card:nth-child(2){ --why1: rgba(34,211,238,.16); --why2: rgba(59,130,246,.14); --whyBorder: rgba(34,211,238,.22); }
.section.why .grid-3 > .card:nth-child(3){ --why1: rgba(139,92,246,.17); --why2: rgba(236,72,153,.12); --whyBorder: rgba(167,139,250,.24); }
.section.why .grid-3 > .card:nth-child(4){ --why1: rgba(34,211,238,.14); --why2: rgba(52,211,153,.13); --whyBorder: rgba(52,211,153,.20); }
.section.why .grid-3 > .card:nth-child(5){ --why1: rgba(245,158,11,.14); --why2: rgba(34,211,238,.13); --whyBorder: rgba(251,191,36,.22); }
.section.why .grid-3 > .card:nth-child(6){ --why1: rgba(236,72,153,.14); --why2: rgba(139,92,246,.14); --whyBorder: rgba(244,114,182,.22); }
.section.why .card{
  --why1: rgba(34,211,153,.12);
  --why2: rgba(34,211,238,.10);
  --whyBorder: rgba(255,255,255,.14);
  background:
    radial-gradient(240px 170px at 14% 16%, var(--why1), transparent 64%),
    radial-gradient(280px 190px at 88% 82%, var(--why2), transparent 60%),
    linear-gradient(155deg, rgba(255,255,255,.06), rgba(255,255,255,.018));
  border-color: var(--whyBorder);
  box-shadow: 0 10px 28px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.06);
}
.section.why .card h3{
  color: rgba(255,255,255,.94);
}
.section.why .card p{
  color: rgba(255,255,255,.76);
}
.section.why .card:hover{
  border-color: rgba(255,255,255,.22);
  box-shadow: 0 16px 40px rgba(0,0,0,.28), 0 0 28px -8px var(--whyBorder), inset 0 1px 0 rgba(255,255,255,.08);
  background:
    radial-gradient(240px 170px at 14% 16%, var(--why1), transparent 64%),
    radial-gradient(280px 190px at 88% 82%, var(--why2), transparent 60%),
    linear-gradient(155deg, rgba(255,255,255,.09), rgba(255,255,255,.028));
}
.band .grid-3 .card{ background: rgba(255,255,255,.030); }

/* AI cards on Home (icons + gradients) */
.ai-card{
  --ai1: rgba(34,211,238,.18);
  --ai2: rgba(139,92,246,.16);
  --aiInk: rgba(255,255,255,.92);
  position:relative;
  overflow:hidden;
  border-color: rgba(255,255,255,.12);
  background:
    radial-gradient(220px 160px at 18% 18%, var(--ai1), transparent 62%),
    radial-gradient(260px 180px at 82% 78%, var(--ai2), transparent 60%),
    rgba(255,255,255,.028);
}
.ai-card p{ color: rgba(255,255,255,.74); }
.ai-icon{
  width:42px;height:42px;border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center;
  background: linear-gradient(135deg, var(--ai1), var(--ai2));
  border:1px solid rgba(255,255,255,.16);
  margin-bottom: 10px;
  box-shadow: 0 12px 24px rgba(0,0,0,.22);
}
.ai-icon svg{ width:22px;height:22px;color: var(--aiInk); }

.ai-tar{ --ai1: rgba(34,211,238,.22); --ai2: rgba(59,130,246,.16); }
.ai-social{ --ai1: rgba(34,211,153,.20); --ai2: rgba(34,211,238,.16); }
.ai-vision{ --ai1: rgba(139,92,246,.20); --ai2: rgba(236,72,153,.14); }
.ai-pentest{ --ai1: rgba(59,130,246,.18); --ai2: rgba(34,211,238,.16); }
.ai-chatbot{ --ai1: rgba(245,158,11,.18); --ai2: rgba(34,211,238,.14); }
.ai-erp{ --ai1: rgba(236,72,153,.16); --ai2: rgba(139,92,246,.14); }

.ai-card h3{ min-height: 2.5em; }

/* Insights image thumbnail */
.thumb{
  height:120px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(120px 80px at 20% 30%, rgba(34,211,238,.20), transparent 60%),
    radial-gradient(140px 100px at 80% 70%, rgba(139,92,246,.18), transparent 60%),
    linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  margin-bottom: 10px;
}
.section.light .thumb{
  border-color: rgba(11,18,32,.10);
  background:
    radial-gradient(140px 90px at 20% 30%, rgba(34,211,238,.22), transparent 60%),
    radial-gradient(160px 110px at 80% 70%, rgba(139,92,246,.18), transparent 60%),
    linear-gradient(135deg, rgba(11,18,32,.06), rgba(11,18,32,.02));
}

@media (max-width: 920px){
  .band-inner{ grid-template-columns: 1fr; }
}

.kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kpi{
  padding:12px;border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.032);
  transition:transform .18s var(--ease),background .18s var(--ease),border-color .18s var(--ease);
}
.kpi:hover{transform:translateY(-1px);background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14)}
.kpi b{display:block;font-size:15px;margin-bottom:4px}
.kpi span{color:var(--faint);font-size:13px}
.mini{color:var(--faint);font-size:13px}

/* Sections */
.section{padding:var(--section-y) 0}
@media (max-width:767px){
  .section{padding:var(--section-y-sm) 0}
}
.section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.section h2{margin:0;font-size:22px;letter-spacing:-.2px}
.section p.sub{margin:6px 0 0;color:var(--muted);max-width:75ch}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing)}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing)}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing)}
.card{
  padding:24px;border-radius:var(--radius);
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.032);
  transition:transform var(--ease-ui),background var(--ease-ui),border-color var(--ease-ui),box-shadow var(--ease-ui);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
}
.card-link{
  display:block;
  text-decoration:none;
  color:inherit;
}
.card-link:hover{ text-decoration:none; }
.card-link:focus-visible{
  outline:3px solid rgba(0,210,255,.45);
  outline-offset:3px;
  border-radius:var(--radius);
}
.card:hover{transform:translateY(-4px);background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.14);box-shadow:var(--shadow2)}
.card h3{
  margin:0;
  font-size:var(--fs-card);
  font-weight:var(--fw-h3);
  letter-spacing:-.02em;
  line-height:var(--lh-card);
  transition:color var(--ease-ui),background var(--ease-ui);
}
.card:hover h3,
.card-link:hover .card h3,
.card-link:focus-visible .card h3,
.section.light.insights .card:hover h3,
.section.light.insights .card-link:hover .card h3,
.section.light.insights .card-link:focus-visible .card h3,
.section.light .service.card:hover h3,
.section.light a.card-link:hover .service.card h3,
.section.light a.card-link:focus-visible .service.card h3,
.section.why .card:hover h3,
.section.band.ai .grid-3 .card.ai-card:hover h3,
.section.band.ai .grid-3 a.card-link:hover .card.ai-card h3,
.section.band.ai .grid-3 a.card-link:focus-visible .card.ai-card h3{
  background:linear-gradient(90deg, var(--accent), #4dc4c4);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.card p{
  margin:0;
  color:var(--muted);
  line-height:1.55;
}

/* Consistent alignment when cards are links */
.card-link > .card{ height: 100%; }

.section.light .card h3{ font-size: var(--fs-card); font-weight: 600; }
.pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.028);
  color:var(--muted);
  font-size:13px;
}
.pills{display:flex;flex-wrap:wrap;gap:10px}
.callout{
  padding:18px;border-radius:var(--radius);
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(135deg, rgba(139,92,246,.18), rgba(34,211,238,.10));
  display:flex;align-items:center;justify-content:space-between;gap:14px;
}
.callout p{margin:0;color:var(--muted)}
.section.light .callout p{
  color:rgba(11,18,32,.72);
}

/* Forms (no JS) */
.form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field{display:flex;flex-direction:column;gap:7px}
.field.full{grid-column:1/-1}
label{color:var(--text-muted);font-size:var(--fs-small)}
.section:not(.light) label{color:var(--muted)}
input,textarea,select{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  padding:11px 12px;
  color:var(--text);
  outline:none;
}
textarea{resize:vertical;min-height:120px}
select{appearance:none}

.page-ky-benefits .contact-form-panel{
  border:1px solid rgba(10,31,68,.14);
  background:linear-gradient(180deg, rgba(245,247,250,.98), rgba(236,240,245,.96));
  box-shadow:0 18px 55px rgba(0,0,0,.18);
  backdrop-filter:none;
}
.page-ky-benefits .section-header h2{
  color:rgba(255,255,255,.96) !important;
}
.page-ky-benefits #ky-form.section.light{
  color:rgba(242,241,245,.92);
}
.page-ky-benefits #ky-form.section.light a{
  color:rgba(193,247,255,.92);
}
.page-ky-benefits #ky-form.section.light a:hover{
  color:#fff;
}
.page-ky-benefits #ky-form .contact-form-panel a{
  color:#0b3a6d;
  font-weight:600;
}
.page-ky-benefits #ky-form .contact-form-panel a:hover{
  color:#062a52;
  text-decoration:underline;
  text-underline-offset:3px;
}
.page-ky-benefits #ky-form .contact-form-panel .ky-footer-note{
  color:#062a52;
  background:rgba(255, 232, 138, .55);
  border:1px solid rgba(180, 120, 0, .25);
  padding:10px 12px;
  border-radius:12px;
  margin-top:12px !important;
}
.page-ky-benefits #ky-form .contact-form-panel .ky-footer-note a{
  color:#062a52;
}
.page-ky-benefits #ky-form.section.light label{
  color:rgba(242,241,245,.86);
}
.page-ky-benefits #ky-form.section.light .mini{
  color:rgba(242,241,245,.74);
}
.page-ky-benefits #ky-form.section.light .lead{
  color:rgba(242,241,245,.82);
}
.page-ky-benefits #ky-form .contact-form-panel{
  color:rgba(11,18,32,.92);
}
.page-ky-benefits #ky-form .contact-form-panel label{
  color:rgba(11,18,32,.82);
}
.page-ky-benefits #ky-form .contact-form-panel .ky-section-title{
  color:rgba(11,18,32,.82);
}
.page-ky-benefits #ky-form .contact-form-panel .ky-note,
.page-ky-benefits #ky-form .contact-form-panel .ky-help{
  color:rgba(11,18,32,.68);
}
.page-ky-benefits #ky-form .contact-form-panel .contact-form{
  color:rgba(11,18,32,.9);
}
.page-ky-benefits #ky-form .contact-form-panel .contact-form *:not(a):not(button):not(svg):not(path){
  color:inherit;
}
.page-ky-benefits #ky-form .contact-form-panel .contact-form .mini,
.page-ky-benefits #ky-form .contact-form-panel .contact-form .ky-help,
.page-ky-benefits #ky-form .contact-form-panel .contact-form .ky-note{
  color:rgba(11,18,32,.68);
}
.page-ky-benefits #ky-form .contact-form-panel .contact-form .ky-subtitle{
  display:block;
  margin-bottom:6px;
  font-weight:600;
  color:rgba(11,18,32,.86);
}
.page-ky-benefits #ky-form .contact-form-panel .mini{
  color:rgba(11,18,32,.68);
}
.page-ky-benefits #ky-form .contact-form-panel input,
.page-ky-benefits #ky-form .contact-form-panel textarea,
.page-ky-benefits #ky-form .contact-form-panel select{
  color:rgba(11,18,32,.92);
  border-color:rgba(10,31,68,.18);
}
.page-ky-benefits #ky-form .contact-form.ky-form input,
.page-ky-benefits #ky-form .contact-form.ky-form textarea,
.page-ky-benefits #ky-form .contact-form.ky-form select{
  background:transparent;
}
.page-ky-benefits #ky-form .contact-form.ky-form select{
  background-color:rgba(255,255,255,.9);
}
.page-ky-benefits #ky-form .contact-form.ky-form select option{
  background-color:#fff;
  color:#0b1220;
}
.page-ky-benefits #ky-form input::placeholder,
.page-ky-benefits #ky-form textarea::placeholder{
  color:rgba(11,18,32,.45);
}
.page-ky-benefits .ky-note{
  margin:6px 0 0;
  color:rgba(242,241,245,.78);
}
.page-ky-benefits .ky-form{
  gap:14px;
}
.page-ky-benefits .ky-section-title{
  margin:8px 0 2px;
  font-size:14px;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:rgba(242,241,245,.75);
}
.page-ky-benefits .ky-divider{
  grid-column:1/-1;
  height:1px;
  background:rgba(255,255,255,.12);
  margin:4px 0;
}
.page-ky-benefits .ky-choices{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:2px;
}
.page-ky-benefits .ky-choice{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:transparent;
  color:rgba(11,18,32,.88);
  cursor:pointer;
  user-select:none;
}
.page-ky-benefits .ky-choice input{
  width:16px;
  height:16px;
  margin:0;
  accent-color:#00D2FF;
}
.page-ky-benefits .ky-help{
  margin:6px 0 0;
  color:rgba(242,241,245,.72);
}
.page-ky-benefits .contact-info-panel{
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.12);
}
.page-ky-benefits .contact-info__label{
  color:rgba(255,255,255,.9) !important;
}

/* Anchor offset for sticky header */
[id]{ scroll-margin-top:84px; }

/* Footer */
.footer{
  /* Match "Our Proven Process" section background */
  background:linear-gradient(180deg, var(--primary) 0%, #020a14 100%);
  border-top:1px solid rgba(255,255,255,.1);
  padding:48px 0 40px;
  margin-top:0;
  color:rgba(255,255,255,.72);
}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:var(--spacing);align-items:start}
.footer nav{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.footer a{color:rgba(255,255,255,.7);transition:color var(--ease-ui)}
.footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.fine{margin-top:10px;font-size:var(--fs-small);line-height:var(--lh-small);color:rgba(255,255,255,.5)}

@media (max-width: 920px){
  .hero-grid{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr}
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .grid-2{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .footer nav{justify-content:flex-start}
  .section.band.ai .ai-solutions-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
  .section.band.ai .ai-solutions-grid > .card-link .card.ai-card{
    min-height:0;
  }
}
@media (min-width: 921px) and (max-width: 1100px){
  .section.band.ai .ai-solutions-grid{
    grid-template-columns:repeat(2,1fr);
  }
}
@media (max-width: 640px){
  .grid-4{grid-template-columns:1fr}
}
@media (max-width: 860px){
  .navlinks,.nav-cta{display:none}
  .mobile-nav{display:block}
}

/* —— Home template (reference layout: navy hero, white service grid, serif titles) —— */
.page-home{
  --home-section-h2-size:var(--fs-h2);
  --home-section-h2-lh:var(--lh-h2);
  --home-section-sub-size:clamp(14px,1.4vw,16px);
  --home-section-sub-lh:var(--lh-body);
  --home-section-sub-max:min(56ch,var(--read-max));
  --home-card-h3-size:var(--fs-card);
  --home-card-body-size:15px;
  --home-card-body-lh:var(--lh-body);
  /* Tighter vertical rhythm on marketing home (and other pages using .page-home) */
  --section-y:40px;
  --section-y-sm:28px;
  background:var(--bg-light);
}
.page-home main > .section .section-header{
  margin-bottom:6px;
}
/* Shared section titles & subtitles: Our Services, AI & Tech, Insights & Resources */
.page-home .home-services .section-header h2,
.page-home .section.light.insights:not(.why-choose) .section-header h2,
.page-home .section.light.why-choose .section-header h2,
.page-home .section.band.ai .eyebrow h2{
  font-family:var(--font);
  font-weight:var(--fw-h2);
  font-size:var(--home-section-h2-size);
  line-height:var(--home-section-h2-lh);
  letter-spacing:-.02em;
  margin:0;
}
.page-home .home-services .section-header h2,
.page-home .section.light.insights:not(.why-choose) .section-header h2,
.page-home .section.light.why-choose .section-header h2{
  color:var(--navy-heading);
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
}
.page-home .section.band.ai .eyebrow h2{
  color:rgba(255,255,255,.96);
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
}
.page-home .home-services .section-header .sub,
.page-home .section.light.insights:not(.why-choose) .section-header .sub,
.page-home .section.light.why-choose .section-header .sub{
  margin-top:8px;
  font-size:var(--home-section-sub-size);
  line-height:var(--home-section-sub-lh);
  max-width:min(var(--read-max),var(--home-section-sub-max));
  color:var(--text-muted);
}
.page-home .section.band.ai .ai-band-intro .sub{
  margin-top:6px;
  font-size:var(--home-section-sub-size);
  line-height:var(--home-section-sub-lh);
  max-width:var(--home-section-sub-max);
  color:rgba(255,255,255,.74);
}

/* Shared card title & body copy: Services, Insights, AI band, Why Choose Us */
.page-home .home-services .service.card h3,
.page-home .section.light.insights:not(.why-choose) .card h3,
.page-home .section.band.ai .grid-3 .card.ai-card h3,
.page-home .section.light.why-choose .why-choose-body h3{
  font-family:var(--font);
  font-weight:var(--fw-h3);
  font-size:var(--home-card-h3-size);
  letter-spacing:-.02em;
  line-height:var(--lh-h3);
}
.page-home .home-services .service.card p,
.page-home .section.light.insights:not(.why-choose) .card p,
.page-home .section.band.ai .grid-3 .card.ai-card p,
.page-home .section.light.why-choose .why-choose-body p{
  font-size:var(--home-card-body-size);
  line-height:var(--home-card-body-lh);
}
.page-home .home-services .service.card p{
  color:var(--text-muted);
}
.page-home .section.light.insights:not(.why-choose) .card p{
  color:var(--text-muted);
}
.page-home .section.light.why-choose .why-choose-body p{
  color:var(--text-muted);
}
.page-home .section.band.ai .grid-3 .card.ai-card p{
  color:rgba(255,255,255,.75);
}
.page-home .section.light.why-choose .why-choose-body h3{
  color:var(--navy-heading);
  margin:0;
  width:100%;
}
.page-home .btn-teal{
  border:1px solid rgba(255,255,255,.22);
  background:var(--btn-navy-grad);
  color:#fff;
  box-shadow:var(--btn-navy-shadow);
}
.page-home .btn-teal:hover{
  background:var(--btn-navy-grad-hover);
  border-color:rgba(255,255,255,.32);
  color:#fff;
  letter-spacing:0;
  text-shadow:none;
  box-shadow:var(--btn-navy-shadow-hover);
}
.page-home .hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:48px 0 44px;
  margin-bottom:0;
  background:transparent;
  min-height:clamp(360px,48vh,540px);
}
body.page-home #main > section.hero:first-child{
  margin-top:calc(-1 * var(--header-overlap));
  padding-top:calc(var(--header-overlap) + 48px);
  padding-bottom:44px;
}
.page-home .hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background-color:var(--header-footer-bg);
  /* Text-free mesh art; dark upper-left in asset + light navy wash for copy contrast */
  background-image:
    linear-gradient(
      100deg,
      rgba(0,11,29,.82) 0%,
      rgba(3,21,41,.5) 32%,
      rgba(0,34,68,.22) 58%,
      transparent 82%
    ),
    url("images/home-hero-mesh.png");
  background-size:100% 100%, cover;
  background-position:0 0, center center;
  background-repeat:no-repeat;
}
.page-home .hero .container{
  position:relative;
  z-index:1;
  max-width:var(--max);
}
/* Mesh is full-bleed in ::before; hide redundant right panel */
.page-home .hero .hero-network--mesh{
  display:none;
}
.page-home .hero .hero-grid{
  grid-template-columns:1fr;
  gap:0;
  max-width:min(640px,100%);
}
.page-home .hero-network{
  min-height:280px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.03)),
    rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.2);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 24px 48px rgba(0,0,0,.18);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.page-home .hero-network::before{
  background:
    radial-gradient(520px 300px at 50% 42%, rgba(0,210,255,.18), transparent 68%),
    linear-gradient(145deg, rgba(255,255,255,.08), transparent);
  opacity:.9;
}
.page-home .hero:has(.ai-tech-hero-video){
  padding:36px 0 32px;
}
.page-home .hero .ai-tech-hero-video{
  padding:0;
  overflow:hidden;
  align-self:stretch;
  display:flex;
  min-height:280px;
  border-radius:var(--radius);
  border:1px solid rgba(255,255,255,.2);
  background:rgba(0,0,0,.35);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 24px 48px rgba(0,0,0,.18);
}
.page-home .hero .ai-tech-hero-video video{
  width:100%;
  height:100%;
  min-height:280px;
  object-fit:cover;
  display:block;
}
.page-home .hero .h1{
  font-family:var(--font);
  font-weight:var(--fw-h1);
  font-size:var(--fs-h1);
  line-height:var(--lh-h1);
  letter-spacing:-.03em;
  color:#fff;
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
  padding-bottom:0;
}
.page-home .hero .lead{
  color:rgba(255,255,255,.85);
  max-width:min(600px,100%);
  font-size:clamp(15px,1.1vw,16px);
  line-height:var(--lh-body);
}
.page-home .hero .eyebrow{
  color:var(--brand-wordmark-teal);
  letter-spacing:.18em;
  font-weight:700;
  font-size:clamp(10px,1vw,12px);
  text-transform:uppercase;
}
.page-home .hero .panel.graphic.hero-network{
  padding:18px;
}
.page-home .hero .graphic.hero-network::before,
.page-home .hero .graphic.hero-network::after{
  opacity:.22;
}
.page-home .hero-actions .btn--hero-outline{
  border:2px solid rgba(255,255,255,.4);
  background:transparent;
  color:#fff;
}
.page-home .hero-actions .btn--hero-outline:hover{
  background:rgba(255,255,255,.09);
  color:#fff;
  text-shadow:none;
  letter-spacing:0;
  border-color:rgba(255,255,255,.55);
}
.page-home .hero-actions .btn--hero-solid{
  background:#fff;
  color:var(--navy-heading);
  border-color:#fff;
  font-weight:700;
}
.page-home .hero-actions .btn--hero-solid:hover{
  background:#f1f5f9;
  color:var(--navy-heading);
  text-shadow:none;
  letter-spacing:0;
}

.page-home .home-intro-strip.section.light{
  background:#fff;
  padding:10px 0 8px;
  border-bottom:1px solid rgba(11,18,32,.06);
}
.page-home .home-intro-line{
  margin:0;
  text-align:center;
  font-size:clamp(15px,1.4vw,18px);
  font-weight:500;
  line-height:1.55;
  color:#000;
  letter-spacing:-.01em;
  max-width:min(1000px,100%);
  margin-left:auto;
  margin-right:auto;
}
.page-home .home-intro-line .home-intro-accent{
  color:#000;
  font-weight:700;
}

.page-home .home-services.section.light{
  background:var(--bg-light);
  padding-top:clamp(14px,2.2vw,22px);
  padding-bottom:var(--section-y);
}
@media (max-width:767px){
  .page-home .home-services.section.light{
    padding-top:12px;
    padding-bottom:var(--section-y-sm);
  }
}
.page-home .home-services .service.card{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto 1fr;
  column-gap:12px;
  row-gap:10px;
  align-items:start;
  background:#fff;
  border:1px solid rgba(0,210,255,.2);
  box-shadow:
    0 3px 0 rgba(0,210,255,.08),
    0 10px 28px rgba(15,23,42,.06),
    inset 0 1px 0 rgba(255,255,255,.95);
  color:var(--navy-heading);
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease);
}
.page-home .home-services .service.card .service-icon{
  grid-column:1;
  grid-row:1;
  margin-bottom:0;
  align-self:center;
}
.page-home .home-services .service.card h3{
  grid-column:2;
  grid-row:1;
  color:var(--navy-heading);
  min-height:0;
  margin:0;
  align-self:center;
}
.page-home .home-services .service.card p{
  grid-column:1 / -1;
  grid-row:2;
  margin:0;
  -webkit-line-clamp:4;
}
.page-home .home-services .service.card::after{
  display:none;
}
.page-home .home-services .service.card:hover{
  border-color:rgba(0,210,255,.45);
  box-shadow:
    0 3px 0 rgba(0,210,255,.15),
    0 16px 36px rgba(15,23,42,.1),
    0 0 28px -8px rgba(0,210,255,.15),
    inset 0 1px 0 rgba(255,255,255,.95);
}

.page-home .section.band.ai{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(14px,2vw,22px) 0 clamp(14px,2.2vw,24px);
  background:transparent;
  border-color:rgba(255,255,255,.06);
}
.page-home .section.band.ai::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background-color:var(--primary);
  background-image:
    var(--grad-ai),
    radial-gradient(800px 500px at 100% 0%, rgba(0,210,255,.2), transparent 55%),
    url("images/hero-network.png");
  background-size:cover,cover,cover;
  background-position:center;
  background-repeat:no-repeat;
}
.page-home .section.band.ai .container{
  position:relative;
  z-index:1;
}
.page-home .section.band.ai .band-inner{
  gap:clamp(14px,2.8vw,26px);
  align-items:start;
}
.page-home .section.band.ai .ai-band-intro{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:flex-start;
  text-align:left;
  width:100%;
}
.page-home .section.band.ai .ai-band-intro .eyebrow,
.page-home .section.band.ai .ai-band-intro .eyebrow h2{
  text-align:left;
  width:100%;
}
.page-home .section.band.ai .ai-band-intro .hero-actions{
  margin-top:12px;
}
.page-home .section.band.ai .eyebrow{
  color:var(--brand-wordmark-teal);
  letter-spacing:.18em;
  font-weight:700;
  font-size:clamp(10px,1vw,12px);
}
.page-home .ai-band-heading{
  font-family:var(--font);
  font-weight:var(--fw-h1);
  font-size:var(--fs-h1);
  color:rgba(255,255,255,.98);
  margin:12px 0 14px;
  line-height:var(--lh-h1);
  letter-spacing:-.03em;
}
.page-home .section.band.ai h2{
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
  color:rgba(255,255,255,.96);
}
.page-home .section.band.ai .sub{
  color:rgba(255,255,255,.74);
}
.page-home .section.band.ai .ai-solutions-grid{
  gap:9px 11px;
}
.page-home .section.band.ai .ai-solutions-grid > .card-link .card.ai-card{
  min-height:clamp(78px,8vw,104px);
}
.page-home .section.band.ai .ai-solutions-grid > .card-link{
  border-radius:12px;
}
.page-home .section.band.ai .grid-3 .card.ai-card{
  border-radius:12px;
  box-shadow:
    0 3px 0 rgba(34,211,238,.1),
    0 12px 32px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.06);
  background:
    linear-gradient(165deg,rgba(255,255,255,.07) 0%,transparent 40%),
    rgba(8,15,36,.7);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.page-home .section.band.ai .grid-3 .card.ai-card::before{
  border-radius:12px 12px 0 0;
}
.page-home .section.band.ai .ai-card-content{
  padding:8px 10px 9px;
  gap:6px;
}
.page-home .section.band.ai .ai-solutions-grid > .card-link:hover,
.page-home .section.band.ai .ai-solutions-grid > .card-link:focus-visible{
  transform:translateY(-2px);
}
.page-home .section.band.ai .grid-3 .card.ai-card:hover,
.page-home .section.band.ai .ai-solutions-grid > .card-link:focus-visible .card.ai-card{
  box-shadow:
    0 3px 0 rgba(34,211,238,.16),
    0 16px 36px rgba(0,0,0,.32),
    0 0 28px -10px rgba(34,211,238,.12),
    inset 0 1px 0 rgba(255,255,255,.08);
  background:
    linear-gradient(165deg,rgba(255,255,255,.09) 0%,transparent 42%),
    rgba(10,18,42,.76);
}

.page-home .section.light.insights{
  background:#fff;
}
.page-home .section.light.why-choose{
  background:linear-gradient(180deg,#f3f6f9 0%,#fff 42%,#f5f8fb 100%);
}
.page-home .section.light.insights .card{
  background:#fff;
  color:var(--navy-heading);
}
.page-home .section.light.insights .card h3{
  color:var(--navy-heading);
}
.page-home .section.light.insights .card:hover{
  background:#fff;
  transform:translateY(-2px);
}
.page-home .section.light.insights .card:hover h3{
  background:linear-gradient(90deg,var(--accent),#4dc4c4);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.page-home .why-choose-row.card-link:hover .why-choose-body h3,
.page-home .why-choose-row.card-link:focus-visible .why-choose-body h3{
  background:linear-gradient(90deg,#0369a1,#0891b2);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.page-home .section.light.insights:not(.why-choose) .card{
  padding:14px;
  gap:8px;
  border:1px solid rgba(34,211,238,.22);
  box-shadow:
    0 3px 0 rgba(34,211,238,.1),
    0 10px 28px rgba(15,23,42,.07),
    inset 0 1px 0 rgba(255,255,255,.95);
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease);
}
.page-home .section.light.insights:not(.why-choose) .card:hover{
  border-color:rgba(34,211,238,.38);
  box-shadow:
    0 3px 0 rgba(34,211,238,.18),
    0 14px 34px rgba(15,23,42,.09),
    0 0 28px -8px rgba(34,211,238,.12),
    inset 0 1px 0 rgba(255,255,255,.95);
}
.page-home .section.light.insights:not(.why-choose) .thumb{
  /* Make the image span full card width (no white inset) */
  align-self:stretch;
  width:100%;
  height:130px;
  margin:0 0 10px;
  border-radius:14px 14px 0 0;
  border:none;
  overflow:hidden;
}
.page-home .section.light.insights:not(.why-choose) .thumb img{
  transition:transform .28s var(--ease);
}
.page-home .section.light.insights:not(.why-choose) .card-link:hover .thumb img,
.page-home .section.light.insights:not(.why-choose) .card-link:focus-visible .thumb img{
  transform:scale(1.04);
}

/* Why Choose Us — full container width (matches Insights & CTA above) */
.page-home .why-choose-list{
  display:flex;
  flex-direction:column;
  gap:14px;
  width:100%;
}
.page-home .why-choose-row.card-link{
  display:block;
  text-decoration:none;
  border-radius:calc(var(--radius) + 2px);
  transition:transform .22s var(--ease),filter .22s var(--ease);
}
.page-home .why-choose-row.card-link:hover{
  transform:translateY(-3px);
}
.page-home .why-choose-row.card-link:focus-visible{
  outline:3px solid rgba(0,210,255,.45);
  outline-offset:3px;
}
.page-home .why-choose-row.card-link > .why-choose-card{
  height:auto;
}
.page-home .section.light.why-choose .why-choose-card.card{
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px 20px;
  align-items:center;
  padding:24px 20px;
  overflow:visible;
  min-height:0;
  background:#fff;
  border:1px solid rgba(0,210,255,.2);
  box-shadow:var(--shadow-card);
  border-radius:var(--radius);
  transition:box-shadow var(--ease-ui),border-color var(--ease-ui),transform var(--ease-ui);
}
.page-home .why-choose-row.card-link:hover .why-choose-card.card{
  border-color:rgba(0,210,255,.4);
  box-shadow:var(--shadow-card-hover);
  transform:translateY(-4px);
}
.page-home .why-choose-row .why-choose-card.card:hover{
  transform:none;
}
/* Odd rows: text left, image right */
.page-home .why-choose-row:nth-child(odd) .why-choose-media{
  order:2;
}
.page-home .why-choose-row:nth-child(odd) .why-choose-body{
  order:1;
  padding:4px 10px 4px 0;
}
/* Even rows: image left, text right */
.page-home .why-choose-row:nth-child(even) .why-choose-card.card{
  grid-template-columns:auto 1fr;
  padding:12px 18px 12px 14px;
}
.page-home .why-choose-row:nth-child(even) .why-choose-media{
  order:1;
}
.page-home .why-choose-row:nth-child(even) .why-choose-body{
  order:2;
  padding:4px 0 4px 10px;
  align-items:flex-start;
  text-align:left;
}
.page-home .why-choose-row:nth-child(even) .why-choose-body h3::before{
  margin-left:0;
}
.page-home .why-choose-media{
  order:2;
  position:relative;
  width:min(220px,26vw);
  max-width:220px;
  flex-shrink:0;
  border-radius:12px;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(25,182,168,.12),rgba(11,18,32,.06));
  box-shadow:0 6px 18px rgba(15,23,42,.1),inset 0 0 0 1px rgba(255,255,255,.35);
}
.page-home .why-choose-media::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(11,18,32,.06);
  pointer-events:none;
}
.page-home .why-choose-media img{
  width:100%;
  aspect-ratio:4/3;
  height:auto;
  max-height:118px;
  min-height:0;
  object-fit:cover;
  display:block;
  border-radius:12px;
  transition:transform .28s var(--ease);
}
.page-home .why-choose-media video{
  width:100%;
  aspect-ratio:4/3;
  height:auto;
  max-height:118px;
  min-height:0;
  object-fit:cover;
  display:block;
  border-radius:12px;
  transition:transform .28s var(--ease);
}
.page-home .why-choose-row.card-link:hover .why-choose-media img,
.page-home .why-choose-row.card-link:hover .why-choose-media video{
  transform:scale(1.04);
}
/* Service catalog, Insights themes & AI & Tech: taller media tile next to longer descriptions */
.page-home #catalog .why-choose-media img,
.page-home #insights-themes .why-choose-media img,
.page-home #ai-tech-capabilities .why-choose-media img,
.page-home #ai-tech-capabilities .why-choose-media video{
  max-height:min(168px,34vw);
}
.page-home .why-choose-body{
  order:1;
  min-width:0;
  padding:4px 10px 4px 0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
  text-align:left;
}
.page-home .why-choose-body h3::before{
  content:"";
  display:block;
  width:28px;
  height:2px;
  border-radius:2px;
  background:linear-gradient(90deg,var(--accent),#5ecfcf);
  margin-bottom:6px;
}

/* Services page: remove the accent line above each point heading */
.page-services .why-choose-body h3::before{
  display:none;
}

/* AI & Tech page: remove the accent line above each point heading */
.page-ai-tech .why-choose-body h3::before{
  display:none;
}

/* Insights page: remove the accent line above each point heading */
.page-insights .why-choose-body h3::before{
  display:none;
}
.page-home .why-choose-body .insights-readmore{
  margin-top:4px;
  padding-top:0;
  font-size:var(--home-card-body-size);
  line-height:var(--home-card-body-lh);
  font-weight:700;
  color:#0369a1;
}
@media (max-width:720px){
  .page-home .why-choose-card.card,
  .page-home .why-choose-row:nth-child(even) .why-choose-card.card{
    grid-template-columns:1fr;
    gap:10px;
    padding:12px;
  }
  .page-home .why-choose-row .why-choose-body{
    order:1;
    align-items:flex-start;
    text-align:left;
    padding:0;
  }
  .page-home .why-choose-row .why-choose-body h3::before{
    margin-left:0;
  }
  .page-home .why-choose-row .why-choose-media{
    order:2;
  }
  .page-home .why-choose-media{
    width:100%;
    max-width:min(100%,300px);
    margin:0 auto;
  }
  .page-home .why-choose-media img,
  .page-home .why-choose-media video{
    max-height:150px;
    aspect-ratio:16/9;
  }
}

.page-home .insights-readmore{
  margin-top:auto;
  padding-top:6px;
  font-size:var(--fs-small);
  font-weight:600;
  color:var(--accent);
}
.page-home .card-link:hover .insights-readmore{text-decoration:underline}

.page-home .callout.template-cta{
  background:var(--grad-cta);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius);
  padding:var(--spacing) clamp(16px,4vw,32px);
  text-align:center;
  flex-direction:column;
  gap:var(--spacing);
}
.page-home .callout.template-cta h2{
  font-family:var(--font);
  font-weight:var(--fw-h2);
  font-size:var(--fs-h2);
  color:#fff;
  margin:0;
}
.page-home .callout.template-cta p{
  color:rgba(255,255,255,.7);
  margin:0 auto;
  line-height:1.65;
  max-width:100%;
}
@media (min-width:1100px){
  .page-home .callout.template-cta p{
    white-space:nowrap;
  }
}

.page-home .home-why-dark + .our-process.template-process{
  border-top:none;
}
.page-home .our-process.template-process{
  background:linear-gradient(180deg, var(--primary) 0%, #020a14 100%);
  padding:24px 0 32px;
  border-top:1px solid rgba(255,255,255,.07);
}
.page-home .our-process.template-process .section-header h2{
  font-family:var(--font-serif);
  font-weight:800;
  font-size:clamp(24px,2.6vw,32px);
  color:#fff;
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
}
.page-home .our-process.template-process .section-header .sub{
  color:rgba(255,255,255,.72);
}

/* Center headings + subtitles: Insights, Why Choose Us, Our Proven Process */
.page-home .home-insights .section-header,
.page-home .our-process.template-process .section-header{
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:12px;
}
.page-home .home-insights .section-header > div,
.page-home .our-process.template-process .section-header > div{
  text-align:center;
  width:100%;
}
.page-home .home-insights .section-header h2,
.page-home .our-process.template-process .section-header h2{
  text-align:center;
}
.page-home .home-insights .section-header .sub,
.page-home .our-process.template-process .section-header .sub{
  margin-left:auto;
  margin-right:auto;
}

.page-home .process-flow{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:4px;
  flex-wrap:wrap;
  margin:20px 0 0;
  padding:0;
  list-style:none;
  position:relative;
}
.page-home .process-flow::before{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:26px;
  height:1px;
  background:rgba(255,255,255,.22);
  z-index:0;
  pointer-events:none;
}
@media (max-width:980px){
  .page-home .process-flow::before{display:none}
}
.page-home .process-flow-step{
  position:relative;
  z-index:1;
  flex:1 1 140px;
  max-width:200px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:12px;
}
.page-home .process-flow-num{
  width:52px;
  height:52px;
  border-radius:999px;
  background:var(--brand-wordmark-teal);
  color:#fff;
  font-family:"Nunito",var(--font);
  font-weight:800;
  font-size:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 24px rgba(0,210,255,.35);
}
.page-home .process-flow-text{
  font-size:13px;
  line-height:1.45;
  color:rgba(255,255,255,.82);
  margin:0;
}
.page-home .process-flow-text strong{
  display:block;
  color:rgba(255,255,255,.96);
  font-size:14px;
  font-weight:800;
  font-family:"Nunito",var(--font);
  letter-spacing:.02em;
  margin-bottom:4px;
}
.page-home .process-flow-arrow{
  flex:0 0 auto;
  color:var(--brand-wordmark-teal);
  font-size:22px;
  line-height:52px;
  font-weight:300;
  padding:0 2px;
  margin-top:0;
  user-select:none;
  position:relative;
  z-index:1;
}

/* Inner pages: light content bands match home “Our Services” styling */
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust){
  background:#f8fafc;
  padding-top:36px;
  padding-bottom:40px;
  border-top:1px solid rgba(11,18,32,.06);
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) .section-header h2{
  font-family:var(--font-serif);
  font-weight:800;
  font-size:var(--home-section-h2-size);
  line-height:var(--home-section-h2-lh);
  letter-spacing:-.02em;
  margin:0;
  color:var(--navy-heading);
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) .section-header .sub{
  margin-top:6px;
  font-size:var(--home-section-sub-size);
  line-height:var(--home-section-sub-lh);
  max-width:var(--home-section-sub-max);
  color:rgba(11,18,32,.65);
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) .card{
  border:1px solid rgba(34,211,238,.22);
  box-shadow:
    0 3px 0 rgba(34,211,238,.1),
    0 10px 28px rgba(15,23,42,.06),
    inset 0 1px 0 rgba(255,255,255,.95);
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease);
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) .card:hover{
  border-color:rgba(34,211,238,.38);
  box-shadow:
    0 3px 0 rgba(34,211,238,.18),
    0 16px 36px rgba(15,23,42,.1),
    0 0 28px -8px rgba(34,211,238,.12),
    inset 0 1px 0 rgba(255,255,255,.95);
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) .card h3{
  font-family:var(--font-serif);
  font-weight:800;
  font-size:var(--home-card-h3-size);
  letter-spacing:-.02em;
  line-height:1.3;
  color:var(--navy-heading);
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) .card p{
  font-size:var(--home-card-body-size);
  line-height:var(--home-card-body-lh);
  color:rgba(11,18,32,.62);
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) .panel:not(.callout){
  background:#fff;
  border:1px solid rgba(11,18,32,.1);
  box-shadow:0 10px 28px rgba(15,23,42,.08);
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) input,
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) textarea{
  background:rgba(11,18,32,.04);
  border:1px solid rgba(11,18,32,.14);
  color:#0b1220;
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) label{
  color:rgba(11,18,32,.72);
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) .mini{
  color:rgba(11,18,32,.68);
}
.page-home main > .section.light:not(.home-services):not(.insights):not(.why-choose):not(.home-intro-strip):not(.home-trust) .muted{
  color:rgba(11,18,32,.62);
}

/* Home hero — lead copy */
#home-hero .lead{
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
}

/* About page — hero description */
#about-intro .lead{
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
}

/* About page — Rajat profile (text left, photo right) */
.rajat-profile-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);
  gap:24px 30px;
  align-items:start;
}
.rajat-profile-text{
  min-width:0;
  max-width:92ch;
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
}
.rajat-profile-media{
  justify-self:end;
  align-self:start;
  width:min(360px, 100%);
}
.rajat-profile-media img{
  width:100%;
  height:auto;
  display:block;
  border-radius:18px;
  border:1px solid rgba(11,18,32,.12);
  box-shadow:0 10px 26px rgba(15,23,42,.10);
}
@media (max-width: 920px){
  .rajat-profile-grid{ grid-template-columns:1fr; }
  .rajat-profile-media{ justify-self:start; width:min(420px, 100%); }
}

/* Contact page — form + info columns */
.contact-layout{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:32px 40px;
  align-items:start;
}
.contact-layout__form,
.contact-layout__info{
  min-width:0;
}
.contact-layout .section-header{
  margin-bottom:16px;
}
.contact-layout__info .section-header h6{
  margin:4px 0 0;
  font-weight:500;
  font-size:13px;
  line-height:1.35;
  color:rgba(11,18,32,.72);
}
.contact-form-panel,
.contact-info-panel{
  padding:20px 22px;
}
.contact-form{
  grid-template-columns:1fr;
}
.contact-info__label{
  display:block;
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(11,18,32,.5);
  margin:18px 0 10px;
}
.contact-info__label:first-child{
  margin-top:0;
}
.contact-info__block{
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:flex-start;
}
.contact-info__block a{
  color:#0369a1;
  font-size:15px;
  font-weight:600;
  text-decoration:none;
}
.contact-info__block a:hover{
  text-decoration:underline;
}
.contact-info__address{
  margin:0;
  font-size:14px;
  line-height:1.55;
  color:rgba(11,18,32,.72);
}
.contact-info__social{
  margin-top:4px;
}
.contact-info__social a{
  display:inline-flex;
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  border:1px solid rgba(11,18,32,.12);
  background:rgba(11,18,32,.04);
  color:rgba(11,18,32,.78);
  text-decoration:none;
  transition:background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease);
}
.contact-info__social a:hover{
  background:rgba(11,18,32,.08);
  border-color:rgba(11,18,32,.18);
  color:var(--navy-heading);
}
.contact-info__social svg{
  width:18px;
  height:18px;
}
@media (max-width: 920px){
  .contact-layout{
    grid-template-columns:1fr;
  }
}

/* About page — process flow diagram */
.about-process-flow{
  margin:32px 0 0;
  position:relative;
  padding-top:4px;
}
.about-process-linear{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:0 0 16px;
}
.about-process-linear__node{
  width:40px;
  height:40px;
  border-radius:999px;
  background:linear-gradient(145deg,var(--brand-wordmark-teal),#14a89d);
  color:#fff;
  font-family:"Nunito",var(--font);
  font-weight:800;
  font-size:15px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 6px 18px rgba(25,182,168,.32),0 0 0 4px #f8fafc;
}
.about-process-linear__arrow{
  position:relative;
  width:min(54px,6vw);
  height:3px;
  border-radius:2px;
  background:linear-gradient(90deg,rgba(25,182,168,.25),var(--brand-wordmark-teal));
  opacity:.95;
}
.about-process-linear__arrow::after{
  content:"";
  position:absolute;
  right:-2px;
  top:50%;
  transform:translateY(-50%);
  border:6px solid transparent;
  border-left-color:var(--brand-wordmark-teal);
}
.about-process-flow__rail{
  display:none;
  position:absolute;
  left:6%;
  right:6%;
  top:27px;
  height:4px;
  border-radius:4px;
  background:linear-gradient(90deg,rgba(25,182,168,.2),rgba(25,182,168,.85),rgba(25,182,168,.2));
  pointer-events:none;
  z-index:0;
}
.about-process-flow__steps{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:flex-start;
  gap:6px 2px;
  position:relative;
  z-index:1;
  list-style:none;
  margin:0;
  padding:0;
}
.about-process-step{
  flex:1 1 108px;
  max-width:168px;
  min-width:96px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:12px;
}
.about-process-step__badge{
  width:44px;
  height:44px;
  border-radius:999px;
  background:linear-gradient(145deg,var(--brand-wordmark-teal),#14a89d);
  color:#fff;
  font-family:"Nunito",var(--font);
  font-weight:800;
  font-size:16px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 6px 20px rgba(25,182,168,.34),0 0 0 4px #f8fafc;
}
.about-process-step__num{
  display:none;
}
.about-process-step__card{
  background:#fff;
  border:1px solid rgba(34,211,238,.22);
  border-radius:14px;
  padding:12px 12px 14px;
  width:100%;
  box-shadow:
    0 3px 0 rgba(34,211,238,.1),
    0 8px 22px rgba(15,23,42,.06);
  transition:transform .22s var(--ease),box-shadow .22s var(--ease);
}
.about-process-step:hover .about-process-step__card{
  transform:translateY(-3px);
  box-shadow:
    0 3px 0 rgba(34,211,238,.2),
    0 14px 32px rgba(15,23,42,.1),
    0 0 24px -8px rgba(25,182,168,.15);
}
.about-process-step__title{
  display:block;
  font-family:var(--font-serif);
  font-weight:800;
  font-size:15px;
  color:var(--navy-heading);
  letter-spacing:-.02em;
  margin:0 0 6px;
}
.about-process-step__card p{
  margin:0;
  font-size:13px;
  line-height:1.5;
  color:rgba(11,18,32,.62);
}
.about-process-connector{
  display:none; /* enabled on desktop below */
  flex:0 0 48px;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  height:44px; /* match badge height */
  margin-top:0; /* badge already sits above card */
}
.about-process-connector__line{
  flex:1;
  width:100%;
  height:3px;
  max-width:100%;
  border-radius:2px;
  background:linear-gradient(90deg,rgba(25,182,168,.25),var(--brand-wordmark-teal));
  position:relative;
  display:none;
}
.about-process-connector__line{
  display:block;
  opacity:.95;
}
.about-process-connector__line::after{
  content:"";
  position:absolute;
  right:-2px;
  top:50%;
  transform:translateY(-50%);
  border:6px solid transparent;
  border-left-color:var(--brand-wordmark-teal);
}
.about-process-connector__line::after{
  content:"";
  position:absolute;
  right:-2px;
  top:50%;
  transform:translateY(-50%);
  border:5px solid transparent;
  border-left-color:var(--brand-wordmark-teal);
}
.about-process-outcome{
  margin-top:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  flex-wrap:wrap;
  padding:20px 24px;
  border-radius:calc(var(--radius) + 2px);
  background:linear-gradient(135deg,rgba(5,13,24,.03),rgba(25,182,168,.1));
  border:1px solid rgba(25,182,168,.38);
  box-shadow:0 10px 32px rgba(25,182,168,.14),inset 0 1px 0 rgba(255,255,255,.6);
}
.about-process-outcome__icon{
  width:52px;
  height:52px;
  border-radius:16px;
  background:linear-gradient(145deg,var(--brand-wordmark-teal),#14a89d);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  box-shadow:0 8px 22px rgba(25,182,168,.35);
}
.about-process-outcome__icon svg{width:28px;height:28px}
.about-process-outcome__body{
  text-align:left;
  max-width:52ch;
}
.about-process-outcome__title{
  font-family:var(--font-serif);
  font-weight:800;
  font-size:clamp(16px,1.6vw,18px);
  color:var(--navy-heading);
  display:block;
  margin:0 0 6px;
  letter-spacing:-.02em;
}
.about-process-outcome__body p{
  margin:0;
  font-size:14px;
  line-height:1.55;
  color:rgba(11,18,32,.68);
}
@media (min-width: 901px){
  .about-process-flow__rail{display:block;}
  .about-process-flow__steps{
    flex-wrap:nowrap;
    gap:0;
  }
  .about-process-connector{
    display:flex;
  }
}
@media (max-width: 900px){
  .about-process-flow__rail{display:none;}
  .about-process-flow__steps{
    flex-direction:column;
    align-items:stretch;
    max-width:440px;
    margin-left:auto;
    margin-right:auto;
    gap:0;
  }
  .about-process-connector{
    width:3px;
    height:18px;
    min-width:0;
    max-width:none;
    flex:0 0 auto;
    margin:0 auto;
    padding-top:0;
    height:auto;
    align-self:center;
  }
  .about-process-connector__line{
    width:3px;
    height:18px;
    background:linear-gradient(180deg,var(--brand-wordmark-teal),rgba(25,182,168,.25));
  }
  .about-process-connector__line::after{
    left:50%;
    right:auto;
    top:auto;
    bottom:-2px;
    transform:translateX(-50%);
    border:5px solid transparent;
    border-top-color:var(--brand-wordmark-teal);
    border-left-color:transparent;
  }
  .about-process-step{
    flex-direction:row;
    align-items:flex-start;
    text-align:left;
    max-width:none;
    min-width:0;
    gap:14px;
  }
  .about-process-step__num{
    flex-shrink:0;
    margin-top:4px;
  }
  .about-process-step__card{
    flex:1;
    min-width:0;
  }
}

.page-home .footer{
  /* Match "Our Proven Process" section background */
  background:linear-gradient(180deg, var(--primary) 0%, #020a14 100%);
  margin-top:0;
  border-top-color:rgba(255,255,255,.1);
  padding-top:40px;
  padding-bottom:20px;
}
.page-home .footer-grid--wide{
  display:grid;
  /* 4 columns: Brand, Quick links, Contact, Follow us */
  grid-template-columns:minmax(180px,1.2fr) repeat(3,minmax(0,1fr));
  gap:28px 44px;
  align-items:start;
}
.page-home .footer-col-title{
  display:block;
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,255,255,.45);
  margin:0 0 14px;
}
.page-home .footer-links{
  display:flex;
  flex-direction:column;
  gap:10px;
  align-items:flex-start;
}
.page-home .footer-links a{
  color:rgba(255,255,255,.72);
  text-decoration:none;font-size:14px;
}
.page-home .footer-links a:hover{color:#fff;text-decoration:underline}
.footer .social-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.footer .social-row a{
  display:inline-flex;
  width:38px;height:38px;
  align-items:center;justify-content:center;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.85);
  text-decoration:none;
}
.footer .social-row a:hover{background:rgba(255,255,255,.1);color:#fff}
.footer .social-row svg{width:18px;height:18px;opacity:.9}

/* Footer: match Contact page brand icon colors */
.footer .social-row .social-link{
  --social: rgba(255,255,255,.92);
  color: var(--social);
}
.footer .social-row .social-link--linkedin{ --social:#0A66C2; }
.footer .social-row .social-link--x{ --social:#ffffff; }
.footer .social-row .social-link--youtube{ --social:#FF0000; }
.footer .social-row .social-link--instagram{ --social:#E1306C; }
.page-home .footer-bar{
  margin-top:36px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.1);
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-size:12px;
  color:rgba(255,255,255,.45);
}
.page-home .footer-bar a{color:rgba(255,255,255,.55);text-decoration:none}
.page-home .footer-bar a:hover{color:#fff;text-decoration:underline}

@media (max-width: 980px){
  .page-home .footer-grid--wide{
    grid-template-columns:repeat(2,1fr);
  }
  .page-home .process-flow-arrow{
    display:inline-block;
    font-size:18px;
    line-height:1;
    padding:0 4px;
    opacity:.95;
  }
  .page-home .process-flow{gap:16px}
}
@media (max-width: 600px){
  .page-home .footer-grid--wide{grid-template-columns:1fr}
}

/* Home: IgniteUp top-left + header type scale (nav = body, CTA = btn, wordmark larger) */
.page-home .header .container{
  padding-left:calc(var(--container-pad) + max(0px, env(safe-area-inset-left, 0px)));
  padding-right:var(--container-pad);
}
.page-home .header .navlinks a,
.page-home .header .nav-dropdown > summary{
  font-size:var(--fs-body);
  font-weight:500;
}
.page-home .header .nav-cta .btn{
  font-size:var(--fs-btn);
}
.page-home .header .mobile-nav summary{
  font-size:var(--fs-body);
}
.page-home .nav--home-mock{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:16px;
  width:100%;
}
.page-home .nav--home-mock .brand{
  grid-column:1;
  justify-self:start;
}
.page-home .nav--home-mock .navlinks{
  justify-self:center;
  grid-column:2;
}
.page-home .nav--home-mock .nav-cta{
  justify-self:end;
  grid-column:3;
}
.brand--with-flame{
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.brand-flame{
  display:flex;
  flex-shrink:0;
  filter:drop-shadow(0 0 12px rgba(0,210,255,.45));
}
@media (max-width:860px){
  .page-home .nav--home-mock{
    display:flex;
    justify-content:space-between;
    align-items:center;
  }
  .page-home .nav--home-mock .navlinks,
  .page-home .nav--home-mock .nav-cta{display:none}
}
.page-home .nav-dropdown{position:relative}
.page-home .nav-dropdown > summary{
  list-style:none;
  cursor:pointer;
  color:rgba(255,255,255,.88);
  padding:6px 12px;
  border-radius:8px;
  border:1px solid transparent;
  font-size:var(--fs-body);
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:8px;
  transition:color var(--ease-ui),background var(--ease-ui),border-color var(--ease-ui);
}
.page-home .nav-dropdown > summary::-webkit-details-marker{display:none}
.page-home .nav-dropdown > summary::after{
  content:"";
  width:8px;
  height:8px;
  display:inline-block;
  border-right:2px solid rgba(255,255,255,.72);
  border-bottom:2px solid rgba(255,255,255,.72);
  transform:rotate(45deg);
  margin-top:-2px;
  transition:transform var(--ease-ui),border-color var(--ease-ui),opacity var(--ease-ui);
  opacity:.95;
}
.page-home .nav-dropdown > summary:hover{
  color:#fff;
  background:rgba(0,210,255,.14);
  border-color:rgba(0,210,255,.28);
}
.page-home .nav-dropdown > summary:hover::after{
  border-right-color:#fff;
  border-bottom-color:#fff;
}
.page-home .nav-dropdown[open] > summary{
  color:#fff;
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.18);
}
.page-home .nav-dropdown[open] > summary::after{
  transform:rotate(-135deg);
  margin-top:2px;
}
.nav-dropdown-panel{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  top:calc(100% + 8px);
  min-width:232px;
  padding:10px;
  background:#fff;
  border:1px solid rgba(10,31,68,.1);
  border-radius:12px;
  box-shadow:0 20px 40px rgba(0,0,0,.18);
  display:grid;
  gap:2px;
  z-index:300;
}
.nav-dropdown-panel a{
  display:block;
  padding:10px 12px;
  border-radius:8px;
  color:#000;
  text-decoration:none;
  font-size:14px;
}
.header .nav-dropdown-panel a{
  color:#000;
}
.nav-dropdown-panel a:hover{
  background:rgba(0,210,255,.08);
  color:#000;
  text-decoration:none;
}
.header .nav-dropdown-panel a:hover{
  color:#000;
}

.home-hero-accent{color:var(--accent)}
.page-home .hero-actions .btn--hero-primary-blue{
  background:var(--btn-navy-grad);
  color:#fff;
  border:1px solid rgba(255,255,255,.25);
  font-weight:600;
  box-shadow:var(--btn-navy-shadow);
}
.page-home .hero-actions .btn--hero-primary-blue:hover{
  background:var(--btn-navy-grad-hover);
  border-color:rgba(255,255,255,.35);
  color:#fff;
  text-decoration:none;
  box-shadow:var(--btn-navy-shadow-hover);
}

.page-home .home-services-header{
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:8px;
}
.page-home .home-services .section-header{
  margin-bottom:30px;
}
.page-home .home-services-header > div{width:100%}
.page-home .home-services-header .sub{margin:0 auto;max-width:52ch}
.page-home .home-services-header .btn{margin-top:4px}
.page-home .home-services-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:18px;
}
.page-home .home-services-grid .card-link{
  flex:1 1 calc(25% - 18px);
  min-width:240px;
  max-width:300px;
}

.page-home .home-insights-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  align-items:stretch;
}
@media (max-width: 980px){
  .page-home .home-insights-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .page-home .home-insights-grid{ grid-template-columns:1fr; }
}

.page-home .home-ai-split-section .home-ai-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(14px,2.8vw,28px);
  align-items:center;
}
.page-home .home-ai-copy{
  padding-left:18px;
  border-left:3px solid rgba(0,212,255,.4);
  border-radius:2px 0 0 2px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}
.page-home .home-ai-h2{
  font-size:var(--fs-h2);
  font-weight:var(--fw-h2);
  color:rgba(255,255,255,.98);
  margin:0 0 6px;
  line-height:1.12;
  letter-spacing:-.03em;
  text-shadow:0 2px 20px rgba(0,0,0,.2);
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
}
.page-home .home-ai-accent{
  color:var(--accent);
  text-shadow:0 0 28px rgba(0,212,255,.35);
}
.page-home .home-ai-copy .sub{
  margin:0 0 12px;
  max-width:48ch;
}
.page-home .home-ai-copy .hero-actions{
  margin-top:8px;
}
.page-home .home-ai-checklist{
  list-style:none;
  margin:0 0 12px;
  padding:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px 18px;
}
.page-home .home-ai-checklist li{
  position:relative;
  padding-left:22px;
  color:rgba(255,255,255,.9);
  font-size:14px;
  line-height:1.32;
}
.page-home .home-ai-checklist li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--accent);
  font-weight:700;
  font-size:14px;
  line-height:1.32;
}
.page-home .home-ai-visual{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
}
/* Six floating glass cards (scoped — matches user snippet; not global body/.container) */
.page-home .home-ai-scene{
  position:relative;
  width:100%;
  max-width:min(640px,100%);
  border-radius:16px;
  overflow:visible;
  isolation:isolate;
  font-family:"Segoe UI",system-ui,sans-serif;
  background:transparent;
  box-shadow:none;
}
.page-home .home-ai-split-section .home-ai-scene{
  /* Keep visuals inside right column (prevents overlap with copy) */
  width:100%;
  max-width:min(720px, 100%);
  margin-left:0;
  margin-right:0;
  padding-left:0;
  padding-right:0;
}
.page-home .home-ai-scene::before{
  display:none;
}
.page-home .home-ai-float-stage{
  position:relative;
  width:100%;
  height:auto;
  min-height:0;
  /* 2×3 matrix (no overlap) */
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-flow:row;
  grid-auto-columns:unset;
  grid-auto-rows:minmax(96px, auto);
  gap:14px 18px;
  align-items:stretch;
  justify-content:stretch;
  justify-items:stretch;
  z-index:1;
  overflow-x:visible;
  overflow-y:visible;
  box-sizing:border-box;
  padding-left:0;
  padding-right:0;
  padding-bottom:0;
  scroll-snap-type:none;
}
.page-home .home-ai-float-card{
  scroll-snap-align:unset;
}
.page-home .home-ai-float-card{
  position:relative;
  width:100%;
  min-height:92px;
  padding:10px 14px;
  border-radius:12px;
  color:#fff;
  text-decoration:none;
  box-sizing:border-box;
  background:transparent;
  border:1px solid rgba(255,255,255,.28);
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  transition:transform .4s ease,border-color .35s ease;
  z-index:1;
  cursor:pointer;
}
.page-home .home-ai-float-card:hover,
.page-home .home-ai-float-card:focus-visible{
  border-color:rgba(0,212,255,.55);
}
.page-home .home-ai-float-card:focus-visible{
  outline:2px solid rgba(0,212,255,.65);
  outline-offset:3px;
}
.page-home .home-ai-float-card:hover{
  animation:none;
  transform:translateY(-8px) scale(1.04) rotateX(4deg);
  z-index:10;
  box-shadow:none;
  text-decoration:none;
  color:#fff;
}
.page-home .home-ai-float-card:hover .home-ai-float-card-heading{
  text-shadow:0 0 20px rgba(0,212,255,.45);
}
@keyframes home-ai-float-A{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}
@keyframes home-ai-float-B{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(10px)}
}
@keyframes home-ai-float-C{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
.page-home .home-ai-float-card--1,
.page-home .home-ai-float-card--2,
.page-home .home-ai-float-card--3,
.page-home .home-ai-float-card--4,
.page-home .home-ai-float-card--5,
.page-home .home-ai-float-card--6{
  /* Subtle float while staying in grid */
  animation:home-ai-grid-float 6s ease-in-out infinite;
}

@keyframes home-ai-grid-float{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-6px); }
}

/* Slightly different timing per card so they don't move together */
.page-home .home-ai-float-card--1{ animation-duration:5.6s; animation-delay:-0.8s; }
.page-home .home-ai-float-card--2{ animation-duration:6.4s; animation-delay:-2.1s; }
.page-home .home-ai-float-card--3{ animation-duration:5.9s; animation-delay:-1.4s; }
.page-home .home-ai-float-card--4{ animation-duration:6.7s; animation-delay:-2.8s; }
.page-home .home-ai-float-card--5{ animation-duration:6.1s; animation-delay:-1.9s; }
.page-home .home-ai-float-card--6{ animation-duration:6.9s; animation-delay:-3.2s; }
.page-home .home-ai-float-card-heading{
  margin:0 0 5px;
  font-family:var(--font);
  font-size:var(--home-card-h3-size);
  font-weight:var(--fw-h3);
  color:#00d4ff;
  line-height:var(--lh-h3);
  letter-spacing:-.02em;
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
}
.page-home .home-ai-float-card-text{
  margin:0;
  font-family:var(--font);
  font-size:var(--home-card-body-size);
  line-height:var(--home-card-body-lh);
  opacity:.88;
  color:rgba(255,255,255,.93);
}
.page-home .home-ai-float-graph{
  margin:6px 0;
  height:16px;
  position:relative;
  overflow:hidden;
  border-radius:4px;
}
.page-home .home-ai-float-graph::before{
  content:"";
  position:absolute;
  top:50%;
  left:0;
  width:200%;
  height:2px;
  margin-top:-1px;
  background:linear-gradient(90deg,transparent,#00d4ff,transparent);
  animation:home-ai-line-move 2s linear infinite;
}
@keyframes home-ai-line-move{
  0%{transform:translateX(-100%)}
  100%{transform:translateX(100%)}
}
@media (max-width:900px){
  .page-home .home-ai-split-section .home-ai-grid{grid-template-columns:1fr}
  .page-home .home-ai-checklist{grid-template-columns:1fr}
  .page-home .home-ai-copy{
    padding-left:0;
    border-left:none;
    box-shadow:none;
    padding-top:4px;
    border-top:1px solid rgba(0,212,255,.2);
  }
  .page-home .home-ai-scene{
    margin-left:auto;
    margin-right:auto;
    max-width:min(520px,100%);
  }
  .page-home .home-ai-float-stage{
    grid-template-columns:repeat(2,minmax(0,260px));
    justify-content:center;
    padding-left:12px;
    padding-right:12px;
  }
}
@media (max-width:640px){
  .page-home .home-ai-float-stage{
    grid-template-columns:repeat(2,minmax(0,260px));
    justify-content:start;
    gap:12px 14px;
    padding-left:12px;
    padding-right:12px;
  }
  .page-home .home-ai-float-card{
    width:100%;
    min-height:92px;
    padding:10px 11px;
  }
}

/* AI carousel controls */
.page-home .home-ai-carousel{
  display:flex;
  align-items:center;
  gap:12px;
}
.page-home .home-ai-scroll-btn{display:none;}
.page-home .home-ai-scroll-btn{
  flex-shrink:0;
  width:44px;
  height:44px;
  padding:0;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.92);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(0,0,0,.22);
  transition:background .2s var(--ease-ui),border-color .2s var(--ease-ui),transform .2s var(--ease-ui),opacity .2s var(--ease-ui);
}
.page-home .home-ai-scroll-btn:hover:not(:disabled){
  background:rgba(255,255,255,.14);
  border-color:rgba(0,210,255,.35);
  transform:translateY(-1px);
}
.page-home .home-ai-scroll-btn:disabled{
  opacity:.35;
  cursor:not-allowed;
  box-shadow:none;
  transform:none;
}
.page-home .home-ai-scroll-btn:focus-visible{
  outline:3px solid rgba(0,210,255,.45);
  outline-offset:2px;
}
@media (max-width:400px){
  .page-home .home-ai-float-card{
    width:min(152px,46vw);
    min-height:88px;
    padding:9px 10px;
  }
  .page-home .home-ai-float-card--5{bottom:14%;left:1%}
  .page-home .home-ai-float-card--6{bottom:2%;right:1%}
}

.page-home .home-insights-thumb{
  position:relative;
}

.page-home .home-insights-carousel{
  display:flex;
  align-items:center;
  gap:clamp(8px,2vw,14px);
  margin-top:8px;
  width:100%;
}
.page-home .home-insights-scroll{
  flex:1;
  min-width:0;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:rgba(3,21,41,.28) transparent;
  outline:none;
}
.page-home .home-insights-scroll:focus-visible{
  box-shadow:0 0 0 3px rgba(0,210,255,.4);
  border-radius:12px;
}
.page-home .home-insights-scroll::-webkit-scrollbar{
  height:7px;
}
.page-home .home-insights-scroll::-webkit-scrollbar-track{
  background:transparent;
}
.page-home .home-insights-scroll::-webkit-scrollbar-thumb{
  background:rgba(3,21,41,.22);
  border-radius:999px;
}
.page-home .home-insights-scroll-track{
  display:flex;
  flex-wrap:nowrap;
  align-items:stretch;
  gap:18px;
  padding:6px 2px 14px;
  width:max-content;
}
.page-home .home-insights-scroll .card-link{
  flex:0 0 auto;
  display:flex;
  flex-direction:column;
  width:min(300px,calc(100vw - 120px));
  max-width:300px;
  scroll-snap-align:start;
}
.page-home .home-insights-scroll .card-link > .card{
  flex:1;
  min-height:100%;
}
@media (max-width:520px){
  .page-home .home-insights-scroll .card-link{
    width:min(280px,calc(100vw - 96px));
  }
}
.page-home .home-insights-scroll-btn{
  flex-shrink:0;
  width:44px;
  height:44px;
  padding:0;
  border-radius:999px;
  border:1px solid rgba(34,211,238,.38);
  background:#fff;
  color:var(--primary);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:
    0 2px 0 rgba(34,211,238,.12),
    0 8px 20px rgba(15,23,42,.08);
  transition:background .2s var(--ease-ui),border-color .2s var(--ease-ui),color .2s var(--ease-ui),box-shadow .2s var(--ease-ui);
}
.page-home .home-insights-scroll-btn:hover:not(:disabled){
  border-color:rgba(34,211,238,.55);
  box-shadow:
    0 2px 0 rgba(34,211,238,.2),
    0 12px 26px rgba(15,23,42,.1);
  color:#002244;
}
.page-home .home-insights-scroll-btn:focus-visible{
  outline:3px solid rgba(0,210,255,.45);
  outline-offset:2px;
}
.page-home .home-insights-scroll-btn:disabled{
  opacity:.35;
  cursor:not-allowed;
  box-shadow:none;
}

.page-home .insights-tag{
  position:absolute;
  bottom:10px;
  left:10px;
  background:var(--accent);
  color:#fff;
  font-size:11px;
  font-weight:600;
  padding:6px 10px;
  border-radius:6px;
  letter-spacing:.02em;
  z-index:1;
}

.page-home .home-trust{
  padding:28px 0 32px;
  text-align:center;
  font-family:"Segoe UI",system-ui,-apple-system,sans-serif;
  background:
    linear-gradient(180deg,#f8fafc 0%,#eef2f7 42%,#f8fafc 100%);
  border-top:1px solid rgba(3,21,41,.07);
  border-bottom:1px solid rgba(3,21,41,.06);
}
.page-home .home-trust-title{
  margin:0 0 clamp(20px,3vw,28px);
  font-size:11px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(3,21,41,.5);
  -webkit-font-smoothing:antialiased;
}
.page-home .home-trust-logos{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:clamp(16px,2.8vw,28px) clamp(20px,4vw,40px);
}
.page-home .home-trust-item{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  padding:0;
  margin:0;
  background:none;
  border:none;
  box-shadow:none;
  border-radius:0;
}
.page-home .home-trust-item:hover{
  transform:none;
  box-shadow:none;
}
.page-home .home-trust-item:hover .home-trust-name{
  color:#002244;
}
.page-home .home-trust-icon{
  width:auto;
  height:auto;
  border-radius:0;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  background:none;
  border:none;
  box-shadow:none;
}
.page-home .home-trust-icon img{
  width:36px;
  height:36px;
  object-fit:contain;
  display:block;
}
.page-home .home-trust-name{
  font-size:11px;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#031529;
  line-height:1.2;
  text-align:left;
  white-space:nowrap;
  transition:color .2s var(--ease-ui);
  -webkit-font-smoothing:antialiased;
}
@media (max-width:520px){
  .page-home .home-trust-logos{
    flex-direction:column;
    gap:14px;
    align-items:center;
  }
  .page-home .home-trust-item{
    width:100%;
    max-width:280px;
    justify-content:center;
  }
  .page-home .home-trust-name{white-space:normal;text-align:left}
}

.page-home .home-why-dark{
  background:var(--primary);
  padding:var(--section-y) 0;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.06);
}
.page-home .home-why-dark .home-why-header h2,
.page-home .home-why-dark .section-header h2{
  color:#fff;
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
}
.page-home .home-why-dark .sub{color:rgba(255,255,255,.72)}
.page-home .home-why-dark .btn{
  border-color:rgba(255,255,255,.35);
  color:#fff;
  background:transparent;
}
.page-home .home-why-dark .btn:hover{
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.5);
  color:#fff;
  text-decoration:none;
}
.page-home .home-why-header{
  display:flex;
  flex-direction:column;
  flex-wrap:nowrap;
  justify-content:center;
  align-items:center;
  gap:12px;
  margin-bottom:20px;
  text-align:center;
}
.page-home .home-why-header > div{
  text-align:center;
  width:100%;
}
.page-home .home-why-header h2{
  text-align:center;
}
.page-home .home-why-header .sub{
  margin-left:auto;
  margin-right:auto;
}
.page-home .home-why-columns{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:24px 20px;
}
.page-home a.home-why-item{
  display:block;
  text-decoration:none;
  color:inherit;
  border-radius:12px;
  padding:8px;
  margin:-8px;
  transition:background .2s var(--ease-ui),transform .2s var(--ease-ui);
}
.page-home a.home-why-item:hover{
  background:rgba(255,255,255,.06);
}
.page-home a.home-why-item:focus-visible{
  outline:3px solid rgba(0,210,255,.5);
  outline-offset:2px;
}
.page-home a.home-why-item:hover .home-why-icon{
  color:#7ee7ff;
}
.page-home .home-why-item h3{
  font-size:16px;
  margin:12px 0 8px;
  color:#fff;
  font-weight:600;
  line-height:1.3;
}
.page-home .home-why-item p{
  margin:0;
  font-size:14px;
  line-height:1.5;
  color:rgba(255,255,255,.65);
}
.page-home .home-why-icon{
  width:56px;
  height:56px;
  color:var(--accent);
}
.page-home .home-why-icon svg{width:100%;height:100%}
@media (max-width:980px){
  .page-home .home-why-columns{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:520px){
  .page-home .home-why-columns{grid-template-columns:1fr}
}

.page-home .home-final-cta{
  background:var(--grad-cta);
  padding:28px 0;
  border-top:1px solid rgba(255,255,255,.08);
}
.page-home .home-final-cta-inner{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.page-home .home-final-cta-h2{
  margin:0;
  font-size:clamp(22px,2.5vw,30px);
  color:#fff;
  font-weight:600;
  line-height:1.2;
  background:none;
  -webkit-background-clip:border-box;
}

.page-home .hero-network--mesh{
  position:relative;
  overflow:hidden;
}
.page-home .hero-mesh-svg{
  position:absolute;
  inset:0;
  opacity:.55;
  pointer-events:none;
}
.page-home .hero-mesh-svg svg{
  width:100%;
  height:100%;
  object-fit:cover;
}
.page-home .hero-network-copy,
.page-home .hero-network--mesh .kpis{
  position:relative;
  z-index:1;
}

.page-home .section.band.ai.home-ai-split-section{
  padding:clamp(10px,1.5vw,16px) 0 clamp(12px,1.7vw,20px);
}
.page-home .section.band.ai.home-ai-split-section::before{
  background-color:#0a2540;
  background-image:
    radial-gradient(ellipse 95% 70% at 92% -8%, rgba(0,212,255,.22), transparent 52%),
    radial-gradient(circle at top right, #124a6e, #0a2540 72%);
  background-size:cover;
}
.page-home .section.band.ai.home-ai-split-section .home-ai-bg-canvas{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  display:block;
  pointer-events:none;
  z-index:1;
}
.page-home .section.band.ai.home-ai-split-section .container{
  z-index:2;
}

.page-home .home-ai-lead{
  font-size:clamp(14px,1.35vw,17px);
  font-weight:500;
  color:rgba(255,255,255,.86);
  line-height:1.45;
}

.page-home .insights-tag--cyan{
  background:var(--accent);
  color:#031529;
}
.page-home .insights-tag--olive{
  background:#5c6b4a;
  color:#fff;
}
.page-home .insights-tag--navy{
  background:var(--primary);
  color:#fff;
}

/* Contact page: reuse home AI node background while keeping content readable */
.page-home .home-ai-split-section.contact-ai-bg .section-header h2{
  color:#fff;
  text-shadow:0 10px 26px rgba(0,0,0,.35), 0 0 26px rgba(0,212,255,.18);
}
.page-home .home-ai-split-section.contact-ai-bg .section-header .sub{
  color:rgba(255,255,255,.72);
}
.page-home .home-ai-split-section.contact-ai-bg .section-header h6{
  color:rgba(255,255,255,.74);
}

/* Contact form header (left pane) color tuning */
.page-home .home-ai-split-section.contact-ai-bg .contact-layout__form .section-header{
  padding:0;
  border-radius:0;
  background:transparent;
  border:0;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.page-home .home-ai-split-section.contact-ai-bg .contact-layout__form .section-header h2{
  color:rgba(255,255,255,.74);
  text-shadow:0 14px 34px rgba(0,0,0,.65), 0 0 22px rgba(0,212,255,.18);
}
.page-home .home-ai-split-section.contact-ai-bg .contact-layout__form .section-header .sub{
  color:rgba(255,255,255,.74);
  text-shadow:0 10px 24px rgba(0,0,0,.55);
}

/* Contact page panes: glass panels like home AI section */
.page-home .home-ai-split-section.contact-ai-bg .panel:not(.callout){
  background:rgba(8,11,22,.46);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 18px 44px rgba(0,0,0,.28);
  backdrop-filter:blur(14px) saturate(1.05);
  -webkit-backdrop-filter:blur(14px) saturate(1.05);
}
.page-home .home-ai-split-section.contact-ai-bg .panel:not(.callout):hover{
  border-color:rgba(0,212,255,.22);
}
.page-home .home-ai-split-section.contact-ai-bg label{
  color:rgba(255,255,255,.78);
}
.page-home .home-ai-split-section.contact-ai-bg input,
.page-home .home-ai-split-section.contact-ai-bg textarea{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.18);
  color:rgba(255,255,255,.92);
}
.page-home .home-ai-split-section.contact-ai-bg input::placeholder,
.page-home .home-ai-split-section.contact-ai-bg textarea::placeholder{
  color:rgba(255,255,255,.55);
}
.page-home .home-ai-split-section.contact-ai-bg .mini{
  color:rgba(255,255,255,.62);
}
.page-home .home-ai-split-section.contact-ai-bg .contact-info__label{
  color:rgba(255,255,255,.86);
  font-size:16px;
  font-weight:900;
  letter-spacing:.16em;
}
.page-home .home-ai-split-section.contact-ai-bg .contact-info__block a{
  color:rgba(255,255,255,.95);
  font-size:16px;
  font-weight:500;
}
.page-home .home-ai-split-section.contact-ai-bg .contact-info__address{
  color:rgba(255,255,255,.86);
  font-size:15px;
  font-weight:400;
}
.page-home .home-ai-split-section.contact-ai-bg .contact-info__social a{
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.06);
  color:rgba(255,255,255,.92);
  width:48px;
  height:48px;
}
.page-home .home-ai-split-section.contact-ai-bg .contact-info__social a:hover{
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.28);
  color:#fff;
}

/* Contact page: colorful brand icons for Follow us */
.page-home .home-ai-split-section.contact-ai-bg .contact-info__social .social-link{
  --social: rgba(255,255,255,.92);
  color: var(--social);
}
.page-home .home-ai-split-section.contact-ai-bg .contact-info__social .social-link--linkedin{
  --social: #0A66C2;
}
.page-home .home-ai-split-section.contact-ai-bg .contact-info__social .social-link--x{
  --social: #ffffff;
}
.page-home .home-ai-split-section.contact-ai-bg .contact-info__social .social-link--youtube{
  --social: #FF0000;
}
.page-home .home-ai-split-section.contact-ai-bg .contact-info__social .social-link--instagram{
  --social: #E1306C;
}

@media (prefers-reduced-motion: reduce){
  *{transition:none !important}
  .page-home .home-ai-float-card{animation:none !important}
  .page-home .home-ai-float-card:hover{transform:none !important}
  .page-home .home-ai-float-graph::before{animation:none !important}
  .page-home .home-trust-item:hover .home-trust-name{color:#031529}
  .page-home .home-insights-scroll{scroll-behavior:auto}
}

