html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}:root{--bg:#07060d;--bg-rgb:7 6 13;--fg:#f4f2ee;--fg-rgb:244 242 238;--muted:#8f8a9c;--accent:#c6ff3d;--accent-rgb:198 255 61;--accent-2:#6f5bff;--accent-2-rgb:111 91 255;--accent-ink:#0b0b0d;--font-display:"Bricolage Grotesque", "Pretendard Variable", Pretendard, system-ui, sans-serif;--font-sans:"Geist", "Pretendard Variable", Pretendard, system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif:"Instrument Serif", "Pretendard Variable", Georgia, serif;--font-mono:"Geist Mono", ui-monospace, SFMono-Regular, Menlo, "Pretendard Variable", Pretendard, monospace;--ease:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.83, 0, .17, 1);--pad:clamp(20px, 4vw, 64px);--nav-h:64px;--r-xl:32px;--r-lg:26px;--r:18px;--r-sm:12px;--line:rgb(var(--fg-rgb) / .12);--line-strong:rgb(var(--fg-rgb) / .22);--soft:rgb(var(--fg-rgb) / .68)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;overflow-x:clip}body{background:var(--bg);min-height:100vh;color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.5;overflow-x:clip}body.is-loading{overflow:hidden}img,video,svg,canvas{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,p,figure,dl,dd{margin:0}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:6px}.mono{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:450}em{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--accent);font-style:italic;font-weight:400}.container{width:100%;max-width:1680px;padding-inline:var(--pad);margin-inline:auto}.skip-link{z-index:200;background:var(--accent);color:var(--accent-ink);transition:transform .3s var(--ease);border-radius:999px;padding:10px 16px;font-weight:600;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:none}.i-arrow{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:1em;height:1em;transition:transform .6s var(--ease);flex:none}@keyframes intro-hold{0%{opacity:0}}[data-intro],[data-nav],[data-hero-title]{animation:intro-hold .8s var(--ease) 2.4s both}html.js [data-intro],html.js [data-nav],html.js [data-hero-title]{animation:none}.webgl{z-index:0;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}.backdrop{z-index:0;pointer-events:none;position:fixed;inset:0}html:not(.has-gl) .webgl{display:none}html:not(.has-gl) .backdrop{background:radial-gradient(60% 50% at 78% 32%, rgb(var(--accent-2-rgb) / .2), transparent 70%), radial-gradient(45% 40% at 14% 82%, rgb(var(--accent-rgb) / .1), transparent 70%), radial-gradient(70% 40% at 50% -10%, rgb(var(--fg-rgb) / .08), transparent 70%), var(--bg)}html:not(.has-gl) [data-glass-anchor]:before{content:"";background:radial-gradient(circle at 32% 28%, #ffffffd9, #ffffff1f 18%, transparent 36%), radial-gradient(circle at 70% 78%, rgb(var(--accent-rgb) / .55), transparent 45%), radial-gradient(circle at 50% 50%, rgb(var(--accent-2-rgb) / .35), rgb(var(--bg-rgb) / .2) 70%);box-shadow:inset 0 0 40px #ffffff2e, inset -20px -30px 60px rgb(var(--accent-2-rgb) / .35), 0 30px 80px -20px rgb(var(--accent-2-rgb) / .45);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:50%;position:absolute;inset:12%}main,.footer{z-index:2;position:relative}.glass{border-radius:var(--r-lg);-webkit-backdrop-filter:blur(22px)saturate(120%);backdrop-filter:blur(22px)saturate(120%);isolation:isolate;background:linear-gradient(155deg,#ffffff0f,#ffffff06 42%,#ffffff0a);position:relative;box-shadow:inset 0 1px #ffffff1a,inset 0 -1px #ffffff08,0 30px 70px -30px #000000b3}.glass:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;z-index:1;background:linear-gradient(135deg,#ffffff52,#ffffff14 28%,#fff0 55%,#ffffff1f);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.glass:after{content:"";border-radius:inherit;pointer-events:none;background:radial-gradient(520px circle at var(--mx,50%) var(--my,-30%), #ffffff17, transparent 62%);opacity:0;transition:opacity .6s var(--ease);z-index:0;position:absolute;inset:0}@media (hover:hover){.glass:hover:after{opacity:1}}html.q-low .glass{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(155deg, #ffffff0f, #ffffff04), rgb(var(--bg-rgb) / .5)}@media (min-width:901px){html.q-low .nav__bar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(155deg, #ffffff12, #ffffff05), rgb(var(--bg-rgb) / .7)}}html.q-low .bento__cell--object{background:linear-gradient(155deg,#ffffff0d,#ffffff03 50%)}.btn{letter-spacing:.005em;white-space:nowrap;isolation:isolate;height:54px;transition:background-color .4s var(--ease), color .4s var(--ease), box-shadow .6s var(--ease);border-radius:999px;align-items:center;gap:12px;padding:0 26px;font-size:15px;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.btn .i-arrow{width:15px;height:15px}@media (hover:hover){.btn:hover .i-arrow{transform:translate(2px,-2px)}}.btn--accent{background:var(--accent);color:var(--accent-ink);box-shadow:inset 0 1px 0 #ffffff73, inset 0 -2px 6px #0000001f, 0 12px 32px -16px rgb(var(--accent-rgb) / .4)}.btn--accent:before{content:"";transition:transform .9s var(--ease);z-index:-1;background:linear-gradient(110deg,#0000 30%,#ffffff8c 48%,#0000 66%);position:absolute;inset:0;transform:translate(-120%)}@media (hover:hover){.btn--accent:hover:before{transform:translate(120%)}}.btn--glass{-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);background:linear-gradient(155deg,#ffffff1f,#ffffff08);box-shadow:inset 0 1px #ffffff38,inset 0 0 0 1px #ffffff1a}@media (hover:hover){.btn--glass:hover{background:linear-gradient(155deg,#fff3,#ffffff0f)}}.link-arrow{border-bottom:1px solid var(--line-strong);align-items:center;gap:10px;margin-top:28px;padding-bottom:4px;font-weight:500;transition:border-color .4s;display:inline-flex}@media (hover:hover){.link-arrow:hover{border-color:var(--accent)}.link-arrow:hover .i-arrow{transform:translate(2px,-2px)}}.chip{transition:background-color .35s var(--ease), color .35s var(--ease), transform .5s var(--ease);background:#ffffff0b;border-radius:999px;align-items:center;padding:7px 14px;font-size:14px;line-height:1.3;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff1a}@media (hover:hover){.chip:hover{color:var(--fg);background:#ffffff1a}}.status{align-items:center;gap:10px;display:inline-flex}.status i{background:var(--muted);border-radius:50%;width:8px;height:8px;position:relative}.status.is-on i,.nav__status i{background:#3dff9a;box-shadow:0 0 12px #3dff9a}.status.is-on i:after,.nav__status i:after{content:"";animation:ping 2.4s var(--ease) infinite;border:1px solid #3dff9a;border-radius:50%;position:absolute;inset:-4px}@keyframes ping{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}.cursor{display:none}html.has-cursor .cursor{z-index:150;pointer-events:none;display:block;position:fixed;inset:0}html.has-cursor,html.has-cursor a,html.has-cursor button,html.has-cursor [data-lightbox]{cursor:none}html.has-cursor input,html.has-cursor textarea{cursor:text}.cursor__dot,.cursor__ring{will-change:transform;position:fixed;top:0;left:0}.cursor__dot{background:var(--fg);mix-blend-mode:difference;border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px;transition:opacity .3s}.cursor__ring{width:0;height:0}.cursor__ring:before{content:"";width:38px;height:38px;box-shadow:inset 0 0 0 1px rgb(var(--fg-rgb) / .45);transition:width .5s var(--ease), height .5s var(--ease), margin .5s var(--ease), background-color .4s var(--ease), box-shadow .4s var(--ease);border-radius:50%;margin:-19px 0 0 -19px;position:absolute;top:0;left:0}.cursor__label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);white-space:nowrap;opacity:0;transition:opacity .3s, transform .5s var(--ease);font-size:11px;font-weight:500;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(.6)}.cursor.is-link .cursor__ring:before{background:rgb(var(--fg-rgb) / .08);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);width:62px;height:62px;margin:-31px 0 0 -31px}.cursor.is-label .cursor__ring:before{background:var(--accent);width:72px;height:72px;margin:-36px 0 0 -36px}.cursor.is-label .cursor__label{opacity:1;transform:translate(-50%,-50%)scale(1)}.cursor.is-label .cursor__dot,.cursor.is-text .cursor__dot{opacity:0}.cursor.is-text .cursor__ring:before{background:var(--accent);width:2px;height:28px;box-shadow:none;border-radius:2px;margin:-14px 0 0 -1px}.cursor.is-down .cursor__ring:before{transform:scale(.85)}.cursor.is-hidden{opacity:0}html.is-dragging-glass,html.is-dragging-glass *{-webkit-user-select:none;user-select:none}.preloader{--r:0%;z-index:180;background:radial-gradient(50% 40% at 50% 55%, rgb(var(--accent-2-rgb) / .12), transparent 70%), var(--bg);-webkit-mask-image:radial-gradient(circle at 50% 52%, transparent var(--r), #000 calc(var(--r) + 0.6%));-webkit-mask-image:radial-gradient(circle at 50% 52%, transparent var(--r), #000 calc(var(--r) + 0.6%));mask-image:radial-gradient(circle at 50% 52%, transparent var(--r), #000 calc(var(--r) + 0.6%));place-items:center;display:grid;position:fixed;inset:0}html.is-preview .preloader{display:none}.preloader__frame{top:28px;left:var(--pad);right:var(--pad);color:var(--soft);justify-content:space-between;display:flex;position:absolute}.preloader__count{font-family:var(--font-display);letter-spacing:-.06em;font-variant-numeric:tabular-nums;padding-inline:.06em;font-size:clamp(80px,14vw,220px);font-weight:200;line-height:.9;overflow:hidden}.preloader__count span{display:block}.preloader__bar{left:var(--pad);right:var(--pad);background:var(--line);height:1px;position:absolute;bottom:40px}.preloader__bar i{background:var(--accent);box-shadow:0 0 18px var(--accent);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.nav{top:14px;left:var(--pad);right:var(--pad);z-index:60;transition:transform .7s var(--ease);position:fixed}.nav.is-hidden{transform:translateY(calc(-100% - 24px))}.nav__bar{height:var(--nav-h);background:linear-gradient(155deg, #ffffff14, #ffffff05), rgb(var(--bg-rgb) / .4);-webkit-backdrop-filter:blur(24px)saturate(150%);backdrop-filter:blur(24px)saturate(150%);border-radius:999px;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 10px 0 20px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff2e,inset 0 0 0 1px #ffffff14,0 20px 50px -20px #0009}.nav__logo{font-family:var(--font-display);letter-spacing:-.02em;justify-self:start;align-items:center;gap:12px;font-size:19px;font-weight:700;display:inline-flex}.nav__mark{background:radial-gradient(circle at 32% 28%, #fff 0, #fff6 16%, transparent 36%), radial-gradient(circle at 70% 75%, var(--accent), transparent 55%), radial-gradient(circle at 50% 50%, var(--accent-2), rgb(var(--bg-rgb)) 85%);width:26px;height:26px;box-shadow:inset 0 0 6px #fff6, 0 0 8px rgb(var(--accent-2-rgb) / .3);border-radius:50%;position:relative}.nav__mark i{border:1px solid #0000;border-top-color:var(--accent);border-radius:50%;animation:14s linear infinite paused spin;position:absolute;inset:-3px}@media (hover:hover){.nav__logo:hover .nav__mark i{animation-play-state:running}}@keyframes spin{to{transform:rotate(360deg)}}.nav__links{position:relative}.nav__links ul{gap:2px;display:flex}.nav__link{z-index:1;color:var(--soft);transition:color .4s var(--ease);border-radius:999px;align-items:baseline;gap:7px;padding:10px 16px;font-size:14px;font-weight:500;display:inline-flex;position:relative}.nav__link.is-active{color:var(--fg)}@media (hover:hover){.nav__link:hover{color:var(--fg)}}.nav__link-num{color:var(--muted);font-size:10px}.nav__link.is-active .nav__link-num{color:var(--accent)}.nav__indicator{opacity:0;height:100%;transition:transform .7s var(--ease), width .7s var(--ease), opacity .4s;background:#ffffff17;border-radius:999px;position:absolute;top:0;left:0;box-shadow:inset 0 1px #ffffff24}.nav__meta{color:var(--soft);justify-content:flex-end;align-items:center;gap:20px;padding-right:10px;font-size:13px;display:flex}.nav__status{align-items:center;gap:9px;display:inline-flex}.nav__status i{border-radius:50%;width:7px;height:7px;position:relative}.nav__clock{color:var(--fg);font-size:12px}.nav__burger{background:#ffffff14;border-radius:999px;align-items:center;gap:12px;height:46px;padding:0 8px 0 18px;font-size:14px;font-weight:500;display:none}.nav__burger-icon{background:var(--accent);border-radius:50%;width:30px;height:30px;position:relative}.nav__burger-icon i{background:var(--accent-ink);height:1.5px;transition:transform .5s var(--ease);position:absolute;left:9px;right:9px}.nav__burger-icon i:first-child{top:12px}.nav__burger-icon i:last-child{top:17px}html.menu-open .nav__burger-icon i:first-child{transform:translateY(2.5px)rotate(45deg)}html.menu-open .nav__burger-icon i:last-child{transform:translateY(-2.5px)rotate(-45deg)}.nav__progress{height:1px;position:absolute;bottom:0;left:28px;right:28px;overflow:hidden}.nav__progress i{background:linear-gradient(90deg, transparent, var(--accent));transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.menu{z-index:55;padding:calc(var(--nav-h) + 60px) var(--pad) 40px;background:rgb(var(--bg-rgb) / .88);-webkit-backdrop-filter:blur(30px)saturate(150%);backdrop-filter:blur(30px)saturate(150%);opacity:0;visibility:hidden;transition:opacity .6s var(--ease), visibility .6s;flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0}html.menu-open .menu{opacity:1;visibility:visible}.menu__link{font-family:var(--font-display);letter-spacing:-.04em;align-items:baseline;gap:16px;padding:6px 0;font-size:clamp(44px,12vw,88px);font-weight:650;line-height:1.02;display:flex;overflow:hidden}.menu__link-num{color:var(--accent);font-size:12px;display:inline-block}.menu__link-text{display:inline-block}.menu__foot{gap:18px;display:grid}.menu__email{font-size:18px}.menu__socials{flex-wrap:wrap;gap:8px 22px;display:flex}.menu__social{color:var(--soft);align-items:center;gap:6px;display:inline-flex}.line{margin-bottom:-.08em;padding-bottom:.08em;display:block;overflow:hidden}.line__inner{display:inline-block}.is-gl-type,.is-gl-type *{-webkit-text-fill-color:transparent}.is-gl-type .line{overflow:visible}.is-gl-type ::selection{-webkit-text-fill-color:var(--accent-ink)}.section{padding-block:clamp(80px,12vh,150px);position:relative;overflow-x:clip}.section-head{grid-template-columns:minmax(0,1fr) minmax(0,400px);align-items:end;gap:28px 48px;margin-bottom:clamp(40px,6vh,80px);display:grid}.section-head__label{color:var(--soft);grid-column:1/-1;align-items:center;gap:14px;display:flex}.section-head__label:after{content:"";width:calc(var(--rule,1) * 72px);background:var(--line-strong);height:1px}.section-head__num{color:var(--accent)}.section-head__title{font-family:var(--font-display);letter-spacing:-.036em;word-break:keep-all;font-size:clamp(44px,5.6vw,100px);font-weight:600;line-height:.94}.section-head__title em{letter-spacing:-.02em;font-size:1.04em}.section-head__title{width:-moz-fit-content;width:fit-content;position:relative}.section-head__count{letter-spacing:.04em;color:var(--muted);font-size:13px;position:absolute;top:.45em;left:calc(100% + .3em)}.section-head__intro{max-width:42ch;color:var(--soft);word-break:keep-all;font-size:17px;line-height:1.65}.hero{min-height:100vh;min-height:100svh;padding:0}.hero__inner{z-index:1;min-height:100vh;min-height:100svh;padding-top:calc(var(--nav-h) + 46px);grid-template-rows:auto 1fr auto;padding-bottom:34px;display:grid;position:relative}.hero__meta{color:var(--soft);justify-content:space-between;gap:24px;display:flex}.hero__role{gap:18px;display:flex}.hero__role span{color:var(--muted)}.hero__title{max-width:13ch;font-family:var(--font-display);letter-spacing:-.044em;word-break:keep-all;align-self:center;padding-block:4vh;font-size:clamp(64px,11.6vw,220px);font-weight:700;line-height:.88}.hero__title em{letter-spacing:-.03em;padding-right:.04em;font-size:1.06em}.hero__visual{z-index:0;left:var(--hero-visual-left,47%);width:var(--hero-visual-w,min(36vw, 620px));aspect-ratio:1;pointer-events:none;position:absolute;top:51%;transform:translateY(-50%)}.hero__foot{grid-template-columns:minmax(0,440px) 1fr;align-items:end;gap:32px;display:grid}.hero__intro{color:var(--soft);word-break:keep-all;font-size:17px;line-height:1.65}.hero__actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.hero__scroll{color:var(--muted);flex-direction:column;align-items:center;gap:12px;display:flex;position:absolute;bottom:34px;left:50%;transform:translate(-50%)}.hero__scroll i{background:var(--line);width:1px;height:46px;position:relative;overflow:hidden}.hero__scroll i:after{content:"";background:var(--accent);width:1px;height:50%;animation:drip 2.2s var(--ease-in-out) infinite;position:absolute;top:-50%;left:0}@keyframes drip{to{top:110%}}.marquee{z-index:2;-webkit-user-select:none;user-select:none;padding-block:clamp(24px,4vh,48px);position:relative;overflow:hidden}.marquee__row{white-space:nowrap;line-height:1}.marquee__track{will-change:transform;display:inline-flex}.marquee__group{align-items:center;display:inline-flex}.marquee__item{font-family:var(--font-display);letter-spacing:-.03em;color:rgb(var(--fg-rgb) / .5);padding-inline:.28em;font-size:clamp(30px,4vw,64px);font-weight:600;line-height:1.04}.marquee__sep{background:radial-gradient(circle at 32% 28%, #ffffff8c, transparent 45%), rgb(var(--accent-2-rgb) / .7);border-radius:50%;flex:none;width:.2em;height:.2em;font-size:clamp(30px,4vw,64px)}.about__lead{letter-spacing:-.025em;word-break:keep-all;max-width:24em;margin-bottom:clamp(64px,10vh,120px);font-size:clamp(28px,3.5vw,58px);font-weight:500;line-height:1.24}.about__lead em{font-size:1.08em}.bento{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:16px;display:grid}.bento__cell{border-radius:var(--r-xl);min-width:0;padding:clamp(24px,2.6vw,40px)}.bento__cell--object{background:radial-gradient(70% 60% at 50% 55%, rgb(var(--accent-2-rgb) / .12), transparent 70%), linear-gradient(155deg, #ffffff0d, #ffffff03 50%);-webkit-backdrop-filter:none;backdrop-filter:none;flex-direction:column;grid-area:span 2/span 5;justify-content:space-between;align-items:flex-start;min-height:480px;display:flex;overflow:hidden}.bento__anchor{pointer-events:none;position:absolute;inset:12%}.bento__tag{z-index:2;color:var(--fg);background:#ffffff12;border-radius:999px;padding:8px 14px;position:relative}.bento__note{z-index:2;color:var(--muted);position:relative}.bento__cell--wide{grid-column:span 6;min-height:400px}.bento__cell--full{grid-column:span 12;min-height:380px}.bento__cell--portrait{grid-area:span 2/span 3;min-height:480px;padding:0;overflow:hidden}.bento__cell--portrait img{object-fit:cover;width:100%;height:100%}.media.is-gl img{opacity:0}.bento__cell--body{flex-direction:column;grid-area:span 2/span 7;justify-content:center;display:flex}.bento--portrait .bento__cell--body{grid-column:span 4}.bento__cell--stat{grid-column:span var(--s,3);flex-direction:column;justify-content:space-between;gap:26px;min-height:190px;display:flex}.stat__value{font-family:var(--font-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;background:linear-gradient(180deg, var(--fg), rgb(var(--fg-rgb) / .55));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(44px,4vw,72px);font-weight:650;line-height:.9}.stat__label{color:var(--soft)}.bento__cell--status{grid-column:span 5;align-content:space-between;gap:28px;display:grid}.bento__cell--status .status{font-size:18px;font-weight:500}.status__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.status__list dt,.contact__info dt{color:var(--muted);margin-bottom:8px}.status__list dd{font-size:16px}.bento__cell--social{grid-column:span 7;align-content:space-between;gap:24px;display:grid}.bento__label{color:var(--muted)}.social-list{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.social-list__link{border-radius:var(--r);transition:background-color .4s var(--ease), color .4s var(--ease);background:#ffffff0a;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex;box-shadow:inset 0 0 0 1px #ffffff12}@media (hover:hover){.social-list__link:hover{background:var(--accent);color:var(--accent-ink)}.social-list__link:hover .i-arrow{transform:translate(2px,-2px)}}.social-list--inline{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}@media (min-width:901px){.social-list--inline:has(>li:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}}.prose{color:var(--soft);word-break:keep-all;font-size:17px;line-height:1.75}.prose>*+*{margin-top:1.1em}.prose strong{color:var(--fg);font-weight:600}.prose a{color:var(--fg);border-bottom:1px solid var(--accent)}.prose h2,.prose h3{color:var(--fg);font-family:var(--font-display);letter-spacing:-.03em;margin-top:2.2em;font-weight:600;line-height:1.1}.prose h2{font-size:clamp(28px,2.6vw,40px)}.prose h3{font-size:24px}.prose ul{padding:0;list-style:none}.prose ul li{padding-left:1.4em;position:relative}.prose ul li+li{margin-top:.45em}.prose ul li:before{content:"";background:var(--accent);width:7px;height:7px;box-shadow:0 0 10px rgb(var(--accent-rgb) / .6);border-radius:50%;position:absolute;top:.72em;left:0}.prose ol{padding-left:1.4em;list-style:decimal}.prose blockquote{border-left:2px solid var(--accent);font-family:var(--font-serif);color:var(--fg);margin:1.6em 0;padding-left:1.2em;font-size:1.5em;font-style:italic;line-height:1.35}.prose code{font-family:var(--font-mono);background:#ffffff14;border-radius:6px;padding:2px 6px;font-size:.88em}.prose img,.prose video{border-radius:var(--r-lg);width:100%;margin-block:2em}.prose hr{background:var(--line);border:0;height:1px;margin-block:2.6em}.embed{aspect-ratio:16/9;border-radius:var(--r-lg);margin-block:2em;display:block;position:relative;overflow:hidden}.embed iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.work__empty{border-radius:var(--r-xl);flex-wrap:wrap;align-items:center;gap:16px 20px;padding:clamp(26px,3.4vw,44px) clamp(28px,4vw,56px);display:flex}.work__empty-dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 8px var(--accent);border-radius:50%;flex:none}.work__empty .link-arrow{margin:0 0 0 auto}.work__empty-text{font-family:var(--font-display);letter-spacing:-.03em;word-break:keep-all;flex:200px;font-size:clamp(22px,2.2vw,34px);font-weight:600;line-height:1.15}.showcase__stage{display:none}.showcase__list{scroll-snap-type:x mandatory;padding:10px var(--pad) 26px;scrollbar-width:none;gap:18px;display:flex;overflow-x:auto}.showcase__list::-webkit-scrollbar{display:none}.showcase__item{scroll-snap-align:start;scroll-margin-inline:var(--pad);flex:0 0 min(80vw,600px)}.showcase__link{display:block}.showcase__media{aspect-ratio:16/10;border-radius:var(--r-lg);background:radial-gradient(80% 80% at 30% 20%, rgb(var(--accent-rgb) / .25), transparent 60%), #ffffff0a;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.showcase__media img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease)}@media (hover:hover){.showcase__link:hover .showcase__media img{transform:scale(1.04)}}.showcase__placeholder{font-family:var(--font-display);color:rgb(var(--fg-rgb) / .2);place-items:center;font-size:120px;font-weight:700;display:grid;position:absolute;inset:0}.showcase__info{gap:10px;padding-top:20px;display:grid}.showcase__index,.showcase__meta{color:var(--muted)}.showcase__title{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(30px,3.2vw,54px);font-weight:650;line-height:.98}.showcase__summary{max-width:46ch;color:var(--soft);-webkit-line-clamp:3;word-break:keep-all;-webkit-box-orient:vertical;font-size:15px;line-height:1.6;display:-webkit-box;overflow:hidden}.showcase__cta{border-bottom:1px solid var(--accent);align-items:center;gap:10px;width:max-content;margin-top:6px;padding-bottom:3px;font-size:14px;font-weight:500;display:inline-flex}@media (hover:hover){.showcase__link:hover .showcase__cta .i-arrow{transform:translate(2px,-2px)}}.showcase__ui{padding-inline:var(--pad);align-items:center;gap:14px;display:flex}.showcase__nav{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:50px;height:50px;transition:background-color .4s var(--ease), transform .5s var(--ease);background:linear-gradient(155deg,#ffffff1f,#ffffff08);border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 1px #fff3,inset 0 0 0 1px #ffffff14}@media (hover:hover){.showcase__nav:hover{background:var(--accent);color:var(--accent-ink)}}.showcase__nav .i-arrow{width:18px;height:18px}.showcase__progress{background:var(--line);border-radius:2px;width:140px;height:2px;position:relative;overflow:hidden}.showcase__progress i{background:var(--accent);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.showcase__count{min-width:64px;color:var(--muted)}.showcase__count b{color:var(--fg);font-weight:500}.showcase__hint{color:var(--muted);margin-left:auto}.showcase.is-3d .showcase__pin{height:100vh;touch-action:pan-y;-webkit-user-select:none;user-select:none;height:100svh;position:relative;overflow:hidden}.showcase.is-3d .showcase__pin a,.showcase.is-3d .showcase__pin img{-webkit-user-drag:none}.showcase.is-3d .showcase__stage,.showcase.is-3d .showcase__media{aspect-ratio:16/10;border-radius:22px;width:min(50vw,860px,160svh - 528px);display:block;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}.showcase.is-3d .showcase__media{box-shadow:none;background:0 0}.showcase.is-3d .showcase__media img,.showcase.is-3d .showcase__placeholder{opacity:0}.showcase.is-3d .showcase__list{padding:0;display:block;overflow:visible}.showcase.is-3d .showcase__item{pointer-events:none;position:absolute;inset:0}.showcase.is-3d .showcase__link{position:absolute;inset:0}.showcase.is-3d .showcase__item.is-active .showcase__media,.showcase.is-3d .showcase__item.is-active .showcase__cta{pointer-events:auto}.showcase.is-3d .showcase__info{left:var(--pad);gap:12px;width:min(34vw,470px);padding:0;position:absolute;bottom:clamp(28px,7vh,80px)}.showcase.is-3d .showcase__info>*{opacity:0;transition:opacity .45s var(--ease), transform .8s var(--ease);transform:translateY(28px)}.showcase.is-3d .showcase__item.is-before .showcase__info>*{transform:translateY(-28px)}.showcase.is-3d .showcase__item.is-active .showcase__info>*{opacity:1;transition:opacity .8s var(--ease), transform 1.1s var(--ease);transform:none}.showcase.is-3d .showcase__item.is-active .showcase__info>:nth-child(2){transition-delay:50ms}.showcase.is-3d .showcase__item.is-active .showcase__info>:nth-child(3){transition-delay:.1s}.showcase.is-3d .showcase__item.is-active .showcase__info>:nth-child(4){transition-delay:.15s}.showcase.is-3d .showcase__item.is-active .showcase__info>:nth-child(5){transition-delay:.2s}.showcase.is-3d .showcase__title{font-size:clamp(34px,4vw,70px)}.showcase.is-3d .showcase__ui{right:var(--pad);padding:0;position:absolute;bottom:clamp(28px,7vh,80px)}.showcase.is-3d .showcase__hint{margin:0;position:absolute;bottom:calc(100% + 18px);right:0}.showcase.is-3d.is-dragging{cursor:grabbing}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,4vw,64px) clamp(18px,2.4vw,36px);display:grid}.card:nth-child(4n+2),.card:nth-child(4n+3){margin-top:clamp(0px,8vw,140px)}.card__link{display:block}.card__media{aspect-ratio:4/3;border-radius:var(--r-lg);background:#ffffff0a;position:relative;overflow:hidden}.card__media img{object-fit:cover;width:100%;height:100%}.media--empty{font-family:var(--font-display);color:rgb(var(--fg-rgb) / .18);place-items:center;font-size:96px;display:grid}.card__info{grid-template-columns:auto 1fr auto;align-items:baseline;gap:16px;margin-top:20px;display:grid}.card__index,.card__year{color:var(--muted)}.card__title{font-family:var(--font-display);letter-spacing:-.035em;font-size:clamp(26px,2.6vw,42px);font-weight:650;line-height:1}.card__meta{color:var(--soft);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:10px;font-size:14px;display:flex}.card__tags{color:var(--muted)}.archive{margin-top:clamp(80px,12vh,150px)}.archive__title{color:var(--soft);gap:10px;padding-bottom:20px;display:flex}.archive__title span{color:var(--muted)}.archive__list{border-top:1px solid var(--line)}.archive__row a{border-bottom:1px solid var(--line);isolation:isolate;transition:color .4s var(--ease);grid-template-columns:90px minmax(0,2fr) minmax(0,1.4fr) minmax(0,1.2fr) 24px;align-items:center;gap:24px;padding:26px 18px;display:grid;position:relative}.archive__row a:before{content:"";z-index:-1;background:linear-gradient(90deg, rgb(var(--accent-rgb) / .1), rgb(var(--accent-rgb) / 0) 70%);transform-origin:bottom;transition:transform .7s var(--ease);position:absolute;inset:0;transform:scaleY(0)}@media (hover:hover){.archive__row a:hover:before{transform:scaleY(1)}}.archive__year{color:var(--muted)}.archive__name{font-family:var(--font-display);letter-spacing:-.03em;transition:transform .7s var(--ease);font-size:clamp(22px,2.2vw,34px);font-weight:600}@media (hover:hover){.archive__row a:hover .archive__name{transform:translate(10px)}}.archive__cat{color:var(--soft)}.archive__tags{color:var(--muted)}.archive__row .i-arrow{opacity:.6;width:20px;height:20px}@media (hover:hover){.archive__row a:hover .i-arrow{opacity:1;color:var(--accent);transform:translate(2px,-2px)}}.archive-preview{z-index:40;aspect-ratio:4/3;border-radius:var(--r);pointer-events:none;opacity:0;width:300px;transition:opacity .4s var(--ease), scale .6s var(--ease);position:fixed;top:0;left:0;overflow:hidden;scale:.85;box-shadow:0 30px 60px -20px #000000b3}.archive-preview.is-visible{opacity:1;scale:1}.archive-preview img{object-fit:cover;width:100%;height:100%}.skills{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,110px);display:grid}.skills__aside{top:calc(var(--nav-h) + 50px);align-self:start;position:sticky}.skills__aside .section-head{grid-template-columns:1fr;margin-bottom:40px}.skills__total{color:var(--soft);align-items:baseline;gap:16px;display:flex}.skills__total b{font-family:var(--font-display);letter-spacing:-.04em;color:var(--fg);font-size:clamp(48px,4.2vw,76px);font-weight:650;line-height:.9}.skills__visual{aspect-ratio:1;pointer-events:none;width:min(100%,420px);margin-top:30px;position:relative}.skills__groups{align-content:start;gap:16px;display:grid}.skill-card{padding:clamp(24px,2.4vw,36px)}.skill-card__head{margin-bottom:18px}.skill-card__name{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(24px,2.2vw,34px);font-weight:600;line-height:1.05}.chips{z-index:2;flex-wrap:wrap;gap:8px;display:flex;position:relative}.experience__visual{right:var(--pad);aspect-ratio:1;pointer-events:none;width:min(22vw,300px);position:absolute;top:clamp(100px,16vh,200px)}.timeline{border-top:1px solid var(--line)}.timeline__item{border-bottom:1px solid var(--line);isolation:isolate;grid-template-columns:180px minmax(0,1.25fr) minmax(0,1fr) 110px;align-items:start;gap:32px;padding:34px 18px;display:grid;position:relative}.timeline__item:before{content:"";z-index:-1;background:linear-gradient(90deg, rgb(var(--accent-rgb) / .09), transparent 75%);transform-origin:0;transition:transform .9s var(--ease);position:absolute;inset:0;transform:scaleX(0)}@media (hover:hover){.timeline__item:hover:before{transform:scaleX(1)}}.timeline__period{color:var(--soft);padding-top:8px}.timeline__role{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(22px,2.1vw,32px);font-weight:600;line-height:1.1}.timeline__company{color:var(--soft);margin-top:8px}.timeline__company a{border-bottom:1px solid var(--line-strong)}.timeline__company span{color:var(--muted)}.timeline__location:before,.showcase__meta span+span:before{content:" · "}[data-clock]{font-variant-numeric:tabular-nums}.timeline__desc{color:var(--soft);word-break:keep-all;padding-top:6px;font-size:15px;line-height:1.65}.timeline__kind{font-size:12px;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;justify-self:end}.chip--award{box-shadow:inset 0 0 0 1px rgb(var(--accent-rgb) / .5);color:var(--accent)}.chip--education{box-shadow:inset 0 0 0 1px rgb(var(--accent-2-rgb) / .6)}.contact__hero{margin-bottom:clamp(40px,6vh,70px);position:relative}.contact__title{z-index:1;max-width:12ch;font-family:var(--font-display);letter-spacing:-.042em;word-break:keep-all;font-size:clamp(52px,8vw,150px);font-weight:650;line-height:.9;position:relative}.contact__title em{letter-spacing:-.03em;font-size:1.06em}.contact__visual{aspect-ratio:1;pointer-events:none;width:min(21vw,340px);position:absolute;top:50%;right:4vw;transform:translateY(-50%)}.contact__mail{flex-wrap:wrap;align-items:center;gap:18px 28px;margin-bottom:clamp(60px,10vh,110px);display:flex}.contact__email{border-bottom:1px solid var(--line-strong);font-family:var(--font-display);letter-spacing:-.03em;transition:border-color .5s var(--ease);align-items:center;gap:18px;padding-bottom:6px;font-size:clamp(22px,2.6vw,42px);font-weight:600;display:inline-flex}.contact__email .i-arrow{width:.7em;height:.7em}@media (hover:hover){.contact__email:hover{border-color:var(--accent)}.contact__email:hover .i-arrow{color:var(--accent);transform:translate(4px,-4px)}}.contact__copy{color:var(--soft);background:#ffffff12;border-radius:999px;padding:10px 16px;transition:background-color .4s,color .4s;box-shadow:inset 0 0 0 1px #ffffff1a}@media (hover:hover){.contact__copy:hover{background:var(--fg);color:var(--bg)}}.contact__grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:clamp(32px,5vw,90px);display:grid}.contact__grid--noform{grid-template-columns:minmax(0,1fr)}.contact__text{max-width:34ch;color:var(--soft);word-break:keep-all;margin-bottom:44px;font-size:19px;line-height:1.6}.contact__info{gap:26px;display:grid}.contact__info dd{font-size:17px}.form{border-radius:var(--r-xl);gap:26px;padding:clamp(26px,3vw,46px);display:grid}.form__title{color:var(--soft)}.field{z-index:2;position:relative}.field input,.field textarea{border:0;border-bottom:1px solid var(--line-strong);width:100%;color:var(--fg);font:inherit;resize:vertical;background:0 0;border-radius:0;outline:none;padding:26px 0 12px;font-size:18px;transition:border-color .4s}.field textarea{min-height:130px}.field label{color:var(--muted);pointer-events:none;transform-origin:0 0;transition:transform .5s var(--ease), color .4s;font-size:18px;position:absolute;top:26px;left:0}.field input:focus,.field textarea:focus{border-color:var(--accent)}.field input:focus+label,.field input:not(:placeholder-shown)+label,.field textarea:focus+label,.field textarea:not(:placeholder-shown)+label{color:var(--accent);transform:translateY(-24px)scale(.72)}.field.is-invalid input,.field.is-invalid textarea{border-color:#ff5c7a}.field.is-invalid label{color:#ff5c7a}.form__hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form__foot{z-index:2;flex-wrap:wrap;align-items:center;gap:18px;display:flex;position:relative}.form__status{color:var(--soft);font-size:14px}.form__status.is-error{color:#ff7a90}.form.is-sending .btn{opacity:.6;pointer-events:none}.form__success[hidden]{display:none}.form__success{z-index:3;border-radius:inherit;background:var(--accent);color:var(--accent-ink);font-family:var(--font-display);letter-spacing:-.02em;text-align:center;place-items:center;padding:40px;font-size:clamp(24px,2.4vw,36px);font-weight:600;display:grid;position:absolute;inset:0}.custom__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(24px,4vw,64px);display:grid}.custom--image-left .custom__media{order:-1}.custom--image-right .custom__media{order:2}.custom--text .custom__grid{grid-template-columns:minmax(0,1fr);max-width:820px}.custom__media{border-radius:var(--r-xl);aspect-ratio:4/3;overflow:hidden}.custom__media img,.custom__media video{object-fit:cover;width:100%;height:100%}.custom__body{border-radius:var(--r-xl);padding:clamp(26px,3vw,46px)}.custom__body .btn{margin-top:28px}.custom__anchor{right:var(--pad);aspect-ratio:1;pointer-events:none;width:min(20vw,260px);position:absolute;top:12%}.footer{padding:clamp(40px,8vh,100px) 0 30px;overflow:hidden}.footer__big{white-space:nowrap;-webkit-user-select:none;user-select:none;margin-bottom:30px;line-height:.78}.kinetic{font-family:var(--font-display);letter-spacing:-.035em;background:linear-gradient(180deg, rgb(var(--fg-rgb) / .7), rgb(var(--fg-rgb) / .05) 85%);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:700;display:inline-block}.kinetic__ch{font-variation-settings:"wght" 700;display:inline-block}[data-kinetic] .kinetic__ch{font-variation-settings:"wght" 300}.footer__bar{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;padding-top:26px;font-size:14px;display:flex}.footer__top{color:var(--fg);align-items:center;gap:10px;display:inline-flex}@media (hover:hover){.footer__top:hover .i-arrow{transform:translateY(-3px)}}.pv{z-index:90;position:fixed;inset:0}.pv[hidden]{display:none}.pv__scroll{overscroll-behavior:contain;background:radial-gradient(60% 40% at 80% 0%, rgb(var(--accent-2-rgb) / .12), transparent 70%), var(--bg);position:absolute;inset:0;overflow-y:auto}.pv__close{top:18px;right:var(--pad);z-index:3;-webkit-backdrop-filter:blur(20px)saturate(160%);backdrop-filter:blur(20px)saturate(160%);background:linear-gradient(155deg,#ffffff24,#ffffff0a);border-radius:999px;align-items:center;gap:12px;height:52px;padding:0 10px 0 22px;font-size:14px;font-weight:500;display:inline-flex;position:fixed;box-shadow:inset 0 1px #ffffff38,inset 0 0 0 1px #ffffff1a}.pv__close i{background:var(--accent);border-radius:50%;width:34px;height:34px;position:relative}.pv__close i:before,.pv__close i:after{content:"";background:var(--accent-ink);height:1.5px;transition:transform .5s var(--ease);position:absolute;top:50%;left:10px;right:10px;transform:rotate(45deg)}.pv__close i:after{transform:rotate(-45deg)}@media (hover:hover){.pv__close:hover i:before{transform:rotate(135deg)}.pv__close:hover i:after{transform:rotate(45deg)}}html.pv-open{overflow:hidden}html.pv-open .nav{transform:translateY(calc(-100% - 24px))}.pd{--pc:var(--accent);max-width:1680px;padding:clamp(110px, 16vh, 170px) var(--pad) 0;margin-inline:auto}.pd__eyebrow{color:var(--soft);flex-wrap:wrap;gap:8px 22px;margin-bottom:30px;display:flex}.pd__eyebrow span:first-child{color:var(--pc)}.pd__title{font-family:var(--font-display);letter-spacing:-.052em;word-break:keep-all;font-size:clamp(56px,9.4vw,176px);font-weight:700;line-height:.9}.pd__intro{grid-template-columns:minmax(0,620px) 1fr;align-items:end;gap:32px;margin-top:clamp(32px,5vh,56px);display:grid}.pd__summary{color:var(--soft);word-break:keep-all;font-size:clamp(18px,1.5vw,22px);line-height:1.6}.pd__links{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.pd__cover{border-radius:var(--r-xl);aspect-ratio:16/9;background:#ffffff0a;margin-top:clamp(48px,8vh,90px);position:relative;overflow:hidden}.pd__cover img,.pd__cover video{object-fit:cover;width:100%;height:100%}.pd__overview{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:16px;margin-top:16px;display:grid}.pd__facts{border-radius:var(--r-xl);grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:26px 20px;padding:clamp(24px,2.6vw,40px);display:grid}.pd__facts dt{color:var(--muted);margin-bottom:8px}.pd__facts dd{z-index:2;font-size:16px;line-height:1.45;position:relative}.pd__metrics{align-content:start;gap:14px;display:grid}.pd__metrics-title{color:var(--muted)}.pd__metrics ul{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;display:grid}.pd__metrics li{border-radius:var(--r-xl);align-content:space-between;gap:18px;min-height:180px;padding:clamp(22px,2.2vw,34px);display:grid}.pd__metric-value{z-index:2;font-family:var(--font-display);letter-spacing:-.05em;color:var(--pc);font-size:clamp(44px,4.4vw,76px);font-weight:650;line-height:.9;position:relative}.pd__metric-label{z-index:2;color:var(--soft);word-break:keep-all;font-size:15px;position:relative}.pd__body{max-width:780px;margin:clamp(80px,14vh,150px) auto;font-size:18px}.pd__gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.pd__shot{border-radius:var(--r-xl);background:#ffffff0a;position:relative;overflow:hidden}.pd__shot--full{grid-column:1/-1}.pd__shot img,.pd__shot video{width:100%;height:auto;transition:transform 1.2s var(--ease)}.pd__shot[data-lightbox]{cursor:zoom-in}@media (hover:hover){.pd__shot[data-lightbox]:hover img{transform:scale(1.025)}}.pd__shot figcaption{background:rgb(var(--bg-rgb) / .6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--fg);border-radius:999px;padding:8px 12px;position:absolute;bottom:16px;left:16px}.pd__tags{flex-wrap:wrap;gap:8px;margin-top:clamp(50px,8vh,90px);display:flex}.pd__next{border-top:1px solid var(--line);isolation:isolate;gap:18px;margin-top:clamp(80px,14vh,160px);padding:clamp(60px,12vh,130px) 0 clamp(80px,14vh,160px);display:grid;position:relative}.pd__next-label{color:var(--soft)}.pd__next-title{font-family:var(--font-display);letter-spacing:-.05em;transition:color .5s var(--ease);align-items:center;gap:.3em;font-size:clamp(48px,8vw,150px);font-weight:700;line-height:.95;display:inline-flex}.pd__next-title .i-arrow{width:.55em;height:.55em}@media (hover:hover){.pd__next:hover .pd__next-title{color:var(--pc)}.pd__next:hover .pd__next-title .i-arrow{transform:translate(.08em,-.08em)}}.pd__next-media{z-index:-1;aspect-ratio:4/3;border-radius:var(--r-lg);opacity:0;width:min(32vw,460px);transition:opacity .6s var(--ease), transform .9s var(--ease);position:absolute;top:50%;right:0;overflow:hidden;transform:translateY(-40%)rotate(4deg)scale(.9)}.pd__next-media img{object-fit:cover;width:100%;height:100%}@media (hover:hover){.pd__next:hover .pd__next-media{opacity:1;transform:translateY(-50%)rotate(-2deg)scale(1)}}.lightbox{z-index:5;background:rgb(var(--bg-rgb) / .92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:zoom-out;place-items:center;padding:4vh 4vw;display:grid;position:fixed;inset:0}.lightbox[hidden]{display:none}.lightbox img{border-radius:var(--r);max-width:100%;max-height:88vh;box-shadow:0 40px 100px -30px #000c}.lightbox__close{top:22px;right:var(--pad);background:var(--accent);border-radius:50%;width:52px;height:52px;position:absolute}.lightbox__close i:before,.lightbox__close i:after{content:"";background:var(--accent-ink);height:1.5px;position:absolute;top:50%;left:16px;right:16px;transform:rotate(45deg)}.lightbox__close i:after{transform:rotate(-45deg)}.notfound{min-height:100vh;align-items:center;min-height:100svh;display:grid}.notfound__inner{z-index:1;justify-items:start;gap:32px;display:grid;position:relative}.notfound__code{color:var(--accent)}.notfound__title{max-width:14ch;font-family:var(--font-display);letter-spacing:-.05em;word-break:keep-all;font-size:clamp(48px,8vw,140px);font-weight:700;line-height:.92}.notfound__visual{aspect-ratio:1;pointer-events:none;width:min(36vw,560px);position:absolute;top:50%;right:8vw;transform:translateY(-50%)}.toast{z-index:160;background:var(--fg);color:var(--bg);opacity:0;pointer-events:none;transition:opacity .4s var(--ease), transform .6s var(--ease);border-radius:999px;padding:14px 22px;font-size:14px;font-weight:500;position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px)}.toast.is-visible{opacity:1;transform:translate(-50%)}@media (max-width:1180px){.nav__status{display:none}.bento__cell--object{grid-column:span 6}.bento__cell--object.bento__cell--full{grid-column:span 12}.bento__cell--body,.bento--portrait .bento__cell--portrait{grid-column:span 6}.bento--portrait .bento__cell--body{grid-area:auto/span 12}.timeline__item{grid-template-columns:150px minmax(0,1fr) minmax(0,1fr)}.timeline__kind{display:none}}@media (max-width:900px){:root{--nav-h:58px}.nav__bar{grid-template-columns:1fr auto;padding:0 6px 0 18px}.nav__links,.nav__meta{display:none}.nav__burger{display:inline-flex}.section-head{grid-template-columns:minmax(0,1fr)}.hero__title{max-width:none;font-size:clamp(56px,15.5vw,140px)}.hero__visual{width:min(54vw,380px);top:28%;left:auto;right:-3vw;transform:translateY(-50%)}.hero__foot{grid-template-columns:minmax(0,1fr)}.hero__actions{justify-content:flex-start}.hero__scroll{display:none}.bento__cell--object,.bento__cell--body,.bento__cell--status,.bento__cell--social,.bento--portrait .bento__cell--portrait{grid-column:span 12}.bento__cell--object{min-height:360px}.bento__cell--stat{grid-column:span 6;min-height:160px}.bento__cell--stat-last{grid-column:span 12}.skills{grid-template-columns:minmax(0,1fr)}.skills__aside{position:relative;top:auto}.skills__visual{opacity:.9;width:42vw;margin:0;position:absolute;top:0;right:0}.experience__visual{display:none}.timeline__item{grid-template-columns:minmax(0,1fr);gap:10px;padding:28px 4px}.timeline__period{padding:0}.contact__grid,.custom__grid{grid-template-columns:minmax(0,1fr)}.custom--image-right .custom__media{order:-1}.custom__anchor{display:none}.work-grid{grid-template-columns:minmax(0,1fr)}.card:nth-child(4n+2),.card:nth-child(4n+3){margin-top:0}.archive__row a{grid-template-columns:64px minmax(0,1fr) 20px;gap:14px;padding:22px 6px}.archive__cat,.archive__tags{display:none}.showcase.is-3d .showcase__stage,.showcase.is-3d .showcase__media{aspect-ratio:4/5;width:min(80vw,560px);top:38%}.showcase.is-3d .showcase__info{left:var(--pad);right:var(--pad);gap:8px;width:auto;bottom:100px}.showcase.is-3d .showcase__summary{display:none}.showcase.is-3d .showcase__ui{left:var(--pad);right:var(--pad);bottom:30px}.showcase.is-3d .showcase__progress{flex:1}.showcase.is-3d .showcase__hint{display:none}.pd__intro,.pd__overview{grid-template-columns:minmax(0,1fr)}.pd__links{justify-content:flex-start}.pd__gallery{grid-template-columns:minmax(0,1fr)}.pd__next-media{display:none}.notfound__visual{opacity:.8;width:70vw;right:-10vw}}@media (max-width:560px){.section:not(.hero){padding-block:clamp(64px,9vh,96px)}.work__empty{align-items:flex-start;row-gap:14px}.work__empty-dot{margin-top:8px}.work__empty .link-arrow{margin-left:30px}.hero__meta{flex-direction:column;gap:8px}.bento__cell--stat{min-height:140px}.stat__value{font-size:40px}.status__list,.pd__facts{grid-template-columns:minmax(0,1fr)}.btn{height:50px;padding:0 20px}}@media (max-width:900px){:root{--pad:max(clamp(20px, 4vw, 64px), env(safe-area-inset-left), env(safe-area-inset-right));--hv:min(48vw, 300px, 32svh)}[data-intro],[data-nav],[data-hero-title]{animation:none}.mono{font-family:var(--font-sans);letter-spacing:0;text-transform:none;font-size:14px;font-weight:450}em{letter-spacing:inherit;color:inherit;font-family:inherit;font-style:normal;font-weight:600}:is(h1,h2,h3,.hero__title,.section-head__title,.contact__title) em{font-size:inherit;font-weight:inherit;padding:0}.hero__title em{color:var(--accent)}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}html .glass,html.q-low .glass{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0}html:not(.has-gl) .backdrop{background:var(--bg)}html:not(.no-gl) [data-glass-anchor]:before{display:none}@media (hover:hover){.btn--glass:hover,.contact__copy:hover{color:var(--fg);background:0 0;text-decoration-thickness:2px}.social-list__link:hover{color:var(--accent);background:0 0}.chip:hover{background:0 0}}.glass:before,.glass:after,.btn:before{display:none}a,button{-webkit-tap-highlight-color:transparent}a:active,button:active{opacity:.6}input,textarea{caret-color:var(--accent)}.hero__actions .i-arrow,.link-arrow .i-arrow,.contact__email .i-arrow,.archive__row .i-arrow,.form .btn .i-arrow,.showcase__cta .i-arrow,.preloader{display:none}.nav{top:0;left:0;right:0}.nav.is-hidden{transform:translateY(-100%)}.nav__bar{padding:0 var(--pad);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;transition:background-color .4s var(--ease), box-shadow .4s var(--ease);background:0 0;border-radius:0}.nav.is-scrolled .nav__bar,html.menu-open .nav__bar{background:var(--bg);box-shadow:inset 0 -1px 0 var(--line)}.nav__progress{display:none}.nav__logo{letter-spacing:-.01em;gap:10px;min-height:44px;font-size:17px}.nav__mark{background:var(--accent);width:12px;height:12px;box-shadow:none}.nav__mark i{display:none}.nav__burger{background:0 0;border-radius:0;gap:2px;height:44px;padding:0 0 0 12px;font-size:15px}.nav__burger-icon{background:0 0}.nav__burger-icon i{background:var(--fg);left:7px;right:7px}.menu{padding:calc(var(--nav-h) + 20px) var(--pad) max(32px, env(safe-area-inset-bottom));background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}.menu__link{border-bottom:1px solid var(--line);letter-spacing:-.02em;padding:14px 0;font-size:30px;font-weight:600;line-height:1.15}.menu__link-num{display:none}.menu__email{align-items:center;min-height:44px;font-size:17px;display:inline-flex}.menu__socials{grid-template-columns:repeat(2,max-content);gap:0 28px;display:grid}.menu__social{min-height:44px}.hero{min-height:0}.hero__inner{min-height:0;padding-top:calc(var(--nav-h) + 18vh);flex-direction:column;gap:20px;padding-bottom:40px;display:flex}.hero:has(.hero__visual) .hero__inner{padding-top:calc(var(--nav-h) + 36px + var(--hv))}.hero__visual{top:calc(var(--nav-h) + 12px);width:var(--hv);right:12px;transform:none}.hero__title{font-size:var(--hero-fit,clamp(44px, calc((100vw - 2 * var(--pad)) / (var(--hero-chars,9) * .48)), 96px));letter-spacing:-.035em;order:1;align-self:stretch;padding-block:0;line-height:.92}.hero__title[data-hero-short] .line__inner{white-space:nowrap}.hero__meta{order:2;display:block}:is(.hero__meta:not(:has(>.hero__role)),.hero__foot:not(:has(>.hero__intro,>.hero__actions))){display:none}.hero+.marquee{margin-top:-16px}.hero__eyebrow{display:none}.hero__role{color:var(--soft);font-size:16px;line-height:1.5;display:block}.hero__role span{display:block}.hero__foot{order:3;gap:24px;display:grid}.hero__foot>span:empty{display:none}.hero__intro{max-width:36ch;color:var(--soft);font-size:17px;line-height:1.6}.hero__actions{align-items:center;gap:8px 24px}.btn{height:48px;padding:0 22px}.btn--accent{background:var(--accent);color:var(--accent-ink);box-shadow:none}.btn--glass{-webkit-backdrop-filter:none;backdrop-filter:none;height:44px;box-shadow:none;text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:6px;background:0 0;border-radius:0;padding:0;text-decoration-thickness:1px}.link-arrow{border-bottom-color:var(--accent);margin-top:0;padding-bottom:2px}.section:not(.hero){padding-block:64px}.section-head{gap:14px;margin-bottom:28px}.section-head__label,.section-head__count{display:none}:is(.section-head__title,.contact__title):not(.is-gl-type) :is(.line,.line__inner){display:inline}.section-head__title{letter-spacing:-.03em;font-size:clamp(34px,9.6vw,44px);font-weight:620;line-height:1.02}.section-head__intro{max-width:36ch;font-size:16px;line-height:1.65}.marquee--echo{display:none}.marquee{padding-block:8px 0}.marquee__row{padding-inline:var(--pad);white-space:normal}.marquee__track{display:block;transform:none!important}.marquee__group+.marquee__group,.marquee__sep{display:none}.marquee__group{display:block}.marquee__item{color:var(--soft);letter-spacing:-.01em;padding:0;font-size:20px;font-weight:500;line-height:1.45;display:inline}.marquee__group>.marquee__item:not(:nth-last-child(2)):after{content:", "}.about__lead{letter-spacing:-.01em;margin-bottom:32px;font-size:21px;line-height:1.5}.bento{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.bento__cell{border-radius:0;padding:0}.bento__cell--object[data-empty],.bento__tag,.bento__note{display:none}.bento__cell--object{grid-column:1/-1;min-height:240px;margin-bottom:24px}.bento__cell--body,.bento__cell--portrait,.bento__cell--status,.bento__cell--social{grid-column:1/-1}.bento__cell--body{padding-bottom:28px}.bento__cell--portrait{aspect-ratio:4/5;border-radius:14px;min-height:0;margin-bottom:28px}.bento__cell--stat,.bento__cell--stat-last{grid-column:span 1;justify-content:flex-start;gap:4px;min-height:0;padding:0 0 20px}.stat__value{color:var(--fg);-webkit-text-fill-color:currentColor;background:0 0;font-size:32px}.stat__label{color:var(--muted)}.bento__cell--status,.bento__cell--social{padding:0 0 24px}.status.is-on i{box-shadow:none}.status.is-on i:after{display:none}.work__empty{border-radius:0;padding:0;display:block}.work__empty-dot{display:none}.work__empty-text{font-family:var(--font-sans);letter-spacing:0;color:var(--soft);font-size:18px;font-weight:450;line-height:1.55}.work__empty .link-arrow{margin:14px 0 0}.showcase:not(.is-3d) .showcase__list{padding:0 var(--pad);scroll-snap-type:none;gap:48px;display:grid;overflow:visible}.showcase:not(.is-3d) .showcase__item{flex:none}.showcase__media{aspect-ratio:4/3;background:rgb(var(--fg-rgb) / .05);box-shadow:none;border-radius:14px}.showcase:not(.is-3d) :is(.showcase__index,.showcase__cta,.showcase__ui){display:none}.showcase__info{gap:6px;padding-top:16px}.showcase__title{letter-spacing:-.02em;font-size:24px;line-height:1.15}.showcase__summary{-webkit-line-clamp:2;font-size:15px}.archive__title{color:var(--fg);font-size:17px;font-weight:600}.archive__row a{grid-template-columns:56px minmax(0,1fr);padding:18px 0}.archive__row a:before{display:none}.archive__name{font-size:19px}.skills{gap:0}.skills__aside .section-head{margin-bottom:20px}.skills__total{display:none}.skills__groups{gap:0}.skill-card{border-radius:0;padding:0 0 24px}.skill-card__head{margin-bottom:6px}.skill-card__name{font-family:var(--font-sans);letter-spacing:-.01em;font-size:17px;font-weight:600;line-height:1.3}:is(.chips,.pd__tags){color:var(--soft);font-size:16px;line-height:1.6;display:block}:is(.chips,.pd__tags) .chip{box-shadow:none;font-size:inherit;line-height:inherit;background:0 0;border-radius:0;padding:0;display:inline}:is(.chips,.pd__tags) .chip:not(:last-child):after{content:", "}.timeline{border-top:0}.timeline__item{border-bottom:0;gap:6px;padding:0 0 28px}.timeline__item:before,.timeline__kind{display:none}.timeline__period{color:var(--muted)}.timeline__role{font-size:20px}.timeline__company{margin-top:2px}.timeline__location{display:block}.timeline__location:before{content:none}.showcase__meta span+span:before{content:", "}.timeline__desc{padding-top:4px;font-size:15px}.contact__visual{display:none}.contact__title{letter-spacing:-.03em;font-size:clamp(38px,11vw,56px);line-height:1}.contact__mail{flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:40px}.contact__email{border-bottom-color:var(--accent);gap:0;min-height:44px;font-size:22px}.contact__copy{height:44px;box-shadow:none;color:var(--soft);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:5px;background:0 0;border-radius:0;padding:0}.contact__grid{gap:48px}.contact__info{gap:20px}.contact__info dt{color:var(--muted);margin-bottom:4px}.social-list--inline{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:0}.social-list__link{border-bottom:1px solid var(--line);min-height:52px;box-shadow:none;background:0 0;border-radius:0;padding:0}.form{border-radius:0;gap:20px;padding:0}.form__title{color:var(--fg);font-size:19px;font-weight:600}.form .btn{justify-content:center;width:100%}.footer{padding-top:40px}.footer__big{margin-bottom:18px}.kinetic{color:var(--muted);-webkit-text-fill-color:currentColor;background:0 0}.footer__bar{padding:24px 0 max(28px, env(safe-area-inset-bottom));flex-direction:column;align-items:flex-start;gap:4px}.footer__top{min-height:44px;color:var(--fg);align-items:center;gap:8px;margin-top:8px;display:inline-flex}.pv__scroll{background:var(--bg)}.pv__close{-webkit-backdrop-filter:none;backdrop-filter:none;height:44px;box-shadow:none;background:0 0;border-radius:0;gap:2px;padding:0 0 0 12px;font-size:15px;top:6px}.pv__close i{background:0 0;width:30px;height:30px}.pv__close i:before,.pv__close i:after{background:var(--fg);left:8px;right:8px}.pd__hero{flex-direction:column;display:flex}.pd__title{order:1}.pd__eyebrow{order:2;margin:16px 0 0}.pd__intro{order:3}.pd__eyebrow span:first-child{display:none}.pd__shot{background:0 0;border-radius:0;overflow:visible}.pd__shot img,.pd__shot video{border-radius:14px}.pd__shot figcaption{-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--muted);background:0 0;border-radius:0;padding:10px 0 0;position:static}.pd__next .i-arrow{display:none}.pd__title{letter-spacing:-.035em}.pv:before{content:"";z-index:2;background:var(--bg);height:56px;box-shadow:inset 0 -1px 0 var(--line);pointer-events:none;position:fixed;top:0;left:0;right:0}.pd__facts{border-radius:0;padding:0}.pd__metrics ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.pd__metrics li{border-radius:0;align-content:start;gap:4px;min-height:0;padding:0 0 18px}.pd__metric-value{letter-spacing:-.02em;color:var(--fg);font-size:28px;line-height:1.1}.pd__metric-label{color:var(--muted);font-size:14px}.prose ul li:before{background:var(--muted);width:5px;height:5px;box-shadow:none}.section.notfound{padding-top:calc(var(--nav-h) + 36px + var(--hv));align-items:start}.notfound__inner{flex-direction:column;align-items:flex-start;gap:20px;display:flex}.notfound__title{order:1}.notfound__code{color:var(--muted);order:2}.notfound__inner .btn{order:3;margin-top:8px}.notfound__visual{top:calc(var(--nav-h) + 12px);width:var(--hv);opacity:1;right:12px;transform:none}.custom__body{border-radius:0;padding:0}.notfound .btn .i-arrow{display:none}}@media (min-width:640px) and (max-width:900px){.showcase:not(.is-3d) .showcase__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 24px}.skills__groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;display:grid}}@media (max-width:900px) and (orientation:landscape) and (max-height:520px){.hero__visual,.notfound__visual{display:none}:is(.hero:has(.hero__visual) .hero__inner,.section.notfound){padding-top:calc(var(--nav-h) + 8vh)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
