@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}@font-face{font-family:Timeless Sans;src:url(/fonts/TimelessSans-Regular.woff2)format("woff2");font-weight:420;font-style:normal;font-display:swap}@font-face{font-family:Timeless Sans;src:url(/fonts/TimelessSans-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Timeless Serif;src:url(/fonts/TimelessSerif-Book.woff2)format("woff2");font-weight:350;font-style:normal;font-display:swap}:root{--bg:#fff;--paper:#fff;--ink:#000;--ink-muted:#767676;--rule:#ddd;--rule-soft:#eee;--surface:#f3f3f3;--r-sm:10px;--r-md:12px;--r-pill:30px;--s-1:4px;--s-2:8px;--s-inset:10px;--s-4:16px;--s-6:24px;--s-8:32px;--s-10:40px;--col:690px;--col-wide:926px;--dock-gutter:100px;--dock-offset:20px;--nav-offset:0px;--nav-band:1164px;--logo-size:32.5244px;--header-h:56px;--font-nav:var(--font-sans);--font-sans:"Timeless Sans", system-ui, sans-serif;--font-mono:var(--font-sans);--font-display:var(--font-quote);--font-quote:"Timeless Serif", Georgia, serif;--type-home-intro:36px;--type-home-label:14px;--type-logo:22px;--type-project-title:36px;--type-project-body:18px;--type-project-quote:28px;--ease-drama:cubic-bezier(.86, 0, .07, 1);--ease-morph:cubic-bezier(.165, .84, .44, 1);--ease-enter:cubic-bezier(.19, 1, .22, 1);--ease-hover:ease;--d-hover:.15s;--d-enter:.4s;--d-morph:.5s;--d-morph-close:.4s;--d-exit:.32s}html[data-project-details]{--bg:#fff;--header-h:72px}[data-theme=dark]{color-scheme:dark;--bg:#000;--ink:#ddd;--ink-muted:#8a8a8a;--rule:#262626}@property --bg{syntax:"<color>";inherits:true;initial-value:#fff}@property --ink{syntax:"<color>";inherits:true;initial-value:#000}@property --ink-muted{syntax:"<color>";inherits:true;initial-value:#767676}@property --rule{syntax:"<color>";inherits:true;initial-value:#ddd}@media (prefers-reduced-motion:no-preference){html{transition-property:--bg,--ink,--ink-muted,--rule;transition-duration:var(--d-morph);transition-timing-function:var(--ease-hover)}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html[data-lines-hold] [data-lines]{visibility:hidden}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:12px;font-weight:400;line-height:normal}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}p{margin:0}.rule-dashed{border:0;border-top:1px dashed var(--rule);width:100%;margin:0}.cta-talk{justify-content:center;align-items:center;gap:var(--s-1);height:36px;padding:var(--s-2) 12px;border-radius:var(--r-pill);color:#fff;font-family:var(--font-nav);font-size:var(--type-home-label);letter-spacing:-.02em;white-space:nowrap;filter:drop-shadow(0 1px 3px #00000040)drop-shadow(0 1px 1px #0003);background:linear-gradient(#303030,#000);border:1px solid #bcbcbc;font-weight:500;display:flex;position:relative}.cta-talk img{flex:none;width:17.4997px;height:16.75px;margin:-.375px}.cta-talk:after{content:"";position:absolute;inset:-4px 0}.cta-talk:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.meta{gap:var(--s-1);flex-direction:column;display:flex}.meta-title{color:var(--ink);font-weight:500}.meta-client{color:var(--ink-muted);font-weight:400}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition:none;animation:none}}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){mix-blend-mode:normal;animation:none!important}.page-column{max-width:var(--col);padding:calc(var(--header-h) + 80px) var(--s-6) var(--dock-gutter);margin-inline:auto}.empty{color:var(--ink-muted);padding-inline:var(--s-inset)}.prose{max-width:454px;padding-inline:var(--s-inset)}.prose p{color:var(--ink-muted);font-size:16px;line-height:24px}.prose p+p{margin-top:var(--s-4)}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.nav-guides[data-astro-cid-l7arcky5],.navbar[data-astro-cid-l7arcky5]{width:min(var(--nav-band), 100% - 2 * var(--s-2));position:fixed;left:50%;translate:-50%}.nav-guides[data-astro-cid-l7arcky5]{border-inline:1px solid var(--rule-soft);z-index:-1;pointer-events:none;height:100lvh;top:0}.navbar[data-astro-cid-l7arcky5]{top:max(var(--nav-offset), env(safe-area-inset-top));align-items:center;gap:var(--s-1);height:56px;padding:var(--s-1) var(--s-2);border:1px solid var(--rule-soft);background:color-mix(in srgb, var(--bg) 10%, transparent);backdrop-filter:blur(5px);z-index:30;font-family:var(--font-nav);font-size:var(--type-home-label);letter-spacing:-.02em;white-space:nowrap;border-top:0;font-weight:500;line-height:18px;display:flex}.nav-guides[data-astro-cid-l7arcky5],.navbar[data-astro-cid-l7arcky5]{--rule-soft:#00000012}html[data-theme=dark] [data-astro-cid-l7arcky5]:is(.navbar,.nav-guides){--surface:var(--rule)}.navbar[data-astro-cid-l7arcky5][data-theme=dark],html[data-theme=dark] [data-astro-cid-l7arcky5]:is(.navbar,.nav-guides){--rule-soft:#ffffff1f}.navbar[data-astro-cid-l7arcky5][data-theme=dark] .nav-cta[data-astro-cid-l7arcky5],html[data-theme=dark] .nav-cta[data-astro-cid-l7arcky5]{border-color:var(--rule-soft);color:#000;background:#fff}.navbar[data-astro-cid-l7arcky5][data-theme=dark] .nav-cta[data-astro-cid-l7arcky5] img[data-astro-cid-l7arcky5],html[data-theme=dark] .nav-cta[data-astro-cid-l7arcky5] img[data-astro-cid-l7arcky5]{filter:invert()}@media (prefers-reduced-motion:no-preference){.navbar[data-astro-cid-l7arcky5],.nav-back[data-astro-cid-l7arcky5],.nav-cta[data-astro-cid-l7arcky5]{transition-property:background-color,border-color,color;transition-duration:var(--d-hover);transition-timing-function:var(--ease-hover)}}.nav-brand[data-astro-cid-l7arcky5],.nav-slot[data-astro-cid-l7arcky5]{border-radius:36px;align-items:center;gap:2px;height:36px;padding:6px clamp(4px,12.5vw - 42.5px,12px);display:flex;position:relative}.nav-brand[data-astro-cid-l7arcky5]{color:var(--ink);margin-right:auto}.nav-tabs[data-astro-cid-l7arcky5]{gap:var(--s-1);display:flex;position:relative}.nav-slot[data-astro-cid-l7arcky5]{z-index:1;color:var(--ink-muted)}.nav-back[data-astro-cid-l7arcky5]{border:1px solid var(--rule-soft);height:36px;color:var(--ink);border-radius:36px;align-items:center;margin-left:12px;margin-right:auto;padding:6px 9px;display:flex;position:relative}.nav-back[data-astro-cid-l7arcky5] .nav-icon[data-astro-cid-l7arcky5]{width:16px;height:16px}html[data-project-details] .nav-cta[data-astro-cid-l7arcky5]{margin-right:12px}[data-astro-cid-l7arcky5]:is(.nav-brand,.nav-slot,.nav-back):after{content:"";position:absolute;inset:-4px 0}.nav-slot[data-astro-cid-l7arcky5][aria-current=page]{color:var(--ink);background:var(--surface)}.navbar[data-astro-cid-l7arcky5][data-pill-ready] .nav-slot[data-astro-cid-l7arcky5][aria-current=page]{background:0 0}[data-astro-cid-l7arcky5]:is(.nav-brand,.nav-slot,.nav-back):focus-visible{outline:2px solid var(--ink);outline-offset:2px}.nav-pill[data-astro-cid-l7arcky5]{width:100%;height:36px;fill:var(--surface);pointer-events:none;position:absolute;inset:0;overflow:visible}.nav-icon[data-astro-cid-l7arcky5]{flex:none;width:24px;height:24px;position:relative}.nav-icon[data-astro-cid-l7arcky5]:before{content:"";mask:var(--nav-icon) center / contain no-repeat;-webkit-mask:var(--nav-icon) center / contain no-repeat;background:currentColor;position:absolute;inset:0}.nav-icon-brand[data-astro-cid-l7arcky5]{--nav-icon:url(/icons/nav-brand.svg)}.nav-icon-labs[data-astro-cid-l7arcky5]{--nav-icon:url(/icons/nav-labs.svg)}.nav-icon-about[data-astro-cid-l7arcky5]{--nav-icon:url(/icons/nav-about.svg)}.nav-icon-back[data-astro-cid-l7arcky5]{--nav-icon:url(/icons/arrow-left.svg)}.nav-cta[data-astro-cid-l7arcky5]{margin-right:var(--s-2)}@media (hover:hover) and (pointer:fine){.nav-slot[data-astro-cid-l7arcky5]:hover{color:var(--ink)}}@media (prefers-reduced-motion:no-preference){.nav-slot[data-astro-cid-l7arcky5]{transition:color var(--d-hover) var(--ease-hover)}}@media (width<=560px){.navbar[data-astro-cid-l7arcky5]{padding-inline:var(--s-1)}.nav-cta[data-astro-cid-l7arcky5],html[data-project-details] .nav-cta[data-astro-cid-l7arcky5]{margin-right:0}.nav-back[data-astro-cid-l7arcky5]{margin-left:0}.nav-brand-label[data-astro-cid-l7arcky5],.nav-cta-label[data-astro-cid-l7arcky5]{display:none}.nav-cta[data-astro-cid-l7arcky5]{padding-inline:10px}}.cursor[data-astro-cid-qmueewfo]{--knock:var(--bg);width:32px;height:32px;color:var(--ink);pointer-events:none;z-index:100;opacity:0;position:fixed;top:0;left:0}.cursor[data-astro-cid-qmueewfo]>span[data-astro-cid-qmueewfo]{border-radius:50%;position:absolute;top:50%;left:50%;translate:-50% -50%}.ring[data-astro-cid-qmueewfo]{border:1px solid;width:16px;height:16px}.dot[data-astro-cid-qmueewfo]{background:currentColor;width:20px;height:20px;scale:.5}.glyph[data-astro-cid-qmueewfo]{background:var(--knock);opacity:0;width:32px;height:32px;-webkit-mask:var(--glyph) center / contain no-repeat;mask:var(--glyph) center / contain no-repeat;scale:.5}.cursor[data-astro-cid-qmueewfo][data-state] .ring[data-astro-cid-qmueewfo]{width:32px;height:32px}.cursor[data-astro-cid-qmueewfo][data-state] .dot[data-astro-cid-qmueewfo]{scale:1}.cursor[data-astro-cid-qmueewfo][data-state] .glyph[data-astro-cid-qmueewfo]{opacity:1;scale:1}.cursor[data-astro-cid-qmueewfo][data-invert]{color:var(--bg);--knock:var(--ink)}.cursor[data-astro-cid-qmueewfo],.cursor[data-astro-cid-qmueewfo][data-glyph=open]{--glyph:url(/icons/cursor-open.svg)}.cursor[data-astro-cid-qmueewfo][data-glyph=pending]{--glyph:url(/icons/cursor-pending.svg)}.cursor[data-astro-cid-qmueewfo]{transition:color var(--d-hover) var(--ease-hover)}.cursor[data-astro-cid-qmueewfo]>span[data-astro-cid-qmueewfo]{transition-property:width,height,scale,opacity,background-color,border-color;transition-duration:var(--d-enter);transition-timing-function:var(--ease-enter)}@media (hover:none),(pointer:coarse){.cursor[data-astro-cid-qmueewfo]{display:none}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){html[data-cursor-ready] body,html[data-cursor-ready] a,html[data-cursor-ready] button{cursor:none!important}}@media (prefers-reduced-motion:reduce){.cursor[data-astro-cid-qmueewfo]{display:none}body,a,button{cursor:auto}}main[data-astro-cid-hkbrpulz]{overflow-x:clip}.toast[data-astro-cid-hkbrpulz]{left:50%;bottom:max(var(--dock-offset), env(safe-area-inset-bottom));z-index:20;padding:6px var(--s-2);color:var(--ink);background:var(--bg);border:1px solid var(--rule-soft);white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;border-radius:8px;margin:0;font-size:12px;font-weight:500;position:fixed;translate:-50%}.toast[data-astro-cid-hkbrpulz][data-shown]{opacity:1;visibility:visible}@media (prefers-reduced-motion:no-preference){.toast[data-astro-cid-hkbrpulz]{transition:opacity var(--d-enter) var(--ease-enter), visibility var(--d-enter)}}
