:root{color-scheme:dark;--bg:#080808;--text:#f3f1eb;--muted:#999995;--line:#333330;--pad:clamp(22px,5vw,88px)}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,'Noto Sans KR','Apple SD Gothic Neo','Malgun Gothic',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,.track:focus-visible{outline:2px solid #e5dbb9;outline-offset:6px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}header{position:fixed;z-index:10;left:0;right:0;top:0;display:flex;align-items:center;height:78px;padding:0 var(--pad);background:#080808ed;border-bottom:1px solid #ffffff12;gap:42px}.wordmark{font-size:17px;font-weight:900;letter-spacing:-.7px;line-height:.94}.wordmark span{display:block;font-size:12px;letter-spacing:5.5px;margin-top:5px}nav{margin-left:auto;display:flex;gap:32px;font-size:12px;letter-spacing:1px}nav a:hover,.contact a:hover{color:#bbb59d}.languages{display:flex;align-items:center;gap:9px;font-size:12px;color:#666}.languages button{border:0;background:transparent;padding:10px 0;color:#777}.languages button[aria-pressed=true]{color:white}.hero{height: min(850px,100svh);min-height:640px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;padding:110px var(--pad) 120px;background:#000}.hero h1{width:min(680px,66vw)}.hero h1 img{width:100%}.hero p{font-size:clamp(16px,1.45vw,22px);margin-top:35px;color:#c8c8c3;letter-spacing:-.5px;text-align:center;line-height:1.6}.scroll{position:absolute;bottom:36px;font-size:10px;letter-spacing:2px;color:#999;display:flex;align-items:center;gap:28px}.scroll span{font-size:22px;color:#eee}.section-line{display:flex;justify-content:space-between;gap:20px;padding:30px 0;font-size:12px;letter-spacing:1.5px;color:#9e9e96}.arclore>.section-line,.shift>.section-line{margin:0 var(--pad)}.arc-art{width:100%;background:#11141f}.arc-art>img{width:100%;max-height:900px;object-fit:cover}.game-info{padding:64px var(--pad) 90px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.arc-logo{width:300px}.genre{font-size:14px;color:#aaa;margin-top:20px}.game-copy{max-width:580px;justify-self:end}.game-copy p{font-size:17px;line-height:1.95;word-break:keep-all;color:#b8b8b2}.steam{margin-top:30px;display:inline-flex;align-items:center;gap:65px;border:1px solid #8b8b80;padding:18px 24px;font-size:13px;transition:background .2s,color .2s}.steam:hover{background:var(--text);color:#111}.steam>span:last-child{font-size:20px}.gallery{overflow:hidden;padding-bottom:85px}.gallery-heading{margin:0 var(--pad) 24px;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:1.4px}.gallery-controls{display:flex;gap:10px;align-items:center}.counter{margin-right:20px;color:#9b9b96;font-variant-numeric:tabular-nums}.gallery-controls button{background:transparent;border:1px solid #42423c;width:44px;height:40px;font-size:20px}.gallery-controls button:hover{background:#222}.gallery-controls button:disabled{opacity:.3;cursor:default}.track{display:flex;gap:24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 var(--pad);cursor:grab;touch-action:pan-x pan-y}.track::-webkit-scrollbar{display:none}.track.dragging{scroll-snap-type:none;cursor:grabbing}.track figure{flex:0 0 83%;scroll-snap-align:start;scroll-margin-left:var(--pad);min-width:0;background:#11130f;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center}.track figure>img{width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}.track:after{content:'';flex:0 0 1px}.track .select-slide>img{width:min(100%,640px);height:auto;image-rendering:pixelated}.coop-slide{text-align:center}.coop-slide p{font-size:12px;letter-spacing:3px;color:#aaa}.coop-slide h3{font-size:clamp(25px,4vw,56px);letter-spacing:-2px;margin:22px 0 38px}.coop-images{display:flex;gap:20px;justify-content:center;margin-bottom:30px}.coop-images img{width:116px;height:65px}.coop-slide span{font-size:14px;color:#aaa}.dots{display:flex;gap:9px;justify-content:center;margin-top:26px}.dots button{padding:0;border:0;width:5px;height:5px;border-radius:50%;background:#4b4b45}.dots button[aria-current=true]{background:#e7e6dd}.shift{background:#161714;padding:10px 0 20px}.shift-intro{margin:18px var(--pad) 70px;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.shift-cover{width:100%;max-width:540px}.shift-description{max-width:540px}.eyebrow{font-size:11px;letter-spacing:2px;color:#999c92}.shift h2{font-size:clamp(40px,5.1vw,78px);line-height:.94;letter-spacing:-3px;font-weight:800;margin:30px 0 24px}.shift-description p{font-size:16px;color:#b7b9ad}.characters{width:270px;margin-top:36px}.shift-gallery .track figure{flex-basis:min(536px,82%);aspect-ratio:536/240;background:#070807}.about{padding:58px var(--pad) 110px;background:#eae9e2;color:#20211e}.about .section-line{border-bottom:1px solid #bdbdb4;color:#68695f}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding-top:65px}.about h2{font-size:clamp(36px,4.7vw,70px);font-weight:600;letter-spacing:-3px;line-height:1.3;word-break:keep-all}.about p{font-size:18px;line-height:1.95;color:#595b53;word-break:keep-all}.about p+p{margin-top:22px}.contact{padding:78px var(--pad) 32px}.email{display:flex;align-items:center;justify-content:space-between;font-size:clamp(25px,5.4vw,82px);letter-spacing:-2.5px;padding:36px 0 70px;border-bottom:1px solid #333}.email>span{font-size:.7em}.contact-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:32px;color:#999;font-size:12px}.contact-bottom>div{display:flex;gap:28px}.back-top{font-size:10px;letter-spacing:1px}.skip{position:fixed;top:-70px;left:10px;z-index:30;background:white;color:black;padding:10px}.skip:focus{top:10px}@media(min-width:1700px){.track figure{flex-basis:1300px}}@media(max-width:760px){header{height:66px;gap:18px}.wordmark{font-size:13px}.wordmark span{font-size:9px;letter-spacing:4px}nav{gap:15px;font-size:10px;letter-spacing:0}.languages{gap:6px;font-size:11px}.hero{height:88svh;min-height:510px}.hero h1{width:90vw}.hero p{max-width:290px;margin-top:25px}.scroll{bottom:28px}.section-line{font-size:10px;letter-spacing:.7px;padding:24px 0}.arc-art>img{aspect-ratio:16/11;object-fit:cover}.game-info{grid-template-columns:1fr;gap:28px;padding:34px var(--pad) 52px}.arc-logo{width:210px}.genre{font-size:13px;margin-top:15px}.game-copy{justify-self:start}.game-copy p{font-size:15px;line-height:1.9}.steam{margin-top:24px;padding:14px 20px;gap:44px}.gallery{padding-bottom:44px}.gallery-heading{font-size:10px;letter-spacing:.5px;margin-bottom:18px}.gallery-controls{gap:6px}.counter{margin-right:8px;font-size:10px}.gallery-controls button{width:34px;height:34px}.track{gap:12px}.track figure{flex-basis:93%}.coop-slide h3{font-size:23px;letter-spacing:-1px;margin:10px 0 15px}.coop-slide p{font-size:10px}.coop-images{margin-bottom:12px;gap:12px}.coop-slide span{font-size:11px}.dots button{width:6px;height:6px;position:relative}.dots button:before{content:'';position:absolute;inset:-8px}.shift-intro{grid-template-columns:1fr;gap:30px;margin-top:5px;margin-bottom:40px}.shift-cover{max-width:100%}.shift-description{position:relative;min-height:180px;padding-right:32%}.shift h2{font-size:38px;letter-spacing:-1.5px;margin:18px 0}.shift-description .eyebrow{font-size:8px;letter-spacing:.5px}.shift-description p{font-size:13px;line-height:1.7}.characters{position:absolute;right:0;bottom:0;width:32%;margin:0}.shift-gallery .track figure{flex-basis:93%}.about{padding:26px var(--pad) 55px}.about-content{grid-template-columns:1fr;gap:30px;padding-top:32px}.about h2{font-size:38px;letter-spacing:-2px}.about p{font-size:16px;line-height:1.9}.contact{padding-top:48px}.email{font-size:clamp(22px,5.5vw,42px);letter-spacing:-1px;padding:30px 0 42px}.contact-bottom{font-size:10px;flex-wrap:wrap;gap:25px}.back-top{display:none}}@media(max-width:360px){header{gap:12px}nav{gap:9px}.wordmark{font-size:11px}.coop-images{gap:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.arc-gallery .track:after{flex:0 0 calc(17% - 24px)}.shift-gallery .track:after{flex:0 0 max(0px,calc(100% - 536px - 24px))}@media(max-width:760px){.arc-gallery .track:after,.shift-gallery .track:after{flex-basis:calc(7% - 12px)}}
/* Revision 2: quieter transitions and a unified studio signature */
.brand-symbol{display:inline-block;position:relative;width:48px;height:32px;flex:0 0 48px;overflow:hidden;mix-blend-mode:screen}.brand-symbol img{position:absolute;width:144px;max-width:none;height:auto;left:-47.4px;top:-5.6px}.wordmark{display:flex;align-items:center;gap:12px;letter-spacing:0}.wordmark .brand-name{font-size:17px;letter-spacing:-.5px;line-height:1.3;margin:0;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.game-info{display:flex;flex-direction:column;gap:20px;align-items:center;text-align:center;padding:30px var(--pad) 65px}.genre{margin:0;color:#d4d4cc;font-size:16px}.game-copy{max-width:750px}.game-copy p{font-size:17px}.steam{margin-top:24px}.gallery-heading{justify-content:flex-end}.shift{padding-top:72px}.shift-intro{margin-top:0}.shift h2{margin-top:0}.about-content{padding-top:15px}.about h2{font-size:clamp(30px,3.4vw,51px);letter-spacing:-2px;line-height:1.45}.coop-images img{width:clamp(116px,24vw,348px);height:auto;image-rendering:pixelated}.coop-images{gap:22px}.coop-slide h3{margin:18px 0 28px}.contact-title{font-size:clamp(48px,7vw,100px);letter-spacing:-3px;font-weight:600;line-height:1}.contact-links{display:flex;align-items:center;gap:56px;margin:45px 0 75px}.contact-links a{display:flex;align-items:center;gap:15px;font-size:17px}.contact-links svg{width:32px;height:32px;flex-shrink:0}.contact-bottom{border-top:1px solid #333;padding-top:30px}.contact-bottom .footer-brand{display:flex;align-items:center;gap:18px;font-size:13px}.footer-brand>span:last-child{line-height:1.6}@media(max-width:760px){header{gap:14px}.wordmark{gap:7px}.wordmark .brand-name{font-size:12px}.wordmark .brand-symbol{width:29px;height:23px;flex-basis:29px}.wordmark .brand-symbol img{width:88px;left:-29px;top:-3px}nav{gap:11px}.languages{gap:4px}.hero p{max-width:320px}.game-info{gap:16px;padding-top:25px}.genre{font-size:13px}.game-copy p{font-size:15px}.shift{padding-top:40px}.coop-images{gap:12px}.coop-images img{width:clamp(116px,32vw,200px)}.coop-slide h3{font-size:20px;margin:8px 0 12px}.coop-slide p{display:none}.coop-images{margin-bottom:8px}.about h2{font-size:29px;letter-spacing:-1.7px}.contact-links{gap:27px;align-items:flex-start;flex-wrap:wrap;margin:35px 0 50px}.contact-links a{font-size:15px;gap:12px}.contact-links a:first-child{width:100%}.contact-links svg{width:28px;height:28px}.contact-bottom .footer-brand{font-size:11px;gap:12px}.contact-title{letter-spacing:-2px}}@media(max-width:390px){header{padding-left:14px;padding-right:14px;gap:10px}nav{gap:8px}.wordmark .brand-name{font-size:11px}}
/* Revision 3: consistent categories and project presentation */
.wordmark .company-ci{width:200px;height:auto;max-width:none}.category-title,.about .category-title{font-size:48px;font-weight:600;letter-spacing:-1.5px;line-height:1.2;margin:0 0 38px}.games-title{padding:62px var(--pad) 0}.about-content{padding-top:0}.about-content h2{font-size:clamp(27px,3vw,43px);letter-spacing:-1.8px;line-height:1.5}.shift{padding-top:42px}.shift .game-info{padding:30px var(--pad) 55px}.shift .arc-art img{aspect-ratio:16/9;object-fit:contain;max-height:none}.shift-gallery .track figure{flex-basis:83%;aspect-ratio:16/9}.shift-gallery .track figure>img{object-fit:contain;image-rendering:auto}.shift-gallery .track .illustration-slide>img{width:auto;height:100%;max-width:100%;object-fit:contain}.shift-gallery .track:after{flex-basis:calc(17% - 24px)}.coop-slide>div{width:100%}.coop-images{width:100%;display:flex;gap:20px;padding:28px;margin:0}.coop-images img{width:calc(50% - 10px);height:auto;object-fit:contain;image-rendering:auto}.contact-links{margin-top:0}.about .category-title{margin-bottom:45px}.contact-bottom{justify-content:flex-start}@media(max-width:760px){.wordmark .company-ci{width:135px}.category-title,.about .category-title{font-size:34px;letter-spacing:-1px;margin-bottom:28px}.games-title{padding-top:36px}.shift-gallery .track figure{flex-basis:93%}.shift-gallery .track:after{flex-basis:calc(7% - 12px)}.coop-images{gap:10px;padding:10px}.coop-images img{width:calc(50% - 5px)}.about-content h2{font-size:27px}.shift .game-info{padding:25px var(--pad) 38px}}@media(max-width:390px){.wordmark .company-ci{width:117px}}
/* Shared artwork margins match the category headings. */
.arc-art{width:auto;margin-left:var(--pad);margin-right:var(--pad)}.arc-art>img{aspect-ratio:16/9;max-height:none;object-fit:contain}.coop-slide .coop-label{display:block;text-align:left;font-size:12px;letter-spacing:2px;color:#b3b5ac;padding:0 28px 18px}.coop-images{padding-top:0}.about-content h2{font-size:clamp(26px,2.65vw,40px);line-height:1.5}.shift .game-copy{max-width:850px}@media(max-width:760px){.coop-slide .coop-label{font-size:10px;padding:0 10px 10px}.about-content h2{font-size:27px}}
/* Brand edges frame the page; section content sits one level inward. */
:root{--brand-pad:clamp(22px,5vw,88px);--content-inset:clamp(48px,4.25vw,76px)}header{padding-left:var(--brand-pad);padding-right:var(--brand-pad)}.arclore,.shift,.about,.contact{--pad:calc(var(--brand-pad) + var(--content-inset))}.contact-bottom{margin-left:calc(0px - var(--content-inset));margin-right:calc(0px - var(--content-inset))}.hero p{max-width:900px;word-break:keep-all}@media(max-width:760px){:root{--brand-pad:22px;--content-inset:calc(22px - var(--brand-pad))}.hero p{max-width:340px;font-size:16px}.contact-bottom .footer-brand{gap:10px}}@media(max-width:390px){:root{--brand-pad:14px;--content-inset:calc(22px - var(--brand-pad))}.hero p{max-width:300px}}

/* Subtle, one-time content entrance. Content remains visible without JavaScript. */
.content-reveal{opacity:1;transform:translateY(0);transition:opacity 650ms ease-out,transform 650ms cubic-bezier(.22,1,.36,1)}
.content-reveal.reveal-pending{opacity:0;transform:translateY(22px);transition:none}
@media(max-width:760px){.content-reveal.reveal-pending{transform:translateY(14px)}}
@media(prefers-reduced-motion:reduce){.content-reveal,.content-reveal.reveal-pending{opacity:1;transform:none;transition:none}}
@media print{.content-reveal,.content-reveal.reveal-pending{opacity:1;transform:none;transition:none}}

/* Animate heading glyphs, not the padding above the GAMES heading. */
.category-label{display:inline-block}
/* Mobile navigation disclosure; desktop navigation keeps its existing layout. */
header nav{order:1}header .languages{order:2}.menu-toggle{display:none;order:3}
@media(max-width:760px){
 header.menu-ready{gap:14px}
 .menu-ready .wordmark{margin-right:auto}
 .menu-ready .languages{margin-left:0;gap:8px}
 .menu-ready .languages button{min-height:44px;min-width:26px}
 .menu-ready .menu-toggle{display:flex;position:relative;flex:0 0 44px;width:44px;height:44px;align-items:center;justify-content:center;padding:0;border:0;background:transparent}
 .menu-toggle span{position:absolute;width:23px;height:1.5px;background:var(--text);transition:transform 320ms ease,opacity 180ms ease}
 .menu-toggle span:nth-child(1){transform:translateY(-7px)}
 .menu-toggle span:nth-child(3){transform:translateY(7px)}
 .menu-toggle[aria-expanded=true] span:nth-child(1){transform:rotate(45deg)}
 .menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
 .menu-toggle[aria-expanded=true] span:nth-child(3){transform:rotate(-45deg)}
 header.menu-ready nav{position:absolute;top:100%;left:0;right:0;margin:0;display:flex;flex-direction:column;gap:0;padding:20px var(--brand-pad) 28px;background:#080808;border-bottom:1px solid #333;box-shadow:0 24px 32px #0005;max-height:calc(100dvh - 66px);overflow-y:auto;overscroll-behavior:contain;visibility:hidden;opacity:0;clip-path:inset(0 0 100% 0);pointer-events:none;transition:clip-path 360ms cubic-bezier(.22,1,.36,1),opacity 240ms ease,visibility 0s 360ms}
 header.menu-ready nav a{display:block;font-size:20px;font-weight:500;letter-spacing:.02em;line-height:1.3;padding:14px 0;border-bottom:1px solid #ffffff16;opacity:0;transform:translateY(-8px);transition:opacity 220ms ease,transform 320ms ease}
 header.menu-ready nav a:last-child{border-bottom:0}
 header.menu-open nav{visibility:visible;opacity:1;clip-path:inset(0);pointer-events:auto;transition-delay:0s}
 header.menu-open nav a{opacity:1;transform:translateY(0);transition-delay:80ms}
 header.menu-open nav a:nth-child(2){transition-delay:120ms}
 header.menu-open nav a:nth-child(3){transition-delay:160ms}
}
@media(prefers-reduced-motion:reduce){header.menu-ready nav,header.menu-ready nav a,.menu-toggle span{transition:none}}

/* Keep mobile navigation and language choices together. */
@media(max-width:760px){
 header.menu-ready nav{padding-top:12px;padding-bottom:18px}
 header.menu-ready nav a:last-of-type{border-bottom:0}
 header.menu-ready nav .languages{align-self:stretch;justify-content:flex-start;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid #ffffff16;font-size:14px;letter-spacing:0;opacity:0;transform:translateY(-8px);transition:opacity 220ms ease,transform 320ms ease}
 header.menu-ready nav .languages button{min-width:44px;min-height:44px}
 header.menu-open nav .languages{opacity:1;transform:translateY(0);transition-delay:180ms}
}
@media(prefers-reduced-motion:reduce){header.menu-ready nav .languages{transition:none}}

/* More legible desktop navigation, without enlarging the mobile panel. */
@media(min-width:761px){header nav{font-size:16px;font-weight:600;letter-spacing:.035em;gap:32px}header nav a{padding:12px 0}}

/* First-paint preparation prevents a visible → hidden → visible flash on reload. */
@media(prefers-reduced-motion:no-preference){
 .entrance-boot :is(.hero h1,.hero p,.category-label,.arc-art,.game-info,.gallery,.about-content > *,.contact-links){opacity:0;transform:translateY(22px);transition:none}
}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){
 .entrance-boot :is(.hero h1,.hero p,.category-label,.arc-art,.game-info,.gallery,.about-content > *,.contact-links){transform:translateY(14px)}
}
@media print{.entrance-boot :is(.hero h1,.hero p,.category-label,.arc-art,.game-info,.gallery,.about-content > *,.contact-links){opacity:1;transform:none}}

/* Animated transforms must not make the browser compensate the scroll position. */
body{overflow-anchor:none}

/* The mobile header is collapsed from the first render, before scripts run. */
@media(max-width:760px){header.menu-ready > .languages{display:none}}

/* One bilingual type family for navigation, categories, and body copy. */
:root{--site-font:'Pretendard Variable','Pretendard',-apple-system,BlinkMacSystemFont,'Segoe UI','Apple SD Gothic Neo','Malgun Gothic',sans-serif}
body{font-family:var(--site-font);font-weight:400;font-synthesis:none;font-kerning:normal}
header nav > a{font-family:var(--site-font);font-weight:600;letter-spacing:.01em}
.category-title,.about .category-title{font-family:var(--site-font);font-weight:600;letter-spacing:-.02em}
@media(max-width:760px){header.menu-ready nav > a{font-weight:600;letter-spacing:.01em}}

/* Mobile: a minimal header and one 22px edge shared by content and footer. */
@media(max-width:760px){
 header.menu-ready{padding-left:22px;padding-right:22px}
 header.menu-ready .wordmark{display:none}
 header.menu-ready .menu-toggle{margin-left:auto}
 header.menu-ready nav{padding-left:22px;padding-right:22px}
 .contact-bottom{margin-left:0;margin-right:0}
}

/* Align the visible menu strokes, rather than the larger touch target, to the content edge. */
@media(max-width:760px){header.menu-ready .menu-toggle span{right:0}}

/* Cap the whole desktop layout while section backgrounds still fill the screen. */
@media(min-width:761px){
 :root{--page-max:1440px;--outer-gutter:max(0px,calc((100% - var(--page-max))/2));--inner-brand-pad:clamp(22px,5vw,72px);--brand-pad:calc(var(--outer-gutter) + var(--inner-brand-pad));--content-inset:clamp(48px,4.25vw,61.2px);--pad:var(--brand-pad)}
 .gallery{max-width:var(--page-max);margin-left:auto;margin-right:auto;--pad:calc(var(--inner-brand-pad) + var(--content-inset))}
 .arc-gallery .track figure,.shift-gallery .track figure{flex-basis:83%}
 .about-content{gap:min(9vw,129.6px)}
}
