/* Rate buydowns — extends seller-concessions design system; overflow-safe. */
.rb-page{overflow-x:clip;max-width:100%}
.rb-page h1,.rb-page .lede,.rb-page .btn{overflow-wrap:anywhere;word-break:break-word}
.rb-cta .btn{white-space:normal;max-width:100%}
.rb-form .banner{background:#f4f8fb;border:1px solid #d5deea;border-radius:10px;padding:10px 12px;margin:0 0 12px;color:#132b52}
.rb-table-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}
.rb-schedule{width:100%;min-width:0}
.rb-schedule th,.rb-schedule td{white-space:normal}
.rb-schedule td.num,.rb-schedule th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.rb-schedule tr.is-full-note td{background:#d9edf7;font-weight:700}
.rb-schedule tr.is-full-note td:first-child{box-shadow:inset 4px 0 0 #132b52}
.rb-chart-fig{margin:16px 0;min-width:0;max-width:100%}
.rb-chart{width:100%;min-width:0;overflow:hidden}
.rb-chart svg{display:block;width:100%;height:auto;max-width:100%}
.rb-cards{margin-top:12px}
.rb-equal{margin:16px 0;padding:14px 16px;background:#f4f8fb;border:1px solid #d5deea;border-radius:12px;min-width:0}
.rb-equal h3{margin:0 0 8px}
.ex-card{margin:0 0 16px;padding:16px 18px;border:1px solid #d5deea;border-radius:12px;background:#fff;min-width:0}
.ex-card h3{margin:0 0 8px}
.rb-page blockquote{margin:0 0 16px;padding:12px 16px;border-left:4px solid #132b52;background:#f4f8fb}
.rb-page .form-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.rb-alerts p,.sc-alerts p{margin:8px 0}
.rb-alerts .warn,.sc-alerts .warn{background:#fff6e5;border:1px solid #e6c98a;border-radius:8px;padding:8px 10px}
@media (max-width:480px){
  .rb-schedule{font-size:13px}
  .sc-cards,.rb-cards,.sc-grid{grid-template-columns:1fr}
}
@media print{
  header.site-header, footer.site-footer, .hero-actions, .rb-cta, .sc-cta, .form-actions, .crumbs{display:none !important}
  .rb-page{overflow:visible}
}
