@font-face{font-family:LilGrotesk;src:url(/assets/LilGrotesk-Thin-B8AyxC9-.otf) format("opentype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:LilGrotesk;src:url(/assets/LilGrotesk-ExtraLight-Dqz0oeIe.otf) format("opentype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:LilGrotesk;src:url(/assets/LilGrotesk-Light-Bgew0gJT.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:LilGrotesk;src:url(/assets/LilGrotesk-Regular-CbosNxpW.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:LilGrotesk;src:url(/assets/LilGrotesk-Medium-AXx9YHHC.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:LilGrotesk;src:url(/assets/LilGrotesk-Bold-C1AMQv-R.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:LilGrotesk;src:url(/assets/LilGrotesk-Heavy-Yr87rPJW.otf) format("opentype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:LilGrotesk;src:url(/assets/LilGrotesk-Black-DH2v3DZe.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}:root{--font-display: "LilGrotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--tracking-tight: -.01em;--tracking-normal: .01em;--tracking-loose: .025em;--tracking-wide: .04em;--leading-tight: 1.15;--leading-snug: 1.35;--leading-normal: 1.55;--leading-relaxed: 1.7;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-md: 15px;--text-base: 16px;--text-lg: 17px;--text-xl: 18px;--text-2xl: 24px;--text-3xl: 28px;--text-fluid-xs: clamp(18px, 3vw, 24px);--text-fluid-sm: clamp(22px, 3vw, 28px);--text-fluid-md: clamp(22px, 3.5vw, 32px);--text-fluid-lg: clamp(24px, 4vw, 36px);--text-fluid-xl: clamp(28px, 5vw, 48px);--text-fluid-2xl: clamp(28px, 6vw, 56px);--text-fluid-3xl: clamp(32px, 5vw, 42px);--text-fluid-4xl: clamp(36px, 6vw, 64px);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--space-4xl: 96px;--space-5xl: 128px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--max-width: 1200px;--nav-height: 52px}:root,[data-theme=light]{--color-divider: rgba(0, 0, 0, .06);--color-primary: #000000;--color-on-primary: #FFFFFF;--color-primary-container: #200D4D;--color-on-primary-container: #8A7ABD;--color-secondary: #625A76;--color-on-secondary: #FFFFFF;--color-secondary-container: #E5DBFB;--color-on-secondary-container: #665F7A;--color-tertiary: #000000;--color-on-tertiary: #FFFFFF;--color-tertiary-container: #330736;--color-on-tertiary-container: #A772A5;--color-error: #BA1A1A;--color-on-error: #FFFFFF;--color-error-container: #FFDAD6;--color-on-error-container: #93000A;--color-background: #FDF8FE;--color-on-background: #1C1B1F;--color-surface: #FDF8FE;--color-on-surface: #1C1B1F;--color-surface-variant: #E6E0ED;--color-on-surface-variant: #48454F;--color-outline: #797580;--color-outline-variant: #CAC4D1;--color-shadow: #000000;--color-scrim: #000000;--color-inverse-surface: #313034;--color-inverse-on-surface: #F4EFF5;--color-inverse-primary: #CEBDFF;--color-surface-tint: #645495;--color-surface-dim: #DDD8DF;--color-surface-bright: #FDF8FE;--color-surface-container-lowest: #FFFFFF;--color-surface-container-low: #F7F2F8;--color-surface-container: #F2ECF2;--color-surface-container-high: #ECE6ED;--color-surface-container-highest: #E6E1E7}[data-theme=dark]{--color-primary: #CEBDFF;--color-on-primary: #352563;--color-primary-container: #170245;--color-on-primary-container: #8474B7;--color-secondary: #CBC2E1;--color-on-secondary: #332D45;--color-secondary-container: #4C455F;--color-on-secondary-container: #BDB4D3;--color-tertiary: #EFB3EB;--color-on-tertiary: #4B1F4C;--color-tertiary-container: #29002D;--color-on-tertiary-container: #A16C9F;--color-error: #FFB4AB;--color-on-error: #690005;--color-error-container: #93000A;--color-on-error-container: #FFDAD6;--color-background: #141317;--color-on-background: #E6E1E7;--color-surface: #141317;--color-on-surface: #E6E1E7;--color-surface-variant: #48454F;--color-on-surface-variant: #CAC4D1;--color-outline: #948F9A;--color-outline-variant: #48454F;--color-shadow: #000000;--color-scrim: #000000;--color-inverse-surface: #E6E1E7;--color-inverse-on-surface: #313034;--color-inverse-primary: #645495;--color-surface-tint: #CEBDFF;--color-surface-dim: #141317;--color-surface-bright: #3A383D;--color-surface-container-lowest: #0F0E12;--color-surface-container-low: #1C1B1F;--color-surface-container: #201F23;--color-surface-container-high: #2B292E;--color-surface-container-highest: #363439}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1,"liga" 1,"calt" 1;font-optical-sizing:auto;color-scheme:light}[data-theme=dark]{color-scheme:dark}body{font-family:var(--font-display);background-color:var(--color-background);color:var(--color-on-background);font-size:var(--text-base);line-height:var(--leading-normal);letter-spacing:var(--tracking-normal);transition:background-color .5s var(--ease-out-expo),color .5s var(--ease-out-expo);overflow-x:hidden}small,.text-sm,.text-xs,caption,figcaption,label{letter-spacing:var(--tracking-loose);line-height:var(--leading-relaxed)}a{text-decoration:none;color:inherit}ul,ol{list-style:none}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-outline-variant);border-radius:3px}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--color-outline)}::selection{background:var(--color-inverse-surface);color:var(--color-inverse-on-surface)}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--color-surface-container) 25%,var(--color-surface-container-high) 50%,var(--color-surface-container) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-2xl)}@media(max-width:768px){.container{padding:0 var(--space-lg)}}@media(min-width:641px){.mobile-menu-btn{display:none!important}}@media(max-width:640px){.desktop-nav-links{display:none!important}.mobile-menu-btn{display:flex!important}}@media(max-width:900px){.project-grid-3{grid-template-columns:repeat(2,1fr)!important}.mobile-showcase-grid{gap:24px!important}.two-col-grid{grid-template-columns:1fr!important;gap:40px!important}.results-grid-2{grid-template-columns:1fr!important}.bento-grid{grid-template-columns:repeat(2,1fr)!important}.bento-card{grid-column:auto!important;grid-row:auto!important}}@media(max-width:640px){.bento-grid{grid-template-columns:1fr!important}}.bento-card{transition:transform .4s var(--ease-out-expo, cubic-bezier(.16, 1, .3, 1)),border-color .4s ease,background-color .4s ease}.bento-card:hover{transform:translateY(-4px);border-color:var(--color-on-surface)!important}.bento-shape{transition:transform .6s var(--ease-out-expo, cubic-bezier(.16, 1, .3, 1)),opacity .4s ease;transform:scale(1) rotate(0)}.bento-card:hover .bento-shape{transform:scale(1.18) rotate(10deg);opacity:.5!important}@keyframes bento-shape-drift{0%{transform:translate(0) rotate(0)}30%{transform:translate(-6px,4px) rotate(4deg)}55%{transform:translate(3px,-6px) rotate(-3deg)}80%{transform:translate(-3px,-3px) rotate(5deg)}to{transform:translate(0) rotate(0)}}.bento-shape-orbit{animation-name:bento-shape-drift;animation-timing-function:ease-in-out;animation-iteration-count:infinite}@media(prefers-reduced-motion:reduce){.bento-shape-orbit{animation:none!important}}@media(max-width:640px){.project-grid-3,.process-grid{grid-template-columns:1fr!important}.work-thumbnail-wrapper{display:none!important}.hello-container{display:block!important;text-align:left!important;height:auto!important;line-height:1.4!important}.hello-word-slot{display:inline-flex!important;min-width:unset!important;justify-content:flex-start!important;padding-right:2px!important;vertical-align:middle!important}.hello-name{display:inline!important;vertical-align:middle!important}}.services-shader-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(220px,auto);gap:var(--space-lg)}@media(max-width:900px){.services-shader-grid{grid-template-columns:repeat(2,1fr)}.service-shader-card{grid-column:auto!important;grid-row:auto!important}}@media(max-width:640px){.services-shader-grid{grid-template-columns:1fr}}.service-shader-card{transition:transform .4s var(--ease-out-expo, cubic-bezier(.16, 1, .3, 1)),border-color .4s ease}.service-shader-card:hover{border-color:var(--color-outline)!important}@media(prefers-reduced-motion:no-preference){.service-shader-card:hover{transform:translateY(-4px)}.service-shader-card:hover .shader-canvas-wrap{transform:scale(1.045);filter:brightness(1.12) saturate(1.05)}}@media(prefers-reduced-motion:reduce){.service-shader-card,.shader-canvas-wrap{transition:none!important}}@media(max-width:900px){.read-progress-sidebar{display:none!important}}html{scroll-behavior:smooth}nav a:hover,nav button:hover{color:var(--color-on-surface)!important}a[style*="color: var(--color-on-surface-variant)"]:hover{color:var(--color-on-surface)!important}.start-project-btn{background-image:linear-gradient(180deg,#ffffff38,#fff0 55%)}.start-project-btn:hover{color:var(--color-surface)!important;transform:translateY(-1px)}.start-project-btn:after{content:"";position:absolute;top:0;left:0;width:40%;height:100%;background:linear-gradient(115deg,transparent,rgba(255,255,255,.6),transparent);transform:translate(-220%) skew(-20deg);animation:start-project-shimmer 3.2s ease-in-out infinite;pointer-events:none}.start-project-btn:hover:after{animation-duration:1.4s}@keyframes start-project-shimmer{0%,15%{transform:translate(-220%) skew(-20deg)}85%,to{transform:translate(320%) skew(-20deg)}}@media(prefers-reduced-motion:reduce){.start-project-btn,.start-project-btn:after{transition:none!important;animation:none!important}}a:focus-visible,button:focus-visible{outline:2px solid var(--color-on-surface);outline-offset:4px;border-radius:4px}.pp-back-link:hover{opacity:.8}.pp-deck-viewport{position:relative;width:100%;height:100dvh;overflow:hidden}.pp-track{display:flex;height:100%;transition:transform .6s var(--ease-out-expo, cubic-bezier(.16, 1, .3, 1));will-change:transform}.pp-slide{position:relative;flex:0 0 100%;width:100%;height:100%;overflow:hidden}.pp-real-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xl);align-items:center;width:100%;max-width:980px;margin:0 auto}@media(max-width:900px){.pp-real-grid{grid-template-columns:1fr;gap:var(--space-xl)}.pp-real-text{text-align:center!important}}.pp-compare-table{width:100%;max-width:760px;margin-top:var(--space-2xl)}.pp-compare-cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl)}@media(max-width:700px){.pp-compare-cols{grid-template-columns:1fr;gap:var(--space-lg)}}.pp-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md);margin-top:var(--space-lg)}@media(max-width:640px){.pp-summary-grid{grid-template-columns:1fr}}.pp-library-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-xl);width:100%;max-width:980px;margin-top:var(--space-xl);text-align:left}@media(max-width:900px){.pp-library-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.pp-library-grid{grid-template-columns:1fr}}.pp-carousel-nav{position:fixed;left:var(--space-lg);bottom:var(--space-lg);z-index:50;display:flex;align-items:center;gap:var(--space-sm)}.pp-carousel-nav button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;transition:background .2s ease,transform .2s var(--ease-out-expo, cubic-bezier(.16, 1, .3, 1))}.pp-carousel-nav button:hover:not(:disabled){background:#fff3;transform:translateY(-1px)}.pp-carousel-nav button:disabled{opacity:.3;cursor:default}.pp-carousel-count{margin-left:var(--space-xs);font-family:var(--font-display);font-size:var(--text-sm);color:#fff9;font-variant-numeric:tabular-nums}
