@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0zgw-jeven.3w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0wkzw~je483f-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0rhz0arwfsn~5.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.0l76wvqk9d84w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0k4k9394f2q-k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.08e28id.o-okb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@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}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@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{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}.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,)}}:root{--void:#1a1235;--deep:#241a4d;--panel:#3a2a6e8c;--panel-solid:#2b1f5c;--text:#f6f3ff;--muted:#bcaeea;--magenta:#ff54a8;--cyan:#4df0ff;--violet:#a583ff;--amber:#ffc46b;--line:#a583ff57;--glow-magenta:0 0 18px #ff54a86b;--glow-cyan:0 0 18px #4df0ff61;--radius:14px;--maxw:1120px;--header-height:68px;--header-height-mobile:108px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;padding-top:var(--header-height);color:var(--text);font-family:var(--font-geist-sans), Arial, sans-serif;background-color:#0000;background-image:radial-gradient(1200px 700px at 50% -10%,#3b2a72 0%,#0000 62%),linear-gradient(#221846 0%,#1a1235 55%,#150f2c 100%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box;background-clip:border-box,border-box;margin:0;font-size:16px;line-height:1.6;position:relative;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;height:auto;display:block}.grid-bg{z-index:0;pointer-events:none;background:linear-gradient(#0000 0%,#ff2e970d 62%,#0000 100%),repeating-linear-gradient(90deg,#8b5cff29 0 1px,#0000 1px 76px),repeating-linear-gradient(0deg,#22e0ff1a 0 1px,#0000 1px 76px);position:fixed;inset:0;-webkit-mask-image:linear-gradient(#00000080,#0000 78%);mask-image:linear-gradient(#00000080,#0000 78%)}.sun-glow{z-index:0;pointer-events:none;filter:blur(24px);background:radial-gradient(circle,#ff2e9738,#0000 58%),radial-gradient(circle at 50% 62%,#22e0ff24,#0000 64%);width:900px;height:900px;position:fixed;top:-260px;left:50%;transform:translate(-50%)}body>:not(.grid-bg):not(.sun-glow):not(.lightbox):not(.project-details):not(.site-header){z-index:1;position:relative}.site-header{z-index:1000;height:var(--header-height);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);background:#181036f5;inset:0 0 auto;box-shadow:0 10px 34px #08041861;position:fixed!important}.site-header-bar{grid-template-columns:auto minmax(300px,1fr) auto;align-items:center;gap:clamp(16px,3vw,38px);width:100%;height:100%;padding:9px clamp(16px,3vw,44px);display:grid}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand-mark{aspect-ratio:1;color:#16103a;background:linear-gradient(135deg, var(--cyan), var(--magenta));block-size:38px;min-block-size:38px;max-block-size:38px;inline-size:38px;min-inline-size:38px;max-inline-size:38px;box-shadow:var(--glow-magenta);font-family:var(--font-geist-mono);border-radius:50%;flex:0 0 38px;place-items:center;font-size:.78rem;font-weight:800;display:grid}.brand strong{font-size:.84rem;line-height:1.2;display:block}.brand small{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.64rem;display:block}.site-header nav{flex-wrap:wrap;justify-content:center;gap:20px;min-width:0;font-size:.84rem;font-weight:600;display:flex}.site-header nav a{color:var(--muted);border-bottom:2px solid #0000;padding-bottom:3px;transition:color .18s}.site-header nav a:hover{color:var(--cyan)}.site-header nav a.is-active{color:var(--text);border-bottom-color:var(--magenta);text-shadow:0 0 12px #ff2e9799}.header-actions{flex:none;justify-content:flex-end;align-items:center;gap:8px;display:flex}.header-player-drawer{transform-origin:100% 0;-webkit-backdrop-filter:blur(18px);background:linear-gradient(135deg,#4df0ff12,#0000 48%),#1f1542f7;border:1px solid #4df0ff61;border-radius:12px;width:min(430px,100vw - 32px);padding:11px 14px;animation:.24s ease-out both header-player-unfold;position:absolute;top:calc(100% + 8px);right:clamp(16px,3vw,44px);box-shadow:0 18px 42px #07031885,0 0 22px #4df0ff17}@keyframes header-player-unfold{0%{opacity:0;transform:translateY(-8px)scaleY(.82)}to{opacity:1;transform:translateY(0)scaleY(1)}}.header-track-copy{align-items:baseline;gap:8px;min-width:0;display:flex}.header-track-label{color:var(--cyan);font-family:var(--font-geist-mono);letter-spacing:.14em;text-transform:uppercase;flex:none;font-size:.54rem;font-weight:800}.header-track-title{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1.25;overflow:hidden}.header-track-timeline{min-width:0;color:var(--muted);font-family:var(--font-geist-mono);font-variant-numeric:tabular-nums;grid-template-columns:auto minmax(100px,1fr) auto;align-items:center;gap:8px;margin-top:8px;font-size:.6rem;line-height:1;display:grid}.header-seek{cursor:pointer;appearance:none;background:0 0;width:100%;min-width:90px;height:15px;margin:0;padding:0}.header-seek:focus-visible{outline:none}.header-seek::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--cyan), var(--magenta));border-radius:999px;width:100%;height:2px}.header-seek::-webkit-slider-thumb{appearance:none;background:var(--text);border:2px solid var(--magenta);border-radius:50%;width:11px;height:11px;margin-top:-4.5px;box-shadow:0 0 8px #ff54a885}.header-seek::-moz-range-track{background:linear-gradient(90deg, var(--cyan), var(--magenta));border:0;border-radius:999px;width:100%;height:2px}.header-seek::-moz-range-thumb{background:var(--text);border:2px solid var(--magenta);border-radius:50%;width:9px;height:9px;box-shadow:0 0 8px #ff54a885}.icon-button{aspect-ratio:1;block-size:34px;min-block-size:34px;max-block-size:34px;inline-size:34px;min-inline-size:34px;max-inline-size:34px;color:var(--muted);border:1px solid var(--line);appearance:none;background:#8b5cff1a;border-radius:9999px;flex:0 0 34px;place-items:center;padding:0;font-size:.72rem;line-height:1;transition:color .18s,box-shadow .18s,border-color .18s;display:inline-grid;overflow:hidden}.icon-button:hover{color:var(--text);border-color:var(--cyan)}.icon-button.is-on{color:var(--cyan);border-color:var(--cyan);box-shadow:var(--glow-cyan)}.header-cta{color:#16103a;background:linear-gradient(120deg, var(--cyan), var(--magenta));white-space:nowrap;box-shadow:var(--glow-magenta);border-radius:999px;padding:9px 16px;font-size:.78rem;font-weight:700}.header-cta:hover{filter:brightness(1.12)}.page{max-width:var(--maxw);margin:0 auto;padding:clamp(36px,6vw,64px) clamp(18px,4vw,44px) 80px}.page-head{max-width:760px;margin-bottom:44px}.eyebrow{color:var(--magenta);font-family:var(--font-geist-mono);letter-spacing:.18em;text-transform:uppercase;text-shadow:var(--glow-magenta);margin:0 0 12px;font-size:.7rem;font-weight:700}.page-head h1{letter-spacing:-.02em;text-shadow:0 0 26px #8b5cff80;margin:0;font-size:clamp(2rem,4vw,2.9rem);line-height:1.1}.page-head h1 span{color:var(--cyan);letter-spacing:.02em;text-shadow:var(--glow-cyan);margin-top:6px;font-size:.42em;font-weight:500;display:block}.lede{color:var(--muted);margin:16px 0 0;font-size:1.02rem}.actions{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.button{border:1px solid var(--line);border-radius:999px;align-items:center;padding:11px 20px;font-size:.85rem;font-weight:600;transition:box-shadow .18s,border-color .18s,color .18s;display:inline-flex}.button.primary{color:#16103a;background:linear-gradient(120deg, var(--cyan), var(--magenta));box-shadow:var(--glow-magenta);border-color:#0000}.button.primary:hover{filter:brightness(1.12)}.button.ghost{color:var(--text);background:#8b5cff14}.button.ghost:hover{color:var(--cyan);border-color:var(--cyan);box-shadow:var(--glow-cyan)}.grid-projects{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden}.card.is-link:hover{border-color:var(--magenta);transform:translateY(-4px);box-shadow:0 14px 40px #ff2e9738}.card-media{aspect-ratio:16/10;border-bottom:1px solid var(--line);background:#2a1f57;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%}.card-media.is-wide{aspect-ratio:auto}.card-media.is-wide img{object-fit:contain;height:auto}.card-body{flex-direction:column;gap:8px;padding:22px;display:flex}.card-period{color:var(--muted);font-family:var(--font-geist-mono);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.68rem}.card-body h2{letter-spacing:-.01em;margin:0;font-size:1.12rem}.card-kicker{color:var(--cyan);margin:0;font-size:.8rem;font-weight:600}.card-text{color:var(--muted);margin:0;font-size:.9rem}.card-outcome{color:#d8cffa;margin:0;font-size:.84rem}.tags{flex-wrap:wrap;gap:6px;margin:4px 0 0;padding:0;list-style:none;display:flex}.tags li{color:#e6ddff;border:1px solid var(--line);background:#8b5cff29;border-radius:999px;padding:4px 10px;font-size:.7rem;font-weight:600}.card-link{color:var(--magenta);margin-top:6px;font-size:.82rem;font-weight:700}.creations-page{isolation:isolate;position:relative}.creations-page-backdrop{inset:var(--header-height) 0 0;z-index:0;pointer-events:none;background:#090613 url(/backgrounds/memoria-portfolio-poster.webp) top/cover no-repeat;position:fixed;overflow:hidden}.creations-page-video{object-fit:cover;object-position:center top;opacity:.72;filter:saturate(.92)contrast(1.05);width:100%;height:100%;position:absolute;inset:0}.creations-page-video-shade{background:linear-gradient(90deg,#150f2cf0 0%,#150f2cd6 34%,#150f2c8f 67%,#150f2ca3 100%),linear-gradient(#24184b4d 0%,#150f2c99 72%,#150f2cf0 100%);position:absolute;inset:0}.creations-page-content{z-index:1;position:relative}.tabs{gap:8px;margin-bottom:26px;display:flex}.tabs button{color:var(--muted);border:1px solid var(--line);background:#8b5cff14;border-radius:999px;padding:9px 18px;font-size:.84rem;font-weight:600;transition:color .18s,box-shadow .18s}.tabs button:hover{color:var(--text)}.tabs button.is-active{color:#16103a;background:linear-gradient(120deg, var(--cyan), var(--magenta));box-shadow:var(--glow-magenta);border-color:#0000}.notebook{flex-direction:column;gap:22px;display:flex}.sheet{background:linear-gradient(180deg, #22e0ff0a, transparent 40%), var(--panel);border:1px solid var(--line);border-left:3px solid var(--magenta);border-radius:var(--radius);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:26px clamp(18px,3vw,32px)}.sheet-head{align-items:baseline;gap:14px;display:flex}.sheet-index{color:var(--cyan);font-family:var(--font-geist-mono);text-shadow:var(--glow-cyan);font-size:.82rem;font-weight:700}.sheet-head h2{margin:0;font-size:1.2rem}.sheet-kind{color:var(--muted);letter-spacing:.04em;margin:2px 0 0;font-size:.82rem}.sheet-text{color:var(--muted);max-width:70ch;margin:14px 0 0;font-size:.92rem}.sheet-gallery{gap:14px;margin-top:18px;display:grid}.sheet-gallery.is-pair{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.sheet-gallery:not(.is-pair) .thumb{max-width:260px}.thumb{background:0 0;border:0;border-radius:10px;width:100%;padding:0;transition:transform .2s,box-shadow .2s;display:block;overflow:hidden}.thumb:hover{transform:scale(1.015);box-shadow:0 0 26px #4df0ff4d}.lightbox{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0c071eeb;place-items:center;padding:clamp(20px,5vw,60px);animation:.2s both appear;display:grid;position:fixed;inset:0}@keyframes appear{0%{opacity:0}to{opacity:1}}.lightbox img{border:1px solid var(--line);border-radius:10px;width:auto;max-width:100%;max-height:88vh;box-shadow:0 20px 60px #0009}.lightbox-close,.lightbox-nav{width:44px;height:44px;color:var(--text);border:1px solid var(--line);background:#3a2a6eb3;border-radius:50%;place-items:center;font-size:1.1rem;line-height:1;display:grid;position:absolute}.lightbox-close:hover,.lightbox-nav:hover{border-color:var(--cyan);box-shadow:var(--glow-cyan)}.lightbox-close{top:20px;right:20px}.lightbox-nav{font-size:1.6rem;top:50%;transform:translateY(-50%)}.lightbox-nav.is-prev{left:16px}.lightbox-nav.is-next{right:16px}.lightbox-counter{color:var(--muted);font-family:var(--font-geist-mono);letter-spacing:.1em;font-size:.78rem;position:absolute;bottom:22px}.sheet-gallery img{border:1px solid var(--line);border-radius:10px;width:100%;box-shadow:0 10px 30px #0c062066}.sheet-cta{border-left-color:var(--cyan)}.sheet-cta .button{margin-top:16px}.tracklist{flex-direction:column;gap:10px;max-width:660px;display:flex}.player-bar{border:1px solid var(--line);background:#8b5cff14;border-radius:999px;align-items:center;gap:12px;width:fit-content;margin-bottom:6px;padding:10px 14px;display:flex}.player-mode{color:var(--muted);font-size:.8rem;font-weight:600}.track{text-align:left;width:100%;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:14px;padding:14px 18px;transition:border-color .18s,box-shadow .18s;display:flex}.track:hover{border-color:var(--cyan)}.track.is-current{border-color:var(--magenta)}.track.is-playing{box-shadow:0 0 26px #ff2e9740}.track-icon{aspect-ratio:1;color:#16103a;background:linear-gradient(135deg, var(--cyan), var(--magenta));appearance:none;border:0;border-radius:9999px;flex:0 0 34px;place-items:center;block-size:34px;min-block-size:34px;max-block-size:34px;inline-size:34px;min-inline-size:34px;max-inline-size:34px;padding:0;font-size:.7rem;line-height:1;transition:transform .18s,box-shadow .18s,filter .18s;display:inline-grid;overflow:hidden;box-shadow:0 0 #4df0ff00}.track-icon:hover,.track-icon:focus-visible{filter:brightness(1.1);box-shadow:var(--glow-cyan);outline:none;transform:scale(1.08)}.track-visual{border:1px solid var(--line);background:#2a1f57;border-radius:10px;flex:none;width:250px;min-width:250px;max-width:250px;height:250px;display:block;overflow:hidden}.track-visual img,.track-visual video{object-fit:cover;width:100%;height:100%}.track.is-playing .track-visual{border-color:var(--cyan);box-shadow:var(--glow-cyan)}.track-meta{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;min-width:0;display:flex}.track-meta strong{max-width:100%;color:var(--text);overflow-wrap:anywhere;font-size:.95rem;line-height:1.35;display:block}.track-meta small{color:var(--muted);font-family:var(--font-geist-mono);font-size:.72rem;line-height:1.35;display:block}.track-excerpt-label{letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px;font-weight:700;color:var(--cyan)!important;font-size:.62rem!important}.track-role{margin-top:4px}.track-timeline{width:min(100%,260px);color:var(--muted);font-family:var(--font-geist-mono);font-variant-numeric:tabular-nums;white-space:nowrap;grid-template-columns:auto minmax(90px,1fr) auto;align-items:center;gap:9px;margin-top:10px;font-size:.7rem;line-height:1;display:grid}.track-seek{cursor:pointer;appearance:none;background:0 0;width:100%;min-width:90px;height:18px;margin:0;padding:0}.track-seek:focus-visible{outline:none}.track-seek::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--cyan), var(--magenta));border-radius:999px;width:100%;height:3px;box-shadow:0 0 9px #4df0ff38}.track-seek::-webkit-slider-thumb{appearance:none;background:var(--text);border:2px solid var(--magenta);border-radius:50%;width:13px;height:13px;margin-top:-5px;box-shadow:0 0 10px #ff54a894}.track-seek:hover::-webkit-slider-thumb{transform:scale(1.12)}.track-seek:focus-visible::-webkit-slider-thumb{transform:scale(1.12)}.track-seek::-moz-range-track{background:linear-gradient(90deg, var(--cyan), var(--magenta));border:0;border-radius:999px;width:100%;height:3px;box-shadow:0 0 9px #4df0ff38}.track-seek::-moz-range-thumb{background:var(--text);border:2px solid var(--magenta);border-radius:50%;width:11px;height:11px;box-shadow:0 0 10px #ff54a894}.equalizer{align-items:flex-end;gap:3px;height:18px;display:flex}.equalizer i{background:var(--cyan);width:3px;animation:.9s ease-in-out infinite eq}.equalizer i:nth-child(2){background:var(--magenta);animation-delay:.18s}.equalizer i:nth-child(3){animation-delay:.36s}@keyframes eq{0%,to{height:5px}50%{height:17px}}.cv{flex-direction:column;gap:34px;max-width:860px;display:flex}.cv-block h2{border-bottom:1px solid var(--line);letter-spacing:.01em;margin:0 0 14px;padding-bottom:10px;font-size:1.05rem}.cv-block p{color:var(--muted);margin:0}.practice-heading{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:16px;display:flex}.practice-heading h2{margin-bottom:7px}.practice-heading p{max-width:68ch;font-size:.84rem;line-height:1.55}.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.practice-card{background:linear-gradient(145deg, #8b5cff24, #ff2e970e), var(--panel);border:1px solid var(--line);border-radius:15px;align-items:flex-start;gap:14px;min-width:0;padding:17px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden}.practice-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#4df0ff21,#0000 70%);border-radius:50%;width:130px;height:130px;position:absolute;bottom:-55px;right:-42px}.practice-card:hover{border-color:#4df0ff7a;transform:translateY(-2px);box-shadow:0 14px 28px #0c061f2e}.practice-card.is-primary{background:linear-gradient(120deg, #4df0ff1f, #8b5cff29 48%, #ff2e9714), var(--panel);border-color:#4df0ff75;grid-column:1/-1;box-shadow:0 0 26px #4df0ff14}.practice-monogram{z-index:1;color:#17102f;background:linear-gradient(135deg, var(--cyan), var(--magenta));width:46px;height:46px;font-family:var(--font-geist-mono);letter-spacing:-.03em;border-radius:13px;flex:0 0 46px;place-items:center;font-size:.76rem;font-weight:850;display:grid;position:relative;box-shadow:0 0 18px #4df0ff38}.practice-card-body{z-index:1;min-width:0;position:relative}.practice-card h3{margin:0;font-size:.98rem}.practice-card strong{color:var(--cyan);text-shadow:0 0 14px #4df0ff2e;margin-top:4px;font-size:1.08rem;line-height:1.2;display:block}.practice-card p{margin-top:8px;font-size:.79rem;line-height:1.48}.practice-since{color:#e8e0ff;font-family:var(--font-geist-mono);background:#8b5cff1f;border:1px solid #ac7eff47;border-radius:999px;margin-top:9px;padding:4px 8px;font-size:.66rem;display:inline-block}@media (max-width:680px){.practice-grid{grid-template-columns:1fr}.practice-card.is-primary{grid-column:auto}.practice-card{padding:15px}.practice-monogram{flex-basis:42px;width:42px;height:42px}}.accordion-group{flex-direction:column;gap:8px;display:flex}.accordion{background:var(--panel);border:1px solid var(--line);border-radius:10px;transition:border-color .18s,box-shadow .18s;overflow:hidden}.accordion.is-open{border-color:var(--magenta);box-shadow:0 0 24px #ff2e9729}.accordion-trigger{width:100%;color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:14px;padding:14px 18px;display:flex}.accordion-trigger:hover{background:#8b5cff1a}.accordion-logo{border:1px solid var(--line);background:#ffffffeb;border-radius:10px;flex:none;place-items:center;width:42px;height:42px;padding:5px;display:grid;overflow:hidden}.accordion-logo img{object-fit:contain;width:100%;height:100%}.accordion-logo.is-placeholder{color:var(--cyan);font-family:var(--font-geist-mono);letter-spacing:.04em;background:#4df0ff1f;font-size:.78rem;font-weight:800}.accordion-title{flex:1;min-width:0}.accordion-title strong{font-size:.95rem;display:block}.accordion-title em{color:var(--cyan);margin-top:2px;font-size:.82rem;font-style:normal;font-weight:600;display:block}.accordion-meta{color:var(--muted);font-family:var(--font-geist-mono);letter-spacing:.08em;text-transform:uppercase;flex:none;font-size:.7rem}.chevron{border-right:2px solid var(--magenta);border-bottom:2px solid var(--magenta);flex:none;width:9px;height:9px;transition:transform .22s;transform:rotate(45deg)translate(-2px,-2px)}.accordion.is-open .chevron{transform:rotate(-135deg)translate(-2px,-2px)}.accordion-panel{animation:.26s both unfold}.accordion-content{margin-top:10px;padding:0 18px 12px}@keyframes unfold{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips em{color:#e6ddff;border:1px solid var(--line);background:#22e0ff1a;border-radius:999px;padding:4px 11px;font-size:.76rem;font-style:normal;font-weight:600}.bullets{color:var(--muted);margin:0;padding-left:18px;font-size:.89rem}.bullets li{margin-bottom:6px}.bullets li::marker{color:var(--magenta)}.cv-final{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.cv-note{font-size:.88rem}.contact-block{flex-direction:column;gap:16px;width:min(100%,680px);display:flex}.contact-primary{color:#16103a;background:linear-gradient(120deg, var(--cyan), var(--magenta));border-radius:var(--radius);min-height:86px;box-shadow:var(--glow-magenta);text-align:center;overflow-wrap:anywhere;justify-content:center;align-items:center;padding:22px 26px;font-size:clamp(1rem,2.4vw,1.35rem);font-weight:800;transition:filter .18s,transform .18s;display:flex}.contact-primary:hover{filter:brightness(1.12);transform:translateY(-2px)}.social-links-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;display:grid!important}.social-link-card{background:linear-gradient(135deg, #4df0ff0e, transparent 55%), var(--panel);border:1px solid var(--line);border-radius:14px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:82px;padding:14px 16px;transition:transform .18s,border-color .18s,box-shadow .18s;overflow:hidden;display:grid!important}.social-link-card:hover{border-color:var(--cyan);box-shadow:var(--glow-cyan);transform:translateY(-2px)}.social-link-icon{color:#17102f;background:linear-gradient(135deg, var(--cyan), var(--magenta));border-radius:50%;place-items:center;block-size:44px;min-block-size:44px;inline-size:44px;min-inline-size:44px;display:grid;box-shadow:0 0 16px #4df0ff2b}.social-link-icon svg,.social-link-icon img{width:23px;height:23px;display:block}.social-link-icon svg{fill:currentColor}.social-link-icon img{object-fit:contain}.social-link-icon.is-artstation img{width:17px;height:17px}.social-link-copy{min-width:0;line-height:1.25;display:block}.social-link-copy strong,.social-link-copy small{display:block}.social-link-copy strong{color:var(--text);font-size:.94rem}.social-link-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:.72rem;overflow:hidden}.social-link-arrow{color:var(--cyan);opacity:.72;font-size:1rem;font-weight:800;line-height:1;transition:transform .18s,opacity .18s}.social-link-card:hover .social-link-arrow{opacity:1;transform:translate(2px,-2px)}@media (max-width:680px){.contact-block{width:100%}.contact-primary{min-height:72px;padding:18px}.social-links-grid{grid-template-columns:1fr}.social-link-copy small{white-space:normal}}.site-footer{max-width:var(--maxw);border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:26px clamp(18px,4vw,44px);font-size:.8rem;display:flex}.site-footer nav{gap:18px;display:flex}.site-footer nav a:hover{color:var(--cyan)}.reveal{opacity:0;transition:opacity .55s,transform .55s;transform:translateY(18px)}.reveal.is-visible{opacity:1;transform:none}.grid-projects>.reveal{display:flex}.grid-projects>.reveal>*{width:100%;height:100%}.tab-panel{animation:.35s both fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.tab-panel,.accordion-panel{animation:none}.equalizer i{height:12px;animation:none}html{scroll-behavior:auto}.creations-page-video{display:none}}@media (max-width:1040px){:root{--header-height:108px}.site-header-bar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions""nav nav";align-content:center;gap:7px 14px;padding:8px 18px}.brand{grid-area:brand}.site-header nav{scrollbar-width:none;white-space:nowrap;grid-area:nav;justify-content:flex-start;overflow-x:auto}.site-header nav::-webkit-scrollbar{display:none}.header-actions{grid-area:actions}.header-player-drawer{top:calc(100% + 7px)}.creations-page-backdrop{background-position:58% 0;inset-block-start:var(--header-height)}.creations-page-video{object-position:58% top}}@media (max-width:760px){body{padding-top:var(--header-height-mobile)}:root{--header-height:var(--header-height-mobile)}.site-header-bar{padding:7px 14px}.brand small,.header-cta{display:none}.site-header nav{gap:13px;font-size:.76rem}.header-actions{gap:6px}.icon-button{flex-basis:31px;block-size:31px;min-block-size:31px;max-block-size:31px;inline-size:31px;min-inline-size:31px;max-inline-size:31px}.header-player-drawer{transform-origin:top;width:auto;left:12px;right:12px}.header-track-title{font-size:.7rem}.header-track-timeline{grid-template-columns:auto minmax(90px,1fr) auto}.creations-page-backdrop{background-position:66% 0}.creations-page-video{object-position:66% top;opacity:.58}.accordion-meta{display:none}.sheet-gallery.is-pair{grid-template-columns:1fr}.track{flex-wrap:wrap;align-items:flex-start}.track-visual{aspect-ratio:1;width:100%;min-width:0;max-width:none;height:auto}.track-meta{min-width:180px}.track-timeline{grid-template-columns:auto minmax(100px,1fr) auto;width:100%}}.stats-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:28px;display:grid}.stat-item{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(145deg,#8b5cff24,#ff2e970f);border-radius:14px;min-width:0;padding:15px 16px}.stat-item strong{color:var(--text);text-shadow:var(--glow-cyan);font-size:clamp(1.35rem,3vw,2rem);line-height:1;display:block}.stat-item span{color:var(--muted);margin-top:7px;font-size:.72rem;line-height:1.3;display:block}.expertise-line{color:#d8cffa;margin:14px 0 0;font-size:.82rem}.projects-head{margin-bottom:26px}.project-filters{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.project-filters button{color:#e6ddff;border:1px solid var(--line);cursor:pointer;font:inherit;background:#8b5cff1a;border-radius:999px;padding:8px 13px;font-size:.75rem;font-weight:650;transition:border-color .18s,background .18s,color .18s,box-shadow .18s}.project-filters button:hover,.project-filters button.is-active{color:#16103a;background:linear-gradient(120deg, var(--cyan), var(--magenta));border-color:#0000;box-shadow:0 0 18px #ff2e9738}.project-filters button span{opacity:.72;font-family:var(--font-geist-mono);margin-left:4px;font-size:.67rem}.project-filter-status{color:var(--muted);margin:0 0 18px;font-size:.76rem}.project-card-enter{animation:.3s both project-card-enter}@keyframes project-card-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (max-width:760px){.stats-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-item{padding:13px}.project-filters{scrollbar-width:thin;flex-wrap:nowrap;padding-bottom:5px;overflow-x:auto}.project-filters button{flex:none}}@media (prefers-reduced-motion:reduce){.project-card-enter{animation:none}}.language-select-wrap{background:#1c1040b8;border:1px solid #be97ff61;border-radius:999px;align-items:center;gap:.45rem;min-height:36px;padding:0 .75rem;display:inline-flex}.language-select-wrap select{width:48px;max-width:48px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;outline:0}.language-select-wrap option{color:#171022;background:#fff}@media (max-width:760px){.language-select-wrap{padding:0 .75rem}.language-select-wrap select{width:48px;max-width:48px}}.experience-timeline{--timeline-rail-x:12px;gap:1.35rem;margin-top:1.4rem;display:grid;position:relative}.experience-timeline:before{content:"";z-index:0;top:1.8rem;bottom:1.8rem;left:var(--timeline-rail-x);background:linear-gradient(#ff5bab 0%,#9d72ff 34%,#62e5ff 68%,#62e5ff59 100%);border-radius:999px;width:4px;position:absolute;box-shadow:0 0 0 1px #ffffff1f,0 0 14px #9d72ff8c,0 0 24px #62e5ff38}.timeline-item{z-index:1;padding-left:46px;position:relative}.timeline-item:before{content:"";top:1.72rem;left:calc(var(--timeline-rail-x) + 8px);background:linear-gradient(90deg,#8d6cff,#8d6cff2e);border-radius:999px;width:28px;height:2px;position:absolute;box-shadow:0 0 10px #8d6cff66}.timeline-dot{z-index:2;left:calc(var(--timeline-rail-x) - 6px);background:linear-gradient(135deg,#62e5ff,#ff5bab);border:3px solid #1b1237;border-radius:50%;width:16px;height:16px;position:absolute;top:1.35rem;box-shadow:0 0 0 4px #855bd647,0 0 18px #62e5ff85}.timeline-card{background:linear-gradient(145deg,#382468eb,#281b4ff0);border:1px solid #ac7eff6b;border-radius:18px;padding:1.25rem 1.35rem;position:relative;box-shadow:0 10px 28px #0c061f29}.timeline-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.timeline-company{align-items:center;gap:.85rem;display:flex}.timeline-company img{object-fit:contain;background:#ffffff14;border-radius:10px;width:44px;height:44px;padding:5px}.timeline-company h3{margin:0;font-size:1.12rem}.timeline-location{opacity:.68;margin:.2rem 0 0;font-size:.88rem}.timeline-head time{white-space:nowrap;opacity:.72;font-size:.9rem}.timeline-role{color:#64e5ff;margin:.9rem 0 .65rem;font-weight:700}.timeline-card .bullets{margin-bottom:0}@media (max-width:760px){.experience-timeline{--timeline-rail-x:9px;gap:1rem}.experience-timeline:before{width:3px;top:1.65rem;bottom:1.65rem}.timeline-item{padding-left:34px}.timeline-item:before{left:calc(var(--timeline-rail-x) + 7px);width:19px}.timeline-dot{left:calc(var(--timeline-rail-x) - 6px);width:15px;height:15px}.timeline-head{flex-direction:column;gap:.55rem}.timeline-head time{white-space:normal}.timeline-card{padding:1rem}}.portfolio-profile-selector{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(145deg,#8b5cff1f,#ff2e970e);border-radius:18px;width:min(100%,760px);margin:0 0 24px;padding:15px}.profile-selector-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.profile-selector-label{color:var(--text);margin:0;font-size:.8rem;font-weight:750}.profile-selector-help{max-width:570px;color:var(--muted);margin:4px 0 0;font-size:.72rem;line-height:1.45}.profile-buttons{flex-wrap:wrap;gap:8px;display:flex}.profile-buttons button{border:1px solid var(--line);cursor:pointer;font:inherit;color:#e6ddff;background:#8b5cff1a;border-radius:999px;padding:9px 14px;font-size:.75rem;font-weight:680;transition:border-color .18s,background .18s,color .18s,box-shadow .18s,transform .18s}.profile-buttons button:hover,.profile-buttons button.is-active{color:#16103a;background:linear-gradient(120deg, var(--cyan), var(--magenta));border-color:#0000;transform:translateY(-1px);box-shadow:0 0 18px #ff2e9738}.projects-profile-actions{margin-top:16px}@media (max-width:640px){.portfolio-profile-selector{padding:13px}.profile-selector-head{display:block}.profile-buttons{scrollbar-width:thin;flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.profile-buttons button{flex:none}}.project-details{padding-top:calc(var(--header-height) + 16px);align-items:start;overflow-y:auto}.project-details-panel{background:var(--panel,#160e2ef5);border:1px solid var(--line);text-align:left;border-radius:14px;width:min(760px,100%);max-height:88vh;padding:clamp(22px,4vw,40px);position:relative;overflow-y:auto;box-shadow:0 24px 70px #0009}.project-details-close{width:40px;height:40px;color:var(--text);border:1px solid var(--line);cursor:pointer;background:#ffffff0f;border-radius:999px;place-items:center;font-size:24px;line-height:1;display:grid;position:absolute;top:12px;right:12px}.project-details-close:hover{background:#ffffff1f}.project-details-media{border:1px solid var(--line);border-radius:10px;margin:0 0 18px;overflow:hidden}.project-details-media img{object-fit:cover;width:100%;max-height:34vh;display:block}.project-details-lede{margin:12px 0 16px;font-size:1.02rem;line-height:1.6}.project-details-text{color:var(--muted,#c9c3e0);margin:0 0 14px;line-height:1.7}.project-details-link{border-top:1px solid var(--line);word-break:break-all;margin:20px 0 0;padding-top:16px}.card.has-overlay-button{position:relative}.card-overlay-button{border-radius:inherit;cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.card-overlay-button:focus-visible{outline:2px solid var(--accent,#7de3ff);outline-offset:3px}@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}
