/* Market opportunity: the original Berlin funnel, one detached box per market,
   with the combined pool in its own box below.

   One grid so the four stage rows align across every market while each market
   still reads as its own box: .mkt-card is a background element spanning all
   rows of its column, and the values sit on top of it.

   Square corners throughout, per the brand token --radius: 0. */

[data-slide="07-market"] .mkt-grid {
  display: grid;
  grid-template-columns: minmax(210px, 1.9fr) repeat(var(--n, 5), 1fr);
  gap: 0 0.4rem;
  align-items: center;
}

/* The box. Brand orange stepped down across the row via --tint, set per card,
   so the fill reads as magnitude: Berlin is both the home market and the
   largest pool. */
[data-slide="07-market"] .mkt-card {
  grid-row: 1 / -1;
  background: rgb(var(--accent-rgb) / var(--tint, 0.12));
  border-top: 2px solid rgb(var(--accent-rgb) / calc(var(--tint, 0.12) * 4));
  border-radius: var(--radius);
}

[data-slide="07-market"] .mkt-head {
  z-index: 1; text-align: center; padding: 0.55rem 0.5rem 0.5rem;
  font-size: 0.72rem; font-weight: 500; letter-spacing: 0.06em;
  text-transform: uppercase; color: var(--fg);
}
[data-slide="07-market"] .mkt-head sup { color: var(--flag); }

/* Labels carry the explanation: this is the slide's whole argument for how the
   pool is reached, so it gets room rather than a footnote. */
[data-slide="07-market"] .mkt-label {
  grid-column: 1; padding: 0.42rem 0.9rem 0.42rem 0;
  font-size: 0.84rem; color: var(--fg);
}
[data-slide="07-market"] .mkt-label small {
  display: block; margin-top: 0.2rem;
  font-size: 0.68rem; line-height: 1.35; color: var(--fg-muted);
}

[data-slide="07-market"] .mkt-val {
  z-index: 1; text-align: center; padding: 0.42rem 0.4rem;
  font-family: var(--font-mono); font-variant-numeric: tabular-nums;
  font-size: 0.8rem; color: var(--fg-muted); white-space: nowrap;
}

/* The last row is what every row above exists to produce. */
[data-slide="07-market"] .mkt-label.answer { color: var(--accent); font-weight: 500; }
[data-slide="07-market"] .mkt-val.answer { color: var(--accent); font-weight: 500; font-size: 0.95rem; }

/* The total: the one company-level number anyone claims, so it gets the full
   brand gradient rather than another tint step. */
[data-slide="07-market"] .pool-total {
  display: flex; align-items: center; justify-content: space-between;
  gap: 1rem; margin-top: 0.7rem; padding: 0.7rem 1.1rem;
  background: var(--accent-grad); color: var(--on-accent);
  border-radius: var(--radius);
}
[data-slide="07-market"] .pool-label { font-size: 0.95rem; font-weight: 500; }
[data-slide="07-market"] .pool-label small {
  display: block; margin-top: 0.1rem; font-size: 0.72rem;
  font-weight: 400; opacity: 0.75;
}
/* Footnote runs as two lines: the method note, then the citations on their own.
   Run together they read as an aside; on their own line they read as a
   citation, which is what an investor scans the foot of a slide for. */
[data-slide="07-market"] .note-line { display: block; }
[data-slide="07-market"] .note-line.sources { margin-top: 0.25rem; }

[data-slide="07-market"] .pool-value {
  font-family: var(--font-mono); font-variant-numeric: tabular-nums;
  font-size: 1.5rem; font-weight: 500; white-space: nowrap;
}
