/* A quieter shared surface; blue remains the brand and action accent. */
:root {
  --blue: #3d6b85;
  --blue-dark: #2e546b;
  --sky: #d1dce3;
  --pale: #f1f5f7;
  --background: #f8f9fa;
  --ink: #2d3941;
  --muted: #66747d;
  --line: #e4e8eb;
}

/* Keep the established sizing and responsive layout. */
h1 { font-weight: 750; }
h2, h3 { font-weight: 700; }
.public-site .hero h1,
.public-site .interest-intro h1 { font-weight: 750; }
.public-site .hero h1 > span,
.public-site .interest-intro h1 > span { color: var(--ink); }
.public-site .hero h1 .praxis-accent,
.public-site .interest-intro h1 .praxis-accent { color: var(--blue); }

.form-card,
.invitation { border-radius: 10px; box-shadow: none; }
.button { border-radius: 6px; }
.primary { box-shadow: none; }
.primary:hover { transform: none; }
.secondary { border-color: #dce2e6; }
.secondary:hover { background: #f5f7f8; }

dialog { border-color: var(--line); border-radius: 11px; box-shadow: 0 18px 60px #1c28331c; }
dialog::backdrop { background: #25313b40; }

/* Supporting labels and public surfaces use neutral tones. */
.eyebrow,
footer { color: var(--muted); }
.section-label { color: var(--muted); }

.invitation { background: #f3f6f8; border-color: var(--line); }
.contact-card { background: #fff; border-color: var(--line); }
.note-mark { background: #edf3f6; color: #6a8b9f; }
