/* =====================================================================
   theme.css: loaded last.
   1. Tighter rhythm and seamless gradients (both themes)
   2. The day/night switch
   3. The light theme (the default)
   ===================================================================== */

/* ---------- 1. rhythm: less air between sections, one continuous canvas ---------- */
.section{padding:clamp(36px,5vw,76px) 0}
.sec-head{margin-bottom:clamp(20px,3vw,40px)}
.sec-head .kicker{margin-bottom:12px}
.sp{padding-top:clamp(34px,4.6vw,64px);padding-bottom:clamp(16px,2.4vw,32px)}
.orb-sec{padding-bottom:clamp(20px,3vw,44px)}
.fmt{height:250vh}
.page{padding-top:calc(var(--nav-h) + clamp(26px,4.6vw,64px))}
.page-head{margin-bottom:clamp(24px,3.6vw,48px)}
.tm-body{padding-top:clamp(24px,4vw,52px)}
.foot{margin-top:clamp(12px,2.6vw,36px);border-top:0}

/* no stripes: sections sit on one canvas whose soft light drifts left and right as you scroll */
#main .section:nth-of-type(even){background:none}
#main::before{content:"";position:absolute;inset:0 0 -30vh 0;z-index:-2;pointer-events:none;-webkit-mask:linear-gradient(180deg,#000 calc(100% - 60vh),transparent);mask:linear-gradient(180deg,#000 calc(100% - 60vh),transparent);
  background:radial-gradient(46vw 470px at 4% 520px,rgba(var(--glow1),var(--glow-a)),transparent 72%),
             radial-gradient(42vw 450px at 96% 1480px,rgba(var(--glow2),var(--glow-a)),transparent 72%);
  background-size:100% 2000px;background-repeat:repeat-y}
:root{--glow1:124,92,255;--glow2:47,107,255;--glow-a:.07}
/* any band that has its own colour fades in and out instead of starting on a hard line */
.orb-sec::before{-webkit-mask:linear-gradient(180deg,transparent 0,rgba(0,0,0,.35) 14%,#000 34%,#000 70%,rgba(0,0,0,.35) 88%,transparent);mask:linear-gradient(180deg,transparent 0,rgba(0,0,0,.35) 14%,#000 34%,#000 70%,rgba(0,0,0,.35) 88%,transparent)}
[data-theme=dark] .orb-sec::before{background:radial-gradient(80% 60% at 50% 50%,#2a2170 0%,#1d1757 40%,#141040 65%,#0c0a22 90%)}
.orb-fx{-webkit-mask:linear-gradient(180deg,transparent,#000 18%,#000 80%,transparent);mask:linear-gradient(180deg,transparent,#000 18%,#000 80%,transparent)}
.foot{background:linear-gradient(180deg,transparent,rgba(124,92,255,.08) 45%,rgba(47,107,255,.08))}
.foot::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--line2),transparent)}

/* ---------- logos: white lettering on dark, dark lettering on light ---------- */
.lg-lt{display:none!important}
[data-theme=light] .lg-dk{display:none!important}
[data-theme=light] .lg-lt{display:block!important}
.brand .lg-lt,.brand .lg-dk{height:46px;width:auto}
@media (max-width:520px){.brand .lg-lt,.brand .lg-dk{height:40px}}
.foot-brand .lg-lt,.foot-brand .lg-dk{height:56px;width:auto;margin-bottom:16px}

/* ---------- 2. the day/night switch ----------
   A tiny cricket sky. By day: a sunset in lilac and peach, a golden sun-ball with a seam and turning rays.
   By night: indigo, twinkling stars, a shooting star, a moon-ball. Switching bowls the ball to the other end:
   it squashes as it rolls, leaves a streak, and knocks a little burst of "bails" off at the far end. */
.thm{--w:78px;--h:36px;--b:28px;--gap:4px;position:relative;flex:none;width:var(--w);height:var(--h);border-radius:999px;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;isolation:isolate;overflow:visible}
.thm:focus-visible{outline:2px solid var(--p);outline-offset:4px}
.thm-sky{position:absolute;inset:0;border-radius:inherit;overflow:hidden;background:linear-gradient(120deg,#9f7bff 0%,#e79cf3 52%,#ffd29a 100%);
  box-shadow:inset 0 2px 5px rgba(60,20,120,.28),inset 0 -2px 6px rgba(255,255,255,.35),0 0 0 1.5px rgba(255,255,255,.7),0 8px 22px -8px rgba(124,60,255,.75);transition:box-shadow .8s}
.thm-sky::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,#0c0a26 0%,#1f1760 55%,#3a2a92 100%);opacity:0;transition:opacity .8s var(--ease-io)}
[data-theme=dark] .thm-sky{box-shadow:inset 0 2px 6px rgba(0,0,0,.6),0 0 0 1.5px rgba(160,138,255,.45),0 8px 24px -8px rgba(124,92,255,.9)}
[data-theme=dark] .thm-sky::before{opacity:1}
/* day: two clouds drifting */
.thm-cloud{position:absolute;height:8px;border-radius:8px;background:#fff;opacity:.95;transition:transform .8s var(--ease-io),opacity .5s;animation:thcl 7s ease-in-out infinite}
.thm-cloud::before{content:"";position:absolute;left:4px;bottom:3px;width:10px;height:10px;border-radius:50%;background:#fff}
.thm-cloud.c1{width:20px;left:9px;bottom:7px}
.thm-cloud.c2{width:14px;left:24px;top:7px;opacity:.8;transform:scale(.8);animation-delay:-3s}
@keyframes thcl{50%{translate:4px 0}}
[data-theme=dark] .thm-cloud{opacity:0;transform:translateY(16px) scale(.6)}
/* night: stars and a shooting star */
.thm-stars b{position:absolute;width:2px;height:2px;border-radius:50%;background:#fff;box-shadow:0 0 4px #fff;opacity:0;transform:scale(0);transition:opacity .5s .2s,transform .6s var(--spring) .2s}
.thm-stars b:nth-child(1){left:42px;top:8px}.thm-stars b:nth-child(2){left:54px;top:18px;width:3px;height:3px}.thm-stars b:nth-child(3){left:46px;top:26px}
.thm-stars b:nth-child(4){left:62px;top:9px}.thm-stars b:nth-child(5){left:37px;top:16px;width:1.5px;height:1.5px}.thm-stars b:nth-child(6){left:66px;top:24px;width:1.5px;height:1.5px}
[data-theme=dark] .thm-stars b{opacity:.95;transform:none;animation:thtw 2.6s ease-in-out infinite}
[data-theme=dark] .thm-stars b:nth-child(2n){animation-delay:.9s}[data-theme=dark] .thm-stars b:nth-child(3n){animation-delay:1.7s}
@keyframes thtw{50%{opacity:.25}}
.thm-shoot{position:absolute;top:6px;left:70px;width:18px;height:1.5px;border-radius:2px;background:linear-gradient(90deg,#fff,transparent);opacity:0;rotate:-24deg}
[data-theme=dark] .thm-shoot{animation:thsh 6s 2s ease-in infinite}
@keyframes thsh{0%,86%{opacity:0;translate:0 0}88%{opacity:1}100%{opacity:0;translate:-34px 15px}}
/* the ball */
.thm-ball{position:absolute;top:calc((var(--h) - var(--b)) / 2);left:var(--gap);width:var(--b);height:var(--b);border-radius:50%;
  translate:calc(var(--w) - var(--b) - var(--gap) * 2) 0;transition:translate .8s cubic-bezier(.62,-.25,.3,1.3)}
.thm-face{position:absolute;inset:0;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 34% 30%,#fff8cf,#ffd23f 42%,#ff9a1a 100%);
  box-shadow:0 0 0 3px rgba(255,214,90,.35),0 0 18px 4px rgba(255,170,40,.6),inset -3px -4px 6px rgba(200,90,0,.35);transition:background .8s,box-shadow .8s,rotate .8s cubic-bezier(.62,-.25,.3,1.3)}
.thm-rays{position:absolute;inset:-7px;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(255,220,120,.85) 0 7deg,transparent 7deg 30deg);
  -webkit-mask:radial-gradient(closest-side,transparent 68%,#000 70%,#000 86%,transparent 88%);mask:radial-gradient(closest-side,transparent 68%,#000 70%,#000 86%,transparent 88%);
  animation:thsp 12s linear infinite;transition:opacity .5s,scale .6s var(--spring)}
@keyframes thsp{to{rotate:360deg}}
.thm-seam{position:absolute;inset:3px 10px;border-radius:50%;border:1.6px dashed rgba(190,80,0,.6);border-top-color:transparent;border-bottom-color:transparent;transition:opacity .5s}
.thm-cr{position:absolute;border-radius:50%;background:rgba(118,110,165,.38);box-shadow:inset 1px 1px 1px rgba(60,50,110,.25);opacity:0;transition:opacity .5s .2s}
.thm-cr.r1{width:8px;height:8px;left:6px;top:8px}.thm-cr.r2{width:4px;height:4px;left:17px;top:17px}.thm-cr.r3{width:5px;height:5px;left:15px;top:5px}
[data-theme=dark] .thm-ball{translate:0 0}
[data-theme=dark] .thm-face{rotate:-360deg;background:radial-gradient(circle at 34% 30%,#ffffff,#e6e3f7 55%,#b6b0d8 100%);box-shadow:0 0 0 3px rgba(225,220,255,.16),0 0 18px 3px rgba(200,190,255,.5),inset -3px -4px 6px rgba(80,70,140,.3)}
[data-theme=dark] .thm-rays{opacity:0;scale:.6}
[data-theme=dark] .thm-seam{opacity:0}
[data-theme=dark] .thm-cr{opacity:1}
/* hover: the ball peeks toward the other end */
.thm:hover .thm-ball{translate:calc(var(--w) - var(--b) - var(--gap) * 2 - 5px) 0}
[data-theme=dark] .thm:hover .thm-ball{translate:5px 0}
/* while rolling: squash, stretch and a speed streak */
.thm.roll .thm-face{animation:thsq .8s ease-in-out}
@keyframes thsq{30%{scale:1.22 .84}60%{scale:.9 1.08}}
.thm-ball::before{content:"";position:absolute;top:50%;height:10px;width:0;translate:0 -50%;border-radius:10px;opacity:0;pointer-events:none}
.thm.roll .thm-ball::before{animation:thst .8s ease-out}
.thm.roll[data-to=dark] .thm-ball::before{left:60%;background:linear-gradient(90deg,rgba(255,255,255,.7),transparent)}
.thm.roll[data-to=light] .thm-ball::before{right:60%;background:linear-gradient(270deg,rgba(255,230,140,.9),transparent)}
@keyframes thst{0%{width:0;opacity:0}40%{width:36px;opacity:1}100%{width:0;opacity:0}}
/* the "bails" burst where the ball lands (drawn by theme.js) */
.thm-bit{position:fixed;z-index:400;width:6px;height:6px;border-radius:2px;pointer-events:none}
@media (max-width:520px){.thm{--w:66px;--h:32px;--b:24px}.thm-stars b:nth-child(4),.thm-stars b:nth-child(6){display:none}}
@media (prefers-reduced-motion:reduce){.thm-rays,.thm-cloud,.thm-stars b,.thm-shoot{animation:none!important}.thm-ball,.thm-face{transition-duration:.01s}}

/* the new theme spreads from the switch in a circle (browsers with View Transitions); others cross-fade */
::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}
::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2}
.thm-fade,.thm-fade *,.thm-fade *::before,.thm-fade *::after{transition:background-color .6s,color .6s,border-color .6s,fill .6s,box-shadow .6s!important}

/* =====================================================================
   3. LIGHT THEME: "porcelain"
   A near-white page with the faintest violet in it, white cards with soft real
   shadows, and ink-dark words. Only photos and the display plinths stay dark,
   because that is what a photo needs. Nothing is a colour-inverted dark page.
   ===================================================================== */
[data-theme=light]{
  color-scheme:light;
  --fg:26,21,54;--sh:246,244,252;--hi:#14102a;--on-accent:#fff;
  --bg:#eceafc;--bg2:#e4e6fa;--surf:#ffffff;--surf2:#f6f5fe;--grey:#e8e8f0;--pink:#ffd3e8;
  --line:rgba(26,21,54,.10);--line2:rgba(26,21,54,.17);
  --ink:#14102a;--ink2:#4a4568;--ink3:#79738f;
  --p-ink:#5a35d8;--b-ink:#2a4fd0;
  --live:#d81b40;--ok:#0d8f55;
  --glow1:139,92,246;--glow2:192,72,230;--glow-a:.14;
  --logo-word:#14102a;
  --glass:#ffffff;
  --glass-line:rgba(26,21,54,.09);
  --glass-shadow:0 1px 2px rgba(26,21,54,.05),0 12px 28px -18px rgba(50,30,120,.3);
}
[data-theme=light] body{background:var(--bg);color:var(--ink)}
[data-theme=light] ::selection{background:rgba(124,77,255,.3);color:var(--ink)}

/* violet light that slowly moves under the page (fixed, transform-only: smooth) */
[data-theme=light] .ambient{background:radial-gradient(60vw 50vh at 100% 0%,rgba(255,196,226,.55),transparent 70%),radial-gradient(55vw 45vh at 0% 100%,rgba(255,206,230,.4),transparent 70%),linear-gradient(165deg,#efedfd 0%,#e7e9fc 38%,#e9e6fb 68%,#efe6f8 100%)}
[data-theme=light] .ambient .a1{opacity:.17;width:70vw;height:70vw;left:-22vw;top:-24vw;background:radial-gradient(circle,#9b6bff,transparent 64%);animation:aur1 26s ease-in-out infinite alternate}
[data-theme=light] .ambient .a2{opacity:.15;width:64vw;height:64vw;right:-22vw;bottom:-22vw;background:radial-gradient(circle,#6a6cff,transparent 64%);animation:aur2 30s ease-in-out infinite alternate}
[data-theme=light] .ambient::before{content:"";position:absolute;width:52vw;height:52vw;right:-8vw;top:18vh;border-radius:50%;background:radial-gradient(circle,rgba(214,92,240,.5),transparent 64%);opacity:.16;animation:aur3 34s ease-in-out infinite alternate}
[data-theme=light] .ambient::after{content:"";position:absolute;width:46vw;height:46vw;left:12vw;bottom:-14vw;border-radius:50%;background:radial-gradient(circle,rgba(124,92,255,.5),transparent 64%);opacity:.14;animation:aur1 38s ease-in-out infinite alternate-reverse}
[data-theme=light] .ambient .grain{opacity:.022}
@keyframes aur1{to{transform:translate(9vw,7vh) scale(1.08)}}
@keyframes aur2{to{transform:translate(-8vw,-9vh) scale(1.1)}}
@keyframes aur3{to{transform:translate(-12vw,10vh) scale(.92)}}
@media (prefers-reduced-motion:reduce){[data-theme=light] .ambient *,[data-theme=light] .ambient::before,[data-theme=light] .ambient::after{animation:none!important}}

/* things that sit on colour or on photos keep white text */
[data-theme=light] .pill-live,[data-theme=light] .live-btn,[data-theme=light] .btn.grad,[data-theme=light] .btn.solid,[data-theme=light] .sb .ball.b-b,[data-theme=light] .sb .ball.b-x,[data-theme=light] .sb .ball.b-w,
[data-theme=light] .cur-label,[data-theme=light] .cur-tag,[data-theme=light] .igh-ic,[data-theme=light] .curtain{--hi:#fff;--fg:255,255,255}

/* ---- buttons: violet gradient for the main actions, glass for the rest ---- */
[data-theme=light] .btn.solid{background:linear-gradient(120deg,#6d3cf0,#4b4cf0);color:#fff;border-color:transparent}
[data-theme=light] .btn.solid:hover{background:linear-gradient(120deg,#7b4dff,#5a5bff)}
[data-theme=light] .btn.solid,[data-theme=light] .btn.grad{box-shadow:0 0 0 1px rgba(255,255,255,.35) inset,0 10px 26px -10px rgba(90,40,220,.7)}
[data-theme=light] .btn.solid:hover,[data-theme=light] .btn.grad:hover{box-shadow:0 0 0 1px rgba(255,255,255,.5) inset,0 16px 36px -10px rgba(90,40,220,.8)}
[data-theme=light] .btn:not(.solid):not(.grad){border-color:var(--line2);color:var(--ink);background:#fff;box-shadow:0 1px 2px rgba(26,21,54,.05)}
[data-theme=light] .btn:not(.solid):not(.grad):hover{border-color:rgba(124,77,255,.55);background:#fff;box-shadow:0 2px 4px rgba(26,21,54,.06),0 12px 26px -16px rgba(90,50,200,.5)}
[data-theme=light] .link-arrow{color:var(--ink)}
[data-theme=light] .chip.on{text-shadow:none;color:var(--ink)}
[data-theme=light] .kicker{color:var(--p-ink)}
[data-theme=light] .tag{color:var(--p-ink)}
[data-theme=light] .t-up{color:var(--b-ink)}

/* ---- navigation: frosted lilac bar; white over the home photo ---- */
[data-theme=light] .nav.solid .nav-in{background:rgba(250,249,254,.86);border-bottom-color:var(--line);box-shadow:0 10px 28px -24px rgba(50,30,120,.4)}
[data-theme=light] .burger i{background:var(--ink)}
[data-theme=light] .burger{background:rgba(26,21,54,.05)}
[data-theme=light] .nav-links a{color:var(--ink2)}
[data-theme=light] .nav-links a:hover,[data-theme=light] .nav-links a.on{color:var(--ink)}
[data-theme=light] .soc a{color:var(--ink2)}
[data-theme=light] .soc a:hover{color:var(--ink)}
[data-theme=light][data-page=home] .nav:not(.solid){--ink:#fff;--ink2:rgba(255,255,255,.82);--fg:255,255,255}
[data-theme=light][data-page=home] .nav:not(.solid) .lg-lt{display:none!important}
[data-theme=light][data-page=home] .nav:not(.solid) .lg-dk{display:block!important}
[data-theme=light][data-page=home] .nav:not(.solid) .burger{background:rgba(255,255,255,.16)}
[data-theme=light][data-page=home] .nav:not(.solid) .burger i{background:#fff}
[data-theme=light] .menu{background:linear-gradient(160deg,#fff,#f4f2fc 60%,#efecf9)}
[data-theme=light] .menu li a.on{-webkit-text-stroke:1.5px var(--ink)}

/* ---- hero: the photo exactly as it is, framed in violet, melting into the lilac page ---- */
[data-theme=light] .hero{background:#0e0a22;--ink:#fff;--ink2:rgba(255,255,255,.84);--ink3:rgba(255,255,255,.66);--hi:#fff;--fg:255,255,255;--logo-word:#fff;--line:rgba(255,255,255,.16)}
[data-theme=light] .hero-shade{background:
  linear-gradient(180deg,rgba(40,18,96,.55) 0,rgba(40,18,96,.22) 22%,rgba(34,16,84,.42) 48%,rgba(92,58,190,.55) 74%,rgba(170,150,220,.86) 90%,var(--bg) 100%),
  radial-gradient(60% 50% at 50% 42%,rgba(20,10,50,0),rgba(20,10,50,.32) 100%),
  radial-gradient(50% 40% at 10% 96%,rgba(170,90,255,.45),transparent 70%),radial-gradient(50% 40% at 90% 96%,rgba(90,100,255,.4),transparent 70%)}
[data-theme=light] .hero .btn:not(.solid):not(.grad){background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.45);color:#fff;box-shadow:none}
[data-theme=light] .hero .btn:not(.solid):not(.grad):hover{background:rgba(255,255,255,.22)}
[data-theme=light] .hero .cd-title{color:#d9ccff}
.hero-pic-l{display:none}
[data-theme=light] .hero-media>picture:not(.hero-pic-l){display:none}
[data-theme=light] .hero-pic-l{display:block}
@media (max-width:860px),(max-aspect-ratio:1/1){[data-theme=light] .hero-pic-l img{object-position:50% 45%}}

/* ---- page openings: the photo as it is, on the right, fading into the page; light versions for black skies ---- */
[data-theme=light] #main{--pbg:var(--img-page-l,var(--img-page))}
[data-theme=light] #main[data-page=matches]{--pbg:var(--img-matches-l,var(--img-matches))}
[data-theme=light] #main[data-page=teams]{--pbg:var(--img-teams-l,var(--img-teams))}
[data-theme=light] #main[data-page=games]{--pbg:var(--img-games-l,var(--img-games))}
[data-theme=light] #main[data-page=news]{--pbg:var(--img-news-l,var(--img-news))}
[data-theme=light] #main[data-page=gallery]{--pbg:var(--img-gallery-l,var(--img-gallery))}
[data-theme=light] #main[data-page=about]{--pbg:var(--img-about-l,var(--img-about))}
[data-theme=light] #main[data-page=partner]{--pbg:var(--img-partner-l,var(--img-partner))}
[data-theme=light] #main[data-page=sponsors]{--pbg:var(--img-sponsors-l,var(--img-sponsors))}
[data-theme=light] #main[data-page]:not([data-page=home]) .page::before{opacity:.66;filter:none;height:min(64vh,600px,100%);
  -webkit-mask:linear-gradient(180deg,transparent 0,#000 16%,rgba(0,0,0,.55) 55%,transparent 92%),linear-gradient(90deg,transparent 24%,rgba(0,0,0,.45) 50%,#000 82%);-webkit-mask-composite:source-in;
  mask:linear-gradient(180deg,transparent 0,#000 16%,rgba(0,0,0,.55) 55%,transparent 92%),linear-gradient(90deg,transparent 24%,rgba(0,0,0,.45) 50%,#000 82%);mask-composite:intersect}

/* ---- surfaces: frosted glass on lilac ---- */
[data-theme=light] .mc,[data-theme=light] .lv-com,[data-theme=light] .lv-off{background:#fff;border-color:var(--line);box-shadow:var(--glass-shadow)}

/* ---- sponsors: logos in deep ink on the strip; tiles in deep violet ---- */
[data-theme=light] .spt-p{background:#fff;border-color:var(--line);box-shadow:0 1px 2px rgba(26,21,54,.05),0 14px 30px -20px rgba(50,30,120,.3)}
[data-theme=light] .spt:hover .spt-p{background:#fff;border-color:rgba(124,77,255,.4);box-shadow:0 2px 4px rgba(26,21,54,.06),0 22px 44px -22px rgba(90,50,200,.45)}
[data-theme=light] .dom-big{text-shadow:none}
[data-theme=light] .dom-big span{background:linear-gradient(180deg,#24185c 20%,#7a3cff 75%,#c14bf0);-webkit-background-clip:text;background-clip:text}

/* ---- teams band: a vivid violet stage, white tiles ---- */
[data-theme=light] .orb-sec::before{background:radial-gradient(70% 55% at 50% 50%,rgba(124,92,255,.10),transparent 72%),linear-gradient(180deg,#f3f1fb 0%,#eceaf7 50%,#f3f1fb 100%)}
[data-theme=light] .orb-fx .src{background:radial-gradient(closest-side,rgba(124,92,255,.16),transparent)}
[data-theme=light] .orb-fx .bm{opacity:.1}
[data-theme=light] .orb-pitch{opacity:.3}
[data-theme=light] .orb-path .in{stroke:rgba(26,21,54,.16)}
[data-theme=light] .orb-n span{background:#fff;border-color:var(--line);box-shadow:0 1px 2px rgba(26,21,54,.06),0 12px 26px -16px rgba(50,30,120,.4)}
[data-theme=light] .orb-n.on span{background:#fff;border-color:rgba(124,77,255,.5);box-shadow:0 0 0 3px rgba(124,92,255,.16),0 16px 32px -16px rgba(60,30,150,.45)}
[data-theme=light] .orb-b{background:#fff;color:var(--ink);border-color:var(--line);box-shadow:0 1px 2px rgba(26,21,54,.06),0 10px 22px -14px rgba(50,30,120,.4)}

/* ---- footer: land on deep violet ---- */
[data-theme=light] .foot{background:linear-gradient(180deg,rgba(241,239,249,0) 0,#f1eff9 16%,#eceaf6 60%,#e9e6f4 100%);color:var(--ink)}
[data-theme=light] .foot-band{border-color:rgba(124,77,255,.26);background:linear-gradient(120deg,#fff,#f4f1fd);box-shadow:0 1px 2px rgba(26,21,54,.05),0 22px 50px -32px rgba(60,30,150,.4)}
[data-theme=light] .foot li a{color:var(--ink2)}
[data-theme=light] .foot li a:hover{color:var(--ink)}
[data-theme=light] .foot .soc a{color:var(--ink2)}

/* ---- photos keep a dark scrim with white words ---- */
[data-theme=light] .sl-s,[data-theme=light] .gl-i figcaption,[data-theme=light] .ig-p,[data-theme=light] .lb{
  --sh:14,10,32;--fg:255,255,255;--hi:#fff;--ink:#fff;--ink2:rgba(255,255,255,.84);--ink3:rgba(255,255,255,.66);color:#fff}
[data-theme=light] .sl-s .tag{color:#e4ddff}

/* ---- small labels: deepen for contrast ---- */
[data-theme=light] .cd-title,[data-theme=light] .fmt-g,[data-theme=light] .pmn-go,[data-theme=light] .hl-n{color:var(--p-ink)}
[data-theme=light] .form-err{color:#c81e3c}
[data-theme=light] .fmt-127 line{stroke:#7c5cff}
[data-theme=light] .fmt-num{text-shadow:0 0 40px rgba(124,92,255,.35)}
[data-theme=light] .fmt-steps button::before{box-shadow:0 0 10px rgba(124,92,255,.5)}

/* ---- panels that were dark ---- */
[data-theme=light] .img-reveal::after{background:var(--bg)}
[data-theme=light] .tms-l,[data-theme=light] .fd{filter:none}
[data-theme=light] .drawer{background:linear-gradient(180deg,#fff,#f6f4fd);box-shadow:-30px 0 80px -44px rgba(50,30,120,.35)}
[data-theme=light] .field select option{background:#fff;color:var(--ink)}
[data-theme=light] .scrim,[data-theme=light] .pm{background:rgba(30,20,70,.3)}
[data-theme=light] .pm-in{background:linear-gradient(135deg,#fff,#f6f4fd)}
[data-theme=light] .sx-nav{background:#fff;color:var(--ink);border-color:var(--line2);box-shadow:0 1px 2px rgba(26,21,54,.05)}
[data-theme=light] .sx-nav:hover{background:#fff;border-color:rgba(124,77,255,.6)}
[data-theme=light] .ps-ph{background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--tc,#8a6bff) 18%,#fff),#f1eff9)}
[data-theme=light] .hs{background:linear-gradient(135deg,#fff,#f7f5fd);box-shadow:0 30px 70px -40px rgba(40,10,120,.6);--ink:#18142e;--ink2:#443e5e;--ink3:#625c7e;--hi:#18142e;--fg:40,28,90}
[data-theme=light] .fd.lg{background:linear-gradient(160deg,#fff,#f3f0fc);box-shadow:0 0 0 1px var(--line),0 8px 20px -12px rgba(50,30,120,.35)}
[data-theme=light] .tms-disc{background:radial-gradient(circle at calc(50% + var(--tx) * 30%) calc(32% + var(--ty) * 30%),color-mix(in srgb,var(--tc) 30%,#fff) 0,color-mix(in srgb,var(--tc) 14%,#eeeaf8) 48%,#d8d1ea 78%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.9),inset 0 -30px 60px rgba(60,30,150,.08),0 40px 100px -46px color-mix(in srgb,var(--tc) 60%,transparent),0 0 0 14px rgba(124,92,255,.06)}

/* ---- live scoreboards: frosted glass ---- */
[data-theme=light] .sb{--ink:#14102a;--ink2:#4a4568;--ink3:#79738f;--hi:#14102a;--fg:26,21,54;background:linear-gradient(135deg,rgba(255,255,255,var(--sb-alpha)),rgba(247,245,253,calc(var(--sb-alpha) * .97)));border-color:var(--line);box-shadow:0 30px 70px -34px rgba(40,10,120,.6)}
[data-theme=light] .sb-hud{background:linear-gradient(180deg,rgba(255,255,255,var(--sb-alpha)),rgba(240,236,250,calc(var(--sb-alpha) * .95)))}
[data-theme=light] .sb-bar{background:rgba(26,21,54,.07)}
[data-theme=light] .sb-x{background:#fff}
[data-theme=light] .sb-bt,[data-theme=light] .sb-bt.o{--hi:#fff;--fg:255,255,255;color:#fff}
[data-theme=light] .sb-hud .hud-team small{color:var(--ink3)!important}
[data-theme=light] .hs-live{box-shadow:0 30px 70px -36px rgba(40,10,120,.6),0 0 50px -24px rgba(232,38,74,.45)}

/* the open phone menu keeps the top bar (logo, day/night switch, close button) visible */
html.lock.menu-open .nav{opacity:1;pointer-events:auto}
/* page-opening photo always fades out inside the page, even on short pages */
[data-theme=dark] #main[data-page]:not([data-page=home]) .page::before,:root:not([data-theme]) #main[data-page]:not([data-page=home]) .page::before{height:min(80vh,760px,100%)}
@media (max-width:760px){[data-theme=light] #main[data-page]:not([data-page=home]) .page::before{opacity:.38;height:min(52vh,420px,100%)}}

/* ---------- sponsor showcase: each partner on a small display plinth, logo sized to fit ---------- */
.sx-logo{position:relative;justify-self:center;width:min(100%,400px);height:auto;aspect-ratio:16/11;padding:0;border-radius:18px;overflow:hidden;isolation:isolate;
  background:radial-gradient(120% 80% at 50% 0%,rgba(124,92,255,.26),transparent 62%),linear-gradient(160deg,#1a1630,#0c0a18);
  box-shadow:0 0 0 1px rgba(255,255,255,.09) inset,0 1px 0 rgba(255,255,255,.12) inset,0 40px 80px -40px rgba(70,40,200,.7);
  transform:perspective(900px) rotateX(calc(var(--ty,0) * -5deg)) rotateY(calc(var(--tx,0) * 7deg));transition:transform .5s var(--ease)}
.sx-logo::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.12) 50%,transparent 65%);translate:-120% 0;transition:translate 1.1s var(--ease)}
.sx-s.on .sx-logo::after{translate:120% 0;transition-delay:.35s}
.sx-logo img{position:absolute;inset:14%;width:72%;height:72%;max-width:none;max-height:none;object-fit:contain;filter:drop-shadow(0 14px 28px rgba(0,0,0,.45))!important;opacity:1!important;
  scale:min(calc(var(--ls,1) * var(--af,1)),1.15);translate:var(--lx,0) var(--ly,0)}
@media (max-width:760px){.sx-logo{width:min(78%,300px)}.sx-stage{min-height:460px}}
[data-theme=light] .sx-logo{background:radial-gradient(120% 80% at 50% 0%,rgba(124,92,255,.07),transparent 62%),linear-gradient(160deg,#fff,#f2f0fa);box-shadow:0 0 0 1px var(--line) inset,0 1px 2px rgba(26,21,54,.05),0 30px 60px -38px rgba(50,30,120,.4)}
[data-theme=light] .sx-logo img{filter:none!important}
[data-theme=light] .sx-logo::after{background:linear-gradient(110deg,transparent 35%,rgba(124,92,255,.10) 50%,transparent 65%)}

/* ---------- backgrounds stay still: no drift with the scroll or the pointer ---------- */
#main[data-page]:not([data-page=home]) .page::before{transform:none}
/* ---------- a compact switch on phones ---------- */
@media (max-width:860px){.thm{zoom:.74}}
@media (max-width:520px){.thm{zoom:.6}}

/* =====================================================================
   4. Light theme, refined: its own pictures for every section (Admin → Site text & images →
   Background pictures (light theme)), no hard edges anywhere, colour bands that melt in and out.
   ===================================================================== */
/* home sections: light pictures only when one is set; otherwise the lilac light and smoke carry the page */
[data-theme=light] .hl::before{background-image:var(--img-headlines-l,none);opacity:calc(var(--img-strength-l,.7) * .5)}
[data-theme=light] .sl-sec::before{background-image:var(--img-stories-l,none);opacity:calc(var(--img-strength-l,.7) * .5)}
[data-theme=light] .tb-sec::before{background-image:var(--img-table-l,none);opacity:calc(var(--img-strength-l,.7) * .5)}
/* the sponsor strip: a soft frosted ribbon, feathered on every side */
[data-theme=light] .sp-band{border:0!important;background:transparent}
[data-theme=light] .sp-band::before{inset:0;background:linear-gradient(90deg,rgba(255,255,255,0),#fff 16%,#fff 84%,rgba(255,255,255,0));
  -webkit-mask:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent);mask:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent)}
/* the violet teams stage fades in and out over a longer distance */
[data-theme=light] .orb-sec::before{-webkit-mask:linear-gradient(180deg,transparent 0,rgba(0,0,0,.18) 8%,rgba(0,0,0,.6) 18%,#000 30%,#000 74%,rgba(0,0,0,.6) 86%,rgba(0,0,0,.18) 94%,transparent);mask:linear-gradient(180deg,transparent 0,rgba(0,0,0,.18) 8%,rgba(0,0,0,.6) 18%,#000 30%,#000 74%,rgba(0,0,0,.6) 86%,rgba(0,0,0,.18) 94%,transparent)}
[data-theme=light] .orb-sec .sec-head{position:relative;z-index:2}
/* footer: the light skyline rises behind the deep violet, the way the photo sits in the dark theme */
[data-theme=light] .foot::before{background-image:var(--img-footer-l,url(/media/bg-light/skyline.webp));opacity:.1;mix-blend-mode:luminosity;-webkit-mask:linear-gradient(180deg,transparent,#000 40%);mask:linear-gradient(180deg,transparent,#000 40%)}
/* page openings: the light picture, clear and natural, feathered into the page */
[data-theme=light] #main[data-page]:not([data-page=home]) .page::before{opacity:var(--img-strength-l,.7)}
@media (max-width:760px){[data-theme=light] #main[data-page]:not([data-page=home]) .page::before{opacity:calc(var(--img-strength-l,.7) * .6)}}
/* text sitting near a picture keeps its contrast */
[data-theme=light] .page-head .lead{text-shadow:0 1px 0 rgba(255,255,255,.6)}
/* cards: one consistent frosted look */
[data-theme=light] .tt,[data-theme=light] .nw-i,[data-theme=light] .aw-c,[data-theme=light] .pt-fr,[data-theme=light] .pt-stats{background:#fff;border-color:var(--line);box-shadow:var(--glass-shadow)}
[data-theme=light] .tt:hover,[data-theme=light] .nw-i:hover{border-color:rgba(124,77,255,.4);box-shadow:0 2px 4px rgba(26,21,54,.06),0 24px 48px -26px rgba(90,50,200,.45)}
[data-theme=light] .ig-empty i{background:linear-gradient(140deg,rgba(124,92,255,.10),rgba(214,92,240,.07) 55%,rgba(255,170,90,.07));border-color:var(--line);color:rgba(90,53,216,.45)}

/* ---------- day/night switch: dark is the main look, so the switch is small and quiet ---------- */
.thm{--w:58px;--h:28px;--b:21px;--gap:3.5px}
.thm-stars b:nth-child(4),.thm-stars b:nth-child(6){display:none}
.thm-cloud.c1{width:15px;left:6px;bottom:5px;height:6px}.thm-cloud.c1::before{width:8px;height:8px}
.thm-cloud.c2{left:18px;top:5px;width:10px;height:6px}
.thm-stars b:nth-child(1){left:30px;top:6px}.thm-stars b:nth-child(2){left:40px;top:14px}.thm-stars b:nth-child(3){left:34px;top:19px}.thm-stars b:nth-child(5){left:27px;top:12px}
.thm-shoot{left:50px;top:5px;width:12px}
.thm-seam{inset:2px 7px}
.thm-cr.r1{width:6px;height:6px;left:4px;top:6px}.thm-cr.r2{width:3px;height:3px;left:13px;top:13px}.thm-cr.r3{width:4px;height:4px;left:11px;top:4px}
@media (max-width:860px){.thm{zoom:.82}}
@media (max-width:520px){.thm{zoom:.7}}

/* ---- the ticket band, in daylight: a white card with a violet wash ---- */
[data-theme=light] .tk-in{--ink:#14102a;--ink2:#4a4568;--ink3:#79738f;--hi:#14102a;--fg:26,21,54;--line:rgba(26,21,54,.1);color:var(--ink);
  background:radial-gradient(70% 90% at 12% 0%,rgba(124,92,255,.13),transparent 62%),radial-gradient(60% 80% at 100% 100%,rgba(47,107,255,.09),transparent 62%),linear-gradient(150deg,#fff,#f5f3fd);
  border-color:var(--line);box-shadow:0 1px 2px rgba(26,21,54,.05),0 30px 70px -44px rgba(70,40,200,.35)}
[data-theme=light] .tk[style*="--tk-img"] .tk-in::before{background:linear-gradient(90deg,rgba(255,255,255,.95),rgba(255,255,255,.7)),var(--tk-img) center/cover;opacity:.95}
[data-theme=light] .tk-ticket{filter:drop-shadow(0 20px 34px rgba(70,40,200,.28))}

/* outlined display numbers stay legible on light */
[data-theme=light] .outline{-webkit-text-stroke:1.5px rgba(88,64,200,.42)}
/* LIVE pill: readable red on the light page, soft pink only over the dark home hero */
[data-theme=light] .nav-in .live-btn{background:rgba(255,59,92,.1)!important;color:#d0103a!important;border-color:rgba(220,30,70,.45)!important}
[data-theme=light] .nav-in .live-btn::before{background:#e8173f!important}
[data-theme=light][data-page=home] .nav:not(.solid) .nav-in .live-btn{background:rgba(255,59,92,.2)!important;color:#ffe1e7!important;border-color:rgba(255,120,145,.6)!important}

/* light: richer but soft colour washes that drift down the page */
[data-theme=light]{--glow-a:.13}
[data-theme=light] #main::before{background:radial-gradient(46vw 470px at 4% 520px,rgba(124,92,255,.13),transparent 72%),radial-gradient(42vw 450px at 96% 1480px,rgba(70,110,255,.11),transparent 72%),radial-gradient(36vw 380px at 70% 1000px,rgba(220,110,240,.08),transparent 72%);background-size:100% 2000px;background-repeat:repeat-y}
[data-theme=light] .foot{background:linear-gradient(180deg,transparent,rgba(124,92,255,.10) 40%,rgba(70,110,255,.12) 80%,rgba(200,120,240,.10))}
[data-theme=light] .tag.t-cur{color:#fff}

/* ---- light page palette: ~60% soft blue-violet, 20% white cards, 10% grey, 10% pink; line-art shapes sit behind ---- */
[data-theme=light] #main{position:relative}
[data-theme=light] #main::after{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:url(/media/bg/light-art-1.svg) center top/max(100%,980px) auto repeat-y}
[data-theme=light] .foot{background:linear-gradient(180deg,transparent,rgba(255,200,228,.35) 55%,rgba(232,232,240,.9))}
[data-theme=light] .tbl th,[data-theme=light] .hr,[data-theme=light] hr{border-color:var(--grey)}
[data-theme=light] .sec-head .kicker{color:var(--p-ink)}
@media (max-width:760px){[data-theme=light] #main::after{background-image:url(/media/bg/light-art-m-1.svg);background-size:100% auto}}

/* =====================================================================
   Still backgrounds. Nothing behind the content moves: not on scroll, not with the pointer,
   not on its own. Logos, strips and slides still move; the page behind them does not.
   ===================================================================== */
.ambient *,.ambient::before,.ambient::after{animation:none!important;transform:none!important;will-change:auto!important}
.ambient .grain{display:none}
.dg,.deco-l,.hero-media,[data-parallax]{will-change:auto!important;transform:none!important}
