:root{--neon-blue:#fbfcfc;--accent:#d9a76a;--accent-ink:#a06c23;--accent-deep:#7f5103;--accent-on-dark:var(--accent);--accent-bright:color-mix(in srgb, var(--accent) 62%, #fff);--accent-line:color-mix(in srgb, var(--accent) 55%, transparent);--accent-wash:color-mix(in srgb, var(--accent) 13%, transparent);--accent-glow:color-mix(in srgb, var(--accent) 45%, transparent);--accent-0:color-mix(in srgb, var(--accent) 0%, transparent);--neon-pink:var(--accent);--cyber-bg:#0a0a0f66;--about-left-strip:clamp(80px, 12vw, 180px);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-out-quint:cubic-bezier(.22, 1, .36, 1);--dur-fast:.18s;--dur:.32s;--dur-slow:.64s}.ui-layer,.site-global-navbar:not(.is-light-theme),.side-logo-container,.scroll-hint-arrow,.gallery-top-hint-arrow,.scene-perf-hud,.modal-backdrop{--accent:var(--accent-on-dark)}::selection{background:var(--accent);color:#030303}::selection{background:var(--accent);color:#030303}*{box-sizing:border-box;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{overscroll-behavior:none;overscroll-behavior-y:none;color:#fff;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background:#fff;font-family:Orbitron,sans-serif;overflow:hidden}.scroll-hint-arrow,.about-top-hint-arrow,.gallery-top-hint-arrow,.hint-arrow,button,.tech-pill,.brand-badge,.tag,.project-card,.publisher-card,.side-bar-btn,.fixed-next-scene-btn{touch-action:manipulation;-webkit-touch-callout:none!important;-webkit-user-select:none!important;user-select:none!important;-webkit-tap-highlight-color:transparent!important}#root{overscroll-behavior:none;overscroll-behavior-y:none;width:100vw;height:100vh}.hero-container{background:#fff;width:100%;height:100%;position:relative}.background-iframe{z-index:1;border:none;width:100vw;height:100vh;position:fixed;top:0;left:0}.white-frame-overlay{z-index:2;pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0}.canvas-blur-overlay{z-index:3;pointer-events:none;-webkit-backdrop-filter:blur(7px)saturate(110%);backface-visibility:hidden;will-change:transform, opacity;background:#0000001f;width:calc(100vw + 200px);height:100vh;position:fixed;top:0;left:-200px;transform:translateZ(0);-webkit-mask-image:linear-gradient(90deg,#0000 0,#0006 40px,#000 160px 100%);mask-image:linear-gradient(90deg,#0000 0,#0006 40px,#000 160px 100%)}.frame-bar{background:#fff;position:absolute}.frame-bar.bar-top{top:0;left:0;right:0}.frame-bar.bar-bottom{bottom:0;left:0;right:0}.frame-bar.bar-left{top:0;bottom:0;left:0}.frame-bar.bar-right{top:0;bottom:0;right:0}.ui-layer{z-index:10;pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0;overflow:hidden}.logo-container{pointer-events:none;will-change:opacity, transform;flex-direction:column;justify-content:center;align-items:center;transition:opacity .1s ease-out,transform .1s ease-out;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.logo-backdrop{filter:blur(25px);z-index:-1;pointer-events:none;background:radial-gradient(circle,#000000e6 0%,#00000080 40%,#0000 70%);width:140%;height:140%;animation:6s ease-in-out infinite backdropBreathe;position:absolute}.logo{pointer-events:none;filter:drop-shadow(0 0 120px #0009);width:40vw;min-width:250px;max-width:600px;height:auto;transition:filter var(--dur-slow) var(--ease-out-expo);animation:6s ease-in-out infinite float}@keyframes backdropBreathe{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes float{0%{transform:translateY(0)scale(1)}50%{transform:translateY(-20px)scale(1.02)}to{transform:translateY(0)scale(1)}}.cyber-btn{pointer-events:auto;background:var(--cyber-bg);border:1px solid var(--neon-blue);color:var(--neon-blue);text-transform:uppercase;letter-spacing:2px;cursor:pointer;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);clip-path:polygon(15px 0,100% 0,100% calc(100% - 15px),calc(100% - 15px) 100%,0 100%,0 15px);outline:none;padding:15px 30px;font-family:Orbitron,sans-serif;font-size:1.2rem;font-weight:700;transition:all .2s;position:absolute;box-shadow:0 0 10px #00f3ff33}.cyber-btn:before{content:"";background:linear-gradient(45deg, transparent 5%, var(--neon-blue) 5%);z-index:-1;opacity:0;width:100%;height:100%;transition:opacity .3s;position:absolute;top:0;left:0}.cyber-btn:after{content:"";border-right:2px solid var(--neon-pink);border-bottom:2px solid var(--neon-pink);opacity:0;width:30px;height:30px;transition:opacity .3s;position:absolute;bottom:-2px;right:-2px}.btn-tl{top:40px;left:40px}.btn-tr{top:40px;right:40px}.btn-bl{bottom:40px;left:40px}.btn-br{bottom:40px;right:40px}@media (width<=768px){.cyber-btn{padding:10px 20px;font-size:.9rem}.btn-tl{top:20px;left:20px}.btn-tr{top:20px;right:20px}.btn-bl{bottom:20px;left:20px}.btn-br{bottom:20px;right:20px}}.cyber-btn:hover{background:var(--neon-blue);color:#000;box-shadow:0 0 20px var(--neon-blue), 0 0 40px var(--neon-blue);transform:scale(1.05)}.cyber-btn:hover:after{opacity:1}.cyber-btn:active{box-shadow:0 0 15px var(--neon-pink), 0 0 30px var(--neon-pink);border-color:var(--neon-pink);background:var(--neon-pink);color:#fff;transform:scale(.95)}@keyframes cyberPulse{0%{box-shadow:0 0 15px var(--neon-blue)}50%{box-shadow:0 0 40px var(--neon-blue), inset 0 0 15px var(--neon-blue)}to{box-shadow:0 0 15px var(--neon-blue)}}.cyber-btn:hover{animation:1.5s infinite alternate cyberPulse}.scene-tag{opacity:.8;color:var(--neon-pink);font-size:.75em}.modal-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;background:#000000bf;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.3s fadeIn;display:flex;position:fixed;top:0;left:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.cyber-modal{border:1px solid var(--neon-blue);color:#fff;clip-path:polygon(20px 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%,0 20px);background:#0c0c14eb;width:90%;max-width:650px;padding:40px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;position:relative;box-shadow:0 0 30px #00f3ff40,inset 0 0 15px #00f3ff1a}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-close-btn{border:1px solid var(--neon-pink);color:var(--neon-pink);cursor:pointer;width:36px;height:36px;transition:background var(--dur) var(--ease-out-expo), color var(--dur) var(--ease-out-expo), box-shadow var(--dur) var(--ease-out-expo);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);background:0 0;justify-content:center;align-items:center;font-size:1.2rem;display:flex;position:absolute;top:20px;right:20px}.modal-close-btn:hover{background:var(--neon-pink);color:#fff;box-shadow:0 0 15px var(--neon-pink)}.modal-title{letter-spacing:3px;color:var(--neon-blue);text-shadow:0 0 10px #00f3ff80;margin-bottom:10px;font-size:1.8rem;font-weight:900}.title-divider{background:linear-gradient(90deg, var(--neon-blue), var(--neon-pink), transparent);width:100%;height:2px;margin-bottom:25px}.modal-text{color:#d1d5db;margin-bottom:20px;font-size:1rem;line-height:1.7}.tech-tags{flex-wrap:wrap;gap:10px;margin-top:15px;display:flex}.tech-badge{border:1px solid var(--neon-blue);color:var(--neon-blue);letter-spacing:1px;background:#00f3ff1a;padding:6px 14px;font-size:.85rem;font-weight:700}.projects-grid{flex-direction:column;gap:15px;display:flex}.project-card{transition:background var(--dur) var(--ease-out-expo), border-color var(--dur) var(--ease-out-expo), transform var(--dur) var(--ease-out-expo);background:#ffffff08;border:1px solid #00f3ff4d;padding:15px 20px}.project-card:hover{border-color:var(--neon-blue);background:#00f3ff14;transform:translate(5px)}.project-card h3{color:var(--neon-blue);margin-bottom:5px;font-size:1.1rem}.project-card p{color:#9ca3af;font-size:.9rem}.connections-list{flex-direction:column;gap:12px;display:flex}.cyber-link{color:#fff;letter-spacing:1px;transition:background var(--dur) var(--ease-out-expo), border-color var(--dur) var(--ease-out-expo), color var(--dur) var(--ease-out-expo), box-shadow var(--dur) var(--ease-out-expo), transform var(--dur) var(--ease-out-expo);background:#ffffff0a;border:1px solid #ffffff26;align-items:center;gap:12px;padding:12px 18px;font-weight:700;text-decoration:none;display:flex}.cyber-link:hover{background:var(--cyber-bg);border-color:var(--neon-pink);color:var(--neon-pink);box-shadow:0 0 15px var(--accent-glow);transform:translate(5px)}.nav__fade{z-index:89;pointer-events:none;background:linear-gradient(#030303 0%,#0000 100%);height:140px;transition:opacity .55s;position:fixed;inset:0 0 auto}.nav__fade--hidden{opacity:0}.nav{z-index:90;padding:22px clamp(22px,4.4vw,72px);padding-top:max(22px, env(safe-area-inset-top));padding-left:max(clamp(22px, 4.4vw, 72px), env(safe-area-inset-left));padding-right:max(clamp(22px, 4.4vw, 72px), env(safe-area-inset-right));letter-spacing:.16em;text-transform:uppercase;color:#f1ece1;-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;grid-template-columns:1fr auto 1fr;align-items:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:12px;font-weight:300;line-height:1.55;transition:opacity .55s,transform .6s cubic-bezier(.22,1,.36,1);display:grid;position:fixed;inset:0 0 auto}.nav--hidden{opacity:0;pointer-events:none;transform:translateY(-24px)}.nav__brand{letter-spacing:.06em;text-transform:none;color:#f1ece1;cursor:pointer;align-items:center;gap:12px;font-family:Orbitron,Segoe UI,Tahoma,sans-serif;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.nav__logo{object-fit:contain;width:auto;height:24px;display:inline-block}.nav__links{justify-content:center;gap:28px;display:flex}.nav__links a,.nav__links button{opacity:.85;isolation:isolate;cursor:pointer;letter-spacing:.16em;text-transform:uppercase;color:#f1ece1;background:0 0;border:none;outline:none;padding:8px 14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:12px;font-weight:300;transition:opacity .4s,color .4s,letter-spacing .55s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1);display:inline-block;position:relative;overflow:hidden}.nav__links a:before,.nav__links button:before{content:"";background:linear-gradient(105deg, transparent 0%, color-mix(in oklab, var(--accent) 24%, transparent) 50%, transparent 100%);pointer-events:none;z-index:-1;width:70%;height:100%;transition:left .9s cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:-120%;transform:skew(-18deg)}.nav__links a:after,.nav__links button:after{content:"";background:var(--accent);transform-origin:0;height:1px;transition:transform .6s cubic-bezier(.22,1,.36,1);position:absolute;bottom:2px;left:14px;right:14px;transform:scaleX(0)}.nav__links a:hover,.nav__links button:hover{opacity:1;color:var(--accent);letter-spacing:.22em;transform:translateY(-1px)}.nav__links a:hover:before,.nav__links button:hover:before{left:160%}.nav__links a:hover:after,.nav__links button:hover:after{transform:scaleX(1)}.nav__links a.is-active,.nav__links button.is-active{opacity:1;color:var(--accent)}.nav__links a.is-active:after,.nav__links button.is-active:after{transform:scaleX(1)}.nav__status{letter-spacing:.22em;text-transform:uppercase;color:#f1ece1;justify-self:end;align-items:center;gap:10px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:11px;font-weight:300;display:inline-flex}.nav__status:before{content:"";background:var(--accent);width:7px;height:7px;box-shadow:0 0 10px var(--accent);border-radius:50%;animation:2.2s ease-in-out infinite pulse}@media (width<=820px){.nav{grid-template-columns:1fr auto;padding:16px 20px}.nav__links{gap:8px}.nav__links a,.nav__links button{letter-spacing:.1em;padding:6px 8px;font-size:10px}.nav__status{display:none}}@media (width<=480px){.nav__links button:nth-child(4){display:none}}@media (prefers-reduced-motion:reduce){.nav__links a,.nav__links a:before,.nav__links a:after,.nav__links button,.nav__links button:before,.nav__links button:after{transition:none!important}}.side-logo-container{z-index:40;pointer-events:none;will-change:transform;backface-visibility:hidden;justify-content:flex-end;align-items:center;height:100vh;display:flex;position:fixed;top:0;right:0;transform:translateZ(0)}.side-logo-wrapper{pointer-events:none;justify-content:flex-end;align-items:center;height:100vh;display:flex;position:relative}.side-logo-img{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;filter:none;width:auto;height:100vh;max-height:100vh;display:block;-webkit-mask-image:linear-gradient(90deg,#000 0% 72%,#000000bf 83%,#00000040 92%,#0000 99%);mask-image:linear-gradient(90deg,#000 0% 72%,#000000bf 83%,#00000040 92%,#0000 99%)}.side-bar-buttons{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.side-bar-btn{pointer-events:auto;color:#fff;text-align:right;white-space:nowrap;letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;text-shadow:0 0 10px #ffffff73;height:14.5%;transition:color var(--dur) var(--ease-out-expo), letter-spacing var(--dur-slow) var(--ease-out-expo), text-shadow var(--dur) var(--ease-out-expo), transform var(--dur) var(--ease-out-expo);-webkit-user-select:none;user-select:none;background:0 0;border:none;outline:none;justify-content:flex-end;align-items:center;gap:14px;padding:0 12px 0 0;font-family:Orbitron,sans-serif;font-size:clamp(.9rem,1.2vw,1.3rem);font-weight:900;display:flex;position:absolute;left:10%;right:39%}.side-bar-btn:before{content:"";background:linear-gradient(90deg, var(--accent-0), var(--accent));width:0;height:2px;box-shadow:0 0 12px var(--accent-glow);opacity:0;transition:width var(--dur-slow) var(--ease-out-expo), opacity var(--dur) var(--ease-out-expo);border-radius:2px;flex-shrink:0}.side-bar-btn:hover:before,.side-bar-btn:focus-visible:before{opacity:1;width:clamp(28px,5vw,64px)}.side-bar-btn.bar-about{top:17%}.side-bar-btn.bar-gallery{top:52%}.fixed-next-scene-btn{z-index:95;-webkit-backdrop-filter:blur(16px);color:#fff;letter-spacing:2px;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color var(--dur) var(--ease-out-expo), box-shadow var(--dur) var(--ease-out-expo), color var(--dur) var(--ease-out-expo), transform var(--dur) var(--ease-out-expo), background var(--dur) var(--ease-out-expo);background:#0a0a0fc7;border:1px solid #ffffff29;border-radius:4px;outline:none;align-items:center;gap:10px;padding:11px 20px;font-family:Orbitron,sans-serif;font-size:clamp(.78rem,1vw,.92rem);font-weight:800;display:flex;position:fixed;bottom:clamp(24px,4.5vh,48px);right:clamp(18px,2.8vw,44px);box-shadow:0 10px 30px #000000a6,0 0 0 1px #ffffff0d}.fixed-next-scene-btn .next-scene-icon{transition:transform .4s var(--ease-out-expo);font-size:1.15rem;line-height:1}.fixed-next-scene-btn:hover{border-color:var(--accent);box-shadow:0 0 24px var(--accent-glow), 0 12px 32px #000000d9;color:var(--accent);background:#12121aeb;transform:translateY(-2px)scale(1.03)}.fixed-next-scene-btn:hover .next-scene-icon{transform:rotate(180deg)}.fixed-next-scene-btn:active{transform:translateY(0)scale(.97)}@media (width<=820px){.fixed-next-scene-btn{letter-spacing:1.5px;padding:8px 14px;font-size:.72rem;bottom:20px;right:16px}}.scene-perf-hud{z-index:95;-webkit-backdrop-filter:blur(16px);-webkit-user-select:none;user-select:none;width:max-content;transition:border-color var(--dur) var(--ease-out-expo), box-shadow var(--dur) var(--ease-out-expo);background:#0a0a0fc7;border:1px solid #ffffff29;border-radius:4px;font-family:Orbitron,sans-serif;position:fixed;top:clamp(80px,9.5vh,96px);right:clamp(18px,2.8vw,44px);overflow:hidden;box-shadow:0 10px 30px #000000a6,0 0 0 1px #ffffff0d}.scene-perf-hud[data-state=fair]{border-color:#e0a33c61}.scene-perf-hud[data-state=poor]{border-color:#e2564a6b}.scene-perf-hud[data-state=paused]{opacity:.55}.scene-perf-hud:hover{border-color:var(--accent);box-shadow:0 0 24px var(--accent-glow), 0 12px 32px #000000d9}.scene-perf-main{width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;outline:none;flex-direction:column;gap:6px;padding:10px 14px;display:flex}.scene-perf-main:focus-visible{box-shadow:inset 0 0 0 1px var(--accent);border-radius:3px}.scene-perf-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.scene-perf-label{letter-spacing:2.4px;text-transform:uppercase;color:#ffffff6b;font-size:.54rem;font-weight:700}.scene-perf-spark{width:58px;height:15px;display:block}.scene-perf-readout{align-items:baseline;gap:4px;display:flex}.scene-perf-fps{letter-spacing:.5px;font-variant-numeric:tabular-nums;color:var(--accent);font-size:1.3rem;font-weight:900;line-height:1}.scene-perf-unit{letter-spacing:1.6px;text-transform:uppercase;color:#ffffff61;font-size:.5rem;font-weight:700}.scene-perf-ms{letter-spacing:1.3px;font-variant-numeric:tabular-nums;color:#ffffff80;font-size:.56rem;font-weight:700}.scene-perf-detail{opacity:0;max-height:0;transition:max-height var(--dur) var(--ease-out-expo), opacity var(--dur-fast) var(--ease-out-expo);overflow:hidden}.scene-perf-hud.is-expanded .scene-perf-detail{opacity:1;max-height:160px}.scene-perf-detail>div{letter-spacing:1.1px;text-transform:uppercase;justify-content:space-between;align-items:baseline;gap:18px;padding:5px 14px;font-size:.5rem;display:flex}.scene-perf-detail>div:first-child{border-top:1px solid #ffffff1a;margin-top:2px;padding-top:8px}.scene-perf-detail>div:last-child{padding-bottom:11px}.scene-perf-detail span:first-child{color:#ffffff5c;font-weight:400}.scene-perf-detail span:last-child{font-variant-numeric:tabular-nums;color:#ffffffb8;font-weight:700}@media (width<=820px){.scene-perf-hud{top:72px;right:16px}.scene-perf-main{gap:5px;padding:8px 11px}.scene-perf-row{gap:11px}.scene-perf-spark{width:46px;height:13px}.scene-perf-fps{font-size:1.05rem}.scene-perf-detail>div{padding-left:11px;padding-right:11px}}@media (prefers-reduced-motion:reduce){.scene-perf-hud,.scene-perf-detail{transition:none}}.side-bar-btn:hover,.side-bar-btn:focus-visible{color:var(--accent);text-shadow:0 0 14px var(--accent-glow), 0 0 34px color-mix(in srgb, var(--accent) 35%, transparent);letter-spacing:3.8px;transform:scale(1.03)}.side-bar-btn:active{color:var(--accent-bright);text-shadow:0 0 22px var(--accent-glow);transform:scale(.97)}.home-touch-receiver{pointer-events:none;display:none}@media (width<=1024px),(hover:none) and (pointer:coarse){.home-touch-receiver{z-index:25;pointer-events:auto;touch-action:pan-y;background:0 0;width:100vw;height:100vh;display:block;position:fixed;top:0;left:0}}.mobile-rail-backdrop{pointer-events:none;display:none}@media (width<=1024px),(hover:none) and (pointer:coarse){.mobile-rail-backdrop{z-index:35;pointer-events:auto;cursor:pointer;background:#000;width:100vw;height:100vh;transition:opacity .2s;display:block;position:fixed;top:0;left:0}}.scroll-hint-arrow{z-index:99;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;transition:transform .3s cubic-bezier(.16,1,.3,1),filter .2s;animation:1.8s cubic-bezier(.45,0,.55,1) infinite bounceHint;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.scroll-hint-arrow.is-open{transform:translate(-50%)}.scroll-hint-arrow.is-gallery{animation:1.8s cubic-bezier(.45,0,.55,1) infinite bounceHint;transform:translate(-50%)}.scroll-hint-arrow:before{content:"";border:1px solid var(--accent-line);width:44px;height:44px;animation:hintRipple 2.6s var(--ease-out-quint) infinite;pointer-events:none;border-radius:50%;position:absolute}.scroll-hint-arrow:hover{filter:drop-shadow(0 0 16px var(--accent-glow)) brightness(1.15)}@keyframes hintRipple{0%{opacity:0;transform:scale(.55)}35%{opacity:.75}to{opacity:0;transform:scale(1.35)}}.hint-arrow{color:var(--accent);filter:drop-shadow(0 0 8px var(--accent-glow)) drop-shadow(0 0 20px color-mix(in srgb, var(--accent) 50%, transparent));transition:transform var(--dur) var(--ease-out-expo);font-size:1.8rem;line-height:1}@keyframes bounceHint{0%,to{opacity:.75;transform:translate(-50%)}50%{opacity:1;transform:translate(-50%,12px)}}@keyframes bounceHintUp{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(-6px)}}.about-me-page-container{color:#12141a;z-index:38;backface-visibility:hidden;-webkit-overflow-scrolling:touch;-webkit-user-select:text;user-select:text;background:0 0;width:100vw;height:100vh;position:fixed;top:0;left:0;right:0;overflow:hidden auto;transform:translateZ(0)}.about-panel,.about-panel h1,.about-panel h2,.about-panel h3,.about-panel h4,.about-panel h5,.about-panel h6,.about-panel p,.about-panel span,.about-panel strong,.about-panel em,.about-panel b,.about-panel li,.about-panel a,.about-panel label,.about-panel blockquote,.about-panel code,.about-hero-name,.about-hero-title,.about-hero-lead,.about-hero-bio,.about-sec-title,.about-sec-desc,.about-skill-detail-title,.about-skill-detail-desc,.about-skill-role-title,.about-skill-role-desc,.about-contact-heading,.about-contact-sub,.about-contact-lead,.featured-project-title,.featured-project-desc{-webkit-user-select:text;user-select:text}.about-panel button,.about-panel .side-bar-btn,.about-panel .about-cv-btn,.about-panel .about-portfolio-btn,.about-panel .tech-pill,.about-panel .brand-badge,.about-panel .tag,.about-panel .skill-tab,.about-panel .project-dot,.about-panel .project-nav-btn,.about-panel .about-contact-btn{-webkit-user-select:none!important;user-select:none!important}.about-me-page-container{scrollbar-width:none;-ms-overflow-style:none}.about-me-page-container::-webkit-scrollbar{width:0;height:0;display:none}.about-me-inner{-webkit-user-select:text;user-select:text;flex-direction:column;gap:0;width:100%;max-width:1400px;margin:0 auto;padding:0 clamp(20px,3.5vw,55px);display:flex}.about-panel{color:#12141a;z-index:2;contain:layout paint;-webkit-user-select:text;user-select:text;background:#fff;border-radius:6px;flex-direction:column;gap:40px;padding:clamp(35px,4.5vw,55px) clamp(25px,4vw,65px);display:flex;position:relative;box-shadow:0 20px 60px #00000073,inset 0 0 0 1px #fffc}.about-panel-hero{border-top-left-radius:0;border-top-right-radius:0;gap:clamp(20px,3vh,30px);padding-top:clamp(25px,3.5vh,45px);position:relative}.about-panel-hero:before{content:"";background:linear-gradient(90deg, var(--accent-deep) 0%, var(--accent) 26%, var(--accent-line) 58%, var(--accent-0) 100%);height:3px;position:absolute;top:0;left:0;right:0}.about-panel-projects{z-index:2;border-bottom-right-radius:0;border-bottom-left-radius:0;flex-direction:column;gap:clamp(24px,4vh,42px);padding-bottom:clamp(100px,16vh,240px);display:flex;position:relative}.projects-publisher-divider{background:linear-gradient(90deg,#0000 0%,#e2e8f0 15% 85%,#0000 100%);width:100%;height:1px;margin:4px 0}.about-canvas-gap{pointer-events:none;background:0 0;justify-content:center;align-items:center;width:100%;height:clamp(140px,24vh,260px);display:flex;position:relative}.about-canvas-gap.about-canvas-gap--marquee{height:clamp(65px,11vh,120px)}.about-marquee-fullwidth-wrap{z-index:5;backface-visibility:hidden;background:#fff;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;align-items:center;width:100vw;margin-left:calc(50% - 50vw);padding:24px 0;display:flex;position:relative;overflow:hidden;transform:translateZ(0);box-shadow:0 10px 30px #0000000d}.about-marquee-fullwidth-wrap .logo-marquee{align-items:center;width:100%;margin:0;padding:0;display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.about-header{justify-content:space-between;align-items:center;padding-bottom:25px;display:flex;position:relative}.about-header:after{content:"";background:linear-gradient(90deg, var(--accent) 0%, var(--accent-line) 10%, #e2e8f0 34%, #e2e8f0 100%);height:2px;position:absolute;bottom:0;left:0;right:0}.about-brand{align-items:center;gap:12px;display:flex}.brand-badge{color:var(--accent-ink);box-shadow:none;letter-spacing:2.5px;background:0 0;border-radius:0;padding:0;font-family:Orbitron,sans-serif;font-size:1.05rem;font-weight:900}.brand-label{letter-spacing:2px;color:#64748b;font-size:.85rem;font-weight:700}.about-hero-section{grid-template-columns:minmax(0,1fr) clamp(200px,22vw,290px);align-items:center;gap:clamp(24px,4vw,55px);display:grid}.hero-text{flex-direction:column;gap:15px;min-width:0;display:flex}.hero-portrait{aspect-ratio:817/992;transition:transform var(--dur-slow) var(--ease-out-expo), box-shadow var(--dur-slow) var(--ease-out-expo);background:#0f172a;border:1px solid #cbd5e1;border-radius:4px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 30px #0000001f}.hero-portrait:hover{box-shadow:0 20px 46px #0003, 0 0 0 1px var(--accent);transform:translateY(-4px)}.hero-portrait picture{width:100%;height:100%;display:block}.portrait-img{object-fit:cover;object-position:center center;width:100%;height:100%;transition:transform .9s var(--ease-out-expo);display:block}.hero-portrait:hover .portrait-img{transform:scale(1.045)}.hero-portrait:before,.hero-portrait:after{content:"";border-color:var(--accent);pointer-events:none;z-index:2;width:22px;height:22px;transition:width var(--dur-slow) var(--ease-out-expo), height var(--dur-slow) var(--ease-out-expo);border-style:solid;position:absolute}.hero-portrait:hover:before,.hero-portrait:hover:after{width:38px;height:38px}.hero-portrait:before{border-width:2px 0 0 2px;top:-1px;left:-1px}.hero-portrait:after{border-width:0 2px 2px 0;bottom:-1px;right:-1px}.about-hero-title{letter-spacing:1px;color:#090a0f;font-size:clamp(2.5rem,5vw,4.2rem);font-weight:900;line-height:1.1}.about-tagline{align-items:center;gap:9px;min-height:1.9em;display:flex;overflow:hidden}.about-tagline:after{content:"";background:var(--accent);width:2px;height:1.05em;box-shadow:0 0 8px var(--accent-glow);border-radius:1px;flex-shrink:0;animation:1.15s step-end infinite caretBlink}@keyframes caretBlink{0%,54%{opacity:1}55%,to{opacity:.12}}.tagline-phrase{letter-spacing:2px;color:var(--accent-ink);animation:taglineRise .62s var(--ease-out-expo) both;font-family:Orbitron,sans-serif;font-size:clamp(1rem,1.6vw,1.2rem);font-weight:700;display:inline-block}@keyframes taglineRise{0%{opacity:0;filter:blur(4px);transform:translateY(105%)}55%{opacity:1}to{opacity:1;filter:blur();transform:translateY(0)}}[data-reveal]{opacity:0;transition:opacity var(--dur-slow) var(--ease-out-expo) var(--reveal-delay,0s), transform var(--dur-slow) var(--ease-out-expo) var(--reveal-delay,0s);transform:translateY(22px)}[data-reveal].is-inview{opacity:1;transform:none}[data-reveal]:not(.is-inview) .section-heading:before,[data-reveal]:not(.is-inview).section-heading:before,[data-reveal]:not(.is-inview) .about-accent-line{transform:scaleX(0)}[data-reveal] .skill-group,[data-reveal] .app-card{opacity:0;transition:opacity .56s var(--ease-out-expo), transform .56s var(--ease-out-expo);transform:translateY(16px)}[data-reveal].is-inview .skill-group,[data-reveal].is-inview .app-card{opacity:1;transform:none}[data-reveal].is-inview .skill-group:first-child,[data-reveal].is-inview .app-card:first-child{transition-delay:90ms}[data-reveal].is-inview .skill-group:nth-child(2),[data-reveal].is-inview .app-card:nth-child(2){transition-delay:.17s}[data-reveal].is-inview .skill-group:nth-child(3),[data-reveal].is-inview .app-card:nth-child(3){transition-delay:.25s}[data-reveal].is-inview .skill-group:nth-child(4),[data-reveal].is-inview .app-card:nth-child(4){transition-delay:.33s}[data-reveal].is-inview .skill-group:nth-child(5),[data-reveal].is-inview .app-card:nth-child(5){transition-delay:.41s}[data-reveal].is-inview .skill-group:nth-child(n+6),[data-reveal].is-inview .app-card:nth-child(n+6){transition-delay:.49s}@media (prefers-reduced-motion:reduce){.tagline-phrase,.about-tagline:after,.logo-backdrop,.scroll-hint-arrow,.scroll-hint-arrow:before,.gallery-top-hint-arrow{animation:none}[data-reveal],[data-reveal].is-inview,[data-reveal] .skill-group,[data-reveal] .app-card{opacity:1;transition:none;transform:none}}.about-accent-line{background:linear-gradient(90deg, var(--accent-deep), var(--accent) 55%, var(--accent-0));transform-origin:0;width:118px;height:3px;transition:transform .9s var(--ease-out-expo) .22s;border-radius:2px;margin:12px 0}.section-heading{letter-spacing:2.5px;color:#0f172a;text-transform:uppercase;align-items:center;gap:14px;margin-bottom:10px;font-size:1.25rem;font-weight:900;display:flex}.section-heading:before{content:"";background:linear-gradient(90deg, var(--accent-deep), var(--accent));transform-origin:0;width:30px;height:2px;transition:transform var(--dur-slow) var(--ease-out-expo) .16s;border-radius:2px;flex-shrink:0}.about-bio-text{flex-direction:column;gap:10px;margin:2px 0 4px;display:flex}.bio-lead{color:#0f172a;letter-spacing:-.01em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:clamp(1.02rem,1.7vw,1.22rem);font-weight:600;line-height:1.55}.bio-body{color:#475569;letter-spacing:.005em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:clamp(.92rem,1.38vw,1.04rem);font-weight:400;line-height:1.68}.bio-actions-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;display:flex}.about-cv-btn,.about-portfolio-btn{color:#fff;letter-spacing:1.5px;transition:border-color var(--dur) var(--ease-out-expo), transform var(--dur) var(--ease-out-expo), box-shadow var(--dur) var(--ease-out-expo), background var(--dur) var(--ease-out-expo);isolation:isolate;cursor:pointer;-webkit-user-select:none;user-select:none;background:#0f172a;border:1.2px solid #1e293b;border-radius:4px;align-items:center;gap:8px;width:fit-content;padding:8px 18px;font-family:Orbitron,sans-serif;font-size:.8rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 14px #0f172a24}.about-cv-btn:after,.about-portfolio-btn:after{content:"";border-radius:inherit;background:radial-gradient(circle at 85% 15%, color-mix(in srgb, var(--accent-bright,#ffd54f) 45%, transparent) 0%, color-mix(in srgb, var(--accent) 32%, transparent) 38%, #6366f138 70%, transparent 88%);opacity:0;transition:opacity .5s var(--ease-out-expo);pointer-events:none;z-index:0;position:absolute;inset:-1px}.about-cv-btn:before,.about-portfolio-btn:before{content:"";background:linear-gradient(105deg, transparent 0%, color-mix(in srgb, var(--accent) 35%, transparent) 28%, #ffffffbf 50%, color-mix(in srgb, var(--accent-bright,#ffd54f) 50%, transparent) 72%, transparent 100%);width:70%;height:100%;transition:left .78s var(--ease-out-expo);pointer-events:none;z-index:1;position:absolute;top:0;left:-130%;transform:skew(-20deg)}.about-cv-btn:hover:before,.about-cv-btn:focus-visible:before,.about-portfolio-btn:hover:before,.about-portfolio-btn:focus-visible:before{left:160%}.about-cv-btn:hover:after,.about-portfolio-btn:hover:after{opacity:1}.about-cv-btn>*,.about-portfolio-btn>*{z-index:2;position:relative}.about-cv-btn .cv-btn-icon,.about-portfolio-btn .portfolio-btn-icon{width:15px;height:15px;stroke:var(--accent);transition:transform var(--dur) var(--ease-out-expo), stroke var(--dur) var(--ease-out-expo);flex-shrink:0}.about-cv-btn .cv-download-icon,.about-portfolio-btn .portfolio-view-icon{width:14px;height:14px;stroke:var(--accent-bright);transition:transform var(--dur) var(--ease-out-expo), stroke var(--dur) var(--ease-out-expo);flex-shrink:0}.about-cv-btn:hover,.about-portfolio-btn:hover{border-color:var(--accent);box-shadow:0 12px 30px -6px color-mix(in srgb, var(--accent) 42%, transparent), 0 0 20px -2px color-mix(in srgb, var(--accent-bright,#ffd54f) 35%, transparent), 0 0 0 1px color-mix(in srgb, var(--accent-line) 85%, transparent) inset;color:#fff;background:#020617;transform:translateY(-3px)scale(1.02)}.about-cv-btn:hover .cv-btn-icon,.about-portfolio-btn:hover .portfolio-btn-icon{stroke:var(--accent-bright);transform:scale(1.15)}.about-cv-btn:hover .cv-download-icon{stroke:#fff;transform:translateY(2px)scale(1.1)}.about-portfolio-btn:hover .portfolio-view-icon{stroke:#fff;transform:scale(1.2)}.ai-pullquote,.ai-footnote{background:linear-gradient(90deg, color-mix(in srgb, var(--accent-wash) 55%, #f8fafc), transparent 85%);border-left:2px solid var(--accent);border-radius:0 4px 4px 0;margin:0;padding:8px 16px 8px 14px;position:relative}.ai-pullquote:before{display:none}.ai-pullquote p,.ai-footnote p{color:#64748b;letter-spacing:.01em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:clamp(.78rem,1.05vw,.84rem);font-weight:400;line-height:1.5}.footnote-prefix{color:var(--accent-deep);letter-spacing:.5px;margin-right:4px;font-family:Orbitron,monospace;font-size:.72rem;font-weight:700}.skills-pill-group{flex-wrap:wrap;gap:10px;display:flex}.skills-pill-group .pill{color:#0f172a;letter-spacing:1px;isolation:isolate;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--dur) var(--ease-out-expo), border-color var(--dur) var(--ease-out-expo), color var(--dur) var(--ease-out-expo), transform var(--dur) var(--ease-out-expo), box-shadow var(--dur) var(--ease-out-expo);background:#fff;border:1px solid #cbd5e1;border-radius:3px;outline:none;align-items:center;gap:8px;padding:8px 16px;font-family:inherit;font-size:.85rem;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.skills-pill-group .pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.skills-pill-group .pill:before{content:"";background:linear-gradient(105deg, transparent 0%, color-mix(in srgb, var(--accent) 30%, transparent) 50%, transparent 100%);width:60%;height:100%;transition:left .6s var(--ease-out-expo);pointer-events:none;z-index:0;position:absolute;top:0;left:-120%;transform:skew(-20deg)}.skills-pill-group .pill:hover:before{left:150%}.skills-pill-group .pill:hover{border-color:var(--accent);background:var(--accent-wash);color:var(--accent-deep);box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 26%, transparent), 0 0 10px color-mix(in srgb, var(--accent-bright) 20%, transparent);transform:translateY(-2px)}.skills-pill-group .pill.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent-wash) 70%, #fff);color:var(--accent-deep);box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 28%, transparent);transform:translateY(-2px)}.skills-pill-group .pill.is-pinned{border-color:var(--accent-deep);background:color-mix(in srgb, var(--accent-wash) 90%, #fff);color:var(--accent-deep);box-shadow:0 8px 22px color-mix(in srgb, var(--accent) 38%, transparent), 0 0 0 1px var(--accent);font-weight:900;transform:translateY(-2px)}.pill-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent-glow);border-radius:50%;display:inline-block}.about-me-page-container.is-active .pill-dot{animation:1.8s ease-in-out infinite pillDotPulse}@keyframes pillDotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.4)}}.about-projects-section{flex-direction:column;gap:16px;display:flex}.projects-section-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:8px;display:flex}.projects-title-group{flex-direction:column;gap:6px;max-width:650px;display:flex}.projects-lead{color:#64748b;margin-bottom:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:.95rem;line-height:1.5}.projects-rail-controls{background:#f8fafc;border:1px solid #e2e8f0;border-radius:9999px;align-items:center;gap:16px;padding:6px 14px;display:flex}.projects-counter{letter-spacing:1px;align-items:baseline;gap:3px;font-family:Orbitron,monospace;font-size:.88rem;display:flex}.counter-current{color:var(--accent-deep);font-size:1.05rem;font-weight:800}.counter-sep{color:#94a3b8}.counter-total{color:#64748b;font-weight:600}.projects-dots{align-items:center;gap:6px;display:flex}.project-dot{cursor:pointer;width:8px;height:8px;transition:width var(--dur-slow) var(--ease-out-expo), background var(--dur) var(--ease-out-expo);background:#cbd5e1;border:none;border-radius:9999px;padding:0}.project-dot:hover{background:var(--accent)}.project-dot.active{background:linear-gradient(90deg, var(--accent-deep), var(--accent));width:24px}.projects-arrows{gap:6px;display:flex}.project-nav-btn{color:#0f172a;cursor:pointer;width:30px;height:30px;transition:background var(--dur) var(--ease-out-expo), border-color var(--dur) var(--ease-out-expo), color var(--dur) var(--ease-out-expo), box-shadow var(--dur) var(--ease-out-expo);background:#fff;border:1px solid #cbd5e1;border-radius:9999px;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:flex}.project-nav-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash);background:#0f172a}.project-nav-btn:disabled{opacity:.35;cursor:not-allowed}.projects-rail-viewport{background:#fff;border:1px solid #e2e8f0;border-radius:4px;width:100%;overflow:hidden;box-shadow:0 16px 40px #00000014}.projects-rail-track{transition:transform .72s var(--ease-out-expo);will-change:transform;display:flex}.project-rail-slide{flex-shrink:0}.project-slide-inner{grid-template-columns:1.2fr 1fr;min-height:440px;display:grid}.project-slide-media{background:#fff;border-right:1px solid #f1f5f9;justify-content:center;align-items:center;width:100%;height:100%;min-height:320px;display:flex;position:relative;overflow:hidden}.project-slide-media img{object-fit:contain;width:100%;height:100%;display:block}.project-category-tag{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--accent);letter-spacing:1px;border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);z-index:2;background:#0f172ae0;border-radius:3px;padding:5px 12px;font-family:Orbitron,sans-serif;font-size:.7rem;font-weight:700;position:absolute;top:16px;left:16px}.project-slide-content{background:#fff;flex-direction:column;justify-content:center;gap:16px;padding:clamp(24px,3.5vw,40px);display:flex}.project-slide-title{color:#0f172a;letter-spacing:.5px;font-size:clamp(1.2rem,1.8vw,1.55rem);font-weight:800;line-height:1.3}.project-title-link{color:#0f172a;transition:color var(--dur) var(--ease-out-expo);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.project-title-link:hover{color:var(--accent-deep)}.project-title-arrow{color:var(--accent);transition:transform var(--dur) var(--ease-out-expo);font-size:.85em;display:inline-block}.project-title-link:hover .project-title-arrow{transform:translate(2px,-2px)}.project-slide-desc{color:#475569;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:.95rem;line-height:1.65}.project-tools-wrap{border-top:1px solid #f1f5f9;flex-direction:column;gap:8px;margin-top:auto;padding-top:14px;display:flex}.project-tools-label{letter-spacing:1.5px;color:#94a3b8;font-family:Orbitron,sans-serif;font-size:.65rem;font-weight:700}.project-tools-list{flex-wrap:wrap;gap:8px;display:flex}.project-tool-pill{color:#334155;letter-spacing:.3px;isolation:isolate;transition:background var(--dur) var(--ease-out-expo), border-color var(--dur) var(--ease-out-expo), color var(--dur) var(--ease-out-expo), transform var(--dur) var(--ease-out-expo), box-shadow var(--dur) var(--ease-out-expo);background:#f8fafc;border:1px solid #e2e8f0;border-radius:3px;padding:5px 12px;font-size:.78rem;font-weight:600;position:relative;overflow:hidden}.project-tool-pill:hover{background:var(--accent-wash);border-color:var(--accent);color:var(--accent-deep);box-shadow:0 6px 16px color-mix(in srgb, var(--accent) 22%, transparent);transform:translateY(-2px)}@media (width<=900px){.projects-rail-sticky{align-items:center;padding:12px 0}.about-panel-projects{padding:16px 14px}.projects-section-header{gap:10px;padding-bottom:4px}.projects-lead{display:none}.projects-rail-controls{gap:10px;padding:4px 10px}.project-slide-inner{grid-template-columns:1fr;min-height:auto}.project-slide-media{aspect-ratio:16/9;border-bottom:1px solid #f1f5f9;border-right:none;min-height:auto;max-height:200px}.project-slide-content{gap:8px;padding:12px 14px}.project-slide-title{font-size:1.05rem}.project-slide-desc{font-size:.84rem;line-height:1.4}.project-tools-wrap{gap:6px;padding-top:8px}.project-tools-label{font-size:.6rem}.project-tool-pill{padding:3px 8px;font-size:.72rem}.projects-rail-pin-wrap{height:240vh}}.about-links-section{flex-direction:column;gap:6px;display:flex}.links-lead{color:#64748b;margin-bottom:18px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:.95rem}.about-social-links-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.social-link-card{color:#0f172a;transition:border-color var(--dur) var(--ease-out-expo), box-shadow var(--dur) var(--ease-out-expo), transform var(--dur) var(--ease-out-expo), background var(--dur) var(--ease-out-expo);isolation:isolate;background:#fff;border:1px solid #e2e8f0;border-radius:4px;align-items:center;gap:14px;padding:16px 20px;text-decoration:none;display:flex;position:relative;overflow:hidden}.social-link-card:after{content:"";border-radius:inherit;background:radial-gradient(circle at 90% 10%, color-mix(in srgb, var(--accent-bright,#ffd54f) 38%, transparent) 0%, color-mix(in srgb, var(--accent) 26%, transparent) 35%, #6366f12e 65%, transparent 85%);opacity:0;transition:opacity .5s var(--ease-out-expo);pointer-events:none;z-index:0;position:absolute;inset:-1px}.social-link-card:before{content:"";background:linear-gradient(105deg, transparent 0%, color-mix(in srgb, var(--accent) 30%, transparent) 30%, #ffffffb3 50%, color-mix(in srgb, var(--accent-bright,#ffd54f) 45%, transparent) 70%, transparent 100%);width:70%;height:100%;transition:left .78s var(--ease-out-expo);pointer-events:none;z-index:1;position:absolute;top:0;left:-130%;transform:skew(-20deg)}.social-link-card:hover:before{left:160%}.social-link-card:hover:after{opacity:1}.social-link-card>*{z-index:2;position:relative}.social-link-card:hover{border-color:var(--accent);box-shadow:0 14px 32px -6px color-mix(in srgb, var(--accent) 32%, transparent), 0 0 16px -2px color-mix(in srgb, var(--accent-bright,#ffd54f) 24%, transparent), 0 0 0 1px color-mix(in srgb, var(--accent-line) 80%, transparent) inset;background:#fff;transform:translateY(-4px)scale(1.015)}.social-icon-box{width:44px;height:44px;transition:transform var(--dur) var(--ease-out-expo), background var(--dur) var(--ease-out-expo);background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.social-link-card:hover .social-icon-box{transform:scale(1.08)}.social-youtube:hover .social-icon-box{background:#ff000014;border-color:#ff000040}.social-github:hover .social-icon-box{background:#0f172a14;border-color:#0f172a40}.social-linkedin:hover .social-icon-box{background:#0a66c214;border-color:#0a66c240}.social-icon-img,.social-icon-svg{object-fit:contain;flex-shrink:0;width:22px;height:22px;display:block}.social-link-info{flex-direction:column;flex-grow:1;gap:2px;display:flex}.social-name{color:#0f172a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:1rem;font-weight:700}.social-handle{color:#64748b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:.82rem}.social-arrow{color:#94a3b8;transition:transform var(--dur) var(--ease-out-expo), color var(--dur) var(--ease-out-expo);font-size:1.1rem}.social-link-card:hover .social-arrow{color:var(--accent-deep);transform:translate(3px,-3px)}.about-publisher-section{flex-direction:column;gap:6px;padding-bottom:clamp(60px,10vh,140px);display:flex}.publisher-lead{color:#64748b;margin-bottom:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:1rem}.publisher-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:22px;display:grid}.app-card{transition:border-color var(--dur) var(--ease-out-expo), box-shadow var(--dur) var(--ease-out-expo), transform var(--dur) var(--ease-out-expo);background:#fff;border:1px solid #e2e8f0;border-radius:4px;gap:18px;padding:26px;display:flex}.app-card:hover{border-color:var(--accent-line);box-shadow:0 16px 36px #00000014, 0 0 0 1px var(--accent-wash);transform:translateY(-3px)}.app-icon{transition:transform var(--dur-slow) var(--ease-out-expo)}.app-card:hover .app-icon{transform:scale(1.05)rotate(-2deg)}.app-icon{object-fit:cover;border-radius:16px;flex-shrink:0;width:64px;height:64px}.app-card-body{flex-direction:column;gap:8px;min-width:0;display:flex}.app-card-body h3{color:#0f172a;letter-spacing:.5px;font-size:1.1rem;font-weight:700}.app-card-body p{color:#475569;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:.92rem;line-height:1.6}.app-store-links{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.store-link{color:#0f172a;letter-spacing:.5px;transition:background var(--dur) var(--ease-out-expo), border-color var(--dur) var(--ease-out-expo), color var(--dur) var(--ease-out-expo), transform var(--dur) var(--ease-out-expo);border:1px solid #cbd5e1;border-radius:3px;align-items:center;gap:7px;padding:7px 14px;font-size:.8rem;font-weight:700;text-decoration:none;display:inline-flex}.store-link:hover{border-color:var(--accent);color:var(--accent-deep);background:var(--accent-wash);transform:translateY(-2px)}.store-glyph{width:14px;height:14px}.about-skills-section{flex-direction:column;display:flex}.skill-groups{border-top:1px solid #e2e8f0;flex-direction:column;display:flex}.skill-group{border-bottom:1px solid #e2e8f0;grid-template-columns:clamp(150px,18vw,230px) minmax(0,1fr);gap:clamp(16px,3vw,40px);padding:28px 0;display:grid;position:relative}.skill-group:before{content:"";background:linear-gradient(180deg, var(--accent), var(--accent-line));transform-origin:top;width:2px;transition:transform var(--dur-slow) var(--ease-out-expo);border-radius:2px;position:absolute;top:22px;bottom:22px;left:-14px;transform:scaleY(0)}.skill-group:hover:before{transform:scaleY(1)}.skill-group-title{letter-spacing:1.5px;color:#0f172a;transition:color var(--dur) var(--ease-out-expo);font-family:Orbitron,sans-serif;font-size:1rem;font-weight:900;line-height:1.4}.skill-group:hover .skill-group-title{color:var(--accent-deep)}.skill-group-body{flex-direction:column;gap:16px;min-width:0;display:flex}.skill-group-blurb{color:#475569;max-width:66ch;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:.98rem;line-height:1.62}.skill-detail-viewport{contain:layout paint;flex-direction:column;height:142px;min-height:142px;max-height:142px;display:flex;position:relative}.skill-detail-card{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--accent) 38%, #cbd5e1);border-left:3.5px solid var(--accent);height:100%;box-shadow:0 8px 24px -6px #0f172a14, 0 0 0 1px color-mix(in srgb, var(--accent-wash) 55%, transparent);background:linear-gradient(135deg,#f8fafcfa 0%,#f1f5f9eb 100%);border-radius:6px;flex-direction:column;justify-content:space-between;padding:12px 18px;animation:.38s cubic-bezier(.16,1,.3,1) both skillCardEntry;display:flex;position:relative;overflow:hidden}.skill-detail-card:after{content:"";background:linear-gradient(105deg, transparent 0%, color-mix(in srgb, var(--accent) 30%, transparent) 35%, #ffffffbf 50%, color-mix(in srgb, var(--accent-bright) 45%, transparent) 65%, transparent 100%);pointer-events:none;z-index:1;width:80%;height:100%;animation:.62s cubic-bezier(.16,1,.3,1) forwards scanlineSweep;position:absolute;top:0;left:-130%;transform:skew(-24deg)}.skill-detail-header{animation:rowFadeSlide .32s var(--ease-out-expo) both;border-bottom:1px solid #cbd5e1a6;justify-content:space-between;align-items:center;padding-bottom:6px;display:flex}.skill-detail-title-group{align-items:center;gap:9px;display:flex}.skill-detail-indicator{background:var(--accent);width:7px;height:7px;box-shadow:0 0 10px var(--accent-glow);border-radius:50%;animation:.5s cubic-bezier(.34,1.56,.64,1) both indicatorPulse}.skill-detail-name{letter-spacing:1px;color:#0f172a;margin:0;font-family:Orbitron,sans-serif;font-size:.95rem;font-weight:900;line-height:1.2}.skill-detail-badge{letter-spacing:.8px;text-transform:uppercase;background:var(--accent-wash);color:var(--accent-deep);border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);animation:badgePop .38s var(--ease-out-expo) both;border-radius:3px;padding:2px 7px;font-family:Orbitron,monospace;font-size:.65rem;font-weight:800}.skill-detail-grid{flex-direction:column;flex:1;justify-content:center;gap:4px;display:flex}.skill-detail-row{grid-template-columns:135px minmax(0,1fr);align-items:baseline;gap:12px;font-size:.85rem;line-height:1.42;display:grid}.skill-detail-row:first-child{animation:rowFadeSlide .38s var(--ease-out-expo) 40ms both}.skill-detail-row:nth-child(2){animation:rowFadeSlide .38s var(--ease-out-expo) 90ms both}.skill-detail-row:nth-child(3){animation:rowFadeSlide .38s var(--ease-out-expo) .14s both}.skill-detail-key{letter-spacing:.5px;color:var(--accent-deep);white-space:nowrap;align-items:center;gap:5px;font-family:Orbitron,sans-serif;font-size:.73rem;font-weight:700;display:inline-flex}.skill-key-icon{stroke:var(--accent-deep);transition:transform var(--dur) var(--ease-out-expo);flex-shrink:0}.skill-detail-val{color:#334155;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:500}@keyframes skillCardEntry{0%{opacity:.25;border-color:color-mix(in srgb, var(--accent-bright) 75%, #cbd5e1);box-shadow:0 0 18px -2px color-mix(in srgb, var(--accent) 45%, transparent), 0 8px 24px -6px #0f172a14;transform:scale(.985)translateY(3px)}50%{border-color:var(--accent)}to{opacity:1;border-color:color-mix(in srgb, var(--accent) 38%, #cbd5e1);box-shadow:0 8px 24px -6px #0f172a14, 0 0 0 1px color-mix(in srgb, var(--accent-wash) 55%, transparent);transform:scale(1)translateY(0)}}@keyframes scanlineSweep{0%{opacity:0;left:-130%}20%{opacity:1}80%{opacity:1}to{opacity:0;left:170%}}@keyframes rowFadeSlide{0%{opacity:0;filter:blur(3px);transform:translate(-7px)translateY(2px)}60%{filter:blur()}to{opacity:1;filter:blur();transform:translate(0)translateY(0)}}@keyframes indicatorPulse{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.4)}to{opacity:1;transform:scale(1)}}@keyframes badgePop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@media (width<=960px){.skill-group{grid-template-columns:1fr;gap:12px;padding:22px 0}.skill-group:before{display:none}.skill-detail-viewport{contain:none;height:auto;min-height:auto;max-height:none}.skill-detail-card{justify-content:flex-start;gap:10px;height:auto;min-height:auto;padding:13px 15px;overflow:visible}.skill-detail-grid{gap:8px}.skill-detail-row{grid-template-columns:1fr;align-items:flex-start;gap:2px;font-size:.84rem;line-height:1.48}.skill-detail-key{margin-bottom:2px;font-size:.72rem}.skill-detail-val{word-break:break-word;font-size:.84rem}.skills-pill-group{gap:8px;margin-top:4px}.skills-pill-group .pill{padding:7px 13px;font-size:.8rem}}@media (width<=640px){.skill-detail-card{border-radius:5px;padding:11px 13px}.skill-detail-name{font-size:.88rem}.skill-detail-badge{padding:2px 6px;font-size:.6rem}.skill-detail-row{font-size:.8rem;line-height:1.44}.skill-detail-val{font-size:.8rem}}.logo-marquee{margin-top:45px;padding:10px 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.logo-track{align-items:center;width:max-content;animation:38s linear infinite logoMarquee;display:flex}.about-me-page-container.is-active .logo-track{will-change:transform}.logo-marquee:hover .logo-track,.logo-marquee:focus-within .logo-track{animation-play-state:paused}.logo-group{flex-shrink:0;align-items:center;gap:clamp(30px,4vw,56px);padding-right:clamp(30px,4vw,56px);display:flex}.logo-track.is-static{flex-wrap:wrap;justify-content:center;gap:30px;width:auto;animation:none}@keyframes logoMarquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.logo-chip{flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:74px;height:44px;margin:0;display:flex;position:relative}.logo-chip img{object-fit:contain;filter:grayscale();opacity:.65;width:40px;height:40px;transition:filter .25s,opacity .25s,transform .25s cubic-bezier(.16,1,.3,1)}.logo-chip figcaption{white-space:nowrap;letter-spacing:.5px;color:#334155;text-align:center;opacity:0;pointer-events:none;font-size:.68rem;font-weight:700;transition:opacity .25s,transform .25s;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.logo-chip:hover img{filter:none;opacity:1;transform:scale(1.15)}.logo-chip:hover figcaption{opacity:1;color:var(--accent-deep);transform:translate(-50%)translateY(2px)}.logo-track.is-static .logo-chip img{filter:none;opacity:.85}.logo-track.is-static .logo-chip figcaption{opacity:1;transform:translate(-50%)}.render-gallery-container{z-index:60;backface-visibility:hidden;background:#030303;width:100vw;height:100vh;position:fixed;top:0;left:0;overflow:visible;transform:translateZ(0)}.gallery-leading-blur-visor{pointer-events:none;z-index:10;opacity:0;visibility:hidden;width:100vw;height:242px;transition:opacity .35s,visibility .35s;position:absolute;top:-240px;left:0;overflow:hidden}.gallery-leading-blur-visor.is-visible{opacity:1;visibility:visible}.gallery-leading-blur-visor:before{content:"";z-index:2;background:linear-gradient(#03030300 0%,#03030314 18%,#0303034d 42%,#030303ad 68%,#030303f0 88%,#030303 100%);position:absolute;inset:0}.gallery-leading-blur-visor:after{content:"";-webkit-backdrop-filter:blur(24px);z-index:1;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 0%,#00000026 15%,#000 70% 100%);mask-image:linear-gradient(#0000 0%,#00000026 15%,#000 70% 100%)}.blend-ambient-glow{background:radial-gradient(ellipse at center bottom, color-mix(in srgb, var(--accent) 22%, transparent) 0%, transparent 70%);z-index:3;pointer-events:none;width:70%;height:60%;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.gallery-iframe{background:#030303;border:none;width:100%;height:100%;display:block}.about-top-hint-arrow{z-index:99;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;transition:opacity .3s,filter .2s,transform .2s;animation:1.8s cubic-bezier(.45,0,.55,1) infinite bounceHintUp;display:flex;position:fixed;top:86px;left:50%;transform:translate(-50%)}@media (width<=820px){.about-top-hint-arrow{top:82px}}.about-top-hint-arrow:hover{filter:drop-shadow(0 0 18px var(--accent-glow)) brightness(1.25);transform:translate(-50%)scale(1.15)}.about-top-hint-arrow:active{transform:translate(-50%)scale(.92)}.gallery-top-hint-arrow{z-index:100;cursor:pointer;-webkit-user-select:none;user-select:none;opacity:0;pointer-events:none;justify-content:center;align-items:center;transition:opacity .3s,filter .2s,transform .2s;animation:1.8s cubic-bezier(.45,0,.55,1) infinite bounceHintUp;display:none;position:fixed;top:86px;left:50%;transform:translate(-50%)}@media (width<=820px){.gallery-top-hint-arrow{top:82px}}.gallery-top-hint-arrow.is-visible{opacity:1;pointer-events:auto;display:flex}.gallery-top-hint-arrow:hover{filter:drop-shadow(0 0 18px var(--accent-glow)) brightness(1.25);transform:translate(-50%)scale(1.15)}.gallery-top-hint-arrow:active{transform:translate(-50%)scale(.92)}@media (width<=1024px){.side-bar-btn{letter-spacing:1.8px;padding-right:8px;font-size:clamp(.75rem,1.8vw,.95rem);left:6%;right:48%}.scroll-hint-arrow{bottom:18px}.hint-arrow{font-size:1.5rem}.about-me-inner{gap:0;padding:30px 20px 80px}.about-header{flex-direction:row;justify-content:flex-start;align-items:center}.publisher-grid{grid-template-columns:1fr}.app-card{flex-direction:column}.about-hero-section{grid-template-columns:1fr}.hero-portrait{aspect-ratio:817/992;width:100%;max-width:280px;margin:0 auto}.skill-group{grid-template-columns:1fr;gap:14px}.skill-detail-viewport{min-height:auto}.skill-detail-row{grid-template-columns:1fr;gap:2px}.skill-detail-card{padding:12px 14px}}.global-site-slider{z-index:99;pointer-events:none;-webkit-user-select:none;user-select:none;width:8px;height:100vh;transition:opacity .3s;display:flex;position:fixed;top:0;bottom:0}.global-site-slider.slider-right{justify-content:flex-end;right:0}.global-site-slider.slider-left{justify-content:flex-start;left:0}.global-slider-track{background:#ffffff24;border-radius:0;width:8px;height:100%;transition:background .35s;position:relative;overflow:hidden;box-shadow:0 0 12px #00000080}.global-slider-fill{background:linear-gradient(to bottom, var(--accent-0) 0%, var(--accent) 70%, var(--accent-deep) 100%);width:100%;box-shadow:0 0 16px var(--accent-glow), 0 0 20px color-mix(in srgb, var(--accent) 85%, transparent);border-radius:0;transition:height .1s linear;position:absolute;top:0;left:0}.global-site-slider.is-light-theme .global-slider-track{background:#0f172a1f;box-shadow:0 0 8px #0000000f}@media (width<=820px){.global-site-slider,.global-slider-track{width:6px}}.site-preloader{z-index:99999;pointer-events:auto;opacity:1;visibility:visible;background:#000;justify-content:center;align-items:center;transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1),visibility .65s;display:flex;position:fixed;inset:0;overflow:hidden}.site-preloader.is-fading-out{opacity:0;pointer-events:none;visibility:hidden;transform:scale(1.035)}.preloader-backdrop-glow{background:radial-gradient(circle, var(--accent-glow) 0%, transparent 68%);filter:blur(45px);pointer-events:none;opacity:.35;border-radius:50%;width:50vw;max-width:600px;height:50vh;max-height:600px;animation:3.2s ease-in-out infinite preloaderAuraPulse;position:absolute}.preloader-content{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:clamp(20px,3.5vh,36px);padding:20px;display:flex;position:relative}.preloader-logo-wrap{justify-content:center;align-items:center;width:40vw;min-width:250px;max-width:600px;display:flex;position:relative}.preloader-glow-ring{background:radial-gradient(circle, var(--accent-glow) 0%, transparent 72%);opacity:.45;pointer-events:none;border-radius:50%;animation:2.6s ease-in-out infinite preloaderGlowPulse;position:absolute;inset:-28px}.preloader-logo-img{width:100%;height:auto;filter:drop-shadow(0 0 24px var(--accent-glow)) drop-shadow(0 0 120px #0009);animation:2.6s ease-in-out infinite preloaderLogoBreathe;display:block}.preloader-bar-wrap{flex-direction:column;gap:12px;width:clamp(240px,28vw,360px);display:flex}.preloader-bar-track{background:#ffffff14;border:1px solid #ffffff12;border-radius:999px;width:100%;height:4px;position:relative;overflow:hidden;box-shadow:0 0 12px #000000b3}.preloader-bar-fill{background:linear-gradient(90deg, var(--accent-ink), var(--accent), var(--accent-bright));height:100%;box-shadow:0 0 16px var(--accent), 0 0 28px var(--accent-glow);border-radius:999px;transition:width .18s cubic-bezier(.2,.8,.2,1)}.preloader-status-row{letter-spacing:1.8px;text-transform:uppercase;color:#ffffffa6;justify-content:space-between;align-items:center;font-family:Orbitron,monospace;font-size:clamp(.68rem,.85vw,.78rem);font-weight:700;display:flex}.preloader-status-text{transition:color .3s}.preloader-status-pct{color:var(--accent);text-shadow:0 0 10px var(--accent-glow);text-align:right;min-width:42px;font-weight:900}@keyframes preloaderLogoBreathe{0%,to{filter:drop-shadow(0 0 14px #ffffff14);transform:scale(1)}50%{filter:drop-shadow(0 0 32px var(--accent-glow));transform:scale(1.028)}}@keyframes preloaderGlowPulse{0%,to{opacity:.25;transform:scale(.92)}50%{opacity:.6;transform:scale(1.12)}}@keyframes preloaderAuraPulse{0%,to{opacity:.2;transform:scale(.95)}50%{opacity:.45;transform:scale(1.08)}}.fixed-next-scene-btn.is-ready{animation:.45s cubic-bezier(.16,1,.3,1) forwards nextBtnFadeIn}@keyframes nextBtnFadeIn{0%{opacity:0;transform:translateY(12px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}.custom-cursor{pointer-events:none;z-index:999999;opacity:0;justify-content:center;align-items:center;transition:opacity .25s;display:none;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}@media (pointer:fine){*,:before,:after{cursor:none!important}.custom-cursor{display:flex}.custom-cursor.is-visible{opacity:1}}.custom-cursor__circle{background-color:var(--accent);width:18px;height:18px;box-shadow:0 0 12px color-mix(in srgb, var(--accent) 45%, transparent);border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;transition:transform .22s cubic-bezier(.22,1,.36,1),width .35s cubic-bezier(.22,1,.36,1),height .35s cubic-bezier(.22,1,.36,1),background-color .25s,border-color .25s,box-shadow .25s,border-radius .25s;display:flex;position:relative}.custom-cursor__text{letter-spacing:.08em;color:#030303;text-transform:uppercase;text-align:center;opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:Orbitron,-apple-system,sans-serif;font-size:11px;font-weight:700;line-height:1.15;transition:opacity .25s 40ms,transform .25s cubic-bezier(.22,1,.36,1) 40ms;position:absolute;transform:scale(.8)}.custom-cursor--hover .custom-cursor__circle{border-color:var(--accent);width:34px;height:34px;box-shadow:0 0 16px color-mix(in srgb, var(--accent) 55%, transparent);background-color:#0000}.custom-cursor--hero .custom-cursor__circle{background-color:var(--accent);width:88px;height:88px;box-shadow:0 0 26px color-mix(in srgb, var(--accent) 60%, transparent);border-color:#0000}.custom-cursor--hero .custom-cursor__text{opacity:1;transform:scale(1)}.custom-cursor--click .custom-cursor__circle{border-color:var(--accent)!important;box-shadow:0 0 18px color-mix(in srgb, var(--accent) 65%, transparent)!important;background-color:#0000!important;transform:scale(1.35)!important}.custom-cursor--click .custom-cursor__text{opacity:0!important;transform:scale(.6)!important}.custom-cursor.is-inside-3d-canvas{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.stage__frame-wrap,.stage__frame-wrap *,#stage-frame,.stage__frame,canvas.visual-stage-canvas{cursor:auto!important}
