/* ============ ABOUT HERO ============ */
.about-hero{ padding:60px 0 10px; }
.about-hero-grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:50px; align-items:center; }
.about-hero h1{ font-size:clamp(2rem,3.6vw,2.9rem); }
.lede{ color:var(--star-500); font-size:1.05rem; max-width:520px; }

.mission-orbit{ position:relative; width:100%; aspect-ratio:1; max-width:380px; margin:0 auto; }
.m-ring{ position:absolute; border-radius:50%; border:1px solid var(--line); }
.m-ring-1{ inset:0; border-color:rgba(143,124,255,.4); animation:spin 30s linear infinite; }
.m-ring-2{ inset:14%; border-color:rgba(82,232,214,.3); animation:spin 22s linear infinite reverse; }
.m-ring-3{ inset:28%; border-style:dashed; animation:spin 40s linear infinite; }
.m-core{
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:44%; aspect-ratio:1; border-radius:50%;
  background:radial-gradient(circle at 38% 32%, #fff, var(--mass-violet) 45%, var(--mass-violet-2) 85%);
  box-shadow:0 0 60px rgba(143,124,255,.5);
  display:flex; align-items:center; justify-content:center; text-align:center;
  font-family:var(--font-display); font-weight:700; color:#fff; font-size:.95rem; line-height:1.3;
}
@media (max-width:860px){ .about-hero-grid{ grid-template-columns:1fr; } }

/* ============ HERO BANNER PHOTO ============ */
.about-banner{ aspect-ratio:16/5; margin:36px auto 0; border-radius:28px; }
@media (max-width:700px){ .about-banner{ aspect-ratio:4/3; } }

/* ============ TIMELINE ============ */
.timeline{ position:relative; max-width:760px; margin:0 auto; padding-left:60px; }
.timeline-line{
  position:absolute; left:19px; top:6px; bottom:6px; width:2px;
  background:linear-gradient(180deg, var(--mass-violet), var(--event-cyan), transparent);
}
.timeline-item{ position:relative; margin-bottom:34px; }
.timeline-dot{
  position:absolute; left:-60px; top:0; width:40px; height:40px; border-radius:50%;
  background:var(--void-2); border:1px solid var(--mass-violet);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--font-mono); font-size:.75rem; color:var(--event-cyan);
  box-shadow:0 0 18px rgba(143,124,255,.4);
}
.timeline-content{ padding:26px 28px; }
.timeline-content h3{ font-size:1.15rem; }
.timeline-ad{ margin:10px 0 34px 0; display:flex; justify-content:flex-end; padding-right:4px; }
.timeline-ad .ad-slot{ height:140px; }
.timeline-ad .ad-img{ max-width:90px; }

@media (max-width:640px){
  .timeline{ padding-left:46px; }
  .timeline-dot{ left:-46px; width:32px; height:32px; font-size:.65rem; }
  .timeline-ad{ justify-content:center; }
}

/* ============ VALUE CLUSTER (hex-ish cards orbiting a sun) ============ */
.value-cluster{
  display:grid; grid-template-columns:repeat(3, 1fr); gap:26px; align-items:start;
  position:relative;
}
.value-sun{
  grid-column:1 / -1; text-align:center; font-size:2.2rem; color:var(--event-cyan);
  text-shadow:0 0 24px rgba(82,232,214,.7); margin-bottom:4px;
}
.value-hex{
  background:var(--grad-panel); border:1px solid var(--line);
  padding:46px 24px 50px; text-align:center;
  clip-path:polygon(50% 0%, 100% 14%, 100% 86%, 50% 100%, 0% 86%, 0% 14%);
}
.value-photo{
  width:76px; height:76px; border-radius:50%; margin:0 auto 16px;
  border:2px solid rgba(143,124,255,.4);
}
.value-hex h3{ font-size:1.05rem; }
.value-hex p{ font-size:.88rem; color:var(--star-500); margin:0; }
@media (max-width:800px){
  .value-cluster{ grid-template-columns:1fr; }
  .value-hex{ clip-path:none; border-radius:var(--radius-md); }
}

/* ============ STATS BAND ============ */
.stats-band{ border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); padding:50px 0; background:rgba(143,124,255,.04); }
.stats-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; text-align:center; }
.stats-grid strong{ display:block; font-family:var(--font-display); font-size:2rem; color:var(--star-100); }
.stats-grid span{ font-size:.8rem; color:var(--star-700); text-transform:uppercase; letter-spacing:.05em; }
@media (max-width:700px){ .stats-grid{ grid-template-columns:1fr 1fr; row-gap:30px; } }

/* ============ CTA PANEL ============ */
.cta-panel{
  display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap;
  padding:44px 40px; border-radius:28px; border:1px solid var(--line);
  background:linear-gradient(120deg, rgba(143,124,255,.12), rgba(82,232,214,.06));
}
.cta-panel h2{ margin:.2em 0; font-size:1.5rem; }
.cta-panel p{ margin:0; color:var(--star-500); max-width:420px; }
