.rb-page { --rb-blue:#1459d9; --rb-ink:#172b49; --rb-muted:#536782; }
.rb-page [hidden] { display:none !important; }
.rb-page figure { margin:0; }
.rb-page .rb-hero { background:radial-gradient(ellipse at 85% 25%,#245ca04a,transparent 55%),linear-gradient(130deg,#10264c,#142f5e); }
.rb-hero-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:64px; align-items:center; }
.rb-hero .h1 { font-size:clamp(36px,4.6vw,64px); margin-top:18px; line-height:1.12; }
.rb-hero .h1 span { color:#96c9ff; }
.rb-hero .lede { max-width:54ch; margin-top:24px; font-size:18px; }
.rb-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin-top:28px; }
.rb-text-link { display:inline-flex; align-items:center; gap:12px; min-height:44px; font-weight:700; color:var(--rb-blue); }
[data-theme=deep] .rb-text-link { color:#c0deff; }
.rb-hero-note { border-left:1px solid #c1d9ff38; padding:24px 0 24px 40px; color:#cfdef5; }
.rb-note-icon { display:block; width:58px; color:#99caff; margin-bottom:22px; }
.rb-hero-note p { font-size:clamp(21px,2.3vw,30px); line-height:1.4; }
.rb-hero-note strong { color:#fff; }
.rb-hero-note > span:last-child { display:block; font-size:13px; margin-top:20px; }
.rb-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.12fr); gap:72px; align-items:start; }
.rb-badge { display:inline-block; font-size:13px; font-weight:800; padding:8px 14px; border:1px solid #c2d2f3; border-radius:11px; color:var(--rb-blue); background:#f5f8ff; box-shadow:0 8px 24px -18px #163e81; margin-bottom:20px; }
.rb-copy .h2,.rb-trend-intro .h2 { font-size:clamp(28px,3.15vw,44px); line-height:1.18; }
.rb-copy p { color:var(--rb-muted); line-height:1.75; }
.rb-copy .rb-lead { margin-top:28px; font-size:18px; font-weight:700; color:var(--rb-ink); }
.rb-copy .rb-lead + p { margin-top:18px; }
.rb-takeaway { display:flex; gap:14px; padding:22px 0; margin-block:14px 4px; border-top:1px solid #dce5f4; }
.rb-takeaway > span { display:grid; place-items:center; flex:none; width:38px; height:38px; border-radius:12px; background:#eaf2ff; color:var(--rb-blue); font-size:23px; }
.rb-takeaway strong { color:var(--rb-ink); }
.rb-takeaway p { font-size:14px; margin-top:7px; }
.rb-bars figcaption,.rb-chart-card figcaption { display:flex; flex-direction:column; gap:8px; margin-bottom:24px; }
.rb-bars figcaption strong,.rb-chart-card figcaption strong { font-size:18px; color:var(--rb-ink); }
.rb-bars figcaption > span:last-child,.rb-chart-card figcaption > span:last-child { font-size:12px; color:var(--rb-muted); }
.rb-sample { font-size:11px; font-weight:800; letter-spacing:.035em; text-transform:uppercase; color:#435c84; }
.rb-meter { position:relative; height:94px; margin-top:20px; background:#f4f5fc; border:1px solid #d6dfed; border-radius:24px; overflow:hidden; }
.rb-meter-fill { position:absolute; inset:0 auto 0 0; width:var(--fill); background:linear-gradient(105deg,#134dde,#527abf); }
.rb-meter-label { position:absolute; inset:0; display:flex; align-items:center; gap:12px; padding:20px 28px; font-size:clamp(16px,1.7vw,23px); color:#173868; white-space:nowrap; }
.rb-meter-label b { font-size:1.15em; font-variant-numeric:tabular-nums; }
.rb-meter-white { color:#fff; clip-path:inset(0 calc(100% - var(--fill)) 0 0); }
.rb-caption { font-size:12px; line-height:1.65; color:var(--rb-muted); margin-top:18px; }
.rb-replay { display:inline-flex; align-items:center; gap:10px; margin-top:8px; padding:8px 0; min-height:44px; font:inherit; font-size:13px; color:var(--rb-blue); background:none; border:0; cursor:pointer; font-weight:700; }
.rb-benefits { background:#f5f8fd; }
.rb-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:32px; }
.rb-card { display:flex; flex-direction:column; padding:30px; border:1px solid #d5e1f2; border-radius:22px; background:white; box-shadow:0 12px 40px -28px #183b78; }
.rb-card-num { width:44px; height:44px; display:grid; place-items:center; color:var(--rb-blue); background:#edf4ff; border-radius:12px; font-weight:800; margin-bottom:24px; }
.rb-card h3 { font-size:22px; line-height:1.3; color:var(--rb-ink); }
.rb-card p { font-size:15px; color:var(--rb-muted); line-height:1.75; margin-top:18px; margin-bottom:24px; }
.rb-card a { font-size:13px; font-weight:700; color:var(--rb-blue); margin-top:auto; min-height:44px; display:flex; align-items:center; }
.rb-trend-intro { max-width:740px; }
.rb-trend-intro > p { max-width:62ch; margin-top:20px; color:var(--rb-muted); line-height:1.75; }
.rb-chart-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); align-items:start; gap:32px; margin-top:32px; }
.rb-chart-card { min-width:0; padding:28px; border:1px solid #ccd9ef; border-radius:22px; box-shadow:0 12px 40px -24px #183b78; }
.rb-chart-controls { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:24px; }
.rb-chart-controls button { min-height:44px; border-radius:10px; padding:10px 15px; font:inherit; font-size:13px; font-weight:700; background:#f4f7fd; color:#274569; border:1px solid #ccd9ef; cursor:pointer; }
.rb-chart-controls button[aria-pressed=true] { color:white; background:var(--rb-blue); border-color:var(--rb-blue); }
.rb-chart { display:block; width:100%; height:auto; overflow:visible; }
.rb-chart-line.rb-draw { animation:rb-line-in 900ms ease-out both; }
@keyframes rb-line-in { from { stroke-dasharray:1; stroke-dashoffset:1; } to { stroke-dasharray:1; stroke-dashoffset:0; } }
.rb-chart-data { margin-top:20px; font-size:13px; color:var(--rb-muted); }
.rb-chart-data summary { cursor:pointer; padding-block:12px; min-height:44px; color:var(--rb-blue); font-weight:700; }
.rb-chart-data table { width:100%; font-size:12px; border-collapse:collapse; margin-top:12px; }
.rb-chart-data caption { text-align:left; margin-bottom:12px; }
.rb-chart-data th,.rb-chart-data td { padding:9px 5px; text-align:left; border-bottom:1px solid #e0e8f5; }
.rb-insight { border-radius:22px; padding:32px; color:var(--rb-ink); background:#f0f5ff; }
.rb-insight h3 { font-size:25px; line-height:1.3; margin-block:20px; }
.rb-insight > p { color:var(--rb-muted); line-height:1.75; font-size:15px; }
.rb-insight-question { border-left:3px solid var(--rb-blue); padding-left:18px; margin-top:24px; }
.rb-insight-question strong { font-size:13px; }
.rb-insight-question p { margin-top:8px; font-size:16px; line-height:1.6; }
.rb-insight > .rb-caption { font-size:12px; }
.rb-next { background:linear-gradient(125deg,#10264c,#1c4184); }
.rb-next .lede { margin-top:24px; }
.rb-next .rb-caption { color:#b7cae5; }
.rb-page :is(button,a,summary):focus-visible { outline:3px solid #6c9cff; outline-offset:4px; }
@media(max-width:1023px) { .rb-split { gap:36px; } .rb-hero-grid { gap:32px; } .rb-hero-note { padding-left:24px; } .rb-meter-label { padding-inline:20px; } .rb-card-grid { gap:16px; } .rb-card { padding:22px; } .rb-chart-layout { grid-template-columns:1fr; } }
@media(max-width:767px) {
 .rb-hero-grid,.rb-split,.rb-card-grid { grid-template-columns:1fr; gap:32px; }
 .rb-hero-note { display:none; } .rb-hero .lede { font-size:16px; }
 .rb-actions { gap:14px 24px; } .rb-copy .rb-lead { margin-top:22px; }
 .rb-meter { height:80px; margin-top:16px; border-radius:20px; } .rb-meter-label { padding-inline:18px; font-size:17px; gap:10px; }
 .rb-card { padding:26px; } .rb-card-grid { gap:18px; } .rb-card-num { margin-bottom:18px; }
 .rb-chart-card,.rb-insight { padding:22px; } .rb-chart-controls button { padding:10px 11px; font-size:12px; }
 .rb-chart-layout { gap:24px; } .rb-chart { width:100%; } .rb-chart .rb-axis { font-size:22px; } .rb-trend-intro .h2 br { display:none; }
}
@media(max-width:359px) { .rb-meter-label { font-size:15px; padding-inline:14px; gap:8px; } .rb-chart-card { padding:16px; } }
@media(prefers-reduced-motion:reduce) { .rb-chart-line.rb-draw { animation:none; } }
@media(forced-colors:active) { .rb-meter-fill { background:Highlight; forced-color-adjust:none; } .rb-meter-label { color:CanvasText; } .rb-meter-white { color:HighlightText; forced-color-adjust:none; } .rb-chart-line { stroke:CanvasText; } }
