/* Grandes Provas — layout of cards, gallery and feature; pieces from components.css. */

/* ── prova cards ─────────────────────────────────────────────────────── */
.gp-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-24); align-items: stretch; }
.gp-card { display: flex; flex-direction: column; }
.gp-card--feature { border-top: 3px solid var(--color-brand); }
.gp-card .res__top { align-items: flex-start; }
.gp-card .res__top > div { flex: 1 1 260px; min-width: 0; }
.gp-card__dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; }
.gp-card__dl div { padding: 16px 24px; border-bottom: 1px solid var(--line-light); min-width: 0; }
.gp-card__dl div:not(:nth-child(3n + 1)) { border-left: 1px solid var(--line-light); }
.gp-card__dl dt { font: 500 var(--fs-micro)/1.2 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--color-muted-light); }
.gp-card__dl dd { margin: 6px 0 0; font-weight: 600; overflow-wrap: anywhere; }
.gp-card__res { background: var(--color-surface-light); }
.gp-card__win { grid-column: span 2; }
.gp-card__win + div { border-left: 1px solid var(--line-light); }
.gp-card__win .horse { font-size: 1.375rem; }
.gp-card__time { font-size: 1.375rem; font-weight: 500; }
.gp-card__res div:nth-child(3) { border-left: 0; }
.gp-card__res div:nth-child(4), .gp-card__res div:nth-child(5) { border-left: 1px solid var(--line-light); }
.gp-card__res div:nth-child(6) { grid-column: 1 / -1; border-left: 0; }
.gp-card__note {
  display: flex; gap: 8px; align-items: flex-start; margin-top: auto; padding: 16px 24px;
  font-size: var(--fs-small); color: var(--color-muted-light);
}
.gp-card__note .icon { width: 18px; height: 18px; margin-top: 2px; color: var(--color-data-light); }

/* ── histórico: text + gallery ───────────────────────────────────────── */
.gp-hist { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); gap: var(--space-32) clamp(32px, 5vw, 72px); align-items: start; }
.gp-hist .prose h3 { margin-top: 0; font-family: var(--font-display); font-stretch: 80%; font-weight: 800; font-size: var(--fs-h3); text-transform: uppercase; line-height: 1.05; }
.gp-hist .prose p { color: var(--color-muted-light); }
.gp-year { font-weight: 600; font-size: 1.125rem; }
.gp-tbl .tag { white-space: nowrap; }

/* ── feature: GP Princesa do Sul ─────────────────────────────────────── */
.gp-feat { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 80px); align-items: center; }
.gp-feat__media .ph { border: 1px solid var(--line-dark-strong); }
.gp-feat__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 28px 0; border-top: 1px solid var(--line-dark-strong); }
.gp-feat__facts div { padding: 16px 20px 16px 0; border-bottom: 1px solid var(--line-dark); min-width: 0; }
.gp-feat__facts div:nth-child(even) { padding-left: 20px; border-left: 1px solid var(--line-dark); }
.gp-feat__facts dt { font: 500 var(--fs-micro)/1.2 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; color: var(--color-muted); margin-bottom: 8px; }
.gp-feat__facts dd { margin: 0; font-weight: 700; overflow-wrap: anywhere; }
.gp-feat__facts dd.mono { font-size: 1.5rem; font-weight: 500; }
.gp-feat__facts dd.dim { font: 400 var(--fs-small) var(--font-mono); margin-top: 4px; }

/* ── faq ─────────────────────────────────────────────────────────────── */
.gp-faq { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.8fr); gap: var(--space-24) clamp(32px, 6vw, 96px); align-items: start; }

@media (max-width: 1100px) {
  .gp-hist, .gp-feat, .gp-faq { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 860px) {
  .gp-cards { grid-template-columns: minmax(0, 1fr); }
  .gp-tbl tbody tr { grid-template-columns: 64px minmax(0, 1fr) minmax(0, 1fr); }
  .gp-tbl td[data-label="Marca"] { grid-column: 2 / -1; }
  .gp-tbl td[data-label="Marca"]::before { display: none; }
}
@media (max-width: 600px) {
  .gp-card__dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gp-card__dl div, .gp-card__dl div:not(:nth-child(3n + 1)) { padding: 14px 18px; border-left: 0; }
  .gp-card__dl div:nth-child(even) { border-left: 1px solid var(--line-light); }
  .gp-card__res div:nth-child(n) { border-left: 0; grid-column: auto; }
  .gp-card__res .gp-card__win, .gp-card__res div:nth-child(6) { grid-column: 1 / -1; }
  .gp-card__res div:nth-child(3), .gp-card__res div:nth-child(5) { border-left: 1px solid var(--line-light); }
  .gp-card__note { padding: 14px 18px; }
  .gp-feat__facts { grid-template-columns: minmax(0, 1fr); }
  .gp-feat__facts div:nth-child(even) { padding-left: 0; border-left: 0; }
  .gp-tbl .tag { white-space: normal; }
}

/* three text tabs must fit 390 without hiding «Histórico» behind the scroll */
@media (max-width: 600px) {
  .gp-tabs.tabs--text .tab { padding-right: 0; margin-right: 20px; font-size: 1rem; }
  .gp-tabs.tabs--text .tab:last-child { margin-right: 0; }
}
@media (max-width: 389px) {
  .gp-tabs.tabs--text .tab { margin-right: 14px; }
  .gp-tabs .count { display: none; }
}

/* the component dims .count to .7 — on the light section that drops the inactive tab's count below 4.5:1 */
.gp-tabs.tabs--text .tab .count { opacity: 1; }
