@charset "UTF-8";*,*:before,*:after{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:rgba(255,255,255,0)}a{text-decoration:none;color:inherit}:where([hidden]:not([hidden=until-found])){display:none!important}:where(html){-webkit-text-size-adjust:none}@supports not (min-block-size: 100dvb){:where(html){block-size:100%}}@media (prefers-reduced-motion: no-preference){:where(html:focus-within){scroll-behavior:smooth}}:where(body){-webkit-font-smoothing:antialiased}:where(input,button,textarea,select){font:inherit;color:inherit}:where(textarea){resize:block}:where(button,select,summary,[role=button],[role=option]){cursor:pointer}:where(:disabled){cursor:not-allowed}:where(label:has(>input:disabled),label:has(+input:disabled)){cursor:not-allowed}:where(button){border-style:solid}:where(a){text-underline-offset:.2ex}:where(ul,ol){list-style:none}:where(img,svg,video,canvas,audio,iframe,embed,object){display:block}:where(img,picture,svg){max-inline-size:100%;block-size:auto}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}:where(h1,h2,h3){line-height:calc(1em + .5rem)}:where(hr){border:none;border-block-start:1px solid;color:inherit;block-size:0;overflow:visible}:where(.visually-hidden:not(:focus,:active,:focus-within,.not-visually-hidden)){clip-path:inset(50%)!important;height:1px!important;width:1px!important;overflow:hidden!important;position:absolute!important;white-space:nowrap!important;border:0!important}:root{--height-header: 72px;--breakpoint-sm: 480px;--breakpoint-md: 840px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-xxl: 1600px;--breakpoint-xxxl: 1920px;--icon-size-xxs: 12px;--icon-size-xs: 16px;--icon-size-sm: 20px;--icon-size-md: 28px;--icon-size-lg: 36px;--ease-smooth: cubic-bezier(.6, 0, .25, 1);--ease-power2-out: cubic-bezier(.25, .46, .45, .94);--ease-power2-in: cubic-bezier(.165, .84, .44, 1);--transition-route-duration: .5s;--transition-route-ease: cubic-bezier(.6, 0, .25, 1);--z-index-background: 0;--z-index-layout: 10;--z-index-header-home: 20;--z-index-project-background: 50;--z-index-layout-project: 70;--z-index-header: 90;--z-index-preloader: 100;--line-height-copy: 1.3;--line-height-title: 1.1;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-xxl: 24px;--font-size-xxs: 12px;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-xxl: 26px;--font-size-title-xxs: 18px;--font-size-title-xs: 22px;--font-size-title-sm: 28px;--font-size-title-md: 44px;--font-size-title-lg: 56px;--font-size-title-xl: 72px;--font-size-title-xxl: 88px;--font-size-title-xxxl: 112px;--space-outer: 16px;--space-xxs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 18px;--space-lg: 28px;--space-xl: 36px;--space-xxl: 48px;--space-xxxl: 64px;--stroke-sm: 1px;--stroke-md: 2px;--stroke-lg: 4px;--stroke-xl: 6px;--stroke-xxl: 8px}@media (min-width: 840px){:root{--radius-xxl: 48px;--height-header: 96px}}@media (min-width: 1280px){:root{--space-outer: 20px}}@media (min-width: 1600px){:root{--space-outer: 32px}}:root{--color-text-400: #0f1b33;--color-text-300: #4a5878;--color-grayscale-500: #d0dae9;--color-grayscale-400: #dee5f0;--color-beige-700: #d0dae9;--color-beige-600: #dee5f0;--color-beige-500: #e9eef6;--color-beige-400: #f4f6fa;--color-background-400: #f4f6fa;--color-black-400: #0f1b33;--color-gray-500: #67727c;--color-gray-400: #a9b0b7;--color-orange-400: #2f5bff;--color-white-400: #ffffff;--color-cyan-500: #0086bb;--color-cyan-400: rgb(52, 191, 255);--color-text-cyan-400: #e1f5ff;--color-text-cyan-300: #81bdd8;--color-dark-blue-600: #234ba2;--color-dark-blue-500: #052e87;--color-dark-blue-400: #002474;--color-hologram-top: rgb(0, 53, 133);--color-hologram-bottom: rgba(0, 82, 145, .6)}@font-face{font-family:Urbanist;src:url(/fonts/urbanist-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Urbanist;src:url(/fonts/urbanist-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Urbanist;src:url(/fonts/urbanist-900.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:ProFontWindows;src:url(/fonts/pro-font-windows-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ProFontWindows;src:url(/fonts/pro-font-windows-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-latin-800-normal.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-latin-900-normal.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-latin-ext-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-latin-ext-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-latin-ext-800-normal.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-latin-ext-900-normal.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-vietnamese-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-vietnamese-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-vietnamese-800-normal.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"M PLUS Rounded 1c";src:url(/fonts/m-plus-rounded-1c-vietnamese-900-normal.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}.grid{display:grid;grid-template-columns:repeat(12,1fr);width:100%;gap:var(--space-md);margin:0 auto;max-width:calc(var(--breakpoint-xxxl))}@media (min-width: 840px){.grid{gap:var(--space-xl)}}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]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}.project-cubewar{--color-text-400: rgb(255, 255, 255);--color-text-300: rgb(195, 204, 219);--color-accent-400: #008dff;--color-accent-text-400: white;--color-hover: #060f1f;--color-grayscale-500: #2b4169;--color-grayscale-400: #2b4169;--color-background-400: #364e7c;--color-background-300: #1c2f4f}.project-quibbo{--color-text-400: rgb(20, 29, 37);--color-text-300: rgb(72, 85, 97);--color-accent-400: rgb(31, 129, 249);--color-accent-text-400: white;--color-hover: rgb(20, 29, 37);--color-grayscale-500: rgb(226, 233, 238);--color-grayscale-400: rgb(226, 233, 238);--color-background-400: rgb(243, 247, 250);--color-background-300: white}.project-particles{--color-text-400: white;--color-text-300: rgb(149, 155, 150);--color-accent-400: #22904b;--color-accent-text-400: white;--color-hover: #000000;--color-grayscale-500: #2c2f2c;--color-grayscale-400: #2c2f2c;--color-background-400: #191c19;--color-background-300: #141614}.project-pokedex{--color-text-400: #0c1b3a;--color-text-300: rgb(105, 111, 116);--color-hover: #011030;--color-hover-text: #ffffff;--color-accent-400: #ff5350;--color-accent-text-400: white;--color-grayscale-500: #d9dde7;--color-grayscale-400: #d9dde7;--color-background-400: #e9edf6;--color-background-300: #f9fbfe}.project-sharkie{--color-text-400: #ffffff;--color-text-300: #c6d2f2;--color-hover: #00173f;--color-hover-text: #ffffff;--color-accent-400: #176cfe;--color-accent-text-400: white;--color-grayscale-500: #364f94;--color-grayscale-400: #263e82;--color-background-400: #263e82;--color-background-300: rgb(22, 41, 94)}.project-streakon{--color-text-400: #ffffff;--color-text-300: rgb(197, 197, 197);--color-hover: rgb(41, 41, 41);--color-hover-text: #ffffff;--color-accent-400: #fec600;--color-accent-text-400: rgb(44, 44, 44);--color-grayscale-500: rgb(25, 25, 25);--color-grayscale-400: rgb(33, 33, 33);--color-background-400: #141414;--color-background-300: #090909}.preloader{position:fixed;z-index:var(--z-index-preloader);top:0;left:0;width:100%;height:100%;background-color:var(--color-beige-400);display:flex;justify-content:center;align-items:center;transition:opacity .3s ease-in-out;opacity:1}.preloader-svg{width:120px;height:120px;transition:transform .2s var(--ease-power2-in),opacity .2s var(--ease-power2-in)}.preloader-rect{transform-origin:bottom center;transition:transform .3s ease-in-out}.preloader-path{fill:var(--color-text-400)}.preloader-hidden{opacity:0;pointer-events:none!important}.preloader-hidden *{pointer-events:none!important}.preloader-hidden svg{transform:scale(.4);opacity:0}html{background:var(--color-background-400);color:var(--color-text-400);--icon-color: var(--color-text-400);font-family:"M PLUS Rounded 1c";letter-spacing:.02em;overflow-y:scroll!important;--vh: 1vh;--dvh: 1vh;--svh: 1vh;--lvh: 1vh;--dvh: 1dvh;--svh: 1svh;--lvh: 1lvh;--vw: 1vw;--dvw: 1vw;--svw: 1vw;--lvw: 1vw;--dvw: 1dvw;--svw: 1svw;--lvw: 1lvw}.is-loading{overscroll-behavior:none;position:fixed;width:calc(var(--svw) * 100);height:calc(var(--svh) * 100)}::selection{background:#2d2a24;color:#fff;text-shadow:none}::-moz-selection{background:#2d2a24;color:#fff;text-shadow:none}.children-unclickable{pointer-events:all}.children-unclickable *{pointer-events:none}.button-wrapper[data-v-8f5c0673]{border:none;border-radius:100px;letter-spacing:.02em;font-size:var(--font-size-md);font-weight:800;text-align:center;white-space:nowrap;text-transform:uppercase;background-color:transparent;transition:background-color .1s ease-in-out,color .1s ease-in-out,border-color .1s ease-in-out}.button-wrapper-rounded[data-v-8f5c0673]{border-radius:50%;aspect-ratio:1}.button-wrapper-accent[data-v-8f5c0673]{background-color:var(--color-accent-400, var(--color-orange-400));color:var(--color-accent-text-400, var(--color-white-400));--icon-color: var(--color-accent-text-400, var(--color-white-400))}@media (hover: hover) and (pointer: fine){.button-wrapper-accent[data-v-8f5c0673]:hover{background-color:var(--color-hover, var(--color-black-400));color:var(--color-hover-text, var(--color-white-400));--icon-color: var(--color-hover-text, var(--color-white-400))}}.button-wrapper-theme[data-v-8f5c0673]{background-color:var(--color-grayscale-500);color:var(--color-text-400);--icon-color: var(--color-text-400)}@media (hover: hover) and (pointer: fine){.button-wrapper-theme[data-v-8f5c0673]:hover{background-color:var(--color-hover, var(--color-black-400));color:var(--color-white-400);--icon-color: var(--color-white-400)}}.button-wrapper-background[data-v-8f5c0673]{background-color:var(--color-background-400);color:var(--color-text-400);--icon-color: var(--color-text-400)}@media (hover: hover) and (pointer: fine){.button-wrapper-background[data-v-8f5c0673]:hover{background-color:var(--color-text-400);color:var(--color-background-400);--icon-color: var(--color-background-400)}}.button-wrapper-gray[data-v-8f5c0673]{background-color:var(--color-gray-400);color:var(--color-white-400);--icon-color: var(--color-white-400)}@media (hover: hover) and (pointer: fine){.button-wrapper-gray[data-v-8f5c0673]:hover{background-color:var(--color-gray-500)}}.button-wrapper-border[data-v-8f5c0673]{border:2px solid var(--color-grayscale-400);color:var(--color-text-400);--icon-color: var(--color-text-400)}@media (hover: hover) and (pointer: fine){.button-wrapper-border[data-v-8f5c0673]:hover{background-color:var(--color-hover, var(--color-black-400));color:var(--color-white-400);--icon-color: var(--color-white-400);border-color:var(--color-hover, var(--color-black-400))}}.button[data-v-4912492e]{display:flex;align-items:center;justify-content:center}.button-size-sm[data-v-4912492e]{height:38px;padding:0 16px}.button-size-md[data-v-4912492e]{height:44px;padding:0 26px}.button-size-lg[data-v-4912492e]{height:50px;padding:0 34px}.logo-image[data-v-a0de47b3]{width:72px;height:72px;object-fit:contain;display:block;filter:brightness(1.25) contrast(1.1)}.button-round[data-v-801e9213]{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border-radius:50%}.button-round-size-sm[data-v-801e9213]{width:32px;padding:6px}.button-round-size-md[data-v-801e9213]{width:44px;padding:10px}.button-round-size-lg[data-v-801e9213]{width:52px;padding:14px}.volume-body[data-v-d3482ce3]{transition:transform .2s ease-in-out,fill .2s ease-in-out;transform:translate(30px)}.volume-body-active[data-v-d3482ce3]{transform:translate(0)}.volume-wave-1[data-v-d3482ce3],.volume-wave-2[data-v-d3482ce3]{transition:transform .2s ease-in-out,opacity .2s ease-in-out,fill .2s ease-in-out;transform:translate(-20px);opacity:0}.volume-wave-1[data-v-d3482ce3] *,.volume-wave-2[data-v-d3482ce3] *{transition:fill .2s ease-in-out}.volume-wave-1-active[data-v-d3482ce3],.volume-wave-2-active[data-v-d3482ce3]{transform:translate(0);opacity:1}.music-toggle-dark[data-v-86d02f38]{background-color:var(--color-dark-blue-500);color:var(--color-white-400);--icon-color: var(--color-white-400)}.header[data-v-ff441824]{position:fixed;top:0;display:flex;align-items:center;justify-content:space-between;left:50%;transform:translate(-50%);width:var(--breakpoint-xxxl);padding:0 var(--space-outer);max-width:100%;z-index:var(--z-index-header);height:var(--height-header);pointer-events:none;--scrolled: 0}.header-scrolled[data-v-ff441824]{--scrolled: 1}.header-back[data-v-ff441824]{pointer-events:none;opacity:0;transition:opacity .2s ease-in-out;transition-delay:.1s;pointer-events:auto}.header-back-icon[data-v-ff441824]{width:100%;transform:rotate(180deg)}.header-back-isProjectPage[data-v-ff441824]{pointer-events:auto;opacity:1}.header-left[data-v-ff441824]{position:absolute;left:var(--space-outer);top:50%;transform:translateY(-50%)}.header-get-in-touch[data-v-ff441824]{width:fit-content}.header-get-in-touch-isProjectPage[data-v-ff441824]{opacity:1!important}.header-right[data-v-ff441824]{position:absolute;right:var(--space-outer);top:50%;transform:translateY(-50%);pointer-events:auto;display:flex;align-items:center;gap:var(--space-sm)}.header-music-toggle[data-v-ff441824]{display:flex}.header-dark[data-v-ff441824]{color:var(--color-white-400);--icon-color: var(--color-white-400)}.header-get-in-touch[data-v-ff441824]{display:none}@media (min-width: 840px){.header-get-in-touch[data-v-ff441824]{display:flex}}.header-logo[data-v-ff441824]{cursor:pointer;display:flex;gap:var(--space-xs);transition:color .2s ease-in-out;opacity:var(--scrolled);pointer-events:none}.header-logo-clickable[data-v-ff441824]{pointer-events:all}@media (min-width: 840px){.header-logo[data-v-ff441824]{gap:var(--space-sm)}}.header-logo-isProjectPage[data-v-ff441824]{transition:opacity .2s ease-in-out;pointer-events:none;opacity:0}.header-logo-image[data-v-ff441824]{width:56px;height:56px;object-fit:contain}@media (min-width: 840px){.header-logo-image[data-v-ff441824]{width:64px;height:64px}}.header-logo-text[data-v-ff441824]{font-weight:900;font-size:18px}@media (min-width: 840px){.header-logo-text[data-v-ff441824]{font-size:20px}}.cursor-wrapper[data-v-f7210900]{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;will-change:transform;display:none}@media (hover: hover) and (pointer: fine){.cursor-wrapper[data-v-f7210900]{display:block}}.cursor-scale[data-v-f7210900]{position:relative;transform-origin:center;will-change:transform;transition:transform .1s ease-in-out}.cursor[data-v-f7210900]{position:absolute;top:0;left:0;transform:translate(-50%,-50%);opacity:0;transition:opacity .1s ease-in-out}.cursor-active[data-v-f7210900]{opacity:1}.cursor-circle-black[data-v-f7210900]{width:26px;height:26px;border-radius:50%;border:4px solid var(--color-text-400)}.cursor-circle-white[data-v-f7210900]{width:26px;height:26px;border-radius:50%;border:4px solid var(--color-white-400)}.cursor-arrow[data-v-f7210900]{width:54px;height:54px;transition:background-color .1s ease-in-out,opacity .1s ease-in-out;background-color:var(--color-accent-400, var(--color-orange-400));border-radius:50%;display:flex;align-items:center;justify-content:center}.cursor-arrow-icon[data-v-f7210900]{color:var(--color-accent-text-400, var(--color-white-400));--icon-color: var(--color-accent-text-400, var(--color-white-400));width:24px}.cursor-arrow-external[data-v-f7210900]{width:54px;height:54px;transition:background-color .1s ease-in-out,opacity .1s ease-in-out;background-color:var(--color-accent-400, var(--color-orange-400));border-radius:50%;display:flex;align-items:center;justify-content:center}.cursor-arrow-external-icon[data-v-f7210900]{color:var(--color-accent-text-400, var(--color-white-400));--icon-color: var(--color-accent-text-400, var(--color-white-400));width:24px;transform:rotate(-45deg)}.layout[data-v-1d5c965f]{width:100%;display:flex;flex-direction:column;align-items:center;z-index:var(--z-index-layout);position:relative}.appearing-text[data-v-541b11c7]{position:relative}.appearing-text-value[data-v-541b11c7]{position:absolute}.appearing-text-clone[data-v-541b11c7]{visibility:hidden}.banner[data-v-9d332cce]{width:fit-content;transform-origin:center center;position:relative}.banner-background[data-v-9d332cce]{position:absolute;outline:var(--stroke-lg) solid var(--color-beige-400);background-color:#263c70;top:0;left:0;width:100%;height:100%;transform-origin:left center}.banner-size-sm[data-v-9d332cce]{padding:2px var(--space-xxs)}@media (min-width: 1024px){.banner-size-sm[data-v-9d332cce]{padding:var(--space-xxs) var(--space-xs)}}.banner-size-md[data-v-9d332cce]{padding:var(--space-xxs) var(--space-xs)}@media (min-width: 1024px){.banner-size-md[data-v-9d332cce]{padding:var(--space-xs) var(--space-sm)}}.banner-copy[data-v-9d332cce]{font-weight:700;color:var(--color-white-400);font-family:Urbanist,sans-serif;text-transform:uppercase}.banner-copy-size-sm[data-v-9d332cce]{font-size:var(--font-size-title-xxs)}@media (min-width: 1280px){.banner-copy-size-sm[data-v-9d332cce]{font-size:var(--font-size-title-xs)}}.banner-copy-size-md[data-v-9d332cce]{font-size:var(--font-size-title-xxs)}@media (min-width: 1024px){.banner-copy-size-md[data-v-9d332cce]{font-size:var(--font-size-title-xs)}}@media (min-width: 1280px){.banner-copy-size-md[data-v-9d332cce]{font-size:var(--font-size-title-sm)}}.hero[data-v-c5a4abea]{max-height:calc(var(--lvh) * 100);height:calc(var(--lvh) * 100);width:100%;display:flex;position:relative;overflow:hidden}.hero-lang-switch[data-v-c5a4abea]{position:absolute;top:24px;left:24px;z-index:100}@media (min-width: 840px){.hero-lang-switch[data-v-c5a4abea]{top:28px;left:28px}}.hero-content[data-v-c5a4abea]{align-items:center;justify-content:center;height:46%}@media (orientation: landscape){.hero-content[data-v-c5a4abea]{height:100%}}@media (orientation: landscape) and (min-width: 840px){.hero-content[data-v-c5a4abea]{padding-bottom:30%}}@media (orientation: landscape) and (min-width: 1024px){.hero-content[data-v-c5a4abea]{padding-bottom:5%}}.hero-content-inner[data-v-c5a4abea]{transform-origin:center center;grid-column:1/13;gap:var(--space-xxl);display:flex;flex-direction:column;align-items:center;justify-content:center;width:fit-content;position:relative;left:50%;transform:translate(-50%)}@media (orientation: landscape){.hero-content-inner[data-v-c5a4abea]{left:0;transform:translate(0);grid-column:2/13;width:fit-content}}.hero-content-copys[data-v-c5a4abea]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-sm)}@media (min-width: 840px){.hero-content-copys[data-v-c5a4abea]{gap:var(--space-md)}}.hero-intro[data-v-c5a4abea]{display:flex;align-items:center;gap:12px;margin-bottom:-2px;opacity:0;animation:hero-intro-in-c5a4abea 1s cubic-bezier(.22,1,.36,1) .15s forwards}.hero-intro-line[data-v-c5a4abea]{width:34px;height:2px;background:currentColor;opacity:.45;transform-origin:left center;animation:hero-line-in-c5a4abea .7s ease-out .2s both}.hero-intro-text[data-v-c5a4abea]{font-size:.9rem;font-weight:700;letter-spacing:.18em;line-height:1}.hero-title[data-v-c5a4abea]{font-weight:900;letter-spacing:.02em;font-size:var(--font-size-title-lg);white-space:nowrap;opacity:0;animation:hero-title-in-c5a4abea .9s cubic-bezier(.22,1,.36,1) .35s forwards}@media (orientation: landscape){.hero-title[data-v-c5a4abea]{font-size:var(--font-size-title-lg)}}@media (orientation: landscape) and (min-height: 480px) and (min-width: 480px){.hero-title[data-v-c5a4abea]{font-size:var(--font-size-title-xl)}}@media (orientation: landscape) and (min-height: 480px) and (min-width: 1280px){.hero-title[data-v-c5a4abea]{font-size:var(--font-size-title-xxl)}}.hero-banner[data-v-c5a4abea]{position:relative;align-self:flex-start;right:auto;bottom:auto;z-index:10;margin-top:calc(var(--space-sm) * -.25);margin-left:var(--space-md);transform:rotate(-5deg);transform-origin:left center;opacity:0;animation:hero-banner-in-c5a4abea .8s cubic-bezier(.22,1,.36,1) .65s forwards}@media (min-width: 480px){.hero-banner[data-v-c5a4abea]{margin-top:calc(var(--space-sm) * -.35);margin-left:var(--space-lg)}}@media (min-width: 1024px){.hero-banner[data-v-c5a4abea]{margin-top:calc(var(--space-md) * -.35);margin-left:var(--space-lg)}}.hero-specialties[data-v-c5a4abea]{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:4px;margin-left:2px;font-size:.82rem;font-weight:700;letter-spacing:.13em;line-height:1.5;opacity:0;animation:hero-specialties-in-c5a4abea 1s cubic-bezier(.22,1,.36,1) 1.05s forwards}.hero-specialties-dot[data-v-c5a4abea]{opacity:.45}@keyframes hero-intro-in-c5a4abea{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-line-in-c5a4abea{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes hero-title-in-c5a4abea{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-banner-in-c5a4abea{0%{opacity:0;transform:rotate(-5deg) translateY(16px)}to{opacity:1;transform:rotate(-5deg) translateY(0)}}@keyframes hero-specialties-in-c5a4abea{0%{opacity:0;transform:translateY(18px);filter:blur(4px)}to{opacity:.78;transform:translateY(0);filter:blur(0)}}@media (prefers-reduced-motion: reduce){.hero-intro[data-v-c5a4abea],.hero-intro-line[data-v-c5a4abea],.hero-title[data-v-c5a4abea],.hero-banner[data-v-c5a4abea],.hero-specialties[data-v-c5a4abea]{animation:none;opacity:1;transform:none}}.projected-element[data-v-39d7536c]{width:100%;height:100%}@media (orientation: landscape){.projected-element[data-v-39d7536c]{width:0;height:0;position:relative}}.box-description[data-v-2d5ee98c]{--line-length: min(48px, calc(var(--svw) * 5));gap:var(--space-xxs);position:absolute;bottom:var(--count-height);width:calc(100% - var(--space-outer) * 2);left:var(--space-outer)}@media (orientation: landscape){.box-description[data-v-2d5ee98c]{position:relative;left:0;bottom:0;width:480px;max-width:calc(var(--svw) * 38);transform:translate(-100%,-50%);padding-top:3px;padding-right:var(--line-length)}}@media (orientation: landscape) and (min-height: 480px){.box-description[data-v-2d5ee98c]{width:410px;max-width:calc(var(--svw) * 32)}}.box-description-line[data-v-2d5ee98c]{width:100%;height:1px;background-color:var(--color-cyan-400)}@media (orientation: landscape){.box-description-line[data-v-2d5ee98c]{display:none}}.box-description-details[data-v-2d5ee98c]{padding:var(--space-sm) var(--space-md);display:flex;align-items:center;justify-content:space-between}@media (orientation: landscape){.box-description-details[data-v-2d5ee98c]{display:none}}.box-description-details-name[data-v-2d5ee98c]{font-size:var(--font-size-title-xs);font-weight:700}.box-description-details-location[data-v-2d5ee98c]{display:flex;align-items:center;gap:var(--space-xs)}.box-description-details-location-icon[data-v-2d5ee98c]{width:var(--icon-size-xs);--icon-color: var(--color-white-400);transform:translateY(-1px)}.box-description-details-location-copy[data-v-2d5ee98c]{font-size:var(--font-size-md)}.box-description[data-v-2d5ee98c]:after,.box-description[data-v-2d5ee98c]:before{display:none}@media (orientation: landscape){.box-description[data-v-2d5ee98c]:after,.box-description[data-v-2d5ee98c]:before{display:block}}.box-description[data-v-2d5ee98c]:after{content:"";position:absolute;top:50%;transform:translateY(-50%);right:0;width:11px;height:11px;background-color:var(--color-cyan-400);border-radius:50%}.box-description[data-v-2d5ee98c]:before{content:"";position:absolute;top:50%;transform:translateY(-50%);right:0;width:var(--line-length);height:0;border-top:var(--stroke-sm) solid var(--color-cyan-400)}.box-description-content[data-v-2d5ee98c]{border:var(--stroke-sm) solid var(--color-cyan-400);border-radius:var(--radius-md);background:linear-gradient(to bottom,var(--color-hologram-top) 0%,var(--color-hologram-bottom) 100%)}@media (orientation: landscape){.box-description-content[data-v-2d5ee98c]{padding:var(--space-xs) var(--space-sm)}}@media (orientation: landscape) and (min-width: 840px){.box-description-content[data-v-2d5ee98c]{padding:var(--space-sm) var(--space-md)}}.box-description-copy[data-v-2d5ee98c]{will-change:opacity;font-size:var(--font-size-md);padding:var(--space-sm) var(--space-md)}@media (orientation: landscape){.box-description-copy[data-v-2d5ee98c]{padding:0;font-size:var(--font-size-sm)}}@media (orientation: landscape) and (min-height: 480px){.box-description-copy[data-v-2d5ee98c]{font-size:var(--font-size-lg)}}.box-services[data-v-8eb3bdc6]{--line-length: min(48px, calc(var(--svw) * 5));position:absolute;bottom:var(--count-height);width:calc(100% - var(--space-outer) * 2);left:var(--space-outer)}@media (orientation: landscape){.box-services[data-v-8eb3bdc6]{width:480px;max-width:calc(var(--svw) * 37);padding-left:var(--line-length);position:relative;left:0;bottom:0;padding-top:3px;transform:translateY(-50%)}}@media (orientation: landscape) and (min-height: 480px){.box-services[data-v-8eb3bdc6]{width:380px;max-width:calc(var(--svw) * 36)}}.box-services[data-v-8eb3bdc6]:after,.box-services[data-v-8eb3bdc6]:before{display:none}@media (orientation: landscape){.box-services[data-v-8eb3bdc6]:after,.box-services[data-v-8eb3bdc6]:before{display:block}}.box-services[data-v-8eb3bdc6]:after{content:"";position:absolute;top:50%;transform:translateY(-50%);left:0;width:11px;height:11px;background-color:var(--color-cyan-400);border-radius:50%}.box-services[data-v-8eb3bdc6]:before{content:"";position:absolute;top:50%;transform:translateY(-50%);left:0;height:0;border-top:var(--stroke-sm) solid var(--color-cyan-400)}@media (orientation: landscape){.box-services[data-v-8eb3bdc6]:before{width:var(--line-length)}}.box-services-content[data-v-8eb3bdc6]{border:var(--stroke-sm) solid var(--color-cyan-400);border-radius:var(--radius-md);background:linear-gradient(to bottom,var(--color-hologram-top) 0%,var(--color-hologram-bottom) 100%);display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-sm) var(--space-md)}@media (orientation: landscape){.box-services-content[data-v-8eb3bdc6]{padding:var(--space-xs) var(--space-sm)}}@media (min-width: 840px){.box-services-content[data-v-8eb3bdc6]{padding:var(--space-sm) var(--space-md)}}.box-services-list[data-v-8eb3bdc6]{display:flex;flex-direction:column;gap:var(--space-xs)}.box-services-list-item[data-v-8eb3bdc6]{display:flex;flex-direction:column;padding-left:18px;position:relative}.box-services-list-item[data-v-8eb3bdc6]:before{content:"";position:absolute;left:2px;top:6px;width:4px;height:4px;background-color:var(--color-text-cyan-400);border-radius:50%}.box-services-list-item-name[data-v-8eb3bdc6]{font-size:var(--font-size-md)}@media (orientation: landscape){.box-services-list-item-name[data-v-8eb3bdc6]{font-size:var(--font-size-sm)}}@media (orientation: landscape) and (min-height: 480px){.box-services-list-item-name[data-v-8eb3bdc6]{font-size:var(--font-size-lg)}}.box-services-title[data-v-8eb3bdc6]{font-size:var(--font-size-title-xs);font-weight:700}@media (orientation: landscape){.box-services-title[data-v-8eb3bdc6]{font-size:var(--font-size-title-xxs)}}@media (orientation: landscape) and (min-height: 480px){.box-services-title[data-v-8eb3bdc6]{font-size:var(--font-size-title-xs)}}.box-details[data-v-d9bb4c02]{--line-length: min(48px, calc(var(--svw) * 5));display:none}@media (orientation: landscape){.box-details[data-v-d9bb4c02]{display:block;position:absolute;padding-bottom:3px;padding-right:var(--line-length);width:240px;max-width:calc(var(--svw) * 30);transform:translate(-100%,-50%)}}@media (orientation: landscape) and (min-height: 480px){.box-details[data-v-d9bb4c02]{width:240px}}.box-details[data-v-d9bb4c02]:after,.box-details[data-v-d9bb4c02]:before{display:none}@media (orientation: landscape){.box-details[data-v-d9bb4c02]:after,.box-details[data-v-d9bb4c02]:before{display:block}}.box-details[data-v-d9bb4c02]:after{content:"";position:absolute;top:50%;transform:translateY(-50%);right:0;width:11px;height:11px;background-color:var(--color-cyan-400);border-radius:50%}.box-details[data-v-d9bb4c02]:before{content:"";position:absolute;top:50%;transform:translateY(-50%);right:0;width:var(--line-length);height:0;border-bottom:var(--stroke-sm) solid var(--color-cyan-400)}.box-details-content[data-v-d9bb4c02]{border:var(--stroke-sm) solid var(--color-cyan-400);border-radius:var(--radius-md);background:linear-gradient(to bottom,var(--color-hologram-top) 0%,var(--color-hologram-bottom) 100%);gap:var(--space-xxs);display:flex;flex-direction:row;justify-content:space-between;padding:var(--space-sm) var(--space-md)}@media (orientation: landscape){.box-details-content[data-v-d9bb4c02]{flex-direction:column;justify-content:flex-start;padding:var(--space-xs) var(--space-sm)}}@media (min-width: 840px){.box-details-content[data-v-d9bb4c02]{padding:var(--space-sm) var(--space-md)}}.box-details-item[data-v-d9bb4c02]{display:flex;align-items:center;gap:var(--space-xs);flex-direction:row;white-space:nowrap;height:var(--icon-size-sm)}.box-details-icon[data-v-d9bb4c02]{width:var(--icon-size-xxs);transform:translateY(-1px);--icon-color: var(--color-white-400)}@media (min-width: 840px){.box-details-icon[data-v-d9bb4c02]{width:var(--icon-size-xs)}}.box-details-title[data-v-d9bb4c02]{font-size:var(--font-size-title-xxs);font-weight:700}@media (min-width: 840px){.box-details-title[data-v-d9bb4c02]{font-size:var(--font-size-title-sm)}}.box-details-items[data-v-d9bb4c02]{display:flex;font-size:var(--font-size-sm);flex-direction:column}@media (min-width: 840px){.box-details-items[data-v-d9bb4c02]{font-size:var(--font-size-md)}}.box-details-items-copy[data-v-d9bb4c02]{flex:.5}.progress-count[data-v-f1049d86]{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-cyan-400);font-family:ProFontWindows;text-align:center;align-items:center;height:var(--count-height);will-change:transform,opacity;padding:0 var(--space-lg)}@media (orientation: landscape){.progress-count[data-v-f1049d86]{display:none}}.progress-count-bar[data-v-f1049d86]{width:100%;height:1px;border-radius:var(--radius-md);grid-column:2/10;background-color:var(--color-hologram-bottom)}.progress-count-bar-fill[data-v-f1049d86]{background-color:var(--color-cyan-400);height:100%;border-radius:var(--radius-md)}.progress-count-percentage[data-v-f1049d86]{grid-column:10/12;white-space:nowrap}.about-content[data-v-1d8f724d]{position:absolute;color:var(--color-text-cyan-400);font-family:ProFontWindows;top:0;width:100%;padding:var(--space-outer);left:50%;transform:translate(-50%);height:calc(var(--lvh) * 100);--count-height: calc(max(calc((var(--lvh) - var(--svh)) * 100), 36px) + var(--space-outer))}.about-details[data-v-1d8f724d],.about-description[data-v-1d8f724d],.about-services[data-v-1d8f724d]{display:flex;justify-content:center;align-items:center;will-change:transform,opacity;height:100%;width:100%;position:absolute;top:0;left:0}@media (orientation: landscape){.about-details[data-v-1d8f724d],.about-description[data-v-1d8f724d],.about-services[data-v-1d8f724d]{width:100%;height:0;top:50%}}.about-progress-count[data-v-1d8f724d]{will-change:transform,opacity;position:absolute;bottom:0;left:var(--space-outer);width:calc(100% - var(--space-outer) * 2)}.notch[data-v-23b2a809]{aspect-ratio:1;overflow:hidden}.notch-section[data-v-ad05fe3a]{position:relative;width:100%;display:flex;flex-direction:row;justify-content:space-between}.notch-element[data-v-ad05fe3a]{width:var(--radius-xxl)}.notch-element-right[data-v-ad05fe3a]{transform:scaleX(-1)}.projects[data-v-cd8a73f1]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;width:100%;gap:var(--space-xl);padding-left:var(--space-outer);padding-right:var(--space-outer);padding-top:96px;padding-bottom:96px;min-height:calc(var(--lvh) * 100 + var(--radius-xxl));background-color:var(--color-beige-400);background-image:radial-gradient(ellipse 34% 26% at 8% 48%,rgba(47,91,255,.11),transparent 70%),radial-gradient(ellipse 34% 26% at 92% 62%,rgba(47,91,255,.09),transparent 70%),radial-gradient(rgba(15,27,51,.1) 1px,transparent 1.4px);background-size:100% 100%,100% 100%,26px 26px}@media (min-width: 840px){.projects[data-v-cd8a73f1]{padding-top:144px;padding-bottom:144px;gap:var(--space-xxl)}}@media (min-width: 1024px){.projects[data-v-cd8a73f1]{gap:var(--space-xxxl)}}.projects-title[data-v-cd8a73f1]{position:relative;padding-top:var(--space-md);grid-column:1/13;max-width:100%}@media (min-width: 840px){.projects-title[data-v-cd8a73f1]{grid-column:1/10}}@media (min-width: 1024px){.projects-title[data-v-cd8a73f1]{grid-column:3/8}}.projects-title-copy[data-v-cd8a73f1]{color:var(--color-text-400);font-weight:900;letter-spacing:.01em;font-size:clamp(2.5rem,5vw,5rem);line-height:.95;white-space:normal;text-wrap:balance}@media (min-width: 840px){.projects-title-copy[data-v-cd8a73f1]{white-space:nowrap}}@media (min-width: 480px){.projects-title-copy[data-v-cd8a73f1]{font-size:var(--font-size-title-lg)}}@media (min-width: 1280px){.projects-title-copy[data-v-cd8a73f1]{font-size:var(--font-size-title-xl)}}.projects-notch-start[data-v-cd8a73f1]{position:absolute;top:0;left:0;transform:translateY(-100%);color:var(--color-beige-400);--icon-color: var(--color-beige-400)}.projects-notch-end[data-v-cd8a73f1]{position:absolute;bottom:0;left:0;color:var(--color-beige-600);--icon-color: var(--color-beige-600)}.projects-cards[data-v-cd8a73f1]{max-width:100%;grid-column:1/span 12;display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:var(--space-lg)}@media (min-width: 840px){.projects-cards[data-v-cd8a73f1]{grid-column:2/span 10;grid-template-columns:repeat(2,minmax(0,1fr))}.projects-cards .pcard-1[data-v-cd8a73f1]{grid-column:1/-1}}@media (min-width: 1024px){.projects-stage[data-v-cd8a73f1]{row-gap:var(--space-lg)}.projects-cards[data-v-cd8a73f1]{display:contents}.projects .pcard-1[data-v-cd8a73f1]{grid-column:5/9;grid-row:1}.projects .pcard-2[data-v-cd8a73f1]{grid-column:5/7;grid-row:2}.projects .pcard-3[data-v-cd8a73f1]{grid-column:7/9;grid-row:2}.projects .note--l1[data-v-cd8a73f1]{grid-column:1/5;grid-row:1}.projects .note--r1[data-v-cd8a73f1]{grid-column:9/13;grid-row:1}.projects .note--l2[data-v-cd8a73f1]{grid-column:1/5;grid-row:2}.projects .note--r2[data-v-cd8a73f1]{grid-column:9/13;grid-row:2}}@media (min-width: 1280px){.projects-stage[data-v-cd8a73f1]{row-gap:var(--space-xl)}}.projects-stage[data-v-cd8a73f1]{width:100%;max-width:100%;min-width:0}.pcard[data-v-cd8a73f1],.pcard-frame[data-v-cd8a73f1],.pcard-body[data-v-cd8a73f1]{min-width:0;max-width:100%}.note[data-v-cd8a73f1]{display:none}@media (min-width: 1024px){.note[data-v-cd8a73f1]{position:relative;align-self:center;display:flex;flex-direction:column;gap:14px}}.note--l1[data-v-cd8a73f1],.note--l2[data-v-cd8a73f1]{align-items:flex-end;text-align:right}.note--l1 .note-link[data-v-cd8a73f1],.note--l2 .note-link[data-v-cd8a73f1]{right:-37px}.note--l1 .note-link[data-v-cd8a73f1]:after,.note--l2 .note-link[data-v-cd8a73f1]:after{right:-4px}.note--r1[data-v-cd8a73f1],.note--r2[data-v-cd8a73f1]{align-items:flex-start;text-align:left}.note--r1 .note-link[data-v-cd8a73f1],.note--r2 .note-link[data-v-cd8a73f1]{left:-37px}.note--r1 .note-link[data-v-cd8a73f1]:after,.note--r2 .note-link[data-v-cd8a73f1]:after{left:-4px}.note-link[data-v-cd8a73f1]{position:absolute;top:50%;width:37px;height:0;pointer-events:none}.note-link[data-v-cd8a73f1]:before{content:"";position:absolute;left:0;right:0;top:0;border-top:1px dashed rgba(47,91,255,.65);transform-origin:left center}.note-link[data-v-cd8a73f1]:after{content:"";position:absolute;top:-4.5px;width:8px;height:8px;border-radius:50%;background:#2f5bff;box-shadow:0 0 0 4px #2f5bff2e;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.note--r1 .note-link[data-v-cd8a73f1]:before,.note--r2 .note-link[data-v-cd8a73f1]:before{transform-origin:right center}.note-tag b[data-v-cd8a73f1]{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.note-text[data-v-cd8a73f1]{transition:color .25s ease}.note.is-active .note-text[data-v-cd8a73f1]{color:var(--color-text-400)}.note.is-active .note-tag b[data-v-cd8a73f1]{transform:scale(1.15)}.note.is-active .note-link[data-v-cd8a73f1]:before{border-top-style:solid;border-top-color:#2f5bff}.note.is-active .note-link[data-v-cd8a73f1]:after{transform:scale(1.5)}.note.is-active .note-chips span[data-v-cd8a73f1]{border-color:#2f5bff73}.note-tag[data-v-cd8a73f1]{display:inline-flex;align-items:center;gap:10px;color:var(--color-text-300);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.note-tag b[data-v-cd8a73f1]{min-width:30px;height:22px;padding:0 8px;display:grid;place-items:center;border-radius:999px;background:#2f5bff;color:#fff;font-size:12px;letter-spacing:.04em}.note--l1 .note-tag[data-v-cd8a73f1],.note--l2 .note-tag[data-v-cd8a73f1]{flex-direction:row-reverse}.note-text[data-v-cd8a73f1]{max-width:320px;margin:0;color:var(--color-text-300);font-size:16px;font-weight:500;line-height:1.6}.note-chips[data-v-cd8a73f1]{max-width:380px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.note-chips span[data-v-cd8a73f1]{padding:6px 13px;border:1px solid rgba(15,27,51,.14);border-radius:999px;background:#ffffff80;color:var(--color-text-400);font-size:13px;font-weight:600;line-height:1.4;transition:border-color .2s ease,color .2s ease}.note-chips span[data-v-cd8a73f1]:hover{border-color:#2f5bff99;color:#2f5bff}.note-groups[data-v-cd8a73f1]{width:100%;max-width:340px;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:24px;list-style:none}.note-groups li[data-v-cd8a73f1]{position:relative;padding:11px 0 11px 16px;border-bottom:1px dashed rgba(15,27,51,.14);color:var(--color-text-400);font-size:15px;font-weight:700;line-height:1.3}.note-groups li[data-v-cd8a73f1]:before{content:"";position:absolute;left:0;top:50%;width:6px;height:6px;transform:translateY(-50%);border-radius:50%;background:#2f5bff}.pcard[data-v-cd8a73f1]{position:relative;display:block;border-radius:22px;transition:translate .25s cubic-bezier(.2,.8,.2,1)}@media (hover: hover) and (pointer: fine){.pcard[data-v-cd8a73f1]:hover{translate:0 -4px}.pcard:hover .pcard-frame[data-v-cd8a73f1]{animation-play-state:paused;border-color:#2f5bff99;box-shadow:inset 0 1px #ffffffe6,0 20px 44px #2f5bff29}.pcard:hover .pcard-media img[data-v-cd8a73f1]{transform:scale(1.05)}.pcard:hover .pcard-frame[data-v-cd8a73f1]:before,.pcard:hover .pcard-media[data-v-cd8a73f1]:after{opacity:1}.pcard:hover .pcard-arrow svg[data-v-cd8a73f1]{animation-play-state:paused;transform:rotate(-45deg)}}.pcard[data-v-cd8a73f1]:focus-visible{outline:2px solid #2f5bff;outline-offset:4px}.pcard-frame[data-v-cd8a73f1]{position:relative;height:100%;display:flex;flex-direction:column;padding:8px;border:1px solid rgba(15,27,51,.09);border-radius:22px;background:#ffffff8c;box-shadow:inset 0 1px #ffffffe6,0 10px 28px #0f1b3314;transform:perspective(900px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));transition:transform .18s ease-out,border-color .25s ease,box-shadow .25s ease}.pcard-frame[data-v-cd8a73f1]:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(260px circle at var(--mx, 50%) var(--my, 0%),rgba(47,91,255,.14),transparent 65%);opacity:0;transition:opacity .25s ease;pointer-events:none}.pcard-media[data-v-cd8a73f1]{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:16px;background:var(--color-beige-500)}.pcard-media img[data-v-cd8a73f1]{width:100%;height:100%;display:block;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.2,1)}.pcard-media[data-v-cd8a73f1]:after{content:"";position:absolute;inset:0;background:radial-gradient(220px circle at var(--mx, 50%) var(--my, 30%),rgba(255,255,255,.24),transparent 65%);opacity:0;transition:opacity .25s ease;pointer-events:none}.pcard-badge[data-v-cd8a73f1]{position:absolute;top:10px;left:10px;padding:4px 10px;border-radius:999px;background:#0f1b33ad;color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.pcard-arrow[data-v-cd8a73f1]{position:absolute;right:10px;bottom:10px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#2f5bff;color:#fff;box-shadow:0 6px 16px #2f5bff66}.pcard-arrow svg[data-v-cd8a73f1]{transition:transform .25s cubic-bezier(.2,.8,.2,1)}.pcard-body[data-v-cd8a73f1]{position:relative;flex:1;display:flex;flex-direction:column;gap:2px;padding:12px 6px 6px}.pcard-title[data-v-cd8a73f1]{margin:0;color:var(--color-text-400);font-size:var(--font-size-title-xs);font-weight:700;line-height:1.25}.pcard-desc[data-v-cd8a73f1]{margin:0;color:var(--color-text-300);font-size:var(--font-size-md);font-weight:500;line-height:1.4}@media (min-width: 1024px){.pcard-2 .pcard-title[data-v-cd8a73f1],.pcard-3 .pcard-title[data-v-cd8a73f1]{font-size:17px}.pcard-2 .pcard-desc[data-v-cd8a73f1],.pcard-3 .pcard-desc[data-v-cd8a73f1]{font-size:14px}.pcard-2 .pcard-arrow[data-v-cd8a73f1],.pcard-3 .pcard-arrow[data-v-cd8a73f1]{right:8px;bottom:8px;width:32px;height:32px}.pcard-2 .pcard-badge[data-v-cd8a73f1],.pcard-3 .pcard-badge[data-v-cd8a73f1]{top:8px;left:8px;padding:3px 8px;font-size:10px}}.projects.is-in .projects-title[data-v-cd8a73f1]{animation:projects-in-cd8a73f1 .7s cubic-bezier(.2,.8,.2,1) backwards}.projects.is-in .pcard-1[data-v-cd8a73f1]{animation:card-in-cd8a73f1 .8s cubic-bezier(.2,.8,.2,1) .1s backwards}.projects.is-in .pcard-2[data-v-cd8a73f1]{animation:card-in-l-cd8a73f1 .8s cubic-bezier(.2,.8,.2,1) .28s backwards}.projects.is-in .pcard-3[data-v-cd8a73f1]{animation:card-in-r-cd8a73f1 .8s cubic-bezier(.2,.8,.2,1) .38s backwards}.projects.is-in .note--l1[data-v-cd8a73f1],.projects.is-in .note--l2[data-v-cd8a73f1]{animation:note-in-l-cd8a73f1 .7s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--n, 0) * 90ms + .35s)}.projects.is-in .note--r1[data-v-cd8a73f1],.projects.is-in .note--r2[data-v-cd8a73f1]{animation:note-in-r-cd8a73f1 .7s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--n, 0) * 90ms + .35s)}.projects.is-in .note-tag b[data-v-cd8a73f1]{animation:pop-cd8a73f1 .5s cubic-bezier(.34,1.56,.64,1) backwards;animation-delay:calc(var(--n, 0) * 90ms + .6s)}.projects.is-in .note-chips span[data-v-cd8a73f1]{animation:pop-cd8a73f1 .45s cubic-bezier(.34,1.56,.64,1) backwards;animation-delay:calc(.65s + var(--k, 0) * 45ms)}.projects.is-in .note-groups li[data-v-cd8a73f1]{animation:item-in-cd8a73f1 .5s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(.65s + var(--k, 0) * 70ms)}.projects.is-in .note-link[data-v-cd8a73f1]:before{animation:line-draw-cd8a73f1 .6s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--n, 0) * 90ms + .8s)}.projects.is-in .note-link[data-v-cd8a73f1]:after{animation:pop-cd8a73f1 .45s cubic-bezier(.34,1.56,.64,1) backwards;animation-delay:calc(var(--n, 0) * 90ms + 1.25s)}@keyframes projects-in-cd8a73f1{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes card-in-cd8a73f1{0%{opacity:0;transform:translateY(28px) scale(.96)}to{opacity:1;transform:none}}@keyframes card-in-l-cd8a73f1{0%{opacity:0;transform:translateY(30px) rotate(-3deg) scale(.96)}to{opacity:1;transform:none}}@keyframes card-in-r-cd8a73f1{0%{opacity:0;transform:translateY(30px) rotate(3deg) scale(.96)}to{opacity:1;transform:none}}@keyframes note-in-l-cd8a73f1{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:none}}@keyframes note-in-r-cd8a73f1{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:none}}@keyframes item-in-cd8a73f1{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}@keyframes pop-cd8a73f1{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes line-draw-cd8a73f1{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.pcard-note[data-v-cd8a73f1]{margin:8px 0 0;padding-top:8px;border-top:1px dashed rgba(15,27,51,.14);color:var(--color-text-300);font-size:14px;font-weight:500;line-height:1.5}.pcard-chips[data-v-cd8a73f1]{min-width:0;max-width:100%;margin-top:10px;padding-bottom:2px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.pcard-chips[data-v-cd8a73f1]::-webkit-scrollbar{display:none}.pcard-chips span[data-v-cd8a73f1]{flex:none;padding:5px 11px;border:1px solid rgba(15,27,51,.14);border-radius:999px;background:#fff9;color:var(--color-text-400);font-size:12.5px;font-weight:600;white-space:nowrap}@media (min-width: 1024px){.pcard-note[data-v-cd8a73f1],.pcard-chips[data-v-cd8a73f1]{display:none}}.note-link-dot[data-v-cd8a73f1]{position:absolute;top:-2.5px;left:0;width:5px;height:5px;border-radius:50%;background:#7f9bff;opacity:0}.projects.is-live .note--l1 .note-link-dot[data-v-cd8a73f1],.projects.is-live .note--l2 .note-link-dot[data-v-cd8a73f1]{animation:flow-r-cd8a73f1 2.8s ease-in-out infinite;animation-delay:calc(var(--n, 0) * .45s + 2s)}.projects.is-live .note--r1 .note-link-dot[data-v-cd8a73f1],.projects.is-live .note--r2 .note-link-dot[data-v-cd8a73f1]{animation:flow-l-cd8a73f1 2.8s ease-in-out infinite;animation-delay:calc(var(--n, 0) * .45s + 2s)}.projects.is-live .pcard-arrow svg[data-v-cd8a73f1]{animation:nudge-cd8a73f1 2.6s ease-in-out 2s infinite}@media (min-width: 1024px){.projects.is-live .pcard-1 .pcard-frame[data-v-cd8a73f1]{animation:float-cd8a73f1 6s ease-in-out 1.8s infinite}.projects.is-live .pcard-2 .pcard-frame[data-v-cd8a73f1]{animation:float-cd8a73f1 6.8s ease-in-out 2.2s infinite}.projects.is-live .pcard-3 .pcard-frame[data-v-cd8a73f1]{animation:float-cd8a73f1 7.4s ease-in-out 2.6s infinite}}@keyframes float-cd8a73f1{0%,to{translate:0 0}50%{translate:0 -5px}}@keyframes nudge-cd8a73f1{0%,60%,to{translate:0 0}80%{translate:3px 0}}@keyframes flow-r-cd8a73f1{0%{opacity:0;translate:0 0}15%,85%{opacity:1}to{opacity:0;translate:32px 0}}@keyframes flow-l-cd8a73f1{0%{opacity:0;translate:32px 0}15%,85%{opacity:1}to{opacity:0;translate:0 0}}@media (prefers-reduced-motion: reduce){.projects.is-in .projects-title[data-v-cd8a73f1],.projects.is-in .pcard[data-v-cd8a73f1],.projects.is-in .note[data-v-cd8a73f1],.projects.is-in .note-tag b[data-v-cd8a73f1],.projects.is-in .note-chips span[data-v-cd8a73f1],.projects.is-in .note-groups li[data-v-cd8a73f1],.projects.is-in .note-link[data-v-cd8a73f1]:before,.projects.is-in .note-link[data-v-cd8a73f1]:after{animation:none!important}.projects.is-live .pcard-frame[data-v-cd8a73f1],.projects.is-live .pcard-arrow svg[data-v-cd8a73f1],.projects.is-live .note-link-dot[data-v-cd8a73f1]{animation:none!important}.pcard[data-v-cd8a73f1],.pcard-frame[data-v-cd8a73f1],.pcard-media img[data-v-cd8a73f1],.pcard-arrow svg[data-v-cd8a73f1]{transition:none}}.social[data-v-f876e1ce]{display:flex;gap:var(--space-md)}.contact[data-v-a593150f]{width:100%;max-width:calc(var(--svw) * 100);overflow:hidden;min-height:calc(var(--lvh) * 100);padding:var(--space-outer);padding-top:var(--space-lg)}@media (min-width: 840px){.contact[data-v-a593150f]{padding-top:var(--space-xxl)}}.contact-content[data-v-a593150f]{position:relative;padding-top:var(--space-md);grid-column:1/13;display:flex;flex-direction:column;gap:var(--space-md)}@media (min-width: 480px){.contact-content[data-v-a593150f]{grid-column:1/8}}@media (min-width: 840px){.contact-content[data-v-a593150f]{gap:var(--space-xl);grid-column:1/6;padding-top:var(--space-lg)}}@media (min-width: 1024px){.contact-content[data-v-a593150f]{grid-column:2/6}}.contact-title[data-v-a593150f]{font-weight:900;letter-spacing:.02em;font-size:var(--font-size-title-md)}@media (min-width: 480px){.contact-title[data-v-a593150f]{font-size:var(--font-size-title-lg)}}@media (min-width: 1280px){.contact-title[data-v-a593150f]{font-size:var(--font-size-title-xl)}}.footer[data-v-fc29a179]{--footer-bg: #0b1220;--footer-text: #eef2fa;--footer-text-muted: rgba(238, 242, 250, .6);--footer-line: rgba(238, 242, 250, .28);--footer-accent: #2f5bff;--footer-accent-soft: #7f9bff;background:var(--footer-bg);color:var(--footer-text);width:100%;display:flex;justify-content:center;position:relative;overflow-x:clip}.footer-content[data-v-fc29a179]{display:flex;flex-direction:column;align-items:center;gap:var(--space-xl);width:100%;max-width:calc(var(--breakpoint-xxxl));padding:calc(var(--space-outer) + var(--space-sm)) var(--space-outer);position:relative;z-index:1}.footer-fx[data-v-fc29a179]{position:absolute;inset:0;overflow:hidden;pointer-events:none}.footer-aurora[data-v-fc29a179]{position:absolute;border-radius:50%;filter:blur(80px)}.footer-aurora--a[data-v-fc29a179]{width:420px;height:420px;left:-120px;bottom:-260px;background:radial-gradient(circle,var(--footer-accent),transparent 70%);opacity:.4;animation:aurora-a-fc29a179 18s ease-in-out infinite alternate}.footer-aurora--b[data-v-fc29a179]{width:360px;height:360px;right:-100px;top:-220px;background:radial-gradient(circle,var(--footer-accent-soft),transparent 70%);opacity:.22;animation:aurora-b-fc29a179 22s ease-in-out infinite alternate}.footer-aurora--c[data-v-fc29a179]{width:300px;height:300px;left:40%;bottom:-240px;background:radial-gradient(circle,#5b7bff,transparent 70%);opacity:.2;animation:aurora-c-fc29a179 15s ease-in-out infinite alternate}.footer-spot[data-v-fc29a179]{position:absolute;inset:0;background:radial-gradient(320px circle at var(--sx, 50%) var(--sy, 130%),rgba(47,91,255,.16),transparent 65%)}.footer-watermark[data-v-fc29a179]{position:absolute;left:50%;bottom:-.3em;transform:translate(-50%);font-size:clamp(6rem,19vw,17rem);font-weight:800;line-height:1;letter-spacing:.02em;white-space:nowrap;color:transparent;background:linear-gradient(100deg,#eef2fa0d 35%,#7f9bff66,#eef2fa0d 65%) 0 0/250% 100%;-webkit-background-clip:text;background-clip:text;animation:shimmer-fc29a179 7s ease-in-out infinite}.footer-sparkle[data-v-fc29a179]{position:absolute;bottom:-20px;color:var(--footer-accent);opacity:0;animation:sparkle-up-fc29a179 linear infinite}.footer-back-to-top[data-v-fc29a179]{cursor:pointer;color:var(--footer-text);outline:none;padding:12px;margin:-12px}@media (min-width: 840px){.footer-back-to-top[data-v-fc29a179]{position:absolute;top:calc(var(--space-outer) + var(--space-sm) - 12px);left:50%;transform:translate(-50%)}}.footer-btt[data-v-fc29a179]{--bx: 0px;--by: 0px;position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--footer-line);transform:translate(var(--bx),var(--by));transition:transform .3s cubic-bezier(.22,1,.36,1),background .3s,border-color .3s,color .3s}.footer-btt-ping[data-v-fc29a179]{position:absolute;inset:-1px;border-radius:50%;border:1px solid var(--footer-accent);animation:ping-fc29a179 2.4s ease-out infinite}.footer-btt-arrows[data-v-fc29a179]{position:relative;width:18px;height:18px;overflow:hidden}.footer-btt-arrows svg[data-v-fc29a179]{position:absolute;inset:0;width:100%;height:100%;transition:transform .4s cubic-bezier(.22,1,.36,1)}.footer-btt-arrows svg[data-v-fc29a179]:last-child{transform:translateY(150%)}.footer-back-to-top:hover .footer-btt[data-v-fc29a179],.footer-back-to-top:focus-visible .footer-btt[data-v-fc29a179]{background:var(--footer-accent);border-color:var(--footer-accent);color:#fff}.footer-back-to-top:hover .footer-btt .footer-btt-arrows svg[data-v-fc29a179]:first-child,.footer-back-to-top:focus-visible .footer-btt .footer-btt-arrows svg[data-v-fc29a179]:first-child{transform:translateY(-150%)}.footer-back-to-top:hover .footer-btt .footer-btt-arrows svg[data-v-fc29a179]:last-child,.footer-back-to-top:focus-visible .footer-btt .footer-btt-arrows svg[data-v-fc29a179]:last-child{transform:translateY(0)}.footer-top[data-v-fc29a179]{display:flex;flex-direction:column;width:100%;justify-content:space-between;align-items:center;gap:var(--space-xl)}@media (min-width: 840px){.footer-top[data-v-fc29a179]{flex-direction:row;gap:var(--space-md)}}.footer-language[data-v-fc29a179]{margin-left:auto;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.footer-language[data-v-fc29a179]:hover{transform:scale(1.06)}.footer-language[data-v-fc29a179] *{color:var(--footer-text)!important;border-color:var(--footer-line)!important}.footer-bottom[data-v-fc29a179]{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:var(--space-sm);width:100%;padding-top:var(--space-md)}@media (min-width: 840px){.footer-bottom[data-v-fc29a179]{flex-direction:row}}.footer-line[data-v-fc29a179]{position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--footer-accent),transparent) -200px 0/200px 100% no-repeat,#eef2fa1a;animation:line-shine-fc29a179 5s ease-in-out infinite}.footer-copyright[data-v-fc29a179]{font-size:var(--font-size-sm);color:var(--footer-text-muted);cursor:default}.footer-char[data-v-fc29a179]{display:inline-block}.footer-copyright:hover .footer-char[data-v-fc29a179]{animation:hop-fc29a179 .5s ease calc(var(--i) * 30ms);color:var(--footer-text)}.footer-time[data-v-fc29a179]{display:flex;align-items:center;gap:8px;font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;color:var(--footer-text-muted)}.footer-time-dot[data-v-fc29a179]{width:8px;height:8px;border-radius:50%;background:#3ddc84;animation:pulse-fc29a179 2s ease-out infinite}.footer-reveal[data-v-fc29a179]{opacity:0;transform:translateY(24px);transition:opacity .8s ease var(--delay, 0s),transform .8s cubic-bezier(.22,1,.36,1) var(--delay, 0s)}.footer-fade[data-v-fc29a179]{opacity:0;transition:opacity .8s ease}.footer-content.is-visible .footer-reveal[data-v-fc29a179]{opacity:1;transform:none}.footer-content.is-visible .footer-fade[data-v-fc29a179]{opacity:1}.footer-notch[data-v-fc29a179]{position:absolute;top:0;left:0;transform:translateY(-100%);color:var(--footer-bg);--icon-color: var(--footer-bg)}@keyframes aurora-a-fc29a179{to{transform:translate(55vw,-40px) scale(1.25)}}@keyframes aurora-b-fc29a179{to{transform:translate(-45vw,60px) scale(1.2)}}@keyframes aurora-c-fc29a179{to{transform:translate(-30vw,-30px) scale(1.3)}}@keyframes shimmer-fc29a179{0%{background-position:120% 0}to{background-position:-20% 0}}@keyframes sparkle-up-fc29a179{0%{transform:translateY(0) rotate(0);opacity:0}15%{opacity:.9}85%{opacity:.6}to{transform:translateY(-240px) rotate(180deg);opacity:0}}@keyframes ping-fc29a179{0%{transform:scale(1);opacity:.8}to{transform:scale(1.7);opacity:0}}@keyframes line-shine-fc29a179{0%{background-position:-200px 0,0 0}to{background-position:calc(100% + 200px) 0,0 0}}@keyframes hop-fc29a179{0%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}@keyframes pulse-fc29a179{0%{box-shadow:0 0 #3ddc8499}to{box-shadow:0 0 0 10px #3ddc8400}}@media (prefers-reduced-motion: reduce){.footer-aurora[data-v-fc29a179],.footer-watermark[data-v-fc29a179],.footer-sparkle[data-v-fc29a179],.footer-btt-ping[data-v-fc29a179],.footer-line[data-v-fc29a179],.footer-time-dot[data-v-fc29a179]{animation:none}.footer-reveal[data-v-fc29a179],.footer-fade[data-v-fc29a179]{opacity:1;transform:none;transition:none}}.header-link[data-v-7da04cd0]{letter-spacing:.02em;font-weight:700;border:none;background:none;transition:color .1s ease-in-out;font-size:var(--font-size-md);width:128px;white-space:nowrap;text-transform:uppercase;z-index:2;border-radius:100px;padding:var(--space-xxs) 0}.header-link[data-v-7da04cd0]:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;transition:background-color .1s ease-in-out,opacity .1s ease-in-out;background-color:var(--color-text-400);border-radius:100px;z-index:-1;opacity:0}.header-link-dark[data-v-7da04cd0]:after{background-color:var(--color-dark-blue-600)}.header-link-active[data-v-7da04cd0]:after{opacity:0!important}@media (hover: hover) and (pointer: fine){.header-link[data-v-7da04cd0]:hover{color:var(--color-white-400)}.header-link[data-v-7da04cd0]:hover:after{opacity:1}}.header-home[data-v-e9dfdd76]{position:fixed;top:0;left:50%;transform:translate(-50%);z-index:var(--z-index-header-home);height:var(--height-header);align-items:center;justify-content:center;display:none;opacity:0;transition:opacity .3s ease-in-out,transform var(--transition-route-duration) var(--transition-route-ease)}.header-home-isProjectPage[data-v-e9dfdd76]{transform:translate(-50%) translateY(-100%)}.header-home-mounted[data-v-e9dfdd76]{opacity:1}@media (min-width: 1024px){.header-home[data-v-e9dfdd76]{display:flex}}.header-home-links[data-v-e9dfdd76]{position:relative;display:flex;padding:3px;background-color:var(--color-beige-500);border-radius:100px;color:var(--color-text-400);transition:color .1s ease-in-out,background-color .1s ease-in-out}.header-home-links-dark[data-v-e9dfdd76]{background-color:var(--color-dark-blue-500);color:var(--color-white-400)}.header-home-bar[data-v-e9dfdd76]{position:absolute;top:3px;left:3px;height:calc(100% - 6px);width:128px;background:var(--color-orange-400);border-radius:100px;transition:transform .3s var(--ease-smooth),opacity .1s ease-in-out,background-color .1s ease-in-out;z-index:1;opacity:0}.header-home-bar-dark[data-v-e9dfdd76]{background-color:var(--color-cyan-500)}.header-home-bar-active[data-v-e9dfdd76]{opacity:1}.header-home-link[data-v-e9dfdd76]{position:relative;z-index:2;letter-spacing:.02em;font-weight:800;border:none;background:none;transition:color .1s ease-in-out;font-size:var(--font-size-md);width:128px;white-space:nowrap;text-transform:uppercase}.header-home-link-active[data-v-e9dfdd76]{color:var(--color-white-400)}.scroll-icon-enter-active[data-v-a5f92c3d],.scroll-icon-leave-active[data-v-a5f92c3d]{transition:opacity .3s ease-in-out}.scroll-icon-enter-from[data-v-a5f92c3d],.scroll-icon-leave-to[data-v-a5f92c3d]{opacity:0}.scroll-icon[data-v-a5f92c3d]{position:absolute;top:0;left:0;height:calc(var(--svh) * 100);width:100%;display:flex;align-items:flex-end;padding-bottom:var(--space-outer);justify-content:center;z-index:var(--z-index-header);pointer-events:none}.scroll-icon[data-v-a5f92c3d] *{pointer-events:none}.scroll-icon-swipe-up[data-v-a5f92c3d]{width:calc(var(--icon-size-md) + 4px);--stroke-width: var(--stroke-md);fill:var(--color-beige-400);animation:swipeUp-a5f92c3d 1s infinite;animation-direction:alternate;animation-timing-function:var(--ease-power2-out)}@keyframes swipeUp-a5f92c3d{0%{transform:translateY(0)}to{transform:translateY(-10px)}}.scroll-icon-pointer[data-v-a5f92c3d]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xxs);transform:translateY(4px)}.scroll-icon-arrow[data-v-a5f92c3d]{transform:rotate(90deg);width:var(--icon-size-sm);--stroke-width: 3px}.scroll-icon-mouse[data-v-a5f92c3d]{border:3px solid var(--color-text-400);height:34px;border-radius:100px;width:22px;display:flex;padding-top:3px;justify-content:center}.scroll-icon-mouse-dot[data-v-a5f92c3d]{width:4px;height:12px;background-color:var(--color-text-400);border-radius:100px;animation:scrollIconDot-a5f92c3d 1s infinite;animation-direction:alternate;animation-timing-function:var(--ease-power2-out)}@keyframes scrollIconDot-a5f92c3d{0%{transform:translateY(0)}to{transform:translateY(3px)}}.three-canvas[data-v-f6f2006b]{width:calc(var(--svw) * 100);height:calc(var(--lvh) * 100);max-height:calc(var(--lvh) * 100);position:relative;overflow:hidden}.three-canvas-contact[data-v-f6f2006b]{position:absolute;bottom:var(--contact-bottom);left:0;width:100%;height:calc(var(--lvh) * 100);max-height:calc(var(--lvh) * 100)}.home-wrapper[data-v-f6f2006b]{transform-origin:center center}.home-wrapper-out[data-v-f6f2006b]{animation:home-wrapper-out-f6f2006b var(--transition-route-duration) var(--transition-route-ease)}.home-wrapper-in[data-v-f6f2006b]{animation:home-wrapper-in-f6f2006b var(--transition-route-duration) var(--transition-route-ease)}@keyframes home-wrapper-out-f6f2006b{0%{transform:scale(1)}to{transform:scale(.95)}}@keyframes home-wrapper-in-f6f2006b{0%{transform:scale(.95)}to{transform:scale(1)}}.home-contact[data-v-f6f2006b]{width:100%;min-height:calc(var(--lvh) * 100);max-height:calc(var(--lvh) * 100)}.about-spacer[data-v-f6f2006b]{max-height:calc(var(--lvh) * 250);min-height:calc(var(--lvh) * 250)}.intro-wrapper[data-v-f6f2006b]{width:100%;display:flex;flex-direction:column}.intro-wrapper-spacer[data-v-f6f2006b]{display:none}@media (min-width: 840px){.intro-wrapper-spacer[data-v-f6f2006b]{display:block;height:200px}}.intro-hero[data-v-f6f2006b]{position:absolute;top:0;left:0;width:100%;max-height:calc(var(--lvh) * 100);min-height:calc(var(--lvh) * 100);overflow:hidden}.intro-about-hidden[data-v-f6f2006b]{visibility:hidden}.intro-sticky[data-v-f6f2006b]{top:0;left:0;width:100%;max-height:calc(var(--lvh) * 100);min-height:calc(var(--lvh) * 100);overflow:hidden;z-index:-1;display:flex;align-items:flex-end}.intro-sticky-visible[data-v-f6f2006b]{position:sticky}.intro-sticky-content[data-v-f6f2006b]{width:calc(var(--svw) * 100);height:calc(var(--lvh) * 100);max-height:calc(var(--lvh) * 100);position:relative;overflow:hidden}.intro-sticky-content-contact[data-v-f6f2006b]{position:absolute;bottom:var(--contact-bottom);left:0;width:100%;height:calc(var(--lvh) * 100);max-height:calc(var(--lvh) * 100)}.tag[data-v-f792ea51]{border-radius:var(--radius-md);padding:calc(var(--space-xxs) - var(--stroke-md)) calc(var(--space-sm) - var(--stroke-md));border:var(--stroke-md) solid transparent}.tag-copy[data-v-f792ea51]{font-size:var(--font-size-xs);font-weight:700}.tag-variant-three[data-v-f792ea51]{background-color:#ed9c55;color:#492708}.tag-variant-react[data-v-f792ea51]{background-color:#61dafb;color:#0f2e36}.tag-variant-websockets[data-v-f792ea51]{background-color:#2674a4;color:#fff}.tag-variant-redis[data-v-f792ea51]{background-color:#ce4036;color:#fff}.tag-variant-html[data-v-f792ea51],.tag-variant-css[data-v-f792ea51]{color:var(--color-text-400);border-color:var(--color-grayscale-400)}.tag-variant-javascript[data-v-f792ea51]{background-color:#ffdf4f;color:#362d03}.tag-variant-node[data-v-f792ea51]{background-color:#237d23;color:#fff}.tag-variant-next[data-v-f792ea51]{background-color:#fff;color:#000}.tag-variant-kubernetes[data-v-f792ea51]{background-color:#326ce5;color:#fff}.tag-variant-postgresql[data-v-f792ea51]{background-color:#2f6c92;color:#fff}.tag-variant-ogl[data-v-f792ea51]{background-color:#0e5495;color:#fff}.tag-variant-glsl[data-v-f792ea51]{background-color:#95630e;color:#fff}.project-hero[data-v-367dfe18]{padding:0 var(--space-outer);padding-bottom:48px;padding-top:calc(var(--height-header) + 24px)}@media (min-width: 840px){.project-hero[data-v-367dfe18]{padding-bottom:64px}}.project-hero-main[data-v-367dfe18]{grid-column:1/13;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-md)}@media (min-width: 840px){.project-hero-main[data-v-367dfe18]{grid-column:2/10}}@media (min-width: 1024px){.project-hero-main[data-v-367dfe18]{grid-column:2/9}}@media (min-width: 1280px){.project-hero-main[data-v-367dfe18]{grid-column:2/9}}.project-hero-title[data-v-367dfe18]{font-size:var(--font-size-title-lg);color:var(--color-text-400);line-height:var(--line-height-title);transform:translateY(0);animation:project-hero-title-visible-367dfe18 .5s var(--ease-smooth)}@media (min-width: 840px){.project-hero-title[data-v-367dfe18]{font-size:var(--font-size-title-xl)}}@keyframes project-hero-title-visible-367dfe18{0%{transform:translateY(100%)}to{transform:translateY(0)}}.project-hero-title-wrapper[data-v-367dfe18]{overflow:hidden}.project-hero-description[data-v-367dfe18]{max-width:680px;margin:0;color:var(--color-text-400);line-height:var(--line-height-copy)}.project-hero-tags[data-v-367dfe18]{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.project-hero-buttons[data-v-367dfe18]{grid-column:1/13;display:flex;align-items:center;justify-content:flex-start;gap:var(--space-sm);margin-top:var(--space-lg);width:100%}@media (min-width: 840px){.project-hero-buttons[data-v-367dfe18]{grid-column:2/9;gap:var(--space-md);width:fit-content}}@media (min-width: 1024px){.project-hero-buttons[data-v-367dfe18]{grid-column:2/9}}.project-hero-button[data-v-367dfe18]{flex:.5}@media (min-width: 840px){.project-hero-button[data-v-367dfe18]{width:fit-content}}.imageText-image[data-v-a904da4a]{position:relative;display:flex;align-items:center;justify-content:center;grid-row:1;grid-column:1/13}.imageText-image-content[data-v-a904da4a]{overflow:hidden;border-radius:var(--radius-lg)}.imageText-image-content-border[data-v-a904da4a]{border:var(--stroke-md) solid var(--color-grayscale-400)}@media (min-width: 840px){.imageText-image-left[data-v-a904da4a]{grid-column:1/7}}@media (min-width: 1024px){.imageText-image-left[data-v-a904da4a]{grid-column:2/7}}@media (min-width: 840px){.imageText-image-right[data-v-a904da4a]{grid-column:7/13}}@media (min-width: 1024px){.imageText-image-right[data-v-a904da4a]{grid-column:7/12}}.imageText-content[data-v-a904da4a]{width:100%;min-height:100%;display:flex;align-items:center;grid-row:2;grid-column:1/13}@media (min-width: 840px){.imageText-content-left[data-v-a904da4a]{grid-column:1/7}}@media (min-width: 1024px){.imageText-content-left[data-v-a904da4a]{grid-column:2/7}}@media (min-width: 840px){.imageText-content-right[data-v-a904da4a]{grid-column:7/13}}@media (min-width: 1024px){.imageText-content-right[data-v-a904da4a]{grid-column:7/11}}@media (min-width: 840px){.imageText-content[data-v-a904da4a]{grid-row:1}}.text[data-v-75e798e2]{line-height:var(--line-height-copy);grid-column:1/13}@media (min-width: 840px){.text[data-v-75e798e2]{grid-column:3/11}}@media (min-width: 1024px){.text[data-v-75e798e2]{grid-column:4/10}}.text-with-title[data-v-75e798e2]{display:flex;flex-direction:column;gap:var(--space-md)}.text-title[data-v-75e798e2]{font-size:var(--font-size-title-sm);line-height:var(--line-height-title)}.list[data-v-19c34121]{display:flex;flex-direction:column;gap:var(--space-md);max-width:100%;grid-column:1/13}@media (min-width: 840px){.list-size-sm[data-v-19c34121]{grid-column:4/10}}@media (min-width: 1024px){.list-size-sm[data-v-19c34121]{grid-column:6/8}}@media (min-width: 840px){.list-size-md[data-v-19c34121]{grid-column:3/11}}@media (min-width: 1024px){.list-size-md[data-v-19c34121]{grid-column:4/10}}@media (min-width: 840px){.list-size-lg[data-v-19c34121]{grid-column:3/11}}.list-title[data-v-19c34121]{font-size:var(--font-size-title-sm);line-height:var(--line-height-md)}.list-items[data-v-19c34121]{list-style-type:disc;padding-left:1.4em}.list-item[data-v-19c34121]{padding:6px 0}.project-media[data-v-39e41b3c]{width:100%;height:100%;grid-column:1/13;max-width:900px;justify-self:center;position:relative;aspect-ratio:16/9}@media (min-width: 840px){.project-media[data-v-39e41b3c]{grid-column:2/12}}@media (min-width: 1024px){.project-media[data-v-39e41b3c]{grid-column:3/11}}.project-media-caption[data-v-39e41b3c]{position:absolute;bottom:-1px;right:-1px;background-color:var(--color-background-400);padding:var(--space-xxs) var(--space-sm);border-radius:var(--radius-md) 0 0 0}@media (min-width: 840px){.project-media-caption[data-v-39e41b3c]{padding:var(--space-xxs) var(--space-sm)}}@media (min-width: 1024px){.project-media-caption[data-v-39e41b3c]{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-lg) 0 0 0}}.project-media-caption-notch[data-v-39e41b3c]{position:absolute;color:var(--color-background-400);--icon-color: var(--color-background-400);width:var(--radius-md)}@media (min-width: 840px){.project-media-caption-notch[data-v-39e41b3c]{width:var(--radius-lg)}}.project-media-caption-notch-left[data-v-39e41b3c]{left:0;bottom:0;transform:translate(-100%) scale(-1) rotate(90deg)}.project-media-caption-notch-top[data-v-39e41b3c]{top:0;right:0;transform:translateY(-100%) scale(-1) rotate(90deg)}.project-media-caption-copy[data-v-39e41b3c]{font-size:var(--font-size-sm);font-weight:700}@media (min-width: 840px){.project-media-caption-copy[data-v-39e41b3c]{font-size:var(--font-size-md)}}.project-media-image[data-v-39e41b3c],.project-media-video[data-v-39e41b3c]{width:100%;height:100%;object-fit:cover}.project-media-content[data-v-39e41b3c]{overflow:hidden;border-radius:var(--radius-lg);background-color:var(--color-background-300);width:100%;height:100%}.control-room[data-v-028c6d4b]{grid-column:1/13;width:100%;margin-top:var(--control-room-pull, -96px);padding:0 0 var(--space-xxl)}.control-room-shell[data-v-028c6d4b]{width:100%;overflow:hidden;border-radius:26px;background:#151412;color:#f6f1e9;border:1px solid rgba(20,18,16,.18);box-shadow:0 30px 80px #14121029}.control-room-shell:not(.is-visible) .system-node[data-v-028c6d4b],.control-room-shell:not(.is-visible) .core[data-v-028c6d4b],.control-room-shell:not(.is-visible) .node-chips span[data-v-028c6d4b],.control-room-shell:not(.is-visible) .detail[data-v-028c6d4b],.control-room-shell:not(.is-visible) .link-base[data-v-028c6d4b]{opacity:0}.control-header[data-v-028c6d4b]{min-height:64px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#0e0d0c;border-bottom:1px solid rgba(255,255,255,.08);font-size:14px;font-weight:600}.control-brand[data-v-028c6d4b],.control-status[data-v-028c6d4b]{display:flex;align-items:center;gap:10px}.control-status[data-v-028c6d4b]{color:#f6f1e98c;font-weight:500;font-variant-numeric:tabular-nums}.live-indicator[data-v-028c6d4b]{width:8px;height:8px;border-radius:50%;background:#ff8500;box-shadow:0 0 12px #ff8500cc;animation:blink-028c6d4b 2s ease-in-out infinite}.status-online[data-v-028c6d4b]{color:#ff8500;font-weight:600}.status-divider[data-v-028c6d4b]{width:1px;height:14px;background:#ffffff29}.dashboard[data-v-028c6d4b]{position:relative;height:640px;padding:22px 20px;display:grid;grid-template-columns:30% 40% 30%;grid-template-rows:repeat(3,1fr);overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(255,133,0,.12),transparent 30%),#191816}.dashboard-grid[data-v-028c6d4b]{position:absolute;inset:0;opacity:.5;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:radial-gradient(circle at center,black,transparent 90%);mask-image:radial-gradient(circle at center,black,transparent 90%);pointer-events:none;animation:grid-drift-028c6d4b 24s linear infinite}.scan-line[data-v-028c6d4b]{position:absolute;z-index:1;left:0;right:0;top:-2%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,133,0,.35),transparent);box-shadow:0 0 18px #ff850040;pointer-events:none;animation:scan-028c6d4b 9s linear infinite}.connections[data-v-028c6d4b]{position:absolute;top:0;left:0;z-index:1;pointer-events:none;overflow:visible}.link path[data-v-028c6d4b]{fill:none}.link-base[data-v-028c6d4b]{stroke:#ffffff29;stroke-width:1.5;stroke-dasharray:6 8;transition:stroke .25s ease,opacity .7s ease .5s}.link.highlighted .link-base[data-v-028c6d4b]{stroke:#ff850099;stroke-dasharray:none;stroke-width:2}.link-draw[data-v-028c6d4b]{stroke:#ff8500;stroke-width:2;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;opacity:0;filter:drop-shadow(0 0 6px rgba(255,133,0,.9))}.is-visible .link-draw[data-v-028c6d4b]{animation:draw-028c6d4b 1.3s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(.5s + var(--i) * .12s)}.link-flow[data-v-028c6d4b]{stroke:#ffb45c;stroke-width:3;stroke-linecap:round;stroke-dasharray:3 97;stroke-dashoffset:0;opacity:0;filter:drop-shadow(0 0 5px rgba(255,133,0,.95))}.is-live .link-flow[data-v-028c6d4b]{opacity:.95;animation:flow-028c6d4b 3.6s linear infinite;animation-delay:calc(var(--i) * -.7s)}.is-live .link.reverse .link-flow[data-v-028c6d4b]{animation-direction:reverse}.is-live .link.highlighted .link-flow[data-v-028c6d4b]{stroke-dasharray:7 93;stroke-width:4;animation-duration:1.5s}.core[data-v-028c6d4b]{grid-column:2;grid-row:1/4;place-self:center;position:relative;z-index:2;width:220px;height:220px}.is-visible .core[data-v-028c6d4b]{animation:core-in-028c6d4b .9s cubic-bezier(.2,.8,.2,1) backwards}.core-pulse[data-v-028c6d4b]{position:absolute;inset:30px;border:1.5px solid rgba(255,133,0,.55);border-radius:50%;opacity:0;animation:ripple-028c6d4b 4.2s ease-out infinite}.core-pulse-2[data-v-028c6d4b]{animation-delay:1.4s}.core-pulse-3[data-v-028c6d4b]{animation-delay:2.8s}.core-sweep[data-v-028c6d4b]{position:absolute;inset:-34px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg 285deg,rgba(255,133,0,.26) 360deg);-webkit-mask-image:radial-gradient(circle,transparent 38%,black 39%,black 70%,transparent 71%);mask-image:radial-gradient(circle,transparent 38%,black 39%,black 70%,transparent 71%);animation:spin-028c6d4b 6s linear infinite;pointer-events:none}.core-ring[data-v-028c6d4b]{position:absolute;inset:0;border:1px dashed rgba(255,133,0,.3);border-radius:50%;animation:spin-028c6d4b 30s linear infinite}.core-ring-2[data-v-028c6d4b]{inset:16px;border-color:#ffffff1a;animation-direction:reverse;animation-duration:40s}.core-body[data-v-028c6d4b]{position:absolute;inset:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1.5px solid rgba(255,133,0,.7);border-radius:50%;background:radial-gradient(circle,rgba(255,133,0,.14),transparent 70%),#171513;box-shadow:0 0 40px #ff85001f;transition:box-shadow .4s ease,border-color .4s ease}.core-body strong[data-v-028c6d4b]{font-size:28px;letter-spacing:.1em;line-height:1}.core-body small[data-v-028c6d4b]{max-width:120px;text-align:center;color:#f6f1e9bd;font-size:13px;line-height:1.2}.core-body small.on[data-v-028c6d4b]{color:#ff8500;font-weight:600}.core.linked .core-body[data-v-028c6d4b]{border-color:#ff8500;box-shadow:0 0 60px #ff850059,inset 0 0 26px #ff85002e}.core-live[data-v-028c6d4b]{display:flex;align-items:center;gap:6px;color:#ff8500;font-size:12px;font-weight:600}.core-live i[data-v-028c6d4b]{width:6px;height:6px;border-radius:50%;background:#ff8500;box-shadow:0 0 8px #ff8500;animation:blink-028c6d4b 1.8s ease-in-out infinite}.swap-enter-active[data-v-028c6d4b],.swap-leave-active[data-v-028c6d4b]{transition:opacity .16s ease,transform .16s ease}.swap-enter-from[data-v-028c6d4b]{opacity:0;transform:translateY(6px)}.swap-leave-to[data-v-028c6d4b]{opacity:0;transform:translateY(-6px)}.system-node[data-v-028c6d4b]{position:relative;z-index:3;margin:10px 14px;padding:18px 20px;display:flex;flex-direction:column;justify-content:space-between;gap:14px;text-align:left;color:#f6f1e9;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:#1f1d1a;box-shadow:0 14px 30px #00000047;cursor:pointer;font:inherit;overflow:hidden;transform:perspective(800px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));transition:transform .14s ease-out,translate .26s cubic-bezier(.2,.8,.2,1),border-color .26s ease,background .26s ease,box-shadow .26s ease}.system-node[data-v-028c6d4b]:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(220px circle at var(--mx, 50%) var(--my, 0%),rgba(255,133,0,.2),transparent 65%);opacity:0;transition:opacity .25s ease;pointer-events:none}.system-node[data-v-028c6d4b]>*{position:relative}.system-node[data-v-028c6d4b]:hover,.system-node[data-v-028c6d4b]:focus-visible,.system-node.active[data-v-028c6d4b]{translate:0 -4px;border-color:#ff8500bf;background:#262320;box-shadow:0 22px 44px #0006,0 0 34px #ff85001a}.system-node[data-v-028c6d4b]:hover:before,.system-node[data-v-028c6d4b]:focus-visible:before,.system-node.active[data-v-028c6d4b]:before{opacity:1}.system-node[data-v-028c6d4b]:focus-visible{outline:2px solid #ff8500;outline-offset:3px}.system-node.active .node-status[data-v-028c6d4b]{background:#ff8500;box-shadow:0 0 12px #ff8500e6}.system-node.active .node-open[data-v-028c6d4b]{color:#ff8500;border-color:#ff850099;rotate:45deg}.node-mail[data-v-028c6d4b],.node-dns[data-v-028c6d4b],.node-server[data-v-028c6d4b]{--fx: -46px}.node-delivery[data-v-028c6d4b],.node-network[data-v-028c6d4b],.node-support[data-v-028c6d4b]{--fx: 46px}.node-mail[data-v-028c6d4b]{grid-column:1;grid-row:1}.node-dns[data-v-028c6d4b]{grid-column:1;grid-row:2}.node-server[data-v-028c6d4b]{grid-column:1;grid-row:3}.node-delivery[data-v-028c6d4b]{grid-column:3;grid-row:1}.node-network[data-v-028c6d4b]{grid-column:3;grid-row:2}.node-support[data-v-028c6d4b]{grid-column:3;grid-row:3}.is-visible .system-node[data-v-028c6d4b]{animation:node-in-028c6d4b .8s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(.35s + var(--i) * .12s)}.node-top[data-v-028c6d4b]{display:flex;align-items:center;gap:12px}.node-status[data-v-028c6d4b]{position:relative;width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:#ffffff4d;transition:.22s ease}.node-status[data-v-028c6d4b]:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1px solid rgba(255,133,0,.6);opacity:0;animation:status-ping-028c6d4b 2.8s ease-out infinite;animation-delay:calc(var(--i, 0) * .4s)}.node-titles[data-v-028c6d4b]{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.node-titles strong[data-v-028c6d4b]{font-size:20px;font-weight:700;line-height:1.2}.node-titles small[data-v-028c6d4b]{color:#f6f1e9bd;font-size:14px;line-height:1.3}.node-open[data-v-028c6d4b]{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;color:#f6f1e9bd;font-size:18px;line-height:1;transition:color .22s ease,border-color .22s ease,rotate .3s cubic-bezier(.2,.8,.2,1)}.node-chips[data-v-028c6d4b]{display:flex;flex-wrap:wrap;gap:6px}.node-chips span[data-v-028c6d4b]{padding:4px 10px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#ffffff0d;color:#f6f1e9bd;font-size:13px;line-height:1.4;transition:border-color .2s ease,color .2s ease}.node-chips .chip-more[data-v-028c6d4b]{color:#ff8500;border-color:#ff850066}.system-node:hover .node-chips span[data-v-028c6d4b]:not(.chip-more){border-color:#ff850059;color:#f6f1e9}.is-visible .node-chips span[data-v-028c6d4b]{animation:chip-in-028c6d4b .5s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(.8s + var(--i) * .12s + var(--j) * 70ms)}.detail[data-v-028c6d4b]{min-height:104px;padding:20px 28px;display:flex;align-items:center;background:#100f0d;border-top:1px solid rgba(255,255,255,.08);transition:opacity .7s ease 1.2s}.detail-hint[data-v-028c6d4b]{margin:0;min-height:1.6em;color:#f6f1e98c;font-size:15px}.detail-hint.typing[data-v-028c6d4b]:after{content:"";display:inline-block;width:8px;height:1em;margin-left:3px;vertical-align:-2px;background:#ff8500;animation:blink-028c6d4b .8s steps(1) infinite}.detail-content[data-v-028c6d4b]{position:relative;width:100%;display:flex;align-items:center;gap:32px;padding-right:44px}.detail-text[data-v-028c6d4b]{flex:0 1 420px}.detail-text h3[data-v-028c6d4b]{margin:0 0 6px;font-size:20px;color:#ff8500}.detail-text p[data-v-028c6d4b]{margin:0;color:#f6f1e9bd;font-size:15px;line-height:1.6}.detail-items[data-v-028c6d4b]{flex:1;display:flex;flex-wrap:wrap;gap:8px}.detail-items span[data-v-028c6d4b]{padding:7px 14px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#ffffff0d;color:#f6f1e9;font-size:14px;animation:chip-in-028c6d4b .42s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(.12s + var(--j) * 55ms)}.detail-close[data-v-028c6d4b]{position:absolute;top:50%;right:0;width:32px;height:32px;transform:translateY(-50%);display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:transparent;color:#f6f1e9;font-size:20px;cursor:pointer;transition:color .2s ease,border-color .2s ease,rotate .3s cubic-bezier(.2,.8,.2,1)}.detail-close[data-v-028c6d4b]:hover{color:#ff8500;border-color:#ff850099;rotate:90deg}.detail-enter-active[data-v-028c6d4b],.detail-leave-active[data-v-028c6d4b]{transition:opacity .18s ease,transform .18s ease}.detail-enter-from[data-v-028c6d4b],.detail-leave-to[data-v-028c6d4b]{opacity:0;transform:translateY(8px)}@keyframes node-in-028c6d4b{0%{opacity:0;translate:var(--fx) 26px;scale:.93}to{opacity:1;translate:0 0;scale:1}}@keyframes chip-in-028c6d4b{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes core-in-028c6d4b{0%{opacity:0;scale:.55;rotate:-50deg}to{opacity:1;scale:1;rotate:0deg}}@keyframes draw-028c6d4b{0%{stroke-dashoffset:100;opacity:1}70%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}@keyframes flow-028c6d4b{0%{stroke-dashoffset:0}to{stroke-dashoffset:-100}}@keyframes ripple-028c6d4b{0%{transform:scale(.65);opacity:.6}to{transform:scale(1.75);opacity:0}}@keyframes status-ping-028c6d4b{0%{transform:scale(.6);opacity:.8}70%,to{transform:scale(1.8);opacity:0}}@keyframes spin-028c6d4b{to{transform:rotate(360deg)}}@keyframes scan-028c6d4b{0%{top:-2%}to{top:102%}}@keyframes grid-drift-028c6d4b{to{background-position:42px 42px,42px 42px}}@keyframes blink-028c6d4b{0%,to{opacity:.35}50%{opacity:1}}@media (prefers-reduced-motion: reduce){.dashboard-grid[data-v-028c6d4b],.scan-line[data-v-028c6d4b],.core-pulse[data-v-028c6d4b],.core-sweep[data-v-028c6d4b],.core-ring[data-v-028c6d4b],.core-live i[data-v-028c6d4b],.live-indicator[data-v-028c6d4b],.node-status[data-v-028c6d4b]:after,.link-draw[data-v-028c6d4b],.link-flow[data-v-028c6d4b],.core[data-v-028c6d4b],.system-node[data-v-028c6d4b],.node-chips span[data-v-028c6d4b],.detail-items span[data-v-028c6d4b]{animation:none!important}.system-node[data-v-028c6d4b]{transition:none;transform:none}}@media (max-width: 1100px){.dashboard[data-v-028c6d4b]{height:auto;padding:24px 20px;grid-template-columns:1fr 1fr;grid-template-rows:none;gap:14px}.connections[data-v-028c6d4b]{display:none}.core[data-v-028c6d4b]{grid-column:1/3;grid-row:auto;width:190px;height:190px;margin-bottom:8px}.core-body[data-v-028c6d4b]{inset:34px}.system-node[data-v-028c6d4b]{grid-column:auto!important;grid-row:auto!important;margin:0}.detail-content[data-v-028c6d4b]{flex-direction:column;align-items:flex-start;gap:16px}.detail-text[data-v-028c6d4b]{flex:none}}@media (max-width: 640px){.control-header[data-v-028c6d4b]{padding:0 18px;font-size:13px}.dashboard[data-v-028c6d4b]{grid-template-columns:1fr;padding:20px 14px}.core[data-v-028c6d4b]{grid-column:1}.detail[data-v-028c6d4b]{padding:18px}}.gift[data-v-3ae6b9c8]{grid-column:1/13;position:relative;width:100%;min-height:720px;margin-top:var(--gift-pull, -120px);overflow:hidden;border-radius:var(--radius-xxl, 32px);background:radial-gradient(circle at 50% 46%,rgba(124,20,43,.3),transparent 36%),radial-gradient(circle at 50% 80%,rgba(212,175,55,.09),transparent 40%),#11100f;color:#f5eee3;isolation:isolate}.gift[data-v-3ae6b9c8]:not(.gift-opened){cursor:pointer}.gift[data-v-3ae6b9c8]:after{content:"";position:absolute;inset:14px;border:1px solid rgba(210,171,89,.14);border-radius:calc(var(--radius-xxl, 32px) - 12px);pointer-events:none;z-index:3}.gift-bg[data-v-3ae6b9c8]{position:absolute;inset:0;z-index:0;pointer-events:none}.gift-spot[data-v-3ae6b9c8]{position:absolute;inset:0;background:radial-gradient(ellipse 55% 60% at 50% 0%,rgba(255,226,160,.12),transparent 70%)}.gift-beams[data-v-3ae6b9c8]{position:absolute;inset:0;background:conic-gradient(from 0deg at 50% -6%,transparent 0 150deg,rgba(255,226,160,.13) 163deg,transparent 172deg,rgba(255,226,160,.09) 179deg 181deg,transparent 190deg,rgba(255,226,160,.13) 197deg,transparent 210deg 360deg);-webkit-mask-image:linear-gradient(to bottom,black,transparent 75%);mask-image:linear-gradient(to bottom,black,transparent 75%);opacity:0;transition:opacity 1.4s ease .5s}.gift-opened .gift-beams[data-v-3ae6b9c8]{opacity:1}.gift-cursor[data-v-3ae6b9c8]{position:absolute;inset:0;background:radial-gradient(380px circle at var(--px, 50%) var(--py, 40%),rgba(210,171,89,.09),transparent 60%);opacity:0;transition:opacity .4s ease}.gift:hover .gift-cursor[data-v-3ae6b9c8]{opacity:1}.gift-dust[data-v-3ae6b9c8]{position:absolute;inset:0;z-index:1;pointer-events:none}.gift-dust i[data-v-3ae6b9c8]{position:absolute;bottom:-10px;left:var(--l);width:var(--s);height:var(--s);border-radius:50%;background:#e6c373bf;box-shadow:0 0 8px #e6c37399;opacity:0;animation:dust-3ae6b9c8 var(--dur) linear infinite;animation-delay:var(--dl)}.twinkle[data-v-3ae6b9c8]{position:absolute;color:#f0d78e;text-shadow:0 0 10px rgba(240,215,142,.8);opacity:0;animation:twinkle-3ae6b9c8 4s ease-in-out infinite}.gift-content[data-v-3ae6b9c8]{position:relative;z-index:2;width:100%;min-height:720px;padding:56px 20px 48px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.gift-heading[data-v-3ae6b9c8]{position:relative;z-index:20;max-width:640px}.gift-heading h2[data-v-3ae6b9c8]{margin:0;font-size:clamp(34px,5.4vw,60px);line-height:1.05;letter-spacing:-.035em;font-weight:800;text-wrap:balance}.gift-heading h2.done[data-v-3ae6b9c8]{background:linear-gradient(90deg,#f5eee3,#f0d78e 30%,#f5eee3,#f0d78e 80%,#f5eee3);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer-3ae6b9c8 5s linear infinite}.gift-sub[data-v-3ae6b9c8]{margin:16px 0 0;min-height:1.6em;font-size:16px;line-height:1.6;color:#f5eee39e;transition:opacity .4s ease}.gift-sub.hidden[data-v-3ae6b9c8]{opacity:0}.swap-enter-active[data-v-3ae6b9c8],.swap-leave-active[data-v-3ae6b9c8]{transition:opacity .26s ease,transform .26s ease}.swap-enter-from[data-v-3ae6b9c8]{opacity:0;transform:translateY(12px)}.swap-leave-to[data-v-3ae6b9c8]{opacity:0;transform:translateY(-12px)}.gift-stage[data-v-3ae6b9c8]{position:relative;width:min(320px,80vw);margin-top:40px}.gift-floor[data-v-3ae6b9c8]{position:absolute;left:50%;bottom:-9%;width:190%;aspect-ratio:5;translate:-50% 0;border-radius:50%;background:radial-gradient(ellipse,rgba(210,171,89,.22),transparent 62%),repeating-radial-gradient(ellipse,rgba(210,171,89,.2) 0 1px,transparent 1px 16px);-webkit-mask-image:radial-gradient(ellipse,black 25%,transparent 68%);mask-image:radial-gradient(ellipse,black 25%,transparent 68%);opacity:.55;pointer-events:none;transition:opacity .9s ease .42s}.gift-opened .gift-floor[data-v-3ae6b9c8]{opacity:1}.gift-aura[data-v-3ae6b9c8]{position:absolute;left:50%;top:28%;width:150%;aspect-ratio:1.3;translate:-50% 0;border-radius:50%;background:radial-gradient(ellipse,rgba(212,175,55,.26),rgba(124,20,43,.14) 42%,transparent 72%);filter:blur(26px);opacity:.4;animation:aura-breathe-3ae6b9c8 4.5s ease-in-out infinite;transition:opacity .9s ease .42s,scale 1.2s cubic-bezier(.16,1,.3,1) .42s;pointer-events:none}.gift-opened .gift-aura[data-v-3ae6b9c8]{opacity:1;scale:1.25;animation:none}.tap-ring[data-v-3ae6b9c8]{position:absolute;left:50%;top:62%;width:78%;aspect-ratio:1;translate:-50% -50%;border:1px solid rgba(210,171,89,.4);border-radius:50%;pointer-events:none;opacity:0;animation:tap-ring-3ae6b9c8 3s ease-out infinite}.gift-opened .tap-ring[data-v-3ae6b9c8]{display:none}.gift-box[data-v-3ae6b9c8]{appearance:none;position:relative;display:block;width:100%;aspect-ratio:1;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:inherit;container-type:inline-size;-webkit-tap-highlight-color:transparent;transition:translate .32s cubic-bezier(.16,1,.3,1),scale .32s cubic-bezier(.16,1,.3,1)}.gift-box[data-v-3ae6b9c8]:focus-visible{outline:2px solid #d2ab59;outline-offset:10px;border-radius:24px}.gift:not(.gift-opened) .gift-box[data-v-3ae6b9c8]:hover{translate:0 -6px;scale:1.025}.gift-tilt[data-v-3ae6b9c8]{position:absolute;inset:0;display:block;transform:perspective(900px) rotateX(calc(var(--ny, 0) * -7deg)) rotateY(calc(var(--nx, 0) * 9deg));transition:transform .26s ease-out}.gift-float[data-v-3ae6b9c8]{position:absolute;inset:0;display:block;transform-origin:50% 92%;animation:idle-3ae6b9c8 5.5s ease-in-out infinite}.gift-opened .gift-float[data-v-3ae6b9c8]{animation:shake-3ae6b9c8 .52s ease-in-out both}.layer[data-v-3ae6b9c8]{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.layer-back[data-v-3ae6b9c8]{z-index:1}.layer-front[data-v-3ae6b9c8]{z-index:3;filter:drop-shadow(0 18px 22px rgba(0,0,0,.3))}.floor-shadow[data-v-3ae6b9c8]{fill:#0000009e;filter:blur(9px)}.inside-glow[data-v-3ae6b9c8]{opacity:.1;transition:opacity .5s ease .42s}.gift-opened .inside-glow[data-v-3ae6b9c8]{opacity:1;animation:flicker-3ae6b9c8 2.6s ease-in-out 1.2s infinite}.rim[data-v-3ae6b9c8]{opacity:0;transition:opacity .4s ease .7s}.gift-opened .rim[data-v-3ae6b9c8]{opacity:1}.lid[data-v-3ae6b9c8]{transform-box:fill-box;transform-origin:50% 100%}.gift-opened .lid[data-v-3ae6b9c8]{animation:lid-pop-3ae6b9c8 1.1s cubic-bezier(.16,1,.3,1) .42s forwards}.rays[data-v-3ae6b9c8]{position:absolute;z-index:0;left:50%;top:44.7%;width:210cqw;aspect-ratio:1;translate:-50% -50%;scale:.4;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(255,218,130,.22) 0 5deg,transparent 5deg 15deg);-webkit-mask-image:radial-gradient(circle,black 0 12%,transparent 58%);mask-image:radial-gradient(circle,black 0 12%,transparent 58%);opacity:0;pointer-events:none;animation:spin-3ae6b9c8 40s linear infinite;transition:opacity 1s ease .52s,scale 1.4s cubic-bezier(.16,1,.3,1) .52s}.gift-opened .rays[data-v-3ae6b9c8]{opacity:1;scale:1}.beam[data-v-3ae6b9c8]{position:absolute;z-index:1;left:50%;top:44.7%;width:64cqw;height:130cqw;translate:-50% -100%;transform-origin:50% 100%;scale:1 .2;background:linear-gradient(to top,rgba(255,236,170,.6),rgba(255,220,130,.18) 55%,transparent);clip-path:polygon(18% 100%,82% 100%,100% 0,0 0);filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .7s ease .48s,scale 1.1s cubic-bezier(.16,1,.3,1) .48s}.gift-opened .beam[data-v-3ae6b9c8]{opacity:.85;scale:1 1}.burst[data-v-3ae6b9c8]{position:absolute;z-index:0;left:50%;top:44.7%;width:34cqw;aspect-ratio:1;translate:-50% -50%;border:2px solid rgba(255,225,150,.9);border-radius:50%;opacity:0;pointer-events:none}.gift-opened .burst[data-v-3ae6b9c8]{animation:burst-3ae6b9c8 1.2s cubic-bezier(.16,1,.3,1) .46s forwards}.orbit[data-v-3ae6b9c8]{position:absolute;z-index:2;left:50%;top:calc(44.7% - 36cqw);width:66cqw;aspect-ratio:1;translate:-50% -50%;border:1px dashed rgba(210,171,89,.3);border-radius:50%;opacity:0;pointer-events:none;animation:spin-3ae6b9c8 16s linear infinite;transition:opacity .9s ease 1.3s}.orbit[data-v-3ae6b9c8]:before,.orbit[data-v-3ae6b9c8]:after{content:"✦";position:absolute;left:50%;translate:-50% 0;color:#f0d78e;font-size:15px;line-height:1;text-shadow:0 0 10px rgba(240,215,142,.9)}.orbit[data-v-3ae6b9c8]:before{top:-8px}.orbit[data-v-3ae6b9c8]:after{bottom:-8px}.gift-opened .orbit[data-v-3ae6b9c8]{opacity:1}.gift-reveal[data-v-3ae6b9c8]{position:absolute;z-index:2;left:50%;top:44.7%;display:block;translate:-50% calc(-50% + 24cqw);rotate:-14deg;scale:.4;opacity:0;pointer-events:none;transition:translate 1s cubic-bezier(.34,1.56,.5,1) .56s,rotate 1s cubic-bezier(.16,1,.3,1) .56s,scale 1s cubic-bezier(.34,1.56,.5,1) .56s,opacity .25s ease .56s}.gift-reveal[data-v-3ae6b9c8]:before{content:"";position:absolute;inset:-34%;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(255,226,150,.5),rgba(255,200,100,.15) 45%,transparent 68%)}.gift-opened .gift-reveal[data-v-3ae6b9c8]{translate:-50% calc(-50% - 36cqw);rotate:0deg;scale:1;opacity:1}.gift-icon[data-v-3ae6b9c8]{display:block;white-space:nowrap;font-size:28cqw;line-height:1;filter:drop-shadow(0 10px 12px rgba(0,0,0,.3)) drop-shadow(0 0 22px rgba(255,220,120,.45))}.gift-opened .gift-icon[data-v-3ae6b9c8]{animation:bob-3ae6b9c8 3.2s ease-in-out 1.7s infinite}.confetti[data-v-3ae6b9c8]{position:absolute;z-index:4;left:50%;top:44.7%;width:0;height:0;pointer-events:none}.confetti i[data-v-3ae6b9c8]{position:absolute;left:0;top:0;display:block;width:var(--w);height:var(--h);border-radius:2px;background:var(--c);opacity:0}.gift-opened .confetti i[data-v-3ae6b9c8]{animation:confetti-3ae6b9c8 1.9s cubic-bezier(.2,.7,.3,1) forwards;animation-delay:calc(.46s + var(--d) * 1ms)}.gift-foot[data-v-3ae6b9c8]{position:relative;z-index:20;width:min(680px,92%);min-height:120px;margin-top:16px}.gift-result[data-v-3ae6b9c8]{animation:fade-in-3ae6b9c8 .5s ease .9s both}.result-mark[data-v-3ae6b9c8]{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:14px;color:#d2ab59;font-size:16px}.result-mark i[data-v-3ae6b9c8]{width:56px;height:1px;background:linear-gradient(90deg,transparent,rgba(210,171,89,.7))}.result-mark i[data-v-3ae6b9c8]:last-child{transform:scaleX(-1)}.gift-result h3[data-v-3ae6b9c8]{margin:0;font-size:clamp(26px,4.4vw,44px);line-height:1.12;font-weight:800;letter-spacing:-.03em;text-wrap:balance;text-shadow:0 0 30px rgba(210,171,89,.28)}.word[data-v-3ae6b9c8]{display:inline-block;white-space:nowrap}.char[data-v-3ae6b9c8]{display:inline-block;animation:char-in-3ae6b9c8 .7s cubic-bezier(.16,1,.3,1) backwards;animation-delay:calc(1s + var(--i) * 30ms)}@keyframes idle-3ae6b9c8{0%{transform:translateY(0) rotate(0)}35%{transform:translateY(-8px) rotate(0)}70%{transform:translateY(0) rotate(0)}74%{transform:rotate(-2.5deg)}78%{transform:rotate(2.5deg)}82%{transform:rotate(-1.8deg)}86%{transform:rotate(1.2deg)}90%,to{transform:translateY(0) rotate(0)}}@keyframes shake-3ae6b9c8{0%{transform:translate(0) rotate(0) scale(1)}15%{transform:translate(-7px) rotate(-3deg)}30%{transform:translate(7px) rotate(3deg)}45%{transform:translate(-5px) rotate(-2deg)}60%{transform:translate(4px) rotate(1.5deg) scale(.98,1.03)}80%{transform:translate(0) rotate(0) scale(1.03,.97)}to{transform:translate(0) rotate(0) scale(1)}}@keyframes lid-pop-3ae6b9c8{0%{transform:translate(0) rotate(0);opacity:1}18%{transform:translateY(-16px) rotate(-3deg);opacity:1}70%{opacity:1}to{transform:translate(150px,-120px) rotate(34deg);opacity:0}}@keyframes burst-3ae6b9c8{0%{scale:.2;opacity:.9}to{scale:4.2;opacity:0}}@keyframes confetti-3ae6b9c8{0%{translate:0 0;rotate:0deg;scale:.4;opacity:0}8%{opacity:1}55%{translate:var(--tx) var(--ty);rotate:var(--rot);scale:1;opacity:1}to{translate:calc(var(--tx) * 1.12) calc(var(--ty) + 150px);rotate:calc(var(--rot) * 2);scale:1;opacity:0}}@keyframes bob-3ae6b9c8{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-9px) rotate(2deg)}}@keyframes flicker-3ae6b9c8{0%,to{opacity:.75}50%{opacity:1}}@keyframes aura-breathe-3ae6b9c8{0%,to{opacity:.32;scale:1}50%{opacity:.55;scale:1.06}}@keyframes tap-ring-3ae6b9c8{0%{scale:.7;opacity:.6}to{scale:1.35;opacity:0}}@keyframes fade-in-3ae6b9c8{0%{opacity:0}to{opacity:1}}@keyframes char-in-3ae6b9c8{0%{opacity:0;transform:translateY(.6em) rotate(6deg);filter:blur(6px)}to{opacity:1;transform:translateY(0) rotate(0);filter:blur(0)}}@keyframes shimmer-3ae6b9c8{to{background-position:-220% 0}}@keyframes spin-3ae6b9c8{to{rotate:360deg}}@keyframes twinkle-3ae6b9c8{0%,to{opacity:0;scale:.4}50%{opacity:.9;scale:1}}@keyframes dust-3ae6b9c8{0%{translate:0 0;opacity:0}10%{opacity:.85}90%{opacity:.4}to{translate:var(--dx) -760px;opacity:0}}@media (min-width: 768px){.gift[data-v-3ae6b9c8],.gift-content[data-v-3ae6b9c8]{min-height:780px}.gift-content[data-v-3ae6b9c8]{padding:72px 24px 56px}}@media (prefers-reduced-motion: reduce){.gift-dust[data-v-3ae6b9c8],.confetti[data-v-3ae6b9c8],.burst[data-v-3ae6b9c8],.tap-ring[data-v-3ae6b9c8],.orbit[data-v-3ae6b9c8]{display:none}.gift-float[data-v-3ae6b9c8],.gift-aura[data-v-3ae6b9c8],.rays[data-v-3ae6b9c8],.gift-icon[data-v-3ae6b9c8],.inside-glow[data-v-3ae6b9c8],.char[data-v-3ae6b9c8],.gift-heading h2.done[data-v-3ae6b9c8]{animation:none!important}.gift-tilt[data-v-3ae6b9c8]{transform:none}.gift-opened .lid[data-v-3ae6b9c8]{animation:none;opacity:0}.gift-reveal[data-v-3ae6b9c8],.rays[data-v-3ae6b9c8],.beam[data-v-3ae6b9c8],.gift-beams[data-v-3ae6b9c8],.gift-floor[data-v-3ae6b9c8],.gift-aura[data-v-3ae6b9c8],.inside-glow[data-v-3ae6b9c8],.rim[data-v-3ae6b9c8]{transition-delay:0s;transition-duration:1ms}.gift-result[data-v-3ae6b9c8]{animation-delay:0s}}.ai-chat[data-v-4cdddc27]{grid-column:1/13;width:100%;margin-top:var(--chat-pull, -130px);display:flex;justify-content:center}.ai-chat-shell[data-v-4cdddc27]{position:relative;width:min(1080px,100%);height:620px;display:flex;flex-direction:column;overflow:hidden;isolation:isolate;background:#0c0e11;color:#f2f5f9;border-radius:28px;box-shadow:0 30px 80px #0a0c1059,0 2px 8px #0a0c101f}.ai-chat-shell[data-v-4cdddc27]:before,.ai-chat-shell[data-v-4cdddc27]:after{content:"";position:absolute;inset:0;z-index:5;padding:1px;border-radius:inherit;pointer-events:none;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.ai-chat-shell[data-v-4cdddc27]:before{background:#ffffff17}.ai-chat-shell[data-v-4cdddc27]:after{background:linear-gradient(180deg,#ffffff4d,#ffffff0a 30% 70%,#a0b6d238)}.ai-chat-glow[data-v-4cdddc27]{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 60% 45% at 50% 0%,rgba(160,182,210,.18),transparent 70%),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px) 0 0/44px 44px,linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px) 0 0/44px 44px;-webkit-mask-image:radial-gradient(ellipse at 50% 30%,black 20%,transparent 85%);mask-image:radial-gradient(ellipse at 50% 30%,black 20%,transparent 85%)}.ai-chat-header[data-v-4cdddc27]{position:relative;z-index:1;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;background:#ffffff06;border-bottom:1px solid rgba(255,255,255,.09)}.ai-chat-header-info[data-v-4cdddc27]{min-width:0;display:flex;align-items:center;gap:14px}.ai-chat-avatar[data-v-4cdddc27]{position:relative;flex-shrink:0;width:46px;height:46px;padding:6px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#fff,#c7d0dc 55%,#f3f6fa);box-shadow:0 0 26px #aabed759,inset 0 1px #ffffffe6}.ai-chat-avatar img[data-v-4cdddc27]{width:100%;height:100%;display:block;object-fit:contain;mix-blend-mode:multiply}.ai-chat-avatar[data-v-4cdddc27]:after{content:"";position:absolute;inset:-3px;border-radius:inherit;border:1px solid rgba(200,215,235,.35)}.ai-chat-header h2[data-v-4cdddc27]{margin:0;color:#f2f5f9;font-size:18px;font-weight:700;line-height:1.25}.ai-chat-status[data-v-4cdddc27]{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border:1px solid rgba(255,255,255,.09);border-radius:999px;color:#f2f5f9bd;font-size:13px;font-weight:500}.ai-chat-status-dot[data-v-4cdddc27]{position:relative;width:8px;height:8px;border-radius:50%;background:#43d17a}.ai-chat-status-dot[data-v-4cdddc27]:after{content:"";position:absolute;inset:0;border-radius:50%;background:#43d17a;transform:scale(2.2);opacity:.22}.ai-chat-messages[data-v-4cdddc27]{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;gap:14px;padding:26px 28px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;overscroll-behavior-y:contain;touch-action:pan-y}.ai-chat-messages[data-v-4cdddc27]{overscroll-behavior:contain;overflow-y:auto;overscroll-behavior-y:contain}.ai-chat-welcome[data-v-4cdddc27]{width:min(620px,100%);margin:auto;padding:8px 0;text-align:center;transition:all .4s cubic-bezier(.2,.8,.2,1)}.ai-chat-welcome strong[data-v-4cdddc27]{display:block;background:linear-gradient(180deg,#fff 20%,#9fb0c4);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:28px;font-weight:800;letter-spacing:-.02em}.ai-chat-welcome p[data-v-4cdddc27]{max-width:480px;margin:10px auto 0;color:#f2f5f9bd;font-size:15px;line-height:1.6}.ai-chat-welcome.compact[data-v-4cdddc27]{margin:0 auto 4px;padding:0 0 10px}.ai-chat-welcome.compact strong[data-v-4cdddc27]{font-size:13px;font-weight:600;background:none;color:#f2f5f980}.ai-chat-welcome.compact p[data-v-4cdddc27]{margin-top:2px;font-size:13px;color:#f2f5f980}.ai-chat-welcome.compact .ai-chat-orb[data-v-4cdddc27]{display:none}.ai-chat-orb[data-v-4cdddc27]{position:relative;width:116px;height:116px;margin:0 auto 20px}.ai-chat-orb-ring[data-v-4cdddc27]{position:absolute;inset:0;border:1px dashed rgba(180,198,220,.4);border-radius:50%;animation:ai-chat-spin-4cdddc27 18s linear infinite}.ai-chat-orb-ring[data-v-4cdddc27]:before{content:"";position:absolute;top:-4px;left:50%;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:#fff;box-shadow:0 0 14px #c8dcf5e6}.ai-chat-orb-ring--2[data-v-4cdddc27]{inset:12px;border-style:solid;border-color:#ffffff17;animation-direction:reverse;animation-duration:26s}.ai-chat-orb-ring--2[data-v-4cdddc27]:before{display:none}.ai-chat-orb-core[data-v-4cdddc27]{position:absolute;inset:20px;padding:11px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff,#dfe5ed 55%,#aab6c6);box-shadow:0 0 36px #aac3e166,inset 0 -6px 14px #5a697d40,inset 0 2px #ffffffe6}.ai-chat-logo[data-v-4cdddc27]{width:100%;height:100%;display:block;object-fit:contain;mix-blend-mode:multiply}.ai-chat-row[data-v-4cdddc27]{display:flex;align-items:flex-end;gap:10px;animation:ai-chat-in-4cdddc27 .38s cubic-bezier(.2,.8,.2,1) both}.ai-chat-row--user[data-v-4cdddc27]{justify-content:flex-end}.ai-chat-mini[data-v-4cdddc27]{flex-shrink:0;width:32px;height:32px;padding:4px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(145deg,#fff,#c7d0dc 55%,#f3f6fa);box-shadow:0 0 14px #aabed74d,inset 0 1px #ffffffe6}.ai-chat-mini-logo[data-v-4cdddc27]{width:100%;height:100%;display:block;object-fit:contain;mix-blend-mode:multiply}.ai-chat-message[data-v-4cdddc27]{width:fit-content;max-width:min(72%,640px);padding:12px 17px;border-radius:18px;color:#f2f5f9;font-size:15px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.ai-chat-message--user[data-v-4cdddc27]{background:linear-gradient(135deg,#fff,#bcc7d4);color:#10141a;font-weight:500;border-bottom-right-radius:6px;box-shadow:0 8px 22px #96aac833,inset 0 1px #fffc}.ai-chat-message--bot[data-v-4cdddc27]{background:#fff1;border:1px solid rgba(255,255,255,.09);border-bottom-left-radius:6px}.ai-chat-message[data-v-4cdddc27] a{color:#dfe6ee;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.ai-chat-message[data-v-4cdddc27] a:hover{color:#fff}.ai-chat-typing[data-v-4cdddc27]{display:flex;align-items:center;gap:5px}.ai-chat-typing-dot[data-v-4cdddc27]{width:7px;height:7px;border-radius:50%;background:#dfe6ee;animation:ai-chat-typing-4cdddc27 1.2s infinite ease-in-out}.ai-chat-typing-dot[data-v-4cdddc27]:nth-child(2){animation-delay:.15s}.ai-chat-typing-dot[data-v-4cdddc27]:nth-child(3){animation-delay:.3s}.ai-chat-typing-label[data-v-4cdddc27]{margin-left:6px;color:#f2f5f980;font-size:13px}.ai-chat-input[data-v-4cdddc27]{position:relative;z-index:1;flex-shrink:0;display:flex;align-items:center;gap:10px;margin:0 20px 20px;padding:7px 7px 7px 22px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:#ffffff0d;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.ai-chat-input[data-v-4cdddc27]:focus-within{border-color:#c8d7ebb3;background:#ffffff12;box-shadow:0 0 0 4px #aabed724}.ai-chat-input input[data-v-4cdddc27]{flex:1;min-width:0;height:46px;padding:0;border:0;outline:none;background:transparent;color:#f2f5f9;font:inherit;font-size:15px}.ai-chat-input input[data-v-4cdddc27]::placeholder{color:#f2f5f980}.ai-chat-input input[data-v-4cdddc27]:disabled{opacity:.6}.ai-chat-input button[data-v-4cdddc27]{flex-shrink:0;height:46px;display:inline-flex;align-items:center;gap:8px;padding:0 22px;border:0;border-radius:999px;background:linear-gradient(135deg,#fff,#bcc7d4);color:#10141a;font:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:opacity .2s ease,transform .2s ease,box-shadow .2s ease}.ai-chat-input button svg[data-v-4cdddc27]{transition:transform .2s ease}.ai-chat-input button[data-v-4cdddc27]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 22px #aac3e159}.ai-chat-input button:hover:not(:disabled) svg[data-v-4cdddc27]{transform:translate(3px)}.ai-chat-input button[data-v-4cdddc27]:focus-visible{outline:2px solid #f2f5f9;outline-offset:2px}.ai-chat-input button[data-v-4cdddc27]:disabled{opacity:.35;cursor:not-allowed}@keyframes ai-chat-in-4cdddc27{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ai-chat-typing-4cdddc27{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}@keyframes ai-chat-spin-4cdddc27{to{transform:rotate(360deg)}}@keyframes ai-chat-float-4cdddc27{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes ai-chat-pulse-4cdddc27{0%{transform:scale(1);opacity:.7}to{transform:scale(1.5);opacity:0}}@keyframes ai-chat-ping-4cdddc27{0%{transform:scale(1);opacity:.7}to{transform:scale(2.6);opacity:0}}@media (max-width: 768px){.ai-chat[data-v-4cdddc27]{margin-top:var(--chat-pull-mobile, -16px)}.ai-chat-shell[data-v-4cdddc27]{height:72vh;min-height:500px;border-radius:22px}.ai-chat-header[data-v-4cdddc27]{padding:14px 18px}.ai-chat-messages[data-v-4cdddc27]{padding:18px}.ai-chat-message[data-v-4cdddc27]{max-width:85%}.ai-chat-input[data-v-4cdddc27]{margin:0 12px 12px}}@media (max-width: 480px){.ai-chat-shell[data-v-4cdddc27]{border-radius:18px}.ai-chat-avatar[data-v-4cdddc27]{width:40px;height:40px;border-radius:13px}.ai-chat-header h2[data-v-4cdddc27]{font-size:15px}.ai-chat-status[data-v-4cdddc27]{padding:6px 10px;font-size:12px}.ai-chat-welcome strong[data-v-4cdddc27]{font-size:24px}.ai-chat-orb[data-v-4cdddc27]{width:96px;height:96px}.ai-chat-orb-core[data-v-4cdddc27]{inset:16px;padding:9px}.ai-chat-send-text[data-v-4cdddc27]{display:none}.ai-chat-input button[data-v-4cdddc27]{width:46px;justify-content:center;padding:0}}@media (prefers-reduced-motion: reduce){.ai-chat-shell[data-v-4cdddc27]:after,.ai-chat-avatar[data-v-4cdddc27]:after,.ai-chat-status-dot[data-v-4cdddc27]:after,.ai-chat-orb-ring[data-v-4cdddc27],.ai-chat-orb-core[data-v-4cdddc27],.ai-chat-row[data-v-4cdddc27],.ai-chat-typing-dot[data-v-4cdddc27]{animation:none!important}}.next-project[data-v-bc8db08d]{border:var(--stroke-md) solid var(--color-grayscale-400);padding:var(--space-xxs);padding-right:var(--space-sm);border-radius:var(--radius-md);color:var(--color-text-400);--icon-color: var(--color-text-400);transition:background-color .1s ease-in-out;display:flex;flex-direction:row;align-items:center;position:relative;justify-content:space-between;height:64px}@media (min-width: 480px){.next-project[data-v-bc8db08d]{height:80px}}@media (min-width: 840px){.next-project[data-v-bc8db08d]{padding:var(--space-xs);padding-right:var(--space-md);height:120px}}@media (min-width: 1024px){.next-project[data-v-bc8db08d]{padding-right:var(--space-lg)}}.next-project-prefix[data-v-bc8db08d]{color:var(--color-text-300);white-space:nowrap}.next-project-content[data-v-bc8db08d]{width:100%;display:flex;flex-direction:column;justify-content:center;padding-left:var(--space-sm);gap:var(--space-xxs)}@media (min-width: 840px){.next-project-content[data-v-bc8db08d]{padding-left:var(--space-md)}}.next-project-title[data-v-bc8db08d]{font-size:var(--font-size-title-xxs);line-height:var(--line-height-title);font-weight:700;color:var(--color-text-400)}@media (min-width: 840px){.next-project-title[data-v-bc8db08d]{font-size:var(--font-size-title-xs)}}.next-project-arrow[data-v-bc8db08d]{width:var(--icon-size-md);color:var(--color-text-300);--icon-color: var(--color-text-400)}.next-project-image[data-v-bc8db08d]{border-radius:var(--radius-sm);max-height:100%;width:auto}@media (hover: hover) and (pointer: fine){.next-project[data-v-bc8db08d]:hover{background-color:var(--color-grayscale-400)}}.project-content[data-v-d6cc0f65]{color:var(--color-text-400)}.project-content-grid[data-v-d6cc0f65]{row-gap:var(--space-sm)}@media (min-width: 840px){.project-content-grid[data-v-d6cc0f65]{row-gap:var(--space-xxl)}}.project-content-next-project[data-v-d6cc0f65]{grid-column:1/13}@media (min-width: 840px){.project-content-next-project[data-v-d6cc0f65]{grid-column:3/11}}@media (min-width: 1024px){.project-content-next-project[data-v-d6cc0f65]{grid-column:4/10}}@media (min-width: 1280px){.project-content-next-project[data-v-d6cc0f65]{grid-column:5/9}}.project-content-next-project-grid[data-v-d6cc0f65]{padding:0 var(--space-outer);padding-top:var(--space-xl);padding-bottom:var(--space-xxxl)}.project-content-components[data-v-d6cc0f65]{padding:20px var(--space-outer);background-color:var(--color-background-400);width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--radius-xxl);gap:var(--space-xxl)}@media (min-width: 840px){.project-content-components[data-v-d6cc0f65]{padding:64px var(--space-outer)}}.project-content-main[data-v-d6cc0f65]{width:100%}.project-content-main--ai[data-v-d6cc0f65]{position:relative;width:100%;overflow:hidden;background:radial-gradient(ellipse 52% 40% at 50% 64%,rgba(160,182,210,.2) 0%,rgba(160,182,210,.07) 45%,transparent 78%),radial-gradient(ellipse 60% 38% at 50% 0%,rgba(150,175,205,.16),transparent 72%),linear-gradient(90deg,rgba(0,0,0,.35),transparent 22%,transparent 78%,rgba(0,0,0,.35)),#08090c;border-radius:0;color:#f2f5f9}.project-content-main--ai[data-v-d6cc0f65] .project-hero-title{background:linear-gradient(180deg,#fff,#dce4ed 42%,#9fb0c4);-webkit-background-clip:text;background-clip:text;color:transparent}.project-content-main--ai[data-v-d6cc0f65] .project-hero-description{color:#f2f5f99e}.project-content-main--ai[data-v-d6cc0f65] .project-hero-tags{color:#f2f5f9b3}.project-content-main--ai .project-content-components[data-v-d6cc0f65]{background:transparent}.project-content-main--ai[data-v-d6cc0f65]{--chat-pull: -100px}.project-content-main--ai[data-v-d6cc0f65] .project-hero{padding-top:calc(var(--height-header) + 64px);padding-bottom:72px;animation:ai-fade-d6cc0f65 .6s ease-out backwards}.project-content-main--ai .project-content-components[data-v-d6cc0f65]{padding-top:0}.project-content-main--ai .project-content-components>.project-content-grid[data-v-d6cc0f65]{animation:ai-fade-d6cc0f65 .7s ease-out .1s backwards}.project-content-main--control[data-v-d6cc0f65]{position:relative;width:100%;overflow:hidden;background:radial-gradient(ellipse 52% 40% at 50% 64%,rgba(255,133,0,.2) 0%,rgba(255,133,0,.07) 45%,transparent 78%),radial-gradient(ellipse 60% 38% at 50% 0%,rgba(255,154,60,.16),transparent 72%),linear-gradient(90deg,rgba(0,0,0,.35),transparent 22%,transparent 78%,rgba(0,0,0,.35)),#0d0c0b;border-radius:0;color:#f2f5f9}.project-content-main--control[data-v-d6cc0f65] .project-hero-title{background:linear-gradient(180deg,#fff,#fbe6cf 42%,#f0b880);-webkit-background-clip:text;background-clip:text;color:transparent}.project-content-main--control[data-v-d6cc0f65] .project-hero-description{color:#f2f5f99e}.project-content-main--control[data-v-d6cc0f65] .project-hero-tags{color:#f2f5f9b3}.project-content-main--control .project-content-components[data-v-d6cc0f65]{background:transparent}.project-content-main--control[data-v-d6cc0f65] .control-room-shell{border-color:#ffffff1a;box-shadow:0 30px 80px #0000008c,inset 0 1px #ffffff14}.project-content-main--gift[data-v-d6cc0f65]{position:relative;width:100%;overflow:hidden;background:radial-gradient(ellipse 52% 40% at 50% 64%,rgba(232,165,152,.2) 0%,rgba(232,165,152,.07) 45%,transparent 78%),radial-gradient(ellipse 60% 38% at 50% 0%,rgba(240,184,164,.16),transparent 72%),linear-gradient(90deg,rgba(0,0,0,.35),transparent 22%,transparent 78%,rgba(0,0,0,.35)),#110c0e;border-radius:0;color:#f2f5f9}.project-content-main--gift[data-v-d6cc0f65] .project-hero-title{background:linear-gradient(180deg,#fff,#f8e1d8 42%,#e8b4a4);-webkit-background-clip:text;background-clip:text;color:transparent}.project-content-main--gift[data-v-d6cc0f65] .project-hero-description{color:#f2f5f99e}.project-content-main--gift[data-v-d6cc0f65] .project-hero-tags{color:#f2f5f9b3}.project-content-main--gift .project-content-components[data-v-d6cc0f65]{background:transparent}@keyframes ai-fade-d6cc0f65{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.project-content-main--ai[data-v-d6cc0f65] .project-hero,.project-content-main--ai .project-content-components>.project-content-grid[data-v-d6cc0f65]{animation:none!important}}.project[data-v-50f1c354]{min-height:calc(var(--lvh) * 100);background-color:var(--color-background-300);max-width:calc(var(--lvw) * 100);overflow:hidden}.project.project-ai-assistant[data-v-50f1c354]{background-color:#08090c}.project-content-wrapper[data-v-50f1c354]{display:flex;flex-direction:column;justify-content:space-around;width:100%;opacity:0;transition:opacity .4s ease-out}.project-content-wrapper-visible[data-v-50f1c354]{opacity:1}.project[data-v-50f1c354] ::selection{background:var(--color-accent-400);color:var(--color-accent-text-400);text-shadow:none}.project[data-v-50f1c354] ::-moz-selection{background:var(--color-accent-400);color:var(--color-accent-text-400);text-shadow:none}.project-background[data-v-81fbff9c]{position:fixed;top:calc(var(--radius-xxl) * -1);left:0;height:calc(100% + var(--radius-xxl));width:100%;background-color:var(--color-background-300);z-index:calc(var(--z-index-project-background) - 3);pointer-events:none;transition:transform var(--transition-route-duration) var(--transition-route-ease);visibility:hidden;transform:translate3d(0,100%,0);border-radius:var(--radius-xxl) var(--radius-xxl) 0 0}.project-background-blend[data-v-81fbff9c]{position:fixed;top:0;left:0;width:100%;height:100%;z-index:calc(var(--z-index-project-background) - 4);background-color:#152242;transition:opacity var(--transition-route-duration);opacity:0;pointer-events:none;visibility:hidden}.project-background-blend-visible[data-v-81fbff9c]{opacity:.5}.project-background-blend-transitioning[data-v-81fbff9c]{visibility:visible}.project-background-visible[data-v-81fbff9c]{transform:translateZ(0)}.project-background-transitioning[data-v-81fbff9c]{visibility:visible}.home-wrapper-projectIsReady{visibility:hidden;position:fixed;inset:0}.project-wrapper{position:fixed;inset:0;overflow:hidden;z-index:var(--z-index-layout-project);visibility:hidden;pointer-events:none}.project-wrapper-visible{visibility:visible;pointer-events:auto;position:static}.project-content{width:100%;height:100%;overflow:hidden}
