@font-face{font-family:GeistSans;src:url(../media/Geist_Variable-s.p.0mrjj4bg00-he.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:GeistSans Fallback;src:local(Arial);ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.0%;size-adjust:106.28%}.Ur3q_a_className{font-family:GeistSans,GeistSans Fallback}.Ur3q_a_variable{--font-geist-sans:"GeistSans", "GeistSans Fallback"}
*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.relative{position:relative}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.\!hidden{display:none!important}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.scroll-smooth{scroll-behavior:smooth}.border{border-width:1px}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page-bg:#fafafa;--page-text:#111;--muted-text:#555;--page-border:#e5e5e5;--surface:#fff;--surface-soft:#f1f1f1;--gh-0:#eee;--gh-1:#d5d5d5;--gh-2:#a3a3a3;--gh-3:#626262;--gh-4:#111}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page-bg:#0b0d10;--page-text:#f4f5f7;--muted-text:#a3a8b0;--page-border:#292d33;--surface:#15181c;--surface-soft:#1c2025;--gh-0:#181b20;--gh-1:#343940;--gh-2:#666c75;--gh-3:#a5abb3;--gh-4:#f4f5f7}*{box-sizing:border-box}html{background:var(--page-bg);scroll-padding-top:88px;overflow-x:clip}body{background:var(--page-bg);color:var(--page-text);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;overflow-x:clip}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{z-index:1000;background:var(--page-bg);color:var(--page-text);border:2px solid #2563eb;border-radius:5px;padding:10px 14px;font-size:11px;transition:transform .16s;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}main:focus{outline:none}@media (min-width:1024px){body{zoom:1.1}.portfolio-splash{zoom:.909091}}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline-offset:4px;outline:2px solid #2563eb}.page-shell,.nav-shell{width:min(900px,100% - 48px);margin-inline:auto}.site-header{z-index:50;height:78px;transition:all .22s;position:fixed;inset:0 0 auto}.site-header--scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fafafae0;border-bottom:1px solid #e5e5e5d9}.nav-shell{justify-content:space-between;align-items:center;height:100%;display:flex}.logo{letter-spacing:-1.2px;font-size:21px;font-weight:750}.logo span{color:#2563eb}.desktop-nav{align-items:center;gap:18px;font-size:12px;font-weight:500;display:flex}.desktop-nav a{padding:8px 0;position:relative}.desktop-nav a:after{content:"";background:#111;height:1px;transition:right .22s;position:absolute;bottom:2px;left:0;right:100%}.desktop-nav a:hover:after{right:0}.portfolio-version-switch{border:1px solid var(--page-border);background:var(--surface);border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex}.portfolio-version-switch a{min-width:30px;min-height:25px;color:var(--muted-text);border-radius:999px;justify-content:center;align-items:center;padding:3px 6px;font:10px/1 monospace;text-decoration:none;display:inline-flex}.portfolio-version-switch a[aria-current=page]{background:var(--page-text);color:var(--page-bg)}.desktop-nav .portfolio-version-switch a:after,.portfolio-version-switch--mobile{display:none}.menu-button{color:#111;background:0 0;border:0;padding:8px;display:none}.desktop-nav>.play-button{background:var(--surface);color:#111;height:34px;font:inherit;white-space:nowrap;cursor:pointer;border:1px solid #d8d8d8;border-radius:99px;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-weight:600;transition:color .18s,border-color .18s,background .18s,transform .18s;display:inline-flex}.desktop-nav>.play-button:after{display:none}.desktop-nav>.play-button:hover{color:#2563eb;border-color:#2563eb;transform:translateY(-1px)}.theme-toggle{width:29px;height:29px;color:inherit;cursor:pointer;background:0 0;border:1px solid #d8d8d8;border-radius:50%;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.theme-toggle__icon{place-items:center;transition:transform .26s cubic-bezier(.2,.8,.2,1);display:grid}.theme-toggle__icon svg{width:13px;height:13px}.theme-toggle:hover{color:#2563eb;border-color:#2563eb}.theme-toggle:hover .theme-toggle__icon{transform:rotate(18deg)scale(1.08)}.mobile-nav{display:none}.pixel-cat-companion{z-index:35;opacity:0;pointer-events:none;transform-origin:bottom;width:64px;height:64px;position:absolute;top:0;left:0}.pixel-cat-companion--ready{opacity:1}.pixel-cat-companion--dark{position:fixed}.pixel-cat-facing{transform-origin:50%;width:64px;height:64px;display:block}.pixel-cat-companion--facing-left .pixel-cat-facing{transform:scaleX(-1)}.pixel-cat-sprite{width:64px;height:64px;image-rendering:pixelated;background-image:url(/images/black-cat-atlas-v2.png);background-repeat:no-repeat;background-size:800% 800%;display:block}.pixel-cat-sprite--yarn,.pixel-cat-sprite--inspect{clip-path:inset(0 0 12px)}.pixel-cat-companion:after{content:"";background:#11111124;border-radius:50%;width:34px;height:3px;position:absolute;bottom:9px;left:15px}.pixel-cat-heart{z-index:2;color:#f06474;opacity:0;font-size:10px;position:absolute;top:1px;right:3px}.pixel-cat-zzz{z-index:2;color:#666;letter-spacing:-1px;opacity:0;font:8px/1 monospace;position:absolute;top:0;right:-1px}.pixel-cat-speech{z-index:4;color:#111;letter-spacing:.01em;opacity:0;transform-origin:0 100%;background:#fff;border:1px solid #111;border-radius:7px 7px 7px 2px;width:max-content;padding:5px 7px;font:8px/1 monospace;position:absolute;top:-18px;left:43px;transform:translateY(4px)scale(.92);box-shadow:0 6px 18px -12px #111c}.pixel-cat-speech:after{content:"";background:#fff;border:0 solid #111;border-width:0 0 1px 1px;width:7px;height:7px;position:absolute;bottom:-4px;left:8px;transform:rotate(-45deg)}.pixel-cat-companion--pose-idle .pixel-cat-speech{animation:.22s ease-out .26s forwards cat-speech-in}.pixel-cat-companion--facing-left .pixel-cat-speech{transform-origin:100% 100%;border-radius:7px 7px 2px;left:auto;right:43px}.pixel-cat-companion--facing-left .pixel-cat-speech:after{border-width:0 1px 1px 0;left:auto;right:8px;transform:rotate(45deg)}.pixel-cat-facing{z-index:2;position:relative}.pixel-cat-spotlight{z-index:34;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 88%,#ffda823d 0 24%,transparent 52%),conic-gradient(from 162deg at 50% 0,transparent 0 43%,#ffdf912e 45% 55%,transparent 57%);width:132px;height:148px;transition:opacity .28s;position:fixed;bottom:8px;right:8px}.pixel-cat-spotlight--visible{opacity:1;animation:3.5s ease-in-out infinite cat-spotlight}.pixel-cat-companion--jumping .pixel-cat-heart{animation:.95s ease-out cat-heart-pop}.pixel-cat-companion--pose-sleep .pixel-cat-zzz{animation:2s steps(3,end) infinite cat-zzz}.pixel-cat-companion--pose-airborne:after,.pixel-cat-companion--pose-fall:after{opacity:.35;width:19px;left:22px}.pixel-cat-companion--pose-land:after{width:42px;height:4px;left:11px}@keyframes cat-heart-pop{0%{opacity:0;transform:translateY(4px)scale(.5)}35%{opacity:1}to{opacity:0;transform:translateY(-8px)scale(1.15)}}@keyframes cat-zzz{0%{opacity:0;transform:translateY(3px)scale(.7)}35%,70%{opacity:1}to{opacity:0;transform:translate(7px,-8px)scale(1.1)}}@keyframes cat-speech-in{to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cat-spotlight{0%,to{opacity:.72}50%{opacity:1}}.game-overlay{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#11111194;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.game-dialog{background:#fafafa;border:1px solid #d9d9d9;border-radius:12px;width:min(590px,100%);max-height:calc(100dvh - 30px);padding:22px;overflow-y:auto;box-shadow:0 28px 80px -28px #000000a6}.game-header{justify-content:space-between;align-items:start;margin-bottom:14px;display:flex}.game-header span{color:#666;margin-bottom:5px;font:9px/1.2 monospace;display:block}.game-header h2{letter-spacing:-.045em;margin:0;font-size:24px}.game-header p{color:#666;text-transform:uppercase;letter-spacing:.08em;margin:3px 0 0;font:9px/1.2 monospace}.game-header__actions{gap:7px;display:flex}.game-header button{cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.runner-stats{color:#666;text-transform:uppercase;letter-spacing:.04em;border-block:1px solid #e5e5e5;grid-template-columns:repeat(3,1fr);padding:10px 2px;font-size:9px;display:grid}.runner-stats span:nth-child(2){text-align:center}.runner-stats span:last-child{text-align:right}.runner-stats b{color:#111;margin-left:7px;font:11px/1 monospace}.runner-stats span:last-child b{color:#2563eb}.runner-board{isolation:isolate;color:#111;cursor:pointer;touch-action:manipulation;text-align:left;background:#aee0f6;border:4px solid #111;border-radius:6px;width:100%;height:258px;margin:17px auto 14px;padding:0;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #1111111f}.runner-board:before{content:"";z-index:0;image-rendering:pixelated;background:url(/images/game/runner-background.png) 0 100%/1216px 228px repeat-x;animation:40s linear infinite paused runner-background-scroll;position:absolute;inset:0 0 30px}.runner-ground{z-index:2;height:30px;image-rendering:pixelated;background:url(/images/game/runner-terrain.png) 0 0/480px 30px repeat-x;animation:2.4s linear infinite paused runner-terrain-scroll;position:absolute;bottom:0;left:0;right:0}.runner-board--playing:before,.runner-board--playing .runner-ground{animation-play-state:running}.runner-cat{z-index:4;width:64px;height:64px;transition:none;position:absolute;bottom:19px;left:16%}.runner-cat .pixel-cat-sprite{filter:drop-shadow(0 3px 1px #1111111a);width:64px;height:64px}.runner-cat--ground-run{transform:translateY(2px)}.runner-cat--launch{transform:rotate(-4deg)}.runner-cat--fall{transform:rotate(4deg)}.runner-obstacle{z-index:3;width:64px;height:64px;image-rendering:pixelated;filter:drop-shadow(0 3px 1px #1111111f);background-image:url(/images/game/cat-runner-obstacles.png);background-repeat:no-repeat;background-size:200% 200%;position:absolute;transform:translate(-50%)}.runner-obstacle--boulder{background-position:0 0;bottom:14px}.runner-obstacle--stones{background-position:100% 0;bottom:15px}.runner-obstacle--plant{background-position:0 100%;bottom:7px}.runner-obstacle--branch{background-position:100% 100%;bottom:6px}.runner-fish{z-index:3;color:#4b8cff;text-shadow:0 0 10px #4b8cffcc;font-size:15px;line-height:1;position:absolute;transform:translate(-50%)rotate(45deg)}.runner-message{z-index:8;color:#111;text-align:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fafafab8;place-content:center;justify-items:center;gap:7px;display:grid;position:absolute;inset:0}.runner-message b{letter-spacing:.03em;font:700 19px/1 monospace}.runner-message small{color:#555;font:9px/1.3 monospace}.game-actions{justify-content:center;gap:8px;display:flex}.game-actions button{color:#111;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:0 14px;font-size:10px;display:inline-flex}.game-actions button:disabled{opacity:.45;cursor:not-allowed}.game-actions .runner-jump-button{color:#fff;background:#111;border-color:#111;min-width:120px}.runner-jump-button span{color:#aaa;text-transform:uppercase;border:1px solid #555;border-radius:3px;padding:3px 5px;font:7px/1 monospace}.game-hint{color:#777;text-align:center;margin:11px 0 0;font-size:9px}@keyframes runner-background-scroll{to{background-position-x:-1216px}}@keyframes runner-terrain-scroll{to{background-position-x:-480px}}.hero{border-bottom:1px solid #e5e5e5;grid-template-columns:.92fr 1.08fr;align-items:center;gap:58px;min-height:556px;padding:110px 0 54px;display:grid}.eyebrow{color:#555;letter-spacing:.04em;margin:0 0 12px;font:10px/1.2 monospace}.hero h1{letter-spacing:-.067em;margin:0;font-size:clamp(60px,6.4vw,72px);font-weight:700;line-height:.88}.roles{border-left:2px solid #2563eb;align-items:center;min-height:26px;margin:25px 0 23px;padding:1px 0 1px 18px;font-size:19px;font-weight:520;line-height:1.24;display:flex}.text-type{white-space:pre-wrap;letter-spacing:-.02em;min-width:20ch;display:inline-block}.text-type__content{display:inline}.text-type__cursor{color:#2563eb;opacity:1;margin-left:2px;font-family:monospace;display:inline-block}.text-type__cursor--hidden{visibility:hidden}.hero-description{color:#555;max-width:340px;margin:0 0 20px;font-size:14px;line-height:1.65}.hero-actions{gap:14px;display:flex}.hero-featured{border:1px solid var(--page-border);background:var(--surface);border-radius:9px;grid-template-columns:62px minmax(0,1fr) 16px;align-items:center;gap:11px;max-width:405px;margin-top:18px;padding:8px;transition:border-color .18s,transform .18s;display:grid}.hero-featured:hover{border-color:#2563eb;transform:translateY(-2px)}.hero-featured__image{background:var(--surface-soft);border-radius:5px;width:62px;height:48px;position:relative;overflow:hidden}.hero-featured__image img{-o-object-fit:cover;object-fit:cover;-o-object-position:top left;object-position:top left}.hero-featured>span:nth-child(2){gap:4px;min-width:0;display:grid}.hero-featured small{color:#2563eb;letter-spacing:.04em;font:9px/1 monospace}.hero-featured strong{font-size:11px;font-weight:600;line-height:1.35}.hero-featured>svg{color:#2563eb}.button{border:1px solid #111;justify-content:center;align-items:center;gap:26px;min-height:42px;padding:0 18px;font-size:12px;font-weight:520;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--dark{color:#fff;background:#111;box-shadow:0 8px 20px -14px #111}.button--dark:hover{box-shadow:0 12px 24px -14px #111}.button--light{background:0 0}.button--light:hover{background:#fff}.availability{color:#555;align-items:center;gap:8px;margin:24px 0 0;font-size:10px;display:flex}.availability i{background:#2992dc;border-radius:50%;width:7px;height:7px}.hero-media{align-items:center;min-width:0;height:388px;display:flex;position:relative}.portrait-frame{z-index:2;background:#ddd;border-radius:9px;width:310px;height:388px;position:relative;overflow:hidden;box-shadow:0 24px 50px -28px #1111116b}.portrait-frame img{-o-object-fit:cover;object-fit:cover}.dot-grid{z-index:1;opacity:.35;background-image:radial-gradient(#8c8c8c .8px,#0000 .8px);background-size:12px 12px;width:154px;height:100%;position:absolute;top:0;right:2px}.social-list{z-index:3;gap:10px;width:108px;margin-left:24px;display:grid}.social-list a{text-transform:uppercase;grid-template-columns:28px 1fr 12px;align-items:center;gap:8px;font-size:9px;display:grid}.social-list span,.contact-links span{background:#fffc;border-radius:7px;place-items:center;width:28px;height:28px;display:grid;box-shadow:0 5px 18px -13px #111}.social-list i{background:#777;height:1px}.section{border-bottom:1px solid #e5e5e5;padding:34px 0}.section[data-cat-perch]{scroll-margin-top:38px}.section-heading span{color:#555;margin-bottom:8px;font:9px/1.2 monospace;display:block}.section-heading h2{text-transform:uppercase;margin:0;font-size:15px;font-weight:560;line-height:1.1}.section-heading i{background:#999;width:19px;height:1px;margin-top:13px;display:block}.about-section{grid-template-columns:145px 1fr 1.42fr;gap:30px;display:grid}.about-copy{color:#4f4f4f;max-width:280px;font-size:13px;line-height:1.68}.about-copy p{margin:0 0 22px}.about-copy p:last-child{margin-bottom:0}.services h3,.stack-group h3{text-transform:uppercase;margin:0 0 10px;font-size:10px;font-weight:570}.service-row{border-bottom:1px solid #e5e5e5;grid-template-columns:40px 1fr 1.08fr;align-items:center;min-height:46px;padding:3px 5px 3px 0;transition:background .18s,padding .18s;display:grid}.service-row:last-child{border-bottom:0}.service-row:hover{background:#f3f3f3;padding-left:6px}.service-icon{background:#f1f1f1;border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.service-row h4{margin:0;font-size:12px;font-weight:560}.service-row p{color:#555;margin:0;font-size:11px;line-height:1.5}.projects-section{padding-top:23px}.projects-header{justify-content:space-between;align-items:end;margin-bottom:14px;display:flex}.projects-header .section-heading i{display:none}.projects-header>a{align-items:center;gap:8px;padding-bottom:2px;font-size:9.5px;display:flex}.projects-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.projects-grid .project-card:last-child:nth-child(odd){grid-column:1/-1;grid-template-columns:34% 66%}.project-card{cursor:pointer;background:#fafafa;border:1px solid #dedede;border-radius:6px;grid-template-rows:1fr 42px;grid-template-columns:49% 51%;min-width:0;height:274px;transition:box-shadow .22s;display:grid;position:relative;overflow:hidden}.project-card:hover{box-shadow:0 16px 40px -24px #1111114d}.project-card:focus-within{outline-offset:3px;outline:2px solid #2563eb}.project-card__link{z-index:5;position:absolute;inset:0}.project-card__link:focus-visible{outline:none}.project-info{z-index:2;padding:15px 9px 7px 13px}.project-info>span{margin-bottom:19px;font-size:10px;display:block}.project-info h3{margin:0 0 8px;font-size:15px;font-weight:560;line-height:1.25}.project-info p{color:#555;margin:0;font-size:12px;line-height:1.58}.project-image{position:relative;overflow:hidden}.visual{height:100%;transition:transform .26s}.project-card:hover .visual{transform:scale(1.035)}.project-footer{z-index:4;background:#fafafaf5;border-top:1px solid #e5e5e5;grid-column:1/-1;justify-content:space-between;align-items:center;padding:0 12px;display:flex}.project-footer>div{gap:6px;display:flex}.project-footer span{color:#555;background:#f1f1f1;border:1px solid #e3e3e3;border-radius:5px;padding:4px 8px;font-size:10px}.projects-page{min-height:calc(100vh - 64px)}.projects-page__hero{border-bottom:1px solid var(--page-border);grid-template-columns:1.05fr .95fr;align-items:end;gap:80px;padding:132px 0 60px;display:grid}.projects-page__hero h1{letter-spacing:-.065em;margin:0;font-size:clamp(58px,7vw,76px);line-height:.9}.projects-page__intro{justify-self:end;max-width:360px}.projects-page__intro p{color:var(--muted-text);margin:0 0 24px;font-size:13px;line-height:1.7}.projects-page__intro a{text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:9px;font-size:10px;transition:color .18s,transform .18s;display:inline-flex}.projects-page__intro a:hover{color:#2563eb;transform:translate(-2px)}.projects-page__catalog{border-bottom:1px solid var(--page-border);padding:46px 0 54px}.projects-page__label{grid-template-columns:90px 1fr auto;align-items:baseline;margin-bottom:20px;display:grid}.projects-page__label span,.projects-page__label p,.projects-page__cta span{color:var(--muted-text);text-transform:uppercase;font:9px/1.2 monospace}.projects-page__label h2{text-transform:uppercase;margin:0;font-size:16px;font-weight:570}.projects-page__label p{margin:0}.projects-page__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.projects-page__grid .project-card{grid-template-rows:1fr 46px;height:320px}.projects-page__grid .project-info{padding:22px 18px 12px}.projects-page__grid .project-info>span{margin-bottom:38px}.projects-page__grid .project-info h3{letter-spacing:-.02em;margin-bottom:12px;font-size:19px}.projects-page__grid .project-info p{font-size:12px;line-height:1.65}.projects-page__grid .project-card:last-child:nth-child(odd){grid-column:1/-1;grid-template-columns:34% 66%}.projects-page__cta{justify-content:space-between;align-items:end;gap:40px;padding:45px 0 50px;display:flex}.projects-page__cta span{margin-bottom:11px;display:block}.projects-page__cta h2{letter-spacing:-.04em;max-width:460px;margin:0;font-size:34px;font-weight:560;line-height:1.04}.projects-page__cta .button{flex:none}.case-study{padding-top:118px}.case-study__header{padding-bottom:40px}.case-study__back{color:var(--muted-text);text-transform:uppercase;align-items:center;gap:8px;margin-bottom:48px;font:9px/1 monospace;transition:color .18s,transform .18s;display:inline-flex}.case-study__back:hover{color:#2563eb;transform:translate(-2px)}.case-study__title{grid-template-columns:1.05fr .95fr;align-items:end;gap:80px;margin-top:12px;display:grid}.case-study__title span,.case-study__section-heading>span,.case-study__cta span{color:var(--muted-text);font:9px/1.2 monospace}.case-study__title h1{letter-spacing:-.07em;margin:7px 0 0;font-size:clamp(62px,8vw,88px);line-height:.88}.case-study__title>p{max-width:380px;color:var(--muted-text);margin:0;font-size:14px;line-height:1.7}.case-study__facts{border-top:1px solid var(--page-border);grid-template-columns:repeat(3,1fr);margin:42px 0 0;padding-top:18px;display:grid}.case-study__facts div{padding-right:20px}.case-study__facts dt,.case-study__technology dt{color:var(--muted-text);text-transform:uppercase;margin-bottom:7px;font:8px/1 monospace}.case-study__facts dd,.case-study__technology dd{margin:0;font-size:12px}.case-study__hero{aspect-ratio:1424/762;border:1px solid var(--page-border);background:#080909;border-radius:8px;margin:0;overflow:hidden}.case-study__hero img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.case-study__hero--captioned{aspect-ratio:auto;background:var(--surface-soft);height:auto}.case-study__hero--captioned img{aspect-ratio:1200/640;-o-object-fit:contain;object-fit:contain;height:auto}.case-study__hero--screenshot img{-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top}.case-study__hero--mobile-screens{background:#eef1f5}.case-study__mobile-shots{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:24px;display:grid}.case-study__hero--mobile-screens .case-study__mobile-shots img{aspect-ratio:430/930;-o-object-fit:contain;object-fit:contain;border:1px solid #dce1e8;border-radius:14px;width:100%;height:auto;display:block;box-shadow:0 18px 36px -28px #11182773}@media (max-width:640px){.case-study__mobile-shots{scroll-snap-type:x mandatory;gap:12px;padding:16px;display:flex;overflow-x:auto}.case-study__hero--mobile-screens .case-study__mobile-shots img{scroll-snap-align:center;flex:0 0 75%;width:75%}}.case-study__hero--captioned figcaption{border-top:1px solid var(--page-border);color:var(--muted-text);padding:10px 16px;font:10px/1.4 monospace}.case-study__hero--mobile{aspect-ratio:auto;background:radial-gradient(circle at 50% 55%,#fff5ed 0 24%,#f5e7df 70%);place-items:start center;height:min(680px,72vw);padding-top:28px;display:grid}.case-study__hero--mobile img{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 24px 24px #4a2a1b2e);width:auto;height:112%}.case-study__story{border-bottom:1px solid var(--page-border);padding:54px 0}.case-study__story-heading{margin-bottom:25px}.case-study__story-heading>span{color:var(--muted-text);font:9px/1.2 monospace}.case-study__story-heading h2{letter-spacing:-.045em;margin:8px 0 0;font-size:clamp(26px,3.5vw,36px);line-height:1.1}.case-study__story-grid{border:1px solid var(--page-border);background:var(--surface);border-radius:9px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.case-study__story-grid article{min-width:0;padding:25px 22px 30px}.case-study__story-grid article+article{border-left:1px solid var(--page-border)}.case-study__story-grid article>span{color:#2563eb;font:10px/1 monospace}.case-study__story-grid h3{letter-spacing:-.025em;margin:20px 0 9px;font-size:17px}.case-study__story-grid p{color:var(--muted-text);margin:0;font-size:13px;line-height:1.7}.case-study__features,.case-study__technology{border-bottom:1px solid var(--page-border);grid-template-columns:190px 1fr;gap:55px;padding:54px 0;display:grid}.case-study__section-heading h2{letter-spacing:-.025em;margin:7px 0 0;font-size:18px}.case-study__section-heading p{color:var(--muted-text);margin:13px 0 0;font-size:12px;line-height:1.6}.case-study__features ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:0;padding:0;list-style:none;display:grid}.case-study__features li{border-bottom:1px solid var(--page-border);grid-template-columns:22px 1fr;align-items:start;min-height:44px;padding:11px 0;font-size:12px;line-height:1.5;display:grid}.case-study__features li svg{color:#2563eb;margin-top:1px}.case-study__technology dl{border-top:1px solid var(--page-border);border-left:1px solid var(--page-border);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.case-study__technology dl div{border-right:1px solid var(--page-border);border-bottom:1px solid var(--page-border);min-height:88px;padding:18px}.case-study__technology dd{line-height:1.55}.case-study__cta{justify-content:space-between;align-items:end;gap:40px;padding:52px 0;display:flex}.case-study__cta h2{letter-spacing:-.045em;max-width:520px;margin:10px 0 0;font-size:36px;font-weight:560;line-height:1.04}.case-study__cta .button{flex:none}.case-study__actions{gap:10px;display:flex}.project-navigation{border-block:1px solid var(--page-border);grid-template-columns:1fr auto 1fr;align-items:stretch;margin-bottom:56px;display:grid}.project-navigation>a{align-items:center;gap:14px;min-height:92px;padding:18px 0;transition:color .18s,transform .18s;display:flex}.project-navigation>a:last-child{text-align:right;justify-content:end}.project-navigation>a:hover{color:#2563eb}.project-navigation>a:first-child:hover{transform:translate(-2px)}.project-navigation>a:last-child:hover{transform:translate(2px)}.project-navigation span{gap:6px;display:grid}.project-navigation small{color:var(--muted-text);text-transform:uppercase;font:8px/1 monospace}.project-navigation strong{font-size:13px;font-weight:560}.project-navigation .project-navigation__all{border-inline:1px solid var(--page-border);min-height:auto;color:var(--muted-text);text-transform:uppercase;align-self:center;margin:0 28px;padding:8px 16px;font:8px/1 monospace}.visual--localaid{background:radial-gradient(circle at 50% 65%,#fff4eb 0 25%,#f7ece6 66%,#f3e7e0);place-items:start center;padding-top:8px;display:grid;position:relative;overflow:hidden}.visual--localaid .localaid-preview{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 12px 14px #4a2a1b29);width:auto;max-width:none;height:119%}.phone{background:#fff;border:4px solid #1b1b1b;border-radius:20px 20px 0 0;width:99px;height:210px;padding:23px 9px 8px;position:relative;box-shadow:-8px 9px 16px -13px #111}.phone-notch{background:#111;border-radius:0 0 8px 8px;width:39px;height:7px;position:absolute;top:0;left:26px}.phone b{text-align:center;color:#16835d;font-size:7px;display:block}.phone h5{margin:18px 0 13px;font-size:9px}.phone span{border-bottom:1px solid #eee;padding:7px 3px;font-size:5px;display:block}.phone button{background:#dff4e9;border:0;border-radius:5px;width:100%;margin-top:8px;padding:6px;font-size:6px}.visual--dashboard{background:#080909;position:relative;overflow:hidden}.visual--dashboard img{-o-object-fit:cover;object-fit:cover;-o-object-position:left center;object-position:left center}.visual--website{background:var(--surface-soft);position:relative;overflow:hidden}.visual--website img{-o-object-fit:cover;object-fit:cover}.visual--lifedesk{background:#eef1f5;place-items:start center;padding-top:10px;display:grid;overflow:hidden}.visual--lifedesk img{border:1px solid #dce1e8;border-radius:10px;width:auto;max-width:none;height:120%;box-shadow:0 10px 26px -16px #11182766}.stack-section{grid-template-columns:130px 1fr;gap:20px;padding-top:30px;padding-bottom:28px;display:grid}.stack-grid{grid-template-columns:repeat(5,1fr);display:grid}.stack-group{border-left:1px solid #e5e5e5;min-height:120px;padding:0 25px}.stack-group:first-child{border-left:0;padding-left:0}.stack-group:last-child{padding-right:0}.stack-group ul{color:#444;margin:0;padding:0;font-size:9.5px;line-height:1.68;list-style:none}.github-section{border-top:1px solid var(--page-border);border-bottom:1px solid var(--page-border);grid-template-columns:130px 1fr;gap:20px;padding:34px 0;display:grid}.github-panel{border:1px solid var(--page-border);background:var(--surface);border-radius:8px;min-width:0;padding:20px}.github-panel__header{justify-content:space-between;align-items:start;gap:24px;margin-bottom:18px;display:flex}.github-panel__header span{color:var(--muted-text);font:8px/1 monospace}.github-panel__header h3{letter-spacing:-.02em;margin:7px 0 0;font-size:15px;font-weight:570}.github-panel__header a{border:1px solid var(--page-border);white-space:nowrap;border-radius:5px;align-items:center;gap:7px;min-height:31px;padding:0 10px;font-size:9px;transition:background-color .18s,color .18s;display:inline-flex}.github-panel__header a:hover{background:var(--page-text);color:var(--page-bg)}.github-calendar-scroll{scrollbar-width:thin;scrollbar-color:var(--muted-text) transparent;padding-bottom:5px;overflow-x:auto}.github-calendar{border:1px solid var(--page-border);background:var(--page-bg);border-radius:6px;min-width:690px;padding:14px}.github-months{height:16px;color:var(--muted-text);gap:3px;margin-left:34px;font:7px/1 monospace;display:grid}.github-months span{white-space:nowrap}.github-calendar__body{grid-template-columns:26px 1fr;gap:8px;display:grid}.github-weekdays{color:var(--muted-text);grid-template-rows:repeat(7,9px);gap:3px;font:7px/9px monospace;display:grid}.github-days{grid-template-rows:repeat(7,9px);grid-auto-flow:column;gap:3px;display:grid}.github-day{background:var(--gh-0);border-radius:2px;width:9px;height:9px;display:block}.github-day--1{background:var(--gh-1)}.github-day--2{background:var(--gh-2)}.github-day--3{background:var(--gh-3)}.github-day--4{background:var(--gh-4)}.github-panel__footer{color:var(--muted-text);justify-content:space-between;align-items:center;gap:20px;margin-top:12px;display:flex}.github-panel__footer p,.github-panel__fallback{margin:0;font-size:8px;line-height:1.5}.github-legend{white-space:nowrap;align-items:center;gap:4px;font:7px/1 monospace;display:flex}.github-legend .github-day{margin-inline:1px}.currently-section{border-bottom:1px solid var(--page-border);grid-template-columns:130px 1.4fr .85fr;gap:28px;padding:34px 0;display:grid}.currently-copy>span,.currently-status>span{color:var(--muted-text);align-items:center;gap:7px;font:8px/1 monospace;display:flex}.currently-copy>span svg{color:#2563eb}.currently-copy h2{letter-spacing:-.035em;max-width:520px;margin:12px 0 10px;font-size:24px;font-weight:560;line-height:1.08}.currently-copy p{max-width:540px;color:var(--muted-text);margin:0;font-size:10.5px;line-height:1.6}.currently-status{border-left:1px solid var(--page-border);align-content:start;gap:13px;padding-left:26px;display:grid}.currently-status strong{font-size:13px;font-weight:550;line-height:1.35}.currently-status a{align-items:center;gap:8px;width:fit-content;font-size:9px;transition:color .18s,transform .18s;display:inline-flex}.currently-status a:hover{color:#2563eb;transform:translateY(-2px)}.contact-section{grid-template-columns:125px 1fr 1.12fr;gap:28px;padding:28px 0 25px;display:grid}.contact-copy h2{letter-spacing:-.025em;margin:-2px 0 7px;font-size:19px;font-weight:560;line-height:1.07}.contact-copy p{color:#555;margin:0 0 17px;font-size:10.5px}.contact-copy .button{gap:25px;min-height:33px;padding:0 15px;font-size:9.5px}.contact-panel{gap:22px;display:grid}.contact-form{gap:12px;display:grid}.contact-form__row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.contact-form label{color:var(--muted-text);text-transform:uppercase;letter-spacing:.02em;gap:6px;font:11px/1.2 monospace;display:grid}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--page-border);background:var(--surface);width:100%;min-height:42px;color:var(--page-text);font:inherit;text-transform:none;border-radius:4px;outline:none;padding:9px 10px;font-size:14px;line-height:1.35;transition:border-color .18s,box-shadow .18s}.contact-form textarea{resize:vertical;min-height:90px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb17}.contact-form__honeypot{position:absolute;left:-10000px}.contact-form__footer{align-items:center;gap:14px;min-height:36px;display:flex}.contact-form__footer .button{justify-content:space-between;min-width:130px;min-height:36px}.contact-form__footer .button:disabled{opacity:.62;cursor:wait;transform:none}.contact-form__status{color:var(--muted-text);margin:0;font-size:12px;line-height:1.45}.contact-form__status--success{color:#17833b}.contact-form__status--error{color:#b42318}.contact-form__spinner{animation:.8s linear infinite contact-spin}.contact-form__status a{text-underline-offset:2px;text-decoration:underline}.contact-links{border-top:1px solid var(--page-border);grid-template-columns:1fr 1fr;align-content:start;gap:3px 12px;padding-top:16px;display:grid}.contact-links a{align-items:center;gap:12px;font-size:12px;display:flex}.contact-links span{background:#f2f2f2;flex:0 0 26px;width:26px;height:26px}@keyframes contact-spin{to{transform:rotate(360deg)}}.footer{color:#999;justify-content:space-between;align-items:center;height:64px;font-size:9px;display:flex}.footer a{align-items:center;gap:14px;display:flex}.footer a span{color:#111;border:1px solid #bbb;border-radius:50%;place-items:center;width:34px;height:34px;transition:transform .18s;display:grid}.footer a:hover span{transform:translateY(-2px)}.site-toast{z-index:250;border:1px solid var(--page-border);background:color-mix(in srgb, var(--page-bg) 96%, transparent);max-width:min(330px,100vw - 36px);color:var(--page-text);opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:6px;padding:10px 13px;font-size:10px;transition:opacity .18s,transform .18s;position:fixed;bottom:18px;right:18px;transform:translateY(8px);box-shadow:0 16px 42px -24px #000000a6}.site-toast--visible{opacity:1;transform:translateY(0)}.not-found{grid-template-columns:1fr 1fr;align-items:center;gap:70px;min-height:calc(100dvh - 64px);padding-block:130px 70px;display:grid}.not-found__copy h1{letter-spacing:-.065em;max-width:600px;margin:14px 0 20px;font-size:clamp(56px,7vw,92px);line-height:.9}.not-found__copy>p:not(.eyebrow){max-width:510px;color:var(--muted-text);font-size:13px;line-height:1.65}.not-found__actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.not-found__actions .button{min-height:42px}.not-found__scene{border:1px solid var(--page-border);background:radial-gradient(circle at 50% 58%,var(--surface) 0 30%,transparent 66%);border-radius:10px;place-items:center;min-height:430px;display:grid;position:relative;overflow:hidden}.not-found__code{color:var(--surface-soft);letter-spacing:-.1em;font-size:clamp(170px,22vw,310px);font-weight:800;transform:translate(-.05em)}.not-found__trail{color:var(--muted-text);letter-spacing:.35em;font:20px/1 monospace;position:absolute;bottom:28%;left:15%}.not-found__cat{width:96px;height:96px;animation:2.8s ease-in-out infinite not-found-cat;position:absolute;bottom:20%;right:18%}.not-found__cat .pixel-cat-sprite{width:96px;height:96px}@keyframes not-found-cat{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-7px)rotate(2deg)}}html[data-theme=dark] .site-header--scrolled{background:#0b0d10e0;border-color:#292d33e6}html[data-theme=dark] .desktop-nav a:after{background:#f4f5f7}html[data-theme=dark] .menu-button,html[data-theme=dark] .play-button,html[data-theme=dark] .mobile-play-button{color:#f4f5f7}html[data-theme=dark] .play-button,html[data-theme=dark] .theme-toggle{border-color:#343941}html[data-theme=dark] .hero,html[data-theme=dark] .section,html[data-theme=dark] .service-row,html[data-theme=dark] .project-footer,html[data-theme=dark] .stack-group{border-color:var(--page-border)}html[data-theme=dark] .eyebrow,html[data-theme=dark] .hero-description,html[data-theme=dark] .availability,html[data-theme=dark] .section-heading span,html[data-theme=dark] .about-copy,html[data-theme=dark] .service-row p,html[data-theme=dark] .project-info p,html[data-theme=dark] .stack-group ul,html[data-theme=dark] .contact-copy p{color:var(--muted-text)}html[data-theme=dark] .button{border-color:#f4f5f7}html[data-theme=dark] .button--dark{color:#0b0d10;background:#f4f5f7;box-shadow:0 10px 24px -16px #ffffff8c}html[data-theme=dark] .button--light{color:#f4f5f7}html[data-theme=dark] .button--light:hover{background:#171a1f}html[data-theme=dark] .social-list span,html[data-theme=dark] .contact-links span,html[data-theme=dark] .service-icon{color:#f4f5f7;box-shadow:none;background:#191d22}html[data-theme=dark] .service-row:hover{background:#14171b}html[data-theme=dark] .project-card{background:#101317;border-color:#2b3037}html[data-theme=dark] .project-footer{background:#101317f5}html[data-theme=dark] .project-footer span{color:#b5bac2;background:#1c2025;border-color:#30353d}html[data-theme=dark] .phone,html[data-theme=dark] .game-dialog{background:#111419;border-color:#30353d}html[data-theme=dark] .game-header span,html[data-theme=dark] .game-header p,html[data-theme=dark] .runner-stats,html[data-theme=dark] .game-hint{color:#a3a8b0}html[data-theme=dark] .runner-stats{border-color:#30353d}html[data-theme=dark] .runner-stats b{color:#f4f5f7}html[data-theme=dark] .game-header button,html[data-theme=dark] .game-actions button{color:#f4f5f7;background:#1a1e23;border-color:#343941}html[data-theme=dark] .game-actions .runner-jump-button{color:#111;background:#f4f5f7;border-color:#f4f5f7}html[data-theme=dark] .footer a span{color:#f4f5f7;border-color:#454b54}html[data-theme=dark] .pixel-cat-zzz{color:#f4d58a}html[data-theme=dark] .contact-form__status--success{color:#62d489}html[data-theme=dark] .contact-form__status--error{color:#ff8e86}.theme-toggle--mobile{border:0;border-top:1px solid #e5e5e5;border-radius:0;justify-content:center;gap:8px;width:100%;height:auto;min-height:44px;font-size:11px;display:flex}html[data-theme=dark] .theme-toggle--mobile{border-color:var(--page-border)}@media (max-width:900px){.desktop-nav{gap:16px;font-size:11px}.hero-actions{flex-wrap:wrap;gap:8px}.hero-actions .button{white-space:nowrap;gap:8px;padding-inline:10px;font-size:11px}.hero{grid-template-columns:.85fr 1.15fr;gap:30px}.hero h1{font-size:58px}.portrait-frame{width:min(280px,100% - 100px)}.about-section{grid-template-columns:110px 1fr 1.3fr;gap:20px}.project-card{grid-template-columns:48% 52%}.project-info{padding-left:10px}.project-footer span{padding-inline:5px}.stack-group{padding-inline:14px}}@media (max-width:767px){.page-shell,.nav-shell{width:min(100% - 36px,540px)}.site-header{height:66px}.desktop-nav{display:none}.menu-button{display:block}.portfolio-version-switch--mobile{margin-left:auto;margin-right:8px;display:block}.mobile-nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fafafaf7;border-bottom:1px solid #e5e5e5;gap:0;padding:18px;display:grid;position:absolute;inset:66px 0 auto}html[data-theme=dark] .mobile-nav{border-color:var(--page-border);background:#0b0d10f7}.mobile-nav a{text-align:center;padding:14px;font-size:13px}.pixel-cat-companion,.pixel-cat-facing,.pixel-cat-sprite{width:58px;height:58px}.mobile-play-button{color:#111;background:0 0;border:0;border-top:1px solid #e5e5e5;justify-content:center;align-items:center;gap:8px;padding:14px;font-size:11px;display:flex}.game-dialog{padding:17px}.runner-board{height:235px}.game-hint{display:none}.hero{flex-direction:column;align-items:stretch;gap:32px;padding:90px 0 48px;display:flex}.hero-media{grid-template-columns:1fr;width:100%;height:auto;display:grid}.portrait-frame{aspect-ratio:4/5;width:min(68%,270px);height:auto;margin-inline:auto}.dot-grid{height:100%;right:0}.social-list{justify-content:center;gap:18px;width:auto;margin:16px 0 0;display:flex}.social-list a{gap:7px;display:flex}.social-list i{display:none}.social-list span{width:25px;height:25px}.hero h1{font-size:clamp(54px,17vw,74px)}.roles{font-size:18px}.hero-description{max-width:440px}.hero-featured{max-width:none;margin-top:15px}.about-section{grid-template-columns:1fr;gap:30px}.about-copy{max-width:500px}.services{margin-top:4px}.service-row{grid-template-columns:45px 1fr 1.2fr}.projects-section{padding-block:32px}.projects-grid{grid-template-columns:1fr}.projects-grid .project-card:last-child:nth-child(odd){grid-column:auto;grid-template-columns:48% 52%}.project-card{grid-template-columns:48% 52%;height:320px}.project-info{padding:20px 15px}.project-info>span{margin-bottom:30px}.project-info h3{font-size:17px}.project-info p{font-size:12px}.phone{width:125px;height:256px}.phone-notch{left:38px}.projects-page__hero{grid-template-columns:1fr;gap:34px;padding:104px 0 44px}.projects-page__intro{justify-self:start;max-width:520px}.projects-page__catalog{padding-block:36px 44px}.projects-page__label{grid-template-columns:60px 1fr;row-gap:7px}.projects-page__label p{grid-column:2}.projects-page__grid{grid-template-columns:1fr}.projects-page__grid .project-card,.projects-page__grid .project-card:last-child:nth-child(odd){grid-column:auto;grid-template-columns:48% 52%;height:340px}.projects-page__grid .project-info{padding:20px 15px}.projects-page__grid .project-info>span{margin-bottom:30px}.projects-page__grid .project-info h3{font-size:17px}.projects-page__cta{flex-direction:column;align-items:start}.projects-page__cta h2{font-size:29px}.case-study{padding-top:92px}.case-study__back{margin-bottom:36px}.case-study__title{grid-template-columns:1fr;gap:25px}.case-study__title h1{font-size:clamp(58px,18vw,78px)}.case-study__facts{grid-template-columns:1fr;gap:14px}.case-study__facts div{border-bottom:1px solid var(--page-border);padding-bottom:14px}.case-study__hero{border-radius:5px}.case-study__features,.case-study__technology{grid-template-columns:1fr;gap:28px;padding:42px 0}.case-study__cta{flex-direction:column;align-items:start}.case-study__cta h2{font-size:30px}.case-study__hero--mobile{height:540px;padding-top:18px}.case-study__actions{flex-wrap:wrap}.case-study__story{padding:42px 0}.case-study__story-grid{grid-template-columns:1fr}.case-study__story-grid article{padding:20px}.case-study__story-grid article+article{border-top:1px solid var(--page-border);border-left:0}.case-study__story-grid h3{margin-top:10px}.project-navigation{grid-template-columns:1fr 1fr}.project-navigation .project-navigation__all{display:none}.project-navigation>a{min-width:0}.project-navigation strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stack-section{grid-template-columns:1fr;gap:30px}.stack-grid{grid-template-columns:repeat(2,1fr);gap:28px 0}.stack-group,.stack-group:first-child{border-left:1px solid #e5e5e5;min-height:0;padding:0 20px}.stack-group:nth-child(odd){border-left:0;padding-left:0}.github-section{grid-template-columns:1fr;gap:28px}.github-panel{padding:16px}.currently-section{grid-template-columns:1fr;gap:28px}.currently-copy h2{font-size:27px}.currently-status{border-top:1px solid var(--page-border);border-left:0;padding:24px 0 0}.contact-section{grid-template-columns:1fr;gap:28px}.contact-copy h2{font-size:27px}.contact-links{margin-top:4px}.not-found{grid-template-columns:1fr;gap:40px;padding-block:100px 50px}.not-found__copy h1{font-size:clamp(54px,16vw,78px)}.not-found__scene{order:-1;min-height:300px}.not-found__code{font-size:min(55vw,220px)}.not-found__cat{bottom:14%;right:17%}}@media (max-width:420px){.runner-board{height:215px}.runner-cat,.runner-cat .pixel-cat-sprite,.runner-obstacle{width:58px;height:58px}.runner-cat{left:13%}.runner-stats{font-size:8px}.runner-stats b{margin:4px 0 0;display:block}.game-actions button{flex:1;padding-inline:8px}.game-actions .runner-jump-button{min-width:0}.runner-jump-button span{display:none}.hero-actions{flex-direction:column;align-items:stretch}.button{justify-content:space-between}.social-list{gap:8px}.social-list a{font-size:8px}.service-row{grid-template-columns:42px 1fr;padding-block:7px}.service-row p{grid-column:2;padding-bottom:4px}.projects-header>a{font-size:0}.projects-header>a svg{width:18px;height:18px}.projects-grid .project-card,.projects-grid .project-card:last-child:nth-child(odd),.projects-page__grid .project-card,.projects-page__grid .project-card:last-child:nth-child(odd){grid-template-rows:190px auto 44px;grid-template-columns:1fr;height:auto}.project-image{grid-area:1/1}.project-info{grid-area:2/1;padding:16px}.project-info>span,.projects-page__grid .project-info>span{margin-bottom:12px}.project-info p,.projects-page__grid .project-info p{font-size:13px}.project-footer{grid-row:3}.case-study__features ul,.case-study__technology dl{grid-template-columns:1fr}.case-study__hero--mobile{height:460px}.case-study__actions{flex-direction:column;width:100%}.case-study__actions .button{width:100%}.github-panel__header,.github-panel__footer{flex-direction:column;align-items:start}.github-panel__header a{justify-content:center;width:100%}.github-calendar{min-width:690px}.contact-form__row,.contact-links{grid-template-columns:1fr}.contact-form__footer{flex-direction:column;align-items:stretch}.contact-form__footer .button{width:100%}.footer{height:80px}.footer a{font-size:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.command-trigger{border:1px solid var(--page-border);height:27px;color:var(--muted-text);cursor:pointer;background:0 0;border-radius:5px;align-items:center;gap:5px;padding:0 8px;font:8px/1 monospace;transition:color .18s,border-color .18s,transform .18s;display:inline-flex}.command-trigger:hover{color:#2563eb;border-color:#2563eb;transform:translateY(-1px)}.command-overlay{z-index:200;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#11111157;place-items:start center;padding:15vh 20px 20px;display:grid;position:fixed;inset:0}.command-dialog{border:1px solid var(--page-border);background:color-mix(in srgb, var(--page-bg) 96%, transparent);width:min(570px,100%);color:var(--page-text);border-radius:12px;overflow:hidden;box-shadow:0 28px 90px -34px #000000a6}.command-search{border-bottom:1px solid var(--page-border);min-height:58px;color:var(--muted-text);grid-template-columns:24px 1fr auto;align-items:center;padding:0 17px;display:grid}.command-search input{width:100%;color:var(--page-text);font:inherit;background:0 0;border:0;outline:0;padding:0 10px;font-size:14px}.command-search input::placeholder{color:var(--muted-text)}.command-search kbd,.command-item kbd,.command-footer{font:8px/1 monospace}.command-search kbd{border:1px solid var(--page-border);border-radius:4px;padding:4px 6px}.command-results{max-height:min(390px,55vh);padding:8px;overflow-y:auto}.command-item{width:100%;min-height:57px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:8px 12px;display:grid}.command-item>span:first-child{border:1px solid var(--page-border);background:var(--surface);border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.command-item>span:nth-child(2){gap:4px;display:grid}.command-item b{font-size:11px;font-weight:580}.command-item small{color:var(--muted-text);font-size:9px}.command-item>kbd{opacity:0;color:#2563eb}.command-item--active{background:var(--surface-soft)}.command-item--active>kbd{opacity:1}.command-empty{color:var(--muted-text);text-align:center;margin:0;padding:32px;font-size:11px}.command-footer{border-top:1px solid var(--page-border);color:var(--muted-text);gap:18px;padding:10px 18px;display:flex}.mobile-command-button{border:0;border-top:1px solid var(--page-border);color:inherit;background:0 0;justify-content:center;align-items:center;gap:8px;padding:14px;font-size:11px;display:flex}.mobile-command-button kbd{color:var(--muted-text);margin-left:6px;font:8px/1 monospace}.pixel-cat-companion--ready{pointer-events:auto;cursor:pointer}.pixel-cat-companion:focus-visible{outline-offset:2px;border-radius:8px;outline:2px solid #2563eb}.pixel-cat-companion--celebrating .pixel-cat-heart{animation:1.1s ease-out infinite cat-heart-celebrate}.pixel-cat-companion--reacting .pixel-cat-speech,.pixel-cat-companion--menu-open .pixel-cat-speech{opacity:1;animation:none;transform:translateY(0)scale(1)}.pixel-cat-menu{z-index:20;border:1px solid var(--page-border);background:color-mix(in srgb, var(--page-bg) 97%, transparent);width:140px;color:var(--page-text);transform-origin:bottom;border-radius:9px;margin-left:-70px;padding:7px;position:absolute;bottom:58px;left:50%;box-shadow:0 18px 42px -20px #0009}.pixel-cat-menu>span{color:var(--muted-text);padding:5px 7px 7px;font:7px/1 monospace;display:block}.pixel-cat-menu a,.pixel-cat-menu button{width:100%;min-height:29px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;padding:0 7px;font-size:9px;display:flex}.pixel-cat-menu a:hover,.pixel-cat-menu button:hover,.pixel-cat-menu a:focus-visible,.pixel-cat-menu button:focus-visible{background:var(--surface-soft);color:#2563eb;outline:0}.pixel-cat-show{z-index:35;border:1px solid var(--page-border);background:color-mix(in srgb, var(--page-bg) 94%, transparent);min-height:31px;color:var(--muted-text);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;align-items:center;gap:7px;padding:0 10px;font:8px/1 monospace;transition:color .18s,border-color .18s,transform .18s;display:flex;position:fixed;bottom:14px;right:14px;box-shadow:0 9px 28px -18px #0000008c}.pixel-cat-show:hover{color:#2563eb;border-color:#2563eb;transform:translateY(-2px)}@keyframes cat-heart-celebrate{0%{opacity:0;transform:translateY(4px)scale(.5)}38%{opacity:1}to{opacity:0;transform:translate(5px,-12px)scale(1.3)}}@media (max-width:767px){.command-overlay{padding:82px 12px 12px}.command-dialog{border-radius:10px}.command-search{min-height:54px;padding-inline:13px}.command-footer span:last-child{display:none}.pixel-cat-menu{width:132px;bottom:53px}}@media (forced-colors:active){.button,.project-card,.service-icon,.contact-form input,.contact-form select,.contact-form textarea{border:1px solid canvastext}.pixel-cat-spotlight,.dot-grid{display:none}}.cat-chat{z-index:90;pointer-events:none;justify-items:end;gap:10px;display:grid;position:fixed;bottom:16px;right:18px}.cat-chat__launcher,.cat-chat__panel{pointer-events:auto}.cat-chat__launcher{border:1px solid var(--page-text);background:var(--page-text);min-height:38px;color:var(--page-bg);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font:600 10px/1 monospace;display:inline-flex;position:relative;box-shadow:0 14px 34px -17px #111111bf}.cat-chat__launcher i{border:2px solid var(--page-bg);background:#2bb673;border-radius:50%;width:9px;height:9px;position:absolute;top:-2px;right:-2px}.cat-chat__panel{border:1px solid var(--page-border);background:color-mix(in srgb, var(--page-bg) 98%, transparent);width:min(360px,100vw - 28px);color:var(--page-text);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform-origin:100% 100%;border-radius:14px;overflow:hidden;box-shadow:0 26px 70px -28px #111111b8}.cat-chat__header{border-bottom:1px solid var(--page-border);background:var(--surface);grid-template-columns:48px 1fr 32px;align-items:center;gap:9px;min-height:73px;padding:9px 12px;display:grid}.cat-chat__avatar{border:1px solid var(--page-border);background:var(--surface-soft);border-radius:11px;width:48px;height:48px;overflow:hidden}.cat-chat__avatar .pixel-cat-sprite{width:48px;height:48px}.cat-chat__header>span:nth-child(2){gap:3px;display:grid}.cat-chat__header small{color:var(--muted-text);letter-spacing:.06em;font:7px/1 monospace}.cat-chat__header strong{font-size:13px}.cat-chat__header i{color:var(--muted-text);align-items:center;gap:5px;font-size:8px;font-style:normal;display:flex}.cat-chat__header i span{background:#2bb673;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #2bb6732e}.cat-chat__header button{border:1px solid var(--page-border);width:30px;height:30px;color:inherit;cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;display:grid}.cat-chat__messages{overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;gap:9px;height:min(300px,38vh);padding:15px 13px 10px;display:flex;overflow-y:auto}.cat-chat__message{background:var(--surface-soft);width:fit-content;max-width:88%;color:var(--page-text);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:11px 11px 11px 3px;margin:0;padding:9px 11px;font-size:10.5px;line-height:1.55}.cat-chat__message--user{background:var(--page-text);color:var(--page-bg);border-radius:11px 11px 3px;align-self:flex-end}.cat-chat__typing{align-items:center;gap:4px;min-width:49px;min-height:34px;display:flex}.cat-chat__typing>span:not(.sr-only){background:var(--muted-text);border-radius:50%;width:5px;height:5px;animation:1.1s ease-in-out infinite cat-chat-dot}.cat-chat__typing>span:nth-child(2){animation-delay:.13s}.cat-chat__typing>span:nth-child(3){animation-delay:.26s}.cat-chat__prompts{scrollbar-width:none;gap:6px;padding:0 13px 10px;display:flex;overflow-x:auto}.cat-chat__prompts button{border:1px solid var(--page-border);color:var(--muted-text);cursor:pointer;background:0 0;border-radius:99px;flex:none;padding:7px 9px;font-size:8px}.cat-chat__prompts button:hover{color:#2563eb;border-color:#2563eb}.cat-chat__form{border:1px solid var(--page-border);background:var(--surface);border-radius:10px;grid-template-columns:1fr 34px;align-items:center;gap:7px;margin:0 12px;padding:7px;display:grid}.cat-chat__form input{min-width:0;color:inherit;font:inherit;background:0 0;border:0;outline:0;padding:2px 5px;font-size:10px}.cat-chat__form input::placeholder{color:var(--muted-text)}.cat-chat__form button{background:var(--page-text);width:32px;height:32px;color:var(--page-bg);cursor:pointer;border:0;border-radius:8px;place-items:center;padding:0;display:grid}.cat-chat__form button:disabled{opacity:.35;cursor:not-allowed}.cat-chat__note{color:var(--muted-text);text-align:center;margin:7px 0 9px;font:7px/1 monospace}@keyframes cat-chat-dot{0%,70%,to{opacity:.35;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}@media (max-width:767px){.cat-chat{bottom:12px;right:12px}.pixel-cat-spotlight{right:-14px}.cat-chat__panel{width:min(360px,100vw - 24px)}.cat-chat__messages{height:min(285px,38vh)}.cat-chat__launcher{min-height:40px}}@media (forced-colors:active){.cat-chat__launcher,.cat-chat__panel,.cat-chat__message{border:1px solid canvastext}}html:not([data-portfolio-splash=show]) .portfolio-splash{display:none}.portfolio-splash{z-index:100001;background:radial-gradient(circle at 50% 48%, #2563eb12, transparent 32%), var(--page-bg);width:100vw;height:100dvh;color:var(--page-text);cursor:wait;isolation:isolate;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.portfolio-splash:before{content:"";opacity:.08;pointer-events:none;background-image:radial-gradient(circle,currentColor 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 66%);mask-image:radial-gradient(circle,#000,#0000 66%)}.portfolio-splash__meta{z-index:1;letter-spacing:.12em;justify-content:space-between;align-items:center;font:8px/1 monospace;display:flex;position:absolute;top:clamp(22px,4vw,54px);left:clamp(22px,4vw,54px);right:clamp(22px,4vw,54px)}.portfolio-splash__meta span:first-child{color:#2563eb;letter-spacing:-.08em;font-family:inherit;font-size:18px;font-weight:800}.portfolio-splash__meta span:last-child{opacity:.48}.portfolio-splash__stage{z-index:1;position:relative}.portfolio-splash__focus{-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:clamp(14px,2.4vw,34px);padding:12px;display:flex;position:relative}.portfolio-splash__word{letter-spacing:-.065em;white-space:nowrap;will-change:filter, opacity;font-size:clamp(40px,8vw,116px);font-weight:760;line-height:.9;display:inline-block;position:relative}.portfolio-splash__frame{pointer-events:none;will-change:transform, width, height;position:absolute;top:0;left:0}.portfolio-splash__corner{filter:drop-shadow(0 0 5px #2563ebb8);border:3px solid #2563eb;border-radius:3px;width:17px;height:17px;position:absolute}.portfolio-splash__corner--tl{border-bottom:0;border-right:0;top:-10px;left:-10px}.portfolio-splash__corner--tr{border-bottom:0;border-left:0;top:-10px;right:-10px}.portfolio-splash__corner--br{border-top:0;border-left:0;bottom:-10px;right:-10px}.portfolio-splash__corner--bl{border-top:0;border-right:0;bottom:-10px;left:-10px}.portfolio-splash__progress{background:color-mix(in srgb, var(--page-text) 14%, transparent);height:1px;position:absolute;bottom:clamp(22px,4vw,54px);left:clamp(22px,4vw,54px);right:clamp(22px,4vw,54px);overflow:hidden}.portfolio-splash__progress span{transform-origin:0;background:#2563eb;width:100%;height:100%;animation:1.54s cubic-bezier(.65,0,.35,1) both portfolio-splash-progress;display:block}@keyframes portfolio-splash-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (max-width:640px){.portfolio-splash__focus{flex-direction:column;gap:14px}.portfolio-splash__word{font-size:clamp(46px,17vw,78px)}}@media (prefers-reduced-motion:reduce){.portfolio-splash__progress span{animation:none}}html[data-theme-transitioning]::view-transition-group(root){animation:none}html[data-theme-transitioning]::view-transition-image-pair(root){animation:none}html[data-theme-transitioning]::view-transition-image-pair(root){isolation:isolate}html[data-theme-transitioning]::view-transition-old(root){mix-blend-mode:normal}html[data-theme-transitioning]::view-transition-new(root){mix-blend-mode:normal}html[data-theme-transitioning]::view-transition-new(root){z-index:1;animation:none}html[data-theme-transitioning]::view-transition-old(root){z-index:2;animation:theme-pixel-snapshot-hold var(--theme-pixel-duration,1.08s) linear both;-webkit-mask-image:var(--theme-pixel-mask);-webkit-mask-image:var(--theme-pixel-mask);mask-image:var(--theme-pixel-mask);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}html[data-theme-transition-capture] .target-cursor{opacity:0!important}@keyframes theme-pixel-snapshot-hold{0%,to{opacity:1}}@media (prefers-reduced-motion:reduce),(forced-colors:active){html[data-theme-transitioning]::view-transition-old(root){animation-duration:1ms}html[data-theme-transitioning]::view-transition-new(root){animation-duration:1ms}}.target-cursor{z-index:99999;opacity:0;pointer-events:none;will-change:transform;width:0;height:0;position:fixed;top:0;left:0}.target-cursor__dot{width:4px;height:4px;box-shadow:0 0 0 1px var(--page-bg), 0 0 10px color-mix(in srgb, var(--page-text) 35%, transparent);will-change:transform, background-color;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.target-cursor__corner{width:12px;height:12px;filter:drop-shadow(0 0 1px var(--page-bg));will-change:transform, border-color;border:3px solid;position:absolute;top:50%;left:50%}.target-cursor__corner--tl{border-bottom:0;border-right:0}.target-cursor__corner--tr{border-bottom:0;border-left:0}.target-cursor__corner--br{border-top:0;border-left:0}.target-cursor__corner--bl{border-top:0;border-right:0}@media (hover:hover) and (pointer:fine){html[data-target-cursor=true],html[data-target-cursor=true] body,html[data-target-cursor=true] body *{cursor:none!important}html[data-target-cursor=true] input:not([type]),html[data-target-cursor=true] input[type=text],html[data-target-cursor=true] input[type=email],html[data-target-cursor=true] input[type=search],html[data-target-cursor=true] input[type=url],html[data-target-cursor=true] input[type=tel],html[data-target-cursor=true] input[type=password],html[data-target-cursor=true] input[type=number],html[data-target-cursor=true] textarea,html[data-target-cursor=true] [contenteditable=true]{cursor:text!important}}@media (hover:none),(pointer:coarse){.target-cursor{display:none}}@media (forced-colors:active){.target-cursor{display:none}}.cursor-skin__lead,.cursor-skin__tip{z-index:99999;pointer-events:none;opacity:1;will-change:transform;width:0;height:0;filter:drop-shadow(0 0 1.5px var(--cursor-halo,#00000073));transition:opacity .14s;position:fixed;top:0;left:0}.cursor-skin__lead[data-state=hidden],.cursor-skin__tip[data-state=hidden]{opacity:0}.cursor-skin__lead>i,.cursor-skin__dot{box-sizing:border-box;transition:width .22s cubic-bezier(.22,1,.36,1),height .22s cubic-bezier(.22,1,.36,1),background-color .18s,border-color .18s,transform .18s,opacity .18s;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.cursor-skin--ring .cursor-skin__lead>i{border:1.5px solid color-mix(in srgb, var(--cursor-ink,currentColor) 38%, transparent);border-radius:50%;width:30px;height:30px}.cursor-skin--ring .cursor-skin__dot{background:var(--cursor-ink,currentColor);border-radius:50%;width:7px;height:7px}.cursor-skin--ring .cursor-skin__lead[data-state=target]>i{border-color:var(--cursor-ink-active,#a63e00);background:color-mix(in srgb, var(--cursor-ink-active,#a63e00) 11%, transparent);width:46px;height:46px}.cursor-skin--ring .cursor-skin__tip[data-state=target] .cursor-skin__dot{width:0;height:0}.cursor-skin--ring .cursor-skin__lead[data-press=true]>i{transform:translate(-50%,-50%)scale(.78)}.cursor-skin--ring .cursor-skin__tip[data-press=true] .cursor-skin__dot{transform:translate(-50%,-50%)scale(.7)}.cursor-skin--reticle .cursor-skin__lead>i{border:1px solid color-mix(in srgb, var(--cursor-ink,currentColor) 40%, transparent);border-radius:50%;width:26px;height:26px}.cursor-skin--reticle .cursor-skin__dot{background:var(--cursor-ink,currentColor);border-radius:50%;width:3px;height:3px}.cursor-skin__arms{width:0;height:0;transition:transform .26s cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:0;transform:translate(-50%,-50%)rotate(0)}.cursor-skin__arm{background:var(--cursor-ink,currentColor);transition:width .2s,height .2s,background-color .18s;position:absolute;top:0;left:0}.cursor-skin__arm--n{width:1px;height:8px;transform:translate(-50%,calc(-100% - 5px))}.cursor-skin__arm--s{width:1px;height:8px;transform:translate(-50%,5px)}.cursor-skin__arm--w{width:8px;height:1px;transform:translate(calc(-100% - 5px),-50%)}.cursor-skin__arm--e{width:8px;height:1px;transform:translate(5px,-50%)}.cursor-skin--reticle .cursor-skin__lead[data-state=target]>i{border-width:2px;border-color:var(--cursor-ink-active,#ffb648);width:15px;height:15px}.cursor-skin--reticle .cursor-skin__tip[data-state=target] .cursor-skin__dot{width:5px;height:5px}html[data-atlas-pan] .cursor-skin--reticle .cursor-skin__arms{transform:translate(-50%,-50%)rotate(45deg)}html[data-atlas-pan] .cursor-skin--reticle .cursor-skin__arm--n,html[data-atlas-pan] .cursor-skin--reticle .cursor-skin__arm--s{height:11px}html[data-atlas-pan] .cursor-skin--reticle .cursor-skin__arm--w,html[data-atlas-pan] .cursor-skin--reticle .cursor-skin__arm--e{width:11px}html[data-atlas-pan] .cursor-skin--reticle .cursor-skin__lead>i{opacity:0}@media (hover:none),(pointer:coarse){.cursor-skin{display:none}}@media (forced-colors:active){.cursor-skin{display:none}}
