:root{
  --heat:#98002e;--heat-bright:#c8102e;--orange:#f9a01b;--black:#050505;--black-2:#0a0a0b;
  --panel:#111214;--paper:#f3f2ef;--ink:#111214;--muted:#a8a8aa;--line:rgba(255,255,255,.12);
  --display:"Oswald",Impact,sans-serif;--body:"Inter",system-ui,sans-serif;--max:1280px;--radius:16px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--black);color:#fff;font-family:var(--body);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit}img{display:block;max-width:100%}button{font:inherit}:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:14px;top:-60px;background:var(--orange);color:#000;padding:10px 14px;z-index:100;font-weight:800}.skip:focus{top:10px}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.noscript{margin:0;padding:14px;text-align:center;background:var(--heat);font-weight:700}

/* Header */
.header{position:sticky;top:0;z-index:50;background:rgba(5,5,5,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.1)}
.header-inner{min-height:74px;display:flex;align-items:center;gap:28px}.brand{text-decoration:none;display:flex;align-items:center;gap:10px;line-height:.9}.brand-mark{font-family:var(--display);font-weight:700;font-size:30px;letter-spacing:-.035em}.brand-mark:before{content:"◒";display:inline-block;color:var(--heat-bright);font-size:27px;margin-right:7px;transform:rotate(-25deg)}.brand-sub{font:800 10px/1 var(--body);letter-spacing:.25em;color:var(--orange);align-self:flex-end;margin-bottom:2px}.nav{display:flex;gap:3px;margin-left:auto}.nav a{padding:11px 12px;text-decoration:none;color:#d8d8d8;font-size:12px;font-weight:700;border-bottom:2px solid transparent}.nav a:hover,.nav a[aria-current=true]{color:#fff;border-bottom-color:var(--heat-bright)}.header-right{display:flex;align-items:center;gap:10px}.lang{display:inline-flex;border:1px solid #303033;border-radius:999px;padding:3px}.lang button{border:0;background:transparent;color:#aaa;border-radius:999px;min-width:35px;min-height:30px;padding:6px 9px;font:800 10px/1 var(--body);cursor:pointer}.lang button[aria-pressed=true]{background:var(--heat);color:#fff}.menu{display:none;width:44px;height:44px;padding:9px;background:none;border:1px solid #333;border-radius:9px}.menu i{display:block;width:20px;height:2px;background:#fff;margin:4px auto;transition:.2s}.menu[aria-expanded=true] i:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu[aria-expanded=true] i:nth-child(2){opacity:0}.menu[aria-expanded=true] i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* Shared editorial headings */
.kicker{margin:0 0 12px;color:var(--heat-bright);font-size:11px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.dark-section .kicker,.hero .kicker{color:var(--orange)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:34px}.section-head h2,.history-grid h2{font-family:var(--display);font-size:clamp(42px,5.5vw,76px);line-height:.9;letter-spacing:-.02em;margin:0;text-transform:uppercase}.section-head>p{max-width:520px;margin:0;color:#5f6062;font-size:14px}.dark-section .section-head>p{color:#aaa}.section{padding:92px 0;background:var(--paper);color:var(--ink)}.dark-section{background:var(--black-2);color:#fff;border-block:1px solid var(--line)}

/* Hero */
.hero{position:relative;overflow:hidden;min-height:720px;background-image:linear-gradient(90deg,rgba(3,3,3,.98) 0%,rgba(3,3,3,.9) 34%,rgba(3,3,3,.4) 68%,rgba(3,3,3,.5) 100%),url("images/hero/miami-heat-hero.jpg");background-position:center, right center;background-size:auto, auto 100%;background-repeat:no-repeat;border-bottom:1px solid var(--line)}.hero:before{content:"";position:absolute;inset:0;opacity:.35;background:repeating-linear-gradient(90deg,transparent 0,transparent 78px,rgba(255,255,255,.025) 79px,transparent 80px)}.hero:after{content:"";position:absolute;width:620px;height:620px;right:-180px;top:40px;border-radius:50%;border:1px solid rgba(249,160,27,.18);box-shadow:0 0 0 70px rgba(152,0,46,.05),0 0 0 150px rgba(152,0,46,.035)}.hero-grid{position:relative;z-index:1;min-height:720px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:54px;padding:80px 0}.hero-copy{position:relative}.hero-copy:after{content:"MIAMI";position:absolute;left:-15px;top:35px;font:900 clamp(100px,15vw,220px)/.75 var(--display);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.055);z-index:-1}.hero h1{font:700 clamp(84px,13vw,176px)/.76 var(--display);letter-spacing:-.045em;margin:0;text-transform:uppercase}.hero h1 span{color:#fff;-webkit-text-stroke:0;text-shadow:10px 10px 0 var(--heat)}.hero-lead{font-size:clamp(24px,3vw,38px);line-height:1.02;font-weight:800;max-width:620px;margin:30px 0 12px}.hero-text{max-width:610px;color:#b7b7b9;font-size:15px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:45px;padding:12px 18px;border-radius:8px;text-decoration:none;font-size:12px;font-weight:900;border:1px solid transparent;cursor:pointer}.btn.primary{background:var(--heat);color:#fff}.btn.primary:hover{background:var(--heat-bright)}.btn.secondary{background:transparent;border-color:#4a4a4d;color:#fff}.btn.secondary:hover{border-color:var(--orange);color:var(--orange)}.btn.small{width:100%;min-height:40px}.btn.disabled{background:#deddda;color:#666}
.next-game{background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:28px;box-shadow:0 30px 100px rgba(0,0,0,.45);position:relative;overflow:hidden}.next-game:before{content:"HEAT";position:absolute;right:-30px;top:-40px;font:900 150px/.8 var(--display);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.07);transform:rotate(-8deg)}.next-head{position:relative;display:flex;justify-content:space-between;gap:10px;align-items:center}.next-label{margin:0;color:var(--orange);font-size:11px;letter-spacing:.2em}.matchup{position:relative;font-size:28px;font-weight:900;line-height:1.1;margin-top:38px}.game-time{position:relative;color:#b8b8ba;margin-top:8px;font-size:13px;display:flex;gap:7px;align-items:center;flex-wrap:wrap}.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:28px}.countdown[hidden]{display:none}.countdown>div{background:#070708;border:1px solid rgba(255,255,255,.1);padding:13px 5px;text-align:center;border-radius:8px}.countdown strong{display:block;font:700 31px/1 var(--display);font-variant-numeric:tabular-nums}.countdown small{font-size:8px;color:#888;letter-spacing:.12em}.next-status{color:var(--orange);font-weight:800;margin:14px 0 0}.next-status:empty{display:none}.swedish-time{font-size:11px;color:#858589;margin-top:14px}.tag{display:inline-block;padding:4px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.16);font:800 9px/1.2 var(--body);letter-spacing:.08em;text-transform:uppercase;color:#ddd}.tag--stage{border-color:rgba(249,160,27,.55);color:var(--orange)}.tag--away{border-color:rgba(255,100,130,.45);color:#ff8ea2}.tag--home{border-color:rgba(255,255,255,.3)}.tag--night{color:#bbb}

/* News */
.news-grid{display:grid;grid-template-columns:1.35fr .825fr .825fr;gap:16px}.news-card{background:#fff;border:1px solid #dededb;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-height:360px}.news-card:first-child{grid-row:span 2}.news-card:first-child .news-image{height:150px}.news-image{position:relative;height:110px;background:#0d0d0f;overflow:hidden;border-bottom:3px solid var(--heat)}.news-image:before{content:"HEAT";position:absolute;inset:auto 14px 4px auto;font:900 54px/.8 var(--display);letter-spacing:-.03em;color:rgba(255,255,255,.045);pointer-events:none}.news-image:after{content:"";position:absolute;left:0;top:0;width:72px;height:3px;background:var(--orange);box-shadow:90px 0 0 var(--heat)}.news-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.news-card:hover .news-image img{transform:scale(1.04)}.news-body{padding:19px;display:flex;flex-direction:column;flex:1}.news-meta{display:flex;gap:8px;flex-wrap:wrap;font-size:10px;font-weight:900;letter-spacing:.08em}.news-source{color:var(--heat);text-transform:uppercase}.news-date{color:#777}.news-card h3{font-size:20px;line-height:1.16;margin:10px 0}.news-card:first-child h3{font-size:25px}.news-card p{font-size:13px;color:#5b5c5e;margin:0 0 18px}.news-card a{margin-top:auto;color:var(--heat);font-size:12px;font-weight:900;text-decoration:none}.news-card a:hover{text-decoration:underline}

/* Games */
.score-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.score-panel{background:#111214;border:1px solid #252629;border-radius:12px;padding:22px}.score-panel h3{margin:0 0 5px;color:var(--orange);font-size:11px;letter-spacing:.16em;text-transform:uppercase}.score-list{list-style:none;padding:0;margin:0}.score-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 0;border-top:1px solid #242528}.score-row:first-child{border-top:0}.score-teams{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:800;font-size:14px}.score-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px;font-size:11px;color:#8f9093}.score-result{display:flex;align-items:center;gap:9px;font:700 22px/1 var(--display);font-variant-numeric:tabular-nums}.result-badge{display:grid;place-items:center;width:28px;height:28px;border-radius:6px;font:900 11px/1 var(--body)}.result-badge.win{background:var(--orange);color:#000}.result-badge.loss{background:var(--heat);color:#fff}.score-tz{font:700 10px/1 var(--body);color:#999}

/* Swedish spotlight */
.spotlight{position:relative;overflow:hidden;background:linear-gradient(100deg,#98002e,#7c0028);padding:64px 0}.spotlight:after{content:"#9";position:absolute;right:-20px;bottom:-95px;font:900 280px/.8 var(--display);color:rgba(255,255,255,.055)}.spotlight-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}.spotlight .kicker{color:#fff}.spotlight h2{font:700 clamp(50px,7vw,92px)/.82 var(--display);margin:0;letter-spacing:-.03em}.spotlight h2 span{color:var(--orange)}.spotlight p{max-width:680px;font-size:15px}.spot-stats{display:grid;grid-template-columns:1fr 1fr;margin:0;background:rgba(0,0,0,.14);border:1px solid rgba(255,255,255,.2);border-radius:10px;overflow:hidden}.spot-stats div{padding:22px;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column-reverse}.spot-stats dd{margin:0;font:700 39px/1.05 var(--display)}.spot-stats dt{font-size:9px;letter-spacing:.12em;opacity:.75}

/* Roster */
.roster-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:11px}.player{background:#fff;border:1px solid #ddd;border-radius:11px;padding:15px;min-height:165px;position:relative;overflow:hidden}.player:before{content:"";display:block;height:4px;background:var(--heat);margin:-15px -15px 15px}.player.is-swede{border-color:#d9a11c}.player.is-swede:before{background:linear-gradient(90deg,#006aa7,#fecc00)}.player-num{font:700 25px/1 var(--display);color:#929397}.player h3{margin:5px 0;font-size:16px;line-height:1.15}.player p{margin:0;color:#5f6062;font-size:12px}.player .swede{display:inline-block;margin-top:8px;color:var(--heat);font-size:9px;font-weight:900;letter-spacing:.1em}

/* History — the main mockup-inspired visual upgrade */
.history-wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;align-items:start}.history-intro{position:sticky;top:110px}.history-grid{display:block}.history-grid h2{font-size:clamp(58px,7vw,96px);max-width:520px}.lead-small{max-width:530px;color:#aaa;font-size:14px}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:28px 0 0;max-width:500px}.stat{background:#101113;border:1px solid #292a2c;border-radius:9px;padding:14px}.stat dt{font-size:9px;color:#888;letter-spacing:.12em;text-transform:uppercase}.stat dd{margin:3px 0 0;font:700 29px/1 var(--display)}.timeline{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.timeline-item{position:relative;min-height:250px;padding:0 14px 18px;background:linear-gradient(180deg,#161719,#0c0d0e);border:1px solid #303134;border-radius:10px;overflow:hidden}.timeline-item:before{content:"";display:block;height:3px;background:var(--heat);margin:0 -14px 14px}.timeline-item.champion:before{height:4px;background:linear-gradient(90deg,var(--heat),var(--orange))}.timeline-year{font:700 28px/1 var(--display);color:#fff;margin-bottom:5px}.timeline-item h3{font-size:15px;margin:0 0 9px;line-height:1.1}.timeline-item p{font-size:11px;line-height:1.55;color:#aaa;margin:0}.timeline-item.champion{box-shadow:inset 0 -3px 0 rgba(249,160,27,.4)}

/* Arena — image-led */
.arena-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:18px;align-items:stretch}.arena-card{position:relative;min-height:520px;background:#0c0c0d;border-radius:14px;overflow:hidden;border:1px solid #303033}.arena-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.arena-card:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.55),transparent 60%),linear-gradient(0deg,rgba(0,0,0,.4),transparent 45%);pointer-events:none}.arena-placeholder{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(135deg,#10070b,#98002e 60%,#f9a01b);font:700 52px/.85 var(--display);text-align:center}.arena-credit{position:absolute;z-index:2;left:18px;bottom:15px;font-size:10px;color:#ddd}.arena-info{background:#0f1012;color:#fff;border:1px solid #292a2c;border-radius:14px;padding:22px;display:flex;flex-direction:column}.facts{margin:0 0 26px}.facts>div{display:grid;grid-template-columns:82px 1fr;gap:12px;padding:13px 0;border-top:1px solid #292a2c}.facts>div:first-child{border-top:0}.facts dt{font-size:9px;color:#888;text-transform:uppercase;letter-spacing:.1em}.facts dd{margin:0;font-size:12px}.arena-info h3{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:var(--orange);margin:0 0 10px}.arena-info ul{padding-left:18px;margin:0 0 22px;color:#b8b8ba;font-size:12px}.arena-info li+li{margin-top:10px}.arena-info .btn{margin-top:auto}

/* Miami */
.miami-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.miami-card{min-height:180px;padding:20px;background:linear-gradient(150deg,#121315,#0b0c0d);border:1px solid #292a2c;border-radius:10px;position:relative;overflow:hidden}.miami-card:after{content:"";position:absolute;right:-25px;bottom:-40px;width:130px;height:130px;border:1px solid rgba(249,160,27,.2);border-radius:50%}.miami-card h3{font:700 28px/1 var(--display);margin:0 0 10px;text-transform:uppercase}.miami-card p{margin:0;color:#aaa;font-size:12px;max-width:300px}.travel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.travel-grid>div{padding:20px;border:1px solid #292a2c;border-radius:10px}.travel-grid h3{font-size:13px;margin:0 0 7px;color:var(--orange)}.travel-grid p{margin:0;color:#aaa;font-size:12px}

/* Wallpapers */
.wall-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.wall-card{background:#fff;border:1px solid #ddd;border-radius:11px;padding:10px}.wall{position:relative;aspect-ratio:9/19.5;background:linear-gradient(180deg,#13070b,#98002e 60%,#f9a01b);border-radius:7px;overflow:hidden;color:transparent}.wall img{width:100%;height:100%;object-fit:cover}.wall small{position:absolute;left:10px;bottom:10px;color:#fff;background:rgba(0,0,0,.55);padding:3px 6px;border-radius:4px;font-size:9px}.wall-card .btn{margin-top:9px}.guide{margin-top:34px;padding:24px;background:#e8e7e3;border:1px solid #d8d7d3;border-radius:12px}.guide h3{font:700 28px/1 var(--display);margin:0 0 18px}.guide-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.guide details{background:#fff;border:1px solid #ddd;border-radius:9px;padding:14px}.guide summary{cursor:pointer;font-weight:800;font-size:13px}.guide ol{font-size:12px;color:#555;margin:12px 0 0;padding-left:20px}


/* Shop / affiliate */
.shop-section{background:#0b0b0c;color:#fff;border-block:1px solid var(--line)}
.shop-panel{display:grid;grid-template-columns:.9fr 1.1fr;min-height:390px;background:linear-gradient(125deg,#0e0e10 0%,#171216 55%,#09090a 100%);border:1px solid #292a2c;border-radius:16px;overflow:hidden;box-shadow:0 25px 80px rgba(0,0,0,.28)}
.shop-art{position:relative;display:flex;flex-direction:column;justify-content:center;padding:42px;background:radial-gradient(circle at 30% 35%,rgba(249,160,27,.24),transparent 30%),linear-gradient(145deg,#070708,#300914 58%,#98002e);overflow:hidden}
.shop-art:before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(249,160,27,.22);border-radius:50%;right:-180px;top:-100px;box-shadow:0 0 0 55px rgba(249,160,27,.04),0 0 0 115px rgba(249,160,27,.025)}
.shop-art:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0,transparent 32px,rgba(255,255,255,.025) 33px,transparent 34px);pointer-events:none}
.shop-art span{position:relative;z-index:1;font-family:var(--display);font-weight:700;line-height:.8;text-transform:uppercase}
.shop-art__top{font-size:clamp(32px,4vw,58px);color:#fff;letter-spacing:.02em}
.shop-art__main{font-size:clamp(82px,10vw,150px);color:#fff;text-shadow:8px 8px 0 var(--heat);letter-spacing:-.05em}
.shop-art__sub{font:900 10px/1.2 var(--body)!important;letter-spacing:.22em;color:var(--orange);margin-top:16px}
.shop-copy{display:flex;flex-direction:column;justify-content:center;padding:48px 54px}
.shop-copy h2{font-family:var(--display);font-size:clamp(46px,5vw,76px);line-height:.9;text-transform:uppercase;margin:0 0 18px}
.shop-copy>p:not(.kicker):not(.affiliate-note){max-width:560px;color:#aaa;font-size:15px;margin:0 0 25px}
.shop-btn{align-self:flex-start}
.affiliate-note{max-width:520px;color:#777;font-size:10px;line-height:1.45;margin:14px 0 0}
.amazon-disclosure{font-size:10px!important;color:#777!important;margin-top:12px!important}
@media(max-width:860px){.shop-panel{grid-template-columns:1fr}.shop-art{min-height:270px}.shop-copy{padding:36px 28px}}

/* Footer */
.footer{background:#030303;border-top:1px solid #252528;padding:58px 0 18px}.footer-grid{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:60px}.footer .brand-mark{font-size:27px}.footer p{color:#96979a;font-size:12px;max-width:390px}.footer h4{margin:0 0 12px;font-size:10px;color:var(--orange);letter-spacing:.15em}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}.footer-links a{color:#bbb;text-decoration:none;font-size:12px}.footer-links a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #1e1f21;margin-top:38px;padding-top:16px;color:#777;font-size:10px}.footer-bottom a{text-decoration:none}.lang--footer{margin-top:10px}

@media(max-width:1100px){.nav a{padding-inline:8px}.hero-grid{grid-template-columns:1fr .85fr}.roster-grid{grid-template-columns:repeat(4,1fr)}.news-grid{grid-template-columns:1fr 1fr}.news-card:first-child{grid-row:auto}.news-card:first-child .news-image{height:135px}.history-wrap{grid-template-columns:1fr}.history-intro{position:static}.timeline{grid-template-columns:repeat(3,1fr)}}
@media(max-width:860px){.header-inner{gap:12px}.nav{display:none;position:absolute;left:12px;right:12px;top:72px;background:#09090a;border:1px solid #292a2c;border-radius:12px;padding:10px;box-shadow:0 20px 60px rgba(0,0,0,.5)}.nav.is-open{display:grid}.nav a{padding:12px;border-bottom:1px solid #222}.menu{display:block}.hero-grid{grid-template-columns:1fr;min-height:auto;padding:70px 0}.hero{min-height:auto;background-size:auto,cover;background-position:center,right center}.hero:after{right:-350px}.hero-copy:after{top:10px}.next-game{max-width:680px}.section-head{display:block}.section-head>p{margin-top:14px}.spotlight-grid{grid-template-columns:1fr}.arena-grid{grid-template-columns:1fr}.arena-card{min-height:430px}.miami-grid,.travel-grid{grid-template-columns:1fr 1fr}.wall-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.container{width:min(100% - 28px,var(--max))}.header-inner{min-height:64px}.brand-mark{font-size:25px}.brand-sub{font-size:8px}.header-right{margin-left:auto}.hero h1{font-size:82px}.hero-lead{font-size:25px}.hero-grid{padding:54px 0}.countdown strong{font-size:26px}.news-grid,.score-columns,.miami-grid,.travel-grid,.guide-cols,.footer-grid{grid-template-columns:1fr}.news-card:first-child .news-image{height:210px}.roster-grid{grid-template-columns:repeat(2,1fr)}.timeline{grid-template-columns:1fr 1fr}.timeline-item{min-height:220px}.history-grid h2{font-size:62px}.arena-card{min-height:320px}.wall-grid{grid-template-columns:repeat(2,1fr)}.footer-bottom{flex-direction:column}.spotlight h2{font-size:55px}.spot-stats dd{font-size:32px}}
@media(max-width:400px){.roster-grid{grid-template-columns:1fr 1fr}.timeline{grid-template-columns:1fr}.hero h1{font-size:72px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.news-image img{transition:none}.menu i{transition:none}}

/* Shop visibility polish */
.shop-section{padding-top:clamp(64px,8vw,104px);padding-bottom:clamp(64px,8vw,104px)}
.shop-panel{position:relative}
.shop-panel:after{content:"SHOP";position:absolute;right:22px;top:18px;font:700 11px/1 var(--body);letter-spacing:.28em;color:rgba(249,160,27,.55);pointer-events:none}
.shop-copy .affiliate-note{max-width:560px;color:#8c8c8c;font-size:12px;line-height:1.5;margin:14px 0 0}
@media(max-width:860px){.shop-panel:after{right:16px;top:14px}.shop-copy{padding:32px 24px 38px}.shop-art{min-height:235px}}


/* V11 SHOP VISIBILITY OVERRIDE — intentionally self-contained */
#shop.shop-section { display:block !important; visibility:visible !important; opacity:1 !important; position:relative !important; min-height:390px !important; }
#shop.shop-section .shop-panel { display:grid !important; visibility:visible !important; opacity:1 !important; }
#shop.shop-section .shop-copy, #shop.shop-section .shop-art { visibility:visible !important; opacity:1 !important; }
#shop.shop-section h2, #shop.shop-section p, #shop.shop-section a { visibility:visible !important; opacity:1 !important; }
@media (max-width:860px){#shop.shop-section .shop-panel{grid-template-columns:1fr !important;}#shop.shop-section .shop-art{min-height:240px !important;}}


/* ==========================================================================
   V12 fixes & additions
   ========================================================================== */

/* Tags that are switched off must stay hidden (empty pill in the countdown card) */
.tag[hidden] { display: none; }
.tag--live { border-color: rgba(200, 16, 46, .7); color: #fff; background: var(--heat-bright); }

/* Download icon was rendering huge */
.btn svg { width: 16px; height: 16px; flex: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* Header: keep items on one line; switch to the menu button below 1100px */
.brand, .brand-mark, .brand-sub, .nav a { white-space: nowrap; }
@media (max-width: 1100px) {
  .nav { display: none; position: absolute; left: 12px; right: 12px; top: 72px; background: #09090a; border: 1px solid #292a2c; border-radius: 12px; padding: 10px; box-shadow: 0 20px 60px rgba(0, 0, 0, .5); }
  .nav.is-open { display: grid; }
  .nav a { padding: 12px; border-bottom: 1px solid #222; font-size: 14px; }
  .nav a:last-child { border-bottom: 0; }
  .menu { display: block; }
  .header-right { margin-left: auto; }
}
@media (max-width: 620px) { .nav { top: 62px; } }

/* Next-game card: readable on top of the hero photo */
.next-game { background: linear-gradient(145deg, rgba(12, 12, 14, .9), rgba(12, 12, 14, .78)); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }

/* History: the intro must not stick on top of the timeline in the one-column layout */
.history-intro { position: static; }

/* News: live headlines have no photos – show a slim accent bar instead of an empty box */
.news-grid { grid-template-columns: repeat(3, 1fr); }
.news-card:first-child { grid-row: auto; }
.news-card.no-image { min-height: 0; }
.news-card.no-image .news-image { height: 6px; border-bottom: 0; background: linear-gradient(90deg, var(--heat), var(--orange)); }
.news-card.no-image .news-image::before, .news-card.no-image .news-image::after { display: none; }
.news-card.no-image h3 { margin-bottom: 18px; }
.news-card:first-child h3 { font-size: 20px; }
.news-lang { color: #555; border: 1px solid #ccc; border-radius: 4px; padding: 0 4px; letter-spacing: .06em; }
.news-updated { display: block; margin-top: 6px; font-size: 12px; color: #6a6b6d; }
@media (max-width: 1100px) { .news-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 620px) { .news-grid { grid-template-columns: 1fr; } .news-card:first-child .news-image { height: 6px; } }

/* Shop: red label on black failed contrast */
.shop-section .kicker { color: var(--orange); }

/* Arena: only show the image credit when the image is actually shown */
.arena-card:not(.has-photo) .arena-credit { display: none; }
.arena-placeholder { color: #fff; }

/* Footer cookie-settings button */
.link-button { background: none; border: 0; padding: 0; color: #9a9a9d; font: inherit; font-size: 10px; text-decoration: underline; cursor: pointer; }
.link-button:hover { color: #fff; }

/* Cookie consent banner */
.consent { position: fixed; left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom, 0px)); z-index: 90; }
.consent[hidden] { display: none; }
.consent-inner { max-width: 980px; margin: 0 auto; display: flex; align-items: center; gap: 22px; padding: 18px 20px; background: #111214; color: #fff; border: 1px solid #333; border-radius: 14px; box-shadow: 0 20px 60px rgba(0, 0, 0, .55); }
.consent-title { margin: 0 0 4px; font-weight: 800; font-size: 14px; }
.consent-text { margin: 0; color: #b5b5b8; font-size: 13px; line-height: 1.5; }
.consent-actions { display: flex; gap: 8px; flex: none; }
@media (max-width: 700px) {
  .consent-inner { flex-direction: column; align-items: stretch; gap: 14px; }
  .consent-actions .btn { flex: 1; }
}
@media (max-width: 620px) {
  .header .brand { flex-direction: column; align-items: flex-start; gap: 4px; }
  .header .brand-sub { align-self: flex-start; margin: 0 0 0 30px; }
  .header-right { gap: 6px; }
}
@media (max-width: 370px) {
  .header .brand-mark { font-size: 20px; }
  .header .brand-mark::before { font-size: 19px; margin-right: 4px; }
  .header .brand-sub { margin-left: 24px; }
  .header .lang button { min-width: 30px; padding: 6px 7px; }
}
body { overflow-x: clip; }   /* decorative pseudo-elements must never cause sideways scrolling */
/* Wallpaper previews: image fills the card (removes the dark band above it) */
.wall img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.wall small { z-index: 1; }
