    /* ── Manifesto Page ── */
    .manifesto-page { max-width: 900px; margin: 0 auto; padding: 60px 24px 80px; }
    .manifesto-hero { text-align: center; margin-bottom: 64px; }
    .manifesto-hero h1 {
      font-size: clamp(32px, 6vw, 52px); font-weight: 800; line-height: 1.2;
      background: linear-gradient(135deg, #F4722B, #FBBF24);
      -webkit-background-clip: text; -webkit-text-fill-color: transparent;
      margin-bottom: 16px;
    }
    .manifesto-hero p { color: #9CA3AF; font-size: 18px; max-width: 500px; margin: 0 auto; }
    .manifesto-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; margin-bottom: 72px; }
    .manifesto-card {
      background: #16161A; border-radius: 16px; padding: 28px 24px;
      position: relative; overflow: hidden;
      transition: transform .25s, box-shadow .25s;
    }
    .manifesto-card::before {
      content: ''; position: absolute; inset: 0; border-radius: 16px; padding: 1.5px;
      background: linear-gradient(135deg, #F4722B, #FBBF24);
      -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
      -webkit-mask-composite: xor; mask-composite: exclude;
      opacity: 0.4; transition: opacity .3s;
    }
    .manifesto-card:hover::before { opacity: 1; }
    .manifesto-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(244,114,43,.1); }
    .manifesto-card-icon { font-size: 32px; margin-bottom: 16px; }
    .manifesto-card h3 { font-size: 18px; font-weight: 700; color: #F5F5F5; margin-bottom: 10px; }
    .manifesto-card p { color: #9CA3AF; font-size: 14px; line-height: 1.7; }
    .manifesto-timeline { position: relative; margin-bottom: 64px; }
    .manifesto-timeline-title { text-align: center; font-size: 24px; font-weight: 700; color: #F5F5F5; margin-bottom: 40px; }
    .manifesto-tl-list { position: relative; padding-left: 40px; }
    .manifesto-tl-list::before {
      content: ''; position: absolute; left: 15px; top: 8px; bottom: 8px; width: 2px;
      background: linear-gradient(to bottom, #F4722B, #FBBF24);
    }
    .manifesto-tl-item { position: relative; margin-bottom: 32px; }
    .manifesto-tl-item:last-child { margin-bottom: 0; }
    .manifesto-tl-dot {
      position: absolute; left: -33px; top: 4px; width: 14px; height: 14px;
      border-radius: 50%; background: #F4722B; border: 3px solid #0D0D0F;
      box-shadow: 0 0 0 2px #F4722B;
    }
    .manifesto-tl-item:last-child .manifesto-tl-dot { background: #FBBF24; box-shadow: 0 0 0 2px #FBBF24, 0 0 12px rgba(251,191,36,.4); }
    .manifesto-tl-version { font-size: 14px; font-weight: 700; color: #F4722B; margin-bottom: 2px; }
    .manifesto-tl-item:last-child .manifesto-tl-version { color: #FBBF24; }
    .manifesto-tl-desc { font-size: 15px; color: #F5F5F5; font-weight: 500; }
    .manifesto-tl-sub { font-size: 13px; color: #9CA3AF; margin-top: 2px; }
    .manifesto-quote {
      text-align: center; padding: 40px 24px; border-radius: 16px;
      background: linear-gradient(135deg, rgba(244,114,43,.08), rgba(251,191,36,.06));
      border: 1px solid rgba(244,114,43,.15);
    }
    .manifesto-quote p { font-size: 18px; color: #F5F5F5; font-weight: 500; line-height: 1.7; font-style: italic; }
    .manifesto-quote .q-highlight { color: #FBBF24; font-weight: 700; }

    /* ── Agents Story Page ── */
    .agents-page { max-width: 1100px; margin: 0 auto; padding: 60px 24px 80px; }
    .agents-header { text-align: center; margin-bottom: 48px; }
    .agents-header h1 { font-size: clamp(28px, 5vw, 42px); font-weight: 800; color: #F5F5F5; margin-bottom: 8px; }
    .agents-header p { color: #9CA3AF; font-size: 16px; }
    .agents-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 24px; }
    .agent-story-card {
      background: #16161A; border: 1px solid #2A2A2F; border-radius: 16px; padding: 24px;
      transition: transform .25s, box-shadow .25s, border-color .25s;
    }
    .agent-story-card:hover {
      transform: translateY(-4px); border-color: rgba(244,114,43,.3);
      box-shadow: 0 8px 28px rgba(244,114,43,.08);
    }
    .asc-header { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
    .asc-emoji { font-size: 36px; }
    .asc-info { flex: 1; }
    .asc-name { font-size: 17px; font-weight: 700; color: #F5F5F5; }
    .asc-stage-badge {
      display: inline-block; padding: 3px 10px; border-radius: 12px;
      font-size: 12px; font-weight: 600; margin-top: 4px;
    }
    .asc-stage-birth { background: rgba(156,163,175,.15); color: #9CA3AF; }
    .asc-stage-growth { background: rgba(59,130,246,.15); color: #3B82F6; }
    .asc-stage-maturity { background: rgba(251,191,36,.15); color: #FBBF24; }
    .asc-stage-decline { background: rgba(244,114,43,.15); color: #F4722B; }
    .asc-stage-retired { background: rgba(100,100,110,.15); color: #64646E; }
    .asc-health-ring {
      width: 56px; height: 56px; position: relative; flex-shrink: 0;
    }
    .asc-health-ring svg { transform: rotate(-90deg); }
    .asc-health-ring .ring-bg { fill: none; stroke: #2A2A2F; stroke-width: 4; }
    .asc-health-ring .ring-fill { fill: none; stroke-width: 4; stroke-linecap: round; transition: stroke-dashoffset .6s ease; }
    .asc-health-num {
      position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
      font-size: 14px; font-weight: 700; color: #F5F5F5;
    }
    .asc-metrics { display: flex; gap: 12px; margin: 16px 0; }
    .asc-metric {
      flex: 1; text-align: center; padding: 10px 8px; background: #0D0D0F;
      border: 1px solid #2A2A2F; border-radius: 10px;
    }
    .asc-metric-val { font-size: 18px; font-weight: 700; color: #F5F5F5; }
    .asc-metric-label { font-size: 11px; color: #9CA3AF; margin-top: 2px; }
    .asc-desc { color: #9CA3AF; font-size: 13px; margin-bottom: 14px; font-style: italic; }
    .asc-timeline { border-top: 1px solid #2A2A2F; padding-top: 14px; }
    .asc-tl-title { font-size: 12px; color: #9CA3AF; margin-bottom: 10px; font-weight: 600; }
    .asc-tl-item { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
    .asc-tl-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
    .asc-tl-text { font-size: 12px; color: #9CA3AF; flex: 1; }
    .asc-tl-time { font-size: 11px; color: #64646E; flex-shrink: 0; }
    .agents-loading { text-align: center; padding: 60px 20px; color: #9CA3AF; }
    .agents-loading .spinner { display: inline-block; width: 32px; height: 32px; border: 3px solid #2A2A2F; border-top-color: #F4722B; border-radius: 50%; animation: spin 1s linear infinite; margin-bottom: 12px; }


