/* Lead-magnet resource pages (/resources/<slug>/). Printable: "Save as PDF" gives a clean document. */
.rc-shell { background: var(--cream, #FAF7F2); padding: 48px 0 72px; }
.rc-doc {
  max-width: 860px; margin: 0 auto; padding: 40px clamp(20px, 5vw, 56px); background: #fff;
  border: 1px solid var(--border, #E2DDD8); border-radius: 18px; color: var(--ink, #1C1410);
  font-family: var(--sans, system-ui, sans-serif); font-size: 16px; line-height: 1.65;
}
.rc-eyebrow { font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--crimson, #8B1A1A); margin: 0 0 10px; }
.rc-doc h1 { font-family: var(--serif, Georgia, serif); font-size: clamp(1.8rem, 4vw, 2.5rem); line-height: 1.15; margin: 0 0 12px; }
.rc-meta { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; font-size: 13px; color: var(--muted, #7A726C); margin: 0 0 24px; padding-bottom: 20px; border-bottom: 1px solid var(--border, #E2DDD8); }
.rc-print {
  min-height: 44px; padding: 0 18px; border-radius: 8px; border: 1.5px solid var(--crimson, #8B1A1A);
  background: #fff; color: var(--crimson, #8B1A1A); font: inherit; font-weight: 700; font-size: 14px; cursor: pointer;
}
.rc-print:hover { background: var(--crimson-tint, #FDF5F5); }
.rc-doc h2 { font-family: var(--serif, Georgia, serif); font-size: 1.45rem; line-height: 1.25; margin: 40px 0 12px; scroll-margin-top: 96px; }
.rc-doc h3 { font-size: 1.05rem; margin: 20px 0 8px; }
.rc-doc p { margin: 0 0 14px; }
.rc-lede { font-size: 1.1rem; color: #3a302a; }
.rc-small { font-size: 13px; color: var(--muted, #7A726C); }
.rc-note { background: var(--crimson-tint, #FDF5F5); border-left: 4px solid var(--crimson, #8B1A1A); padding: 14px 18px; border-radius: 8px; margin: 20px 0; font-size: 15px; }
.rc-check-for { font-size: 14px; color: var(--muted, #7A726C); font-style: italic; }
.rc-milestone { background: #F4F8F2; border: 1px solid #D5E6CF; border-radius: 8px; padding: 10px 14px; font-size: 15px; }
.rc-toc { background: var(--stone, #F2EEEA); border-radius: 12px; padding: 16px 20px; margin: 0 0 8px; font-size: 14px; }
.rc-toc ol { margin: 6px 0 0; padding-left: 20px; columns: 2 220px; }
.rc-toc a { color: var(--ink, #1C1410); }
.rc-list, .rc-numbered { padding-left: 22px; margin: 0 0 16px; }
.rc-list li, .rc-numbered li { margin: 0 0 8px; }
.rc-check { list-style: none; padding: 0; margin: 0 0 16px; }
.rc-check li { position: relative; padding-left: 32px; margin: 0 0 10px; }
.rc-check li::before {
  content: ''; position: absolute; left: 0; top: 3px; width: 18px; height: 18px;
  border: 2px solid var(--crimson, #8B1A1A); border-radius: 4px; box-sizing: border-box;
}
.rc-card { border: 1px solid var(--border, #E2DDD8); border-radius: 12px; padding: 16px 20px; margin: 0 0 14px; break-inside: avoid; }
.rc-card h3 { margin-top: 0; }
.rc-card p { margin-bottom: 8px; font-size: 15px; }
.rc-cols { display: grid; gap: 8px 32px; grid-template-columns: 1fr; }
@media (min-width: 720px) { .rc-cols { grid-template-columns: 1fr 1fr; } }
.rc-table-wrap { overflow-x: auto; margin: 0 0 16px; -webkit-overflow-scrolling: touch; }
.rc-table { width: 100%; min-width: 620px; border-collapse: collapse; font-size: 14px; line-height: 1.5; }
.rc-table th, .rc-table td { border: 1px solid var(--border, #E2DDD8); padding: 10px 12px; text-align: left; vertical-align: top; }
.rc-table th { background: var(--stone, #F2EEEA); font-weight: 700; }
.rc-scorecard td { height: 34px; }
.rc-scorecard td:first-child { width: 46%; }
.rc-cta { margin: 48px 0 0; padding: 24px; border-radius: 14px; background: linear-gradient(135deg, #1a0505 0%, #3d0a0a 55%, #8B1A1A 100%); color: #fff; }
.rc-cta h2 { color: #fff; margin: 0 0 8px; }
.rc-cta p { color: rgba(255,255,255,.82); }
.rc-cta__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.rc-cta__actions a {
  display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 8px;
  font-weight: 700; font-size: 15px; text-decoration: none;
}
.rc-cta__primary { background: var(--gold, #C9A84C); color: var(--ink, #1C1410); }
.rc-cta__secondary { border: 1.5px solid rgba(255,255,255,.6); color: #fff; }
.rc-footer-note { font-size: 12px; color: var(--muted, #7A726C); margin-top: 24px; }

@media (max-width: 640px) {
  .rc-shell { padding: 16px 0 48px; }
  .rc-doc { border-radius: 12px; padding: 24px 16px; }
}

@media print {
  @page { margin: 16mm; }
  body { background: #fff !important; }
  .nav, .nav__mobile-menu, .footer-v2, .rc-print, .rc-cta__actions, .iss-wa-float, .toast { display: none !important; }
  .rc-shell { padding: 0; background: #fff; }
  .rc-doc { border: 0; padding: 0; max-width: none; font-size: 11.5pt; }
  .rc-doc h2 { break-after: avoid; }
  .rc-table { min-width: 0; }
  .rc-cta { background: none; color: #000; border: 1px solid #999; }
  .rc-cta h2, .rc-cta p { color: #000; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 9pt; color: #555; }
}
