.\!visible{visibility:visible!important}.visible{visibility:visible}.\!mb-0{margin-bottom:0!important}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.w-1\/2{width:50%}.w-2\/3{width:66.666667%}.w-2\/5{width:40%}.w-3\/5{width:60%}.w-4\/5{width:80%}.rotate-180{--tw-rotate:180deg}.rotate-180,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.font-display{font-family:Space Grotesk,ui-sans-serif,system-ui,sans-serif}.text-text-secondary{color:var(--text-secondary)}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out-expo{transition-timing-function:cubic-bezier(.16,1,.3,1)}:root{--header-h:96px}html{scroll-behavior:auto;-webkit-text-size-adjust:100%}body,html{overflow-x:clip}body{min-height:100vh}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,ol,p,ul{margin:0}ol,ul{padding:0}img,svg,video{max-width:100%}button{font:inherit}a,button{color:inherit}.mono{font-family:var(--font-mono)}html.lenis,html.lenis body{height:auto}.lenis.lenis-stopped,html.drawer-open,html.menu-open{overflow:hidden}html:not(.js) .bento-in,html:not(.js) .kp-reveal{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}html:not(.js) .kp-char,html:not(.js) .kp-line>span{transform:none!important}.skip-link{position:fixed;left:16px;top:-64px;z-index:calc(var(--z-preloader) + 1);padding:12px 16px;border-radius:var(--radius-sm);background:var(--brand);color:var(--on-brand);font-weight:600;text-decoration:none;transition:top var(--dur-fast) var(--ease-out-expo)}.skip-link:focus{top:16px}.site-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--grid-gap)}.site-grid>*{grid-column:1/-1}@media (min-width:768px){.site-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}@media (min-width:1280px){.site-grid{grid-template-columns:repeat(12,minmax(0,1fr))}}.kp-band-soft{background:linear-gradient(180deg,transparent,var(--brand-tint-10) 18%,var(--brand-tint-10) 82%,transparent)}[data-theme=light] .kp-band-soft{background:linear-gradient(180deg,transparent,rgba(7,136,255,.06) 18%,rgba(7,136,255,.06) 82%,transparent)}.section-title{margin:0;font:700 var(--fluid-h1)/1 var(--font-display);letter-spacing:-.02em;text-transform:uppercase}.kp-section-header{margin-bottom:var(--space-12)}@media (min-width:1280px){.kp-section-header{margin-bottom:var(--space-16)}}html.js .kp-eyebrow-slide{opacity:0;transform:translateX(-24px);transition:opacity var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo)}html.js .is-in .kp-eyebrow-slide,html.js .is-in.kp-eyebrow-slide{opacity:1;transform:none}.kp-eyebrow-slide:before{transition:transform var(--dur-slow) var(--ease-out-expo) .15s;transform-origin:left}html.js .kp-eyebrow-slide:before{transform:scaleX(0)}html.js .is-in .kp-eyebrow-slide:before{transform:scaleX(1)}.site-header{position:fixed;inset:16px 0 auto;z-index:var(--z-nav);pointer-events:none;transition:transform var(--dur-base) var(--ease-out-expo)}.site-header.is-hidden{transform:translateY(calc(-100% - 24px))}.site-nav{position:relative;top:0;pointer-events:auto;border:1px solid transparent}.site-nav:not(.is-glass){background:transparent}.site-nav.is-glass{border-color:var(--glass-border)}[data-theme=light] .site-nav.is-glass{background:rgba(255,255,255,.72)}.nav-name{display:none}@media (min-width:400px){.nav-name{display:inline}}.nav-actions{display:flex;align-items:center;gap:var(--space-2)}.nav-status{display:none;height:32px;font-size:13px}@media (min-width:1440px){.nav-status{display:inline-flex}}.nav-cta{display:none}@media (min-width:768px){.nav-cta{display:inline-flex}}.kp-nav__links a{position:relative}.nav-pill{left:0;width:100%;top:0;height:100%;transform:none;transition:none}.kp-nav__menu{display:inline-flex}@media (min-width:1024px){.kp-nav__menu{display:none}}.menu-btn,.theme-toggle{--h:44px}@media (min-width:1024px){.theme-toggle{--h:36px}}.burger{position:relative;width:18px;height:12px;display:block}.burger i{position:absolute;left:0;right:0;height:1.5px;border-radius:2px;background:currentColor;transition:transform var(--dur-base) var(--ease-out-expo),top var(--dur-base) var(--ease-out-expo)}.burger i:first-child{top:2px}.burger i:last-child{top:9px}.burger.is-open i:first-child{top:5.5px;transform:rotate(45deg)}.burger.is-open i:last-child{top:5.5px;transform:rotate(-45deg)}.scramble{display:inline-block;font-variant-numeric:tabular-nums}::view-transition-new(root),::view-transition-old(root){animation:none;mix-blend-mode:normal}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2}.site-menu{position:fixed;inset:0;z-index:calc(var(--z-nav) - 1);padding-top:112px;padding-bottom:calc(var(--space-8) + env(safe-area-inset-bottom));background:var(--page-gradient);overflow:auto}.site-menu .menu-grid{position:absolute;inset:0;pointer-events:none;opacity:.8}.site-menu ol{position:relative;margin:auto 0}.site-menu a{min-height:56px;align-items:center}.site-menu a[aria-current=true]{color:var(--brand-text)}.menu-foot{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-8);border-top:1px solid var(--border-subtle)}.menu-foot .kp-btn--icon{--h:48px}.site-preloader{position:fixed;display:none;background:var(--page-gradient)}html.kp-preload .site-preloader{display:grid}html.kp-preload body{overflow:hidden}html.has-cursor,html.has-cursor [data-cursor],html.has-cursor a,html.has-cursor button{cursor:none}html.has-cursor input,html.has-cursor textarea{cursor:text}.site-cursor{will-change:transform}.site-progress{z-index:calc(var(--z-nav) + 1);transform:none}.site-backtop{right:var(--space-6);bottom:var(--space-6)}.backtop-btn,.backtop-btn:hover{position:relative;--h:52px;overflow:visible;border-color:transparent;background-clip:padding-box}.backtop-ring{position:absolute;inset:-1px;width:calc(100% + 2px);max-width:none;height:calc(100% + 2px);pointer-events:none}@media (max-width:767px){.site-backtop{bottom:calc(88px + env(safe-area-inset-bottom));right:var(--space-4)}}.sticky-cta{position:fixed;left:var(--gutter);right:var(--gutter);bottom:calc(var(--space-4) + env(safe-area-inset-bottom));z-index:var(--z-sticky);display:none}.sticky-cta .kp-btn{width:100%;box-shadow:var(--glow-md)}@media (max-width:767px){.sticky-cta{display:block}}.btn-label{display:inline-flex;gap:var(--space-2)}.btn-label,.hero{align-items:center}.hero{position:relative;min-height:100svh;display:flex;padding:calc(var(--header-h) + var(--space-10)) 0 var(--space-24);overflow:hidden}@media (min-width:1280px){.hero{padding-bottom:var(--section-y-xl)}}.hero__bg{pointer-events:none}.hero__bg,.hero__dots,.hero__lines{position:absolute;inset:0}.hero__lines{opacity:.5;-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,transparent 85%);mask-image:linear-gradient(180deg,transparent,#000 30%,transparent 85%)}.hero__orb{right:-160px;top:-120px;width:clamp(320px,48vw,680px);transition:none;will-change:transform}.hero__orb2{position:absolute;left:-12%;bottom:-30%;width:clamp(260px,36vw,520px);aspect-ratio:1;border-radius:50%;filter:blur(80px);opacity:.35;background:radial-gradient(circle,var(--brand-700),transparent 70%)}[data-theme=light] .hero__orb2{opacity:.18;background:radial-gradient(circle,var(--brand-300),transparent 70%)}[data-theme=light] .hero__orb{opacity:.32}.hero__inner{position:relative;z-index:2;display:grid;gap:var(--space-6);justify-items:start}.hero__status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.hero__loc{font:500 12px/1.4 var(--font-mono);letter-spacing:.14em;color:var(--text-muted)}.hero__loc,.hero__name{text-transform:uppercase}.hero__name{font:700 var(--fluid-display-2xl)/.92 var(--font-display);letter-spacing:-.04em;display:grid}.hero__name .hero-word{padding-bottom:.04em;white-space:nowrap}.hero__name .hero-word:last-child{color:var(--text-secondary)}@media (max-width:420px){.hero__name{font-size:clamp(2.6rem,13.5vw,3.5rem)}}.hero__role{max-width:760px;font:600 var(--fluid-h4)/1.3 var(--font-display);letter-spacing:-.01em;color:var(--text-primary)}.hero__rotator{position:relative;display:inline-flex;overflow:hidden;vertical-align:bottom;padding-bottom:.08em;margin-bottom:-.08em}.hero__roleword{display:inline-block;white-space:nowrap}.hero__rolerest{display:block;color:var(--text-secondary);font-weight:500}.hero__tagline{color:var(--text-muted);font-size:var(--fluid-body-lg);font-style:normal}.hero__tagline:before{content:"“";color:var(--brand-text)}.hero__tagline:after{content:"”";color:var(--brand-text)}.hero__ctas{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}.hero__cue{position:absolute;z-index:2;right:var(--gutter);bottom:var(--space-8);display:none;justify-items:center;gap:10px;color:var(--text-muted);text-decoration:none;font:500 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;transition:opacity var(--dur-base) var(--ease-out-expo),transform var(--dur-base) var(--ease-out-expo)}@media (min-width:768px){.hero__cue{display:grid}}.hero__cue.is-gone{opacity:0;transform:translateY(12px);pointer-events:none}.hero__cue i{position:relative;width:1px;height:48px;background:var(--border-subtle);overflow:hidden}.hero__cue i:after{content:"";position:absolute;left:-1px;width:3px;height:12px;border-radius:2px;background:var(--brand);animation:cue 1.6s var(--ease-in-out-quart) infinite}@keyframes cue{0%{transform:translateY(-12px)}to{transform:translateY(48px)}}.about__media{position:relative;grid-column:1/-1;max-width:460px;width:100%;margin-inline:auto;padding:var(--space-6)}.about__copy{grid-column:1/-1;display:grid;gap:var(--space-5);align-content:center}@media (min-width:768px){.about__media{grid-column:1/span 3;margin:0;padding:var(--space-4);align-self:center}.about__copy{grid-column:4/-1}}@media (min-width:1280px){.about__media{grid-column:1/span 5;padding:var(--space-8)}.about__copy{grid-column:7/-1}}.about__frame{position:relative;border-radius:var(--radius-lg);padding:2px;background:conic-gradient(from var(--kp-angle),transparent 0 55%,var(--brand-300) 70%,var(--brand) 80%,transparent 95%),var(--glass-border);animation:kp-spin 6s linear infinite}.about__photo{position:relative;aspect-ratio:4/5;border-radius:calc(var(--radius-lg) - 2px);overflow:hidden;background:var(--surface-raised)}.about__placeholder{position:absolute;inset:0;display:grid;place-items:end center;padding:var(--space-6);color:var(--text-muted);font-size:12px;letter-spacing:.12em;text-transform:uppercase;background:radial-gradient(60% 40% at 50% 38%,var(--brand-tint-20),transparent 70%),radial-gradient(34% 26% at 50% 34%,var(--brand-800),transparent 72%),radial-gradient(70% 40% at 50% 100%,var(--brand-900),transparent 72%),var(--surface-raised)}[data-theme=light] .about__placeholder{background:radial-gradient(60% 40% at 50% 38%,var(--brand-tint-20),transparent 70%),radial-gradient(34% 26% at 50% 34%,var(--brand-200),transparent 72%),radial-gradient(70% 40% at 50% 100%,var(--brand-100),transparent 72%),var(--surface-raised)}.about__ring{position:absolute;inset:0;border:1px dashed var(--glass-border);border-radius:calc(var(--radius-lg) + 16px);pointer-events:none}.about__lead{font:500 var(--fluid-body-lg)/1.6 var(--font-display);color:var(--text-primary);max-width:var(--measure)}.about__body{color:var(--text-secondary);max-width:var(--measure)}.about__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}.about__stats .kp-stat{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:var(--space-2)}.about__stats .kp-stat__value{font-size:clamp(2.25rem,1.4rem + 3vw,4rem)}.stat-placeholder{color:var(--text-muted);font-size:.6em;letter-spacing:0;font-family:var(--font-mono)}.services{list-style:none}.services__item{grid-column:1/-1;display:flex}@media (min-width:768px){.services__item{grid-column:span 4}}@media (min-width:1280px){.services__item{grid-column:span 4}}.services__card{display:flex;flex-direction:column;width:100%}.services__card p{flex:1}.services__num{position:absolute;top:var(--space-6);right:var(--space-6);font:500 12px/1 var(--font-mono);letter-spacing:.14em;color:var(--text-muted)}.services__tags{margin-top:var(--space-6)}.kp-card.kp-glass:hover{transform:translateY(-4px)}@media (hover:none){.kp-card.kp-glass:hover{transform:none}.kp-card:active{transform:scale(.99);border-color:rgba(7,136,255,.45)}}.skills__marquee{display:grid;gap:var(--space-4);margin-bottom:var(--space-16);max-width:var(--container-wide);margin-inline:auto}.tech-mono{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-xs);background:var(--brand-tint-20);color:var(--brand-text);font:500 12px/1 var(--font-mono);letter-spacing:0}.skills__bento{list-style:none;grid-auto-flow:row dense}@media (min-width:768px) and (max-width:1279px){.skills__bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto}}@media (min-width:1280px){.skills__bento{grid-auto-rows:200px}}.skills__bento .kp-bento__tile{grid-column:1/-1;min-height:200px}@media (min-width:768px){.bento--feature{grid-row:span 2}.bento--feature,.bento--small,.bento--tall,.bento--wide{grid-column:span 1!important}}@media (min-width:1280px){.bento--feature{grid-row:span 2}.bento--feature,.bento--wide{grid-column:span 2!important}.bento--tall{grid-row:span 2}.bento--small,.bento--tall{grid-column:span 1!important}}.bento--feature{background:radial-gradient(120% 80% at 100% 0,var(--brand-tint-20),transparent 60%),var(--glass-fill)}.bento__head{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-start}.bento__icon{margin:0}.bento__count{font-size:12px;letter-spacing:.14em;color:var(--text-muted)}.bento__body{position:relative;z-index:1;display:grid;gap:var(--space-2)}.bento__title{margin:0;font:600 22px/1.3 var(--font-display);letter-spacing:-.01em}.bento--feature .bento__title{font-size:var(--fluid-h3);font-weight:700}.bento__items{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}html.js .bento-in{opacity:0;transform:scale(.96);transition:opacity var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo),border-color var(--dur-base),box-shadow var(--dur-base);transition-delay:calc(var(--i, 0) * var(--stagger-items))}html.js .is-in .bento-in{opacity:1;transform:none}.projects__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-6)}.projects__actions,.projects__head .kp-section-header{margin-bottom:var(--space-10)}.projects__actions{display:none;align-items:center;gap:var(--space-3)}.projects__actions .projects__nav{margin-bottom:0}.projects__more{display:flex;justify-content:center;margin-top:var(--space-8)}@media (min-width:768px){.projects__actions{display:flex}.projects__more{display:none}}.projects__nav{display:none;gap:var(--space-2);margin-bottom:var(--space-10)}@media (min-width:768px){.projects__nav{display:flex}}.projects.is-pinned .projects__nav{display:none}.projects__viewport{max-width:var(--container-wide);margin-inline:auto;overflow:hidden}.projects__track{display:grid;gap:var(--space-6);padding-inline:var(--gutter);outline-offset:4px}.projects__slide{cursor:pointer;min-width:0}@media (min-width:768px){.projects__viewport{overflow:visible}.projects__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:var(--space-4);-webkit-overflow-scrolling:touch}.projects__track::-webkit-scrollbar{display:none}.projects__slide{flex:0 0 min(72vw,560px);scroll-snap-align:start}}.projects.is-pinned{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding-block:calc(var(--header-h) + var(--space-4)) var(--space-10);width:100%;max-width:100vw;overflow:hidden}.projects.is-pinned .projects__viewport{overflow:hidden;max-width:none;width:100%;min-width:0}.projects.is-pinned .projects__track{overflow:visible;scroll-snap-type:none;width:-moz-max-content;width:max-content;padding-left:max(var(--gutter),calc((100vw - var(--container-max)) / 2));padding-right:30vw;will-change:transform}.projects.is-pinned .projects__slide{flex:0 0 clamp(420px,34vw,560px)}.projects.is-pinned .kp-section-header p{display:none}.projects.is-pinned{--card-w:clamp(420px,34vw,560px);--chrome:333px;--card-body:350px;height:100svh}.projects.is-pinned .projects__actions,.projects.is-pinned .projects__head .kp-section-header{margin-bottom:var(--space-6)}.projects.is-pinned .projects__viewport{flex:0 1 auto;min-height:0;padding-block:var(--space-6);margin-block:calc(var(--space-6) * -1)}.projects.is-pinned .projects__track{align-items:stretch}.projects.is-pinned .projects__slide{display:flex;flex-basis:var(--card-w)}.projects.is-pinned .project-card{display:flex;flex-direction:column;width:100%}.projects.is-pinned .kp-project__media{flex:none;height:max(96px,min(calc(100svh - var(--chrome) - var(--card-body)),calc(var(--card-w) / 1.6)));aspect-ratio:auto}.projects.is-pinned .kp-project__body{display:flex;flex-direction:column;flex:1 1 auto}.projects.is-pinned .project-card__links{flex-wrap:nowrap;gap:var(--space-3);margin-top:auto}.projects.is-pinned .kp-project__title{font-size:clamp(22px,2vw,28px)}@media (max-height:1000px){.projects.is-pinned{--chrome:240px;padding-block:64px var(--space-6)}.projects.is-pinned .projects__actions,.projects.is-pinned .projects__head .kp-section-header{margin-bottom:var(--space-4)}.projects.is-pinned .kp-section-header h2{font-size:48px}.projects.is-pinned .projects__progress{margin-top:var(--space-4)}}@media (max-height:920px){.projects.is-pinned{--card-body:296px}.projects.is-pinned .project-card__impact{display:none}}@media (max-height:830px){.projects.is-pinned{--card-body:222px}.projects.is-pinned .kp-project__tags{display:none}}@media (max-height:720px){.projects.is-pinned{--chrome:150px;--card-body:150px;padding-block:36px var(--space-5)}.projects.is-pinned .kp-eyebrow,.projects.is-pinned .kp-project__meta,.projects.is-pinned .project-card__role{display:none}.projects.is-pinned .kp-section-header h2{font-size:36px}.projects.is-pinned .projects__actions,.projects.is-pinned .projects__head .kp-section-header{margin-bottom:var(--space-3)}.projects.is-pinned .kp-project__body{padding:var(--space-4) var(--space-5);gap:var(--space-2)}.projects.is-pinned .projects__progress{margin-top:var(--space-3)}}.projects__end{flex:0 0 360px;display:grid;align-content:center;justify-items:start;gap:var(--space-4);padding:var(--space-8);color:var(--text-muted)}.projects__progress{height:1px;background:var(--border-subtle);margin-top:var(--space-8)}.projects__progress>div{height:100%;background:var(--brand);transform:scaleX(0);transform-origin:left;box-shadow:0 0 10px rgba(7,136,255,.6)}.projects__dots{display:none;justify-content:center;gap:var(--space-2);margin-top:var(--space-6)}@media (min-width:768px){.projects__dots{display:flex}}.projects__dots span{width:8px;height:8px;border-radius:50%;background:var(--glass-border);transition:transform var(--dur-base) var(--ease-out-expo),background-color var(--dur-base)}.projects__dots span.is-active{background:var(--brand);transform:scale(1.4)}.project-card{height:100%;display:flex;flex-direction:column}.project-card .kp-project__body{flex:1;align-content:start}.project-card__parallax{position:absolute;inset:0 -40px}.project-card__open{all:unset;cursor:inherit}.project-card__open:after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.project-card__open:focus-visible{outline:none}.project-card:has(.project-card__open:focus-visible){outline:2px solid var(--focus-ring);outline-offset:3px}.project-card__role{color:var(--brand-text);font:500 14px/1.4 var(--font-body)}.project-card__impact{color:var(--text-secondary);font-size:15px}.project-card__links{flex-wrap:wrap;position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-2);pointer-events:none;min-height:40px}.project-card__links a{pointer-events:auto}.project-card__cta{display:inline-flex;gap:var(--space-2);align-items:center;font-weight:600;font-size:14px}.project-card:hover .project-card__cta{background-size:100% 1px;background-position:0 100%;color:var(--brand-text)}.project-card:hover .project-card__cta .kp-icon{transform:translateX(4px)}.project-card__cta .kp-icon{transition:transform var(--dur-base) var(--ease-out-expo)}@media (hover:none){.project-card:active{transform:scale(.985)}}.art{--art-bg:var(--brand-900);--art-ink:rgba(255,255,255,0.18);--art-soft:rgba(255,255,255,0.1);--art-device:var(--surface-base);position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(120% 90% at 80% 0,var(--brand-800),transparent 60%),var(--art-bg);overflow:hidden}[data-theme=light] .art{--art-bg:var(--brand-100);--art-ink:rgba(4,12,22,0.16);--art-soft:rgba(4,12,22,0.08);--art-device:#ffffff;background:radial-gradient(120% 90% at 80% 0,var(--brand-200),transparent 60%),var(--art-bg)}.art__grid{position:absolute;inset:0;opacity:.6}.art__glow{position:absolute;width:60%;aspect-ratio:1;border-radius:50%;background:var(--brand);filter:blur(70px);opacity:.35}[data-theme=light] .art__glow{opacity:.25}.art__phone{position:relative;width:34%;aspect-ratio:9/18;border-radius:22px;padding:22px 12px 12px;display:flex;flex-direction:column;gap:8px;background:var(--art-device);border:1px solid var(--glass-border);box-shadow:var(--glow-lg);transform:rotate(-6deg) translateY(6%)}.art--phones .art__phone--back{position:absolute;transform:rotate(-12deg) translate(-38%,4%);opacity:.75}.art--phones .art__phone--front{transform:rotate(6deg) translate(18%,8%)}.art__notch{position:absolute;top:8px;left:50%;translate:-50% 0;width:30%;height:6px;border-radius:6px;background:var(--art-soft)}.art__bar{display:block;height:8px;border-radius:4px;background:var(--art-ink)}.art__bar--soft{background:var(--art-soft)}.art__tile{flex:1;min-height:20px;border-radius:10px;background:linear-gradient(135deg,var(--brand-tint-20),var(--art-soft))}.art__tile--sm{flex:1;height:34px;min-height:0}.art__row{display:flex;gap:8px}.art__btn{height:18px;border-radius:9px;background:var(--brand)}.art__map{position:relative;flex:1;border-radius:12px;overflow:hidden;background:var(--art-soft)}.art__map svg{position:absolute;inset:0;width:100%;height:100%}.art__sheet{display:grid;gap:6px}.art__tablet{position:relative;width:64%;aspect-ratio:4/3;border-radius:18px;padding:12px;display:flex;gap:10px;background:var(--art-device);border:1px solid var(--glass-border);box-shadow:var(--glow-lg);transform:rotate(-4deg)}.art__side{width:18%;display:grid;gap:8px;align-content:start}.art__side i{display:block;height:10px;border-radius:5px;background:var(--art-soft)}.art__side i:first-child{background:var(--brand)}.art__main{flex:1;display:flex;flex-direction:column;gap:10px}.art__chart{flex:1;display:flex;align-items:flex-end;gap:6px;padding:8px;border-radius:10px;background:var(--art-soft)}.art__chart span{flex:1;border-radius:4px 4px 2px 2px;background:linear-gradient(var(--brand-300),var(--brand))}.art__agent{position:relative;width:58%;display:grid;gap:10px;padding:16px;border-radius:18px;background:var(--art-device);border:1px solid var(--glass-border);box-shadow:var(--glow-lg);transform:rotate(-3deg)}.art__msg{height:26px;border-radius:13px}.art__msg--in{background:var(--art-soft)}.art__msg--out{justify-self:end;background:var(--brand)}.art__tool{display:flex;align-items:center;gap:8px;padding:8px;border-radius:10px;border:1px dashed var(--glass-border)}.art__tool i{width:16px;height:16px;border-radius:4px;background:var(--brand-tint-20);box-shadow:inset 0 0 0 1px var(--brand)}.site-drawer,.site-scrim{position:fixed}.site-drawer{transform:none}.drawer-cover{border-radius:var(--radius-md)}.drawer-title{font:700 var(--fluid-h3)/1.1 var(--font-display);letter-spacing:-.02em}.overline-label{font:500 12px/1.4 var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--brand-text);margin-bottom:var(--space-2);display:block}.cs-block p{color:var(--text-secondary)}.cs-metric{display:grid;gap:var(--space-1);padding:var(--space-5);border-radius:var(--radius-md)}.cs-metric strong{font:700 var(--fluid-h4)/1.2 var(--font-display)}@media (max-width:767px){.site-drawer{top:auto;left:8px;right:8px;width:auto;max-height:92svh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;bottom:0}}.timeline{max-width:1040px;margin-inline:auto}.timeline__card{position:relative;display:block;padding:var(--space-6);border-radius:var(--radius-md);overflow:hidden;transition:border-color var(--dur-base),box-shadow var(--dur-base)}.timeline__card:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity var(--dur-base);background:radial-gradient(320px circle at var(--mx,50%) var(--my,0),rgba(7,136,255,.14),transparent 60%)}.timeline__card:hover:before{opacity:1}.kp-timeline__item.is-active .timeline__card{border-color:rgba(7,136,255,.4)}.timeline__now{margin-left:var(--space-3);vertical-align:2px}.timeline .kp-reveal{transform:translateY(32px)}.timeline.is-reduced .kp-timeline__node:after{display:none}@media (min-width:1280px){.timeline{padding-left:0;gap:var(--space-8)}.timeline .kp-timeline__progress,.timeline:before{left:50%;translate:-1px 0}.timeline__item{width:calc(50% - 48px)}.timeline__item.is-right{margin-left:calc(50% + 48px)}.timeline__item .kp-timeline__node{left:auto;right:-56px;top:28px}.timeline__item.is-right .kp-timeline__node{right:auto;left:-56px}.timeline__item.is-left .kp-reveal{transform:translateX(-48px)}.timeline__item.is-right .kp-reveal{transform:translateX(48px)}.timeline__item:nth-child(2){margin-top:0}}.timeline .kp-reveal.is-in{transform:none!important}.edu{list-style:none}.edu__item{grid-column:1/-1;display:flex}@media (min-width:768px){.edu__item{grid-column:span 4}}@media (min-width:1280px){.edu__item{grid-column:span 6}}.edu__card{width:100%;display:grid;gap:var(--space-3);align-content:start}.edu__when{margin-top:var(--space-4)}.edu__card .kp-badge .kp-icon{width:12px;height:12px}.testi{position:relative;max-width:880px;margin-inline:auto;padding:var(--space-8);border-radius:var(--radius-lg)}@media (min-width:768px){.testi{padding:var(--space-12)}}.testi__stage{min-height:260px;display:grid;align-items:center;touch-action:pan-y}.testi__quote{cursor:grab}.testi__quote:active{cursor:grabbing}.testi__quote blockquote{font-size:clamp(1.125rem,1rem + .6vw,1.5rem)}.testi__quote figcaption{flex-wrap:wrap}.testi__controls{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}.testi__dots{display:flex;gap:var(--space-1)}.testi__dots button{width:44px;height:44px;display:grid;place-items:center;border:0;background:none;cursor:pointer;border-radius:var(--radius-full)}.testi__dots button span{width:8px;height:8px;border-radius:4px;background:var(--glass-border);transition:width var(--dur-base) var(--ease-out-expo),background-color var(--dur-base)}.testi__dots button.is-active span{width:24px;background:var(--brand)}.contact{overflow:hidden}@media (min-width:1280px){.contact{padding-block:var(--section-y-xl)}}.contact__dots{position:absolute;inset:0;pointer-events:none}.contact__head{position:relative;margin-bottom:var(--space-12);display:grid;gap:var(--space-4)}.contact__title{font:700 var(--fluid-display-xl)/.95 var(--font-display);letter-spacing:-.03em;text-transform:uppercase}.contact__title [data-drift]{display:inline-block;will-change:transform}.contact__title .kp-line:nth-child(2){padding-left:.6em}@media (min-width:1280px){.contact__title{font-size:clamp(6rem,9vw,9rem)}}.contact__body{position:relative;align-items:start}.contact__aside{grid-column:1/-1;display:grid;gap:var(--space-6);justify-items:start}.contact__formwrap{grid-column:1/-1;padding:var(--space-6);border-radius:var(--radius-lg)}@media (min-width:768px){.contact__formwrap{padding:var(--space-8)}.contact__links{grid-template-columns:1fr 1fr}}@media (min-width:1024px){.contact__aside{grid-column:1/span 3}.contact__formwrap{grid-column:4/-1}.contact__links{grid-template-columns:1fr}}@media (min-width:1280px){.contact__aside{grid-column:1/span 5}.contact__formwrap{grid-column:6/-1;padding:var(--space-10)}}.contact__intro{color:var(--text-secondary);font-size:var(--fluid-body-lg);max-width:44ch}.contact__links{list-style:none;display:grid;gap:var(--space-3);width:100%}.contact__social{position:relative;display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);min-height:72px;border-radius:var(--radius-md);background:var(--glass-fill);border:1px solid var(--glass-border);text-decoration:none;overflow:hidden;transition:border-color var(--dur-base),box-shadow var(--dur-base)}.contact__social:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity var(--dur-base);background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%),rgba(7,136,255,.16),transparent 60%)}.contact__social:hover{border-color:rgba(7,136,255,.5);box-shadow:var(--glow-sm)}.contact__social:hover:before{opacity:1}.contact__social strong{display:block;font-weight:600}.contact__social small{color:var(--text-muted);font-size:12px;overflow-wrap:anywhere}.contact__arrow{margin-left:auto;color:var(--brand-text);transition:transform var(--dur-base) var(--ease-out-expo)}.contact__social:hover .contact__arrow{transform:translate(3px,-3px)}.contact__form,.contact__row{display:grid;gap:var(--space-2)}@media (min-width:1024px){.contact__row{grid-template-columns:1fr 1fr;gap:var(--space-4)}}.contact__submit{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:var(--space-2)}.contact__fine{color:var(--text-muted);font-size:13px}.contact__success{display:grid;justify-items:center;text-align:center;gap:var(--space-4);padding:var(--space-10) 0}.contact__success h3{font:700 var(--fluid-h3)/1.1 var(--font-display)}.contact__success p{color:var(--text-secondary)}@media (max-width:767px){.contact__submit .kp-btn,.contact__submit [data-magnetic]{width:100%}}.site-footer{position:relative;padding-bottom:calc(var(--space-8) + env(safe-area-inset-bottom))}@media (max-width:767px){.site-footer{padding-bottom:calc(96px + env(safe-area-inset-bottom))}}.footer__top{flex-wrap:wrap;justify-content:space-between;gap:var(--space-8)}.footer__brand,.footer__top{display:flex;align-items:center}.footer__brand{gap:var(--space-4)}.footer__brand strong{display:block;font:700 18px/1.2 var(--font-display)}.footer__brand span{color:var(--text-muted);font-size:13px}.footer__links{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6)}.footer__links a{display:inline-block;padding-block:10px}.footer__tagline{margin:var(--space-12) 0 var(--space-8);font:700 var(--fluid-h2)/1.05 var(--font-display);letter-spacing:-.02em;text-transform:uppercase;color:var(--text-primary);max-width:18ch}.footer__bottom{padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}.kp-logo-tile{display:inline-grid;place-items:center;border-radius:14px;background:var(--bg-grad-4);border:1px solid var(--glass-border);box-shadow:var(--glow-sm)}[data-theme=light] .kp-logo-tile{background:var(--ink)}@media (hover:none){.kp-btn--primary:active:before{transform:translateY(0)}.kp-btn--secondary:active:before{transform:scaleX(1)}.kp-bento__tile:active{border-color:rgba(7,136,255,.5);box-shadow:var(--glow-md)}.kp-project:hover{box-shadow:none;border-color:var(--glass-border)}.kp-project:hover .kp-project__media>*{transform:none}.contact__social:active{border-color:rgba(7,136,255,.5)}}@media (max-width:767px){:root{--dur-slow:450ms;--dur-cinematic:800ms}.kp-orb{filter:blur(48px)}.hero__lines{display:none}.about__frame{animation:none}.kp-marquee__track{--marquee-dur:48s}}[data-theme=light] .kp-chip{background:rgba(7,136,255,.08)}[data-theme=light] .kp-glass{background:rgba(255,255,255,.66)}[data-theme=light] .kp-project{background:var(--surface-raised)}[data-theme=light] .kp-timeline__progress{box-shadow:0 0 10px rgba(7,136,255,.35)}[data-theme=light] .kp-progress{box-shadow:0 0 10px rgba(7,136,255,.4)}[data-theme=light] .kp-grain:after{opacity:.025;mix-blend-mode:multiply}[data-theme=light] .site-menu{background:var(--page-gradient)}@media (prefers-reduced-motion:reduce){html.js .bento-in,html.js .kp-eyebrow-slide{opacity:1;transform:none}html.js .kp-eyebrow-slide:before{transform:none}.about__frame,.hero__cue i:after{animation:none}.contact__title [data-drift],.timeline .kp-reveal,[data-depth]{transform:none!important}}.site-menu .menu-foot li{overflow:visible}.site-menu .menu-foot a{display:inline-flex;min-height:0;font:600 16px/1 var(--font-body);letter-spacing:0;text-transform:none;transform:none;transition-delay:0s}.site-menu .menu-foot a:before{content:none}.all-projects{padding-top:calc(var(--header-h) + var(--space-12))}.all-projects__back{display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-8)}.all-projects__back .kp-icon{transform:scaleX(-1)!important}.all-projects .kp-section-header h1{margin:0;font:700 var(--fluid-h1) /1.05 var(--font-display);letter-spacing:-.02em;text-transform:uppercase}.all-projects .kp-section-header,.all-projects__tabs{margin-bottom:var(--space-8)}.all-projects__tabs{display:flex;width:-moz-fit-content;width:fit-content;max-width:100%;overflow-x:auto;scrollbar-width:none}.all-projects__tabs::-webkit-scrollbar{display:none}.all-projects__tabs button{flex:none}.all-projects__tabs .kp-tabs__indicator{inset:0;top:0;height:auto;z-index:-1}.all-projects__grid{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr))}.all-projects__item{display:flex;min-width:0;cursor:pointer}.all-projects__item .project-card{width:100%}.showcase{overflow:hidden}.showcase,.showcase__stage{position:absolute;inset:0}.project-card__parallax .showcase__stage{inset:0 40px}.showcase__logo{position:absolute;left:2.5%;top:50%;width:14%;aspect-ratio:1;transform:translateY(-50%);border-radius:var(--radius-sm);overflow:hidden}.showcase__screen{position:absolute;top:5%;width:40%;aspect-ratio:9/16;overflow:hidden}.showcase__screen--0{left:18%}.showcase__screen--1{left:58.5%}.showcase--desktop .showcase__screen--0{left:21%;top:7%;width:76%;aspect-ratio:5236/3667;background:#fff;border-radius:3%/4.3%}.showcase--desktop .showcase__screen--1{left:3%;top:18%;width:24%;aspect-ratio:1581/3348}.showcase--desktop .showcase__logo{z-index:1;left:auto;right:5%;top:auto;bottom:6%;width:11%;transform:none;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.12)}.showcase--desktop .showcase__logo img{inset:16%!important;width:68%!important;height:68%!important;-o-object-fit:contain;object-fit:contain}.showcase--single .showcase__logo{left:19%;width:16%;border-radius:22%}.showcase--single .showcase__screen--0{left:47%;top:7%;width:42%;aspect-ratio:1080/2129;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.about__img{transform:translate(-4%,2.5%) rotate(-4deg) scale(1.14);transform-origin:50% 45%}.kp-logo{display:block;flex:none;border-radius:22%}.is-in .kp-reveal:not(.kp-reveal--clip),.kp-reveal.is-in:not(.kp-reveal--clip){clip-path:none}.kp-project:hover .kp-project__media>.project-card__parallax:has(.showcase){transform:none}@media (max-width:639px){.hero__ctas{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);width:100%}.hero__ctas>span{display:flex;min-width:0}.hero__ctas .kp-btn{width:100%;padding-inline:var(--space-4)}}