/* R166: cache-independent contrast correction for every RSF dark lead/CTA panel. */
body.rsf main section:is(.r149-lead-magnet, .r151-rep-cta) {
  color: #fff !important;
}

body.rsf main section:is(.r149-lead-magnet, .r151-rep-cta) .r149-lead-grid > :first-child,
body.rsf main section:is(.r149-lead-magnet, .r151-rep-cta) .r149-lead-grid > :first-child :where(h1, h2, h3, h4, p, li, strong, span) {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  opacity: 1 !important;
}

body.rsf main section:is(.r149-lead-magnet, .r151-rep-cta) .r149-lead-grid > :first-child .eyebrow {
  color: #e5d5c1 !important;
  -webkit-text-fill-color: #e5d5c1 !important;
}

body.rsf main section:is(.r149-lead-magnet, .r151-rep-cta) .r149-lead-grid > :first-child a:not(.button) {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-decoration-color: #e5d5c1 !important;
}

body.rsf main section.r149-lead-magnet .r149-mini-form,
body.rsf main section.r149-lead-magnet .r149-mini-form :where(label, legend, p, span),
body.rsf main section.r151-rep-cta .r151-cta-card,
body.rsf main section.r151-rep-cta .r151-cta-card :where(h1, h2, h3, h4, p, li, strong, span) {
  color: #17252c !important;
  -webkit-text-fill-color: #17252c !important;
}

body.rsf main section.r151-rep-cta .r151-cta-card a {
  color: #7a3100 !important;
  -webkit-text-fill-color: #7a3100 !important;
}

body.rsf main .r153-results,
body.rsf main .r153-results :where(h1, h2, h3, h4, p, li, strong, span) {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  opacity: 1 !important;
}

body.rsf main .r153-results .eyebrow,
body.rsf main .r153-results h4 {
  color: #e5d5c1 !important;
  -webkit-text-fill-color: #e5d5c1 !important;
}

.r166-tax-rhythm {
  background: #f7f4ee;
}

.r166-tax-rhythm .wrap {
  display: grid;
  grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
  gap: clamp(1.5rem, 6vw, 5rem);
  align-items: center;
}

.r166-tax-rhythm h2 {
  color: #00446a;
  font: 700 clamp(2.25rem, 5vw, 4.5rem)/1 var(--r148-editorial);
  margin: .25rem 0;
}

.r166-tax-rhythm .r166-rhythm-copy {
  border-left: 5px solid #b9ab97;
  padding-left: clamp(1.2rem, 3vw, 2rem);
}

@media (max-width: 800px) {
  .r166-tax-rhythm .wrap { grid-template-columns: 1fr; }
}

/* RSF compact footers historically used inline middle-dot separators. The shared
   link rule made every anchor block-level, leaving the dots stranded. */
body.rsf .footer > .wrap > p:last-child {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .55rem 1.2rem !important;
  align-items: center !important;
  font-size: 0 !important;
}

body.rsf .footer > .wrap > p:last-child > a {
  display: inline-flex !important;
  width: auto !important;
  margin: 0 !important;
  font-size: 1rem !important;
  line-height: 1.45 !important;
}
