html,body{margin:0;height:100%;overflow:hidden;overscroll-behavior:none;background:#0f1f1a}canvas#scene{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;touch-action:none}#veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;display:grid;place-content:center;justify-items:center;gap:14px;background:radial-gradient(120% 90% at 50% 40%,#1a3229,#0c1814);color:#d6e6d2b8;font:600 11px/1.4 Manrope,ui-sans-serif,system-ui,sans-serif;letter-spacing:.24em;text-transform:uppercase;transition:opacity 1.4s ease,visibility 1.4s}#veil.hidden{opacity:0;visibility:hidden;pointer-events:none}.veil-bar{width:140px;height:2px;border-radius:2px;background:#d6e6d229;overflow:hidden}.veil-bar i{display:block;height:100%;background:#f0dca0d9;transform:scaleX(0);transform-origin:left;transition:transform .5s ease}.no-webgl body{background:linear-gradient(to bottom,#6fa6cf,#cfe3e6 45%,#6f9a52 46%,#3f6a2c)}.no-webgl canvas#scene{display:none}#ui{--u: min(1vw, 1.78vh);--mx: max(calc(4.2 * var(--u)), env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px));--my: max(calc(3.4 * var(--u)), env(safe-area-inset-bottom, 0px));--ink: #fbf4e4;--ink-2: rgba(251, 244, 228, .84);--ink-3: rgba(251, 244, 228, .58);--hair: rgba(251, 244, 228, .3);--deep: 8, 24, 22;--accent: #ffd889;--serif: "Young Serif", "Iowan Old Style", Georgia, serif;--sans: "Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--shade: 0 1px 1.5px rgba(var(--deep), .6), 0 0 .9em rgba(var(--deep), .45);position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;overflow:hidden;pointer-events:none;color:var(--ink);font:500 clamp(11px,calc(.92 * var(--u)),20px) / 1.35 var(--sans);-webkit-font-smoothing:antialiased;text-size-adjust:100%;transition:--accent 1s}body[data-season=summer] #ui{--accent: #ffd889;--deep: 8, 26, 30}body[data-season=autumn] #ui{--accent: #ffb56b;--deep: 34, 18, 10}body[data-season=winter] #ui{--accent: #bfe3ff;--deep: 16, 30, 48}body[data-season=monsoon] #ui{--accent: #9fe6d4;--deep: 10, 22, 26}#ui *,#ui *:before,#ui *:after{box-sizing:border-box}#ui a,#ui button{pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;color:inherit;text-decoration:none;font:inherit}#ui ul{list-style:none;padding:0;margin:0}#ui h1,#ui h2,#ui h3,#ui p{margin:0;font-weight:inherit}#ui svg{display:block}#ui .stage{position:absolute;top:0;right:0;bottom:0;left:0;transition:opacity .3s ease,visibility .3s}body.free-cam #ui .stage,body.free-cam #ui .hint{opacity:0;visibility:hidden}#ui .scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(70% 55% at 0% 0%,rgba(var(--deep),.34),rgba(var(--deep),0) 70%),linear-gradient(to top,rgba(var(--deep),.56) 0,rgba(var(--deep),.28) 13%,rgba(var(--deep),0) 30%);transition:background 1.2s ease}#ui .ident{position:absolute;top:calc(4.6 * var(--u));left:var(--mx);display:flex;flex-direction:column;align-items:flex-start}#ui .kicker{display:flex;align-items:center;gap:.7em;margin-bottom:calc(.7 * var(--u));font-weight:700;font-size:.8em;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-2);text-shadow:var(--shade)}#ui .kicker .dot{width:.6em;height:.6em;border-radius:50%;background:var(--accent);box-shadow:0 0 0 .25em #ffffff1f,0 0 1em var(--accent);animation:pulse 2.6s ease-in-out infinite}#ui .name{position:relative;line-height:1}#ui .name-text{display:block;font:400 clamp(40px,calc(6.4 * var(--u)),128px) / 1 var(--serif);letter-spacing:-.01em;white-space:nowrap;text-shadow:0 .03em .02em rgba(var(--deep),.35),0 .08em .3em rgba(var(--deep),.35)}.js #ui .name.drawn .name-text{opacity:0}#ui .name .art{position:absolute;left:calc(-1 * var(--art-pad, 0px));top:50%;width:var(--art-w, 0);height:var(--art-h, 0);translate:0 -52%;pointer-events:none;filter:drop-shadow(0 .06em .05em rgba(var(--deep),.45)) drop-shadow(0 .25em .6em rgba(var(--deep),.3))}#ui .name .art canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;visibility:hidden}#ui .name .art canvas.on{visibility:visible}#ui .role{margin-top:calc(1.1 * var(--u));font-weight:700;font-size:.96em;letter-spacing:.24em;text-transform:uppercase;white-space:nowrap;text-shadow:0 1px 1.5px rgba(var(--deep),.7),0 0 .5em rgba(var(--deep),.45),0 0 1.3em rgba(var(--deep),.45)}#ui .role span{display:inline-block}#ui .role i{position:relative;top:.06em;margin:0 .18em;font:400 1.55em/0 var(--serif);letter-spacing:0;text-transform:none;color:var(--accent);transition:color 1s ease}#ui .contact{display:flex;align-items:center;gap:calc(1.1 * var(--u));margin-top:calc(1.6 * var(--u))}#ui .social{display:flex;gap:calc(.3 * var(--u))}#ui .social a{display:grid;place-items:center;width:calc(2.5 * var(--u));height:calc(2.5 * var(--u));min-width:30px;min-height:30px;border-radius:50%;outline:none;transition:color .2s ease,translate .28s cubic-bezier(.2,.8,.2,1),background-color .2s ease}#ui .social svg{width:calc(1.3 * var(--u));height:calc(1.3 * var(--u));min-width:15px;min-height:15px;filter:drop-shadow(0 1px 1.5px rgba(var(--deep),.55))}#ui .cta,#ui .card .c-open{display:inline-flex;align-items:center;justify-content:center;gap:.6em;height:calc(2.7 * var(--u));min-height:32px;padding:0 calc(1.25 * var(--u)) 0 calc(1 * var(--u));border-radius:999px;background:var(--ink);color:#10282a;font-weight:750;white-space:nowrap;outline:none;box-shadow:0 calc(.5 * var(--u)) calc(1.5 * var(--u)) rgba(var(--deep),.3),0 1px 2px rgba(var(--deep),.28);transition:translate .28s cubic-bezier(.2,.8,.2,1),scale .2s ease,background-color .2s ease}#ui .cta svg{width:1.35em;height:1.35em}#ui a:focus-visible,#ui button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}#ui .cta:active{scale:.97}@media (hover: hover){#ui .social a:hover{color:var(--accent);translate:0 calc(-.2 * var(--u))}#ui .cta:hover{background:#fff;translate:0 calc(-.16 * var(--u))}#ui .cta:hover svg{animation:wave .9s ease-in-out}}#ui .seasons{position:absolute;top:calc(4.6 * var(--u));right:var(--mx);display:flex;flex-direction:column;align-items:flex-end;gap:calc(1 * var(--u))}#ui .pills{display:flex;gap:2px;padding:4px;border-radius:999px;background:rgba(var(--deep),.34);border:1px solid rgba(251,244,228,.16);-webkit-backdrop-filter:blur(12px) saturate(1.3);backdrop-filter:blur(12px) saturate(1.3);box-shadow:0 calc(.8 * var(--u)) calc(2.4 * var(--u)) rgba(var(--deep),.25);pointer-events:auto}#ui .pill{display:inline-flex;align-items:center;gap:.5em;height:calc(2.6 * var(--u));min-height:32px;padding:0 calc(1 * var(--u)) 0 calc(.8 * var(--u));border:0;border-radius:999px;background:transparent;color:var(--ink-2);font-weight:700;font-size:.94em;cursor:pointer;transition:background-color .35s ease,color .35s ease}#ui .pill svg{width:1.25em;height:1.25em;transition:transform .5s cubic-bezier(.3,1.6,.5,1)}#ui .pill[aria-pressed=true]{background:var(--ink);color:#10282a}#ui .pill[aria-pressed=true] svg{transform:rotate(-12deg) scale(1.08);color:#10282a}@media (hover: hover){#ui .pill:hover:not([aria-pressed=true]){background:#fbf4e424;color:var(--ink)}}#ui .season-note{display:flex;align-items:baseline;gap:.6em;padding-right:.4em;font:400 1.18em/1.2 var(--serif);color:var(--ink-2);text-shadow:var(--shade)}#ui .season-note .temp{font:800 .82em/1 var(--sans);letter-spacing:.04em;color:var(--accent);font-variant-numeric:tabular-nums;transition:color 1s ease}#ui .season-note.swap .txt{animation:note-swap .6s ease}#ui .work{position:absolute;left:var(--mx);right:var(--mx);bottom:var(--my);display:flex;justify-content:space-between;align-items:flex-end;gap:calc(2 * var(--u))}#ui .group ul{display:flex;gap:calc(2.4 * var(--u))}#ui .group h2{display:flex;align-items:center;gap:1.1em;margin-bottom:calc(1.05 * var(--u));font:800 .76em/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-2);text-shadow:var(--shade)}#ui .group h2:after{content:"";flex:1;min-width:2em;height:1px;background:linear-gradient(to right,var(--hair),rgba(251,244,228,0))}#ui .proj{position:relative;display:flex;flex-direction:column;gap:.28em;outline:none;transition:opacity .25s ease}#ui .pname{position:relative;width:fit-content;font:400 1.5em/1.1 var(--serif);white-space:nowrap;text-shadow:var(--shade)}#ui .ptag{font-size:.88em;color:var(--ink-2);white-space:nowrap;text-shadow:var(--shade);transition:color .2s ease}#ui .pdesc{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#ui .work.has-open .proj:not(.is-open){opacity:.55}#ui .proj.is-open .ptag{color:var(--ink)}#ui .underline{position:absolute;left:-3%;bottom:-.34em;width:106%;height:.4em;pointer-events:none;color:var(--accent);filter:drop-shadow(0 1px 1px rgba(var(--deep),.5));animation:wipe .32s cubic-bezier(.3,.7,.2,1) backwards}#ui .underline svg{width:100%;height:100%;overflow:visible}#ui .underline path{fill:none;stroke:currentColor;stroke-width:max(1.6px,calc(.17 * var(--u)));stroke-linecap:round;vector-effect:non-scaling-stroke;visibility:hidden}#ui .underline path.on{visibility:visible}#ui .card{position:absolute;left:0;top:0;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:calc(.8 * var(--u)) calc(.95 * var(--u));width:calc(23 * var(--u));min-width:270px;max-width:calc(100vw - 24px);padding:calc(1.1 * var(--u));border:1px solid rgba(251,244,228,.18);border-radius:calc(1.2 * var(--u));background:rgba(var(--deep),.72);box-shadow:0 calc(1.2 * var(--u)) calc(3.4 * var(--u)) #00000052;-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);opacity:0;visibility:hidden;transform:translateY(calc(.6 * var(--u))) scale(.985);transition:opacity .18s ease,visibility .18s,transform .24s cubic-bezier(.2,.8,.2,1),translate .3s cubic-bezier(.2,.8,.2,1)}#ui .card.show{opacity:1;visibility:visible;transform:none}#ui .card.pinned{pointer-events:auto}#ui .card .thumb{position:relative;display:block;width:calc(3.8 * var(--u));height:calc(3.8 * var(--u));min-width:46px;min-height:46px;border-radius:26%;background:linear-gradient(135deg,var(--accent),rgba(251,244,228,.25));overflow:hidden}#ui .card .thumb img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}#ui .card .thumb img[hidden]{display:none}#ui .card .thumb b{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font:400 1.6em/1 var(--serif);color:#10282a}#ui .card .c-head{min-width:0}#ui .card strong{display:block;font:400 1.5em/1.1 var(--serif)}#ui .card .c-meta{display:flex;align-items:center;gap:.4em;margin-top:.42em;font-size:.88em;color:var(--ink-3);white-space:nowrap}#ui .card .c-meta svg{width:.95em;height:.95em;color:var(--accent)}#ui .card p{grid-column:1 / -1;font-size:1.02em;line-height:1.5;color:var(--ink-2);text-wrap:pretty}#ui .card .c-open{display:none;grid-column:1 / -1;min-height:40px;box-shadow:none}#ui .card.pinned .c-open{display:flex}#ui .card.pinned .c-meta svg{display:none}#ui .card .c-open svg{width:1em;height:1em}#ui .mode-note,#ui .hint{position:absolute;left:50%;translate:-50% 0;display:flex;align-items:center;gap:.6em;white-space:nowrap;transition:opacity .3s ease,visibility .3s}#ui .mode-note{bottom:var(--my);padding:.7em 1.2em;border-radius:999px;background:rgba(var(--deep),.7);opacity:0;visibility:hidden}body.free-cam #ui .mode-note{opacity:1;visibility:visible}#ui .hint{top:calc(1.4 * var(--u));font-size:.82em;color:var(--ink-3);text-shadow:var(--shade)}#ui kbd{padding:.1em .45em;border:1px solid rgba(251,244,228,.42);border-radius:.35em;font:inherit;font-size:.92em}@media (hover: none),(max-aspect-ratio: 1/1){#ui .hint{display:none}}.js #ui:not(.is-in) .stage>*{opacity:0}#ui.is-in .kicker{animation:rise .9s cubic-bezier(.2,.7,.2,1) .05s backwards}#ui.is-in .name{animation:write 1.6s cubic-bezier(.65,.02,.25,1) .15s backwards}#ui.is-in .role{animation:rise .9s cubic-bezier(.2,.7,.2,1) 1s backwards}#ui.is-in .contact{animation:rise .9s cubic-bezier(.2,.7,.2,1) 1.15s backwards}#ui.is-in .seasons{animation:rise .9s cubic-bezier(.2,.7,.2,1) 1.3s backwards}#ui.is-in .work{animation:rise .9s cubic-bezier(.2,.7,.2,1) 1.45s backwards}#ui.is-in .hint{animation:fade-in 1.2s ease 3s backwards}@keyframes rise{0%{opacity:0;translate:0 calc(.8 * var(--u))}to{opacity:1;translate:0 0}}@keyframes write{0%{clip-path:inset(-60% 104% -60% -14%)}to{clip-path:inset(-60% -14% -60% -14%)}}@keyframes wipe{0%{clip-path:inset(-200% 100% -200% 0)}to{clip-path:inset(-200% -5% -200% -5%)}}@keyframes fade-in{0%{opacity:0}}@keyframes note-swap{0%{opacity:1;translate:0 0}30%{opacity:0;translate:0 -.3em}31%{opacity:0;translate:0 .3em}to{opacity:1;translate:0 0}}@keyframes pulse{50%{box-shadow:0 0 0 .45em #ffffff0a,0 0 1.4em var(--accent)}}@keyframes wave{25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}@media (max-width: 1320px) and (min-aspect-ratio: 1/1){#ui .group ul{display:grid;grid-template-columns:repeat(2,auto);gap:calc(1.2 * var(--u)) calc(2.6 * var(--u))}}@media (max-height: 519px) and (min-aspect-ratio: 1/1){#ui{font-size:10px}#ui .ptag,#ui .season-note,#ui .hint,#ui .pill span{display:none}}@media (max-aspect-ratio: 1/1),(max-width: 900px) and (min-height: 520px){#ui{--u: clamp(7px, min(2.564vw, 1.5vh), 14px);--mx: max(calc(2 * var(--u)), env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px));--my: calc(env(safe-area-inset-bottom, 0px) + 1.8 * var(--u));font-size:calc(1.3 * var(--u))}#ui .scrim{background:linear-gradient(to bottom,rgba(var(--deep),.4) 0,rgba(var(--deep),0) 30%),linear-gradient(to top,rgba(var(--deep),.72) 0,rgba(var(--deep),.5) 16%,rgba(var(--deep),0) 40%)}#ui .ident{top:calc(env(safe-area-inset-top,0px) + 3 * var(--u));left:0;right:0;align-items:center;text-align:center}#ui .name-text{font-size:min(calc(4.6 * var(--u)),9.6vw)}#ui .role{font-size:max(10.5px,calc(1.1 * var(--u)))}#ui .contact{justify-content:center}#ui .social a{width:calc(4 * var(--u));height:calc(4 * var(--u));min-width:36px;min-height:36px}#ui .social svg{width:calc(1.9 * var(--u));height:calc(1.9 * var(--u))}#ui .cta{height:calc(4 * var(--u));min-height:36px;padding:0 calc(1.7 * var(--u)) 0 calc(1.35 * var(--u))}#ui .seasons{top:auto;bottom:calc(var(--my) + 25 * var(--u));left:0;right:0;align-items:center}#ui .pill{height:calc(4 * var(--u));padding:0 calc(1.2 * var(--u))}#ui .pill span{display:none}#ui .pill[aria-pressed=true] span{display:inline}#ui .season-note{font-size:calc(1.5 * var(--u))}#ui .work{display:grid;grid-template-columns:auto auto;justify-content:center;align-items:start;column-gap:calc(5 * var(--u))}#ui .group ul{display:block}#ui .group h2{margin-bottom:calc(.4 * var(--u));font-size:calc(1.02 * var(--u))}#ui .proj{justify-content:center;gap:.16em;min-height:calc(4.6 * var(--u))}#ui .pname{font-size:calc(1.72 * var(--u))}#ui .ptag{font-size:max(10px,calc(1.1 * var(--u)))}#ui .card{width:min(calc(100vw - 2 * var(--mx)),calc(36 * var(--u)));padding:calc(1.3 * var(--u));border-radius:calc(1.5 * var(--u))}#ui .card .thumb{width:calc(4.8 * var(--u));height:calc(4.8 * var(--u))}#ui .card .c-open{height:calc(4.2 * var(--u))}}@media (prefers-reduced-motion: reduce){#ui *,#ui *:before,#ui *:after{animation:none!important;transition:none!important}}
