@font-face{font-family:Satoshi;src:url(/assets/fonts/Satoshi-Variable.woff2) format("woff2");font-style:normal;font-weight:300 900;font-display:swap}@font-face{font-family:Noto Sans IPA;src:url(/assets/fonts/NotoSans-IPA-Regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}html,body,body *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}img,svg,canvas,a{-webkit-user-drag:none}input,textarea,[contenteditable=true],[contenteditable=true] *{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}:root{color-scheme:light;font-family:Satoshi,sans-serif;font-synthesis:none;--background: #fafafa;--foreground: #141414;--muted: #3f3f44;--purple: #9554ee;--purple-bright: #a65dff;--text-hover: #a76dff;--extensions-gold: #043ee6;--extensions-shimmer-highlight: #a9baff;--page-gutter: clamp(1.25rem, 3.7vw, 4.5rem);--header-top: clamp(2rem, 11.8vh, 7rem);background:var(--background);color:var(--foreground)}*{box-sizing:border-box}::selection{color:#fff;background:var(--text-hover);text-shadow:none}::-moz-selection{color:#fff;background:var(--text-hover);text-shadow:none}html,body,#app{width:100%;min-width:320px;height:100%;margin:0;overflow:hidden}html{background:#fafafa}body{background:var(--background);color:var(--foreground);transition:background .42s ease,color .42s ease}body.dark-mode{color-scheme:dark;--extensions-gold: #fbc119;--extensions-shimmer-highlight: #fff1ae;--background: #101112;--foreground: #f4f4f2;--muted: #dedee1;background:radial-gradient(circle at 50% 40%,#1a1b1d,#131416 48%,#0c0d0e)}button,a{color:inherit;font:inherit}button{border:0}a{text-decoration:none}button,a,.project-card{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--purple);outline-offset:5px;border-radius:4px}.skip-link{position:fixed;top:1rem;left:1rem;z-index:10000;padding:.6rem .8rem;color:#fff;background:#191919;transform:translateY(-180%);transition:transform .18s ease}.skip-link:focus{transform:translateY(0)}.site-header{position:fixed;top:var(--header-top);right:var(--page-gutter);left:var(--page-gutter);z-index:70;display:flex;align-items:flex-start;justify-content:space-between;font-size:18px;font-weight:600;letter-spacing:.01em;line-height:1;pointer-events:none}.header-left,.header-right,.primary-nav{display:flex;align-items:flex-start}.header-left{gap:clamp(1.15rem,1.65vw,2rem)}.primary-nav{gap:clamp(.45rem,.65vw,.8rem)}.header-right{gap:clamp(.75rem,1vw,1.2rem)}.site-header a,.site-header button{font-size:1em;font-weight:600;line-height:1;pointer-events:auto}.nav-link,.social-link,.mode-control{position:relative;padding:0;background:transparent;cursor:pointer}.nav-link,.social-link{display:block;min-height:0;white-space:nowrap}.header-control{color:var(--foreground);transition:color .18s ease}.header-external-arrow{display:inline-block;width:1em;height:1em;margin-inline-start:.05em;vertical-align:-.12em}.email-copy-status{position:absolute;top:50%;right:calc(100% + .5rem);transform:translateY(-50%);font-size:.5rem;font-weight:600;line-height:1;letter-spacing:.01em;opacity:0;pointer-events:none;transition:opacity .16s ease}.email-copy-control.has-copy-feedback .email-copy-status{opacity:1}.nav-link:not(.extensions-link):hover,.nav-link:not(.extensions-link).is-active,.social-link:hover{color:var(--text-hover)}.extensions-link:hover,.project-slide--gold:hover .project-title,.project-slide--gold:focus-visible .project-title{background:linear-gradient(110deg,var(--extensions-gold) 30%,var(--extensions-shimmer-highlight) 50%,var(--extensions-gold) 70%);background-position:130% 50%;background-size:240% 100%;background-clip:text;color:var(--extensions-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:extensions-shimmer .9s ease both}.extensions-link:focus-visible{outline-color:var(--extensions-gold)}.project-slide--gold:hover .header-external-arrow,.project-slide--gold:focus-visible .header-external-arrow{color:var(--extensions-gold)}@keyframes extensions-shimmer{0%{background-position:130% 50%}to{background-position:-40% 50%}}.mode-control{display:inline-flex;width:.875em;height:.718em;min-height:0;align-items:center;justify-content:flex-start;margin-top:.141em}.theme-bars{display:flex;width:.875em;height:.718em;align-items:center;justify-content:space-between}.theme-bar{width:.184em;height:.184em;border-radius:.031em;background:currentColor;transform:scaleY(1);transform-origin:center;transition:transform 90ms linear;will-change:transform}.mode-control.is-preparing .theme-bars{animation:theme-icon-pulse .7s ease-in-out infinite alternate}body.dark-mode .mode-control.is-playing .theme-bar{transform:scaleY(var(--bar-scale, 1));transition:none}@keyframes theme-icon-pulse{to{opacity:.45}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero-content{position:absolute;right:var(--page-gutter);bottom:clamp(3.75rem,8.4vh,5rem);left:var(--page-gutter);pointer-events:none}.hero-title{position:relative;z-index:10;display:flex;align-items:baseline;justify-content:space-between;margin:0;margin-inline-start:var(--hero-optical-left, 0em);padding:0;color:#333;font-size:var(--hero-fit-font-size, clamp(3.7rem, 5.86vw, 7.15rem));font-weight:900;font-synthesis:weight;letter-spacing:-.02em;line-height:.84;white-space:nowrap;pointer-events:none;transition:color .38s ease}.hero-title-effects{position:relative;z-index:10;display:flow-root;--title-reveal-radius: clamp(100px, 12vw, 200px)}.hero-title-blur-layer{position:relative}.hero-title-reveal-layer{display:none;position:absolute;top:-3rem;right:-3rem;left:-3rem;padding:3rem;pointer-events:none}.hero-title-reveal-layer .gooey-part{opacity:1;filter:none;will-change:auto}@media(min-width:701px)and (hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.hero-title-blur-layer{padding:3rem;margin:-3rem}body:not(.dark-mode) .hero-title-effects.has-pointer-reveal .hero-title-blur-layer{-webkit-mask-image:radial-gradient(circle var(--title-reveal-radius) at var(--title-pointer-x) var(--title-pointer-y),transparent 0%,rgb(0 0 0 / 2%) 15%,rgb(0 0 0 / 8%) 30%,rgb(0 0 0 / 25%) 50%,rgb(0 0 0 / 50%) 70%,rgb(0 0 0 / 74%) 90%,rgb(0 0 0 / 91%) 110%,rgb(0 0 0 / 98.5%) 130%,#000 150%);mask-image:radial-gradient(circle var(--title-reveal-radius) at var(--title-pointer-x) var(--title-pointer-y),transparent 0%,rgb(0 0 0 / 2%) 15%,rgb(0 0 0 / 8%) 30%,rgb(0 0 0 / 25%) 50%,rgb(0 0 0 / 50%) 70%,rgb(0 0 0 / 74%) 90%,rgb(0 0 0 / 91%) 110%,rgb(0 0 0 / 98.5%) 130%,#000 150%)}body:not(.dark-mode) .hero-title-effects.has-pointer-reveal .hero-title-reveal-layer{display:block;-webkit-mask-image:radial-gradient(circle var(--title-reveal-radius) at var(--title-pointer-x) var(--title-pointer-y),#000 0%,rgb(0 0 0 / 98%) 15%,rgb(0 0 0 / 92%) 30%,rgb(0 0 0 / 75%) 50%,rgb(0 0 0 / 50%) 70%,rgb(0 0 0 / 26%) 90%,rgb(0 0 0 / 9%) 110%,rgb(0 0 0 / 1.5%) 130%,transparent 150%);mask-image:radial-gradient(circle var(--title-reveal-radius) at var(--title-pointer-x) var(--title-pointer-y),#000 0%,rgb(0 0 0 / 98%) 15%,rgb(0 0 0 / 92%) 30%,rgb(0 0 0 / 75%) 50%,rgb(0 0 0 / 50%) 70%,rgb(0 0 0 / 26%) 90%,rgb(0 0 0 / 9%) 110%,rgb(0 0 0 / 1.5%) 130%,transparent 150%)}}body.dark-mode .hero-title{color:var(--purple-bright)}.hero-name{position:relative;display:inline-block;flex:0 0 auto}.hero-pronunciation{position:absolute;right:0;bottom:calc(100% + .35rem);font-family:Noto Sans IPA,sans-serif;font-size:clamp(.65rem,.9vw,.85rem);font-weight:400;font-synthesis:none;letter-spacing:0;line-height:1;white-space:nowrap}.title-dash{position:relative;top:-.09em}.gooey-part{display:inline-block;flex:0 0 auto;white-space:nowrap;opacity:0;filter:blur(9px);transition:opacity .5s ease;will-change:filter}.gooey-part.is-ready{opacity:1}.about-panel{position:fixed;top:39.5vh;right:var(--page-gutter);left:var(--page-gutter);z-index:42;width:auto;mix-blend-mode:difference;visibility:hidden;opacity:0;transform:translateY(.6rem);transition:opacity .26s ease,transform .3s ease,visibility 0s linear .3s}.about-panel.is-visible{visibility:visible;opacity:1;transform:translateY(0);transition-delay:0s}.about-panel p{width:80%;margin:0;color:#fff;font-size:clamp(1.65rem,2.12vw,2.6rem);font-weight:400;letter-spacing:-.01em;line-height:1.08;text-align:justify;text-align-last:left}.project-card{position:fixed;inset:0;z-index:30;display:flex;align-items:center;overflow:hidden;color:var(--foreground);visibility:hidden;opacity:0;transform:translate(4vw);transition:opacity .28s ease,transform .42s cubic-bezier(.22,.72,.22,1),visibility 0s linear .42s,color .38s ease;pointer-events:none}.project-track{position:relative;display:flex;flex-shrink:0;align-items:center;gap:clamp(.75rem,1.5vw,1.75rem);width:max-content;padding-inline:50vw;transition:transform .38s cubic-bezier(.22,.72,.22,1);will-change:transform}.project-card.is-visible{visibility:visible;opacity:1;transform:translate(0);transition-delay:0s}.project-slide{position:relative;display:block;flex:0 0 min(32vw,35rem);min-width:19rem;color:inherit;pointer-events:auto;cursor:pointer;transform:translate(var(--card-shift, 0%)) scale(var(--card-scale, .58));transform-origin:center;transition:transform .38s cubic-bezier(.22,.72,.22,1);-webkit-tap-highlight-color:transparent}.project-slide.is-active{z-index:1}.project-card.is-direct .project-track,.project-card.is-direct .project-slide{transition:none}body[data-site-page=home] #app{touch-action:pinch-zoom}.project-slide.is-distant .project-image-frame{filter:blur(3px)}.project-slide .project-title,.project-slide .project-description{opacity:0;transition:opacity .26s ease}.project-slide.is-active .project-title{opacity:1}.project-slide.is-active .project-description{opacity:.72}.project-slide--title-only{display:flex;align-items:center;justify-content:center;min-height:44px;text-align:center}.project-slide.project-slide--title-only:before{display:none}.project-slide--title-only .project-title{margin:0;font-size:clamp(1.5rem,3vw,3rem);opacity:.55}.project-slide--title-only.is-active .project-title{opacity:1}.project-card:not(:has(.project-slide:not(.project-slide--title-only))){mix-blend-mode:difference}.project-card:not(:has(.project-slide:not(.project-slide--title-only))) .project-title{color:#fff}.project-slide--title-only .project-title{font-weight:600;font-variation-settings:"wght" 600;transition:opacity .26s ease,font-variation-settings .24s ease}.project-card .project-slide--title-only:hover .project-title,.project-card .project-slide--title-only:focus-visible .project-title{font-weight:800;font-variation-settings:"wght" 800}.project-slide:before{display:block;width:100%;aspect-ratio:16 / 10;content:"";pointer-events:none}.project-slide.is-pulsing{animation:card-pulse .38s ease}@keyframes card-pulse{50%{transform:scale(1.025)}}.project-image-frame{position:absolute;top:0;left:0;width:100%;aspect-ratio:16 / 10;overflow:hidden;border-radius:clamp(.4rem,.5vw,.65rem);background:#d8d8d8;box-shadow:0 1rem 3rem #0000002e;transition:filter .38s ease}.project-image{display:block;width:100%;height:100%;object-fit:cover}.project-title{margin-top:.22rem;font-size:clamp(1.08rem,1.28vw,1.55rem);font-weight:600;letter-spacing:-.01em;line-height:1.05}.project-description{max-width:95%;margin:.08rem 0 0;font-size:clamp(.82rem,.94vw,1.12rem);font-weight:400;line-height:1.17;opacity:.72}.tetrapod-layer{position:fixed;inset:0;overflow:hidden;pointer-events:none}.tetrapod-layer-back{z-index:6}.tetrapod-layer-front{z-index:24}.tetrapod-layer canvas{display:block;width:100%;height:100%;pointer-events:none}.theme-fold,.theme-fold.is-disabled{display:none}@media(min-width:701px)and (hover:hover)and (pointer:fine){.theme-fold{position:fixed;bottom:0;left:0;z-index:90;display:block;width:4.5rem;aspect-ratio:1;padding:0;overflow:hidden;border:0;background:transparent;cursor:pointer;filter:drop-shadow(.65rem -.4rem 1.25rem rgb(0 0 0 / 20%));transform-origin:0 100%;transition:width .52s cubic-bezier(.22,1,.36,1),opacity .26s ease,visibility 0s linear 0s,transform .32s cubic-bezier(.22,1,.36,1)}.theme-fold:before{position:absolute;bottom:0;left:0;z-index:2;width:0;height:0;box-sizing:content-box;border-style:solid;border-width:4.5rem 0 0 4.5rem;border-color:#d9d9dc transparent transparent transparent;content:"";pointer-events:none;transition:border-top-width .52s cubic-bezier(.22,1,.36,1),border-left-width .52s cubic-bezier(.22,1,.36,1),border-top-color .3s ease}.theme-fold-dark{position:absolute;inset:0;display:block;pointer-events:none}.theme-fold-dark{background:radial-gradient(circle at 15% 85%,rgb(149 84 238 / 32%),transparent 36%),radial-gradient(circle at 38% 65%,#21152f,#101112 54%,#08090a);clip-path:polygon(0 0,100% 100%,0 100%)}.theme-fold-dark:after{position:absolute;inset:0;background-image:url(/assets/noise.webp);background-size:18rem 18rem;content:"";mix-blend-mode:overlay;opacity:.1}@media(prefers-reduced-motion:reduce){.theme-fold-dark:after{background-image:url(/assets/noise-static.webp)}}.theme-fold-title{position:absolute;bottom:clamp(3.75rem,8.4vh,5rem);left:var(--page-gutter);z-index:1;display:flex;align-items:baseline;justify-content:space-between;width:calc(100vw - (var(--page-gutter) * 2));padding:0;color:var(--purple-bright);font-size:clamp(3.7rem,5.86vw,7.15rem);font-weight:900;font-synthesis:weight;letter-spacing:-.02em;line-height:.84;white-space:nowrap;opacity:0;transition:opacity .18s ease}.theme-fold:hover,.theme-fold:focus-visible{width:clamp(15rem,min(27vw,72vh),30rem)}.theme-fold:hover:before,.theme-fold:focus-visible:before{border-top-width:clamp(15rem,min(27vw,72vh),30rem);border-left-width:clamp(15rem,min(27vw,72vh),30rem);border-top-color:#eeeeef}.theme-fold:hover .theme-fold-title,.theme-fold:focus-visible .theme-fold-title{opacity:1;transition-delay:.12s}body.dark-mode .theme-fold{visibility:hidden;opacity:0;pointer-events:none;transform:scale(.84);transition-delay:0s,.26s,0s}.theme-fold.is-turning{--fold-turn-size: calc(100vw + 100vh) ;visibility:visible;width:var(--fold-start-size, 4.5rem);height:var(--fold-start-size, 4.5rem);max-width:none;aspect-ratio:auto;opacity:1;pointer-events:none;filter:none;transform:none;transition:none;animation:theme-fold-turn 1.1s cubic-bezier(.6,0,.2,1) forwards}.theme-fold.is-turning:before{border-top-color:#fafafa;filter:drop-shadow(.8rem -.6rem 1.1rem rgb(0 0 0 / 28%));transition:none;animation:theme-fold-paper-turn 1.1s cubic-bezier(.6,0,.2,1) forwards}.theme-fold.is-turning .theme-fold-title{opacity:1;transition:none}body.dark-mode .theme-fold.is-settling{--fold-turn-size: calc(100vw + 100vh) ;visibility:visible;width:var(--fold-turn-size);height:var(--fold-turn-size);max-width:none;aspect-ratio:auto;opacity:1;pointer-events:none;filter:none;transform:none;transition:none}body.dark-mode .theme-fold.is-settling:before{border-top-width:var(--fold-turn-size);border-left-width:var(--fold-turn-size);opacity:0;filter:none;animation:none}body.dark-mode .theme-fold.is-settling .theme-fold-title{opacity:1;transition:none}body.dark-mode .theme-fold.is-settling.is-fading{opacity:0;transition:opacity 225ms ease-out}body.theme-fold-in-progress .tetrapod-layer{opacity:.76;clip-path:polygon(0 calc(100% - var(--fold-start-size, 4.5rem)),var(--fold-start-size, 4.5rem) 100%,0 100%);transition:none;animation:theme-fold-tetrapod-reveal 1.1s cubic-bezier(.6,0,.2,1) forwards;will-change:opacity,clip-path}body.theme-fold-in-progress .tetrapod-layer-back{z-index:91}body.theme-fold-in-progress .tetrapod-layer-front{z-index:92}body.theme-fold-in-progress.theme-fold-reveal-active .tetrapod-layer{opacity:1;transition:opacity 225ms ease-out}@keyframes theme-fold-tetrapod-reveal{0%{clip-path:polygon(0 calc(100% - var(--fold-start-size, 4.5rem)),var(--fold-start-size, 4.5rem) 100%,0 100%)}to{clip-path:polygon(0 -100vw,calc(100vw + 100vh) 100%,0 100%)}}@keyframes theme-fold-turn{0%{width:var(--fold-start-size, 4.5rem);height:var(--fold-start-size, 4.5rem)}to{width:var(--fold-turn-size);height:var(--fold-turn-size)}}@keyframes theme-fold-paper-turn{0%{border-top-width:var(--fold-start-size, 4.5rem);border-left-width:var(--fold-start-size, 4.5rem);opacity:1}76%{opacity:1}to{border-top-width:var(--fold-turn-size);border-left-width:var(--fold-turn-size);opacity:0}}}.soundtrack-timeline{position:fixed;right:0;bottom:0;left:0;z-index:110;height:1rem;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .22s ease,visibility 0s linear .22s}body.dark-mode .soundtrack-timeline{visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s}.soundtrack-progress{--timeline-progress: 0%;position:absolute;inset:0;width:100%;height:1rem;padding:0;margin:0;appearance:none;background:transparent;cursor:pointer}.soundtrack-progress:disabled{cursor:wait}.soundtrack-progress::-webkit-slider-runnable-track{height:2px;background:linear-gradient(90deg,var(--text-hover) 0 var(--timeline-progress),rgb(255 255 255 / 22%) var(--timeline-progress) 100%)}.soundtrack-progress::-webkit-slider-thumb{width:0;height:0;margin:0;appearance:none;border:0;background:transparent}.soundtrack-progress::-moz-range-track{height:2px;border:0;background:#ffffff38}.soundtrack-progress::-moz-range-progress{height:2px;background:var(--text-hover)}.soundtrack-progress::-moz-range-thumb{width:0;height:0;border:0;background:transparent}.soundtrack-progress:focus-visible{outline:0}#app[data-homepage-loading]>:not(.loading-indicator){visibility:hidden!important}.loading-indicator{position:fixed;right:1.5rem;bottom:1.25rem;z-index:80;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.5;transition:opacity .3s ease}.loading-indicator.is-hidden{opacity:0;pointer-events:none}@media(max-width:1024px){:root{--page-gutter: 2.4rem;--header-top: clamp(1.6rem, 8vh, 4.5rem)}.about-panel{top:34vh}.about-panel p{font-size:clamp(1.6rem,3.2vw,2.2rem)}.project-slide{flex-basis:min(38vw,21rem);min-width:15rem}}@media(max-width:700px){.site-header .header-extensions{display:none}:root{--page-gutter: 1.15rem;--header-top: max(1.4rem, env(safe-area-inset-top))}.site-header{align-items:flex-start}.header-left{gap:.8rem}.primary-nav{max-width:none;flex-wrap:nowrap;gap:.48rem}.header-right{gap:.65rem}.about-panel{top:27vh}.about-panel p{width:100%;font-size:clamp(1.32rem,6.2vw,1.8rem);line-height:1.06}.project-card{align-items:center;padding-top:0}.project-track{flex-direction:row;gap:3vw;width:max-content;padding:0 50vw}.project-slide{flex:0 0 min(76vw,22rem);width:min(76vw,22rem);min-width:min(76vw,22rem)}.project-slide:before{aspect-ratio:16 / 10}.project-slide .project-image-frame{top:0;transform:none}.project-title{font-size:clamp(.94rem,4.4vw,1.15rem)}.project-description{font-size:clamp(.7rem,3.3vw,.88rem)}.hero-content{bottom:max(4.25rem,calc(env(safe-area-inset-bottom) + 3.25rem))}.hero-title{flex-wrap:wrap;justify-content:flex-start;gap:.08em .16em;font-size:var( --hero-fit-font-size, min(clamp(3.35rem, 16vw, 5.3rem), 15svh) );line-height:1;white-space:normal}}@media(max-height:620px)and (min-width:701px){:root{--header-top: 2rem}.about-panel{top:30vh}.project-card{align-items:center;padding-top:0}.project-slide{flex-basis:min(18rem,30vw)}.hero-content{bottom:2.4rem}}@media(prefers-reduced-motion:reduce){.project-slide--title-only .project-title{transition:none}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important}.gooey-part{transition:none}}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.parametric-generator-trigger-zone,.soundtrack-mute{position:absolute;top:calc(100% + .75rem);z-index:125}.parametric-generator-trigger-zone{right:0;display:flex;justify-content:flex-end;pointer-events:none}.soundtrack-mute{left:0}.soundtrack-mute:after{content:"";position:absolute;top:50%;left:50%;width:max(100%,44px);height:44px;transform:translate(-50%,-50%)}.parametric-generator-trigger,.soundtrack-mute{margin:0;padding:0;border:0;border-radius:0;color:var(--foreground);background:transparent;font:inherit;font-size:.5rem;font-weight:600;letter-spacing:.01em;line-height:1;opacity:1;cursor:pointer;pointer-events:auto;transition:color .18s ease}.parametric-generator-trigger:hover,.parametric-generator-trigger:focus-visible,.soundtrack-mute:hover,.soundtrack-mute:focus-visible{color:var(--text-hover)}.parametric-generator-trigger:focus-visible,.soundtrack-mute:focus-visible{outline:1px solid currentColor;outline-offset:.24rem}.parametric-generator-overlay{position:fixed;inset:0;z-index:150;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .22s ease}.parametric-generator-overlay[hidden]{display:none}.parametric-generator-overlay.is-visible{opacity:1;pointer-events:auto}.parametric-generator-stage{position:absolute;inset:0;z-index:0;touch-action:none;cursor:grab}.parametric-generator-stage.is-dragging{cursor:grabbing}.parametric-generator-stage:focus-visible{outline:1px solid color-mix(in srgb,var(--foreground) 54%,transparent);outline-offset:-.35rem}.parametric-generator-panel{--parametric-controls-offset: 3rem;position:absolute;inset:0;z-index:1;padding:var(--page-gutter);overflow:visible;border:0;border-radius:0;color:var(--foreground);background:transparent;box-shadow:none;pointer-events:none}.parametric-generator-header{position:absolute;top:var(--page-gutter);right:var(--page-gutter);left:var(--page-gutter);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1rem;padding:0;border:0;pointer-events:auto}.parametric-generator-heading{display:flex;min-width:0;align-items:center;gap:.75rem}.parametric-generator-theme-toggle{padding:.25rem 0;border:0;border-radius:0;color:inherit;background:transparent;font:inherit;font-size:.55rem;font-weight:600;letter-spacing:.09em;line-height:1;opacity:.6;cursor:pointer}.parametric-generator-header-divider{width:1px;height:14px;flex:none;background:currentColor;opacity:.22}.parametric-generator-theme-toggle:hover,.parametric-generator-theme-toggle:focus-visible{opacity:1}.parametric-generator-theme-toggle:focus-visible{outline:1px solid currentColor;outline-offset:3px}.parametric-generator-kicker{display:block;margin-bottom:.15rem;font-size:.48rem;font-weight:500;letter-spacing:.14em;line-height:1;text-transform:uppercase;opacity:.46}.parametric-generator-header h2{margin:0;font-size:.88rem;font-weight:600;letter-spacing:0;line-height:1}.parametric-generator-title-toggle{margin:-.4rem -.3rem;padding:.4rem .3rem;border:0;border-radius:0;color:inherit;background:transparent;font:inherit;letter-spacing:inherit;line-height:inherit;cursor:pointer}.parametric-generator-title-toggle:hover,.parametric-generator-title-toggle:focus-visible{color:var(--text-hover)}.parametric-generator-title-toggle:focus-visible{outline:1px solid currentColor;outline-offset:.12rem}.parametric-generator-title-row{display:flex;align-items:baseline;gap:.65rem}.playground-page-switcher{display:inline-flex;align-items:baseline;gap:.42rem;font-size:.55rem;font-weight:600;letter-spacing:.04em;line-height:1}.playground-page-switcher button{margin:0;padding:0;border:0;border-radius:0;color:inherit;background:transparent;font:inherit;opacity:.38;cursor:pointer}.playground-page-switcher [aria-current=page]{font-weight:700;opacity:1}.playground-page-switcher button:hover,.playground-page-switcher button:focus-visible{color:var(--text-hover);opacity:1}.playground-page-switcher button:focus-visible{outline:1px solid currentColor;outline-offset:3px}.tetrapod-game-stage{position:absolute;inset:0;z-index:1;padding:var(--page-gutter);overflow:hidden;background:var(--background);opacity:0;pointer-events:none;touch-action:none;transition:opacity .24s ease}body.dark-mode .tetrapod-game-stage{background:radial-gradient(circle at 50% 40%,#1a1b1d,#131416 48%,#0c0d0e)}.tetrapod-game-stage canvas{position:absolute;inset:0;display:block;width:100%;height:100%}body.parametric-game-active .tetrapod-game-stage{opacity:1;pointer-events:auto}.tetrapod-game-stage:focus-visible{outline:1px solid color-mix(in srgb,var(--foreground) 54%,transparent);outline-offset:-.35rem}.tetrapod-game-hud{position:static;z-index:3;display:flex;justify-self:center;align-items:center;gap:.875rem;color:var(--muted);font-size:.8125rem;line-height:1.3;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease}body.parametric-game-active .tetrapod-game-hud{opacity:1}.tetrapod-game-score{flex:none}.tetrapod-game-score strong{color:var(--purple);font-size:inherit;font-weight:600;font-variant-numeric:tabular-nums}.tetrapod-game-divider{width:1px;height:14px;flex:none;background:currentColor;opacity:.22}.tetrapod-game-timer{flex:none;font-variant-numeric:tabular-nums}#tetrapod-game-message{position:absolute;bottom:var(--page-gutter);left:50%;z-index:3;max-width:calc(100% - (var(--page-gutter) * 2));margin:0;overflow:hidden;color:var(--foreground);font-size:.47rem;letter-spacing:.02em;line-height:1.15;text-overflow:ellipsis;white-space:nowrap;opacity:0;pointer-events:none;transform:translate(-50%);transition:opacity .18s ease}body.parametric-game-active #tetrapod-game-message{opacity:.44}.tetrapod-game-stage[data-game-phase=found]+.parametric-generator-panel .tetrapod-game-score strong{color:#fbc119}.tetrapod-game-stage[data-urgent=true]+.parametric-generator-panel .tetrapod-game-timer,.tetrapod-game-stage[data-game-phase=expired]+.parametric-generator-panel .tetrapod-game-timer{color:#d75a45}.parametric-generator-close{justify-self:end;padding:.25rem 0;border:0;border-radius:0;color:inherit;background:transparent;font:inherit;font-size:.55rem;font-weight:600;letter-spacing:.09em;line-height:1;text-transform:uppercase;opacity:.52;cursor:pointer}.parametric-generator-close:hover,.parametric-generator-close:focus-visible{color:inherit;opacity:1}.parametric-generator-close:focus-visible,.parametric-generator-theme-toggle:focus-visible,.parametric-generator-actions button:focus-visible,.parametric-voice-toggle-row button:focus-visible,.parametric-tweaks-toggle:focus-visible{outline:1px solid var(--foreground);outline-offset:.16rem}.parametric-generator-grid{position:absolute;top:max(calc(var(--page-gutter) + var(--parametric-controls-offset)),clamp(4.4rem,12vh,7rem));left:var(--page-gutter);display:grid;grid-template-columns:minmax(0,1fr);gap:.3rem;width:min(14.25rem,calc(100vw - (var(--page-gutter) * 2)));margin:0;pointer-events:auto}.parametric-generator-grid,.parametric-tweaks-toggle,.parametric-generator-meta,.parametric-generator-actions,.parametric-generator-status{transition:opacity .18s ease}body.parametric-game-active .parametric-generator-grid,body.parametric-game-active .parametric-tweaks-toggle,body.parametric-game-active .parametric-generator-meta,body.parametric-game-active .parametric-generator-actions,body.parametric-game-active .parametric-generator-status{opacity:0;pointer-events:none}.parametric-generator-grid[hidden],.parametric-tweaks-toggle[hidden]{display:none}.parametric-tweaks-toggle{position:absolute;top:calc(var(--page-gutter) + 2.5rem);left:var(--page-gutter);padding:0;border:0;border-radius:0;color:inherit;background:transparent;font:inherit;font-size:.55rem;font-weight:600;letter-spacing:.09em;line-height:1;cursor:pointer;pointer-events:auto}.parametric-tweaks-toggle:after{content:"";position:absolute;top:50%;left:50%;width:max(100%,44px);height:44px;transform:translate(-50%,-50%)}.parametric-tweaks-toggle:hover,.parametric-tweaks-toggle[aria-expanded=true]{color:var(--purple-bright)}.parametric-control{display:grid;grid-template-columns:3.45rem minmax(0,1fr) 2.1rem;align-items:center;gap:.38rem;min-width:0;font-size:.49rem;font-weight:600;letter-spacing:.075em;line-height:1}.parametric-control output,.parametric-voice-output{overflow:hidden;font-size:.48rem;font-variant-numeric:tabular-nums;letter-spacing:0;text-align:right;text-overflow:clip;opacity:.52}.parametric-range{--parametric-progress: 0%;position:relative;display:block;width:100%;height:.9rem}.parametric-range:before,.parametric-range-fill{position:absolute;top:calc(50% - 1px);left:0;height:2px;pointer-events:none;content:""}.parametric-range:before{right:0;background:color-mix(in srgb,var(--foreground) 22%,transparent)}.parametric-range-fill{z-index:1;width:var(--parametric-progress);background:var(--foreground)}.parametric-control input{position:absolute;inset:0;z-index:2;width:100%;height:100%;margin:0;padding:0;appearance:none;border:0;background:transparent;cursor:ew-resize}.parametric-control input::-webkit-slider-runnable-track{height:2px;background:transparent}.parametric-control input::-webkit-slider-thumb{width:3px;height:.72rem;margin-top:-.31rem;appearance:none;border:0;border-radius:0;background:var(--foreground)}.parametric-control input::-moz-range-track{height:2px;border:0;background:transparent}.parametric-control input::-moz-range-progress{height:2px;background:transparent}.parametric-control input::-moz-range-thumb{width:3px;height:.72rem;border:0;border-radius:0;background:var(--foreground)}.parametric-control input:focus-visible{outline:1px solid var(--foreground);outline-offset:.16rem}.parametric-generator-meta{position:absolute;bottom:var(--page-gutter);left:var(--page-gutter);display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.52rem;width:min(14.25rem,calc(50vw - var(--page-gutter)));margin:0;padding:0;border:0;color:inherit;font-size:.49rem;font-weight:600;letter-spacing:.075em;pointer-events:auto}.parametric-seed-toggle{margin:0;padding:0;border:0;border-radius:0;color:inherit;background:transparent;font:inherit;letter-spacing:inherit;cursor:pointer}.parametric-seed-toggle:hover,.parametric-seed-toggle:focus-visible,.parametric-seed-toggle[aria-expanded=true]{color:var(--purple-bright)}.parametric-seed-toggle:focus-visible,.parametric-seed-drawer button:focus-visible{outline:1px solid var(--foreground);outline-offset:.16rem}.parametric-seed-drawer{position:absolute;bottom:calc(100% + .48rem);left:0;display:grid;width:min(12.6rem,calc(100vw - (var(--page-gutter) * 2)));max-height:0;overflow:hidden;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(.55rem);transition:max-height .24s cubic-bezier(.22,1,.36,1),opacity .15s ease,transform .24s cubic-bezier(.22,1,.36,1),visibility 0s linear .24s}.parametric-seed-drawer.is-open{max-height:min(16rem,55svh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);transition-delay:0s}.parametric-seed-drawer button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem;width:100%;padding:.42rem 0;border:0;border-top:1px solid color-mix(in srgb,var(--foreground) 20%,transparent);border-radius:0;color:inherit;background:transparent;font:inherit;letter-spacing:.045em;text-align:left;cursor:pointer}.parametric-seed-drawer button:last-child{border-bottom:1px solid color-mix(in srgb,var(--foreground) 20%,transparent)}.parametric-seed-drawer button:hover span:first-child,.parametric-seed-drawer button:focus-visible span:first-child{color:var(--purple-bright)}.parametric-seed-drawer button span:last-child{font-variant-numeric:tabular-nums;opacity:.42}.parametric-generator-meta input{width:8.5rem;min-width:0;margin:0;padding:0;border:0;border-radius:0;outline:0;color:inherit;background:transparent;font:inherit;line-height:inherit;font-variant-numeric:tabular-nums;letter-spacing:.045em;opacity:.58}.parametric-generator-meta input:focus-visible{opacity:1}.parametric-voice-meter{position:relative;display:block;flex:0 0 clamp(2.75rem,4.25vw,4.75rem);height:2px;overflow:hidden;background:color-mix(in srgb,var(--foreground) 18%,transparent)}.parametric-voice-meter>span{--voice-level: 0%;position:absolute;inset:0 auto 0 0;width:var(--voice-level);background:var(--foreground);transition:width 70ms linear}.parametric-generator-actions{position:absolute;right:var(--page-gutter);bottom:var(--page-gutter);display:flex;align-items:center;gap:clamp(.85rem,1.5vw,1.5rem);border:0;pointer-events:auto}.parametric-generator-actions button,.parametric-voice-toggle-row button{display:flex;min-width:0;min-height:0;align-items:center;justify-content:center;gap:.3rem;padding:0;border:0;border-radius:0;color:inherit;background:transparent;font:inherit;font-size:.5rem;font-weight:600;letter-spacing:.08em;cursor:pointer}.parametric-generator-actions button:last-child{border:0}.parametric-generator-actions button:hover,.parametric-generator-actions button[aria-pressed=true],.parametric-voice-toggle-row button:hover,.parametric-voice-toggle-row button[aria-pressed=true]{color:var(--purple-bright);background:transparent}.parametric-generator-actions button:disabled,.parametric-voice-toggle-row button:disabled{cursor:wait;opacity:.4}.parametric-generator-status{position:absolute;bottom:var(--page-gutter);left:50%;margin:0;overflow:hidden;font-size:.47rem;letter-spacing:.02em;line-height:1.15;text-overflow:ellipsis;white-space:nowrap;opacity:.44;pointer-events:none;transform:translate(-50%)}.site-header,.hero-title-effects,.tetrapod-layer-front,.theme-fold,.noise-overlay,.soundtrack-timeline,.loading-indicator{transition:opacity .22s ease}body.parametric-generator-active{overflow:hidden}body.parametric-generator-active .site-header,body.parametric-generator-active .hero-title-effects,body.parametric-generator-active .about-panel,body.parametric-generator-active .project-card,body.parametric-generator-active .soundtrack-mute,body.parametric-generator-active .tetrapod-layer-front,body.parametric-generator-active .theme-fold,body.parametric-generator-active .noise-overlay,body.parametric-generator-active .soundtrack-timeline,body.parametric-generator-active .loading-indicator,body.parametric-generator-active .parametric-generator-trigger{opacity:0;pointer-events:none}body.parametric-generator-active .parametric-generator-trigger-zone{pointer-events:none}body.parametric-generator-active .tetrapod-layer-back{z-index:140}@media(max-width:700px){.parametric-generator-header{grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem}.parametric-generator-panel{--parametric-controls-offset: 5rem;inset:0;padding:var(--page-gutter);overflow:visible}.parametric-generator-grid{top:calc(var(--page-gutter) + var(--parametric-controls-offset));bottom:3.4rem;gap:.26rem;width:min(14.25rem,calc(100vw - (var(--page-gutter) * 2)));margin:0;padding-right:.25rem;overflow-y:auto}.parametric-control{grid-template-columns:3rem minmax(0,1fr) 1.8rem;gap:.26rem;font-size:.45rem}.parametric-control output,.parametric-voice-output{font-size:.44rem}.parametric-generator-meta{width:min(11rem,calc(48vw - var(--page-gutter)));margin:0;padding:0}.parametric-voice-meter,.parametric-generator-status{display:none}.parametric-generator-actions{gap:.65rem}.tetrapod-game-hud{gap:.625rem;margin:0;font-size:.675rem}}@media(max-width:360px){.parametric-generator-title-row{gap:.48rem}.tetrapod-game-hud{gap:.45rem;font-size:.625rem}}@media(max-height:480px){.parametric-generator-panel{inset:0;padding:var(--page-gutter)}.parametric-generator-header{padding-bottom:.42rem}.parametric-generator-grid{top:calc(var(--page-gutter) + var(--parametric-controls-offset));bottom:2.6rem;grid-template-columns:minmax(0,1fr);gap-block:.2rem;margin:0;overflow-y:auto}.parametric-generator-meta{margin:0;padding:0}.parametric-generator-status{margin-top:.3rem}}.parametric-voice-controls{min-width:0;margin:.65rem 0 0;padding:0;border:0;font-size:.49rem;font-weight:600;letter-spacing:.075em}.parametric-voice-toggle-row{display:grid;grid-template-columns:3.45rem minmax(0,1fr) 2.1rem;align-items:center;gap:.38rem;min-height:1.5rem;margin-bottom:.4rem}.parametric-voice-toggle-row button{justify-content:flex-start}.parametric-voice-toggle-row .parametric-voice-meter{width:100%}.parametric-voice-output{display:block}.parametric-voice-effects{display:flex;align-items:baseline;gap:.8rem;min-width:0;margin:.65rem 0 0;font-size:.49rem;font-weight:600;letter-spacing:.075em}.parametric-voice-effects-label{flex:0 0 auto;line-height:1;opacity:.52}.parametric-voice-effects-row{display:flex;flex:1 1 auto;min-width:0;align-items:baseline;justify-content:flex-end;gap:.6rem}.parametric-voice-effects button{min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;font-weight:400;line-height:1;white-space:nowrap;opacity:.65;cursor:pointer}.parametric-voice-effects button[aria-pressed=true]{font-weight:700;opacity:1}.parametric-voice-effects button:hover{color:var(--text-hover)}.parametric-voice-effects button:focus-visible{outline:1px solid var(--foreground);outline-offset:3px}.parametric-voice-effects-separator{flex:0 0 2px;align-self:center;width:2px;height:.55rem;background:var(--foreground);opacity:.28;transform:scaleX(.5);transition:opacity .14s ease,transform .14s ease}.parametric-voice-effects:has(button[aria-pressed=true]) .parametric-voice-effects-separator{opacity:.8;transform:scaleX(1)}@media(max-width:700px){.parametric-voice-toggle-row{grid-template-columns:3rem minmax(0,1fr) 1.8rem;gap:.26rem}.parametric-voice-toggle-row button,.parametric-voice-effects button{min-height:2.75rem}.parametric-voice-effects,.parametric-voice-effects-row{align-items:center}}@media(max-width:700px)and (max-height:480px){.parametric-generator-grid{top:calc(var(--page-gutter) + 5rem)}}@media(prefers-reduced-motion:reduce){.parametric-generator-overlay,.site-header,.hero-title-effects,.tetrapod-layer-front,.theme-fold,.noise-overlay,.soundtrack-timeline,.loading-indicator,.parametric-generator-trigger,.tetrapod-game-stage,.tetrapod-game-hud,#tetrapod-game-message,.parametric-voice-effects-separator,.soundtrack-mute,.parametric-seed-drawer{transition:none}}
