/* FundRaiseo normal/light presentation layer.
   The shared app uses a light surface, slate text, purple accents,
   and the cyan-purple-pink gradient for primary actions. */
:root {
  color-scheme: light;
  --bg: #f5f7fc;
  --panel: rgba(255, 255, 255, 0.78);
  --panel-strong: #ffffff;
  --text: #0f172a;
  --muted: #475569;
  --line: rgba(148, 163, 184, 0.22);
  --gold: #a855f7;
  --purple: #a855f7;
}

body {
  background: var(--bg);
  color: var(--text);
}

.page:before {
  opacity: 0.28;
  background-image:
    linear-gradient(rgba(0, 229, 255, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(168, 85, 247, 0.08) 1px, transparent 1px);
}

.page:after {
  opacity: 0.65;
  background:
    radial-gradient(ellipse at 15% 15%, rgba(0, 229, 255, 0.13), transparent 34%),
    radial-gradient(ellipse at 85% 85%, rgba(168, 85, 247, 0.12), transparent 38%);
}

.nav {
  background: rgba(255, 255, 255, 0.78);
  border-color: var(--line);
  box-shadow: 0 12px 36px rgba(15, 23, 42, 0.08);
}

.brand-mark {
  color: #ffffff;
  background: linear-gradient(135deg, #00e5ff, #a855f7);
  box-shadow: 0 0 24px rgba(168, 85, 247, 0.22);
}

.brand small,
.nav-links,
.micro,
.spots,
.section-head p,
.card p,
.step p,
.stat span,
.person p,
.faq p,
.final p,
.footer {
  color: var(--muted);
}

.eyebrow,
.spots b,
.stat strong {
  color: #7c3aed;
}

.eyebrow:before {
  background: #a855f7;
  box-shadow: 0 0 12px rgba(168, 85, 247, 0.55);
}

.btn-primary {
  color: #07070d;
  background: linear-gradient(135deg, #00e5ff, #a855f7, #ec4899);
  box-shadow: 0 0 20px rgba(0, 229, 255, 0.22);
}

.btn-primary:hover {
  box-shadow: 0 0 30px rgba(0, 229, 255, 0.35), 0 0 60px rgba(168, 85, 247, 0.18);
}

.btn-secondary {
  color: var(--text);
  background: rgba(255, 255, 255, 0.72);
  border-color: rgba(148, 163, 184, 0.28);
}

.form-card,
.card,
.step,
.person,
.faq details,
.time {
  background: var(--panel);
  border-color: var(--line);
  box-shadow: 0 16px 45px rgba(15, 23, 42, 0.06);
}

.form-card {
  background: rgba(255, 255, 255, 0.88);
  border-color: rgba(168, 85, 247, 0.24);
}

.field input,
.field select {
  color: var(--text);
  background: rgba(248, 250, 252, 0.96);
  border-color: rgba(148, 163, 184, 0.28);
}

.field label,
.consent,
.time span {
  color: var(--muted);
}

.icon {
  color: #7c3aed;
  background: linear-gradient(135deg, rgba(0, 229, 255, 0.14), rgba(168, 85, 247, 0.14));
}

.step-num {
  color: #7c3aed;
}

.stat {
  border-top-color: rgba(168, 85, 247, 0.6);
}

.final {
  background: radial-gradient(circle at 50% 0, rgba(168, 85, 247, 0.13), transparent 55%), rgba(255, 255, 255, 0.8);
  border-color: rgba(168, 85, 247, 0.25);
  box-shadow: 0 18px 55px rgba(15, 23, 42, 0.07);
}

.footer a:hover,
.nav-links a:hover {
  color: #7c3aed;
}

.toast {
  background: #ffffff;
  border-color: rgba(168, 85, 247, 0.28);
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.18);
}

.toast strong {
  color: #7c3aed;
}

body.legal-page{margin:0;min-height:100vh;background:#f8f7fc;color:#111827;font-family:Inter,Arial,sans-serif}.legal-shell{width:min(760px,calc(100% - 40px));margin:8vh auto;padding:42px;background:#fff;border:1px solid #e5e7eb;border-radius:24px;box-shadow:0 18px 50px rgba(15,23,42,.08);line-height:1.7}.legal-shell h1{font-family:Montserrat,Arial,sans-serif;letter-spacing:-.04em}.legal-shell a{color:#560591}.legal-kicker{color:#560591;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}
