@font-face{font-family:"Resolve Portfolio";src:local("Resolve-ExtraboldWd"),local("Resolve Sans ExtraboldWd"),local("Resolve Extrabold Wd");font-weight:900;font-style:normal;font-display:swap}
*{box-sizing:border-box}:root{color-scheme:dark;--pink:#f586ff}html{background:#000}body{margin:0;background:#000;color:#fff;font-family:"Resolve Portfolio","Arial Black",Arial,Helvetica,sans-serif;font-weight:900;position:relative;overflow-x:clip}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--pink);outline-offset:5px}header{height:48px;padding:12px 1.7%;display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:4}h1,.identity{font-size:clamp(11px,1.5vw,19px);line-height:1;margin:0;letter-spacing:-.3px}a:hover{color:var(--pink)}.experience{--scene-height:calc(100svh - 108px);height:var(--scene-height);min-height:560px;position:relative;isolation:isolate;touch-action:pan-x;overflow:hidden;user-select:none}.orbit-art{position:absolute;inset:0;pointer-events:none;overflow:hidden}.orbit-art img{position:absolute;left:0;top:47%;max-width:none;transform-origin:50% 50%;will-change:transform}.orbit-labels{position:absolute;inset:0;pointer-events:none}.orbit-label{position:absolute;left:0;top:0;max-width:26%;padding:7px 3px;border:0;background:none;text-align:center;font-size:clamp(12px,1.85vw,25px);line-height:1.08;letter-spacing:-.5px;transform:translate(-50%,-100%);pointer-events:auto;will-change:transform,opacity;overflow-wrap:anywhere}.orbit-label:hover,.orbit-label:focus-visible{color:var(--pink)}.orbit-label[aria-current=true]{pointer-events:none}.selected-project{position:absolute;left:52.5%;width:45.5%;top:36%;z-index:3;user-select:text}.video-frame{position:relative;aspect-ratio:3811/2084;border:clamp(2px,.39vw,5px) solid var(--pink);background:#111;overflow:hidden;transform-origin:50% 50%}.video-host,.video-host img,.video-host video,.video-host iframe{display:block;width:100%;height:100%;position:absolute;inset:0;border:0}.video-host img{object-fit:cover}.video-host video{object-fit:contain;background:#000}.play-selected{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:52px;height:52px;padding:14px;border:1px solid #ffffff60;border-radius:50%;background:#0007;backdrop-filter:blur(6px);color:#fff}.play-selected:hover{background:var(--pink);color:#000}.play-selected[hidden],.stop-video[hidden]{display:none}.project-caption{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:7px}h2{font-size:clamp(13px,1.8vw,26px);line-height:1.1;margin:0;letter-spacing:-.5px;overflow-wrap:anywhere;max-width:88%}.stop-video{flex-shrink:0;font-size:11px;padding:0;border:0;background:none;color:var(--pink)}.project-navigation{display:flex;align-items:center;gap:14px;margin-top:18px;font-size:10px;color:#aaa;letter-spacing:.5px}.project-navigation button{border:0;background:none;color:var(--pink);font:inherit;font-size:18px;padding:3px 6px}.project-navigation button:hover{color:#fff}.orbit-help{position:absolute;left:18%;bottom:14px;font-size:10px;font-weight:400;letter-spacing:.6px;color:#999;pointer-events:none}.orbit-help>span:first-child{margin-left:10px;color:var(--pink)}.touch-help{display:none}.title-morph{position:fixed;z-index:20;margin:0;color:#fff;font:inherit;font-weight:900;line-height:1.08;pointer-events:none;transform-origin:0 0;overflow-wrap:anywhere}.corner-art{position:absolute;right:0;bottom:0;width:22vw;height:25vw;max-height:360px;overflow:hidden;pointer-events:none;z-index:0}.corner-art img{position:absolute;max-width:none;transform-origin:0 0}footer{height:60px;position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;width:58%;margin:0 auto;font-size:clamp(11px,1.1vw,16px)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(min-width:1700px){body{max-width:1700px;margin:auto}}
@media(max-aspect-ratio:4/5){.experience{--scene-height:125vw;height:var(--scene-height);min-height:560px}.selected-project{top:36%;left:52.5%;width:45.5%}.orbit-label{font-size:clamp(12px,2.4vw,23px)}h2{font-size:clamp(13px,2.5vw,25px)}.orbit-help{bottom:4%;left:16%}.corner-art{width:25vw;height:28vw}}
@media(max-width:600px){header{height:38px;padding:11px 2%}h1,.identity{font-size:10px}.experience{min-height:560px;--scene-height:calc(100svh - 94px)}.selected-project{left:49%;width:49%;top:38%}.orbit-label{max-width:29%;font-size:12px;letter-spacing:-.3px}.project-caption{margin-top:6px;gap:5px;flex-wrap:wrap}h2{font-size:13px;max-width:100%;letter-spacing:-.3px}.stop-video{font-size:10px}.project-navigation{gap:8px;margin-top:10px}.project-navigation button{font-size:16px}.play-selected{width:36px;height:36px;padding:8px}.play-selected svg{width:18px;height:18px}.orbit-help{left:10%;bottom:5%;font-size:9px}.touch-help{display:inline}footer{width:66%;height:56px;font-size:10px}.corner-art{width:27vw;height:30vw}}
@media(prefers-reduced-motion:reduce){.orbit-art img,.orbit-label{will-change:auto}}
.experience{mask-image:url('assets/orbit-mask.svg');mask-size:100% 100%;mask-repeat:no-repeat;mask-mode:alpha}

/* Preserve the complete 8547 × 11560 Figma composition. Wheel scrolling is native. */
html{overflow-y:auto}
body{width:100%;max-width:none;aspect-ratio:8547/11560;min-height:0;margin:0}
header{position:absolute;inset:0 0 auto;height:auto;padding:0;z-index:5}
header h1{position:absolute;left:1.474%;top:calc(100vw * 72 / 8547);font-size:1.498vw}
.identity{position:absolute;right:1.38%;top:calc(100vw * 102 / 8547);font-size:1.498vw}
.experience{position:absolute;inset:0;width:100%;height:100%;min-height:0;touch-action:auto;user-select:auto;--scene-height:auto}
.orbit-art img{top:0;left:0}
.orbit-label{max-width:none;width:23%;font-size:clamp(10px,1.8vw,28px);line-height:1.1;padding:0 3px;letter-spacing:-.3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.selected-project{left:52.556%;width:44.589%;top:36.419%;will-change:transform,opacity}
.video-frame{border-width:clamp(1px,.39053vw,6px)}
.project-caption{margin-top:.6vw}
h2{font-size:clamp(11px,1.8vw,28px);line-height:1.1;max-width:87%}
.project-navigation{margin-top:1vw;font-size:clamp(8px,.85vw,13px)}
.star-control{position:absolute;left:61.7655%;width:28.77%;aspect-ratio:1;border:0;padding:0;background:none;z-index:4;transform-origin:50% 50%}
.star-up{top:11.635%}.star-down{top:58.832%}
.star-control img{position:absolute;left:0;top:0;max-width:none;transform:scale(var(--navigation-scale,.1));transform-origin:0 0;pointer-events:none}
.star-control span{position:absolute;left:59%;top:37.4%;font-size:clamp(9px,1.487vw,22px);line-height:1;color:var(--pink);pointer-events:none}
.star-control:hover{filter:brightness(1.15)}
.star-control:focus-visible{outline:2px solid #fff;outline-offset:-14px}
.star-control:active{transform:scale(.96)}
footer{position:absolute;left:21.91%;bottom:1.65%;width:56.2%;height:auto;margin:0;font-size:clamp(9px,1.498vw,21px)}
@media(max-width:600px){header h1,.identity{font-size:clamp(8px,1.498vw,12px)}.orbit-label{width:25%;font-size:clamp(9px,1.8vw,12px)}h2{font-size:clamp(10px,1.8vw,13px)}.project-caption{gap:3px}.stop-video{font-size:8px}.star-control span{font-size:9px}footer{font-size:9px}.project-navigation{margin-top:5px;font-size:8px}}
