/* RHB Wealth Pro — shared stylesheet for Insights pages.
   Same tokens as the homepage; edit the tokens, not the components. */
:root{
  --ground:#F4F4F1; --ground-2:#EDEDE8; --surface:#FFFFFF;
  --ink:#141A3C; --ink-2:#4E5474; --ink-3:#7D8299;
  --gold:#A8843C; --gold-deep:#8A6A26; --gold-soft:#E7DCC2;
  --rule:rgba(20,26,60,.13); --rule-soft:rgba(20,26,60,.07);
  --band:#141A3C; --band-ink:#EFEDE6; --band-ink-2:#A6ABC4;
  --focus:#3B5BDB;
  --shadow:0 1px 2px rgba(20,26,60,.05), 0 18px 44px -20px rgba(20,26,60,.22);
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --ground:#0D1024; --ground-2:#141833; --surface:#161B38;
    --ink:#ECEAE2; --ink-2:#A9AEC6; --ink-3:#7F859F;
    --gold:#D8B463; --gold-deep:#C09E4F; --gold-soft:#4A3F26;
    --rule:rgba(236,234,226,.16); --rule-soft:rgba(236,234,226,.08);
    --band:#080B1B; --band-ink:#ECEAE2; --band-ink-2:#8F95B0;
    --shadow:0 1px 2px rgba(0,0,0,.4), 0 18px 44px -20px rgba(0,0,0,.7);
  }
}
:root[data-theme="dark"]{
  --ground:#0D1024; --ground-2:#141833; --surface:#161B38;
  --ink:#ECEAE2; --ink-2:#A9AEC6; --ink-3:#7F859F;
  --gold:#D8B463; --gold-deep:#C09E4F; --gold-soft:#4A3F26;
  --rule:rgba(236,234,226,.16); --rule-soft:rgba(236,234,226,.08);
  --band:#080B1B; --band-ink:#ECEAE2; --band-ink-2:#8F95B0;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--ground); color:var(--ink);
  font-family:Karla,system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:17px; line-height:1.68; font-weight:400;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:1140px; margin:0 auto; padding:0 clamp(20px,5vw,64px)}
.narrow{max-width:720px}
a{color:inherit}
:focus-visible{outline:2px solid var(--focus); outline-offset:3px; border-radius:2px}

/* header */
.site{border-bottom:1px solid var(--rule-soft); background:var(--ground)}
.siteIn{display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 0}
.mark{display:inline-flex; align-items:center; gap:11px; text-decoration:none; color:var(--ink)}
.logoH{display:inline-block; width:14px; height:20px}
.logoH svg{display:block; width:100%; height:100%; fill:var(--gold)}
.markName{font-family:Marcellus,Georgia,serif; font-size:19px; letter-spacing:.055em; text-transform:uppercase}
.navBack{font-size:14px; color:var(--ink-2); text-decoration:none; border-bottom:1px solid var(--rule)}
.navBack:hover{color:var(--gold); border-color:var(--gold)}

/* type */
h1,h2,h3{font-family:Marcellus,Georgia,serif; font-weight:400; letter-spacing:-.005em; line-height:1.18; color:var(--ink)}
h1{font-size:clamp(30px,4.6vw,46px); margin:0 0 14px}
h2{font-size:clamp(22px,2.7vw,29px); margin:44px 0 12px}
h3{font-size:clamp(18px,2vw,21px); margin:32px 0 8px}
p{margin:0 0 20px}
.lede{font-size:clamp(18px,2.1vw,21px); line-height:1.6; color:var(--ink-2); margin-bottom:26px}
.eyebrow{font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--gold-deep); margin:0 0 14px}
.meta{font-size:14px; color:var(--ink-3); margin:0 0 30px; padding-bottom:22px; border-bottom:1px solid var(--rule-soft)}
ul,ol{margin:0 0 20px; padding-left:22px}
li{margin-bottom:9px}
strong{font-weight:700}
blockquote{margin:26px 0; padding:2px 0 2px 20px; border-left:2px solid var(--gold); color:var(--ink-2); font-size:19px}
hr{border:0; border-top:1px solid var(--rule-soft); margin:40px 0}
article{padding:44px 0 10px}
.callout{background:var(--ground-2); border:1px solid var(--rule-soft); border-radius:3px; padding:20px 22px; margin:28px 0; font-size:15.5px; color:var(--ink-2)}
.callout p:last-child{margin-bottom:0}

/* reel */
.reel{margin:30px 0; display:flex; justify-content:center}
.reel iframe{border:1px solid var(--rule); border-radius:3px; background:var(--surface); max-width:100%}

/* hub list */
.hubList{list-style:none; padding:0; margin:34px 0 0}
.hubItem{border-top:1px solid var(--rule-soft); padding:26px 0}
.hubItem:last-child{border-bottom:1px solid var(--rule-soft)}
.hubItem a{text-decoration:none; display:block}
.hubItem h2{margin:0 0 7px; font-size:clamp(20px,2.3vw,25px); transition:color .18s ease}
.hubItem a:hover h2{color:var(--gold)}
.hubItem p{margin:0 0 7px; color:var(--ink-2); font-size:16px}
.hubItem .meta{border:0; padding:0; margin:0; font-size:13px}

/* cta */
.cta{background:var(--ground-2); border:1px solid var(--rule-soft); border-radius:3px; padding:28px 26px; margin:46px 0 10px}
.cta h2{margin:0 0 8px; font-size:22px}
.cta p{margin:0 0 18px; color:var(--ink-2); font-size:16px}
.btn{display:inline-block; padding:12px 22px; border-radius:2px; background:var(--band); color:var(--band-ink);
     text-decoration:none; font-size:15px; border:1px solid var(--band)}
.btn:hover{background:transparent; color:var(--ink); border-color:var(--gold)}
.btn + .btn{margin-left:10px; background:transparent; color:var(--ink); border-color:var(--rule)}
.btn + .btn:hover{border-color:var(--gold); color:var(--gold)}

/* footer */
.foot{background:var(--band); color:var(--band-ink-2); margin-top:64px; padding:44px 0 40px; font-size:13px; line-height:1.62}
.foot a{color:var(--band-ink)}
.foot .reg{color:var(--band-ink); margin-bottom:16px}
.foot .disc{max-width:880px}
.foot .disc p{margin:0 0 9px}

@media (max-width:560px){ body{font-size:16px} article{padding-top:30px} }

/* ============ STAT TILES (claims record) ============ */
.heroStats{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:1px;
  background:var(--rule-soft); border:1px solid var(--rule-soft); border-radius:3px; margin:34px 0 8px}
.heroStat{background:var(--ground); padding:22px 20px}
.heroStat .n{font-family:Marcellus,Georgia,serif; font-size:clamp(28px,4.6vw,38px); line-height:1.05;
  color:var(--ink); display:block; letter-spacing:-.01em}
.heroStat .n em{font-style:normal; color:var(--gold); font-size:.62em; letter-spacing:.02em}
.heroStat .k{display:block; margin-top:8px; font-size:13px; line-height:1.45; color:var(--ink-3);
  letter-spacing:.02em}
.statNote{font-size:13.5px; color:var(--ink-3); margin:10px 0 0}

table.rec{width:100%; border-collapse:collapse; margin:26px 0; font-size:15px}
table.rec th,table.rec td{text-align:left; padding:11px 12px 11px 0; border-bottom:1px solid var(--rule-soft);
  vertical-align:top}
table.rec th{font-weight:500; font-size:12px; letter-spacing:.11em; text-transform:uppercase;
  color:var(--gold-deep); border-bottom-color:var(--rule)}
table.rec td.num,table.rec th.num{text-align:right; font-variant-numeric:tabular-nums; padding-right:0}
table.rec tr:last-child td{border-bottom:0}
table.rec tfoot td{border-top:1px solid var(--rule); border-bottom:0; font-weight:700; padding-top:13px}
@media (max-width:560px){ table.rec{font-size:13.5px} table.rec th,table.rec td{padding-right:8px} }

.bars{margin:24px 0 8px; font-size:15px}
.barRow{display:grid; grid-template-columns:1fr auto; gap:10px 14px; align-items:baseline; margin-bottom:11px}
.barRow .lbl{color:var(--ink-2)}
.barRow .val{font-variant-numeric:tabular-nums; color:var(--ink); font-weight:700}
.barRow .track{grid-column:1/-1; height:6px; background:var(--rule-soft); border-radius:3px; overflow:hidden}
.barRow .fill{display:block; height:100%; background:var(--gold); border-radius:3px}
.barRow.zero .fill{background:var(--ink-3)}

/* brand mark on Insights pages: R[H]B Wealth Pro, matching the homepage */
.markName{display:inline-flex; align-items:baseline; gap:0}
.markName .logoH{margin:0 2px; align-self:center; transform:translateY(-1px)}
.markName .markWP{margin-left:11px; font-family:Karla,system-ui,sans-serif; font-size:13px;
  letter-spacing:.17em; color:var(--ink-2); text-transform:uppercase}
