/* Commercial tool landing pages only. Keep the existing rendering engines and site theme. */
.rjl-planner-page .page-hero.rjl-planner-hero {
  min-height: 0 !important;
  padding: 180px clamp(20px, 6vw, 96px) 44px !important;
}
.rjl-planner-page .rjl-planner-hero .page-hero-content { max-width: 1100px; }
.rjl-planner-page .rjl-planner-hero h1 {
  max-width: 1000px;
  font-size: clamp(30px, 4.4vw, 56px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
  margin: 0 0 18px !important;
}
.rjl-planner-page .rjl-planner-hero h2 {
  max-width: 880px;
  margin: 0;
  color: #fff;
  font-size: clamp(18px, 1.7vw, 22px);
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0;
}
.rjl-planner-page .rjl-planner-hero p:not(.eyebrow) {
  max-width: 880px;
  margin-top: 14px;
  font-size: 1rem !important;
  line-height: 1.65;
}
.rjl-planner-page .rjl-planner-hero .hero-actions { margin-top: 26px; gap: 12px; }
.rjl-planner-page .rjl-planner-hero .button { max-width: 100%; white-space: normal; text-align: center; }
html body.rjl-planner-page .rjl-planner-hero p:not(.eyebrow),
html body.rjl-planner-page .rjl-tool-intro p,
html body.rjl-planner-page .rjl-planner-steps p,
html body.rjl-planner-page .rjl-planner-faq p {
  font-family: system-ui, -apple-system, "Segoe UI", Arial, sans-serif !important;
  font-weight: 400;
}
.rjl-planner-page .rjl-tool-intro,
.rjl-planner-page .rjl-planner-steps,
.rjl-planner-page .rjl-planner-faq {
  width: 100%; max-width: 1360px; box-sizing: border-box; margin: 0 auto;
  padding: 30px clamp(20px, 4vw, 40px);
}
.rjl-planner-page .rjl-tool-intro { padding-bottom: 0; }
.rjl-planner-page .rjl-tool-intro h2,
.rjl-planner-page .rjl-planner-steps h2,
.rjl-planner-page .rjl-planner-faq h2 { margin: 0 0 12px; color: #0d4482; font-size: clamp(23px, 2.6vw, 32px); line-height: 1.25; }
.rjl-planner-page .rjl-tool-intro p,
.rjl-planner-page .rjl-planner-steps p,
.rjl-planner-page .rjl-planner-faq p { color: #555d63; font-size: 1rem; line-height: 1.7; }
.rjl-planner-page .rjl-tool-intro p { margin: 0; max-width: 850px; }
.rjl-planner-page .rjl-tool-links { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 14px; }
.rjl-planner-page .rjl-tool-links a { color: #c2410c; font-weight: 650; text-underline-offset: 3px; }
.rjl-planner-page #rjl-designer,
.rjl-planner-page #rjl-viz { scroll-margin-top: 160px; }
.rjl-planner-page .rjl-planner-steps ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; list-style: none; padding: 0; margin: 24px 0 0; }
.rjl-planner-page .rjl-planner-steps { background-color: #0d4482; color: #fff; }
.rjl-planner-page .rjl-planner-steps h2 { color: #fff; }
.rjl-planner-page .rjl-planner-steps p { color: #dbe6f2; }
.rjl-planner-page .rjl-planner-steps li { min-width: 0; padding: 24px; background: #1556a3; border: 1px solid #ffffff29; border-top: 3px solid #ff7a1a; border-radius: 8px; }
.rjl-planner-page .rjl-step-number { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: #ff7a1a; color: #0d4482; font-weight: 700; }
.rjl-planner-page .rjl-planner-steps h3 { margin: 18px 0 10px; color: #fff; font-size: 1.1rem; line-height: 1.4; }
.rjl-planner-page .rjl-planner-steps p { margin: 0; }
.rjl-planner-page .rjl-planner-faq { padding-top: 32px; padding-bottom: 64px; }
.rjl-planner-page .rjl-planner-faq details { margin: 12px 0; background: #fff; border: 1px solid #0d448229; border-radius: 8px; }
.rjl-planner-page .rjl-planner-faq summary { padding: 20px; color: #0d4482; font-weight: 650; line-height: 1.5; cursor: pointer; }
.rjl-planner-page .rjl-planner-faq details p { margin: 0; padding: 0 20px 22px; color: #555d63 !important; }
.rjl-planner-page .rjl-planner-faq summary:focus-visible,
.rjl-planner-page .rjl-tool-links a:focus-visible { outline: 3px solid #c2410c; outline-offset: 4px; }
@media (max-width: 900px) {
  .rjl-planner-page .page-hero.rjl-planner-hero { padding-top: 146px !important; padding-bottom: 32px !important; }
  .rjl-planner-page .rjl-planner-steps ol { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .rjl-planner-page #rjl-designer,
  .rjl-planner-page #rjl-viz { scroll-margin-top: 112px; }
}
@media (prefers-reduced-motion: reduce) { .rjl-planner-page { scroll-behavior: auto; } }
