:root{--brand: #da0712;--brand-hover: #b8060f;--brand-text: #da0712;--brand-soft: rgba(218, 7, 18, .05);--brand-soft-2: rgba(218, 7, 18, .1);--brand-line: rgba(218, 7, 18, .2);--brand-glow-1: rgba(218, 7, 18, .12);--brand-glow-2: rgba(218, 7, 18, .07);--brand-glow-3: rgba(218, 7, 18, .05);--brand-grid: rgba(218, 7, 18, .03);--brand-ring: rgba(218, 7, 18, .3);--bg: #ffffff;--bg-alt: #fafafa;--surface: #ffffff;--surface-2: #fafafa;--text: #1a1a1a;--text-2: #555555;--text-3: #777777;--text-4: #999999;--border: #e8e8e8;--border-2: #ebebeb;--border-strong: #dddddd;--nav-bg: rgba(255, 255, 255, .85);--nav-border: rgba(0, 0, 0, .05);--nav-shadow: 0 4px 24px rgba(0, 0, 0, .04);--card-shadow: 0 24px 70px rgba(0, 0, 0, .12);--brand-shadow: 0 10px 36px rgba(218, 7, 18, .3);--radius-sm: 10px;--radius-md: 20px;--radius-lg: 28px;--ease: cubic-bezier(.22, 1, .36, 1);--max-w: 1120px;--font-display: "Outfit", "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-logo: "Inter", "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;color-scheme:light}:root[data-theme=dark]{--brand: #e11220;--brand-hover: #f42a37;--brand-text: #ff5a63;--brand-soft: rgba(255, 90, 99, .08);--brand-soft-2: rgba(255, 90, 99, .14);--brand-line: rgba(255, 90, 99, .26);--brand-glow-1: rgba(218, 7, 18, .16);--brand-glow-2: rgba(218, 7, 18, .09);--brand-glow-3: rgba(218, 7, 18, .06);--brand-grid: rgba(255, 90, 99, .045);--brand-ring: rgba(225, 18, 32, .45);--bg: #0b0b0d;--bg-alt: #101013;--surface: #141418;--surface-2: #191920;--text: #f3f3f4;--text-2: #b6b6be;--text-3: #93939d;--text-4: #71717c;--border: #24242b;--border-2: #2a2a32;--border-strong: #34343e;--nav-bg: rgba(11, 11, 13, .78);--nav-border: rgba(255, 255, 255, .08);--nav-shadow: 0 4px 28px rgba(0, 0, 0, .5);--card-shadow: 0 24px 70px rgba(0, 0, 0, .6);--brand-shadow: 0 10px 36px rgba(225, 18, 32, .35);color-scheme:dark}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.6;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;font-feature-settings:"ss01","cv01";overflow-x:hidden;transition:background-color .35s var(--ease),color .35s var(--ease)}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.025em;line-height:1.28;text-wrap:balance}p{text-wrap:pretty}a{color:inherit;text-decoration:none}button{font-family:inherit;color:inherit}img{max-width:100%}:focus-visible{outline:2px solid var(--brand-text);outline-offset:3px;border-radius:4px}::selection{background:var(--brand-soft-2);color:var(--text)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.container{max-width:var(--max-w);margin:0 auto;padding:0 2rem}.skip-link{position:fixed;top:.75rem;left:50%;z-index:300;transform:translate(-50%,-200%);padding:.65rem 1.4rem;background:var(--brand);color:#fff;font-size:.85rem;font-weight:600;border-radius:100px;transition:transform .25s var(--ease)}.skip-link:focus-visible{transform:translate(-50%)}.nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2.5rem;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);background:var(--nav-bg);border-bottom:1px solid transparent;transition:padding .3s var(--ease),border-color .3s,box-shadow .3s,background-color .35s var(--ease)}.nav.scrolled{padding:.9rem 2.5rem;border-bottom-color:var(--nav-border);box-shadow:var(--nav-shadow)}.nav-logo{font-family:var(--font-logo);font-size:1.3rem;font-weight:900;color:var(--brand-text);letter-spacing:-.03em}.nav-right{display:flex;align-items:center;gap:1.75rem}.nav-links{display:flex;gap:2rem}.nav-links a{font-size:.9rem;font-weight:500;color:var(--text-3);transition:color .2s;position:relative}.nav-links a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:1.5px;background:var(--brand-text);transition:width .3s var(--ease)}.nav-links a:hover,.nav-links a.is-active{color:var(--brand-text)}.nav-links a:hover:after,.nav-links a.is-active:after{width:100%}.nav-controls{display:flex;align-items:center;gap:.6rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border-strong);border-radius:100px;background:transparent;color:var(--text-3);cursor:pointer;transition:color .2s,border-color .2s,background-color .2s}.icon-btn:hover{color:var(--brand-text);border-color:var(--brand-line);background:var(--brand-soft)}.lang-toggle{display:flex;border:1px solid var(--border-strong);border-radius:100px;padding:3px;background:var(--surface-2)}.lang-toggle button{border:none;background:transparent;font-size:.72rem;font-weight:700;letter-spacing:.04em;color:var(--text-4);padding:.28rem .72rem;border-radius:100px;cursor:pointer;transition:color .2s,background .2s}.lang-toggle button:hover{color:var(--text-2)}.lang-toggle button.active{background:var(--brand);color:#fff}.menu-btn{display:none;position:relative;width:32px;height:32px;border:1px solid var(--border-strong);border-radius:100px;background:transparent;cursor:pointer}.menu-btn span{position:absolute;left:50%;width:14px;height:1.5px;background:var(--text-2);border-radius:2px;transition:transform .3s var(--ease),opacity .2s}.menu-btn span:first-child{transform:translate(-50%,-4px)}.menu-btn span:last-child{transform:translate(-50%,3px)}.menu-btn.open span:first-child{transform:translate(-50%) rotate(45deg)}.menu-btn.open span:last-child{transform:translate(-50%) rotate(-45deg)}.mobile-menu{position:fixed;top:0;left:0;right:0;z-index:150;padding:5.5rem 1.5rem 2rem;background:var(--nav-bg);backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%);border-bottom:1px solid var(--nav-border);box-shadow:var(--nav-shadow);transform:translateY(-100%);opacity:0;transition:transform .35s var(--ease),opacity .25s}.mobile-menu.open{transform:translateY(0);opacity:1}.mobile-menu-links{display:flex;flex-direction:column;gap:.25rem}.mobile-menu-links a{padding:.9rem .25rem;font-size:1.15rem;font-weight:600;color:var(--text);border-bottom:1px solid var(--border)}.mobile-menu-links a.is-active{color:var(--brand-text)}.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:var(--bg)}.hero-glow{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;background:radial-gradient(ellipse 70% 50% at 50% 22%,var(--brand-glow-1) 0%,transparent 60%),radial-gradient(ellipse 50% 40% at 75% 62%,var(--brand-glow-2) 0%,transparent 50%),radial-gradient(ellipse 50% 40% at 25% 70%,var(--brand-glow-3) 0%,transparent 50%);pointer-events:none;animation:glowDrift 16s ease-in-out infinite}@keyframes glowDrift{0%,to{transform:scale(1) translateY(0)}50%{transform:scale(1.08) translateY(-1.5%)}}.hero-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--brand-grid) 1px,transparent 1px),linear-gradient(90deg,var(--brand-grid) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,black 20%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,black 20%,transparent 70%);pointer-events:none}.hero-content{position:relative;display:flex;flex-direction:column;align-items:center;gap:1.25rem;padding:6rem 1.5rem 4rem}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;letter-spacing:.06em;color:var(--brand-text);padding:.45rem 1.1rem;border:1px solid var(--brand-line);border-radius:100px;background:var(--brand-soft);animation:fadeUp .8s var(--ease) both}.hero-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--brand);animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 0 0 var(--brand-ring)}50%{opacity:.6;box-shadow:0 0 0 5px transparent}}.logo{font-family:var(--font-logo);font-size:clamp(5.5rem,16vw,10rem);font-weight:900;letter-spacing:-.05em;color:var(--brand-text);line-height:1;-webkit-text-stroke:2px var(--brand-text);animation:fadeUp .8s .1s var(--ease) both}.tagline{font-family:var(--font-body);font-size:clamp(1.15rem,2.8vw,1.4rem);font-weight:500;color:var(--text-2);line-height:1.75;letter-spacing:-.01em;max-width:480px;text-wrap:balance;animation:fadeUp .8s .2s var(--ease) both}.hero-actions{display:flex;gap:1rem;margin-top:1rem;animation:fadeUp .8s .35s var(--ease) both}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 2.2rem;background:var(--brand);color:#fff;font-size:.95rem;font-weight:600;border-radius:100px;transition:transform .2s var(--ease),box-shadow .2s,background-color .2s}.btn-primary:hover{background:var(--brand-hover);transform:translateY(-2px);box-shadow:var(--brand-shadow)}.btn-arrow{display:inline-block;transition:transform .2s var(--ease)}.btn-primary:hover .btn-arrow{transform:translate(3px)}.btn-ghost{display:inline-flex;align-items:center;padding:.85rem 2.2rem;font-size:.95rem;font-weight:600;color:var(--text-2);border:1.5px solid var(--border-strong);border-radius:100px;transition:border-color .2s,color .2s,background-color .2s}.btn-ghost:hover{border-color:var(--brand-line);color:var(--brand-text);background:var(--brand-soft)}.scroll-indicator{position:absolute;bottom:2.25rem;left:0;right:0;width:fit-content;margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:.6rem;animation:fadeUp .8s .5s var(--ease) both}.scroll-label{font-size:.65rem;font-weight:700;letter-spacing:.18em;margin-right:-.18em;text-transform:uppercase;color:var(--text-4)}.scroll-track{display:block;width:1px;height:34px;background:linear-gradient(var(--border-strong),transparent);position:relative}.scroll-dot{position:absolute;left:50%;margin-left:-3px;width:6px;height:6px;border-radius:50%;background:var(--brand);animation:scrollBounce 2s ease-in-out infinite}@keyframes scrollBounce{0%,to{transform:translateY(0);opacity:.25}50%{transform:translateY(24px);opacity:1}}.section-label{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-text);margin-bottom:1rem;position:relative;padding-left:1.2rem}.section-label:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;background:var(--brand)}.section-title{font-size:clamp(1.9rem,4.2vw,2.7rem);font-weight:700;color:var(--text);line-height:1.28;letter-spacing:-.032em}.studio-section{position:relative;overflow:hidden;padding:10rem 0 9rem}.studio-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 50% 55% at 12% 28%,var(--brand-glow-2) 0%,transparent 62%),radial-gradient(ellipse 40% 45% at 88% 78%,var(--brand-glow-3) 0%,transparent 58%);pointer-events:none}.studio-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--brand-grid) 1px,transparent 1px),linear-gradient(90deg,var(--brand-grid) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse 65% 75% at 18% 38%,black 0%,transparent 68%);-webkit-mask-image:radial-gradient(ellipse 65% 75% at 18% 38%,black 0%,transparent 68%);pointer-events:none}.studio-section .container{position:relative}.section-header{margin-bottom:4rem}.about{max-width:720px}.about-title{font-size:clamp(1.95rem,4.6vw,3rem);font-weight:700;color:var(--text);line-height:1.25;letter-spacing:-.035em;margin-bottom:2.25rem;text-wrap:initial}.about-body{max-width:620px;padding-top:2.25rem;border-top:1px solid var(--border)}.about-body p{font-size:1.05rem;color:var(--text-3);line-height:1.95;margin-bottom:1.15rem}.about-body p:last-child{margin-bottom:0}.about-title-accent{color:var(--brand-text)}.work-section{padding:8rem 0;background:var(--bg-alt)}.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.work-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--border-2);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;transition:border-color .3s,box-shadow .3s,transform .3s var(--ease)}.work-card:hover,.work-card:focus-within{border-color:var(--brand-line);box-shadow:var(--card-shadow);transform:translateY(-6px)}.work-link:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.work-cover{aspect-ratio:2 / 1;overflow:hidden;background:#16161a;border-bottom:1px solid var(--border-2)}.work-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--ease)}.work-card:hover .work-cover img,.work-card:focus-within .work-cover img{transform:scale(1.04)}.work-body{display:flex;flex-direction:column;gap:.55rem;padding:1.6rem 1.85rem 1.85rem;flex:1}.work-card-top{display:flex;align-items:center;gap:.7rem}.work-logo{width:32px;height:32px;border-radius:8px;object-fit:contain;flex-shrink:0}.work-card h3{font-size:1.28rem;font-weight:700;color:var(--text);letter-spacing:-.03em;line-height:1.3}.work-card:hover h3{color:var(--brand-text)}.work-new{margin-left:auto;flex-shrink:0;font-size:.62rem;font-weight:800;letter-spacing:.1em;color:#fff;background:var(--brand);padding:.22rem .55rem;border-radius:100px}.work-tagline{font-size:.85rem;font-weight:600;color:var(--brand-text)}.work-card p{font-size:.95rem;color:var(--text-3);line-height:1.7;flex:1;margin-top:.35rem}.work-card p.work-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.2rem .55rem;flex:0 0 auto;margin-top:1.1rem;font-size:.78rem;font-weight:500;line-height:1.5;color:var(--text-4);letter-spacing:.01em}.work-year{font-weight:700;color:var(--text-3);font-variant-numeric:tabular-nums}.work-meta-sep{width:3px;height:3px;border-radius:50%;background:var(--border-strong);flex-shrink:0}.work-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid var(--border)}.work-platforms{display:flex;gap:.4rem;flex-wrap:wrap}.work-platforms span{font-size:.72rem;font-weight:600;color:var(--text-4);padding:.25rem .7rem;border:1px solid var(--border);border-radius:100px;background:var(--surface-2)}.work-actions{display:flex;align-items:center;gap:.9rem}.work-appstore{position:relative;z-index:2;display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;color:var(--text-2);padding:.32rem .75rem;border:1px solid var(--border-strong);border-radius:100px;transition:color .2s,border-color .2s,background-color .2s}.work-appstore:hover{color:var(--text);border-color:var(--text-4);background:var(--surface-2)}.work-visit{display:inline-flex;align-items:center;gap:.4rem;font-size:.88rem;font-weight:700;color:var(--brand-text);white-space:nowrap}.work-card:hover .work-visit .btn-arrow,.work-card:focus-within .work-visit .btn-arrow{transform:translate(3px)}.contact-section{padding:7rem 0 8rem}.contact-card{--text: #ffffff;--text-2: #b9b9c2;--text-3: #9a9aa4;--brand-text: #ff5a63;--brand: #e11220;position:relative;overflow:hidden;border-radius:var(--radius-lg);background:#0e0e12;padding:6rem 2rem 6.5rem;color:var(--text)}.contact-card-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 60% at 50% 0%,rgba(225,18,32,.28) 0%,transparent 60%),radial-gradient(ellipse 45% 50% at 85% 100%,rgba(225,18,32,.16) 0%,transparent 55%);pointer-events:none}.contact-inner{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem}.contact-title{font-size:clamp(1.8rem,4vw,2.6rem);font-weight:700;color:var(--text);line-height:1.3;letter-spacing:-.032em}.contact-desc{font-size:1rem;color:var(--text-2);line-height:1.8;max-width:460px}.contact-actions{display:flex;align-items:center;gap:.75rem;margin-top:1.5rem;flex-wrap:wrap;justify-content:center}.contact-email{display:inline-flex;align-items:center;gap:.6rem;padding:1rem 2.5rem;background:var(--brand);color:#fff;font-size:1.05rem;font-weight:700;border-radius:100px;transition:transform .2s var(--ease),box-shadow .2s,background-color .2s}.contact-email:hover{background:#f42a37;transform:translateY(-2px);box-shadow:0 10px 36px #e1122066}.contact-email:hover .btn-arrow{transform:translate(3px)}.contact-copy{padding:1rem 1.6rem;font-size:.9rem;font-weight:600;color:var(--text-2);background:#ffffff0a;border:1px solid rgba(255,255,255,.16);border-radius:100px;cursor:pointer;transition:color .2s,border-color .2s,background-color .2s}.contact-copy:hover{color:#fff;border-color:#ffffff59;background:#ffffff14}.footer{padding:3rem 0;border-top:1px solid var(--border)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}.footer-brand{display:flex;flex-direction:column;gap:.3rem}.footer-logo{font-family:var(--font-logo);font-size:1.1rem;font-weight:900;color:var(--brand-text);letter-spacing:-.03em}.footer p{font-size:.82rem;color:var(--text-4)}.footer-nav{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap}.footer-nav-label{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-4)}.footer-nav a{font-size:.85rem;font-weight:500;color:var(--text-3);transition:color .2s}.footer-nav a:hover{color:var(--brand-text)}.back-to-top{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border:1px solid var(--border-strong);border-radius:100px;color:var(--text-3);transition:color .2s,border-color .2s,transform .2s var(--ease)}.back-to-top:hover{color:var(--brand-text);border-color:var(--brand-line);transform:translateY(-2px)}body.reveal-ready .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--i, 0) * .09s)}body.reveal-ready .reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){body.reveal-ready .reveal{opacity:1;transform:none}}@media(max-width:900px){.nav-links{display:none}.menu-btn{display:block}.work-grid{grid-template-columns:1fr}body.reveal-ready .reveal{transition-delay:0s}}@media(max-width:768px){.container{padding:0 1.5rem}.nav,.nav.scrolled{padding:1rem 1.5rem}.nav-right{gap:.6rem}.studio-section{padding:6rem 0 5rem}.about{margin-bottom:3rem}.about-title{margin-bottom:1.75rem}.about-body{padding-top:1.75rem}.about-body p{font-size:1rem;line-height:1.85}.work-section{padding:5.5rem 0}.section-header{margin-bottom:2.5rem}.hero-actions{flex-direction:column;width:100%;max-width:300px}.btn-primary,.btn-ghost{justify-content:center}.contact-section{padding:4rem 0 5rem}.contact-card{padding:4rem 1.5rem;border-radius:var(--radius-md)}.contact-email{padding:.9rem 1.75rem;font-size:.95rem}.footer-inner{flex-direction:column;align-items:flex-start;gap:1.5rem}.back-to-top{align-self:flex-end;margin-top:-3rem}}@media(max-width:420px){.work-body{padding:1.4rem 1.4rem 1.6rem}.work-card-bottom{flex-direction:column;align-items:flex-start;gap:.85rem}}
