@import "https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap";
@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-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-duration:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--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);--font-display:var(--font-display)}}@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;@layer utilities{.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-transform{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))}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.group-hover\:translate-x-0\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:-translate-y-0\.5:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}}}:root{--font-sans:"Poppins", "Helvetica Neue", Arial, sans-serif;--font-display:"Poppins", "Helvetica Neue", Arial, sans-serif;--primary-00:#f0f6ff;--primary-10:#e6eeff;--primary-20:#ccdfff;--primary-30:#b3ceff;--primary-40:#99bdff;--primary-50:#7aa9ff;--primary-60:#5b8bff;--primary-70:#3d75ff;--primary-80:#1e5bff;--primary-90:#0046e6;--primary-100:#0033b3;--neutral-00:#fff;--neutral-10:#fafafa;--neutral-20:#f5f5f5;--neutral-30:#e5e5e5;--neutral-40:#d4d4d4;--neutral-50:#a3a3a3;--neutral-60:#737373;--neutral-70:#525252;--neutral-80:#262626;--neutral-90:#171717;--neutral-100:#000;--success:#22c55e;--warning:#f59e0b;--error:#ef4444;--info:#3b82f6;--accent-purple:#8b5cf6;--accent-teal:#14b8a6;--accent-indigo:#6366f1;--accent-pink:#ec4899;--accent-amber:#f97316;--background:var(--neutral-00);--foreground:var(--neutral-90);--card:var(--neutral-10);--card-foreground:var(--neutral-90);--muted:var(--neutral-20);--muted-foreground:var(--neutral-60);--border:var(--neutral-30);--primary:var(--primary-60);--primary-foreground:var(--neutral-00);--ring:var(--primary-60);--glass:var(--neutral-00)}@supports (color:color-mix(in lab, red, red)){:root{--glass:color-mix(in srgb, var(--neutral-00) 8%, transparent)}}:root{--glass-strong:var(--neutral-00)}@supports (color:color-mix(in lab, red, red)){:root{--glass-strong:color-mix(in srgb, var(--neutral-00) 16%, transparent)}}:root{--shadow-soft:0 24px 120px var(--neutral-100)}@supports (color:color-mix(in lab, red, red)){:root{--shadow-soft:0 24px 120px color-mix(in srgb, var(--neutral-100) 40%, transparent)}}.dark{--background:var(--neutral-100);--foreground:var(--neutral-00);--card:var(--neutral-90);--card-foreground:var(--neutral-00);--muted:var(--neutral-80);--muted-foreground:var(--neutral-50);--border:var(--neutral-00)}@supports (color:color-mix(in lab, red, red)){.dark{--border:color-mix(in srgb, var(--neutral-00) 15%, transparent)}}.dark{--primary:var(--primary-60);--primary-foreground:var(--neutral-00);--ring:var(--primary-50);--glass:var(--neutral-00)}@supports (color:color-mix(in lab, red, red)){.dark{--glass:color-mix(in srgb, var(--neutral-00) 7%, transparent)}}.dark{--glass-strong:var(--neutral-00)}@supports (color:color-mix(in lab, red, red)){.dark{--glass-strong:color-mix(in srgb, var(--neutral-00) 14%, transparent)}}.dark{--shadow-soft:0 32px 140px var(--neutral-100)}@supports (color:color-mix(in lab, red, red)){.dark{--shadow-soft:0 32px 140px color-mix(in srgb, var(--neutral-100) 80%, transparent)}}*{box-sizing:border-box}html{background:var(--background);scroll-behavior:auto}body{background:var(--background);min-height:100vh;color:var(--foreground);font-family:var(--font-sans);text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}::selection{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in srgb, var(--primary) 70%, transparent)}}::selection{color:var(--primary-foreground)}.portfolio-shell{isolation:isolate;background:radial-gradient(circle at 50% 0%, var(--primary), transparent 34rem), var(--background);min-height:100vh;position:relative}@supports (color:color-mix(in lab, red, red)){.portfolio-shell{background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--primary) 12%, transparent), transparent 34rem), var(--background)}}.portfolio-shell:before{z-index:-2;pointer-events:none;content:"";opacity:.3;background-image:linear-gradient(var(--foreground) 1px, transparent 1px), linear-gradient(90deg, var(--foreground) 1px, transparent 1px);position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.portfolio-shell:before{background-image:linear-gradient(color-mix(in srgb, var(--foreground) 6%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--foreground) 6%, transparent) 1px, transparent 1px)}}.portfolio-shell:before{-webkit-mask-image:radial-gradient(circle at 50% 26%, var(--neutral-100), transparent 64%);-webkit-mask-image:radial-gradient(circle at 50% 26%, var(--neutral-100), transparent 64%);-webkit-mask-image:radial-gradient(circle at 50% 26%, var(--neutral-100), transparent 64%);mask-image:radial-gradient(circle at 50% 26%, var(--neutral-100), transparent 64%);background-size:5.8rem 5.8rem}.preloader{z-index:100;background:var(--background);place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.loader-blob{aspect-ratio:1;border:1px solid var(--accent-pink);width:clamp(7rem,17vw,17rem);position:absolute}@supports (color:color-mix(in lab, red, red)){.loader-blob{border:1px solid color-mix(in srgb, var(--accent-pink) 78%, var(--foreground))}}.loader-blob{box-shadow:0 0 4rem var(--accent-pink), inset 0 0 2.7rem var(--accent-pink);border-radius:53% 47% 38% 62%/47% 39% 61% 53%}@supports (color:color-mix(in lab, red, red)){.loader-blob{box-shadow:0 0 4rem color-mix(in srgb, var(--accent-pink) 70%, transparent), inset 0 0 2.7rem color-mix(in srgb, var(--accent-pink) 36%, transparent)}}.loader-blob{filter:blur(.1px)}.loader-word{z-index:2;color:var(--foreground);gap:clamp(.7rem,2.6vw,2.4rem);display:flex;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.loader-word{color:color-mix(in srgb, var(--foreground) 45%, transparent)}}.loader-word{font-family:var(--font-display);letter-spacing:.58em;font-size:clamp(1.8rem,7vw,8rem);font-weight:500;transform:translate(.26em)}.loader-letter{display:block}.preloader p{color:var(--muted-foreground);letter-spacing:-.02em;margin:0;font-size:.72rem;position:absolute;bottom:2rem;left:2rem}.cursor-core,.cursor-aura{z-index:90;pointer-events:none;mix-blend-mode:difference;border-radius:999rem;position:fixed;top:0;left:0;translate:-50% -50%}.cursor-core{background:var(--foreground);width:.45rem;height:.45rem}.cursor-aura{border:1px solid var(--foreground);width:3rem;height:3rem}@supports (color:color-mix(in lab, red, red)){.cursor-aura{border:1px solid color-mix(in srgb, var(--foreground) 36%, transparent)}}.site-header{z-index:80;pointer-events:none;justify-content:space-between;align-items:center;padding:clamp(1rem,2vw,1.65rem) clamp(1rem,2.2vw,2rem);display:flex;position:fixed;top:0;left:0;right:0}.brand-mark,.menu-trigger{pointer-events:auto;border:1px solid var(--border);color:var(--foreground);background:var(--background);align-items:center;gap:.58rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.brand-mark,.menu-trigger{background:color-mix(in srgb, var(--background) 72%, transparent)}}.brand-mark,.menu-trigger{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow-soft)}.brand-mark{letter-spacing:.08em;border-radius:999rem;padding:.45rem .62rem;font-size:.7rem;font-weight:600}.brand-symbol{background:var(--foreground);width:1.25rem;height:1.25rem;color:var(--background);border-radius:999rem;place-items:center;display:grid}.menu-trigger{border-radius:999rem;padding:.48rem .7rem;font-size:.72rem;transition:border-color .25s,background-color .25s}.menu-trigger:hover,.brand-mark:hover{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.menu-trigger:hover,.brand-mark:hover{border-color:color-mix(in srgb, var(--foreground) 42%, transparent)}}.menu-trigger:hover,.brand-mark:hover{background:var(--background)}@supports (color:color-mix(in lab, red, red)){.menu-trigger:hover,.brand-mark:hover{background:color-mix(in srgb, var(--background) 88%, transparent)}}.side-nav{z-index:70;flex-direction:column;gap:.36rem;display:flex;position:fixed;top:50%;left:clamp(.8rem,1.4vw,1.4rem);translate:0 -50%}.side-nav button{width:2.1rem;min-height:2.1rem;color:var(--foreground);border:1px solid #0000;border-radius:999rem;grid-template-columns:auto 0fr;align-items:center;gap:.55rem;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.side-nav button{color:color-mix(in srgb, var(--foreground) 42%, transparent)}}.side-nav button{cursor:pointer;background:0 0;transition:width .3s,color .3s,background-color .3s,border-color .3s}.side-nav button span{place-items:center;width:2rem;height:2rem;font-size:.62rem;display:grid}.side-nav button strong{opacity:0;white-space:nowrap;font-size:.72rem;font-weight:500;transition:opacity .3s}.side-nav button:hover,.side-nav button.is-active{border-color:var(--border);width:7.2rem;color:var(--foreground);background:var(--background);grid-template-columns:auto 1fr}@supports (color:color-mix(in lab, red, red)){.side-nav button:hover,.side-nav button.is-active{background:color-mix(in srgb, var(--background) 58%, transparent)}}.side-nav button:hover,.side-nav button.is-active{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.side-nav button:hover strong,.side-nav button.is-active strong{opacity:1}.menu-overlay{z-index:60;pointer-events:none;opacity:0;visibility:hidden;background:var(--background);place-items:center;display:grid;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.menu-overlay{background:color-mix(in srgb, var(--background) 88%, transparent)}}.menu-overlay{-webkit-backdrop-filter:blur(32px);backdrop-filter:blur(32px);transition:opacity .42s,visibility .42s}.menu-overlay.is-open{pointer-events:auto;opacity:1;visibility:visible}.menu-noise{pointer-events:none;opacity:.4;background:radial-gradient(circle at 28% 26%, var(--accent-pink), transparent 20rem), radial-gradient(circle at 75% 70%, var(--primary), transparent 24rem);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.menu-noise{background:radial-gradient(circle at 28% 26%, color-mix(in srgb, var(--accent-pink) 25%, transparent), transparent 20rem), radial-gradient(circle at 75% 70%, color-mix(in srgb, var(--primary) 20%, transparent), transparent 24rem)}}.menu-inner{text-align:center;justify-items:center;gap:clamp(.75rem,1.3vw,1.3rem);display:grid;position:relative}.menu-inner p{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.18em;margin:0 0 .4rem;font-size:.7rem}.menu-inner button{color:var(--foreground);font-family:var(--font-display);letter-spacing:-.08em;cursor:pointer;background:0 0;border:0;font-size:clamp(3.1rem,8vw,9rem);font-weight:600;line-height:.86;transition:opacity .22s,letter-spacing .32s}.menu-inner button:hover{opacity:.48;letter-spacing:-.11em}.menu-inner a{color:var(--muted-foreground);margin-top:1rem;font-size:.85rem;text-decoration:none}.main-stage{overflow:clip}.hero-section{place-items:center;min-height:118vh;padding:7rem 1rem 4rem;display:grid;position:relative;overflow:hidden}.orbital-grid{opacity:.52;background:radial-gradient(circle at center, var(--foreground) 1px, transparent 1.9px);height:54%;position:absolute;inset:10% -20% auto}@supports (color:color-mix(in lab, red, red)){.orbital-grid{background:radial-gradient(circle at center, color-mix(in srgb, var(--foreground) 16%, transparent) 1px, transparent 1.9px)}}.orbital-grid{-webkit-mask-image:linear-gradient(to bottom, transparent, var(--neutral-100) 24%, transparent 86%);-webkit-mask-image:linear-gradient(to bottom, transparent, var(--neutral-100) 24%, transparent 86%);-webkit-mask-image:linear-gradient(to bottom, transparent, var(--neutral-100) 24%, transparent 86%);mask-image:linear-gradient(to bottom, transparent, var(--neutral-100) 24%, transparent 86%);background-size:2.3rem 2.3rem;transform:perspective(50rem)rotateX(68deg)translateY(6rem)}.hero-media{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.hero-device{border:1px solid var(--foreground);width:clamp(18rem,38vw,46rem);height:clamp(11rem,22vw,26rem);position:absolute;top:18%;right:clamp(1rem,8vw,12rem);transform:rotate(-7deg)skew(-3deg)}@supports (color:color-mix(in lab, red, red)){.hero-device{border:1px solid color-mix(in srgb, var(--foreground) 12%, transparent)}}.hero-device{background:linear-gradient(135deg, var(--foreground), transparent 32%), linear-gradient(145deg, var(--primary), var(--accent-pink)), var(--muted);border-radius:2.4rem}@supports (color:color-mix(in lab, red, red)){.hero-device{background:linear-gradient(135deg, color-mix(in srgb, var(--foreground) 18%, transparent), transparent 32%), linear-gradient(145deg, color-mix(in srgb, var(--primary) 20%, transparent), color-mix(in srgb, var(--accent-pink) 12%, transparent)), var(--muted)}}.hero-device{box-shadow:0 4rem 12rem var(--primary)}@supports (color:color-mix(in lab, red, red)){.hero-device{box-shadow:0 4rem 12rem color-mix(in srgb, var(--primary) 18%, transparent)}}.hero-device{overflow:hidden}.device-glow{background:radial-gradient(circle at 68% 34%, var(--accent-pink), transparent 20%), radial-gradient(circle at 18% 64%, var(--primary), transparent 20%);position:absolute;inset:-50% -20%}@supports (color:color-mix(in lab, red, red)){.device-glow{background:radial-gradient(circle at 68% 34%, color-mix(in srgb, var(--accent-pink) 78%, transparent), transparent 20%), radial-gradient(circle at 18% 64%, color-mix(in srgb, var(--primary) 72%, transparent), transparent 20%)}}.device-glow{filter:blur(22px);animation:9s ease-in-out infinite alternate drift}.device-screen{background:var(--background);border-radius:1.8rem;position:absolute;inset:1.1rem}@supports (color:color-mix(in lab, red, red)){.device-screen{background:color-mix(in srgb, var(--background) 76%, transparent)}}.device-screen{border:1px solid var(--border);overflow:hidden}.screen-line{background:linear-gradient(90deg, transparent, var(--foreground), transparent);height:1px;position:absolute;left:10%;right:10%}@supports (color:color-mix(in lab, red, red)){.screen-line{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--foreground) 42%, transparent), transparent)}}.screen-line-a{top:30%}.screen-line-b{opacity:.6;top:50%}.screen-line-c{opacity:.36;top:70%}.screen-chip{width:4.6rem;height:4.6rem;color:var(--foreground);background:var(--accent-pink);border-radius:50%;place-items:center;display:grid;position:absolute;top:22%;left:16%}@supports (color:color-mix(in lab, red, red)){.screen-chip{background:color-mix(in srgb, var(--accent-pink) 32%, transparent)}}.screen-chip{box-shadow:0 0 4rem var(--accent-pink)}@supports (color:color-mix(in lab, red, red)){.screen-chip{box-shadow:0 0 4rem color-mix(in srgb, var(--accent-pink) 42%, transparent)}}.screen-chip-alt{background:var(--primary);width:5.2rem;height:5.2rem;inset:auto 18% 20% auto}@supports (color:color-mix(in lab, red, red)){.screen-chip-alt{background:color-mix(in srgb, var(--primary) 34%, transparent)}}.screen-chip-alt{box-shadow:0 0 4rem var(--primary)}@supports (color:color-mix(in lab, red, red)){.screen-chip-alt{box-shadow:0 0 4rem color-mix(in srgb, var(--primary) 42%, transparent)}}.visual-chip{border:1px solid var(--border);color:var(--muted-foreground);background:var(--background);border-radius:999rem;padding:.72rem .9rem;position:absolute}@supports (color:color-mix(in lab, red, red)){.visual-chip{background:color-mix(in srgb, var(--background) 68%, transparent)}}.visual-chip{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-soft);font-size:.75rem}.chip-left{bottom:27%;left:clamp(1rem,8vw,8rem)}.chip-right{bottom:18%;right:clamp(1rem,9vw,10rem)}.hero-content{z-index:2;text-align:center;place-items:center;width:min(100%,88rem);display:grid;position:relative}.hero-kicker{color:var(--muted-foreground);letter-spacing:.22em;text-transform:uppercase;margin:0 0 clamp(1.4rem,2vw,2rem);font-size:clamp(.72rem,1vw,.9rem)}.hero-letters{font-family:var(--font-display);letter-spacing:.34em;color:var(--foreground);justify-content:center;align-items:center;gap:clamp(.45rem,2.8vw,3.3rem);margin:0;font-size:clamp(4.8rem,18vw,23rem);font-weight:500;line-height:.72;display:flex;transform:translate(.17em)}@supports (color:color-mix(in lab, red, red)){.hero-letters{color:color-mix(in srgb, var(--foreground) 78%, transparent)}}.hero-letters{perspective:60rem}.hero-letter-wrap{padding-bottom:.12em;display:block;overflow:hidden}.hero-letter{transform-origin:bottom;display:block}.hero-copy{width:min(100%,47rem);color:var(--foreground);margin:clamp(2rem,3vw,3rem) auto 0}@supports (color:color-mix(in lab, red, red)){.hero-copy{color:color-mix(in srgb, var(--foreground) 72%, transparent)}}.hero-copy{letter-spacing:-.035em;font-size:clamp(1.04rem,2vw,1.52rem);line-height:1.45}.hero-cta{flex-wrap:wrap;justify-content:center;gap:.9rem;margin-top:2rem;display:flex}.magnetic-btn,.scroll-cue{--mx:0px;--my:0px;border:1px solid var(--border);min-height:3rem;color:var(--foreground);background:var(--foreground);border-radius:999rem;justify-content:center;align-items:center;gap:.6rem;padding:0 1.1rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.magnetic-btn,.scroll-cue{background:color-mix(in srgb, var(--foreground) 10%, transparent)}}.magnetic-btn,.scroll-cue{cursor:pointer;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:translate3d(var(--mx), var(--my), 0);text-decoration:none;transition:transform .24s,border-color .24s,background-color .24s}.magnetic-btn:hover,.scroll-cue:hover{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.magnetic-btn:hover,.scroll-cue:hover{border-color:color-mix(in srgb, var(--foreground) 36%, transparent)}}.magnetic-btn:hover,.scroll-cue:hover{background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.magnetic-btn:hover,.scroll-cue:hover{background:color-mix(in srgb, var(--foreground) 15%, transparent)}}.scroll-cue{color:var(--muted-foreground);background:0 0}.section-eyebrow{color:var(--muted-foreground);letter-spacing:.24em;text-transform:uppercase;margin:0 0 1rem;font-size:.74rem}.intro-section,.showcase-section,.impact-section,.timeline-section,.contact-section{padding:clamp(6rem,11vw,12rem) clamp(1rem,4vw,5rem);position:relative}.intro-section{background:var(--background);gap:clamp(4rem,7vw,8rem);display:grid}.intro-copy{width:min(100%,74rem);margin:0 auto}.fluid-heading,.showcase-intro h2,.impact-copy h2,.timeline-heading h2,.contact-left h2{font-family:var(--font-display);letter-spacing:-.095em;margin:0;font-size:clamp(3rem,8vw,10rem);font-weight:600;line-height:.92}.split-title{overflow:hidden}.split-title span{display:inline-block}.intro-copy>p:last-child,.showcase-intro p:last-child,.impact-copy p,.work-title-card p,.timeline-heading p:last-child,.contact-left p{width:min(100%,44rem);color:var(--muted-foreground);margin-top:2rem;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.75}.service-grid{border:1px solid var(--border);background:var(--border);border-radius:2.2rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;width:min(100%,82rem);margin:0 auto;display:grid;overflow:hidden}.service-card{background:radial-gradient(circle at 50% 0%, var(--foreground), transparent 16rem), var(--background);min-height:28rem;padding:clamp(1.6rem,3vw,2.8rem)}@supports (color:color-mix(in lab, red, red)){.service-card{background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--foreground) 8%, transparent), transparent 16rem), var(--background)}}.service-card span{color:var(--muted-foreground);font-size:.74rem}.service-card h3{white-space:pre-line;font-family:var(--font-display);letter-spacing:-.075em;margin:5.4rem 0 1.3rem;font-size:clamp(2rem,3.7vw,4.2rem);font-weight:600;line-height:.94}.service-card p{color:var(--muted-foreground);margin:0;line-height:1.7}.showcase-section{background:var(--background)}.showcase-intro{width:min(100%,72rem);margin:0 auto 5rem}.case-stack{gap:1px;width:min(100%,98rem);margin:0 auto;display:grid}.case-panel{background:var(--background);border-top:1px solid var(--border);grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);align-items:center;gap:clamp(2rem,5vw,7rem);min-height:85vh;padding:clamp(1.2rem,4vw,5rem);display:grid;overflow:hidden}.case-panel:nth-child(2n){grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr)}.case-panel:nth-child(2n) .case-copy{order:2}.case-copy span{color:var(--muted-foreground);letter-spacing:.2em;text-transform:uppercase;font-size:.74rem}.case-copy h3{font-family:var(--font-display);letter-spacing:-.1em;margin:1rem 0;font-size:clamp(3.4rem,7vw,9rem);font-weight:600;line-height:.86}.case-copy p{max-width:33rem;color:var(--muted-foreground);margin:0;font-size:1.02rem;line-height:1.75}.case-copy div{flex-wrap:wrap;gap:.45rem;margin-top:1.4rem;display:flex}.case-copy small{border:1px solid var(--border);color:var(--foreground);border-radius:999rem;padding:.45rem .62rem}@supports (color:color-mix(in lab, red, red)){.case-copy small{color:color-mix(in srgb, var(--foreground) 76%, transparent)}}.case-copy small{background:var(--glass)}.case-media{border:1px solid var(--border);background:radial-gradient(circle at 72% 34%, var(--case-accent), transparent 16rem), radial-gradient(circle at 32% 74%, var(--case-accent-two), transparent 14rem), var(--foreground);border-radius:clamp(1.4rem,2vw,2.4rem);min-height:clamp(24rem,42vw,46rem);position:relative}@supports (color:color-mix(in lab, red, red)){.case-media{background:radial-gradient(circle at 72% 34%, var(--case-accent), transparent 16rem), radial-gradient(circle at 32% 74%, var(--case-accent-two), transparent 14rem), color-mix(in srgb, var(--foreground) 7%, transparent)}}.case-media{box-shadow:var(--shadow-soft);overflow:hidden}.case-media:before{content:"";background-image:linear-gradient(var(--foreground) 1px, transparent 1px), linear-gradient(90deg, var(--foreground) 1px, transparent 1px);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.case-media:before{background-image:linear-gradient(color-mix(in srgb, var(--foreground) 11%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--foreground) 11%, transparent) 1px, transparent 1px)}}.case-media:before{opacity:.32;-webkit-mask-image:radial-gradient(circle at 50% 50%, var(--neutral-100), transparent 70%);-webkit-mask-image:radial-gradient(circle at 50% 50%, var(--neutral-100), transparent 70%);-webkit-mask-image:radial-gradient(circle at 50% 50%, var(--neutral-100), transparent 70%);mask-image:radial-gradient(circle at 50% 50%, var(--neutral-100), transparent 70%);background-size:3.4rem 3.4rem}.case-media strong{background:var(--background);border-radius:1rem;padding:.8rem .95rem;position:absolute;bottom:1rem;right:1rem}@supports (color:color-mix(in lab, red, red)){.case-media strong{background:color-mix(in srgb, var(--background) 62%, transparent)}}.case-media strong{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);font-size:.85rem;font-weight:500}.case-object{border:1px solid var(--border);background:var(--foreground);position:absolute}@supports (color:color-mix(in lab, red, red)){.case-object{background:color-mix(in srgb, var(--foreground) 12%, transparent)}}.case-object{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 2rem 6rem var(--background)}@supports (color:color-mix(in lab, red, red)){.case-object{box-shadow:0 2rem 6rem color-mix(in srgb, var(--background) 54%, transparent)}}.object-one{border-radius:1.5rem;width:48%;height:34%;top:20%;left:18%;transform:rotate(-8deg)}.object-two{border-radius:2rem;width:36%;height:50%;top:28%;right:14%;transform:rotate(7deg)}.object-three{aspect-ratio:1;border-radius:50%;width:22%;bottom:14%;left:50%}.case-pink,.project-pink{--case-accent:var(--accent-pink)}@supports (color:color-mix(in lab, red, red)){.case-pink,.project-pink{--case-accent:color-mix(in srgb, var(--accent-pink) 54%, transparent)}}.case-pink,.project-pink{--case-accent-two:var(--primary)}@supports (color:color-mix(in lab, red, red)){.case-pink,.project-pink{--case-accent-two:color-mix(in srgb, var(--primary) 42%, transparent)}}.case-green,.project-green{--case-accent:var(--success)}@supports (color:color-mix(in lab, red, red)){.case-green,.project-green{--case-accent:color-mix(in srgb, var(--success) 52%, transparent)}}.case-green,.project-green{--case-accent-two:var(--accent-teal)}@supports (color:color-mix(in lab, red, red)){.case-green,.project-green{--case-accent-two:color-mix(in srgb, var(--accent-teal) 40%, transparent)}}.case-blue,.project-blue{--case-accent:var(--primary)}@supports (color:color-mix(in lab, red, red)){.case-blue,.project-blue{--case-accent:color-mix(in srgb, var(--primary) 54%, transparent)}}.case-blue,.project-blue{--case-accent-two:var(--accent-indigo)}@supports (color:color-mix(in lab, red, red)){.case-blue,.project-blue{--case-accent-two:color-mix(in srgb, var(--accent-indigo) 40%, transparent)}}.project-silver{--case-accent:var(--neutral-50)}@supports (color:color-mix(in lab, red, red)){.project-silver{--case-accent:color-mix(in srgb, var(--neutral-50) 54%, transparent)}}.project-silver{--case-accent-two:var(--primary)}@supports (color:color-mix(in lab, red, red)){.project-silver{--case-accent-two:color-mix(in srgb, var(--primary) 26%, transparent)}}.project-violet{--case-accent:var(--accent-purple)}@supports (color:color-mix(in lab, red, red)){.project-violet{--case-accent:color-mix(in srgb, var(--accent-purple) 54%, transparent)}}.project-violet{--case-accent-two:var(--primary)}@supports (color:color-mix(in lab, red, red)){.project-violet{--case-accent-two:color-mix(in srgb, var(--primary) 35%, transparent)}}.project-amber{--case-accent:var(--accent-amber)}@supports (color:color-mix(in lab, red, red)){.project-amber{--case-accent:color-mix(in srgb, var(--accent-amber) 54%, transparent)}}.project-amber{--case-accent-two:var(--warning)}@supports (color:color-mix(in lab, red, red)){.project-amber{--case-accent-two:color-mix(in srgb, var(--warning) 35%, transparent)}}.work-pin{background:var(--background);height:100vh;position:relative;overflow:hidden}.work-track{align-items:stretch;width:max-content;min-height:100vh;display:flex}.work-title-card,.project-card{border-right:1px solid var(--border);flex-direction:column;justify-content:flex-end;width:min(94vw,42rem);min-height:100vh;padding:clamp(1.2rem,3.5vw,4rem);display:flex}.work-title-card h2{font-family:var(--font-display);letter-spacing:-.11em;margin:0;font-size:clamp(4rem,9vw,11rem);line-height:.82}.project-card{background:var(--foreground);justify-content:space-between;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.project-card{background:color-mix(in srgb, var(--foreground) 4%, transparent)}}.project-card:before{content:"";background:radial-gradient(circle at 50% 25%, var(--case-accent), transparent 18rem), radial-gradient(circle at 70% 60%, var(--case-accent-two), transparent 14rem);opacity:.78;position:absolute;inset:0}.project-visual{height:56%;margin-top:5rem;position:relative}.project-orbit{border:1px solid var(--foreground);border-radius:50%;height:68%;position:absolute;inset:8% 0 auto}@supports (color:color-mix(in lab, red, red)){.project-orbit{border:1px solid color-mix(in srgb, var(--foreground) 20%, transparent)}}.project-orbit{transform:rotate(-8deg)}.project-window{aspect-ratio:1.45;border:1px solid var(--border);background:var(--background);border-radius:1.6rem;width:min(70%,24rem);position:absolute;top:18%;left:50%}@supports (color:color-mix(in lab, red, red)){.project-window{background:color-mix(in srgb, var(--background) 48%, transparent)}}.project-window{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:var(--shadow-soft);overflow:hidden;transform:translate(-50%)rotate(-5deg)}.project-window span{background:var(--foreground);border-radius:1rem;position:absolute}@supports (color:color-mix(in lab, red, red)){.project-window span{background:color-mix(in srgb, var(--foreground) 16%, transparent)}}.project-window span:first-child{width:42%;height:16%;top:16%;left:10%}.project-window span:nth-child(2){width:78%;height:10%;top:42%;left:10%}.project-window span:nth-child(3){width:58%;height:10%;top:62%;left:10%}.project-card-copy{position:relative}.project-card-copy p,.project-card-copy span{color:var(--muted-foreground);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.76rem}.project-card-copy h3{font-family:var(--font-display);letter-spacing:-.105em;margin:.9rem 0 1.4rem;font-size:clamp(3.1rem,6.3vw,7rem);font-weight:600;line-height:.84}.impact-section{background:var(--success);grid-template-columns:minmax(0,1fr) minmax(18rem,.72fr);align-items:end;gap:clamp(2rem,6vw,8rem);min-height:110vh;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.impact-section{background:color-mix(in srgb, var(--success) 18%, var(--background))}}.impact-bg{opacity:.54;background:radial-gradient(circle at 22% 38%, var(--success), transparent 20rem), radial-gradient(circle at 78% 70%, var(--accent-teal), transparent 22rem), linear-gradient(135deg, transparent, var(--background));position:absolute;inset:-20%}@supports (color:color-mix(in lab, red, red)){.impact-bg{background:radial-gradient(circle at 22% 38%, color-mix(in srgb, var(--success) 44%, transparent), transparent 20rem), radial-gradient(circle at 78% 70%, color-mix(in srgb, var(--accent-teal) 38%, transparent), transparent 22rem), linear-gradient(135deg, transparent, color-mix(in srgb, var(--background) 52%, transparent))}}.impact-copy,.impact-grid{z-index:1;position:relative}.impact-copy h2{max-width:74rem}.impact-grid{border:1px solid var(--border);background:var(--border);border-radius:1.7rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.mini-card,.impact-card{background:var(--background)}@supports (color:color-mix(in lab, red, red)){.mini-card,.impact-card{background:color-mix(in srgb, var(--background) 68%, transparent)}}.mini-card,.impact-card{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.impact-card{flex-direction:column;justify-content:space-between;min-height:14rem;padding:1.5rem;display:flex}.impact-card strong{font-family:var(--font-display);letter-spacing:-.08em;font-size:clamp(3rem,5vw,5rem);line-height:.9}.impact-card span{color:var(--muted-foreground);line-height:1.5}.timeline-section{background:var(--background)}.timeline-heading{width:min(100%,78rem);margin:0 auto 4rem}.timeline-list{border-top:1px solid var(--border);width:min(100%,88rem);margin:0 auto}.timeline-item{border-bottom:1px solid var(--border);grid-template-columns:.42fr .76fr 1fr;gap:2rem;padding:2rem 0;display:grid}.timeline-item>span,.timeline-item p{color:var(--muted-foreground);margin:0;line-height:1.7}.timeline-item h3{letter-spacing:-.055em;margin:0 0 .25rem;font-size:clamp(1.25rem,2.2vw,2.4rem);line-height:1}.timeline-item div p{font-size:.92rem}.skills-section{background:var(--background);padding:2rem 0 8rem;overflow:hidden}.marquee-track{gap:.7rem;width:max-content;animation:28s linear infinite marquee;display:flex}.marquee-track span{border:1px solid var(--border);min-height:3rem;color:var(--foreground);background:var(--glass);white-space:nowrap;border-radius:999rem;align-items:center;padding:0 1.2rem;display:inline-flex}.contact-section{background:radial-gradient(circle at 16% 82%, var(--accent-pink), transparent 24rem), var(--background);grid-template-columns:minmax(0,1fr) minmax(18rem,34rem);align-items:end;gap:clamp(2rem,6vw,7rem);min-height:100vh;display:grid}@supports (color:color-mix(in lab, red, red)){.contact-section{background:radial-gradient(circle at 16% 82%, color-mix(in srgb, var(--accent-pink) 22%, transparent), transparent 24rem), var(--background)}}.email-link{color:var(--foreground);align-items:center;gap:.8rem;margin-top:2rem;text-decoration:none;display:inline-flex}.contact-form{border:1px solid var(--border);background:var(--foreground);border-radius:2rem;gap:1.1rem;padding:clamp(1.3rem,3vw,2rem);display:grid}@supports (color:color-mix(in lab, red, red)){.contact-form{background:color-mix(in srgb, var(--foreground) 7%, transparent)}}.contact-form{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.contact-form label{color:var(--muted-foreground);gap:.55rem;font-size:.78rem;display:grid}.contact-form input,.contact-form textarea{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--foreground);resize:vertical;background:0 0;border-radius:0;outline:0;padding:.7rem 0}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--primary)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.contact-form input::placeholder,.contact-form textarea::placeholder{color:color-mix(in srgb, var(--muted-foreground) 72%, transparent)}}.contact-form button{border:1px solid var(--border);min-height:3rem;color:var(--primary-foreground);background:var(--primary);cursor:pointer;border-radius:999rem;justify-content:center;align-items:center;gap:.55rem;margin-top:.6rem;transition:background-color .22s,transform .22s;display:inline-flex}.contact-form button:hover{background:var(--primary-70);transform:translateY(-2px)}@keyframes drift{0%{transform:translate(-4%,-2%)rotate(0)}to{transform:translate(4%,2%)rotate(12deg)}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (max-width:959px){.cursor-core,.cursor-aura,.side-nav{display:none}.hero-section{min-height:100svh}.hero-device{opacity:.66;top:20%;right:-9rem}.hero-letters{letter-spacing:.2em;font-size:clamp(4.2rem,22vw,9rem);transform:translate(.1em)}.service-grid,.case-panel,.impact-section,.timeline-item,.contact-section{grid-template-columns:1fr}.service-card{min-height:19rem}.case-panel,.case-panel:nth-child(2n){grid-template-columns:1fr;min-height:auto}.case-panel:nth-child(2n) .case-copy{order:0}.work-pin{height:auto;overflow:visible}.work-track{flex-direction:column;width:100%;min-height:auto}.work-title-card,.project-card{width:100%;min-height:38rem}.impact-grid{grid-template-columns:1fr}.timeline-item{gap:1rem}.contact-section{align-items:start}}@media (max-width:640px){.site-header{padding:.85rem}.menu-trigger span,.brand-mark span:last-child{display:none}.menu-inner button{font-size:clamp(3.5rem,18vw,5.8rem)}.intro-section,.showcase-section,.impact-section,.timeline-section,.contact-section{padding-left:1rem;padding-right:1rem}}.portfolio-shell{background:var(--background)}.header-actions,.detail-actions{pointer-events:auto;align-items:center;gap:.55rem;display:flex}.theme-toggle,.resume-pill,.detail-back,.resume-ghost{pointer-events:auto;border:1px solid var(--border);min-height:2.45rem;color:var(--foreground);background:var(--background);border-radius:999rem;justify-content:center;align-items:center;gap:.55rem;padding:.48rem .76rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.theme-toggle,.resume-pill,.detail-back,.resume-ghost{background:color-mix(in srgb, var(--background) 72%, transparent)}}.theme-toggle,.resume-pill,.detail-back,.resume-ghost{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow-soft);font-size:.72rem;font-weight:600;transition:border-color .25s,background-color .25s,transform .25s}.theme-toggle:hover,.resume-pill:hover,.detail-back:hover,.resume-ghost:hover{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.theme-toggle:hover,.resume-pill:hover,.detail-back:hover,.resume-ghost:hover{border-color:color-mix(in srgb, var(--foreground) 42%, transparent)}}.theme-toggle:hover,.resume-pill:hover,.detail-back:hover,.resume-ghost:hover{background:var(--background)}@supports (color:color-mix(in lab, red, red)){.theme-toggle:hover,.resume-pill:hover,.detail-back:hover,.resume-ghost:hover{background:color-mix(in srgb, var(--background) 88%, transparent)}}.theme-toggle:hover,.resume-pill:hover,.detail-back:hover,.resume-ghost:hover{transform:translateY(-.05rem)}.brand-mark{min-width:9rem;overflow:hidden}.brand-text{width:7.2rem;height:1rem;display:grid;position:relative;overflow:hidden}.brand-text span{grid-area:1/1;animation:5.8s ease-in-out infinite brandSwap}.brand-text span:nth-child(2){animation-delay:-2.9s}.menu-trigger{min-width:6.2rem;min-height:2.8rem;padding:.5rem .72rem}.menu-trigger strong{font-weight:600}.hamburger{gap:.25rem;width:1.75rem;display:grid;position:relative}.hamburger i{background:var(--foreground);transform-origin:50%;border-radius:999rem;height:.12rem;transition:transform .26s,opacity .22s;display:block}.menu-trigger.is-open .hamburger i:first-child{transform:translateY(.37rem)rotate(45deg)}.menu-trigger.is-open .hamburger i:nth-child(2){opacity:0}.menu-trigger.is-open .hamburger i:nth-child(3){transform:translateY(-.37rem)rotate(-45deg)}.side-nav{opacity:.14;filter:blur(.08rem);transition:opacity .42s,filter .42s}.side-nav.is-visible,.side-nav:hover{opacity:1;filter:blur()}.floating-name{z-index:68;color:var(--foreground);opacity:0;pointer-events:none;gap:.2rem;transition:opacity .42s,transform .42s;display:grid;position:fixed;bottom:clamp(1.2rem,2vw,2rem);left:clamp(.9rem,1.7vw,1.8rem);transform:translateY(.6rem)}.floating-name.is-visible{opacity:.68;transform:translateY(0)}.floating-name strong{letter-spacing:.28em;font-size:.72rem;font-weight:500}.floating-name span{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.16em;font-size:.66rem}.menu-links{color:var(--muted-foreground);flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:1rem;font-size:.85rem;display:flex}.menu-links a:hover{color:var(--foreground)}.service-icon{color:var(--primary);position:absolute;top:1.25rem;right:1.25rem}.case-link{width:fit-content;color:var(--foreground);align-items:center;gap:.45rem;font-size:.85rem;font-weight:600;display:inline-flex}.resume-ghost{min-height:3rem;padding-inline:1rem}.visual-chip{align-items:center;gap:.42rem;display:inline-flex}.device-screen:before{content:"";background:linear-gradient(90deg, var(--foreground) 1px, transparent 1px), linear-gradient(var(--foreground) 1px, transparent 1px);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.device-screen:before{background:linear-gradient(90deg, color-mix(in srgb, var(--foreground) 6%, transparent) 1px, transparent 1px), linear-gradient(color-mix(in srgb, var(--foreground) 6%, transparent) 1px, transparent 1px)}}.device-screen:before{opacity:.5;background-size:3rem 3rem}.device-topline{gap:.4rem;display:flex;position:absolute;top:1rem;left:1rem;right:1rem}.device-topline span{background:var(--foreground);border-radius:999rem;width:.42rem;height:.42rem}@supports (color:color-mix(in lab, red, red)){.device-topline span{background:color-mix(in srgb, var(--foreground) 30%, transparent)}}.device-panel{z-index:2;border:1px solid var(--border);background:var(--background);border-radius:1.1rem;position:absolute}@supports (color:color-mix(in lab, red, red)){.device-panel{background:color-mix(in srgb, var(--background) 76%, transparent)}}.device-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-soft)}.device-panel-main{width:42%;padding:1rem;top:22%;left:7%}.device-panel-main small,.device-panel-side span,.device-panel-code span{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.14em;font-size:.58rem}.device-panel-main strong{letter-spacing:-.07em;margin-top:.45rem;font-size:clamp(1.1rem,2vw,2rem);line-height:.95;display:block}.device-bars{gap:.4rem;margin-top:1rem;display:grid}.device-bar{background:linear-gradient(90deg, var(--primary), var(--accent-pink));border-radius:999rem;height:.42rem;display:block}@supports (color:color-mix(in lab, red, red)){.device-bar{background:linear-gradient(90deg, var(--primary), color-mix(in srgb, var(--accent-pink) 65%, transparent))}}.device-bar:nth-child(2){opacity:.72;width:74%}.device-bar:nth-child(3){opacity:.42;width:48%}.device-panel-side{gap:.4rem;width:22%;padding:.9rem;display:grid;top:24%;right:8%}.device-panel-side svg{color:var(--primary)}.device-panel-side strong{letter-spacing:-.08em;font-size:clamp(1.3rem,3vw,2.8rem)}.device-panel-code{align-items:center;gap:.5rem;padding:.7rem .8rem;display:flex;bottom:12%;right:8%}.device-panel-code svg{color:var(--accent-teal)}.device-node{z-index:3;width:clamp(3rem,7vw,5.4rem);height:clamp(3rem,7vw,5.4rem);color:var(--foreground);border:1px solid var(--foreground);border-radius:999rem;place-items:center;display:grid;position:absolute}@supports (color:color-mix(in lab, red, red)){.device-node{border:1px solid color-mix(in srgb, var(--foreground) 16%, transparent)}}.device-node{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 0 4rem var(--primary);font-size:.78rem;font-weight:600}@supports (color:color-mix(in lab, red, red)){.device-node{box-shadow:0 0 4rem color-mix(in srgb, var(--primary) 28%, transparent)}}.node-ai{background:var(--accent-pink);top:18%;left:20%}@supports (color:color-mix(in lab, red, red)){.node-ai{background:color-mix(in srgb, var(--accent-pink) 34%, transparent)}}.node-ux{background:var(--primary);top:42%;right:17%}@supports (color:color-mix(in lab, red, red)){.node-ux{background:color-mix(in srgb, var(--primary) 32%, transparent)}}.node-api{background:var(--accent-teal);bottom:11%;left:45%}@supports (color:color-mix(in lab, red, red)){.node-api{background:color-mix(in srgb, var(--accent-teal) 30%, transparent)}}.case-pink,.project-pink,.detail-pink,.carousel-pink{--tone:var(--accent-pink)}.case-green,.project-green,.detail-green,.carousel-green{--tone:var(--success)}.case-blue,.project-blue,.detail-blue,.carousel-blue{--tone:var(--primary)}.case-silver,.project-silver,.detail-silver,.carousel-silver{--tone:var(--neutral-50)}.case-violet,.project-violet,.detail-violet,.carousel-violet{--tone:var(--accent-purple)}.case-amber,.project-amber,.detail-amber,.carousel-amber{--tone:var(--accent-amber)}.case-teal,.project-teal,.detail-teal,.carousel-teal{--tone:var(--accent-teal)}.project-card,.case-panel{--tone:var(--primary)}.project-card{text-decoration:none}.project-carousel{--tone:var(--primary);border:1px solid var(--border);background:radial-gradient(circle at 70% 16%, var(--tone), transparent 22rem), var(--card);border-radius:clamp(1.5rem,3vw,3rem);width:100%;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.project-carousel{background:radial-gradient(circle at 70% 16%, color-mix(in srgb, var(--tone) 26%, transparent), transparent 22rem), color-mix(in srgb, var(--card) 82%, transparent)}}.project-carousel{box-shadow:var(--shadow-strong);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.carousel-stage{min-height:clamp(32rem,70vh,48rem);position:relative}.carousel-slide{opacity:0;pointer-events:none;grid-template-columns:1.15fr .85fr;align-items:end;gap:clamp(1rem,4vw,4rem);padding:clamp(1rem,3vw,3rem);transition:opacity .72s,transform .9s;display:grid;position:absolute;inset:0;transform:translate(4%)scale(.98)}.carousel-slide.is-active{opacity:1;pointer-events:auto;transform:translate(0)scale(1)}.mock-image-frame{border:1px solid var(--border);background:radial-gradient(circle at 72% 22%, var(--tone), transparent 22rem), var(--background);border-radius:clamp(1.2rem,2vw,2.2rem);min-height:clamp(22rem,52vh,36rem);position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.mock-image-frame{background:radial-gradient(circle at 72% 22%, color-mix(in srgb, var(--tone) 34%, transparent), transparent 22rem), color-mix(in srgb, var(--background) 62%, transparent)}}.mock-grid{background:linear-gradient(90deg, var(--foreground) 1px, transparent 1px), linear-gradient(var(--foreground) 1px, transparent 1px);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.mock-grid{background:linear-gradient(90deg, color-mix(in srgb, var(--foreground) 7%, transparent) 1px, transparent 1px), linear-gradient(color-mix(in srgb, var(--foreground) 7%, transparent) 1px, transparent 1px)}}.mock-grid{-webkit-mask-image:radial-gradient(circle at center, var(--foreground), transparent 75%);-webkit-mask-image:radial-gradient(circle at center, var(--foreground), transparent 75%);-webkit-mask-image:radial-gradient(circle at center, var(--foreground), transparent 75%);mask-image:radial-gradient(circle at center, var(--foreground), transparent 75%);background-size:2.6rem 2.6rem}.mock-orb{background:var(--tone);border-radius:999rem;position:absolute}@supports (color:color-mix(in lab, red, red)){.mock-orb{background:color-mix(in srgb, var(--tone) 30%, transparent)}}.mock-orb{box-shadow:0 0 5rem var(--tone)}@supports (color:color-mix(in lab, red, red)){.mock-orb{box-shadow:0 0 5rem color-mix(in srgb, var(--tone) 35%, transparent)}}.mock-orb-a{width:10rem;height:10rem;top:12%;left:10%}.mock-orb-b{width:7rem;height:7rem;bottom:16%;right:14%}.mock-window{border:1px solid var(--border);background:var(--background);border-radius:1.3rem;position:absolute}@supports (color:color-mix(in lab, red, red)){.mock-window{background:color-mix(in srgb, var(--background) 74%, transparent)}}.mock-window{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-soft)}.mock-window span,.mock-window div,.mock-phone span{background:var(--foreground);border-radius:999rem;display:block}@supports (color:color-mix(in lab, red, red)){.mock-window span,.mock-window div,.mock-phone span{background:color-mix(in srgb, var(--foreground) 17%, transparent)}}.mock-window-main{gap:.55rem;width:56%;padding:1rem;display:grid;bottom:12%;left:12%}.mock-window-main span{height:.6rem}.mock-window-main span:nth-child(2){width:70%}.mock-window-main span:nth-child(3){width:48%}.mock-window-main div{background:linear-gradient(90deg, var(--tone), var(--primary));border-radius:1rem;height:5rem}@supports (color:color-mix(in lab, red, red)){.mock-window-main div{background:linear-gradient(90deg, var(--tone), color-mix(in srgb, var(--primary) 44%, transparent))}}.mock-window-main div{opacity:.72}.mock-window-side{gap:.5rem;width:28%;padding:.9rem;display:grid;top:16%;right:9%}.mock-window-side span{height:.5rem}.mock-window-side span:first-child{width:44%}.mock-window-side span:nth-child(2){background:var(--tone);border-radius:1rem;height:4.2rem}@supports (color:color-mix(in lab, red, red)){.mock-window-side span:nth-child(2){background:color-mix(in srgb, var(--tone) 28%, transparent)}}.mock-phone{border:1px solid var(--border);background:var(--background);border-radius:1.4rem;align-content:start;gap:.45rem;width:6.2rem;height:11rem;padding:1rem .7rem;display:grid;position:absolute;bottom:12%;right:18%}@supports (color:color-mix(in lab, red, red)){.mock-phone{background:color-mix(in srgb, var(--background) 72%, transparent)}}.mock-phone{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transform:rotate(6deg)}.mock-phone span{height:.45rem}.mock-phone span:nth-child(2){background:var(--tone);border-radius:.8rem;height:3.4rem}@supports (color:color-mix(in lab, red, red)){.mock-phone span:nth-child(2){background:color-mix(in srgb, var(--tone) 28%, transparent)}}.mock-rings{border:1px solid var(--tone);position:absolute;inset:18%}@supports (color:color-mix(in lab, red, red)){.mock-rings{border:1px solid color-mix(in srgb, var(--tone) 40%, transparent)}}.mock-rings{border-radius:50%;animation:18s linear infinite spin}.carousel-caption{align-self:center;gap:.9rem;display:grid}.carousel-caption span{color:var(--primary);text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:600}.carousel-caption h3{letter-spacing:-.09em;margin:0;font-size:clamp(2.8rem,5.2vw,6.5rem);line-height:.88}.carousel-caption p{color:var(--muted-foreground);margin:0;font-size:clamp(.95rem,1.3vw,1.2rem);line-height:1.8}.carousel-controls{z-index:4;align-items:center;gap:.55rem;display:flex;position:absolute;bottom:clamp(1rem,3vw,2.2rem);left:clamp(1rem,3vw,3rem);right:clamp(1rem,3vw,3rem)}.carousel-controls button{border:1px solid var(--border);width:2.35rem;height:2.35rem;color:var(--foreground);background:var(--background);border-radius:999rem;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.carousel-controls button{background:color-mix(in srgb, var(--background) 62%, transparent)}}.carousel-controls button{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.carousel-dots{gap:.35rem;margin-inline:auto;display:flex}.carousel-dots button{background:var(--foreground);border-radius:999rem;width:.55rem;height:.55rem;padding:0}@supports (color:color-mix(in lab, red, red)){.carousel-dots button{background:color-mix(in srgb, var(--foreground) 24%, transparent)}}.carousel-dots button{transition:width .26s,background-color .26s}.carousel-dots button.is-active{background:var(--foreground);width:2rem}.detail-shell,.policy-shell,.listing-shell{isolation:isolate;background:radial-gradient(circle at 50% -12%, var(--primary), transparent 30rem), radial-gradient(circle at 92% 22%, var(--accent-pink), transparent 28rem), var(--background);min-height:100vh;padding:0 clamp(1rem,4vw,4rem) 4rem;position:relative;overflow-x:clip}@supports (color:color-mix(in lab, red, red)){.detail-shell,.policy-shell,.listing-shell{background:radial-gradient(circle at 50% -12%, color-mix(in srgb, var(--primary) 22%, transparent), transparent 30rem), radial-gradient(circle at 92% 22%, color-mix(in srgb, var(--accent-pink) 14%, transparent), transparent 28rem), var(--background)}}.detail-shell:before,.policy-shell:before,.listing-shell:before{content:"";z-index:-2;pointer-events:none;opacity:.4;background:linear-gradient(var(--foreground) 1px, transparent 1px), linear-gradient(90deg, var(--foreground) 1px, transparent 1px);position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.detail-shell:before,.policy-shell:before,.listing-shell:before{background:linear-gradient(color-mix(in srgb, var(--foreground) 5%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--foreground) 5%, transparent) 1px, transparent 1px)}}.detail-shell:before,.policy-shell:before,.listing-shell:before{-webkit-mask-image:radial-gradient(circle at center, var(--foreground), transparent 72%);-webkit-mask-image:radial-gradient(circle at center, var(--foreground), transparent 72%);-webkit-mask-image:radial-gradient(circle at center, var(--foreground), transparent 72%);mask-image:radial-gradient(circle at center, var(--foreground), transparent 72%);background-size:5rem 5rem}.detail-header{z-index:80;pointer-events:none;justify-content:space-between;align-items:center;gap:1rem;padding:clamp(1rem,2vw,1.65rem) 0;display:flex;position:sticky;top:0;left:0;right:0}.detail-orb{aspect-ratio:1;background:radial-gradient(circle, var(--tone,var(--primary)), transparent 70%);border-radius:44% 56% 55% 45%/42% 41% 59% 58%;width:clamp(18rem,38vw,42rem);position:fixed;top:12vh;right:-8vw}@supports (color:color-mix(in lab, red, red)){.detail-orb{background:radial-gradient(circle, color-mix(in srgb, var(--tone,var(--primary)) 24%, transparent), transparent 70%)}}.detail-orb{pointer-events:none;z-index:-1}.detail-hero,.listing-hero{align-content:end;gap:1.1rem;max-width:86rem;min-height:74vh;padding:8rem 0 4rem;display:grid}.detail-hero h1,.listing-hero h1,.policy-card h1{letter-spacing:-.09em;margin:0;font-size:clamp(4rem,12vw,13rem);font-weight:600;line-height:.84}.detail-hero>p,.listing-card p,.policy-card>p{max-width:48rem;color:var(--muted-foreground);letter-spacing:-.035em;margin:0;font-size:clamp(1rem,1.4vw,1.28rem);line-height:1.8}.detail-tags{flex-wrap:wrap;gap:.45rem;margin-top:.5rem;display:flex}.detail-tags span{border:1px solid var(--border);color:var(--muted-foreground);background:var(--background);border-radius:999rem;padding:.42rem .62rem}@supports (color:color-mix(in lab, red, red)){.detail-tags span{background:color-mix(in srgb, var(--background) 40%, transparent)}}.detail-tags span{font-size:.72rem}.detail-media{margin-bottom:clamp(2rem,5vw,5rem)}.detail-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-bottom:clamp(2rem,5vw,5rem);display:grid}.detail-metrics article,.detail-story article,.detail-contact,.policy-card,.listing-card{border:1px solid var(--border);background:var(--card)}@supports (color:color-mix(in lab, red, red)){.detail-metrics article,.detail-story article,.detail-contact,.policy-card,.listing-card{background:color-mix(in srgb, var(--card) 74%, transparent)}}.detail-metrics article,.detail-story article,.detail-contact,.policy-card,.listing-card{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:var(--shadow-soft)}.detail-metrics article{border-radius:1.6rem;align-content:space-between;min-height:13rem;padding:1.2rem;display:grid}.detail-metrics strong{letter-spacing:-.09em;font-size:clamp(2.6rem,6vw,6rem)}.detail-metrics span{color:var(--muted-foreground)}.detail-story{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.detail-story article{border-radius:1.8rem;align-content:space-between;min-height:22rem;padding:clamp(1.2rem,2vw,2rem);display:grid}.detail-story article span,.policy-grid article span{color:var(--primary);font-weight:600}.detail-story h2,.policy-grid h2,.listing-card h2{letter-spacing:-.08em;margin:0;font-size:clamp(2rem,4vw,4rem);line-height:.92}.detail-story p,.policy-grid p{color:var(--muted-foreground);margin:0;line-height:1.8}.detail-contact{border-radius:2rem;justify-content:space-between;align-items:end;gap:1rem;min-height:22rem;margin-top:.9rem;padding:clamp(1.4rem,3vw,3rem);display:flex}.detail-contact h2{letter-spacing:-.09em;margin:.8rem 0 0;font-size:clamp(3rem,8vw,9rem);line-height:.85}.detail-footer{color:var(--muted-foreground);justify-content:space-between;gap:1rem;padding-block:2rem 0;display:flex}.detail-footer a{align-items:center;gap:.4rem;display:inline-flex}.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;padding-bottom:4rem;display:grid}.listing-card{--tone:var(--primary);background:radial-gradient(circle at 74% 16%, var(--tone), transparent 16rem), var(--card);border-radius:1.8rem;align-content:space-between;gap:1rem;min-height:26rem;padding:1.4rem;display:grid}@supports (color:color-mix(in lab, red, red)){.listing-card{background:radial-gradient(circle at 74% 16%, color-mix(in srgb, var(--tone) 20%, transparent), transparent 16rem), color-mix(in srgb, var(--card) 78%, transparent)}}.listing-card{transition:transform .36s,border-color .26s}.listing-card:hover{border-color:var(--tone);transform:translateY(-.4rem)}@supports (color:color-mix(in lab, red, red)){.listing-card:hover{border-color:color-mix(in srgb, var(--tone) 42%, var(--border))}}.listing-card>span{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.16em;font-size:.74rem}.listing-card small{color:var(--muted-foreground)}.listing-card svg{justify-self:end}.policy-shell{place-items:start center;display:grid}.policy-card{border-radius:clamp(1.6rem,3vw,3rem);width:min(100%,74rem);margin:8rem auto 4rem;padding:clamp(1.4rem,4vw,4rem)}.policy-card h1{margin:1rem 0}.policy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:2rem 0;display:grid}.policy-grid article{border:1px solid var(--border);background:var(--background);border-radius:1.4rem;align-content:space-between;min-height:17rem;padding:1.2rem;display:grid}@supports (color:color-mix(in lab, red, red)){.policy-grid article{background:color-mix(in srgb, var(--background) 42%, transparent)}}@keyframes brandSwap{0%,42%{opacity:1;transform:translateY(0)}48%,92%{opacity:0;transform:translateY(-120%)}to{opacity:1;transform:translateY(0)}}@media (max-width:960px){.cursor-core,.cursor-aura,.side-nav,.floating-name{display:none}.site-header,.detail-header{padding:.8rem}.brand-mark{min-width:auto}.brand-text{display:none}.header-actions{gap:.4rem}.theme-toggle strong,.resume-pill span,.resume-ghost{display:none}.menu-trigger{width:3.2rem;min-width:3.2rem}.menu-trigger strong{display:none}.hero-device{opacity:.58;width:32rem;height:20rem;top:14%;right:-8rem}.carousel-stage{min-height:46rem}.carousel-slide{grid-template-columns:1fr;align-items:start}.mock-image-frame{min-height:24rem}.carousel-caption{align-self:start}.detail-metrics,.detail-story,.listing-grid,.policy-grid{grid-template-columns:1fr}}@media (max-width:640px){.detail-hero{min-height:62vh}.detail-contact{align-items:start;display:grid}.policy-card{margin-top:5rem}.menu-inner button{font-size:clamp(3rem,17vw,6rem)}}@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-duration{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}@keyframes spin{to{transform:rotate(360deg)}}
