:root{color-scheme:dark;--bg:#10110f;--panel:#161813;--text:#efefe7;--muted:#92958b;--line:#2b2e26;--accent:#c7e78b;--mono:'IBM Plex Mono',monospace;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:10;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.8' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}::selection{background:var(--accent);color:var(--bg)}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{border:0;background:none}button:disabled{cursor:default;opacity:.6}button[hidden],[hidden]{display:none!important}.page-shell{max-width:1600px;margin:auto;padding:0 5.6%}.skip-link{position:fixed;left:20px;top:-100px;background:var(--accent);color:var(--bg);z-index:100;padding:14px}.skip-link:focus{top:16px}.site-header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:25px}.wordmark{display:flex;align-items:center;gap:13px}.brand-symbol{display:block;position:relative;font-size:34px;font-weight:700;letter-spacing:-8px;padding-right:9px;line-height:1}.brand-symbol span{color:var(--accent)}.brand-symbol i{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--accent);right:0;bottom:3px}.brand-name{font-size:17px;font-weight:600;letter-spacing:-.6px}.brand-dot{color:var(--accent)}.desktop-nav{display:flex;gap:36px;margin-left:20px}.desktop-nav a{color:#a4a69c;font-size:13px;transition:color .2s;position:relative}.desktop-nav a:hover,.desktop-nav a.active{color:var(--text)}.desktop-nav a.active:after{content:'';position:absolute;bottom:-12px;left:50%;width:3px;height:3px;background:var(--accent);border-radius:50%}.header-contact{font-size:13px;border-bottom:1px solid #707866;padding:8px 0;display:flex;gap:31px}.header-contact span{color:var(--accent);font-size:20px;line-height:16px}.menu-toggle{display:none}.hero{position:relative;display:grid;grid-template-columns:1.13fr 1fr;column-gap:1%;padding-top:80px}.hero-copy{padding-top:27px;position:relative;z-index:1}.eyebrow,.section-kicker{font:10px var(--mono);letter-spacing:1.3px;display:flex;align-items:center;gap:10px}.hero-eyebrow{color:#bbc0af}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px #c7e78b22}.hero h1{font-size:clamp(48px,5.22vw,78px);letter-spacing:-4.5px;line-height:1.11;font-weight:500;margin:30px 0 28px;white-space:nowrap}.play-word{position:relative;color:var(--accent);font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-4px}.play-word svg{position:absolute;bottom:-8px;left:0;width:100%;height:12px;overflow:visible}.play-word path{fill:none;stroke:var(--accent);stroke-width:1.6}.period{color:var(--accent)}.hero-description{font-size:15px;line-height:1.85;color:#a5a89e;margin:0;letter-spacing:.03px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:31px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:16px 20px;font-size:12px;font-weight:600;transition:background .2s,transform .2s}.button-primary{background:var(--accent);color:#1b2410}.button:hover{background:#d8f4a4;transform:translateY(-2px)}.button span{font-size:20px;font-weight:400;line-height:13px}.text-link{font-size:12px;display:inline-flex;gap:17px;align-items:center}.text-link span{font-size:18px;color:#c2c8b5;transition:transform .2s}.text-link:hover span{transform:translate(2px,2px)}.hero-disciplines{display:flex;align-items:center;gap:18px;margin-top:44px;color:#92978a;font-size:10px}.hero-disciplines>span:not(.discipline-divider){display:flex;align-items:center;gap:8px}.hero-disciplines svg{width:17px;height:17px;stroke:#a1ad90;fill:none;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.discipline-divider{height:12px;width:1px;background:#363a30}.hero-visual{height:464px;position:relative;margin-top:0;min-width:0;isolation:isolate}.hero-visual:before{content:'';position:absolute;width:85%;height:85%;left:8%;top:2%;background:radial-gradient(ellipse,#45582c15,transparent 67%);z-index:-1}#sculpture{display:block;width:100%;height:100%;position:absolute;inset:0}.visual-coordinate{position:absolute;font:8px var(--mono);letter-spacing:1px;color:#777e6d;z-index:2}.visual-coordinate-top{top:0;left:24px;display:flex;align-items:center;gap:12px}.crosshair{font-size:23px;font-weight:400;color:#a8b197}.orbit-note{position:absolute;right:0;top:66%;display:flex;align-items:center;gap:10px;font:7px/1.8 var(--mono);letter-spacing:.6px;color:#929c81}.note-line{height:1px;width:35px;background:#556143;transform:rotate(-30deg);transform-origin:right}.visual-coordinate-bottom{bottom:5px;left:25px;right:0;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #272c21;padding-top:12px;font-size:7px}.visual-coordinate-bottom>span:first-child{display:flex;align-items:center;gap:7px}.visual-coordinate-bottom i{display:block;width:3px;height:3px;background:var(--accent);border-radius:50%}.visual-coordinate-bottom>span:last-child{font-size:15px}.hero-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;margin:60px 0 28px;color:#777e6c;font:8px var(--mono);letter-spacing:.8px;gap:20px}.scroll-cue{display:flex;align-items:center;gap:10px}.scroll-cue>span{font-size:17px;border:1px solid #3b4132;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;color:#b7c1a6;transition:transform .2s}.scroll-cue:hover>span{transform:translateY(3px)}.hero-bottom-note{font-family:var(--sans);font-size:11px;letter-spacing:0;color:#858a7d}.practice-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 1px;font-size:12px;letter-spacing:1.8px;color:#8c9183}.strip-star{font-size:20px;color:#6e7d58}.section{padding:91px 0}.section-kicker{font-size:9px;color:#9b9e91;gap:12px}.section-number{color:var(--accent)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:26px 0 34px}h2{margin:0;font-size:39px;font-weight:450;letter-spacing:-1.7px;line-height:1.2}.muted-heading{color:#828779}.about-section{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:86px 0 85px}.about-section h2{margin-top:32px;font-size:40px;line-height:1.28}.serif-accent{font-family:Georgia,'Times New Roman',serif;font-style:italic;color:var(--accent);font-weight:400}.signature{font-family:Georgia,serif;font-style:italic;display:flex;align-items:center;gap:24px;font-size:23px;margin-top:47px;color:#aaa99a;transform:rotate(-4deg);transform-origin:left}.signature>span{font-family:var(--sans);font-size:14px;color:#7e8c6b}.about-copy{padding-top:25px}.about-copy p{font-size:13px;line-height:1.95;color:#939a88;margin:0 0 17px;max-width:440px}.about-copy .about-lead{font-size:20px;color:#d8ddcf;line-height:1.65;letter-spacing:-.4px;margin-bottom:21px}.about-link{margin-top:13px;font-size:11px;color:#c8d5b4}.toolbox-section{display:grid;grid-template-columns:1fr 1.15fr;gap:100px;padding-top:88px;padding-bottom:94px}.toolbox-intro h2{font-size:34px;margin-top:28px}.toolbox-intro>p{color:#858e7a;font-size:12px;line-height:1.7;margin-top:18px}.principle-list{margin-top:-4px}.principle{border-bottom:1px solid var(--line);display:flex;gap:20px;padding:25px 0;align-items:center}.principle:first-child{padding-top:0;padding-bottom:25px}.principle-index{font:8px var(--mono);color:#879b6b;align-self:flex-start;margin-top:6px}.principle>div{flex:1}.principle h3{font-size:17px;font-weight:450;letter-spacing:-.3px;margin:0 0 8px}.principle p{margin:0;font-size:10px;color:#8c9580;line-height:1.6}.principle-icon{font-size:25px;line-height:1;color:#9bb57c;font-weight:400}.contact-section{padding:37px 40px 23px;background:#1c2316;border:1px solid #35432a;border-radius:4px;position:relative;overflow:hidden}.contact-section:before{content:'';position:absolute;pointer-events:none;width:450px;height:450px;right:1%;top:-80px;background:radial-gradient(circle,#607b2e15,transparent 70%)}.contact-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.contact-note{font:7px var(--mono);color:#83936f;letter-spacing:.7px}.contact-main{display:flex;justify-content:space-between;align-items:center;padding:42px 0 45px;gap:30px}.contact-main h2{font-size:58px;line-height:1.05;letter-spacing:-2px}.contact-main p{font-size:11px;color:#99a68a;margin-top:22px}.contact-orb{width:132px;height:132px;border:1px solid #708a4d;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:13px;margin-right:25px;font-size:13px;position:relative;transition:background .3s,transform .3s,border-color .3s}.contact-orb>span:last-child{font-size:23px;color:var(--accent)}.contact-orb:hover{background:#c7e78b;color:#20300f;transform:rotate(-7deg);border-color:var(--accent)}.contact-orb:hover>span:last-child{color:#20300f}.contact-bottom{border-top:1px solid #35432a;padding-top:19px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#879c6e;font:7px var(--mono);letter-spacing:.5px}.site-footer{padding:36px 0 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;color:#7b8370}.footer-brand{font-size:13px;font-weight:500;letter-spacing:-.3px;color:#c2c9b6}.footer-brand span{color:var(--accent)}.back-top{display:flex;align-items:center;gap:15px}.back-top span{font-size:16px;color:#b8c6a3}.mobile-nav{border-bottom:1px solid var(--line);padding:15px 0 20px}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;padding:14px 0;font-size:18px}.mobile-nav span{font:11px var(--mono);color:var(--accent)}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);padding:14px 22px;border:1px solid #556d39;background:#25331a;box-shadow:0 10px 40px #0007;font-size:12px;color:#d3e8b5;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:100;max-width:calc(100% - 40px);text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1500px){.hero h1{font-size:82px}.hero-visual{height:510px}.hero-copy{padding-top:45px}.hero-bottom{margin-top:70px}}
@media(max-width:1100px){.page-shell{padding:0 5%}.site-header{height:94px}.hero{padding-top:60px;grid-template-columns:1.2fr 1fr}.hero h1{font-size:58px;letter-spacing:-3px}.hero-visual{height:430px}.hero-copy{padding-top:35px}.hero-eyebrow{font-size:8px}.hero-description{font-size:13px}.hero-actions{gap:20px}.hero-disciplines{font-size:9px;gap:12px;margin-top:35px}.visual-coordinate{font-size:6px}.visual-coordinate-top{left:10px}.orbit-note{font-size:6px;right:-4px}.hero-bottom{margin-top:39px}.practice-strip{font-size:10px;letter-spacing:1.2px}.about-section{gap:45px}.about-section h2{font-size:35px}.about-copy .about-lead{font-size:18px}.toolbox-section{gap:50px}.section{padding-top:75px;padding-bottom:75px}.section-heading h2{font-size:34px}.contact-section{padding:30px 32px 22px}.contact-main h2{font-size:53px}}
@media(max-width:800px){.brand-name{font-size:15px}.desktop-nav{gap:25px;margin-left:0}.hero{grid-template-columns:1.25fr 1fr;padding-top:45px}.hero h1{font-size:48px;letter-spacing:-2.8px}.hero-eyebrow{font-size:7px;letter-spacing:.8px}.hero-visual{height:400px}.hero-description{font-size:12px}.hero-actions{gap:18px;align-items:flex-start;flex-direction:column;margin-top:25px}.hero-actions .text-link{font-size:10px}.hero-disciplines{margin-top:26px;gap:10px;font-size:8px;white-space:nowrap}.hero-disciplines svg{width:14px}.visual-coordinate-top{font-size:5px;letter-spacing:.5px;left:0}.orbit-note{display:none}.visual-coordinate-bottom{left:5px;bottom:15px;font-size:5px}.hero-bottom-note{font-size:9px}.edition{display:none}.hero-bottom{margin-top:32px}.practice-strip{font-size:8px;letter-spacing:1px;gap:10px;padding:20px 0}.strip-star{font-size:16px}.section-heading{display:block}.about-section{gap:32px}.about-section h2{font-size:29px}.about-copy .about-lead{font-size:16px}.about-copy p{font-size:11px}.signature{font-size:21px}.section-kicker{font-size:7px;letter-spacing:1px}.toolbox-section{gap:30px}.toolbox-intro h2{font-size:29px}.principle{gap:15px}.principle h3{font-size:15px}.principle p{font-size:9px}.principle-icon{font-size:21px}.contact-main h2{font-size:48px}.contact-orb{width:105px;height:105px;margin-right:0}.contact-note{font-size:5px}.contact-bottom{font-size:5px}.contact-section{padding:26px}.section{padding-top:65px;padding-bottom:65px}}
@media(max-width:600px){.page-shell{padding:0 6%}.site-header{height:82px}.brand-symbol{font-size:30px}.brand-name{font-size:15px}.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex;width:40px;height:40px;flex-direction:column;gap:6px;justify-content:center;align-items:center}.menu-toggle span{width:20px;height:1px;background:#b5c3a2;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{display:flex;flex-direction:column;padding-top:43px}.hero-copy{padding:0}.hero-eyebrow{font-size:8px;letter-spacing:.9px}.hero h1{font-size:clamp(42px,10.6vw,64px);letter-spacing:-2.7px;line-height:1.13;margin:26px 0 23px}.play-word{letter-spacing:-2px}.hero-description{font-size:13px;line-height:1.9}.hero-actions{flex-direction:row;align-items:center;gap:23px;margin-top:26px}.button{padding:15px 17px;font-size:11px;gap:20px}.hero-actions .text-link{font-size:10px;gap:11px}.hero-disciplines{font-size:9px;margin-top:31px;gap:16px}.hero-disciplines svg{width:16px;height:16px}.hero-visual{width:100%;height:330px;margin-top:34px}.visual-coordinate-top{left:3px;font-size:6px;letter-spacing:.8px}.visual-coordinate-bottom{bottom:0;left:3px;font-size:6px}.hero-visual:before{top:0}.orbit-note{display:flex;font-size:5px;right:0;top:64%}.note-line{width:23px}.hero-bottom{margin:30px 0 23px;width:100%;gap:12px;font-size:6px;letter-spacing:.5px}.hero-bottom-note{font-size:8px;max-width:150px;line-height:1.6;text-align:right}.scroll-cue{gap:8px}.scroll-cue>span{width:23px;height:23px;font-size:16px}.practice-strip{display:grid;grid-template-columns:1fr 12px 1fr;gap:17px 12px;font-size:8px;letter-spacing:1.1px;text-align:center;padding:22px 3px}.practice-strip>.strip-star:nth-of-type(4){display:none}.practice-strip>.strip-star{font-size:14px}.section{padding:55px 0}.section-kicker{font-size:7px;letter-spacing:1px}.section-heading{margin:22px 0 26px}.section-heading h2{font-size:30px;letter-spacing:-1px}.about-section{grid-template-columns:1fr;gap:29px}.about-section h2{font-size:34px;margin-top:25px;letter-spacing:-1.3px}.signature{margin-top:29px;font-size:23px}.about-copy{padding-top:0}.about-copy p{font-size:13px;max-width:none}.about-copy .about-lead{font-size:18px;line-height:1.6}.about-link{font-size:11px}.toolbox-section{grid-template-columns:1fr;gap:34px}.toolbox-intro h2{font-size:32px;margin-top:24px}.toolbox-intro h2 br{display:none}.toolbox-intro>p{font-size:12px;margin-top:14px}.principle h3{font-size:17px}.principle p{font-size:11px;max-width:255px}.principle{padding:23px 0;gap:15px}.principle-index{font-size:8px}.principle-icon{font-size:26px}.contact-section{padding:25px 24px 20px}.contact-note{display:none}.contact-main{padding:31px 0;gap:15px;align-items:flex-start;flex-direction:column}.contact-main h2{font-size:47px;letter-spacing:-1.6px}.contact-main p{font-size:11px;max-width:210px;line-height:1.8;margin-top:17px}.contact-orb{width:85px;height:85px;align-self:flex-end;margin-top:-40px;margin-bottom:3px;gap:8px;font-size:11px}.contact-orb>span:last-child{font-size:20px}.contact-bottom{font-size:5px;letter-spacing:0;gap:10px;line-height:1.6;padding-top:16px}.contact-bottom>span:last-child{text-align:right;max-width:135px}.site-footer{padding:30px 0;flex-wrap:wrap;row-gap:20px;font-size:8px}.footer-brand{font-size:12px}.site-footer>span{order:3;width:100%;text-align:center;font-size:8px;color:#66715b}.back-top{font-size:9px}.toast{font-size:11px;bottom:18px;width:max-content}}
@media(max-width:360px){.hero h1{font-size:38px}.hero-eyebrow{font-size:7px}.hero-actions{gap:17px}.hero-actions .text-link{font-size:9px}.hero-disciplines{font-size:8px}.contact-orb{margin-top:-10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.contact-email{display:flex;align-items:center;gap:10px;font:11px var(--sans);letter-spacing:0;color:#c1d2ad}.contact-email>a:hover{color:var(--accent)}#copy-email{width:30px;height:30px;display:grid;place-items:center;color:#9caf88}#copy-email:hover{color:var(--accent)}#copy-email svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.2}@media(max-width:600px){.contact-email{font-size:10px;gap:4px}.contact-bottom>span:last-child{font-size:5px;max-width:90px}#copy-email{width:28px;height:30px}}.footer-links{display:flex;align-items:center;gap:28px}.footer-steam{display:flex;align-items:center;gap:9px;color:#a4b48f}.footer-steam span{color:var(--accent);font-size:13px}.footer-steam:hover{color:var(--accent)}@media(max-width:600px){.footer-links{gap:22px}.footer-steam{font-size:9px}}

/* Featured Steam game */
.work-section .section-heading{display:flex;align-items:flex-end;gap:30px;margin-bottom:34px}
.work-count{font:8px var(--mono);letter-spacing:1.1px;color:#8f9b80;padding-bottom:5px;white-space:nowrap}
.featured-game{display:grid;grid-template-columns:1.15fr 1fr;min-height:440px;overflow:hidden;border:1px solid #343b2b;border-radius:4px;background:var(--panel)}
.game-cover{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:440px;padding:66px 0 72px;background:#090b08;border-right:1px solid #343b2b;isolation:isolate}
.game-cover::before{content:'';position:absolute;inset:0;background:linear-gradient(145deg,#1b211313,transparent 65%);pointer-events:none}
.game-cover-image{display:block;width:100%;height:auto;aspect-ratio:460/215;object-fit:contain;opacity:.94;transition:opacity .35s}
.game-cover:hover .game-cover-image{opacity:1}
.game-cover-label{position:absolute;top:25px;left:26px;font:7px var(--mono);letter-spacing:1.2px;color:#99a38a}
.game-cover-bottom{position:absolute;left:26px;right:26px;bottom:23px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#89967a;font:7px var(--mono);letter-spacing:1.1px}
.game-cover-bottom>span{display:grid;place-items:center;width:32px;height:32px;border:1px solid #49573a;border-radius:50%;color:#bad595;font:19px var(--sans);transition:transform .25s,border-color .25s,background .25s}
.game-cover:hover .game-cover-bottom>span{transform:translate(2px,-2px);border-color:#8ca26c;background:#c7e78b0d}
.game-details{padding:34px 36px 36px;min-width:0;align-self:center}
.game-status{display:flex;align-items:center;gap:8px;font:7px var(--mono);letter-spacing:1.15px;color:#a8bd8c}
.game-status>i{display:block;width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}
.game-details h3{margin:22px 0 18px;font-size:37px;line-height:1.12;font-weight:450;letter-spacing:-1.3px;color:#e5e9dc}
.game-details h3>span{display:block;margin-top:9px;font-size:13px;font-weight:400;line-height:1.5;letter-spacing:.25px;color:#adb69e}
.game-summary{margin:0;max-width:410px;font-size:12px;line-height:1.9;color:#939e86}
.game-genres{display:flex;flex-wrap:wrap;gap:7px;margin-top:21px}
.game-genres>span{padding:6px 8px;border:1px solid #343e2a;border-radius:2px;font-size:8px;line-height:1.2;color:#a0ad90}
.game-credit{display:flex;align-items:center;gap:18px;margin-top:23px;padding-top:20px;border-top:1px solid #303a25}
.game-credit>span{font:6px var(--mono);letter-spacing:1px;color:#7f8d70}
.game-credit>strong{font-size:11px;line-height:1.5;font-weight:450;color:#bdc9ad}
.game-steam-button{margin-top:24px;gap:30px;padding:15px 19px}
.game-work-bottom{display:flex;align-items:baseline;justify-content:space-between;gap:25px;margin-top:24px}
.work-footnote{margin:0;font:8px/1.9 var(--mono);color:#77816b}
.game-work-bottom>.text-link{flex-shrink:0;font-size:10px;color:#b4c59e;gap:12px}
.game-work-bottom>.text-link>span{font-size:16px;color:var(--accent)}
@media(max-width:1100px){.featured-game{grid-template-columns:1.1fr 1fr}.game-details{padding:30px 28px 32px}.game-details h3{font-size:33px}.game-details h3>span{font-size:12px}.game-cover-label{left:22px}.game-cover-bottom{left:22px;right:22px;font-size:6px}.work-count{font-size:7px;letter-spacing:.8px}.game-summary{font-size:11px}.game-genres>span{font-size:7px}.game-credit{gap:12px}.game-credit>span{font-size:5px;letter-spacing:.8px}}
@media(max-width:800px){.work-section .section-heading{display:flex;align-items:flex-end}.featured-game{grid-template-columns:1fr}.game-cover{min-height:0;padding:51px 7% 61px;border-right:0;border-bottom:1px solid #343b2b}.game-cover-image{max-width:650px}.game-details{padding:33px 35px 36px}.game-details h3{font-size:37px}.game-details h3>span{font-size:13px}.game-summary{font-size:12px;max-width:540px}.game-genres>span{font-size:8px}.game-credit{gap:18px}.game-credit>span{font-size:6px}.game-cover-bottom{bottom:18px;font-size:7px}.game-cover-label{top:21px;font-size:7px}.game-cover-bottom>span{width:29px;height:29px;font-size:17px}.game-work-bottom{gap:20px}.work-footnote{font-size:7px}.game-work-bottom>.text-link{font-size:9px}}
@media(max-width:600px){.work-section .section-heading{display:block;margin-bottom:25px}.work-count{display:block;margin-top:21px;font-size:7px;letter-spacing:1px;padding:0}.game-cover{padding:48px 0 54px}.game-cover-label{top:19px;left:20px;font-size:6px}.game-cover-bottom{left:20px;right:20px;bottom:16px;font-size:5px;letter-spacing:.8px}.game-details{padding:28px 23px 30px}.game-status{font-size:6px;letter-spacing:1px}.game-details h3{font-size:34px;margin-top:20px;margin-bottom:17px;letter-spacing:-1px}.game-details h3>span{font-size:12px;margin-top:8px}.game-summary{font-size:12px;line-height:1.85}.game-genres{gap:6px;margin-top:20px}.game-genres>span{font-size:7px;padding:6px 7px}.game-credit{margin-top:21px;padding-top:18px;gap:15px}.game-credit>span{font-size:5px;letter-spacing:.7px}.game-credit>strong{font-size:10px}.game-steam-button{margin-top:23px;padding:15px 18px;font-size:11px;gap:28px}.game-work-bottom{flex-direction:column;align-items:flex-start;gap:13px;margin-top:22px}.work-footnote{font-size:7px;max-width:310px}.game-work-bottom>.text-link{font-size:10px}}
@media(max-width:360px){.game-details{padding:25px 20px 27px}.game-details h3{font-size:31px}.game-details h3>span{font-size:11px}.game-summary{font-size:11px}.game-credit{flex-wrap:wrap;gap:7px 14px}.game-genres{gap:5px}.game-genres>span{font-size:6px}.game-cover-bottom{font-size:4px}}
.reveal-enter{animation:reveal-entry .6s ease both}@keyframes reveal-entry{from{opacity:.75;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.not-found{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:40px 7%}.not-found-content{max-width:650px}.not-found .wordmark{display:inline-flex;margin-bottom:65px}.not-found .section-kicker{margin-bottom:24px}.not-found h1{font-size:clamp(42px,7vw,76px);font-weight:450;line-height:1.1;letter-spacing:-2px;margin:0 0 25px}.not-found p{color:var(--muted);font-size:15px;line-height:1.8;max-width:430px;margin-bottom:30px}@media(prefers-reduced-motion:reduce){.reveal-enter{animation:none}}

/* Last Known Path: a typographic project feature with decorative route art. */
.path-game {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  margin-top: 28px;
  overflow: hidden;
  border: 1px solid #344033;
  border-radius: 4px;
  background: #151c18;
}

.path-art {
  position: relative;
  min-width: 0;
  min-height: 420px;
  overflow: hidden;
  border-right: 1px solid #344033;
  background: #111912;
  isolation: isolate;
}

.path-map {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .5;
  pointer-events: none;
  user-select: none;
}

.path-art::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #111912c9, #11191222 72%);
  pointer-events: none;
}

.path-art-label {
  position: absolute;
  z-index: 1;
  top: 25px;
  left: 29px;
  color: #8f9e82;
  font: 7px var(--mono);
  letter-spacing: 1.2px;
}

.path-art-title {
  position: absolute;
  z-index: 1;
  top: 82px;
  right: 25px;
  left: 29px;
  display: block;
  margin: 0;
  color: #e1e7d8;
  font-size: 72px;
  font-weight: 450;
  line-height: .91;
  letter-spacing: -3.7px;
}

.path-art-title em {
  color: var(--accent);
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
  font-style: italic;
  letter-spacing: -3px;
}

.path-art-bottom {
  position: absolute;
  z-index: 1;
  right: 27px;
  bottom: 23px;
  left: 29px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  color: #869a75;
  font: 7px var(--mono);
  letter-spacing: 1px;
}

.path-art-bottom > span:last-child {
  display: grid;
  flex-shrink: 0;
  width: 31px;
  height: 31px;
  place-items: center;
  border: 1px solid #475d3b;
  border-radius: 50%;
  color: #b9d59a;
  font: 18px var(--sans);
}

.path-details {
  min-width: 0;
  align-self: center;
  padding: 35px 36px 37px;
}

.path-details h3 {
  margin: 23px 0 18px;
  color: #e5e9dc;
  font-size: 35px;
  font-weight: 450;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.path-summary {
  max-width: 410px;
  margin: 0;
  color: #98a28d;
  font-size: 12px;
  line-height: 1.9;
}

.path-credit {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: 23px;
  padding-top: 20px;
  border-top: 1px solid #303e2e;
}

.path-credit > span {
  color: #849379;
  font: 6px var(--mono);
  letter-spacing: 1px;
}

.path-credit > strong {
  color: #bdcbb0;
  font-size: 11px;
  font-weight: 450;
  line-height: 1.5;
}

.path-cta {
  gap: 19px;
  margin-top: 25px;
  padding-bottom: 7px;
  border-bottom: 1px solid #596d46;
  color: #c4d6b0;
  font-size: 11px;
}

.path-cta > span { color: var(--accent); }
.path-cta:hover > span { transform: translate(2px, -2px); }

/* Professional and personal profiles share the site's ruled row language. */
.elsewhere-section {
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  gap: 100px;
  padding: 82px 0 88px;
  border-top: 1px solid var(--line);
}

.elsewhere-intro,
.elsewhere-links { min-width: 0; }

.elsewhere-intro h2 {
  margin-top: 27px;
  font-size: 39px;
  line-height: 1.2;
}

.elsewhere-intro > p {
  max-width: 315px;
  margin: 20px 0 0;
  color: #8f9a84;
  font-size: 12px;
  line-height: 1.85;
}

.social-row {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 25px 0;
  border-bottom: 1px solid var(--line);
  transition: border-color .2s;
}

.social-row:first-child { border-top: 1px solid var(--line); }
.social-row:hover { border-bottom-color: #607747; }

.social-index {
  flex: 0 0 23px;
  align-self: flex-start;
  margin-top: 5px;
  color: #7f946c;
  font: 8px var(--mono);
}

.social-copy {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  gap: 7px;
}

.social-copy > strong {
  color: #dfe5d5;
  font-size: 19px;
  font-weight: 450;
  letter-spacing: -.4px;
  transition: color .2s;
}

.social-copy > span {
  color: #89967d;
  font-size: 10px;
  line-height: 1.65;
}

.social-arrow {
  display: grid;
  flex-shrink: 0;
  width: 37px;
  height: 37px;
  place-items: center;
  border: 1px solid #3b4a30;
  border-radius: 50%;
  color: #b6cda0;
  font-size: 21px;
  transition: transform .2s, border-color .2s, background .2s;
}

.social-row:hover .social-copy > strong { color: var(--accent); }
.social-row:hover .social-arrow {
  transform: translate(2px, -2px);
  border-color: #7a955a;
  background: #c7e78b0b;
}

.footer-links { flex-wrap: wrap; row-gap: 14px; }
.footer-social {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #a4b48f;
  font-size: 9px;
}
.footer-social > span { color: var(--accent); font-size: 13px; }
.footer-social:hover { color: var(--accent); }

@media (max-width: 1100px) {
  .path-game { grid-template-columns: 1.1fr 1fr; }
  .path-art-title { font-size: 66px; }
  .path-details { padding: 31px 28px 33px; }
  .path-details h3 { font-size: 32px; }
  .path-summary { font-size: 11px; }
  .path-credit { gap: 12px; }
  .path-credit > span { font-size: 5px; letter-spacing: .8px; }
  .elsewhere-section { gap: 50px; padding-top: 75px; padding-bottom: 80px; }
  .elsewhere-intro h2 { font-size: 35px; }
}

@media (max-width: 800px) {
  .path-game { grid-template-columns: 1fr; margin-top: 24px; }
  .path-art { min-height: 350px; border-right: 0; border-bottom: 1px solid #344033; }
  .path-art-title { top: 70px; font-size: 73px; }
  .path-map { object-position: center; opacity: .45; }
  .path-details { padding: 32px 35px 35px; }
  .path-details h3 { font-size: 35px; }
  .path-summary { max-width: 540px; font-size: 12px; }
  .path-credit { gap: 18px; }
  .path-credit > span { font-size: 6px; }
  .elsewhere-section { grid-template-columns: 1fr 1.1fr; gap: 32px; padding: 65px 0 70px; }
  .elsewhere-intro h2 { font-size: 32px; }
  .elsewhere-intro > p { font-size: 11px; }
  .social-row { gap: 15px; padding: 23px 0; }
  .social-index { flex-basis: 20px; font-size: 7px; }
  .social-copy > strong { font-size: 17px; }
  .social-copy > span { font-size: 9px; }
  .social-arrow { width: 32px; height: 32px; font-size: 19px; }
}

@media (max-width: 600px) {
  .path-art { min-height: 330px; }
  .path-art-label { top: 22px; left: 24px; font-size: 6px; }
  .path-art-title { top: 73px; left: 24px; right: 22px; font-size: 61px; letter-spacing: -2.8px; }
  .path-art-title em { letter-spacing: -2.5px; }
  .path-art-bottom { left: 24px; right: 23px; bottom: 20px; font-size: 6px; letter-spacing: .7px; }
  .path-art-bottom > span:last-child { width: 28px; height: 28px; font-size: 16px; }
  .path-map { opacity: .38; }
  .path-details { padding: 28px 23px 30px; }
  .path-details h3 { margin: 21px 0 17px; font-size: 31px; letter-spacing: -1px; }
  .path-summary { line-height: 1.85; }
  .path-credit { gap: 14px; margin-top: 21px; padding-top: 18px; }
  .path-credit > span { font-size: 5px; letter-spacing: .7px; }
  .path-credit > strong { font-size: 10px; }
  .path-cta { margin-top: 23px; font-size: 11px; }
  .elsewhere-section { grid-template-columns: 1fr; gap: 28px; padding: 55px 0; }
  .elsewhere-intro h2 { margin-top: 24px; font-size: 34px; letter-spacing: -1.3px; }
  .elsewhere-intro > p { max-width: 330px; margin-top: 17px; font-size: 12px; }
  .social-row { padding: 23px 0; gap: 16px; }
  .social-index { flex-basis: 22px; font-size: 8px; }
  .social-copy > strong { font-size: 18px; }
  .social-copy > span { font-size: 10px; }
  .social-arrow { width: 34px; height: 34px; font-size: 20px; }
  .footer-links { width: 100%; justify-content: space-between; gap: 13px 16px; }
  .footer-social { font-size: 9px; }
}

@media (max-width: 360px) {
  .path-art { min-height: 300px; }
  .path-art-title { top: 67px; left: 21px; font-size: 53px; letter-spacing: -2.5px; }
  .path-art-label, .path-art-bottom { left: 21px; }
  .path-art-bottom { font-size: 5px; }
  .path-details { padding: 25px 20px 28px; }
  .path-details h3 { font-size: 28px; }
  .path-summary { font-size: 11px; }
  .path-credit { flex-wrap: wrap; gap: 7px 12px; }
  .social-row { gap: 12px; }
  .social-index { flex-basis: 20px; }
  .social-copy > strong { font-size: 17px; }
  .social-arrow { width: 32px; height: 32px; }
  .footer-links { column-gap: 12px; }
  .footer-social { font-size: 8px; }
  .footer-links .back-top { gap: 10px; font-size: 8px; }
}

/* The core loop remains part of the Last Known Path feature. */
.path-mechanics {
  grid-column: 1 / -1;
  min-width: 0;
  padding: 29px 32px 30px;
  border-top: 1px solid #344033;
  background: #111813;
}

.path-mechanics-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 25px;
}

.path-mechanics-heading > span {
  color: #9cb389;
  font: 8px var(--mono);
  letter-spacing: 1.1px;
}

.path-mechanics-heading > p {
  margin: 0;
  color: #c0cfb1;
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: -.1px;
}

.path-loop {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  margin-top: 27px;
}

.path-step {
  min-width: 0;
  padding-left: 25px;
  border-left: 1px solid #303e2e;
}

.path-step:first-child {
  padding-left: 0;
  border-left: 0;
}

.path-step-index {
  display: block;
  color: #8da775;
  font: 7px var(--mono);
  letter-spacing: .8px;
}

.path-step h4 {
  margin: 13px 0 10px;
  color: #dbe4d0;
  font-size: 17px;
  font-weight: 450;
  line-height: 1.35;
  letter-spacing: -.3px;
}

.path-step p {
  margin: 0;
  color: #909f85;
  font-size: 11px;
  line-height: 1.85;
}

.path-fairness {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 22px;
  margin: 25px 0 0;
  padding-top: 18px;
  border-top: 1px solid #2d3a29;
  color: #8ea17f;
  font: 8px/1.8 var(--mono);
}

.path-fairness > span {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
}

.path-fairness > span::before {
  content: '·';
  color: var(--accent);
}

/* Two complementary disciplines, presented without additional card chrome. */
.expertise-section {
  padding: 84px 0 88px;
  border-top: 1px solid var(--line);
}

.expertise-heading {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: end;
  column-gap: 80px;
  row-gap: 27px;
  margin-bottom: 38px;
}

.expertise-heading > .section-kicker { grid-column: 1 / -1; }

.expertise-heading h2 {
  margin: 0;
  font-size: 39px;
  line-height: 1.2;
}

.expertise-heading > p {
  max-width: 420px;
  margin: 0 0 3px;
  color: #939f87;
  font-size: 13px;
  line-height: 1.85;
}

.expertise-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}

.expertise-lane {
  min-width: 0;
  padding-top: 29px;
  border-top: 1px solid #3b4730;
}

.expertise-lane-label {
  display: block;
  color: #91a27e;
  font: 8px var(--mono);
  letter-spacing: 1px;
}

.expertise-lane h3 {
  margin: 18px 0 13px;
  color: #e0e7d6;
  font-size: 25px;
  font-weight: 450;
  line-height: 1.3;
  letter-spacing: -.7px;
}

.expertise-lane > p {
  max-width: 455px;
  margin: 0;
  color: #909e82;
  font-size: 12px;
  line-height: 1.9;
}

.stack-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 22px;
}

.stack-tags > span {
  display: inline-block;
  max-width: 100%;
  padding: 7px 10px;
  border: 1px solid #34412a;
  border-radius: 2px;
  background: #1a2115;
  color: #b3c4a0;
  font: 8px/1.3 var(--mono);
  overflow-wrap: break-word;
}

@media (max-width: 1100px) {
  .path-mechanics { padding: 28px; }
  .path-loop { gap: 22px; }
  .path-step { padding-left: 20px; }
  .path-step h4 { font-size: 16px; }
  .path-mechanics-heading > p { font-size: 13px; }
  .expertise-section { padding-top: 75px; padding-bottom: 78px; }
  .expertise-heading { column-gap: 50px; }
  .expertise-heading h2 { font-size: 35px; }
  .expertise-heading > p { font-size: 12px; }
  .expertise-grid { gap: 28px; }
  .expertise-lane h3 { font-size: 23px; }
}

@media (max-width: 800px) {
  .path-mechanics { padding: 28px 35px 30px; }
  .path-mechanics-heading { display: block; }
  .path-mechanics-heading > p { margin-top: 12px; font-size: 15px; }
  .path-loop { gap: 23px; margin-top: 25px; }
  .path-step { padding-left: 20px; }
  .path-step p { font-size: 11px; }
  .path-fairness { column-gap: 18px; }
  .expertise-section { padding: 65px 0 70px; }
  .expertise-heading { column-gap: 32px; row-gap: 25px; margin-bottom: 33px; }
  .expertise-heading h2 { font-size: 32px; }
  .expertise-heading > p { font-size: 11px; }
  .expertise-grid { gap: 27px; }
  .expertise-lane { padding-top: 25px; }
  .expertise-lane-label { font-size: 7px; letter-spacing: .7px; }
  .expertise-lane h3 { font-size: 21px; }
  .expertise-lane > p { font-size: 11px; }
  .stack-tags { gap: 6px; margin-top: 20px; }
  .stack-tags > span { padding: 6px 8px; font-size: 7px; }
}

@media (max-width: 600px) {
  .path-mechanics { padding: 26px 23px 28px; }
  .path-mechanics-heading > span { font-size: 7px; }
  .path-mechanics-heading > p { margin-top: 12px; font-size: 15px; line-height: 1.6; }
  .path-loop { grid-template-columns: 1fr; gap: 0; margin-top: 24px; }
  .path-step { padding: 21px 0; border-top: 1px solid #303e2e; border-left: 0; }
  .path-step:first-child { padding-top: 0; border-top: 0; }
  .path-step:last-child { padding-bottom: 0; }
  .path-step-index { font-size: 7px; }
  .path-step h4 { margin: 11px 0 9px; font-size: 18px; }
  .path-step p { font-size: 12px; line-height: 1.8; }
  .path-fairness { gap: 8px 16px; margin-top: 23px; padding-top: 17px; font-size: 7px; }
  .path-fairness > span { gap: 7px; }
  .expertise-section { padding: 55px 0; }
  .expertise-heading { grid-template-columns: 1fr; gap: 23px; margin-bottom: 29px; }
  .expertise-heading h2 { font-size: 34px; letter-spacing: -1.3px; }
  .expertise-heading > p { max-width: none; margin: -3px 0 0; font-size: 12px; }
  .expertise-grid { grid-template-columns: 1fr; gap: 32px; }
  .expertise-lane { padding-top: 25px; }
  .expertise-lane-label { font-size: 7px; letter-spacing: 1px; }
  .expertise-lane h3 { margin-top: 17px; font-size: 24px; }
  .expertise-lane > p { max-width: none; font-size: 12px; }
  .stack-tags { gap: 7px; margin-top: 20px; }
  .stack-tags > span { padding: 7px 9px; font-size: 8px; }
}

@media (max-width: 360px) {
  .path-mechanics { padding: 25px 20px 26px; }
  .path-mechanics-heading > p { font-size: 14px; }
  .path-step h4 { font-size: 17px; }
  .path-step p { font-size: 11px; }
  .path-fairness { column-gap: 12px; font-size: 6px; }
  .expertise-lane h3 { font-size: 22px; }
  .stack-tags { gap: 6px; }
  .stack-tags > span { padding: 6px 8px; font-size: 7px; }
}
