/* 24MX ALESTREM: the red sampled from the supplied race logo. */
.race-theme{--ink:#151515;--panel:#202020;--paper:#f5f5f2;--muted:#b3b3b3;--accent:#e3000e;--accent-light:#ff6570}
.race-theme .site-header{background:#151515f5}
.race-theme .brand img{width:164px;height:auto;object-fit:contain}
.race-theme .footer-brand img{width:220px;height:auto;object-fit:contain}
.race-theme .button,.race-theme .skip{color:#fff}
.race-theme .button:hover{background:#bf000c;border-color:#bf000c}
.race-theme .main-nav a:hover,.race-theme .main-nav a[aria-current=page],.race-theme .footer-title{color:var(--accent-light)}
.race-theme .text-link:hover{color:var(--accent-light)}
.race-theme .archive-section .text-link:hover,.race-theme .archive-link:hover,.race-theme .source-links a:hover{color:#bf000c}
.race-theme .final-cta{color:#fff}
.race-theme .final-cta .eyebrow:before{background:#fff}
.race-theme .final-cta .button:hover{background:#333;border-color:#333}
.race-theme .hero{background:#151515}
.race-theme .hero:after{background:linear-gradient(90deg,#151515 6%,#151515ed 29%,#15151585 48%,#15151508 70%),linear-gradient(0deg,#15151590,transparent 45%)}
.race-theme .history-intro p,.race-theme .record-stats small{color:#bdbdbd}
.race-theme .history-intro h2{color:#fff}
.race-theme .mobile-booking{background:#151515f7}

/* Transparent marks share a visible height. The flag and motorcycle brand
   stay together, with the brand immediately to the right of the flag. */
.race-theme .rider-identity{--bike-logo-height:24px;--rider-meta-gap:12px;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:22px;row-gap:12px}
.rider-identity .rider-photo{grid-column:1;grid-row:1/3}
.rider-details{grid-column:2;grid-row:1;align-self:end}
.rider-meta{grid-column:2;grid-row:2;align-self:start;display:flex;align-items:center;gap:var(--rider-meta-gap);width:max-content}
.rider-meta .nation{margin:0;line-height:0;flex:0 0 28px}
.rider-flag{display:block;width:28px;height:21px;object-fit:contain;box-shadow:0 0 0 1px #15151520;border-radius:1px}
.rider-bike{display:block;flex:none;width:max-content;height:var(--bike-logo-height);background:transparent}
.rider-bike img{display:block;width:auto;height:var(--bike-logo-height);max-width:none;object-fit:contain;filter:brightness(0)}
.rider-bike--sherco img{filter:none}
@media(max-width:1100px){
  .race-theme .rider-identity{min-width:calc(var(--bike-logo-height) * 10.32057 + 28px + var(--rider-meta-gap))}
  .rider-identity .rider-photo{grid-row:1}
  .rider-details{align-self:center}
  .rider-meta{grid-column:1/-1}
}
@media(max-width:850px){.race-theme .rider-identity{--bike-logo-height:20px;column-gap:16px}}
@media(max-width:650px){
  .race-theme .rider-identity{--rider-meta-gap:10px;column-gap:12px;row-gap:16px}
}
@media(max-width:360px){.race-theme .rider-identity{--bike-logo-height:18px}}

/* Standalone result pages keep their searchable, printable tables. */
.archive-page{background:var(--paper);color:#1d1d1b}
.archive-navigation{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:26px}
.archive-brand{display:block;flex:0 1 240px}
.archive-brand img{display:block;width:100%;height:auto;object-fit:contain}
.archive-navigation .back{font-size:14px;font-weight:700;text-underline-offset:5px}
.archive-page header{border-color:var(--accent)}
.archive-page header .eyebrow{color:#bf000c}
.archive-page a:hover{color:#bf000c}
.archive-page a:focus-visible,.archive-page input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.archive-page th{background:#1d1d1b}
.archive-page tbody tr:nth-child(even){background:#f4f4f4}
.archive-page th,.archive-page td{border-bottom-color:#e2e2e2}
.archive-page .table-wrap{border-color:#d0d0d0}
.archive-page input{background:#fff;color:#1d1d1b;border-color:#aaa;border-radius:0}
.archive-page .meta,.archive-page .notice,.archive-page .count{color:#555}
.archive-page footer{border-color:#bbb}
.archive-page .archive-footer-brand{display:block;width:220px;max-width:100%;margin-bottom:22px}
.archive-footer-brand img{display:block;width:100%;height:auto;object-fit:contain}
.archive-page main{min-width:0;max-width:1300px}
.archive-page header,.archive-page footer,.archive-page .notice{overflow-wrap:anywhere}
.archive-page .table-wrap{max-width:100%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.archive-page .table-wrap:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.table-scroll-hint{display:none;font-size:13px;color:#555;margin:12px 0 0}
@media(max-width:850px){.table-scroll-hint{display:block}}
@media(max-width:480px){
  .archive-page main{padding:24px 16px 48px}
  .archive-page th,.archive-page td{padding:11px 12px}
  .archive-page footer a{display:inline-block;padding-block:8px}
}
@media(max-width:850px){.race-theme .brand img{width:142px}}
@media(max-width:650px){
  .race-theme .brand img{width:124px}
  .race-theme .main-nav{background:#151515}
  .race-theme .hero:after{background:linear-gradient(0deg,#151515 14%,#151515e8 33%,#1515157a 54%,#15151500 80%)}
  .archive-navigation{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:24px}
  .archive-brand{flex:auto;width:190px;max-width:100%}
}
@media print{
  .archive-page{background:#fff}
  .archive-navigation{margin-bottom:15px}
  .archive-brand{flex:none;width:150px}
  .archive-page th{color:#000;background:#eee}
  .table-scroll-hint{display:none}
}
