@font-face{font-family:"OMRA Inter";src:url('/assets/fonts/Inter-Variable.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:"OMRA Evogria";src:url('/assets/fonts/evogria.woff') format('woff'),url('/assets/fonts/evogria.otf') format('opentype');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:"OMRA Evogria";src:url('/assets/fonts/evogria_italic.woff') format('woff'),url('/assets/fonts/evogria_italic.otf') format('opentype');font-style:italic;font-weight:100 900;font-display:swap}
:root {
    --ink: #0a0a0c;
    --ink-soft: #151519;
    --paper: #f4f3f0;
    --white: #fff;
    --red: #e10600;
    --red-bright: #ff1e16;
    --grey: #a4a4aa;
    --line: rgba(255, 255, 255, .16);
    --shell: min(1320px, calc(100% - 48px));
    --radius: 3px;
    --color-bg-canvas: #090b0e;
    --color-bg-surface: #12151a;
    --color-bg-elevated: #1a1e24;
    --color-text-primary: #f8f8f6;
    --color-text-secondary: #a7abb2;
    --color-border-subtle: rgba(255,255,255,.14);
    --color-signal: #e10600;
    --color-live: #ff342d;
    --color-success: #29b765;
    --color-warning: #f4a629;
    --color-danger: #e10600;
    --class-c: #f3b61f;
    --class-d: #e10600;
    --class-e: #7b61ff;
    --class-x: #00a8e8;
    --class-xs: #55d187;
    --font-display: "OMRA Evogria", Impact, "Arial Black", sans-serif;
    --font-ui: "OMRA Inter", Inter, "Helvetica Neue", Arial, sans-serif;
    --font-mono-data: "Roboto Mono", Consolas, monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html.event-scrollbar-hidden { scrollbar-width: none; -ms-overflow-style: none; }
html.event-scrollbar-hidden::-webkit-scrollbar { display: none; width: 0; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--font-ui); font-optical-sizing:auto; -webkit-font-smoothing:auto; text-rendering:optimizeLegibility; }
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; }
button, input { font: inherit; }
.shell { width: var(--shell); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: 10px; left: 10px; z-index: 1000; padding: 12px 18px; color: var(--white); background: var(--red); transform: translateY(-150%); }
.skip-link:focus { transform: none; }

.site-header { position: fixed; inset: 0 0 auto; z-index: 100; height: 104px; color: var(--white); background: linear-gradient(to bottom, rgba(0,0,0,.51), transparent); transition: .25s ease; }
.site-header.is-scrolled { height: 82px; background: rgba(10,10,12,.94); border-bottom: 1px solid var(--line); backdrop-filter: blur(16px); }
.header-inner { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 36px; }
.brand img { width: 237px; height: auto; transition: width .25s ease; }
.site-header.is-scrolled .brand img { width: 205px; }
@keyframes header-fade-in{from{opacity:0}to{opacity:1}}
.site-header .brand{animation:header-fade-in .65s ease both}
@media(min-width:861px){.site-header .primary-nav>.nav-group{animation:header-fade-in .6s ease both}.site-header .primary-nav>.nav-group:nth-child(2){animation-delay:45ms}.site-header .primary-nav>.nav-group:nth-child(3){animation-delay:90ms}.site-header .primary-nav>.nav-group:nth-child(n+4){animation-delay:135ms}}
.primary-nav { display: flex; align-items: center; gap: clamp(18px, 2.2vw, 38px); font-size: .76rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.primary-nav a { padding-block: 14px; text-decoration: none; border-bottom: 2px solid transparent; }
.primary-nav a:hover, .primary-nav a:focus-visible { border-color: var(--red); }
.primary-nav .nav-account { padding: 13px 19px; border: 1px solid rgba(255,255,255,.48); }
.nav-group { display: flex; align-items: center; height: 100%; }
.nav-chevron { margin-left: 6px; color: var(--red); font-size: .9rem; }
.mega-menu { position: absolute; top: 100%; left: 0; width: 100%; padding: 34px 0; color: #fff; background: rgba(9,11,14,.985); border-top: 1px solid #303238; box-shadow: 0 24px 50px rgba(0,0,0,.35); opacity: 0; visibility: hidden; transform: translateY(-12px); transition: opacity .32s ease, transform .4s cubic-bezier(.22,1,.36,1), visibility 0s linear .4s; }
.nav-group:hover .mega-menu, .nav-group:focus-within .mega-menu { opacity: 1; visibility: visible; transform: none; }
.nav-group:hover .mega-menu, .nav-group:focus-within .mega-menu { transition-delay: 0s; }
.mega-menu > .shell > * { opacity: 0; transform: translateY(12px); transition: opacity .3s ease, transform .42s cubic-bezier(.22,1,.36,1); }
.nav-group:hover .mega-menu > .shell > *, .nav-group:focus-within .mega-menu > .shell > * { opacity: 1; transform: none; }
.nav-group:hover .mega-menu > .shell > :nth-child(2), .nav-group:focus-within .mega-menu > .shell > :nth-child(2) { transition-delay: 45ms; }
.nav-group:hover .mega-menu > .shell > :nth-child(n+3), .nav-group:focus-within .mega-menu > .shell > :nth-child(n+3) { transition-delay: 85ms; }
@media (min-width: 861px) {
    .primary-nav { height: 100%; }
    .mega-menu::before { content: ""; position: absolute; inset: -3px 0 auto; height: 3px; }
}
.mega-grid { display: grid; grid-template-columns: 1.05fr 1.5fr 1fr; gap: 28px; align-items: stretch; }
.mega-intro h2 { margin: 8px 0 20px; font-size: 2rem; line-height: .95; text-transform: uppercase; }
.mega-intro a, .mega-gallery a { padding: 0; color: #fff; border: 0; font-size: .68rem; }
.mega-feature { min-height: 190px; display: flex; flex-direction: column; justify-content: end; padding: 25px !important; border: 0 !important; background: linear-gradient(0deg, rgba(0,0,0,.9), rgba(0,0,0,.12)), var(--mega-image, url('/assets/images/photography/cowes-orange-race.png')) center/cover; }
.mega-feature span, .mega-feature small { color: #ddd; font-size: .62rem; }
.mega-feature strong { margin: 6px 0; font-size: 1.25rem; }
.mega-offseason{position:relative;isolation:isolate;grid-column:2/-1;display:flex;flex-direction:column;justify-content:flex-end;min-height:220px;overflow:hidden;padding:28px 34px;background:#15181d}
.mega-offseason::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,8,12,.94),rgba(5,8,12,.34)),var(--mega-image) center 54%/cover no-repeat;opacity:.88;transform:scale(1.07);transition:opacity .65s ease,transform 1.2s cubic-bezier(.22,1,.36,1)}
.motion-enabled .mega-offseason.motion-bg:not(.is-loaded)::before{opacity:0}
.nav-group:hover .mega-offseason::before,.nav-group:focus-within .mega-offseason::before{transform:scale(1)}
.mega-offseason>span,.mega-offseason>strong,.mega-offseason>small{opacity:0;transform:translateY(17px);transition:opacity .5s ease,transform .7s cubic-bezier(.22,1,.36,1)}
.nav-group:hover .mega-offseason>span,.nav-group:hover .mega-offseason>strong,.nav-group:hover .mega-offseason>small,.nav-group:focus-within .mega-offseason>span,.nav-group:focus-within .mega-offseason>strong,.nav-group:focus-within .mega-offseason>small{opacity:1;transform:none}
.mega-offseason>span{color:#ff4a45;font-size:.68rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;transition-delay:60ms}
.mega-offseason>strong{margin:10px 0;font-family:"OMRA Evogria",Impact,"Arial Black",sans-serif;font-size:clamp(2rem,3vw,3.5rem);line-height:.98;text-transform:uppercase;transition-delay:130ms}
.mega-offseason>strong em{color:#ff4a45;font-style:normal}
.mega-offseason>small{color:#eef0f3;font-size:.78rem;transition-delay:210ms}
.mega-gallery { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.mega-gallery img { width: 100%; height: 135px; object-fit: cover; }
.mega-gallery a { grid-column: 1 / -1; }
.mega-leaders { margin: 0; padding: 0; list-style: none; }
.mega-leaders li { display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 12px; padding: 14px; border-bottom: 1px solid #303238; }
.mega-leaders li > span { color: var(--red); font-size: 1.3rem; font-weight: 950; }
.mega-leaders small, .mega-fastest small { color: #9b9da4; }
.mega-fastest { padding: 24px; background: #181a1f; }
.mega-fastest p { margin: 16px 0 6px; color: #9b9da4; font-size: .65rem; text-transform: uppercase; }
.mega-fastest strong, .mega-fastest small { display: block; margin-bottom: 7px; }
.mega-links { display: grid; grid-template-columns: minmax(260px,.72fr) minmax(0,1.8fr); gap: clamp(45px,7vw,110px); align-items:start; }
.mega-more-lists { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 55px; }
.mega-more-list { display:grid; align-content:start; }
.mega-more-list a { min-height:52px; display:grid; grid-template-columns:30px 1fr auto; align-items:center; gap:12px; padding:0 8px !important; color:#d7d9dd; border:0 !important; border-bottom:1px solid #2b2e34 !important; text-decoration:none; transition:color .18s ease,padding .18s ease,background .18s ease; }
.mega-more-list a i { color:#737880; font-size:.95rem; font-style:normal; transition:color .18s ease,transform .18s ease; }
.mega-more-list a strong { font-size:.84rem; letter-spacing:.08em; text-transform:uppercase; }
.mega-more-list a span { color:#4f545d; transition:color .18s ease,transform .18s ease; }
.mega-more-list a:hover,.mega-more-list a:focus-visible { padding-left:14px !important; color:#fff; background:linear-gradient(90deg,rgba(225,6,0,.18),transparent); }
.mega-more-list a:hover i,.mega-more-list a:focus-visible i,.mega-more-list a:hover span,.mega-more-list a:focus-visible span { color:var(--red); }
.mega-more-list a:hover i,.mega-more-list a:focus-visible i { transform:scale(1.12) rotate(-5deg); }
.mega-more-list a:hover span,.mega-more-list a:focus-visible span { transform:translateX(4px); }
.nav-badge { margin-left: 7px; padding: 3px 5px; color: var(--white); background: var(--red); font-size: .55rem; letter-spacing: .08em; }
.menu-toggle { display: none; width: 46px; height: 46px; padding: 11px; background: transparent; border: 1px solid var(--line); cursor: pointer; }
.menu-toggle span:not(.sr-only) { display: block; height: 2px; margin: 5px 0; background: var(--white); transition: transform .32s cubic-bezier(.22,1,.36,1), opacity .2s ease; }
.menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(12px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-12px) rotate(-45deg); }
.mobile-more-toggle{display:none}
.mobile-more-links{display:none}

.hero { position: relative; min-height: 790px; height: 92vh; max-height: 980px; display: flex; align-items: flex-end; overflow: hidden; color: var(--white); background: var(--ink); }
.hero-media, .hero-grid { position: absolute; inset: 0; }
.hero-media { background: linear-gradient(90deg, rgba(8,8,10,.7125) 0%, rgba(8,8,10,.54) 42%, rgba(8,8,10,.06) 78%), linear-gradient(0deg, rgba(8,8,10,.66), transparent 52%), var(--home-hero, url('/assets/images/photography/cowes-orange-race.png')) center 48% / cover no-repeat; transform: scale(1.01); }
.hero-grid { opacity: .13; background-image: linear-gradient(rgba(255,255,255,.13) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.13) 1px, transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(to right, black, transparent 72%); }
.hero-content { position: relative; z-index: 2; padding-bottom: clamp(90px, 12vh, 145px); }
.eyebrow { margin: 0 0 22px; color: var(--red); font-size: .76rem; font-weight: 900; letter-spacing: .19em; text-transform: uppercase; }
.eyebrow span { display: inline-block; margin-right: 10px; padding: 5px 8px; color: var(--white); background: var(--red); letter-spacing: .1em; }
.eyebrow-light { color: rgba(255,255,255,.72); }
.hero h1, .section h2, .event-section h2, .join-section h2, .not-found h1, .page-hero h1, .event-hero h1 { max-width: 1000px; margin: 0; font-family: var(--font-display); font-size: clamp(4.1rem, 8.4vw, 9rem); font-weight: 900; line-height: .84; letter-spacing: -.055em; text-transform: uppercase; font-synthesis:none; }
.hero h1 em, .section h2 em, .join-section h2 em { color: var(--red); font-style: italic; }
.hero-copy { max-width: 610px; margin: 34px 0 0; color: rgba(255,255,255,.8); font-size: clamp(1rem, 1.45vw, 1.3rem); line-height: 1.55; }
.hero-actions { display: flex; gap: 12px; margin-top: 38px; }
.button { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 24px; padding: 0 24px; text-decoration: none; font-size: .77rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; border: 1px solid transparent; transition: transform .2s, background .2s, color .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: var(--white); background: var(--red); }
.button-primary:hover { background: var(--red-bright); }
.button-ghost { color: var(--white); border-color: rgba(255,255,255,.48); }
.button-dark { color: var(--white); background: var(--ink); }
.hero-number { position: absolute; right: -2vw; bottom: -8vw; z-index: 1; color: transparent; font-size: clamp(18rem, 38vw, 40rem); font-weight: 950; line-height: .8; letter-spacing: -.12em; -webkit-text-stroke: 1px rgba(255,255,255,.13); }

.race-alert { position: relative; z-index: 4; color: var(--white); background: var(--red); }
.alert-inner { min-height: 82px; display: grid; grid-template-columns: 180px 1fr auto; align-items: center; gap: 28px; }
.alert-label { font-size: .69rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.live-dot { display: inline-block; width: 8px; height: 8px; margin-right: 9px; background: var(--white); border-radius: 50%; box-shadow: 0 0 0 6px rgba(255,255,255,.16); }
.alert-event { display: flex; align-items: baseline; gap: 18px; }
.alert-event strong { font-size: 1.5rem; font-style: italic; }
.alert-event span { font-size: 1.02rem; font-weight: 900; text-transform: uppercase; }
.alert-event small { color: rgba(255,255,255,.7); }
.alert-inner > a { font-size: .74rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; }

.section { padding: clamp(90px, 11vw, 160px) 0; }
.section-light { background: var(--paper); }
.section-heading { display: grid; grid-template-columns: 1.55fr .75fr; align-items: end; gap: 60px; margin-bottom: 64px; }
.section-heading h2, .standings-copy h2 { font-size: clamp(3.5rem, 6.5vw, 7rem); }
.media-gallery-section .section-heading h2, .media-video-section .section-heading h2 { font-size: clamp(2.5rem, 4.5vw, 4.75rem); }
.section-heading > p { max-width: 500px; margin: 0 0 6px; color: #5c5c63; font-size: 1.08rem; line-height: 1.7; }
.section-heading-inline { grid-template-columns: 1fr auto; }
.text-link { align-self: end; margin-bottom: 8px; color: var(--red); font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; }

.race-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.race-card { min-width: 0; background: var(--white); box-shadow: 0 12px 42px rgba(20,20,26,.07); }
.race-card-image { position: relative; height: 280px; display: block; background-color: #26262c; background-position: center; background-size: cover; overflow: hidden; }
.race-card-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,0,0,.58), transparent 58%); }
.motion-enabled .race-card-image.motion-bg::before{content:"";position:absolute;inset:0;z-index:1;background:#26262c;opacity:1;transition:opacity .8s ease}
.motion-enabled .race-card-image.motion-bg.is-loaded::before{opacity:0;pointer-events:none}
.motion-enabled .race-card-image.motion-bg::after{z-index:1}
.race-card:hover .race-card-image { filter: saturate(1.12) contrast(1.06); }
.race-round { position: absolute; left: 16px; bottom: 14px; z-index: 2; color: var(--white); font-size: 2.5rem; font-weight: 950; font-style: italic; letter-spacing: -.08em; }
.entry-status { position: absolute; top: 14px; right: 14px; z-index: 2; padding: 7px 9px; color: var(--white); background: var(--red); font-size: .61rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.race-card-body { min-height: 160px; display: grid; grid-template-columns: 62px 1fr 34px; gap: 16px; align-items: start; padding: 25px 22px; }
.race-card time { display: flex; flex-direction: column; padding-right: 14px; border-right: 1px solid #dedee1; }
.race-card time b { font-size: 2rem; line-height: 1; letter-spacing: -.07em; }
.race-card time span, .race-format { color: var(--red); font-size: .63rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.race-format { margin: 0 0 7px; }
.race-card h3 { margin: 0; font-size: 1.1rem; line-height: 1.05; text-transform: uppercase; }
.race-card-body p:last-child { margin: 8px 0 0; color: #73737a; font-size: .8rem; }
.card-link { width: 32px; height: 32px; display: grid; place-items: center; color: var(--white); background: var(--ink); text-decoration: none; }

.speed-stats { color: var(--white); background: var(--red); }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.stats-grid > div,.stats-grid > a { min-height: 190px; display: flex; flex-direction: column; justify-content: center; padding: 30px clamp(18px, 3vw, 44px); border-left: 1px solid rgba(255,255,255,.24); }
.stats-grid > div:last-child,.stats-grid > a:last-child { border-right: 1px solid rgba(255,255,255,.24); }
.stats-grid strong { font-size: clamp(3.2rem, 5vw, 5.4rem); line-height: 1; letter-spacing: -.08em; }
.stats-grid strong span { font-size: .34em; letter-spacing: 0; }
.stats-grid > div > span,.stats-grid > a > span { margin-top: 12px; color: rgba(255,255,255,.72); font-size: .65rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.stat-card{position:relative;color:#fff;text-decoration:none;overflow:hidden}.stat-card strong,.stat-card span,.stat-card i{position:relative;z-index:1}.stat-card-visual{justify-content:flex-end!important;background:linear-gradient(180deg,rgba(155,0,0,.12),rgba(118,0,0,.94)),var(--stat-image) center/cover}.stat-card-visual strong{max-width:90%;font-family:var(--font-display);font-size:clamp(1.55rem,2.5vw,2.8rem);line-height:.95;letter-spacing:-.03em;text-transform:uppercase}.stat-card-visual span{order:-1;margin:0 0 10px!important;color:#fff!important}.stat-card-visual i{position:absolute;right:24px;bottom:25px;font-size:1.4rem;font-style:normal}.stat-card:hover{background-color:#bd0500}.stat-card-visual:hover{background-size:auto,105%}

.standings-section { color: var(--white); background: var(--ink); }
.standings-layout { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(70px, 9vw, 150px); align-items: start; }
.standings-copy { position: sticky; top: 120px; }
.standings-copy p:not(.eyebrow) { max-width: 420px; color: var(--grey); line-height: 1.7; }
.class-tabs { display: flex; margin-top: 40px; }
.class-tabs a { width: 50px; height: 48px; display: grid; place-items: center; color: var(--white); background: transparent; border: 1px solid #38383d; font-weight: 900; text-decoration: none; }
.class-tabs a.active, .class-tabs a:hover { background: var(--red); border-color: var(--red); }
.standings-table-wrap { border-top: 3px solid var(--red); }
.standings-table { width: 100%; border-collapse: collapse; }
.standings-table th { padding: 20px 14px; color: #777780; font-size: .64rem; letter-spacing: .15em; text-align: left; text-transform: uppercase; border-bottom: 1px solid #343439; }
.standings-table td { padding: 20px 14px; font-size: 1.05rem; font-weight: 700; border-bottom: 1px solid #29292e; }
.standings-table th:first-child, .standings-table td:first-child { width: 72px; }
.standings-table th:last-child, .standings-table td:last-child { text-align: right; }
.position { display: grid; width: 38px; height: 38px; place-items: center; background: #202025; border-radius: 50%; }
.standings-table tbody tr:first-child .position { background: var(--red); }
.boat-number { color: var(--red); font-weight: 950; font-style: italic; }
.standings-table td:last-child strong { font-size: 1.35rem; }
.table-cta { display: flex; justify-content: space-between; padding: 23px 15px; color: var(--white); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; border-bottom: 1px solid #343439; }

.news-grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 16px; }
.news-card { min-width: 0; background: var(--white); }
.news-image { height: 240px; display:block; overflow: hidden; background: #ddd; }
.news-card-featured .news-image { height: 330px; }
.news-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.news-card:hover img { transform: scale(1.035); }
.news-body { padding: 28px; }
.news-meta { color: #77777d; font-size: .65rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.news-meta span { margin-right: 9px; color: var(--red); }
.news-body h3 { margin: 14px 0; font-size: clamp(1.35rem, 2vw, 2.05rem); line-height: 1.05; letter-spacing: -.04em; text-transform: uppercase; }
.news-body > p:not(.news-meta) { color: #67676e; font-size: .9rem; line-height: 1.6; }
.news-body > a { display: inline-block; margin-top: 12px; color: var(--red); font-size: .7rem; font-weight: 900; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; }
.news-body h2 a,.news-body h3 a{display:inline;color:inherit;font:inherit;letter-spacing:inherit;text-decoration:none;text-transform:inherit}

.race-film { padding: clamp(90px, 11vw, 150px) 0; color: var(--white); background: var(--ink); }
.film-heading { display: grid; grid-template-columns: 1.5fr .7fr; align-items: end; gap: 60px; margin-bottom: 50px; }
.film-heading h2 { margin: 0; font-size: clamp(3.5rem, 6.5vw, 7rem); line-height: .86; letter-spacing: -.075em; text-transform: uppercase; }
.film-heading h2 em { color: var(--red); font-style: italic; }
.film-heading > p { margin: 0 0 8px; color: var(--grey); line-height: 1.7; }
.film-frame { position: relative; border-top: 3px solid var(--red); background: #000; }
.film-frame video { display: block; width: 100%; max-height: 720px; aspect-ratio: 16 / 9; object-fit: cover; background: #000; }
.film-caption { display: flex; gap: 18px; padding: 18px 20px; font-size: .76rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; border-top: 1px solid #2c2c31; }
.film-caption span { color: var(--red); }

.join-section { position: relative; min-height: 720px; display: flex; align-items: center; overflow: hidden; color: var(--white); background: var(--ink); }
.join-image { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,5,7,.735) 0%, rgba(5,5,7,.585) 48%, rgba(5,5,7,.135)), var(--join-image, url('/assets/images/photography/cowes-pink-launch.png')) center / cover no-repeat; }
.join-content { position: relative; z-index: 2; }
.join-content h2 { font-size: clamp(4rem, 8vw, 8.5rem); }
.join-content > p:not(.eyebrow) { max-width: 560px; margin: 30px 0 35px; color: rgba(255,255,255,.74); font-size: 1.08rem; line-height: 1.7; }
.member-strip { padding: 56px 0; background: var(--white); }
.member-inner { display: grid; grid-template-columns: 1fr .7fr auto; align-items: center; gap: 50px; }
.member-inner h2 { margin: 0; font-size: clamp(1.8rem, 3vw, 3.1rem); line-height: 1; text-transform: uppercase; }
.member-inner .eyebrow { margin-bottom: 12px; }
.member-inner > p { color: #67676e; line-height: 1.6; }

.site-footer { padding: 80px 0 28px; color: rgba(255,255,255,.64); background: var(--ink); }
.footer-grid { display: grid; grid-template-columns: minmax(220px,1.6fr) repeat(4,minmax(120px,1fr)); gap: clamp(24px,3vw,56px); padding-bottom: 70px; }
.footer-logo { width: 150px; margin-bottom: 24px; }
.footer-grid p { max-width: 370px; font-size: .86rem; line-height: 1.7; }
.footer-grid > nav { display: flex; flex-direction: column; align-items: flex-start; gap: 13px; }
.footer-grid a { font-size: .82rem; text-decoration: none; }
.footer-grid a:hover { color: var(--white); }
.footer-title { margin: 0 0 10px; color: var(--white); font-size: .7rem !important; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.footer-bottom { display: flex; justify-content: space-between; padding-top: 24px; font-size: .65rem; letter-spacing: .08em; text-transform: uppercase; border-top: 1px solid var(--line); }
.not-found { min-height: 80vh; display: flex; flex-direction: column; justify-content: center; padding-top: 100px; }
.not-found h1 { max-width: 900px; font-size: clamp(4rem, 9vw, 8rem); }
.not-found p:not(.eyebrow) { color: #65656c; font-size: 1.1rem; }
.not-found .button { align-self: flex-start; margin-top: 24px; }

@media (max-width: 1100px) {
    .race-grid { grid-template-columns: repeat(2, 1fr); }
    .news-grid { grid-template-columns: 1fr 1fr; }
    .news-card-featured { grid-column: 1 / -1; display: grid; grid-template-columns: 1.1fr 1fr; }
    .news-card-featured .news-image { height: 100%; min-height: 360px; }
    .member-inner { grid-template-columns: 1fr 1fr; }
    .member-inner .button { grid-column: 1 / -1; justify-self: start; }
}

@media (max-width: 860px) {
    :root { --shell: min(100% - 32px, 720px); }
    .site-header, .site-header.is-scrolled { height: 70px; background: rgba(10,10,12,.95); }
    .brand img { width: 130px; }
    .menu-toggle { display: block; color: var(--white); }
    .primary-nav { position: fixed; inset: 70px 0 0; display: flex; flex-direction: column; align-items: stretch; gap: 0; padding: 18px 24px 50px; background: var(--ink); overflow-y:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;transform:translate3d(28px,0,0);pointer-events:none;transition:opacity .3s ease,transform .42s cubic-bezier(.22,1,.36,1),visibility 0s linear .42s; }
    .primary-nav > .nav-group { opacity:0; transform:translateY(12px); transition:opacity .28s ease,transform .4s cubic-bezier(.22,1,.36,1); }
    .primary-nav.is-open > .nav-group { opacity:1; transform:none; }
    .primary-nav.is-open > .nav-group:nth-child(2) { transition-delay:35ms; }
    .primary-nav.is-open > .nav-group:nth-child(3) { transition-delay:70ms; }
    .primary-nav.is-open > .nav-group:nth-child(n+4) { transition-delay:105ms; }
    .nav-group { display: block; height: auto; }
    .mega-menu, .nav-chevron { display: none; }
    .nav-group-more>a{display:none}.mobile-more-toggle{width:100%;display:flex;justify-content:space-between;padding:20px 8px;color:#fff;background:none;border:0;border-bottom:1px solid #2d2d32;font-size:1.05rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.mobile-more-toggle span{color:var(--red);font-size:1.35rem}.mobile-more-links{display:grid;grid-template-columns:1fr;max-height:0;padding:0 8px;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .22s ease,padding .3s ease}.nav-group-more.mobile-more-open .mobile-more-links{max-height:650px;padding:6px 8px 20px;opacity:1}.mobile-more-links a{padding:13px 8px;color:#c8cbd1;font-size:.82rem;border-bottom:1px solid #292d33}
    .primary-nav.is-open { opacity:1;visibility:visible;transform:none;pointer-events:auto;transition-delay:0s; }
    .primary-nav a { padding: 20px 8px; font-size: 1.05rem; border-bottom: 1px solid #2d2d32; }
    .primary-nav .nav-account { margin-top: 22px; text-align: center; border: 1px solid #55555c; }
    .hero { min-height: 720px; height: 90svh; }
    .hero-media { background: linear-gradient(0deg, rgba(8,8,10,.7125) 0%, rgba(8,8,10,.39) 65%, rgba(8,8,10,.18)), var(--home-hero, url('/assets/images/photography/cowes-orange-race.png')) 58% center / cover no-repeat; }
    .hero-content { padding-bottom: 90px; }
    .hero h1 { font-size: clamp(3.6rem, 14vw, 6.8rem); }
    .hero-number { display: none; }
    .alert-inner { grid-template-columns: auto 1fr; padding-block: 18px; }
    .alert-inner > a { display: none; }
    .alert-event { flex-wrap: wrap; gap: 5px 12px; }
    .alert-event small { width: 100%; }
    .section-heading, .standings-layout, .film-heading { grid-template-columns: 1fr; }
    .section-heading { gap: 28px; }
    .standings-copy { position: static; }
    .stats-grid { grid-template-columns: repeat(2, 1fr); }
    .stats-grid > div,.stats-grid > a { min-height: 150px; border-bottom: 1px solid rgba(255,255,255,.24); }
    .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 36px; }
    .footer-grid > div:first-child { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
    :root { --shell: calc(100% - 28px); }
    .hero-actions { align-items: stretch; flex-direction: column; max-width: 340px; }
    .button { width: 100%; }
    .alert-inner { grid-template-columns: 1fr; gap: 8px; }
    .alert-label { display: none; }
    .alert-event strong { font-size: 1.2rem; }
    .race-grid, .news-grid { grid-template-columns: 1fr; }
    .race-card-image { height: 235px; }
    .stats-grid { grid-template-columns: 1fr 1fr; }
    .stats-grid > div,.stats-grid > a { padding: 24px 18px; }
    .news-card-featured { grid-column: auto; display: block; }
    .news-card-featured .news-image, .news-image { height: 235px; min-height: 0; }
    .standings-table th, .standings-table td { padding-inline: 8px; }
    .standings-table td { font-size: .88rem; }
    .join-section { min-height: 650px; }
    .join-image { background-position: 63% center; }
    .member-inner { grid-template-columns: 1fr; gap: 20px; }
    .member-inner .button { grid-column: auto; }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .footer-grid > div:first-child { grid-column: 1 / -1; }
    .footer-bottom { align-items: flex-start; flex-direction: column; gap: 10px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; transition-delay: 0s !important; }
}

/* Championship routes */
.section-cta { display: flex; justify-content: flex-end; margin-top: 42px; }
.stats-grid-three { grid-template-columns: repeat(3, 1fr); }
.empty-state { padding: 38px; color: #575b62; background: #fff; border: 1px solid #dedfe2; }
.empty-state strong { display: block; margin-bottom: 8px; color: var(--ink); font-size: 1.35rem; text-transform: uppercase; }
.empty-state p { margin: 0; line-height: 1.6; }
.empty-state-dark { color: var(--color-text-secondary); background: var(--color-bg-surface); border-color: var(--color-border-subtle); }
.empty-state-dark strong { color: #fff; }
.table-scroll { width: 100%; overflow-x: auto; scrollbar-color: var(--red) #22252a; }

.photo-story { min-height: 700px; display: grid; grid-template-columns: 1.2fr .8fr; grid-template-rows: 1fr 1fr; color: #fff; background: var(--ink); }
.photo-story-main { grid-row: 1 / 3; min-height: 700px; overflow: hidden; }
.photo-story-main img, .photo-story-side img { width: 100%; height: 100%; object-fit: cover; }
.photo-story-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(45px, 6vw, 100px); background: var(--color-bg-surface); }
.photo-story-copy h2 { margin: 0; font-family: var(--font-display); font-size: clamp(2.8rem, 4.7vw, 5.7rem); font-weight: 900; line-height: .86; letter-spacing: -.065em; text-transform: uppercase; font-synthesis:none; }
.photo-story-copy h2 em { color: var(--red); font-style: italic; }
.photo-story-copy > p:last-child { max-width: 520px; color: var(--color-text-secondary); line-height: 1.65; }
.photo-story-side { min-height: 350px; overflow: hidden; }

.page-hero { position: relative; min-height: 650px; display: flex; align-items: end; overflow: hidden; color: #fff; background: #090b0e; }
.page-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,6,8,.72), rgba(4,6,8,.3975) 55%, rgba(4,6,8,.06)), linear-gradient(0deg, rgba(4,6,8,.69), transparent 62%), var(--season-hero, url('/assets/images/photography/cowes-pack.png')) center / cover; }
.page-hero::before,.event-hero::before,.directory-hero::before,.content-hero::before,.hero-media{animation:hero-image-in 1.15s cubic-bezier(.22,1,.36,1) both}@keyframes hero-image-in{from{opacity:.15;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}
.page-hero::after { content: ""; position: absolute; inset: auto -8vw -18vw auto; width: 52vw; height: 52vw; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; }
.page-hero-content { position: relative; z-index: 1; padding: 160px 0 90px; }
.page-hero h1 { font-size: clamp(5rem, 10vw, 10rem); }
.page-hero h1 em { color: var(--red); font-style: italic; }
.page-hero-content > p:not(.eyebrow) { max-width: 660px; color: rgba(255,255,255,.72); font-size: 1.1rem; line-height: 1.65; }
.class-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.class-chips span { display: flex; align-items: center; gap: 9px; padding: 9px 13px; color: rgba(255,255,255,.72); border: 1px solid rgba(255,255,255,.22); font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.class-chips b { color: #fff; font-size: .95rem; }

.season-list { border-top: 3px solid var(--red); }
.season-event { min-height: 190px; display: grid; grid-template-columns: 240px 110px 175px 1fr 52px; align-items: center; border-bottom: 1px solid #d8d9dc; background: #fff; }
.season-event-image { height: 190px; overflow: hidden; }
.season-event-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.season-event:hover .season-event-image img { transform: scale(1.035); }
.season-event-round, .season-event-date, .season-event-title { padding: 24px; }
.season-event-round { display: flex; flex-direction: column; align-items: center; border-right: 1px solid #e1e2e4; }
.season-event-round span, .season-event-date span { color: #777b82; font-size: .62rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.season-event-round strong { font-family: var(--font-mono-data); font-size: 3.4rem; line-height: 1; letter-spacing: -.1em; }
.season-event-date { display: flex; flex-direction: column; gap: 10px; }
.season-event-date time { font-weight: 900; }
.season-event-title h2 { margin: 10px 0 5px; font-size: clamp(1.55rem, 2.3vw, 2.75rem); letter-spacing: -.045em; }
.season-event-title p { margin: 0; color: #6e7279; }
.season-event-link { width: 40px; height: 40px; display: grid; place-items: center; color: #fff; background: var(--ink); text-decoration: none; }
.event-status { display: inline-flex; align-items: center; width: max-content; padding: 7px 9px; color: #fff; background: #4b4f56; font-size: .6rem; font-weight: 950; letter-spacing: .11em; text-transform: uppercase; }
.status-live, .status-entries_open { background: var(--red); }
.status-completed, .status-official, .status-official_results { background: #14723c; }
.status-cancelled { background: #555; text-decoration: line-through; }
.status-postponed, .status-provisional, .status-provisional_results { color: #151515; background: var(--color-warning); }
.season-switcher { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 48px; }
.season-switcher span { margin-right: 10px; color: #71757c; font-size: .68rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.season-switcher a { padding: 9px 12px; color: #34373c; border: 1px solid #d5d6d8; text-decoration: none; font-size: .75rem; font-weight: 900; }
.season-switcher a.active, .season-switcher a:hover { color: #fff; background: var(--red); border-color: var(--red); }

.event-hero { position: relative; min-height: 720px; display: flex; align-items: end; overflow: hidden; color: #fff; background: #090b0e; }
.event-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,5,7,.72), rgba(3,5,7,.4125) 52%, rgba(3,5,7,.06)), linear-gradient(0deg, rgba(3,5,7,.675), transparent 58%), var(--event-image) center / cover; }
.event-hero::after { content: ""; position: absolute; inset: 0; opacity: .11; background-image: linear-gradient(rgba(255,255,255,.16) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.16) 1px, transparent 1px); background-size: 80px 80px; mask-image: linear-gradient(to right, #000, transparent); }
.event-hero-inner { position: relative; z-index: 1; padding: 160px 0 76px; }
.event-kicker { display: flex; align-items: center; gap: 16px; font-size: .68rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.event-round-label { margin: 34px 0 7px; color: var(--red); font-size: .8rem; font-weight: 950; letter-spacing: .15em; text-transform: uppercase; }
.event-hero h1 { max-width: 1120px; font-size: clamp(4rem, 8.2vw, 9rem); }
.event-meta { display: flex; flex-wrap: wrap; gap: 0; margin-top: 44px; border-top: 1px solid rgba(255,255,255,.25); }
.event-meta > span { min-width: 190px; display: flex; flex-direction: column; gap: 7px; padding: 20px 40px 0 0; font-size: .92rem; font-weight: 800; }
.event-meta small { color: rgba(255,255,255,.5); font-size: .6rem; letter-spacing: .13em; text-transform: uppercase; }
.event-nav { position: sticky; top: 72px; z-index: 20; color: #fff; background: rgba(10,12,15,.96); border-bottom: 1px solid var(--color-border-subtle); backdrop-filter: blur(14px); }
.event-nav .shell { display: flex; overflow-x: auto; }
.event-nav a { flex: 0 0 auto; display: flex; align-items: center; gap: 8px; padding: 21px 24px; color: #a8abb1; border-bottom: 3px solid transparent; text-decoration: none; font-size: .68rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.event-nav a.active, .event-nav a:hover { color: #fff; border-color: var(--red); }
.event-nav a span { display: grid; min-width: 20px; height: 20px; place-items: center; padding: 0 5px; color: #fff; background: #292d33; border-radius: 99px; font-family: var(--font-mono-data); font-size: .62rem; }
.event-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, .55fr); gap: clamp(40px, 6vw, 90px); padding-top: 80px; padding-bottom: 110px; }
.event-section { padding: 0 0 74px; margin-bottom: 74px; border-bottom: 1px solid #d8dade; }
.event-section h2, .data-section-heading h2 { margin: 0; font-size: clamp(2.7rem, 5vw, 5.4rem); }
.event-lead { max-width: 820px; color: #4f535a; font-size: 1.15rem; line-height: 1.75; }
.event-overview > .event-lead { margin-top: 24px; }
.event-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-top: 38px; background: #d9dade; border: 1px solid #d9dade; }
.event-facts div { min-height: 112px; display: flex; flex-direction: column; justify-content: center; gap: 9px; padding: 22px; background: #fff; }
.event-facts span { color: #777b82; font-size: .62rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.event-facts strong { font-size: 1rem; text-transform: uppercase; }
.data-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 36px; }
.data-section-heading > span { padding: 9px 12px; color: #fff; background: var(--ink); font-size: .64rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.class-data-block:not([hidden]) + .class-data-block:not([hidden]) { margin-top: 42px; }
.class-data-block h3 { display: flex; align-items: center; gap: 10px; margin: 0; padding: 13px 16px; color: #fff; background: #15181c; font-size: .8rem; letter-spacing: .11em; text-transform: uppercase; }
.class-data-block h3 span { display: grid; width: 30px; height: 30px; place-items: center; background: var(--red); }
.data-class-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 16px; }
.data-class-tabs button { min-width: 92px; padding: 12px 17px; color: var(--ink); background: #fff; border: 1px solid #d9dade; font: inherit; font-size: .7rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.data-class-tabs button[aria-selected="true"], .data-class-tabs button:hover { color: #fff; background: var(--red); border-color: var(--red); }
.class-data-block[hidden] { display: none; }
.event-table { width: 100%; min-width: 680px; border-collapse: collapse; background: #fff; }
.event-table th { padding: 14px 12px; color: #777b82; background: #f1f1ef; border-bottom: 1px solid #d9dade; text-align: left; font-size: .59rem; letter-spacing: .1em; text-transform: uppercase; }
.event-table td { padding: 15px 12px; border-bottom: 1px solid #e4e5e7; font-size: .82rem; }
.event-table td:first-child { width: 70px; font-family: var(--font-mono-data); }
.table-status { color: #14723c; font-size: .62rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.fastest-lap { display: inline-grid; min-width: 25px; height: 20px; margin-left: 9px; place-items: center; color: #fff; background: #7b20b7; font-size: .54rem; font-weight: 900; }
.fastest-lap[data-fastest-lap-time]{cursor:help}
.fastest-lap[data-fastest-lap-time]:focus-visible{outline:2px solid #fff;outline-offset:2px}
.fastest-lap-tooltip{position:fixed;z-index:3000;max-width:220px;padding:9px 12px;border-top:2px solid #a138d5;background:#151820;color:#fff;box-shadow:0 9px 26px #0005;font-size:.72rem;font-weight:800;line-height:1.3;white-space:nowrap;pointer-events:none}
.fastest-lap-tooltip[hidden]{display:none}
.event-sidebar { min-width: 0; }
.venue-panel, .info-panel { margin-bottom: 22px; padding: 28px; background: #fff; border-top: 3px solid var(--red); box-shadow: 0 15px 45px rgba(18,22,28,.08); }
.venue-panel h2, .info-panel h2 { margin: 0 0 8px; font-family: var(--font-display); font-size: 2rem; letter-spacing: -.04em; text-transform: uppercase; }
.venue-panel > p:not(.eyebrow), .info-panel > p:not(.eyebrow) { color: #646970; line-height: 1.6; }
.venue-panel iframe, .map-placeholder { width: calc(100% + 56px); height: 320px; margin: 24px -28px 0; border: 0; background: #dfe3e5; }
.map-placeholder { display: grid; place-items: center; padding: 30px; color: #656970; text-align: center; }
.panel-link { display: flex; justify-content: space-between; padding-top: 20px; color: var(--red); text-decoration: none; font-size: .68rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.event-action-panel .button { width: 100%; margin-top: 15px; }
.event-gallery { padding: 100px 0 120px; color: #fff; background: var(--ink); }
.event-gallery .section-heading { margin-bottom: 45px; }
.gallery-mosaic { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.gallery-item { width: 100%; min-width: 0; aspect-ratio: 1; margin: 0; overflow: hidden; background: #1a1d22; }
.gallery-item img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .45s; }
.gallery-item:hover img { transform: scale(1.025); }
.legacy-gallery-page { min-height: 70vh; padding: clamp(120px,12vw,180px) 0 90px; }
.legacy-gallery-page h1 { max-width: 900px; margin: 0 0 20px; font-family: var(--font-display); font-size: clamp(3rem,8vw,7rem); text-transform: uppercase; }
.legacy-gallery-page > .shell > p:not(.eyebrow) { max-width: 760px; line-height: 1.65; }
.legacy-gallery-page .gallery-mosaic { margin: 38px 0; }
.event-main{position:relative;transition:opacity .22s ease,transform .32s cubic-bezier(.2,.7,.2,1)}
.event-main.is-switching{min-height:360px;opacity:.18;transform:translateY(16px);pointer-events:none}
.event-main.is-switching::after{content:'';position:absolute;z-index:3;left:50%;top:95px;width:34px;height:34px;margin-left:-17px;border:3px solid rgba(225,6,0,.2);border-top-color:var(--red);border-radius:50%;animation:event-loading .65s linear infinite}
.event-main.is-arriving{opacity:0;transform:translateY(22px)}
@keyframes event-loading{to{transform:rotate(360deg)}}
.mobile-event-actions { display: none; }

.standings-hero::before { background-image: linear-gradient(90deg, rgba(4,6,8,.72), rgba(4,6,8,.375) 55%, rgba(4,6,8,.06)), linear-gradient(0deg, rgba(4,6,8,.69), transparent 62%), var(--championship-hero, url('/assets/images/photography/cowes-green-air.png')); }
.article-hero::before { background-image:linear-gradient(90deg,rgba(4,6,8,.72),rgba(4,6,8,.345)),linear-gradient(0deg,rgba(4,6,8,.69),transparent 62%),var(--article-image); }
.article-hero h1 { max-width:1100px; font-size:clamp(3.7rem,8vw,8rem); }
.article-body { max-width:860px; color:#292d33; font-size:1.13rem; line-height:1.9; }.article-body p{margin:0 0 1.5em}.article-body ul,.article-body ol{margin:1.4em 0;padding-left:1.5em}.article-body a{color:var(--red);font-weight:800}.article-body img{display:block;width:100%;height:auto;margin:42px 0;border-radius:4px;box-shadow:0 18px 45px rgba(10,12,15,.14)}
.news-body h3 a { text-decoration:none; }
.class-tabs-large { margin-top: 34px; }
.class-tabs-large a { width: 58px; height: 54px; }
.championship-table-section .data-section-heading { margin-bottom: 40px; }
.championship-scroll { border-top: 3px solid var(--red); }
.standings-table-light { min-width: 760px; color: var(--ink); background: #fff; }
.standings-table-light th { color: #777b82; background: #ececea; border-color: #d9dade; }
.standings-table-light td { border-color: #e2e3e5; }
.standings-table-light .position { color: #fff; }
.championship-legend { display: flex; gap: 24px; margin: -20px 0 18px; color: #686b72; font-size: .7rem; font-weight: 800; text-transform: uppercase; }
.championship-legend span { display: flex; align-items: center; gap: 8px; }
.championship-matrix { min-width: 1040px; }
.championship-matrix th:not(:nth-child(2)):not(:nth-child(3)), .championship-matrix td:not(:nth-child(2)):not(:nth-child(3)) { text-align: center; }
.championship-matrix td:nth-child(2) small, .team-championship td small { display: block; margin-top: 5px; color: #858890; font-size: .63rem; font-weight: 800; }
.championship-matrix .round-score { min-width: 60px; white-space: nowrap; }
.championship-matrix .round-score .fastest-lap { margin-left: 4px; }
.championship-matrix .counting-total { color: #fff; background: var(--red); }
.team-championship { margin-top: 80px; }

@media (max-width: 1050px) {
    .season-event { grid-template-columns: 180px 90px 150px 1fr 44px; }
    .season-event-round, .season-event-date, .season-event-title { padding: 18px; }
    .event-layout { grid-template-columns: 1fr; }
    .event-sidebar { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
    .venue-panel { grid-row: span 2; }
}

@media (max-width: 760px) {
    .photo-story { display: block; }
    .photo-story-main { min-height: 490px; }
    .photo-story-side { height: 280px; }
    .page-hero, .event-hero { min-height: 620px; }
    .page-hero-content, .event-hero-inner { padding-top: 130px; padding-bottom: 60px; }
    .season-event { grid-template-columns: 78px 1fr 42px; grid-template-rows: 180px auto auto; }
    .season-event-image { grid-column: 1 / -1; height: 180px; }
    .season-event-round { grid-row: 2 / 4; height: 100%; }
    .season-event-date { padding-bottom: 4px; }
    .season-event-title { grid-column: 2; padding-top: 8px; }
    .season-event-link { grid-column: 3; grid-row: 2 / 4; align-self: center; }
    .event-meta > span { min-width: 50%; }
    .event-nav { top: 70px; }
    .event-nav a { padding-inline: 18px; }
    .event-facts { grid-template-columns: 1fr; }
    .event-sidebar { display: block; }
    .gallery-mosaic { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .mobile-event-actions { position: fixed; inset: auto 0 0; z-index: 80; display: grid; grid-template-columns: repeat(3, 1fr); color: #fff; background: #111419; border-top: 1px solid #34383e; }
    .mobile-event-actions a { padding: 16px 8px; text-align: center; text-decoration: none; font-size: .65rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; border-right: 1px solid #34383e; }
    .event-page .site-footer { padding-bottom: 80px; }
}

@media (max-width: 520px) {
    .stats-grid-three { grid-template-columns: 1fr; }
    .stats-grid-three > div { min-height: 125px; }
    .page-hero h1, .event-hero h1 { font-size: clamp(3.6rem, 18vw, 5.8rem); }
    .event-meta > span { min-width: 100%; padding-top: 14px; }
    .data-section-heading { align-items: start; flex-direction: column; }
    .gallery-mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
}

/* 2026 navigation and editable-home refinements */
.header-inner{padding-inline:22px;background:rgba(8,10,13,.44);border:1px solid rgba(255,255,255,.09);border-top:0}.brand{flex:0 0 auto}.primary-nav{margin-left:auto}.mega-leaders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mega-leaders li{grid-template-columns:46px 36px 1fr;grid-template-rows:auto auto;padding:9px 12px;background:#15181d;border:1px solid #292d34}.mega-leaders img{grid-row:1/3;width:46px;height:46px;object-fit:cover;border-radius:50%}.mega-leaders li>span{grid-row:1/3;display:grid;place-items:center;font-size:.88rem}.mega-leaders strong{font-size:.78rem}.mega-leaders small{font-size:.65rem}
.home-page #main-content{display:flex;flex-direction:column}.featured-driver{padding:clamp(80px,10vw,145px) 0;color:#fff;background:#111419}.featured-driver-grid{display:grid;grid-template-columns:1fr minmax(360px,.9fr);gap:clamp(55px,9vw,140px);align-items:center}.featured-driver h2{margin:0;font-family:var(--font-display);font-size:clamp(3.6rem,6.5vw,7rem);font-weight:950;line-height:.86;letter-spacing:-.07em;text-transform:uppercase}.featured-driver h2 em{color:var(--red)}.featured-driver h3{margin:24px 0 8px;font-size:1.8rem;text-transform:uppercase}.featured-driver p{max-width:620px;color:#aeb2b9;line-height:1.75}.featured-driver small{display:block;color:#777d86;font-size:.75rem;font-weight:800;text-transform:uppercase}.featured-driver .button{margin-top:28px}.featured-driver figure{height:560px;margin:0;overflow:hidden;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%)}.featured-driver figure img{width:100%;height:100%;object-fit:cover}.driver-rank{display:inline-block;margin-top:25px;padding:9px 12px;color:#fff;background:var(--red);font-size:.72rem;font-weight:900;text-transform:uppercase}.preview-banner{position:fixed;inset:0 0 auto;z-index:200;display:flex;justify-content:center;gap:20px;padding:10px 20px;color:#fff;background:#e10600;font-size:.78rem}.preview-banner a{font-weight:900}.preview-banner~.site-header{top:38px}
@media(max-width:1000px){.mega-leaders{grid-template-columns:1fr}.featured-driver-grid{grid-template-columns:1fr}.featured-driver figure{height:440px;grid-row:1}.site-header .header-inner{border-inline:0}}
@media(max-width:760px){.header-inner{padding-inline:0;background:transparent;border:0}.featured-driver figure{height:330px}.preview-banner{justify-content:space-between;gap:8px}.preview-banner span{display:none}}

.member-page{color:#fff;background:#0b0e12}.member-page .site-footer{background:#080a0d}.member-auth{min-height:100vh;display:grid;place-items:center;padding:160px 24px 90px;background:radial-gradient(circle at 80% 20%,rgba(225,6,0,.18),transparent 30%),linear-gradient(135deg,#080a0d,#15191f)}.member-auth-panel{width:min(560px,100%);padding:clamp(30px,5vw,58px);background:rgba(19,23,29,.96);border:1px solid #353b45;box-shadow:0 30px 90px rgba(0,0,0,.42)}.member-auth-wide{width:min(760px,100%)}.member-auth h1,.member-portal h1{margin:0 0 32px;font-family:var(--font-display);font-size:clamp(3.5rem,7vw,7rem);font-weight:950;line-height:.86;letter-spacing:-.07em;text-transform:uppercase}.member-auth-panel>p:last-child{margin-top:28px;color:#959ba4}.member-auth a,.member-portal a{color:inherit}.member-form{display:grid;gap:19px}.member-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.member-form label{display:grid;gap:8px;color:#aeb4bd;font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.member-form input,.member-form textarea,.member-form select{width:100%;min-height:50px;padding:12px 14px;color:#fff;background:#0c0f13;border:1px solid #424a56;border-radius:4px}.member-form textarea{resize:vertical}.member-form small{color:#747b85;letter-spacing:0;text-transform:none}.member-form .wide{grid-column:1/-1}.member-message{padding:14px 16px;border-left:4px solid}.member-message.error{color:#ffc9c7;background:#351314;border-color:#e10600}.member-message.success{color:#d3ffe5;background:#123220;border-color:#29b765}.member-portal{min-height:100vh;padding:155px 0 120px;background:radial-gradient(circle at 100% 0,rgba(225,6,0,.13),transparent 28%),#0b0e12}.member-portal-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}.member-portal-header h1{margin-bottom:12px}.member-portal-header p:last-child{color:#959ba4}.member-text-button{display:inline-flex;padding:11px 0;color:#fff;background:none;border:0;border-bottom:2px solid #e10600;font-weight:900;text-decoration:none;cursor:pointer}.member-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);gap:22px}.member-card{padding:clamp(24px,3vw,38px);background:linear-gradient(145deg,#191e25,#12161b);border:1px solid #303640;border-radius:12px}.member-card h2{margin:0;font-size:1.7rem;text-transform:uppercase}.member-card-heading,.member-card-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.member-card-heading img{width:110px;height:110px;object-fit:cover;border-radius:50%;border:3px solid #e10600}.member-check{display:flex!important;grid-template-columns:20px 1fr;align-items:center}.member-check input{width:18px;min-height:18px}.member-grid aside{display:grid;align-content:start;gap:22px}.membership-card .button{margin-top:20px}.muted{color:#858c96;line-height:1.6}.member-card-title a{color:#ff4c46;font-size:.72rem;font-weight:900;text-decoration:none;text-transform:uppercase}.member-boat{display:grid;grid-template-columns:60px 1fr auto;align-items:center;gap:14px;padding:15px 0;text-decoration:none;border-top:1px solid #303640}.member-boat img{width:60px;height:48px;object-fit:cover}.member-boat strong,.member-boat small{display:block}.member-boat small{margin-top:5px;color:#818892;font-size:.7rem}.member-boat b{color:#e10600}.member-narrow{max-width:920px}
@media(max-width:900px){.member-grid{grid-template-columns:1fr}.member-portal{padding-top:120px}}@media(max-width:620px){.member-form-grid{grid-template-columns:1fr}.member-form .wide{grid-column:auto}.member-portal-header{align-items:start;flex-direction:column}.member-card-heading{align-items:start}.member-card-heading img{width:80px;height:80px}}

/* Editorial motion and compact news treatment */
.motion-js main .hero h1:not(.motion-visible),.motion-js main .hero-copy:not(.motion-visible),.motion-js main .hero-actions:not(.motion-visible),.motion-js main .event-kicker:not(.motion-visible),.motion-js main .event-round-label:not(.motion-visible),.motion-js main .event-hero h1:not(.motion-visible),.motion-js main .event-meta:not(.motion-visible),.motion-js main .page-hero-content>.eyebrow:not(.motion-visible),.motion-js main .page-hero-content>h1:not(.motion-visible),.motion-js main .page-hero-content>p:not(.motion-visible),.motion-js main .editorial-hero .shell>p:not(.motion-visible),.motion-js main .editorial-hero h1:not(.motion-visible),.motion-js main .directory-hero .shell>p:not(.motion-visible),.motion-js main .directory-hero h1:not(.motion-visible),.motion-js main .content-hero .shell>p:not(.motion-visible),.motion-js main .content-hero h1:not(.motion-visible),.motion-js main .member-auth h1:not(.motion-visible),.motion-js main .member-portal h1:not(.motion-visible){opacity:0}
.motion-enabled .motion-reveal,.motion-enabled .motion-type,.motion-enabled .motion-copy,.motion-enabled .motion-media,.motion-enabled .motion-row{opacity:0}
.motion-enabled .motion-reveal{transform:translateY(20px);transition:opacity .72s ease var(--motion-delay,0ms),transform .82s cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms)}
.motion-enabled .motion-type{transform:translateY(24px);transition:opacity .72s ease var(--motion-delay,0ms),transform .88s cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms)}
.motion-enabled .motion-copy{transform:translateY(15px);transition:opacity .66s ease var(--motion-delay,0ms),transform .78s cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms)}
.motion-enabled .motion-media{transform:translateY(18px) scale(1.018);transition:opacity .78s ease var(--motion-delay,0ms),transform 1s cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms)}
.motion-enabled .motion-row{transform:translateY(14px);transition:opacity .52s ease var(--motion-delay,0ms),transform .65s cubic-bezier(.22,1,.36,1) var(--motion-delay,0ms)}
.motion-enabled .motion-visible{opacity:1;transform:none}
.motion-letter-heading .motion-word{display:inline-block;white-space:nowrap}
.motion-letter-heading .motion-letter{display:inline-block}
.motion-enabled .motion-letter-heading .motion-letter{opacity:0;transform:translateY(.52em);transition:opacity .55s ease,transform .72s cubic-bezier(.22,1,.36,1);transition-delay:var(--letter-delay,0ms)}
.motion-enabled .motion-letter-heading.motion-visible .motion-letter{opacity:1;transform:none}
.motion-enabled img.motion-image{transition:opacity .65s ease,transform .9s cubic-bezier(.22,1,.36,1)}
.motion-enabled img.motion-image:not(.is-loaded){opacity:0;transform:scale(1.025)}
.motion-js .hero[data-motion-bg] .hero-media,.motion-js .page-hero[data-motion-bg]::before,.motion-js .event-hero[data-motion-bg]::before,.motion-js .directory-hero[data-motion-bg]::before,.motion-js .content-hero[data-motion-bg]::before,.motion-enabled .hero.motion-bg:not(.is-loaded) .hero-media,.motion-enabled .page-hero.motion-bg:not(.is-loaded)::before,.motion-enabled .event-hero.motion-bg:not(.is-loaded)::before,.motion-enabled .directory-hero.motion-bg:not(.is-loaded)::before,.motion-enabled .content-hero.motion-bg:not(.is-loaded)::before{animation-play-state:paused}
.motion-enabled .join-section.motion-bg:not(.is-loaded) .join-image{opacity:0}
.motion-enabled .stat-card-visual.motion-bg::before{content:"";position:absolute;inset:0;z-index:0;background:#26262c;opacity:1;transition:opacity .75s ease}
.motion-enabled .stat-card-visual.motion-bg.is-loaded::before{opacity:0;pointer-events:none}
.motion-enabled .driver-profile-card.motion-bg::after{content:"";position:absolute;inset:0;z-index:1;background:#111;opacity:1;pointer-events:none;transition:opacity .75s ease}
.motion-enabled .driver-profile-card.motion-bg.is-loaded::after{opacity:0}
.motion-enabled .driver-detail>header.motion-bg::before{content:"";position:absolute;inset:0;z-index:0;background:#111;opacity:1;transition:opacity .75s ease}
.motion-enabled .driver-detail>header.motion-bg.is-loaded::before{opacity:0;pointer-events:none}
.motion-enabled .mega-feature.motion-bg{position:relative}
.motion-enabled .mega-feature.motion-bg::before,.motion-enabled .mega-leader-photo.motion-bg::before{content:"";position:absolute;inset:0;z-index:0;background:#15181d;opacity:1;pointer-events:none;transition:opacity .6s ease}
.motion-enabled .mega-feature.motion-bg.is-loaded::before,.motion-enabled .mega-leader-photo.motion-bg.is-loaded::before{opacity:0}
.motion-enabled .mega-feature.motion-bg>span,.motion-enabled .mega-feature.motion-bg>strong,.motion-enabled .mega-feature.motion-bg>small{position:relative;z-index:1}
.heading-size-compact{font-size:clamp(2.25rem,4vw,4.4rem)!important}.heading-size-standard{font-size:clamp(3rem,5.5vw,6rem)!important}.heading-size-large{font-size:clamp(3.7rem,7vw,7.8rem)!important}.heading-size-display{font-size:clamp(4.2rem,8.7vw,9.4rem)!important}
.directory-hero:before{background:linear-gradient(90deg,rgba(3,5,7,.7125) 0%,rgba(3,5,7,.51) 46%,rgba(3,5,7,.09) 100%),var(--directory-hero,url('/assets/images/photography/cowes-pack.png')) center/cover!important}
.media-page-hero{min-height:520px}.media-page-hero h1{line-height:.86}.media-gallery-open{overflow:hidden}.media-gallery-browser[hidden]{display:none}.media-gallery-browser{position:fixed;z-index:800;inset:0;overflow:auto;padding:55px 24px;background:rgba(4,6,9,.96);color:#fff;opacity:0;transform:translateY(24px);transition:opacity .3s ease,transform .3s ease}.media-gallery-browser.is-open{opacity:1;transform:none}.media-gallery-browser-shell{width:min(1380px,100%);margin:auto}.media-gallery-browser header{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:30px}.media-gallery-browser h2{margin:.1em 0;font-family:var(--font-display);font-size:clamp(2.2rem,5vw,5rem);line-height:.9;text-transform:uppercase}.media-gallery-browser header p:last-child{color:#aeb2ba}.media-gallery-browser [data-media-gallery-close]{flex:0 0 52px;width:52px;height:52px;border:1px solid #555;background:#161a20;color:#fff;font-size:2rem;cursor:pointer}.media-gallery-browser [data-media-gallery-close]:hover{background:var(--red)}.media-gallery-thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.media-gallery-thumbnail{height:230px;padding:0;border:0;background:#15191e;overflow:hidden;cursor:zoom-in}.media-gallery-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.media-gallery-thumbnail:hover img{transform:scale(1.045)}@media(max-width:900px){.media-gallery-thumbnails{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.media-page-hero{min-height:460px}.media-gallery-browser{padding:30px 12px}.media-gallery-thumbnails{grid-template-columns:repeat(2,1fr);gap:7px}.media-gallery-thumbnail{height:145px}}
.team-directory-groups[hidden]{display:none!important}.driver-team-group{padding:34px;background:#fff;border-top:4px solid #111;box-shadow:0 16px 44px rgba(8,12,16,.08)}.driver-team-group+ .driver-team-group{margin-top:10px}.driver-team-group header{padding-bottom:24px;border-bottom:1px solid #e2e4e6}.driver-team-group header img{width:180px;height:125px;padding:0;background:transparent;object-fit:contain}.driver-team-group header h2{font-size:clamp(1.8rem,3vw,3rem)}.driver-team-group header .eyebrow{color:var(--red)}@media(max-width:720px){.driver-team-group{padding:20px 14px}.driver-team-group header{align-items:flex-start}.driver-team-group header img{width:115px;height:85px}.driver-team-group header h2{font-size:1.7rem}}
@media(max-width:860px){.header-inner{padding-inline:16px!important}.primary-nav{margin-left:0;padding:24px 20px max(32px,env(safe-area-inset-bottom));gap:0}.primary-nav>.nav-group{flex:0 0 auto}.primary-nav>.nav-group:last-child{margin-top:auto}.primary-nav>.nav-group>a,.mobile-more-toggle{min-height:62px;align-items:center;padding:18px 12px}.primary-nav .nav-account{display:flex;justify-content:center;margin-top:24px;background:#171a1f;border-color:#484d55}.mobile-more-links a{min-height:48px;display:flex;align-items:center;padding:12px;color:#d7dae0}.nav-group-more.mobile-more-open .mobile-more-links{max-height:none}.event-layout,.event-main,.event-sidebar,.event-section,.class-data-block{min-width:0}.event-nav .shell{width:100%;padding-inline:14px;margin:0;scrollbar-width:none}.event-nav .shell::-webkit-scrollbar{display:none}.event-nav a{padding:18px 15px}.event-hero h1{max-width:100%;overflow-wrap:anywhere;word-break:normal}.table-scroll{max-width:100%;overscroll-behavior-inline:contain}.venue-panel iframe,.map-placeholder{max-width:calc(100% + 56px)}.data-class-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}.data-class-tabs button{flex:0 0 auto}.event-rich-text img{height:auto;max-width:100%}}
@media(max-width:520px){.event-hero{min-height:560px}.event-hero-inner{padding-top:112px;padding-bottom:42px}.event-kicker{align-items:flex-start;flex-direction:column;gap:10px}.event-round-label{margin-top:24px}.event-meta{display:grid;grid-template-columns:1fr 1fr;margin-top:28px}.event-meta>span{min-width:0!important;padding:14px 12px 0 0}.event-meta>span:last-child{grid-column:1/-1}.event-layout{padding-top:50px;padding-bottom:85px}.event-section{padding-bottom:48px;margin-bottom:48px}.event-section h2,.data-section-heading h2{font-size:clamp(2.25rem,12vw,3.6rem)}.event-lead{font-size:1rem;line-height:1.65}.event-facts div{min-height:92px}.venue-panel,.info-panel{padding:22px}.venue-panel iframe,.map-placeholder{width:calc(100% + 44px);max-width:calc(100% + 44px);height:260px;margin-inline:-22px}.mobile-event-actions{grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:env(safe-area-inset-bottom)}.mobile-event-actions a{min-width:0;padding:15px 4px;font-size:.58rem}.gallery-lightbox{grid-template-columns:40px minmax(0,1fr) 40px}.gallery-lightbox figure{min-width:0}}
.latest-section .news-grid{grid-template-columns:minmax(0,1.75fr) minmax(280px,.85fr);grid-template-rows:repeat(2,minmax(0,1fr));gap:18px}.latest-section .news-card{display:block;background:#fff;border-top:3px solid transparent}.latest-section .news-card-featured{grid-row:1/3;border-top-color:var(--red)}.latest-section .news-image{height:145px;min-height:0}.latest-section .news-card-featured .news-image{height:390px}.latest-section .news-body{padding:16px 18px 19px;background:#fff}.latest-section .news-card-featured .news-body{padding:30px}.latest-section .news-body h3{margin:8px 0;font-size:clamp(1.05rem,1.25vw,1.35rem);line-height:1.02;letter-spacing:-.025em;text-transform:uppercase}.latest-section .news-card-featured .news-body h3{font-size:clamp(2.4rem,4.2vw,4.7rem);line-height:.88;letter-spacing:-.04em}.latest-section .news-body>p:last-child{margin-bottom:0;color:#62666d;line-height:1.5}.latest-section .news-card:not(.news-card-featured) .news-body>p:last-child{display:none}
.archive-boat-form{display:flex;align-items:center;gap:18px;margin-top:18px;padding:18px 4px}.archive-boat-form button{padding:0;color:#ff5a55;background:none;border:0;border-bottom:1px solid #ff5a55;font-weight:900;cursor:pointer}.archive-boat-form small{color:#7f8690}
@media(max-width:860px){.latest-section .news-grid{grid-template-columns:1fr;grid-template-rows:auto}.latest-section .news-card-featured{grid-row:auto}.latest-section .news-card-featured .news-image{height:320px}.preview-page .primary-nav{top:108px}}@media(max-width:620px){.latest-section .news-card{grid-template-columns:110px minmax(0,1fr)}.latest-section .news-image{min-height:140px}.latest-section .news-card-featured{display:block}.latest-section .news-card-featured .news-image{height:230px}.latest-section .news-card-featured .news-body h3{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.page-hero::before,.event-hero::before,.directory-hero::before,.content-hero::before,.hero-media{animation:none}.motion-reveal,.motion-type,.motion-copy,.motion-media,.motion-row,.motion-letter,.motion-image{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important;transition:none!important}.mega-offseason::before,.mega-offseason>*{transition:none!important;transform:none!important}}

/* News and media hubs */
.editorial-hero{min-height:600px;display:flex;align-items:end;padding:180px 0 90px;color:#fff;background:radial-gradient(circle at 80% 25%,rgba(225,6,0,.22),transparent 30%),#0a0c10}.editorial-hero h1 em{color:var(--red);font-style:italic}.editorial-hero p:last-child{max-width:650px;color:#aeb2ba;font-size:1.15rem}.news-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.news-index-grid .news-card{border-top:3px solid #20242a}.news-index-grid .news-card:first-child{grid-column:span 2;grid-row:span 2;border-color:var(--red)}.news-index-grid .news-card:first-child .news-image{height:430px}.news-index-grid .news-body h2{margin:14px 0;font-size:clamp(1.7rem,2.5vw,3rem);line-height:.95;text-transform:uppercase}.public-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:55px;padding-top:25px;border-top:1px solid #d3d3d5}.public-pagination a{color:#111;font-weight:900;text-decoration:none}.public-pagination a[aria-disabled=true]{opacity:.3;pointer-events:none}.media-video-section{color:#fff;background:#0c0f13}.media-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.media-gallery-card{position:relative;height:380px;color:#fff;overflow:hidden;background:#161a20}.media-gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.media-gallery-card span{position:absolute;inset:auto 0 0;padding:70px 24px 24px;background:linear-gradient(transparent,rgba(0,0,0,.9))}.media-gallery-card small,.media-gallery-card strong{display:block}.media-gallery-card small{margin-bottom:8px;color:#d2d3d6;font-size:.7rem;text-transform:uppercase}.media-gallery-card strong{font-size:1.45rem;text-transform:uppercase}.media-gallery-card:hover img{transform:scale(1.04)}.media-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 24px}.video-frame{aspect-ratio:16/9;background:#000}.video-frame iframe{width:100%;height:100%;border:0}.media-video-card h3{margin:18px 0 8px;font-size:1.55rem;text-transform:uppercase}.media-video-card p{color:#969ca5;line-height:1.6}.event-rich-text p{margin:0 0 1em}.event-rich-text ul,.event-rich-text ol{margin:1em 0;padding-left:1.35em}.event-rich-text a{color:var(--red);font-weight:800}.event-rich-text u{text-decoration-thickness:2px;text-underline-offset:3px}@media(max-width:900px){.news-index-grid,.media-gallery-grid{grid-template-columns:1fr 1fr}.news-index-grid .news-card:first-child{grid-column:1/-1}.media-video-grid{grid-template-columns:1fr}}@media(max-width:620px){.news-index-grid,.media-gallery-grid{grid-template-columns:1fr}.news-index-grid .news-card:first-child{grid-column:auto;grid-row:auto}.news-index-grid .news-card:first-child .news-image{height:260px}.media-gallery-card{height:300px}}

/* Championship and season navigation cards */
.mega-championship-panel{display:grid;grid-template-columns:210px minmax(0,1fr);gap:34px;align-items:stretch}.mega-championship-intro{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-right:30px;border-right:1px solid rgba(255,255,255,.14)}.mega-championship-intro p{margin:0;font-family:var(--font-display);font-size:1.7rem;font-weight:900;line-height:.92;letter-spacing:-.035em;text-transform:uppercase}.mega-championship-intro a{display:inline-flex;margin-top:22px;padding:11px 17px;color:#fff;background:var(--red);font-size:.68rem;font-weight:900;letter-spacing:.09em;text-decoration:none;text-transform:uppercase;transition:background .2s ease,transform .2s ease}.mega-championship-intro a:hover,.mega-championship-intro a:focus{background:#ff251f;transform:translateY(-2px)}.mega-leader-cards{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important}.mega-leader-cards li{display:block!important;padding:0 0 12px!important;background:#15181d;border:1px solid #292d34!important}.mega-leader-photo{position:relative;height:112px;margin-bottom:11px;background:linear-gradient(0deg,rgba(5,7,10,.62),rgba(5,7,10,.12)),var(--leader-image) center 24%/cover no-repeat}.mega-leader-photo span{position:absolute;left:10px;bottom:8px;padding:5px 7px;color:#fff!important;background:var(--red);font-size:.68rem!important;font-weight:900}.mega-leader-cards strong,.mega-leader-cards small{display:block;padding-inline:12px}.mega-leader-cards strong{overflow:hidden;font-size:.82rem;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.mega-leader-cards small{margin-top:5px;color:#9297a0;font-size:.64rem}.latest-section .news-card-featured .news-body h3{font-size:clamp(1.85rem,3vw,3.25rem)}
.media-race-galleries{display:grid;gap:70px}.media-race-gallery>header{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.media-race-gallery h3{margin:5px 0 0;font-family:var(--font-display);font-size:clamp(2rem,4vw,4rem);text-transform:uppercase}.media-gallery-photo{height:280px;padding:0;overflow:hidden;border:0;cursor:zoom-in}.media-gallery-photo:first-child{grid-column:span 2;height:430px}.media-gallery-photo img{width:100%;height:100%;object-fit:cover}.gallery-item{padding:0;border:0;cursor:zoom-in}.lightbox-open{overflow:hidden}.gallery-lightbox[hidden]{display:none}.gallery-lightbox{position:fixed;z-index:1000;inset:0;display:grid;grid-template-columns:80px 1fr 80px;align-items:center;padding:30px;background:rgba(2,3,5,.97)}.gallery-lightbox figure{height:calc(100vh - 60px);margin:0;display:grid;grid-template-rows:1fr auto}.gallery-lightbox img{width:100%;height:100%;min-height:0;object-fit:contain}.gallery-lightbox small{padding-top:12px;color:#fff;text-align:center}.gallery-lightbox button{width:54px;height:68px;color:#fff;background:#191d23;border:1px solid #555;font-size:3rem;cursor:pointer}.gallery-lightbox [data-close]{position:absolute;right:24px;top:20px;width:48px;height:48px;z-index:2;font-size:2rem}.gallery-lightbox button:hover{background:var(--red)}@media(max-width:700px){.media-gallery-photo,.media-gallery-photo:first-child{grid-column:auto;height:280px}.gallery-lightbox{grid-template-columns:45px 1fr 45px;padding:70px 5px 10px}.gallery-lightbox button{width:40px;height:56px;font-size:2rem}}
.mega-action-button{display:inline-flex!important;width:max-content;margin-top:22px!important;padding:11px 17px!important;color:#fff!important;background:var(--red)!important;font-size:.68rem!important;font-weight:900!important;letter-spacing:.09em;text-decoration:none!important;text-transform:uppercase;transition:background .2s ease,transform .2s ease}.mega-action-button:hover,.mega-action-button:focus{background:#ff251f!important;transform:translateY(-2px)}.media-gallery-card{padding:0;border:0;text-align:left;cursor:zoom-in}.gallery-hidden-item{display:none!important}

/* Public paddock directory and editable information pages */
.directory-hero,.content-hero{min-height:620px;background:#080b0e;color:#fff;display:flex;align-items:flex-end;padding:180px 0 78px;position:relative;overflow:hidden}.directory-hero:before,.content-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,5,7,.7125) 0%,rgba(3,5,7,.51) 46%,rgba(3,5,7,.09) 100%),url('/assets/images/photography/cowes-pack.png') center/cover}.content-hero:before{background:linear-gradient(90deg,rgba(3,5,7,.705),rgba(3,5,7,.225)),var(--content-hero) center/cover}.directory-hero .shell,.content-hero .shell{position:relative;z-index:1}.directory-hero h1,.content-hero h1{font-family:'OMRA Evogria','Barlow Condensed',Impact,sans-serif;text-transform:uppercase;font-size:clamp(4rem,9vw,9.5rem);line-height:.82;max-width:1000px;margin:.2em 0}.directory-hero h1 em,.content-hero h1 em{color:var(--red);font-family:'OMRA Evogria Italic','OMRA Evogria',sans-serif}.directory-hero .shell>p:last-of-type,.content-hero .shell>p:last-of-type{font-size:1.12rem;max-width:620px;color:rgba(255,255,255,.78);line-height:1.7}.directory-toggle{display:inline-flex;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);padding:5px;margin-top:28px;border-radius:999px;backdrop-filter:blur(12px)}.directory-toggle button{border:0;background:transparent;color:#fff;text-transform:uppercase;font-weight:900;letter-spacing:.12em;padding:13px 28px;border-radius:999px;cursor:pointer}.directory-toggle button[aria-pressed=true]{background:var(--red);box-shadow:0 7px 24px rgba(226,21,38,.35)}
.directory-stage{padding:62px 0 110px;background:#f3f4f5;min-height:650px}.directory-status{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ccd0d3;margin-bottom:28px;padding-bottom:15px;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.directory-status p{margin:0}.directory-status b{background:#111;color:#fff;padding:4px 9px;border-radius:20px;margin-left:8px}.driver-directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.driver-profile-card{aspect-ratio:.73;border:0;text-align:left;position:relative;overflow:hidden;background:#111 var(--driver-image) center/cover;color:#fff;cursor:pointer;padding:0;box-shadow:0 14px 38px rgba(8,12,16,.13);border-radius:3px;will-change:transform}.driver-profile-card:before{content:"";position:absolute;inset:0;background:var(--driver-image) center/cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.driver-profile-card:hover:before{transform:scale(1.07)}.driver-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 26%,rgba(0,0,0,.92) 100%)}.driver-card-number{position:absolute;top:18px;right:18px;z-index:2;font-family:'OMRA Evogria',sans-serif;font-size:1.55rem;font-style:italic}.driver-card-copy{position:absolute;z-index:2;left:22px;right:22px;bottom:21px;display:flex;flex-direction:column}.driver-card-copy small,.driver-card-copy span{font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;color:rgba(255,255,255,.7)}.driver-card-copy strong{font-family:'OMRA Evogria',sans-serif;text-transform:uppercase;font-size:clamp(1.65rem,2.3vw,2.65rem);line-height:.95;margin:8px 0}.driver-card-copy i{color:#ff3545;font-style:normal;font-weight:900;text-transform:uppercase;font-size:.68rem;letter-spacing:.12em;margin-top:15px;transform:translateX(-8px);opacity:0;transition:.25s}.driver-profile-card:hover .driver-card-copy i{transform:none;opacity:1}.team-directory-groups{display:grid;gap:65px}.driver-team-group header{display:flex;align-items:center;gap:25px;margin:0 0 24px}.driver-team-group header img{width:105px;height:75px;object-fit:contain;background:#fff;padding:10px}.driver-team-group header h2{font-family:'OMRA Evogria',sans-serif;text-transform:uppercase;font-size:clamp(2.4rem,4vw,4.5rem);margin:0}.driver-team-group header p{margin:3px 0;color:#667}.directory-empty{background:#fff;padding:60px;max-width:760px}.directory-empty h2{font-family:'OMRA Evogria',sans-serif;font-size:3.5rem;text-transform:uppercase;margin:10px 0}.driver-drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:1000;opacity:0;transition:opacity .38s}.driver-drawer-backdrop.is-open{opacity:1}.driver-drawer{position:fixed;z-index:1001;right:0;top:0;height:100vh;width:min(760px,94vw);background:#fff;overflow-y:auto;transform:translateX(102%);transition:transform .46s cubic-bezier(.2,.8,.2,1);box-shadow:-24px 0 70px rgba(0,0,0,.28)}.driver-drawer.is-open{transform:none}.driver-drawer-close{position:fixed;right:20px;top:16px;z-index:3;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.45);color:#fff;font-size:2rem;cursor:pointer}.driver-drawer-open{overflow:hidden}.driver-detail>header{height:520px;position:relative;background:var(--driver-detail-image) center/cover;color:#fff}.driver-detail>header:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(0,0,0,.7125))}.driver-detail>header>div{position:absolute;z-index:1;left:42px;right:42px;bottom:38px}.driver-detail>header p{font-size:.75rem;letter-spacing:.13em;text-transform:uppercase}.driver-detail>header span{font-family:'OMRA Evogria',sans-serif;color:var(--red);font-size:1.7rem}.driver-detail>header h2{font-family:'OMRA Evogria',sans-serif;font-size:clamp(3.2rem,7vw,6rem);line-height:.83;text-transform:uppercase;margin:7px 0}.driver-team-logo{width:92px;height:58px;object-fit:contain;background:#fff;padding:7px;float:right}.driver-detail-body{padding:42px}.driver-biography{font-size:1.15rem;line-height:1.75}.driver-detail dl{display:grid;grid-template-columns:repeat(3,1fr);margin:35px 0;background:#101317;color:#fff}.driver-detail dl div{padding:20px;border-right:1px solid #2b2e32}.driver-detail dt{font-size:.65rem;color:#999;text-transform:uppercase;letter-spacing:.1em}.driver-detail dd{font-family:'OMRA Evogria',sans-serif;font-size:1.3rem;margin:7px 0 0}.driver-boats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.driver-boats article{background:#f0f1f2;padding:16px}.driver-boats img{width:100%;aspect-ratio:1.5;object-fit:cover;margin-bottom:12px}.driver-boats span,.driver-boats small{display:block;font-size:.7rem;color:#70757b}.driver-boats strong{display:block;font-family:'OMRA Evogria',sans-serif;font-size:1.5rem;text-transform:uppercase}.driver-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.driver-gallery img{width:100%;aspect-ratio:1;object-fit:cover}
.content-editorial,.contact-directory{padding:85px 0 120px;background:#f5f5f4}.content-editorial-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:80px;align-items:start}.rich-content{font-size:1.08rem;line-height:1.8;color:#363b40}.rich-content h2{font-family:'OMRA Evogria',sans-serif;text-transform:uppercase;font-size:clamp(2.4rem,4.2vw,4.8rem);line-height:.92;color:#0b0e11;margin:1.2em 0 .35em}.rich-content h2:first-child{margin-top:0}.rich-content h3{font-family:'OMRA Evogria',sans-serif;text-transform:uppercase;font-size:2rem;color:#101317}.rich-content li{margin:.6em 0}.content-editorial-grid figure{position:sticky;top:120px;margin:0}.content-editorial-grid figure img{width:100%;min-height:500px;object-fit:cover}.content-editorial-grid figure span{display:block;background:#0b0d10;color:#fff;padding:14px;text-transform:uppercase;font-size:.68rem;letter-spacing:.15em}.content-cta{margin-top:50px}.contact-intro{max-width:850px;margin-bottom:70px}.contact-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.contact-card{background:#fff;box-shadow:0 12px 35px rgba(0,0,0,.07)}.contact-card>img{width:100%;aspect-ratio:1.05;object-fit:cover}.contact-card>div{padding:25px}.contact-card small{text-transform:uppercase;color:var(--red);font-weight:900;letter-spacing:.1em}.contact-card h3,.outlet-grid h3{font-family:'OMRA Evogria',sans-serif;text-transform:uppercase;font-size:2rem;margin:8px 0}.contact-card a{display:block;color:#15191c;margin-top:8px}.outlets-heading{margin-top:90px}.outlet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.outlet-grid article{background:#fff;display:grid;grid-template-columns:40% 1fr}.outlet-grid img{width:100%;height:100%;object-fit:cover}.outlet-grid article>div{padding:28px}.outlet-grid address{font-style:normal;color:#687078;line-height:1.6}.outlet-grid article p a{display:block;color:#15191c}.member-gallery-manager{margin-top:24px}.member-gallery-manager>form{margin-top:20px}.member-gallery-drop{display:flex;flex-direction:column;gap:5px;border:2px dashed #c7ccd0;padding:22px;margin-bottom:14px;cursor:pointer}.member-gallery-drop span{font-size:.78rem;color:#737980}.member-gallery-drop input{margin-top:10px}.member-gallery-drop.is-dragging{border-color:var(--red);background:#fff0f1}.member-gallery-manager .sortable-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:22px 0}.member-gallery-manager .sortable-gallery figure{margin:0;cursor:grab}.member-gallery-manager .sortable-gallery img{width:100%;aspect-ratio:1;object-fit:cover}.member-gallery-manager .sortable-gallery span{font-size:.65rem}.member-gallery-manager .is-dragging{opacity:.35}
@media(max-width:1000px){.driver-directory-grid{grid-template-columns:repeat(3,1fr)}.contact-card-grid{grid-template-columns:repeat(2,1fr)}.content-editorial-grid{gap:35px}}@media(max-width:720px){.directory-hero,.content-hero{min-height:560px;padding:145px 0 55px}.driver-directory-grid{grid-template-columns:repeat(2,1fr);gap:8px}.driver-card-copy{left:14px;right:14px;bottom:14px}.driver-card-copy strong{font-size:1.35rem}.driver-card-copy i{display:none}.driver-card-number{top:12px;right:12px;font-size:1.15rem}.driver-team-group header img{width:72px;height:58px}.content-editorial-grid{grid-template-columns:1fr}.content-editorial-grid figure{position:static}.contact-card-grid,.outlet-grid{grid-template-columns:1fr}.outlet-grid article{grid-template-columns:1fr}.driver-detail>header{height:410px}.driver-detail>header>div{left:24px;right:24px;bottom:25px}.driver-detail-body{padding:25px}.driver-detail dl{grid-template-columns:1fr}.driver-boats{grid-template-columns:1fr}.directory-empty{padding:32px}.member-gallery-manager .sortable-gallery{grid-template-columns:repeat(3,1fr)}}

/* Final responsive and directory overrides */
html,body{overflow-x:clip}.media-gallery-card{cursor:pointer}.directory-hero:before{background:linear-gradient(90deg,rgba(3,5,7,.7125) 0%,rgba(3,5,7,.51) 46%,rgba(3,5,7,.09) 100%),var(--directory-hero,url('/assets/images/photography/cowes-pack.png')) center/cover}.team-directory-groups[hidden]{display:none!important}.driver-team-group{padding:34px;background:#fff;border-top:4px solid #111;box-shadow:0 16px 44px rgba(8,12,16,.08)}.driver-team-group+ .driver-team-group{margin-top:10px}.driver-team-group header{padding-bottom:24px;border-bottom:1px solid #e2e4e6}.driver-team-group header img{width:180px;height:125px;padding:0;background:transparent;object-fit:contain}.driver-team-group header h2{font-size:clamp(1.8rem,3vw,3rem)}.driver-team-group header .eyebrow{color:var(--red)}
@media(max-width:720px){.driver-team-group{padding:20px 14px}.driver-team-group header{align-items:flex-start}.driver-team-group header img{width:115px;height:85px;padding:0;background:transparent}.driver-team-group header h2{font-size:1.7rem}}
.rich-content h1{margin:1.1em 0 .35em;color:#0b0e11;font-family:'OMRA Evogria',sans-serif;font-size:clamp(2.25rem,3.8vw,4rem);line-height:.9;text-transform:uppercase}.content-rule_book .content-editorial-grid{grid-template-columns:minmax(0,900px)}.content-rule_book .rich-content h2{font-size:clamp(1.55rem,2.25vw,2.45rem);line-height:1}.content-rule_book .rich-content h3{font-size:clamp(1.25rem,1.8vw,1.75rem)}.event-rich-text h1{font-family:'OMRA Evogria',sans-serif;font-size:clamp(2.2rem,4vw,4rem);line-height:.92;text-transform:uppercase}.event-rich-text h2{font-size:clamp(1.75rem,3vw,2.8rem)!important}.event-rich-text h3{font-family:'OMRA Evogria',sans-serif;font-size:clamp(1.3rem,2vw,2rem);text-transform:uppercase}
.driver-card-team{display:flex!important;align-items:center;gap:8px;min-height:25px}.driver-card-team img{flex:0 0 auto;width:34px;height:24px;padding:2px;background:rgba(255,255,255,.92);border-radius:2px;object-fit:contain}.driver-card-team small{overflow:hidden;color:#fff!important;font-size:.65rem!important;font-weight:900;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}@media(max-width:620px){.driver-card-team{gap:6px;min-height:21px}.driver-card-team img{width:28px;height:20px}.driver-card-team small{font-size:.56rem!important}}
.site-header .header-inner{width:min(1420px,calc(100% - 32px));padding-inline:18px}
@media(max-width:860px){.site-header.is-scrolled{-webkit-backdrop-filter:none;backdrop-filter:none}.site-header .header-inner{width:calc(100% - 24px);padding-inline:0!important}.brand img{width:130px}.site-header.is-scrolled .brand img{width:116px}.primary-nav{padding-top:16px}.nav-group-more .mobile-more-toggle,.primary-nav>.nav-group-more>a{display:none}.nav-group-more .mobile-more-links{display:grid;grid-template-columns:1fr;max-height:none;padding:0;overflow:visible;opacity:1}.mobile-more-links a{min-height:58px;padding:17px 12px;color:#fff;border-bottom:1px solid #2d2d32;font-size:.9rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.primary-nav>.nav-group>a{min-height:58px;display:flex;align-items:center;padding:17px 12px;border-bottom:1px solid #2d2d32;font-size:.9rem}.primary-nav>.nav-group-more>a{display:none}.primary-nav .nav-account{margin-top:18px}}
.member-race-manager{margin-top:24px}.member-race-entry-form{grid-template-columns:1fr 1fr auto;align-items:end}.member-race-list{display:grid;gap:8px;margin-top:28px}.member-race-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 20px;padding:16px 0;border-top:1px solid #303640}.member-race-list span{grid-row:span 3}.member-race-list span strong,.member-race-list span small{display:block}.member-race-list small{color:#858c96}.member-race-list b{color:var(--red);font-family:var(--font-display);font-size:1.4rem}.member-race-list form{text-align:right}.member-entry-remove{padding:4px 0;color:#ff6963;background:none;border:0;border-bottom:1px solid #7b302d;font-size:.68rem;font-weight:900;text-transform:uppercase;cursor:pointer}.member-entry-remove:hover{color:#fff;border-color:#e10600}.member-gallery-manager .sortable-gallery figure{position:relative}.member-gallery-delete{position:absolute;z-index:2;right:6px;top:6px;width:30px;height:30px;padding:0;color:#fff;background:rgba(10,12,15,.88);border:1px solid rgba(255,255,255,.45);border-radius:50%;font-size:1.25rem;line-height:1;cursor:pointer}.member-gallery-delete:hover{background:var(--red)}.driver-gallery-section{margin-top:42px;padding-top:34px;border-top:1px solid #d9dcdf}.driver-detail dl{grid-template-columns:repeat(2,1fr)}
@media(max-width:720px){.member-race-entry-form{grid-template-columns:1fr}.member-race-list>div{grid-template-columns:1fr}.member-race-list span{grid-row:auto}}

/* Member shop and tabbed dashboard */
.member-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:7px;background:#151a20;border:1px solid #343b44;border-radius:12px}.member-tabs a{padding:12px 18px;color:#b8c1ca;text-decoration:none;font-weight:800;border-radius:8px}.member-tabs a.active,.member-tabs a:hover{color:#fff;background:#d91515}.member-portal .member-card{max-width:none}.member-profile-form{display:grid;gap:22px}.member-entry-events{display:grid;gap:18px;margin-top:28px}.member-entry-event{padding:24px;background:#0e1319;border:1px solid #343d47;border-radius:10px}.member-entry-event.selected{border-color:#ec3838}.member-entry-event-head{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:18px}.member-entry-event-head small,.member-entry-event-head span{display:block;color:#9ca8b3}.member-entry-event-head h3{margin:5px 0 7px;font-size:1.4rem}.member-entry-event-head>strong{color:#43d5ff;white-space:nowrap}.member-entry-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:20px;padding:12px 0;border-top:1px solid #2e3741}.member-entry-row>div{display:flex;align-items:center;gap:14px}.member-entry-row b{color:#42d6ff}.member-payment-status{color:#f8b35d;font-size:.8rem;font-weight:900;text-transform:uppercase}.member-payment-status.paid{color:#56d98e}.member-entry-checkout{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:18px;padding:18px;background:#182430;border-radius:8px}.member-entry-checkout strong{color:#51ddff;font-size:1.4rem}.member-membership-status{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.member-membership-status>div,.member-plan-grid article{padding:22px;background:#0e1319;border:1px solid #323b45;border-radius:9px}.member-membership-status small,.member-membership-status strong{display:block}.member-membership-status small{margin-bottom:8px;color:#99a4b0;text-transform:uppercase}.member-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:25px}.member-plan-grid h3{margin-top:0}.member-plan-grid strong{display:block;margin-bottom:22px;color:#55d8ff;font-size:1.3rem}.member-plan-grid form{margin-top:18px}@media(max-width:760px){.member-entry-row{grid-template-columns:1fr auto}.member-entry-row form{grid-column:1/-1}.member-entry-checkout,.member-entry-event-head{align-items:start;flex-direction:column}.member-membership-status{grid-template-columns:repeat(2,minmax(0,1fr))}.member-plan-grid{grid-template-columns:1fr}}@media(max-width:520px){.member-membership-status{grid-template-columns:1fr}.member-tabs a{flex:1 1 140px;text-align:center}}
.member-entry-actions{display:flex;align-items:center;justify-content:flex-end;gap:15px}.member-entry-actions form{margin:0}.member-entry-actions em{color:#707780;font-size:.68rem;font-style:normal;text-transform:uppercase}.member-entry-pay{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;color:#fff!important;background:var(--red);font-size:.7rem;font-weight:900;text-decoration:none;text-transform:uppercase;transition:background .2s ease,transform .2s ease}.member-entry-pay span{margin:0;color:#fff;font-size:1rem}.member-entry-pay:hover{background:#ff1e16;transform:translateY(-2px)}
.member-payment-history{margin-top:22px}.member-payment-history .member-card-title{margin-bottom:14px}.member-payment-history .member-card-title p{color:#99a4b0}.member-payment-list{display:grid}.member-payment-item{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid #303b46}.member-payment-item>div{display:grid;gap:5px}.member-payment-item small,.member-payment-item span{color:#9aa5af}.member-payment-item strong{font-size:1.1rem}.member-payment-item b{color:#55d8ff;font-size:1.25rem;white-space:nowrap}@media(max-width:520px){.member-payment-item{align-items:flex-start}.member-payment-item b{font-size:1.1rem}}
@media(max-width:720px){.member-entry-actions{justify-content:flex-start;flex-wrap:wrap}}


.team-scoring-explanation{max-width:850px;margin:0 0 20px;color:#686b72;font-size:.85rem;line-height:1.5}
.compact-results-wrap{width:100%;border-top:3px solid var(--red)}
.compact-championship-table{width:100%;min-width:0;table-layout:fixed;font-variant-numeric:tabular-nums}
.compact-championship-table th,.compact-championship-table td{padding:12px 7px;vertical-align:top;text-align:center;overflow-wrap:anywhere;white-space:normal}
.compact-championship-table th{font-size:.6rem;letter-spacing:.04em}
.compact-championship-table td{font-size:.8rem}
.compact-championship-table th:first-child,.compact-championship-table td:first-child{width:48px}
.compact-championship-table th:nth-child(2),.compact-championship-table td:nth-child(2){width:145px;text-align:left}
.compact-championship-table th:nth-child(3),.compact-championship-table td:nth-child(3){width:110px;text-align:left}
.compact-championship-table small{display:block;margin-top:4px;font-size:.62rem;color:#858890}
.compact-championship-table .position{width:30px;height:30px;font-size:.8rem}
.compact-championship-table .compact-total{background:var(--red);color:#fff}
.compact-championship-table td:last-child strong{font-size:1rem}
.compact-team-identity{display:flex;align-items:flex-start;gap:8px}.compact-team-identity img{flex:0 0 32px;width:32px;height:32px;object-fit:contain}
.compact-score-list{list-style:none;padding:0;margin:8px 0 0;text-align:left}
.compact-score-list li{font-size:.64rem;font-weight:500;line-height:1.4;margin-top:7px}.compact-score-list li span,.compact-score-list li strong{display:block}.compact-score-list li span{margin-top:2px;color:#686b72}
.compact-race-points{display:block;font-size:.9rem}.championship-legend{flex-wrap:wrap}
.results-fit-wrap{width:100%;min-width:0}.results-fit-table{width:100%;min-width:0;table-layout:fixed}.results-fit-table th,.results-fit-table td{padding:12px 8px;overflow-wrap:anywhere;white-space:normal}
#results .data-class-tabs{flex-wrap:wrap;overflow:visible}
@media(max-width:1100px){.compact-championship-table,.compact-championship-table tbody{display:block;width:100%}.compact-championship-table{position:relative}.compact-championship-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.compact-championship-table tr{display:grid;grid-template-columns:48px repeat(5,minmax(0,1fr));border-bottom:1px solid #d9dade;padding:10px 0;gap:8px}.compact-championship-table tbody td,.compact-championship-table tbody td:first-child,.compact-championship-table tbody td:nth-child(2),.compact-championship-table tbody td:nth-child(3){width:auto;min-width:0;padding:6px;border:0;text-align:left}.compact-championship-table td::before{content:attr(data-label);display:block;margin-bottom:5px;font-size:.6rem;font-weight:700;color:#858890}.compact-championship-table td.compact-total::before{color:#fff}.compact-championship-table td:nth-child(2){grid-column:span 3}.compact-championship-table td:nth-child(3){grid-column:span 2}.compact-championship-table td:nth-child(4){grid-column:2}.compact-team-table .compact-team-identity{align-items:center}}
@media(max-width:600px){.compact-championship-table tr{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.compact-championship-table td:nth-child(2){grid-column:span 2}.compact-championship-table td:nth-child(3){grid-column:1/-1}.compact-championship-table td:nth-child(4){grid-column:auto}.compact-score-list{margin-top:5px}.results-fit-table th,.results-fit-table td{padding:10px 4px;font-size:.7rem}.results-fit-table th:first-child,.results-fit-table td:first-child{width:34px}.results-fit-table .position{width:26px;height:26px;font-size:.7rem}.results-fit-table td:last-child strong{font-size:.85rem}}
.class-tabs-large a[href*="class=TEAM"]{width:auto;min-width:80px;padding-inline:16px}

.compact-championship-table th a,.compact-round-link{text-underline-offset:3px}.compact-round-link{display:none}
@media(max-width:1100px){.compact-championship-table .compact-round-cell::before{display:none}.compact-round-link{display:block;margin-bottom:5px;font-size:.6rem;font-weight:700;color:#686b72}}
.team-results-list{display:grid;gap:28px;min-width:0}.team-result-card{min-width:0;padding:28px;background:#fff;border:1px solid #e2e3e5;border-top:3px solid var(--red);border-radius:4px;font-variant-numeric:tabular-nums}.team-result-header{display:flex;align-items:center;justify-content:space-between;gap:24px}.team-standing-identity{display:flex;align-items:center;gap:16px;min-width:0}.team-standing-identity h3{margin:0;font-size:1.5rem;line-height:1.2;overflow-wrap:anywhere}.team-standing-identity .position{flex:0 0 38px;color:#fff}.team-standing-identity img{flex:0 0 52px;width:52px;height:52px;object-fit:contain;border-radius:7px;background:#f0f0ed}.team-season-total{flex-shrink:0;display:grid;gap:5px;text-align:right}.team-season-total>span{color:#686b72;font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.team-season-total>strong{color:var(--red);font-size:2rem;line-height:1.2}.team-season-total small{font-size:.75rem}.team-roster{display:flex;align-items:baseline;gap:14px 24px;flex-wrap:wrap;padding:22px 0;margin-bottom:24px;border-bottom:1px solid #e2e3e5}.team-roster>strong{font-size:.8rem}.team-roster ul{display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;padding:0;margin:0;min-width:0}.team-roster li{color:#686b72;font-size:.85rem;overflow-wrap:anywhere}.team-race-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px;align-items:stretch}.team-race-card{min-width:0;padding:18px;background:#f5f5f2;border:1px solid #e5e5e1;border-radius:4px}.team-race-card>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.team-race-card>header>a{font-size:.8rem;font-weight:800;text-underline-offset:3px;overflow-wrap:anywhere}.team-race-card>header>strong{font-size:1.25rem;white-space:nowrap}.team-race-card>header>strong>span{font-size:.7rem;font-weight:600;color:#686b72}.team-race-name{min-height:36px;margin:8px 0 12px;color:#686b72;font-size:.72rem;line-height:1.5;overflow-wrap:anywhere}.team-race-name>span{display:block;color:#996111;font-size:.65rem;font-weight:700}.team-contributions{list-style:none;padding:0;margin:0}.team-contributions li{padding:10px 0;border-top:1px solid #dedfdb;font-size:.78rem;line-height:1.5;overflow-wrap:anywhere}.team-contributions li strong,.team-contributions li span{display:block}.team-contributions li span{color:#686b72;font-weight:500}.team-no-score{margin:0;padding-top:10px;color:#686b72;font-size:.78rem;line-height:1.5}
.team-score-summary{display:flex;flex:0 0 auto;align-items:center;gap:22px}.team-best-total,.team-score-summary .team-season-total{display:grid;gap:5px;text-align:right}.team-best-total>span,.team-score-summary .team-season-total>span{color:#686b72;font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.team-best-total>strong,.team-score-summary .team-season-total>strong{font-size:2rem;line-height:1.2}.team-best-total>strong{color:var(--red)}.team-score-summary .team-season-total>strong{color:#20252b}.team-score-summary small{font-size:.75rem}.team-race-card.is-counting{background:#fff;border-color:#e9c3c5;box-shadow:inset 0 3px 0 var(--red)}.team-race-card.is-excluded{background:#f3f3f1;border-color:#e1e2e0;opacity:.68}.team-counting-status{display:inline-flex;align-items:center;min-height:21px;padding:3px 7px;margin:0 0 5px;color:#a80b12;background:#ffe7e8;font-size:.57rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.team-race-card.is-excluded .team-counting-status{color:#626970;background:#e5e7e8}
@media(max-width:600px){.team-result-card{padding:20px 16px}.team-result-header{align-items:flex-start;flex-direction:column;gap:18px}.team-standing-identity{gap:10px}.team-standing-identity h3{font-size:1.3rem}.team-standing-identity img{width:40px;height:40px;flex-basis:40px}.team-season-total{display:flex;align-items:baseline;gap:14px;text-align:left}.team-roster{gap:12px;padding:18px 0}.team-race-card{padding:16px}}
@media(max-width:600px){.team-score-summary{width:100%;justify-content:space-between;gap:16px}.team-best-total,.team-score-summary .team-season-total{display:grid;gap:4px;text-align:left}.team-best-total>strong,.team-score-summary .team-season-total>strong{font-size:1.65rem}}

.compact-score-value{position:relative;display:inline-block;white-space:nowrap}
.compact-score-value>.fastest-lap{position:absolute;left:calc(100% + 3px);top:50%;transform:translateY(-50%);min-width:20px;height:16px;margin:0;font-size:.5rem;line-height:1}

.hero-video-layer{position:absolute;inset:0;transform:translateX(100%);transition:transform 1.1s cubic-bezier(.22,.61,.36,1);pointer-events:none}
.hero-video{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%}
.hero-video-layer::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,10,.7125) 0%,rgba(8,8,10,.54) 42%,rgba(8,8,10,.06) 78%),linear-gradient(0deg,rgba(8,8,10,.66),transparent 52%)}
.hero-video-ready .hero-video-layer{transform:translateX(0)}
.hero-video-toggle{position:absolute;right:24px;bottom:24px;z-index:3;padding:9px 13px;border:1px solid rgba(255,255,255,.5);border-radius:4px;background:rgba(8,8,10,.65);color:#fff;font:inherit;font-size:.72rem;cursor:pointer}
.hero-video-toggle[hidden]{display:none}.hero-video-toggle:focus-visible{outline:2px solid #fff;outline-offset:4px}
@media(max-width:760px){.hero-video-layer::after{background:linear-gradient(0deg,rgba(8,8,10,.7125) 0%,rgba(8,8,10,.39) 65%,rgba(8,8,10,.18))}.hero-video{object-position:58% center}}
@media(prefers-reduced-motion:reduce){.hero-video-layer{display:none;transition:none}.hero-video-toggle{display:none}}

/* The directory switch keeps its place in the hero, then becomes one floating pill. */
.directory-toggle-slot{margin-top:28px;display:flow-root}
.directory-toggle-slot .directory-toggle{margin-top:0}
.directory-toggle.is-floating{position:fixed;z-index:90;top:var(--directory-toggle-top,92px);left:0;right:0;width:max-content;max-width:calc(100% - 24px);margin:0 auto;padding:4px;background:rgba(10,10,12,.96);border-color:rgba(255,255,255,.2);box-shadow:0 8px 28px rgba(0,0,0,.22);transform-origin:top left}
.directory-toggle.is-floating button{min-height:44px;padding:10px 22px;font-size:.78rem}
.directory-toggle button:focus-visible{outline:2px solid #fff;outline-offset:-3px}
.menu-open .directory-toggle.is-floating,.driver-drawer-open .directory-toggle.is-floating{visibility:hidden;pointer-events:none}
@media(max-width:760px){.directory-toggle.is-floating button{padding-inline:20px}}

.directory-toggle-slot .championship-class-toggle{margin-top:0}
.championship-class-toggle.is-floating{position:fixed;z-index:90;top:var(--directory-toggle-top,92px);left:0;right:0;width:max-content;max-width:calc(100% - 24px);margin:0 auto;padding:4px;gap:4px;flex-wrap:wrap;justify-content:center;background:rgba(10,10,12,.96);border:1px solid rgba(255,255,255,.2);border-radius:28px;box-shadow:0 8px 28px rgba(0,0,0,.22);transform-origin:top left}
.championship-class-toggle.is-floating a{width:44px;height:44px;border-radius:22px;font-size:.8rem}
.championship-class-toggle.is-floating{left:calc((100% - var(--shell)) / 2);right:auto;max-width:var(--shell);margin-inline:0;justify-content:flex-start}
.championship-class-toggle a:focus-visible{outline:2px solid #fff;outline-offset:-3px}
.menu-open .championship-class-toggle.is-floating{visibility:hidden;pointer-events:none}
.championship-table-section > .shell{transition:opacity .18s ease}
.championship-table-section[aria-busy=true] > .shell{opacity:.65}
@media(prefers-reduced-motion:reduce){.championship-table-section > .shell{transition:none}}

/* Navigation and race calendar motion */
@media (min-width:861px) {
    .nav-group.has-mega>a{position:relative;border-bottom-color:transparent}
    .nav-group.has-mega>a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .38s cubic-bezier(.22,1,.36,1)}
    .nav-group.has-mega:hover>a::after,.nav-group.has-mega:focus-within>a::after,.nav-group.has-mega>a[aria-current]::after{transform:scaleX(1)}
    .nav-group.has-mega:hover>a,.nav-group.has-mega:focus-within>a{color:#fff}
}
.mega-links{grid-template-columns:1fr}
.mega-more-lists{gap:0 clamp(18px,4vw,70px)}
.mega-more-list a{opacity:0;transform:translateY(15px);border-left:3px solid transparent!important;transition:opacity .45s ease,transform .55s cubic-bezier(.22,1,.36,1),background .2s ease,color .2s ease,border-color .2s ease;transition-delay:calc(var(--menu-index)*40ms),calc(var(--menu-index)*40ms),0s,0s,0s}
.nav-group:hover .mega-more-list a,.nav-group:focus-within .mega-more-list a{opacity:1;transform:none}
.mega-more-list a:hover,.mega-more-list a:focus-visible{transform:translateX(7px)!important;border-left-color:var(--red)!important;background:linear-gradient(90deg,rgba(225,6,0,.32),rgba(225,6,0,.06))!important;box-shadow:inset 0 0 0 1px rgba(225,6,0,.15);transition-delay:0s!important}
.mega-leader-cards li{opacity:0;transform:translateY(20px) scale(.97);transition:opacity .52s ease,transform .65s cubic-bezier(.22,1,.36,1),border-color .22s ease}
.nav-group:hover .mega-leader-cards li,.nav-group:focus-within .mega-leader-cards li{opacity:1;transform:none}
.mega-leader-cards li:nth-child(1){transition-delay:70ms}.mega-leader-cards li:nth-child(2){transition-delay:135ms}.mega-leader-cards li:nth-child(3){transition-delay:200ms}.mega-leader-cards li:nth-child(4){transition-delay:265ms}.mega-leader-cards li:nth-child(5){transition-delay:330ms}
.mega-leader-cards li:hover{transition-delay:0s}
.mega-feature{position:relative;isolation:isolate;overflow:hidden}
.mega-feature::after{content:"";position:absolute;inset:0;z-index:2;background:var(--red);transform:scaleX(1);transform-origin:left;pointer-events:none}
.nav-group:hover .mega-feature::after,.nav-group:focus-within .mega-feature::after{animation:race-image-wipe .75s cubic-bezier(.76,0,.24,1) forwards}
.mega-grid>.mega-feature:nth-child(3)::after{animation-delay:95ms}
.mega-feature>span,.mega-feature>strong,.mega-feature>small{position:relative;z-index:3;opacity:0;transform:translateY(13px);transition:opacity .4s ease,transform .5s cubic-bezier(.22,1,.36,1)}
.nav-group:hover .mega-feature>span,.nav-group:hover .mega-feature>strong,.nav-group:hover .mega-feature>small,.nav-group:focus-within .mega-feature>span,.nav-group:focus-within .mega-feature>strong,.nav-group:focus-within .mega-feature>small{opacity:1;transform:none;transition-delay:370ms}
.mega-provisional-pill{display:inline-block;margin-left:7px;padding:4px 6px;border:1px solid #ffbf53;color:#ffcf79;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}
.season-event-image{position:relative;display:block}
.season-event-image::after{content:"";position:absolute;inset:0;background:var(--red);transform:scaleX(0);transform-origin:left;pointer-events:none}
.motion-enabled .season-event-image::after{transform:scaleX(1)}
.motion-enabled .season-event.motion-visible .season-event-image::after{transform:scaleX(0);transition:transform .8s cubic-bezier(.76,0,.24,1) .12s}
.motion-enabled .season-event .season-event-round,.motion-enabled .season-event .season-event-date,.motion-enabled .season-event .season-event-title,.motion-enabled .season-event .season-event-link{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .65s cubic-bezier(.22,1,.36,1)}
.motion-enabled .season-event.motion-visible .season-event-round,.motion-enabled .season-event.motion-visible .season-event-date,.motion-enabled .season-event.motion-visible .season-event-title,.motion-enabled .season-event.motion-visible .season-event-link{opacity:1;transform:none}
.motion-enabled .season-event.motion-visible .season-event-round{transition-delay:100ms}.motion-enabled .season-event.motion-visible .season-event-date{transition-delay:165ms}.motion-enabled .season-event.motion-visible .season-event-title{transition-delay:230ms}.motion-enabled .season-event.motion-visible .season-event-link{transition-delay:300ms}
.header-red-wipe{position:absolute;inset:0;z-index:4;background:var(--red);transform:scaleX(1);transform-origin:left;pointer-events:none}
.motion-enabled .hero.is-loaded .header-red-wipe,.motion-enabled .page-hero.is-loaded .header-red-wipe,.motion-enabled .event-hero.is-loaded .header-red-wipe,.motion-enabled .directory-hero.is-loaded .header-red-wipe,.motion-enabled .content-hero.is-loaded .header-red-wipe{animation:race-image-wipe .9s cubic-bezier(.76,0,.24,1) .1s forwards}
@keyframes race-image-wipe{from{transform:scaleX(1)}to{transform:scaleX(0)}}
.status-draft{color:#151515;background:var(--color-warning)}
@media (prefers-reduced-motion:reduce){.mega-more-list a,.mega-leader-cards li,.mega-feature>span,.mega-feature>strong,.mega-feature>small,.season-event .season-event-round,.season-event .season-event-date,.season-event .season-event-title,.season-event .season-event-link{opacity:1!important;transform:none!important;transition:none!important}.mega-feature::after,.season-event-image::after,.header-red-wipe{display:none!important}}

/* Keep the image wipe behind hero copy, including after its animation ends. */
.header-red-wipe{z-index:1}
.hero-content,.page-hero-content,.event-hero-inner,.directory-hero>.shell,.content-hero>.shell{position:relative;z-index:2}
.hero>.shell,.page-hero>.shell,.event-hero>.shell,.editorial-hero>.shell{position:relative;z-index:2}
.motion-enabled .hero-reveal-complete h1,.motion-enabled .hero-reveal-complete .eyebrow,.motion-enabled .hero-reveal-complete p,.motion-enabled .hero-reveal-complete .hero-actions,.motion-enabled .hero-reveal-complete .hero-copy{opacity:1;transform:none}
.motion-enabled .hero-reveal-complete .motion-letter{opacity:1;transform:none}

/* The navigation should stay opaque while a dropdown is in use. */
.site-header:hover,.site-header:focus-within,.menu-open .site-header{background:#08090b;-webkit-backdrop-filter:none;backdrop-filter:none}
.mega-leader-cards .mega-leader-link,.mega-leader-cards .mega-leader-link:hover,.mega-leader-cards .mega-leader-link:focus-visible{display:block;height:100%;padding:0!important;border:0!important;color:inherit;text-decoration:none}
.mega-leader-link:focus-visible{outline:none}

/* Keep event navigation from making the viewport scrollbar appear and disappear. */
html:has(.event-hub){overflow-y:scroll;scrollbar-gutter:stable}
.event-hub #results{scroll-margin-top:154px}
.timing-view-panel[hidden]{display:none!important}

/* Race With Us: new schematic artwork, scoring and live season venue map. */
.race-guide-hero{min-height:570px}.race-guide-hero::before{background:linear-gradient(90deg,rgba(3,6,9,.88),rgba(3,6,9,.48) 48%,rgba(3,6,9,.04)),var(--content-hero) center/cover}.race-guide-section{padding:clamp(70px,8vw,120px) 0}.race-guide-section h2{max-width:900px;margin:0 0 30px;font-family:var(--font-display);font-size:clamp(3rem,6.2vw,6.5rem);font-weight:900;letter-spacing:-.055em;line-height:.9;text-transform:uppercase}.race-guide-section p{line-height:1.65}.race-guide-section .eyebrow{margin-bottom:16px}.race-guide-lead{max-width:800px;font-size:1.15rem;color:#6c7178}.race-guide-section a:not(.button){color:inherit;text-decoration-color:var(--red);text-decoration-thickness:2px;text-underline-offset:4px}.race-guide-section a:not(.button):hover{color:var(--red)}
.race-guide-intro{background:#f3f3f2}.race-guide-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:46px;background:#d8dcdf;border:1px solid #d8dcdf}.race-guide-steps article{min-width:0;padding:32px;background:#fff}.race-guide-steps b{display:inline-block;padding:8px 10px;background:var(--red);color:#fff;font:900 1rem var(--font-display)}.race-guide-steps h3{font-size:1.38rem;text-transform:uppercase;margin:26px 0 12px}.race-guide-steps p{color:#656b72;margin:0}
.race-guide-classes{background:#fff}.race-class-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:45px}.race-class-card{min-width:0;border:1px solid #d8dce0;background:#f2f3f4;overflow:hidden}.race-class-diagram{position:relative;min-height:190px;padding:18px;background:radial-gradient(circle at 80% 0%,#30444e,#101820 65%);color:#fff}.race-class-letter{position:absolute;top:16px;left:17px;font:900 2.5rem var(--font-display);color:#fff}.race-class-diagram svg{display:block;width:100%;height:160px;margin-top:20px;overflow:visible}.race-class-diagram svg .diagram-water{stroke:#7699a6;stroke-width:2;fill:none;opacity:.6}.race-class-diagram svg .diagram-hull{fill:#eef0f1;stroke:#fff;stroke-width:3}.race-class-diagram svg .diagram-deck{fill:var(--red)}.race-class-diagram svg .diagram-cockpit{fill:#29333b}.race-class-diagram svg .diagram-stripe{stroke:var(--red);stroke-width:8;fill:none}.race-class-diagram svg circle{fill:#fff}.race-class-diagram svg text{fill:#14191e;font:900 17px Arial,sans-serif}.race-class-diagram svg .diagram-prop{stroke:#bbc8cd;stroke-width:3;fill:none}.race-class-xs .diagram-deck,.race-class-xs .diagram-stripe{fill:#22a8bf;stroke:#22a8bf}.race-class-x .diagram-deck,.race-class-x .diagram-stripe{fill:#ad69de;stroke:#ad69de}.race-class-e .diagram-deck,.race-class-e .diagram-stripe{fill:#f0a133;stroke:#f0a133}.race-class-d .diagram-deck,.race-class-d .diagram-stripe{fill:#50aa7a;stroke:#50aa7a}.diagram-caption{display:flex;justify-content:space-between;color:#9eb2bb;font-size:.55rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.race-class-detail{padding:23px}.race-class-detail h3{margin:0 0 15px;font:900 1.8rem var(--font-display);text-transform:uppercase}.race-class-detail p{margin:0 0 8px;font-weight:800}.race-class-detail strong{display:block;color:var(--red);font-size:1.2rem}.race-class-detail small{display:block;margin-top:8px;color:#737b82;text-transform:uppercase;letter-spacing:.08em}
.race-guide-transponder{color:#fff;background:#11171d}.race-guide-transponder-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,7vw,110px);align-items:center}.race-guide-transponder p{max-width:680px;color:#c4ccd2;font-size:1.08rem}.race-guide-transponder a:not(.button){color:#fff}.race-guide-signal{position:relative;min-height:390px;border:1px solid #34414a;background:radial-gradient(circle at 50% 60%,rgba(225,6,0,.24),transparent 44%),repeating-linear-gradient(0deg,transparent 0 48px,rgba(255,255,255,.04) 49px 50px),#0b1117;overflow:hidden}.signal-boat,.signal-loop,.signal-check{position:absolute;z-index:2;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.signal-boat{top:52px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:20px 35px;background:#f3f5f6;color:#111;clip-path:polygon(0 50%,14% 0,86% 0,100% 50%,86% 100%,14% 100%)}.signal-boat b{color:var(--red)}.signal-loop{bottom:62px;left:10%;width:80%;padding:12px;border:3px solid var(--red);border-radius:50%;text-align:center;color:#fff}.signal-check{right:22px;bottom:18px;color:#63e1a1;font-size:.7rem}.signal-wave{position:absolute;top:82px;left:50%;width:100px;height:100px;transform:translateX(-50%);border:2px solid #ee2934;border-radius:50%;opacity:.7}.signal-wave-2{width:190px;height:190px;top:38px;opacity:.3}
.race-guide-points{background:#f2f3f4}.points-controls{display:flex;flex-wrap:wrap;align-items:center;gap:28px;margin:35px 0;padding:22px 25px;background:#fff;border-left:5px solid var(--red)}.points-controls label{display:flex;align-items:center;gap:14px;font-weight:800}.points-controls input[type=range]{accent-color:var(--red);width:clamp(120px,18vw,260px)}.points-controls output{display:inline-grid;place-items:center;min-width:38px;min-height:38px;background:#111820;color:#fff}.points-controls input[type=checkbox]{width:19px;height:19px;accent-color:var(--red)}.points-table-wrap{overflow-x:auto}.race-points-table{width:100%;border-collapse:collapse;text-align:left;background:#fff}.race-points-table th{padding:16px 18px;background:#111820;color:#fff;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.race-points-table td{padding:17px 18px;border-bottom:1px solid #dfe2e5;font-weight:700}.race-points-table tbody tr:nth-child(even){background:#f7f8f8}.race-points-table td:first-child{font-family:var(--font-display);font-size:1.5rem}.race-points-table td:last-child{color:var(--red);font-size:1.3rem}.race-guide-footnote{font-size:.85rem;color:#70767c}
.race-guide-map-section{color:#fff;background:#0c1116}.race-guide-map-heading{display:flex;justify-content:space-between;align-items:end;gap:25px}.race-guide-map-heading .race-guide-lead{color:#aeb8c0}.race-guide-map-layout{display:grid;grid-template-columns:minmax(280px,.38fr) minmax(0,.62fr);min-height:550px;margin-top:34px;border:1px solid #31404a}.race-guide-races{max-height:550px;overflow-y:auto;background:#111a22}.race-guide-race{display:block;width:100%;padding:20px 24px;border:0;border-bottom:1px solid #33404a;border-left:5px solid transparent;background:transparent;color:#fff;text-align:left;cursor:pointer}.race-guide-race:hover,.race-guide-race.is-active{border-left-color:var(--red);background:#24313c}.race-guide-race small,.race-guide-race strong,.race-guide-race span{display:block}.race-guide-race small{color:#ed7a82;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.race-guide-race strong{margin:6px 0;font-size:1.15rem;text-transform:uppercase}.race-guide-race span{color:#a5b2bb;font-size:.86rem}.race-guide-race em{display:inline-block;margin-top:7px;padding:3px 6px;background:#d89816;color:#111;font-size:.65rem;font-style:normal;font-weight:900;text-transform:uppercase}.race-guide-empty{padding:20px}.race-guide-map-frame{position:relative;display:grid;place-items:center;min-height:550px;background:#1a2b35;color:#fff}.race-guide-map-frame>a{position:relative;z-index:2;padding:10px 15px;background:#101820;color:#fff;text-align:center}.race-guide-map-frame.is-ready>a{position:absolute;left:12px;bottom:12px;font-size:.75rem}.race-guide-map-frame .google-map-canvas{position:absolute;inset:0}.race-guide-more{background:#f3f3f3}.race-guide-more details{border-top:3px solid #111820}.race-guide-more summary{display:flex;justify-content:space-between;padding:22px 0;font-size:1.35rem;font-weight:900;text-transform:uppercase;cursor:pointer}.race-guide-more details[open] summary span{transform:rotate(45deg)}.race-guide-more .rich-content{max-width:900px;padding:20px 0 0}
@media(max-width:1250px){.race-class-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.race-guide-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.race-guide-transponder-grid,.race-guide-map-layout{grid-template-columns:1fr}.race-guide-map-layout{min-height:0}.race-guide-races{max-height:300px}.race-guide-map-frame{min-height:400px}}@media(max-width:620px){.race-class-grid,.race-guide-steps{grid-template-columns:1fr}.race-guide-hero{min-height:520px}.race-guide-map-heading{align-items:start;flex-direction:column}.points-controls{align-items:start;flex-direction:column}.race-points-table th,.race-points-table td{padding:12px 9px;font-size:.75rem}.race-guide-signal{min-height:300px}}

/* Championship cards use one clear red outline and lift on hover or keyboard focus. */
.mega-grid{grid-template-columns:minmax(170px,.55fr) repeat(2,minmax(0,1fr))}
.mega-intro{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.mega-leader-cards li{position:relative;overflow:hidden;border:0!important;outline:1px solid #292d34;outline-offset:-1px;transition:opacity .52s ease,transform .3s cubic-bezier(.22,1,.36,1),background .3s ease,outline-color .3s ease,box-shadow .3s ease!important}
.mega-leader-cards li:hover,.mega-leader-cards li:focus-within{z-index:2;transform:translateY(-3px) scale(1.045)!important;outline:2px solid var(--red);outline-offset:-2px;background:#20252b;box-shadow:0 14px 34px rgba(0,0,0,.45);transition-delay:0s!important}
.mega-leader-photo{transition:filter .35s ease}
.mega-leader-cards li:hover .mega-leader-photo,.mega-leader-cards li:focus-within .mega-leader-photo{filter:brightness(1.08)}
.mega-leader-cards li:hover strong,.mega-leader-cards li:focus-within strong{color:#fff;text-decoration:none}
.mega-leader-cards li:hover small,.mega-leader-cards li:focus-within small{color:#e2e6e9}
@media(prefers-reduced-motion:reduce){.mega-leader-cards li:hover,.mega-leader-cards li:focus-within{transform:none!important;transition:none!important}}
.race-guide-team-points{margin-top:55px;padding-top:35px;border-top:1px solid #cbd0d3}.race-guide-team-points h3{margin:0 0 8px;font:900 clamp(1.6rem,3vw,2.6rem) var(--font-display);text-transform:uppercase}.race-guide-team-points p{margin:0 0 22px;color:#6d747a}.team-points-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.team-points-grid>div{padding:17px 19px;background:#111820;color:#fff}.team-points-grid small,.team-points-grid strong,.team-points-grid span{display:block}.team-points-grid small{color:#a7afb6;text-transform:uppercase;letter-spacing:.08em}.team-points-grid strong{margin-top:8px;color:#f33;font:900 2rem var(--font-display)}.team-points-grid span{font-size:.72rem;text-transform:uppercase}@media(max-width:700px){.team-points-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Compact driver preview from Championship and published race result rows. */
.team-driver-preview{display:inline-block;max-width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:700;text-align:left;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;transition:color .2s ease,text-decoration-color .2s ease}.team-roster .team-driver-preview{font-weight:500}.team-driver-preview:hover,.team-driver-preview:focus-visible{color:#c90b12;text-decoration-color:currentColor}.team-driver-preview:focus-visible{outline:2px solid var(--red);outline-offset:3px}.team-contributions .team-driver-preview{font-weight:800}
.driver-preview-row{cursor:pointer;transition:box-shadow .25s ease}.driver-preview-row td{transition:background-color .22s ease}.driver-preview-row:hover td,.driver-preview-row:focus-visible td{background:#eef1f2}.driver-preview-row:focus-visible{outline:2px solid var(--red);outline-offset:-2px}.driver-preview-row:hover .result-driver-text,.driver-preview-row:hover td[data-label="Driver"] strong{color:#c90b12}
.driver-preview-row:hover td.compact-total,.driver-preview-row:focus-visible td.compact-total,.driver-preview-row:hover td.counting-total,.driver-preview-row:focus-visible td.counting-total{background:var(--red);color:#fff}
.driver-mini-open{overflow:hidden}.driver-mini-overlay[hidden]{display:none}.driver-mini-overlay{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:22px;background:rgba(4,8,12,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity .24s ease}.driver-mini-overlay.is-open{opacity:1}.driver-mini-card{position:relative;width:min(590px,100%);max-height:calc(100vh - 44px);overflow:auto;padding:30px;color:#fff;background:linear-gradient(145deg,#182129,#0d1218);border:1px solid #46515a;border-top:4px solid var(--red);box-shadow:0 30px 100px rgba(0,0,0,.45);transform:translateY(18px) scale(.97);transition:transform .35s cubic-bezier(.22,1,.36,1)}.driver-mini-overlay.is-open .driver-mini-card{transform:none}.driver-mini-close{position:absolute;top:10px;right:12px;width:38px;height:38px;border:1px solid #48535d;background:#19232b;color:#fff;font-size:1.7rem;line-height:1;cursor:pointer}.driver-mini-close:hover,.driver-mini-close:focus-visible{background:var(--red);border-color:var(--red)}.driver-mini-top{display:grid;grid-template-columns:125px minmax(0,1fr);gap:24px;align-items:end;padding-right:35px}.driver-mini-image{width:125px;height:150px;object-fit:cover;background:#303840}.driver-mini-kicker{color:#ff4b50;font-size:.65rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.driver-mini-top h2{margin:10px 0 8px;font:900 clamp(2rem,5vw,3.5rem)/.9 var(--font-display);text-transform:uppercase;overflow-wrap:anywhere}.driver-mini-identity{margin:0;color:#b9c3ca;font-size:.81rem}.driver-mini-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:26px;background:#38434c;border:1px solid #38434c}.driver-mini-stats>div{min-width:0;padding:16px;background:#121b22}.driver-mini-stats small{display:block;color:#a7b4bc;font-size:.58rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.driver-mini-stats strong{display:block;margin-top:8px;color:#fff;font:900 clamp(1.2rem,3vw,2rem) var(--font-display);overflow-wrap:anywhere}.driver-mini-stats>div:first-child strong{color:#ff4b50}.driver-mini-stats [hidden]{display:none}.driver-mini-bio{margin:22px 0 0;color:#b9c3ca;line-height:1.55;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:540px){.driver-mini-card{padding:22px}.driver-mini-top{grid-template-columns:84px minmax(0,1fr);gap:14px}.driver-mini-image{width:84px;height:105px}.driver-mini-stats>div{padding:11px}.driver-mini-stats strong{font-size:1.25rem}}
@media(prefers-reduced-motion:reduce){.driver-mini-overlay,.driver-mini-card{transition:none}}
.driver-mini-bio[hidden]{display:none}.driver-mini-boats{margin-top:24px;border-top:1px solid #38434c;padding-top:20px}.driver-mini-boats h3{margin:0 0 13px;font:900 1.15rem var(--font-display);text-transform:uppercase;letter-spacing:.04em}.driver-mini-boats-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.driver-mini-boat{display:flex;align-items:center;gap:12px;min-width:0;padding:9px;background:#172129;border:1px solid #34414b}.driver-mini-boat-photo{position:relative;display:grid;place-items:center;flex:0 0 62px;width:62px;height:54px;overflow:hidden;background:#303a42;color:#bac5ca;font:900 .8rem var(--font-display)}.driver-mini-boat-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.driver-mini-boat-details{display:block;min-width:0}.driver-mini-boat-details strong,.driver-mini-boat-details small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.driver-mini-boat-details strong{font-size:.85rem}.driver-mini-boat-details small{margin-top:3px;color:#b0bdc7;font-size:.7rem}.driver-mini-boats-empty{grid-column:1/-1;margin:0;color:#b0bdc7;font-size:.82rem}@media(max-width:540px){.driver-mini-boats-list{grid-template-columns:1fr}.driver-mini-boats{margin-top:19px}}
.mega-leader-link:hover strong,.mega-leader-link:focus-visible strong{color:#fff;text-decoration:none}

/* Results: reserve room for the name and keep its fastest-lap badge inline. */
.event-hub .results-fit-wrap{overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain}
#results .results-fit-table{min-width:720px}
#results .results-fit-table th:first-child,#results .results-fit-table td:first-child{width:48px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#results .results-fit-table th:nth-child(2),#results .results-fit-table td:nth-child(2){width:30%}
#results .result-driver-line{display:inline-flex;align-items:center;gap:8px;max-width:100%;white-space:nowrap}
#results .result-driver-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#results .result-driver-line .fastest-lap{flex:none;margin-left:0}
#results .results-animate tbody tr{animation:result-row-in .58s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--result-row-index,0)*45ms)}
@keyframes result-row-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#results .results-animate tbody tr{animation:none}}

/* OMRA timing system feature page. */
.live-timing-page{background:#090b0e}
.timing-hero{min-height:760px;display:flex;align-items:center;padding:170px 0 100px;color:#fff;background:radial-gradient(circle at 82% 18%,rgba(225,6,0,.22),transparent 30%),linear-gradient(150deg,#0a0d12,#151b22)}
.timing-hero-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,90px);align-items:center}
.timing-hero-copy h1,.timing-section-head h2,.timing-intro h2,.timing-features h2,.timing-control-feature h2{margin:0;font-family:var(--font-display);font-weight:900;line-height:.88;letter-spacing:-.045em;text-transform:uppercase}
.timing-hero-copy h1{font-size:clamp(4rem,7.2vw,8.5rem)}
.timing-hero-copy h1 em,.timing-section-head h2 em{color:var(--red);font-style:italic}
.timing-hero-copy>p:not(.eyebrow){max-width:650px;margin:32px 0;color:#c4cbd3;font-size:clamp(1rem,1.4vw,1.25rem);line-height:1.65}
.timing-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}
.timing-screen-note{display:block;margin-top:25px;color:#818b97;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}
.timing-hero-screen{min-width:0;margin:0;border:1px solid #333e4b;background:#0d141e;box-shadow:0 35px 90px rgba(0,0,0,.38);transform:perspective(1500px) rotateY(-5deg)}
.timing-hero-screen img{width:100%;height:auto}
.timing-hero-screen figcaption,.timing-view-panel figcaption,.timing-control-feature figcaption{display:flex;align-items:center;gap:9px;padding:13px 18px;color:#98a6b7;background:#111821;font-size:.65rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.timing-live-dot{width:8px;height:8px;border-radius:50%;background:#29d57a;box-shadow:0 0 0 5px rgba(41,213,122,.15)}
.timing-intro{padding:95px 0;color:#fff;background:#12171e;border-block:1px solid #28313c}
.timing-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}
.timing-intro h2,.timing-section-head h2,.timing-control-feature h2{font-size:clamp(3rem,5vw,6rem)}
.timing-intro-grid>p{max-width:620px;margin:0;color:#adb7c2;font-size:1.15rem;line-height:1.7}
.timing-showcase{padding:110px 0;color:#fff;background:#090b0e}
.timing-section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:40px}
.timing-section-head>p{max-width:260px;margin:0 0 5px;color:#aab4c0;line-height:1.6}
.timing-view-tabs{display:flex;gap:6px;border-bottom:1px solid #39434e}
.timing-view-tabs button{flex:1;min-height:62px;padding:15px 20px;color:#b6c1ce;background:#141a22;border:1px solid #27313d;border-bottom:0;font-size:.75rem;font-weight:900;letter-spacing:.07em;text-align:left;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.timing-view-tabs button span{margin-right:12px;color:#68798b}
.timing-view-tabs button[aria-selected=true],.timing-view-tabs button:hover{color:#fff;background:#222b36;border-color:var(--red)}
.timing-view-tabs button[aria-selected=true]{box-shadow:inset 0 3px 0 var(--red)}
.timing-view-tabs button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.timing-view-panel{display:grid;grid-template-columns:minmax(260px,.34fr) minmax(0,.66fr);gap:34px;align-items:center;min-height:570px;padding:32px;background:#111821;border:1px solid #28313d;border-top:0;animation:timing-panel-in .42s ease both}
.timing-view-panel[hidden]{display:none}
.timing-view-index{color:#49d5ff;font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.timing-view-copy h3{margin:16px 0 24px;font-family:var(--font-display);font-size:clamp(2.5rem,4vw,4.5rem);line-height:.9;text-transform:uppercase}
.timing-view-copy p{color:#b4bfcb;font-size:1rem;line-height:1.7}
.timing-view-copy ul{margin:25px 0 0;padding:0;list-style:none}
.timing-view-copy li{padding:10px 0 10px 24px;border-top:1px solid #2a3440;color:#e0e6ec;font-size:.84rem;line-height:1.45}
.timing-view-copy li:before{content:'↗';display:inline-block;width:24px;margin-left:-24px;color:var(--red);font-weight:900}
.timing-view-panel figure,.timing-control-feature figure{min-width:0;margin:0;border:1px solid #354150;background:#0b1118}
.timing-view-panel figure img,.timing-control-feature figure img{display:block;width:100%;height:auto}
@keyframes timing-panel-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.timing-features{padding:100px 0 120px;color:#fff;background:#151b22}
.timing-features h2{font-size:clamp(3rem,5vw,6rem)}
.timing-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:55px;background:#39414c;border:1px solid #39414c}
.timing-feature-grid article{min-height:260px;padding:26px;background:#151b22}
.timing-feature-grid article>span{color:#4ad7ff;font-family:var(--font-display);font-size:2rem}
.timing-feature-grid h3{margin:36px 0 10px;font-size:1.15rem;text-transform:uppercase}
.timing-feature-grid p{margin:0;color:#aeb8c4;font-size:.85rem;line-height:1.65}
.timing-control-feature{padding:110px 0 130px;color:#fff;background:#090b0e}
.timing-control-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:65px;align-items:center}
.timing-control-feature p:not(.eyebrow){max-width:480px;margin:25px 0 30px;color:#adb8c3;line-height:1.7}
@media(max-width:1050px){.timing-hero-grid,.timing-view-panel,.timing-control-grid{grid-template-columns:1fr}.timing-hero{min-height:0}.timing-hero-screen{transform:none}.timing-view-panel{min-height:0}.timing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.timing-hero{padding:135px 0 65px}.timing-hero-copy h1{font-size:clamp(3.4rem,14vw,5.5rem)}.timing-intro,.timing-showcase,.timing-features,.timing-control-feature{padding:70px 0}.timing-intro-grid{grid-template-columns:1fr;gap:24px}.timing-section-head{display:block}.timing-section-head>p{margin-top:20px}.timing-view-tabs{flex-wrap:wrap}.timing-view-tabs button{flex:1 1 100%;min-height:50px}.timing-view-panel{padding:20px;gap:25px}.timing-feature-grid{grid-template-columns:1fr}.timing-feature-grid article{min-height:0;padding:23px}.timing-feature-grid h3{margin-top:16px}}
@media(prefers-reduced-motion:reduce){.timing-view-panel{animation:none}}

/* Race guide photographs and venue map. */
.race-guide-hero{min-height:clamp(560px,55vw,760px)}.race-guide-hero::before{background-position:center,center 56%}.race-class-photo{position:relative;height:210px;overflow:hidden;background:#172129}.race-class-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.28),transparent 48%,rgba(0,0,0,.2))}.race-class-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.race-class-card:hover .race-class-photo img{transform:scale(1.055)}.race-class-photo .race-class-letter{z-index:1;text-shadow:0 2px 12px #000a}.race-class-xs .race-class-photo img{object-position:50% 51%;transform:scale(1.18)}.race-class-xs:hover .race-class-photo img{transform:scale(1.23)}.race-guide-timing-photo{height:390px;margin:0;overflow:hidden;border:1px solid #34414a}.race-guide-timing-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 56%}.race-guide-map-layout{align-items:start}.race-guide-races{max-height:none;overflow:visible}.race-guide-map-frame{height:550px;min-height:550px;position:sticky;top:20px;align-self:start}.race-guide-map-popup{min-width:210px;max-width:260px;padding:3px 1px;color:#172029;font:400 13px/1.45 Arial,sans-serif}.race-guide-map-popup small,.race-guide-map-popup strong,.race-guide-map-popup span{display:block}.race-guide-map-popup small{color:#c81020;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.race-guide-map-popup strong{margin:5px 0;font-size:17px}.race-guide-map-popup p{margin:5px 0 11px;color:#3f4c55;line-height:1.4}.race-guide-map-popup a{color:#bb1120!important;font-weight:800;text-decoration:none!important}.race-guide-map-popup a:hover{text-decoration:underline!important}@media(max-width:850px){.race-guide-map-frame{position:relative;top:auto;height:420px;min-height:420px}}@media(max-width:620px){.race-guide-hero::before{background-position:center,56% center}.race-class-photo{height:230px}.race-guide-timing-photo{height:290px}}
