/* Metastone Markets. Every rule is scoped to #page-markets or a .mk- class. Site variables only. */
#page-markets {
  --mk-space: clamp(56px, 9vw, 128px);
  --mk-gutter: clamp(20px, 5vw, 64px);
  --mk-max: 1180px;
  --mk-hair: rgba(255, 255, 255, .12);
  --mk-ease: cubic-bezier(.2, .7, .2, 1);
  overflow-x: clip;
  font-family: var(--body);
  font-size: 17px;
  line-height: 1.6;
  color: var(--ink);
  background: var(--cream);
}
#page-markets *, #page-markets *::before, #page-markets *::after { box-sizing: border-box; }
.mk-overview { --mk-space: clamp(32px, 4vw, 56px); }
.mk-overview .mk-h2 { max-width: none; font-size: clamp(28px, 3.4vw, 40px); margin-bottom: 16px; }
.mk-overview .mk-eyebrow { margin-bottom: 12px; }
.mk-overview .mk-peers { padding: 32px 0; }
#page-markets img, #page-markets svg { max-width: 100%; }
#page-markets :focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.mk-band-cream :focus-visible, .mk-band-white :focus-visible { outline-color: var(--navy); }

table.mk-sr { display: block; }
.mk-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0; }

/* Sub navigation */
.mk-subnav { position: sticky; top: var(--mk-nav, 64px); z-index: 15; background: var(--navy-deep); border-bottom: 1px solid var(--mk-hair); }
.mk-subnav-in { display: flex; max-width: var(--mk-max); margin: 0 auto; padding: 0 calc(var(--mk-gutter) - 12px); overflow-x: auto; scrollbar-width: thin; scrollbar-color: var(--gold) var(--navy-deep); }
.mk-subnav-shell { display: flex; align-items: center; gap: 20px; max-width: var(--mk-max); padding: 6px var(--mk-gutter); margin: auto; }
.mk-subnav-shell .mk-subnav-in { flex: 1; min-width: 0; margin: 0; padding: 0; }
.mk-sticky-market { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 8px; flex: 0 0 230px; }
.mk-sticky-market label { color: var(--on-dark-muted); font-size: 11px; font-weight: 600; }
.mk-sticky-market select { width: 100%; min-height: 44px; padding: 6px 8px; border: 1px solid var(--gold); border-radius: 4px; color: var(--white); background: var(--navy-deep); font: 600 16px var(--body); cursor: pointer; }
.mk-sticky-market select:disabled { opacity: .6; cursor: wait; }
@media (max-width: 799px) { .mk-subnav-shell { display: block; padding: 6px var(--mk-gutter) 0; } .mk-sticky-market { max-width: 280px; margin-bottom: 4px; } .mk-subnav-shell .mk-subnav-in { margin-inline: -12px; } }
.mk-tab { display: inline-flex; flex-shrink: 0; align-items: center; gap: 6px; min-height: 44px; min-width: 44px; padding: 0 12px; border-bottom: 2px solid transparent; color: var(--on-dark-muted); font-size: 14px; font-weight: 600; white-space: nowrap; }
.mk-tab:hover { color: var(--white); }
.mk-tab[aria-current] { color: var(--white); border-bottom-color: var(--gold); }
.mk-anchor { scroll-margin-top: calc(var(--mk-nav, 76px) + var(--mk-subnav, 60px) + 16px); }
.mk-ext { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; flex: none; }

/* Hero */
.mk-hero { position: relative; overflow: hidden; contain: paint; background: var(--navy-deep); color: var(--on-dark); padding: var(--mk-space) 0; }
.mk-contours { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.08); animation: mk-drift 120s linear infinite alternate; pointer-events: none; }
.mk-hero-in { position: relative; width: 100%; max-width: var(--mk-max); margin: 0 auto; padding: 0 var(--mk-gutter); }
.mk-eyebrow { display: block; margin: 0 0 20px; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--gold); }
.mk-eyebrow-dark { color: var(--gold-text); }
.mk-hero h1 { margin: 0 0 24px; max-width: 18ch; font-family: var(--display); font-weight: 400; font-size: clamp(40px, 8vw, 88px); line-height: 1.05; letter-spacing: -.055em; color: var(--white); }
.mk-hero h1:focus { outline: none; }
.mk-hero-compact { padding: 24px 0 8px; }
.mk-hero-compact h1 { max-width: none; font-size: clamp(28px, 3.2vw, 42px); margin-bottom: 12px; line-height: 1.12; }
.mk-hero-compact .mk-eyebrow { margin-bottom: 12px; }
.mk-hero-compact .mk-lede { margin-bottom: 16px; }
.mk-hero-compact .mk-hero-proof { margin-bottom: 16px; }
.mk-hero-compact .mk-hero-action { margin-bottom: 16px; }
.mk-hero-compact .mk-figs { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; margin-top: 16px; }
.mk-hero-compact .mk-fig-num { font-size: clamp(28px, 3.2vw, 42px); }
.mk-hero-compact .mk-fig-label { font-size: 10px; letter-spacing: .1em; }
.mk-hero-compact .mk-fig-meta { font-size: 12px; line-height: 1.5; }
.mk-hero-compact .mk-chip { font-size: 11px; }
.mk-hero-about { margin-top: 4px; border-top: 1px solid var(--mk-hair); }
.mk-hero-about summary { display: list-item; width: fit-content; min-height: 44px; padding: 12px 0; font-size: 12px; color: var(--on-dark-muted); cursor: pointer; }
.mk-hero-about .mk-lede { max-width: 72ch; font-size: 16px; margin-top: 12px; }
.mk-hero-compact .mk-fig { padding-top: 20px; padding-bottom: 20px; }
.mk-lede { max-width: 62ch; margin: 0 0 24px; font-size: clamp(18px, 2.2vw, 21px); line-height: 1.55; color: var(--on-dark-muted); }
.mk-hero-proof { margin: 0 0 24px; font-size: 16px; font-weight: 600; color: var(--on-dark); }
.mk-hero-action { min-height: 48px; margin-bottom: 24px; }
.mk-hero-coverage { max-width: 90ch; margin: 0 0 12px; font-size: 13px; line-height: 1.6; color: var(--on-dark-muted); }
.mk-brief { padding: 16px 0; border-top: 1px solid var(--mk-hair); }
.mk-brief h2 { margin: 0; color: var(--white); font-size: 18px; font-weight: 500; letter-spacing: -.02em; }
.mk-brief > p { margin: 4px 0 12px; color: var(--on-dark-muted); font-size: 12px; }
.mk-brief ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; list-style: none; margin: 0; padding: 0; }
.mk-brief li { min-width: 0; }
.mk-brief button { display: grid; gap: 5px; width: 100%; min-height: 44px; border: 0; padding: 6px 0; text-align: left; background: transparent; color: var(--white); font: inherit; cursor: pointer; }
.mk-brief button strong { font-size: 14px; font-weight: 600; }
.mk-brief button > span { font-size: 12px; color: var(--on-dark-muted); }
.mk-brief small { font-size: 11px; color: var(--gold); }
.mk-brief button:hover strong { text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 639px) { .mk-brief ul { grid-template-columns: minmax(0, 1fr); gap: 8px; } }
#page-markets [hidden] { display: none; }
.mk-local-return { min-height: 44px; border: 0; padding: 6px 0; background: transparent; font: inherit; font-weight: 600; color: var(--navy); text-align: left; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
#page-markets #mk-local-coverage { padding: 20px 0; border-block: 1px solid var(--line); background: var(--cream); font-size: 14px; }
#page-markets #mk-local-coverage p { margin: 0; }
.mk-peers { padding: clamp(40px, 5vw, 64px) 0; }
.mk-asof { display: flex; align-items: center; gap: 10px; margin: 0; min-height: 24px; font-size: 12px; letter-spacing: .02em; color: var(--on-dark-muted); }
.mk-pulse { width: 8px; height: 8px; border-radius: 50%; background: var(--gold); animation: mk-breathe 2.4s ease-in-out infinite; }
.mk-badge { display: inline-block; margin: 0; padding: 6px 12px; border: 1px solid var(--gold); border-radius: 2px; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--gold); }

/* Figures */
.mk-figs { display: grid; grid-template-columns: minmax(0, 1fr); margin: 48px 0 0; padding: 0; list-style: none; }
.mk-fig { display: flex; flex-direction: column; gap: 6px; min-width: 0; padding: 24px 0 28px; border-top: 1px solid var(--mk-hair); }
.mk-fig[data-figure] { padding: 0; }
.mk-fig-trigger { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; width: 100%; height: 100%; min-height: 44px; padding: 24px 0 28px; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; transition: background 180ms ease; }
.mk-fig-trigger:hover { background: rgba(255, 255, 255, .04); }
.mk-fig-hint { display: inline-flex; align-items: center; gap: 12px; margin-top: 8px; font-size: 12px; font-weight: 600; color: var(--gold); text-decoration: underline; text-underline-offset: 4px; }
.mk-hero-compact .mk-fig-trigger { padding-top: 20px; padding-bottom: 20px; }
.mk-fig-label { font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--on-dark-muted); }
.mk-fig-num { font-family: var(--display); font-weight: 400; font-size: clamp(44px, 13vw, 72px); line-height: 1; letter-spacing: -.045em; font-variant-numeric: tabular-nums; color: var(--white); white-space: nowrap; }
.mk-unit { font-family: var(--body); font-size: .32em; font-weight: 500; letter-spacing: 0; margin-left: .25em; color: var(--on-dark-muted); }
.mk-fig-meta { font-size: 14px; color: var(--on-dark-muted); overflow-wrap: anywhere; }
.mk-chip { align-self: flex-start; margin-top: 4px; padding: 4px 10px; border: 1px solid var(--mk-hair); border-radius: 2px; font-size: 13px; font-variant-numeric: tabular-nums; color: var(--white); }

/* Bands */
.mk-band { position: relative; overflow-x: clip; padding: var(--mk-space) 0; }
.mk-band-cream { background: var(--cream); color: var(--ink); }
.mk-band-white { background: var(--white); color: var(--ink); }
.mk-band-navy { background: var(--navy); color: var(--on-dark); }
.mk-band-raised { background: var(--navy-raised); color: var(--on-dark); }
.mk-wrap { width: 100%; max-width: var(--mk-max); margin: 0 auto; padding: 0 var(--mk-gutter); }
.mk-h2 { margin: 0 0 20px; max-width: 20ch; font-family: var(--display); font-weight: 400; font-size: clamp(30px, 5vw, 52px); line-height: 1.12; letter-spacing: -.045em; color: inherit; }
.mk-band-cream .mk-h2, .mk-band-white .mk-h2 { color: var(--navy); }
.mk-h3 { margin: 40px 0 16px; font-family: var(--display); font-weight: 400; font-size: clamp(20px, 2.6vw, 26px); line-height: 1.25; letter-spacing: -.03em; color: inherit; }
.mk-lead { max-width: 62ch; margin: 0 0 32px; font-size: clamp(18px, 2.2vw, 21px); line-height: 1.55; }
.mk-band-navy .mk-lead, .mk-band-raised .mk-lead { color: var(--on-dark-muted); }
.mk-display-sentence { max-width: 24ch; margin: 0 0 40px; font-family: var(--display); font-size: clamp(28px, 4.6vw, 48px); line-height: 1.15; letter-spacing: -.045em; color: var(--navy); }
.mk-band-navy .mk-display-sentence { color: var(--white); }
.mk-cap { max-width: 62ch; margin: 16px 0 0; font-size: 14px; color: var(--muted); }
.mk-fine { max-width: 62ch; margin: 24px 0 0; font-size: 13px; line-height: 1.6; color: var(--on-dark-muted); overflow-wrap: anywhere; }
.mk-fine-dark { color: var(--muted); }
.mk-empty { margin: 0; padding: 20px 0; font-size: 16px; color: var(--muted); }
.mk-band-navy .mk-empty, .mk-band-raised .mk-empty { color: var(--on-dark-muted); }
.mk-chart { max-width: 100%; margin: 0 0 8px; }
.mk-chart svg { display: block; height: auto; }
.mk-chart-dots { display: none; max-width: 100%; }

/* Charts */
.mk-dot { fill: var(--navy); fill-opacity: .55; }
.mk-dot-home { fill: var(--gold); fill-opacity: 1; stroke: var(--navy); stroke-width: 2.5; }
.mk-axis { stroke: currentColor; stroke-opacity: .3; stroke-width: 1; }
.mk-leader { stroke: var(--navy); stroke-opacity: .3; stroke-width: 1; }
.mk-dot-name { font: 600 15px var(--body); fill: var(--navy); }
.mk-dot-val { font: 500 14px var(--body); fill: var(--muted); font-variant-numeric: tabular-nums; }
.mk-pt:has(.mk-dot-home) .mk-dot-name { fill: var(--gold-text); font-weight: 700; }
.mk-pt[role="button"] { cursor: pointer; }
.mk-city-hit { fill: transparent; }
.mk-pt[role="button"]:hover .mk-dot, .mk-pt[role="button"]:focus-visible .mk-dot { fill-opacity: 1; stroke: var(--gold-text); stroke-width: 3; }
.mk-pt[role="button"]:hover .mk-dot-name { text-decoration: underline; }
.mk-bar-label { font: 500 13px var(--body); fill: currentColor; }
.mk-bar-val { font: 600 13px var(--body); fill: currentColor; font-variant-numeric: tabular-nums; }
.mk-bar { fill: var(--navy); }
.mk-band-navy .mk-bar, .mk-band-raised .mk-bar { fill: var(--gold); }
.mk-bead { fill: var(--gold); fill-opacity: .85; stroke: var(--navy-deep); stroke-width: 1.5; }
.mk-tick { font: 500 12px var(--body); fill: currentColor; fill-opacity: .7; }
.mk-area { fill: var(--navy); fill-opacity: .06; }
.mk-line { fill: none; stroke: var(--navy); stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 0; }
.mk-yearago { fill: none; stroke: var(--gold-text); stroke-width: 1.5; }
.mk-end { fill: var(--gold); stroke: var(--navy); stroke-width: 2; }
.mk-rule { stroke: var(--navy); stroke-width: 1; opacity: 0; }
.mk-scrub { fill: var(--navy); opacity: 0; }
.mk-hit { fill: transparent; touch-action: pan-y; cursor: crosshair; }
.mk-scrubbing .mk-rule { opacity: .5; }
.mk-scrubbing .mk-scrub { opacity: 1; }
.mk-js .mk-card:not(.mk-in) .mk-line { stroke-dashoffset: 1; }
.mk-card.mk-in .mk-line { transition: stroke-dashoffset 1200ms ease; }

/* Peers */
.mk-compare-toggle { display: inline-flex; gap: 4px; margin: 0 0 20px; padding: 3px; border: 1px solid var(--line); border-radius: 5px; background: var(--white); }
.mk-compare-toggle button { min-height: 44px; padding: 6px 22px; border: 0; border-radius: 3px; font: 600 14px var(--body); color: var(--navy); background: transparent; cursor: pointer; }
.mk-compare-toggle button[aria-pressed="true"] { color: var(--white); background: var(--navy); }
.mk-compare-scroll { max-width: 100%; overflow-x: auto; margin-top: 16px; border: 1px solid var(--line); border-radius: 5px; background: var(--white); }
.mk-compare-data { width: 100%; min-width: 800px; border-collapse: collapse; text-align: left; }
.mk-compare-data caption { padding: 14px 18px; text-align: left; font-size: 12px; color: var(--muted); }
.mk-compare-data th, .mk-compare-data td { padding: 14px 16px; border-top: 1px solid var(--line); vertical-align: top; }
.mk-compare-data th { color: var(--navy); font-size: 14px; }
.mk-compare-data tr > th:first-child { position: sticky; left: 0; z-index: 1; min-width: 140px; background: var(--white); }
.mk-compare-data .mk-compare-selected > th:first-child { background: var(--cream); }
.mk-compare-data thead button { min-height: 44px; border: 0; padding: 0; background: transparent; color: var(--navy); font: inherit; font-weight: 700; text-align: left; cursor: pointer; }
.mk-compare-data td button { min-height: 44px; border: 0; padding: 0; background: transparent; color: var(--navy); font: 600 18px var(--body); text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.mk-compare-data small { display: block; max-width: 210px; margin-top: 5px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.mk-compare-selected { background: var(--cream); }
.mk-compare-selected > th { box-shadow: inset 3px 0 var(--gold-text); }
.mk-compare-here { display: block; margin-top: 8px; color: var(--gold-text); font-size: 11px; }
.mk-compare-sources { display: flex; flex-wrap: wrap; gap: 8px 16px; font-size: 12px; }
.mk-compare-sources a { text-decoration: underline; text-underline-offset: 3px; }
.mk-switch { margin: 0 0 32px; }
.mk-peer-insight { max-width: 72ch; margin: 28px 0 24px; padding-left: 20px; border-left: 3px solid var(--gold); }
.mk-peer-rank { margin: 0; font-size: 18px; font-weight: 600; color: var(--navy); }
.mk-peer-insight .mk-cap { margin-top: 8px; }
.mk-seg { display: none; flex-wrap: wrap; gap: 8px; }
.mk-chipbtn { min-height: 44px; min-width: 44px; padding: 0 16px; border: 1px solid var(--line); border-radius: 2px; background: var(--white); color: var(--navy); font-size: 14px; font-weight: 600; }
.mk-chipbtn[aria-checked="true"] { background: var(--navy); border-color: var(--navy); color: var(--white); }
.mk-selectwrap { display: block; }
.mk-select { width: 100%; min-height: 44px; padding: 0 14px; border: 1px solid var(--navy); border-radius: 2px; background: var(--white); color: var(--navy); font-size: 16px; font-weight: 600; }
.mk-prows { margin: 0; padding: 0; list-style: none; }
.mk-prow { display: block; padding: 0; border-top: 1px solid var(--line); }
.mk-city-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 16px; width: 100%; min-height: 44px; padding: 14px 0; border: 0; background: transparent; font: inherit; text-align: left; color: var(--navy); cursor: pointer; }
.mk-city-hint { grid-column: 1 / -1; font-size: 12px; color: var(--gold-text); text-decoration: underline; text-underline-offset: 3px; }
.mk-city-selected { margin: 0; font-size: 16px; font-weight: 600; color: var(--navy); }
.mk-city-more { margin-top: 28px; padding-top: 12px; border-top: 1px solid var(--line); }
.mk-city-facts { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; margin: 20px 0; }
.mk-city-facts > div { min-width: 0; border-top: 1px solid var(--line); padding-top: 16px; }
.mk-city-facts dt { font-size: 13px; color: var(--navy); font-weight: 600; }
.mk-city-facts dd { margin: 8px 0 0; }
.mk-city-value { font: 400 28px/1.2 var(--display); color: var(--navy); }
.mk-city-meta { font-size: 11px; line-height: 1.7; color: var(--muted); overflow-wrap: anywhere; }
.mk-stock-summary, .mk-stock-method { border: 0; padding: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.mk-stock-summary:hover, .mk-stock-method:hover { color: var(--gold-text); }
.mk-stock-hint { display: flex; align-items: center; gap: 12px; margin-top: 10px; color: var(--gold-text); font: 600 12px/1.6 var(--body); text-decoration: underline; text-underline-offset: 4px; }
.mk-stock-method { min-height: 44px; }
.mk-stock-method > span { color: var(--gold-text); text-decoration: underline; text-underline-offset: 3px; }
.mk-stock [data-chart-row] { cursor: pointer; }
.mk-stock-hit { fill: transparent; }
.mk-stock [data-chart-row]:hover .mk-bar, .mk-stock [data-chart-row]:focus-visible .mk-bar { fill: var(--gold-text); }
.mk-stock-totals { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 24px 0; }
.mk-stock-totals dt { font-size: 12px; color: var(--muted); }
.mk-stock-totals dd { margin: 8px 0 0; font: 400 clamp(30px, 5vw, 46px)/1.1 var(--display); color: var(--navy); }
.mk-stock-detail-heading { margin: 24px 0 12px; color: var(--navy); font-size: 16px; }
.mk-detail-dialog .mk-stock-selected td, .mk-detail-dialog .mk-stock-selected th { background: var(--cream); }
.mk-detail-dialog .mk-stock-selected th { box-shadow: inset 3px 0 var(--gold-text); }
.mk-detail-dialog .mk-stock-table th { white-space: normal; }
@media (min-width: 640px) { .mk-city-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.mk-prow-name { font-weight: 600; color: var(--navy); overflow-wrap: anywhere; }
.mk-prow-home .mk-prow-name { color: var(--gold-text); font-weight: 700; }
.mk-here { font-weight: 600; font-size: 13px; }
.mk-prow-val { font-variant-numeric: tabular-nums; font-weight: 600; text-align: right; }
.mk-track { position: relative; grid-column: 1 / -1; height: 4px; margin: 6px 6px 4px; border-radius: 2px; background: rgba(26, 33, 85, .15); }
.mk-marker { position: absolute; top: 50%; width: 12px; height: 12px; margin: -6px 0 0 -6px; border-radius: 50%; background: var(--navy); opacity: .55; }
.mk-prow-home .mk-marker { width: 16px; height: 16px; margin: -8px 0 0 -8px; background: var(--gold); border: 2px solid var(--navy); opacity: 1; }

/* Trends */
.mk-cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; }
.mk-card { min-width: 0; padding: 20px; border: 1px solid var(--line); border-radius: 2px; background: var(--cream); }
.mk-card-title { margin: 0 0 12px; font-size: 14px; font-weight: 700; line-height: 1.35; color: var(--navy); }
.mk-card-val { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; margin: 0 0 12px; }
.mk-card-num { font-family: var(--display); font-size: 32px; line-height: 1; letter-spacing: -.04em; font-variant-numeric: tabular-nums; color: var(--navy); }
.mk-card-meta, .mk-card-note { font-size: 13px; color: var(--muted); }
.mk-card[data-series], .mk-rate[data-rate] { cursor: pointer; }
.mk-card[data-series] { transition: border-color 180ms ease, box-shadow 180ms ease; }
.mk-card[data-series]:hover { border-color: var(--gold-text); box-shadow: 0 8px 24px rgba(17, 22, 56, .06); }
.mk-detail-open { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; margin-top: 8px; padding: 8px 0; border: 0; background: transparent; color: var(--gold-text); font: 600 12px var(--body); cursor: pointer; text-decoration: underline; text-underline-offset: 4px; }
.mk-rate .mk-detail-open { color: var(--gold); grid-column: 1 / -1; justify-self: start; }
html:has(.mk-detail-dialog[open]) { overflow: hidden; }
#page-markets .mk-detail-dialog { position: fixed; inset: 0; width: calc(100% - 40px); max-width: 880px; max-height: 90vh; max-height: 90dvh; margin: auto; padding: 36px; overflow: auto; border: 1px solid var(--line); border-radius: 18px; color: var(--ink); background: var(--white); box-shadow: 0 24px 100px rgba(17, 22, 56, .3); }
.mk-detail-dialog::backdrop { background: rgba(17, 22, 56, .7); backdrop-filter: blur(8px); }
.mk-detail-dialog h2 { max-width: 90%; margin: 12px 0 20px; color: var(--navy); font: 400 clamp(27px, 4vw, 40px)/1.15 var(--display); letter-spacing: -.035em; }
.mk-detail-close { float: right; display: inline-flex; align-items: center; gap: 12px; min-height: 44px; margin: -12px -12px 0 12px; padding: 10px 12px; border: 0; background: transparent; color: var(--navy); cursor: pointer; font: 600 12px var(--body); }
.mk-detail-close span { font-size: 24px; }
.mk-detail-dialog .mk-eyebrow { font-size: 10px; margin-bottom: 12px; padding-top: 8px; }
.mk-detail-context { max-width: 70ch; margin: 0 0 24px; font-size: 15px; line-height: 1.8; color: var(--muted); }
.mk-detail-ranges { display: flex; flex-wrap: wrap; gap: 8px; margin: 24px 0; }
.mk-detail-ranges button { min-height: 44px; padding: 10px 16px; border: 1px solid var(--line); border-radius: 6px; background: #fff; color: var(--navy); font: 600 12px var(--body); cursor: pointer; }
.mk-detail-ranges button[aria-pressed="true"] { color: #fff; background: var(--navy); border-color: var(--navy); }
.mk-detail-value { margin: 12px 0 4px; color: var(--navy); font: 400 48px/1.1 var(--display); letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
.mk-detail-period { margin: 0 0 22px; font-size: 13px; color: var(--muted); }
.mk-detail-chart { margin-top: 28px; padding: 12px 0 0; }
.mk-detail-chart svg { display: block; width: 100%; height: auto; max-width: 100%; }
.mk-detail-endpoints { display: flex; justify-content: space-between; margin: 8px 0 22px; color: var(--muted); font-size: 11px; }
.mk-detail-slider { display: block; font-size: 12px; color: var(--navy); }
.mk-detail-slider input { display: block; width: 100%; min-height: 36px; margin: 8px 0; padding: 0; accent-color: var(--gold-text); }
.mk-detail-fine { margin: 18px 0; font-size: 11px; line-height: 1.8; color: var(--muted); }
.mk-detail-history, .mk-detail-source { margin-top: 26px; border-top: 1px solid var(--line); padding-top: 20px; }
.mk-detail-dialog summary { cursor: pointer; color: var(--navy); font-size: 12px; padding: 8px 0; }
.mk-detail-source h3 { color: var(--navy); font-size: 15px; margin: 0 0 12px; }
.mk-detail-source p { font-size: 12px; line-height: 1.8; margin: 8px 0; overflow-wrap: anywhere; }
.mk-detail-source a { color: var(--navy); font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
.mk-detail-table-wrap { max-height: 300px; overflow: auto; margin-top: 12px; border: 1px solid var(--line); border-radius: 6px; }
.mk-detail-dialog table { width: 100%; border-collapse: collapse; font-size: 12px; }
.mk-detail-dialog caption { padding: 12px; text-align: left; font-weight: 600; color: var(--navy); }
.mk-detail-dialog th, .mk-detail-dialog td { padding: 12px; text-align: left; border-top: 1px solid var(--line); white-space: nowrap; }
.mk-detail-dialog th { background: var(--cream); color: var(--navy); }
@media(max-width: 560px) {
  #page-markets .mk-detail-dialog { inset: auto 0 0; width: 100%; max-height: 94vh; max-height: 94dvh; margin: 0; border-radius: 18px 18px 0 0; padding: 24px 20px; }
  .mk-detail-dialog h2 { max-width: 100%; font-size: 28px; }
  .mk-detail-value { font-size: 40px; }
  .mk-detail-context { font-size: 13px; }
}
.mk-spark svg { display: block; width: 100%; height: auto; }
.mk-span { display: flex; justify-content: space-between; margin: 4px 0 0; font-size: 12px; color: var(--muted); }
.mk-readout { min-height: 24px; margin: 8px 0 0; font-size: 14px; font-variant-numeric: tabular-nums; color: var(--navy); }

/* Rates */
.mk-rate-list { margin: 0; padding: 0; list-style: none; }
.mk-rate { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 16px; padding: 22px 0; border-top: 1px solid var(--mk-hair); }
.mk-rate-label { font-weight: 600; color: var(--white); }
.mk-rate-val { grid-row: span 2; align-self: center; font-family: var(--display); font-size: clamp(32px, 6vw, 48px); line-height: 1; letter-spacing: -.045em; font-variant-numeric: tabular-nums; color: var(--white); }
.mk-rate-meta { font-size: 13px; color: var(--on-dark-muted); overflow-wrap: anywhere; }
.mk-delta { grid-column: 1; font-size: 13px; font-variant-numeric: tabular-nums; color: var(--on-dark-muted); }

/* Sources */
.mk-source-list { margin: 0; padding: 0; list-style: none; }
.mk-source { display: flex; flex-direction: column; gap: 4px; padding: 16px 0; border-top: 1px solid var(--line); overflow-wrap: anywhere; }
.mk-source strong { color: var(--navy); }
.mk-source span { font-size: 14px; color: var(--muted); }

/* States and loading */
.mk-state { padding: 40px 24px; border: 1px solid var(--line); border-radius: 2px; background: var(--cream); text-align: center; }
.mk-state-text { margin: 0; font-family: var(--display); font-size: clamp(22px, 4vw, 30px); line-height: 1.3; letter-spacing: -.03em; color: var(--navy); }
.mk-skeleton { display: grid; gap: 14px; margin-top: 8px; }
.mk-skeleton span { height: 18px; border-radius: 2px; background: linear-gradient(90deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .16), rgba(255, 255, 255, .06)); background-size: 200% 100%; animation: mk-shimmer 1.6s linear infinite; }
.mk-skeleton span:nth-child(1) { width: 100%; }
.mk-skeleton span:nth-child(2) { width: 82%; }
.mk-skeleton span:nth-child(3) { width: 92%; }
.mk-skeleton span:nth-child(4) { width: 58%; }

/* Storage */
.mk-caveat-band { padding: clamp(32px, 5vw, 56px) 0; }
.mk-caveats { max-width: 62ch; padding: 24px 24px 24px 28px; border-left: 3px solid var(--gold-text); background: var(--white); }
.mk-caveats .mk-h3 { margin-top: 0; }
.mk-caveats ul { margin: 0; padding: 0 0 0 20px; }
.mk-caveats li { margin: 0 0 10px; }
.mk-legend { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.mk-leg { display: flex; align-items: center; gap: 12px; min-height: 36px; }
.mk-leg-name { flex: 1; }
.mk-leg-n { font-variant-numeric: tabular-nums; font-weight: 600; }
.mk-sw, .mk-tile-glyph { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 28px; height: 28px; border-radius: 2px; font-size: 13px; font-weight: 700; }
.mk-sw-drive_up, .mk-t-drive_up .mk-tile-glyph { background: var(--gold); color: var(--navy); }
.mk-sw-indoor_climate, .mk-t-indoor_climate .mk-tile-glyph { background: var(--navy); color: var(--white); }
.mk-sw-mixed, .mk-t-mixed .mk-tile-glyph { background: rgba(26, 33, 85, .66); color: var(--white); }
.mk-sw-boat_rv_outdoor, .mk-t-boat_rv_outdoor .mk-tile-glyph { background: var(--white); color: var(--navy); border: 2px solid var(--navy); }
.mk-sw-unknown, .mk-t-unknown .mk-tile-glyph { background: repeating-linear-gradient(45deg, var(--white) 0 4px, var(--line) 4px 6px); color: var(--navy); border: 1px solid var(--line); }
.mk-part { stroke: var(--white); stroke-width: 2; }
.mk-part-drive_up { fill: var(--gold); }
.mk-part-indoor_climate { fill: var(--navy); }
.mk-part-mixed { fill: var(--navy); fill-opacity: .66; }
.mk-part-boat_rv_outdoor { fill: none; stroke: var(--navy); }
.mk-part-unknown { fill: url(#mk-hatch); stroke: var(--line); }
.mk-hatch-line { stroke: var(--line); stroke-width: 2; }
.mk-seg-glyph { font: 700 13px var(--body); fill: var(--white); }
.mk-part-drive_up + .mk-seg-glyph, .mk-part-unknown + .mk-seg-glyph, .mk-part-boat_rv_outdoor + .mk-seg-glyph { fill: var(--navy); }
.mk-mosaic { display: grid; grid-template-columns: repeat(auto-fill, minmax(132px, 1fr)); gap: 8px; }
.mk-tile { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 0 10px; align-items: center; min-width: 44px; min-height: 44px; padding: 10px; border: 1px solid var(--line); border-radius: 2px; background: var(--white); color: var(--navy); font: inherit; font-size: 13px; text-align: left; transition: transform 160ms var(--mk-ease), border-color 160ms ease; }
.mk-tile:hover { transform: translateY(-2px); border-color: var(--gold-text); }
.mk-tile-glyph { grid-row: 1 / span 2; }
.mk-tile-addr { font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.mk-tile-zip { font-size: 12px; color: var(--muted); }
.mk-sheet { position: fixed; inset: auto 0 0 0; width: 100%; max-width: 560px; max-height: 85vh; margin: 0 auto; padding: 0; border: 0; border-radius: 2px 2px 0 0; background: var(--white); color: var(--ink); box-shadow: 0 -12px 40px rgba(17, 22, 56, .35); transform: translateY(100%); transition: transform 300ms var(--mk-ease); }
.mk-sheet.mk-open { transform: none; }
.mk-sheet::backdrop { background: rgba(17, 22, 56, .55); }
.mk-sheet-body { position: relative; padding: 28px var(--mk-gutter) 36px; }
.mk-sheet-close { position: absolute; top: 8px; right: 8px; display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; border: 0; background: transparent; color: var(--navy); }
.mk-sheet-close svg { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; }
.mk-sheet .mk-h3 { margin: 0 44px 20px 0; color: var(--navy); }
.mk-dl { margin: 0; }
.mk-dl div { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; padding: 12px 0; border-top: 1px solid var(--line); }
.mk-dl dt { font-size: 13px; color: var(--muted); }
.mk-dl dd { margin: 0; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--navy); }
.mk-permits { margin: 24px 0 0; padding: 0; list-style: none; }
.mk-permit { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 16px; padding: 14px 0; border-top: 1px solid var(--mk-hair); }
.mk-permit-no { font-weight: 700; color: var(--white); }
.mk-permit-what { grid-column: 1; font-size: 14px; color: var(--on-dark-muted); }
.mk-permit-val { grid-row: 1 / span 2; grid-column: 2; align-self: center; font-variant-numeric: tabular-nums; font-weight: 600; color: var(--white); }
.mk-doors { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.mk-door { display: flex; flex-direction: column; gap: 6px; min-height: 44px; padding: 28px; border: 1px solid var(--line); border-radius: 2px; background: var(--white); transition: border-color 200ms ease, transform 200ms var(--mk-ease); }
.mk-door:hover { border-color: var(--gold-text); transform: translateY(-2px); }
.mk-door-title { display: inline-flex; align-items: center; gap: 8px; font-family: var(--display); font-size: 26px; letter-spacing: -.03em; color: var(--navy); }
.mk-door-sub { color: var(--muted); }
.mk-door-new { font-size: 13px; color: var(--gold-text); }

/* Map */
.mk-map { max-width: 760px; margin: 0 auto; padding: 12px; border: 1px solid var(--line); border-radius: 2px; background: var(--white); }
.mk-map > svg { display: block; width: 100%; height: auto; touch-action: manipulation; }
.mk-leg-shape { flex: none; width: 20px; height: 20px; }
.mk-map-base { pointer-events: none; }
.mk-m path { stroke-width: 1.5; cursor: pointer; }
.mk-m-drive_up path { fill: var(--gold); stroke: var(--navy); }
.mk-m-indoor_climate path { fill: var(--navy); stroke: var(--white); }
.mk-m-mixed path { fill: var(--navy-raised); stroke: var(--white); }
.mk-m-boat_rv_outdoor path { fill: var(--white); stroke: var(--navy); stroke-width: 2; }
.mk-m-unknown path { fill: var(--white); stroke: var(--navy); stroke-dasharray: 2 2; }
.mk-leg-shape path { stroke-width: 1.5; }
.mk-m-glyph { font: 700 11px var(--body); fill: var(--navy); pointer-events: none; }
.mk-m-indoor_climate .mk-m-glyph, .mk-m-mixed .mk-m-glyph { fill: var(--white); }
.mk-ring { fill: none; stroke: var(--gold); stroke-width: 3; pointer-events: none; }
.mk-ring-edge { fill: none; stroke: var(--navy); stroke-width: 1; pointer-events: none; }
.mk-zip { font: 600 11px var(--body); letter-spacing: .08em; fill: var(--navy); fill-opacity: .55; pointer-events: none; }
.mk-leg-letter { width: 14px; font-size: 12px; font-weight: 700; color: var(--muted); text-align: center; }
.mk-maplegend { margin-top: 16px; }
.mk-maplink { display: inline-flex; align-items: center; min-height: 44px; margin-top: 12px; font-weight: 600; color: var(--navy); text-decoration: underline; text-underline-offset: 3px; }

/* Facility finder */
.mk-finder { margin-top: 56px; }
.mk-finder .mk-h3 { margin-top: 0; }
.mk-ffields { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; margin: 0 0 16px; }
.mk-ffield { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.mk-ffield span { font-size: 13px; font-weight: 600; color: var(--muted); }
.mk-input, .mk-fselect { width: 100%; min-height: 44px; padding: 0 14px; border: 1px solid var(--navy); border-radius: 2px; background: var(--white); color: var(--navy); font-size: 16px; font-weight: 600; }
.mk-finder #mk-fcount { margin: 0 0 8px; font-size: 14px; color: var(--muted); }
.mk-flist { display: grid; grid-template-columns: minmax(0, 1fr); column-gap: 32px; margin: 0; padding: 0; list-style: none; }
.mk-frow { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 2px 12px; align-items: start; width: 100%; min-height: 44px; padding: 14px 4px; border: 0; border-top: 1px solid var(--line); background: transparent; color: var(--ink); font: inherit; text-align: left; cursor: pointer; }
.mk-frow:hover { background: rgba(26, 33, 85, .04); }
.mk-frow .mk-sw { grid-row: 1 / span 4; }
.mk-frow-addr, .mk-frow-owner, .mk-frow-meta, .mk-frow-pipe { grid-column: 2; min-width: 0; overflow-wrap: anywhere; }
.mk-frow-addr { color: var(--navy); }
.mk-frow-owner { font-size: 14px; }
.mk-frow-meta { font-size: 13px; color: var(--muted); }
.mk-frow-pipe { font-size: 13px; font-weight: 700; color: var(--gold-text); }

/* Storage next to housing */
.mk-demand-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px; margin-top: 8px; }
.mk-demand-col .mk-h3 { margin-top: 0; }
.mk-demand-fact { display: flex; flex-direction: column; gap: 4px; padding: 18px 0; border-top: 1px solid var(--line); }
.mk-demand-num { font-family: var(--display); font-size: clamp(34px, 8vw, 48px); line-height: 1; letter-spacing: -.045em; font-variant-numeric: tabular-nums; color: var(--navy); white-space: nowrap; }
.mk-demand-label { font-weight: 600; color: var(--navy); }
.mk-demand-meta { font-size: 14px; color: var(--muted); }

/* Peer rank sentences */
.mk-ranks { max-width: 72ch; margin: 0; border-top: 1px solid var(--line); padding-top: 12px; }
.mk-ranks summary { min-height: 44px; padding: 10px 0; cursor: pointer; font-size: 14px; font-weight: 600; color: var(--navy); }
.mk-ranks .mk-h3 { margin: 0 0 12px; font-size: 20px; }
.mk-ranks ul { margin: 0; padding: 0 0 0 20px; }
.mk-ranks li { margin: 0 0 8px; }

/* Reveal and motion */
.mk-js .mk-reveal { opacity: 0; transform: translateY(12px); transition: opacity 700ms ease, transform 700ms var(--mk-ease); }
.mk-js .mk-reveal.mk-in { opacity: 1; transform: none; }
@keyframes mk-drift { from { transform: translate3d(0, 0, 0) scale(1.08); } to { transform: translate3d(-4%, -2%, 0) scale(1.08); } }
@keyframes mk-breathe { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: .45; transform: scale(.7); } }
@keyframes mk-shimmer { from { background-position: 200% 0; } to { background-position: -200% 0; } }
.mk-paused .mk-contours, .mk-paused .mk-pulse, .mk-paused .mk-skeleton span { animation-play-state: paused; }

/* Footer: restores the inline margin the markets CSP blocks */
footer .footer-top > div:first-child .footer-copy { margin-top: 20px; }

@media (min-width: 560px) {
  .mk-figs { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
  .mk-fig-num { font-size: clamp(44px, 8vw, 72px); }
  .mk-seg { display: flex; }
  .mk-selectwrap { display: none; }
  .mk-chart-dots { display: block; }
  .mk-prows { display: none; }
  .mk-legend { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 32px; }
  .mk-doors { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mk-sheet { bottom: 0; }
}
@media (min-width: 560px) {
  .mk-demand-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; }
  .mk-ffields { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
}
@media (min-width: 900px) {
  .mk-flist { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 640px) {
  .mk-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 900px) {
  .mk-figs { grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 0; }
  .mk-hero-compact .mk-figs { grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 0; }
  .mk-figs-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mk-fig { padding: 28px 20px 32px; border-left: 1px solid var(--mk-hair); }
  .mk-fig:first-child { padding-left: 0; border-left: 0; }
  .mk-fig-trigger { padding-right: 20px; padding-left: 20px; }
  .mk-fig:first-child .mk-fig-trigger { padding-left: 0; }
  .mk-fig-num { font-size: clamp(30px, 3.1vw, 46px); }
  .mk-subnav { top: var(--mk-nav, 76px); }
  .mk-dl div { grid-template-columns: minmax(0, 1fr) auto; gap: 16px; }
}
@media (min-width: 1024px) {
  .mk-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1200px) {
  .mk-hero-in { padding: 0 var(--mk-gutter); }
}

@media (prefers-reduced-motion: reduce) {
  #page-markets *, #page-markets *::before, #page-markets *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .mk-js .mk-reveal { opacity: 1; transform: none; }
  .mk-js .mk-card:not(.mk-in) .mk-line { stroke-dashoffset: 0; }
}

/* Research interactions: raised snapshots, a focused comparison surface and a side drawer. */
.mk-overview .mk-hero-compact .mk-figs{gap:12px;margin-top:16px}
.mk-overview .mk-figs .mk-fig{padding:0;border:1px solid rgba(255,255,255,0.220);border-radius:14px;background:rgba(37,46,101,0.620);box-shadow:inset 0 1px rgba(255,255,255,0.051),0 10px 24px rgba(0,0,0,0.125);transition:transform 180ms ease,box-shadow 180ms ease,border-color 180ms ease}
.mk-overview .mk-figs .mk-fig-trigger,.mk-overview .mk-figs .mk-fig:first-child .mk-fig-trigger{padding:18px 16px;gap:7px;border-radius:14px}
.mk-overview .mk-figs .mk-fig:hover,.mk-overview .mk-figs .mk-fig:focus-within{transform:translateY(-3px);border-color:#c9a45c;box-shadow:inset 0 1px rgba(255,255,255,0.110),0 16px 32px rgba(0,0,0,0.220)}
.mk-overview .mk-figs .mk-fig-hint{margin-top:auto;padding-top:8px}
.mk-fig-trend{display:block;width:100%;margin-top:5px;height:36px;overflow:hidden}
.mk-fig-trend svg{width:100%;height:36px}
.mk-fig-trend .mk-line{stroke:#c9a45c;stroke-width:2}
.mk-fig-trend .mk-area{fill:#c9a45c;fill-opacity:.09}
.mk-fig-trend .mk-end{fill:#c9a45c;stroke:#111638}
.mk-fig-trend :is(.mk-rule,.mk-scrub,.mk-hit){display:none}
.mk-fig-history{font-size:10px;line-height:1.4;color:var(--on-dark-muted)}
.mk-overview .mk-peers{background:#111638;color:#fff;border-top:1px solid rgba(255,255,255,0.161)}
.mk-peers .mk-h2,.mk-peers .mk-peer-rank{color:#fff}
.mk-peers .mk-eyebrow-dark{color:#c9a45c}
.mk-peers :is(.mk-cap,.mk-compare-data small){color:var(--on-dark-muted)}
.mk-peers .mk-compare-toggle{border-color:rgba(255,255,255,0.259);background:#1a2155;border-radius:10px;padding:4px}
.mk-peers .mk-compare-toggle button{color:var(--on-dark-muted);border-radius:7px;background:transparent}
.mk-peers .mk-compare-toggle button[aria-pressed="true"]{background:#c9a45c;color:#111638}
.mk-peers .mk-switch{margin-bottom:20px}
.mk-peers .mk-chipbtn{border-color:rgba(255,255,255,0.251);border-radius:8px;background:#1a2155;color:var(--on-dark-muted);transition:background 160ms ease,border-color 160ms ease}
.mk-peers .mk-chipbtn:hover{background:#252e65;border-color:#c9a45c}
.mk-peers .mk-chipbtn[aria-checked="true"]{background:#c9a45c;color:#111638;border-color:#c9a45c}
.mk-peers .mk-select{background:#1a2155;color:#fff;border:1px solid #c9a45c;border-radius:8px}
.mk-peers .mk-select option{background:#1a2155;color:#fff}
.mk-chart-stage{position:relative;background:#1a2155;border:1px solid rgba(255,255,255,0.251);border-radius:18px;padding:24px;box-shadow:inset 0 1px rgba(255,255,255,0.047),0 18px 40px rgba(0,0,0,0.149)}
.mk-peers .mk-chart-dots{margin:8px 0 0}
.mk-peers .mk-dot{fill:#fff;fill-opacity:.75}
.mk-peers .mk-dot-home{fill:#c9a45c;stroke:#fff;fill-opacity:1;stroke-width:2}
.mk-peers .mk-leader{stroke:var(--on-dark-muted);stroke-opacity:.5}
.mk-peers .mk-dot-name{fill:#fff}
.mk-peers .mk-dot-val{fill:var(--on-dark-muted)}
.mk-peers .mk-pt:has(.mk-dot-home) .mk-dot-name{fill:#c9a45c}
.mk-peers .mk-pt[role="button"]:hover .mk-dot,.mk-peers .mk-pt[role="button"]:focus-visible .mk-dot{stroke:#c9a45c;stroke-width:3;fill-opacity:1}
.mk-peers .mk-pt{outline:none}
.mk-peers .mk-pt:focus-visible .mk-dot-name{text-decoration:underline}
.mk-peers .mk-city-row{color:#fff;padding:14px 2px}
.mk-peers .mk-prow{border-color:rgba(255,255,255,0.239)}
.mk-peers .mk-prow-val{color:#c9a45c}
.mk-peers .mk-city-hint,.mk-peers .mk-here{color:#c9a45c}
.mk-peers .mk-track{background:rgba(255,255,255,0.169)}
.mk-peers .mk-marker{background:#c9a45c}
.mk-peers .mk-ranks{border-color:rgba(255,255,255,0.259);color:var(--on-dark-muted)}
.mk-peers .mk-ranks summary{color:#c9a45c}
.mk-peers :focus-visible{outline-color:#c9a45c}
.mk-peers .mk-compare-scroll{background:#1a2155;border-color:rgba(255,255,255,0.259);border-radius:12px}
.mk-peers .mk-compare-data th,.mk-peers .mk-compare-data td{border-color:rgba(255,255,255,0.180)}
.mk-peers .mk-compare-data th,.mk-peers .mk-compare-data button{color:#fff}
.mk-peers .mk-compare-data tr>th:first-child{background:#1a2155}
.mk-peers .mk-compare-selected,.mk-peers .mk-compare-data .mk-compare-selected>th:first-child{background:#252e65}
.mk-peers .mk-compare-here{color:#c9a45c}
.mk-peer-preview{position:absolute;z-index:8;width:270px;max-width:calc(100% - 16px);padding:18px;border:1px solid rgba(255,255,255,0.533);border-radius:13px;background:rgba(17,22,56,0.961);color:#fff;box-shadow:0 12px 36px rgba(0,0,0,0.400);backdrop-filter:blur(14px);font-size:12px;line-height:1.5}
.mk-peer-preview>*{display:block}
.mk-peer-preview strong{font-size:17px}
.mk-preview-metric{color:var(--on-dark-muted);margin-top:4px}
.mk-preview-value{font-size:27px;font-weight:500;letter-spacing:-.03em;margin:3px 0 6px}
.mk-preview-gap{color:#c9a45c;margin-bottom:8px}
.mk-preview-source{color:var(--on-dark-muted);font-size:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mk-preview-period{color:var(--on-dark-muted);font-size:11px}
.mk-preview-hint{margin-top:12px;color:#c9a45c;font-size:11px}
#page-markets .mk-detail-dialog{--navy:#fff;--muted:var(--on-dark-muted);--ink:#fff;--cream:#1a2155;--white:#111638;--line:rgba(255,255,255,0.220);--gold-text:#c9a45c;inset:0 0 0 auto;margin:0;width:min(560px,calc(100% - 24px));max-width:560px;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;border-radius:18px 0 0 18px;padding:30px;background:#111638;color:#fff;border:1px solid rgba(255,255,255,0.471);box-shadow:-20px 0 70px rgba(0,0,0,0.333);overscroll-behavior:contain;animation:mk-drawer-in 240ms ease-out}
.mk-detail-dialog::backdrop{background:rgba(17,22,56,0.333);backdrop-filter:none}
.mk-detail-dialog .mk-detail-close{position:sticky;top:0;z-index:3;background:rgba(17,22,56,0.933);border:1px solid rgba(255,255,255,0.251);border-radius:8px;margin:-8px -8px 12px 12px;backdrop-filter:blur(12px)}
.mk-detail-dialog .mk-detail-value{font-size:44px}
.mk-detail-dialog .mk-detail-ranges button{background:#1a2155;color:#fff;border-color:rgba(255,255,255,0.361)}
.mk-detail-dialog .mk-detail-ranges button[aria-pressed="true"]{background:#c9a45c;color:#111638;border-color:#c9a45c}
.mk-detail-dialog .mk-detail-slider input{accent-color:#c9a45c}
.mk-detail-dialog .mk-city-selected{color:#c9a45c}
.mk-peer-history{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.mk-peer-history h3{font-size:15px;color:#fff;margin:0 0 12px}
.mk-peer-history-chart svg{display:block;width:100%;height:auto}
.mk-peer-history-chart .mk-line{stroke:#c9a45c}
.mk-peer-history-chart .mk-hit{pointer-events:none}
@keyframes mk-drawer-in{from{transform:translateX(32px);opacity:.3}to{transform:translateX(0);opacity:1}}
@media(max-width:639px){.mk-overview .mk-hero-compact .mk-figs{gap:10px}.mk-overview .mk-figs .mk-fig-trigger,.mk-overview .mk-figs .mk-fig:first-child .mk-fig-trigger{padding:16px 12px}.mk-chart-stage{padding:12px 16px;border-radius:14px}#page-markets .mk-detail-dialog{inset:auto 0 0;width:100%;max-width:none;height:auto;max-height:94vh;max-height:94dvh;border-radius:20px 20px 0 0;padding:24px 20px calc(24px + env(safe-area-inset-bottom));animation:mk-drawer-up 220ms ease-out}.mk-detail-dialog .mk-detail-value{font-size:38px}.mk-peer-preview{display:none}.mk-overview .mk-figs .mk-fig-num{font-size:clamp(24px,6.8vw,34px)}}
@keyframes mk-drawer-up{from{transform:translateY(24px);opacity:.3}to{transform:translateY(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.mk-overview .mk-figs .mk-fig{transition:none!important;transform:none!important}#page-markets .mk-detail-dialog{animation:none}.mk-peers .mk-chipbtn{transition:none}}

.mk-dot-hit{fill:transparent}

.mk-peer-focus-control{display:flex;align-items:center;gap:12px;margin:0 0 10px;font-size:13px;color:var(--on-dark-muted)}
.mk-peer-focus-control select{min-height:44px;max-width:260px;flex:1;padding:8px 14px;border:1px solid rgba(255,255,255,.35);border-radius:8px;background:var(--navy);color:#fff;font:500 16px var(--body)}
.mk-peer-focus-control option{background:var(--navy);color:#fff}
.mk-peer-focus-text{max-width:80ch;margin:0 0 20px;font-size:13px;line-height:1.7;color:var(--on-dark-muted)}
.mk-peer-muted{opacity:.64}
.mk-peer-muted:hover,.mk-peer-muted:focus-visible{opacity:1}
.mk-peers .mk-peer-focus .mk-dot{stroke:var(--gold);stroke-width:3;fill:#fff;fill-opacity:1}
.mk-pt,.mk-city-row{transition:opacity 180ms ease}
@media(prefers-reduced-motion:reduce){.mk-pt,.mk-city-row{transition:none}}

.mk-peers .mk-compare-data caption{color:var(--on-dark-muted)}
.mk-peers .mk-prow-home .mk-prow-name{color:var(--gold)}

.mk-peers .mk-prow-name{color:#fff}
.mk-peers .mk-prow-home .mk-prow-name{color:var(--gold)}

/* Regional explorer: the approved light map-and-ranking comparison. */
#page-markets .mk-regional{--mk-stone:#f5f2ea;--mk-slate:#596574;--mk-border:#ddd9d0;background:var(--mk-stone);color:#111638;padding:40px 0}
.mk-regional .mk-wrap{max-width:1440px}
.mk-regional .mk-h2{color:#111638;margin-bottom:10px;font-size:clamp(30px,3.4vw,46px)}
.mk-regional .mk-eyebrow-dark{color:#795c25}
.mk-regional .mk-region-lead{color:var(--mk-slate);font-size:18px;margin:0 0 24px}
.mk-region-controls{display:flex;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:14px}
.mk-region-control{display:flex;align-items:center;gap:12px;font-size:14px;color:#111638;min-width:0}
.mk-region-controls select{min-height:48px;max-width:100%;min-width:220px;padding:10px 36px 10px 16px;background:#fff;color:#111638;font:500 16px var(--body);border:1px solid var(--mk-border);border-radius:7px;cursor:pointer}
.mk-region-controls select option{background:#fff;color:#111638}
.mk-region-controls .mk-compare-toggle{margin:0 0 0 auto;background:#fff;border:1px solid var(--mk-border);padding:3px;display:flex;border-radius:7px}
.mk-region-controls .mk-compare-toggle button{min-height:42px;color:#111638;padding:8px 18px}
.mk-region-controls .mk-compare-toggle button[aria-pressed="true"]{background:#795c25;color:#fff}
.mk-regional .mk-peer-focus-text{font-size:12px;color:var(--mk-slate);margin:0 0 16px}
.mk-regional .mk-region-workspace{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);padding:0;background:#fff;border:1px solid var(--mk-border);border-radius:14px;box-shadow:0 8px 24px rgba(17,22,56,.06);overflow:visible}
.mk-region-map-panel{position:relative;min-width:0;padding:12px;display:flex;flex-direction:column}
#page-markets .mk-region-map{height:570px;width:100%;background:var(--mk-stone);border-radius:7px;isolation:isolate;z-index:0;font-family:var(--body)}
#page-markets .mk-region-map img{max-width:none}
.mk-region-chart-panel{padding:26px 24px 20px;border-left:1px solid var(--mk-border);min-width:0}
.mk-region-chart-panel h3{font:400 clamp(23px,2.4vw,30px)/1.2 var(--display);letter-spacing:-.03em;color:#111638;margin:0 0 4px}
.mk-region-chart-panel #mk-region-chart-heading>p{font-size:12px;color:var(--mk-slate);margin:0 0 20px}
.mk-map-status{font-size:10px;color:var(--mk-slate);margin:8px 120px 0 0;line-height:1.4}
.mk-map-reset{position:absolute;right:14px;bottom:10px;min-height:32px;border:1px solid var(--mk-border);border-radius:4px;font:500 11px var(--body);background:#fff;color:#111638;padding:6px 8px;cursor:pointer}
.mk-rank-bars{list-style:none;padding:0;margin:0;max-height:520px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}
.mk-rank-row{padding:0;margin:0;position:relative;border-radius:4px}
.mk-rank-row button{display:grid;grid-template-columns:95px minmax(0,1fr) 90px;gap:10px;align-items:center;width:100%;min-height:53px;padding:7px 4px;background:transparent;border:0;color:#111638;font:400 13px var(--body);text-align:left;cursor:pointer;border-radius:4px}
.mk-rank-name{overflow-wrap:anywhere}
.mk-rank-track{position:relative;height:25px;background:rgba(17,22,56,.035);border-radius:1px;display:block}
.mk-rank-bar{position:absolute;top:0;height:100%;background:var(--mk-slate);opacity:.68;transition:width 420ms ease,left 420ms ease}
.mk-rank-value{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}
.mk-rank-home{background:rgba(201,164,92,.12)}
.mk-rank-home .mk-rank-name,.mk-rank-home .mk-rank-value{font-weight:700;color:#795c25}
.mk-rank-home .mk-rank-bar{background:#c9a45c;opacity:1}
.mk-rank-row:hover,.mk-rank-row:focus-within,.mk-rank-row.mk-region-hover{background:rgba(201,164,92,.16)}
.mk-rank-row.mk-peer-focus{box-shadow:inset 3px 0 #795c25}
.mk-rank-row.mk-peer-muted{opacity:.7}
.mk-rank-axis{display:flex;justify-content:space-between;margin:10px 100px 0 109px;color:var(--mk-slate);font-size:9px;gap:4px;white-space:nowrap}
.mk-region-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;border-top:1px solid var(--mk-border);margin-top:22px;padding-top:22px;align-items:center}
.mk-region-summary .mk-eyebrow{grid-column:1/-1;font-size:10px;letter-spacing:.14em;margin:0}
.mk-region-summary>strong{font:400 34px/1.2 var(--display);letter-spacing:-.035em;color:#111638}
.mk-region-summary>p{grid-column:1/-1;font-size:12px;line-height:1.5;color:var(--mk-slate);margin:0}
.mk-region-explore{grid-column:2;grid-row:2;display:flex;align-items:center;gap:8px;min-height:44px;border:0;border-radius:6px;padding:10px 14px;background:#795c25;color:#fff;font:500 12px var(--body);cursor:pointer}
.mk-regional .mk-cap,.mk-regional .mk-ranks{color:var(--mk-slate);font-size:12px}
.mk-regional #mk-peer-cap{margin:14px 0 0;max-width:none}
.mk-regional .mk-ranks{border-color:var(--mk-border);margin-top:14px}
.mk-regional .mk-ranks summary{color:#111638}
.mk-regional .mk-compare-scroll{background:#fff;border-color:var(--mk-border)}
.mk-regional .mk-compare-data th,.mk-regional .mk-compare-data td{border-color:var(--mk-border)}
.mk-regional .mk-compare-data th,.mk-regional .mk-compare-data button{color:#111638}
.mk-regional .mk-compare-data small,.mk-regional .mk-compare-data caption{color:var(--mk-slate)}
.mk-regional .mk-compare-data tr>th:first-child{background:#fff}
.mk-regional .mk-compare-selected,.mk-regional .mk-compare-data .mk-compare-selected>th:first-child{background:var(--mk-stone)}
.mk-regional .mk-compare-here{color:#795c25}
.mk-regional .mk-region-map .leaflet-control-attribution{background:#fff;color:#111638;font-size:9px}
.mk-regional .mk-region-map .leaflet-control-attribution a{color:#111638;text-decoration:underline}
.mk-regional .mk-region-map .leaflet-control-zoom a{color:#111638;min-width:36px;min-height:36px;line-height:36px}
.mk-regional .mk-region-map .leaflet-tooltip{box-shadow:0 1px 4px rgba(17,22,56,.12);background:rgba(255,255,255,.94);border:1px solid var(--mk-border);border-radius:4px;padding:3px 6px;color:#111638;font:11px/1.3 var(--body)}
.mk-regional .mk-region-map .leaflet-interactive:focus{outline:3px solid #795c25}
@media(max-width:1050px){.mk-region-controls{gap:12px}.mk-region-controls .mk-compare-toggle{margin-left:0}.mk-region-workspace{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.mk-region-chart-panel{padding:22px 16px}.mk-rank-row button{grid-template-columns:80px minmax(0,1fr) 80px;gap:7px}.mk-rank-axis{margin-left:91px;margin-right:88px}.mk-region-summary{display:block}.mk-region-explore{margin-top:12px}.mk-region-summary>p{margin-top:8px}}
@media(max-width:760px){#page-markets .mk-regional{padding:30px 0}.mk-region-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mk-region-control{display:grid;gap:6px;font-size:12px}.mk-region-controls select{width:100%;min-width:0;font-size:16px;padding-left:10px}.mk-region-controls .mk-compare-toggle{grid-column:1/-1;justify-self:start}.mk-regional .mk-region-workspace{grid-template-columns:1fr}.mk-region-map-panel{padding:8px}#page-markets .mk-region-map{height:340px}.mk-region-chart-panel{border-left:0;border-top:1px solid var(--mk-border);padding:24px 16px}.mk-rank-row button{grid-template-columns:80px minmax(0,1fr) 82px;min-height:53px}.mk-region-summary>strong{font-size:32px}.mk-region-summary{display:grid}.mk-region-explore{margin:0}.mk-region-summary>p{margin:0}.mk-map-status{font-size:10px}.mk-rank-axis{font-size:9px}.mk-region-lead{max-width:32ch}}
@media(prefers-reduced-motion:reduce){.mk-rank-bar{transition:none}}

/* Match compact native selectors to the light surface, including the legacy metric id rule. */
.mk-regional #mk-metric{background:#fff;color:#111638;border-color:var(--mk-border);display:block;width:220px}
@media(max-width:760px){.mk-regional #mk-metric{width:100%}}

.mk-rank-zero{position:absolute;top:-4px;bottom:-4px;border-left:1px solid var(--mk-border);z-index:1}

@media(max-width:760px){.mk-region-chart-panel{order:-1;border-top:0;border-bottom:1px solid var(--mk-border)}.mk-region-controls{gap:10px}.mk-regional .mk-region-lead{font-size:16px;margin-bottom:18px}}

.mk-regional #mk-peer-cap{color:var(--mk-slate)}
.mk-regional .mk-wrap{padding-inline:clamp(20px,2.2vw,32px)}
.mk-rank-row button{font-size:14px}
.mk-rank-value{font-size:13px}
.mk-rank-axis{font-size:11px}
.mk-regional .mk-region-map .leaflet-tooltip{font-size:12px}
@media(max-width:760px){.mk-rank-row button{font-size:13px}.mk-rank-value{font-size:12px}.mk-rank-axis{font-size:9px}.mk-regional .mk-region-map .leaflet-tooltip{font-size:11px}}
/* Rates: published readings flow into a comparison and an adjustable example. */
.mk-rate-monitor { background:#f5f2ea; color:#111638; padding-block:28px; }
.mk-rate-monitor .mk-wrap { max-width:1440px; padding-inline:clamp(20px,2.2vw,32px); }
.mk-rate-monitor .mk-h2 { color:#111638; margin-bottom:8px; font-size:clamp(30px,3.4vw,48px); }
.mk-rate-monitor .mk-lead { color:#596574; margin-bottom:28px; max-width:none; }
.mk-rate-readings { display:grid; grid-template-columns:3fr 2fr; gap:22px; background:#fff; padding:18px; border-radius:16px; }
.mk-rate-group { min-width:0; }
.mk-rate-group-weekly { border-left:1px solid #ddd9d0; padding-left:22px; }
.mk-rate-group-heading { margin-bottom:14px; }
.mk-rate-group-heading h3 { color:#111638; font-size:16px; line-height:1.3; margin:0 0 4px; font-weight:700; }
.mk-rate-group-heading p { color:#596574; font-size:12px; margin:0; }
.mk-rate-monitor .mk-rate-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.mk-rate-group-weekly .mk-rate-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mk-rate-monitor .mk-rate { display:block; padding:0; border:1px solid #ddd9d0; border-radius:10px; min-width:0; background:#fff; transition:box-shadow .2s,transform .2s; }
.mk-rate-monitor .mk-rate[data-rate="sofr_percent"], .mk-rate-monitor .mk-rate[data-rate="mortgage_rate_30yr"] { border-color:#c9a45c; box-shadow:inset 0 0 0 1px #c9a45c; }
.mk-rate-monitor .mk-rate:hover { transform:translateY(-3px); box-shadow:0 6px 18px rgb(17 22 56 / .08); }
.mk-rate-trigger { font:inherit; color:inherit; text-align:left; cursor:pointer; border:0; background:transparent; padding:16px; display:flex; flex-direction:column; align-items:flex-start; gap:8px; width:100%; min-height:224px; height:100%; border-radius:10px; }
.mk-rate-trigger:focus-visible, .mk-rate-monitor a:focus-visible, .mk-rate-margin input:focus-visible { outline:3px solid #795c25; outline-offset:4px; }
.mk-rate-cadence { display:inline-block; font-size:11px; font-weight:600; line-height:1.4; letter-spacing:.06em; text-transform:uppercase; border-radius:5px; padding:4px 9px; white-space:nowrap; }
.mk-rate-daily { background:rgb(100 121 107 / .14); color:#111638; }
.mk-rate-weekly { background:#f5f2ea; color:#111638; }
.mk-rate-monitor .mk-rate-label { color:#111638; font-size:16px; font-weight:600; }
.mk-rate-monitor .mk-rate-val { color:#111638; font-size:clamp(30px,3vw,44px); align-self:flex-start; white-space:nowrap; line-height:1.1; letter-spacing:-.04em; }
.mk-rate-monitor .mk-rate-meta { color:#596574; font-size:12px; }
.mk-rate-source { font-size:11px; line-height:1.45; color:#596574; }
.mk-rate-action { display:flex; gap:6px; align-items:center; color:#795c25; font-size:13px; border-top:1px solid #ddd9d0; padding-top:10px; width:100%; margin-top:auto; }
.mk-rate-flow { color:#795c25; display:flex; align-items:center; gap:16px; justify-content:center; font-size:14px; font-weight:600; margin:24px 0; }
.mk-rate-flow::before, .mk-rate-flow::after { content:""; width:20%; height:1px; background:#c9a45c; }
.mk-rate-explanation { display:grid; grid-template-columns:3fr 2fr; gap:18px; }
.mk-rate-comparison, .mk-rate-factors, .mk-rate-example { min-width:0; padding:20px; background:#fff; border-radius:16px; }
.mk-rate-monitor h3 { color:#111638; }
.mk-rate-comparison h3, .mk-rate-factors h3, .mk-rate-example h3 { font-family:var(--display); font-size:clamp(22px,2.2vw,30px); line-height:1.15; letter-spacing:-.025em; margin:0 0 8px; }
.mk-rate-caption { font-size:13px; line-height:1.55; color:#596574; margin:0; }
.mk-rate-equation { display:grid; grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr); gap:10px; align-items:center; margin:20px 0 14px; }
.mk-rate-term { display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:7px; border-radius:9px; padding:16px 8px; min-width:0; min-height:142px; color:#111638; }
.mk-rate-term-gold { background:rgb(201 164 92 / .13); }
.mk-rate-term-sage { background:rgb(100 121 107 / .1); }
.mk-rate-term strong, .mk-rate-result output { font-family:var(--display); font-size:clamp(28px,3vw,44px); line-height:1.1; font-weight:500; font-variant-numeric:tabular-nums; white-space:nowrap; letter-spacing:-.04em; }
.mk-rate-term span, .mk-rate-term label { font-size:13px; line-height:1.3; }
.mk-rate-term small { font-size:11px; line-height:1.4; color:#596574; }
.mk-rate-operator { font-size:28px; color:#596574; text-align:center; }
.mk-rate-gap strong, .mk-rate-result output { color:#795c25; }
.mk-rate-context-note { padding:14px; background:#f5f2ea; color:#596574; font-size:12px; line-height:1.5; text-align:center; border-radius:8px; margin:0; }
.mk-rate-context-note strong { display:block; font-weight:600; color:#111638; }
.mk-rate-factors ol { list-style:none; counter-reset:rate-factors; margin:14px 0 0; padding:0; display:grid; gap:8px; }
.mk-rate-factors li { counter-increment:rate-factors; display:grid; grid-template-columns:28px 1fr; column-gap:10px; padding:8px 10px; background:#f7f7f3; border-radius:8px; }
.mk-rate-factors li::before { content:counter(rate-factors); grid-row:span 2; color:#64796b; font-size:22px; }
.mk-rate-factors strong { font-size:13px; line-height:1.4; font-weight:600; }
.mk-rate-factors li span { font-size:12px; color:#596574; line-height:1.5; }
.mk-rate-example { margin-top:18px; }
.mk-rate-example-heading { display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.mk-rate-example-heading h3 { margin:0; }
.mk-rate-quote { margin-top:18px; }
.mk-rate-quote .mk-rate-term { min-height:112px; }
.mk-rate-margin { border:1px solid #ddd9d0; }
.mk-rate-margin-input { display:flex; align-items:center; justify-content:center; width:100%; }
.mk-rate-margin input { width:5ch; min-height:44px; font-family:var(--display); font-size:clamp(28px,3vw,44px); letter-spacing:-.04em; font-weight:500; text-align:center; border:0; border-bottom:1px solid #64796b; border-radius:0; color:#111638; background:transparent; padding:0; }
.mk-rate-margin-input span { font-size:28px; }
.mk-rate-margin input[aria-invalid="true"] { outline:2px solid #795c25; }
.mk-rate-example > .mk-rate-caption { border-top:1px solid #ddd9d0; padding-top:12px; }
.mk-rate-footer { display:flex; align-items:baseline; flex-wrap:wrap; gap:10px 24px; padding:16px 4px 0; color:#596574; font-size:11px; }
.mk-rate-footer p { margin:0; }
.mk-rate-footer a { color:#795c25; min-height:44px; display:inline-flex; align-items:center; gap:6px; margin-left:auto; }
.mk-rate-unavailable { font-size:14px; padding:20px 0; color:#596574; }
@media (max-width:1050px) {
  .mk-rate-readings { grid-template-columns:1fr; }
  .mk-rate-group-weekly { border-left:0; border-top:1px solid #ddd9d0; padding:20px 0 0; }
  .mk-rate-explanation { grid-template-columns:1fr; }
  .mk-rate-trigger { min-height:240px; }
}
@media (max-width:600px) {
  .mk-rate-readings { padding:16px; gap:16px; }
  .mk-rate-monitor .mk-rate-list { grid-template-columns:1fr; }
  .mk-rate-trigger { display:grid; grid-template-columns:1fr auto; min-height:0; gap:8px 12px; padding:14px; }
  .mk-rate-monitor .mk-rate-label { grid-column:1; }
  .mk-rate-monitor .mk-rate-val { grid-column:2; grid-row:1 / span 2; font-size:34px; align-self:center; }
  .mk-rate-monitor .mk-rate-meta, .mk-rate-source, .mk-rate-action { grid-column:1 / -1; }
  .mk-rate-cadence { justify-self:start; }
  .mk-rate-comparison, .mk-rate-factors, .mk-rate-example { padding:18px; }
  .mk-rate-equation { gap:5px; grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr) 12px minmax(0,1fr); }
  .mk-rate-term { min-height:130px; padding:10px 4px; }
  .mk-rate-term strong, .mk-rate-result output { font-size:24px; }
  .mk-rate-term span, .mk-rate-term label { font-size:11px; }
  .mk-rate-term small { font-size:10px; }
  .mk-rate-operator { font-size:20px; }
  .mk-rate-quote { grid-template-columns:1fr; gap:6px; }
  .mk-rate-quote .mk-rate-term { min-height:112px; padding:14px; }
  .mk-rate-quote .mk-rate-term span, .mk-rate-quote .mk-rate-term label { font-size:13px; }
  .mk-rate-quote .mk-rate-term strong, .mk-rate-quote output { font-size:36px; }
  .mk-rate-footer { display:block; }
  .mk-rate-footer p { margin:8px 0; }
}
@media (prefers-reduced-motion:reduce) {
  .mk-rate-monitor .mk-rate { transition:none; }
  .mk-rate-monitor .mk-rate:hover { transform:none; }
}
