.about__intro{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:end;gap:clamp(32px,6vw,96px);display:grid}.about__text{max-width:62ch;font-family:var(--font-display);color:var(--text-soft);font-size:clamp(1.08rem,1.35vw,1.25rem);line-height:1.65}.about__stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:clamp(48px,6vw,80px);display:grid}.stat{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);-webkit-backdrop-filter:blur(16px)saturate(150%);flex-direction:column;gap:10px;padding:clamp(20px,2.4vw,28px);display:flex}.stat__value{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--accent-ink);font-size:clamp(2.2rem,3.6vw,3rem);font-weight:500;line-height:1}.stat__label{color:var(--muted);font-size:.9rem;line-height:1.5}@media (width<=1024px){.about__intro{grid-template-columns:1fr;gap:24px}.about__stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=479px){.about__stats{grid-template-columns:1fr}}.avatar-stage{z-index:1;width:100%;height:var(--vh);pointer-events:none;min-height:560px;position:absolute;top:0;left:0}.avatar-stage__frame{--avatar-top-inset:0px;width:min(1000px,72vw);height:calc(100% - var(--header-h));position:absolute;bottom:0;left:50%;translate:-50%;-webkit-mask-image:linear-gradient(#000 72%,#0000 98%);mask-image:linear-gradient(#000 72%,#0000 98%)}@media (width<=1024px){.avatar-stage{min-height:620px}.avatar-stage__frame{width:100%;height:80%;left:0;translate:none;-webkit-mask-image:linear-gradient(#000 62%,#0000 96%);mask-image:linear-gradient(#000 62%,#0000 96%)}}@media (width>=1025px) and (height>=700px) and (prefers-reduced-motion:no-preference){.avatar-stage{height:auto;min-height:0;position:fixed;inset:0}.avatar-stage__frame{--avatar-top-inset:var(--header-h);width:100%;height:100%;inset:0;translate:none;-webkit-mask-image:linear-gradient(#000 78%,#0000 99%);mask-image:linear-gradient(#000 78%,#0000 99%)}}.career__timeline{--track-x:50%;margin-top:clamp(56px,7vw,96px);padding-block:16px;position:relative}.career__list{flex-direction:column;gap:clamp(56px,7vw,96px);display:flex}.career__track{top:0;bottom:0;left:var(--track-x);background:var(--line);width:1px;position:absolute}.career__progress{background:linear-gradient(to bottom, var(--accent-soft), var(--blue));transform-origin:top;box-shadow:0 0 12px var(--accent-tint);position:absolute;inset:0}.career__item{grid-template-columns:1fr 1fr;column-gap:clamp(64px,10vw,160px);display:grid;position:relative}.career__dot{top:18px;left:var(--track-x);border:2px solid var(--line);background:var(--bg);width:13px;height:13px;transition:border-color .4s var(--ease-out), box-shadow .4s var(--ease-out), background-color .4s var(--ease-out);border-radius:50%;position:absolute;translate:-50%}.career__item.is-active .career__dot{border-color:var(--accent);background-color:var(--accent);box-shadow:0 0 0 6px var(--accent-tint)}.career__head{text-align:right;flex-direction:column;align-items:flex-end;gap:6px;display:flex}.career__year{font-family:var(--font-display);color:var(--accent-soft);opacity:.85;font-size:clamp(3rem,6vw,5rem);font-weight:400;line-height:1}.career__title{flex-direction:row-reverse;align-items:center;gap:14px;margin-top:8px;display:flex}.career__role{font-size:clamp(1.25rem,2vw,1.6rem)}.career__org{color:var(--accent-ink);font-weight:500}.career__period{color:var(--muted);font-size:.9rem}.career__body{color:var(--muted);flex-direction:column;gap:14px;padding-top:16px;display:flex}.career__body li{padding-left:22px;position:relative}.career__body li:before{content:"";background:var(--accent);width:10px;height:1px;position:absolute;top:.75em;left:0}@media (width<=767px){.career__timeline{--track-x:6px}.career__item{grid-template-columns:1fr;row-gap:8px;padding-left:40px}.career__dot{top:10px}.career__head{text-align:left;align-items:flex-start}.career__title{flex-direction:row}.career__body{padding-top:8px}}@media (prefers-reduced-motion:reduce){.career__dot{border-color:var(--accent)}}.education{margin-top:clamp(72px,9vw,120px)}.education__title{font-size:clamp(1.6rem,2.6vw,2.1rem)}.education__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px;display:grid}.education__card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);-webkit-backdrop-filter:blur(16px)saturate(150%);flex-direction:column;gap:14px;padding:clamp(22px,2.6vw,32px);display:flex}.education__head{align-items:center;gap:16px;display:flex}.education__degree{font-size:clamp(1.2rem,1.8vw,1.45rem)}.education__school{color:var(--accent-deep);margin-top:4px;font-weight:500}.education__period{color:var(--muted);font-size:.9rem}.education__details{color:var(--text-soft);flex-direction:column;gap:8px;display:flex}.education__details li{padding-left:22px;position:relative}.education__details li:before{content:"";background:var(--accent-soft);width:10px;height:1px;position:absolute;top:.75em;left:0}@media (width<=767px){.education__list{grid-template-columns:1fr}}.org-logo{--size:48px;width:var(--size);height:var(--size);border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.org-logo--lg{--size:56px;border-radius:14px}.org-logo img{object-fit:contain;width:100%;height:100%}.org-logo--monogram{background:var(--accent-tint);border-color:color-mix(in srgb, var(--accent-soft) 35%, transparent)}.org-logo__monogram{font-family:var(--font-display);font-size:calc(var(--size) * .42);color:var(--accent-deep);font-weight:600;line-height:1}.contact{border-top:1px solid var(--line);padding-bottom:32px}.contact__title{max-width:14ch}.contact__grid{grid-template-columns:1.4fr 1fr 1fr;gap:40px;margin-top:clamp(48px,6vw,88px);display:grid}.contact__block{flex-direction:column;align-items:flex-start;gap:12px;min-width:0;display:flex}.contact__label{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:500}.contact__email{max-width:100%;font-family:var(--font-display);overflow-wrap:anywhere;transition:background-size .5s var(--ease-out), color .3s var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;font-size:clamp(1.25rem,2.6vw,2rem);font-weight:600}.contact__email:hover{color:var(--accent-ink);background-size:100% 1px}.contact__copy{border:1px solid var(--line);cursor:pointer;min-height:44px;transition:border-color .3s var(--ease-out), color .3s var(--ease-out);background:0 0;border-radius:999px;padding:8px 18px;font-size:.9rem}.contact__copy:hover{border-color:var(--accent);color:var(--accent-ink)}.contact__socials{flex-direction:column;gap:4px;display:flex}.contact__social{min-height:44px;font-family:var(--font-display);transition:color .3s var(--ease-out);align-items:center;gap:10px;font-size:1.4rem;font-weight:500;display:inline-flex}.contact__social:hover{color:var(--accent-ink)}.contact__text{font-size:1.1rem}.contact__text--muted{color:var(--muted);font-size:.95rem}.contact__footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:clamp(80px,10vw,140px);padding-top:24px;font-size:.85rem;display:flex}@media (width<=1024px){.contact__grid{grid-template-columns:1fr 1fr}.contact__block:first-child{grid-column:1/-1}}@media (width<=479px){.contact__grid{grid-template-columns:1fr}}.cursor{z-index:95;border:1px solid var(--accent);pointer-events:none;opacity:0;mix-blend-mode:difference;width:36px;height:36px;transition:opacity .3s var(--ease-out), scale .4s var(--ease-out), background-color .4s var(--ease-out);border-radius:50%;margin:-18px 0 0 -18px;position:fixed;top:0;left:0}.cursor.is-visible{opacity:1}.cursor.is-hovering{background-color:var(--accent-tint);scale:1.8}.hero{height:var(--vh);min-height:560px;position:relative;overflow-x:clip}.hero__content{z-index:2;height:100%;padding-top:var(--header-h);grid-template-columns:1fr minmax(240px,32vw) 1fr;grid-template-areas:"intro.info";align-items:center;padding-bottom:96px;display:grid;position:relative}.hero__intro{flex-direction:column;grid-area:intro;align-items:flex-start;gap:20px;display:flex}.hero__hello{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-soft);border-radius:999px;align-items:center;gap:10px;padding:7px 16px;font-size:.76rem;font-weight:500;display:inline-flex}.hero__hello-dot{background:var(--accent-soft);border-radius:50%;width:7px;height:7px}.hero__name{letter-spacing:-.04em;color:var(--text);flex-direction:column;font-size:clamp(3rem,min(7.4vw,13.5vh),7.5rem);font-weight:400;line-height:.95;display:flex}.hero__name-line--accent{color:var(--accent-deep)}.hero__info{text-align:right;flex-direction:column;grid-area:info;justify-self:end;align-items:flex-end;gap:14px;max-width:340px;display:flex}.hero__role{font-family:var(--font-display);letter-spacing:-.035em;color:var(--text);flex-direction:column;align-items:flex-end;font-size:clamp(2rem,min(3.8vw,7vh),3.6rem);font-weight:400;line-height:1;display:flex}.hero__role-words{justify-items:end;padding-bottom:.06em;display:inline-grid;overflow:hidden}.hero__role-word{white-space:nowrap;grid-area:1/1}.hero__role-word:not(:first-child){visibility:hidden}.hero__location{color:var(--text-soft);align-items:center;gap:12px;font-size:.98rem;font-weight:500;display:inline-flex}.hero__rule{background:var(--accent-soft);border-radius:2px;width:36px;height:2px}.hero__tagline{color:var(--text-soft);font-size:.95rem;line-height:1.55}.hero__cta{z-index:2;white-space:nowrap;color:var(--text);transition:box-shadow .3s var(--ease-out), translate .3s var(--ease-out);border-radius:999px;align-items:center;gap:10px;padding:14px 26px;font-weight:600;display:inline-flex;position:absolute;bottom:clamp(28px,6vh,56px);left:50%;translate:-50%}.hero__cta svg{color:var(--accent-ink);transition:translate .3s var(--ease-out)}@media (hover:hover){.hero__cta:hover{translate:-50% -2px}.hero__cta:hover svg{translate:4px}}@media (width<=1024px){.hero{min-height:640px}.hero__content{padding-top:calc(var(--header-h) + 8px);grid-template:"intro""."1fr"info"/1fr;align-items:start;padding-bottom:0}.hero__intro{gap:14px}.hero__name{flex-flow:wrap;column-gap:.22em;font-size:clamp(2.6rem,11vw,4.5rem)}.hero__info{text-align:left;max-width:none;margin-inline:calc(-1 * var(--gutter));padding:56px var(--gutter) 108px;background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--bg) 92%, transparent) 48px);justify-self:stretch;align-items:flex-start;gap:10px}.hero__role{align-items:flex-start;font-size:clamp(1.7rem,8vw,2.6rem)}.hero__role-words{justify-items:start}.hero__tagline{max-width:52ch}.hero__cta{bottom:28px}}.nav{z-index:50;color:var(--text);height:var(--header-h);transition:padding-top .5s var(--ease-out);padding-top:0;position:fixed;inset:0 0 auto}.nav__inner{height:100%;transition:max-width .6s var(--ease-out), height .5s var(--ease-out), padding .5s var(--ease-out), background-color .5s var(--ease-out), box-shadow .5s var(--ease-out), border-color .5s var(--ease-out);border:1px solid #0000;border-radius:999px;justify-content:space-between;align-items:center;gap:24px;display:flex}.nav--scrolled{padding-top:10px}.nav--scrolled .nav__inner{max-width:min(1180px, calc(100% - 2 * var(--gutter)));background:var(--nav-glass);-webkit-backdrop-filter:blur(18px)saturate(170%);border-color:var(--glass-border);height:58px;box-shadow:var(--glass-shadow);padding-inline:10px}.nav__actions{z-index:2;align-items:center;gap:10px;display:flex;position:relative}.nav__logo{z-index:2;align-items:center;gap:12px;display:inline-flex;position:relative}.nav__mark{background:var(--accent);width:38px;height:38px;color:var(--bg-solid);letter-spacing:.02em;border-radius:10px;place-items:center;font-size:.85rem;font-weight:700;display:grid;box-shadow:inset 0 -2px #00000024}.nav__name{color:var(--text);font-size:1rem;font-weight:600}.nav__menu{gap:clamp(20px,3vw,40px);display:flex}.nav__link{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;align-items:baseline;gap:6px;font-size:.8rem;font-weight:500;display:inline-flex}.nav__link-label{line-height:1.4;display:inline-block;position:relative;overflow:hidden}.nav__link-label:after{content:attr(data-text);color:var(--accent-ink);position:absolute;top:100%;left:0}.nav__link-label,.nav__link-label:after{transition:transform .45s var(--ease-out)}@media (hover:hover){.nav__link:hover .nav__link-label{transform:translateY(-100%)}.nav__link:hover .nav__link-label:after{transform:translateY(0)}}.nav__cta{z-index:2;transition:background-color .3s var(--ease-out), color .3s var(--ease-out);border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;display:inline-flex;position:relative}.nav__cta-dot{background:var(--accent-soft);width:8px;height:8px;box-shadow:0 0 0 3px var(--accent-tint);border-radius:50%}.nav__cta:hover{background-color:var(--text);color:var(--bg)}.nav__toggle{display:none}@media (width<=767px){.nav__cta{display:none}.nav__actions{order:2;margin-left:auto}.nav__inner>nav{order:3}.nav__toggle{z-index:2;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-content:center;gap:6px;width:44px;height:44px;padding:0;display:grid;position:relative}.nav__toggle-bar{width:18px;height:1.5px;transition:transform .4s var(--ease-out);background:currentColor;display:block}.nav--open .nav__toggle-bar--top{transform:translateY(3.75px)rotate(45deg)}.nav--open .nav__toggle-bar--bottom{transform:translateY(-3.75px)rotate(-45deg)}.nav__menu{z-index:1;padding:var(--header-h) var(--gutter) 48px;background:var(--bg);clip-path:circle(0 at calc(100% - var(--gutter) - 22px) calc(var(--header-h) / 2));visibility:hidden;transition:clip-path .7s var(--ease-out), visibility 0s linear .7s;flex-direction:column;justify-content:center;gap:8px;position:fixed;inset:0}.nav--open .nav__menu{clip-path:circle(150% at calc(100% - var(--gutter) - 22px) calc(var(--header-h) / 2));visibility:visible;transition:clip-path .7s var(--ease-out), visibility 0s}.nav__menu li{opacity:0;transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);transform:translateY(24px)}.nav--open .nav__menu li{opacity:1;transition-delay:calc(.15s + var(--i) * 60ms);transform:none}.nav__link{font-family:var(--font-display);gap:14px;font-size:clamp(2.5rem,12vw,3.5rem);font-weight:600}.nav__link-index{font-size:.9rem}}.nav--open .nav__inner{-webkit-backdrop-filter:none;box-shadow:none;background:0 0;border-color:#0000}:root.is-immersive .nav{--text:#eef2fa;--text-soft:#d3dbea;--accent-ink:#f1cf7c;--accent-soft:#e5bd62;--bg-solid:#18203d;--glass-bg:linear-gradient(135deg, #46548c61, #141a344d);--nav-glass:linear-gradient(135deg, #263058db, #141a34c7);--glass-border:#ffffff29;--glass-shadow:0 10px 34px #00000059, inset 0 1px 0 #ffffff24}.theme-toggle{z-index:2;width:42px;height:42px;color:var(--text);cursor:pointer;transition:transform .4s var(--ease-out), color .3s var(--ease-out);border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.theme-toggle__icon{transition:rotate .6s var(--ease-out)}@media (hover:hover){.theme-toggle:hover{color:var(--accent-ink)}.theme-toggle:hover .theme-toggle__icon{rotate:25deg}}.services__list{flex-direction:column;gap:16px;margin-top:clamp(40px,5vw,64px);display:flex}.service{border:1px dashed var(--line);background:var(--card);-webkit-backdrop-filter:blur(6px);transition:border-color .4s var(--ease-out), background-color .4s var(--ease-out);position:relative}.service.is-open{border-color:var(--accent-soft);background:var(--card-strong);box-shadow:var(--shadow)}.service__corners,.service__corners:before,.service__corners:after,.service:before,.service:after{content:"";border:0 solid var(--muted);pointer-events:none;width:14px;height:14px;transition:border-color .4s var(--ease-out);position:absolute}.service:before{border-top-width:2px;border-left-width:2px;top:-1px;left:-1px}.service:after{border-top-width:2px;border-right-width:2px;top:-1px;right:-1px}.service__corners{border:0;width:auto;height:0;inset:auto 0 0}.service__corners:before{border-bottom-width:2px;border-left-width:2px;bottom:-1px;left:-1px}.service__corners:after{border-bottom-width:2px;border-right-width:2px;bottom:-1px;right:-1px}.service.is-open:before,.service.is-open:after,.service.is-open .service__corners:before,.service.is-open .service__corners:after{border-color:var(--accent)}.service__heading{font-size:inherit;margin:0}.service__toggle{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:1fr auto;grid-template-areas:"title chevron""subtitle chevron";align-items:center;gap:6px 16px;width:100%;padding:clamp(20px,2.4vw,28px) clamp(20px,2.6vw,36px);display:grid}.service__title{font-family:var(--font-display);letter-spacing:-.015em;grid-area:title;font-size:clamp(1.45rem,2.2vw,1.9rem);font-weight:500;line-height:1.15}.service__subtitle{color:var(--muted);grid-area:subtitle;font-size:.95rem}.service__chevron{border:1px solid var(--line);width:40px;height:40px;color:var(--muted);transition:rotate .4s var(--ease-out), color .3s var(--ease-out), border-color .3s var(--ease-out);grid-area:chevron;place-items:center;display:grid}.service.is-open .service__chevron{color:var(--accent-ink);border-color:var(--accent);rotate:180deg}@media (hover:hover){.service__toggle:hover .service__chevron{color:var(--accent-ink);border-color:var(--accent)}}.service__panel{transition:grid-template-rows .5s var(--ease-out);grid-template-rows:0fr;display:grid}.service.is-open .service__panel{grid-template-rows:1fr}.service__panel-inner{min-height:0;padding-inline:clamp(20px,2.6vw,36px);overflow:hidden}.service.is-open .service__panel-inner{padding-bottom:clamp(20px,2.4vw,28px)}.service__summary{color:var(--text);max-width:56ch}.service__tags-label{color:var(--muted);margin-top:18px;font-size:.85rem}.service__tags{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}@media (width>=1025px) and (height>=700px) and (prefers-reduced-motion:no-preference){.services{min-height:var(--vh);align-items:center;display:flex}.services__inner{grid-template-columns:1fr minmax(0,1fr);display:grid}.services__content{grid-column:2}.services .section-title{font-size:clamp(2.5rem,4.6vw,4.5rem)}}.stack__rows{flex-direction:column;gap:16px;margin-top:clamp(48px,6vw,80px);display:flex;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee{--duration:50s;-webkit-user-select:none;user-select:none;display:flex;overflow:hidden}.marquee__list{animation:marquee var(--duration) linear infinite;flex-shrink:0;gap:16px;padding-right:16px;display:flex}.marquee--reverse .marquee__list{animation-direction:reverse}@media (hover:hover){.marquee:hover .marquee__list{animation-play-state:paused}}@keyframes marquee{to{transform:translate(-100%)}}.marquee__item{border:1px solid var(--line);font-family:var(--font-display);white-space:nowrap;transition:color .3s var(--ease-out), border-color .3s var(--ease-out);border-radius:999px;align-items:center;gap:12px;padding:10px 24px 10px 10px;font-size:clamp(1.1rem,2.2vw,1.6rem);font-weight:500;display:inline-flex}.marquee__logo{background:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 0 0 1px #0f1b2d14}.marquee__logo img{object-fit:contain;width:22px;height:22px}.marquee__item:hover{color:var(--accent-ink);border-color:var(--accent)}.stack__certs{flex-wrap:wrap;gap:12px;margin-top:clamp(40px,5vw,64px);display:flex}.stack__cert{color:var(--muted);align-items:center;gap:12px;display:inline-flex}.stack__cert-badge{color:var(--accent-soft)}@media (prefers-reduced-motion:reduce){.stack__rows{padding-inline:var(--gutter);max-width:var(--max-width);margin-inline:auto;-webkit-mask-image:none;mask-image:none}.marquee{overflow:visible}.marquee__list{flex-wrap:wrap;flex-shrink:1;animation:none}.marquee__list[aria-hidden=true]{display:none}}@media (width<=559px){.marquee__item{gap:10px;padding:8px 18px 8px 8px}.marquee__logo{width:32px;height:32px}.marquee__logo img{width:18px;height:18px}}.work{z-index:2;--lens-bg:#07090f;scroll-margin-top:0;position:relative}.work__pin{flex-direction:column;gap:clamp(32px,4vw,56px);padding-block:clamp(96px,14vw,140px);display:flex}.work__lede{color:var(--text-soft);margin-top:14px}.work__skip{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:8px;margin-top:22px;padding:10px 18px;font-size:.78rem;display:inline-flex}.work__dots,.work__stage,.work__lens{display:none}.work__list{margin-top:clamp(32px,4vw,56px)}.work__track{width:100%;max-width:var(--max-width);padding-inline:var(--gutter);grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-inline:auto;display:grid}.project{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);-webkit-backdrop-filter:blur(16px)saturate(150%);flex-direction:column;display:flex;overflow:hidden}.project__media{aspect-ratio:16/10;background:radial-gradient(circle at 30% 20%, color-mix(in srgb, var(--blue) 40%, transparent), transparent 60%), radial-gradient(circle at 80% 90%, var(--accent-tint), transparent 55%), var(--surface-2);order:-1;position:relative;overflow:hidden}.project__media img{width:100%;height:100%;transition:scale .8s var(--ease-out)}.project__media--cover img{object-fit:cover}.project__media--contain img{object-fit:contain;object-position:center top;filter:drop-shadow(0 18px 30px #00000040);padding-top:20px}@media (hover:hover){.project:hover .project__media img{scale:1.05}}.project__body{flex-direction:column;flex:1;gap:14px;padding:clamp(22px,2.5vw,32px);display:flex}.project__meta{color:var(--muted);justify-content:space-between;gap:12px;font-size:.85rem;display:flex}.project__meta span:first-child{color:var(--accent-deep);font-family:var(--font-display)}.project__name{font-size:clamp(1.8rem,3vw,2.6rem)}.project__description{color:var(--text)}.project__contribution{color:var(--muted);font-size:.95rem}.project__contribution strong{color:var(--accent-deep);font-weight:600}.project__stack{flex-wrap:wrap;gap:8px;display:flex}.project__links{flex-wrap:wrap;gap:10px 20px;margin-top:auto;padding-top:8px;display:flex}.project__link{min-height:44px;transition:color .3s var(--ease-out), border-color .3s var(--ease-out);border-bottom:1px solid #0000;align-items:center;font-weight:600;display:inline-flex}.project__link:hover{color:var(--accent-ink);border-bottom-color:currentColor}.project--more{background:0 0;border-style:dashed}.project__more-link{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:24px;min-height:240px;padding:clamp(28px,3vw,48px);display:flex}.project__more-label{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.6rem);font-weight:600;line-height:1.1}.project__more-arrow{border:1px solid var(--line);width:72px;height:72px;transition:background-color .4s var(--ease-out), color .4s var(--ease-out), rotate .4s var(--ease-out);border-radius:50%;place-items:center;font-size:1.6rem;display:grid}.project__more-link:hover .project__more-arrow{background:var(--accent);color:var(--bg);rotate:-45deg}.project__more-sub{font-family:var(--font-mono);color:var(--muted);font-size:.85rem}@media (width<=767px){.work__track{grid-template-columns:1fr}}@media (width>=1025px) and (height>=700px) and (prefers-reduced-motion:no-preference){.work__pin{height:var(--vh);gap:0;padding:0;position:relative;overflow:hidden}.work__stage{display:block;position:absolute;inset:0}.work__headset{opacity:0;transition:opacity .8s var(--ease-out);position:absolute;inset:0}.work__headset.is-ready{opacity:1}.work__headset canvas{width:100%;height:100%;display:block}.work__intro{inset:calc(var(--header-h) + 5vh) 0 auto;z-index:2;text-align:center;pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute}.work__intro .section-title{max-width:none}.work__skip{pointer-events:auto}.work__lens{--text:#eef2fa;--text-soft:#d3dbea;--muted:#a9b4c9;--line:#eef2fa24;--accent-ink:#f1cf7c;--accent-deep:#f1cf7c;--accent:#f1cf7c;--card:linear-gradient(135deg, #ffffff1f, #ffffff0a);--surface-2:#1c2546;--blue:#7aa3d6;--accent-tint:#f1cf7c24;z-index:3;opacity:0;clip-path:inset(0);color:var(--text);background:radial-gradient(60% 50% at 30% 30%, #4f7fc038, transparent 70%), radial-gradient(50% 45% at 75% 75%, #f1cf7c1f, transparent 70%), var(--lens-bg);pointer-events:none;display:block;position:absolute;inset:0}.work__lens.is-inside{pointer-events:auto}.work__lens:after{content:"";pointer-events:none;background:radial-gradient(120% 110%,#0000 58%,#000000a6 100%);position:absolute;inset:0}.work__dots{z-index:2;gap:12px;display:flex;position:absolute;bottom:6vh;left:50%;translate:-50%}.work__dot{width:6px;height:6px;transition:background-color .3s var(--ease-out), width .4s var(--ease-out);background:#eef2fa4d;border-radius:50%}.work__dot.is-active{background:var(--accent);border-radius:999px;width:22px}.work__track{max-width:none;padding:0;display:block;position:absolute;inset:0}.work__track>.project,.rail-slice{background:linear-gradient(135deg,#20283f,#12161f 60%,#191814);border:1px solid #ffffff29;border-radius:28px;grid-template-columns:1fr 1.08fr;width:min(1080px,72vw);height:min(60vh,560px);display:grid;position:absolute;top:50%;left:50%;overflow:hidden}.work__track>.project .project__body,.rail-slice .project__body{justify-content:center;gap:14px;padding:clamp(28px,2.6vw,44px)}.work__track>.project .project__name,.rail-slice .project__name{font-size:clamp(2.2rem,3.2vw,3.2rem)}.work__track>.project .project__media,.rail-slice .project__media{aspect-ratio:auto;order:0;min-height:100%}.work__track>.project .project__media img,.rail-slice .project__media img{position:absolute;inset:0}.work__track>.project.project--more,.rail-slice.project--more{width:min(480px,34vw);display:flex}.project--more .project__more-link{text-align:center;align-items:center}.work__track{z-index:2;pointer-events:none;max-width:none;padding:0;position:absolute;inset:0}.work__track>.project{opacity:0;pointer-events:none;translate:-50% -50%}.work__track>.project:focus-within{opacity:1;pointer-events:auto;box-shadow:0 30px 80px #00000080}.work__curve{perspective-origin:50%;position:absolute;inset:0}.rail-card{display:contents}.rail-slice{backface-visibility:hidden;will-change:transform, opacity}.work__lens:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#eef2fa2e,#0000);height:1px;position:absolute;top:84%;left:0;right:0}}@media (prefers-reduced-motion:no-preference) and (width<=1024px),(prefers-reduced-motion:no-preference) and (height<=699px){.work__pin{height:var(--vh);gap:0;padding:0;position:relative;overflow:hidden}.work__stage{display:block;position:absolute;inset:0}.work__headset{opacity:0;transition:opacity .8s var(--ease-out);position:absolute;inset:0}.work__headset.is-ready{opacity:1}.work__headset canvas{width:100%;height:100%;display:block}.work__intro{inset:calc(var(--header-h) + 3vh) 0 auto;z-index:2;text-align:center;pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute}.work__skip{pointer-events:auto}.work__lens{z-index:3;opacity:0;background:var(--lens-bg);pointer-events:none;display:block;position:absolute;inset:0}.work__list{--intro-room:calc(var(--header-h) + 3vh + 150px);z-index:4;margin-top:calc(var(--intro-room) - var(--vh));padding-bottom:clamp(48px,10vw,96px);position:relative}}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:#cfe0f2;--bg-solid:#dbe7f4;--surface:#e4edf8;--surface-2:#b9cee8;--card:linear-gradient(135deg, #ffffff8c, #ffffff47);--card-strong:#ffffffc7;--text:#0f1b2d;--text-soft:#26364d;--muted:#475a73;--line:#0f1b2d1f;--line-strong:#0f1b2d38;--accent:#23508f;--accent-ink:#23508f;--accent-deep:#1d4479;--accent-soft:#4f7fc0;--accent-tint:#4f7fc029;--blue:#8fb3e0;--shadow:0 1px 2px #0f1b2d0f, 0 10px 30px #0f1b2d14;--glass-bg:linear-gradient(135deg, #ffffff80, #ffffff2e);--glass-border:#ffffffb3;--nav-glass:linear-gradient(135deg, #f4f8fddb, #e8f0fab8);--glass-shadow:0 10px 34px #0f1b2d1f, inset 0 1px 0 #ffffffd9, inset 0 -1px 0 #0f1b2d0f;--grain-opacity:.09;--grain-blend:multiply;--font-display:"Source Serif 4", "Iowan Old Style", Georgia, serif;--font-body:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--gutter:clamp(16px, 4vw, 56px);--max-width:1280px;--header-h:72px;--radius:16px;--ease-out:cubic-bezier(.22, 1, .36, 1);--vh:100svh;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-body);color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}:root[data-theme=dark]{--bg:#141a34;--bg-solid:#18203d;--surface:#1c2546;--surface-2:#2e3a66;--card:linear-gradient(135deg, #2c386480, #141a3452);--card-strong:#1e274ad9;--text:#eef2fa;--text-soft:#d3dbea;--muted:#a9b4c9;--line:#eef2fa1f;--line-strong:#eef2fa3d;--accent:#f1cf7c;--accent-ink:#f1cf7c;--accent-deep:#f1cf7c;--accent-soft:#e5bd62;--accent-tint:#f1cf7c24;--blue:#7aa3d6;--shadow:0 1px 2px #00000040, 0 10px 30px #0000004d;--glass-bg:linear-gradient(135deg, #46548c61, #141a344d);--glass-border:#ffffff29;--nav-glass:linear-gradient(135deg, #263058db, #141a34c7);--glass-shadow:0 10px 34px #00000059, inset 0 1px 0 #ffffff24, inset 0 -1px 0 #0003;--grain-opacity:.07;--grain-blend:screen;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html.is-scroll-locked,html.is-scroll-locked body{overflow:hidden}body{min-width:320px;transition:color .6s var(--ease-out);background:0 0;margin:0;overflow-x:clip}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.015em;margin:0;font-weight:500;line-height:1.1}p{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit;color:inherit}ul,ol{margin:0;padding:0;list-style:none}::selection{background:var(--accent-soft);color:var(--bg)}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:4px;border-radius:4px}section:focus{outline:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--text);color:var(--bg);transition:transform .2s var(--ease-out);border-radius:999px;padding:10px 16px;font-weight:600;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0)}.container{width:100%;max-width:var(--max-width);padding-inline:var(--gutter);margin-inline:auto}.section{z-index:2;scroll-margin-top:var(--header-h);padding-block:clamp(80px,10vw,140px);position:relative}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink);align-items:center;gap:10px;font-size:.78rem;font-weight:500;display:inline-flex}.eyebrow:before{content:"";background:var(--accent-soft);border-radius:50%;width:6px;height:6px}.section-title{letter-spacing:-.025em;max-width:20ch;margin-top:16px;font-size:clamp(2.1rem,4.4vw,3.5rem);font-weight:400;line-height:1.06}.section-title em{color:var(--accent);font-style:italic}.chip{border:1px solid var(--line);background:var(--card);color:var(--text-soft);white-space:nowrap;border-radius:999px;align-items:center;padding:5px 12px;font-size:.8rem;display:inline-flex}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(18px)saturate(170%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.sky{z-index:-1;pointer-events:none;background:var(--bg);transition:background-color .8s var(--ease-out);position:fixed;inset:0}.sky__scene{transition:opacity .9s var(--ease-out);position:absolute;inset:0;overflow:hidden}.sky__scene--day{background:radial-gradient(60vmax 40vmax at 12% 6%,#ffffff59,#0000 70%),linear-gradient(#b3cceb,#d6e3f2)}.sky__scene--night{opacity:0;background:radial-gradient(70vmax 50vmax at 80% 0,#3c509640,#0000 70%),linear-gradient(#0b0f21,#171f3b)}:root[data-theme=dark] .sky__scene--day{opacity:0}:root[data-theme=dark] .sky__scene--night{opacity:1}:root:not([data-theme=dark]) .sky__scene--night .sky__drift,:root[data-theme=dark] .sky__scene--day .sky__drift{animation-play-state:paused}.sky__drift{top:0;left:calc(-1 * var(--tw));width:calc(100% + var(--tw));background-repeat:repeat-x;background-size:var(--tw) 100%;will-change:transform;height:100%;animation:sky-drift-x var(--dur) linear infinite;position:absolute}@keyframes sky-drift-x{to{transform:translateX(var(--tw))}}.sky__drift--clouds-far{--tw:1600px;--dur:260s;opacity:.7;height:70%;top:-6%}.sky__drift--clouds-near{--tw:2000px;--dur:150s;height:80%;top:30%}.sky__drift--streaks{--tw:2000px;--dur:220s;opacity:.1;height:85%;top:10%}.sky__drift--stars-far,.sky__drift--stars-near{--tw:1024px;top:calc(-1 * var(--tw));height:calc(100% + var(--tw));background-repeat:repeat;background-size:var(--tw) var(--tw);animation-name:sky-drift-xy}@keyframes sky-drift-xy{to{transform:translate(var(--tw), var(--tw))}}.sky__drift--stars-far{--dur:420s;opacity:.8}.sky__drift--stars-near{--dur:200s}.sky__stars{width:100%;height:100%;position:absolute;inset:0}.grain{z-index:80;pointer-events:none;opacity:var(--grain-opacity);mix-blend-mode:var(--grain-blend);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.5  0 0 0 0 0.45  0 0 0 0 0.4  0 0 0 1.4 -0.2'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");background-size:220px 220px;animation:.9s steps(6,end) infinite grain;position:fixed;inset:-50%}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-4%)}60%{transform:translate(-4%,-1%)}80%{transform:translate(3%,3%)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
