:root{--bg-deep: #0c0a09;--bg-mid: #1c1410;--ink: #f5efe6;--muted: #a89888;--accent: #ff4d1a;--accent-hot: #ffb020;--line: rgba(245, 239, 230, .14);--font-display: "Bebas Neue", "Arial Narrow", Impact, sans-serif;--font-body: "IBM Plex Sans JP", "Hiragino Sans", sans-serif;color:var(--ink);background:var(--bg-deep);font-family:var(--font-body);line-height:1.5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}body{min-height:100vh;background:radial-gradient(1200px 700px at 70% -10%,rgba(255,77,26,.22),transparent 55%),radial-gradient(900px 500px at 10% 110%,rgba(255,176,32,.12),transparent 50%),linear-gradient(160deg,#120e0c 0%,#0c0a09 45%,#16100c 100%)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.top{min-height:100vh;display:grid;grid-template-rows:auto 1fr}.top-nav{display:flex;justify-content:space-between;align-items:center;padding:1.1rem clamp(1.2rem,4vw,2.5rem);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.top-nav span{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.hero{position:relative;min-height:calc(100vh - 3.5rem);display:grid;place-items:center;overflow:hidden;isolation:isolate}.hero-burst{position:absolute;inset:-20% -10% auto;height:70%;background:radial-gradient(closest-side,rgba(255,77,26,.35),transparent 70%),conic-gradient(from 210deg,transparent 0 20%,rgba(255,176,32,.18),transparent 45%);filter:blur(8px);animation:pulse-burst 4.5s ease-in-out infinite;z-index:-1}.hero-inner{width:min(920px,calc(100% - 2.4rem));text-align:center;padding:2rem 0 4rem}.brand{margin:0;font-family:var(--font-display);font-size:clamp(4.8rem,18vw,9.5rem);letter-spacing:.04em;line-height:.9;text-shadow:0 0 40px rgba(255,77,26,.35);animation:brand-in .9s cubic-bezier(.16,1,.3,1) both}.tagline{margin:1rem auto 0;max-width:28rem;font-size:clamp(1rem,2.4vw,1.2rem);color:var(--muted);animation:fade-up .8s .15s cubic-bezier(.16,1,.3,1) both}.cta-row{margin-top:2rem;display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;animation:fade-up .8s .28s cubic-bezier(.16,1,.3,1) both}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:999px;padding:.85rem 1.4rem;font:inherit;font-weight:600;cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(1px) scale(.98)}.btn-primary{background:var(--accent);color:#140800}.btn-primary:hover{background:#ff6436}.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn-ghost:hover{border-color:#f5efe659}.games-section{padding:4.5rem clamp(1.2rem,4vw,2.5rem) 5rem;border-top:1px solid var(--line);background:linear-gradient(180deg,rgba(0,0,0,.15),transparent 30%)}.game-section h2{margin:0 0 .5rem;font-family:var(--font-display);font-size:clamp(2.4rem,7vw,3.6rem);letter-spacing:.06em}.game-section>p{margin:0 0 2rem;color:var(--muted);max-width:36rem}.game-list{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 760px){.game-list{grid-template-columns:repeat(3,1fr)}}.game-link{display:block;padding:1.4rem 1.2rem 1.5rem;border-top:1px solid var(--line);border-bottom:1px solid transparent;transition:background .2s ease,border-color .2s ease,transform .2s ease}.game-link:hover{background:rgba(255,77,26,.08);border-color:#ff4d1a59;transform:translateY(-2px)}.game-link .num{display:block;font-family:var(--font-display);letter-spacing:.12em;color:var(--accent-hot);margin-bottom:.6rem}.game-link h3{margin:0;font-size:1.35rem}.game-link p{margin:.55rem 0 0;color:var(--muted);font-size:.95rem}@keyframes brand-in{0%{opacity:0;transform:scale(1.08) translateY(18px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes pulse-burst{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}
