/* Official benchmarks (official-benchmarks.mjs): the market desk section and the Investor tab card.
   One series per chart (no legend); the line is 2px, the latest quarter a 8px dot with a surface
   ring. Text wears ink tokens, never the line colour. Minimum text 12px. */
.ob-head{display:grid;gap:2px}
.ob-head span{font-size:12px;font-weight:700;color:#3F4C72}
.ob-head strong{font:650 24px/1.15 Sora,Inter,sans-serif;color:#0E1D4D;font-variant-numeric:tabular-nums}
.ob-head small{font-size:12px;color:#56617F}
.ob-trend{margin:8px 0 0;min-width:0}
.ob-trend figcaption{margin-top:2px;font-size:12px;color:#56617F}
.ob-spark{display:block;width:100%;height:auto;max-width:420px;overflow:visible;--ob-line:#1455FF}
.ob-spark[data-tone=retail]{--ob-line:#0B7C8C}
.ob-spark[data-tone=industrial]{--ob-line:#0E1D4D}
.ob-spark-base{stroke:#DCE6F4;stroke-width:1;vector-effect:non-scaling-stroke}
.ob-spark-line{fill:none;stroke:var(--ob-line);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.ob-spark-dot{fill:var(--ob-line);stroke:#fff;stroke-width:2;vector-effect:non-scaling-stroke}
.ob-hit{fill:transparent;pointer-events:all}
.ob-hit:hover{fill:#1455ff10}
.ob-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:6px;margin:10px 0 0}
.ob-stat{min-width:0;padding:7px 9px;border-radius:10px;background:#EEF5FF}
.ob-stat dt{font-size:12px;color:#56617F}
.ob-stat dd{margin:0;display:grid;gap:1px}
.ob-stat strong{font:650 15px/1.25 Sora,Inter,sans-serif;color:#0E1D4D;font-variant-numeric:tabular-nums}
.ob-stat small{font-size:12px;color:#3F4C72}
.ob-ours{margin:10px 0 0;padding-top:8px;border-top:1px solid #DCE6F4;font-size:13px;color:#3F4C72}
.ob-ours strong{color:#0E1D4D}
.ob-about{margin-top:12px;font-size:13px;color:#4A5675}
.ob-about summary{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:#0B44D9;cursor:pointer}
.ob-about p{margin:4px 0 0;max-width:72ch}
/* Market desk: three sectors side by side, one column on a phone. */
.ob-sectors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ob-sector{min-width:0;padding:12px 14px;border:1px solid #D8E2F4;border-radius:16px;background:#fff}
.ob-sector h3{margin:0 0 8px;font:700 15px/1.3 Sora,Inter,sans-serif;color:#0E1D4D}
.ob-sector h3 small{font:600 12px/1 Inter,sans-serif;color:#4A5675;margin-left:6px}
.ob-table-wrap{margin-top:4px;overflow-x:auto;max-width:100%}
.ob-table{border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}
.ob-table caption{text-align:left;padding:4px 0 2px;font-size:12px;font-weight:700;color:#4A5675}
.ob-table th,.ob-table td{padding:6px 10px;border-bottom:1px solid #E6ECF8;text-align:right;white-space:nowrap}
.ob-table th:first-child,.ob-table td:first-child{text-align:left}
.ob-table thead th{font-size:12px;color:#4A5675;font-weight:700}
.md-basis[data-basis=official]::before{background:#0E1D4D;box-shadow:0 0 0 2px #22D3EE}
@media(max-width:1020px){.ob-sectors{grid-template-columns:1fr}}
/* Investor tab: the card sits between the yield and the calculator; in the wide hero it spans both
   columns, the trend on the left and the figures on the right. */
.ob-card--investor .ob-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:1100px){
  .sn-bh .ob-card--investor{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:24px;align-items:start}
  .sn-bh .ob-card--investor .sn-inv-card-head{grid-column:1/-1}
  .sn-bh .ob-card--investor .ob-side .ob-stats{margin-top:0}
}
