/* Compact, approachable typography and spacing. */
body, button, input, select, textarea { font-family: 'Nunito Sans', sans-serif !important; }
.eyebrow, .card-kicker, .status, .muted, .q-meta, .progress-line, .save, .section-save, .section-nav, .choice small { font-family: 'Nunito Sans', sans-serif !important; letter-spacing: .02em; }
.eyebrow, .card-kicker { font-weight: 700; letter-spacing: .1em; }
.hero { padding-top: 58px; padding-bottom: 48px; }
.section-head { padding-top: 42px; padding-bottom: 20px; }
.session-grid { padding-bottom: 62px; gap: 12px; }
.session-card { padding: 20px; }
.card-link { margin-top: 12px; }
.back { padding-top: 28px; }
.session-intro { padding-top: 28px; padding-bottom: 30px; }
.session-intro h1 { font-size: clamp(36px, 4vw, 54px); margin-bottom: 8px; }
.session-intro p:last-child { margin-top: 8px; margin-bottom: 0; }
.stage-stepper { width: calc(100% - 48px); margin-top: 12px; margin-bottom: 20px; }
.workspace { gap: 32px; padding-bottom: 48px; }
.question { padding-top: 28px; padding-bottom: 34px; }
.reflection { padding: 20px; }
.admin-page, .print-report { padding-top: 26px; padding-bottom: 56px; }
.people-grid { margin-top: 18px; margin-bottom: 34px; }
.guide > h2 { margin-bottom: 14px; }
@media(max-width:760px) {
  .hero { padding: 34px 20px 32px; }
  .hero h1 { margin-bottom: 20px; }
  .lede { font-size: 14px; line-height: 1.55; }
  .section-head { padding: 34px 20px 18px; }
  .section-head h2 { line-height: 1.2; }
  .session-grid { padding-bottom: 50px; gap: 10px; }
  .session-card { padding: 18px; }
  .session-card p:not(.card-kicker) { font-size: 13px; }
  .back { padding-top: 18px; }
  .session-intro { padding: 24px 20px 25px; }
  .session-intro h1 { line-height: 1.03; }
  .stage-stepper { width: auto; margin-top: 12px; margin-bottom: 18px; }
  .workspace { gap: 24px; padding-bottom: 42px; }
  .question { padding-top: 22px; padding-bottom: 26px; }
  .reflection { padding: 18px; }
  .admin-page, .print-report { padding-top: 18px; padding-bottom: 44px; }
  .people-grid { margin-top: 14px; margin-bottom: 26px; }
}
