:root{--red:#ec3039;--black:#111214;--muted:#b9b9bd;--paper:#f1f0eb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--black);color:#fff;font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{color:#ff858a}a:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #ffb94a;outline-offset:5px}img{display:block;width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.02}h1,h2{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-weight:900;letter-spacing:-.035em}h2{font-size:clamp(34px,4vw,60px)}h3{font-size:27px}section[id]{scroll-margin-top:30px}.review{background:#292a2d;display:flex;gap:22px;padding:9px 4%;font-size:11px;letter-spacing:1px}.review span{color:#dedee0;letter-spacing:0}.review a{margin-left:auto}header{padding:27px 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #353538}.brand{font-style:italic;line-height:.82;font-weight:950;font-size:32px;letter-spacing:-2px;text-decoration:none;position:relative}.brand span{display:block;color:var(--red);font-size:19px;letter-spacing:3px;margin-top:7px}nav{display:flex;gap:32px;font-size:13px;font-weight:bold}nav a{text-decoration:none;padding:10px 0}.hero{display:grid;grid-template-columns:47% 53%;min-height:610px}.hero-copy{padding:70px 5% 30px 8.5%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:11px;font-weight:bold;letter-spacing:2px;color:#fa666d;margin-bottom:22px}h1{font-size:clamp(58px,6.5vw,106px);line-height:.96}h1 em{font-style:normal;color:var(--red)}.intro{color:#d3d3d5;margin-top:28px;font-size:17px}.actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;justify-content:space-between;gap:24px;background:var(--red);color:white;padding:15px 22px;text-decoration:none;font-weight:bold;font-size:13px;min-height:48px}.button:hover{background:#ba1620;color:white}.textlink{font-size:13px;font-weight:bold}.season{margin-top:auto;padding-top:55px;font-weight:bold;font-size:30px;display:flex;align-items:center;gap:16px}.season span{font-size:9px;max-width:180px;color:#bdbdc3;letter-spacing:1px}.hero-photo{position:relative;min-width:0;display:flex;flex-direction:column}.hero-photo img{height:100%;min-height:570px;object-fit:cover;object-position:35% center}.hero-photo figcaption{background:#18191b;padding:10px 18px;font-size:10px;letter-spacing:1px;display:flex;justify-content:space-between}.hero-photo figcaption span{color:#c4c4c8}.ticker{padding:22px 4%;display:flex;justify-content:space-between;gap:25px;background:var(--red);font-size:11px;letter-spacing:1.2px;font-weight:bold}.ticker span:before{content:'＋';margin-right:22px}.section{padding:85px 6%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-head>p{max-width:340px;color:var(--muted);font-size:14px}.rider-layout{display:grid;grid-template-columns:1fr 1fr;gap:5%}.rider-layout figure img{aspect-ratio:1.33;object-fit:cover}.rider-layout figcaption{font-size:11px;color:#bcbcc3;margin-top:12px}.riders article{border-top:1px solid #525258;padding:20px 0 25px}.rider-top{display:flex;align-items:center;justify-content:space-between}.rider-top>span{font-size:10px;letter-spacing:2px;color:#bdbdc3}.rider-top strong{font-size:64px;font-style:italic;line-height:1;color:var(--red)}.rider-top strong span{font-size:24px}.riders h3{margin:6px 0 15px;font-size:36px}.riders dl{margin:0}.riders dl div{display:flex;justify-content:space-between;gap:15px;font-size:12px;padding:7px 0}.riders dd{margin:0;color:#bebec5}.light{background:var(--paper);color:#161719}.light .eyebrow{color:#b91b24}.light a:hover{color:#ad1720}.results-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px}.results-head h3{font-size:18px}.results-head label{font-size:12px}select{padding:12px;border:1px solid #aaa;background:transparent;color:#111;margin-left:8px;font-size:14px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left;font-size:14px}th,td{padding:22px 15px;border-bottom:1px solid #ccc}thead th{font-size:10px;letter-spacing:1px;background:#e5e4de}td b{color:#b31620;font-size:20px}.note{font-size:12px;color:#666;line-height:1.7;margin-top:20px}.social-story{border-top:2px solid #171719;margin-top:42px;padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:30px}.social-story p:not(.eyebrow){font-size:14px;margin-top:15px;max-width:520px}.social-story .eyebrow{margin-bottom:12px}.dark{background:#171719}.partners{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #48484c;border-bottom:1px solid #48484c}.partners>div{padding:35px 24px;border-right:1px solid #48484c}.partners strong{font-size:30px;letter-spacing:-1px}.partners p{font-size:11px;color:#bbb;margin-top:15px}.partners .bitubo{font-style:italic;font-size:44px;color:#f44851}.partners .placeholder{border:1px dashed #75757b;margin:15px;padding:20px}.placeholder strong{font-size:14px;letter-spacing:1px}.performance{display:grid;grid-template-columns:1fr 1.3fr;background:#222326}.performance>div{padding:70px 10%}.performance-mark{background:var(--red);font:bold italic 190px/1 Arial;letter-spacing:-20px;display:flex;flex-direction:column;justify-content:center}.performance-mark span{font:12px/1.6 Arial;letter-spacing:3px;margin-top:30px}.performance h2{font-size:clamp(34px,3.5vw,52px)}.performance p:not(.eyebrow){margin-top:22px;color:#c7c7cc;font-size:14px;max-width:470px}.performance address{font-style:normal;font-size:14px;margin:22px 0}.contact{text-align:center}.contact .actions{justify-content:center}.review-notes{padding-top:35px;padding-bottom:40px;background:#1b1c1e;color:#bbb;font-size:13px}.review-notes h2{font-family:Arial;font-size:21px;letter-spacing:0;color:white;margin-bottom:15px}.review-notes details{margin-top:20px;border-top:1px solid #444;padding-top:15px}.review-notes summary{cursor:pointer;color:white;min-height:36px}.review-notes p{margin-top:14px}.review-notes li{margin:12px 0}footer{padding:35px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer>span,footer>a:last-child{font-size:10px;letter-spacing:1px}.skip{position:fixed;top:-100px;left:20px;background:white;color:black;z-index:10;padding:12px}.skip:focus{top:15px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}@media(max-width:1100px){nav{gap:18px}.hero{min-height:560px;grid-template-columns:48% 52%}.hero-copy{padding-top:50px}.hero-photo img{min-height:530px}.hero .actions{gap:18px}.section{padding:65px 5%}.riders dl div{display:block}.riders dd{padding-top:3px}.ticker{flex-wrap:wrap;justify-content:center}.performance-mark{font-size:140px}.partners strong{font-size:24px}}@media(max-width:760px){header{flex-direction:column;align-items:flex-start;gap:25px}nav{width:100%;gap:18px;flex-wrap:wrap;font-size:12px}.review{flex-wrap:wrap;gap:8px}.review a{margin-left:0}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 6%}.hero-photo img{min-height:0;height:auto;aspect-ratio:1.3;object-position:30% center}h1{font-size:64px}.season{padding-top:35px}.section-head{align-items:flex-start;flex-direction:column}.rider-layout{grid-template-columns:1fr;gap:30px}.riders dl div{display:flex}.partners{grid-template-columns:1fr}.partners>div{border-right:0;border-bottom:1px solid #444}.performance{grid-template-columns:1fr}.performance-mark{font-size:110px;padding:35px 8%!important;letter-spacing:-12px}.performance-mark span{margin-top:20px}.results-head,.social-story{align-items:flex-start;flex-direction:column}.ticker{font-size:9px;gap:12px}.section{padding:50px 6%}footer{flex-wrap:wrap}.hero-photo figcaption{font-size:9px}.performance>div{padding:45px 8%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.hero-photo img{object-position:15% center}
@media(min-width:761px) and (max-width:1000px){.hero-photo img{object-position:12% center}}

.rider-layout figure img{aspect-ratio:auto;height:auto;object-fit:contain}

/* Display the supplied logo without changing its artwork. */
.brand{display:block;width:210px;height:65px;overflow:hidden;background:white;flex-shrink:0}
.brand img{width:250px;height:250px;max-width:none;position:relative;left:-20px;top:-92px;object-fit:contain}
@media(max-width:760px){.brand{width:180px;height:57px}.brand img{width:216px;height:216px;left:-18px;top:-79px}}

.brand{width:230px;height:auto;overflow:visible;background:transparent}
.brand img{position:static;width:100%;height:auto;max-width:100%;object-fit:contain}
@media(max-width:760px){.brand{width:200px}.brand img{width:100%;height:auto;position:static}}

/* Motorsport typography, bundled for offline review. */
@font-face{font-family:Rajdhani;src:url('assets/fonts/Rajdhani-Medium.ttf') format('truetype');font-style:normal;font-weight:400 500;font-display:swap}
@font-face{font-family:Rajdhani;src:url('assets/fonts/Rajdhani-Bold.ttf') format('truetype');font-style:normal;font-weight:600 900;font-display:swap}
body{font-family:Rajdhani,'Arial Narrow',sans-serif;font-size:18px;font-weight:500;line-height:1.55}
h1,h2,h3,.review-notes h2{font-family:Rajdhani,'Arial Narrow',sans-serif;font-weight:700;letter-spacing:-.025em}
h1,h2{font-style:italic;text-transform:uppercase;line-height:.96}
h1{font-size:clamp(64px,7vw,112px)}
h1 em{font-style:inherit}
h3{letter-spacing:0}
nav,.button,.textlink,select,table,.riders dl div{font-family:Rajdhani,'Arial Narrow',sans-serif}
nav,.button,.textlink{font-size:16px;font-weight:700}
nav a,.button{text-transform:uppercase;letter-spacing:.5px}
.eyebrow{font-size:13px;letter-spacing:1.8px}
.intro{font-size:20px}
.section-head>p,.social-story p:not(.eyebrow){font-size:17px}
.riders dl div{font-size:16px}
.rider-top>span{font-size:13px}
.rider-top strong{font-family:Rajdhani,sans-serif;font-weight:700}
table{font-size:17px}thead th{font-size:13px}
.note,.partners p,.rider-layout figcaption,.review-notes{font-size:15px}
.review{font-size:13px}.hero-photo figcaption{font-size:12px}
.results-head label{font-size:16px}select{font-size:16px}
.partners strong{font-weight:700}.placeholder strong{font-size:17px}
footer>span,footer>a:last-child{font-size:13px}
@media(max-width:760px){h1{font-size:70px}nav{font-size:15px;gap:14px}.hero-photo figcaption{font-size:11px}.ticker{font-size:12px}}

.partners .bitubo{display:block;font-size:30px;line-height:1.15;overflow-wrap:break-word}

.partner-logo{width:100%;max-width:340px;height:auto;background:#fff;display:block}

.hero-logo{width:100%;max-width:560px;margin:10px 0 0;line-height:1}
.hero-logo img{display:block;width:100%;height:auto}

.partner-logo{background:transparent;height:120px;object-fit:contain;object-position:left center;max-width:360px}
#partners{background:var(--paper);color:var(--black)}
#partners .eyebrow{color:#b91b24}#partners .partners p{color:#444}
@media(max-width:760px){.partner-logo{height:95px}}

.partner-logo-pair{display:flex;gap:20px;align-items:center}.partner-logo-pair .partner-logo{width:calc(50% - 10px);height:120px}
@media(max-width:760px){.partner-logo-pair .partner-logo{height:95px}}

.grg-logo{mix-blend-mode:multiply}

.track-social-logo{mix-blend-mode:multiply}

/* Two-color logo treatment; retain each asset's transparency. */
.logo-filter-defs{position:absolute;overflow:hidden;pointer-events:none}
.brand img,.hero-logo img,.partner-logo{filter:none}

/* Center partner logos and their labels within each column. */
.partners>div{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
.partners .partner-logo{margin-inline:auto;object-position:center center}

.season-teaser{padding:30px 6%;background:var(--black)}
.season-teaser img{width:100%;max-width:760px;height:auto;margin:0 auto;border:1px solid #323337}

.teaser-toggle{display:block;margin:8px auto 0;background:transparent;border:1px solid #666;color:#ddd;padding:9px 15px;font:inherit;cursor:pointer}.teaser-toggle:focus-visible{outline:3px solid #ffb94a}@media(prefers-reduced-motion:reduce){.teaser-toggle{display:none}}

.season-teaser picture{display:block;width:50%;max-width:380px;margin:0 auto}
.season-teaser picture img{width:100%;max-width:none}
.standings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:0 0 40px}.standings-grid article{border-left:4px solid var(--red);padding:20px;background:#e5e4de}.standings-grid h3{margin-bottom:12px}.standings-grid p{margin:10px 0}.standings-grid strong{font-size:26px}.results-subhead{margin:38px 0 16px;font-size:24px}.nemrr-status{margin-top:22px;border:1px solid #aaa;padding:18px}.nemrr-status summary{cursor:pointer;font-weight:700}.nemrr-status p{margin:14px 0}.table-wrap td:last-child a{font-size:14px}@media(max-width:760px){.standings-grid{grid-template-columns:1fr}}

.sbs-logo{mix-blend-mode:multiply}

.standings-grid .rider-photo-summary{display:grid;grid-template-columns:1fr 1.15fr;gap:20px;align-items:center}
.rider-photo-summary figure{min-width:0}.rider-photo-summary img{width:100%;height:auto;display:block}
@media(min-width:761px) and (max-width:1100px){.standings-grid .rider-photo-summary{grid-template-columns:1fr}}
@media(max-width:480px){.standings-grid .rider-photo-summary{grid-template-columns:1fr}}

/* Tighter partner spacing. */
.partners>div{padding:18px 16px}
.partners p{margin-top:8px}

.team-photo-section{padding-top:25px}.team-photo-section h2{margin-bottom:28px}.team-photo-section figure{max-width:1084px;margin-inline:auto}.team-photo-section img{width:100%;height:auto}.team-photo-section figcaption{font-size:15px;color:#bbb;margin-top:10px}

.team-photo-section img{width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;object-position:center 54%}

.top-team-logo{padding:24px 6%;background:var(--black)}
.top-team-logo img{display:block;width:75%;max-width:570px;height:auto;margin:0 auto}
.hero-copy .season-teaser{padding:0;width:100%;margin:8px 0 0}
.hero-copy .season-teaser picture{width:50%;max-width:380px;margin:0}
.hero-copy .teaser-toggle{margin:8px 0 0;font-size:13px}
header{justify-content:center}
.top-team-logo{padding-bottom:8px}
.top-team-logo+.season-teaser{padding-top:0;padding-bottom:20px}
nav a[aria-current=page]{color:#fa666d;border-bottom:2px solid var(--red)}
.reports-intro{padding-bottom:35px}.reports-intro h1{font-size:clamp(56px,7vw,100px)}
.archive-status{margin-top:30px;padding:18px 22px;border-left:3px solid var(--red);background:#222326;max-width:800px;font-size:16px}.archive-status p{color:#c8c8cc;margin-top:5px}
.reports-archive{padding-top:25px;background:var(--paper);color:var(--black)}
.reports-archive>.results-head h2{font-size:38px}.report-count{font-size:15px;color:#555;margin-bottom:20px}
.race-report{display:grid;grid-template-columns:190px 1fr;gap:35px;padding:36px 0;border-top:1px solid #b8b8b3}
.report-date{font-size:18px;font-weight:700}.report-date span{display:block;color:#555;font-size:15px;margin-top:8px}
.report-body{max-width:760px}.report-body .eyebrow{color:#b91b24;margin-bottom:12px}.report-body h2{font-size:clamp(28px,3vw,42px)}.report-body>p:not(.eyebrow){font-size:18px;margin:18px 0 22px}.reports-bottom p{margin:18px 0}.reports-bottom .button{margin-top:10px}
@media(max-width:760px){.race-report{grid-template-columns:1fr;gap:16px;padding:28px 0}.report-date span{display:inline;margin-left:15px}.reports-intro{padding-top:40px}}

/* Photo slideshow replaces the opening photo and season intro panels. */
.team-slideshow{max-width:1280px;margin:0 auto;padding:24px 4% 28px}
.slideshow-stage{background:#111214;position:relative}
.team-slide{margin:0}.team-slide img{display:block;width:100%;height:clamp(280px,48vw,600px);object-fit:contain;background:#111214}
.team-slide figcaption{padding:12px 0;font-size:18px;font-weight:700;text-align:center}
.slideshow-controls{display:flex;justify-content:center;align-items:center;gap:10px;padding:6px 0}
.slideshow-controls button{border:1px solid #555;background:#242528;color:white;min-width:44px;min-height:44px;font:700 20px Rajdhani,sans-serif;cursor:pointer}
.slideshow-controls button:hover{background:#444}.slideshow-controls button:focus-visible{outline:3px solid #ffb94a;outline-offset:3px}
.slide-dots{display:flex;gap:4px}.slide-dots button{border:0;background:transparent;color:#888;min-width:36px}.slide-dots button[aria-pressed=true]{color:var(--red)}
.slide-counter{font-size:15px;min-width:40px}.slideshow-links{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;margin-top:16px;font-size:16px;font-weight:700}
@media(max-width:480px){.slideshow-controls{gap:5px}.slide-dots{gap:0}.slide-dots button{min-width:30px}.team-slide img{height:300px}.slideshow-links{gap:16px}.team-slideshow{padding-inline:3%}}
/* Keep an expanded photo selector usable on smaller screens. */
.slide-dots{flex-wrap:wrap;justify-content:center;max-width:440px}
@media(max-width:760px){.slideshow-controls{flex-wrap:wrap}.slide-dots{max-width:240px}.slide-counter{min-width:48px}}

.team-contact-address{font-style:normal;font-size:19px;line-height:1.6;margin-top:25px}.team-contact-address strong{font-weight:700}

/* Race report archive filters */
.archive-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(180px,1.3fr);gap:16px;margin:28px 0 18px}.archive-filters label{display:flex;flex-direction:column;gap:8px;font-weight:700}.archive-filters select,.archive-filters input{width:100%;min-width:0;min-height:46px;border:1px solid #64676a;background:#181a1c;color:#fff;padding:10px;font:inherit}.archive-filters select:focus-visible,.archive-filters input:focus-visible{outline:3px solid #ff3347;outline-offset:3px}.report-links{display:flex;gap:12px 26px;flex-wrap:wrap}.race-report[hidden],#report-empty[hidden]{display:none}#report-empty{padding:24px;border:1px solid #555}@media(max-width:1050px){.archive-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.archive-filters{grid-template-columns:1fr}}

.page-title{font-size:clamp(38px,6vw,76px);line-height:1.05;margin:0;max-width:100%;overflow-wrap:break-word}
