/* Matched price research, sharing the site's warm palette. */
.mw-page { max-width: 1000px; margin: 0 auto; }
.mw-head { padding: 20px 0 30px; max-width: 820px; }
.mw-kicker { font-size: var(--fs-small); letter-spacing: .09em; color: var(--invest); }
.mw-head h1 { font-size: clamp(28px, 4vw, 44px); line-height: 1.2; margin: 16px 0; }
.mw-lead { font-size: 22px; color: var(--fg); margin: 0 0 14px; }
.mw-page p { line-height: 1.8; color: var(--fg-dim); }
.mw-jump { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 24px; font-size: 13px; }
.mw-jump a { color: var(--invest); text-underline-offset: 5px; }
.mw-brief { padding: 24px 28px; background: var(--bg-sunken); border-left: 3px solid var(--invest); }
.mw-brief h2 { font-size: var(--fs-small); letter-spacing: .08em; text-transform: uppercase; color: var(--invest); margin: 0; }
.mw-brief p:first-of-type { font-size: 19px; line-height: 1.7; color: var(--fg); }
.mw-brief p:last-child { font-size: var(--fs-small); margin-bottom: 0; }
.mw-window { margin-top: 56px; scroll-margin-top: 90px; }
.mw-window h2, .mw-method h2 { font-size: clamp(22px, 3vw, 28px); line-height: 1.4; }
.mw-window h3 { font-size: 15px; margin: 28px 0 8px; }
.mw-window .mw-reading { font-size: var(--fs-small); max-width: 760px; }
.mw-table-wrap { overflow-x: auto; border-bottom: 1px solid var(--border); }
.mw-table { border-collapse: collapse; width: 100%; font-size: 13px; font-variant-numeric: tabular-nums; }
.mw-table caption { text-align: left; font-size: var(--fs-small); color: var(--fg-muted); padding: 6px 0 14px; }
.mw-table th, .mw-table td { padding: 14px 12px; text-align: right; border-top: 1px solid var(--hairline); }
.mw-table thead th { color: var(--fg-dim); font-size: 11px; font-weight: 400; vertical-align: bottom; }
.mw-table th:first-child { text-align: left; padding-left: 0; min-width: 115px; }
.mw-table th[scope="row"] { font-size: 13px; font-weight: 500; text-transform: none; letter-spacing: normal; }
.mw-table th[scope="row"] a { color: var(--fg); text-underline-offset: 4px; }
.mw-table th[scope="row"] a:hover { color: var(--pos-strong); }
.mw-table tbody tr:hover { background: var(--bg-sunken); }
.mw-table td { white-space: nowrap; }
.mw-table td:last-child { color: var(--fg-dim); }
.mw-gap { font-weight: 700; }
.mw-swipe { display: none; }
.mw-up { color: var(--pos-strong); }
.mw-down { color: var(--neg-strong); }
.mw-flat { color: var(--fg-dim); }
.mw-all { margin: 22px 0; }
.mw-all summary { color: var(--invest); cursor: pointer; padding: 12px 0; font-size: 13px; }
.mw-receipt { margin: 26px 0; padding: 12px 0 12px 20px; border-left: 2px solid var(--border); }
.mw-receipt h2 { font-size: 17px; margin: 0; }
.mw-receipt p, .mw-sensitivity p { font-size: var(--fs-small); }
.mw-receipt a { color: var(--invest); text-underline-offset: 4px; }
.mw-method { margin: 56px 0 40px; padding-top: 24px; border-top: 1px solid var(--border); scroll-margin-top: 90px; max-width: 820px; }
.mw-method p { font-size: 13px; }
.mw-page a:focus-visible, .mw-all summary:focus-visible, .mw-table-wrap:focus-visible { outline: 2px solid var(--pos-strong); outline-offset: 4px; }
@media (max-width: 620px) {
  .mw-head { padding-top: 8px; }
  .mw-lead { font-size: 19px; }
  .mw-brief { padding: 18px; }
  .mw-brief p:first-of-type { font-size: 17px; }
  .mw-window { margin-top: 38px; }
  .mw-table th, .mw-table td { padding: 12px 9px; }
  .mw-table { min-width: 620px; }
  .mw-page .mw-swipe { display: block; font-size: 11px; color: var(--fg-muted); margin: 0; }
}
