html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-duration:1ms;transition-property:overflow}@property --dynamic-primary{syntax: "<color>"; inherits: true; initial-value: #667eea;}@property --dynamic-secondary{syntax: "<color>"; inherits: true; initial-value: #764ba2;}@property --dynamic-accent{syntax: "<color>"; inherits: true; initial-value: #198754;}:root{color-scheme:light;--primary-color: #667eea;--primary-light: #764ba2;--primary-color-rgb: 102, 126, 234;--bg-color: #f8f9fa;--text-color: #212529;--text-muted: #6c757d;--card-bg: #fff;--card-bg-rgb: 255, 255, 255;--border-color: #dee2e6;--shadow-color: rgba(0, 0, 0, .12);--accent-color: #198754;--dynamic-primary: var(--primary-color);--dynamic-secondary: var(--primary-light);--dynamic-accent: var(--accent-color);--dynamic-primary-rgb: var(--primary-color-rgb);--dynamic-accent-rgb: 25, 135, 84;--particle-primary: #667eea;--particle-secondary: #764ba2;--particle-accent: #f093fb;--particle-connection: #c4b5fd;--transition-theme-colors: color 1.2s var(--motion-soft), background-color 1.2s var(--motion-soft), border-color 1.2s var(--motion-soft), box-shadow 1.2s var(--motion-soft), fill 1.2s var(--motion-soft), stroke 1.2s var(--motion-soft), --dynamic-primary 1.2s var(--motion-soft), --dynamic-secondary 1.2s var(--motion-soft), --dynamic-accent 1.2s var(--motion-soft);--content-width: 1120px;--art-content-width: 1680px;--photo-grid-max-width: 1200px;--footer-height: 4rem;--section-pad: clamp(4rem, 9vw, 8rem);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;--motion-soft: cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{color-scheme:dark;--primary-color: #3b82f6;--primary-light: #60a5fa;--primary-color-rgb: 59, 130, 246;--bg-color: #121212;--text-color: #e9ecef;--text-muted: #adb5bd;--card-bg: #1e1e1e;--card-bg-rgb: 30, 30, 30;--border-color: #343a40;--shadow-color: rgba(0, 0, 0, .35);--accent-color: #20c997}[data-section-theme=hero]{--dynamic-primary: #667eea;--dynamic-secondary: #764ba2;--dynamic-accent: #f093fb;--dynamic-primary-rgb: 102, 126, 234;--dynamic-accent-rgb: 240, 147, 251;--canvas-primary: #667eea;--canvas-secondary: #764ba2;--canvas-accent: #f093fb;--canvas-highlight: #c4b5fd;--particle-primary: var(--canvas-primary);--particle-secondary: var(--canvas-secondary);--particle-accent: var(--canvas-accent);--particle-connection: var(--canvas-highlight)}[data-section-theme=about]{--dynamic-primary: #4facfe;--dynamic-secondary: #00f2fe;--dynamic-accent: #43e97b;--dynamic-primary-rgb: 79, 172, 254;--dynamic-accent-rgb: 67, 233, 123;--canvas-primary: #4facfe;--canvas-secondary: #00f2fe;--canvas-accent: #43e97b;--canvas-highlight: #38f9d7;--particle-primary: var(--canvas-primary);--particle-secondary: var(--canvas-secondary);--particle-accent: var(--canvas-accent);--particle-connection: var(--canvas-highlight)}[data-section-theme=creations]{--dynamic-primary: #fa709a;--dynamic-secondary: #fee140;--dynamic-accent: #ff6b6b;--dynamic-primary-rgb: 250, 112, 154;--dynamic-accent-rgb: 255, 107, 107;--canvas-primary: #fa709a;--canvas-secondary: #fee140;--canvas-accent: #ff6b6b;--canvas-highlight: #feca57;--particle-primary: var(--canvas-primary);--particle-secondary: var(--canvas-secondary);--particle-accent: var(--canvas-accent);--particle-connection: var(--canvas-highlight)}[data-section-theme=skills]{--dynamic-primary: #30d5c8;--dynamic-secondary: #94a3b8;--dynamic-accent: #5ee7df;--dynamic-primary-rgb: 48, 213, 200;--dynamic-accent-rgb: 94, 231, 223;--canvas-primary: #40e0d0;--canvas-secondary: #94a3b8;--canvas-accent: #00ced1;--canvas-highlight: #66a6ff;--particle-primary: var(--canvas-primary);--particle-secondary: var(--canvas-secondary);--particle-accent: var(--canvas-accent);--particle-connection: var(--canvas-highlight)}[data-section-theme=contact]{--dynamic-primary: #d299c2;--dynamic-secondary: #4a6341;--dynamic-accent: #89f7fe;--dynamic-primary-rgb: 210, 153, 194;--dynamic-accent-rgb: 137, 247, 254;--canvas-primary: #4a6341;--canvas-secondary: #8a7b66;--canvas-accent: #c97b61;--canvas-highlight: #e9c7b8;--particle-primary: var(--canvas-primary);--particle-secondary: var(--canvas-secondary);--particle-accent: var(--canvas-accent);--particle-connection: var(--canvas-highlight)}[data-theme=dark] [data-section-theme=hero]{--dynamic-primary: #8b5cf6;--dynamic-secondary: #a78bfa;--dynamic-accent: #c084fc;--dynamic-primary-rgb: 139, 92, 246;--dynamic-accent-rgb: 192, 132, 252}[data-theme=dark] [data-section-theme=about]{--dynamic-primary: #0ea5e9;--dynamic-secondary: #06b6d4;--dynamic-accent: #10b981;--dynamic-primary-rgb: 14, 165, 233;--dynamic-accent-rgb: 16, 185, 129}[data-theme=dark] [data-section-theme=creations]{--dynamic-primary: #ec4899;--dynamic-secondary: #f59e0b;--dynamic-accent: #ef4444;--dynamic-primary-rgb: 236, 72, 153;--dynamic-accent-rgb: 239, 68, 68}[data-theme=dark] [data-section-theme=skills]{--dynamic-primary: #14b8a6;--dynamic-secondary: #8b5cf6;--dynamic-accent: #06b6d4;--dynamic-primary-rgb: 20, 184, 166;--dynamic-accent-rgb: 6, 182, 212}[data-theme=dark] [data-section-theme=contact]{--dynamic-primary: #a855f7;--dynamic-secondary: #3b82f6;--dynamic-accent: #06b6d4;--dynamic-primary-rgb: 168, 85, 247;--dynamic-accent-rgb: 6, 182, 212}*{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow-x:hidden;scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none}body{background:radial-gradient(circle at 18% 20%,rgba(var(--primary-color-rgb),.08),transparent 32rem),var(--bg-color);color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}::selection{background:var(--primary-color);color:#fff}.section-container{width:min(var(--content-width),calc(100% - 2rem));margin-inline:auto}.page-section{position:relative;min-height:100vh;padding-block:var(--section-pad)}.page-section.section-motion-enabled{--section-shift-y: 0px;--section-scale: 1;transform:translate3d(0,var(--section-shift-y),0) scale(var(--section-scale));transform-origin:50% 50%;will-change:transform}.section-heading{max-width:860px;margin:0 auto 3rem;text-align:center;opacity:0;transform:translateY(20px);transition:opacity .7s var(--motion-soft),transform .7s var(--motion-soft)}.section-heading.is-inview,.is-inview .section-heading{opacity:1;transform:translateY(0)}.section-heading h2{margin:0 0 .75rem;font-size:clamp(2.15rem,5vw,3.8rem);font-weight:300;line-height:1.12}.section-heading p,.lead{margin:0;color:var(--text-muted);font-size:clamp(1.05rem,2vw,1.25rem);font-weight:300}.localized-block[data-lang=en],body.lang-en .localized-block[data-lang=zh]{display:none}body.lang-en .localized-block[data-lang=en]{display:block}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.liquid-glass{--glass-fill: rgba(255, 255, 255, .3);--glass-highlight: rgba(255, 255, 255, .36);--glass-edge: rgba(255, 255, 255, .42);--glass-accent: rgba(var(--dynamic-primary-rgb), .1);--glass-inner-shadow: rgba(255, 255, 255, .2);--glass-drop-shadow: rgba(0, 0, 0, .12);position:relative;z-index:20;overflow:hidden;isolation:isolate;border:1px solid var(--glass-edge);background:var(--glass-fill);box-shadow:0 18px 50px var(--glass-drop-shadow),inset 0 1px 0 var(--glass-inner-shadow);backdrop-filter:blur(4px) saturate(1.25);-webkit-backdrop-filter:blur(4px) saturate(1.25);transition:var(--transition-theme-colors)}[data-theme=dark] .liquid-glass{--glass-fill: rgba(80, 80, 80, .28);--glass-highlight: rgba(255, 255, 255, .16);--glass-edge: rgba(255, 255, 255, .18);--glass-accent: rgba(var(--dynamic-primary-rgb), .16);--glass-inner-shadow: rgba(255, 255, 255, .12);--glass-drop-shadow: rgba(0, 0, 0, .34)}.liquid-glass:before,.liquid-glass:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}.liquid-glass:before{z-index:1;background:linear-gradient(135deg,var(--glass-highlight),transparent 42%),linear-gradient(315deg,var(--glass-accent),transparent 52%);opacity:.65;transition:var(--transition-theme-colors),opacity .35s var(--motion-soft)}.liquid-glass:after{z-index:2;box-shadow:inset 0 1px #ffffff5c,inset 0 -1px rgba(var(--dynamic-primary-rgb),.08);transition:var(--transition-theme-colors)}.liquid-glass__content{position:relative;z-index:3}.ui-button,.setting-action-button,.tab-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:2.55rem;padding:.65rem 1rem;border-radius:999px;border:1px solid transparent;color:var(--text-color);line-height:1.2;text-align:center;transition:transform .28s var(--motion-soft),box-shadow .28s var(--motion-soft),background-color .6s var(--motion-soft),border-color .6s var(--motion-soft),color .6s var(--motion-soft)}.ui-button:hover,.setting-action-button:hover,.tab-button:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(var(--dynamic-primary-rgb),.24)}.ui-button:focus-visible,.setting-action-button:focus-visible,.tab-button:focus-visible,.nav-section:focus-visible{outline:2px solid var(--dynamic-primary);outline-offset:3px}.ui-button--primary{--glass-accent: rgba(var(--dynamic-primary-rgb), .22);color:#fff;background:linear-gradient(135deg,var(--dynamic-primary),var(--dynamic-secondary));border-color:rgba(var(--dynamic-primary-rgb),.25)}.ui-button--secondary,.ui-button--ghost{color:var(--text-color)}.ui-button--success{color:#fff;background:#1b8a5a}.ui-button--warning{color:#191919;background:#fee140}.ui-button--info{color:#fff;background:#0ea5e9}.ui-button.liquid-glass.ui-button--primary,.ui-button.liquid-glass.ui-button--success,.ui-button.liquid-glass.ui-button--warning,.ui-button.liquid-glass.ui-button--info{color:var(--text-color)}.ui-button.liquid-glass.ui-button--primary,.ui-button.liquid-glass.ui-button--info{border-color:rgba(var(--dynamic-primary-rgb),.36)}.ui-button.liquid-glass.ui-button--success{border-color:rgba(var(--dynamic-accent-rgb),.34)}.ui-button.liquid-glass.ui-button--warning{border-color:#f59e0b6b}.ui-button--sm{min-height:2rem;padding:.45rem .75rem;font-size:.9rem}.ui-button--lg{min-height:3rem;padding:.78rem 1.2rem;font-size:1.05rem}.ui-button--icon,.ui-button--icon-only{width:3rem;height:3rem;padding:0}.ui-button>.liquid-glass__content,.tab-button>.liquid-glass__content,.setting-action-button>.liquid-glass__content{display:inline-flex;align-items:center;justify-content:center;gap:inherit;min-width:0}.ui-button--icon>.liquid-glass__content,.ui-button--icon-only>.liquid-glass__content{width:100%;height:100%}.site-icon{display:inline-block;flex:0 0 auto;width:1em;height:1em;vertical-align:-.125em}.site-icon--lg{font-size:2em}.site-icon--xl{font-size:3em}.state-icon{position:relative;display:inline-grid;place-items:center;width:1em;height:1em}.state-icon__item{grid-area:1 / 1;transition:opacity .2s var(--motion-soft),transform .2s var(--motion-soft)}.state-icon__item--play,.state-icon__item--sun,body.animations-paused .state-icon__item--pause,[data-theme=dark] .state-icon__item--moon{opacity:0;transform:scale(.82)}body.animations-paused .state-icon__item--play,[data-theme=dark] .state-icon__item--sun{opacity:1;transform:scale(1)}.setting-action-button{min-height:2rem;padding:.35rem .75rem;border-radius:8px;background:rgba(var(--dynamic-primary-rgb),.08);color:var(--dynamic-primary)}.glass-card{border-radius:var(--radius-md);transition:transform .32s var(--motion-soft),box-shadow .32s var(--motion-soft),var(--transition-theme-colors)}.glass-card:hover,.glass-card.is-active{transform:translateY(-4px);box-shadow:0 20px 60px rgba(var(--dynamic-primary-rgb),.2);border-color:rgba(var(--dynamic-primary-rgb),.4)}.glass-card[data-scroll]{transition:box-shadow .32s var(--motion-soft),var(--transition-theme-colors)}.glass-card[data-scroll]:hover{transform:var(--style-transform, none)}.glass-card__content{height:100%;padding:clamp(1rem,2.2vw,1.35rem)}.ui-badge{display:inline-flex;align-items:center;min-height:1.55rem;padding:.32rem .58rem;border-radius:8px;color:#fff;font-size:.78rem;font-weight:700;line-height:1;white-space:nowrap}.ui-badge--primary{background:#4f7cff}.ui-badge--secondary{background:#6c757d}.ui-badge--success{background:#1f9d63}.ui-badge--warning{background:#f59e0b;color:#191919}.ui-badge--info{background:#0ea5e9}.ui-badge--danger{background:#ef4444}.badge-list,.inline-actions,.card-actions,.hero-cta,.about-actions,.contact-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}.badge-list{gap:.4rem}.inline-actions,.hero-cta,.about-actions,.contact-actions{justify-content:center}.nav-speedometer{position:fixed;top:50%;right:20px;z-index:950;opacity:0;visibility:hidden;transform:translateY(-50%) translate(100px);transition:transform .4s var(--motion-soft),opacity .4s var(--motion-soft),visibility .4s}.nav-speedometer.visible{opacity:1;visibility:visible;transform:translateY(-50%) translate(0)}body.on-hero .nav-speedometer{opacity:0;visibility:hidden;transform:translateY(-50%) translate(100px)}.speedometer-container{position:relative;width:120px;height:200px}.speedometer-svg{position:absolute;inset:0;width:100%;height:100%}.speedometer-progress,.speedometer-needle{transition:transform .8s var(--motion-soft),stroke-dashoffset .8s var(--motion-soft),var(--transition-theme-colors);filter:drop-shadow(0 0 12px rgba(var(--dynamic-primary-rgb),.56))}.speedometer-track,.speedometer-ticks line,.speedometer-needle line,.speedometer-needle circle{transition:var(--transition-theme-colors)}.nav-sections{position:absolute;inset:0;pointer-events:none}.nav-section{position:absolute;top:100px;left:90px;width:0;height:0;padding:0;border:0;background:transparent;pointer-events:auto;transform:rotate(var(--section-angle)) translate(70px)}.section-dot{position:absolute;top:50%;left:50%;width:12px;height:12px;border-radius:999px;background:rgba(var(--dynamic-primary-rgb),.4);transform:translate(-50%,-50%);transition:transform .25s var(--motion-soft),var(--transition-theme-colors)}.section-label{position:absolute;top:0;left:0;padding:.35rem .7rem;border:1px solid var(--border-color);border-radius:999px;background:rgba(var(--card-bg-rgb),.88);color:var(--text-color);font-size:.75rem;font-weight:700;white-space:nowrap;box-shadow:0 8px 18px var(--shadow-color);transform:translate(-50%,-50%) rotate(calc(-1 * var(--section-angle)));transition:transform .25s var(--motion-soft),var(--transition-theme-colors)}.nav-section:hover .section-dot,.nav-section.active .section-dot{background:var(--dynamic-primary);box-shadow:0 0 20px rgba(var(--dynamic-primary-rgb),.5);transform:translate(-50%,-50%) scale(1.25)}.nav-section:hover .section-label,.nav-section.active .section-label{background:var(--dynamic-primary);color:#fff;transform:translate(-50%,-50%) rotate(calc(-1 * var(--section-angle))) scale(1.08)}.speedometer-hint{position:fixed;top:50%;right:20px;z-index:940;width:8px;height:100px;padding:0;border:0;border-radius:999px;background:rgba(var(--dynamic-primary-rgb),.18);opacity:0;visibility:hidden;transform:translateY(-50%);box-shadow:inset 0 1px 3px #00000024;transition:opacity .35s var(--motion-soft),visibility .35s,transform .35s var(--motion-soft),height .35s var(--motion-soft),var(--transition-theme-colors)}.speedometer-hint:before{content:"";position:absolute;inset:-28px}.speedometer-hint:after{content:"";position:absolute;top:0;left:0;width:100%;height:var(--reading-progress, 0%);border-radius:inherit;background:linear-gradient(to bottom,var(--dynamic-primary),var(--dynamic-accent));transition:var(--transition-theme-colors)}.speedometer-hint.visible{opacity:1;visibility:visible}.speedometer-hint:hover{height:150px;transform:translateY(-50%) scale(1.08)}.global-controls{position:fixed;top:20px;left:20px;z-index:970;display:flex;gap:.65rem}.global-controls[data-theme-reactive-instant]{--theme-transition-duration: 0s}.global-controls[data-theme-reactive-instant] .ui-button,.global-controls[data-theme-reactive-instant] .setting-action-button{transition:transform .28s var(--motion-soft),box-shadow .28s var(--motion-soft),background-color 0s,border-color 0s,color 0s}.global-controls[data-theme-reactive-instant] .toggle-control span{transition:background 0s}.lang-toggle{min-width:5rem}.lang-text.inactive{opacity:.45}.lang-divider{opacity:.35}.settings-panel{position:relative;flex:0 0 auto}.settings-toggle{flex:0 0 3rem;width:3rem;height:3rem;aspect-ratio:1}.settings-toggle .site-icon{transition:transform .3s var(--motion-soft)}.settings-toggle.active .site-icon{transform:rotate(180deg)}.settings-dropdown{position:absolute;top:calc(100% + .7rem);left:0;min-width:230px;padding:.85rem;border-radius:var(--radius-md);--glass-fill: rgba(255, 255, 255, .18);--glass-highlight: rgba(255, 255, 255, .36);--glass-edge: rgba(255, 255, 255, .42);--glass-accent: rgba(var(--dynamic-primary-rgb), .1);border-color:rgba(var(--dynamic-primary-rgb),.16);box-shadow:0 24px 70px #00000029,inset 0 1px #ffffff52;backdrop-filter:blur(18px) saturate(1.18);-webkit-backdrop-filter:blur(18px) saturate(1.18);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-.45rem) scale(.98);transform-origin:top left;transition:opacity .28s var(--motion-soft),visibility .28s,transform .28s var(--motion-soft),var(--transition-theme-colors)}[data-theme=dark] .settings-dropdown{--glass-fill: rgba(24, 24, 28, .34);--glass-highlight: rgba(255, 255, 255, .14);--glass-edge: rgba(255, 255, 255, .16);--glass-accent: rgba(var(--dynamic-primary-rgb), .22);box-shadow:0 24px 72px #0000006b,inset 0 1px #ffffff1f}.settings-dropdown.show{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}.settings-dropdown__content{display:grid}.setting-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid rgba(var(--dynamic-primary-rgb),.14)}.setting-item:last-child{border-bottom:0}.setting-info{display:flex;align-items:center;gap:.55rem;min-width:0}.setting-icon,.setting-label{color:var(--text-muted)}.setting-label{color:var(--text-color);font-size:.9rem;font-weight:600;line-height:1.28}.toggle-control{position:relative;display:inline-flex;width:44px;height:24px}.toggle-control input{position:absolute;opacity:0}.toggle-control span{position:absolute;inset:0;border-radius:999px;background:var(--border-color);transition:background .25s var(--motion-soft)}.toggle-control span:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:999px;background:#fff;box-shadow:0 2px 6px #0003;transition:transform .25s var(--motion-soft)}.toggle-control input:checked+span{background:var(--dynamic-primary)}.toggle-control input:checked+span:after{transform:translate(20px)}.preloader{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;--loader-progress: 0;background:radial-gradient(circle at 50% 48%,rgba(var(--dynamic-primary-rgb),.16),transparent 18rem),radial-gradient(circle at 50% 52%,rgba(var(--dynamic-accent-rgb),.08),transparent 24rem),rgba(var(--card-bg-rgb),.9);backdrop-filter:blur(18px) saturate(1.15);-webkit-backdrop-filter:blur(18px) saturate(1.15);transition:opacity .5s ease,visibility .5s ease}.preloader.fade-out{opacity:0;visibility:hidden}.loader{display:grid;place-items:center}.loader-svg{overflow:visible;filter:drop-shadow(0 22px 52px rgba(var(--dynamic-primary-rgb),.24))}.loader-web{transform-origin:center;animation:webFloat 3.2s ease-in-out infinite}.tree-line-track{fill:none;stroke:rgba(var(--dynamic-primary-rgb),.13);stroke-linecap:round;stroke-linejoin:round}.track-primary{stroke-width:3.8;opacity:.9}.track-secondary{stroke-width:2.6;opacity:.72}.track-mesh{stroke-width:1.8;opacity:.5}.tree-line-progress{--line-progress: 0;fill:none;stroke:url(#loaderGradient);stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--line-progress));opacity:.96;transition:stroke-dashoffset .08s linear,opacity .25s ease}.line-primary{stroke-width:5}.line-primary-ring{stroke-width:4}.line-secondary{stroke-width:3}.line-secondary-ring{stroke-width:2.4;opacity:.9}.line-mesh{stroke-width:1.8;opacity:.78}.tree-node{fill:url(#loaderNodeGradient);opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.35);filter:drop-shadow(0 0 0 rgba(var(--dynamic-primary-rgb),0));transition:opacity .24s ease,transform .34s cubic-bezier(.16,1,.3,1),filter .34s ease}.tree-node.is-visible{opacity:1;transform:scale(1);filter:drop-shadow(0 0 14px rgba(var(--dynamic-primary-rgb),.46))}.node-center.is-visible{filter:drop-shadow(0 0 18px rgba(var(--dynamic-primary-rgb),.62)) drop-shadow(0 0 32px rgba(var(--dynamic-accent-rgb),.28));animation:centerNodePulse 1.55s ease-in-out infinite}.node-primary.is-visible{filter:drop-shadow(0 0 16px rgba(var(--dynamic-primary-rgb),.54))}.node-secondary.is-visible{filter:drop-shadow(0 0 10px rgba(var(--dynamic-primary-rgb),.36))}.preloader.tree-complete .tree-line-progress{opacity:1;filter:drop-shadow(0 0 7px rgba(var(--dynamic-primary-rgb),.42))}.preloader.tree-complete .node-center{filter:drop-shadow(0 0 22px rgba(var(--dynamic-primary-rgb),.72)) drop-shadow(0 0 42px rgba(var(--dynamic-accent-rgb),.32))}.preloader.tree-complete .node-primary{filter:drop-shadow(0 0 18px rgba(var(--dynamic-primary-rgb),.58))}.preloader.tree-complete .node-secondary{filter:drop-shadow(0 0 12px rgba(var(--dynamic-primary-rgb),.4))}@keyframes centerNodePulse{0%,to{transform:scale(.96);opacity:.84}50%{transform:scale(1.12);opacity:1}}@keyframes webFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.008)}}@media(prefers-reduced-motion:reduce){.loader-web,.node-center.is-visible{animation:none}.preloader,.tree-line-progress,.tree-node{transition:none}}.hero-section{display:grid;min-height:100vh;padding:0;place-items:center;overflow:hidden}.hero-container{min-height:100vh;display:grid;place-items:center;position:relative}.hero-content{text-align:center}.hero-title{--fill-progress: 0;--fill-base: var(--text-color);--fill-active: var(--dynamic-primary);display:block;overflow:visible;margin:0;padding:.03em 0 .22em;font-size:clamp(2.8rem,8.6vw,5.8rem);font-weight:800;line-height:1.18;letter-spacing:0}.hero-tagline{min-height:2rem;margin:.8rem auto 2.4rem;color:var(--text-muted);font-size:clamp(1.05rem,2vw,1.35rem)}.scroll-fill-text{--fill-progress: 0;--fill-base: var(--text-color);--fill-active: var(--dynamic-primary);--fill-offset: .02;--fill-edge: max(0%, calc((var(--fill-progress) - var(--fill-offset)) * 135%));--fill-feather: min(4%, var(--fill-edge));--fill-solid-end: max(0%, calc(var(--fill-edge) - var(--fill-feather)));color:transparent;-webkit-text-fill-color:transparent;background-image:linear-gradient(90deg,var(--fill-active) 0%,var(--fill-active) var(--fill-solid-end),var(--fill-base) calc(var(--fill-edge) + var(--fill-feather)),var(--fill-base) 100%);background-clip:text;-webkit-background-clip:text}.section-heading .scroll-fill-text{display:inline-block;padding-bottom:.08em;line-height:1.2}.typewriter-text{display:inline-block;color:transparent;-webkit-text-fill-color:transparent;background-image:linear-gradient(90deg,var(--text-muted) 0%,var(--dynamic-primary) 22%,var(--text-muted) 60%,var(--text-muted) 100%);background-repeat:no-repeat;background-size:100% 100%;background-clip:text;-webkit-background-clip:text;clip-path:inset(0 50% 0 50%)}body.app-loaded .typewriter-text{animation:textReveal 1.35s .12s var(--motion-soft) forwards}@keyframes textReveal{to{clip-path:inset(0 0 0 0)}}.hero-social,.social-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1.4rem;margin-bottom:2.4rem}.social-link{color:var(--text-muted);transition:color .25s var(--motion-soft),transform .25s var(--motion-soft)}.social-link:hover{color:var(--dynamic-primary);transform:translateY(-3px)}.scroll-indicator{position:absolute;bottom:1.5rem;left:50%;padding:.5rem;border:0;background:transparent;color:var(--text-muted);transform:translate(-50%);animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-10px)}60%{transform:translate(-50%) translateY(-5px)}}.about-grid,.art-grid,.tech-projects-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.9fr);gap:clamp(2rem,5vw,4rem);align-items:center}.about-grid{grid-template-columns:minmax(280px,.9fr) minmax(0,1.4fr)}.creations-section .section-container{width:min(var(--art-content-width),calc(100% - 15rem))}.art-grid{grid-template-columns:minmax(520px,1.35fr) minmax(340px,.75fr)}.about-copy p,.art-copy p,.project-description-content p,.project-description-content li,.skill-card p,.contact-lead{color:var(--text-muted)}.about-copy p,.art-copy p{margin:0 0 1.35rem;font-size:1.02rem}.about-copy .emphasis{color:var(--text-color);font-weight:800}.about-media{display:grid;justify-items:center;gap:1.3rem}.about-photo-frame,.photo-showcase img{border-radius:var(--radius-md);box-shadow:0 18px 48px var(--shadow-color)}.about-photo-frame{width:min(100%,clamp(220px,23vw,320px));aspect-ratio:683 / 1024;margin:0;overflow:hidden}.about-photo-frame img{width:100%;height:100%;object-fit:cover}.tab-content{display:grid;position:relative}.tab-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:0 auto 2rem;max-width:760px}.tab-button{width:100%;min-height:3rem}.tab-button.is-active{color:#fff;background:linear-gradient(135deg,var(--dynamic-primary),var(--dynamic-secondary))}.tab-panel{grid-area:1 / 1;pointer-events:none}.tab-panel.is-active{pointer-events:auto}.tab-panel:not(.is-active){visibility:hidden}.tab-panel:not(.is-active) .tab-panel-inner{transition:none;transform:translate3d(0,12px,0)}.tab-panel-inner{transform:translate3d(0,12px,0);transition:transform .34s var(--motion-soft);will-change:transform}.tab-panel.is-active .tab-panel-inner{transform:translateZ(0)}.art-copy h3,.tech-card-body h3,.feature-grid h3,.skill-card h3{margin:0 0 .65rem;font-size:1.28rem}.art-copy .lead{margin-bottom:1.2rem}.converge-panel{--converge-x: 0px;transform:translate3d(var(--converge-x),0,0);will-change:transform}.photo-showcase{justify-self:end;width:min(100%,var(--photo-grid-max-width))}.photo-showcase img{width:100%;max-width:var(--photo-grid-max-width);height:auto;aspect-ratio:auto;object-fit:contain}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:stretch;margin-top:2rem}.feature-grid>.glass-card{height:100%}.glass-card--feature .glass-card__content{display:flex;align-items:center;gap:1.1rem;height:100%}.feature-icon{flex:0 0 72px;display:grid;place-items:center;color:var(--dynamic-primary)}.feature-grid>.creation-feature{min-height:clamp(260px,22vw,340px)}.feature-grid>.creation-feature--music,.feature-grid>.creation-feature--writing{min-height:clamp(150px,13vw,190px)}.creation-feature .glass-card__content{display:block;overflow:hidden;padding:0}.creation-stage{--feature-progress: 0;position:relative;height:100%;min-height:clamp(260px,22vw,340px);padding:clamp(1.15rem,2.4vw,1.7rem);opacity:0;transform:translate3d(0,18px,0);transition:opacity .65s var(--motion-soft),transform .65s var(--motion-soft)}.creation-stage.is-inview{opacity:1;transform:translateZ(0)}.creation-stage:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 22% 64%,rgba(var(--dynamic-primary-rgb),.16),transparent 13rem),linear-gradient(115deg,rgba(var(--dynamic-primary-rgb),.12),transparent 44%);opacity:0;transition:var(--transition-theme-colors),opacity .65s var(--motion-soft)}.creation-stage.is-inview:before{opacity:1}.creation-feature-copy,.music-visual,.creation-feature-actions,.manuscript-stack,.writing-halo{position:relative;z-index:1}.creation-feature-copy{align-self:end}.feature-kicker{display:block;margin-bottom:.35rem;color:var(--dynamic-primary);font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.creation-feature h3{margin:0;font-size:clamp(1.55rem,2.8vw,2.2rem);line-height:1.1}.creation-feature-actions{display:flex;align-items:center;justify-content:flex-start;gap:.55rem}.creation-feature .feature-link.ui-button{width:fit-content;min-height:2.2rem;padding:.46rem .74rem}.music-stage{display:grid;grid-template-columns:minmax(6.2rem,.34fr) minmax(0,1fr);grid-template-rows:auto auto;grid-template-areas:"visual copy" "visual actions";min-height:clamp(150px,13vw,190px);align-content:center;align-items:center;gap:.85rem 1.25rem;cursor:pointer}.music-stage:after{content:"";grid-area:visual;z-index:1;width:2px;height:100%;justify-self:end;background:linear-gradient(to bottom,transparent,var(--dynamic-primary),transparent);transform:scaleY(var(--feature-divider-progress, var(--feature-progress)));transform-origin:top;opacity:.72;transition:background 1.2s var(--motion-soft),opacity .65s var(--motion-soft)}.music-visual{grid-area:visual;position:relative;display:grid;width:clamp(5.8rem,10vw,7.4rem);min-height:0;align-self:center;place-items:center;justify-self:center}.music-glyph{position:relative;z-index:2;width:100%;overflow:visible;filter:drop-shadow(0 18px 34px rgba(var(--dynamic-primary-rgb),.18));transition:filter 1.2s var(--motion-soft)}.music-gradient-stop{transition:stop-color 1.2s var(--motion-soft)}.music-gradient-stop--start{stop-color:var(--dynamic-primary)}.music-gradient-stop--end{stop-color:var(--dynamic-accent)}.music-symbol-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--feature-draw-progress, var(--feature-progress)));transition:stroke-dashoffset .14s linear,stroke 1.2s var(--motion-soft),fill 1.2s var(--motion-soft),opacity .4s var(--motion-soft)}.music-symbol-line--play{transform-box:fill-box;transform-origin:center}.music-symbol-line--play{transition:opacity .34s var(--motion-soft),stroke-dashoffset .34s var(--motion-soft),transform .34s var(--motion-soft),stroke 1.2s var(--motion-soft)}.music-stage.is-playing .music-symbol-line--play{opacity:0;stroke-dashoffset:1;transform:scale(.82)}.music-status-row{display:flex;align-items:center;gap:.58rem}.music-status-row .feature-kicker{margin-bottom:0}.music-equalizer{position:relative;display:flex;align-items:end;flex:0 0 1.45em;gap:.12em;width:1.45em;height:1.08em;opacity:var(--feature-progress)}.music-equalizer span{width:.16em;height:100%;border-radius:999px;background:linear-gradient(to top,var(--dynamic-primary),var(--dynamic-secondary));transform:scaleY(.24);transform-origin:bottom;animation:equalizerPulse 1.15s ease-in-out infinite;animation-play-state:paused}.music-equalizer span:nth-child(2){animation-delay:-.14s}.music-equalizer span:nth-child(3){animation-delay:-.28s}.music-equalizer span:nth-child(4){animation-delay:-.42s}.music-equalizer span:nth-child(5){animation-delay:-.56s}.music-equalizer span:nth-child(6){animation-delay:-.7s}.music-equalizer span:nth-child(7){animation-delay:-.84s}.music-stage.is-playing .music-equalizer span{animation-play-state:running}@keyframes equalizerPulse{0%,to{transform:scaleY(.24)}50%{transform:scaleY(var(--bar-level))}}.music-stage .creation-feature-copy{grid-area:copy;align-self:end}.music-stage .creation-feature-copy h3{margin-bottom:.36rem}.music-stage .music-status-row .feature-kicker{margin-top:.4rem}.music-play-button{position:absolute;inset:0;z-index:2;width:100%;height:100%;padding:0;border:0;border-radius:.7rem;background:transparent;transition:transform .28s var(--motion-soft),box-shadow .28s var(--motion-soft),background-color .28s var(--motion-soft)}.music-play-button:hover,.music-play-button:focus-visible{transform:translateY(-2px) scale(1.03);background:transparent;box-shadow:none}.music-play-button.is-playing{background:transparent}.music-stage .creation-feature-actions{grid-area:actions;align-self:start;justify-self:start;cursor:default}.music-stage .feature-link{cursor:pointer}.writing-stage{display:grid;grid-template-columns:minmax(0,.75fr) minmax(230px,1fr);grid-template-rows:auto;grid-template-areas:"copy manuscript";min-height:clamp(150px,13vw,190px);align-content:start;gap:.85rem 1.4rem;align-items:start;outline:none}.writing-stage:focus-visible{outline:2px solid var(--dynamic-primary);outline-offset:-.45rem}.writing-stage .creation-feature-copy{grid-area:copy;align-self:start;z-index:2}.scramble-text{min-height:2.4em;transition:color .3s var(--motion-soft)}.writing-stage .scramble-text{min-height:1.1em}.scramble-char{display:inline-block;text-align:center}.scramble-char--space{width:.36em}.writing-stage:hover .scramble-text,.writing-stage:focus-within .scramble-text{color:var(--dynamic-primary)}.writing-halo{position:absolute;top:clamp(4.4rem,7vw,5.4rem);left:clamp(1rem,2.8vw,1.75rem);z-index:1;width:clamp(10rem,22vw,15.5rem);min-height:clamp(6.6rem,11vw,8.5rem);opacity:.64;pointer-events:none}.writing-halo span{position:absolute;border:1px solid rgba(var(--dynamic-primary-rgb),.34);border-radius:999px;opacity:0;transform:scale(.82) rotate(-8deg);transition:opacity .65s var(--motion-soft),transform .65s var(--motion-soft)}.writing-halo span:nth-child(1){inset:8px auto auto 0;width:6.5rem;height:2rem}.writing-halo span:nth-child(2){inset:2.8rem auto auto 1.1rem;width:8.2rem;height:2.15rem;transition-delay:.08s}.writing-halo span:nth-child(3){inset:5.4rem auto auto .35rem;width:5.3rem;height:1.7rem;transition-delay:.16s}[data-theme=dark] .writing-halo{opacity:.82}[data-theme=dark] .writing-halo span{border-color:rgba(var(--dynamic-primary-rgb),.56)}.writing-stage.is-inview .writing-halo span{opacity:.8;transform:scale(1) rotate(-8deg)}.manuscript-stack{grid-area:manuscript;display:grid;gap:.58rem;padding:.45rem 0 .45rem 1.1rem;border-left:1px solid rgba(var(--dynamic-primary-rgb),.28);transition:border-color 1.2s var(--motion-soft)}.manuscript-stack:before{content:"";position:absolute;top:.2rem;bottom:.2rem;left:-1px;width:2px;background:linear-gradient(to bottom,transparent,var(--dynamic-primary),transparent);transform:scaleY(var(--feature-divider-progress, var(--feature-progress)));transform-origin:top}.manuscript-stack a{position:relative;margin:0;color:var(--text-muted);font-size:clamp(.98rem,1.55vw,1.12rem);line-height:1.45;opacity:0;text-decoration:none;transform:translate3d(0,12px,0) rotateX(12deg);transform-origin:top;transition:opacity .52s var(--motion-soft),transform .52s var(--motion-soft),color .6s var(--motion-soft)}.manuscript-stack a:nth-child(2){transition-delay:.08s}.manuscript-stack a:nth-child(3){transition-delay:.16s}.manuscript-stack a:after{content:"";position:absolute;right:0;bottom:-.28rem;left:0;height:1px;background:linear-gradient(90deg,rgba(var(--dynamic-primary-rgb),.28),transparent);transform:scaleX(0);transform-origin:left;transition:transform .52s var(--motion-soft)}.writing-stage.is-inview .manuscript-stack a{opacity:1;transform:translateZ(0) rotateX(0)}.writing-stage.is-inview .manuscript-stack a:after{transform:scaleX(1)}.manuscript-stack a:hover,.manuscript-stack a:focus-visible,.manuscript-stack a.is-active{color:var(--dynamic-primary)}.manuscript-stack a.is-active{transform:translate3d(.28rem,0,0) rotateX(0)}body.canvas-animations-disabled .creation-stage,body.animations-paused .creation-stage{opacity:1;transform:none;transition:none}body.canvas-animations-disabled .creation-stage:before,body.animations-paused .creation-stage:before{opacity:1}body.canvas-animations-disabled .music-symbol-line,body.animations-paused .music-symbol-line{stroke-dashoffset:0;transition:none}body.canvas-animations-disabled .manuscript-stack a,body.animations-paused .manuscript-stack a,body.canvas-animations-disabled .writing-halo span,body.animations-paused .writing-halo span{opacity:1;transform:none;transition:none}body.canvas-animations-disabled .music-equalizer span,body.animations-paused .music-equalizer span{animation:none;transform:scaleY(var(--bar-level))}.tech-projects-layout{grid-template-columns:minmax(280px,.86fr) minmax(0,1.4fr);align-items:start}.project-description-panel{position:sticky;top:7rem;border-radius:var(--radius-md)}.project-description-panel .liquid-glass__content{padding:clamp(1rem,2vw,1.4rem)}.project-description-panel h3{margin:0;font-size:1.45rem}.project-description-panel hr{border:0;border-top:1px solid var(--border-color);margin:1rem 0}.project-description-content ul{padding-left:1.2rem}.mobile-back-btn{display:none;align-items:center;gap:.45rem;margin-bottom:.9rem;border:0;background:transparent;color:var(--dynamic-primary);font-weight:700}.project-cards-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.glass-card--project .glass-card__content{padding:clamp(.76rem,1.35vw,.92rem)}.tech-card-image{display:flex;min-height:72px;margin:calc(-1*clamp(.76rem,1.35vw,.92rem)) calc(-1*clamp(.76rem,1.35vw,.92rem)) .7rem;padding:.7rem .9rem;align-items:center;justify-content:center;gap:.55rem;color:#fff;background:linear-gradient(135deg,var(--dynamic-primary),var(--dynamic-accent))}.tech-card-image h3{margin:0;font-size:.95rem;font-weight:800;line-height:1.1;text-align:center;white-space:nowrap}.tech-card-body{display:grid;gap:.5rem}.tech-card-body p{margin:0;color:var(--text-muted);font-size:.9rem;line-height:1.45}.card-actions{justify-content:flex-start;gap:.3rem}.skills-section{padding-bottom:clamp(2.5rem,5vw,4.5rem)}.skills-diagram-container{--skill-cell-size: 300px;--skill-card-inset: 12px;--skill-card-size: calc(var(--skill-cell-size) - (var(--skill-card-inset) * 2));--skill-grid-width: 1500px;--skill-grid-half: 750px;--skill-grid-height: 900px;--skill-center-height: 900px;--skill-pin-y: 0px;--skill-cell-negative: -300px;--skill-left-upper-x: 0px;--skill-right-upper-x: 0px;--skill-left-lower-x: 0px;--skill-right-lower-x: 0px;position:relative;width:100%;height:var(--skill-grid-height);margin:0;overflow:visible}.skills-diagram{position:relative;z-index:1;display:grid;width:var(--skill-grid-width);height:var(--skill-grid-height);margin-left:calc(50% - var(--skill-grid-half));grid-template-columns:repeat(5,var(--skill-cell-size));grid-template-rows:repeat(3,var(--skill-cell-size));grid-template-areas:". . center . ." "tech . center . language" "professional . center . creative"}.skills-diagram:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,rgba(var(--dynamic-primary-rgb),.16) 1px,transparent 1px);background-size:var(--skill-cell-size) var(--skill-cell-size);z-index:0}.skills-diagram:after{content:"";position:absolute;top:var(--skill-cell-size);right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgba(var(--dynamic-primary-rgb),.16) 1px,transparent 1px);background-size:var(--skill-cell-size) var(--skill-cell-size);z-index:0}.skills-grid-divider{position:absolute;top:0;bottom:0;z-index:1;width:2px;pointer-events:none;background:linear-gradient(to bottom,transparent,var(--dynamic-primary),transparent);opacity:.58;transform:scaleY(var(--skill-divider-progress, 0));transform-origin:top;transition:background 1.2s var(--motion-soft),opacity .65s var(--motion-soft)}.skills-grid-divider--start{left:calc(var(--skill-cell-size) * 2)}.skills-grid-divider--end{left:calc(var(--skill-cell-size) * 3)}.center-card-wrapper{grid-area:center;position:relative;z-index:10;width:var(--skill-cell-size);height:var(--skill-center-height);pointer-events:none}.center-sticky-frame{position:absolute;top:var(--skill-card-inset);left:var(--skill-card-inset);width:var(--skill-card-size);height:var(--skill-card-size);transform:translate3d(0,var(--skill-pin-y),0);pointer-events:auto;will-change:transform}.center-skill-card{text-align:center}.satellite-cards-container{display:contents}.satellite-positioner{--skill-card-x: 0px;position:relative;z-index:2;width:var(--skill-card-size);height:var(--skill-card-size);margin:var(--skill-card-inset);transform:translate3d(var(--skill-card-x),0,0);will-change:transform}.satellite-positioner--left-upper{--skill-card-x: var(--skill-left-upper-x);grid-area:tech}.satellite-positioner--right-upper{--skill-card-x: var(--skill-right-upper-x);grid-area:language}.satellite-positioner--left-lower{--skill-card-x: var(--skill-left-lower-x);grid-area:professional}.satellite-positioner--right-lower{--skill-card-x: var(--skill-right-lower-x);grid-area:creative}.satellite-card-wrapper{width:100%;height:100%}.skill-card{width:var(--skill-card-size);height:var(--skill-card-size);min-height:0}.skill-card:hover{transform:none}.skill-card .glass-card__content{display:grid;align-content:center;justify-items:center;gap:.65rem;text-align:center}.skill-icon{color:var(--dynamic-primary)}.skill-icon--success{color:#1f9d63}.skill-icon--danger{color:#ef4444}.skill-icon--info{color:#0ea5e9}.skill-category h4{margin:0 0 .35rem;color:var(--text-muted);font-size:.92rem}.skill-category p{margin:0;font-size:.9rem}@media(prefers-reduced-motion:reduce){.skills-diagram-container{--skill-pin-y: 0px;--skill-left-upper-x: var(--skill-cell-size);--skill-right-upper-x: var(--skill-cell-negative);--skill-left-lower-x: var(--skill-cell-size);--skill-right-lower-x: var(--skill-cell-negative)}}.contact-section{min-height:100vh;display:grid;place-items:center;padding-block:0}.contact-container{display:grid;min-height:100vh;place-items:center;padding-block:var(--section-pad)}.contact-content{max-width:820px;text-align:center}.contact-title{display:flex;justify-content:center;gap:.45rem;flex-wrap:wrap}.contact-title h2{margin:0 0 1rem;font-size:clamp(2.4rem,6vw,4rem);font-weight:300;line-height:1}.color-animate{animation:colorChange 10s linear infinite}@keyframes colorChange{0%,to{color:var(--dynamic-primary)}50%{color:var(--dynamic-accent)}}.contact-lead{margin:0 auto 2.2rem;font-size:clamp(1.05rem,2vw,1.25rem)}.contact-actions{margin-bottom:1.4rem}.copy-success{width:max-content;max-width:min(90vw,420px);margin:0 auto 1.4rem;padding:.55rem .95rem;border-radius:999px;color:var(--text-color)}.copy-success>span{display:inline-flex;align-items:center;gap:.45rem}.copy-success__icon{color:var(--dynamic-primary)}.copy-success__icon--error,.copy-success[data-status=error] .copy-success__icon--success{display:none}.copy-success[data-status=error] .copy-success__icon--error{display:inline-block}.copy-success[hidden]{display:none}.footer{position:absolute;right:0;bottom:0;left:0;min-height:var(--footer-height);display:grid;align-items:center;padding-block:0}.footer-inner{display:flex;justify-content:space-between;gap:1rem;color:var(--text-muted);font-size:.95rem}.footer p{margin:0}.severe-lag-warning{position:fixed;left:50%;bottom:20px;z-index:10001;max-width:min(92vw,620px);padding:.9rem 1.2rem;border-radius:var(--radius-md);transform:translate(-50%)}.severe-lag-warning[hidden]{display:none}.severe-lag-warning.show{display:block;animation:fadeUp .35s var(--motion-soft)}.canvas-background,#particle-network-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}.canvas-background{z-index:-10;opacity:.75}#particle-network-canvas{z-index:-9;opacity:.7}body.canvas-animations-disabled .canvas-background,body.canvas-animations-disabled #particle-network-canvas{display:none!important}@media(max-width:900px){:root{--section-pad: 4.5rem}.global-controls{top:clamp(.75rem,4vw,1.25rem);left:clamp(.75rem,4vw,1.25rem);gap:.6rem}.settings-dropdown{position:fixed;top:calc(clamp(.75rem,4vw,1.25rem) + 3.7rem);right:clamp(.75rem,4vw,1.25rem);left:clamp(.75rem,4vw,1.25rem);width:auto;min-width:0;max-height:calc(100vh - (clamp(.75rem,4vw,1.25rem) + 4.45rem));max-height:calc(100dvh - (clamp(.75rem,4vw,1.25rem) + 4.45rem));overflow-y:auto}.about-grid,.art-grid,.tech-projects-layout,.feature-grid{grid-template-columns:1fr}.about-media{position:relative;z-index:2}.about-copy{position:relative;z-index:1}.converge-panel{--converge-x: 0px;transform:none}.project-description-panel{position:relative;top:0}.project-cards-panel{grid-template-columns:1fr}.mobile-back-btn{display:inline-flex}.tech-projects-layout.is-detail .project-cards-panel{display:none}.tech-projects-layout:not(.is-detail) .project-description-panel{display:none}.skills-diagram-container{--skill-cell-size: 220px;--skill-card-inset: 8px;--skill-grid-width: 1100px;--skill-grid-half: 550px;--skill-grid-height: 660px;--skill-center-height: 660px;--skill-cell-negative: -220px}.satellite-card{min-height:0}.satellite-card .glass-card__content{gap:.38rem;padding:.72rem}.center-skill-card .glass-card__content{gap:.42rem;padding:.85rem}.satellite-card .skill-icon .site-icon--lg{font-size:1.25em}.center-skill-card .skill-icon .site-icon--xl{font-size:1.65em}.center-skill-card h3,.satellite-card h3{margin-bottom:.15rem;font-size:.86rem;line-height:1.12}.center-skill-card h4,.satellite-card .skill-category h4{margin-bottom:.18rem;font-size:.68rem;line-height:1.12}.center-skill-card p,.satellite-card .skill-category p{font-size:.68rem;line-height:1.25}.satellite-card .badge-list{justify-content:center;gap:.22rem}.satellite-card .ui-badge{min-height:auto;padding:.22rem .34rem;border-radius:6px;font-size:.58rem;line-height:1.1;text-align:center;white-space:normal}.center-skill-card .ui-badge{min-height:auto;padding:.24rem .38rem;border-radius:6px;font-size:.62rem;white-space:normal}}@media(max-width:620px){.section-container{width:min(100% - 1.2rem,var(--content-width))}.creations-section .section-container{width:min(100% - 1.2rem,var(--art-content-width))}.page-section{padding-block:3.8rem}.skills-section{padding-bottom:2.6rem}.skills-diagram-container{--skill-cell-size: clamp(218px, 70vw, 260px);--skill-card-inset: 8px;--skill-card-size: calc(var(--skill-cell-size) - (var(--skill-card-inset) * 2));--skill-grid-width: calc(var(--skill-cell-size) * 3);--skill-grid-half: calc(var(--skill-grid-width) / 2);--skill-grid-height: calc(var(--skill-cell-size) * 5);--skill-center-height: var(--skill-cell-size);--skill-cell-negative: calc(var(--skill-cell-size) * -1)}.skills-diagram{grid-template-columns:repeat(3,var(--skill-cell-size));grid-template-rows:repeat(5,var(--skill-cell-size));grid-template-areas:"center . ." "tech . ." ". . language" "professional . ." ". . creative"}.skills-grid-divider--start{left:var(--skill-cell-size)}.skills-grid-divider--end{left:calc(var(--skill-cell-size) * 2)}.center-card-wrapper{width:var(--skill-cell-size);height:var(--skill-cell-size)}.center-sticky-frame{--skill-card-x: 0px;position:relative;top:auto;left:auto;margin:var(--skill-card-inset);transform:translate3d(var(--skill-card-x),0,0)}.hero-cta,.inline-actions{align-items:stretch;flex-direction:column}.ui-button:not(.ui-button--icon){width:100%}.global-controls .ui-button{width:auto}.global-controls .ui-button--icon,.contact-actions .ui-button--icon{flex:0 0 3rem;width:3rem;height:3rem}.contact-actions{align-items:center;flex-direction:row;justify-content:center}.contact-actions .ui-button:not(.ui-button--icon){width:auto}.tab-list{grid-template-columns:1fr}.glass-card--feature .glass-card__content{align-items:flex-start}.music-stage,.writing-stage{grid-template-columns:1fr}.music-stage{grid-template-areas:"copy" "visual" "actions"}.music-stage:after{display:none}.music-visual{width:clamp(5.3rem,28vw,6.8rem);min-height:0}.music-glyph{width:100%}.writing-stage{grid-template-areas:"copy" "manuscript"}.writing-halo{top:4.6rem;right:auto;bottom:auto;left:1rem;width:10rem;min-height:6.4rem;opacity:.46}.footer-inner{flex-direction:column;text-align:center}}
