/* Radical Cup: film-led racing story, using the site's shared appearance tokens. */
.cup-page em,.cup-home em{font-style:normal;color:var(--accent)}
.cup-page h2,.cup-home h2{font-size:clamp(40px,4.5vw,70px);line-height:1.08;letter-spacing:-2.7px;text-transform:none}
.cup-page h3{font-size:23px;letter-spacing:-.6px;line-height:1.25;text-transform:none}
.cup-wrap{max-width:1720px;padding-left:6%;padding-right:6%;margin-left:auto;margin-right:auto}
.cup-page p{font-size:16px;line-height:1.85;color:var(--muted)}
.cup-hero{height:calc(100svh - 108px);min-height:650px;max-height:1000px;position:relative;isolation:isolate;overflow:hidden;background:#101010 url(assets/cup/team-hero-poster.jpg) center/cover;color:#fff}
.cup-hero-video,.cup-hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cup-hero-video{opacity:0;transition:opacity .7s;will-change:transform}.cup-hero-video.video-ready{opacity:1}
.cup-hero-shade{background:linear-gradient(90deg,#000a 0%,#0003 70%),linear-gradient(0deg,#000b,transparent 65%);z-index:1}
.cup-hero-copy{position:absolute;z-index:2;left:6%;right:6%;bottom:12%;max-width:1100px}
.cup-series-logo{width:120px;height:auto;object-fit:contain;margin-bottom:35px}
.cup-hero h1{font-size:clamp(70px,8.6vw,138px);font-weight:800;line-height:.99;letter-spacing:-5px;text-transform:uppercase}
.cup-hero-copy>p{font-size:17px;color:#ecece6;margin-top:28px}


.cup-pause{position:absolute;z-index:3;right:5%;bottom:35px;display:flex;align-items:center;gap:8px;border:1px solid #fff5;background:#0005;color:white;border-radius:30px;padding:10px 15px;font-size:11px;line-height:1.2;min-height:42px;backdrop-filter:blur(10px)}
.cup-pause svg{height:18px;width:18px}
.cup-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;padding-top:110px;padding-bottom:110px;align-items:start}
.cup-intro p+p{margin-top:20px}.cup-intro .cup-lead{font-size:24px;line-height:1.4;color:var(--ink);letter-spacing:-.6px;margin-bottom:25px}
.cup-championship{display:grid;grid-template-columns:1.1fr 1fr;background:var(--accent);color:#101010}
.cup-champion-photo{overflow:hidden;min-height:650px;position:relative;background:#292929}
.cup-champion-photo img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:30% center;will-change:transform}
.cup-champion-copy{padding:65px 10% 65px 9%;align-self:center}
.cup-year{display:block;font-family:var(--display);font-size:clamp(90px,9vw,150px);line-height:1;font-weight:800;letter-spacing:-7px;margin-bottom:20px}
.cup-champion-copy h2{font-size:clamp(32px,3.1vw,47px);letter-spacing:-1.7px;margin-bottom:25px}
.cup-champion-copy p{font-size:14px;color:#25230f;line-height:1.85}
.cup-honors{display:grid;grid-template-columns:1fr 1.25fr;gap:20px;border-top:1px solid #1114;padding-top:25px;margin-top:30px}
.cup-honors strong{font-size:14px;line-height:1.6;display:block}.cup-honors span{display:block;font-size:11px;margin-top:8px;line-height:1.6}
.cup-source-link{display:inline-block;font-size:11px;border-bottom:1px solid #1118;padding-bottom:4px;margin-top:35px}






.cup-record{display:grid;grid-template-columns:1.05fr 1fr;gap:8%;padding-top:45px;padding-bottom:110px}
.cup-record h2{font-size:clamp(36px,3.8vw,58px)}
.cup-record-list article{display:grid;grid-template-columns:70px 1fr;gap:25px;padding:27px 0;border-top:1px solid var(--line)}
.cup-record-list article>span{color:var(--accent);font-size:17px;font-weight:600;line-height:1.8}.cup-record-list h3{font-size:21px}
.cup-record-list p{font-size:13px;margin-top:12px;line-height:1.85}
.cup-series{position:relative;min-height:680px;height:85svh;max-height:950px;overflow:hidden;isolation:isolate;color:white;background:#121212}
.cup-series-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;will-change:transform}
.cup-series:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000d,transparent 95%),linear-gradient(90deg,#0006,transparent)}
.cup-series-copy{position:absolute;z-index:1;bottom:11%;left:6%;right:6%;max-width:700px}
.cup-series-copy p{color:#ecece6;font-size:14px;margin-top:25px;max-width:600px}
.cup-series-copy .text-link{display:inline-block;color:#fff;font-size:13px;margin-top:25px}
.cup-program{padding-top:110px;padding-bottom:100px;display:grid;grid-template-columns:1.05fr 1fr;gap:10%}
.cup-program>div>p{margin-top:30px;max-width:470px}.cup-program-list article{padding:0 0 28px;margin:0 0 28px;border-bottom:1px solid var(--line)}
.cup-program-list p{font-size:14px;margin-top:12px}.cup-program-list article:last-child{margin-bottom:0}
.cup-enquiry{border-top:1px solid var(--line);display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:10%;padding-top:70px;padding-bottom:90px}
.cup-enquiry p{max-width:450px}.cup-enquiry .button{display:inline-flex;margin-top:30px}
.cup-credits{padding-bottom:40px}.cup-credits p{font-size:10px;line-height:1.9}.cup-credits a{text-decoration:underline;text-underline-offset:3px}
.cup-home{display:grid;grid-template-columns:1.2fr 1fr;background:#111;color:#fff;overflow:hidden}
.cup-home-image{display:block;overflow:hidden;min-height:500px}.cup-home-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.cup-home-image:hover img{transform:scale(1.035)}
.cup-home-copy{padding:65px 12% 65px 10%;align-self:center}.cup-home h2{font-size:clamp(38px,3.5vw,56px);letter-spacing:-2px}.cup-home p{color:#b7b7b7;font-size:14px;line-height:1.9;margin:27px 0 30px}
@media(min-width:1101px) and (max-width:1350px){header nav#navigation{font-size:14px;gap:19px}header .brand,header .brand-logo{width:185px;min-width:185px}header{gap:19px}}
@media(max-width:1100px){.cup-hero{height:calc(100svh - 96px)}.cup-champion-copy{padding:45px 8%}.cup-champion-photo{min-height:620px}.cup-champion-copy h2{font-size:34px}.cup-honors{grid-template-columns:1fr;gap:18px}.cup-intro,.cup-record,.cup-program,.cup-enquiry{gap:6%}.cup-record-list article{grid-template-columns:55px 1fr;gap:15px}}
@media(max-width:760px){.cup-page h2,.cup-home h2{font-size:40px;letter-spacing:-1.6px}.cup-page p{font-size:14px}.cup-hero{height:calc(88svh - 90px);min-height:540px;max-height:800px}.cup-hero-video{object-position:60% center}.cup-hero-copy{bottom:17%}.cup-hero h1{font-size:clamp(51px,11.8vw,86px);letter-spacing:-2.4px;line-height:1.04}.cup-series-logo{width:90px;margin-bottom:30px}.cup-hero-copy>p{font-size:12px;margin-top:24px}.cup-pause{bottom:22px;right:6%;font-size:10px}.cup-wrap{padding-left:6%;padding-right:6%}.cup-intro{grid-template-columns:1fr;padding-top:65px;padding-bottom:65px;gap:35px}.cup-intro .cup-lead{font-size:21px;margin-bottom:20px}.cup-championship{grid-template-columns:1fr}.cup-champion-photo{height:72vw;min-height:280px;max-height:450px}.cup-champion-copy{padding:40px 6% 45px}.cup-year{font-size:95px;letter-spacing:-5px}.cup-champion-copy h2{font-size:35px;letter-spacing:-1.5px}.cup-honors{grid-template-columns:1fr 1.1fr;gap:20px}.cup-honors strong{font-size:12px}.cup-honors span{font-size:10px}.cup-source-link{font-size:11px;margin-top:26px}.cup-record{display:block;padding-top:15px;padding-bottom:60px}.cup-record-list{margin-top:35px}.cup-record-list article{grid-template-columns:55px 1fr;gap:20px;padding:23px 0}.cup-record-list h3{font-size:21px}.cup-record-list p{font-size:13px}.cup-series{height:85svh;min-height:620px;max-height:850px}.cup-series-image{object-position:65% center}.cup-series-copy{bottom:8%}.cup-series-copy p{font-size:13px}.cup-series-copy .text-link{font-size:12px;line-height:1.8}.cup-program{grid-template-columns:1fr;padding-top:65px;padding-bottom:35px;gap:40px}.cup-program>div>p{margin-top:25px}.cup-program-list h3{font-size:23px}.cup-program-list p{font-size:13px}.cup-enquiry{grid-template-columns:1fr;padding-top:45px;padding-bottom:55px;gap:30px;margin-left:6%;margin-right:6%;padding-left:0;padding-right:0}.cup-enquiry .button{font-size:12px}.cup-credits{padding-bottom:30px}.cup-credits p{font-size:9px}.cup-home{grid-template-columns:1fr}.cup-home-image{height:78vw;min-height:300px;max-height:450px}.cup-home-copy{padding:40px 6% 50px}.cup-home h2{font-size:38px}.cup-home p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.cup-hero-video,.cup-champion-photo img,.cup-series-image,.cup-home-image img{transform:none!important;will-change:auto;transition:none!important}}
/* Keep yellow vivid and headings readable in both appearance modes. */
:root{--cup-em:var(--ink);--cup-mark:linear-gradient(transparent 86%,var(--accent) 86%)}
:root[data-theme=dark]{--cup-em:var(--accent);--cup-mark:none}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--cup-em:var(--accent);--cup-mark:none}}
.cup-page em{color:var(--cup-em);background-image:var(--cup-mark);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.cup-hero em,.cup-series em{color:var(--accent);background-image:none}.cup-series-logo{mix-blend-mode:screen}
.cup-series-logo{display:block;aspect-ratio:1.3;height:auto;background:white;mask:url(assets/partner-cup.webp) center/contain no-repeat;mask-mode:luminance;mix-blend-mode:normal}

/* Match the dealer-award trophy; align each award with its recipient. */
.cup-honors>div{display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:12px;align-items:start}.cup-trophy{display:block;width:30px;height:30px;margin-top:2px}.cup-honor-copy{min-width:0}
@media(max-width:760px){.cup-honors>div{grid-template-columns:24px minmax(0,1fr);column-gap:9px}.cup-trophy{width:24px;height:24px;margin-top:1px}}

/* A quiet crossfade inside the existing championship photograph. */
.cup-photo-rotator .cup-photo-slide{inset:0;opacity:0;transform:none;will-change:opacity;transition:opacity 1.8s cubic-bezier(.4,0,.2,1);pointer-events:none}
.cup-photo-rotator .cup-photo-slide.is-previous{opacity:1}
.cup-photo-rotator .cup-photo-slide.is-active{opacity:1;z-index:1}
.cup-photo-rotator .cup-photo-slide:nth-of-type(2){object-position:50% center}
.cup-photo-rotator .cup-photo-slide:nth-of-type(3){object-position:50% 57%}
/* Tiny visible dots; generous transparent targets for touch and keyboard. */
.cup-photo-controls{position:absolute;z-index:2;left:50%;bottom:14px;transform:translateX(-50%);color:#fff}
.cup-photo-controls[hidden]{display:none}
.cup-photo-dots{display:flex;align-items:center}
.cup-photo-dots button{display:grid;place-items:center;width:32px;height:44px;padding:0;border:0;background:transparent;color:inherit;border-radius:50%;cursor:pointer}
.cup-photo-dots button:focus-visible{outline:2px solid #fff;outline-offset:-5px}
.cup-photo-dots span{width:5px;height:5px;background:#fffb;border-radius:50%;box-shadow:0 1px 4px #0009;transition:background .4s ease}
.cup-photo-dots [aria-current=true] span{background:var(--accent)}
.cup-photo-toggle{position:absolute;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.cup-photo-toggle:focus-visible{left:50%;bottom:46px;transform:translateX(-50%);width:auto;height:auto;clip-path:none;padding:9px 13px;border-radius:4px;background:#111;color:#fff;outline:2px solid #fff;outline-offset:3px}
@media(max-width:760px){.cup-photo-controls{bottom:12px}}
@media(prefers-reduced-motion:reduce){.cup-photo-rotator .cup-photo-slide,.cup-photo-dots span{transition:none}}
