:root{color-scheme:dark;font-family:Arial,Helvetica,sans-serif;background:#050406;color:#fff;font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:320px}
main{position:relative;z-index:1}
.fixed-showcase-bg{position:fixed;z-index:0;inset:0;background:#050505 url('assets/showcase-background.webp') center center/cover no-repeat;pointer-events:none}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{font:inherit}
button:focus-visible,a:focus-visible{outline:2px solid #ff4b51;outline-offset:5px}
.site-header{height:88px;padding:0 clamp(24px,4.3vw,78px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;position:absolute;z-index:10;top:0;left:0;right:0;background:linear-gradient(180deg,rgba(0,0,0,.78),rgba(0,0,0,.32) 72%,transparent)}
.header-brand{width:clamp(152px,12.3vw,194px);display:block;line-height:0}
.header-brand img{display:block;width:100%;height:auto}
.main-nav{display:flex;align-items:center;gap:clamp(25px,2.7vw,47px)}
.main-nav a{font-size:12px;font-weight:700;letter-spacing:.19em;white-space:nowrap;position:relative;padding:13px 0;text-shadow:0 1px 8px #000}
.main-nav a::after{content:"";position:absolute;left:0;right:2px;bottom:5px;height:1px;background:#e7373e;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}
.header-actions{justify-self:end;display:flex;align-items:center;gap:clamp(15px,1.7vw,27px)}
.icon-button{width:36px;height:38px;display:grid;place-items:center;padding:4px;border:0;background:transparent;color:#fff;cursor:pointer}
.language-toggle svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.55;transition:color .2s}
.language-toggle:hover svg,.language-toggle[aria-expanded=true] svg{color:#ff3d43}
.header-mark{width:43px;display:block;line-height:0}
.header-mark img{width:100%;height:auto;display:block;filter:drop-shadow(0 0 8px rgba(226,18,27,.3))}
.menu-toggle{gap:5px;align-content:center}
.menu-toggle span{width:25px;height:1.5px;background:#fff;display:block;transition:transform .25s,opacity .25s,background .25s}
.menu-toggle:hover span{background:#ff4b51}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(6.5px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-6.5px) rotate(-45deg)}
.language-wrap,.menu-wrap{position:relative}
.popover{position:absolute;top:calc(100% + 12px);right:0;min-width:210px;padding:11px;background:rgba(8,7,9,.96);border:1px solid rgba(245,59,64,.45);box-shadow:0 20px 60px rgba(0,0,0,.65);backdrop-filter:blur(18px)}
.popover[hidden]{display:none}
.language-menu{right:-60px}
.language-option,.site-menu a{width:100%;min-height:41px;display:flex;align-items:center;gap:13px;padding:8px 13px;border:0;background:none;text-align:left;color:#e9e5e5;font-size:12px;font-weight:700;letter-spacing:.13em;cursor:pointer}
.language-option img{object-fit:cover;border:1px solid rgba(255,255,255,.25)}
.language-option:hover,.language-option.selected,.site-menu a:hover{background:rgba(211,37,45,.16);color:#fff}
.language-option.selected{box-shadow:inset 2px 0 #f43c43}
.site-menu{min-width:204px}
.site-menu a+a{border-top:1px solid rgba(255,255,255,.08)}
.hero{position:relative;isolation:isolate;min-height:100svh;min-height:100dvh;display:flex;align-items:flex-start;overflow:hidden;background:#070306 url('assets/hero-main.webp') center center/cover no-repeat}
.hero-content{width:min(49vw,710px);margin-left:clamp(28px,6.2vw,112px);padding-top:clamp(180px,25vh,290px);text-shadow:0 2px 18px rgba(0,0,0,.64);animation:arrive .8s ease-out both}
.hero h1{margin:0 0 clamp(27px,3.6vh,43px);line-height:0}
.hero h1 img{width:100%;max-width:680px;height:auto;display:block;filter:drop-shadow(0 4px 18px rgba(0,0,0,.6))}
.hero-subtitle{margin:0 0 21px;color:#fff;font-size:clamp(16px,1.45vw,22px);line-height:1.36;font-weight:700;letter-spacing:.16em;max-width:690px}
.hero-description{margin:0;max-width:550px;font-size:clamp(15px,1.18vw,18px);line-height:1.65;font-weight:400;letter-spacing:.015em;color:#f7f4f4}
.scroll-cue{position:absolute;left:50%;bottom:clamp(24px,4.3vh,48px);transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;gap:13px;font-size:11px;letter-spacing:.32em;font-weight:700;text-shadow:0 1px 10px #000}
.scroll-cue svg{width:23px;height:15px;stroke:#ff4249;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px rgba(252,38,45,.7))}
.showcase{min-height:100svh;padding:clamp(72px,9vh,110px) clamp(24px,4vw,72px);display:flex;align-items:center;justify-content:center;background:transparent}
.showcase-grid{width:min(100%,1360px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(15px,1.7vw,28px)}
.showcase-card{scroll-margin-top:26px;min-height:clamp(480px,62vh,610px);padding:clamp(25px,2.5vw,38px);display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid rgba(255,255,255,.45);background:linear-gradient(180deg,rgba(11,11,13,.20),rgba(4,4,6,.44));box-shadow:0 18px 44px rgba(0,0,0,.3),inset 0 0 28px rgba(255,255,255,.025);transition:border-color .25s,transform .25s,background .25s}
.showcase-card:hover{border-color:rgba(255,255,255,.78);transform:translateY(-5px);background:linear-gradient(180deg,rgba(15,12,14,.30),rgba(4,4,6,.54))}
.card-logo{min-height:0;width:100%;flex:1;display:flex;align-items:center;justify-content:center;padding:10px 0 30px}
.card-logo img{display:block;max-width:100%;max-height:310px;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 7px 20px rgba(0,0,0,.75))}
.card-logo .studios-logo{width:87%}
.card-logo .tech-logo{width:86%}
.card-logo .merch-logo{width:100%;transform:scale(1.1)}
.showcase-card h2{margin:0 0 25px;font-size:clamp(19px,2vw,28px);font-weight:700;letter-spacing:.24em;line-height:1.2;text-shadow:0 2px 18px #000}
.about-button{min-width:185px;min-height:52px;padding:0 21px;display:inline-flex;justify-content:center;align-items:center;gap:20px;background:#030303;border:1px solid #f4f4f4;color:#fff;font-size:12px;font-weight:700;letter-spacing:.19em;transition:background .2s,border-color .2s,transform .2s}
.about-button:hover{background:#151112;border-color:#ff4b51;transform:translateY(-2px)}
.about-button svg{width:22px;height:22px;stroke:#f13a40;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none;transition:transform .2s}
.about-button:hover svg{transform:translateX(4px)}
@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1080px){.site-header{grid-template-columns:1fr auto}.main-nav{display:none}.hero-content{width:min(60vw,630px)}.hero{background-position:54% center}}
@media(max-width:840px){.showcase{padding:64px 24px}.showcase-grid{grid-template-columns:1fr;max-width:520px;gap:22px}.showcase-card{min-height:490px}.card-logo img{max-height:310px}}
@media(max-width:700px){.site-header{height:70px;padding:0 20px}.header-brand{width:133px}.header-actions{gap:11px}.header-mark{width:33px}.icon-button{width:31px}.language-menu{right:-82px}.hero{min-height:max(100dvh,calc(56.25vw + 480px));background-size:100% auto;background-position:center 76px;background-color:#050506}.hero-content{width:calc(100% - 48px);margin-left:24px;padding-top:clamp(320px,calc(56.25vw + 125px),540px)}.hero h1{width:min(90%,520px);margin-bottom:26px}.hero-subtitle{max-width:510px;font-size:clamp(16px,4vw,21px);letter-spacing:.11em}.hero-description{max-width:460px;font-size:15px;line-height:1.55}.scroll-cue{bottom:24px}}
@media(max-width:390px){.header-brand{width:119px}.header-actions{gap:6px}.header-mark{width:29px}.hero-subtitle{font-size:15px}.hero-description{font-size:14px}}
@media(max-height:650px) and (min-width:701px){.hero-content{padding-top:clamp(110px,21vh,180px)}.hero h1{margin-bottom:20px}.hero-subtitle{margin-bottom:12px}.scroll-cue{bottom:15px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
