.home-page{background:linear-gradient(#26163d03 1px, transparent 1px), linear-gradient(90deg, #26163d03 1px, transparent 1px), var(--color-paper);background-size:5rem 5rem;min-height:100svh}.home-page .site-main{min-height:calc(100svh - var(--header-h))}.interface-stage{min-height:calc(100svh - var(--header-h));isolation:isolate;position:relative;overflow:hidden}.interface-stage:before{z-index:0;clip-path:polygon(2.4rem 0,100% 0,100% calc(100% - 2.4rem),calc(100% - 2.4rem) 100%,0 100%,0 2.4rem);content:"";pointer-events:none;border:1px solid #26163d0f;transition:opacity .26s;position:absolute;inset:clamp(1rem,2vw,2rem) clamp(1rem,2.5vw,2.5rem)}.interface-stage:after{z-index:30;content:"";opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000,#df0068e6,#0000);width:48vw;height:2px;position:absolute;top:51%;left:-32vw;transform:skew(-18deg)translate(0);box-shadow:0 0 1rem #df006847}.interface-stage[data-ui-state=open]:after{animation:project-launch-trail .36s var(--ease-engineered) 1}@keyframes project-launch-trail{0%{opacity:0;transform:skew(-18deg)translate(0)}18%{opacity:1}to{opacity:0;transform:skew(-18deg)translate(185vw)}}.interface-stage__watermark{z-index:1;pointer-events:none;opacity:.035;width:clamp(10rem,17vw,17rem);transition:opacity .32s;position:absolute;bottom:clamp(2.5rem,7vh,5.5rem);left:clamp(-2.5rem,1vw,1rem);transform:rotate(-4deg)}.interface-stage__watermark img{filter:grayscale()contrast(.78);mix-blend-mode:multiply;width:100%;height:auto}.interface-stage[data-mode=contact] .interface-stage__watermark{opacity:0}.interface-stage__field{z-index:4;position:absolute;inset:clamp(1.6rem,3.5vh,3rem) clamp(2rem,5vw,6rem) clamp(2.2rem,5vh,4rem)}.mode-panel{visibility:hidden;pointer-events:none;opacity:0;transition:visibility 0s linear .44s, opacity .3s ease, transform .44s var(--ease-engineered);position:absolute;inset:0;transform:translateY(.8rem)}.interface-stage[data-mode=projects] .project-panel,.interface-stage[data-mode=contact] .contact-panel{visibility:visible;pointer-events:auto;opacity:1;transition-delay:0s;transform:none}.connection-layer{z-index:1;pointer-events:none;transition:opacity .24s ease, transform .36s var(--ease-engineered);position:absolute;inset:0;overflow:hidden}.connection-layer svg{width:100%;height:100%}.connection-layer__quiet,.connection-layer__project,.connection-layer__contact,.connection-layer__marks{fill:none;vector-effect:non-scaling-stroke}.connection-layer__quiet{stroke:var(--color-line);stroke-width:1px;opacity:.38}.connection-layer__marks{fill:var(--color-structure);stroke:var(--color-structure);stroke-width:1px;opacity:.16}.connection-layer__project,.connection-layer__contact{stroke:var(--color-structure);stroke-width:1.2px}.connection-layer__project path,.connection-layer__contact path{stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .52s var(--ease-engineered)}.connection-layer__project circle,.connection-layer__contact circle{fill:var(--color-paper);opacity:0;transform-box:fill-box;transform-origin:50%;transition:opacity .14s ease, transform .24s var(--ease-engineered);transform:scale(0)}.interface-stage[data-mode=projects][data-ui-state=approach] .connection-layer__project path,.interface-stage[data-mode=projects]:is([data-ui-state=hover],[data-ui-state=connected]) .connection-layer__project path,.interface-stage[data-mode=projects][data-ui-state=open] .connection-layer__project path,.interface-stage[data-mode=contact] .connection-layer__contact path{stroke-dashoffset:0}.interface-stage[data-mode=projects][data-ui-state=approach] .connection-layer__project circle,.interface-stage[data-mode=projects]:is([data-ui-state=hover],[data-ui-state=connected]) .connection-layer__project circle,.interface-stage[data-mode=projects][data-ui-state=open] .connection-layer__project circle,.interface-stage[data-mode=contact] .connection-layer__contact circle{opacity:1;transform:scale(1)}.connection-layer__project circle:nth-of-type(2),.connection-layer__contact circle:nth-of-type(2){transition-delay:60ms}.connection-layer__project circle:nth-of-type(3),.connection-layer__contact circle:nth-of-type(3){transition-delay:.12s}.connection-layer__project circle:nth-of-type(n+4),.connection-layer__contact circle:nth-of-type(n+4){transition-delay:.18s}.interface-stage[data-mode=projects]:is([data-ui-state=hover],[data-ui-state=connected]) .connection-layer__project circle:last-child,.interface-stage[data-mode=projects][data-ui-state=open] .connection-layer__project circle:last-child,.interface-stage[data-mode=contact] .connection-layer__contact circle:last-child{fill:var(--color-active);stroke:var(--color-active)}.interface-stage:is([data-link-focus=discord],[data-link-focus=x]) .connection-layer__contact circle:last-child{transform:scale(1.35)}.project-panel{place-items:center;display:grid}.project-panel__target{place-items:center;width:100%;height:100%;min-height:0;display:grid;position:relative}@media (width>=861px){.project-panel__target{padding-top:clamp(3.5rem,6vw,5rem)}}.project-panel__stage{position:relative}.project-panel__link{color:inherit;text-decoration:none;display:block}.project-panel__frame{isolation:isolate;width:min(67vw,68rem);height:min(60vh,40rem);min-height:27rem;transition:filter .26s ease, transform .52s var(--ease-engineered);view-transition-name:zero-g-project-frame;position:relative;transform:translateZ(0)}.project-frame-svg{z-index:6;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.project-frame-svg__quiet,.project-frame-svg__active{fill:none;vector-effect:non-scaling-stroke}.project-frame-svg__quiet{stroke:var(--color-line);stroke-width:1px;opacity:.55;transition:opacity .22s,stroke .22s}.project-frame-svg__active{stroke:var(--color-structure);stroke-width:1.35px}.project-frame-svg__active path{stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .46s var(--ease-engineered)}.project-frame-svg__nodes{fill:var(--color-paper);stroke:var(--color-structure);stroke-width:1.8px}.project-frame-svg__nodes circle{opacity:0;transform-box:fill-box;transform-origin:50%;transition:opacity .14s ease, transform .24s var(--ease-engineered);transform:scale(0)}.interface-stage[data-ui-state=approach] .project-frame-svg__quiet,.interface-stage:is([data-ui-state=hover],[data-ui-state=connected]) .project-frame-svg__quiet,.interface-stage[data-ui-state=open] .project-frame-svg__quiet{stroke:#cac6ce;opacity:1}.interface-stage[data-ui-state=approach] .project-frame-svg__active path{stroke-dashoffset:.42px}.interface-stage:is([data-ui-state=hover],[data-ui-state=connected]) .project-frame-svg__active path,.interface-stage[data-ui-state=open] .project-frame-svg__active path{stroke-dashoffset:0}.interface-stage[data-ui-state=approach] .project-frame-svg__nodes circle,.interface-stage:is([data-ui-state=hover],[data-ui-state=connected]) .project-frame-svg__nodes circle,.interface-stage[data-ui-state=open] .project-frame-svg__nodes circle{opacity:1;transform:scale(1)}.project-frame-svg__nodes circle:nth-child(2){transition-delay:60ms}.project-frame-svg__nodes circle:nth-child(3),.project-frame-svg__nodes circle:nth-child(4){transition-delay:.12s}.project-frame-svg__nodes circle:nth-child(n+5){transition-delay:.18s}.interface-stage:is([data-ui-state=hover],[data-ui-state=connected]) .project-frame-svg__nodes circle:nth-child(4),.interface-stage[data-ui-state=open] .project-frame-svg__nodes circle:nth-child(4){fill:var(--color-active);stroke:var(--color-active)}.project-panel__media{z-index:1;visibility:visible;clip-path:polygon(6% 0,100% 0,100% 88%,88% 100%,0 100%,0 7%);opacity:1;view-transition-name:zero-g-project-visual;background:#08060a;position:absolute;inset:6.2% 5.8%;overflow:hidden}.layered-project-media{isolation:isolate;background:#08060a;position:absolute;inset:0;overflow:hidden}.layered-project-media__image{z-index:1;object-fit:contain;object-position:center center;filter:saturate(.94)contrast(1.045);opacity:1;width:100%;height:100%;position:absolute;inset:0}.interface-stage[data-ui-state=approach] .project-panel__media{visibility:visible;opacity:1}.project-panel__copy{z-index:7;color:var(--color-structure);pointer-events:none;position:absolute;inset:0}.project-panel__title{grid-template-columns:auto auto;align-items:end;gap:clamp(.8rem,1.8vw,1.8rem);padding-left:1rem;display:grid;position:absolute;top:-4.6rem;left:9%}.project-panel__title:before,.project-panel__title:after{content:"";pointer-events:none;position:absolute}.project-panel__title:before{background:linear-gradient(90deg, var(--color-active), var(--color-line) 58%, transparent);width:min(31rem,36vw);height:1px;bottom:-.65rem;left:0}.project-panel__title:after{border:1px solid var(--color-active);background:var(--color-paper);border-radius:50%;width:.44rem;height:.44rem;bottom:-.86rem;left:-.18rem}.project-panel__eyebrow{color:var(--color-active);font-family:var(--font-mono);letter-spacing:.18em;white-space:nowrap;margin:0 0 .45rem;font-size:.48rem}.project-panel__copy h1{color:var(--color-structure);letter-spacing:-.06em;view-transition-name:zero-g-project-title;white-space:nowrap;margin:0;font-size:clamp(2.8rem,4.6vw,5rem);font-weight:680;line-height:.8}.project-panel__copy h1 span{color:var(--color-structure-soft);font-family:var(--font-mono);letter-spacing:.22em;vertical-align:.7em;margin-right:.8em;font-size:.22em;font-weight:560;display:inline-block}.project-panel__copy h1 b{font-weight:inherit}.project-panel__summary{border-top:1px solid var(--color-line);width:7.6rem;padding-top:1rem;position:absolute;top:27%;right:-8.7rem}.project-panel__summary:before,.project-panel__summary:after{content:"";pointer-events:none;position:absolute;top:-.24rem}.project-panel__summary:before{border:1px solid var(--color-active);background:var(--color-paper);border-radius:50%;width:.46rem;height:.46rem;left:-.22rem}.project-panel__summary:after{background:linear-gradient(90deg, transparent, var(--color-line));width:2.5rem;height:1px;margin-top:.22rem;right:100%}.project-panel__summary>span{color:var(--color-active);font-family:var(--font-mono);letter-spacing:.16em;font-size:.43rem}#project-panel-summary{color:var(--color-structure-soft);font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;margin:.7rem 0 0;font-size:.5rem;line-height:1.85}.project-panel__link:focus-visible{outline-color:var(--color-structure);outline-offset:.8rem}.project-panel__hint{z-index:8;color:var(--color-muted);font-family:var(--font-mono);letter-spacing:.13em;align-items:center;gap:.8rem;font-size:.43rem;display:flex;position:absolute;bottom:2%;right:7%}.project-panel__hint>span{background:linear-gradient(90deg, var(--color-line), var(--color-active));width:2.5rem;height:1px}.project-panel__hint p{margin:0}.project-panel__hint-touch{display:none}.project-panel__play{z-index:2;color:#fff;background:var(--color-active);clip-path:polygon(.8rem 0,100% 0,100% calc(100% - .8rem),calc(100% - .8rem) 100%,0 100%,0 .8rem);font-family:var(--font-mono);letter-spacing:.09em;transition:filter .18s ease, transform .22s var(--ease-engineered), opacity .2s ease;align-items:center;gap:.9rem;margin-top:1.6rem;padding:.95rem 1.7rem;font-size:.78rem;font-weight:650;text-decoration:none;display:inline-flex;position:relative}.project-panel__play span:last-child{transition:transform .2s var(--ease-engineered);font-size:1rem}@media (hover:hover) and (pointer:fine){.project-panel__play{opacity:0;pointer-events:none;transform:translateY(.6rem)}.interface-stage:is([data-ui-state=hover],[data-ui-state=connected]) .project-panel__play,.interface-stage[data-ui-state=open] .project-panel__play{opacity:1;pointer-events:auto;transform:none}}.project-panel__play:hover,.project-panel__play:focus-visible{filter:brightness(.92);transform:translateY(-2px)}.project-panel__play:hover span:last-child,.project-panel__play:focus-visible span:last-child{transform:translate(.2rem)}.interface-stage[data-ui-state=open] .project-panel__frame{transform:scale(1.085)}.interface-stage[data-ui-state=open] .project-panel__media{clip-path:polygon(3% 0,100% 0,100% 93%,93% 100%,0 100%,0 4%)}.interface-stage[data-ui-state=open] .project-frame-svg__active{stroke:var(--color-active)}.interface-stage[data-transition-phase=departure]:before,.interface-stage[data-transition-phase=departure] .connection-layer,.interface-stage[data-transition-phase=departure] .interface-stage__watermark,.interface-stage[data-transition-phase=departure] .interface-stage__registry{opacity:0}.interface-stage[data-transition-phase=departure] .connection-layer{transform:scale(1.015)}.interface-stage[data-transition-phase=departure] .project-panel__eyebrow,.interface-stage[data-transition-phase=departure] .project-panel__summary{opacity:0;transition-delay:0s;transform:translateY(.45rem)}.interface-stage[data-transition-phase=departure] .project-panel__frame{filter:saturate(1.035)contrast(1.02);transform:scale(1.1)}.mode-panel__eyebrow{color:var(--color-structure-soft);font-family:var(--font-mono);letter-spacing:.17em;margin:0 0 1.5rem;font-size:.52rem}.contact-panel h2{color:var(--color-ink);letter-spacing:-.065em;margin:0;font-size:clamp(3.3rem,6.2vw,7rem);font-weight:590;line-height:.82}.contact-panel{grid-template-columns:minmax(27rem,1fr) minmax(19rem,.8fr);align-items:center;gap:clamp(3rem,8vw,9rem);padding:clamp(2rem,7vw,7rem);display:grid}.contact-panel__terminal{max-width:52rem}.contact-panel__terminal>p:not(.mode-panel__eyebrow){max-width:34rem;color:var(--color-muted);margin:clamp(1.6rem,4vh,2.8rem) 0 0;font-size:clamp(.8rem,1.1vw,.96rem);line-height:1.9}.contact-panel__links{margin-top:clamp(2rem,5vh,3.8rem)}.contact-panel__links a{min-height:5.4rem;color:var(--color-structure);border-top:1px solid var(--color-line);font-family:var(--font-mono);justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 0;font-size:clamp(.72rem,1vw,.9rem);text-decoration:none;display:flex}.contact-panel__links a:last-child{border-bottom:1px solid var(--color-line)}.contact-panel__links small{color:var(--color-muted);letter-spacing:.16em;margin-bottom:.45rem;font-size:.43rem;display:block}.contact-panel__links i{border:1px solid var(--color-structure);width:2.7rem;height:2.7rem;transition:color .18s ease, border-color .18s ease, background-color .18s ease, transform .26s var(--ease-engineered);border-radius:50%;flex:none;place-items:center;font-style:normal;display:grid}.contact-panel__links a:hover i,.contact-panel__links a:focus-visible i{color:#fff;border-color:var(--color-active);background:var(--color-active);transform:rotate(45deg)}.contact-panel__route{color:var(--color-structure-soft);align-self:end}.contact-panel__route svg{width:100%;height:auto;fill:var(--color-paper);stroke:currentColor;stroke-width:1px;overflow:visible}.contact-panel__route-active{fill:var(--color-active);stroke:var(--color-active)}.contact-panel__route span{font-family:var(--font-mono);letter-spacing:.13em;text-align:right;margin-top:.8rem;font-size:.44rem;display:block}.interface-stage__registry{z-index:3;top:clamp(7.2rem,10vh,8.5rem);right:var(--page-pad);color:#aaa7ae;font-family:var(--font-mono);letter-spacing:.13em;pointer-events:none;gap:1.5rem;font-size:.42rem;transition:opacity .2s;display:flex;position:absolute}.interface-stage__registry span:empty{display:none}@media (width<=1080px){.project-panel__frame{width:min(70vw,60rem)}.project-panel__copy h1{font-size:clamp(2.6rem,4.8vw,4.4rem)}.contact-panel{gap:3rem;padding-inline:2rem}}@media (width<=860px){.interface-stage{min-height:calc(100svh - var(--header-h))}.interface-stage:before{inset:.75rem}.interface-stage__watermark{opacity:.025;width:9rem;inset:2.5rem -2.5rem auto auto}.project-panel__target{padding-top:4.8rem}.interface-stage__field{inset:1.25rem 1rem 1.5rem}.project-panel__stage{width:min(100%,39rem)}.project-panel__link{width:100%}.project-panel__frame{aspect-ratio:1;width:100%;height:auto;min-height:0}.project-panel__media{inset:5.6%}.project-panel__copy{inset:0}.project-panel__copy h1{font-size:clamp(2.5rem,7vw,3.9rem)}.project-panel__eyebrow{margin-bottom:.4rem}#project-panel-summary{margin-top:.7rem}.project-panel__hint{bottom:0;right:5%}.contact-panel{grid-template-columns:1fr;align-content:center;gap:2.5rem;padding:2.2rem 1.2rem 1rem}.contact-panel h2{font-size:clamp(3rem,10vw,5rem)}.contact-panel__route{justify-self:end;width:min(65vw,25rem)}.interface-stage__registry{top:auto;bottom:1rem;right:1.25rem}.interface-stage__registry span:nth-child(n+2){display:none}}@media (width<=720px){.project-panel__title{grid-template-columns:1fr;gap:.25rem;padding-left:.7rem;top:-4.2rem;left:5%}.project-panel__title:before{width:min(18rem,64vw)}.project-panel__copy h1{font-size:clamp(2.1rem,8vw,3.2rem)}.project-panel__eyebrow{margin:0;font-size:.42rem}.project-panel__summary{width:42%;padding-top:.75rem;inset:auto auto -5.8rem 5%}.project-panel__summary:after{display:none}.project-panel__summary>span{font-size:.39rem}#project-panel-summary{font-size:.46rem;line-height:1.7}}@media (width<=520px){.interface-stage__field{inset:1rem .8rem 1.2rem}.project-panel__frame{aspect-ratio:1;width:100%}.project-panel__hint-pointer{display:none}.project-panel__hint-touch{display:inline}.project-panel__copy{inset:0}.project-panel__title{grid-template-columns:1fr;gap:.25rem;padding-left:.7rem;top:-4.15rem;left:5%}.project-panel__title:before{width:min(16rem,64vw)}.project-panel__copy h1{font-size:clamp(2rem,10.5vw,2.8rem)}.project-panel__eyebrow{margin:0;font-size:.4rem}.project-panel__summary{width:42%;padding-top:.75rem;inset:auto auto -5.8rem 5%}.project-panel__summary:after{display:none}.project-panel__summary>span{font-size:.38rem}#project-panel-summary{font-size:.44rem;line-height:1.7}.project-panel__hint{font-size:.39rem;right:6%}.project-panel__hint>span{width:1.75rem}.contact-panel{padding-inline:1.1rem}.contact-panel h2{font-size:clamp(2.75rem,13vw,4rem)}.contact-panel__terminal>p:not(.mode-panel__eyebrow){font-size:.74rem}.contact-panel__links{margin-top:1.8rem}.contact-panel__links a{min-height:4.6rem;font-size:.68rem}.contact-panel__route{width:min(72vw,20rem)}}@media (hover:none){.project-panel__hint{width:fit-content;margin:1rem auto 0;position:static}.project-panel__summary{display:none}}@media (prefers-reduced-motion:reduce){.project-panel__media{transition:visibility 0s linear 80ms,opacity 80ms,clip-path 80ms}.layered-project-media__image{filter:saturate(.94)contrast(1.045);opacity:1;transition:opacity 80ms,object-position 80ms;transform:scale(1.02)}}html:not(.js) .interface-stage[data-mode=projects] .project-panel__media,html:not(.js) .interface-stage[data-mode=projects] .project-panel__copy{visibility:visible;clip-path:polygon(6% 0,100% 0,100% 88%,88% 100%,0 100%,0 7%);opacity:1}html:not(.js) .project-panel__copy>*{opacity:1;transform:none}html:not(.js) .layered-project-media__image{clip-path:inset(0);filter:saturate(.94)contrast(1.045);opacity:1}
