/* About — infinity cosmic destination.
   Tokens fall back so brand shells (which skip /css/main.css) still render. */
.about-page,
.about-brand{
  --about-a:var(--accent-a,#00d4ff);
  --about-b:var(--accent-b,#7b61ff);
  --about-c:var(--accent-c,#ff6ec7);
  --about-grad:var(--infinity-grad,linear-gradient(135deg,var(--about-a),var(--about-b),var(--about-c)));
  --about-fg:var(--fg,#102033);
  --about-fg-2:var(--fg-2,#3d4d66);
  --about-muted:var(--fg-muted,#66758a);
  --about-border:var(--border,rgba(16,32,51,.12));
  --about-surface:var(--bg-glass,rgba(255,255,255,.9));
  --about-surface-2:var(--bg-surface-2,rgba(255,255,255,.72));
  --about-shadow:var(--shadow-lg,0 18px 50px rgba(16,24,40,.16));
}
.about-brand{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  padding:8px 4px 10px;
  color:var(--about-fg);
}
.about-brand .about-title,
.about-brand .about-kicker-mark,
.about-brand .about-section-title::before,
.about-brand .about-section-title::after{
  filter:none;
}
.about-page{
  position:relative;
  min-height:100vh;
  overflow:hidden;
  isolation:isolate;
}
.about-page::before,
.about-page::after{
  content:'';
  position:fixed;
  border-radius:50%;
  pointer-events:none;
  z-index:0;
}
.about-page::before{
  width:760px;height:760px;
  background:radial-gradient(circle,var(--orb-1) 0%,transparent 70%);
  top:-220px;right:-180px;
  animation:drift1 22s ease-in-out infinite alternate;
}
.about-page::after{
  width:560px;height:560px;
  background:radial-gradient(circle,var(--orb-2) 0%,transparent 70%);
  bottom:-140px;left:-120px;
  animation:drift2 28s ease-in-out infinite alternate;
}
.about-stars{
  position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:
    radial-gradient(1px 1px at 12% 18%,rgba(255,255,255,.35),transparent),
    radial-gradient(1px 1px at 78% 36%,rgba(0,212,255,.42),transparent),
    radial-gradient(1.5px 1.5px at 48% 72%,rgba(123,97,255,.35),transparent),
    radial-gradient(1px 1px at 28% 88%,rgba(255,110,199,.32),transparent),
    radial-gradient(1.2px 1.2px at 92% 12%,rgba(0,212,255,.28),transparent);
  animation:star-drift 70s linear infinite;
}
.about-infinity{
  position:fixed;top:46%;left:50%;
  width:min(92vw,820px);height:min(46vw,410px);
  transform:translate(-50%,-50%);
  pointer-events:none;z-index:1;opacity:.08;
  animation:infinity-pulse 8s ease-in-out infinite;
}
.about-infinity svg{width:100%;height:100%}

.about-header{position:relative;z-index:10;padding:16px 24px;display:flex;justify-content:flex-end}
.about-main{
  position:relative;z-index:10;
  width:min(1120px,calc(100% - 32px));
  margin:0 auto;
  padding:12px 0 64px;
}
.about-kicker{
  display:flex;align-items:center;justify-content:center;gap:.55rem;
  margin:0 0 10px;
  font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--fg-muted);font-weight:600;
}
.about-kicker-mark{
  font-size:1.15rem;font-weight:300;line-height:1;
  background:var(--infinity-grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  animation:inf-text-glow 4s ease-in-out infinite;
}
.about-hero{text-align:center;margin:0 0 36px;animation:fadeUp .6s ease both}
.about-title{
  margin:0 0 12px;
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(2.6rem,8vw,5.2rem);
  font-weight:700;letter-spacing:-.05em;line-height:.95;
  background:linear-gradient(135deg,var(--accent-a) 0%,var(--accent-b) 55%,var(--accent-c) 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  filter:drop-shadow(0 10px 40px rgba(123,97,255,.18));
}
.about-lead{
  margin:0 auto;max-width:46rem;
  color:var(--fg-2);font-size:1.08rem;line-height:1.7;
}
.about-ribbon{
  height:2px;width:min(280px,50%);
  margin:22px auto 0;border-radius:999px;
  background:var(--infinity-grad);
  opacity:.55;animation:infinity-shimmer 3s ease-in-out infinite;
}

.about-pillars{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;
  margin:0 0 42px;
}
.about-pillar{
  position:relative;overflow:hidden;
  border:1px solid var(--border);border-radius:20px;
  background:var(--bg-glass);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  box-shadow:var(--shadow-md);
  padding:20px 18px 18px;
}
.about-pillar::before{
  content:'';position:absolute;inset:-1px;border-radius:inherit;padding:1px;
  background:var(--infinity-grad);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  opacity:.35;pointer-events:none;
}
.about-pillar h2{
  margin:0 0 8px;font-family:'Space Grotesk',sans-serif;
  font-size:1.12rem;letter-spacing:-.02em;
}
.about-pillar p{margin:0;color:var(--fg-2);line-height:1.6}

.about-contributors{margin:8px 0 0}
.about-section-title{
  display:flex;align-items:center;justify-content:center;gap:.55rem;
  margin:0 0 8px;
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(1.6rem,4vw,2.2rem);letter-spacing:-.03em;text-align:center;
}
.about-section-title::before,
.about-section-title::after{
  content:'\221E';font-weight:300;
  background:var(--infinity-grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  opacity:.8;
}
.about-section-lead{
  margin:0 auto 28px;max-width:40rem;text-align:center;
  color:var(--fg-2);line-height:1.65;
}
.about-section-lead code{
  font-size:.86em;padding:.1em .4em;border-radius:6px;
  border:1px solid var(--border);background:var(--bg-surface-2);
}

.contributor-feature{
  position:relative;overflow:hidden;isolation:isolate;
  display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);
  gap:28px;align-items:start;
  margin:0 0 22px;padding:28px 26px;
  border-radius:28px;border:1px solid var(--border);
  background:
    radial-gradient(120% 140% at 0% 0%,rgba(0,212,255,.12),transparent 55%),
    radial-gradient(90% 120% at 100% 100%,rgba(123,97,255,.12),transparent 52%),
    radial-gradient(80% 80% at 80% 0%,rgba(255,110,199,.08),transparent 50%),
    var(--bg-glass);
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
.contributor-aurora{
  position:absolute;inset:-45%;
  background:conic-gradient(from 200deg at 50% 50%,rgba(0,212,255,.22),rgba(123,97,255,.16),rgba(255,110,199,.14),rgba(0,212,255,.22));
  animation:about-aurora 18s linear infinite;
  opacity:.35;pointer-events:none;z-index:0;
}
@keyframes about-aurora{to{transform:rotate(360deg)}}
.contributor-portrait{position:relative;z-index:1;justify-self:center}
.contributor-orbit{
  position:relative;width:220px;height:220px;
}
.contributor-orbit::before,
.contributor-orbit::after{
  content:'';position:absolute;inset:0;border-radius:50%;pointer-events:none;
}
.contributor-orbit::before{
  inset:-10px;
  border:1px dashed rgba(0,212,255,.35);
  animation:spin-slow 18s linear infinite;
}
.contributor-orbit::after{
  inset:-22px;
  border:1px solid rgba(123,97,255,.18);
  animation:spin-slow 28s linear infinite reverse;
}
.contributor-photo{
  width:220px;height:220px;object-fit:cover;object-position:top center;
  border-radius:50%;
  border:3px solid transparent;
  background:
    linear-gradient(var(--bg-surface),var(--bg-surface)) padding-box,
    var(--infinity-grad) border-box;
  box-shadow:0 16px 40px rgba(8,12,40,.28),0 0 0 8px rgba(0,212,255,.06);
}
.contributor-photo--initials{
  display:grid;place-items:center;
  font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:3rem;
  letter-spacing:.04em;
  background:var(--infinity-grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.contributor-body{position:relative;z-index:1;min-width:0}
.contributor-meta{
  display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px;
}
.contributor-chip{
  display:inline-flex;align-items:center;gap:.35rem;
  padding:5px 10px;border-radius:999px;
  border:1px solid var(--border);background:var(--pill-bg);
  color:var(--pill-fg);font-size:.74rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;
}
.contributor-name{
  margin:0 0 8px;
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(1.7rem,3vw,2.35rem);
  letter-spacing:-.03em;line-height:1.1;
}
.contributor-headline{
  margin:0 0 18px;color:var(--fg-2);font-size:1.05rem;line-height:1.7;
}
.contributor-sections{display:grid;gap:16px}
.contributor-section h3,
.contributor-section h4{
  margin:0 0 6px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--about-a,var(--accent-a,#00d4ff));font-weight:700;
}
.contributor-section p{margin:0;color:var(--fg);line-height:1.7}
.contributor-achievements{
  margin:0;padding:0;list-style:none;display:grid;gap:8px;
}
.contributor-achievements li{
  position:relative;padding-left:1.4rem;color:var(--fg);line-height:1.55;
}
.contributor-achievements li::before{
  content:'\221E';position:absolute;left:0;top:.05em;
  background:var(--infinity-grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  font-weight:700;
}

.contributor-grid{
  list-style:none;margin:8px 0 0;padding:0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:16px;
}
.contributor-grid:empty{display:none}
.contributor-card{
  display:flex;flex-direction:column;align-items:center;gap:10px;
  border:1px solid var(--border);border-radius:18px;
  background:var(--bg-glass);padding:18px 12px 16px;text-align:center;
  box-shadow:var(--shadow-sm);
}
.contributor-card .contributor-photo{
  width:120px;height:120px;box-shadow:var(--shadow-md);
}
.contributor-card .contributor-name{font-size:1.05rem;margin:0}

.about-links{
  margin:36px 0 0;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;
}
.about-links a{
  text-decoration:none;color:var(--fg);
  border:1px solid var(--border);border-radius:999px;
  padding:9px 16px;background:var(--bg-glass);
  box-shadow:var(--shadow-sm);transition:transform .15s,box-shadow .15s;
}
.about-links a:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);color:var(--fg)}
.about-links a:visited{color:var(--fg)}

.about-footer{position:relative;z-index:10;padding:8px 24px 28px;text-align:center}
.about-footer .footer-text{font-size:.78rem;color:var(--fg-muted)}

@media (max-width:860px){
  .about-pillars{grid-template-columns:1fr}
  .contributor-feature{grid-template-columns:1fr;justify-items:center;text-align:left;padding:22px 18px}
  .contributor-orbit{width:180px;height:180px}
  .contributor-photo{width:180px;height:180px}
}

.about-brand .about-title{
  font-size:clamp(2.1rem,7vw,3.6rem);
  background:var(--about-grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.about-brand .about-lead,
.about-brand .about-section-lead,
.about-brand .about-pillar p,
.about-brand .contributor-headline{color:var(--about-fg-2)}
.about-brand .about-pillar,
.about-brand .contributor-feature,
.about-brand .contributor-card{
  background:var(--about-surface);
  border-color:var(--about-border);
  color:var(--about-fg);
}
.about-brand .contributor-name,
.about-brand .about-pillar h2,
.about-brand .about-section-title{color:var(--about-fg)}
.about-brand .contributor-achievements li{color:var(--about-fg)}
.about-brand .about-kicker{color:var(--about-muted)}

