@font-face{font-family:Barlow;src:url('assets/BarlowCondensed-ExtraBold.ttf') format('truetype');font-weight:800;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/Manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--ink:#061711;--forest:#0b271d;--cream:#f6f5e8;--muted:#a5b7a7;--lime:#d7ff53;--gold:#dbbf78;--line:#efffe31f;--display:Barlow,Impact,sans-serif;--body:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--cream);font-family:var(--body);font-size:15px;line-height:1.7;overflow-x:hidden}body.intro-open{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid var(--lime);outline-offset:6px}button{border:0}svg{display:block}button svg,.button svg{width:22px;height:22px}.svg-library{width:0;height:0;position:absolute;overflow:hidden}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);font-weight:800;line-height:.9;letter-spacing:-.02em}h2{font-size:clamp(55px,7.5vw,106px);margin-bottom:30px}h2 em{font-style:normal;color:var(--lime)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.18em;line-height:1.6}.gold{color:var(--gold)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:19px 25px;font-size:12px;font-weight:800;line-height:1.5;border-radius:3px;transition:transform .25s,background .25s,box-shadow .25s}.button:hover{transform:translateY(-4px);box-shadow:0 8px 36px #d7ff5320}.button svg{transition:transform .25s}.button:hover svg{transform:translateX(5px)}.lime{background:var(--lime);color:var(--ink)}.dark{background:var(--ink);color:var(--cream)}.text-button{display:inline-flex;align-items:center;gap:20px;font-size:11px;font-weight:700;padding:10px 0;background:none}.text-button span{font-size:23px}.text-button:hover{text-decoration:underline;text-underline-offset:5px}.section-heading{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px;margin-bottom:55px}.section-heading p{margin:0}.section-note{font-size:9px;letter-spacing:.14em;color:var(--muted)}.live-dot{display:inline-block;width:6px;height:6px;background:var(--lime);border-radius:50%;margin-right:8px;box-shadow:0 0 0 5px #d7ff5310;animation:pulse 2s infinite}.js .reveal{opacity:0;transform:translateY(34px);transition:opacity .9s,transform 1s cubic-bezier(.2,.7,.2,1)}.js .reveal.is-visible{opacity:1;transform:translateY(0)}
/* A stadium entrance, rather than a loading screen. */
.entrance{position:fixed;inset:0;z-index:2000;display:none;isolation:isolate;background:#020c08;overflow:hidden;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:opacity .65s,visibility .65s}.js .entrance{display:flex}.entrance[hidden]{display:none}.entrance.is-finished{opacity:0;visibility:hidden}.intro-brand{position:absolute;top:36px;font-size:8px;letter-spacing:.25em;color:#d9e8cd8f}.entrance-copy{position:relative;z-index:5;padding:30px}.entrance-copy .eyebrow{color:var(--lime);margin-bottom:25px}.entrance h2{font-size:clamp(95px,15vw,190px);margin:0 0 20px;line-height:.82;letter-spacing:-.025em}.entrance h2 em{color:transparent;-webkit-text-stroke:1px var(--lime)}.intro-sub{color:#a5b7a7;font-size:12px;margin:30px 0}.intro-footer{position:absolute;bottom:30px;left:5%;width:90%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.15em;align-items:center}.intro-footer b{color:var(--lime);font-size:6px;padding-inline:10px}.intro-footer button{font-size:10px;background:transparent;padding:10px;letter-spacing:.03em}.intro-number{position:absolute;font-family:var(--display);font-size:70vw;line-height:1;color:#c6ff3710;z-index:-2;bottom:-20vw;right:-5vw}.tunnel{position:absolute;inset:-10%;z-index:-1;perspective:650px;transition:transform 3s cubic-bezier(.6,0,.8,.3),filter 3s}.tunnel-lines{position:absolute;width:200%;height:150%;left:-50%;top:40%;background:repeating-linear-gradient(90deg,transparent 0 139px,#d7ff5318 140px 141px),repeating-linear-gradient(0deg,transparent 0 89px,#d7ff5318 90px 91px);transform:rotateX(75deg);transform-origin:50% 0;mask-image:linear-gradient(#000,transparent 70%)}.tunnel-door{position:absolute;width:26%;height:70%;top:25%;left:37%;background:radial-gradient(ellipse at 50% 0,#d7ff5333,transparent 65%);border-top:1px solid #d7ff5388;box-shadow:0 -25px 100px #d7ff5320}.tunnel>i{position:absolute;height:120%;width:65%;top:-10%;left:17.5%;border:1px solid #d7ff5325;transform:scale(.8)}.tunnel>i:nth-of-type(2){transform:scale(1.2)}.tunnel>i:nth-of-type(3){transform:scale(1.6)}.tunnel>i:nth-of-type(4){transform:scale(2)}.intro-count{display:none;position:absolute;inset:0;align-items:center;justify-content:center;font-family:var(--display);font-size:clamp(65px,14vw,180px);color:var(--lime);line-height:.9;padding:30px;white-space:pre-line;text-shadow:0 0 80px #d7ff5355}.entrance.playing .entrance-copy{opacity:0;transform:scale(.8);transition:all .4s}.entrance.playing .tunnel{transform:scale(4);filter:brightness(3)}.entrance.playing .intro-count{display:flex}.intro-count.hit{animation:intro-word .75s both}.entrance.playing .intro-number{animation:enter-number 3s ease-in forwards}
/* Navigation and the first whistle. */
.header{height:108px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:4}.wordmark{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:800;letter-spacing:.07em;line-height:1.3}.wordmark small{display:block;font-size:6px;letter-spacing:.24em;font-weight:500;color:var(--muted);margin-top:5px}.crest{width:35px;height:44px;clip-path:polygon(0 0,100% 0,100% 75%,50% 100%,0 75%);border:1px solid var(--gold);background:linear-gradient(135deg,var(--gold),#968143);color:var(--ink);font-family:var(--display);font-size:23px;display:flex;align-items:center;flex-direction:column;justify-content:center;padding-bottom:5px;line-height:.75}.crest span{font-family:var(--body);font-size:6px;margin-top:5px}.header nav{display:flex;gap:32px;font-size:10px;font-weight:600;color:#c1d0be}.header nav a{position:relative}.header nav a:after{content:'';position:absolute;width:0;height:1px;bottom:-6px;left:0;background:var(--lime);transition:width .3s}.header nav a:hover:after{width:100%}.sound-toggle{background:none;font-size:9px;display:flex;align-items:center;gap:10px;letter-spacing:.03em;padding:10px 0}.sound-bars{display:flex;align-items:center;height:15px;gap:3px}.sound-bars i{height:6px;width:2px;background:var(--lime)}.sound-bars i:nth-child(2){height:13px}.sound-bars i:nth-child(3){height:9px}.sound-bars i:nth-child(4){height:4px}.sound-toggle[aria-pressed=true] i{animation:sound-bar .6s infinite alternate}.sound-toggle[aria-pressed=true] i:nth-child(2){animation-delay:-.2s}.sound-toggle[aria-pressed=true] i:nth-child(3){animation-delay:-.4s}
.hero{min-height:755px;position:relative;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;padding-top:75px;padding-bottom:120px}.hero-copy{position:relative;z-index:3}.hero-copy>.eyebrow{color:#c9d5c4;margin-bottom:28px}.hero h1{font-size:clamp(90px,10vw,150px);margin:0;line-height:.82;letter-spacing:-.025em}.hero h1>span{display:block}.hero h1 .outline{color:transparent;-webkit-text-stroke:1.2px var(--lime);margin-top:6px}.hero-description{font-size:12px;color:var(--muted);line-height:1.9;margin:32px 0 25px}.hero-description strong{color:var(--cream)}.hero-actions{display:flex;gap:28px;align-items:center}.hero-meta{display:flex;align-items:center;gap:23px;margin-top:49px}.hero-meta>span{font-size:6px;letter-spacing:.08em;color:var(--muted);display:flex;flex-direction:column;gap:4px}.hero-meta b{font-family:var(--display);font-size:27px;letter-spacing:0;font-weight:800;color:var(--cream);line-height:1}.hero-meta i{height:26px;width:1px;background:var(--line)}.scroll-cue{position:absolute;left:0;bottom:27px;width:100%;display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:.19em;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.scroll-cue>span:last-child{color:var(--lime);font-size:18px;animation:cue 2s infinite}.hero-art{position:relative;height:610px;width:100%;align-self:center;isolation:isolate;transform:perspective(1000px) rotateY(var(--tilt,0deg));transition:transform .4s;pointer-events:none}.hero-art:before{content:'';position:absolute;inset:-80px -150px -40px -120px;z-index:-2;background:radial-gradient(ellipse,#739a4c21 0,#0e33201f 35%,transparent 67%)}.jersey{position:absolute;width:88%;height:auto;left:10%;top:-10px;transform:rotate(-10deg);animation:kit-float 7s ease-in-out infinite;filter:drop-shadow(0 0 30px #c6ff2310)}.art-back-number{position:absolute;inset:-85px -10% auto auto;z-index:-2;font-family:var(--display);font-size:500px;line-height:1;color:#bde3950a;-webkit-text-stroke:1px #bde39515;transform:rotate(-9deg)}.kit-shadow{position:absolute;left:13%;width:85%;bottom:55px;height:30px;border-radius:100%;background:#000;filter:blur(22px);opacity:.8;animation:shadow 7s infinite}.pitch-orbit{position:absolute;left:-1%;width:110%;height:330px;bottom:-80px;transform:perspective(600px) rotateX(65deg) rotate(-12deg);border:1px solid #d6ff5330;border-radius:50%;background:repeating-linear-gradient(90deg,transparent 0 55px,#5c7e4610 55px 110px);box-shadow:inset 0 0 70px #d7ff5308,0 0 70px #d7ff530a}.pitch-orbit:before{content:'';position:absolute;left:50%;top:0;width:1px;height:100%;background:#d6ff5330}.pitch-circle{width:40%;height:60%;border-radius:50%;border:1px solid #d6ff5330;position:absolute;left:30%;top:20%}.hero-ball{position:absolute;width:135px;height:135px;left:0;bottom:28px;filter:drop-shadow(15px 20px 20px #0009);animation:ball-float 8s ease-in-out infinite}.stadium-rings{position:absolute;inset:0;z-index:-3;overflow:visible}.stadium-rings i{position:absolute;left:-7%;top:10%;width:120%;height:62%;border:1px solid #89aa5720;border-radius:50%;transform:rotate(-25deg)}.stadium-rings i:nth-child(2){inset:15% auto auto -12%;width:130%;height:72%}.stadium-rings i:nth-child(3){inset:5% auto auto -2%;width:110%;height:52%}.stadium-rings i:nth-child(4){inset:2% auto auto 5%;width:100%;height:42%;border-style:dashed}.light-beam{position:absolute;width:190px;height:600px;top:-100px;z-index:-1;transform-origin:50% 0;background:linear-gradient(#e8ffbf20,transparent 70%);clip-path:polygon(48% 0,52% 0,100% 100%,0 100%);filter:blur(14px);animation:beam 12s ease-in-out infinite alternate}.beam-one{left:0;transform:rotate(-28deg)}.beam-two{right:-20%;transform:rotate(30deg);animation-delay:-6s}.kit-tag{position:absolute;bottom:7%;right:0;font-size:8px;letter-spacing:.14em;padding:15px 18px;border-left:1px solid var(--gold);backdrop-filter:blur(7px);background:#081f1655}.kit-tag i{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--gold);margin-right:8px}.kit-tag small{display:block;margin-top:7px;font-size:5px;color:var(--muted)}.art-caption{position:absolute;right:-18px;top:48%;font-size:6px;letter-spacing:.17em;writing-mode:vertical-rl;display:flex;gap:13px;align-items:center;color:var(--muted)}.art-caption svg{width:12px;height:12px;color:var(--gold)}
.ticker{background:var(--lime);color:var(--ink);overflow:hidden;transform:rotate(-1.7deg);margin:15px -10px 0;padding:19px 0}.ticker>div{display:flex;align-items:center;gap:40px;width:max-content;animation:ticker 30s linear infinite}.ticker span{font-family:var(--display);font-size:31px;line-height:1;white-space:nowrap}.ticker svg{width:22px;height:22px}
/* A collectible, made for one person. */
.player-section{padding-top:130px;padding-bottom:125px}.player-layout{display:grid;grid-template-columns:1fr 1fr;gap:13%;align-items:center}.player-card{position:relative;min-height:540px;max-width:390px;width:100%;margin:auto;background:radial-gradient(ellipse at 50% 40%,#e2d494,#9d8e4e);color:#142b1c;clip-path:polygon(0 0,100% 0,100% 89%,85% 100%,15% 100%,0 89%);padding:28px 32px 40px;isolation:isolate;transform:rotate(-4deg);box-shadow:inset 0 0 0 9px #071b1622}.player-card:before{content:'';position:absolute;inset:14px 14px 25px;border:1px solid #143b2a33;z-index:-1;clip-path:polygon(0 0,100% 0,100% 90%,85% 100%,15% 100%,0 90%);background:repeating-linear-gradient(-45deg,transparent 0 25px,#eee5ad18 25px 26px)}.player-card:after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,#fff5bc60 45%,transparent 60%);transform:translateX(-120%);animation:card-shine 8s infinite;pointer-events:none}.card-edition{font-size:7px;letter-spacing:.15em;font-weight:800}.card-corner{position:absolute;top:60px;left:30px;text-align:center;display:flex;flex-direction:column;line-height:1}.card-corner strong{font-family:var(--display);font-size:48px}.card-corner span{font-size:7px;letter-spacing:.1em;margin-top:4px}.card-star{position:absolute;right:32px;top:66px;width:32px;height:32px;opacity:.7}.card-number{text-align:center;font-family:var(--display);font-size:250px;line-height:1.05;letter-spacing:-.05em;padding-top:50px;text-shadow:2px 3px #f0df9a}.card-name{text-align:center;font-family:var(--display);font-size:52px;line-height:1;letter-spacing:.04em}.card-rule{height:1px;background:#142b1c44;width:75%;margin:15px auto 20px}.card-facts{display:flex;justify-content:center;gap:30px;font-size:7px;font-weight:600;line-height:1.5;text-align:center}.card-facts b{display:block;font-size:8px;margin-top:5px}.card-bottom{margin-top:28px;display:flex;gap:18px;flex-direction:column;text-align:center;font-size:6px;letter-spacing:.1em;font-weight:800}.card-bottom>span:last-child{font-size:15px;letter-spacing:.3em}.player-copy>p:not(.eyebrow){font-size:12px;line-height:1.95;color:var(--muted);max-width:365px}.player-copy h2{font-size:clamp(55px,6vw,85px);margin:24px 0}.player-signature{border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.player-signature>span{font-size:10px;color:var(--muted)}.player-signature strong{display:flex;align-items:center;gap:14px;font-family:var(--display);font-size:32px;color:var(--gold);font-weight:800;text-transform:uppercase;line-height:1.2;margin-top:8px}.player-signature svg{width:18px;height:18px}
/* The penalty shootout. */
.penalty-section{background:#0c241b;padding:55px 0 70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.penalty-section .section-heading{border-top:0;padding-top:0}.game-title{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.game-title h2{font-size:clamp(54px,6.4vw,90px);margin:0}.game-title>div>p{font-size:11px;line-height:1.9;color:var(--muted);margin:0 0 18px}.game-score{display:flex;gap:26px;align-items:center}.game-score>span{font-size:7px;letter-spacing:.1em;display:flex;align-items:center;gap:12px}.game-score b{font-family:var(--display);font-size:34px;letter-spacing:0;line-height:1;color:var(--lime)}.game-score small{font-family:var(--display);font-size:22px;color:var(--muted);margin-left:-8px}.game-score i{width:1px;height:27px;background:var(--line)}.game-arena{height:460px;position:relative;isolation:isolate;background:linear-gradient(#071a19 0 31%,#183d28 31% 35%,#1e4b30 35%);border:1px solid #bfd3a329;border-radius:5px;overflow:hidden;box-shadow:inset 0 0 150px #0007}.game-arena:before{content:'';position:absolute;inset:35% 0 0;background:repeating-linear-gradient(0deg,#2b673b22 0 50px,transparent 50px 100px);z-index:-1}.crowd{position:absolute;inset:10% 0 65%;background:radial-gradient(circle,#d7ff5366 1px,transparent 2px) 0 0/13px 12px,radial-gradient(circle,#b7bfaa55 1px,transparent 2px) 6px 4px/17px 15px;opacity:.65;mask-image:linear-gradient(transparent,#000 30%,#000)}.arena-lights{position:absolute;top:5%;left:0;width:100%;height:5px;background:repeating-linear-gradient(90deg,transparent 0 10%,#e5f6cf 10% 13%,transparent 13% 15%);filter:drop-shadow(0 10px 15px #d7ff5388);opacity:.8}.arena-label{position:absolute;left:0;top:14px;width:100%;display:flex;justify-content:center;align-items:center;gap:17px;font-size:6px;letter-spacing:.16em;color:#c5d0ba}.arena-label b{background:var(--lime);color:var(--ink);font-family:var(--display);font-size:23px;padding:0 11px;line-height:1.4}.goal{position:absolute;left:19%;top:24%;width:62%;height:42%}.net{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 22px,#e2ead033 22px 23px),repeating-linear-gradient(0deg,transparent 0 20px,#e2ead033 20px 21px);background-color:#09201966;transform:perspective(500px) rotateX(-3deg);box-shadow:inset 0 30px 50px #0006}.goal-frame{position:absolute;inset:-6px;border:6px solid #edf2d9;border-bottom:0;box-shadow:0 8px 20px #0005;border-radius:4px 4px 0 0}.net.ripple{animation:net-ripple .65s}.keeper{position:absolute;width:80px;height:115px;left:calc(50% - 40px);bottom:0;transition:transform .4s cubic-bezier(.2,.6,.4,1);transform-origin:50% 80%;filter:drop-shadow(0 5px 4px #0008)}.keeper-head{position:absolute;width:23px;height:27px;border-radius:40%;background:#d2a477;top:0;left:29px;box-shadow:inset 0 6px #2b291c}.keeper-body{position:absolute;width:49px;height:49px;background:var(--gold);left:16px;top:28px;clip-path:polygon(15% 0,85% 0,100% 25%,85% 100%,15% 100%,0 25%);font-family:var(--display);font-size:28px;text-align:center;line-height:1.7;color:var(--ink)}.keeper-arms{position:absolute;width:100px;height:13px;top:34px;left:-10px;background:linear-gradient(90deg,#eef1dc 0 9%,#d3bd73 9% 91%,#eef1dc 91%);transform:rotate(-3deg);border-radius:3px}.keeper-legs{position:absolute;width:44px;height:40px;top:73px;left:18px;border-left:13px solid #11241a;border-right:13px solid #11241a;transform:perspective(100px) rotateX(-10deg);box-shadow:0 8px 0 -3px #d9e5d0}.keeper.dive-left{transform:translateX(-130%) rotate(-40deg)}.keeper.dive-right{transform:translateX(130%) rotate(40deg)}.keeper.dive-centre{transform:translateY(-18px) scale(1.12)}.pitch-markings{position:absolute;width:90%;height:70%;left:5%;top:47%;border:1px solid #dce6cf44;transform:perspective(350px) rotateX(48deg);border-radius:0 0 35% 35%;pointer-events:none}.pitch-markings:after{content:'';width:45%;height:25%;border:1px solid #dce6cf44;border-top:0;border-radius:0 0 50% 50%;position:absolute;top:40%;left:27.5%}.game-ball{position:absolute;left:calc(50% - 34px);top:76%;width:68px;height:68px;filter:drop-shadow(0 8px 7px #0008);transition:transform .65s cubic-bezier(.16,.65,.45,1),opacity .2s;z-index:8;transform-origin:center}.game-ball.shooting{transform:translate(var(--shot-x,0px),var(--shot-y,-160px)) scale(.34) rotate(300deg)}.aim-targets{position:absolute;inset:8% 7% 28%;display:flex;justify-content:space-between;align-items:start;z-index:12;transition:opacity .2s}.aim-targets button{width:68px;height:68px;border-radius:50%;border:1px solid #d7ff5388;background:#d7ff5315;color:var(--lime);font-size:6px;letter-spacing:.15em;font-weight:800;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;backdrop-filter:blur(2px);transition:background .2s,transform .2s}.aim-targets button span{font-size:24px;line-height:1}.aim-targets button:hover{background:var(--lime);color:var(--ink);transform:scale(1.12)}.aim-targets button:disabled{opacity:.3}.game-arena.shooting .aim-targets,.game-arena.finished .aim-targets{opacity:0;pointer-events:none}.game-helper{position:absolute;width:100%;text-align:center;bottom:13px;font-size:7px;letter-spacing:.18em;color:#b9cbaa}.shot-announcement{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:clamp(68px,10vw,135px);color:var(--lime);text-shadow:0 8px 20px #0007;pointer-events:none;opacity:0;z-index:15}.shot-announcement.show{animation:goal-word .85s both}.shot-announcement.saved{color:var(--cream)}.game-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:22px}.game-footer>p{font-size:10px;color:var(--muted);margin:0;text-align:center}.shot-history{display:flex;gap:8px}.shot-history i{display:block;width:10px;height:10px;border-radius:50%;border:1px solid #c6d8ac66}.shot-history i.goal-hit{background:var(--lime);border-color:var(--lime)}.shot-history i.saved{background:#9aa395;border-color:#9aa395}.game-footer>.text-button{font-size:9px;white-space:nowrap}
/* The celebration has its own rhythm. */
.roar-section{position:relative;padding-top:145px;padding-bottom:145px;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;isolation:isolate}.roar-section h2{font-size:clamp(65px,7.8vw,108px);margin:27px 0}.roar-section p:not(.eyebrow){font-size:11px;line-height:1.9;color:var(--muted);margin-bottom:27px}.roar-counter{display:block;font-size:7px;letter-spacing:.14em;color:var(--gold);margin-top:18px;min-height:13px}.roar-art{height:410px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate;transform:rotate(-9deg)}.giant-7{font-family:var(--display);font-size:530px;line-height:1;position:absolute;color:transparent;-webkit-text-stroke:1px #d7ff5340;z-index:-2;top:-60px;right:0}.roar-word{font-family:var(--display);font-size:clamp(80px,10vw,145px);line-height:1;color:var(--lime);transform:rotate(-4deg);text-shadow:7px 7px #102c1e,-1px -1px #d7ff53;letter-spacing:-.03em;white-space:nowrap}.roar-word:before,.roar-word:after{content:'SIUUU!';position:absolute;inset:0;color:transparent;-webkit-text-stroke:1px #d7ff5338;z-index:-1;transform:translateY(-72%)}.roar-word:after{transform:translateY(72%)}.roar-word.roaring{animation:roar .7s cubic-bezier(.1,.7,.2,1)}.roar-small{position:absolute;bottom:-3px;left:10%;font-size:6px;letter-spacing:.16em;color:var(--muted);line-height:2}.roar-ring{position:absolute;width:60%;height:90%;border:1px solid #c6e6aa08;border-radius:50%;right:-6%;top:8%;transform:rotate(-25deg);z-index:-2}.roar-flash{position:absolute;inset:-30%;background:radial-gradient(#d7ff5320,transparent 60%);opacity:0;z-index:-1}.roar-art.active .roar-flash{animation:pulse-once 1s}.birthday-section{position:relative;isolation:isolate;background:var(--lime);color:var(--ink);padding:70px 0 65px;overflow:hidden}.birthday-rays{position:absolute;width:140vw;height:140vw;max-width:1900px;max-height:1900px;left:50%;top:50%;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,transparent 0deg 15deg,#809f260a 15deg 30deg);animation:birthday-rays 90s linear infinite;z-index:-1}.birthday-inner{text-align:center}.birthday-inner>.eyebrow{margin-bottom:8px}.birthday-age{height:230px;display:flex;justify-content:center;align-items:center;gap:0;font-family:var(--display);font-size:290px;line-height:1;letter-spacing:-.05em;margin-bottom:13px}.birthday-age>span{transform:rotate(-7deg);position:relative;z-index:1}.birthday-age>svg{height:196px;width:196px;margin:32px 0 0 -3px;filter:drop-shadow(8px 10px 0 #15311b17);animation:ball-float 8s ease-in-out infinite}.birthday-inner h2{font-size:clamp(68px,9.5vw,134px);margin:15px 0 25px;line-height:.88}.birthday-inner h2 em{color:transparent;-webkit-text-stroke:1px var(--ink)}.birthday-inner>p:not(.eyebrow){font-size:12px;line-height:1.9;color:#355223;margin-bottom:28px}.birthday-inner .button:hover{box-shadow:0 10px 20px #112c2325}.birthday-signoff{display:block;font-size:8px;letter-spacing:.25em;font-weight:800;margin-top:48px}.wish-message{padding:26px 0 0;animation:reveal .6s both}.wish-message[hidden]{display:none}.wish-message>span{font-size:23px}.wish-message>p{font-size:11px;line-height:2;margin:10px 0}.wish-message .text-button{font-size:9px}.footer{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:145px;font-size:8px;color:var(--muted)}.footer .wordmark{color:var(--cream);font-size:10px}.footer .crest{width:27px;height:35px;font-size:18px}.footer>button{background:none;font-size:8px;padding:12px 0;color:var(--muted)}.footer>a:last-child{white-space:nowrap}.footer>span{max-width:200px}#confetti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:3000}.screen-flash{position:fixed;inset:0;background:var(--lime);opacity:0;pointer-events:none;z-index:1500}.screen-flash.flash{animation:screen-flash .55s}
@keyframes pulse{50%{box-shadow:0 0 0 7px #d7ff5300}}@keyframes kit-float{0%,100%{transform:translateY(0) rotate(-10deg)}50%{transform:translateY(-15px) rotate(-7deg)}}@keyframes ball-float{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(-13px) rotate(10deg)}}@keyframes shadow{50%{transform:scale(.9);opacity:.55}}@keyframes beam{to{transform:rotate(15deg);opacity:.3}}@keyframes cue{50%{transform:translateY(5px)}}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes card-shine{0%,60%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}@keyframes net-ripple{30%{transform:perspective(500px) rotateX(-3deg) translateY(-3px) scale(1.03)}70%{transform:perspective(500px) rotateX(-3deg) translateY(2px)}}@keyframes goal-word{0%{opacity:0;transform:scale(.7) rotate(-8deg)}25%,70%{opacity:1;transform:scale(1) rotate(-4deg)}100%{opacity:0;transform:scale(1.15)}}@keyframes roar{0%{transform:scale(.65) rotate(-8deg)}45%{transform:scale(1.2) rotate(0)}75%{transform:scale(.96) rotate(-6deg)}100%{transform:scale(1) rotate(-4deg)}}@keyframes pulse-once{30%{opacity:1}100%{opacity:0}}@keyframes birthday-rays{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes screen-flash{10%{opacity:.15}100%{opacity:0}}@keyframes sound-bar{to{height:3px}}@keyframes intro-word{0%{opacity:0;transform:scale(.75) translateY(15px);filter:blur(7px)}25%,75%{opacity:1;transform:scale(1);filter:blur(0)}100%{opacity:0;transform:scale(1.1)}}@keyframes enter-number{to{transform:scale(2);opacity:0}}@keyframes reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.hero h1{font-size:154px}.hero-art{height:665px}.hero{padding-top:100px;min-height:850px}.jersey{width:93%}}
@media(max-width:1050px){.wrap{width:calc(100% - 72px)}.header nav{gap:20px}.hero{min-height:680px;padding-top:60px;padding-bottom:100px}.hero h1{font-size:clamp(85px,11vw,125px)}.hero-art{height:500px}.jersey{width:100%;left:0;top:15px}.hero-ball{width:105px;height:105px;bottom:25px;left:-20px}.art-back-number{font-size:400px;top:-35px}.kit-tag{bottom:1%;right:-15px}.hero-actions{gap:22px}.hero-meta{gap:20px}.hero-meta>span{font-size:5px}.player-layout{gap:9%}.player-card{min-height:500px;padding-inline:25px}.card-number{font-size:225px}.card-name{font-size:47px}.roar-art{height:340px}.giant-7{font-size:450px}.roar-word{font-size:103px}.roar-word:before{transform:translateY(-75%)}.roar-word:after{transform:translateY(75%)}.footer{gap:20px}}
@media(max-width:760px){.wrap{width:calc(100% - 42px)}.header{height:84px}.header nav{display:none}.wordmark{font-size:11px}.sound-toggle{font-size:8px}.hero{grid-template-columns:1fr;padding-top:43px;padding-bottom:74px;min-height:auto;isolation:isolate}.hero-copy{z-index:3}.hero h1{font-size:clamp(86px,19.7vw,145px);max-width:100%;line-height:.82}.hero-copy>.eyebrow{font-size:8px;margin-bottom:26px}.hero-description{font-size:10px;margin:25px 0 21px;max-width:83%}.hero-actions{gap:23px}.hero-actions>.button{padding:16px 21px;font-size:10px;gap:27px}.hero-actions>.text-button{font-size:8px;gap:12px}.hero-meta{margin-top:28px;gap:24px}.hero-meta>span{font-size:5px}.hero-meta b{font-size:24px}.hero-art{height:470px;width:100%;max-width:490px;margin:18px auto -12px}.jersey{width:80%;left:16%;top:0}.hero-ball{width:106px;height:106px;left:7%;bottom:5%}.art-back-number{font-size:400px;top:-45px;right:0}.kit-tag{bottom:6%;right:0;font-size:6px;padding:12px 14px}.kit-tag small{font-size:4px}.art-caption{right:0}.pitch-orbit{left:5%;width:95%;bottom:-45px;height:230px}.kit-shadow{bottom:40px}.scroll-cue{bottom:12px;padding-top:15px;font-size:6px}.scroll-cue>span:last-child{font-size:15px}.ticker{padding:15px 0;margin-top:5px}.ticker span{font-size:25px}.ticker>div{gap:26px}.ticker svg{width:15px;height:15px}.player-section{padding-top:74px;padding-bottom:75px}.section-heading{margin-bottom:35px;padding-top:20px;gap:15px}.section-heading .eyebrow{font-size:7px}.section-note{font-size:5px;max-width:110px;text-align:right}.player-layout{grid-template-columns:1fr;gap:48px}.player-card{max-width:330px;min-height:490px}.player-copy h2{font-size:67px}.player-copy>.eyebrow{font-size:8px}.player-copy>p:not(.eyebrow){font-size:11px;max-width:100%}.player-signature{margin-top:22px;padding-top:20px}.player-signature strong{font-size:29px}.player-signature>span{font-size:9px}.penalty-section{padding:30px 0 35px}.game-title{display:block;margin-bottom:25px}.game-title h2{font-size:64px;margin-bottom:23px}.game-title>div{display:flex;justify-content:space-between;align-items:center;gap:18px}.game-title>div>p{font-size:9px;margin:0}.game-score{gap:13px;flex-shrink:0}.game-score>span{font-size:5px;gap:5px;flex-direction:column;align-items:start;line-height:1}.game-score b{font-size:27px}.game-score small{font-size:15px;margin:0}.game-score>span:last-child{position:relative}.game-score>span:last-child small{position:absolute;bottom:0;left:18px;white-space:nowrap}.game-score i{height:30px}.game-arena{height:350px}.goal{left:11%;width:78%;top:27%;height:39%}.goal-frame{border-width:5px;inset:-5px;border-bottom:0}.aim-targets{inset:7% 4% 28%}.aim-targets button{width:48px;height:48px;font-size:5px;gap:1px}.aim-targets button span{font-size:18px}.game-ball{width:57px;height:57px;left:calc(50% - 28.5px);top:78%}.keeper{transform:scale(.8);transform-origin:50% 100%;bottom:0}.keeper.dive-left{transform:translateX(-100%) rotate(-40deg) scale(.8)}.keeper.dive-right{transform:translateX(100%) rotate(40deg) scale(.8)}.keeper.dive-centre{transform:translateY(-10px) scale(.9)}.game-footer{display:grid;grid-template-columns:1fr auto;gap:12px;padding-top:12px}.game-footer>p{grid-column:1/-1;grid-row:2;font-size:9px;text-align:left}.game-footer>.text-button{justify-content:end;font-size:8px}.game-helper{font-size:6px;bottom:8px}.shot-history{gap:7px}.shot-history i{width:8px;height:8px}.arena-label{font-size:5px;gap:10px;top:14px}.arena-label b{font-size:20px}.roar-section{padding-top:77px;padding-bottom:73px;grid-template-columns:1fr;gap:45px}.roar-section h2{font-size:80px}.roar-section>.reveal>.eyebrow{font-size:8px}.roar-section p:not(.eyebrow){font-size:10px}.roar-art{height:320px;max-width:360px;width:100%;margin:0 auto}.roar-word{font-size:111px}.giant-7{font-size:420px;top:-48px;right:8%}.roar-small{bottom:-12px;font-size:5px;left:7%}.birthday-section{padding-top:44px;padding-bottom:42px}.birthday-age{height:180px;font-size:230px}.birthday-age>svg{width:152px;height:152px;margin-top:27px}.birthday-inner>.eyebrow{font-size:6px;letter-spacing:.15em}.birthday-inner h2{font-size:clamp(65px,16vw,104px);margin:24px -3px}.birthday-inner>p:not(.eyebrow){font-size:10px}.birthday-inner .button{padding:17px 22px;font-size:10px;gap:21px}.birthday-signoff{font-size:6px;margin-top:35px}.footer{display:grid;grid-template-columns:1fr auto;padding-block:30px;gap:20px;font-size:7px;min-height:auto}.footer>.wordmark{grid-row:1;font-size:9px}.footer>span{grid-row:2;max-width:none;font-size:6px}.footer>button{grid-row:2;grid-column:2;font-size:7px;text-align:right}.footer>a:last-child{grid-row:1;grid-column:2;font-size:7px}.footer .crest{width:25px;height:32px;font-size:16px}.intro-brand{top:25px;font-size:6px}.intro-footer{font-size:6px;bottom:23px}.intro-footer button{font-size:8px}.entrance h2{font-size:clamp(90px,24vw,150px)}.entrance-copy .eyebrow{font-size:8px}.intro-sub{font-size:10px}.entrance-copy .button{font-size:11px;gap:25px}.intro-number{font-size:110vw;bottom:-17vw;right:-12vw}.tunnel>i{width:85%;left:7.5%}.tunnel-door{width:50%;left:25%}}
@media(max-width:380px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:19.5vw}.hero-actions{gap:16px}.hero-actions>.text-button{font-size:7px}.hero-art{height:410px}.hero-meta{gap:18px}.kit-tag{bottom:4%}.hero-ball{bottom:6%}.player-copy h2{font-size:61px}.game-title h2{font-size:58px}.game-title>div>p{font-size:8px}.goal{left:10%;width:80%}.roar-word{font-size:98px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}
.motion-reduced{scroll-behavior:auto}.motion-reduced *,.motion-reduced *:before,.motion-reduced *:after{animation:none!important;transition-duration:.01ms!important}.motion-reduced .reveal{opacity:1;transform:none}
.button[hidden]{display:none}.keeper.dive-left{transform:translateX(var(--keeper-shift,-130%)) rotate(-40deg)}.keeper.dive-right{transform:translateX(var(--keeper-shift,130%)) rotate(40deg)}
@media(max-width:760px){.keeper.dive-left{transform:translateX(var(--keeper-shift,-100%)) rotate(-40deg) scale(.8)}.keeper.dive-right{transform:translateX(var(--keeper-shift,100%)) rotate(40deg) scale(.8)}}
/* The original Saifullin Events mark, lit like a matchday presentation. */
.entrance{overflow:clip}
.saifullin-logo{width:100%;height:100%;overflow:hidden}
.saifullin-brand{display:flex;flex-direction:column;align-items:center;gap:5px;flex-shrink:0;position:relative}
.saifullin-brand>.saifullin-logo{width:155px;height:60px;transition:transform .35s}
.saifullin-brand>span{font-size:6px;font-weight:700;letter-spacing:.17em;color:var(--gold);line-height:1.4}
.saifullin-brand:hover>.saifullin-logo{transform:translateY(-2px)}
.intro-brand.saifullin-intro{top:25px;z-index:6;width:230px;color:var(--gold);letter-spacing:.2em}
.saifullin-label{display:block;font-size:7px;line-height:1;margin-bottom:9px}
.saifullin-stage{position:relative;width:100%;height:91px;isolation:isolate}
.saifullin-stage>.saifullin-logo{position:relative;z-index:1;width:190px;height:73px;margin:auto;filter:none}
.saifullin-stage:before{content:'';position:absolute;inset:-16px -40px -5px;background:radial-gradient(ellipse,#d7ff531c,transparent 68%);z-index:-1;animation:brand-stadium-glow 3s ease-in-out infinite}
.brand-pitch{position:absolute;bottom:0;left:4%;width:92%;height:17px;border:1px solid #d7ff5345;border-radius:50%;transform:rotateX(55deg);box-shadow:0 0 15px #d7ff5317}
.brand-pitch:after{content:'';position:absolute;left:50%;top:0;height:100%;border-left:1px solid #d7ff5355}
.brand-kick{position:absolute;right:-10px;bottom:4px;width:30px;height:30px;z-index:3;filter:drop-shadow(0 4px 5px #0008)}
.brand-kick>svg{width:100%;height:100%}
.entrance:not(.is-finished) .brand-kick{animation:brand-ball-arrive 1.8s cubic-bezier(.2,.7,.2,1) both}
.entrance:not(.is-finished) .saifullin-stage>.saifullin-logo{animation:brand-logo-reveal 1s .2s both}
.entrance.playing .brand-kick{animation:brand-ball-kick 1s ease-in both}
.footer .saifullin-brand>.saifullin-logo{width:140px;height:54px}
.footer .saifullin-brand>span{font-size:5px}
@keyframes brand-ball-arrive{0%{opacity:0;transform:translate(-240px,-24px) rotate(-540deg)}15%{opacity:1}45%{transform:translate(-90px,0) rotate(-160deg)}65%{transform:translate(-38px,-30px) rotate(-70deg)}85%{transform:translate(-5px,0) rotate(-10deg)}100%{opacity:1;transform:none}}
@keyframes brand-ball-kick{to{transform:translate(140px,-100px) rotate(540deg) scale(.3);opacity:0}}
@keyframes brand-logo-reveal{from{opacity:.6;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes brand-stadium-glow{50%{opacity:.45;transform:scale(.9)}}
@media(max-width:760px){.saifullin-brand>.saifullin-logo{width:125px;height:48px}.saifullin-brand>span{font-size:5px;letter-spacing:.12em}.intro-brand.saifullin-intro{top:21px;width:200px}.saifullin-stage{height:82px}.saifullin-stage>.saifullin-logo{width:165px;height:64px}.brand-kick{width:26px;height:26px;right:-5px}.footer>.saifullin-brand{grid-row:1;align-items:start}.footer .saifullin-brand>.saifullin-logo{width:125px;height:48px}}
@media(max-height:650px){.intro-brand.saifullin-intro{top:14px;width:170px}.saifullin-label{font-size:6px;margin-bottom:5px}.saifullin-stage{height:62px}.saifullin-stage>.saifullin-logo{width:135px;height:52px}.brand-kick{width:23px;height:23px}.entrance-copy{margin-top:45px}.entrance h2{font-size:clamp(75px,17vw,115px)}.entrance-copy .eyebrow{margin-bottom:18px}.intro-sub{margin:20px 0}}
/* Keep the intro inside the visible phone screen, including in-app browsers. */
body.intro-open{position:fixed;inset:0;width:100%;height:100%;overflow:hidden}
body.intro-open #site{visibility:hidden}
.entrance{height:100%;height:100dvh;max-height:100dvh;overflow:hidden;overflow:clip;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.intro-footer{bottom:max(20px,env(safe-area-inset-bottom,0px));z-index:7}
.jersey{filter:none}
@media(max-width:760px){
  .header{height:96px}.header .saifullin-brand>.saifullin-logo{width:144px;height:56px}.saifullin-brand>span{font-size:6px}
  .intro-brand.saifullin-intro{top:max(22px,env(safe-area-inset-top,0px));width:222px}
  .saifullin-stage{height:88px}.saifullin-stage>.saifullin-logo{width:184px;height:71px;animation:none!important}
  .saifullin-label{font-size:8px}.intro-footer{font-size:7px}.intro-footer button{font-size:10px;padding:12px}
  .entrance-copy{padding:24px 18px;margin-top:65px}.entrance-copy .eyebrow{font-size:9px}
  .intro-sub{font-size:12px}.entrance-copy .button{font-size:12px;min-height:56px}
  .hero{padding-top:30px;padding-bottom:65px;overflow:hidden;overflow:clip}
  .hero-copy>.eyebrow{margin-bottom:22px}.hero-description{font-size:12px;max-width:100%;line-height:1.8}
  .hero-actions{gap:20px;flex-wrap:wrap}.hero-actions>.button{font-size:12px;min-height:52px}.hero-actions>.text-button{font-size:10px;min-height:44px}
  .hero-meta>span{font-size:7px}.hero-meta b{font-size:27px}
  .hero-art{height:auto;aspect-ratio:1/1.18;max-width:400px;width:100%;margin:28px auto 0;transform:none;transition:none}
  .hero-art:before{inset:0;background:radial-gradient(ellipse,#739a4c18,transparent 70%)}
  .jersey{width:82%;height:auto;aspect-ratio:440/560;left:13%;top:0;filter:none;overflow:visible}
  .hero-ball{width:25%;height:auto;aspect-ratio:1;left:4%;bottom:8%;filter:none}
  .light-beam{filter:none;opacity:.45;width:42%;height:100%;top:0}.beam-two{right:0}
  .kit-shadow{bottom:9%;height:28px;filter:none;background:radial-gradient(ellipse,#0008,transparent 70%)}
  .pitch-orbit{width:90%;left:5%;height:42%;bottom:-8%;background:none;box-shadow:none}
  .kit-tag{bottom:2%;right:0;padding:10px 12px;font-size:7px;background:#0b271d;backdrop-filter:none}.kit-tag small{font-size:6px}
  .art-back-number{font-size:95vw;top:-5%;right:0}.art-caption{display:none}
  .player-copy>p:not(.eyebrow){font-size:13px}.roar-section p:not(.eyebrow){font-size:12px}.birthday-inner>p:not(.eyebrow){font-size:12px}
  .game-title>div>p{font-size:11px}.game-footer>p{font-size:11px}.game-footer>.text-button{font-size:11px;min-height:44px}
  .footer .saifullin-brand>.saifullin-logo{width:144px;height:56px}.footer>span{font-size:9px}.footer>button,.footer>a:last-child{font-size:9px}
}
@media(max-width:760px) and (max-height:650px){
  .intro-brand.saifullin-intro{top:max(12px,env(safe-area-inset-top,0px));width:180px}.saifullin-stage{height:65px}.saifullin-stage>.saifullin-logo{width:146px;height:56px}.saifullin-label{font-size:6px}
  .entrance-copy{margin-top:50px;padding:14px}.entrance h2{font-size:clamp(64px,19vw,100px)}.entrance-copy .eyebrow{margin-bottom:14px;font-size:8px}.intro-sub{margin:16px 0;font-size:11px}.intro-footer{bottom:10px}
}
