@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-x-reverse:0;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:"Mona Sans", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-blue-50:#839cb5;--color-blue-100:#2d2d38;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-2xl:42rem;--container-4xl:56rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-semibold:600;--font-weight-bold:700;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-3xl:1.5rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-bounce:bounce 1s infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-white-50:#d9ecff;--color-black-50:#1c1c21;--color-black-100:#0e0e10;--color-black-200:#282732}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{.padding-x{padding-inline:calc(var(--spacing) * 5)}@media (min-width:48rem){.padding-x{padding-inline:calc(var(--spacing) * 10)}}.padding-x-lg{padding-inline:calc(var(--spacing) * 5)}@media (min-width:48rem){.padding-x-lg{padding-inline:calc(var(--spacing) * 20)}}.section-padding{margin-top:calc(var(--spacing) * 20);padding-inline:calc(var(--spacing) * 5)}@media (min-width:48rem){.section-padding{margin-top:calc(var(--spacing) * 40);padding-inline:calc(var(--spacing) * 10)}}.mt-responsive{margin-top:calc(var(--spacing) * 40)}@media (min-width:48rem){.mt-responsive{margin-top:0}}@media (min-width:80rem){.mt-responsive{margin-top:calc(var(--spacing) * 20)}}.grid-base{grid-template-columns:repeat(1,minmax(0,1fr));display:grid}.grid-2-cols{gap:calc(var(--spacing) * 6);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (min-width:48rem){.grid-2-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}.grid-3-cols{gap:calc(var(--spacing) * 6);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (min-width:48rem){.grid-3-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:80rem){.grid-3-cols{grid-template-columns:repeat(3,minmax(0,1fr))}}.grid-3-cols-md-tight{gap:calc(var(--spacing) * 5);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (min-width:48rem){.grid-3-cols-md-tight{grid-template-columns:repeat(3,minmax(0,1fr));gap:0}}.grid-4-cols{gap:calc(var(--spacing) * 7);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (min-width:48rem){.grid-4-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:80rem){.grid-4-cols{grid-template-columns:repeat(4,minmax(0,1fr))}}.grid-12-cols{gap:calc(var(--spacing) * 10);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (min-width:80rem){.grid-12-cols{grid-template-columns:repeat(12,minmax(0,1fr))}}.hero-layout{z-index:10;margin-top:calc(var(--spacing) * 32);justify-content:center;align-items:flex-start;height:80vh;display:flex;position:relative}@media (min-width:48rem){.hero-layout{height:100dvh}}@media (min-width:80rem){.hero-layout{margin-top:calc(var(--spacing) * 20);align-items:center}}.hero-text{pointer-events:none;z-index:10;--tw-font-weight:var(--font-weight-semibold);font-size:30px;font-weight:var(--font-weight-semibold);flex-direction:column;justify-content:center;display:flex;position:relative}@media (min-width:48rem){.hero-text{font-size:60px}}.hero-text img{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);object-fit:contain}@media (min-width:48rem){.hero-text img{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}}.hero-text .slide{--tw-translate-y:0px;height:48px;translate:var(--tw-translate-x) var(--tw-translate-y);padding-inline:calc(var(--spacing) * 2);padding-block:30px;padding-top:0;position:absolute;overflow:hidden}@media (min-width:48rem){.hero-text .slide{--tw-translate-y:var(--spacing);height:78px;translate:var(--tw-translate-x) var(--tw-translate-y);padding-inline:calc(var(--spacing) * 5)}}.hero-badge{background-color:var(--color-black-200);width:fit-content;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));text-wrap:nowrap;border-radius:3.40282e38px}@media (min-width:48rem){.hero-badge{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}.hero-3d-layout{top:calc(var(--spacing) * 24);width:100%;height:100%;min-height:50vh;position:absolute;right:0}@media (min-width:80rem){.hero-3d-layout{top:calc(var(--spacing) * -20);right:calc(var(--spacing) * -20);width:70%}}.navbar{z-index:100;--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);width:100%;translate:var(--tw-translate-x) var(--tw-translate-y);padding-inline:calc(var(--spacing) * 5);padding-block:calc(var(--spacing) * 5);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;--tw-ease:var(--ease-in-out);transition-duration:.3s;transition-timing-function:var(--ease-in-out);position:fixed;left:50%}@media (min-width:48rem){.navbar{padding-inline:calc(var(--spacing) * 20)}}.navbar.scrolled{background-color:var(--color-black);top:0}.navbar.not-scrolled{background-color:#0000;top:0}@media (min-width:48rem){.navbar.not-scrolled{top:calc(var(--spacing) * 10)}}.navbar .inner{justify-content:space-between;align-items:center;margin-inline:auto;display:flex}.navbar .logo{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--color-white-50);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.navbar .logo:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}@media (min-width:48rem){.navbar .logo{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}}.navbar nav.desktop{align-items:center;display:none}@media (min-width:64rem){.navbar nav.desktop{display:flex}}.navbar nav.desktop ul{display:flex}:where(.navbar nav.desktop ul>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 8) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-x-reverse)))}.navbar nav.desktop ul li{color:var(--color-white-50);position:relative}.navbar nav.desktop ul li span{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.navbar nav.desktop ul li span:hover{color:var(--color-white)}}.navbar nav.desktop ul li .underline{bottom:calc(var(--spacing) * -1);height:calc(var(--spacing) * .5);background-color:var(--color-white);width:0;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;transition-duration:.3s;position:absolute;left:0}@media (hover:hover){.navbar nav.desktop ul li .underline:is(:where(.group):hover *){width:100%}}.navbar .contact-btn{display:flex}.navbar .contact-btn .inner{border-radius:var(--radius-lg);background-color:var(--color-white);padding-inline:calc(var(--spacing) * 5);padding-block:calc(var(--spacing) * 2);color:var(--color-black);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.navbar .contact-btn .inner:is(:where(.group):hover *){background-color:var(--color-black-50)}}.navbar .contact-btn .inner span{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.navbar .contact-btn .inner span:is(:where(.group):hover *){color:var(--color-white)}}.app-showcase{margin-top:calc(var(--spacing) * 20);width:100%;padding-inline:calc(var(--spacing) * 5);padding-block:calc(var(--spacing) * 10);justify-content:center;align-items:center;display:flex}@media (min-width:48rem){.app-showcase{padding-inline:calc(var(--spacing) * 20);padding-block:calc(var(--spacing) * 20)}}.app-showcase .showcaselayout{justify-content:space-between;gap:calc(var(--spacing) * 10);flex-direction:column;display:flex}@media (min-width:80rem){.app-showcase .showcaselayout{flex-direction:row}}.app-showcase .first-project-wrapper{flex-direction:column;justify-content:space-between;height:100%;display:flex}@media (min-width:80rem){.app-showcase .first-project-wrapper{width:60%}}.app-showcase .first-project-wrapper .image-wrapper{height:calc(var(--spacing) * 96);position:relative}@media (min-width:48rem){.app-showcase .first-project-wrapper .image-wrapper{height:50vh}}@media (min-width:80rem){.app-showcase .first-project-wrapper .image-wrapper{height:70vh}}.app-showcase .first-project-wrapper .image-wrapper img{border-radius:var(--radius-xl);object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.app-showcase .first-project-wrapper .text-content{margin-top:calc(var(--spacing) * 5)}:where(.app-showcase .first-project-wrapper .text-content>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.app-showcase .first-project-wrapper .text-content .badges{margin-bottom:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 2);display:flex}.app-showcase .first-project-wrapper .text-content h2{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}@media (min-width:48rem){.app-showcase .first-project-wrapper .text-content h2{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}}@media (min-width:64rem){.app-showcase .first-project-wrapper .text-content h2{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}}.app-showcase .project-list-wrapper{gap:calc(var(--spacing) * 5);flex-direction:column;display:flex}@media (min-width:48rem){.app-showcase .project-list-wrapper{flex-direction:row}}@media (min-width:80rem){.app-showcase .project-list-wrapper{flex-direction:column;width:40%}}.app-showcase .project-list-wrapper .image-wrapper{height:calc(var(--spacing) * 64);border-radius:var(--radius-xl);padding-block:0;position:relative}@media (min-width:48rem){.app-showcase .project-list-wrapper .image-wrapper{height:calc(var(--spacing) * 52)}}@media (min-width:64rem){.app-showcase .project-list-wrapper .image-wrapper{height:calc(var(--spacing) * 72)}}@media (min-width:80rem){.app-showcase .project-list-wrapper .image-wrapper{height:37vh;padding-inline:calc(var(--spacing) * 5)}}@media (min-width:96rem){.app-showcase .project-list-wrapper .image-wrapper{padding-inline:calc(var(--spacing) * 12)}}.app-showcase .project-list-wrapper img{border-radius:var(--radius-xl);object-fit:contain;width:100%;height:100%}.app-showcase .project-list-wrapper h2{margin-top:calc(var(--spacing) * 5);font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}@media (min-width:48rem){.app-showcase .project-list-wrapper h2{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (min-width:64rem){.app-showcase .project-list-wrapper h2{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}}.cta-wrapper{z-index:20;cursor:pointer;position:relative}.cta-button{cursor:pointer;border-radius:var(--radius-lg);background-color:var(--color-black-200);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 4);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.cta-button .bg-circle{top:50%;right:calc(var(--spacing) * -10);transform-origin:50%;--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);width:120%;height:120%;translate:var(--tw-translate-x) var(--tw-translate-y);background-color:var(--color-white-50);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.5s;border-radius:3.40282e38px;transition-duration:.5s;position:absolute}@media (hover:hover){.cta-button .bg-circle:is(:where(.group):hover *){right:calc(var(--spacing) * 10);width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}}.cta-button .text{--tw-translate-x:calc(var(--spacing) * -5);translate:var(--tw-translate-x) var(--tw-translate-y);color:var(--color-black);text-transform:uppercase;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.5s;transition-duration:.5s}@media (hover:hover){.cta-button .text:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * -5);translate:var(--tw-translate-x) var(--tw-translate-y);color:var(--color-white-50)}}@media (min-width:48rem){.cta-button .text{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}@media (min-width:80rem){.cta-button .text{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}}.cta-button .arrow-wrapper{top:50%;right:calc(var(--spacing) * 10);width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y);border-radius:3.40282e38px;justify-content:center;align-items:center;display:flex;position:absolute;overflow:hidden}@media (hover:hover){.cta-button .arrow-wrapper:is(:where(.group):hover *){background-color:var(--color-white-50)}}.cta-button .arrow-wrapper img{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y);animation:var(--animate-bounce);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.5s;transition-duration:.5s}@media (hover:hover){.cta-button .arrow-wrapper img:is(:where(.group):hover *){--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}}@media (min-width:80rem){.cta-button .arrow-wrapper img{--tw-translate-y:calc(var(--spacing) * -32);translate:var(--tw-translate-x) var(--tw-translate-y)}}.card-border{border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-black-50);background-color:var(--color-black-100)}.marquee-item{width:calc(var(--spacing) * 32)}@media (min-width:48rem){.marquee-item{width:calc(var(--spacing) * 40)}}.timeline-wrapper{top:0;left:calc(var(--spacing) * 5);justify-content:center;height:100%;display:flex;position:absolute}@media (min-width:48rem){.timeline-wrapper{left:calc(var(--spacing) * 10)}}@media (min-width:80rem){.timeline-wrapper{left:35.5vw}}.timeline{top:calc(var(--spacing) * -10);z-index:10;height:110%;width:var(--spacing);background-color:var(--color-black);position:absolute}.timeline-logo{z-index:30;width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-black-50);background-color:var(--color-black-100);border-radius:3.40282e38px;flex:none;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}@media (min-width:48rem){.timeline-logo{width:calc(var(--spacing) * 20);height:calc(var(--spacing) * 20);--tw-translate-y:calc(var(--spacing) * -7);translate:var(--tw-translate-x) var(--tw-translate-y)}}.exp-card-wrapper{justify-content:space-between;gap:calc(var(--spacing) * 10);flex-direction:column-reverse;display:flex}@media (min-width:80rem){.exp-card-wrapper{gap:calc(var(--spacing) * 20);flex-direction:row}}.gradient-edge{z-index:20;height:100%;width:calc(var(--spacing) * 36);position:absolute;bottom:0}.tech-card-animated-bg{width:100%;height:100%;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.7s;background-color:#2d3240;transition-duration:.7s;position:absolute;bottom:-100%;left:0}@media (hover:hover){.tech-card-animated-bg:is(:where(.group):hover *){bottom:0}}.tech-card-content{z-index:10;flex-direction:column;align-items:center;display:flex;position:relative;overflow:hidden}@media (hover:hover){.tech-card-content:is(:where(.group):hover *){cursor:grab}}@media (min-width:48rem){.tech-card-content{justify-content:center}}@media (min-width:80rem){.tech-card-content{gap:calc(var(--spacing) * 5);height:50vh}}.tech-card-content p{padding-bottom:calc(var(--spacing) * 5);text-align:center;font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--color-white-50)}@media (min-width:80rem){.tech-card-content p{padding-bottom:0}}@media (min-width:96rem){.tech-card-content p{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}}.tech-grid{margin-top:calc(var(--spacing) * 16);gap:calc(var(--spacing) * 5);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (min-width:48rem){.tech-grid{gap:calc(var(--spacing) * 10);grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:80rem){.tech-grid{gap:calc(var(--spacing) * 16);grid-template-columns:repeat(5,minmax(0,1fr))}}.tech-icon-wrapper{height:calc(var(--spacing) * 60);width:calc(var(--spacing) * 52);justify-content:center;align-items:center;display:flex;position:relative}form label{margin-bottom:calc(var(--spacing) * 2);color:var(--color-white-50);display:block}form input,form textarea{border-radius:var(--radius-md);background-color:var(--color-blue-100);width:100%;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}:is(form input,form textarea)::placeholder{color:var(--color-blue-50)}@media (min-width:48rem){form input,form textarea{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}form a{justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-md);background-color:var(--color-white);width:100%;padding-block:calc(var(--spacing) * 4);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--color-black);display:flex}form a img{display:inline-block}.footer{margin-block:calc(var(--spacing) * 10);margin-top:calc(var(--spacing) * 10);padding-inline:calc(var(--spacing) * 5);color:var(--color-white-50);justify-content:center;align-items:center;display:flex}@media (min-width:48rem){.footer{margin-top:calc(var(--spacing) * 20);padding-inline:calc(var(--spacing) * 20)}}@media (min-width:80rem){.footer{padding-inline:calc(var(--spacing) * 20)}}.footer .footer-container{gap:calc(var(--spacing) * 5);grid-template-columns:repeat(1,minmax(0,1fr));width:100%;display:grid}@media (min-width:48rem){.footer .footer-container{grid-template-columns:repeat(3,minmax(0,1fr));gap:0}}.footer p{text-align:center}@media (min-width:48rem){.footer p{text-align:start}}.footer .socials{justify-content:center;align-items:center;gap:calc(var(--spacing) * 5);display:flex}.footer .socials .icon{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10);cursor:pointer;border-radius:var(--radius-xl);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-black-50);background-color:var(--color-black-100);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.5s;justify-content:center;align-items:center;transition-duration:.5s;display:flex}@media (hover:hover){.footer .socials .icon:hover{background-color:var(--color-black-50)}}@media (min-width:48rem){.footer .socials .icon{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}}.footer .socials img{display:inline-block}}@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.top-0{top:0}.left-0{left:0}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.mx-auto{margin-inline:auto}.my-5{margin-block:calc(var(--spacing) * 5)}.my-10{margin-block:calc(var(--spacing) * 10)}.ms-5{margin-inline-start:calc(var(--spacing) * 5)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mt-20{margin-top:calc(var(--spacing) * 20)}.mt-32{margin-top:calc(var(--spacing) * 32)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.contents{display:contents}.flex{display:flex}.hidden{display:none}.table{display:table}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-14{width:calc(var(--spacing) * 14);height:calc(var(--spacing) * 14)}.h-12{height:calc(var(--spacing) * 12)}.h-52{height:calc(var(--spacing) * 52)}.h-full{height:100%}.min-h-96{min-height:calc(var(--spacing) * 96)}.w-1{width:var(--spacing)}.w-60{width:calc(var(--spacing) * 60)}.w-full{width:100%}.w-screen{width:100vw}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.flex-none{flex:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.list-disc{list-style-type:disc}.columns-1{columns:1}.break-inside-avoid-column{break-inside:avoid-column}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-7{gap:calc(var(--spacing) * 7)}:where(.space-y-10>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 10) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-xl{border-radius:var(--radius-xl)}.bg-white-50{background-color:var(--color-white-50)}.p-1{padding:var(--spacing)}.p-8{padding:calc(var(--spacing) * 8)}.p-10{padding:calc(var(--spacing) * 10)}.px-5{padding-inline:calc(var(--spacing) * 5)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-\[\#839cb5\]{color:#839cb5}.text-white{color:var(--color-white)}.text-white-50{color:var(--color-white-50)}.italic{font-style:italic}.underline{text-decoration-line:underline}.\!ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)!important;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)!important}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (min-width:48rem){.md\:my-20{margin-block:calc(var(--spacing) * 20)}.md\:mt-40{margin-top:calc(var(--spacing) * 40)}.md\:size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.md\:h-16{height:calc(var(--spacing) * 16)}.md\:w-80{width:calc(var(--spacing) * 80)}.md\:w-full{width:100%}.md\:columns-2{columns:2}.md\:gap-3{gap:calc(var(--spacing) * 3)}.md\:gap-10{gap:calc(var(--spacing) * 10)}.md\:p-2{padding:calc(var(--spacing) * 2)}.md\:px-10{padding-inline:calc(var(--spacing) * 10)}.md\:px-20{padding-inline:calc(var(--spacing) * 20)}.md\:text-end{text-align:end}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (min-width:64rem){.lg\:columns-3{columns:3}}@media (min-width:80rem){.xl\:col-span-5{grid-column:span 5/span 5}.xl\:col-span-7{grid-column:span 7/span 7}.xl\:size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.xl\:w-2\/6{width:33.3333%}.xl\:w-4\/6{width:66.6667%}.xl\:gap-20{gap:calc(var(--spacing) * 20)}:where(.xl\:space-y-32>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 32) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 32) * calc(1 - var(--tw-space-y-reverse)))}.xl\:px-0{padding-inline:0}}.flex-center{justify-content:center;align-items:center;display:flex}.flex-col-center{flex-direction:column;justify-content:center;align-items:center;display:flex}}:root{--gradient:radial-gradient(circle, #e5e5e5 0%, #fff 100%)}html,body{color:#fff;scroll-behavior:smooth;background-color:#000;width:100dvw;font-family:Mona Sans,sans-serif;overflow-x:clip}section{width:100dvw}.slide{flex-direction:column;transition:all cubic-bezier(.71,.03,.34,1);display:inline-block}.wrapper{flex-direction:column;animation:21s cubic-bezier(.9,.01,.3,.99) infinite wordSlider;display:flex}@keyframes wordSlider{0%{transform:translateY(.5%)}12.5%{transform:translateY(-12.5%)}25%{transform:translateY(-25%)}37.5%{transform:translateY(-37.5%)}50%{transform:translateY(-50%)}62.5%{transform:translateY(-62.5%)}75%{transform:translateY(-75%)}87.5%{transform:translateY(-87.5%)}}.gradient-line{background:linear-gradient(#6d45ce 7.09%,#fd5c79 37.17%,#52aeff 62.49%,#62e0ff 75%,#45dec400 100%);width:2px}.gradient-edge:first-of-type{background:linear-gradient(90deg,#000 0%,#fff0 100%);left:0}.gradient-edge:nth-of-type(2){background:linear-gradient(-90deg,#000 0%,#fff0 100%);right:0}.marquee{width:100dvw;position:relative;overflow:hidden}.marquee-box{align-items:center;width:200%;height:100%;animation:60s linear infinite marquee;display:flex;position:absolute;overflow:hidden}.marquee-item{float:left}@keyframes marquee{0%{left:0}to{left:-100%}}.card{--start:0;z-index:40;transition:border-color 1s ease-in-out;position:relative;overflow:hidden}.card:before{content:"";background:var(--gradient);width:100%;height:100%;-webkit-mask:linear-gradient(#0000, #0000), conic-gradient(from calc((var(--start) - 15) * 1deg), #ffffff1f 0deg, white, #fff0 100deg);-webkit-mask:linear-gradient(#0000, #0000), conic-gradient(from calc((var(--start) - 15) * 1deg), #ffffff1f 0deg, white, #fff0 100deg);-webkit-mask:linear-gradient(#0000, #0000), conic-gradient(from calc((var(--start) - 15) * 1deg), #ffffff1f 0deg, white, #fff0 100deg);mask:linear-gradient(#0000, #0000), conic-gradient(from calc((var(--start) - 15) * 1deg), #ffffff1f 0deg, white, #fff0 100deg);opacity:0;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;background-attachment:fixed;border:2px solid #0000;border-radius:12px;transition:all .5s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-webkit-mask-clip:padding-box,border-box;mask-clip:padding-box,border-box;-webkit-mask-composite:source-in;mask-composite:intersect}.glow{pointer-events:none;filter:saturate(200);width:100%;height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.card:hover:before{opacity:1}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-white-50:#2b3a47;--color-black-50:#dfe5ea;--color-black-100:#fff;--color-black-200:#cfd8e0;--color-blue-50:#3d5f80;--color-blue-100:#e4eaf0;--gradient:radial-gradient(circle, #fff 0%, #e7edf3 100%)}html[data-theme=light],html[data-theme=light] body{color:#10151b;background-color:#f4f6f8}html[data-theme=light] .text-white,html[data-theme=light] h1,html[data-theme=light] h2,html[data-theme=light] h3{color:#10151b}html[data-theme=light] .bg-black,html[data-theme=light] .navbar.scrolled{background-color:#fff!important}html[data-theme=light] .bg-zinc-900{box-shadow:0 1px 3px #10151b1a;background-color:#fff!important}html[data-theme=light] .card-border{background-color:#10151b05;border-color:#10151b1f}html[data-theme=light] .hero-badge{color:#2b3a47;background-color:#e4eaf0}html[data-theme=light] .gradient-edge:first-child{background:linear-gradient(90deg,#f4f6f8,#0000)}html[data-theme=light] .gradient-edge:last-child{background:linear-gradient(-90deg,#f4f6f8,#0000)}html[data-theme=light] input,html[data-theme=light] textarea{color:#10151b;background-color:#fff;border-color:#10151b29}html[data-theme=light] .cta-button .text{color:#fff}@media (prefers-reduced-motion:no-preference){html,body{transition:background-color .4s,color .4s}}.theme-toggle{color:#d9ecff;cursor:pointer;background:0 0;border:1px solid #ffffff2e;border-radius:999px;flex:none;justify-content:center;align-items:center;width:2.35rem;height:2.35rem;transition:color .25s,border-color .25s,background .25s;display:inline-flex}.theme-toggle:hover{background:#ffffff0f;border-color:#839cb5}html[data-theme=light] .theme-toggle{color:#2b3a47;border-color:#10151b33}html[data-theme=light] .theme-toggle:hover{background:#10151b0d}.theme-icon{animation:.4s cubic-bezier(.22,1,.36,1) theme-pop;display:inline-flex}@keyframes theme-pop{0%{opacity:0;transform:rotate(-45deg)scale(.6)}to{opacity:1;transform:rotate(0)scale(1)}}.nav-actions{align-items:center;gap:1rem;display:flex}.resume-btn{color:#fff;white-space:nowrap;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:.45rem;padding:.5rem .9rem;font-size:.85rem;font-weight:500;transition:border-color .25s,background .25s;display:inline-flex}.resume-btn:hover{background:#ffffff0f;border-color:#839cb5}html[data-theme=light] .resume-btn{color:#10151b;border-color:#10151b33}html[data-theme=light] .resume-btn:hover{background:#10151b0d}@media (max-width:900px){.resume-btn .resume-label{display:none}.resume-btn{padding:.5rem .6rem}}.scroll-cue{color:#6b7480;flex-direction:column;align-items:center;gap:1rem;margin:3.5rem auto 0;transition:opacity .5s,transform .5s;display:flex}.scroll-cue.is-hidden{opacity:0;pointer-events:none;transform:translateY(10px)}.scroll-cue-label{letter-spacing:.42em;text-transform:uppercase;color:#839cb5;font-size:.68rem}.scroll-cue-mouse{border:1.5px solid #ffffff40;border-radius:999px;width:1.55rem;height:2.5rem;position:relative}html[data-theme=light] .scroll-cue-mouse{border-color:#10151b47}.scroll-cue-mouse i{background:currentColor;border-radius:999px;width:.28rem;height:.28rem;margin-left:-.14rem;animation:1.9s cubic-bezier(.45,0,.35,1) infinite cue-wheel;position:absolute;top:.48rem;left:50%}@keyframes cue-wheel{0%{opacity:0;transform:translateY(0)}20%{opacity:1}70%{opacity:0;transform:translateY(1.15rem)}to{opacity:0;transform:translateY(1.15rem)}}.scroll-cue-chevrons{flex-direction:column;align-items:center;margin-top:-.3rem;display:flex}.scroll-cue-chevrons svg{opacity:.35;margin-top:-.5rem;animation:2s ease-in-out infinite cue-chevron}.scroll-cue-chevrons svg:nth-child(2){animation-delay:.22s}@keyframes cue-chevron{0%,to{opacity:.18;transform:translateY(-2px)}50%{opacity:.7;transform:translateY(2px)}}@media (prefers-reduced-motion:reduce){.scroll-cue-mouse i,.scroll-cue-chevrons svg,.theme-icon{animation:none}}:root{--cursor-rgb:167, 139, 250}html[data-theme=light]{--cursor-rgb:109, 40, 217}.cursor-dot,.cursor-ring,.cursor-bulb{pointer-events:none;opacity:0;will-change:transform;position:fixed;top:0;left:0}.cursor-dot{z-index:2147483647;background:rgb(var(--cursor-rgb));width:8px;height:8px;box-shadow:0 0 10px rgba(var(--cursor-rgb), .85);border-radius:999px;margin:-4px 0 0 -4px;transition:opacity .3s,width .25s,height .25s,margin .25s}.cursor-ring{z-index:2147483646;border:1.5px solid rgba(var(--cursor-rgb), .8);width:34px;height:34px;box-shadow:0 0 16px rgba(var(--cursor-rgb), .25);background:0 0;border-radius:999px;margin:-17px 0 0 -17px;transition:opacity .3s,width .28s cubic-bezier(.22,1,.36,1),height .28s cubic-bezier(.22,1,.36,1),margin .28s cubic-bezier(.22,1,.36,1),border-color .28s}.cursor-bulb{z-index:0;background:radial-gradient(circle closest-side,#a78bfa4d 0%,#966ef83b 22%,#8764f629 40%,#7868f51a 56%,#696cf40e 70%,#636cf306 82%,#636cf302 92%,#0000 100%);border-radius:999px;width:32rem;height:32rem;margin:-16rem 0 0 -16rem;transition:opacity .6s}html[data-theme=light] .cursor-bulb{background:radial-gradient(circle closest-side,#7c3aed33 0%,#7646ee26 22%,#7052ef1b 40%,#6a5ef011 56%,#6366f109 70%,#6366f104 82%,#6366f101 92%,#0000 100%)}.has-cursor-fx .cursor-dot,.has-cursor-fx .cursor-ring,.has-cursor-fx .cursor-bulb{opacity:1}.has-cursor-fx.cursor-hidden .cursor-dot,.has-cursor-fx.cursor-hidden .cursor-ring,.has-cursor-fx.cursor-hidden .cursor-bulb{opacity:0}.has-cursor-fx.cursor-over-canvas .cursor-bulb{opacity:.22}.has-cursor-fx.cursor-active .cursor-ring{border-color:rgba(var(--cursor-rgb), 1);width:60px;height:60px;margin:-30px 0 0 -30px}.has-cursor-fx.cursor-active .cursor-dot{width:5px;height:5px;margin:-2.5px 0 0 -2.5px}.has-cursor-fx,.has-cursor-fx *{cursor:none!important}@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.cursor-dot,.cursor-ring,.cursor-bulb{display:none!important}.has-cursor-fx,.has-cursor-fx *{cursor:auto!important}}@keyframes resume-bob{0%,to{transform:translateY(-2px)}50%{transform:translateY(3px)}}.scroll-cue{animation:2.6s ease-in-out infinite cue-bob}@keyframes cue-bob{0%,to{transform:translateY(-4px)}50%{transform:translateY(4px)}}.scroll-cue.is-hidden{animation:none}.chat-fab{z-index:170;color:#d9ecff;cursor:pointer;background:#0b0b0f;border:1px solid #d9ecff80;border-radius:999px;justify-content:center;align-items:center;width:3.1rem;height:3.1rem;transition:transform .25s,border-color .25s,box-shadow .25s;display:inline-flex;position:fixed;bottom:1.35rem;right:1.35rem;box-shadow:0 0 0 4px #839cb524,0 10px 30px #0000008c}.chat-fab:hover{border-color:#d9ecff;transform:translateY(-2px);box-shadow:0 0 0 6px #839cb533,0 12px 34px #0009}html[data-theme=light] .chat-fab{background:#10151b;border-color:#10151b59}.chat-fab-pulse{background:#4ade80;border-radius:999px;width:.5rem;height:.5rem;animation:2.4s ease-out infinite fab-pulse;position:absolute;top:.42rem;right:.42rem}@keyframes fab-pulse{0%{box-shadow:0 0 #4ade8099}70%{box-shadow:0 0 0 .5rem #4ade8000}to{box-shadow:0 0 #4ade8000}}.chat-shell{z-index:170;background:#0a0c10;border:1px solid #ffffff1f;border-radius:.9rem;flex-direction:column;width:min(25rem,100vw - 2.7rem);height:min(33rem,100dvh - 9rem);display:flex;position:fixed;bottom:5.6rem;right:1.35rem;overflow:hidden;box-shadow:0 26px 70px #000000b3}html[data-theme=light] .chat-shell{background:#fff;border-color:#10151b24;box-shadow:0 26px 70px #10151b2e}.chat-titlebar{background:#11141a;border-bottom:1px solid #ffffff17;grid-template-columns:auto 1fr;align-items:center;gap:.6rem;padding:.65rem .85rem;display:grid}html[data-theme=light] .chat-titlebar{background:#f0f3f6;border-color:#10151b1a}.chat-lights{gap:.33rem;display:flex}.chat-lights i{border-radius:999px;width:.62rem;height:.62rem;display:block}.chat-lights i:first-child{background:#ff5f57}.chat-lights i:nth-child(2){background:#febc2e}.chat-lights i:nth-child(3){background:#28c840}.chat-tty{color:#8b95a1;justify-self:center;align-items:center;gap:.42rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;display:inline-flex}.chat-dot{background:#6b7480;border-radius:999px;width:.42rem;height:.42rem}.chat-dot.online{background:#28c840}.chat-dot.offline{background:#ff5f57}.chat-dot.connecting{background:#febc2e}.chat-log{flex:1;padding:1.05rem;overflow-y:auto}.chat-intro{flex-direction:column;gap:.65rem;display:flex}.chat-intro-lead{color:#fff;margin:0;font-size:.95rem;font-weight:600;line-height:1.5}.chat-intro-sub{color:#7d8895;margin:0 0 .35rem;font-size:.8rem;line-height:1.6}html[data-theme=light] .chat-intro-lead{color:#10151b}.chat-suggestions{flex-direction:column;gap:.42rem;display:flex}.chat-suggestions button{text-align:left;color:#c3ccd6;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:.52rem;padding:.58rem .78rem;font-size:.84rem;line-height:1.45;transition:border-color .2s,color .2s}.chat-suggestions button:hover{color:#fff;border-color:#839cb5}html[data-theme=light] .chat-suggestions button{color:#47535f;border-color:#10151b24}html[data-theme=light] .chat-suggestions button:hover{color:#10151b}.chat-thread{flex-direction:column;gap:1rem;display:flex}.chat-row{flex-direction:column;gap:.28rem;display:flex}.chat-row.user{align-items:flex-end}.chat-who{letter-spacing:.08em;text-transform:uppercase;color:#5d6874;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.62rem}.chat-bubble{white-space:pre-wrap;word-break:break-word;border-radius:.68rem;max-width:92%;padding:.65rem .85rem;font-size:.87rem;line-height:1.62}.chat-row.user .chat-bubble{color:#fff;background:#1d2632;border-bottom-right-radius:.2rem}.chat-row.model .chat-bubble{color:#cdd5de;background:#ffffff0b;border-bottom-left-radius:.2rem}html[data-theme=light] .chat-row.user .chat-bubble{background:#10151b}html[data-theme=light] .chat-row.model .chat-bubble{color:#2b3a47;background:#10151b0d}.chat-typing{gap:.2rem;display:inline-flex}.chat-typing i{background:#839cb5;border-radius:999px;width:.33rem;height:.33rem;animation:1.3s ease-in-out infinite chat-blink}.chat-typing i:nth-child(2){animation-delay:.18s}.chat-typing i:nth-child(3){animation-delay:.36s}@keyframes chat-blink{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.chat-fallback{background:#f871710f;border:1px solid #f871714d;border-radius:.52rem;margin-top:.9rem;padding:.8rem}.chat-fallback p{color:#fca5a5;margin:0 0 .5rem;font-size:.82rem}.chat-fallback a{color:#fff;border-bottom:1px solid #ffffff59;font-size:.82rem}html[data-theme=light] .chat-fallback a{color:#10151b;border-color:#10151b4d}.chat-composer{background:#0d1015;border-top:1px solid #ffffff17;align-items:flex-end;gap:.48rem;padding:.7rem;display:flex}html[data-theme=light] .chat-composer{background:#f6f8fa;border-color:#10151b1a}.chat-composer textarea{resize:none;color:#fff;background:#11141a;border:1px solid #ffffff1f;border-radius:.48rem;flex:1;max-height:6rem;padding:.55rem .68rem;font-family:inherit;font-size:.86rem;line-height:1.5}.chat-composer button{color:#0a0c10;cursor:pointer;background:#d9ecff;border:0;border-radius:.48rem;flex:none;width:2.4rem;height:2.4rem;font-size:.95rem;font-weight:700}.chat-composer button:disabled{opacity:.35;cursor:not-allowed}@media (max-width:480px){.chat-shell{width:auto;left:.7rem;right:.7rem}}@media (prefers-reduced-motion:reduce){.resume-icon,.scroll-cue,.chat-fab-pulse,.chat-typing i{animation:none}}.marquee-box{will-change:transform;width:max-content;animation:46s linear infinite marquee-scroll;display:flex;position:static;gap:0!important}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.marquee-item{filter:grayscale(.55)opacity(.55);flex-direction:column;gap:.7rem;width:7.25rem;margin-right:2.5rem;transition:filter .5s,transform .5s cubic-bezier(.22,1,.36,1);transform:translateY(0)}.marquee-item img{object-fit:contain;width:2.15rem;height:2.15rem;transition:transform .3s,filter .4s}.marquee-label{letter-spacing:.04em;white-space:nowrap;color:var(--muted);font-size:.73rem;transition:color .5s}.marquee-wrap.is-focused .marquee-item{filter:grayscale(0)opacity();transform:translateY(-6px)}.marquee-wrap.is-focused .marquee-label{color:var(--text)}.marquee-item:hover{filter:grayscale(0)opacity()!important}.marquee-item:hover img{transform:scale(1.18)}html:not([data-theme=light]) .marquee-item.invert-on-dark img,html[data-theme=light] .marquee-item.invert-on-light img{filter:invert()}@media (prefers-reduced-motion:reduce){.marquee-box{animation:none}}.form-status{margin:0;font-size:.88rem;line-height:1.5}.form-status.is-ok{color:#4ade80}.form-status.is-error{color:#fca5a5}.honeypot{opacity:0!important;width:1px!important;height:1px!important;position:absolute!important;left:-9999px!important}:root{--nav-h:4.5rem;--theme-t:.32s;--theme-e:cubic-bezier(.4, 0, .2, 1);--accent-1:#8b5cf6;--accent-2:#6366f1;--accent-3:#22d3ee;--accent-warm:#fbbf24;--grad-accent:linear-gradient(135deg, #8b5cf6 0%, #6d5cf6 55%, #5b6ef5 100%);--grad-soft:linear-gradient(140deg, #8b5cf624, #6366f114);--text:#e8eef6;--muted:#94a3b8;--surface:#ffffff09;--hairline:#ffffff1a;--nav-bg:#08090eb8;--nav-border:#ffffff14}html[data-theme=light]{--text:#0f172a;--muted:#55637a;--surface:#0f172a09;--hairline:#0f172a1c;--nav-bg:#f8fafccc;--nav-border:#0f172a14;--accent-1:#7c3aed;--accent-3:#0891b2}.hero-layout{padding-top:var(--nav-h)}.btn-surface{border:1px solid var(--hairline);background:var(--surface);color:var(--text);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;transition:border-color .3s,background .3s,transform .3s,box-shadow .3s;display:inline-flex}.btn-surface:hover{background:linear-gradient(var(--surface), var(--surface)) padding-box, var(--grad-accent) border-box;background-clip:padding-box,border-box;border-color:#0000;transform:translateY(-1px);box-shadow:0 6px 22px #8b5cf638}.resume-btn{white-space:nowrap;height:2.85rem;padding:0 1.15rem;font-size:.9rem;font-weight:500}.resume-btn[aria-disabled=true]{opacity:.4;pointer-events:none}.resume-icon{animation:2.4s ease-in-out infinite resume-bob;display:inline-flex}.resume-btn:hover .resume-icon{animation-duration:.85s}@media (max-width:900px){.resume-btn .resume-label{display:none}.resume-btn{width:2.85rem;padding:0}}.theme-toggle{flex:none;width:2.85rem;height:2.85rem;position:relative;overflow:hidden}.theme-toggle-track{width:1.15rem;height:1.15rem;position:relative}.theme-toggle-track svg{transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .4s;position:absolute;inset:0}.theme-toggle .icon-sun{color:var(--accent-warm)}.theme-toggle .icon-moon{color:var(--accent-3)}html:not([data-theme=light]) .icon-sun{opacity:1;transform:rotate(0)scale(1)}html:not([data-theme=light]) .icon-moon{opacity:0;transform:rotate(120deg)scale(.4)}html[data-theme=light] .icon-sun{opacity:0;transform:rotate(-120deg)scale(.4)}html[data-theme=light] .icon-moon{opacity:1;transform:rotate(0)scale(1)}.theme-toggle:hover .theme-toggle-track svg{filter:drop-shadow(0 0 8px)}.avatar{background:var(--grad-accent);border-radius:999px;flex:none;width:2.6rem;height:2.6rem;padding:2px;position:relative}.avatar img,.avatar .avatar-fallback{object-fit:cover;object-position:center 42%;background:#0b0d13;border-radius:999px;width:100%;height:100%;display:block}.avatar .avatar-fallback{letter-spacing:.02em;color:var(--text);place-items:center;font-size:.8rem;font-weight:700;display:grid}.brand{align-items:center;gap:.65rem;display:inline-flex}.brand-name{flex-direction:column;line-height:1.05;display:flex}.brand-name b{color:var(--text);font-size:.98rem;font-weight:650}.brand-name i{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.66rem;font-style:normal}@media (max-width:640px){.brand-name i{display:none}}.cta-arrow{color:currentColor;animation:1.7s cubic-bezier(.45,0,.35,1) infinite cta-arrow-bob}.cta-wrapper:hover .cta-arrow{animation-duration:.75s}@keyframes cta-arrow-bob{0%,to{opacity:.75;transform:translateY(-3px)}50%{opacity:1;transform:translateY(4px)}}.hero-text h1{letter-spacing:-.022em}.hero-text .hero-line{display:block}.hero-text .hero-line:last-child{background:var(--grad-accent);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}#hero:before{content:"";pointer-events:none;z-index:1;background:radial-gradient(68rem 42rem at 10% 40%,#8b5cf621 0%,#8160f616 26%,#7764f50d 46%,#6d68f406 64%,#636cf303 80%,#0000 100%),radial-gradient(58rem 40rem at 80% 26%,#6366f114 0%,#6366f10d 28%,#6366f107 50%,#6366f103 70%,#6366f101 86%,#0000 100%);position:absolute;inset:0}html[data-theme=light] #hero:before{background:radial-gradient(68rem 42rem at 10% 40%,#7c3aed1a 0%,#7646ee11 26%,#7052ef0a 46%,#6a5ef005 64%,#6366f102 80%,#0000 100%),radial-gradient(58rem 40rem at 80% 26%,#6366f10f 0%,#6366f109 28%,#6366f105 50%,#6366f102 70%,#6366f101 86%,#0000 100%)}.hero-badge{border:1px solid var(--hairline);background:var(--grad-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-badge p{color:var(--text)}.card-border{border:1px solid var(--hairline);background:var(--surface)}.tech-card-animated-bg{background:var(--grad-soft)}.footer,.footer-container{border-color:var(--hairline)}:root{--page-bg:#000}html[data-theme=light]{--page-bg:#f4f6f8}.shot-placeholder{border-radius:inherit;color:#e8eef6;text-align:center;background:radial-gradient(90% 120% at 20% 10%,#8b5cf647,#0000 60%),radial-gradient(90% 120% at 85% 90%,#22d3ee38,#0000 60%),#0d1017;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:100%;height:100%;min-height:14rem;padding:1.5rem;display:flex}.shot-placeholder.alt{background:radial-gradient(90% 120% at 80% 10%,#6366f14d,#0000 60%),radial-gradient(90% 120% at 15% 90%,#8b5cf633,#0000 60%),#0d1017}.shot-placeholder.alt2{background:radial-gradient(90% 120% at 50% 0,#22d3ee42,#0000 62%),radial-gradient(90% 120% at 10% 100%,#6366f138,#0000 60%),#0d1017}.shot-placeholder span{letter-spacing:-.02em;font-size:1.6rem;font-weight:700}.shot-placeholder b{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;font-size:.78rem;font-weight:500}.avatar{display:inline-grid}.avatar>*{grid-area:1/1}.avatar:after{content:"SS";color:var(--text);z-index:0;background:#0b0d13;border-radius:999px;grid-area:1/1;place-items:center;font-size:.78rem;font-weight:700;display:grid}.avatar img{z-index:1;position:relative}:root{--cursor-trail:167, 139, 250}html[data-theme=light]{--cursor-trail:109, 40, 217}.about-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;gap:3rem;display:grid}@media (max-width:1024px){.about-grid{grid-template-columns:minmax(0,1fr);gap:2.25rem}}.about-copy{flex-direction:column;gap:1.35rem;display:flex}.about-copy p{color:var(--muted);max-width:62ch;font-size:1.05rem;line-height:1.75}.about-copy p:first-child{color:var(--text);font-size:1.15rem}.about-side{flex-direction:column;gap:1.25rem;display:flex}.about-facts{border:1px solid var(--hairline);background:var(--surface);border-radius:.9rem;flex-direction:column;gap:0;margin:0;display:flex;overflow:hidden}.about-facts>div{border-bottom:1px solid var(--hairline);grid-template-columns:7.5rem minmax(0,1fr);gap:1rem;padding:.85rem 1.1rem;display:grid}.about-facts>div:last-child{border-bottom:0}.about-facts dt{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);align-self:center;font-size:.72rem}.about-facts dd{color:var(--text);margin:0;font-size:.92rem;line-height:1.5}.now-card{border:1px solid var(--hairline);background:linear-gradient(var(--page-bg), var(--page-bg)) padding-box, var(--grad-accent) border-box;background-clip:padding-box,border-box;border:1px solid #0000;border-radius:.9rem;padding:1.25rem}.now-head{letter-spacing:.13em;text-transform:uppercase;color:var(--text);align-items:center;gap:.5rem;margin:0 0 .6rem;font-size:.75rem;font-weight:600;display:flex}.now-updated{letter-spacing:.05em;text-transform:none;color:var(--muted);margin-left:auto;font-size:.66rem;font-weight:400}.now-dot{background:#4ade80;border-radius:999px;width:.5rem;height:.5rem;animation:2.4s ease-out infinite now-pulse;box-shadow:0 0 #4ade80a6}.now-dot:not(.available){background:var(--muted);animation:none}@keyframes now-pulse{0%{box-shadow:0 0 #4ade8099}70%{box-shadow:0 0 0 .5rem #4ade8000}to{box-shadow:0 0 #4ade8000}}.now-headline{color:var(--text);margin:0 0 .75rem;font-size:1rem;font-weight:600;line-height:1.45}.now-card ul{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.now-card li{color:var(--muted);padding-left:1rem;font-size:.88rem;line-height:1.6;position:relative}.now-card li:before{content:"";background:var(--accent-1);border-radius:999px;width:.3rem;height:.3rem;position:absolute;top:.6em;left:0}.exp-summary{flex-direction:column;gap:.6rem;display:flex}.exp-company{letter-spacing:.13em;text-transform:uppercase;color:var(--accent-3);margin:0;font-size:.72rem}.exp-review{color:var(--muted);margin:0;font-size:1rem;line-height:1.65}.company-monogram{background:var(--grad-accent);color:#fff;letter-spacing:.02em;border-radius:999px;place-items:center;width:100%;height:100%;font-size:.85rem;font-weight:700;display:grid}.cta-button{background:var(--grad-accent);border:0}.cta-wrapper .cta-button .text,.cta-button .cta-arrow{color:#fff}.cta-wrapper,.cta-button,.contact-submit{border-radius:999px}section[id],#hero,#about,#work,#experience,#skills,#contact,#testimonials{scroll-margin-top:var(--nav-h)}#about,#work,#experience,#skills,#contact,#testimonials{padding-block:clamp(2.25rem,4.5vw,3.75rem)}#about,#skills,#contact{min-height:calc(100svh - var(--nav-h));flex-direction:column;justify-content:center;display:flex}#experience{margin-top:0!important}.hero-badge p,.exp-company{font-variant-numeric:tabular-nums}h2,h3{text-wrap:balance}.flex-center>div>.flex.flex-col.items-center>h2{max-width:22ch}#about .section-title{max-width:min(100%,44ch);font-size:clamp(1.65rem,3.6vw,3rem)}.card-border,.about-facts,.now-card,.tech-card{border-radius:.9rem}@media (max-width:640px){.footer-container{padding-bottom:4.5rem}}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-1);outline-offset:3px}.card-stars{color:var(--accent-warm);align-items:center;gap:.2rem;margin-bottom:1.1rem;display:flex}.testimonial-avatar{border-radius:999px;flex:none;width:2.75rem;height:2.75rem;overflow:hidden}.testimonial-avatar img,.testimonial-avatar .company-monogram{width:100%;height:100%}.testimonial-avatar img{object-fit:cover}.timeline-logo img{object-fit:cover;border-radius:999px;width:100%;height:100%}.timeline-logo .company-monogram{width:100%;height:100%;font-size:.95rem}.tech-view{width:100%;height:100%;min-height:9rem}.btn-surface{background:var(--surface);border:1px solid var(--hairline);box-shadow:none}.btn-surface:hover{background:var(--surface-hover);border-color:var(--accent-edge);transform:translateY(-1px);box-shadow:0 4px 18px #6d5cf629}.resume-btn{background:var(--surface);color:var(--text)}.resume-btn:hover{background:var(--surface-hover)}:root{--surface-hover:#ffffff12;--accent-edge:#8b5cf68c}html[data-theme=light]{--surface-hover:#0f172a0f;--accent-edge:#7c3aed73}.cta-button{background:var(--grad-accent);border:0;transition:box-shadow .35s,transform .35s;box-shadow:0 4px 20px #6d5cf647}.cta-wrapper:hover .cta-button,button:hover>.cta-button{transform:translateY(-1px);box-shadow:0 8px 28px #6d5cf66b}.cta-button .text{color:#fff}.cta-button .arrow-wrapper{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff2e;border:1px solid #ffffff47;border-radius:999px;transition:background .3s,border-color .3s}.cta-wrapper:hover .cta-button .arrow-wrapper,button:hover>.cta-button .arrow-wrapper{background:#ffffff4d;border-color:#ffffff80}.cta-button .cta-arrow{color:#fff}.cta-button .bg-circle{background:#ffffff1f}html[data-theme=light] input,html[data-theme=light] textarea{color:#0f172a;background:#fff;border:1px solid #0f172a24}html[data-theme=light] input::placeholder,html[data-theme=light] textarea::placeholder{color:#94a3b8}html[data-theme=light] label{color:#334155}html[data-theme=light] .card-border,html[data-theme=light] .tech-card,html[data-theme=light] .about-facts{background:#fff;border-color:#0f172a1a;box-shadow:0 1px 3px #0f172a0f}html[data-theme=light] .hero-badge{color:#4c1d95;background:#8b5cf61a;border-color:#8b5cf638}html[data-theme=light] .hero-badge p{color:#4c1d95}html[data-theme=light] .text-white-50,html[data-theme=light] .exp-review,html[data-theme=light] .about-copy p{color:#475569}html[data-theme=light] .about-copy p:first-child{color:#0f172a}html[data-theme=light] .timeline{background:#f4f6f8}html[data-theme=light] .timeline-logo{background:#fff;border-color:#0f172a1f}html[data-theme=light] .chat-fab{color:#e8eef6;background:#0f172a}html[data-theme=light] .footer,html[data-theme=light] .footer-container{border-color:#0f172a1a}html[data-theme=light] .footer a,html[data-theme=light] .footer p{color:#475569}html[data-theme=light] .socials .icon img{filter:invert()brightness(.45)}.avatar{isolation:isolate;overflow:hidden}.avatar img,.avatar .avatar-fallback{object-fit:cover;object-position:center 38%;border-radius:999px;width:100%;height:100%;display:block}.send-plane{color:#fff;animation:2.2s ease-in-out infinite plane-ready}button:hover .send-plane{animation-duration:.9s}@keyframes plane-ready{0%,to{transform:translate(-2px,1px)rotate(-6deg)}50%{transform:translate(3px,-2px)rotate(4deg)}}.gradient-edge{width:8rem}.gradient-edge:first-of-type{background:linear-gradient(90deg, var(--page-bg) 0%, var(--page-bg) 45%, transparent 100%)!important}@supports (color:color-mix(in lab, red, red)){.gradient-edge:first-of-type{background:linear-gradient(90deg, var(--page-bg) 0%, color-mix(in srgb, var(--page-bg) 55%, transparent) 45%, transparent 100%)!important}}.gradient-edge:nth-of-type(2){background:linear-gradient(-90deg, var(--page-bg) 0%, var(--page-bg) 45%, transparent 100%)!important}@supports (color:color-mix(in lab, red, red)){.gradient-edge:nth-of-type(2){background:linear-gradient(-90deg, var(--page-bg) 0%, color-mix(in srgb, var(--page-bg) 55%, transparent) 45%, transparent 100%)!important}}.cursor-bulb{width:32rem;height:32rem;margin:-16rem 0 0 -16rem}html[data-theme=light] .hero-text .slide img{filter:invert()brightness(.35)saturate(.9);border:1px solid #8b5cf638;background:#8b5cf61f!important}html[data-theme=light] .hero-text h1{color:#0f172a}html[data-theme=light] .hero-text .hero-line:last-child{background:var(--grad-accent);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.tech-view{-webkit-user-select:none;user-select:none;touch-action:pan-y}.scroll-progress{pointer-events:none;background:#ffffff12;height:3px;position:absolute;bottom:-1px;left:0;right:0;overflow:visible}html[data-theme=light] .scroll-progress{background:#0f172a12}.scroll-progress-fill{transform-origin:0;will-change:transform;background:linear-gradient(90deg,#8b5cf659 0%,#8b5cf6 45%,#6d5cf6 78%,#7dd3fc 100%);width:100%;height:100%;display:block;position:relative;transform:scaleX(0);box-shadow:0 0 12px #8b5cf68c}.scroll-progress-spark{transform-origin:100%;background:#eaf6ff;border-radius:999px;width:9px;height:9px;margin-top:-4.5px;margin-right:-4.5px;animation:1.8s ease-in-out infinite spark-pulse;position:absolute;top:50%;right:0;box-shadow:0 0 6px 1px #eaf6fff2,0 0 16px 3px #7dd3fccc,0 0 30px 6px #8b5cf68c}@keyframes spark-pulse{0%,to{opacity:.85}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.scroll-progress-spark{animation:none}}.section-rule{background:linear-gradient(90deg, transparent 0%, var(--hairline) 18%, var(--accent-1) 50%, var(--hairline) 82%, transparent 100%);border:0;width:100%;height:1px;margin:0}@supports (color:color-mix(in lab, red, red)){.section-rule{background:linear-gradient(90deg, transparent 0%, var(--hairline) 18%, color-mix(in srgb, var(--accent-1) 45%, transparent) 50%, var(--hairline) 82%, transparent 100%)}}.navbar .inner{max-width:84rem}.navbar nav.desktop ul li{border-radius:999px;padding:.45rem .85rem;transition:background .25s}.navbar nav.desktop ul li span:first-child{letter-spacing:.005em;color:var(--muted);font-size:.92rem;font-weight:500}.navbar nav.desktop ul li:hover span:first-child{color:var(--text)}.navbar nav.desktop ul li .underline{background:var(--grad-accent);border-radius:999px;height:1.5px;transition:width .28s cubic-bezier(.22,1,.36,1),left .28s cubic-bezier(.22,1,.36,1);bottom:.15rem;left:50%;right:auto}.brand-name b{letter-spacing:-.011em;font-size:1rem}.brand-name i{letter-spacing:.14em;color:var(--muted);font-size:.62rem}.avatar{width:2.4rem;height:2.4rem}.navbar.scrolled{box-shadow:0 1px 0 var(--nav-border), 0 8px 30px #00000047}html[data-theme=light] .navbar.scrolled{box-shadow:0 1px 0 var(--nav-border), 0 8px 30px #0f172a12}.navbar.not-scrolled{box-shadow:none}#hero>div:first-child{opacity:.75;-webkit-mask-image:linear-gradient(100deg,#000 0% 30%,#0000008c 55%,#00000026 78%,#0000 100%);mask-image:linear-gradient(100deg,#000 0% 30%,#0000008c 55%,#00000026 78%,#0000 100%)}html[data-theme=light] #hero>div:first-child{opacity:.35}.hero-text+p,#hero header p{z-index:20;color:var(--text);text-shadow:0 1px 2px var(--page-bg), 0 0 10px var(--page-bg), 0 0 22px var(--page-bg);font-weight:500;position:relative}html[data-theme=light] #hero header p{color:#1e293b;text-shadow:0 1px 2px #f4f6f8,0 0 10px #f4f6f8,0 0 24px #f4f6f8}.hero-3d-layout{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#00000059 5%,#000000d9 12%,#000 20% 100%);mask-image:linear-gradient(90deg,#0000 0%,#00000059 5%,#000000d9 12%,#000 20% 100%)}.contact-canvas-wrap{border:1px solid var(--hairline);cursor:grab;background:radial-gradient(120% 90% at 62% 74%,#ffba7838,#0000 66%),linear-gradient(170deg,#35302a 0%,#29241f 58%,#201c18 100%)}.contact-canvas-wrap:active{cursor:grabbing}html[data-theme=light] .contact-canvas-wrap{background:radial-gradient(120% 90% at 70% 12%,#fff3dde6,#0000 58%),linear-gradient(170deg,#efeae1 0%,#e5dfd4 55%,#d9d2c5 100%);border-color:#0f172a14}.constellation{flex-direction:column;align-items:center;width:100%;margin-top:clamp(1.5rem,3vh,2.75rem);padding-bottom:clamp(17rem,46vh,32rem);display:flex;position:relative}.constellation-wires{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.constellation-wire{stroke:url(#wire);fill:none}.wire-glow{stroke-width:5px;opacity:.3;filter:blur(3.5px)}.wire-core{stroke-width:1.9px;opacity:.95}html[data-theme=light] .wire-glow{opacity:.18}html[data-theme=light] .wire-core{opacity:.72}.constellation-arc{z-index:2;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:clamp(.7rem,2vw,2.6rem);width:100%;display:flex;position:relative}.constellation-node{flex-direction:column;align-items:center;transition:transform .4s cubic-bezier(.22,1,.36,1);display:flex}.constellation-node-inner{flex-direction:column;align-items:center;gap:1rem;display:flex}.constellation-node:hover{transform:translateY(-.8rem)}.constellation-model,.constellation-model .tech-view{width:clamp(5rem,8.5vw,6.5rem);height:clamp(5rem,8.5vw,6.5rem)}.constellation-model .tech-view{pointer-events:auto;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-y}.constellation-model .tech-view:active{cursor:grabbing}.constellation-node p{letter-spacing:.02em;text-align:center;color:var(--muted);max-width:7.5rem;font-size:.76rem;font-weight:500;transition:color .3s}.constellation-node:hover p{color:var(--text)}.constellation-core{z-index:3;place-items:center;width:clamp(9rem,15vw,13rem);height:clamp(9rem,15vw,13rem);display:grid;position:absolute;bottom:clamp(-1.5rem,-2.45vh,-1rem);left:50%;transform:translate(-50%)}.constellation-core>*{grid-area:1/1}.core-glow{background:radial-gradient(circle closest-side,#a78bfa99 0%,#8b5cf65c 32%,#6366f129 56%,#5b6ef50d 76%,#0000 100%);border-radius:999px;width:100%;height:100%;animation:5s ease-in-out infinite core-breathe}html[data-theme=light] .core-glow{background:radial-gradient(circle closest-side,#8b5cf661 0%,#7c3aed3d 32%,#6366f11a 56%,#0000 100%)}@keyframes core-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.core-ring{border:1px solid #8b5cf652;border-radius:999px;width:128%;height:46%;animation:22s linear infinite core-spin;transform:rotateX(72deg)}.core-ring-2{border-color:#8b5cf62b;width:168%;height:58%;animation-duration:34s;animation-direction:reverse}html[data-theme=light] .core-ring{border-color:#7c3aed47}html[data-theme=light] .core-ring-2{border-color:#7c3aed26}@keyframes core-spin{0%{transform:rotateX(72deg)rotate(0)}to{transform:rotateX(72deg)rotate(360deg)}}.core-logo{place-items:center;display:grid}.logo-mark.is-glowing{filter:drop-shadow(0 0 12px #a78bfa73)drop-shadow(0 0 30px #8b5cf638)}@media (prefers-reduced-motion:reduce){.constellation-wire{stroke-dashoffset:0!important;stroke-dasharray:none!important}.constellation-node-inner{opacity:1!important;transform:none!important}.constellation-core{opacity:1!important}.core-glow{animation:none;opacity:1!important}.core-ring{animation:none}}@media (max-width:640px){.constellation-node{transform:none}.constellation-node:hover{transform:translateY(-.6rem)}.constellation{padding-bottom:12rem}}.brand-mark{background:var(--surface);border:1px solid var(--hairline);border-radius:.7rem;flex:none;place-items:center;width:2.4rem;height:2.4rem;display:grid}.brand:hover .brand-mark{border-color:var(--accent-edge)}html.theme-switching *,html.theme-switching :before,html.theme-switching :after{transition:background-color var(--theme-t) var(--theme-e), background-image var(--theme-t) var(--theme-e), border-color var(--theme-t) var(--theme-e), color var(--theme-t) var(--theme-e), fill var(--theme-t) var(--theme-e), stroke var(--theme-t) var(--theme-e), box-shadow var(--theme-t) var(--theme-e), opacity var(--theme-t) var(--theme-e)!important;transition-delay:0s!important}html.theme-switching .theme-toggle-track svg{transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .4s!important}.cta-button{box-shadow:0 2px 10px #6d5cf638}.cta-wrapper:hover .cta-button,button:hover>.cta-button{box-shadow:0 4px 16px #6d5cf64d}html[data-theme=light] .cta-button,html[data-theme=light] .cta-wrapper:hover .cta-button,html[data-theme=light] button:hover>.cta-button{box-shadow:none}.resume-btn{isolation:isolate;position:relative;overflow:hidden}.resume-btn .resume-fill{z-index:-1;background:var(--grad-accent);transition:transform .42s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.resume-btn[data-edge=bottom] .resume-fill{transform-origin:bottom;transform:scaleY(0)}.resume-btn[data-edge=top] .resume-fill{transform-origin:top;transform:scaleY(0)}.resume-btn[data-edge=left] .resume-fill{transform-origin:0;transform:scaleX(0)}.resume-btn[data-edge=right] .resume-fill{transform-origin:100%;transform:scaleX(0)}.resume-btn:hover[data-edge=bottom] .resume-fill,.resume-btn:hover[data-edge=top] .resume-fill{transform:scaleY(1)}.resume-btn:hover[data-edge=left] .resume-fill,.resume-btn:hover[data-edge=right] .resume-fill{transform:scaleX(1)}.resume-btn .resume-icon,.resume-btn .resume-label{z-index:1;transition:color .28s 80ms;position:relative}.resume-btn:hover .resume-icon,.resume-btn:hover .resume-label{color:#fff}.resume-btn:hover{border-color:#0000}@media (prefers-reduced-motion:reduce){.resume-btn .resume-fill{transition:opacity .2s}.resume-btn:hover .resume-fill{transform:scale(7)}}#contact .grid-12-cols{align-items:stretch}#contact .grid-12-cols>div{display:flex}#contact .grid-12-cols>div>*{width:100%}#contact .xl\:col-span-5>div{height:auto}#contact .grid-12-cols>div,.contact-canvas-wrap{min-height:22rem}#contact form{gap:.9rem}#contact textarea{min-height:4.75rem}.section-rule{background:linear-gradient(90deg, transparent 0%, var(--accent-1) 12%, var(--accent-1) 22%, var(--accent-1) 50%, var(--accent-1) 78%, var(--accent-1) 88%, transparent 100%);height:1px}@supports (color:color-mix(in lab, red, red)){.section-rule{background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--accent-1) 20%, transparent) 12%, color-mix(in srgb, var(--accent-1) 70%, transparent) 22%, color-mix(in srgb, var(--accent-1) 85%, transparent) 50%, color-mix(in srgb, var(--accent-1) 70%, transparent) 78%, color-mix(in srgb, var(--accent-1) 20%, transparent) 88%, transparent 100%)}}.stack-section{padding-block:clamp(3rem,6vw,5rem);padding-inline:clamp(1.25rem,5vw,5rem)}.stack-head{text-align:center;max-width:46rem;margin:0 auto clamp(2rem,4vw,3.5rem)}.stack-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent-1);margin:0 0 .65rem;font-size:.7rem}.stack-head h2{letter-spacing:-.02em;color:var(--text);margin:0 0 .7rem;font-size:clamp(1.6rem,3.4vw,2.6rem);line-height:1.15}.stack-sub{color:var(--muted);margin:0;font-size:clamp(.94rem,1.2vw,1.05rem)}.stack-track{flex-direction:column;gap:clamp(1.5rem,3vw,2.5rem);display:flex}@media (min-width:769px) and (prefers-reduced-motion:no-preference){.stack-slot{min-height:78svh}}.stack-slot{position:relative}.stack-card{transform-origin:top;will-change:transform, opacity;border:1px solid var(--hairline);background:var(--card-bg);border-radius:1.25rem;width:100%;max-width:56rem;margin-inline:auto;overflow:hidden;box-shadow:0 24px 60px -30px #000000b3}html[data-theme=light] .stack-card{box-shadow:0 24px 60px -34px #0f172a47;box-shadow:0 -1px 0 var(--hairline) inset, 0 -18px 40px -24px #0f172a38}:root{--card-bg:#12101c}html[data-theme=light]{--card-bg:#fff}.stack-shot{background:var(--surface);border-bottom:1px solid var(--hairline);height:clamp(11rem,26vw,20rem);position:relative;overflow:hidden}.stack-shot img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.stack-shot-empty{text-align:center;place-items:center;width:100%;height:100%;padding:1.5rem;display:grid}.stack-shot-empty span{letter-spacing:.06em;text-transform:uppercase;color:#ffffffb8;font-size:clamp(.85rem,1.5vw,1.1rem);font-weight:600}html[data-theme=light] .stack-shot-empty span{color:#0f172a8c}.stack-card[data-accent=violet] .stack-shot-empty,.stack-card[data-accent=violet] .stack-shot{background:radial-gradient(90% 130% at 22% 8%,#8b5cf66b,#0000 62%),radial-gradient(80% 120% at 88% 92%,#5b6ef54d,#0000 60%),#14111f}.stack-card[data-accent=indigo] .stack-shot-empty,.stack-card[data-accent=indigo] .stack-shot{background:radial-gradient(90% 130% at 78% 8%,#6366f170,#0000 62%),radial-gradient(80% 120% at 12% 92%,#8b5cf642,#0000 60%),#12131f}.stack-card[data-accent=cyan] .stack-shot-empty,.stack-card[data-accent=cyan] .stack-shot{background:radial-gradient(90% 130% at 50% 0,#38bdf857,#0000 64%),radial-gradient(80% 120% at 14% 96%,#6366f14d,#0000 60%),#101823}.stack-count{letter-spacing:.1em;color:#ffffff9e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000059;border:1px solid #ffffff24;border-radius:999px;padding:.24rem .6rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;position:absolute;top:1rem;right:1.15rem}.stack-body{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(1.5rem,3.5vw,3rem);padding:clamp(1.5rem,3vw,2.5rem);display:grid}@media (max-width:900px){.stack-body{grid-template-columns:minmax(0,1fr);gap:1.5rem}}.stack-lede h3{letter-spacing:-.018em;color:var(--text);margin:0 0 .6rem;font-size:clamp(1.3rem,2.4vw,1.9rem);line-height:1.2}.stack-lede>p{color:var(--muted);max-width:34ch;margin:0 0 1.1rem;font-size:clamp(.92rem,1.15vw,1.02rem);line-height:1.6}.stack-chips{flex-wrap:wrap;gap:.45rem;margin:0 0 1.15rem;padding:0;list-style:none;display:flex}.stack-chips li{color:var(--text);border:1px solid var(--hairline);background:var(--surface);border-radius:999px;padding:.32rem .72rem;font-size:.78rem}.stack-links{flex-wrap:wrap;gap:1.1rem;display:flex}.stack-links a{color:var(--text);border-bottom:1px solid var(--accent-edge);align-items:center;gap:.4rem;padding-bottom:.12rem;font-size:.9rem;font-weight:500;transition:color .25s,gap .25s;display:inline-flex}.stack-links a:hover{color:var(--accent-1);gap:.7rem}.stack-points{flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.stack-points li{background:var(--surface);border:1px solid #0000;border-radius:.8rem;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.7rem;padding:.95rem 1.1rem;transition:border-color .25s,background .25s;display:grid}.stack-points li:hover{border-color:var(--accent-edge);background:var(--surface-hover)}.stack-dot{background:var(--accent-1);border-radius:999px;width:.36rem;height:.36rem;margin-top:.55rem}.stack-points p{color:var(--text);margin:0;font-size:clamp(.88rem,1.1vw,.97rem);line-height:1.6}.navbar,.navbar.scrolled,.navbar.not-scrolled{height:var(--nav-h);min-height:var(--nav-h);max-height:var(--nav-h);padding-block:0}.navbar .inner{height:100%;padding-block:0}.brand{gap:.7rem}.brand-name{gap:.2rem;line-height:1.1}.brand-name b{letter-spacing:-.01em;font-size:.97rem;line-height:1.15}.brand-name i{letter-spacing:.15em;font-size:.6rem;line-height:1.2}.navbar nav.desktop ul{gap:.15rem}.navbar nav.desktop ul li{border-radius:999px;padding:.5rem 1rem .72rem}.navbar nav.desktop ul li .underline{border-radius:999px;height:2px;bottom:.34rem}.cta-button .bg-circle{background:#ffffff1a;transition:width .5s cubic-bezier(.22,1,.36,1),height .5s cubic-bezier(.22,1,.36,1),right .5s cubic-bezier(.22,1,.36,1),background-color .45s}.cta-button:hover .bg-circle{background:#ffffff57}@media (prefers-reduced-motion:reduce){.cta-button .bg-circle{transition:background-color .2s}}.cta-button .text,html[data-theme=light] .cta-button .text{text-shadow:none;color:#fff!important;transition:none!important}.cta-button .text{--tw-translate-x:0px!important;--tw-translate-y:0px!important}.cta-button,html[data-theme=light] .cta-button{background:var(--grad-accent);background-color:#0000}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);transform:translateY(18px)}.reveal.is-revealed{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}.nav-burger{z-index:210;border:1px solid var(--hairline);background:var(--surface);cursor:pointer;border-radius:999px;flex:none;justify-content:center;align-items:center;width:2.85rem;height:2.85rem;display:none;position:relative}@media (max-width:1023px){.nav-burger{display:inline-flex}}.burger-bars{gap:4px;width:17px;display:grid}.burger-bars i{background:var(--text);border-radius:999px;width:100%;height:1.8px;transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .2s;display:block}.burger-bars.is-open i:first-child{transform:translateY(5.8px)rotate(45deg)}.burger-bars.is-open i:nth-child(2){opacity:0}.burger-bars.is-open i:nth-child(3){transform:translateY(-5.8px)rotate(-45deg)}.mobile-nav-scrim{z-index:190;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:pointer;background:#04040a9e;border:0;padding:0;position:fixed;inset:0}html[data-theme=light] .mobile-nav-scrim{background:#0f172a57}.mobile-nav{top:var(--nav-h);z-index:200;background:var(--nav-bg);border-bottom:1px solid var(--nav-border);-webkit-backdrop-filter:blur(18px)saturate(150%);backdrop-filter:blur(18px)saturate(150%);padding:1rem 1.25rem 1.6rem;animation:.28s cubic-bezier(.22,1,.36,1) drawer-in;position:fixed;left:0;right:0}@keyframes drawer-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}.mobile-nav ul{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.mobile-nav a{min-height:48px;color:var(--text);border-radius:.7rem;align-items:center;padding:0 .9rem;font-size:1rem;font-weight:500;display:flex}.mobile-nav a:active{background:var(--surface-hover)}@media (min-width:1024px){.mobile-nav,.mobile-nav-scrim{display:none!important}}@media (prefers-reduced-motion:reduce){.mobile-nav{animation:none}.burger-bars i{transition:none}}@media (max-width:1023px){.brand{min-height:44px}.footer a,.socials .icon{align-items:center;min-height:44px;display:inline-flex}}@media (max-width:900px){.constellation{padding-bottom:0}.constellation-arc{grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));gap:1.5rem .75rem;max-width:26rem;margin-inline:auto;display:grid}.constellation-node{transform:none!important}.constellation-model,.constellation-model .tech-view{width:clamp(4.5rem,20vw,6rem);height:clamp(4.5rem,20vw,6rem)}.constellation-node p{max-width:6.5rem;font-size:.7rem}.constellation-core{width:clamp(7rem,30vw,10rem);height:clamp(7rem,30vw,10rem);margin:clamp(5rem,18vw,7.5rem) auto 0;position:relative;bottom:auto;left:auto;transform:none}}@media (max-width:768px){.stack-slot{min-height:0}.stack-card{border-radius:1rem;max-width:100%}.stack-shot{height:clamp(8rem,34vw,12rem)}.stack-body{grid-template-columns:1fr;gap:1.25rem;padding:1.25rem}.stack-section{padding-inline:1.1rem}.stack-head h2{font-size:clamp(1.4rem,6.5vw,1.9rem)}}@media (max-width:900px){#about,#work,#skills,#contact{min-height:0;display:block}#about,#work,#experience,#skills,#contact{padding-block:clamp(2.75rem,9vw,4rem)}.about-grid{grid-template-columns:1fr;gap:1.75rem}.about-copy p{font-size:1rem}.about-facts>div{grid-template-columns:6.5rem minmax(0,1fr);gap:.75rem}#contact .grid-12-cols{gap:1.25rem}#contact .grid-12-cols>div,.contact-canvas-wrap{min-height:16rem;max-height:none}#contact form{gap:1rem}#contact textarea{min-height:6rem}}@media (max-width:768px){.hero-layout{padding-top:calc(var(--nav-h) + .5rem)}.hero-text h1{font-size:clamp(1.9rem,8.5vw,2.6rem)}#hero header p{font-size:.95rem}.cta-wrapper{width:min(100%,17rem)}}@media (max-width:480px){.chat-fab{width:2.9rem;height:2.9rem;bottom:1rem;right:1rem}.chat-shell{left:.65rem;right:.65rem;bottom:calc(4.7rem + var(--kb,0px));height:min(30rem, calc(100svh - 8rem - var(--kb,0px)))}}@media (max-width:640px){.marquee-item{width:5.5rem;margin-right:1.6rem}.marquee-item img{width:1.7rem;height:1.7rem}.marquee-label{font-size:.65rem}.gradient-edge{width:3.5rem}}@media (max-width:900px){.exp-card-wrapper{gap:1.25rem}.expText{gap:1rem!important}.expText h3{font-size:clamp(1.15rem,5vw,1.5rem)}.expText li{font-size:.92rem!important}}.navbar nav.desktop ul li{display:flex}.navbar nav.desktop ul li a{align-items:center;width:100%;min-height:34px;display:flex}.footer a{align-items:center;min-height:44px;display:inline-flex}.socials .icon{justify-content:center;min-width:44px;min-height:44px}.navbar nav.desktop ul li{padding:0}.navbar nav.desktop ul li a{border-radius:999px;min-height:44px;padding:.55rem 1rem .72rem}.navbar nav.desktop ul li:hover{background:0 0}.navbar nav.desktop ul li a:hover{background:var(--surface-hover)}.navbar nav.desktop ul li .underline{bottom:.34rem;left:1rem}.navbar nav.desktop ul li:hover .underline{width:calc(100% - 2rem);left:1rem}@media (max-width:900px){.constellation-node p{margin-top:.15rem;line-height:1.35}.constellation-node-inner{gap:1.15rem}.constellation-arc{gap:2rem .75rem}}#contact .card-border{padding:clamp(1.35rem,2.2vw,1.9rem)}#contact form label{letter-spacing:.01em;margin-bottom:.42rem;font-size:.82rem;font-weight:500;transition:color .28s}#contact form input,#contact form textarea{border:1px solid #ffffff1c;padding:.72rem .9rem;transition:border-color .3s,box-shadow .3s,background-color .3s;display:block}#contact form textarea{resize:vertical}.contact-field{position:relative}.contact-field:focus-within label{color:var(--accent-1)}#contact form input:focus,#contact form textarea:focus{border-color:#8b5cf6a6;box-shadow:0 0 0 4px #8b5cf626}#contact form input:focus-visible,#contact form textarea:focus-visible{outline:none}.field-line{background:var(--grad-accent);opacity:0;transform-origin:0;pointer-events:none;border-radius:999px;height:2px;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .25s;position:absolute;bottom:1px;left:.2rem;right:.2rem;transform:scaleX(0)}.contact-field:focus-within .field-line{opacity:1;transform:scaleX(1)}:is(#contact form input:user-invalid,#contact form textarea:user-invalid){border-color:#f871718c}.contact-field:has(:user-invalid) label{color:#f87171}.contact-form.is-sent :user-invalid{border-color:var(--hairline)!important}.contact-form.is-sent .contact-field label{color:var(--muted)!important}.contact-submit{background:0 0;border:0;width:100%;padding:0}.contact-submit .cta-button{transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s,background .45s;position:relative;overflow:hidden}.contact-submit:hover .cta-button{transform:translateY(-2px)}.contact-submit:active .cta-button{transition-duration:.12s;transform:translateY(0)scale(.988)}.contact-submit[disabled]{cursor:progress}.contact-submit .send-plane{transition:transform .35s cubic-bezier(.22,1,.36,1)}.contact-submit:hover .send-plane{transform:translate(2px,-2px)rotate(6deg)}.contact-submit[data-state=sending] .cta-button:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000 20%,#ffffff38 50%,#0000 80%);animation:1.15s ease-in-out infinite cta-sheen;position:absolute;inset:0;transform:translate(-100%)}@keyframes cta-sheen{to{transform:translate(100%)}}.cta-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:999px;width:15px;height:15px;animation:.7s linear infinite cta-spin}@keyframes cta-spin{to{transform:rotate(360deg)}}.contact-submit[data-state=success] .cta-button{background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%);box-shadow:0 4px 20px #22c55e4d}.send-check{animation:.45s cubic-bezier(.22,1,.36,1) check-pop}@keyframes check-pop{0%{opacity:0;transform:scale(.4)rotate(-12deg)}to{opacity:1;transform:scale(1)rotate(0)}}.form-status{align-items:flex-start;gap:.55rem;font-size:.82rem;line-height:1.45;animation:.4s cubic-bezier(.22,1,.36,1) status-in;display:flex}@keyframes status-in{0%{opacity:0;transform:translateY(6px)}}.form-status-dot{border-radius:999px;flex:none;width:.5rem;height:.5rem;margin-top:.4rem}.form-status.is-ok .form-status-dot{background:#22c55e;box-shadow:0 0 0 4px #22c55e29}.form-status.is-error .form-status-dot{background:#f87171;box-shadow:0 0 0 4px #f8717129}html[data-theme=light] #contact form input:not(:focus),html[data-theme=light] #contact form textarea:not(:focus){border-color:#0f172a24}@media (prefers-reduced-motion:reduce){.contact-submit .cta-button,.contact-submit:hover .cta-button,.contact-submit:active .cta-button,.contact-submit .send-plane,.contact-submit:hover .send-plane{transform:none}.contact-submit[data-state=sending] .cta-button:after{animation:none}.cta-spinner{animation-duration:1.6s}.send-check,.form-status{animation:none}.field-line{transition:opacity .2s;transform:scaleX(1)}}.contact-form.is-armed .contact-field,.contact-form.is-armed .contact-submit{opacity:0;transform:translateY(16px)}.contact-form.is-armed.is-in .contact-field,.contact-form.is-armed.is-in .contact-submit{opacity:1;transition:opacity .5s,transform .55s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--i,0) * 75ms);transform:none}@media (prefers-reduced-motion:reduce){.contact-form.is-armed .contact-field,.contact-form.is-armed .contact-submit{opacity:1;transition:none;transform:none}}.socials .icon img{object-fit:contain;width:20px;height:20px}@media (min-width:768px){.socials .icon img{width:22px;height:22px}}.cursor-ripple{z-index:2147483645;pointer-events:none;border:1.5px solid rgba(var(--cursor-rgb), .5);width:20px;height:20px;box-shadow:0 0 14px rgba(var(--cursor-rgb), .2);will-change:transform, opacity;border-radius:999px;margin:-10px 0 0 -10px;animation:.62s cubic-bezier(.22,1,.36,1) forwards cursor-ripple;position:fixed;top:0;left:0}@keyframes cursor-ripple{0%{transform:translate3d(var(--rx,0), var(--ry,0), 0) scale(.4);opacity:0}12%{opacity:.7}to{transform:translate3d(var(--rx,0), var(--ry,0), 0) scale(3.6);opacity:0}}@media (prefers-reduced-motion:reduce),(pointer:coarse){.cursor-ripple{display:none!important}}.chat-fab-track{width:20px;height:20px;display:block;position:relative}.chat-fab-track svg{transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .32s;position:absolute;inset:0}.chat-fab .icon-bubble{opacity:1;transform:rotate(0)scale(1)}.chat-fab .icon-x{opacity:0;transform:rotate(-120deg)scale(.4)}.chat-fab.is-open .icon-bubble{opacity:0;transform:rotate(120deg)scale(.4)}.chat-fab.is-open .icon-x{opacity:1;transform:rotate(0)scale(1)}@media (prefers-reduced-motion:reduce){.chat-fab-track svg{transition:opacity .2s}.chat-fab .icon-x,.chat-fab.is-open .icon-bubble,.chat-fab .icon-bubble,.chat-fab.is-open .icon-x{transform:none}}.stack-note{color:var(--muted);max-width:34ch;margin:.55rem 0 0;font-size:.78rem;line-height:1.5}.stack-links a{position:relative}.stack-links a:after{content:"";height:44px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.navbar .brand{min-height:44px}.constellation-model .tech-view{min-height:0}@media (max-width:900px){.cta-button{padding-right:4.5rem}}@media (max-width:768px){.stack-shot{background:var(--surface)}.stack-shot img{object-fit:contain}}.socials{flex-wrap:wrap;gap:.55rem 1.1rem}.social-link{min-height:44px;color:var(--muted);border-radius:.85rem;align-items:center;gap:.6rem;padding:.2rem .55rem .2rem .2rem;font-size:.86rem;font-weight:500;transition:color .28s,background .28s;display:inline-flex}.social-link:hover{color:var(--text);background:var(--surface-hover)}.social-link:hover .icon{border-color:var(--accent-edge)}.socials .social-link .icon{flex:none;width:2.4rem;height:2.4rem;transition:border-color .28s,background .28s}.social-label{white-space:nowrap}.footer-line p{color:var(--muted);font-size:.86rem}@media (max-width:640px){.socials{justify-content:center;gap:.4rem .6rem}.social-link{padding-right:.4rem;font-size:.8rem}.socials .social-link .icon{width:2.2rem;height:2.2rem}}@media (min-width:768px){.footer-container{grid-template-columns:1fr auto 1fr}}.site-loader{z-index:2147483000;background:var(--page-bg);place-items:center;transition:opacity .5s,visibility .5s;animation:0s linear 6s forwards loader-failsafe;display:grid;position:fixed;inset:0}@keyframes loader-failsafe{to{opacity:0;visibility:hidden;pointer-events:none}}.site-loader[data-done=true]{opacity:0;visibility:hidden;pointer-events:none}.site-loader:before{content:"";background:radial-gradient(circle closest-side,#a78bfa29 0%,#8b5cf617 40%,#6366f108 68%,#0000 100%);border-radius:999px;width:min(46rem,90vw);height:min(46rem,90vw);position:absolute}html[data-theme=light] .site-loader:before{background:radial-gradient(circle closest-side,#8b5cf621 0%,#7c3aed12 40%,#0000 100%)}.site-loader-inner{flex-direction:column;align-items:center;gap:1.6rem;display:flex;position:relative}.site-loader-stage{place-items:center;width:15rem;height:15rem;display:grid;position:relative}.site-loader-wires{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.site-loader-wires path{fill:none;stroke:url(#loader-wire);stroke-width:1.6px;stroke-linecap:round;stroke-dasharray:210;stroke-dashoffset:210px;animation:2.1s cubic-bezier(.4,0,.2,1) infinite loader-draw}.site-loader-wires path:nth-child(2){animation-delay:.1s}.site-loader-wires path:nth-child(3){animation-delay:.2s}.site-loader-wires path:nth-child(4){animation-delay:.3s}@keyframes loader-draw{0%{stroke-dashoffset:210px;opacity:0}22%{opacity:1}62%{stroke-dashoffset:0;opacity:1}86%{stroke-dashoffset:0;opacity:0}to{stroke-dashoffset:0;opacity:0}}.site-loader-mark{width:78px;height:78px;animation:2.1s ease-in-out infinite loader-mark;position:relative}@keyframes loader-mark{0%,to{filter:drop-shadow(0 0 8px #a78bfa3d);transform:scale(.97)}62%{filter:drop-shadow(0 0 15px #a78bfa80)drop-shadow(0 0 36px #8b5cf63d);transform:scale(1.03)}}.site-loader-rule{background:var(--hairline);border-radius:999px;width:min(14rem,42vw);height:2px;display:block;overflow:hidden}.site-loader-rule i{background:var(--grad-accent);transform-origin:0;border-radius:999px;width:100%;height:100%;display:block}.site-loader-name{letter-spacing:.34em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:500;display:flex}.site-loader-name span{opacity:0;animation:.5s cubic-bezier(.22,1,.36,1) forwards loader-letter;animation-delay:calc(var(--i) * 45ms + .2s);transform:translateY(6px)}@keyframes loader-letter{to{opacity:1;transform:translateY(0)}}.site-loader-words{text-align:center;height:1.35rem;color:var(--accent-1);font-size:.95rem;font-weight:600;line-height:1.35rem;display:block;overflow:hidden}.site-loader-words i{font-style:normal;animation:4.8s cubic-bezier(.7,0,.3,1) infinite loader-words;display:block}.site-loader-words b{height:1.35rem;font-weight:600;display:block}@keyframes loader-words{0%,18%{transform:translateY(0)}25%,43%{transform:translateY(-1.35rem)}50%,68%{transform:translateY(-2.7rem)}75%,93%{transform:translateY(-4.05rem)}to{transform:translateY(-5.4rem)}}@media (prefers-reduced-motion:reduce){.site-loader-mark{animation:none}.site-loader-wires path{stroke-dashoffset:0;opacity:.5;animation:none}.site-loader-name span{opacity:1;animation:none;transform:none}.site-loader-words i{animation:none}.site-loader-rule i,.site-loader{transition:none}}.site-loader-status{color:var(--muted);font-size:.78rem;font-weight:500;animation:.38s cubic-bezier(.22,1,.36,1) both loader-status}@keyframes loader-status{0%{opacity:.3;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.site-loader-status{animation:none}}.btn-surface{position:relative}.btn-surface:after,.chat-fab:after{content:"";border-radius:inherit;transition:transform .3s;position:absolute;inset:-1px}.btn-surface:hover:after{transform:translateY(1px)}.resume-btn:hover,.resume-btn:hover:after{transform:none}.resume-btn:hover{box-shadow:0 5px 20px #6d5cf642}.chat-fab:after{transition-duration:.25s}.chat-fab:hover:after{transform:translateY(2px)}.theme-toggle{overflow:visible}@media (prefers-reduced-motion:reduce){.btn-surface:after,.chat-fab:after{transition:none}}html[data-theme=light] .logo-mark,html[data-theme=light] .site-loader-mark{filter:saturate(2)contrast(1.75)brightness(.76)drop-shadow(0 0 9px #7c3aed4d)}html[data-theme=light] .logo-mark.is-glowing{filter:saturate(2)contrast(1.75)brightness(.76)drop-shadow(0 0 15px #7c3aed52)drop-shadow(0 0 38px #6d28d926)}html[data-theme=light] .site-loader-mark{animation-name:loader-mark-light}@keyframes loader-mark-light{0%,to{filter:saturate(2)contrast(1.75)brightness(.76)drop-shadow(0 0 9px #7c3aed42);transform:scale(.97)}62%{filter:saturate(2.05)contrast(1.8)brightness(.72)drop-shadow(0 0 18px #7c3aed66)drop-shadow(0 0 42px #6d28d92b);transform:scale(1.03)}}@media (prefers-reduced-motion:reduce){html[data-theme=light] .site-loader-mark{filter:saturate(2)contrast(1.75)brightness(.76);animation:none}}html[data-theme=light] #loader-wire stop:first-child{stop-color:#6d28d91f}html[data-theme=light] #loader-wire stop:last-child{stop-color:#4338cae6}.contact-form .contact-submit{margin-top:.55rem}.brand-role{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-size:.66rem;font-style:normal;display:inline-block;position:relative}.brand-role-sizer{visibility:hidden}.brand-role-text{align-items:center;display:flex;position:absolute;inset:0}.brand-role-caret{background:var(--accent-3);width:.55em;height:1px;margin-left:.14em;animation:1s step-end infinite role-caret;display:inline-block}@keyframes role-caret{0%,50%{opacity:1}50.01%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.brand-role-caret{display:none}}.outcome-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.75rem,1.4vw,1.15rem);margin-top:clamp(2.5rem,6vw,5rem);padding:0 clamp(1.25rem,5vw,5rem);display:grid}.outcome{border:1px solid var(--hairline);background:var(--surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity .55s,transform .55s cubic-bezier(.22,1,.36,1),border-color .3s;transition-delay:calc(var(--i) * 90ms);border-radius:1rem;flex-direction:column;gap:.6rem;padding:clamp(1rem,1.6vw,1.35rem);display:flex;transform:translateY(14px)}.outcome-strip.is-in .outcome{opacity:1;transform:none}.outcome:hover{border-color:var(--accent-edge)}.outcome-head{align-items:center;gap:.5rem;display:flex}.outcome-icon{border:1px solid var(--hairline);background:var(--surface);border-radius:.5rem;flex:none;place-items:center;width:1.65rem;height:1.65rem;display:grid}.outcome-icon img{object-fit:contain;width:16px;height:16px}.outcome-where{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.68rem}.outcome-metric{flex-wrap:wrap;align-items:baseline;gap:.45rem;margin:0;font-weight:650;line-height:1.1;display:flex}.outcome-before{color:var(--muted);font-size:clamp(.85rem,1.1vw,.95rem);-webkit-text-decoration:line-through #f871718c;text-decoration:line-through #f871718c}.outcome-arrow{background:var(--accent-1);transform-origin:0;width:1.1rem;height:1px;transition:transform .5s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--i) * 90ms + .22s);flex:none;align-self:center;position:relative;transform:scaleX(0)}.outcome-arrow:after{content:"";border-top:1px solid var(--accent-1);border-right:1px solid var(--accent-1);width:.32rem;height:.32rem;position:absolute;top:50%;right:0;transform:translateY(-50%)rotate(45deg)}.outcome-strip.is-in .outcome-arrow{transform:scaleX(1)}.outcome-after{letter-spacing:-.02em;background:var(--grad-accent);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(1.15rem,1.9vw,1.6rem)}.outcome-label{color:var(--muted);margin:0;font-size:clamp(.78rem,.95vw,.86rem);line-height:1.45}@media (max-width:900px){.outcome-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.outcome-strip{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.outcome,.outcome-arrow{transition:none}.outcome{opacity:1;transform:none}.outcome-arrow{transform:scaleX(1)}}@media (max-width:640px){.constellation-arc{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem .55rem;max-width:none}.constellation-node{min-width:0}.constellation-model,.constellation-model .tech-view{width:3.4rem;height:3.4rem}.constellation-node-inner{gap:.5rem}.constellation-node p{letter-spacing:0;font-size:.6rem;line-height:1.25}.btn-surface,.hero-badge{-webkit-backdrop-filter:none;backdrop-filter:none}html:not([data-theme=light]) .btn-surface{background:#161820eb}html[data-theme=light] .btn-surface{background:#ffffffeb}}.constellation-flat{object-fit:contain;width:100%;height:100%;animation:4.6s ease-in-out infinite logo-float;animation-delay:calc(var(--n,0) * -.55s);will-change:transform}@keyframes logo-float{0%,to{transform:translateY(-3.5%)rotate(-1.1deg)}50%{transform:translateY(3.5%)rotate(1.1deg)}}@media (prefers-reduced-motion:reduce){.constellation-flat{animation:none;transform:none}}html:not([data-theme=light]) .constellation-flat.invert-on-dark{filter:invert()brightness(1.6)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}
