:root {
  --color-accent:         #8248A0;
  --color-accent-dark:    #5E2E6E;
  --color-accent-light:   #A86CBF;
  --color-accent-on-card: #C490D4;
  --color-tag-bg:   rgba(130, 72, 160, 0.08);
  --color-tag-text: #8248A0;
  --shadow-accent-glow: 0 0 20px rgba(130, 72, 160, 0.25);
}

.pillars__grid { grid-template-columns: repeat(3, 1fr); }

@media (max-width: 900px) {
  .pillars__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .pillars__grid { grid-template-columns: 1fr; }
}

.fee-stack__layer--royalty    { background: rgba(130, 72, 160, 0.14); }
.fee-stack__layer--marketing  { background: rgba(130, 72, 160, 0.10); }
.fee-stack__layer--curriculum { background: rgba(130, 72, 160, 0.07); }

.capital-stack-viz__layer--equity { background: #c490d4; color: var(--color-text-on-light, #1a1a1a); }
.capital-stack-viz__layer--cdc    { background: #8248a0; color: var(--color-text-light, #f5f3f0); }
.capital-stack-viz__layer--bank   { background: #a86cbf; color: var(--color-text-light, #f5f3f0); }

.investment-paths__bar--lease     { background: var(--color-accent-on-card, #c490d4); color: var(--color-text-on-light, #1a1a1a); }
.investment-paths__bar--retrofit  { background: var(--color-accent, #8248a0); color: var(--color-text-light, #f5f3f0); }
.investment-paths__bar--purchase  { background: var(--color-accent-dark, #5e2e6e); color: var(--color-text-light, #f5f3f0); }

.investment-paths { max-width: 700px; }

.investment-paths__row {
  display: flex;
  align-items: center;
  gap: var(--space-sm, 1rem);
  margin-bottom: var(--space-sm, 1rem);
}

.investment-paths__label {
  flex: 0 0 160px;
  font-weight: 600;
  font-size: 0.95rem;
}

.investment-paths__bar {
  height: 40px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  padding: 0 var(--space-sm, 1rem);
  font-weight: 600;
  font-size: 0.9rem;
  transition: width 1s ease-out;
}

.investment-paths__track {
  flex: 1;
  min-width: 0;
}

.investment-paths__value {
  flex: 0 0 auto;
  font-weight: 600;
  font-size: 0.9rem;
  white-space: nowrap;
}

.investment-paths__source {
  margin-top: var(--space-sm, 1rem);
  font-size: 0.85rem;
  color: var(--color-text-muted, #767676);
}

@media (max-width: 560px) {
  .investment-paths__row {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
  }
  .investment-paths__label { flex: none; }
  .investment-paths__bar { width: 100% !important; }
}
