.hero{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  padding-top:var(--nav-h);
  overflow:hidden;
}

.hero-bg{ position:absolute; inset:0; z-index:0; }
.orb{
  position:absolute;
  border-radius:50%;
  filter:blur(90px);
  opacity:.55;
}
.orb-blue{ width:480px; height:480px; background:var(--primary); top:-140px; right:-100px; animation:float-a 14s ease-in-out infinite; }
.orb-cyan{ width:360px; height:360px; background:var(--cyan); bottom:-100px; left:-80px; animation:float-b 16s ease-in-out infinite; }
.orb-green{ width:260px; height:260px; background:var(--green); top:40%; left:20%; opacity:.28; animation:float-a 20s ease-in-out infinite reverse; }

@keyframes float-a{ 0%,100%{ transform:translate(0,0); } 50%{ transform:translate(-30px,30px); } }
@keyframes float-b{ 0%,100%{ transform:translate(0,0); } 50%{ transform:translate(30px,-24px); } }

.grid-lines{
  position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(184,199,230,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(184,199,230,.05) 1px, transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(circle at 50% 30%, black, transparent 75%);
}

.hero-inner{ position:relative; z-index:1; text-align:center; max-width:880px; margin-inline:auto; }

.hero-eyebrow{
  font-family:var(--font-en-display);
  font-size:12.5px;
  letter-spacing:.3em;
  color:var(--cyan);
  margin-bottom:26px;
}

.hero-title{
  font-size:clamp(40px, 7vw, 74px);
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-bottom:26px;
}
.hero-dots{
  font-family:var(--font-en-display);
  color:var(--body-text);
  font-size:.5em;
  letter-spacing:.3em;
}

.hero-desc{
  font-size:18px;
  max-width:640px;
  margin-inline:auto;
  margin-bottom:38px;
}

.hero-actions{
  display:flex;
  justify-content:center;
  gap:18px;
  flex-wrap:wrap;
  margin-bottom:64px;
}

.hero-stats{
  display:flex;
  justify-content:center;
  gap:60px;
  flex-wrap:wrap;
}
.stat{ display:flex; flex-direction:column; align-items:center; gap:4px; }
.stat-num{ font-size:30px; font-weight:700; color:var(--heading); }
.stat-label{ font-size:13.5px; color:var(--body-text); }

@media (max-width:600px){
  .hero-stats{ gap:34px; }
}

.about-teaser-grid{
  display:grid;
  grid-template-columns:1.1fr .8fr;
  gap:50px;
  align-items:center;
}
.about-teaser-card{
  padding:46px;
  position:relative;
  overflow:hidden;
}
.about-teaser-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:var(--gradient-brand);
  opacity:.08;
}
.mini-quote{ position:relative; }
.quote-mark{ font-size:60px; color:var(--cyan); font-family:var(--font-en-display); line-height:.4; display:block; margin-bottom:14px; }
.mini-quote p{ font-size:19px; color:var(--heading); font-family:var(--font-ar-display); }

@media (max-width:860px){
  .about-teaser-grid{ grid-template-columns:1fr; }
}

.section-head{ max-width:640px; margin-bottom:50px; }

.services-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
}
.service-card{
  padding:32px 26px;
  transition:transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.service-card:hover{
  transform:translateY(-6px);
  border-color:rgba(25,217,255,.4);
  box-shadow:var(--glow-cyan);
}
.service-icon{ font-size:32px; display:inline-block; margin-bottom:18px; }
.service-card h3{ font-size:19px; margin-bottom:10px; }
.service-card p{ font-size:14.5px; }

@media (max-width:1000px){
  .services-grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:600px){
  .services-grid{ grid-template-columns:1fr; }
}

.join-cta-card{
  padding:56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  flex-wrap:wrap;
  background:linear-gradient(120deg, rgba(8,123,255,.14), rgba(32,232,106,.06));
}
.join-cta-card .section-title{ margin-bottom:12px; }

@media (max-width:760px){
  .join-cta-card{ flex-direction:column; text-align:center; padding:40px 26px; }
}
