/* Larger type, preserving the approved cream / forest / terracotta palette. */
body { overflow-wrap: break-word; }
a { color: inherit; }
.brand, .brand:visited { color: #233D33; }
header .brand { font-size: clamp(36px, 3.3vw, 46px); line-height: 1.12; }
header > .brand { font-size: clamp(48px, 8vw, 70px); }
.brand small { font-size: 20px; font-weight: 750; line-height: 1.5; letter-spacing: 2px; margin-top: 8px; }
.tag { font-size: 30px; font-weight: 750; }
nav a { font-size: 19px; line-height: 1.4; }
nav { gap: 12px 20px; flex-wrap: wrap; }
.nav { gap: 20px; flex-wrap: wrap; }
.nav > nav { flex: 1 1 570px; justify-content: flex-end; }
.eyebrow { font-size: 16px; line-height: 1.6; letter-spacing: 1.4px; }
.button, .btn { font-size: 20px; line-height: 1.4; min-height: 48px; }
.caption, .note, footer, .num { font-size: 18px; line-height: 1.65; }
.hero p { font-size: 22px; }
.card p, .card li { font-size: 21px; line-height: 1.65; }
.strip { font-size: 21px; line-height: 1.55; }
label { font-size: 19px; line-height: 1.5; }
input, select, textarea { font-size: 20px; }
.qsub, .qhint, .qnote { font-size: 18px; line-height: 1.6; }
.qlabel, .goal > span:nth-child(2), .qcard b { font-size: 20px; line-height: 1.4; }
.pill, .qbtn { font-size: 18px; min-height: 48px; line-height: 1.4; }
.qcard small, .qf small, .qsum, .qbadge { font-size: 17px; line-height: 1.5; }
.qopt, .qstepnum { font-size: 15px; }
textarea.qta, input.qin { font-size: 20px; line-height: 1.5; }
.qmatrix th { font-size: 15px; letter-spacing: 0; }
.qmatrix td:first-child { font-size: 18px; }
.qmatrix td { height: 48px; }
.qmatrix input { width: 24px; height: 24px; }
@media (min-width: 801px) {
  body:has(.wrap) { font-size: 21px; }
}
@media (max-width: 800px) {
  header.site, header:has(.nav) { position: relative; }
  .nav > nav { flex: 1 1 100%; justify-content: flex-start; }
  header .brand { font-size: 38px; }
  header > .brand { font-size: 48px; }
  nav a, .button, .btn { font-size: 20px; }
  .eyebrow { font-size: 16px; }
  body:has(.wrap) { font-size: 22px; }
  .qwrap { padding: 24px 14px; }
  .qgoals, .qtwo, .qpair { grid-template-columns: 1fr; }
  .goal { padding: 14px 10px; gap: 9px; }
  .qmatrix th { font-size: 13px; padding: 10px 2px; }
  .qmatrix td:first-child { font-size: 16px; padding-left: 5px; }
  .qmatrix td { padding: 8px 2px; }
  .qf { width: 44%; }
  .fdash { display: none; }
  .qprogress { flex-wrap: wrap; }
  .qnav { gap: 8px; }
  .qbtn { padding: 13px 20px; }
}
