:root{--bg: #021d2c;--yang: #f2efe9;--yin: #0a0a0d;--rim: #4fa3c7;--font-mono: ui-monospace, "SFMono-Regular", "JetBrains Mono", Menlo, Consolas, monospace;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;height:100%;background:var(--bg);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}.landing{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;--gap: clamp(1rem, 4vmin, 2.5rem)}.landing[data-hover]{cursor:pointer}.landing[data-busy]{cursor:default}.landing__labels{transition:opacity .5s ease}.landing[data-busy] .landing__labels{opacity:0;transition-duration:.3s}.landing__canvas{position:absolute!important;top:0;right:0;bottom:0;left:0;touch-action:manipulation}.landing__labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.landing__label{position:absolute;top:50%;pointer-events:auto;padding:.5em .75em;font-size:clamp(.9rem,2.4vmin,1.25rem);letter-spacing:.35em;text-transform:lowercase;text-decoration:none;opacity:.5;transition:opacity .25s ease,letter-spacing .4s ease,text-shadow .25s ease}.landing__label:focus-visible{outline:1px solid currentColor;outline-offset:4px}.landing__label[data-active=true]{opacity:1;letter-spacing:.5em}.landing__label--yang{color:var(--yang);left:calc(50% - var(--radius) - var(--gap));transform:translate(-100%,-50%)}.landing__label--yang[data-active=true]{text-shadow:0 0 18px rgb(242 239 233 / .6)}.landing__label--yin{color:var(--rim);left:calc(50% + var(--radius) + var(--gap));transform:translateY(-50%)}.landing__label--yin[data-active=true]{text-shadow:0 0 18px rgb(79 163 199 / .7)}@media (orientation: portrait){.landing__label--yang,.landing__label--yin{left:50%}.landing__label--yang{top:calc(50% - var(--radius) - var(--gap));transform:translate(-50%,-100%)}.landing__label--yin{top:calc(50% + var(--radius) + var(--gap));transform:translate(-50%)}}@media (hover: none){.landing__label{opacity:.85}}.section{position:relative;isolation:isolate;min-height:100%;display:grid;place-content:center;justify-items:center;gap:1rem;padding:2rem;letter-spacing:.3em}.section__bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1}.section>:not(.section__bg,.work__bg){animation:section-enter .7s .12s ease-out both}@keyframes section-enter{0%{opacity:0;transform:translateY(.5rem)}}.section[data-exiting]>:not(.section__bg,.work__bg){animation:section-exit .32s ease-in forwards}@keyframes section-exit{to{opacity:0;transform:translateY(-.5rem)}}@media (prefers-reduced-motion: reduce){.section>:not(.section__bg,.work__bg),.section[data-exiting]>:not(.section__bg,.work__bg){animation-duration:1ms}}.section h1{margin:0;font-weight:400;font-size:clamp(2rem,8vmin,4rem)}.section p{margin:0;opacity:.6}.section--yang{color:var(--yin)}.section--yin{color:var(--yang)}.section__back{margin-top:2rem;color:inherit;opacity:.7;text-decoration:none}.section__back:hover{opacity:1}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.work__bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1}.work__cards{display:grid;gap:clamp(.75rem,2.5vh,1.25rem);width:min(88vw,440px)}.work__links{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.75rem,2.5vh,1.25rem)}.card-stage{perspective:900px}.card{position:relative;display:block;width:100%;aspect-ratio:1.6;border-radius:18px;overflow:hidden;background:var(--yin);color:var(--yang);text-decoration:none;letter-spacing:normal;will-change:transform;box-shadow:0 40px 70px -30px #0a0a0d80,0 12px 24px -12px #0a0a0d59}.card--tile{aspect-ratio:1.3}.card__content--tile{justify-content:center;padding:clamp(.75rem,3vw,1.5rem)}.card--tile .card__cta{margin:0;font-size:clamp(.8rem,3.2vw,.95rem);letter-spacing:.25em;white-space:nowrap;opacity:.85}.card--tile:hover .card__cta,.card--tile:focus-visible .card__cta{letter-spacing:.32em}.card:focus-visible{outline:2px solid var(--yin);outline-offset:6px}.card__surface{position:absolute!important;top:0;right:0;bottom:0;left:0;pointer-events:none}.card__content{position:relative;height:100%;display:flex;align-items:center;gap:clamp(1rem,4vw,1.5rem);padding:clamp(1.25rem,5vw,2rem)}.card__photo{flex:none;width:clamp(64px,18vw,96px);aspect-ratio:1;border-radius:50%;overflow:hidden;display:grid;place-items:center;border:1px solid rgb(242 239 233 / .25);font-size:clamp(1.1rem,4vw,1.5rem);letter-spacing:.12em}.card__photo img{width:100%;height:100%;object-fit:cover}.card__text{display:flex;flex-direction:column;gap:.4rem;min-width:0}.card__name{font-size:clamp(1.05rem,4.5vw,1.45rem);letter-spacing:.06em}.card__headline{font-size:.85rem;opacity:.7}.card__cta{margin-top:.6rem;font-size:.8rem;letter-spacing:.3em;opacity:.7;transition:opacity .25s ease,letter-spacing .4s ease}.card:hover .card__cta,.card:focus-visible .card__cta{opacity:1;letter-spacing:.4em}.life{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;isolation:isolate;color:var(--yang)}.life[data-hover]{cursor:pointer}.life__canvas{position:absolute!important;top:0;right:0;bottom:0;left:0;touch-action:manipulation}.life__back{position:absolute;z-index:3;left:clamp(1rem,4vw,2rem);top:clamp(1rem,4vw,2rem);color:inherit;opacity:.7;letter-spacing:.3em;text-decoration:none;animation:life-chrome-in .8s 1.6s ease-out both}.life__back:hover{opacity:1}@keyframes life-chrome-in{0%{opacity:0}}.life[data-exiting] .life__back{animation:none;opacity:0;transition:opacity .3s ease}@media (prefers-reduced-motion: reduce){.life__back{animation-delay:.4s}}.life-label{display:block;color:var(--yang);font-size:clamp(.75rem,2vmin,1rem);letter-spacing:.35em;text-transform:lowercase;white-space:nowrap;pointer-events:none;opacity:.5;transition:opacity .25s ease,letter-spacing .4s ease,text-shadow .25s ease;animation:life-chrome-in .8s 1.8s ease-out both}.life-label[data-active=true]{opacity:1;letter-spacing:.5em;text-shadow:0 0 18px rgb(127 214 245 / .7)}@media (hover: none){.life-label{opacity:.85}}.life[data-exiting] .life-label{animation:none;opacity:0;transition:opacity .3s ease}.life-panel{position:absolute;z-index:2;top:0;right:0;bottom:0;width:min(40vw,480px);padding:clamp(1.5rem,4vw,3rem);padding-top:4rem;overflow-y:auto;background:#040a0e8c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-left:1px solid rgb(127 214 245 / .15);color:var(--yang);letter-spacing:.04em;line-height:1.6;transform:translate(100%);opacity:0;transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .4s ease}.life-panel[data-open=true]{transform:none;opacity:1;transition-delay:.35s}@media (orientation: portrait){.life-panel{top:auto;left:0;width:auto;height:60vh;border-left:0;border-top:1px solid rgb(127 214 245 / .15);border-radius:18px 18px 0 0;transform:translateY(100%)}}.life-panel__close{position:absolute;top:1rem;right:1rem;padding:.25rem .6rem;border:0;background:none;color:inherit;font:inherit;font-size:1.5rem;line-height:1;opacity:.7;cursor:pointer}.life-panel__close:hover,.life-panel__close:focus-visible{opacity:1}.life-panel h2{margin:0 0 1.5rem;font-weight:400;letter-spacing:.35em;text-transform:lowercase}.life-socials{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.life-socials a,.life-socials__soon{display:flex;justify-content:space-between;padding:.9rem 1rem;border:1px solid rgb(242 239 233 / .15);border-radius:10px;color:inherit;text-decoration:none;letter-spacing:.2em}.life-socials a:hover,.life-socials a:focus-visible{border-color:#7fd6f599}.life-socials__soon{opacity:.45}.life-badge{display:inline-block;margin:0 0 1rem;padding:.25rem .7rem;border:1px dashed rgb(127 214 245 / .5);border-radius:999px;color:#7fd6f5;font-size:.75rem;letter-spacing:.2em}.life-links{position:absolute;z-index:3;bottom:clamp(1rem,4vw,2rem);left:50%;display:flex;gap:2rem;transform:translate(-50%);letter-spacing:.3em;clip-path:inset(50%)}.life-links:focus-within,.life-links--visible{clip-path:none}.life-links a{color:inherit;text-decoration:none;opacity:.8}.life[data-exiting] .life-panel{opacity:0;transition:opacity .3s ease}.life-flood{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;pointer-events:none;--x: 50%;--y: 50%;--r: 0px;--f: 140px;-webkit-mask-image:radial-gradient(circle at var(--x) var(--y),#000 max(0px,calc(var(--r) - var(--f))),transparent var(--r));mask-image:radial-gradient(circle at var(--x) var(--y),#000 max(0px,calc(var(--r) - var(--f))),transparent var(--r))}.lab{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;isolation:isolate;color:var(--yang);touch-action:none;user-select:none;-webkit-user-select:none}.lab__canvas{position:absolute!important;top:0;right:0;bottom:0;left:0}.lab__veil{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;transition:opacity .4s ease}.lab__veil[data-visible=true]{opacity:1}.lab__arrow,.lab__settings,.lab__back,.lab__caption{transition:opacity .5s ease}.lab[data-chrome=off] .lab__arrow,.lab[data-chrome=off] .lab__settings,.lab[data-chrome=off] .lab__back,.lab[data-chrome=off] .lab__caption,.lab[data-chrome=off] .lab__scrim{opacity:0;pointer-events:none}.lab__scrim{position:absolute;z-index:1;left:0;right:0;bottom:0;height:38%;pointer-events:none;background:linear-gradient(to top,rgb(2 8 12 / .72),rgb(2 8 12 / .35) 45%,transparent);transition:opacity .5s ease}.lab__corner{position:absolute;z-index:2;top:clamp(.75rem,3vw,1.5rem);right:clamp(.75rem,3vw,1.5rem);display:flex;gap:.6rem}.lab__reveal{display:grid;place-items:center;width:2.4rem;height:2.4rem;padding:0;border:1px solid rgb(242 239 233 / .25);border-radius:50%;background:#040a0e40;color:var(--yang);opacity:.3;cursor:pointer;transition:opacity .25s ease}.lab__reveal{font-size:1.15rem;line-height:1}.lab__reveal:hover,.lab__reveal:focus-visible,.lab__reveal[aria-expanded=true]{opacity:1}.lab__arrow{position:absolute;z-index:2;top:50%;padding:1rem;border:0;background:none;color:inherit;font:inherit;font-size:clamp(2rem,5vmin,3rem);line-height:1;opacity:.6;transform:translateY(-50%);cursor:pointer}.lab__arrow:hover,.lab__arrow:focus-visible{opacity:1}.lab__arrow--prev{left:clamp(.25rem,2vw,1.5rem)}.lab__arrow--next{right:clamp(.25rem,2vw,1.5rem)}@media (hover: none){.lab__arrow{padding:.6rem;font-size:2rem}}.lab__back{position:absolute;z-index:2;left:clamp(1rem,4vw,2rem);top:clamp(1rem,4vw,2rem);color:inherit;opacity:.7;letter-spacing:.3em;text-decoration:none}.lab__back:hover{opacity:1}.lab__settings{display:grid;place-items:center;width:2.4rem;height:2.4rem;padding:0;border:1px solid rgb(127 214 245 / .45);border-radius:50%;background:#040a0e73;color:#7fd6f5;font-size:1.25rem;line-height:1;pointer-events:auto;cursor:pointer;box-shadow:0 0 14px #7fd6f540;transition:opacity .5s ease,border-color .2s ease,box-shadow .2s ease,transform .3s ease}.lab__settings:hover,.lab__settings:focus-visible,.lab__settings[aria-expanded=true]{border-color:#7fd6f5;box-shadow:0 0 22px #7fd6f58c}.lab__settings[aria-expanded=true]{transform:rotate(60deg)}.lab__caption{position:absolute;z-index:2;left:clamp(1rem,4vw,2rem);right:clamp(1rem,4vw,2rem);bottom:clamp(1rem,4vw,2rem);display:grid;grid-template-columns:1fr auto;column-gap:1rem;align-items:end;text-shadow:0 1px 12px rgb(0 0 0 / .6);pointer-events:none}.lab__title{grid-column:1;display:flex;align-items:center;gap:.9rem}.lab__caption h1{margin:0;font-weight:400;font-size:clamp(1.1rem,3vmin,1.6rem);letter-spacing:.35em;text-transform:lowercase}.lab__caption p{grid-column:1;max-width:46ch;margin:.35rem 0 0;font-size:.85rem;letter-spacing:.04em;opacity:.75}.lab__caption .lab__credit{font-size:.75rem;opacity:.5}.lab__counter{grid-column:2;grid-row:1 / span 3;align-self:end;font-size:.85rem;letter-spacing:.2em;opacity:.7}.lab-panel{position:absolute;z-index:3;top:0;right:0;bottom:0;width:min(34vw,360px);padding:1.5rem;overflow-y:auto;touch-action:pan-y;background:#040a0e4d;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-left:1px solid rgb(127 214 245 / .15);text-shadow:0 1px 6px rgb(0 0 0 / .6);transform:translate(100%);opacity:0;transition:transform .4s cubic-bezier(.2,.8,.2,1),opacity .3s ease}.lab-panel[data-open=true]{transform:none;opacity:1}@media (orientation: portrait){.lab-panel{top:auto;left:0;width:auto;max-height:55vh;border-left:0;border-top:1px solid rgb(127 214 245 / .15);border-radius:18px 18px 0 0;transform:translateY(100%)}}.lab-panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.lab-panel h2{margin:0;font-weight:400;font-size:.9rem;letter-spacing:.35em}.lab-panel__close,.lab-panel__reset{border:0;background:none;color:inherit;font:inherit;opacity:.7;cursor:pointer}.lab-panel__close{padding:.2rem .5rem;font-size:1.4rem;line-height:1}.lab-panel__reset{margin-top:1.25rem;padding:.5rem .9rem;border:1px solid rgb(242 239 233 / .2);border-radius:8px;letter-spacing:.25em}.lab-panel__close:hover,.lab-panel__reset:hover,.lab-panel__close:focus-visible,.lab-panel__reset:focus-visible{opacity:1}.lab-panel__list{display:grid;gap:1rem}.lab-control{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.4rem .75rem;font-size:.8rem;letter-spacing:.15em}.lab-control__value{opacity:.7;font-variant-numeric:tabular-nums}.lab-control input[type=range]{grid-column:1 / -1;width:100%;accent-color:#7fd6f5}.lab-control--inline input{justify-self:end}.lab-control input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:#7fd6f5}.lab-control input[type=color]{width:2.4rem;height:1.6rem;padding:0;border:1px solid rgb(242 239 233 / .25);border-radius:6px;background:none}
