@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');

:root{--bg:#151515;--panel:#1d1d1d;--line:#343434;--text:#f4efe6;--muted:#aaa49b;--orange:#ffad32;--red:#ed315d;--green:#45d889;--mouse-x:50%;--mouse-y:20%}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:320px;background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),#282019 0,transparent 28rem),var(--bg);color:var(--text);font-family:'DM Sans','Noto Sans KR',sans-serif}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.9%,rgba(255,255,255,.025) 50%,transparent 50.1%);background-size:120px 100%;opacity:.4}
.noise{position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
a{color:inherit;text-decoration:none}
.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,6vw,96px);border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.18em}
.brand{display:flex;align-items:center;gap:12px;font-weight:700}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--orange);border-radius:50%;color:var(--orange)}
.site-header p{margin:0;color:var(--muted)}.status-dot{display:inline-block;width:6px;height:6px;margin-right:9px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green)}
main,footer{width:min(1240px,calc(100% - 44px));margin:auto}
.hero{min-height:610px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:center;gap:60px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.eyebrow{margin:0 0 22px;color:var(--orange);font-size:12px;font-weight:700;letter-spacing:.24em}
h1,h2,h3,p{margin-top:0}h1{max-width:830px;margin-bottom:30px;font-size:clamp(52px,7.5vw,104px);line-height:.98;letter-spacing:-.065em;word-break:keep-all}h1 em{color:var(--orange);font-style:normal}.hero-word{white-space:nowrap}
.intro{max-width:620px;color:var(--muted);font-size:clamp(16px,1.5vw,20px);line-height:1.8;word-break:keep-all}
.hero-orbit{justify-self:center;position:relative;width:300px;height:300px;display:grid;place-content:center;text-align:center}
.hero-orbit strong{font-size:76px;line-height:1;color:var(--orange)}.hero-orbit small{margin-top:10px;color:var(--muted);font-size:10px;letter-spacing:.25em;line-height:1.5}
.orbit{position:absolute;border:1px solid}.orbit-a{inset:15px;border-color:var(--red);border-radius:45% 55% 48% 52%}.orbit-b{inset:55px -8px 40px 48px;border-color:var(--orange);border-radius:58% 42% 53% 47%;transform:rotate(38deg)}.orbit-dot{position:absolute;width:12px;height:12px;right:20px;top:55px;border-radius:50%;background:var(--red);box-shadow:-235px 178px 0 -3px var(--orange)}
.collection{padding:110px 0 120px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-heading h2{margin:0;font-size:clamp(34px,5vw,62px);letter-spacing:-.04em}.section-heading>p{margin:0 0 8px;color:var(--muted);font-size:14px}
.game-grid{display:grid;gap:28px}.game-card{--accent:var(--orange);min-height:340px;display:grid;grid-template-columns:minmax(320px,1.12fr) minmax(300px,.88fr);background:rgba(31,31,31,.92);border:1px solid var(--line);border-radius:24px;overflow:hidden;position:relative;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.card-red{--accent:var(--red)}.card-green{--accent:var(--green)}.card-mint{--accent:#83d5bf}
.game-card:hover,.game-card:focus-visible{transform:translateY(-7px);border-color:color-mix(in srgb,var(--accent) 68%,#555);box-shadow:0 26px 70px rgba(0,0,0,.35),0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent)}.game-card:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.game-visual{margin:0;position:relative;min-height:320px;overflow:hidden}.game-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 50%,rgba(21,21,21,.68))}.game-visual img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .5s}.game-card:hover img{transform:scale(1.045);filter:saturate(1.12)}
.game-number{position:absolute;z-index:2;left:24px;top:22px;display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(12,12,12,.52);backdrop-filter:blur(10px);font-size:12px;letter-spacing:.1em}
.game-info{padding:clamp(34px,5vw,68px);display:flex;flex-direction:column;justify-content:center;position:relative}.game-info::before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:1px;background:linear-gradient(transparent,var(--accent),transparent)}
.game-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}.game-meta span{padding:7px 10px;border:1px solid color-mix(in srgb,var(--accent) 50%,#333);border-radius:999px;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.15em}
.game-info h3{margin-bottom:15px;font-size:clamp(34px,4vw,58px);letter-spacing:-.04em}.game-info>p{max-width:440px;margin-bottom:34px;color:#c3beb5;font-size:17px;line-height:1.7;word-break:keep-all}
.play-link{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:22px;border-top:1px solid var(--line);font-size:12px;font-weight:700;letter-spacing:.18em}.play-link i{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--accent);color:#111;font-size:20px;font-style:normal;transition:transform .3s}.game-card:hover .play-link i{transform:rotate(45deg)}
footer{min-height:140px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);color:#777;font-size:10px;letter-spacing:.16em}footer p{margin:0}
@media(min-width:1100px){.game-grid.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-grid .game-card{grid-template-columns:1fr}.compact-grid .game-visual{min-height:260px}.compact-grid .game-visual::after{background:linear-gradient(0deg,rgba(21,21,21,.75),transparent 55%)}.compact-grid .game-info::before{display:none}}
@media(max-width:820px){.site-header p{display:none}.hero{min-height:auto;grid-template-columns:1fr;padding:100px 0 80px}.hero-orbit{position:absolute;right:-105px;top:40px;opacity:.35}.section-heading{align-items:start;flex-direction:column}.game-card{grid-template-columns:1fr}.game-visual{min-height:240px;max-height:320px}.game-visual::after{background:linear-gradient(0deg,rgba(21,21,21,.7),transparent 65%)}.game-info::before{display:none}.game-info{padding:30px}.collection{padding:80px 0}.section-heading>p{display:none}}
@media(max-width:520px){main,footer{width:min(100% - 28px,1240px)}.site-header{height:66px;padding:0 16px}.hero{padding-top:78px}.hero-orbit{display:none}h1{font-size:48px}.game-card{border-radius:18px}.game-visual{min-height:205px}.game-info h3{font-size:36px}.game-info>p{font-size:15px}footer{align-items:flex-start;flex-direction:column;justify-content:center}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.game-card:hover{transform:none}}
