/* Optional editorial component stylesheet. All selectors are namespaced. */
.rb-content {
  --rb-content-ink: #202b30;
  --rb-content-muted: #49575c;
  --rb-content-paper: #fffefa;
  --rb-content-line: #c8ceca;
  --rb-content-accent: #234d42;
  --rb-content-focus: #87511b;
  color: var(--rb-content-ink);
  background: var(--rb-content-paper);
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.7;
  overflow-wrap: anywhere;
}
.rb-content *, .rb-content *::before, .rb-content *::after { box-sizing: border-box; }
.rb-content h2, .rb-content h3 { color: inherit; font-family: inherit; text-wrap: balance; }
.rb-content h2 { font-size: clamp(1.5rem, 2.3vw, 2.15rem); line-height: 1.22; margin: 0 0 1.25rem; }
.rb-content h3 { font-size: 1.12rem; line-height: 1.4; margin: 0 0 .5rem; }
.rb-content p { max-width: 72ch; margin: 0 0 1.1rem; }
.rb-content__outcome { max-width: 78ch; }
.rb-content__outcome .rb-content__block { margin-bottom: 1.75rem; }
.rb-content__outcome .rb-content__block:first-child p { font-size: 1.14rem; }
.rb-content__section, .rb-content__related { margin-top: 3rem; padding-top: 2rem; border-top: 1px solid var(--rb-content-line); }
.rb-content__intro { color: var(--rb-content-muted); }
.rb-content__columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 2.5rem; }
.rb-content__preparation .rb-content__columns { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rb-content a { color: var(--rb-content-accent); text-decoration: underline; text-underline-offset: .2em; }
.rb-content a:focus-visible, .rb-faq summary:focus-visible { outline: 3px solid var(--rb-content-focus); outline-offset: 4px; border-radius: 2px; }
.rb-content__source { display: inline-block; padding-block: .25rem; min-height: 44px; align-content: center; }
.rb-content__references { font-size: .9rem; }
.rb-content__related ul { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; }
.rb-content__related-link { display: inline-flex; align-items: center; min-height: 44px; padding: .5rem 0; }
.rb-content__cta { margin-top: 2.5rem; padding: 1.5rem 0; }
.rb-content a.rb-content__primary { display: inline-flex; align-items: center; min-height: 48px; padding: .8rem 1.3rem; color: #fff; background: var(--rb-content-accent); text-decoration: none; font-weight: 650; border: 1px solid var(--rb-content-accent); }
.rb-content__cta p { color: var(--rb-content-muted); font-size: .94rem; margin-top: .75rem; }
.rb-faq { border-top: 1px solid var(--rb-content-line, #c8ceca); }
.rb-faq__item { border-bottom: 1px solid var(--rb-content-line, #c8ceca); }
.rb-faq__question { cursor: pointer; min-height: 48px; padding: 1rem .3rem; font-weight: 650; line-height: 1.5; }
.rb-faq__question::marker { color: var(--rb-content-accent, #234d42); }
.rb-faq__answer { padding: 0 .3rem 1rem; max-width: 78ch; }
.rb-faq__answer p { margin-bottom: 0; }
.rb-content--preview { max-width: 1120px; margin: 0 auto; padding: clamp(1rem, 4vw, 3.5rem); font-family: Georgia, 'Times New Roman', serif; }
.rb-content__preview-header { margin-bottom: 3rem; }
.rb-content__preview-header h1 { font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.12; max-width: 24ch; }
.rb-content__preview-header p { color: var(--rb-content-muted); }
.rb-content__preview-index { padding-left: 1.2rem; }
.rb-content__preview-index a { display: inline-block; min-height: 44px; padding: .5rem 0; }
.rb-content--city { padding-block: 1.5rem; }
@media (max-width: 720px) {
  .rb-content__columns, .rb-content__preparation .rb-content__columns { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
  .rb-content__section, .rb-content__related { margin-top: 2rem; padding-top: 1.5rem; }
}
@media print {
  .rb-faq__item > .rb-faq__answer { display: block !important; }
  .rb-content__cta { display: none; }
}
