

/* ===== Extracted from HubSpot source style blocks ===== */

/* AV Watch base type \002014 scoped to AV Watch wrappers only so we don't fight Celerium's theme */
  .finhome-wrap, .finreg-wrap, .iw-colophon { font-family: 'Spectral', Georgia, serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; color: #0F172A; }

.av-noscript-notice {
      background: #fafbfc;
      border-bottom: 1px solid #cbd5e1;
      padding: 20px 32px;
      font-family: 'Source Serif 4', Georgia, serif;
      font-size: 14px;
      line-height: 1.6;
      color: #334155;
      max-width: 1240px;
      margin: 0 auto 20px;
    }
    .av-noscript-notice strong {
      color: #0F172A;
      font-weight: 600;
    }
    .av-noscript-notice a {
      color: #0F172A;
      text-decoration: none;
      border-bottom: 1px solid #cbd5e1;
      padding-bottom: 1px;
    }
    .av-noscript-notice a:hover {
      border-color: #1E3A5F;
    }

.finhome-wrap{font-family:Inter,Arial,Helvetica,sans-serif;color:#172033;background:linear-gradient(180deg,#f7f9fc 0%,#fff 55%);border:1px solid #dbe3ef;border-radius:22px;padding:32px;box-shadow:0 14px 36px rgba(19,36,71,.08);max-width:1200px;margin:0 auto}
.finhome-brand{font-size:42px;line-height:1.05;margin:0 0 8px;font-weight:900;color:#101828;letter-spacing:-.02em;border-left:5px solid #BB1925;padding-left:14px}
.finhome-descriptor{font-size:18px;line-height:1.4;margin:0 0 16px;font-weight:500;font-style:italic;color:#475467;padding-left:19px}
.finhome-lede{font-size:17px;line-height:1.55;color:#344054;margin:0 0 8px;max-width:880px;font-weight:500}
.finhome-subtitle{font-size:15px;line-height:1.55;color:#526176;margin:0 0 22px;max-width:880px}

/* Stamp */
.finhome-stamp{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:10px 14px;background:#f1f5fb;border:1px solid #d3dce8;border-radius:12px;font-size:12px;color:#475467}
.finhome-stamp strong{color:#101828;font-weight:800}

/* Summary panel - reused pattern from tracker */
.finhome-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin:0 0 22px}
.finhome-summary-card{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:18px}
.finhome-summary-headline{font-size:11px;font-weight:800;color:#475467;text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px}
.finhome-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.finhome-stat{display:flex;flex-direction:column;gap:3px}
.finhome-stat-num{font-size:26px;font-weight:900;color:#101828;line-height:1;letter-spacing:-.02em}
.finhome-stat-lbl{font-size:10px;color:#667085;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.finhome-mix{display:flex;flex-direction:column;gap:6px}
.finhome-mix-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-size:12px}
.finhome-mix-label{display:inline-flex;align-items:center;gap:5px;color:#1f2937;font-weight:600;white-space:nowrap}
.finhome-mix-bar{height:6px;background:#f1f5fb;border-radius:999px;overflow:hidden;min-width:60px}
.finhome-mix-fill{height:100%;border-radius:999px}
.finhome-mix-count{font-size:12px;font-weight:800;color:#101828;min-width:18px;text-align:right}

/* Editorial "What this means" panel */
.finhome-editorial{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:22px 24px;margin:0 0 22px;border-left:4px solid #BB1925}
.finhome-editorial h2{font-size:13px;font-weight:800;color:#BB1925;text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px}
.finhome-editorial p{font-size:15px;line-height:1.65;color:#1f2937;margin:0 0 12px}
.finhome-editorial p:last-child{margin-bottom:0}
.finhome-editorial em{font-style:normal;font-weight:700;color:#101828}
.finhome-callout{margin:14px 0;padding:12px 14px;border-radius:6px;background:#f8fafc;border-left:3px solid #94a3b8;font-size:14px;line-height:1.55;color:#344054}
.finhome-callout-regional{border-left-color:#64748b;background:#f8fafc}
.finhome-callout-formal{border-left-color:#1e5fa8;background:#f3f7fb}
.finhome-callout-label{display:block;font-size:11px;font-weight:800;color:#475467;text-transform:uppercase;letter-spacing:.05em;margin:0 0 6px}
.finhome-callout-formal .finhome-callout-label{color:#1e5fa8}

/* Executive summary (tinted, sits above editorial article) */
.finhome-exec-summary{margin:0 0 18px;padding:14px 16px;border-radius:6px;background:#eef4fb;border-left:3px solid #1e3a5f;font-size:14px;line-height:1.55;color:#1b2740}
.finhome-exec-summary-label{display:block;font-size:11px;font-weight:800;color:#1e3a5f;text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px}
.finhome-exec-summary-list{margin:0;padding:0;list-style:none}
.finhome-exec-summary-list li{margin:0 0 6px;padding:0}
.finhome-exec-summary-list li:last-child{margin-bottom:0}
.finhome-exec-summary-list strong{color:#0f172a;font-weight:800}

/* Top 3 / featured */
.finhome-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 12px}
.finhome-section-head h2{font-size:18px;font-weight:900;color:#101828;margin:0}
.finhome-section-head .subhd{font-size:12px;color:#667085;font-weight:600}
.finhome-top3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin:0 0 22px}
.finhome-top-card{background:#fff;border:1px solid #e5eaf2;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:8px}
.finhome-top-rank{font-size:11px;font-weight:800;color:#244a84;text-transform:uppercase;letter-spacing:.05em}
.finhome-top-date{font-size:11px;color:#667085;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.finhome-top-title{font-size:15px;font-weight:800;color:#101828;line-height:1.35}
.finhome-top-summary{font-size:13px;color:#475467;line-height:1.5}
.finhome-top-actor{font-size:12px;color:#1f2937;font-weight:600}

/* Watch panel */
.finhome-watch{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:22px 24px;margin:0 0 22px}
.finhome-watch h2{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:900;color:#101828;margin:0 0 4px}
.finhome-watch .icon{font-size:18px;line-height:1}
.finhome-watch .pill{display:inline-flex;align-items:center;background:#fef3c7;color:#854f0b;border:1px solid #fcd34d;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:800;letter-spacing:.02em;margin-left:6px}
.finhome-watch-sub{font-size:12px;color:#667085;margin:0 0 14px}
.finhome-watch-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.finhome-watch-item{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:10px 12px;background:#fffdf6;border:1px solid #fde68a;border-left:3px solid #f59e0b;border-radius:10px;font-size:13px;line-height:1.5}
.finhome-watch-when{font-weight:800;color:#854f0b;font-size:12px;text-transform:uppercase;letter-spacing:.03em}
.finhome-watch-what{color:#1f2937}
.finhome-watch-what strong{font-weight:700;color:#0f172a}

/* CTA / dig deeper */
.finhome-cta{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:0 0 22px}
.finhome-cta-primary{background:#172033;color:#fff;border-radius:18px;padding:24px 28px;display:flex;flex-direction:column;justify-content:center;gap:10px;text-decoration:none}
.finhome-cta-primary .lbl{font-size:11px;font-weight:800;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}
.finhome-cta-primary .ttl{font-size:22px;font-weight:900;color:#fff;line-height:1.2;margin:0}
.finhome-cta-primary .desc{font-size:13px;color:#cbd5e1;line-height:1.5}
.finhome-cta-primary .arrow{font-size:18px;font-weight:800;color:#fff;margin-top:4px}
.finhome-cta-primary:hover{background:#263655}
.finhome-cta-secondary{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:18px;display:flex;flex-direction:column;justify-content:center;gap:6px;text-decoration:none;color:inherit;transition:all .15s ease}
.finhome-cta-secondary:hover{border-color:#cfe0ff;background:#fbfcff}
.finhome-cta-secondary .lbl{font-size:10px;font-weight:800;color:#244a84;text-transform:uppercase;letter-spacing:.05em}
.finhome-cta-secondary .ttl{font-size:14px;font-weight:800;color:#101828;line-height:1.3}
.finhome-cta-secondary .desc{font-size:12px;color:#667085;line-height:1.4}

/* Two-column landing header: large 'This Week' on left, navigation stack on right */
.finhome-cols{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin:0 0 20px;align-items:stretch}
.finhome-col{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:20px 22px;display:flex;flex-direction:column}
.finhome-col-label{font-size:10px;font-weight:800;color:#475467;text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px;display:flex;align-items:center;gap:8px}
.finhome-col-label .dot{width:3px;height:14px;border-radius:0;display:inline-block;background:#BB1925}
.finhome-col-title{font-size:22px;font-weight:900;color:#101828;line-height:1.2;margin:0 0 10px;letter-spacing:-.01em}
.finhome-col-body{font-size:14px;line-height:1.6;color:#475467;margin:0 0 12px;flex:1}
.finhome-col-body p{margin:0 0 10px}
.finhome-col-body p:last-child{margin:0}
.finhome-col-body strong{color:#172033;font-weight:700}
.finhome-col-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;color:#244a84;text-decoration:none;margin-top:auto;border-top:1px solid #edf1f7;padding:12px 0 0;background:none;border-left:0;border-right:0;border-bottom:0;cursor:pointer;font-family:inherit;text-align:left}
.finhome-col-link:hover{color:#172033}
.finhome-col-link::after{content:"\002192";font-size:13px}

/* Featured (left) column emphasis */
.finhome-col-featured{border-color:#cfe0ff;background:#fbfcff;box-shadow:0 6px 18px rgba(36,74,132,.06)}
.finhome-week-stamp{font-size:11px;color:#667085;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px}
.finhome-chart-frame{margin:8px 0 14px;padding-top:14px;border-top:1px solid #e5eaf2}
.finhome-chart-title{font-size:15px;font-weight:900;color:#101828;line-height:1.3;margin:0 0 4px;letter-spacing:-.005em}

/* By the numbers section */
.bynum-wrap{font-family:Inter,Arial,Helvetica,sans-serif;color:#172033;background:linear-gradient(180deg,#f7f9fc 0%,#fff 55%);border:1px solid #dbe3ef;border-radius:22px;padding:32px;box-shadow:0 14px 36px rgba(19,36,71,.08);max-width:1200px;margin:24px auto;scroll-margin-top:8px}
.bynum-title{font-size:30px;line-height:1.15;margin:0 0 8px;font-weight:900;color:#101828;border-left:5px solid #1E5FA8;padding-left:14px}
.bynum-subtitle{font-size:15px;line-height:1.55;color:#526176;margin:0 0 22px;padding-left:19px;max-width:880px}
.bynum-chart-card{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:22px 24px;margin:0 0 18px}
.bynum-chart-card .finhome-chart-frame{border-top:0;padding-top:0;margin:0}
@media(max-width:760px){.bynum-wrap{padding:18px;border-radius:16px}.bynum-title{font-size:24px}}
.finhome-chart-caption{font-size:12px;color:#667085;line-height:1.5;margin:0 0 12px}
.finhome-chart-vbtns{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}
.finhome-chart-vbtn{background:#fff;border:1px solid #d3dce8;color:#475467;font-size:11px;font-weight:700;padding:5px 12px;border-radius:999px;cursor:pointer;font-family:inherit;transition:all .15s ease;line-height:1.2}
.finhome-chart-vbtn:hover{background:#f1f5fb;border-color:#1E5FA8;color:#1E5FA8}
.finhome-chart-vbtn.active{background:#1E5FA8;border-color:#1E5FA8;color:#fff}
.finhome-chart-canvas-wrap{position:relative;width:100%;height:240px}
.finhome-chart-foot{margin-top:12px;padding-top:10px;border-top:1px solid #edf1f7}
.finhome-chart-foot-row{display:flex;gap:8px;align-items:flex-start;margin-bottom:6px;font-size:11.5px;line-height:1.5;color:#475467}
.finhome-chart-foot-row:last-child{margin-bottom:0}
.finhome-chart-foot-num{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;border-radius:50%;background:#BB1925;color:#fff;font-size:9px;font-weight:800;flex-shrink:0;margin-top:2px}
.finhome-chart-foot-row strong{color:#172033;font-weight:700}
.finhome-chart-source{font-size:10.5px;color:#94A3B8;margin-top:10px;line-height:1.5}
.finhome-chart-tooltip{position:absolute;background:#0F172A;color:#fff;padding:10px 12px;border-radius:8px;font-size:12px;line-height:1.45;font-family:inherit;pointer-events:none;opacity:0;transition:opacity .12s ease;z-index:100;min-width:200px;max-width:260px;box-shadow:0 8px 24px rgba(0,0,0,.3)}
.finhome-chart-tooltip-title{font-size:13px;font-weight:700;margin-bottom:4px;color:#fff}
.finhome-chart-tooltip-meta{color:#cbd5e1;font-size:11px;font-weight:700;margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}
.finhome-chart-tooltip-detail{color:#f1f5f9}

/* Right column: stack of navigation items */
.finhome-nav{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:8px;display:flex;flex-direction:column}
/* Primary tracker CTA \002014 green-marked, above the nav stack */
.finhome-nav-cta{background:transparent;border:0;padding:14px 14px;border-radius:0;text-align:left;font-family:inherit;cursor:pointer;display:flex;flex-direction:column;gap:4px;text-decoration:none;color:inherit;transition:background .12s ease;border-bottom:1px solid #f1f5fb;width:100%}
.finhome-nav-cta:hover{background:#f7faff}
.finhome-nav-cta-title{font-size:18px;font-weight:900;color:#101828;line-height:1.3;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-left:10px;border-left:3px solid #1E5FA8;letter-spacing:-.005em}
.finhome-nav-cta-title::after{content:"\002193";color:#94a3b8;font-size:14px;font-weight:700}
.finhome-nav-cta[data-modal-open] .finhome-nav-cta-title::after{content:"\002192"}
.finhome-nav-cta:hover .finhome-nav-cta-title{border-left-color:#244a84}
.finhome-nav-cta:hover .finhome-nav-cta-title::after{color:#1E5FA8}
.finhome-nav-cta-sub{font-size:12px;color:#667085;line-height:1.4;font-weight:500;padding-left:13px}
.finhome-nav-item{background:transparent;border:0;padding:14px 14px;border-radius:12px;text-align:left;font-family:inherit;cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:background .12s ease;border-bottom:1px solid #f1f5fb}
.finhome-nav-item:last-child{border-bottom:0}
.finhome-nav-item:hover{background:#f7faff}
.finhome-nav-title{font-size:14px;font-weight:800;color:#101828;line-height:1.3;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-left:10px;border-left:3px solid #244a84}
.finhome-nav-title::after{content:"\002192";color:#94a3b8;font-size:13px;font-weight:700}
.finhome-nav-item:hover .finhome-nav-title{border-left-color:#1e5fa8}
.finhome-nav-item:hover .finhome-nav-title::after{color:#244a84}
.finhome-nav-sub{font-size:12px;color:#667085;line-height:1.4;font-weight:500;padding-left:13px}

/* Generic info modal (separate from the existing tracker modal) */
.finhome-modal-backdrop{display:none;position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:9998;backdrop-filter:blur(2px)}
.finhome-modal-backdrop.is-open{display:flex;align-items:flex-start;justify-content:center;padding:5vh 16px;overflow-y:auto}
.finhome-modal{background:#fff;border-radius:18px;max-width:640px;width:100%;box-shadow:0 30px 60px -15px rgba(15,23,42,.45);position:relative;font-family:Inter,Arial,Helvetica,sans-serif}
.finhome-modal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;background:#f1f5fb;border:0;font-size:18px;font-weight:700;color:#475467;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s ease;line-height:1}
.finhome-modal-close:hover{background:#e1e7f0;color:#101828}
.finhome-modal-body{padding:28px 32px}
.finhome-modal-body h3{margin:0 0 14px;font-size:20px;font-weight:900;color:#101828;letter-spacing:-.005em;padding:2px 32px 2px 12px;border-left:4px solid #244a84}
.finhome-modal-body p{margin:0 0 12px;font-size:14px;line-height:1.6;color:#344054}
.finhome-modal-body p:last-child{margin-bottom:0}
.finhome-modal-body strong{color:#101828;font-weight:700}
.finhome-modal-body em{font-style:normal;font-weight:700;color:#101828}
.finhome-modal-body ul{margin:8px 0 12px;padding-left:18px;font-size:14px;line-height:1.6;color:#344054}
.finhome-modal-body li{margin:4px 0}
.finhome-modal-empty{background:#f7faff;border:1px solid #cfe0ff;border-radius:12px;padding:16px 18px;font-size:13px;line-height:1.55;color:#475467;margin:6px 0}
.finhome-modal-form{display:flex;flex-direction:column;gap:10px;margin:14px 0 6px}
.finhome-modal-form input{border:1px solid #d3dce8;border-radius:10px;padding:10px 14px;font-size:14px;font-family:inherit;outline:none;transition:border-color .15s ease;background:#fff;color:#172033}
.finhome-modal-form input:focus{border-color:#244a84}
.finhome-modal-form button{background:#172033;color:#fff;border:0;border-radius:10px;padding:11px 16px;font-size:14px;font-weight:800;font-family:inherit;cursor:pointer;transition:background .15s ease}
.finhome-modal-form button:hover{background:#263655}
.finhome-modal-foot{font-size:11px;color:#94a3b8;line-height:1.5;margin-top:10px}

/* Upcoming calendar modal */
.cal-group{margin:0 0 22px}
.cal-group:last-child{margin-bottom:0}
.cal-group-head{font-size:13px;font-weight:900;color:#101828;margin:0 0 10px;letter-spacing:-.005em}
.cal-section{margin:0 0 14px}
.cal-section:last-child{margin-bottom:0}
.cal-section-head{font-size:11px;font-weight:800;color:#475467;text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;padding-left:10px;border-left:3px solid #1E5FA8}
.cal-list{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.cal-item{display:grid;grid-template-columns:96px 1fr;gap:12px;padding:9px 12px;background:#fbfcff;border:1px solid #edf1f7;border-radius:8px;font-size:13px;line-height:1.5}
.cal-when{font-weight:800;color:#1E5FA8;font-size:11px;text-transform:uppercase;letter-spacing:.03em;display:flex;align-items:center}
.cal-what{color:#344054}
.cal-what strong{font-weight:700;color:#101828}
.cal-what em{font-style:italic;color:#94a3b8;font-weight:600;font-size:11px;margin-left:4px;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:560px){.cal-item{grid-template-columns:1fr;gap:2px}}

/* Tracker handoff banner */
.finhome-handoff{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#172033;color:#fff;border-radius:18px;padding:18px 24px;margin:0 0 18px;text-decoration:none;transition:background .15s ease}
.finhome-handoff:hover{background:#263655}
.finhome-handoff-text{display:flex;flex-direction:column;gap:2px}
.finhome-handoff-lbl{font-size:11px;font-weight:800;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em}
.finhome-handoff-ttl{font-size:18px;font-weight:900;color:#fff;line-height:1.2}
.finhome-handoff-arrow{font-size:24px;font-weight:900}

@media(max-width:760px){
  .finhome-cols{grid-template-columns:1fr}
  .finhome-modal-body{padding:24px 20px}
}

/* Methodology footer */
.finhome-methodology{background:#fbfcff;border:1px solid #edf1f7;border-radius:14px;padding:18px 22px;font-size:13px;line-height:1.6;color:#475467}
.finhome-methodology h3{font-size:12px;font-weight:800;color:#101828;text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px}
.finhome-methodology p{margin:0 0 8px}
.finhome-methodology p:last-child{margin:0}

@media(max-width:760px){
  .finhome-wrap{padding:18px;border-radius:16px}
  .finhome-brand{font-size:30px}
  .finhome-descriptor{font-size:16px}
  .finhome-summary{grid-template-columns:1fr}
  .finhome-top3{grid-template-columns:1fr}
  .finhome-cta{grid-template-columns:1fr}
  .finhome-watch-item{grid-template-columns:1fr;gap:4px}
}
/* === Highlights strip \002014 three-card horizontal layout === */
.finhome-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 22px}
.finhome-hl-card{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:18px 20px;display:flex;flex-direction:column;gap:10px}
.finhome-hl-label{font-size:11px;font-weight:800;color:#475467;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:6px}
.finhome-hl-label .hl-dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.finhome-hl-card.hl-comments .hl-dot{background:#BB1925}
.finhome-hl-card.hl-actions .hl-dot{background:#0c66e4}
.finhome-hl-card.hl-library .hl-dot{background:#0a8754}
.finhome-hl-title{font-size:15px;font-weight:800;color:#101828;line-height:1.3;margin:0}
.finhome-hl-items{display:flex;flex-direction:column;gap:12px;flex:1}
.finhome-hl-item{font-size:13px;line-height:1.45;color:#475467}
.finhome-hl-item-quote{color:#172033;font-weight:600;display:block;margin-bottom:3px}
.finhome-hl-item-meta{font-size:11px;font-weight:700;color:#667085;text-transform:uppercase;letter-spacing:.04em;display:block;margin-top:3px}
.finhome-hl-more{margin-top:auto;font-size:12px;font-weight:700;color:#0c66e4;background:transparent;border:0;padding:6px 0 0;cursor:pointer;font-family:inherit;text-align:left;display:inline-flex;align-items:center;gap:4px}
.finhome-hl-more:hover{color:#0747a6}
.finhome-hl-more::after{content:"\002192";display:inline-block;transition:transform .15s ease}
.finhome-hl-more:hover::after{transform:translateX(2px)}
@media (max-width:760px){
  .finhome-highlights{grid-template-columns:1fr}
}

.finreg-wrap{font-family:Inter,Arial,Helvetica,sans-serif;color:#172033;background:linear-gradient(180deg,#f7f9fc 0%,#fff 55%);border:1px solid #dbe3ef;border-radius:22px;padding:24px;box-shadow:0 14px 36px rgba(19,36,71,.08);max-width:1200px;margin:0 auto}.finreg-kicker{display:inline-flex;align-items:center;gap:8px;background:#eef4ff;color:#244a84;border:1px solid #cfe0ff;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.finreg-title{font-size:30px;line-height:1.15;margin:14px 0 8px;font-weight:900;color:#101828;border-left:5px solid #1E5FA8;padding-left:14px}.finreg-subtitle{font-size:15px;line-height:1.55;color:#526176;margin:0 0 18px;max-width:930px}.finreg-toolbar{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:16px;margin:18px 0 14px;position:sticky;top:8px;z-index:5;box-shadow:0 4px 14px rgba(19,36,71,.06)}.finreg-control label{display:block;font-size:12px;font-weight:800;color:#475467;margin:0 0 6px;text-transform:uppercase;letter-spacing:.04em}.finreg-select{width:100%;appearance:none;background:#fbfcff;border:1px solid #ced8e6;border-radius:14px;padding:12px 42px 12px 12px;font-size:14px;color:#101828;background-image:linear-gradient(45deg,transparent 50%,#5b6b82 50%),linear-gradient(135deg,#5b6b82 50%,transparent 50%);background-position:calc(100% - 20px) 18px,calc(100% - 14px) 18px;background-size:6px 6px,6px 6px;background-repeat:no-repeat}.finreg-reset{border:0;border-radius:14px;background:#172033;color:#fff;font-weight:800;padding:12px 16px;cursor:pointer}.finreg-reset:hover{background:#263655}.finreg-meta{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px}.finreg-pill{background:#fff;border:1px solid #e4e9f2;border-radius:999px;padding:8px 11px;font-size:13px;color:#344054}.finreg-pill-btn{font-family:inherit;cursor:pointer;transition:all .15s ease}.finreg-pill-btn:hover{background:#f1f5fb;border-color:#c7d3e3}.finreg-pill-btn.is-active{background:#172033;color:#fff;border-color:#172033}.finreg-table-scroll{overflow:auto;border:1px solid #e1e7f0;border-radius:18px;background:#fff}.finreg-table{width:100%;border-collapse:separate;border-spacing:0;min-width:980px}.finreg-table th{position:sticky;top:0;z-index:1;background:#12203a;color:#fff;text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.05em;padding:14px 13px;border-bottom:1px solid #12203a}.finreg-table th:first-child{border-top-left-radius:18px}.finreg-table th:last-child{border-top-right-radius:18px}.finreg-table td{padding:15px 13px;vertical-align:top;border-bottom:1px solid #edf1f7;font-size:14px;line-height:1.45;color:#202b3c}.finreg-table tr:hover td{background:#fafcff}
/* Row left-accent borders removed */
.pill-count{display:inline-block;background:rgba(255,255,255,.65);border-radius:999px;padding:1px 7px;margin-left:6px;font-size:11px;font-weight:900;color:#172033}
.finreg-pill-btn.is-active .pill-count{background:rgba(255,255,255,.2);color:#fff}
.date-cell{white-space:nowrap;font-weight:850;color:#172033}.new-badge{display:inline-block;background:#d92d20;color:#fff;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.05em;padding:3px 7px;margin:5px 0 0;box-shadow:0 5px 12px rgba(217,45,32,.22)}.date-cell .new-badge{display:block;width:fit-content;margin-left:0}.jurisdiction{font-weight:800;color:#23395d}.actor{font-weight:800;color:#1b2740}.action{font-weight:800;color:#344054;margin-bottom:5px}.summary{color:#475467}.source{font-size:12px;color:#667085}.type-chip{display:inline-flex;align-items:center;gap:7px;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:700;white-space:normal;border:1px solid #e1e7f0;line-height:1.25;max-width:160px;background:#fff;color:#344054}.type-central-bank,.type-financial-prudential-regulator,.type-finance-ministry-treasury,.type-bank-market-executive,.type-international-financial-body,.type-cyber-ai-security-authority,.type-ai-company-model-provider,.type-other-financial-ecosystem-actor{background:#fff;color:#344054;border-color:#e1e7f0}.finreg-empty{display:none;background:#fff8f3;border:1px solid #fed7aa;color:#9a3412;border-radius:14px;padding:14px;margin-top:12px;font-weight:750}.finreg-foot{font-size:12px;color:#667085;margin-top:12px}.hide-row{display:none}
.finreg-table tbody tr{cursor:pointer}
.finreg-table tbody tr:hover .action{text-decoration:underline}
.finreg-modal-backdrop{display:none;position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:9998;backdrop-filter:blur(2px)}
.finreg-modal-backdrop.is-open{display:flex;align-items:flex-start;justify-content:center;padding:5vh 16px;overflow-y:auto}
.finreg-modal{background:#fff;border-radius:14px;max-width:680px;width:100%;box-shadow:0 24px 60px rgba(15,23,42,.25);position:relative;overflow:hidden;border:1px solid #e1e7f0}
.finreg-modal-hero{padding:24px 56px 20px 24px;background:#fbfcfe;border-bottom:1px solid #edf1f7;border-left:4px solid #1E5FA8;position:relative}
.finreg-hero-icons{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.finreg-hero-logo{width:44px;height:44px;border-radius:8px;background:#fff;padding:4px;border:1px solid #e1e7f0;object-fit:contain}
.finreg-hero-logo-fallback{width:44px;height:44px;border-radius:8px;background:#fff;border:1px solid #e1e7f0;display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1}
.finreg-hero-text{display:flex;flex-direction:column;gap:3px;min-width:0}
.finreg-hero-jur{font-size:18px;font-weight:800;color:#101828;line-height:1.2;letter-spacing:-0.01em}
.finreg-hero-typeicon{font-size:14px;line-height:1}
.finreg-hero-role{font-size:11px;color:#667085;font-weight:700;text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:6px}
.finreg-modal-date{font-size:11px;font-weight:850;color:#667085;text-transform:uppercase;letter-spacing:.08em}
.finreg-modal-title{font-size:20px;font-weight:800;color:#101828;margin:6px 0 0;line-height:1.3;letter-spacing:-0.01em}
.finreg-modal-body{padding:18px 24px 22px}
.finreg-modal-section{margin-bottom:16px}
.finreg-modal-section:last-child{margin-bottom:0}
.finreg-modal-label{font-size:11px;font-weight:850;color:#667085;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.finreg-modal-actor{font-size:14px;font-weight:800;color:#1b2740}
.finreg-modal-summary{font-size:14px;line-height:1.6;color:#344054}
.finreg-modal-quote{border-left:3px solid #cfe0ff;padding:8px 12px;margin:8px 0;background:#f7faff;border-radius:0 8px 8px 0;font-style:italic;color:#23395d;font-size:14px;line-height:1.5}
.finreg-modal-sources{display:flex;flex-direction:column;gap:6px}
.finreg-modal-sources a{display:inline-flex;align-items:center;gap:6px;color:#244a84;text-decoration:none;font-size:13px;font-weight:700;padding:6px 10px;background:#eef4ff;border:1px solid #cfe0ff;border-radius:8px;width:fit-content}
.finreg-modal-sources a:hover{background:#dbe7ff}
.finreg-modal-sources a::after{content:"\002197";font-size:11px;opacity:.6}
.finreg-modal-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:0;border-radius:50%;background:#f1f5fb;color:#475467;cursor:pointer;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;z-index:2}
.finreg-modal-close:hover{background:#e1e7f0;color:#101828}
/* Glossary tooltip styling */
.finreg-gloss{border-bottom:1px dotted #94a3b8;cursor:help;position:relative}
.finreg-gloss:hover{border-bottom-color:#475467}
.finreg-gloss[data-tip]::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);background:#172033;color:#fff;font-size:12px;font-weight:500;line-height:1.4;text-transform:none;letter-spacing:normal;padding:8px 10px;border-radius:8px;white-space:normal;width:max-content;max-width:280px;text-align:left;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:10;box-shadow:0 6px 16px rgba(0,0,0,.18)}
.finreg-gloss[data-tip]::before{content:"";position:absolute;bottom:calc(100% + 1px);left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:#172033;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:10}
.finreg-gloss:hover::after,.finreg-gloss:hover::before,.finreg-gloss:focus::after,.finreg-gloss:focus::before{opacity:1}
/* Top summary / dashboard panel */
.finreg-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin:0 0 14px}
.finreg-summary-card{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:16px 18px}
.finreg-summary-headline{font-size:11px;font-weight:800;color:#475467;text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px}
.finreg-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.finreg-stat{display:flex;flex-direction:column;gap:2px}
.finreg-stat-num{font-size:22px;font-weight:900;color:#101828;line-height:1;letter-spacing:-.02em}
.finreg-stat-lbl{font-size:10px;color:#667085;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.finreg-mix{display:flex;flex-direction:column;gap:6px}
.finreg-mix-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-size:12px}
.finreg-mix-label{display:inline-flex;align-items:center;gap:5px;color:#1f2937;font-weight:600;white-space:nowrap}
.finreg-mix-bar{height:6px;background:#f1f5fb;border-radius:999px;overflow:hidden;min-width:60px}
.finreg-mix-fill{height:100%;border-radius:999px}
.finreg-mix-count{font-size:12px;font-weight:800;color:#101828;min-width:18px;text-align:right}
.finreg-recent{font-size:13px;color:#475467;line-height:1.45}
.finreg-recent strong{color:#101828;font-weight:700}
/* Last updated stamp */
.finreg-stamp{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:0 0 14px;padding:10px 14px;background:#f1f5fb;border:1px solid #d3dce8;border-radius:12px;font-size:12px;color:#475467}
.finreg-stamp-meta{display:flex;align-items:center;gap:8px}
.finreg-stamp-meta strong{color:#101828;font-weight:800}
@media(max-width:760px){.finreg-summary{grid-template-columns:1fr}.finreg-stats{grid-template-columns:repeat(3,1fr)}}
/* Print stylesheet: strip interactive UI, expand content for paper */
@media print{
  body{background:#fff !important;color:#000 !important}
  .finreg-wrap{box-shadow:none !important;border:0 !important;padding:0 !important;max-width:100% !important;background:#fff !important}
  .finreg-toolbar,.finreg-meta,.finreg-modal-backdrop,.finreg-watch-toggle,.finreg-watch-header{display:none !important}
  .finreg-stamp{background:#fff;border:1px solid #ccc}
  .finreg-summary{grid-template-columns:1fr 1fr 1fr;page-break-inside:avoid}
  .finreg-summary-card{border:1px solid #ccc !important;box-shadow:none !important;page-break-inside:avoid}
  .finreg-watch{border:1px solid #ccc !important;page-break-inside:avoid}
  .finreg-watch-body{display:block !important;padding:14px 18px}
  .finreg-watch-item{page-break-inside:avoid}
  .finreg-table-scroll{overflow:visible !important;border:1px solid #ccc !important}
  .finreg-table{min-width:0 !important;font-size:11px !important}
  .finreg-table th{position:static !important;background:#222 !important;color:#fff !important;-webkit-print-color-adjust:exact;print-color-adjust:exact;padding:8px !important;font-size:9px !important}
  .finreg-table td{padding:8px !important;page-break-inside:avoid;border-bottom:0.5px solid #ccc !important}
  .finreg-table tbody tr:hover td{background:transparent !important}
  .summary{font-size:11px !important;line-height:1.4 !important}
  .type-chip{border:0.5px solid #ccc;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .finreg-gloss{border-bottom:0 !important;cursor:default !important}
  .finreg-gloss::before,.finreg-gloss::after{display:none !important}
  .finreg-foot{font-size:10px;color:#666}
  a[href]:after{content:"";display:none}
  /* Show all rows in print regardless of active filters */
  .finreg-table tbody tr.hide-row{display:table-row !important}
}
/* Watch / On the calendar panel */
.finreg-watch{background:#fff;border:1px solid #e5eaf2;border-radius:18px;margin:0 0 14px;overflow:hidden}
.finreg-watch-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;cursor:pointer;background:#fbfcff;border-bottom:1px solid transparent;transition:background .15s ease}
.finreg-watch-header:hover{background:#f3f6fc}
.finreg-watch.is-open .finreg-watch-header{border-bottom-color:#edf1f7}
.finreg-watch-title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:800;color:#101828}
.finreg-watch-title .finreg-watch-icon{font-size:18px;line-height:1}
.finreg-watch-count{display:inline-flex;align-items:center;background:#fef3c7;color:#854f0b;border:1px solid #fcd34d;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:800;letter-spacing:.02em}
.finreg-watch-toggle{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#475467;text-transform:uppercase;letter-spacing:.04em}
.finreg-watch-toggle::after{content:"\0025BC";font-size:9px;transition:transform .2s ease}
.finreg-watch.is-open .finreg-watch-toggle::after{transform:rotate(180deg)}
.finreg-watch-body{display:none;padding:8px 18px 16px}
.finreg-watch.is-open .finreg-watch-body{display:block}
.finreg-watch-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.finreg-watch-item{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:10px 12px;background:#fffdf6;border:1px solid #fde68a;border-left:3px solid #f59e0b;border-radius:10px;font-size:13px;line-height:1.5}
.finreg-watch-when{font-weight:800;color:#854f0b;font-size:12px;text-transform:uppercase;letter-spacing:.03em}
.finreg-watch-what{color:#1f2937}
.finreg-watch-what strong{font-weight:700;color:#0f172a}
.finreg-watch-note{margin-top:14px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;font-size:12px;color:#475467;line-height:1.5}
@media(max-width:760px){.finreg-wrap{padding:16px;border-radius:16px}.finreg-title{font-size:24px}.finreg-toolbar{grid-template-columns:1fr}.finreg-reset{width:100%}.finreg-watch-item{grid-template-columns:1fr;gap:4px}}

/* CSS variables */
  .finhome-wrap, .finreg-wrap, .iw-colophon {
    --paper: #FFFFFF;
    --paper-deep: #F5F7FA;
    --paper-card: #FBFCFD;
    --ink: #0F172A;
    --ink-soft: #1E293B;
    --ink-mute: #475569;
    --rule: #CBD5E1;
    --rule-soft: #E2E8F0;
    --oxblood: #1E3A5F;
    --oxblood-deep: #142A47;
  }

  /* ---------- COLOPHON ---------- */
  .iw-colophon {
    border-top: 1px solid var(--rule);
    margin-top: 40px;
    padding: 24px 0;
    background: var(--paper-deep);
  }
  .iw-colophon-notice {
    max-width: 1240px;
    margin: 0 auto;
    padding: 6px 32px;
    font-family: 'Source Serif 4', Georgia, serif;
    font-size: 12.5px;
    line-height: 1.6;
    color: var(--ink-mute);
    font-style: italic;
  }
  .iw-colophon-notice a {
    color: var(--ink);
    font-style: normal;
    text-decoration: none;
    border-bottom: 1px solid var(--rule);
    padding-bottom: 1px;
  }
  .iw-colophon-notice a:hover { color: var(--oxblood); border-color: var(--oxblood); }

  /* ---------- MAIN WRAP ---------- */
  .finhome-wrap {
    font-family: 'Spectral', Georgia, serif !important;
    color: var(--ink) !important;
    background: var(--paper) !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 56px 32px 0 !important;
    box-shadow: none !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
  }

  /* ---------- BRAND / TITLE BLOCK ---------- */
  .finhome-brand {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 400 !important;
    font-size: 44px !important;
    line-height: 1.1 !important;
    letter-spacing: -0.02em !important;
    color: var(--ink) !important;
    border-left: none !important;
    padding-left: 0 !important;
    margin: 0 0 14px !important;
    max-width: 880px;
  }
  .finhome-descriptor {
    font-family: 'Spectral', Georgia, serif !important;
    font-style: italic !important;
    font-weight: 400 !important;
    font-size: 19px !important;
    color: var(--ink-soft) !important;
    padding-left: 0 !important;
    margin: 0 0 24px !important;
    max-width: 720px;
  }
  .finhome-lede {
    font-family: 'Spectral', Georgia, serif !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: var(--ink-soft) !important;
    font-weight: 400 !important;
    max-width: 880px;
    margin: 0 0 32px !important;
    padding-bottom: 32px;
    border-bottom: 1px solid var(--rule);
  }

  /* ---------- TWO-COL LAYOUT ---------- */
  .finhome-cols {
    display: grid !important;
    grid-template-columns: 1.55fr 1fr !important;
    gap: 48px !important;
    margin: 32px 0 56px !important;
  }
  .finhome-col-featured {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
  }
  .finhome-col-label {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.22em !important;
    color: var(--oxblood) !important;
    background: transparent !important;
    border: none !important;
    padding: 0 0 6px 0 !important;
    border-bottom: 1px solid var(--oxblood) !important;
    display: inline-block !important;
    margin-bottom: 14px !important;
    width: auto !important;
  }
  .finhome-col-label .dot { display: none !important; }
  .finhome-week-stamp {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    color: var(--ink-mute) !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin-bottom: 14px !important;
  }
  .finhome-col-title {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 500 !important;
    font-size: 28px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.01em !important;
    color: var(--ink) !important;
    margin-bottom: 20px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid var(--rule) !important;
  }
  .finhome-col-body {
    color: var(--ink-soft) !important;
  }
  .finhome-col-body p {
    font-family: 'Spectral', Georgia, serif !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: var(--ink-soft) !important;
    margin-bottom: 16px !important;
  }
  .finhome-col-body p strong { color: var(--ink) !important; font-weight: 600 !important; }
  .finhome-col-body p em { font-style: italic !important; }

  /* Callouts \002014 restyle as institutional sidenotes */
  .finhome-callout {
    background: var(--paper-deep) !important;
    border: none !important;
    border-left: 3px solid var(--ink) !important;
    border-radius: 0 !important;
    padding: 18px 22px !important;
    margin: 18px 0 !important;
    font-family: 'Spectral', Georgia, serif !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    color: var(--ink-soft) !important;
    box-shadow: none !important;
  }
  .finhome-callout-formal { border-left-color: var(--oxblood) !important; }
  .finhome-callout-regional { border-left-color: var(--ink) !important; }
  .finhome-callout-label {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 10.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    color: var(--oxblood) !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 0 8px !important;
    display: block !important;
    font-weight: 600 !important;
  }
  .finhome-callout strong { color: var(--ink) !important; font-weight: 600 !important; }
  .finhome-callout em { font-style: italic !important; }

  /* ---------- RIGHT-COL NAV ---------- */
  .finhome-rightcol { display: block !important; }
  .finhome-nav {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    background: transparent !important;
    border: none !important;
    border-top: 1px solid var(--rule) !important;
    padding: 0 !important;
    border-radius: 0 !important;
  }
  .finhome-nav-cta, .finhome-nav-item {
    display: block !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    padding: 18px 0 !important;
    text-decoration: none !important;
    color: var(--ink) !important;
    text-align: left !important;
    width: 100% !important;
    cursor: pointer !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    transition: padding 0.2s, color 0.2s !important;
    box-shadow: none !important;
  }
  .finhome-nav-cta:hover, .finhome-nav-item:hover {
    background: transparent !important;
    padding-left: 8px !important;
    border-color: var(--oxblood) !important;
    color: var(--oxblood) !important;
  }
  .finhome-nav-cta-title, .finhome-nav-title {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: inherit !important;
    display: block !important;
    margin-bottom: 4px !important;
  }
  .finhome-nav-cta-sub, .finhome-nav-sub {
    font-family: 'Spectral', Georgia, serif !important;
    font-style: italic !important;
    font-size: 13px !important;
    color: var(--ink-mute) !important;
    display: block !important;
    font-weight: 400 !important;
  }

  /* ---------- HIGHLIGHTS STRIP ---------- */
  .finhome-highlights {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 0 !important;
    border-top: 1px solid var(--rule) !important;
    border-bottom: 1px solid var(--rule) !important;
    margin: 0 0 56px !important;
    background: transparent !important;
    padding: 0 !important;
  }
  .finhome-hl-card {
    background: transparent !important;
    border: none !important;
    border-right: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    padding: 28px 24px !important;
    box-shadow: none !important;
    transition: background 0.25s !important;
  }
  .finhome-hl-card:last-child { border-right: none !important; }
  .finhome-hl-card:hover { background: var(--paper-deep) !important; }
  .finhome-hl-label {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 10.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.22em !important;
    color: var(--oxblood) !important;
    margin-bottom: 14px !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
  }
  .finhome-hl-label .hl-dot { display: none !important; }
  .finhome-hl-title {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 500 !important;
    font-size: 19px !important;
    line-height: 1.25 !important;
    color: var(--ink) !important;
    letter-spacing: -0.01em !important;
    margin-bottom: 18px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--rule) !important;
  }
  .finhome-hl-items { display: flex !important; flex-direction: column !important; gap: 16px !important; }
  .finhome-hl-item {
    font-family: 'Spectral', Georgia, serif !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    color: var(--ink-soft) !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
  }
  .finhome-hl-item-quote {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--ink) !important;
    font-weight: 600 !important;
    display: block !important;
    margin-bottom: 5px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
  }
  .finhome-hl-item-meta {
    display: block !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 11px !important;
    color: var(--ink-mute) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    margin-top: 6px !important;
    font-variant-numeric: oldstyle-nums !important;
  }
  .finhome-hl-more {
    margin-top: 18px !important;
    background: transparent !important;
    border: none !important;
    border-top: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    padding: 12px 0 0 !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 12px !important;
    color: var(--oxblood) !important;
    cursor: pointer !important;
    text-align: left !important;
    width: 100% !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 500 !important;
  }
  .finhome-hl-more::after {
    content: " \002192";
  }
  .finhome-hl-more:hover { color: var(--oxblood-deep) !important; }

  /* ---------- BY-NUMBERS / CHART SECTION ---------- */
  .bynum-wrap {
    background: transparent !important;
    border: none !important;
    border-top: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    padding: 56px 0 !important;
    margin: 0 0 56px !important;
    box-shadow: none !important;
  }
  .finhome-chart-card,
  .bynum-wrap > div:not(.finhome-chart-tooltip),
  div[class*="chart"]:not(.finhome-chart-tooltip):not([class*="tooltip"]) {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  .finhome-chart-title,
  .bynum-title {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 500 !important;
    font-size: 28px !important;
    color: var(--ink) !important;
    letter-spacing: -0.01em !important;
  }
  .finhome-chart-foot,
  .finhome-chart-caption {
    font-family: 'Spectral', Georgia, serif !important;
    color: var(--ink-soft) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
  }
  .finhome-chart-foot-num {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--oxblood) !important;
    font-weight: 600 !important;
    background: transparent !important;
    border: 1px solid var(--oxblood) !important;
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 11px !important;
  }

  /* ---------- TRACKER WRAPPER ---------- */
  .finreg-wrap {
    font-family: 'Spectral', Georgia, serif !important;
    background: transparent !important;
    border: none !important;
    border-top: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    padding: 56px 0 32px !important;
    box-shadow: none !important;
    max-width: none !important;
  }
  .finreg-kicker {
    font-family: 'Source Serif 4', Georgia, serif !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid var(--oxblood) !important;
    border-radius: 0 !important;
    padding: 0 0 6px !important;
    color: var(--oxblood) !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.22em !important;
    font-size: 11px !important;
  }
  .finreg-title {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 400 !important;
    font-size: 36px !important;
    line-height: 1.15 !important;
    letter-spacing: -0.015em !important;
    color: var(--ink) !important;
    border-left: none !important;
    padding-left: 0 !important;
    margin: 18px 0 12px !important;
  }
  .finreg-subtitle {
    font-family: 'Spectral', Georgia, serif !important;
    font-style: italic !important;
    font-size: 17px !important;
    color: var(--ink-soft) !important;
    padding-left: 0 !important;
    line-height: 1.55 !important;
    max-width: 720px;
    margin: 0 0 28px !important;
  }
  .finreg-subtitle[style*="padding-left"] { padding-left: 0 !important; }

  /* Toolbar */
  .finreg-toolbar {
    background: var(--paper-card) !important;
    border: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    padding: 18px 20px !important;
    box-shadow: none !important;
  }
  .finreg-control label {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 10.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    color: var(--ink-mute) !important;
    font-weight: 600 !important;
  }
  .finreg-select {
    background: var(--paper) !important;
    border: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    color: var(--ink) !important;
    font-family: 'Spectral', Georgia, serif !important;
    font-size: 14px !important;
  }
  .finreg-reset {
    background: var(--ink) !important;
    color: var(--paper) !important;
    border: none !important;
    border-radius: 0 !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 500 !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    padding: 12px 18px !important;
  }
  .finreg-reset:hover { background: var(--oxblood-deep) !important; }

  /* Pills */
  .finreg-pill {
    background: var(--paper) !important;
    border: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    color: var(--ink-soft) !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 12px !important;
    padding: 8px 12px !important;
    letter-spacing: 0.04em !important;
    font-weight: 500 !important;
  }
  .finreg-pill-btn:hover {
    background: var(--paper-deep) !important;
    border-color: var(--ink) !important;
  }
  .finreg-pill-btn.is-active {
    background: var(--ink) !important;
    color: var(--paper) !important;
    border-color: var(--ink) !important;
  }
  .pill-count {
    background: rgba(14, 22, 32, 0.08) !important;
    color: var(--ink) !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 600 !important;
    font-variant-numeric: lining-nums !important;
  }
  .finreg-pill-btn.is-active .pill-count {
    background: rgba(247, 244, 237, 0.2) !important;
    color: var(--paper) !important;
  }

  /* Table */
  .finreg-table-scroll {
    border: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    background: var(--paper) !important;
  }
  .finreg-table {
    font-family: 'Spectral', Georgia, serif !important;
  }
  .finreg-table th {
    background: var(--ink) !important;
    color: var(--paper) !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 10.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
    font-weight: 600 !important;
    border-bottom: 1px solid var(--ink) !important;
    padding: 14px 13px !important;
  }
  .finreg-table th:first-child,
  .finreg-table th:last-child {
    border-radius: 0 !important;
  }
  .finreg-table td {
    padding: 16px 13px !important;
    font-family: 'Spectral', Georgia, serif !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    color: var(--ink-soft) !important;
    border-bottom: 1px solid var(--rule-soft) !important;
  }
  .finreg-table tr:hover td { background: var(--paper-deep) !important; }
  .date-cell {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 600 !important;
    color: var(--ink) !important;
    font-variant-numeric: oldstyle-nums !important;
  }
  .new-badge {
    background: var(--oxblood) !important;
    color: var(--paper) !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 600 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    font-size: 9.5px !important;
    padding: 3px 7px !important;
  }
  .jurisdiction {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 600 !important;
    color: var(--ink) !important;
  }
  .actor {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 600 !important;
    color: var(--ink) !important;
  }
  .action {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 600 !important;
    color: var(--ink-soft) !important;
  }
  .summary { color: var(--ink-soft) !important; }
  .source {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--ink-mute) !important;
    font-size: 11.5px !important;
    font-style: italic !important;
  }
  .type-chip {
    background: var(--paper) !important;
    color: var(--ink-soft) !important;
    border: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    padding: 5px 9px !important;
    letter-spacing: 0.04em !important;
  }
  .finreg-empty {
    background: var(--paper-deep) !important;
    border: 1px solid var(--oxblood) !important;
    border-radius: 0 !important;
    color: var(--oxblood-deep) !important;
    font-family: 'Spectral', Georgia, serif !important;
    font-style: italic !important;
    font-weight: 400 !important;
  }
  .finreg-foot {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-style: italic !important;
    color: var(--ink-mute) !important;
    font-size: 12px !important;
  }

  /* ---------- MODALS (popups) ---------- */
  .finhome-modal-backdrop {
    background: rgba(14, 22, 32, 0.7) !important;
    backdrop-filter: blur(3px) !important;
  }
  .finhome-modal,
  .finreg-modal {
    background: var(--paper) !important;
    border: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    box-shadow: 0 20px 60px rgba(14, 22, 32, 0.3) !important;
    font-family: 'Spectral', Georgia, serif !important;
    color: var(--ink) !important;
  }
  .finhome-modal-body,
  .finreg-modal-body {
    color: var(--ink-soft) !important;
  }
  .finhome-modal h3, .finreg-modal h3 {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-weight: 500 !important;
    font-size: 26px !important;
    color: var(--ink) !important;
    letter-spacing: -0.01em !important;
    border-bottom: 1px solid var(--rule) !important;
    padding-bottom: 12px !important;
    margin-bottom: 18px !important;
  }
  .finhome-modal h4, .finreg-modal h4 {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--oxblood) !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
    font-size: 11px !important;
    border-bottom: 1px solid var(--oxblood) !important;
    padding-bottom: 6px !important;
    display: inline-block !important;
  }
  .finhome-modal p, .finreg-modal p {
    font-family: 'Spectral', Georgia, serif !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    color: var(--ink-soft) !important;
  }
  .finhome-modal a, .finreg-modal a {
    color: var(--oxblood) !important;
    border-bottom-color: var(--oxblood) !important;
  }
  .finhome-modal a:hover, .finreg-modal a:hover { color: var(--oxblood-deep) !important; }
  .finhome-modal strong, .finreg-modal strong {
    color: var(--ink) !important;
    font-weight: 600 !important;
  }
  /* Modal entries with inline border-left styles \002014 re-target to ink/oxblood */
  .finhome-modal div[style*="border-left:3px solid"] {
    border-left-color: var(--oxblood) !important;
    border-left-width: 3px !important;
    background: var(--paper-deep) !important;
    padding: 14px 18px !important;
  }
  .finhome-modal div[style*="border-left:2px solid"] {
    border-left-color: var(--ink) !important;
    border-left-width: 2px !important;
    background: transparent !important;
    padding: 12px 18px !important;
  }
  .finhome-modal-close, .finreg-modal-close {
    background: transparent !important;
    color: var(--ink-mute) !important;
    border: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    width: 32px !important;
    height: 32px !important;
    font-size: 18px !important;
    line-height: 1 !important;
  }
  .finhome-modal-close:hover, .finreg-modal-close:hover {
    background: var(--ink) !important;
    color: var(--paper) !important;
    border-color: var(--ink) !important;
  }

  /* Calendar/upcoming items */
  .cal-item, ul li.cal-item {
    font-family: 'Spectral', Georgia, serif !important;
    border-bottom: 1px solid var(--rule-soft) !important;
    padding: 12px 0 !important;
    color: var(--ink-soft) !important;
  }
  .cal-when {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--oxblood) !important;
    font-weight: 600 !important;
    font-size: 11.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
  }
  .cal-what strong { color: var(--ink) !important; font-weight: 600 !important; }
  .cal-what em {
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-style: italic !important;
    color: var(--ink-mute) !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
  }

  /* Methodology / news / notify modals lists */
  .finhome-modal ul, .finreg-modal ul {
    font-family: 'Spectral', Georgia, serif !important;
  }
  .finhome-modal li, .finreg-modal li {
    font-family: 'Spectral', Georgia, serif !important;
    color: var(--ink-soft) !important;
    line-height: 1.6 !important;
    margin-bottom: 8px !important;
  }

  /* Watch items in modals */
  .finreg-watch-item {
    border-bottom: 1px solid var(--rule-soft) !important;
    padding: 14px 0 !important;
  }
  .finreg-watch-when {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--oxblood) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    font-size: 11px !important;
    font-weight: 600 !important;
  }
  .finreg-watch-what { color: var(--ink-soft) !important; }
  .finreg-watch-what strong { color: var(--ink) !important; font-weight: 600 !important; }
  .finreg-watch-note {
    background: var(--paper-deep) !important;
    border: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    font-family: 'Spectral', Georgia, serif !important;
    font-style: italic !important;
    color: var(--ink-mute) !important;
  }

  /* Override inline-styled paragraphs in modals (style="color:#475467;...") */
  .finhome-modal p[style*="color:#475467"],
  .finhome-modal div[style*="color:#475467"],
  .finhome-modal div[style*="color:#344054"] {
    color: var(--ink-soft) !important;
    font-family: 'Spectral', Georgia, serif !important;
  }
  .finhome-modal h4[style] {
    color: var(--oxblood) !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
  }

  /* Scope exception tag in tracker */
  .action span[style*="background:#fef3c7"] {
    background: var(--paper-deep) !important;
    color: var(--oxblood) !important;
    border: 1px solid var(--oxblood) !important;
    border-radius: 0 !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
  }

  /* Mobile */
  @media (max-width: 900px) {
    .finhome-cols { grid-template-columns: 1fr !important; gap: 32px !important; }
    .finhome-highlights { grid-template-columns: 1fr !important; }
    .finhome-hl-card {
      border-right: none !important;
      border-bottom: 1px solid var(--rule) !important;
    }
    .finhome-hl-card:last-child { border-bottom: none !important; }
  }
  @media (max-width: 720px) {
    .finhome-wrap { padding: 32px 24px 0 !important; }
    .finhome-brand { font-size: 32px !important; }
    .finreg-title { font-size: 28px !important; }
  }

  /* Subtle entrance */
  @keyframes iwFadeUp {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
  }
  .finhome-brand, .finhome-cols, .finhome-highlights, .bynum-wrap, .finreg-wrap, .iw-colophon {
    animation: iwFadeUp 0.5s ease-out backwards;
  }
  .finhome-cols { animation-delay: 0.1s; }
  .finhome-highlights { animation-delay: 0.15s; }
  .bynum-wrap { animation-delay: 0.2s; }
  /* Chart view toggle buttons */
  .finhome-chart-vbtns { gap: 0 !important; border: 1px solid var(--rule) !important; display: inline-flex !important; }

  .finhome-chart-vbtn {
    background: transparent !important;
    border: none !important;
    border-right: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    color: var(--ink-mute) !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    font-weight: 500 !important;
    padding: 6px 14px !important;
  }
  .finhome-chart-vbtns .finhome-chart-vbtn:last-child { border-right: none !important; }
  .finhome-chart-vbtn:hover {
    background: var(--paper-deep) !important;
    color: var(--ink) !important;
    border-color: var(--rule) !important;
  }
  .finhome-chart-vbtn.active {
    background: var(--ink) !important;
    color: var(--paper) !important;
    border-color: var(--ink) !important;
  }

  /* Chart container card styling */
  .finhome-chart-source {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--ink-mute) !important;
    font-style: italic !important;
    font-size: 11px !important;
  }

  /* Calendar section heads */
  .cal-section-head {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--ink) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.18em !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    border-left: 3px solid var(--oxblood) !important;
    padding-left: 12px !important;
  }

  /* Editorial panel (if rendered) */
  .finhome-editorial {
    background: var(--paper-deep) !important;
    border: none !important;
    border-left: 3px solid var(--oxblood) !important;
    border-radius: 0 !important;
    padding: 22px 24px !important;
    box-shadow: none !important;
  }
  .finhome-editorial h2 {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--oxblood) !important;
    font-weight: 600 !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.22em !important;
  }
  .finhome-editorial p {
    font-family: 'Spectral', Georgia, serif !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    color: var(--ink-soft) !important;
  }
  .finhome-editorial em {
    font-style: italic !important;
    font-weight: 400 !important;
    color: var(--ink) !important;
  }

  /* Override inline-styled links in modals (heavy-handed but targeted) */
  .finhome-modal a[style*="#1D4ED8"],
  .finhome-modal a[style*="#16A34A"],
  .finhome-modal a[style*="#B91C1C"] {
    color: var(--oxblood) !important;
    border-bottom-color: var(--oxblood) !important;
  }
  .finhome-modal a[style*="color:#101828"] {
    color: var(--ink) !important;
    border-bottom-color: var(--oxblood) !important;
  }
  .finhome-modal a[style*="border-bottom:1px solid #B91C1C"],
  .finhome-modal a[style*="border-bottom:1px solid #1D4ED8"],
  .finhome-modal a[style*="border-bottom:1px solid #16A34A"],
  .finhome-modal a[style*="border-bottom:1px solid #9ca3af"] {
    border-bottom-color: var(--oxblood) !important;
  }
  /* Modal entry titles in inline-styled divs */
  .finhome-modal div[style*="font-weight:700;color:#101828"],
  .finhome-modal div[style*="font-weight:600;color:#101828"] {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--ink) !important;
  }
  /* Modal entry meta text */
  .finhome-modal em[style*="color:#94a3b8"] {
    font-family: 'Source Serif 4', Georgia, serif !important;
    color: var(--ink-mute) !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
  }
  .finhome-modal em[style*="color:#667085"] {
    font-family: 'Spectral', Georgia, serif !important;
    color: var(--ink-mute) !important;
    font-style: italic !important;
  }

  /* Methodology note paragraph in exec modal */
  .finhome-modal p[style*="border-top:1px solid"] {
    border-top: 1px solid var(--rule) !important;
    color: var(--ink-mute) !important;
    font-style: italic !important;
    font-family: 'Spectral', Georgia, serif !important;
  }
  .finhome-modal p[style*="border-top:1px solid"] strong {
    color: var(--ink) !important;
    font-style: normal !important;
    font-family: 'Source Serif 4', Georgia, serif !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    font-size: 11px !important;
    font-weight: 600 !important;
  }

/* === HubSpot modal visibility hardening ===
   Forces AV Watch modal panels above HubSpot/theme overlays when opened. */
.finhome-modal-backdrop.is-open,
.finreg-modal-backdrop.is-open {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
  align-items: flex-start !important;
  justify-content: center !important;
  padding: 5vh 16px !important;
  overflow-y: auto !important;
  background: rgba(15, 23, 42, 0.72) !important;
  backdrop-filter: blur(3px) !important;
  -webkit-backdrop-filter: blur(3px) !important;
}
.finhome-modal-backdrop.is-open > .finhome-modal,
.finreg-modal-backdrop.is-open > .finreg-modal {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  z-index: 2147483001 !important;
  transform: none !important;
  pointer-events: auto !important;
  background: #ffffff !important;
}
.finhome-modal-backdrop.is-open [role="dialog"],
.finreg-modal-backdrop.is-open [role="dialog"] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
body.avwatch-modal-open {
  overflow: hidden !important;
}
