/* SIN DOM 1.17 | STADIUM TAKEOVER | Frontend only. Original artwork, no fictional scores. */
:root{--sd-v17-electric:#3b9afa;--sd-v17-gold:#efc677;--sd-v17-ink:#020b1b}
/* A deliberately unmistakable new top-of-page composition. */
.sd-v17-pulse{height:43px;background:#030c1d;border-top:1px solid #21558a;border-bottom:1px solid #3b88d7;overflow:hidden;position:relative;z-index:3;box-shadow:0 4px 32px #0009}
.sd-v17-pulse-inner{height:100%;display:grid;grid-template-columns:auto minmax(0,1fr) 53px;align-items:center;max-width:1640px;margin:auto}
.sd-v17-pulse-label{height:100%;display:inline-flex;align-items:center;gap:8px;padding:0 clamp(10px,2vw,24px);background:#e7bc6d;color:#05162b;white-space:nowrap;letter-spacing:.08em;font:900 10px/1 Manrope,sans-serif;clip-path:polygon(0 0,95% 0,100% 50%,95% 100%,0 100%)}
.sd-v17-radio{display:block;width:7px;height:7px;border-radius:50%;background:#09264d;box-shadow:0 0 0 4px #163c6838;animation:sd-v17-radio 1.7s ease-in-out infinite}
.sd-v17-pulse-window{overflow:hidden;height:100%;display:flex;align-items:center;mask-image:linear-gradient(90deg,transparent,#000 2%,#000 96%,transparent)}
.sd-v17-pulse-track{display:flex;align-items:center;gap:24px;width:max-content;white-space:nowrap;animation:sd-v17-marquee 42s linear infinite}
.sd-v17-pulse:hover .sd-v17-pulse-track,.sd-v17-pulse:focus-within .sd-v17-pulse-track{animation-play-state:paused}
.sd-v17-tick{display:inline-flex;align-items:center;gap:12px;color:#a4c4e9;font:750 10px Manrope,sans-serif;letter-spacing:.04em}
.sd-v17-tick b{color:#f6f8ff;font-weight:900}.sd-v17-tick i{font-style:normal;color:#e5ae53;font-size:17px}
.sd-v17-pulse-track>span:last-child{display:flex;gap:24px}
.sd-v17-pulse-end{display:grid;place-items:center;background:#0a2041;height:100%;color:#f3ca7d;font:900 12px Unbounded,sans-serif;border-left:1px solid #2e5a8f}
@keyframes sd-v17-marquee{to{transform:translateX(-50%)}}@keyframes sd-v17-radio{50%{opacity:.4;box-shadow:0 0 0 8px #163c6800}}
/* Full-bleed opening. This hides no content and cannot block interaction. */
.sd-v17-opening{position:fixed;inset:0;z-index:9999;pointer-events:none;background:radial-gradient(circle at 50% 55%,#114079,#020710 65%);color:#fff;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;animation:sd-v17-intro-out 1.65s ease-in forwards;overflow:hidden}
.sd-v17-opening:before,.sd-v17-opening:after{content:"";position:absolute;inset:-30% auto;width:30%;background:linear-gradient(90deg,transparent,#7cbaff28,transparent);transform:skewX(-23deg);animation:sd-v17-intro-ray 1.25s ease-out both}
.sd-v17-opening:before{left:10%}.sd-v17-opening:after{right:10%;animation-direction:reverse}
.sd-v17-opening strong{font:900 clamp(70px,17vw,230px)/.95 Unbounded,sans-serif;letter-spacing:-.13em;color:#fff;text-shadow:0 0 70px #2276c8;animation:sd-v17-intro-number .95s cubic-bezier(.16,1,.3,1) both}
.sd-v17-opening>span:last-child{font:900 10px Manrope,sans-serif;letter-spacing:.24em;color:#e4bf76}
.sd-v17-opening-line{width:150px;height:3px;background:#d6ae62;box-shadow:0 0 28px #ddaa60;animation:sd-v17-intro-rule .8s ease-out both}
@keyframes sd-v17-intro-number{from{opacity:0;transform:scale(1.25);filter:blur(16px)}to{opacity:1;transform:scale(1);filter:blur(0)}}
@keyframes sd-v17-intro-ray{from{opacity:0;transform:translateX(-100vw) skewX(-23deg)}to{opacity:1;transform:translateX(0) skewX(-23deg)}}
@keyframes sd-v17-intro-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes sd-v17-intro-out{0%,67%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}
/* The hero is stadium architecture, not a blue content card. */
.sd-v17-hero{--sd-v17-glow:#3b9afa;min-height:min(860px,90vh);background:#020b1b url('/assets/stadium-night.webp') center bottom / cover no-repeat!important;border-bottom:5px solid var(--sd-energy-solid,#418fee)!important;padding:30px 0 65px!important;isolation:isolate;overflow:hidden}
.sd-v17-hero.theme-europa{--sd-v17-glow:#ff7b29}.sd-v17-hero.theme-efbet{--sd-v17-glow:#2a92ff}.sd-v17-hero.theme-cup{--sd-v17-glow:#f0c26c}
.sd-v17-hero:before{background:radial-gradient(ellipse 55% 75% at 50% 48%,rgba(4,18,40,.54),rgba(2,9,26,.94) 87%),linear-gradient(0deg,#020916,transparent 50%),linear-gradient(90deg,rgba(0,0,0,.7),transparent 40%,rgba(0,0,0,.7))!important;z-index:0}
.sd-v17-hero:after{inset:auto 0 0!important;transform:none!important;width:100%!important;height:45%!important;background:linear-gradient(0deg,#020918,transparent)!important;animation:none!important;z-index:0}
.sd-v17-hero .sd-v17-hero-shell{position:relative;z-index:4;max-width:1320px}
.sd-v17-crowd{position:absolute;z-index:1;bottom:-1%;height:87%;width:34%;pointer-events:none;opacity:.80;filter:saturate(1.4) contrast(1.08);background-repeat:no-repeat;background-size:cover;transform:translateZ(0);animation:sd-v17-crowd-enter 1.3s cubic-bezier(.12,.8,.2,1) both}
.sd-v17-crowd-l{left:-2%;background-image:url('/assets/blue-stand-left.webp');background-position:center bottom;mask-image:linear-gradient(90deg,#000 32%,transparent 100%),linear-gradient(0deg,#000 65%,transparent 100%);mask-composite:intersect}
.sd-v17-crowd-r{right:-2%;background-image:url('/assets/blue-stand-right.webp');background-position:center bottom;mask-image:linear-gradient(270deg,#000 32%,transparent 100%),linear-gradient(0deg,#000 65%,transparent 100%);mask-composite:intersect;animation-delay:.08s}
@keyframes sd-v17-crowd-enter{from{opacity:0;transform:scale(1.1)}to{opacity:.8;transform:scale(1)}}
.sd-v17-spotlight{position:absolute;z-index:2;top:-42%;height:135%;width:60%;pointer-events:none;mix-blend-mode:screen;opacity:.62;transform-origin:top center;will-change:transform}
.sd-v17-spotlight-a{left:0;background:linear-gradient(100deg,transparent 26%,rgba(88,175,255,.03) 41%,rgba(145,212,255,.21) 48%,rgba(88,175,255,.02) 56%,transparent 70%);animation:sd-v17-ray-a 9s ease-in-out infinite alternate}
.sd-v17-spotlight-b{right:0;background:linear-gradient(80deg,transparent 25%,rgba(255,137,59,.035) 41%,rgba(246,197,115,.17) 50%,rgba(255,137,59,.035) 57%,transparent 71%);animation:sd-v17-ray-b 11s ease-in-out infinite alternate}
@keyframes sd-v17-ray-a{from{transform:translateX(-12%) rotate(-13deg)}to{transform:translateX(28%) rotate(13deg)}}
@keyframes sd-v17-ray-b{from{transform:translateX(13%) rotate(14deg)}to{transform:translateX(-26%) rotate(-14deg)}}
.sd-v17-diagonal{position:absolute;z-index:2;inset:0;pointer-events:none;background:repeating-linear-gradient(124deg,transparent 0 86px,rgba(97,158,251,.022) 87px 90px,transparent 91px 240px)}
.sd-v17-title{padding:clamp(28px,4vw,57px) 0 clamp(26px,4vw,53px)!important;text-align:center;max-width:unset!important}
.sd-v17-title:before{display:none}.sd-v17-title>span{display:inline-flex;gap:8px;padding:9px 17px;margin:0 0 17px!important;border:1px solid #d6b97880;letter-spacing:.18em!important;background:#041630bc}
.sd-v17-title h1{font:900 clamp(54px,10vw,154px)/.94 Unbounded,sans-serif!important;letter-spacing:-.115em!important;max-width:none!important;text-transform:uppercase;text-shadow:0 8px 40px #000b;animation:sd-v17-title-crash 1s cubic-bezier(.16,1,.3,1) both}
.sd-v17-title h1 em{color:#fff!important;text-shadow:0 0 8px #fff6,0 0 48px var(--sd-v17-glow);-webkit-text-stroke:1px #f0c671}
@keyframes sd-v17-title-crash{from{opacity:0;transform:translateY(36px) scale(1.075);filter:blur(8px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
.sd-v17-title p{font-weight:850!important;font-size:clamp(11px,1.3vw,18px)!important;letter-spacing:.08em;color:#c4d8f0!important}
.sd-v17-stadium-line{display:flex;justify-content:center;align-items:center;gap:15px;margin:0 auto 18px;color:#f2ca7d;letter-spacing:.18em;font:900 9px Manrope,sans-serif;white-space:nowrap}
.sd-v17-stadium-line i{width:64px;height:2px;background:var(--sd-v17-glow);box-shadow:0 0 16px var(--sd-v17-glow)}
.sd-v17-hero .fan-matchday{max-width:1040px!important;margin:0 auto;background:linear-gradient(122deg,#04172be6,#051b38e0)!important;border:1px solid #c6d8f33b!important;border-top:3px solid var(--sd-v17-glow)!important;clip-path:polygon(0 0,97% 0,100% 35px,100% 100%,3% 100%,0 calc(100% - 30px));border-radius:0!important;backdrop-filter:blur(3px);box-shadow:0 20px 85px #000a!important;padding:clamp(25px,3.3vw,42px)!important;animation:sd-v17-match-crash 1s .22s cubic-bezier(.2,1,.3,1) both!important}
@keyframes sd-v17-match-crash{from{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
.sd-v17-hero .fan-matchday:before{inset:0!important;animation:sd-v17-card-glow 3.5s ease-in-out infinite alternate!important;background:radial-gradient(ellipse at 50% 0%,color-mix(in srgb,var(--sd-v17-glow) 24%,transparent),transparent 65%)!important;z-index:-1!important;opacity:.8}
.sd-v17-hero .fan-matchday:after{top:0!important;left:5%!important;width:90%!important;background:linear-gradient(90deg,transparent,var(--sd-v17-glow),#fff,var(--sd-v17-glow),transparent)!important;animation:sd-v17-border-power 5s ease-in-out infinite alternate!important;opacity:.8}
@keyframes sd-v17-card-glow{to{opacity:.28}}@keyframes sd-v17-border-power{from{opacity:.22;transform:scaleX(.4)}to{opacity:1;transform:scaleX(1)}}
.sd-v17-hero .fan-duel{margin:30px 0 28px!important}
.sd-v17-hero .crest-hero.crest-shell{filter:drop-shadow(0 0 20px #6ab8ff66);animation:sd-v17-crest-enter .9s .4s backwards}
.sd-v17-hero .fan-team:last-child .crest-hero.crest-shell{animation-delay:.55s}
@keyframes sd-v17-crest-enter{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}
.sd-v17-hero .fan-kickoff{font-size:clamp(35px,6.8vw,90px)!important;color:#fff;text-shadow:0 0 33px var(--sd-v17-glow)}
.sd-v17-hero .sd-open-match{border:0!important;background:var(--sd-v17-glow)!important;color:#041426!important;padding:17px 35px;min-width:210px;clip-path:polygon(0 0,93% 0,100% 40%,100% 100%,0 100%);font-size:12px;box-shadow:0 0 30px var(--sd-v17-glow)}
.sd-v17-hero .sd-open-match:hover{transform:translateY(-4px) scale(1.025);background:#fff0d4!important}
.sd-v17-hero-edge{position:absolute;z-index:5;bottom:0;left:0;width:100%;height:8px;background:linear-gradient(90deg,#153e81 0%,#459eff 28%,var(--sd-v17-glow) 50%,#459eff 72%,#153e81 100%);box-shadow:0 0 30px var(--sd-v17-glow)}
.sd-v17-hero .sd-stadium-caption{font-size:clamp(200px,33vw,530px);opacity:.5;max-width:100%;right:0;z-index:0}
/* From stadium atmosphere to clean, high-energy score and rankings. */
.sd-v17-home .sd-pulse-strip{border-top:0;background:#020e23;box-shadow:0 14px 34px #010b1dcc}
.sd-v17-home .sd-pulse-cell{border-right-color:#27517d;padding-block:20px}
.sd-v17-home .sd-pulse-cell>strong{font-size:clamp(15px,1.7vw,22px)}
/* No more standard white card array: angular newspaper-style fixture timeline. */
.sd-v17-timeline{position:relative;overflow:hidden;background:#e9edf2!important;color:#04162f!important;padding-top:clamp(46px,7vw,100px)!important;padding-bottom:clamp(60px,7vw,95px)!important}
.sd-v17-timeline:before{content:"";position:absolute;right:-8vw;top:-5%;width:35vw;height:125%;transform:skewX(-19deg);background:#d9e2ee;opacity:.68;pointer-events:none}
.sd-v17-timeline .fan-shell{position:relative;z-index:1}
.sd-v17-timeline .fan-section-head h2{font-size:clamp(33px,5.9vw,87px);letter-spacing:-.095em;line-height:.98}
.sd-v17-timeline .fan-section-head h2 em{color:#1b589a!important}
.sd-v17-timeline .sd-section-note{display:none}
.sd-v17-timeline .sd-next-list{border-top:5px solid #061d43;margin-top:clamp(26px,4vw,48px)}
.sd-v17-timeline .sd-next-row{grid-template-columns:clamp(52px,7vw,100px) minmax(0,1fr) clamp(43px,5.5vw,68px) clamp(54px,6vw,85px) 24px;min-height:clamp(100px,11vw,160px);padding:17px 12px 17px 0!important;border-bottom:2px solid #c4d1df;transition:background .22s,transform .22s}
.sd-v17-timeline .sd-next-row:hover{background:#d1e4f9;transform:translateX(6px)}
.sd-v17-timeline .sd-next-row:before{top:0;bottom:0;width:7px;background:#1578d7;transform:scaleY(1)}
.sd-v17-timeline .sd-next-row:nth-child(2):before{background:#f3b35f}.sd-v17-timeline .sd-next-row:nth-child(3):before{background:#15579f}
.sd-v17-timeline .sd-next-date{text-align:center}.sd-v17-timeline .sd-next-date strong{font-size:clamp(33px,5.8vw,84px);color:#08204d;letter-spacing:-.12em;line-height:.92}
.sd-v17-timeline .sd-next-date small{font-size:10px;color:#346294;letter-spacing:.09em}
.sd-v17-timeline .sd-next-opponent strong{font-size:clamp(12px,2vw,24px);letter-spacing:-.065em;color:#031839}
.sd-v17-timeline .sd-next-opponent small{color:#31689b;font-weight:900}
.sd-v17-timeline .sd-next-crest{width:100%;height:66px}
.sd-v17-timeline .sd-next-crest .crest-rail.crest-shell{height:clamp(35px,5vw,56px)!important;width:clamp(35px,5vw,56px)!important;min-width:clamp(35px,5vw,56px)!important;max-width:clamp(35px,5vw,56px)!important}
.sd-v17-timeline .sd-next-arrow{color:#074c90}
/* The news area breaks the navy-on-navy habit with a cinematic editorial wall. */
.sd-v17-news-band{position:relative;background:linear-gradient(160deg,#010a18,#081d39 65%,#020916)!important;padding:clamp(55px,7vw,110px) 0!important;overflow:hidden}
.sd-v17-news-band:before{content:"";position:absolute;top:0;left:0;height:3px;width:100%;background:linear-gradient(90deg,transparent,#5fa6ed,#e8bc69,transparent)}
.sd-v17-news-band .fan-section-head h2{font-size:clamp(30px,5vw,73px);line-height:1.04}
.sd-v17-editorial-feature{border:0!important;min-height:clamp(470px,41vw,650px)!important;clip-path:polygon(0 0,100% 0,100% calc(100% - 34px),calc(100% - 38px) 100%,0 100%)}
.sd-v17-editorial-feature .sd-editorial-figure{background:linear-gradient(0deg,#000d20 1%,rgba(0,15,39,.3) 82%),url('/assets/blue-stand-left.webp') center 35%/cover!important;filter:saturate(1.26)}
.sd-v17-news-stamp{position:absolute!important;top:20px!important;left:24px!important;right:auto!important;color:#06172c!important;background:#e9bf76;padding:10px 14px;font:900 10px Unbounded,sans-serif!important;letter-spacing:.05em!important;-webkit-text-stroke:0!important;z-index:3!important}
.sd-v17-editorial-feature .sd-editorial-body h3{font-size:clamp(26px,3.6vw,54px)!important;max-width:720px;line-height:1.05;text-shadow:0 6px 22px #000c}
.sd-v17-editorial-feature .sd-editorial-body>a{display:inline-flex;border-bottom:2px solid #ebbe69;padding-bottom:7px}
.sd-v17-news-band .sd-editorial-brief .fan-story{border-left:0;border-top:2px solid #2a79b7;background:linear-gradient(90deg,#071b36,#102b4e)!important;transition:transform .25s,background .25s}
.sd-v17-news-band .sd-editorial-brief .fan-story:hover{transform:translateX(6px);background:#143968!important}
.sd-v17-news-band .sd-editorial-brief .fan-story .story-index{font-size:35px;color:#356ca7}
.sd-v17-tables{background:#041226!important;padding-block:clamp(55px,7vw,98px)!important}
.sd-v17-tables .fan-section-head h2{font-size:clamp(30px,5vw,64px)}
.sd-v17-tables .sd-standing-card{border-top:4px solid #3477c2;border-radius:0!important;box-shadow:0 24px 60px #0003}
.sd-v17-tables .sd-standing-card.fan-europe{border-top-color:#ed863b}
.sd-v17-inner .fan-inner-hero,.sd-v17-news-page .fan-inner-hero{background:linear-gradient(90deg,#03152edb,#0a3572cc),url('/assets/blue-stand-right.webp') right center/auto 150% no-repeat,#061833}
.sd-v17-match-page .sd-match-stage{background:linear-gradient(90deg,#021124b8,#081c3bca),url('/assets/blue-stand-left.webp') 15% center/auto 145% no-repeat,url('/assets/stadium-night.webp') center/cover}
/* One-shot reveal, never a permanent hiding state without JS support. */
.sd-v17-motion-enabled [data-sd-reveal]{opacity:0;transform:translateY(40px);transition:opacity .65s ease,transform .75s cubic-bezier(.16,1,.3,1)}
.sd-v17-motion-enabled [data-sd-reveal].sd-v17-revealed{opacity:1;transform:translateY(0)}
@media(max-width:900px){.sd-v17-crowd{width:40%;height:72%}.sd-v17-hero .fan-matchday{max-width:740px}.sd-v17-timeline .sd-next-row{min-height:100px}}
@media(max-width:690px){
 .sd-v17-pulse{height:36px}.sd-v17-pulse-inner{grid-template-columns:auto minmax(0,1fr) 0}.sd-v17-pulse-label{font-size:9px;padding-inline:9px}.sd-v17-pulse-end{display:none}.sd-v17-tick{font-size:9px}
 .sd-v17-hero{min-height:650px!important;padding:17px 0 47px!important;background-position:58% center!important}
 .sd-v17-crowd{width:39%;height:66%;opacity:.47;bottom:0}.sd-v17-crowd-l{left:-9%}.sd-v17-crowd-r{right:-9%}
 .sd-v17-hero .sd-stage-overline{font-size:8px;flex-direction:row;align-items:center}.sd-v17-hero .sd-synced{display:none}
 .sd-v17-title{padding:36px 0 17px!important}.sd-v17-title>span{font-size:9px!important;margin-bottom:14px!important}
 .sd-v17-title h1{font-size:clamp(41px,12vw,75px)!important;letter-spacing:-.116em!important;line-height:.97!important;overflow-wrap:anywhere}
 .sd-v17-title p{font-size:11px!important;line-height:1.5}.sd-v17-stadium-line{font-size:7px;letter-spacing:.08em;gap:9px;margin-bottom:14px}.sd-v17-stadium-line i{width:28px}
 .sd-v17-hero .fan-matchday{padding:23px 11px 22px!important;clip-path:polygon(0 0,95% 0,100% 18px,100% 100%,4% 100%,0 calc(100% - 17px))}
 .sd-v17-hero .fan-duel{margin:26px 0 24px!important}.sd-v17-hero .crest-hero.crest-shell{filter:drop-shadow(0 0 10px #77b8ff55)}
 .sd-v17-hero .fan-kickoff{font-size:clamp(28px,9vw,48px)!important}.sd-v17-hero .fan-countdown{gap:3px}
 .sd-v17-hero .sd-open-match{margin-top:19px!important;width:100%;min-width:0;padding:14px!important;font-size:10px!important}
 .sd-v17-hero .sd-stadium-caption{font-size:175px;opacity:.2}
 .sd-v17-timeline{padding:48px 0 68px!important}
 .sd-v17-timeline .fan-section-head h2{font-size:clamp(29px,8vw,51px)}
 .sd-v17-timeline .sd-next-list{margin-top:18px}
 .sd-v17-timeline .sd-next-row{grid-template-columns:39px minmax(0,1fr) 34px 40px 13px;gap:7px;min-height:95px;padding:12px 3px 12px 6px!important}
 .sd-v17-timeline .sd-next-date strong{font-size:29px}.sd-v17-timeline .sd-next-date small{font-size:8px}
 .sd-v17-timeline .sd-next-opponent strong{font-size:11px}.sd-v17-timeline .sd-next-opponent small{font-size:8px}
 .sd-v17-timeline .sd-next-crest{width:34px;height:42px}.sd-v17-timeline .sd-next-crest .crest-rail.crest-shell{width:32px!important;height:32px!important;min-width:32px!important;max-width:32px!important}
 .sd-v17-timeline .sd-next-time{font-size:9px}.sd-v17-timeline .sd-next-arrow .ui-icon{width:11px;height:11px}
 .sd-v17-news-band{padding:60px 0!important}.sd-v17-editorial-feature{min-height:450px!important}.sd-v17-editorial-feature .sd-editorial-figure{background-position:center 42%!important}
 .sd-v17-editorial-feature .sd-editorial-body h3{font-size:26px!important}.sd-v17-editorial-feature .sd-editorial-body{padding:22px}
 .sd-v17-tables{padding:54px 0!important}
}
@media(max-width:355px){.sd-v17-title h1{font-size:38px!important}.sd-v17-timeline .sd-next-row{grid-template-columns:33px minmax(0,1fr) 28px 35px 10px;gap:4px}.sd-v17-timeline .sd-next-crest{width:28px}.sd-v17-timeline .sd-next-crest .crest-rail.crest-shell{width:26px!important;height:26px!important;min-width:26px!important;max-width:26px!important}}
@media(prefers-reduced-motion:reduce){
 .sd-v17-opening{display:none!important}.sd-v17-pulse-track,.sd-v17-radio,.sd-v17-crowd,.sd-v17-spotlight,.sd-v17-title h1,.sd-v17-hero .fan-matchday,.sd-v17-hero .fan-matchday:before,.sd-v17-hero .fan-matchday:after,.sd-v17-hero .crest-hero.crest-shell{animation:none!important}
 .sd-v17-pulse-track{transform:none!important}.sd-v17-spotlight{opacity:.15}.sd-v17-motion-enabled [data-sd-reveal]{opacity:1!important;transform:none!important;transition:none!important}
}
