/* Growth pages (guides + free tools). Builds on site.css tokens; adds nothing brand-new. */
.gr-alt { background: var(--sunk); }
.gr-crumbs a { color: inherit; }
.gr-list { list-style: none; margin: 0; padding: 0; }
.gr-q { display: flex; flex-direction: column; gap: 12px; }
.gr-ask { font: 500 18px/1.35 var(--display); letter-spacing: -0.01em; color: var(--ink); }
.gr-signals { margin: 0; padding-left: 22px; display: flex; flex-direction: column; gap: 14px; line-height: 1.6; color: var(--ink-2); }
.gr-signals b { color: var(--ink); }
.gr-checks li span { line-height: 1.55; }
.gr-faq { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); padding: 16px 20px; }
.gr-faq summary { cursor: pointer; font-weight: 600; color: var(--ink); list-style-position: outside; }
.gr-faq p { margin-top: 10px; color: var(--ink-2); line-height: 1.6; }
.gr-card { text-decoration: none; color: inherit; transition: transform .2s, box-shadow .2s; }
.gr-card:hover { transform: translateY(-2px); }
.band .gr-on-band { --fg: var(--band-ink); box-shadow: inset 0 0 0 1px rgba(255,255,255,.22); }

/* tools */
.gr-tool { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: start; }
@media (max-width: 900px) { .gr-tool { grid-template-columns: minmax(0, 1fr); } }
.gr-out { position: sticky; top: 90px; }
@media (max-width: 900px) { .gr-out { position: static; } }
.gr-3col { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 520px) { .gr-3col { grid-template-columns: minmax(0, 1fr); } }
.gr-hours { border: 0; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; }
.gr-hours legend { font-weight: 600; margin-bottom: 8px; padding: 0; }
.gr-check { display: flex; gap: 10px; align-items: center; font-size: 15px; }
.gr-copyrow { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; }
.gr-code { font-size: 12.5px; line-height: 1.5; white-space: pre; overflow: auto; min-height: 260px; resize: vertical; }
.gr-warn { margin: 0; padding-left: 18px; color: var(--mid); }
.gr-warn:empty { display: none; }
.gr-card-print { display: grid; grid-template-columns: 132px minmax(0, 1fr); gap: 18px; align-items: center; padding: 20px; border-radius: var(--r-md); background: #fff; color: #0B1220; border: 1px solid var(--line); }
.gr-card-print .muted { color: #6A7387; }
.gr-card-name { font-size: 19px; letter-spacing: -0.01em; }
.gr-qr svg { width: 132px; height: 132px; display: block; }
@media (max-width: 420px) { .gr-card-print { grid-template-columns: minmax(0, 1fr); justify-items: start; } }
.gr-tpl { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); padding: 18px 20px; display: flex; flex-direction: column; gap: 10px; }
.gr-tpl pre { margin: 0; white-space: pre-wrap; font: 15px/1.55 var(--body); color: var(--ink); }
.gr-tpl .row { justify-content: space-between; }

/* printing the review card: only the card prints */
@media print {
  body.gr-printing * { visibility: hidden !important; }
  body.gr-printing #rv-card, body.gr-printing #rv-card * { visibility: visible !important; }
  body.gr-printing #rv-card { position: fixed; left: 0.5in; top: 0.5in; width: 5in; grid-template-columns: 1.8in minmax(0, 1fr); border: 1px solid #ccc; box-shadow: none; }
  body.gr-printing .gr-qr svg { width: 1.8in; height: 1.8in; }
}
