/* Best Cycling Climbs — guide pages (tables + guide cards). Uses the palette from styles.css. */
.table-wrap { overflow-x: auto; margin: 1rem 0 1.5rem; border: 1px solid var(--line); border-radius: 12px; background: var(--bg-card); }
.data-table { width: 100%; border-collapse: collapse; font-size: .95rem; }
.data-table th, .data-table td { padding: .6rem .85rem; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
.data-table tr:last-child th, .data-table tr:last-child td { border-bottom: 0; }
.data-table thead th { color: var(--muted); font-size: .76rem; text-transform: uppercase; letter-spacing: .06em; background: rgba(12,21,36,.55); }
.data-table td { color: var(--text); }
.data-table td:first-child { color: var(--accent); font-weight: 800; }
.data-table.kv th[scope="row"] { color: var(--muted); font-weight: 600; width: 38%; }
.data-table.kv td:first-child { color: var(--text); font-weight: 700; }
.data-table a { color: var(--accent-2); }
.fact-board.guide-facts { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.fact-board.guide-facts .fact dd { font-size: 1rem; line-height: 1.35; }
.prose h3 { margin-top: 1.6rem; font-size: 1.15rem; }
.guide-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); max-width: 54rem; }
.guide-card .thumb { aspect-ratio: auto; min-height: 100%; }
@media (max-width: 640px) { .guide-card { grid-template-columns: 1fr; } .guide-card .thumb { aspect-ratio: 16/11; } }
.guide-callout a { font-weight: 700; }
@media (max-width: 520px) { .data-table { font-size: .88rem; } .data-table th, .data-table td { padding: .5rem .6rem; } }
