:root{--paper:#fcfcfb;--ink:#111110;--ink-secondary:#8a8a82;--ink-tertiary:#93938b;--ink-quaternary:#9c9c94;--ink-hover:#555049;--rule:#e9e9e3;--underline:#c9c8be;--pad-x:88px;--shift-x:28px;--pad-y:clamp(28px, 4.5vh, 88px);--gap-block:34px;--lever-gap:16px;--art-ratio:1.33333;--bezel:clamp(8px, 1.2vh, 14px);--caption-h:30px;--reel-max-h:calc(100svh - 2 * var(--pad-y) - 2 * var(--bezel) - var(--caption-h) - 4px);--ease-lift:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html,body{background:var(--paper);margin:0}body{color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Geist,ui-sans-serif,system-ui,sans-serif;font-weight:400}a{color:var(--ink);text-decoration:none}a:hover{color:var(--ink-hover)}.page{min-height:100svh;padding:var(--pad-y) calc(var(--pad-x) - var(--shift-x)) var(--pad-y) calc(var(--pad-x) + var(--shift-x));justify-content:center;align-items:center;display:flex;overflow-x:clip}.layout{column-gap:var(--pad-x);grid-template-columns:440px minmax(0,1fr);align-items:center;width:100%;min-width:0;max-width:1500px;display:grid}.column-left{gap:var(--gap-block);flex-direction:column;align-self:center;min-width:0;display:flex}.identity{flex-direction:column;gap:3px;display:flex}.name{color:var(--ink);margin:0;font-size:15px;font-weight:400}.subtitle{color:var(--ink-tertiary);font-size:15px}.text{flex-direction:column;gap:14px;display:flex}.lead{letter-spacing:-.025em;color:var(--ink);margin:0;font-size:19px;line-height:1.55}.lead-link{color:var(--ink);box-shadow:0 2px 0 var(--underline);transition:box-shadow .16s,color .16s}.lead-link:hover{color:var(--ink);box-shadow:0 2px 0 var(--ink)}.secondary{color:var(--ink-secondary);margin:0;font-size:14px;line-height:1.8}.projects{flex-direction:column;display:flex}.project-row{border-bottom:1px solid var(--rule);color:var(--ink);grid-template-columns:1fr auto;align-items:baseline;gap:18px;padding:13px 0;transition:color .16s,border-color .16s;display:grid}.project-row:hover{color:var(--ink);border-bottom-color:var(--ink)}.project-name{font-size:15px}.project-desc{color:var(--ink-quaternary);text-align:right;font-size:13px}.socials{gap:20px;font-size:13px;display:flex}.socials a{color:var(--ink-quaternary);transition:color .16s}.socials a:hover{color:var(--ink)}.artwork{justify-content:flex-end;align-items:center;gap:var(--lever-gap);min-width:0;display:flex}.reel-col{flex-direction:column;flex:0 auto;gap:10px;min-width:0;display:flex;position:relative}.reel-footer{justify-content:space-between;align-items:center;gap:16px;min-height:20px;display:flex}.reel-caption{min-width:0;min-height:20px;color:var(--ink-quaternary);font-size:13px;line-height:20px;transition:opacity .2s}.reel-caption.is-hidden{opacity:0}.reel-frame{min-width:0;width:calc(var(--reel-max-h) * var(--art-ratio));max-width:100%;padding:var(--bezel);background:linear-gradient(#dde1e5 0%,#aeb4ba 22%,#878d94 50%,#a9aeb5 78%,#6e737a 100%);box-shadow:inset 0 1px #ffffffa6,inset 0 -1px #0006,0 14px 30px #11111029}.reel{aspect-ratio:1080/810;-webkit-tap-highlight-color:transparent;width:100%;position:relative;overflow:hidden;box-shadow:0 0 0 1px #00000080}.reel.reel-blur{filter:url(#reel-motion-blur)}.reel:after{content:"";z-index:1;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 3px 9px #00000073,inset 0 -2px 6px #0000004d}.reel-strip{will-change:transform;flex-direction:column;height:100%;display:flex}.reel-slot{flex:0 0 100%}.reel-slot img{object-fit:cover;filter:saturate(.82)brightness(.97);width:100%;height:100%;transition:filter .42s;display:block}.reel:hover .reel-slot img{filter:saturate(1.06)brightness(1.02)}.reel-frame.is-spinning .reel-strip{animation:reel-spin var(--spin-ms) cubic-bezier(.16, .62, .24, 1) var(--spin-delay) both}.reel-blur-defs{width:0;height:0;position:absolute;overflow:hidden}@keyframes reel-spin{0%{transform:translateY(calc(var(--from) * -100%))}to{transform:translateY(calc(var(--to) * -100%))}}.reel-frame.is-spinning{animation:reel-land .24s cubic-bezier(.2, 0, .3, 1) calc(var(--spin-delay) + var(--spin-ms) * .9) both}@keyframes reel-land{0%,to{transform:translateY(0)}38%{transform:translateY(3px)}}.lever{--L:clamp(84px, calc(var(--reel-h,420px) * .35), 175px);--shaft-w:calc(var(--L) * .085);--knob-d:calc(var(--L) * .4);--knob-lift:calc(var(--L) * .11);--pivot-up:calc(var(--L) * .16);width:calc(var(--L) * .5);height:calc(var(--L) * 1.5);perspective:calc(var(--L) * 3);perspective-origin:50% 78%;cursor:pointer;-webkit-tap-highlight-color:transparent;flex:none;position:relative}.lever-col{flex-direction:column;flex:none;order:-1;align-items:center;gap:14px;display:flex}.pull-tally{flex:none;align-items:center;gap:8px;display:flex}.pull-counter{background:linear-gradient(#dde1e5 0%,#aeb4ba 45%,#878d94 100%);gap:2px;padding:2px 3px;display:flex;box-shadow:inset 0 1px #ffffffa6,inset 0 -1px #0006,0 3px 8px #1111102e}.counter-window{background:var(--ink);width:11px;height:15px;position:relative;overflow:hidden}.counter-window:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 2px 3px #0000008c,inset 0 -1px 2px #00000059}.counter-strip{transition:transform .42s var(--ease-lift);flex-direction:column;display:flex}.counter-digit{text-align:center;height:15px;color:var(--paper);font-variant-numeric:tabular-nums;font-size:10px;line-height:15px}.counter-label{color:var(--ink-quaternary);font-size:13px}.mute-toggle{appearance:none;font:inherit;color:var(--ink-quaternary);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;transition:color .16s}.mute-toggle:hover{color:var(--ink)}.lever-note{top:calc(var(--L) * -.28);right:calc(50% + var(--L) * .02);pointer-events:none;flex-direction:column;align-items:flex-start;transition:opacity .7s;display:flex;position:absolute}.lever-note.is-gone{opacity:0}.lever-note-text{font-family:Caveat,Segoe Script,cursive;font-size:clamp(17px, calc(var(--L) * .17), 25px);color:#26231f;white-space:nowrap;line-height:1;transform:rotate(-5deg)}.lever-note-arrow{width:calc(var(--L) * .32);height:auto;margin-top:3px;margin-left:calc(var(--L) * .22);overflow:visible}.lever-note-arrow path{stroke:#26231f;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.reel-note{z-index:2;pointer-events:none;flex-direction:column;align-items:flex-end;transition:opacity .7s;display:none;position:absolute;top:-50px;right:16px}.reel-note.is-gone{opacity:0}.reel-note-text{color:#26231f;white-space:nowrap;font-family:Caveat,Segoe Script,cursive;font-size:22px;line-height:1;transform:rotate(4deg)}.reel-note-arrow{filter:drop-shadow(0 0 2px #fffc);width:34px;height:auto;margin-top:3px;margin-right:28px;overflow:visible}.reel-note-arrow path{stroke:#26231f;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.lever-mount{z-index:0;width:calc(var(--L) * .34);height:calc(var(--L) * .2);margin-left:calc(var(--L) * -.17);background:linear-gradient(#e2e6ea 0%,#b4bac0 26%,#898f96 55%,#a3a9b0 80%,#5f646b 100%);border-radius:2px;position:absolute;bottom:0;left:50%;box-shadow:inset 0 1px #ffffffd9,inset 0 -2px 3px #00000059,inset 1px 0 1px #ffffff40,inset -1px 0 1px #0003,0 6px 12px #11111038}.lever-mount:before,.lever-mount:after{content:"";width:calc(var(--L) * .045);height:calc(var(--L) * .045);margin-top:calc(var(--L) * -.0225);background:radial-gradient(circle at 35% 30%,#f2f4f6 0%,#9ba1a8 45%,#4a4e54 100%);border-radius:50%;position:absolute;top:50%;box-shadow:0 1px 1px #fff9,inset 0 1px 2px #00000073}.lever-mount:before{left:calc(var(--L) * .035)}.lever-mount:after{right:calc(var(--L) * .035)}.lever-arm{z-index:2;left:50%;bottom:var(--pivot-up);width:var(--shaft-w);height:var(--L);margin-left:calc(var(--shaft-w) / -2);transform-origin:50% 100%;background:linear-gradient(#2c060247 0%,#0000 9% 76%,#00000061 100%),linear-gradient(90deg,#2b2e33 0%,#868b92 9%,#e7ebee 20%,#fff 30%,#bfc4ca 42%,#787d84 60%,#43474d 78%,#6d727a 91%,#2b2e33 100%);position:absolute;transform:rotateX(-9deg)}.lever-knob{z-index:4;left:50%;bottom:var(--pivot-up);width:var(--knob-d);height:var(--knob-d);margin-left:calc(var(--knob-d) / -2);margin-bottom:calc(var(--knob-d) / -2);box-shadow:inset calc(var(--knob-d) * -.11) calc(var(--knob-d) * -.15) calc(var(--knob-d) * .3) #2c06028c, 0 10px 18px #1111104d;transform:rotateX(-9deg) translateY(calc(-1 * var(--L))) rotateX(9deg) translateZ(var(--knob-lift));background:radial-gradient(circle at 31% 24%,#fffffffa 0 2.5%,#fff0 9%),radial-gradient(circle at 34% 28%,#ffffff80 0 7%,#fff0 26%),radial-gradient(circle at 64% 88%,#ff8b6a8c 0,#ff8b6a00 40%),radial-gradient(circle at 36% 29%,#ff9f90 0%,#f65c46 14%,#df3527 36%,#b41f13 60%,#7c1009 84%,#4b0803 100%);border-radius:50%;position:absolute}.lever-pivot{z-index:3;left:50%;bottom:calc(var(--L) * .14);width:calc(var(--L) * .2);height:calc(var(--L) * .13);margin-left:calc(var(--L) * -.1);background:radial-gradient(120% 150% at 34% 16%,#7c828a 0%,#4b5057 40%,#26292d 78%,#16181b 100%);border-radius:50% 50% 3px 3px/85% 85% 3px 3px;position:absolute;box-shadow:inset 0 1px 1px #ffffff4d,inset 0 -2px 3px #00000080,0 2px 4px #11111066}.lever.is-pulled .lever-arm{animation:.9s both lever-pull-arm}.lever.is-pulled .lever-knob{animation:.9s both lever-pull-knob}@keyframes lever-pull-arm{0%{animation-timing-function:cubic-bezier(.5,0,.75,.35);transform:rotateX(-9deg)}36%{animation-timing-function:cubic-bezier(.2,.8,.4,1);transform:rotateX(-74deg)}46%{animation-timing-function:cubic-bezier(.4,0,.4,1);transform:rotateX(-86deg)}56%,66%{animation-timing-function:cubic-bezier(.55,0,.2,1);transform:rotateX(-80deg)}to{transform:rotateX(-9deg)}}@keyframes lever-pull-knob{0%{transform:rotateX(-9deg) translateY(calc(-1 * var(--L))) rotateX(9deg) translateZ(var(--knob-lift));animation-timing-function:cubic-bezier(.5,0,.75,.35)}36%{transform:rotateX(-74deg) translateY(calc(-1 * var(--L))) rotateX(74deg) translateZ(var(--knob-lift));animation-timing-function:cubic-bezier(.2,.8,.4,1)}46%{transform:rotateX(-86deg) translateY(calc(-1 * var(--L))) rotateX(86deg) translateZ(var(--knob-lift));animation-timing-function:cubic-bezier(.4,0,.4,1)}56%,66%{transform:rotateX(-80deg) translateY(calc(-1 * var(--L))) rotateX(80deg) translateZ(var(--knob-lift));animation-timing-function:cubic-bezier(.55,0,.2,1)}to{transform:rotateX(-9deg) translateY(calc(-1 * var(--L))) rotateX(9deg) translateZ(var(--knob-lift))}}@media (width<=1199px){.lever-col{display:none}.reel{cursor:pointer}.reel-note{display:flex}}@media (width<=1023px){:root{--pad-x:40px;--pad-y:40px;--shift-x:0px}.page{align-items:flex-start}.layout{row-gap:var(--gap-block);grid-template-columns:minmax(0,1fr);max-width:560px}.reel-col{flex:auto}.reel-frame{width:100%}}@media (width<=520px){:root{--pad-x:32px;--pad-y:32px;--gap-block:28px}}.identity,.text,.projects,.socials,.artwork{opacity:0}.layout.is-ready .identity,.layout.is-ready .text,.layout.is-ready .projects,.layout.is-ready .socials,.layout.is-ready .artwork{animation:fade-in-up .6s var(--ease-lift) both}.layout.is-ready .text{animation-delay:80ms}.layout.is-ready .projects{animation-delay:.16s}.layout.is-ready .socials{animation-delay:.24s}.layout.is-ready .artwork{animation-duration:.7s;animation-delay:.16s}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.loader{pointer-events:none;opacity:0;place-items:center;animation:.24s .4s forwards loader-in;display:grid;position:fixed;inset:0}.loader.is-done{opacity:0;animation:none}.loader-track{background:var(--rule);width:180px;height:2px}.loader-fill{background:var(--ink);transform-origin:0;width:100%;height:100%;transition:transform .2s var(--ease-lift);transform:scaleX(0)}@keyframes loader-in{to{opacity:1}}@media (prefers-reduced-motion:reduce){.identity,.text,.projects,.socials,.artwork,.layout.is-ready .identity,.layout.is-ready .text,.layout.is-ready .projects,.layout.is-ready .socials,.layout.is-ready .artwork{opacity:1;animation:none}.loader{display:none}.lever{cursor:default}.lever.is-pulled .lever-arm,.lever.is-pulled .lever-knob,.reel-frame.is-spinning,.reel-frame.is-spinning .reel-strip{animation:none}.counter-strip{transition:none}}
