/* Benefits page additions for the established EMT Cash design. */
body.page-benefits .article-hero h1 { font-size: clamp(2.1rem,3vw,3rem); line-height: 1.15; }
.bf-page-label { margin: 0 0 24px; font-size: .82rem; color: #7a4f96; font-weight: 600; }
.page-benefits .et-hero-copy .st-eyebrow { font-size: .68rem; line-height: 1.9; letter-spacing: .04em; }
.page-benefits .et-hero-copy .bf-benefit-types { color: #7331a6; font-weight: 650; border-radius: 11px; padding: 13px 17px; background: #f1e5fc; font-size: .87rem; }
.et-content .bf-quote { border-left: 3px solid #a65fda; padding: 16px 22px; background: #f7f1fc; border-radius: 0 12px 12px 0; color: #643a80; font-weight: 600; }
.bf-programs { display: grid; gap: 20px; padding-top: 30px; }
.et-content .bf-program { border: 1px solid #e6d9f0; border-radius: 19px; padding: 30px; background: linear-gradient(135deg,#fcf9ff,white 65%); }
.et-content .bf-program h2 { font-size: 1.65rem; }
.bf-program h2::before { width: 28px; height: 3px; margin-bottom: 15px; }
.bf-subheading { color: #553465; font-size: 1.2rem; line-height: 1.4; margin: 25px 0 16px; }
.et-content .bf-related { margin-top: 16px; font-weight: 600; }
.bf-program .st-list { display: grid; grid-template-columns: 1fr 1fr; gap: 3px 15px; }
.bf-process { display: grid; gap: 18px; }
.bf-process .st-step .st-list { display: grid; grid-template-columns: 1fr 1fr; }
.bf-cta { margin-top: 25px; }
.et-content .bf-cta .btn { color: white; text-decoration: none; white-space: normal; }
.bf-table-wrap { overflow-x: auto; }
.bf-table { min-width: 600px; }
.bf-table th:first-child,.bf-table td:first-child { width: 23%; font-weight: 650; }
.bf-table th,.bf-table td { padding: 19px 21px; font-size: .94rem; }
.bf-example { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin: 24px 0; }
.et-content .bf-example p { margin: 0; border: 1px solid #e5d4f3; background: #f4eafa; padding: 23px 20px; border-radius: 15px; font-size: 1.06rem; line-height: 1.7; font-weight: 650; color: #653289; }
.bf-expenses .et-benefit:last-child { grid-column: 1 / -1; }
.page-benefits .et-closing .bf-final-note { font-size: .82rem; line-height: 1.8; color: #eddef9; margin: 22px auto 0; }
@media(max-width:680px) {
 body.page-benefits .article-hero h1 { font-size: 2.15rem; }
 .et-content .bf-program { padding: 24px 20px; }
 .bf-program .st-list,.bf-process .st-step .st-list,.bf-example { grid-template-columns: 1fr; }
 .bf-cta .btn { width: 100%; }
 .bf-table th,.bf-table td { padding: 16px; }
 .et-content .bf-example p { padding: 19px 21px; }
}
