/* Purchase-model cash receipts; intentionally separate from recurring treatment sales. */
.revenue { background:#f6f2eb; border-top:1px solid #dfd1b7; padding:80px 24px; color:#332f2d; }
.revenue__inner { max-width:1050px; margin:auto; }
.revenue__header { max-width:900px; }
.revenue h2 { font-family:var(--font-serif); font-size:clamp(26px,3vw,40px); font-weight:500; line-height:1.6; letter-spacing:.02em; margin:0 0 24px; }
.revenue h2 span,.revenue__continuation h3 span { color:#963f50; }
.revenue__lead { font-size:17px; line-height:2; margin-bottom:30px; }
.revenue__lead strong { font-weight:600; }
.revenue__totals { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid #d4bf95; border-radius:12px; overflow:hidden; background:#fffdfb; }
.revenue__totals>div { padding:26px 20px; }
.revenue__totals>div+div { border-left:1px solid #e2d7c4; }
.revenue__totals h3 { font-family:var(--font-sans); font-size:15px; font-weight:600; margin:0 0 12px; }
.revenue__totals p { margin:0 0 8px; color:#963f50; font-size:18px; white-space:nowrap; }
.revenue__totals strong { font-size:46px; font-weight:500; font-variant-numeric:tabular-nums; }
.revenue__totals small { display:block; font-size:12px; line-height:1.8; color:#625b53; }
.revenue__conditions { margin:22px 0 42px; font-size:14px; line-height:1.95; }
.revenue__conditions p { margin:0 0 12px; }
.revenue__block { background:#fffdfb; border:1px solid #dfd1b7; border-radius:12px; padding:30px; margin-top:30px; }
.revenue__label { font-size:13px; color:#806b42; margin:0 0 16px; letter-spacing:.06em; }
.revenue__block h3 { font-family:var(--font-serif); font-size:26px; font-weight:500; line-height:1.65; margin:0 0 22px; }
.revenue__block h3 small { display:block; font-family:var(--font-sans); font-size:14px; margin-top:5px; }
.revenue__block p { line-height:1.9; }
.revenue__chart-layout { display:grid; grid-template-columns:1.1fr 1fr; gap:30px; align-items:center; }
.revenue__chart { margin:0; min-width:0; }
.revenue__chart svg { display:block; width:100%; height:auto; }
.revenue__chart text { font-family:var(--font-sans); font-size:14px; fill:#625b53; }
.revenue__chart figcaption { font-size:13px; line-height:1.8; margin-top:6px; color:#625b53; }
.revenue table { width:100%; border-collapse:collapse; font-size:14px; font-variant-numeric:tabular-nums; }
.revenue caption { text-align:left; font-size:14px; margin-bottom:14px; color:#625b53; }
.revenue th,.revenue td { padding:13px 8px; text-align:right; border-bottom:1px solid #e9e0d3; }
.revenue th { font-weight:500; }
.revenue thead th { font-size:12px; line-height:1.65; color:#625b53; }
.revenue th:first-child { text-align:left; }
.revenue td:last-child { color:#963f50; font-weight:600; }
.revenue__finding { font-weight:600; padding:18px 0 0; margin-bottom:12px; }
.revenue__note { font-size:14px; color:#625b53; margin:12px 0 0; }
.revenue__details { border-top:1px solid #dfd1b7; margin-top:24px; }
.revenue__details summary { cursor:pointer; padding:22px 0 0; font-size:15px; }
.revenue__detail-body { padding-top:20px; font-size:14px; line-height:1.9; }
.revenue__detail-body h4 { font-size:16px; margin:0 0 12px; }
.revenue__fees { margin:0; }
.revenue__fees>div,.revenue__breakdown dl>div { display:flex; justify-content:space-between; gap:15px; padding:7px 0; border-bottom:1px solid #eee5d9; }
.revenue dd { margin:0; white-space:nowrap; }
.revenue__formula { margin:24px 0; padding:16px 20px; background:#f6f2eb; }
.revenue__breakdown { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.revenue__breakdown dl { margin:0; }
.revenue__plans { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:26px 0; }
.revenue__plans article { border-top:1px solid #cbb386; padding:12px 0; }
.revenue__plans p { font-size:14px; margin:8px 0; }
.revenue__plans h4 { font-size:27px; font-weight:500; margin:8px 0; }
.revenue__plans h4 span { font-size:13px; }
.revenue__retention-table tr:nth-child(2) { background:#f6f2eb; }
.revenue__cta { margin:35px auto 0; text-align:center; }
.revenue__cta p { font-size:16px; line-height:1.9; }
.revenue__cta .ad-actions { max-width:800px; margin:24px auto 0; grid-template-columns:1fr 1fr; }
@media(max-width:767px){
 .revenue { padding:52px 20px; }
 .revenue h2 { font-size:26px; line-height:1.65; }
 .revenue__lead { font-size:16px; }
 .revenue__totals { grid-template-columns:1fr; }
 .revenue__totals>div { padding:19px 20px; }
 .revenue__totals>div+div { border-left:0; border-top:1px solid #e2d7c4; }
 .revenue__totals h3 { margin-bottom:4px; }
 .revenue__totals strong { font-size:42px; }
 .revenue__conditions { margin-bottom:28px; }
 .revenue__block { padding:24px 16px; }
 .revenue__block h3 { font-size:23px; }
 .revenue__chart-layout { grid-template-columns:1fr; gap:26px; }
 .revenue__chart text { font-size:16px; }
 .revenue table { font-size:13px; }
 .revenue td,.revenue th { padding:12px 4px; }
 .revenue__breakdown,.revenue__plans,.revenue__cta .ad-actions { grid-template-columns:1fr; }
 .revenue__formula { padding:12px; }
 .revenue__plans { gap:4px; }
 .revenue__fees>div { align-items:center; }
 .revenue__fees dt { max-width:65%; }
 .revenue__cta .ad-actions { max-width:380px; }
}
@media(max-width:359px){.revenue h2 {font-size:23px;}.revenue__block {padding:22px 12px;}.revenue table {font-size:12px;}.revenue thead th {font-size:11px;}}
