*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--void);color:var(--ink);font-family:var(--font-data);-webkit-font-smoothing:antialiased}
a{color:var(--trace);text-decoration:none}
a:hover{color:#a5e2fd}
img{max-width:100%}
h1,h2,h3{text-wrap:balance}
.site-eyebrow{font-family:var(--font-data);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--phosphor)}
.site-hdr{position:sticky;top:0;z-index:20;height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--line);background:rgba(6,10,18,.92);backdrop-filter:blur(6px)}
.site-hdr-mark{display:flex;margin-left:-6px}
.site-nav{display:flex;align-items:center;gap:26px;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase}
.site-nav a{color:var(--dim)}
.site-nav a:hover{color:var(--phosphor)}
.hero{position:relative;min-height:min(calc(100vh - 84px),880px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 32px 0;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:#06080d}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:68% 50%}
.hero-veil{position:absolute;inset:0;background:linear-gradient(90deg,#06080d 0%,rgba(6,8,13,.92) 26%,rgba(6,8,13,.55) 46%,rgba(6,8,13,.12) 66%,rgba(6,8,13,.05) 100%),linear-gradient(180deg,rgba(6,8,13,.5) 0%,rgba(6,8,13,0) 30%,rgba(6,8,13,.85) 100%)}
.hero-inner{position:relative;z-index:1;width:100%;max-width:1440px;display:grid;grid-template-columns:minmax(0,.52fr) minmax(0,.48fr);gap:48px;align-items:center}
.hero-copy{max-width:620px}
.hero h1{font-family:var(--font-display);font-weight:800;font-size:clamp(36px,4.4vw,64px);line-height:.98;letter-spacing:-.025em;color:#fff;margin:18px 0 20px}
.hero h1 em{font-style:italic;color:var(--phosphor)}
.hero-sub{font-family:var(--font-ui);font-weight:500;font-size:18px;line-height:1.6;color:var(--ink);max-width:54ch;margin:0;text-wrap:pretty}
.hero-btns{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.strip{position:relative;z-index:1;width:100%;max-width:1440px;margin:48px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:3px}
.tile{position:relative;border:1px solid var(--line);background:var(--panel);overflow:hidden;transition:border-color .12s cubic-bezier(.4,0,.2,1),transform .12s cubic-bezier(.4,0,.2,1);display:block}
.tile img{display:block;width:100%;height:186px;object-fit:cover;object-position:top left}
.tile:hover{border-color:var(--trace);transform:translateY(-3px)}
.tile figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 12px 10px;background:linear-gradient(180deg,transparent,rgba(6,8,13,.94));font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#fff;text-align:left}
.tile figcaption span{display:block;color:var(--dim);font-weight:400;letter-spacing:.16em;margin-top:3px}
.games-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:38px}
.game-card{border:1px solid #23324a;border-radius:10px;overflow:hidden;background:linear-gradient(160deg,#131c2c,#0d1420);transition:border-color .15s cubic-bezier(.4,0,.2,1),transform .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}
.game-card:hover{border-color:#3d7cff;transform:translateY(-3px);box-shadow:0 10px 40px -12px rgba(61,124,255,.4)}
.game-card-shot{position:relative;border-bottom:1px solid #23324a;background:var(--void)}
.game-card-shot img{display:block;width:100%;height:232px;object-fit:cover;object-position:top left}
.game-card-shot .lbl{position:absolute;left:12px;bottom:10px;font-size:10px;font-weight:800;letter-spacing:.26em;text-transform:uppercase;color:var(--phosphor);text-shadow:0 1px 8px #000}
.game-meta{display:flex;gap:0;border-top:1px solid #23324a}
.game-meta div{flex:1;padding:12px 16px;border-right:1px solid #23324a}
.game-meta div:last-child{border-right:0}
.game-meta b{display:block;font-size:12px;font-weight:700;color:#dfe7f2;font-variant-numeric:tabular-nums;margin-bottom:4px}
.game-meta span{font-size:9px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:#5f79a6}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:40px;background:var(--line)}
.step{background:var(--void);padding:22px 20px 26px;border-top:2px solid var(--phosphor-800)}
.step:first-child{border-top-color:var(--phosphor)}
.step .n{font-size:11px;font-weight:800;letter-spacing:.24em;color:var(--phosphor)}
.step h3{font-family:var(--font-ui);font-size:19px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;margin:12px 0 8px}
.step p{font-size:13px;line-height:1.6;color:var(--dim);margin:0;text-wrap:pretty}
.watched{padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:38px;background:var(--line)}
.watched li{list-style:none;background:var(--void);padding:18px 20px;display:flex;gap:14px;align-items:flex-start;font-family:var(--font-ui);font-weight:500;font-size:16px;line-height:1.45;color:var(--ink)}
.watched li::before{content:"";flex:0 0 7px;width:7px;height:7px;margin-top:7px;background:var(--phosphor);box-shadow:0 0 8px var(--phosphor)}
.gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-top:40px}
.gallery > *{grid-column:span 2}
.gallery > *:nth-child(1){grid-column:span 4}
.gallery > *:nth-child(2){grid-column:span 2}
.gallery > *:nth-child(3){grid-column:span 2}
.gallery > *:nth-child(4){grid-column:span 4}
.roles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px}
.reqs{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--line);margin-top:38px}
.req{background:var(--void);padding:18px 16px}
.req span{display:block;font-size:9px;font-weight:800;letter-spacing:.26em;color:var(--dim);margin-bottom:8px}
.req b{font-family:var(--font-ui);font-size:15px;font-weight:600;color:#fff;letter-spacing:.02em}
.faq{margin-top:38px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;position:relative;font-family:var(--font-ui);font-size:18px;font-weight:600;letter-spacing:.02em;color:#fff}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:18px;font-family:var(--font-data);font-size:18px;color:var(--phosphor)}
.faq details[open] summary::after{content:"–"}
.faq summary:hover{color:var(--phosphor)}
.faq p{margin:0 0 22px;padding-right:60px;font-size:14px;line-height:1.7;color:var(--dim);max-width:80ch;text-wrap:pretty}
.about{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:start}
.disclaimer{border:1px solid var(--line);border-left:2px solid var(--flare);padding:18px 20px;font-size:12px;line-height:1.7;color:var(--dim);text-wrap:pretty}
.disclaimer b{display:block;font-size:9px;font-weight:800;letter-spacing:.26em;text-transform:uppercase;color:var(--flare);margin-bottom:10px}
.moreBtn{margin-top:20px}
@media (max-width:1080px){.hero{min-height:0;padding-top:0;justify-content:flex-start}.hero-bg{position:static;order:-2;width:100%;height:clamp(220px,42vw,360px);object-position:62% 34%;-webkit-mask-image:linear-gradient(#000 68%,transparent 100%);mask-image:linear-gradient(#000 68%,transparent 100%)}.hero-veil{display:none}.hero-inner{grid-template-columns:1fr;gap:24px;padding:8px 0 0}.hero-veil{background:linear-gradient(180deg,rgba(6,8,13,.45) 0%,rgba(6,8,13,.72) 45%,rgba(6,8,13,.95) 100%)}.hero-mark-logo{width:min(420px,80%)}.strip{grid-template-columns:1fr 1fr}.games-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.gallery > *,.gallery > *:nth-child(1),.gallery > *:nth-child(4){grid-column:span 2}.roles{grid-template-columns:1fr 1fr}.reqs{grid-template-columns:repeat(3,1fr)}.about{grid-template-columns:1fr;gap:32px}.watched{grid-template-columns:1fr}}
@media (max-width:680px){.site-nav a{display:none}.strip{grid-template-columns:1fr}.steps,.roles,.gallery{grid-template-columns:1fr}.gallery > *,.gallery > *:nth-child(1),.gallery > *:nth-child(4){grid-column:span 1}.reqs{grid-template-columns:1fr 1fr}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
