@font-face{font-family:Inter;src:url('/assets/inter-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
[hidden]{display:none!important}
:root{--paper:#f2f0e9;--ink:#20221f;--muted:#65675f;--line:#cccfc2;--orange:#bb3216;--bright:#ed512f;--lime:#d9ec93;--purple:#ded7eb;--serif:Georgia,'Times New Roman',serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:auto}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3{font-weight:550;letter-spacing:-.055em;line-height:1.05}h1{font-size:clamp(3.5rem,7.8vw,7.7rem)}h2{font-size:clamp(2.3rem,4.8vw,4.6rem)}h3{font-size:1.8rem}p{line-height:1.65}em{font-family:var(--serif);font-weight:400}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:3px solid var(--orange);outline-offset:6px}a,button{-webkit-tap-highlight-color:transparent}.wrap{width:calc(100% - 96px);max-width:1440px;margin:0 auto}.eyebrow{font-size:11px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;line-height:1.6}.brand-dot{color:var(--orange)}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:14px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:5px}.text-link:hover{color:var(--orange)}.button{min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:14px 23px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:2px;font-size:13px;font-weight:600;cursor:pointer}.button:hover{background:var(--orange);border-color:var(--orange);color:#fff}.button.secondary{background:transparent;color:inherit;border-color:currentColor}.button.secondary:hover{background:var(--ink);color:var(--paper)}.button-row{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:28px}.lede{font-size:clamp(18px,1.8vw,24px);line-height:1.6;letter-spacing:-.025em}.skip-link{position:absolute;top:-100px;left:20px;padding:15px;background:var(--ink);color:#fff;z-index:30}.skip-link:focus{top:12px}.site-header{display:flex;align-items:center;justify-content:space-between;height:105px;border-bottom:1px solid var(--line);gap:25px}.wordmark{font-size:27px;letter-spacing:-.07em;font-weight:750;white-space:nowrap}.site-header nav{display:flex;gap:35px}.site-header nav a{font-size:13px;padding:10px 0}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--orange)}.site-header nav a[aria-current]{box-shadow:0 2px var(--orange)}.header-contact{font-size:13px;display:flex;gap:28px;align-items:center}.header-contact span{font-size:20px}.home-hero{padding-top:39px;padding-bottom:50px}.hero-meta{display:flex;justify-content:space-between}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--orange);margin-right:10px}.home-hero h1{position:relative;font-size:clamp(3.7rem,7.7vw,8.2rem);letter-spacing:-.075em;line-height:1.03;margin-top:58px}.home-hero h1 em{color:var(--orange);letter-spacing:-.065em}.hero-asterisk{font-family:Arial,sans-serif;position:absolute;right:4%;bottom:-.03em;color:var(--bright);font-size:1.4em;font-weight:400;line-height:1}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:46px}.intro-portrait{display:flex;align-items:center;gap:20px}.intro-portrait img{width:58px;height:68px;object-fit:cover;object-position:50% 25%;filter:grayscale(1);border-radius:3px}.intro-portrait p{font-size:13px;font-weight:550}.hero-note{font-size:13px;color:var(--muted);margin-left:auto;margin-right:45px}.round-link{width:52px;height:52px;border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px}.round-link:hover{background:var(--lime)}.worlds{padding-top:32px;border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:25px;margin-bottom:35px}.section-head h2{font-size:clamp(1.8rem,3vw,2.8rem);letter-spacing:-.05em}.world-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.world{border-radius:4px;overflow:hidden;position:relative;display:flex;flex-direction:column;min-width:0}.world-label{padding:23px 24px 0;display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:600}.world-label>span:last-child{font-size:22px;line-height:.8}.world-work{background:var(--lime)}.world-music{background:var(--purple)}.world-games{background:#202521;color:#f2f0e9}.world-copy{padding:24px 27px 28px;margin-top:auto}.world-copy h3{font-size:clamp(1.8rem,2.7vw,2.8rem)}.world-copy p{font-size:13px;line-height:1.7;margin-top:14px;max-width:290px}.world-cta{display:block;font-size:11px;font-weight:650;margin-top:23px}.system-art,.record-art,.game-art{height:250px;margin-top:18px;position:relative;overflow:hidden}.system-art{display:flex;align-items:center;justify-content:center}.system-art b{font-size:40px;font-weight:450;line-height:1.02;letter-spacing:-.06em;z-index:1}.orbit{position:absolute;width:195px;height:195px;border:1px solid #576441;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-one{margin-left:-42px}.orbit-two{margin-left:42px}.orbit-three{width:244px;height:244px;border-color:#6d7b4e}.record-art{display:flex;align-items:center;justify-content:center;padding:20px}.record-art img{position:relative;z-index:2;width:195px;height:195px;object-fit:cover;transform:rotate(-8deg) translateX(-12px);box-shadow:0 12px 20px #352c3020}.record-disc{position:absolute;width:190px;height:190px;border-radius:50%;background:repeating-radial-gradient(circle,#282324 0 2px,#383135 3px 4px);right:8%;top:30px;box-shadow:0 3px 10px #0002}.record-disc:after{content:'';position:absolute;inset:66px;border:18px solid #b78669;background:#e1c4af;border-radius:50%}.game-art{margin:30px 24px 0;height:238px;border:1px solid #64695c}.game-art img{height:100%;object-fit:cover;object-position:50% 40%}.game-art>span{position:absolute;bottom:13px;left:13px;font:11px monospace;color:var(--lime);background:#202521;padding:6px 10px}.world:hover .world-cta{text-decoration:underline;text-underline-offset:4px}.about-strip{display:grid;grid-template-columns:1fr 2fr;gap:50px;padding-top:110px;padding-bottom:110px}.about-strip h2 em{color:var(--orange)}.about-strip p:not(.eyebrow){max-width:610px;color:var(--muted);margin:25px 0}.notes-section{border-top:1px solid var(--line);padding-top:35px;padding-bottom:90px}.article-row{display:grid;grid-template-columns:180px 1fr 35px;gap:35px;padding:34px 0;border-top:1px solid var(--line)}.article-row h3{font-size:26px;line-height:1.2;letter-spacing:-.035em}.article-row p{color:var(--muted);font-size:14px;max-width:650px;margin-top:12px}.article-row>span:last-child{font-size:30px}.article-row:hover h3{color:var(--orange)}.all-notes{margin-top:20px}.footer{background:var(--bright);color:#201c18;padding-top:55px}.footer .eyebrow{font-size:12px}.hello{display:flex;justify-content:space-between;align-items:center;font-size:clamp(4rem,12vw,11rem);line-height:1.2;letter-spacing:-.085em;font-weight:550;margin:15px 0 45px}.hello span{font-weight:400}.hello:hover span{transform:translate(6px,-6px)}.footer-bottom{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;border-top:1px solid #8e321f;padding:28px 0}.footer-bottom p{font-size:12px;margin-left:20px}.footer-bottom nav{display:flex;gap:20px}.footer-bottom .text-link{font-size:11px;border:0;gap:7px;padding:0}.footer-bottom .text-link:hover{color:inherit;text-decoration:underline}.footer-bottom small{grid-column:1/-1;font-size:10px;opacity:.8}.music-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center;padding:80px 0}.music-hero h1{margin:25px 0}.music-hero h1 em{color:#69507e}.music-page{--paper:#eeebf1;--line:#ccc7d0;--orange:#634776}.music-page .brand-dot{color:#634776}.music-page .footer{background:#d6c4e4}.feature-record{max-width:460px;justify-self:end}.feature-record img{aspect-ratio:1;object-fit:cover;box-shadow:0 20px 45px #3020371a}.feature-record>span{display:flex;justify-content:space-between;gap:20px;font-size:12px;margin-top:20px}.feature-record>span>span{font-size:10px;align-self:center}.platform-strip{border-block:1px solid var(--line)}.platform-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:26px 0}.platform-strip .text-link{font-size:16px;border:0;padding:0}.releases{padding-top:75px;padding-bottom:80px}.release-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.release img{aspect-ratio:1;object-fit:cover}.release>div{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.release h3{font-size:18px;letter-spacing:-.03em;line-height:1.25}.release p{font-size:11px;color:var(--muted);margin-top:7px}.release:hover h3{text-decoration:underline;text-underline-offset:4px}.music-note{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:60px;border-top:1px solid var(--line);padding:70px 0 90px}.big-asterisk{font-size:230px;line-height:1;color:#8c739f}.music-note h2{font-size:clamp(2rem,4vw,3.6rem);margin-top:20px}.music-note p:not(.eyebrow){color:var(--muted);max-width:600px;margin:25px 0}.games-page{--paper:#1b211d;--ink:#ecede4;--muted:#b5beb0;--line:#465042;--orange:#d9ec93;color-scheme:dark}.games-page .brand-dot{color:var(--lime)}.games-page .footer{background:var(--lime);color:#20221f}.games-page .footer .text-link{color:#20221f}.games-page .footer-bottom{border-color:#879463}.games-intro{padding:70px 0 55px}.games-intro h1{margin:25px 0 35px}.games-intro h1 em{color:var(--lime)}.intro-split{display:flex;justify-content:space-between;align-items:center;gap:50px}.intro-split .lede{max-width:670px}.games-page .button{background:var(--lime);border-color:var(--lime);color:#20221f}.games-page .button:hover{background:#eef8c6}.games-page .button.secondary{background:transparent;color:var(--lime)}.games-page .button.secondary:hover{background:var(--lime);color:#20221f}.steam-button{--steam:#66c0f4;position:relative;display:inline-flex;align-items:center;gap:18px;min-height:72px;padding:14px 24px 14px 18px;color:#fff;background:linear-gradient(135deg,#1b2838 0%,#2a475e 100%);border:1px solid #3d6c8d;border-radius:4px;box-shadow:0 10px 26px #0a101740,inset 0 1px #ffffff1a;overflow:hidden;isolation:isolate;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.steam-button:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,#66c0f433 50%,transparent 70%);transform:translateX(-100%);transition:transform .6s ease}.steam-button:hover{transform:translateY(-2px);border-color:var(--steam);box-shadow:0 16px 34px #0a101759,0 0 0 1px var(--steam),inset 0 1px #ffffff26}.steam-button:hover:before{transform:translateX(100%)}.steam-button:active{transform:translateY(0)}.steam-button:focus-visible{outline-color:var(--steam)}.steam-logo{width:38px;height:38px;flex-shrink:0;color:#fff}.steam-button>span:not([aria-hidden]){display:flex;flex-direction:column;gap:3px;line-height:1.15}.steam-button small{font-size:10px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;color:var(--steam)}.steam-button small:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:#a4d007;margin:0 8px 1px 0;box-shadow:0 0 0 3px #a4d00733}.steam-button strong{font-size:17px;font-weight:650;letter-spacing:-.01em}.steam-button>span[aria-hidden]{margin-left:auto;padding-left:10px;font-size:18px;color:var(--steam)}.steam-row{margin-top:28px}.steam-row+.button-row{margin-top:20px}@media(prefers-reduced-motion:reduce){.steam-button,.steam-button:before{transition:none}}.game-cover{aspect-ratio:16/8.5;object-fit:cover}.game-caption{display:flex;justify-content:space-between;gap:20px;margin-top:13px;color:var(--muted)}.game-description{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:60px 0 65px}.game-description h2{font-size:clamp(2.5rem,4.8vw,5rem);margin:18px 0;font-weight:750;letter-spacing:-.06em}.game-tagline{font-size:25px;line-height:1.25;color:var(--lime)}.game-description>div>p:not(.eyebrow):not(.game-tagline){color:var(--muted);margin-bottom:18px}.game-details{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-bottom:85px}.game-details img{aspect-ratio:16/9;object-fit:cover}.game-details figcaption{margin-top:20px}.game-details figcaption span{font-size:15px;font-weight:600}.game-details figcaption p{font-size:14px;color:var(--muted);margin-top:10px}.studio-note{border-top:1px solid var(--line);padding-top:40px;padding-bottom:85px;display:grid;grid-template-columns:1fr 1fr;gap:35px 70px}.studio-note>.eyebrow{grid-column:1/-1}.studio-note h2 em{color:var(--lime)}.studio-note>div{align-self:end}.studio-note>div p{margin-bottom:20px;color:var(--muted)}.work-hero{padding:70px 0}.work-hero h1{margin:25px 0 40px}.work-hero h1 em{color:var(--orange)}.work-hero .intro-split>div{max-width:300px;font-size:13px}.work-hero .intro-split .text-link{margin-top:18px}.career-band{background:var(--ink);color:var(--paper)}.career-band .wrap{display:flex;gap:70px;align-items:center;padding:36px 0}.career-band .wrap>div{display:flex;gap:25px;align-items:center;flex:1}.career-band strong{font-size:70px;font-weight:500;letter-spacing:-.07em;color:var(--lime)}.career-band span{font-size:12px;max-width:150px}.career-band p{font-size:16px;max-width:540px;flex:1}.projects{padding:75px 0}.section-intro{color:var(--muted);max-width:600px;margin-bottom:40px}.project{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid var(--line);padding:40px 0}.project-title h3{font-size:clamp(2rem,3.5vw,3.2rem);max-width:450px;margin-top:24px}.project-story{display:grid;gap:22px}.project-story h4{font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.project-story p{font-size:15px;color:var(--muted)}.tool-panel{background:var(--lime);padding:55px;display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;border-radius:3px}.tool-panel h2{font-size:clamp(2rem,3.7vw,3.6rem);margin:25px 0}.tool-panel p:not(.eyebrow){max-width:600px}.tool-symbol{font-size:200px;line-height:1}.work-about{padding:100px 0;display:grid;grid-template-columns:1fr 1.5fr;gap:100px;align-items:center}.work-about>img{aspect-ratio:3/4;object-fit:cover;max-width:350px;filter:grayscale(1)}.work-about h2{margin:20px 0 25px}.work-about p:not(.eyebrow){color:var(--muted);margin-bottom:15px}.writing-hero{padding:70px 0}.writing-hero h1{margin:25px 0 35px}.writing-hero h1 em{color:var(--orange)}.writing-list{padding-bottom:90px}.article{max-width:900px;padding:55px 0 90px}.article header{margin:50px 0;border-bottom:1px solid var(--line);padding-bottom:40px}.article h1{font-size:clamp(2.5rem,5.5vw,5rem);margin:22px 0}.article .lede{font-size:20px;color:var(--muted)}.prose{max-width:730px;margin:auto;font-size:18px;line-height:1.8}.prose p{margin:22px 0}.prose h2{font-size:33px;margin:45px 0 20px}.prose h3{font-size:25px;margin:32px 0 18px}.prose a{text-decoration:underline;text-underline-offset:4px;color:var(--orange)}.prose pre{overflow:auto;background:#e2e2d7;padding:20px}.prose img{max-width:100%}.prose table{display:block;overflow:auto}.cv{max-width:900px;padding:40px 0 80px}.cv-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:60px}.cv h1{font-size:70px;margin:20px 0}.cv .lede{margin-bottom:20px}.cv section{border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.cv h2{font-size:28px;margin-bottom:18px}.cv h3{font-size:19px;margin-bottom:10px}.cv-project+.cv-project{margin-top:24px}.cv-url{margin-top:40px;font-size:12px}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.hello span,.record-art img,.world-label>span:last-child{transition:transform .3s ease}.world:hover .record-art img{transform:rotate(-3deg) translateX(-18px)}.world:hover .world-label>span:last-child{transform:translate(3px,-3px)}.home-hero h1{animation:arrive .65s ease-out}@keyframes arrive{from{transform:translateY(12px)}to{transform:translateY(0)}}}
@media(min-width:1700px){.home-hero h1{font-size:135px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.hero-asterisk{right:0;font-size:1.05em}.hero-note{margin-right:0}.world-copy{padding:22px}.system-art,.record-art,.game-art{height:205px}.record-art img{width:155px;height:155px}.record-disc{width:155px;height:155px;right:5%;top:25px}.record-disc:after{inset:51px;border-width:15px}.system-art b{font-size:34px}.orbit{width:155px;height:155px}.orbit-three{width:190px;height:190px}.orbit-one{margin-left:-30px}.orbit-two{margin-left:30px}.game-art{margin:18px 20px 0}.footer-bottom{grid-template-columns:auto 1fr}.footer-bottom p{margin:0;justify-self:end}.footer-bottom nav{grid-column:1/-1}.work-about{gap:55px}.game-description{gap:40px}.tool-symbol{font-size:140px}.release-grid{gap:18px}.site-header nav{gap:24px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.site-header{height:auto;min-height:105px;flex-wrap:wrap;padding-top:20px;padding-bottom:15px;gap:18px}.site-header .wordmark{font-size:25px}.site-header nav{order:3;width:100%;justify-content:space-between;gap:15px}.site-header nav a{font-size:13px;padding:5px 0}.header-contact{margin-left:auto;font-size:12px;gap:12px}.home-hero{padding-top:25px;padding-bottom:35px}.hero-index{display:none}.hero-meta .eyebrow{font-size:9px}.home-hero h1{font-size:clamp(2.7rem,8.5vw,4.5rem);margin-top:40px;letter-spacing:-.065em;line-height:1.1;padding-bottom:55px}.hero-asterisk{font-size:54px;bottom:-10px;right:3px}.hero-bottom{margin-top:20px;gap:15px}.hero-note{display:none}.intro-portrait p{font-size:12px}.intro-portrait img{width:48px;height:58px}.round-link{width:43px;height:43px;flex-shrink:0}.section-head{display:block;margin-bottom:25px}.section-head .eyebrow{margin-bottom:14px}.section-head h2{font-size:29px}.world-grid{grid-template-columns:1fr;gap:20px}.world-label{padding:24px 24px 0;font-size:11px}.system-art,.record-art,.game-art{height:240px}.system-art b{font-size:44px}.orbit{width:190px;height:190px}.orbit-three{width:230px;height:230px}.orbit-one{margin-left:-40px}.orbit-two{margin-left:40px}.record-art img{width:205px;height:205px}.record-disc{height:200px;width:200px;top:20px;right:14%}.record-disc:after{inset:69px;border-width:18px}.game-art{margin:24px 24px 0}.world-copy{padding:27px}.world-copy h3{font-size:35px}.world-copy p{max-width:100%;font-size:14px}.world-cta{font-size:12px}.about-strip{grid-template-columns:1fr;gap:30px;padding:65px 0}.about-strip h2{font-size:39px}.notes-section{padding-bottom:60px}.article-row{grid-template-columns:1fr 25px;gap:18px;padding:28px 0}.article-row>.eyebrow{grid-column:1/-1}.article-row h3{font-size:23px}.article-row p{font-size:13px}.footer{padding-top:35px}.footer .eyebrow{font-size:10px}.hello{font-size:clamp(55px,14vw,100px);margin:20px 0 35px}.footer-bottom{display:flex;flex-wrap:wrap;gap:18px}.footer-bottom p{width:100%;font-size:11px}.footer-bottom nav{flex-wrap:wrap;gap:15px}.footer-bottom small{width:100%}.music-hero{grid-template-columns:1fr;gap:45px;padding:45px 0}.music-hero h1,.games-intro h1,.work-hero h1,.writing-hero h1{font-size:clamp(3.2rem,12vw,5.5rem)}.feature-record{max-width:100%;width:100%;justify-self:stretch}.feature-record img{max-width:460px;margin:auto}.platform-strip .wrap{flex-wrap:wrap;gap:20px;padding:25px 0}.platform-strip .eyebrow{width:100%;font-size:10px}.platform-strip .text-link{font-size:13px;gap:8px}.release-grid{grid-template-columns:1fr 1fr;gap:30px 16px}.release h3{font-size:16px}.release p{font-size:10px}.releases{padding:50px 0}.music-note{grid-template-columns:1fr;gap:20px;padding:40px 0 60px}.big-asterisk{font-size:90px}.music-note h2{font-size:34px}.games-intro{padding:45px 0 35px}.intro-split{display:block}.intro-split>.button,.intro-split>.steam-button{margin-top:25px}.steam-button{width:100%}.game-cover{aspect-ratio:4/3}.game-caption .eyebrow{font-size:8px}.game-description{grid-template-columns:1fr;gap:30px;padding:40px 0}.game-description h2{font-size:40px}.game-description p{font-size:15px}.game-description .game-tagline{font-size:25px}.game-details{grid-template-columns:1fr;gap:35px;padding-bottom:55px}.studio-note{grid-template-columns:1fr;padding-bottom:55px;gap:25px}.studio-note h2{font-size:43px}.work-hero{padding:45px 0}.work-hero .intro-split>div{margin-top:30px;max-width:100%}.career-band .wrap{display:block;padding:30px 0}.career-band p{font-size:14px;margin-top:20px}.career-band strong{font-size:60px}.projects{padding:45px 0}.project{grid-template-columns:1fr;gap:30px;padding:32px 0}.project-title h3{font-size:32px}.project-title .eyebrow{font-size:10px}.tool-panel{padding:30px;grid-template-columns:1fr;gap:20px}.tool-symbol{display:none}.tool-panel h2{font-size:30px}.tool-panel p{font-size:14px}.work-about{grid-template-columns:1fr;gap:35px;padding:55px 0}.work-about>img{max-width:260px}.work-about h2{font-size:37px}.writing-hero{padding:45px 0}.article{padding:35px 0 60px}.article header{margin:35px 0}.article h1{font-size:40px}.prose{font-size:16px}.article .lede{font-size:18px}.cv h1{font-size:55px}.cv-actions{gap:20px;margin-bottom:40px}.cv-actions .button{font-size:11px;padding:12px}.cv .lede{font-size:19px}}
@media print{body{background:#fff!important;color:#111!important;font-size:10pt}.site-header,.skip-link,.footer,.cv-actions{display:none!important}.cv{width:100%;max-width:none;padding:0}.cv h1{font-size:32pt;margin:8pt 0}.cv .lede{font-size:13pt}.cv p{line-height:1.45}.cv section{margin-top:14pt;padding-top:12pt}.cv h2{font-size:16pt}.cv h3{font-size:12pt}.cv-project{break-inside:avoid}.cv-url{margin-top:14pt}a{color:#111!important}.cv .eyebrow{font-size:8pt}@page{margin:17mm}}

/* The personal portfolio's dark palette. Print output remains light. */
:root {
  --paper: #151819;
  --ink: #eeede7;
  --muted: #afb5af;
  --line: #383e3b;
  --orange: #ff9b7d;
  --bright: #f47e5c;
  color-scheme: dark;
}
.button:hover { color: #171b18; }
.world-work { background: #28372d; color: #e0edb8; }
.world-music { background: #342d3e; color: #f0e8f5; }
.world-games { background: #202723; }
.orbit { border-color: #899a70; }
.orbit-three { border-color: #6e805e; }
.career-band { background: #232c26; color: var(--ink); }
.tool-panel { background: #d9ec93; color: #20221f; }
.tool-panel .button { background: #20221f; color: #f2f0e9; border-color: #20221f; }
.tool-panel .text-link:hover { color: #713322; }
.footer { background: #202623; color: #eeede7; }
.hello { color: #ff9b7d; }
.footer-bottom { border-color: #424943; }
.music-page { --paper: #1e1b24; --line: #443d4b; --orange: #d5b5ed; }
.music-page .brand-dot, .music-hero h1 em { color: #d5b5ed; }
.music-page .footer { background: #292332; }
.music-page .hello { color: #d5b5ed; }
.music-page .footer-bottom { border-color: #51445e; }
.big-asterisk { color: #c5a3dd; }
.games-page .footer { background: #252e22; color: #ecede4; }
.games-page .hello { color: var(--lime); }
.games-page .footer .text-link { color: #ecede4; }
.games-page .footer-bottom { border-color: #46543c; }
.prose pre { background: #252b27; }
.cv { max-width: 1060px; }
.cv-actions .button-row { margin-top: 0; gap: 12px; }
.cv-header { max-width: 850px; }
.cv-contact { display: flex; flex-wrap: wrap; gap: 25px; font-size: 14px; }
.cv-contact a { text-decoration: underline; text-underline-offset: 4px; }
.cv-navigation { display: flex; flex-wrap: wrap; gap: 24px; padding: 26px 0 0; font-size: 13px; }
.cv-navigation a { color: var(--orange); }
.cv section { padding-top: 35px; margin-top: 40px; }
.cv section > p + p { margin-top: 16px; }
.cv section > p, .cv-employer > p, .cv-role p, .cv-project li { color: var(--muted); }
.cv-employer + .cv-employer { margin-top: 38px; }
.cv-role { margin: 24px 0 0 18px; padding-left: 22px; border-left: 1px solid var(--line); }
.cv-role-heading { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 8px 24px; margin-bottom: 12px; }
.cv-role-heading h3 { margin-bottom: 0; }
.cv-role-heading h4 { font-size: 15px; line-height: 1.5; font-weight: 600; }
.cv-role-heading span { font-size: 12px; color: var(--muted); }
.cv-project { margin-top: 26px; }
.cv-project ul { padding-left: 20px; margin-top: 16px; }
.cv-project li { line-height: 1.75; padding-left: 5px; margin-bottom: 17px; }
@media (max-width: 760px) {
  .cv-actions { align-items: flex-start; flex-direction: column; gap: 24px; }
  .cv-actions .button { font-size: 12px; }
  .cv-navigation { gap: 16px 22px; }
  .cv-role { margin-left: 0; padding-left: 15px; }
  .cv-role-heading { flex-direction: column; gap: 4px; }
  .cv-project li { font-size: 15px; }
}
@media print {
  .cv-navigation { display: none; }
  .cv section { margin-top: 14pt; padding-top: 12pt; }
  .cv section > p, .cv-employer > p, .cv-role p, .cv-project li, .cv-role-heading span { color: #111; }
  .cv-project { break-inside: auto; }
  .cv-project li, .cv-role { break-inside: avoid; }
  .cv-role { margin-top: 10pt; }
  .cv-role-heading h4 { font-size: 11pt; }
  .cv-contact { font-size: 9pt; }
  .cv-project li { margin-bottom: 8pt; line-height: 1.45; }
}
/* Shared creative cards and player feedback use the site's existing tokens. */
.memoir-feature { border-top: 1px solid var(--line); padding-top: 40px; padding-bottom: 80px; }
.memoir-feature h2 { margin: 22px 0 28px; }
.memoir-feature .lede { max-width: 850px; }
.memoir-copy { max-width: 730px; margin-top: 30px; color: var(--muted); }
.memoir-copy p + p { margin-top: 20px; }
.world-writing { background: #28372d; color: #e0edb8; }
.writing-art { min-height: 250px; margin-top: 18px; display: grid; place-items: center; }
.writing-art span { font-family: var(--serif); font-style: italic; font-size: clamp(38px, 4vw, 60px); line-height: 1.1; }
.music-hero h1 em { color: var(--orange); }
.feedback { border-top: 1px solid var(--line); padding-top: 40px; padding-bottom: 85px; }
.feedback h2 { max-width: 850px; margin: 20px 0 25px; }
.feedback h2 em { color: var(--orange); }
.feedback form { max-width: 850px; }
.feedback fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.feedback legend { margin-bottom: 24px; }
.feedback-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.feedback label { display: grid; gap: 10px; font-size: 14px; line-height: 1.6; }
.feedback input, .feedback select, .feedback textarea { width: 100%; min-width: 0; padding: 13px; border: 1px solid var(--line); border-radius: 2px; background: var(--paper); color: var(--ink); font: inherit; }
.feedback textarea { resize: vertical; }
.feedback-wide { grid-column: 1 / -1; }
.feedback label span, .feedback-privacy { color: var(--muted); font-size: 13px; }
.feedback-privacy { margin: 24px 0; }
.feedback-privacy .text-link { font-size: inherit; }
.feedback-notice { border-left: 3px solid var(--orange); padding: 12px 20px; margin-bottom: 32px; }
.feedback :disabled { cursor: not-allowed; opacity: .65; }
@media (max-width: 760px) {
  .feedback-fields { grid-template-columns: 1fr; }
  .feedback { padding-bottom: 55px; }
  .writing-art { min-height: 240px; }
}
.recycle-feature { border-top: 1px solid var(--line); }
/* Keep the approved square portrait intact in both personal and work contexts. */
.intro-portrait img { object-position: center; filter: none; }
.work-about > img { aspect-ratio: 1; object-position: center; filter: none; }
.artist-portrait figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 20px; margin-top: 20px; font-size: 12px; }
.artist-portrait figcaption span { color: var(--muted); }
.memoir-feature { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.7fr); gap: 65px; align-items: start; }
.memoir-cover { max-width: 380px; }
.memoir-cover img { aspect-ratio: 2 / 3; object-fit: contain; box-shadow: 0 16px 40px #0004; }
.memoir-cover figcaption { margin-top: 16px; font-size: 12px; color: var(--muted); }
.memoir-description { min-width: 0; }
@media (max-width: 760px) { .memoir-feature { grid-template-columns: 1fr; gap: 35px; } .memoir-cover { max-width: 280px; } }
