:root{--black: #000;--white: #fff;--ink: rgba(255, 255, 255, .9);--muted: rgba(255, 255, 255, .68);--soft: rgba(255, 255, 255, .1);--softer: rgba(255, 255, 255, .06);--border-color: rgba(255, 255, 255, .26);--border-strong: rgba(255, 255, 255, .44);--green: #009739;--yellow: #fedd00;--blue: #012169;--page-pad: 56px;--shell: 1180px;--display: "Space Grotesk", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--ease: cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box}*,*:before,*:after{-webkit-tap-highlight-color:transparent}html{min-height:100%;background:var(--black);color:var(--white);scroll-padding-top:92px}body{min-height:100vh;margin:0;overflow-x:hidden;background:var(--black);color:var(--white);font-family:var(--mono);font-size:16px;line-height:1.6}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 20% 12%,rgba(255,255,255,.08),transparent 24rem),radial-gradient(circle at 82% 18%,rgba(254,221,0,.08),transparent 20rem),linear-gradient(180deg,rgba(255,255,255,.035),transparent 42rem)}a{color:inherit;text-decoration:none}a,button{cursor:pointer}button{border:0;padding:0;background:transparent;color:inherit;font:inherit}svg{display:block}::selection{background:var(--white);color:var(--black)}#halftone-field{position:fixed;inset:0;z-index:0;width:100vw;height:100vh;pointer-events:none;background:var(--black);user-select:none}.ambient-easter-eggs,.click-faces{position:fixed;inset:0;pointer-events:none;user-select:none}.ambient-easter-eggs{z-index:4}.click-faces{z-index:120;overflow:hidden}.ambient-face,.click-face,.face-mark,.identity-name-face{background:var(--white);mask-image:url(/rosto_vetorial_sem_fundo.svg);mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-image:url(/rosto_vetorial_sem_fundo.svg);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}.ambient-face,.click-face{position:absolute;min-height:0;border:0;padding:0;aspect-ratio:4 / 5;mix-blend-mode:difference;pointer-events:auto;filter:contrast(180%)}.brand-mark.face-mark,.hero-face-mark.face-mark,.identity-name-face{cursor:pointer}.ambient-face{left:var(--ambient-face-x, 50vw);top:var(--ambient-face-y, 50vh);width:58px;opacity:.34;transform:translate(-50%,-50%) rotate(var(--ambient-face-rotate, 15deg)) scale(1);animation:ambient-face-pop 1.2s steps(1,end) forwards,hero-face-tilt-centered 1.2s steps(1,end) infinite}.click-face{left:var(--click-face-x, 0px);top:var(--click-face-y, 0px);width:42px;opacity:.9;transform:translate(-50%,-50%) rotate(var(--click-face-rotate, 15deg)) scale(.86);animation:click-face-pop 2.2s steps(1,end) forwards,hero-face-tilt-centered 1.2s steps(1,end) infinite}@keyframes ambient-face-pop{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--ambient-face-rotate, 15deg)) scale(.76)}12%,82%{opacity:.34;transform:translate(-50%,-50%) rotate(var(--ambient-face-rotate, 15deg)) scale(1)}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--ambient-face-rotate, 15deg)) scale(.86)}}@keyframes click-face-pop{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--click-face-rotate, 15deg)) scale(.62)}12%{opacity:.9;transform:translate(-50%,-50%) rotate(var(--click-face-rotate, 15deg)) scale(1)}78%{opacity:.9}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--click-face-rotate, 15deg)) scale(.84)}}@keyframes hero-face-tilt-centered{0%,49.999%{transform:translate(-50%,-50%) rotate(15deg)}50%,to{transform:translate(-50%,-50%) rotate(-15deg)}}@keyframes hero-face-tilt{0%,49.999%{transform:rotate(15deg)}50%,to{transform:rotate(-15deg)}}.page{position:relative;z-index:1;isolation:isolate}.grain{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.08;mix-blend-mode:screen;background-image:radial-gradient(circle at center,rgba(255,255,255,.18) 0 .7px,transparent .9px);background-size:18px 18px}.shell{width:min(var(--shell),calc(100vw - (var(--page-pad) * 2)));margin-inline:auto}.skip-link{position:fixed;top:12px;left:12px;z-index:10000;padding:10px 12px;background:var(--white);color:var(--black);font-size:12px;font-weight:700;text-transform:uppercase;transform:translateY(-160%)}.skip-link:focus-visible{transform:translateY(0);outline:2px solid var(--yellow);outline-offset:3px}.nav{position:fixed;top:16px;left:50%;z-index:80;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;width:min(var(--shell),calc(100vw - 28px));min-height:54px;border:1px solid var(--border-color);background:#000000d1;backdrop-filter:blur(18px) contrast(140%);opacity:0;transform:translate(-50%) translateY(-10px);transition:opacity .44s var(--ease),transform .62s var(--ease),border-color .24s ease}html.is-ready .nav{opacity:1;transform:translate(-50%) translateY(0)}.nav__brand,.nav__links a,.nav__toggle{position:relative;display:inline-flex;align-items:center;min-height:54px;color:var(--white);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.nav__brand{gap:10px;padding:0 16px;border-right:1px solid var(--border-color)}.brand-mark{display:inline-block;flex:0 0 auto;width:24px;aspect-ratio:4 / 5;border:0;color:transparent}.nav__links{display:flex;justify-content:flex-end;min-width:0}.nav__links a{padding:0 16px;border-left:1px solid var(--border-color)}.nav__links a:after,.button:after,.card__link:after,.contact__action:after{content:"";position:absolute;right:14px;bottom:11px;left:14px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:0 50%;transition:transform .24s ease}.nav__links a:hover,.nav__brand:hover{background:#ffffff0b}.nav__links a:hover:after,.nav__links a:focus-visible:after{transform:scaleX(1)}.nav__toggle{display:none;width:54px;justify-content:center;border-left:1px solid var(--border-color)}.nav__toggle span{position:absolute;width:20px;height:2px;background:currentColor;transition:transform .24s ease}.nav__toggle span:first-child{transform:translateY(-4px)}.nav__toggle span:last-child{transform:translateY(4px)}.nav.is-open .nav__toggle span:first-child{transform:rotate(45deg)}.nav.is-open .nav__toggle span:last-child{transform:rotate(-45deg)}section{position:relative;overflow:clip;padding:112px 0;border-bottom:1px solid var(--border-color)}section:before{content:"";position:absolute;inset:0;z-index:-1;opacity:var(--dots, .035);pointer-events:none;background-image:radial-gradient(circle at center,#fff 0 .85px,transparent 1px);background-size:var(--dot-size, 14px) var(--dot-size, 14px);mask-image:linear-gradient(115deg,transparent,#000 20%,#000 76%,transparent);-webkit-mask-image:linear-gradient(115deg,transparent,#000 20%,#000 76%,transparent)}.hero{display:grid;align-items:center;min-height:90svh;padding-top:124px;padding-bottom:42px;--dots: .05;--dot-size: 16px}.projects{padding-top:72px}.hero__layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:64px;align-items:center}.hero__content{max-width:820px}.role-line,.section-tag,.card__label,.card__status,.game-card__role-label,.game-card__period,.game-metrics dt,.game-stat__label,.service__label,.contact__label,.identity-panel__label,.identity-panel__status,.contact-role,.contact__url,.contact__action{margin:0;font-size:12px;font-weight:700;letter-spacing:.1em;line-height:1.35;text-transform:uppercase}.role-line{display:inline-flex;max-width:100%;padding-bottom:10px;border-bottom:2px solid var(--white);color:var(--ink)}h1,h2,h3{margin:0;font-family:var(--display);font-weight:900;letter-spacing:0;text-transform:uppercase}h1{max-width:15.5ch;margin-top:24px;font-size:4.55rem;line-height:.97;text-wrap:balance}.hero__lead{max-width:760px;margin:24px 0 0;color:var(--ink);font-size:1.18rem;line-height:1.7}.hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid var(--border-strong);background:#000000bd;color:var(--white);isolation:isolate;overflow:hidden;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:transform .24s var(--ease),border-color .24s ease,background-color .24s ease,color .24s ease,box-shadow .24s ease}.button svg,.card__link svg,.contact__action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:square;stroke-linejoin:miter;transition:transform .24s ease}.button:hover,.button:focus-visible{border-color:var(--white);background:#ffffff12;transform:translateY(-2px);box-shadow:0 8px #ffffff1a}.button:hover svg,.button:focus-visible svg,.card:hover .card__link svg,.card:focus-visible .card__link svg,.contact-item:hover .contact__action svg,.contact-item:focus-visible .contact__action svg{transform:translate(3px)}.button:hover:after,.button:focus-visible:after{transform:scaleX(1)}.button:active,.card:active,.contact-item:active{transform:translateY(1px);box-shadow:0 3px #ffffff29}.button--primary{background:var(--white);color:var(--black);border-color:var(--white)}.button--primary:hover,.button--primary:focus-visible{background:#d8be00;color:var(--black);border-color:#d8be00}.button--ghost{border-color:#ffffff4d}.hero__highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:30px 0 0;padding:0;list-style:none;border:1px solid var(--border-color);background:var(--border-color)}.hero-highlight{min-height:78px;padding:16px;background:radial-gradient(circle at center,rgba(255,255,255,.1) 0 .85px,transparent 1px) 0 0 / 9px 9px,#000000db;color:var(--ink);font-size:12px;font-weight:800;letter-spacing:.08em;line-height:1.45;text-transform:uppercase}.identity-panel{position:relative;display:grid;gap:24px;min-height:480px;padding:24px;border:1px solid var(--border-color);background:linear-gradient(135deg,rgba(255,255,255,.1),transparent 34%),radial-gradient(circle at 26% 24%,rgba(255,255,255,.18),transparent 18rem),#000000c7;overflow:hidden;isolation:isolate}.identity-panel:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.18;background-image:radial-gradient(circle at center,#fff 0 1px,transparent 1.12px);background-size:8px 8px}.identity-panel__top{display:grid;gap:8px}.identity-panel__label{width:fit-content;color:var(--black);background:var(--white);padding:8px 10px}.identity-panel__status{color:var(--muted);text-transform:none;letter-spacing:0;font-weight:600}.identity-panel__face{display:grid;place-items:center;min-height:180px;border:1px solid var(--border-color);background:#ffffff0b}.identity-panel__face .identity-name-face{width:132px;aspect-ratio:4 / 5;mix-blend-mode:difference;animation:hero-face-tilt 2.8s steps(1,end) infinite}.hero-face-mark{display:inline-block;width:132px;aspect-ratio:4 / 5;animation:hero-face-tilt 2.8s steps(1,end) infinite}.identity-panel__facts{display:grid;gap:1px;margin:0;background:var(--border-color);border:1px solid var(--border-color)}.identity-panel__facts div{display:grid;gap:4px;padding:14px;background:#000000d6}.identity-panel__facts dt,.identity-panel__facts dd{margin:0}.identity-panel__facts dt{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.identity-panel__facts dd{color:var(--white);font-size:14px;font-weight:700}.section-head{display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,.75fr);gap:56px;align-items:end;margin-bottom:34px}.section-head>div{display:grid;gap:18px}.section-tag{display:inline-flex;width:fit-content;padding:8px 10px;background:var(--white);color:var(--black)}h2{max-width:760px;font-size:3.65rem;line-height:.98;text-wrap:balance}.section-head p{max-width:560px;margin:0;color:var(--muted);line-height:1.75}.project-grid,.game-grid,.stack-grid,.services-grid,.contact-grid{display:grid;gap:1px;border:1px solid var(--border-color);background:var(--border-color)}.project-grid,.game-grid,.stack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services-grid,.contact-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.card,.service,.contact-item,.stack-group,.game-stat,.game-placeholder{position:relative;min-width:0;overflow:hidden;isolation:isolate;background:radial-gradient(circle at center,rgba(255,255,255,.075) 0 .85px,transparent 1px) 0 0 / 10px 10px,#000000c7}.card,.contact-item{transition:transform .26s var(--ease),border-color .24s ease,background-color .24s ease,box-shadow .24s ease,filter .24s ease}.card{display:grid;grid-template-rows:auto 1fr auto;min-height:392px;padding:24px}.card:hover,.card:focus-visible,.contact-item:hover,.contact-item:focus-visible{z-index:2;background-color:#ffffff0b;box-shadow:0 9px #ffffff1a,inset 0 0 0 1px #ffffffc7;transform:translateY(-5px)}.card:focus-visible,.contact-item:focus-visible,.button:focus-visible,.nav a:focus-visible,.nav__toggle:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}.card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.card__label,.service__label,.contact__label,.card__status{color:var(--muted)}.card__index{color:var(--white);font-family:var(--display);font-size:3.2rem;font-weight:900;line-height:.8}.card__body{display:grid;align-content:end;gap:16px;margin-top:54px}.card h3{font-size:2.45rem;line-height:.98}.card p,.game-stat dd,.service p,.stack-group p,.contact-item p{margin:0;color:var(--muted)}.card__footer{display:grid;gap:20px;margin-top:30px}.tag-list,.stack-group__items{display:flex;flex-wrap:wrap;gap:8px}.pill,.tag{display:inline-flex;align-items:center;min-height:30px;border:1px solid rgba(255,255,255,.24);background:#000000c7;color:var(--white);font-size:12px;font-weight:700;line-height:1.2}.pill{padding:0 10px;letter-spacing:.06em;text-transform:uppercase}.card__link,.contact__action{position:relative;display:inline-flex;align-items:center;gap:8px;width:fit-content;color:var(--white)}.card__link:after,.contact__action:after{right:0;bottom:-4px;left:0}.card:hover .card__link:after,.card:focus-visible .card__link:after,.contact-item:hover .contact__action:after,.contact-item:focus-visible .contact__action:after{transform:scaleX(1)}.games{--dots: .042;--dot-size: 12px}.game-card,.game-placeholder{display:grid;grid-template-rows:auto 1fr;min-height:612px;padding:0}.game-card__media{position:relative;display:grid;min-height:0;aspect-ratio:16 / 9;overflow:hidden;border-bottom:1px solid var(--border-color);--game-halftone-dot: 1.35px;--game-halftone-gap: 4.5px;background:linear-gradient(135deg,rgba(255,255,255,.09),transparent 42%),radial-gradient(circle at center,rgba(255,255,255,.12) 0 .8px,transparent 1px) 0 0 / 9px 9px,#000000e0}.game-card__media:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:var(--white);opacity:.3;mix-blend-mode:overlay;mask-image:radial-gradient(circle at center,#000 0 var(--game-halftone-dot),transparent calc(var(--game-halftone-dot) + .5px));mask-repeat:repeat;mask-size:var(--game-halftone-gap) var(--game-halftone-gap);-webkit-mask-image:radial-gradient(circle at center,#000 0 var(--game-halftone-dot),transparent calc(var(--game-halftone-dot) + .5px));-webkit-mask-repeat:repeat;-webkit-mask-size:var(--game-halftone-gap) var(--game-halftone-gap)}.game-card__media img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(112%);transform:scale(1);mask-image:radial-gradient(circle at center,#000 0 1.65px,rgba(0,0,0,.72) 1.95px,transparent 2.35px);mask-repeat:repeat;mask-size:4.5px 4.5px;-webkit-mask-image:radial-gradient(circle at center,#000 0 1.65px,rgba(0,0,0,.72) 1.95px,transparent 2.35px);-webkit-mask-repeat:repeat;-webkit-mask-size:4.5px 4.5px;transition:filter .28s ease,transform .36s var(--ease)}.game-card:hover .game-card__media img,.game-card:focus-visible .game-card__media img{filter:grayscale(.25) contrast(108%);transform:scale(1.025)}.game-card__fallback{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:10px;padding:22px;text-align:center;isolation:isolate;background:radial-gradient(circle at 22% 20%,rgba(254,221,0,.14),transparent 12rem),radial-gradient(circle at 78% 66%,rgba(0,151,57,.14),transparent 12rem),radial-gradient(circle at center,rgba(255,255,255,.1) 0 .85px,transparent 1px) 0 0 / 8px 8px,#000000e6}.game-card__fallback:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:var(--white);opacity:.24;mask-image:radial-gradient(circle at center,#000 0 1.4px,transparent 1.92px);mask-repeat:repeat;mask-size:5px 5px;-webkit-mask-image:radial-gradient(circle at center,#000 0 1.4px,transparent 1.92px);-webkit-mask-repeat:repeat;-webkit-mask-size:5px 5px}.game-card__fallback>*{position:relative;z-index:1}.game-card__fallback[hidden]{display:none}.game-card__media--missing .game-card__fallback{position:relative;min-height:100%}.game-card__fallback-mark{font-family:var(--display);font-size:2rem;font-weight:900;line-height:1;text-transform:uppercase}.game-card__fallback-label,.game-card__fallback-note{max-width:32ch;color:var(--muted);font-size:12px;font-weight:700;line-height:1.45}.game-card__fallback-label{color:var(--white);letter-spacing:.08em;text-transform:uppercase}.game-card__content{display:grid;grid-template-rows:auto 1fr auto;gap:24px;min-height:390px;padding:24px}.game-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;min-width:0}.game-card__role{display:grid;gap:8px;min-width:0}.game-card__role-label,.game-card__period,.game-metrics dt,.game-stat__label{color:var(--muted)}.game-card__role strong{color:var(--white);font-size:14px;line-height:1.45}.game-card__period{max-width:24ch;text-align:right}.game-card__body{display:grid;align-content:start;gap:16px}.game-card h3,.game-placeholder h3{font-size:2.15rem;line-height:1}.game-card__description{line-height:1.65}.game-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:4px 0 0;border:1px solid var(--border-color);background:var(--border-color)}.game-metrics div{min-width:0;padding:14px;background:#000000d6}.game-metrics dt,.game-stat__label{margin:0}.game-metrics dd,.game-stat__value{margin:6px 0 0;color:var(--white);font-family:var(--display);font-weight:900;line-height:.98;text-transform:uppercase;overflow-wrap:anywhere}.game-metrics dd{font-size:1.55rem}.game-card .card__footer{margin-top:0}.game-placeholder{color:var(--white)}.game-placeholder .game-card__fallback{background:radial-gradient(circle at 50% 22%,rgba(255,255,255,.1),transparent 12rem),radial-gradient(circle at center,rgba(255,255,255,.09) 0 .85px,transparent 1px) 0 0 / 8px 8px,#000000db}.game-placeholder .game-card__fallback:before{opacity:.34;mask-size:4px 4px;-webkit-mask-size:4px 4px}.game-placeholder .game-card__fallback-mark,.game-placeholder .game-card__fallback-label,.game-placeholder h3{color:#ffffffb8}.game-placeholder .game-card__content{align-content:space-between}.game-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:1px 0 0;padding:0;border:1px solid var(--border-color);border-top:0;background:var(--border-color)}.game-stat{display:grid;align-content:space-between;min-height:128px;padding:18px}.game-stat__value{font-size:2rem}.game-stat--roles .game-stat__value{font-family:var(--mono);font-size:.92rem;line-height:1.45;letter-spacing:.04em}.game-metrics dd[data-missing=true],.game-stat__value[data-missing=true]{color:var(--muted)}.stack-group{display:grid;grid-template-rows:auto 1fr;gap:28px;min-height:292px;padding:24px}.stack-group__head{display:grid;gap:12px}.stack-group h3{font-size:2rem;line-height:1}.stack-group__items{align-content:end;align-items:flex-end}.tag.skill{min-height:40px;padding:0 12px;font-family:var(--display);font-size:1.05rem;font-weight:900;text-transform:uppercase}.service{min-height:320px;padding:24px}.service h3{margin-top:86px;font-size:2rem;line-height:1}.service p{margin-top:18px;line-height:1.65}.contact-item{display:flex;min-height:300px;padding:22px;flex-direction:column;justify-content:space-between}.social-icon{display:grid;place-items:center;width:86px;height:86px;color:var(--white);transition:color .24s ease,transform .24s var(--ease)}.social-icon svg{width:100%;height:100%;fill:currentColor;mask-image:radial-gradient(circle at center,#000 0 48%,transparent 56%);mask-size:4px 4px;mask-repeat:repeat;-webkit-mask-image:radial-gradient(circle at center,#000 0 48%,transparent 56%);-webkit-mask-size:4px 4px;-webkit-mask-repeat:repeat}.social-card:nth-child(1):hover .social-icon,.social-card:nth-child(1):focus-visible .social-icon{color:var(--white)}.social-card:nth-child(2):hover .social-icon,.social-card:nth-child(2):focus-visible .social-icon{color:#5865f2}.social-card:nth-child(3):hover .social-icon,.social-card:nth-child(3):focus-visible .social-icon{color:#e2231a}.contact-item:hover .social-icon,.contact-item:focus-visible .social-icon{transform:translateY(-3px)}.social-name{margin-top:18px;font-family:var(--display);font-size:2rem;font-weight:900;line-height:.98;text-transform:uppercase}.contact__url{color:var(--muted);overflow-wrap:anywhere}.identity-card{background:radial-gradient(circle at center,rgba(254,221,0,.11) 0 .85px,transparent 1px) 0 0 / 11px 11px,#000000c7}.contact-name{display:inline-flex;align-items:center;gap:10px;max-width:100%;font-size:1.55rem;line-height:1.05;text-transform:none}.contact-name .identity-name-face{display:inline-block;flex:0 0 auto;width:30px;aspect-ratio:4 / 5;mix-blend-mode:difference;animation:hero-face-tilt 2.8s steps(1,end) infinite}.contact-role{margin:10px 0 0;color:var(--muted)}footer{position:relative;padding:24px 0 34px}.footer__inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.ink-sweep-layer{position:absolute;inset:-30%;z-index:0;overflow:hidden;opacity:0;pointer-events:none;color:var(--white);background-image:radial-gradient(circle at center,#fff 0 .9px,transparent 1px);background-size:5px 5px;font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.14em;line-height:1.4;white-space:pre;mix-blend-mode:difference;will-change:opacity,transform}.card .ink-sweep-layer{font-size:13px;letter-spacing:.22em;line-height:1.55;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 30%,#000 48%,rgba(0,0,0,.12) 66%,transparent 100%);mask-size:100% 100%;mask-position:50% 50%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 30%,#000 48%,rgba(0,0,0,.12) 66%,transparent 100%);-webkit-mask-size:100% 100%;-webkit-mask-position:50% 50%;contain:layout paint style;backface-visibility:hidden}.button .ink-sweep-layer{inset:0}.button>:not(.ink-sweep-layer),.card>:not(.ink-sweep-layer),.service>:not(.ink-sweep-layer),.contact-item>:not(.ink-sweep-layer),.stack-group>:not(.ink-sweep-layer),.game-stat>:not(.ink-sweep-layer),.game-placeholder>:not(.ink-sweep-layer){position:relative;z-index:1}.button:after,.card__link:after,.contact__action:after{z-index:2}.ink-sweep-layer--symbols,.ink-sweep-layer--word{background-image:none}.card .ink-sweep-layer--symbols{font-size:11px;letter-spacing:0;line-height:1.36}.card .ink-sweep-layer--word{font-size:10px;letter-spacing:.12em;line-height:1.36}.ink-sweep-layer--canvas{background:none}.card .ink-sweep-layer--canvas{mask-image:none;-webkit-mask-image:none;transform-origin:50% 50%}.is-ink-hover{filter:contrast(112%) brightness(96%)}.is-ink-press{transform:translateY(-1px) scale(.99)}.reveal .card,.reveal .service,.reveal .contact-item,.reveal .stack-group,.reveal .game-stat,.reveal .game-placeholder,.reveal .tag,.reveal .hero-highlight,.reveal-item{opacity:0;transform:translate3d(0,18px,0) scale(.98);transition:opacity .48s var(--ease),transform .72s var(--ease),filter .24s ease,box-shadow .24s ease}.reveal-item.is-visible{opacity:1;transform:translateZ(0) scale(1)}.reveal-item.is-visible:nth-child(2){transition-delay:35ms}.reveal-item.is-visible:nth-child(3){transition-delay:.07s}.reveal-item.is-visible:nth-child(4){transition-delay:.105s}.reveal-item.is-visible:nth-child(n+5){transition-delay:.14s}.card.reveal-item.is-visible:hover,.contact-item.reveal-item.is-visible:hover{transform:translateY(-5px)}@media(max-width:1180px){:root{--page-pad: 32px}h1{font-size:4.25rem}.hero__layout{grid-template-columns:minmax(0,1fr) 330px;gap:40px}h2{font-size:3.25rem}.services-grid,.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){:root{--page-pad: 24px}.hero{min-height:auto;padding-top:118px}.hero__layout,.section-head{grid-template-columns:1fr}.hero__content{max-width:100%}h1{max-width:12ch;font-size:3.4rem}.identity-panel{min-height:auto}.identity-panel__face{min-height:132px}.identity-panel__face .identity-name-face,.hero-face-mark{width:96px}.section-head{gap:18px}h2{font-size:2.75rem}.project-grid,.stack-grid{grid-template-columns:1fr}}@media(max-width:720px){:root{--page-pad: 18px}html{scroll-padding-top:76px}section{padding:72px 0}.nav{top:10px;grid-template-columns:minmax(0,1fr) auto;width:calc(100vw - 20px)}.nav__brand{min-width:0;border-right:0}.nav__brand span:last-child{overflow:hidden;text-overflow:ellipsis}.nav__toggle{display:inline-flex}.nav__links{position:fixed;inset:62px 10px auto;z-index:-1;display:grid;grid-template-columns:1fr;gap:1px;max-height:0;overflow:clip;background:var(--border-color);border:0;opacity:0;pointer-events:none;transform:translateY(-16px);transition:max-height .56s var(--ease),opacity .34s ease,transform .56s var(--ease)}.nav.is-open .nav__links{max-height:calc(100svh - 82px);opacity:1;pointer-events:auto;transform:translateY(0)}.nav__links a{min-height:58px;justify-content:space-between;padding:0 18px;border:1px solid var(--border-color);background:#000000e6;backdrop-filter:blur(18px) contrast(145%);font-size:13px}.nav__links a:before{content:"";width:6px;height:6px;background:currentColor}.hero{padding-top:102px;padding-bottom:58px}.role-line,.section-tag,.card__label,.card__status,.game-card__role-label,.game-card__period,.game-metrics dt,.game-stat__label,.service__label,.contact__label,.identity-panel__label,.identity-panel__status,.contact-role,.contact__url,.contact__action{font-size:11px}h1{max-width:100%;font-size:2.55rem;line-height:1}.hero__lead{font-size:1rem;line-height:1.65}.hero__actions{display:grid;grid-template-columns:1fr;gap:10px}.button{justify-content:space-between;min-height:52px;width:100%}.hero__highlights{grid-template-columns:1fr}.hero-highlight{min-height:58px}.identity-panel{padding:18px}h2{font-size:2.2rem;line-height:1.05}.section-head{margin-bottom:24px}.card{min-height:360px;padding:20px}.card__body{margin-top:44px}.card__index{font-size:2.6rem}.card h3{font-size:2rem}.game-grid,.services-grid,.contact-grid{grid-template-columns:1fr}.game-card,.game-placeholder{min-height:auto;padding:0}.game-card__content{min-height:auto;padding:20px}.game-card__top{display:grid}.game-card__period{max-width:100%;text-align:left}.game-card h3,.game-placeholder h3{font-size:1.9rem}.game-metrics,.game-summary{grid-template-columns:1fr}.game-summary{border-top:1px solid var(--border-color)}.game-stat{min-height:104px;padding:16px}.service{min-height:250px;padding:20px}.service h3{margin-top:54px;font-size:1.85rem}.stack-group{min-height:auto;padding:20px}.stack-group h3,.social-name{font-size:1.75rem}.tag.skill{min-height:38px;font-size:1rem}.contact-item{min-height:248px}.footer__inner{display:grid}}@media(max-width:380px){h1{font-size:2.25rem}h2{font-size:2rem}.nav__brand{padding-inline:12px}}@media(hover:none){.card:hover,.contact-item:hover,.button:hover{transform:none;box-shadow:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal .card,.reveal .service,.reveal .contact-item,.reveal .stack-group,.reveal .game-stat,.reveal .game-placeholder,.reveal .tag,.reveal .hero-highlight,.reveal-item{opacity:1;transform:none}}
