:root{--ink:#17151b;--paper:#eee7ff;--paper-strong:#e4d8ff;--white:#fffdf9;--muted:#655f6e;--purple:#7457d8;--lime:#d9ff62;--line:#17151b29;--shadow:0 22px 50px #36255624;--max-width:1100px;--display:Georgia, "Times New Roman", serif;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--paper);min-width:320px;margin:0}body::selection{background:var(--lime);color:var(--ink)}a{color:inherit;text-decoration:none}img{width:100%;display:block}button,input,textarea{font:inherit}.app-shell{background:linear-gradient(#ffffff29 1px, transparent 1px), linear-gradient(90deg, #ffffff29 1px, transparent 1px), var(--paper);background-size:88px 88px;min-height:100vh;overflow:hidden}.container{width:min(calc(100% - 40px), var(--max-width));margin-inline:auto}.site-header{z-index:50;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#eee7ffdb;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;height:78px;display:flex}.logo{font:800 1.45rem/1 var(--sans);letter-spacing:-.08em}.logo-dot{color:var(--purple)}.site-nav{align-items:center;gap:1.8rem;font-size:.9rem;font-weight:650;display:flex}.site-nav a{position:relative}.site-nav a:not(.nav-cta):after{content:"";background:var(--ink);height:2px;transition:right .2s;position:absolute;bottom:-5px;left:0;right:100%}.site-nav a:hover:after,.site-nav a.active:after{right:0}.nav-cta{border:1.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:999px;padding:.68rem 1rem;transition:transform .2s,box-shadow .2s}.nav-cta:hover{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.menu-button{color:var(--ink);cursor:pointer;background:0 0;border:0;font-weight:700;display:none}.home-hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 78px);padding:6rem 0 5rem;display:flex}.availability{letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:.55rem;margin:0 0 1.35rem;font-size:.78rem;font-weight:700;display:flex}.availability span{background:#3aae64;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #3aae6424}.home-hero h1{font:700 clamp(4.5rem, 13vw, 9.5rem)/.75 var(--display);letter-spacing:-.075em;text-wrap:balance;margin:0}.hero-role{color:var(--purple);font:italic 600 clamp(1.5rem, 4vw, 2.4rem)/1 var(--display);margin:1.35rem 0 0}.hero-intro{color:#4f4958;max-width:720px;margin:2rem auto 0;font-size:clamp(1rem,2vw,1.18rem);line-height:1.75}.hero-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.8rem;display:flex}.primary-button,.secondary-button{border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:.82rem 1.15rem;font-size:.88rem;font-weight:750;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.primary-button{color:var(--white);background:var(--ink);border:1.5px solid var(--ink)}.secondary-button{color:var(--ink);border:1.5px solid var(--ink);background:#ffffff75}.primary-button:hover,.secondary-button:hover{transform:translateY(-3px);box-shadow:0 8px #17151b1c}.specialty-list{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:3.5rem;display:flex}.specialty-list span,.tag,.mini-system-grid span{border:1px solid var(--line);background:#ffffff61;border-radius:999px;padding:.45rem .72rem;font-size:.75rem;font-weight:700}.work-section{padding:7rem 0 5rem}.work-heading{grid-template-columns:1fr 2fr;align-items:start;column-gap:3rem;margin-bottom:4rem;display:grid}.eyebrow{letter-spacing:.14em;text-transform:uppercase;margin:.35rem 0 0;font-size:.73rem;font-weight:800}.work-heading h2,.home-about h2,.home-contact h2,.page-heading h1,.contact-panel h1{font:700 clamp(3rem, 7vw, 5.6rem)/.92 var(--display);letter-spacing:-.055em;margin:0}.work-heading p:last-child{max-width:500px;color:var(--muted);grid-column:2;margin:1.25rem 0 0;line-height:1.7}.project-showcase{gap:4rem;display:grid}.showcase-card{background:var(--white);box-shadow:var(--shadow);border:1px solid #17151b2e;border-radius:32px;overflow:hidden}.showcase-visual{background:#272530;min-height:520px;display:block;position:relative;overflow:hidden}.showcase-media-link{height:520px;display:block}.showcase-visual iframe{background:#09090b;border:0;width:100%;height:520px;display:block}.showcase-visual.has-video{background:#09090b}.showcase-visual img{object-fit:cover;height:520px;transition:transform .7s cubic-bezier(.16,1,.3,1),filter .4s}.showcase-visual img.is-contain{object-fit:contain;background:radial-gradient(circle at 70% 20%,#57498a,#0000 45%),#23212a;padding:clamp(2rem,7vw,5rem)}.showcase-visual:hover img{filter:saturate(1.08);transform:scale(1.025)}.project-number{z-index:2;background:var(--lime);border:1.5px solid var(--ink);width:44px;height:44px;box-shadow:3px 3px 0 var(--ink);border-radius:50%;place-items:center;font-size:.78rem;font-weight:850;display:grid;position:absolute;top:1.25rem;left:1.25rem}.showcase-placeholder{color:#fff;background:radial-gradient(circle at 75% 20%,#8264ed,#0000 25%),linear-gradient(135deg,#201d29,#363040);flex-direction:column;justify-content:flex-end;min-height:520px;padding:4rem;display:flex}.showcase-placeholder:before{content:"BETA";font:800 clamp(4rem,12vw,9rem)/1 var(--sans);color:#ffffff12;position:absolute;top:18%;right:8%;transform:rotate(-8deg)}.showcase-placeholder span{color:var(--lime);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.showcase-placeholder strong{font:700 clamp(3rem,9vw,7rem)/.9 var(--display);margin-top:.5rem}.showcase-copy{grid-template-columns:1.15fr 1.45fr auto;align-items:end;gap:2rem;padding:2rem 2.2rem 2.3rem;display:grid}.project-kicker{color:var(--purple);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .55rem;font-size:.68rem;font-weight:800}.showcase-copy h3{font:700 clamp(2rem,4vw,3.25rem)/.95 var(--display);letter-spacing:-.04em;margin:0}.showcase-copy>p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.65}.case-link,.text-link{white-space:nowrap;border-bottom:1.5px solid var(--ink);align-items:center;gap:.35rem;padding-bottom:.2rem;font-size:.8rem;font-weight:800;display:inline-flex}.case-link span{transition:transform .2s}.case-link:hover span{transform:translate(3px,-3px)}.showcase-actions,.card-actions{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}.showcase-actions{justify-content:flex-end}.play-link{background:var(--ink);color:var(--white);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:.35rem;padding:.68rem .9rem;font-size:.78rem;font-weight:800;transition:transform .2s,box-shadow .2s;display:inline-flex}.play-link:hover{transform:translateY(-2px);box-shadow:0 5px #17151b1f}.home-about{border-top:1px solid var(--line);grid-template-columns:1fr 2fr;gap:3rem;padding:8rem 0;display:grid}.home-about h2{font-size:clamp(2.8rem,6vw,5rem)}.home-about>div>p{max-width:650px;color:var(--muted);margin:1.6rem 0;font-size:1.05rem;line-height:1.75}.home-contact{text-align:center;background:var(--ink);color:var(--white);box-shadow:10px 10px 0 var(--purple);border-radius:34px;margin-top:2rem;margin-bottom:6rem;padding:clamp(3rem,8vw,6rem)}.home-contact .eyebrow{color:var(--lime);margin-bottom:1.2rem}.home-contact h2{font-size:clamp(2.8rem,7vw,5.8rem)}.home-contact h2 em{color:var(--paper-strong);font-weight:500}.contact-link{color:var(--lime);border-bottom:1px solid;gap:.5rem;margin-top:2.2rem;padding-bottom:.35rem;font-weight:700;display:inline-flex}.page-section{min-height:70vh;padding:6rem 0 8rem}.page-heading{max-width:820px;margin-bottom:3.5rem}.page-heading h1{margin:.5rem 0 1.2rem}.page-heading>p:last-child{max-width:650px;color:var(--muted);line-height:1.7}.projects-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.project-card{border:1px solid var(--line);background:var(--white);border-radius:24px;transition:transform .25s,box-shadow .25s;overflow:hidden;box-shadow:0 12px 30px #36255614}.project-card:hover{box-shadow:var(--shadow);transform:translateY(-6px)}.project-image-link{background:#282630;display:block;overflow:hidden}.project-image-link iframe{background:#09090b;border:0;width:100%;height:300px;display:block}.project-image{object-fit:cover;height:300px;transition:transform .5s}.project-card:hover .project-image{transform:scale(1.03)}.project-image--contain{object-fit:contain;background:#282630;padding:2.5rem}.project-image--placeholder{color:#fff;background:linear-gradient(135deg,#292532,#5b4d85);flex-direction:column;justify-content:flex-end;padding:2rem;display:flex}.project-card-body{padding:1.5rem}.project-meta{color:var(--purple);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;font-size:.68rem;font-weight:800;display:flex}.project-card h3{font:700 2rem/1 var(--display);margin:.75rem 0 .25rem}.project-card-subtitle{color:var(--ink);margin:0 0 .8rem;font-size:.83rem;font-weight:700}.project-card-body>p:not(.project-card-subtitle){color:var(--muted);font-size:.86rem;line-height:1.6}.tag-list,.mini-system-grid{flex-wrap:wrap;gap:.45rem;margin:1.1rem 0;display:flex}.project-card .card-actions{margin-top:1.2rem}.filters{flex-wrap:wrap;gap:.5rem;margin:0 0 2rem;display:flex}.filter-button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#ffffff59;border-radius:999px;padding:.6rem .9rem;font-weight:700}.filter-button:hover,.filter-button.is-active{color:#fff;background:var(--ink)}.case-hero{border:1px solid var(--line);background:var(--white);border-radius:28px;grid-template-columns:.9fr 1.1fr;margin-top:2rem;display:grid;overflow:hidden}.case-hero>div{flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,4rem);display:flex}.case-hero h1{font:700 clamp(3.5rem,8vw,6.5rem)/.82 var(--display);letter-spacing:-.06em;margin:.5rem 0 1rem}.case-hero>div>p:not(.eyebrow){color:var(--muted);line-height:1.7}.case-cover{object-fit:cover;background:#282630;height:100%;min-height:520px}.case-cover--contain{object-fit:contain;padding:3rem}.case-cover--placeholder{color:#fff;background:linear-gradient(135deg,#292532,#5b4d85);flex-direction:column;justify-content:flex-end;padding:3rem;display:flex}.case-meta{flex-wrap:wrap;gap:.55rem;margin-top:1.5rem;font-size:.75rem;font-weight:700;display:flex}.case-meta span{border:1px solid var(--line);border-radius:99px;padding:.45rem .7rem}.case-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:1.5rem;display:grid}.case-panel{border:1px solid var(--line);background:#fffdf9bd;border-radius:24px;margin-top:1.5rem;padding:2rem}.case-grid .case-panel{margin-top:0}.case-panel h2{font:700 2.1rem/1 var(--display);margin:0 0 1rem}.case-panel ul{color:var(--muted);margin:0;padding-left:1.2rem;line-height:1.8}.project-links,.contact-actions{flex-wrap:wrap;gap:.75rem;display:flex}.gameplay-section{background:var(--ink);color:var(--white);border-radius:24px;margin-top:1.5rem;padding:clamp(1.2rem,3vw,2rem)}.gameplay-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.4rem;display:flex}.gameplay-heading .eyebrow{color:var(--lime);margin-bottom:.5rem}.gameplay-heading h2{font:700 clamp(2.2rem,5vw,4rem)/.95 var(--display);letter-spacing:-.045em;margin:0}.gameplay-heading .text-link{color:var(--white);border-color:var(--white)}.video-frame{aspect-ratio:16/9;background:#09090b;border-radius:18px;position:relative;overflow:hidden}.video-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.contact-panel{text-align:center;background:var(--ink);max-width:880px;color:var(--white);box-shadow:9px 9px 0 var(--purple);border-radius:32px;margin:0 auto;padding:clamp(2.5rem,7vw,5rem)}.contact-panel .eyebrow{color:var(--lime)}.contact-panel h1{margin:.8rem 0 1.2rem}.contact-panel>p:last-of-type{color:#c9c4cf;max-width:600px;margin:0 auto 2rem;line-height:1.7}.contact-panel .contact-actions{justify-content:center}.contact-panel .primary-button{background:var(--lime);color:var(--ink)}.contact-panel .secondary-button{color:#fff;background:0 0;border-color:#ffffff8c}.site-footer{border-top:1px solid var(--line);background:#fff3}.footer-inner{justify-content:space-between;align-items:center;gap:1.5rem;min-height:110px;font-size:.76rem;font-weight:650;display:flex}.footer-inner div{gap:1.2rem;display:flex}.footer-inner a:hover{text-decoration:underline}@media (prefers-reduced-motion:no-preference){[data-reveal]{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.16,1,.3,1);transform:translateY(24px)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}.page-enter main{animation:.4s both fade-in}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (width<=860px){.work-heading,.home-about{grid-template-columns:1fr;gap:1.2rem}.work-heading p:last-child{grid-column:1}.showcase-visual,.showcase-media-link,.showcase-visual iframe,.showcase-visual img,.showcase-placeholder{height:400px;min-height:400px}.showcase-copy{grid-template-columns:1fr;align-items:start;gap:1rem}.case-link{justify-self:start}.showcase-actions{justify-content:flex-start}.case-hero{grid-template-columns:1fr}.case-cover{min-height:400px}}@media (width<=680px){.container{width:min(calc(100% - 24px), var(--max-width))}.header-inner{height:68px}.menu-button{display:block}.site-nav{background:var(--white);border:1px solid var(--ink);box-shadow:5px 5px 0 var(--ink);border-radius:18px;flex-direction:column;align-items:stretch;gap:.3rem;padding:1.2rem;display:none;position:absolute;top:68px;left:12px;right:12px}.site-nav.is-open{display:flex}.site-nav a{padding:.75rem}.site-nav a:after{display:none}.nav-cta{text-align:center;margin-top:.4rem}.home-hero{min-height:calc(100svh - 68px);padding:4rem 0}.home-hero h1{font-size:clamp(4rem,21vw,7rem)}.hero-intro{font-size:.96rem}.specialty-list{margin-top:2.5rem}.work-section{padding-top:5rem}.work-heading{margin-bottom:2.5rem}.project-showcase{gap:2rem}.showcase-card{border-radius:22px}.showcase-visual,.showcase-media-link,.showcase-visual iframe,.showcase-visual img,.showcase-placeholder{height:270px;min-height:270px}.showcase-placeholder{padding:1.5rem}.showcase-copy{padding:1.4rem}.project-number{width:38px;height:38px;top:.9rem;left:.9rem}.home-about{padding:5rem 0}.home-contact{box-shadow:6px 6px 0 var(--purple);border-radius:24px;margin-bottom:3.5rem;padding:3rem 1rem}.contact-link{font-size:.8rem}.projects-grid,.case-grid{grid-template-columns:1fr}.page-section{padding:4rem 0 6rem}.case-hero>div{padding:1.5rem}.case-cover{min-height:280px}.gameplay-heading{flex-direction:column;align-items:flex-start}.footer-inner{flex-direction:column;align-items:flex-start;min-height:0;padding:2rem 0}}@media (width<=420px){.hero-actions,.hero-actions .primary-button,.hero-actions .secondary-button{width:100%}.home-hero h1{font-size:4rem}.home-contact h2{font-size:2.45rem}}
