*,*:before,*:after{box-sizing:border-box}:root{--bg: #0a0a0a;--text: #ffffff;--accent: #fcffa8;--font: "Inter", system-ui, -apple-system, sans-serif}html{overflow-y:auto;scroll-behavior:smooth;scrollbar-width:auto;scrollbar-color:var(--accent) transparent}::-webkit-scrollbar{width:16px;height:16px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:999px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent) 85%,#ffffff)}html,body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}body{position:relative;overflow-x:hidden;display:flex;flex-direction:column;min-height:100vh;padding:clamp(1rem,3vw,2rem) clamp(1.25rem,4vw,3.5rem) clamp(1.5rem,4vw,2.5rem);padding-right:clamp(2.5rem,6vw,4rem)}.glow{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse 55% 45% at 50% 38%,rgba(255,255,255,.05) 0%,rgba(255,255,255,.02) 35%,transparent 65%);z-index:0}.bg-dot{position:fixed;z-index:0;left:50%;top:50%;width:clamp(21rem,45vw,40rem);aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;border-radius:50%;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--accent) 100%,transparent) 0%,color-mix(in srgb,var(--accent) 70%,transparent) 30%,color-mix(in srgb,var(--accent) 32%,transparent) 52%,transparent 72%);opacity:.8;filter:blur(50px)}.hero{position:relative;z-index:10;flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding-top:clamp(1.5rem,5vh,3.5rem);padding-bottom:clamp(1rem,3vh,1.75rem)}.hero-copy{position:relative;z-index:1;flex:0 0 auto;width:100%;max-width:min(96vw,72rem);margin-inline:auto;display:flex;flex-direction:column;align-items:stretch}.hero-intro{margin:.5rem 0 0;font-size:clamp(1.08rem,1.55vw,1.32rem);font-weight:400;line-height:1.55;color:#fffffff2;text-align:left;opacity:0;animation:intro-in .7s ease .2s forwards}@keyframes intro-in{0%{opacity:0;transform:translateY(.45rem);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.profile-head{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:clamp(1rem,3.5vw,1.85rem);width:fit-content;max-width:min(100%,52rem);margin-top:clamp(4.25rem,10.5vh,7rem);margin-left:clamp(5.25rem,23.25vw,15rem);margin-right:auto;margin-bottom:0;text-align:left;opacity:0;animation:intro-in .65s ease .12s forwards}.profile-meta{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;min-width:0;flex:1 1 auto;max-width:min(100%,54rem)}.profile-avatar-wrap{position:relative;flex-shrink:0;background:var(--bg);border-radius:24%}.profile-avatar{display:block;width:clamp(5.5rem,17vw,8.75rem);height:clamp(5.5rem,17vw,8.75rem);object-fit:contain;object-position:center center;border-radius:24%;box-shadow:0 14px 48px #00000073}.profile-activity{position:absolute;right:1%;bottom:1%;width:clamp(20px,4.2vw,28px);height:clamp(20px,4.2vw,28px);border-radius:50%;background:#34d399;border:4px solid var(--bg);box-shadow:0 0 0 1px #ffffff1a}.profile-nickname-row{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:.45rem;margin:0 0 .3rem}.profile-nickname{margin:0;font-size:clamp(1.22rem,2.5vw,1.58rem);font-weight:700;letter-spacing:.03em;color:#fffffff5;text-align:left}.profile-verified-badge{flex-shrink:0;display:block;width:clamp(26px,2em,38px);height:clamp(26px,2em,38px);filter:drop-shadow(0 2px 8px rgba(0,0,0,.35))}.profile-role{margin:0;font-size:clamp(1.08rem,2.35vw,1.42rem);font-weight:500;letter-spacing:.02em;color:#ffffff85;text-align:left}@media(max-width:520px){.profile-head{flex-direction:column;align-items:flex-start;align-self:flex-start;margin-left:clamp(3.75rem,13.25vw,5.65rem)}}.hero-title-wrap{position:relative;z-index:1;width:100%;margin-bottom:clamp(.25rem,1vh,.5rem);text-align:center}.hero-title{margin:0;font-weight:900;line-height:.88;letter-spacing:-.02em;text-transform:uppercase;color:var(--accent);font-size:clamp(2.25rem,10.5vw,7.25rem)}.hero-title-line{display:block}.hero-title .letter{display:inline-block;opacity:0;animation:letter-in .65s ease forwards,letter-rise .65s ease forwards;animation-delay:var(--d, 0ms),var(--d, 0ms)}@keyframes letter-in{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur(0)}}@keyframes letter-rise{0%{transform:translateY(.22em)}to{transform:translateY(0)}}.dot-anchor{position:relative}.title-dot{position:absolute;left:50%;bottom:calc(100% - .14em);transform:translate(-50%);width:clamp(11px,1.5vw,20px);height:clamp(11px,1.5vw,20px);border-radius:50%;background:var(--accent);opacity:0;animation:letter-in .55s ease forwards;animation-delay:.78s}@media(prefers-reduced-motion:reduce){.hero-intro,.profile-head,.hero-title .letter{animation:none;opacity:1;filter:none;transform:none}.hero-title .title-dot{animation:none;opacity:1;filter:none}}.contact-dock{position:fixed;left:max(1rem,env(safe-area-inset-left,0px));bottom:max(1rem,env(safe-area-inset-bottom,0px));z-index:60;width:max-content;max-width:min(calc(100vw - 2.75rem),28rem);padding:.5rem .68rem .58rem;border-radius:12px;background:#0a0a0aeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);box-shadow:0 12px 44px #0000008c}@media(max-width:540px){.contact-dock{left:50%;right:auto;transform:translate(-50%);max-width:calc(100vw - 1.5rem)}}.social-dock{position:fixed;right:max(1rem,env(safe-area-inset-right,0px));bottom:max(1rem,env(safe-area-inset-bottom,0px));z-index:60;width:max-content;max-width:min(calc(100vw - 2.75rem),26rem);padding:.88rem 1.05rem 1rem;border-radius:16px;background:#0a0a0aeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);box-shadow:0 12px 44px #0000008c}.social-dock .about{display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:.55rem}.social-dock .social{justify-content:flex-end;margin-bottom:0;font-size:clamp(.85rem,1.2vw,1rem);gap:.45rem .68rem}.social-dock .badge{text-align:right;font-size:.78rem;letter-spacing:.05em}@media(max-width:540px){.social-dock{right:max(.75rem,env(safe-area-inset-right,0px));bottom:calc(10.5rem + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 1.5rem)}}.contact{font-size:clamp(.85rem,1.85vw,1.08rem);font-weight:700;line-height:1.5;color:#ffffffeb}.contact-row{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .55rem;margin:0}.contact-row+.contact-row{margin-top:.35em}.contact-value{flex:0 1 auto;min-width:0}.contact-icon{display:block;flex-shrink:0;width:clamp(25px,3.6vw,38px);height:clamp(25px,3.6vw,38px);object-fit:contain}.copy-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin:0;padding:.2rem .35rem;border:none;border-radius:8px;background:transparent;cursor:pointer;color:inherit;opacity:.88;transition:opacity .15s ease,background .15s ease}.copy-btn:hover{opacity:1;background:#ffffff14}.copy-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.copy-btn--done{opacity:1;background:#fcffa826}.copy-icon{display:block;width:clamp(18px,2.85vw,28px);height:clamp(18px,2.85vw,28px);object-fit:contain}.social{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem .5rem;font-size:clamp(.7rem,1vw,.8125rem);margin-bottom:.75rem}.social a{color:var(--text);text-decoration:none}.social a:hover{text-decoration:underline}.social-link--icon{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.22rem .45rem}.social-link--icon:hover{text-decoration:none}.social-icon-backdrop{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:2.85em;height:2.85em;border-radius:50%;background:radial-gradient(circle closest-side,rgba(255,255,255,.52) 0%,rgba(255,255,255,.14) 42%,transparent 72%);z-index:0;pointer-events:none}.social-link--icon:hover .social-icon-backdrop{background:radial-gradient(circle closest-side,rgba(255,255,255,.68) 0%,rgba(255,255,255,.2) 44%,transparent 74%)}.social-site-icon{position:relative;z-index:1;display:block;width:clamp(22px,1.45em,32px);height:clamp(22px,1.45em,32px);object-fit:contain}.social .sep{color:var(--accent);-webkit-user-select:none;user-select:none}.badge{margin:0;font-size:.65rem;letter-spacing:.04em;color:#ffffff73}.site-video-wrap{position:relative;z-index:55;flex:0 0 auto;align-self:center;width:min(92vw,28rem);margin-top:clamp(5.25rem,19vh,10.75rem);margin-bottom:max(1rem,env(safe-area-inset-bottom,0px));pointer-events:none;border-radius:clamp(1.1rem,3.5vw,1.75rem);overflow:visible;isolation:isolate;outline:none;box-shadow:0 20px 44px #00000073,0 0 140px 96px #0000000f,0 0 260px 150px #00000009,0 0 380px 200px #00000005;background:transparent}.site-video-wrap:after{content:"";position:absolute;left:-118%;right:-118%;top:-128%;bottom:-132%;border-radius:50%;z-index:0;pointer-events:none;transform:translateZ(0);background:radial-gradient(ellipse 78% 54% at 50% 50%,#0000,#0000 58%,#0000000f,#0003 74%,#0000006b 81%,#00000085,#00000061,#00000029 96%,#0000);filter:blur(96px);-webkit-filter:blur(96px);opacity:1}.site-video-wrap:before{content:"";position:absolute;left:-58%;right:-58%;top:-64%;bottom:-68%;border-radius:50%;z-index:1;pointer-events:none;transform:translateZ(0);background:radial-gradient(ellipse 76% 52% at 50% 50%,#0000,#0000 52%,#0000002e 68%,#00000073 78%,#00000085 84%,#00000052 91%,#00000014 97%,#0000);filter:blur(28px);-webkit-filter:blur(28px)}.site-video-wrap .site-video-clip{border-radius:clamp(1.1rem,3.5vw,1.75rem);overflow:visible;position:relative;z-index:2;outline:none;isolation:isolate;box-shadow:0 0 0 5px #000,0 0 4px 5px #000,0 0 14px 6px #000,0 0 30px 8px #000000eb,0 0 60px 14px #000000b8,0 0 108px 22px #00000080,0 0 160px 32px #0000004d,0 0 240px 44px #00000024}.site-video-wrap .site-video-clip-inner{position:relative;overflow:hidden;border-radius:clamp(1.1rem,3.5vw,1.75rem);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.site-video-wrap .site-video-clip-inner:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:inset 0 0 0 3px #000;pointer-events:none;z-index:2}.site-video-wrap .site-video{display:block;width:100%;height:auto;border-radius:clamp(1.1rem,3.5vw,1.75rem);transform:scaleX(1.04) translateZ(0);transform-origin:center top;clip-path:inset(3.5% 0 0 0);filter:invert(1);-webkit-filter:invert(1);outline:none;position:relative;z-index:1;-webkit-backface-visibility:hidden;backface-visibility:hidden}.video-signature-dot-anchor{position:absolute;left:100%;margin-left:.55rem;top:50%;transform:translateY(-50%);width:0;height:0;z-index:3;pointer-events:none}.video-signature-dot{position:absolute;left:0;top:50%;width:clamp(3px,.5vw,4px);height:clamp(3px,.5vw,4px);margin:0;border-radius:50%;background:#fff;box-shadow:0 0 4px #fff6,0 0 0 1px #0000002e;opacity:0;transform:translateY(calc(-50% + 5px)) translate(2.85rem) scale(.28);transform-origin:center center;pointer-events:none;display:block}.video-signature-dot--show{animation:video-signature-dot-hit .19s cubic-bezier(0,.94,.12,1) forwards}@keyframes video-signature-dot-hit{0%{opacity:1;transform:translateY(calc(-50% + 5px)) translate(2.85rem) scale(.28)}to{opacity:1;transform:translateY(calc(-50% + 5px)) translate(0) scale(1)}}@media(prefers-reduced-motion:reduce){.video-signature-dot--show{animation:video-signature-dot-hit-rm .14s ease-out forwards}}@keyframes video-signature-dot-hit-rm{0%{opacity:1;transform:translateY(calc(-50% + 5px)) translate(1.25rem) scale(.5)}to{opacity:1;transform:translateY(calc(-50% + 5px)) translate(0) scale(1)}}@media(max-width:540px){.site-video-wrap{width:min(94vw,24rem);margin-bottom:calc(10.5rem + max(1rem,env(safe-area-inset-bottom,0px)))}}.scroll-hint{position:fixed;right:clamp(.75rem,2vw,1.25rem);top:50%;transform:translateY(-50%);display:flex;flex-direction:row;align-items:center;gap:.65rem;z-index:25}.scroll-line{width:1px;height:clamp(3rem,10vh,5rem);background:#ffffff59}.scroll-text{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:.65rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#ffffff80}@media(max-width:480px){.scroll-hint{display:none}}.work-dash{position:relative;z-index:10;flex:0 0 auto;width:100%;max-width:min(96vw,44rem);margin-inline:auto;padding:clamp(3.75rem,10vh,6.5rem) 0 clamp(2.25rem,5vh,3.5rem);scroll-margin-top:clamp(2rem,6vh,4rem)}.work-dash-inner{width:100%}.work-dash-header{margin-bottom:clamp(1.75rem,4vw,2.5rem)}.work-dash-title{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;text-align:left;color:#ffffff61}.work-dash-panel{border-radius:10px}.work-dash-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:clamp(.4rem,1vw,.6rem)}.work-dash-row{--logo-size: clamp(2.65rem, 6.5vw, 3.5rem);--row-py: clamp(1.2rem, 2.5vw, 1.5rem);--row-px: clamp(1rem, 2.5vw, 1.35rem);--row-gap: clamp(.4rem, 1vw, .6rem);position:relative;isolation:isolate;display:grid;grid-template-columns:var(--logo-size) minmax(0,1fr);align-items:start;gap:clamp(1rem,2.8vw,1.5rem);margin:0;padding:var(--row-py) var(--row-px);border:1px solid rgba(255,255,255,.06);border-radius:14px;background:#ffffff05;transform-origin:calc(var(--row-px) + var(--logo-size) / 2) center;will-change:transform;transition:transform .25s ease,background .25s ease,border-color .25s ease}.work-dash-row:after{content:"";position:absolute;z-index:-1;left:calc(var(--row-px) + var(--logo-size) / 2);top:calc(-1 * (var(--row-py) + var(--row-gap) / 2 + 1px));bottom:calc(-1 * (var(--row-py) + var(--row-gap) / 2 + 1px));width:1px;transform:translate(-.5px);background:#ffffff1f}.work-dash-row:first-child:after{top:calc(var(--row-py) + var(--logo-size) / 2)}.work-dash-row:last-child:after{bottom:auto;height:calc(2 * var(--row-py) + var(--logo-size) / 2 + var(--row-gap) / 2 + 1px)}.work-dash-row:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 9%,transparent),rgba(255,255,255,.04) 55%,transparent);box-shadow:0 22px 48px -20px #000000e6;opacity:0;transition:opacity .25s ease}.work-dash-row:hover,.work-dash-row:focus-within{transform:scale(1.12);background:#ffffff0a;border-color:#ffffff24}.work-dash-row:hover:before,.work-dash-row:focus-within:before{opacity:1}.work-dash-logo-slot{width:clamp(2.65rem,6.5vw,3.5rem);height:clamp(2.65rem,6.5vw,3.5rem);border-radius:6px;border:1px dashed rgba(255,255,255,.14);background:#121214;flex-shrink:0;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.work-dash-row:hover .work-dash-logo-slot,.work-dash-row:focus-within .work-dash-logo-slot{transform:translateY(-3px) scale(1.12);border-color:#ffffff38;box-shadow:0 10px 26px -10px #000000bf}.work-dash-logo-slot img{display:block;width:100%;height:100%;object-fit:contain;border-radius:5px}.work-dash-logo-slot:has(img){border-style:solid;border-color:#ffffff1a;background:#151517}.work-dash-logo-slot.work-dash-logo-slot--wide-logo{display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff;border-style:solid;border-color:#0000001a}.work-dash-logo-slot.work-dash-logo-slot--wide-logo:has(img){background:#fff;border-color:#0000001f}.work-dash-logo-slot--wide-logo img{width:100%;height:auto;max-height:100%;object-fit:contain;object-position:center;border-radius:4px}.work-dash-main{min-width:0;display:flex;flex-direction:column;gap:.45rem}.work-dash-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;font-size:clamp(.68rem,1.05vw,.75rem);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#ffffff52}.work-dash-org{color:#fff6;transition:color .25s ease}.work-dash-row:hover .work-dash-org,.work-dash-row:focus-within .work-dash-org{color:var(--accent);font-weight:700;font-size:1.35em}.work-dash-sep{color:#fff3;-webkit-user-select:none;user-select:none}.work-dash-role{color:#ffffff47;transition:color .25s ease}.work-dash-row:hover .work-dash-role,.work-dash-row:focus-within .work-dash-role{color:var(--accent);font-weight:700;font-size:1.15em}.work-dash-dates{margin-left:auto;font-variant-numeric:tabular-nums;letter-spacing:.12em;color:#ffffff42}@media(max-width:520px){.work-dash-dates{margin-left:0;width:100%}}.work-dash-desc{margin:0;font-size:clamp(.94rem,1.35vw,1.0625rem);font-weight:400;line-height:1.65;letter-spacing:.01em;color:#ffffffe0;max-width:40rem;transition:color .25s ease}.work-dash-row:hover .work-dash-desc,.work-dash-row:focus-within .work-dash-desc{color:#fff}.work-dash-desc strong{font-weight:700;color:#fffffff5}.work-link{align-self:flex-start;display:inline-flex;align-items:center;gap:.4rem;margin-top:0;max-height:0;padding:0 .75rem;overflow:hidden;font-size:.82rem;font-weight:600;letter-spacing:.01em;white-space:nowrap;text-decoration:none;color:#0a0a0a;background:var(--accent);border-radius:999px;opacity:0;transform:translateY(8px) scale(.94);pointer-events:none;transition:opacity .3s ease,transform .34s cubic-bezier(.2,.9,.25,1.25),max-height .3s ease,margin-top .3s ease,padding-block .3s ease,box-shadow .2s ease}.work-dash-row:hover .work-link,.work-dash-row:focus-within .work-link{max-height:2.5rem;margin-top:.85rem;padding-block:.42rem;opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.work-dash-row:hover .work-link:hover,.work-dash-row:focus-within .work-link:focus-visible{box-shadow:0 4px 16px -4px color-mix(in srgb,var(--accent) 70%,transparent);transform:translateY(0) scale(1.06)}.work-link-icon{display:inline-flex;align-items:center}.work-dash-row:hover .work-link-icon{animation:work-link-bounce .95s ease-in-out infinite}@keyframes work-link-bounce{0%,to{transform:translate(0)}50%{transform:translate(1px,-2px)}}@media(prefers-reduced-motion:reduce){.work-link{transition:opacity .2s ease,max-height .2s ease,margin-top .2s ease;transform:none}.work-dash-row:hover .work-link,.work-dash-row:focus-within .work-link{transform:none}.work-dash-row:hover .work-link-icon{animation:none}}a.scroll-hint{color:inherit;text-decoration:none;cursor:pointer}a.scroll-hint:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:4px}
