.portal-hero { padding: clamp(48px, 7vw, 96px) 0; border-bottom: 1px solid var(--line); }
.portal-hero__grid { display:grid; grid-template-columns:minmax(0, 1.1fr) minmax(280px, .9fr); align-items:center; gap:clamp(28px, 6vw, 80px); }
.portal-hero h1 { max-width: 850px; margin: 14px 0 22px; font-size: clamp(3.2rem, 8vw, 7rem); line-height:.86; overflow-wrap:anywhere; }
.portal-hero .lede { max-width:690px; }
.portal-hero__art { position:relative; aspect-ratio:16/9; overflow:hidden; border:1px solid var(--line); border-bottom:8px solid var(--orange); background:#23201c; }
.portal-hero__art img { width:100%; height:100%; object-fit:cover; object-position:center 28%; }
.portal-hero__art::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(17,16,15,.55)); pointer-events:none; }
.portal-section { padding: clamp(48px, 6vw, 84px) 0; }
.portal-section--paper { background:var(--paper); color:var(--ink); }
.portal-section__intro { max-width:780px; margin-bottom:30px; }
.portal-section h2 { margin:0 0 12px; font-size:clamp(2.1rem, 5vw, 4rem); line-height:.95; }
.portal-section p { margin-top:0; }
.portal-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.portal-card { display:flex; min-width:0; flex-direction:column; overflow:hidden; border:1px solid var(--line); background:#211e1a; }
.portal-card__image { aspect-ratio:16/9; overflow:hidden; background:#141210; }
.portal-card__image img { width:100%; height:100%; object-fit:cover; object-position:center 25%; transition:transform .2s ease; }
.portal-card:hover .portal-card__image img { transform:scale(1.035); }
.portal-card__body { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:28px; }
.portal-card__body h2,.portal-card__body h3 { margin:0 0 10px; }
.portal-card__body p:not(.eyebrow) { max-width:54ch; color:var(--muted); }
.portal-card__body .text-link { margin-top:auto; }
.portal-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.portal-action { display:flex; flex-direction:column; min-height:240px; padding:24px; border:1px solid #c9b999; border-top:6px solid var(--orange); background:var(--paper-2); }
.portal-action h3 { margin:0 0 12px; font-size:1.65rem; line-height:1.05; }
.portal-action p { color:#55493b; }
.portal-action .text-link { margin-top:auto; }
.portal-note { margin-top:28px; padding:18px 20px; border-left:5px solid var(--orange); background:rgba(241,90,0,.1); }
.portal-section [data-portal-news] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.portal-section .fgc-news-card { color:var(--ink); }
.portal-section .fgc-news-card h3 { margin:0; color:var(--ink); font-size:clamp(1.55rem,3vw,2.3rem); line-height:.98; overflow-wrap:anywhere; }
.portal-next { display:flex; flex-wrap:wrap; align-items:center; gap:20px; padding:26px; border:1px solid var(--line); }
.portal-next p { flex:1 1 350px; margin:0; }
@media(max-width:800px) { .portal-hero__grid { grid-template-columns:1fr; } .portal-actions { grid-template-columns:1fr; } .portal-action { min-height:0; } .portal-section [data-portal-news] { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:580px) { .portal-grid { grid-template-columns:1fr; } .portal-hero h1 { font-size:clamp(3rem,15vw,5rem); } .portal-section [data-portal-news] { grid-template-columns:1fr; } }

/* Game-specific preview hubs. Licensed game artwork remains separate from the original CSS treatment. */
.game-hub { --hub-accent:#ff6a00; --hub-secondary:#2e65ff; --hub-ink:#10142b; background:#10142b; }
.game-hub--tekken { --hub-accent:#ed2844; --hub-secondary:#50b8ff; --hub-ink:#0b1018; background:#0b1018; }
.game-hub .site-header { position:relative; z-index:20; }
.hub-hero { position:relative; isolation:isolate; overflow:hidden; min-height:640px; background:var(--hub-ink); }
.hub-hero::before,.hub-hero::after { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; }
.game-hub--street .hub-hero::before { background:linear-gradient(90deg,#10142b 0%,rgba(16,20,43,.96) 34%,rgba(16,20,43,.55) 100%),url('../img/events/bx-dojo/games/street-fighter-6-card.jpg') center 45%/cover; opacity:.95; }
.game-hub--street .hub-hero::after { background:linear-gradient(145deg,transparent 60%,rgba(252,91,0,.15) 60%,transparent 69%),radial-gradient(circle at 78% 25%,rgba(29,100,255,.35),transparent 32%),repeating-linear-gradient(112deg,transparent 0 26px,rgba(255,255,255,.018) 27px 29px); }
.game-hub--tekken .hub-hero::before { background:linear-gradient(90deg,#0b1018 0%,rgba(11,16,24,.97) 35%,rgba(11,16,24,.66) 100%),url('../img/events/bx-dojo/games/tekken-8-card.jpg') center/cover; opacity:.97; }
.game-hub--tekken .hub-hero::after { background:radial-gradient(circle at 74% 39%,rgba(225,24,61,.35),transparent 23%),radial-gradient(circle at 90% 18%,rgba(49,133,255,.27),transparent 30%),linear-gradient(135deg,transparent 47%,rgba(255,255,255,.045) 47.1%,transparent 47.5%); }
.hub-hero__inner { position:relative; display:flex; align-items:center; min-height:640px; padding-block:70px 80px; }
.hub-hero__copy { position:relative; z-index:3; width:min(66%,720px); }
.hub-kicker { width:max-content; max-width:100%; margin:0 0 24px; padding:7px 12px; border-left:5px solid var(--hub-accent); background:rgba(0,0,0,.57); color:#fff; font-size:.75rem; font-weight:900; letter-spacing:.16em; text-transform:uppercase; }
.hub-hero h1 { position:relative; z-index:2; margin:0 0 24px; color:#fff; font:900 clamp(5.5rem,10.5vw,10rem)/.79 var(--font-display,Impact,sans-serif); letter-spacing:-.045em; text-transform:uppercase; text-shadow:0 8px 25px rgba(0,0,0,.55); }
.game-hub--street .hub-hero h1 { transform:skew(-4deg); }
.game-hub--street .hub-hero h1 span { color:#ff7a19; text-shadow:5px 5px 0 #2457e5,0 8px 25px #000; }
.game-hub--tekken .hub-hero h1 { font-style:italic; letter-spacing:-.06em; }
.game-hub--tekken .hub-hero h1 span { display:inline-block; color:#f53d58; text-shadow:5px 5px 0 #0e6aa6,0 8px 25px #000; }
.hub-hero__lede { max-width:590px; margin:0 0 28px; color:#f4f0ec; font-size:clamp(1rem,1.5vw,1.25rem); font-weight:600; line-height:1.55; text-shadow:0 2px 8px #000; }
.game-hub .button { background:var(--hub-accent); border-color:var(--hub-accent); }
.game-hub .button-secondary { background:rgba(8,12,23,.75); border-color:rgba(255,255,255,.7); color:#fff; }
.game-hub .button:hover { filter:brightness(1.1); }
.hub-hero__fighters { position:absolute; z-index:1; inset:0 0 0 48%; pointer-events:none; }
.hub-hero__fighter { position:absolute; bottom:-50px; width:auto; height:min(600px,83%); max-width:none; object-fit:contain; object-position:bottom; filter:drop-shadow(0 12px 26px #050709); }
.game-hub--street .hub-hero__fighter--back { right:-7%; height:79%; opacity:.96; }
.game-hub--street .hub-hero__fighter--front { right:23%; height:88%; }
.game-hub--tekken .hub-hero__fighter--back { right:-5%; height:83%; filter:drop-shadow(0 10px 20px #050709) drop-shadow(0 0 22px rgba(220,37,65,.4)); }
.game-hub--tekken .hub-hero__fighter--front { right:27%; height:91%; filter:drop-shadow(0 10px 20px #050709) drop-shadow(0 0 18px rgba(58,135,255,.3)); }
.hub-hero__metrics { display:flex; flex-wrap:wrap; gap:0; margin-top:42px; }
.hub-hero__metrics > div { display:grid; gap:2px; min-width:150px; padding:0 22px; border-left:3px solid var(--hub-accent); background:rgba(4,8,15,.38); }
.hub-hero__metrics strong { color:#fff; font:900 2.2rem/1 var(--font-display,Impact,sans-serif); }
.hub-hero__metrics span { color:#d7dbe7; font-size:.73rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.hub-tabs { position:relative; z-index:2; border-block:1px solid rgba(255,255,255,.2); background:#0a0e1b; }
.game-hub--tekken .hub-tabs { background:#151b25; }
.hub-tabs .container { display:flex; overflow-x:auto; scrollbar-width:thin; }
.hub-tabs a { flex:1 0 auto; min-width:120px; padding:16px 22px; border-right:1px solid rgba(255,255,255,.16); color:#fff; font:900 .82rem/1 var(--font-display,Impact,sans-serif); letter-spacing:.09em; text-align:center; text-transform:uppercase; }
.hub-tabs a:first-child { border-left:1px solid rgba(255,255,255,.16); }
.hub-tabs a:hover,.hub-tabs a:focus-visible { background:var(--hub-accent); color:#fff; }
.hub-preview-banner { margin:0; padding:8px 20px; background:#f2e6ca; color:#24201b; font-size:.78rem; font-weight:800; text-align:center; }
.hub-section { scroll-margin-top:30px; }
.hub-section__heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.hub-section__heading > div { max-width:680px; }
.hub-section__heading h2,.hub-result h2 { margin:0 0 12px; font-size:clamp(3rem,6vw,6rem); line-height:.88; }
.hub-section__heading h2 span,.hub-result h2 span { color:var(--hub-accent); }
.hub-section__heading p { margin-bottom:0; }
.hub-section__heading .text-link { flex:none; margin-bottom:4px; }
.game-hub--street .hub-section--news { color:#151831; background:#e8e8f4; background-image:radial-gradient(rgba(30,64,174,.11) 1px,transparent 1px); background-size:19px 19px; }
.game-hub--street .hub-section--players { background:linear-gradient(150deg,#151834,#222254); }
.game-hub--street .hub-section--events { color:#151831; background:#f3e5ce; }
.game-hub--street .hub-section--results { background:#10265b; }
.game-hub--tekken .hub-section--news { background:linear-gradient(145deg,#111927,#212834); }
.game-hub--tekken .hub-section--players { background:linear-gradient(145deg,#0b111a,#29131d); }
.game-hub--tekken .hub-section--events { background:#1b2330; }
.game-hub--tekken .hub-section--results { background:linear-gradient(120deg,#2b1420,#111927); }
.game-hub .fgc-news-card { border:1px solid rgba(0,0,0,.18); border-top:6px solid var(--hub-accent); background:#fff; }
.game-hub--tekken .fgc-news-card { border-color:#455365; border-top-color:var(--hub-accent); background:#e9edf1; }
.game-hub .fgc-news-card__body { gap:12px; }
.game-hub .fgc-news-card__origin { color:var(--hub-accent); }
.hub-player-grid,.hub-event-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.hub-passport { position:relative; display:block; min-width:0; min-height:460px; aspect-ratio:4/5; overflow:hidden; isolation:isolate; border:2px solid var(--passport-accent); background:#0d1321; color:#fff; box-shadow:9px 9px 0 rgba(0,0,0,.3); transition:transform .25s ease,box-shadow .25s ease; }
.hub-passport:hover,.hub-passport:focus-visible { transform:translateY(-7px); box-shadow:13px 16px 0 rgba(0,0,0,.34); }
.hub-passport:focus-visible { outline:3px solid #fff; outline-offset:5px; }
.hub-passport__scene { position:absolute; inset:0; overflow:hidden; background:radial-gradient(circle at 75% 28%,var(--passport-accent),transparent 50%),linear-gradient(145deg,#10203b,#080b12); }
.hub-passport__scene::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(4,7,16,.45) 0%,rgba(4,7,16,.06) 30%,rgba(4,7,16,.2) 48%,rgba(4,7,16,.88) 65%,#070a12 100%); }
.hub-passport__background { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.94; filter:saturate(1.12) contrast(1.04); animation:hub-passport-drift 16s ease-in-out infinite alternate; }
.hub-passport__background--left { object-position:left center; clip-path:polygon(0 0,60% 0,40% 100%,0 100%); }
.hub-passport__background--right { object-position:right center; clip-path:polygon(60% 0,100% 0,100% 100%,40% 100%); }
.hub-passport__fighter { position:absolute; right:-5%; top:13%; width:74%; height:54%; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 15px 16px #030611); transition:transform .35s ease; }
.hub-passport:hover .hub-passport__fighter { transform:translateY(-8px) scale(1.035); }
.hub-passport__energy { position:absolute; top:13%; right:4%; width:67%; aspect-ratio:1; border:2px solid var(--passport-accent); border-radius:50%; box-shadow:0 0 24px var(--passport-accent),inset 0 0 22px var(--passport-accent); opacity:.25; animation:hub-passport-pulse 3s ease-in-out infinite alternate; }
.hub-passport__header,.hub-passport__body { position:absolute; z-index:2; left:0; right:0; padding-inline:7%; }
.hub-passport__header { top:0; display:flex; justify-content:space-between; gap:12px; align-items:start; padding-top:20px; }
.hub-passport__header small { color:#fff; font-size:.55rem; font-weight:900; letter-spacing:.08em; line-height:1.4; text-transform:uppercase; }
.hub-passport__header strong { flex:none; padding:5px 8px; background:var(--passport-accent); color:var(--passport-ink); font-size:.68rem; font-weight:900; text-transform:uppercase; }
.hub-passport__body { bottom:0; padding-bottom:17px; }
.hub-passport__tag { display:inline-block; margin-bottom:10px; padding:5px 8px; border-left:3px solid #fff; background:#d82343; color:#fff; font-size:.62rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.hub-passport__pseudo { display:block; overflow:hidden; color:#fff; font:900 clamp(2.3rem,3vw,3.9rem)/.92 var(--font-display,Impact,sans-serif); text-overflow:ellipsis; text-shadow:0 4px 12px #000; text-transform:uppercase; white-space:nowrap; }
.hub-passport__main { display:block; margin-top:8px; padding-bottom:11px; border-bottom:2px solid var(--passport-accent); color:#fff5e4; font-size:.78rem; font-weight:900; overflow:hidden; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.hub-passport dl { display:grid; grid-template-columns:1fr 1fr; gap:9px 13px; margin:14px 0 11px; }
.hub-passport__fact { min-width:0; }
.hub-passport dt { color:#bfc8d7; font-size:.55rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.hub-passport dd { margin:4px 0 0; overflow:hidden; color:#fff; font-size:.7rem; font-weight:750; line-height:1.25; text-overflow:ellipsis; white-space:nowrap; }
.hub-passport__cta { display:block; padding-top:9px; border-top:1px solid rgba(255,255,255,.3); color:var(--passport-accent); font-size:.65rem; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }
.hub-passport[data-theme="candy"] .hub-passport__scene { background:linear-gradient(135deg,#371746,#bd4f8f,#162a57); }
.hub-passport[data-theme="temple"] .hub-passport__scene { background:linear-gradient(135deg,#220d09,#8e331c,#080708); }
.hub-passport[data-theme="alley"] .hub-passport__scene { background:linear-gradient(135deg,#09192b,#3b4b66,#0a0b10); }
.hub-passport[data-theme="oasis"] .hub-passport__scene { background:linear-gradient(135deg,#14516a,#cc894a,#142e26); }
.hub-passport[data-theme="underground"] .hub-passport__scene { background:repeating-linear-gradient(90deg,#171716 0 24%,#301c0c 25% 26%); }
.hub-passport[data-theme="cyber"] .hub-passport__scene { background:linear-gradient(135deg,#071626,#551a6d,#05131d); }
.hub-passport[data-theme="champion"] .hub-passport__scene { background:linear-gradient(135deg,#201702,#795313,#100d04); }
.hub-passport[data-theme="haunted"] .hub-passport__scene { background:linear-gradient(135deg,#0b0715,#314b39,#030305); }
.hub-passport[data-theme="cosmic"] .hub-passport__scene { background:radial-gradient(circle at 70% 25%,#6844bd,#09112b 60%,#03040b); }
@keyframes hub-passport-drift { to { transform:scale(1.08) translate(-2%,2%); } }
@keyframes hub-passport-pulse { to { opacity:.28; transform:scale(1.08); } }
@media(prefers-reduced-motion:reduce) { .hub-passport__background,.hub-passport__energy { animation:none; } .hub-passport,.hub-passport__fighter { transition:none; } }
.hub-tkbe { position:relative; display:grid; grid-template-columns:minmax(230px,.75fr) minmax(0,1.25fr); gap:clamp(22px,4vw,56px); overflow:hidden; margin-bottom:32px; padding:clamp(24px,4vw,46px); border:1px solid #677585; border-top:7px solid #ed2844; background:radial-gradient(circle at 15% 70%,rgba(42,133,199,.19),transparent 35%),linear-gradient(120deg,#121c2a,#0b1018 56%,#21131c); color:#f4f7fa; box-shadow:12px 12px 0 rgba(0,0,0,.3); }
.hub-tkbe::before { content:""; position:absolute; top:-20%; right:22%; width:2px; height:150%; transform:rotate(28deg); background:rgba(237,40,68,.28); pointer-events:none; }
.hub-tkbe__identity,.hub-tkbe__details { position:relative; z-index:1; }
.hub-tkbe__kicker { margin:0 0 20px; color:#ff8192; font-size:.75rem; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.hub-tkbe h3 { margin:0 0 16px; color:#fff; font:900 clamp(4.5rem,9vw,9rem)/.78 var(--font-display,Impact,sans-serif); font-style:italic; letter-spacing:-.06em; }
.hub-tkbe h3 span { color:#ff4a64; text-shadow:4px 4px 0 #186aa3; }
.hub-tkbe__lead { max-width:28ch; margin:0 0 25px; color:#fff; font-size:clamp(1.2rem,2vw,1.6rem); font-weight:850; line-height:1.2; }
.hub-tkbe__contact { display:grid; gap:4px; max-width:330px; margin:0; padding:13px 16px; border-left:4px solid #ed2844; background:rgba(0,0,0,.4); }
.hub-tkbe__contact strong { color:#fff; font-size:1.15rem; }
.hub-tkbe__contact span { color:#dce3eb; font-size:.85rem; line-height:1.4; }
.hub-tkbe__details { align-self:center; }
.hub-tkbe__details > p { max-width:67ch; margin:0 0 14px; color:#e6eaf0; line-height:1.62; }
.hub-tkbe__links { display:flex; flex-wrap:wrap; gap:9px; margin:20px 0; }
.hub-tkbe__links a,.hub-tkbe__video { display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:10px 14px; border:1px solid #778597; color:#fff; font-size:.82rem; font-weight:850; text-decoration:none; }
.hub-tkbe__links .hub-tkbe__discord { border-color:#ff667c; background:#a81934; }
.hub-tkbe__links a:hover,.hub-tkbe__links a:focus-visible,.hub-tkbe__video:hover,.hub-tkbe__video:focus-visible { border-color:#ff667c; background:#a81934; color:#fff; }
.hub-tkbe__video { width:fit-content; max-width:100%; border-color:#ed2844; background:rgba(237,40,68,.15); }
.hub-tkbe__video > span:first-child { display:grid; width:28px; height:28px; flex:none; place-items:center; border-radius:50%; background:#a81934; color:#fff; font-size:.68rem; }
.hub-tkbe__video:disabled { cursor:default; opacity:.78; }
.hub-tkbe__media { margin-top:18px; padding:18px; border:1px solid #44566a; border-left:4px solid #ed2844; background:rgba(1,7,15,.57); }
.hub-tkbe__media-label { margin:0 0 8px!important; color:#ff8192!important; font-size:.73rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.hub-tkbe__media > p:not(.hub-tkbe__media-label) { max-width:58ch; color:#e6eaf0; font-size:.85rem; }
.hub-tkbe__media .hub-tkbe__media-fallback { margin:10px 0 0; }
.hub-tkbe__media-fallback a { color:#fff; font-size:.8rem; font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.hub-tkbe__embed { max-width:550px; }
.hub-community-cta { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:30px; padding:24px; border:1px solid rgba(255,255,255,.3); background:rgba(0,0,0,.25); }
.hub-community-cta h3 { margin:0; color:#fff; font-size:clamp(1.5rem,3vw,2.5rem); }
.hub-community-cta .eyebrow { color:var(--hub-accent); }
.hub-community-cta--street { margin:0 0 30px; border:1px solid #778ac1; border-top:6px solid #ff6a00; background:linear-gradient(115deg,#1b2151,#10245d 65%,#25162e); box-shadow:10px 10px 0 rgba(0,0,0,.24); }
.hub-community-cta--street > div { max-width:700px; }
.hub-community-cta--street .eyebrow { color:#ffb27c; }
.hub-community-cta--street p:last-child { margin:12px 0 0; color:#ecf0ff; line-height:1.55; }
.hub-community-cta--street .button { flex:none; }
.hub-event-card { display:flex; flex-direction:column; min-height:205px; padding:24px; border:1px solid rgba(255,255,255,.2); border-top:6px solid var(--hub-accent); background:rgba(255,255,255,.09); }
.game-hub--street .hub-event-card { border-color:#b3a387; border-top-color:var(--hub-accent); background:#fff9ec; }
.hub-event-card time { color:var(--hub-accent); font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.hub-event-card h3 { margin:12px 0; font-size:1.65rem; line-height:1.05; }
.hub-event-card p { color:inherit; opacity:.78; }
.hub-event-card .text-link { margin-top:auto; }
.hub-empty { position:relative; display:flex; align-items:center; grid-column:1/-1; min-height:200px; overflow:hidden; padding:clamp(25px,4vw,52px); border:1px solid rgba(255,255,255,.25); border-left:7px solid var(--hub-accent); background:rgba(255,255,255,.08); }
.hub-empty::after { content:""; position:absolute; inset:0 0 0 52%; opacity:.28; background:linear-gradient(90deg,transparent,rgba(0,0,0,.18)),url('../img/events/bx-dojo/games/street-fighter-6-card.jpg') center/cover; pointer-events:none; }
.game-hub--tekken .hub-empty::after { background-image:linear-gradient(90deg,transparent,rgba(0,0,0,.18)),url('../img/events/bx-dojo/games/tekken-8-card.jpg'); }
.hub-empty > div { position:relative; z-index:1; max-width:60%; }
.hub-empty__eyebrow { color:var(--hub-accent); font-size:.73rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.hub-empty h3 { margin:8px 0 18px; font-size:clamp(1.8rem,3vw,3rem); line-height:.98; }
.game-hub--street .hub-section--news .hub-empty,.game-hub--street .hub-section--events .hub-empty { border-color:#b9aec2; border-left-color:var(--hub-accent); background:#fff9ef; }
.game-hub--street .hub-section--news .hub-empty h3,.game-hub--street .hub-section--events .hub-empty h3 { color:#151831; }
.hub-result { display:grid; grid-template-columns:1fr minmax(260px,.8fr); align-items:center; gap:clamp(28px,5vw,70px); }
.hub-result > img { width:100%; border:1px solid rgba(255,255,255,.25); box-shadow:18px 18px 0 var(--hub-accent); }
.hub-result p:not(.eyebrow) { max-width:54ch; }
.hub-section--results .button-row { margin-top:25px; }
@media(max-width:900px) { .hub-hero__copy { width:74%; } .hub-hero__fighters { left:44%; opacity:.68; } .hub-player-grid,.hub-event-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .hub-tkbe { grid-template-columns:1fr; } .hub-tkbe__lead { max-width:42ch; } }
@media(max-width:600px) { .hub-hero,.hub-hero__inner { min-height:720px; } .hub-hero__inner { align-items:flex-start; padding-block:55px 315px; } .hub-hero__copy { width:100%; } .hub-hero h1 { font-size:clamp(4.1rem,17vw,6rem); } .hub-hero__lede { max-width:95%; } .hub-hero__fighters { inset:auto -5% 0 5%; height:330px; opacity:.8; } .hub-hero__fighter { bottom:-25px; height:100%; } .game-hub--street .hub-hero__fighter--back,.game-hub--tekken .hub-hero__fighter--back { right:-5%; height:95%; } .game-hub--street .hub-hero__fighter--front,.game-hub--tekken .hub-hero__fighter--front { right:31%; height:105%; } .hub-hero__metrics { margin-top:26px; } .hub-hero__metrics > div { min-width:125px; padding-inline:12px; } .hub-section__heading { display:block; } .hub-section__heading .text-link { display:inline-block; margin-top:18px; } .hub-player-grid,.hub-event-grid { grid-template-columns:1fr; } .hub-empty > div { max-width:100%; } .hub-empty::after { left:25%; opacity:.13; } .hub-community-cta { align-items:flex-start; flex-direction:column; } .hub-result { grid-template-columns:1fr; } .hub-result > img { box-shadow:10px 10px 0 var(--hub-accent); } }
