@font-face{font-family:ROGENZ;src:url('../assets/fonts/ROGENZ.woff2') format('woff2'),url('../assets/fonts/ROGENZ.woff') format('woff'),url('../assets/fonts/ROGENZ.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--bg:#09090c;--panel:#111115;--text:#f4f1f2;--muted:#a6a1ab;--accent:#ff4050;--line:#2c252d;--display:ROGENZ,'Arial Black',Arial,sans-serif;--gutter:5vw}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.75 Arial,Helvetica,sans-serif}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}button:disabled{opacity:.6;cursor:wait}::selection{background:var(--accent);color:#09090c}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15}h1,h2{font-family:var(--display);font-weight:800;letter-spacing:-1.6px}h2{font-size:clamp(30px,3.5vw,46px)}h3{font-size:21px;letter-spacing:-.4px}p{max-width:64ch}em{font-style:normal;color:var(--accent)}img{width:100%;display:block;object-fit:cover}.wrap{width:min(1180px,90%);margin-inline:auto}.accent,.lime{color:var(--accent)}.muted{color:var(--muted)}.small{font-size:12px}.eyebrow{font:11px/1.6 'Courier New',monospace;text-transform:uppercase;letter-spacing:1.7px;display:block;margin-bottom:19px}.dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:8px;box-shadow:0 0 12px #ff405040}.nav{height:84px;position:fixed;inset:0 0 auto;z-index:20;padding:0 max(5%,calc((100vw - 1180px)/2));display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line);background:#09090cf2;backdrop-filter:blur(18px);transition:height .25s}.nav.compact{height:68px}.brand{display:flex;gap:12px;align-items:center;font-size:12px;font-weight:700;white-space:nowrap}.brand-mark{font:900 24px/1 Arial;letter-spacing:-2px}.brand-mark span{color:var(--accent)}.nav nav{margin-left:auto;display:flex;gap:30px;font-size:13px}.nav nav a{position:relative}.nav nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-12px;height:2px;background:var(--accent);transition:right .25s}.nav nav a:hover:after,.nav nav a.active:after{right:0}.nav-cta{padding:9px 17px;border:1px solid #91333f;background:#32161d;border-radius:5px;font-size:12px;font-weight:700}.nav-cta span{margin-left:16px;color:var(--accent)}.menu-toggle{width:22px;background:transparent;padding:5px 0;display:grid;gap:6px}.menu-toggle span{background:var(--text);height:1px;width:22px}.menu-toggle span:last-child{width:15px;margin-left:auto}.hero{padding-top:155px;padding-bottom:75px;display:grid;grid-template-columns:1fr 1.06fr;gap:5%;align-items:center;min-height:780px}.hero h1{font-size:clamp(58px,6.2vw,88px);line-height:1.02;letter-spacing:-4px}.hero h1>span{color:var(--accent)}.hero-role{font-family:Arial,sans-serif;font-size:17px;letter-spacing:0;line-height:1.65;margin:21px 0}.hero-role span{font-weight:400;color:var(--muted);font-size:13px}.hero-copy>p{font-size:16px;margin:15px 0;line-height:1.8}.hero-copy>p.muted{font-size:14px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:12px 19px;background:var(--accent);color:#09090c;font-size:12px;font-weight:700;border:1px solid var(--accent);border-radius:5px;transition:transform .2s,background .2s;box-shadow:0 8px 25px #ff405017}.button:hover{transform:translateY(-3px);background:#ff6875}.button.secondary{background:#19151b;color:var(--text);border-color:#45333d;box-shadow:none}.availability{font:10px 'Courier New',monospace;color:var(--muted);margin-top:27px}.hero-illustration{position:relative;background:radial-gradient(ellipse,#ff40500c,transparent 70%)}.hero-illustration img{object-fit:contain;height:auto;filter:drop-shadow(0 25px 24px #0005)}.studio-label,.studio-caption{display:flex;justify-content:space-between;align-items:center;font:9px 'Courier New',monospace;letter-spacing:1px;color:#8c808e}.studio-label{padding:14px 0;border-top:1px solid var(--line)}.studio-caption{padding:14px 0;border-bottom:1px solid var(--line);letter-spacing:0}.studio-caption .accent{font-size:18px}.pixel-dot{width:8px;height:8px;background:var(--accent)}.section{padding-top:60px;padding-bottom:60px}.about-panel{display:grid;grid-template-columns:1.6fr 1fr;gap:8%;background:linear-gradient(115deg,#23151c,#131216 70%);padding:54px;border:1px solid #73333d;box-shadow:7px 7px 0 #ff40500d;position:relative}.about-panel:before{content:'';position:absolute;inset:10px;border:1px solid #ff40500c;pointer-events:none}.about-panel h2{font-size:36px;margin-bottom:23px}.about-panel p{font-size:14px;margin-bottom:17px;color:#c7c0c7}.text-link{display:inline-flex;gap:20px;align-items:center;background:transparent;padding:0;color:var(--accent);font-size:12px;font-weight:700}.text-link:hover{color:#ff8791}.about-panel .text-link{margin-top:13px}.highlights{display:grid;gap:16px;align-content:center}.highlights>div{border-left:3px solid var(--accent);padding:19px 22px;background:#ffffff04}.highlights strong{display:block;font-size:24px;line-height:1.3;color:var(--accent);font-weight:600;letter-spacing:-.6px}.highlights span{font-size:11px;color:#b7aeb8;display:block;margin-top:5px}.section-heading{margin-bottom:35px}.section-heading .eyebrow{margin-bottom:11px}.section-heading>p{color:var(--muted);font-size:14px;margin-top:16px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service{position:relative;background:var(--panel);border:1px solid var(--line);padding:29px;transition:transform .3s,border-color .3s;display:flex;flex-direction:column;align-items:start}.service:hover{border-color:#94424c;transform:translateY(-4px)}.service-icon{font:25px/1.3 'Courier New',monospace;color:var(--accent);margin-bottom:30px}.service-index{position:absolute;right:24px;top:25px;font:10px 'Courier New',monospace;color:#7d6b78}.service h3{font-size:19px;margin-bottom:14px}.service p{font-size:13px;color:var(--muted);margin-bottom:25px}.service .text-link{margin-top:auto;font-size:11px}.process{background:none}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.process-grid article{padding-top:24px;border-top:1px solid #63303a}.process-grid article>span{display:inline-grid;place-items:center;width:33px;height:33px;border:1px solid #72323e;background:#201319;font:11px 'Courier New',monospace;color:var(--accent);margin-bottom:21px}.process-grid h3{font-size:18px;margin-bottom:12px}.process-grid p{color:var(--muted);font-size:13px}.artwork-note{display:block;margin-top:13px;font-size:10px;color:#958992}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.project{border:1px solid var(--line);background:var(--panel);padding:12px 12px 22px;min-width:0;transition:border-color .3s}.project:hover{border-color:#73333d}.project:last-child{grid-column:auto}.project-button{background:transparent;padding:0;width:100%;text-align:left}.project-visual{aspect-ratio:1.8;overflow:hidden;position:relative;background:#201215}.project-visual img{height:100%;transition:transform .7s,filter .7s}.project-button:hover img{transform:scale(1.045)}.project-number{position:absolute;top:13px;left:13px;padding:3px 8px;background:#09090caa;font:10px/1.5 'Courier New',monospace}.project-arrow{position:absolute;right:13px;bottom:13px;border:1px solid #ffffff40;background:#111a;padding:3px 12px;font-size:22px;color:white}.project-button:hover .project-arrow{background:var(--accent);color:#09090c}.project-meta{display:flex;justify-content:space-between;gap:10px;padding:19px 10px 10px;font:9px/1.5 'Courier New',monospace;color:var(--muted);text-transform:uppercase}.project h3{padding:0 10px;font-family:var(--display);font-size:25px;letter-spacing:-.8px}.project p{padding:0 10px;font-size:13px;color:var(--muted);margin:14px 0}.tags{display:flex;flex-wrap:wrap;gap:7px;font-size:9px;color:#c1b5c0}.tags span{padding:4px 9px;background:#ffffff04;border:1px solid #ffffff10}.project .tags{padding:0 10px}.feature-panel{display:grid;grid-template-columns:1.15fr 1fr;border:1px solid var(--line);background:#161115}.feature-image{display:block;position:relative;min-height:360px;padding:0;background:#201215;overflow:hidden}.feature-image img{height:100%;position:absolute;inset:0;transition:transform .6s}.feature-image:hover img{transform:scale(1.04)}.feature-copy{padding:40px;align-self:center}.feature-copy h2{font-size:37px;margin-bottom:19px}.feature-copy p{font-size:14px;color:var(--muted);margin-bottom:22px}.feature-copy .text-link{margin-top:26px}.image-link{position:absolute;bottom:20px;left:20px;padding:8px 14px;background:#09090ce0;font-size:11px;border:1px solid #ffffff30}.experience-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.experience-layout h2{font-size:36px;margin-bottom:21px}.experience-layout>div>p{font-size:14px;margin-bottom:23px}.experience-item{padding:25px 0;border-top:1px solid var(--line)}.experience-item:first-child{padding-top:0;border-top:0}.experience-item .eyebrow{font-size:9px;color:var(--accent);margin-bottom:13px}.experience-item h3{font-size:21px}.experience-item .company{font-size:13px;margin:7px 0 15px;color:#d3c7cf}.experience-item p:last-child{font-size:13px;color:var(--muted)}.skills{display:flex;flex-wrap:wrap;gap:12px}.skills>span{padding:12px 20px;border:1px solid var(--line);background:var(--panel);font-size:13px;transition:border-color .3s,color .3s}.skills>span:hover{color:var(--accent);border-color:var(--accent)}.contact-panel{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:50px;background:linear-gradient(120deg,#21141c,#111115);border:1px solid #68303b}.contact h2{font-size:clamp(32px,4vw,50px);margin-bottom:22px}.contact-intro>p{color:var(--muted);font-size:14px}.email{display:inline-block;font-size:18px;margin:25px 0 18px}.socials{display:flex;gap:21px;flex-wrap:wrap;font-size:11px}.contact-pixel{font:bold 20px 'Courier New',monospace;letter-spacing:3px;color:#77414d;margin-top:50px}.contact-pixel span{color:var(--accent)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:11px;font-weight:600;color:#d2c6ce}input,textarea{width:100%;display:block;border:1px solid #44333f;color:var(--text);background:#0a090d;padding:12px 13px;margin:8px 0 21px;border-radius:4px;font-size:12px;resize:vertical}input::placeholder,textarea::placeholder{color:#857984}input:focus,textarea:focus{outline:1px solid var(--accent);border-color:var(--accent)}.submit{width:100%;padding:13px 17px;background:var(--accent);color:#09090c;font-size:12px;font-weight:bold;display:flex;justify-content:space-between;border-radius:4px}.submit:hover{background:#ff6875}#form-status{font-size:12px;margin-top:14px;color:#c1b5bf}.honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}footer{width:min(1180px,90%);margin:30px auto 0;padding:35px 0 20px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:30px}footer .eyebrow{font-size:8px;color:var(--muted);margin:10px 0}.footer-socials{display:flex;align-items:center;gap:22px;font-size:11px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;width:100%;font-size:10px;color:var(--muted)}dialog{border:0;color:var(--text);background:var(--bg);max-width:none;max-height:none}dialog::backdrop{background:#09090ce0;backdrop-filter:blur(10px)}dialog[open]{animation:entrance .25s ease}.close{position:sticky;top:15px;float:right;z-index:3;background:#161115;border:1px solid #58414e;width:43px;height:43px;font-size:18px}.menu{inset:0;width:100%;height:100%;padding:55px 7%}.menu>.eyebrow{margin-top:55px;color:var(--accent)}.menu nav{display:grid;gap:20px;margin:45px 0}.menu nav a{font-family:var(--display);font-size:clamp(32px,6vw,70px);line-height:1.2}.menu nav a:hover{color:var(--accent)}.menu p{color:var(--muted)}.project-modal{inset:0;width:100%;height:100%;padding:25px max(5%,calc((100vw - 1100px)/2)) 70px}.modal-top{padding-top:65px}.modal-top h2{margin:15px 0 30px;font-size:clamp(36px,6vw,75px)}.modal-media{width:100%;max-height:65vh;aspect-ratio:16/9;object-fit:cover;background:#201215}.modal-description{font-size:21px;margin:30px 0;max-width:70ch}.modal-data{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin:30px 0 40px}.modal-data dt{font-size:10px;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.modal-data dd{margin:0;font-size:13px}.modal-responsibilities{padding-left:20px;color:var(--muted)}.modal-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.empty-gallery{font-size:12px;color:var(--muted);margin-top:25px}.cursor{display:none!important}.notice{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--accent);color:#09090c;padding:15px 25px;z-index:60;font-size:12px;display:none;max-width:90vw;border-radius:4px}.notice.visible{display:block}.skip{position:fixed;top:-100px;left:20px;background:var(--accent);color:#000;z-index:100;padding:10px}.skip:focus{top:10px}.noscript{padding:30px}.reveal{transition:opacity .6s,transform .6s}.reveal.pending{opacity:0;transform:translateY(20px)}.feature-image>img,.project-visual img[src*="city-creature"],.modal-media[src*="city-creature"]{filter:hue-rotate(280deg) saturate(.85)}@keyframes entrance{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.hero-copy{animation:entrance .6s both}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;transform:none}}

/* Fixed social links, kept in the outer gutter away from page content. */
.social-rail{position:fixed;right:8px;bottom:28px;z-index:15;display:flex;flex-direction:column;gap:5px}
.social-rail>a{position:relative;width:44px;height:44px;display:grid;place-items:center;color:var(--accent);border-radius:7px;transition:color .2s,background .2s,transform .2s}
.social-rail>a:hover,.social-rail>a:focus-visible{color:#ff8791;background:#ff405012;transform:translateX(-3px)}
.social-rail svg{display:block}.social-tooltip{position:absolute;right:51px;top:50%;transform:translateY(-50%);padding:5px 9px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--text);font-size:11px;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s}
.social-rail>a:hover .social-tooltip,.social-rail>a:focus-visible .social-tooltip{opacity:1;visibility:visible}

.email{max-width:100%;overflow-wrap:anywhere}

/* Published Games Section */
.published-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;width:100%}
.published-card{background:var(--panel);border:1px solid var(--line);padding:28px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .3s,border-color .3s,box-shadow .3s;position:relative;overflow:hidden;width:100%;box-sizing:border-box}
.published-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),#ff8791);opacity:0;transition:opacity .3s}
.published-card:hover{border-color:#94424c;transform:translateY(-5px);box-shadow:0 20px 40px #ff405015}
.published-card:hover::before{opacity:1}
.published-icon-wrap{width:96px;height:96px;border-radius:20px;overflow:hidden;box-shadow:0 8px 25px #0004;margin-bottom:20px;flex-shrink:0;border:2px solid #ffffff10}
.published-icon{width:100%;height:100%;object-fit:cover;display:block}
.published-info{display:flex;flex-direction:column;align-items:center;flex:1;width:100%}
.published-info .eyebrow{font-size:9px;color:var(--accent);margin-bottom:10px}
.published-info h3{font-size:20px;margin-bottom:12px;letter-spacing:-.4px;overflow-wrap:anywhere;word-break:break-word}
.published-info p{font-size:13px;color:var(--muted);margin-bottom:18px;max-width:38ch;line-height:1.7;overflow-wrap:anywhere}
.published-info .tags{justify-content:center;margin-bottom:20px;flex-wrap:wrap}
.playstore-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:11px 20px;background:linear-gradient(135deg,#01875f,#34a853);color:#fff;font-size:12px;font-weight:700;border-radius:6px;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 15px #01875f30;margin-top:auto;width:100%;max-width:260px;box-sizing:border-box}
.playstore-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #01875f40}
.playstore-btn svg{flex-shrink:0}
