[data-v-bc50231e] main,.router-view-container[data-v-bc50231e]{padding-top:0}.home-background[data-v-bd3753de]{position:absolute;inset:0;z-index:-1;pointer-events:none}.home-background[data-v-bd3753de] svg{width:100%;height:100%;overflow:hidden}.ascii-text[data-v-eba0c378]{display:inline-block;vertical-align:top}.ascii-word[data-v-eba0c378]{display:inline-block;overflow:hidden;vertical-align:top;white-space:nowrap}.ascii-text-label[data-v-eba0c378]{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.home-project-badge[data-v-cb7177f6]{position:absolute;z-index:2;top:clamp(10px,2.54vw,19px);right:clamp(10px,3.2vw,24px);padding:var(--space-2xs);border:var(--border-width-thin) solid rgb(var(--color-white-rgb) / 18%);border-radius:var(--radius-sm);background:rgb(var(--color-white-rgb) / 12%);color:var(--color-white);font:400 var(--font-size-label) / 1.5 var(--font-family-base);letter-spacing:0;white-space:nowrap;pointer-events:none}.home-loader[data-v-bba241d5]{position:fixed;inset:0;z-index:20;overflow:hidden;color:var(--home-ink);font-family:var(--font-family-base);font-size:var(--font-size-xs);font-weight:400;font-synthesis:none;-webkit-font-kerning:normal;font-kerning:normal;letter-spacing:0;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.home-loader-backdrop[data-v-bba241d5]{position:absolute;inset:0;background:var(--home-bg);opacity:.22}.home-loader-chrome[data-v-bba241d5]{z-index:5;visibility:hidden}.is-font-ready .home-loader-chrome[data-v-bba241d5]{visibility:visible}.home-loader-heading[data-v-bba241d5],.home-loader-progress[data-v-bba241d5]{position:absolute;left:0;width:100%;margin:0;padding-inline:var(--space-xl);text-align:center}.home-loader-heading[data-v-bba241d5]{top:var(--space-lg)}.home-loader-progress[data-v-bba241d5]{bottom:var(--space-lg);font-variant-numeric:tabular-nums}.home-loader-counter[data-v-bba241d5]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:3.4em;white-space:nowrap}.home-loader-digit[data-v-bba241d5]{-webkit-box-flex:0;-ms-flex:0 0 .65em;flex:0 0 .65em;width:.65em;text-align:center}.home-loader-name[data-v-bba241d5],.home-loader-time[data-v-bba241d5]{position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);white-space:nowrap}.home-loader-name[data-v-bba241d5]{left:var(--space-xl);font-size:var(--font-size-logo);font-weight:500}.home-loader-time[data-v-bba241d5]{right:var(--space-xl);font-variant-numeric:tabular-nums}.home-loader-window[data-v-bba241d5]{position:absolute;overflow:visible;isolation:isolate}.home-loader-panel[data-v-bba241d5]{top:0;left:0;position:absolute;margin:0;overflow:hidden;opacity:0;background:var(--home-bg);contain:layout paint;will-change:transform,opacity}.home-loader-panel img[data-v-bba241d5],.home-loader-panel canvas[data-v-bba241d5]{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.home-loader-panel img[data-v-bba241d5]{opacity:0}@media (max-width: 640px){.home-loader-name[data-v-bba241d5],.home-loader-time[data-v-bba241d5]{top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.home-loader-name[data-v-bba241d5]{left:var(--layout-home-gutter-mobile)}.home-loader-time[data-v-bba241d5]{right:var(--layout-home-gutter-mobile)}}.home-gallery[data-v-37490c74]{--slide-width: var(--home-slide-width, min(38.96vw, 71.11svh));--slide-gap: 4.54vw;--card-height: calc(var(--slide-width) * 9 / 16);-webkit-column-gap:var(--slide-gap);-moz-column-gap:var(--slide-gap);column-gap:var(--slide-gap);position:absolute;top:var(--home-gallery-center, 50%);left:0;width:100%;height:calc(var(--card-height) + var(--space-2xl) * 2);overflow:hidden;overflow:clip;-ms-touch-action:none;touch-action:none;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.home-gallery.is-dragging[data-v-37490c74]{cursor:-webkit-grabbing;cursor:grabbing}.home-gallery[data-v-37490c74]:focus-visible{outline:var(--border-width-thin) solid var(--home-ink);outline-offset:-1px}.home-gallery-track[data-v-37490c74]{position:absolute;z-index:1;top:50%;left:50%;width:var(--slide-width);height:var(--card-height);-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.home-gallery-slide[data-v-37490c74]{position:absolute;top:0;left:0;width:100%;height:100%;aspect-ratio:16 / 9;-webkit-transform:translateX(calc(var(--card-position, 5) * (var(--slide-width) + var(--slide-gap))));-ms-transform:translateX(calc(var(--card-position, 5) * (var(--slide-width) + var(--slide-gap))));transform:translate(calc(var(--card-position, 5) * (var(--slide-width) + var(--slide-gap))));overflow:visible;will-change:transform}.home-gallery-project-link[data-v-37490c74]{display:block;width:100%;height:100%;cursor:pointer;overflow:hidden}.home-gallery-project-link[data-v-37490c74]:focus-visible{outline:var(--border-width-thin) solid var(--home-ink);outline-offset:-2px}.home-gallery.is-dragging .home-gallery-project-link[data-v-37490c74]{cursor:-webkit-grabbing;cursor:grabbing}.home-gallery-slide img[data-v-37490c74]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.home-gallery-slide[data-pixelated] img[data-v-37490c74]{-ms-interpolation-mode:nearest-neighbor;image-rendering:-webkit-optimize-contrast;image-rendering:-o-pixelated;image-rendering:pixelated}.home-gallery-canvas[data-v-37490c74]{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}.home-gallery[data-motion-renderer] .home-gallery-canvas[data-v-37490c74]{opacity:1}.home-gallery[data-motion-renderer] .home-gallery-slide img[data-v-37490c74]{opacity:0}.drag-proxy[data-v-37490c74]{position:absolute;visibility:hidden}.visually-hidden[data-v-37490c74]{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}@media (max-width: 640px){.home-gallery[data-v-37490c74]{--slide-width: var(--home-slide-width, 80vw);--slide-gap: var(--space-lg);top:var(--home-gallery-center, 50.03485%)}}.home-header[data-v-25af34d6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:var(--space-lg) var(--home-gutter)}.home-header>a[data-v-25af34d6]{-webkit-box-flex:1;-ms-flex:1;flex:1;font-size:var(--font-size-logo);font-weight:500}.home-nav[data-v-25af34d6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:2;-ms-flex:2;flex:2;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.home-nav sup[data-v-25af34d6]{margin-left:var(--space-2xs);font-size:.6667em;line-height:0;vertical-align:super}.home-nav button[data-v-25af34d6]{white-space:nowrap}.home-nav button[data-v-25af34d6]:disabled{color:var(--color-disabled);opacity:1;cursor:default}.home-header a[data-v-25af34d6]:focus-visible{outline:var(--border-width-thin) solid currentColor;outline-offset:var(--space-2xs)}@media (max-width: 640px){.home-header[data-v-25af34d6]{padding-block:var(--space-lg);gap:calc(var(--space-xl) + var(--space-2xs))}.home-nav[data-v-25af34d6]{-webkit-box-flex:2;-ms-flex:2;flex:2;gap:var(--layout-home-gutter-mobile)}}.home-intro[data-v-632dc5aa]{position:absolute;top:25.0283%;bottom:66.6133%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;left:var(--home-text-left);width:513px;max-width:calc(100% - var(--home-text-left) - var(--home-gutter));margin:0;white-space:pre-line;text-wrap:initial}.home-intro[data-v-632dc5aa]{font-size:var(--home-heading-size);font-weight:400;line-height:1.2;letter-spacing:0;word-spacing:0}@media (max-width: 640px){.home-intro[data-v-632dc5aa]{width:calc(100% - var(--home-gutter) * 2);white-space:normal;text-wrap:balance}}@media (max-height: 700px) and (min-width: 641px){.home-intro[data-v-632dc5aa]{width:calc(100% - var(--home-text-left) * 2)}}@media (max-height: 700px) and (max-width: 640px){.home-intro[data-v-632dc5aa]{width:calc(100% - var(--home-gutter) * 2)}}.home-project-caption[data-v-351b3da9]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:66.683%;bottom:25%;left:var(--home-text-left);right:calc(var(--home-text-left) + var(--home-position-width) + var(--space-lg));min-height:3em;text-align:left;pointer-events:none}.home-project-caption h2[data-v-351b3da9],.home-project-caption p[data-v-351b3da9]{margin:0;font:inherit;letter-spacing:inherit;word-spacing:inherit;line-height:1.5}.home-project-caption h2[data-v-351b3da9]{font-size:var(--home-heading-size);font-weight:400;line-height:1.2;letter-spacing:0;word-spacing:0}.home-project-caption p[data-v-351b3da9]{white-space:pre-wrap;font-size:var(--home-detail-size);margin-top:var(--space-2xs)}.home-gallery-position[data-v-351b3da9]{position:absolute;top:var(--home-caption-top);right:var(--home-text-left);width:var(--home-position-width);font-size:var(--home-detail-size);line-height:1.5;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;pointer-events:none}.home-gallery-progress[data-v-351b3da9]{--progress-length: var(--space-xl);position:absolute;top:calc(75.0061% - var(--border-width-thin));left:0;right:0;height:var(--border-width-thin);overflow:hidden;overflow:clip;pointer-events:none}.home-gallery-progress span[data-v-351b3da9]{position:absolute;top:0;left:var(--cycle-offset);width:100%;height:var(--border-width-thin);-webkit-transform:translateX(calc(var(--carousel-progress, 0) * 100%));-ms-transform:translateX(calc(var(--carousel-progress, 0) * 100%));transform:translate(calc(var(--carousel-progress, 0) * 100%));will-change:transform}.home-gallery-progress span[data-v-351b3da9]:before{content:"";display:block;width:var(--progress-length);height:var(--border-width-thin);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translate(-50%);background:var(--home-ink)}.home-footer[data-v-b3d8226c]{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--space-lg);-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:var(--space-lg) var(--home-gutter)}.home-email[data-v-b3d8226c]{--email-control-size: calc(var(--space-xl) + var(--space-2xs));display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;gap:var(--space-2xs);-webkit-box-align:center;-ms-flex-align:center;align-items:center;justify-self:start}.home-email-arrow[data-v-b3d8226c],.home-email-label[data-v-b3d8226c]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;background:rgb(var(--color-fg-rgb) / var(--home-control-fill));border:var(--border-width-thin) solid rgb(var(--color-fg-rgb) / var(--home-control-border))}.home-email:focus-visible .home-email-arrow[data-v-b3d8226c],.home-email:focus-visible .home-email-label[data-v-b3d8226c]{border-color:rgb(var(--color-fg-rgb) / 42%);-webkit-box-shadow:inset 0 var(--border-width-thin) 0 rgb(var(--color-fg-rgb) / 35%),inset 0 0 var(--space-sm) rgb(var(--color-fg-rgb) / 6%);box-shadow:inset 0 var(--border-width-thin) 0 rgb(var(--color-fg-rgb) / 35%),inset 0 0 var(--space-sm) rgb(var(--color-fg-rgb) / 6%)}.home-email-arrow[data-v-b3d8226c]{width:var(--email-control-size);height:var(--email-control-size);border-radius:var(--radius-md)}.home-email-label[data-v-b3d8226c]{min-height:var(--email-control-size);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);gap:var(--space-2xs)}.home-time[data-v-b3d8226c]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;width:-webkit-max-content;width:-moz-max-content;width:max-content;-ms-flex-negative:0;flex-shrink:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:var(--space-2xs);font-variant-numeric:tabular-nums;white-space:nowrap}.home-copyright[data-v-b3d8226c]{justify-self:end}.home-email[data-v-b3d8226c]:focus-visible{outline:var(--border-width-thin) solid currentColor;outline-offset:var(--space-2xs)}@media (max-width: 640px){.home-footer[data-v-b3d8226c]{grid-template-columns:1fr auto;gap:var(--space-md)}.home-email[data-v-b3d8226c]{display:none}.home-time[data-v-b3d8226c]{grid-column:1;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}}.home-content[data-v-31be6ca9]{display:contents}.home-page[data-v-31be6ca9]{--home-bg: var(--color-bg);--home-ink: var(--color-fg);--home-gutter: var(--space-xl);--home-text-left: 16.6667%;--home-heading-size: var(--font-size-intro);--home-detail-size: var(--font-size-xs);--home-slide-width: min(31.54vw, calc(47.98svh - 46.07px));--home-gallery-center: 50.03485%;--home-position-width: var(--space-2xl);--home-caption-top: calc(70.8445% - var(--layout-home-gutter-mobile));position:relative;isolation:isolate;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:640px;height:100svh;overflow:hidden;background:var(--home-bg);color:var(--home-ink);font-family:var(--font-family-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;-webkit-font-kerning:normal;font-kerning:normal;font-weight:400;letter-spacing:0;word-spacing:0;font-size:var(--font-size-xs);line-height:1.5}.home-main[data-v-31be6ca9]{-webkit-box-flex:1;-ms-flex:1;flex:1;min-height:0}@media (max-width: 640px){.home-page[data-v-31be6ca9]{--home-gutter: var(--layout-home-gutter-mobile);--home-text-left: var(--home-gutter);--home-slide-width: 77vw;min-height:600px}}@layer reset,base,utilities;@layer base{:root{--font-family-base: "Delight", Arial, sans-serif;--font-size-logo: calc(var(--font-size-xs) + 2pt);--font-size-intro: 1.125rem;--font-size-label: .6875rem;--font-size-xs: .75rem;--font-size-s: .8125rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.5rem;--font-size-xl: 2.25rem;--font-size-2xl: 3rem;--font-size-3xl: 4.5rem;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-pill: 999px;--border-width-thin: 1px;--shadow-soft: 0 10px 30px rgba(15, 23, 42, .08);--color-disabled: #777777;--color-white: #FFFFFF;--color-white-rgb: 255 255 255;--color-bg: #FEF9F9;--color-bg-alt: #EEE4DB;--color-bg-soft: #f5f5f7;--color-fg: #2B2727;--color-fg-rgb: 43 39 39;--home-control-fill: 3%;--home-control-border: 10%;color-scheme:light;--color-muted: #6b7280;--color-border: #D9D9D9;--color-primary: #2B2727;--color-primary-soft: #dbeafe;--color-primary-strong: #000000;--color-accent-red: #E76F51;--color-accent-green: #D6E1D1;--color-danger: #E76F51;--layout-max-width: 100vw;--layout-padding-inline: 1.5rem;--layout-header-height: 72px;--layout-home-gutter-mobile: 1.25rem;--blur-header: 12px;--transition-fast: .15s ease-out;--transition-normal: .22s ease-out}@media (prefers-color-scheme: light){:root{color-scheme:light;--color-bg: #FEF9F9;--color-fg: #2B2727;--color-fg-rgb: 43 39 39}}@media (prefers-color-scheme: dark){:root{color-scheme:dark;--home-control-fill: 12%;--home-control-border: 18%;--color-bg: #070707;--color-bg-alt: #141414;--color-bg-soft: #1A1A1A;--color-fg: var(--color-white);--color-fg-rgb: var(--color-white-rgb);--color-muted: #999999;--color-border: #333333;--color-primary: #FFFFFF;--color-primary-strong: #FFFFFF;--shadow-soft: 0 10px 30px rgb(0 0 0 / 24%)}}}@layer reset{:where(*,*::before,*::after){-webkit-box-sizing:border-box;box-sizing:border-box}:where(html,body){margin:0;padding:0}:where(body){min-height:100vh}:where(img,picture,video,canvas,svg){max-width:100%;display:block}:where(ul,ol){list-style:none;margin:0;padding:0}:where(button){background:none;border:none;padding:0;cursor:pointer}:where(a){color:inherit;text-decoration:none}:where(input,button,textarea,select){font:inherit;color:inherit}}@layer utilities{.text-center{text-align:center}.text-muted{color:var(--color-muted)}.max-width-sm{max-width:480px}.max-width-md{max-width:640px}.margin-inline-auto{margin-inline:auto}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;white-space:nowrap}}@font-face{font-family:Delight;src:url(/fonts/delight/Delight-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Delight;src:url(/fonts/delight/Delight-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}#app{max-width:var(--layout-max-width);margin:0 auto;font-weight:400}body{font-synthesis:none;font-family:var(--font-family-base);font-size:var(--font-size-md);color:var(--color-fg);background-color:var(--color-bg);line-height:1.6;text-rendering:auto}.router-view-container{width:100%}:where(h1,h2,h3,h4,h5,h6){font-weight:500;line-height:100%;letter-spacing:-1.2px;margin:0 0 var(--space-md)}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}p{margin:0 0 var(--space-md)}small{font-size:var(--font-size-xs)}@media (prefers-reduced-motion: reduce){*{-webkit-animation-duration:.01ms!important;animation-duration:.01ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important;-webkit-transition-duration:.01ms!important;-o-transition-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html.has-home-carousel{scrollbar-width:none;overflow:hidden}html.has-home-carousel::-webkit-scrollbar{display:none}
