/* ── Free one-page resources (/resources/) ── mobile-first; scoped to .rs- ──
   Loaded after styles.css and site.css. The call button is the one filled
   button on these pages, so the newsletter box steps back to an outline, the
   same way the homepage hero does it. */
.rs-hero { padding: 40px 0 0; }
.rs-hero h1 {
  font-family: var(--serif); font-weight: 400;
  font-size: clamp(1.85rem, 5.6vw, 2.85rem);
  letter-spacing: -.03em; line-height: 1.15;
  margin: 0; max-width: 20ch;
}
.rs-intro { margin: 16px 0 0; max-width: 620px; font-size: 1.05rem; line-height: 1.75; color: var(--ink-2); }

.rs-body { max-width: 720px; margin: 0 auto; padding: 0 0 40px; }

.rs-card {
  margin: 28px 0 0; padding: 24px 24px 22px;
  background: #fff; border: 1px solid var(--line); border-radius: 12px;
}
.rs-card h2 {
  font-family: var(--serif); font-weight: 400;
  font-size: 1.25rem; letter-spacing: -.01em; line-height: 1.3;
  margin: 26px 0 10px; color: var(--ink);
}
.rs-card h2:first-child { margin-top: 0; }
.rs-card p { margin: 0; font-size: 1rem; line-height: 1.75; color: var(--ink-2); }
.rs-card a { color: var(--ink); font-weight: 500; text-decoration: underline; text-decoration-color: var(--coral); text-underline-offset: 3px; text-decoration-thickness: 1.5px; }

.rs-steps, .rs-bullets { margin: 0; padding-left: 24px; }
.rs-steps li, .rs-bullets li { margin: 0 0 12px; padding-left: 4px; font-size: 1rem; line-height: 1.7; color: var(--ink-2); }
.rs-steps li:last-child, .rs-bullets li:last-child { margin-bottom: 0; }
.rs-steps li::marker { font-family: var(--serif); color: var(--blue-2); font-weight: 500; }
.rs-steps li strong { color: var(--ink); font-weight: 600; }

/* Blank write-in lines on the Hard-Day Plan, for pen and paper. */
.rs-prompts li { margin-bottom: 18px; color: var(--ink); }
.rs-lines { display: block; margin-top: 4px; }
.rs-lines span { display: block; height: 34px; border-bottom: 1px solid #B8AEBE; }

.rs-link { margin: 22px 0 0; font-size: 1rem; line-height: 1.7; color: var(--ink-2); }
.rs-print-wrap { margin: 22px 0 0; }
.rs-print { font-size: .95rem; }

.rs-disclaimer { margin: 26px 0 0; font-size: .88rem; line-height: 1.6; color: var(--ink-2); }

/* The newsletter: a quiet secondary box. */
.rs-signup { margin: 36px 0 0; padding: 22px 20px; background: var(--bg-s); border: 1px solid var(--line); border-radius: 16px; }
.rs-signup .pkj-nl-btn { background: transparent !important; border: 1.5px solid var(--ink) !important; color: var(--ink) !important; }
.rs-signup .pkj-nl-btn:hover { background: rgba(232,180,172,.3) !important; }

.rs-call { margin: 32px 0 0; max-width: 560px; }
.rs-call .cta-call { width: 100%; max-width: 420px; }

/* The index list. */
.rs-list { list-style: none; margin: 30px 0 0; padding: 0; }
.rs-item { border-top: 1px solid var(--line); padding: 22px 0; }
.rs-item:last-child { border-bottom: 1px solid var(--line); }
.rs-item h2 {
  font-family: var(--serif); font-weight: 400;
  font-size: clamp(1.25rem, 4vw, 1.55rem); letter-spacing: -.02em; line-height: 1.25;
  margin: 0 0 6px;
}
.rs-item h2 a {
  display: inline-flex; align-items: center; min-height: 44px;
  color: var(--ink); text-decoration: underline; text-decoration-color: var(--coral);
  text-underline-offset: 4px; text-decoration-thickness: 1.5px;
}
.rs-item h2 a:hover { color: var(--coral); }
.rs-item p { margin: 0; font-size: 1rem; line-height: 1.7; color: var(--ink-2); }

/* Inline links: padding widens the tap area to 44px without moving the text. */
.rs-link .quiet-link, .rs-card p a { padding: 13px 0; }

@media (max-width: 640px) {
  .wrap { padding: 0 22px; }
  .rs-hero { padding-top: 28px; }
  .rs-card { padding: 20px 18px; }
}

/* ── Print: the card alone, on one page ── */
@media print {
  @page { margin: 14mm 16mm; }
  nav, footer, .rs-signup, .rs-call, .rs-print-wrap, .pkj-bar, #soro-blog { display: none !important; }
  html, body { background: #fff !important; }
  body { padding: 0 !important; margin: 0 !important; color: #000; font-size: 11pt; }
  .wrap { max-width: none !important; padding: 0 !important; }
  .rs-hero { padding: 0; }
  .rs-hero h1 { font-size: 22pt; max-width: none; color: #000; }
  .rs-intro { margin-top: 6pt; font-size: 11pt; line-height: 1.5; color: #000; max-width: none; }
  .rs-body { max-width: none; padding: 0; }
  .rs-card { margin-top: 12pt; padding: 12pt 14pt; border: 1.25pt solid #000; border-radius: 8pt; break-inside: avoid; page-break-inside: avoid; }
  .rs-card h2 { font-size: 13pt; margin: 12pt 0 4pt; color: #000; break-after: avoid; }
  .rs-card p, .rs-steps li, .rs-bullets li { font-size: 11pt; line-height: 1.45; color: #000; }
  .rs-steps li, .rs-bullets li { margin-bottom: 5pt; }
  .rs-steps li strong, .rs-card a { color: #000; }
  .rs-prompts li { margin-bottom: 8pt; }
  .rs-lines span { height: 22pt; border-bottom: .75pt solid #555; }
  .rs-link, .rs-disclaimer { margin-top: 10pt; font-size: 10pt; line-height: 1.4; color: #000; }
  .rs-link .quiet-link, .rs-card p a { padding: 0; text-decoration: none; }
}
