:root{--bg-primary:#050713;--bg-secondary:#090d1e;--bg-surface:#0e1428;--bg-card:#0d1226a6;--bg-card-hover:#141c38d9;--bg-glass:#0d122699;--bg-glass-subtle:#ffffff08;--bg-light-body:#050713;--bg-light-card:#0d1226;--bg-light-surface:#101730;--accent-purple:#8b5cf6;--accent-purple-light:#a855f7;--accent-purple-lighter:#c084fc;--accent-purple-dark:#7c3aed;--accent-purple-glow:#a855f759;--accent-purple-subtle:#a855f71f;--accent-secondary:#06b6d4;--accent-cyan:#06b6d4;--accent-cyan-light:#38bdf8;--accent-secondary-glow:#06b6d459;--accent-secondary-subtle:#06b6d41f;--accent-blue:#8b5cf6;--accent-blue-hover:#a855f7;--accent-blue-subtle:#a855f726;--gradient-accent:linear-gradient(135deg, #a855f7 0%, #06b6d4 100%);--gradient-purple:linear-gradient(135deg, #a855f7 0%, #7c3aed 100%);--gradient-card:linear-gradient(135deg, #ffffff0d 0%, #ffffff03 100%);--gradient-glow:radial-gradient(circle at 50% 50%, #a855f726 0%, transparent 70%);--text-title:#fff;--text-body:#94a3b8;--text-muted:#94a3b8;--text-accent:#c084fc;--text-dark-title:#fff;--text-dark-body:#94a3b8;--text-dark-muted:#94a3b8;--text-light-title:#fff;--text-light-body:#94a3b8;--text-light-muted:#94a3b8;--border-subtle:#ffffff14;--border-glass:#ffffff1f;--border-accent:#a855f74d;--border-accent-hover:#a855f7a6;--border-light:#ffffff14;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 14px #00000073;--shadow-lg:0 10px 30px #0000008c;--shadow-xl:0 20px 40px #000000a6;--shadow-glass:0 8px 32px 0 #0000005e;--shadow-glow:0 0 25px #a855f759;--shadow-glow-cyan:0 0 25px #06b6d459;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--ease-smooth:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--transition-fast:.18s cubic-bezier(.16, 1, .3, 1);--transition-normal:.32s cubic-bezier(.16, 1, .3, 1);--transition-slow:.55s cubic-bezier(.16, 1, .3, 1);--motion-fast:.18s cubic-bezier(.16, 1, .3, 1);--motion-normal:.32s cubic-bezier(.16, 1, .3, 1);--motion-slow:.55s cubic-bezier(.16, 1, .3, 1);--font-heading:"Poppins", "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-body:"Poppins", "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-main:"Poppins", "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:80px;font-size:16px;overflow-x:clip}section[id]{scroll-margin-top:80px}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;max-width:100%;line-height:1.65;position:relative;overflow-x:clip}#root{width:100%;max-width:100%;overflow-x:clip}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-title);letter-spacing:-.02em;font-weight:700}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}:focus-visible{outline:2px solid var(--accent-purple-light);outline-offset:3px;box-shadow:0 0 14px #a855f780}.skip-link{background:var(--accent-purple);color:#fff;border-radius:var(--radius-md);z-index:9999;opacity:0;transition:transform var(--transition-fast), opacity var(--transition-fast);padding:10px 18px;font-weight:600;position:fixed;top:20px;left:20px;transform:translateY(-200%)}.skip-link:focus{opacity:1;transform:translateY(0)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}.text-gradient-purple{background:var(--gradient-purple);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.text-gradient-accent,.text-gradient-mern{background:var(--gradient-accent);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);box-shadow:var(--shadow-glass)}.section-header{margin-bottom:48px}.section-header.text-center{text-align:center}.section-tag{color:var(--accent-purple-lighter);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;margin-bottom:12px;font-size:.85rem;font-weight:700;display:inline-flex}.section-tag:before{content:"—";color:var(--accent-cyan);font-weight:800}.section-title{color:var(--text-title);letter-spacing:-.025em;font-size:2.35rem;font-weight:800;line-height:1.22}.section-desc{color:var(--text-body);max-width:620px;margin-top:12px;font-size:1.05rem;line-height:1.7}.section-pill-badge{border-radius:var(--radius-full);font-family:var(--font-mono);color:var(--accent-purple-lighter);background:#a855f71a;border:1px solid #a855f740;align-items:center;gap:8px;margin-bottom:20px;padding:6px 14px;font-size:.78rem;font-weight:600;display:inline-flex}.badge-divider{color:var(--accent-cyan);opacity:.8}.btn{border-radius:var(--radius-full);font-size:.95rem;font-weight:600;font-family:var(--font-body);transition:all var(--transition-normal);text-align:center;white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:12px 26px;display:inline-flex;position:relative;overflow:hidden}.btn-primary{background-color:#7c3aed;background:var(--gradient-accent);color:#fff;box-shadow:0 4px 18px var(--accent-purple-glow);border:1px solid #ffffff2e}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 24px #a855f780,0 0 16px #06b6d466}.btn-primary:active{transform:translateY(0)}.btn-outline{color:#fff;border:1px solid var(--border-glass);-webkit-backdrop-filter:blur(12px);background:#0e1428bf}.btn-outline:hover{border-color:var(--accent-purple-light);color:#fff;background:#a855f724;transform:translateY(-2px);box-shadow:0 0 18px #a855f74d}.btn-ghost{color:var(--text-body);background:0 0;border:1px solid #0000}.btn-ghost:hover{color:#fff;background:#ffffff0d}.btn-sm{padding:8px 16px;font-size:.85rem}.btn-lg{padding:14px 32px;font-size:1.05rem}.tech-pill,.ui-tag{border-radius:var(--radius-full);color:var(--accent-purple-lighter);transition:all var(--transition-fast);background:#a855f71a;border:1px solid #a855f740;align-items:center;gap:6px;padding:5px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.ui-tag.tag-cyan{color:var(--accent-cyan);background:#06b6d41a;border-color:#06b6d440}.ui-tag.tag-default{color:var(--text-body);border-color:var(--border-subtle);background:#ffffff0d}.section{background-color:var(--bg-primary);padding:100px 0;position:relative}@media (width<=992px){.section{padding:76px 0}.section-title{font-size:2rem}}@media (width<=768px){.section{padding:60px 0}.section-title{font-size:1.75rem}.container{padding:0 18px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.navbar{z-index:1000;height:76px;transition:background-color .3s,border-color .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s,box-shadow .3s;position:fixed;inset:0 0 auto}.navbar.transparent-top{-webkit-backdrop-filter:none;box-shadow:none;background:0 0;border-bottom:1px solid #ffffff0d}.navbar.scrolled{-webkit-backdrop-filter:blur(16px);background:#070d1ee0;border-bottom:1px solid #ffffff14;box-shadow:0 10px 30px #00000059}[data-theme=light] .navbar.transparent-top{border-bottom:1px solid #0000000d}[data-theme=light] .navbar.scrolled{background:#ffffffe0;border-bottom:1px solid #00000014;box-shadow:0 4px 20px #0000000f}.navbar-container{z-index:1002;justify-content:space-between;align-items:center;max-width:1440px;height:100%;margin:auto;padding:0 24px;display:flex;position:relative}.navbar-brand{color:var(--text-light-title,#fff);letter-spacing:-.02em;transition:opacity var(--transition-fast);align-items:center;gap:10px;font-size:1.1rem;font-weight:800;text-decoration:none;display:flex}[data-theme=light] .navbar-brand{color:var(--text-dark-title,#0f172a)}.brand-icon{background:linear-gradient(135deg,#a855f7 0%,#ec4899 100%);-webkit-text-fill-color:transparent;font-family:var(--font-mono,monospace);-webkit-background-clip:text;font-weight:700;display:inline-block}.navbar-links{align-items:center;gap:28px;margin:0;padding:0;list-style:none;display:flex}.nav-link{color:#94a3b8;transition:color var(--transition-fast);padding:8px 0;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-block;position:relative}[data-theme=light] .nav-link{color:#475569}.nav-link:hover,.nav-link.active{color:#fff}[data-theme=light] .nav-link:hover,[data-theme=light] .nav-link.active{color:#7c3aed}.nav-active-indicator{background:var(--gradient-accent);border-radius:999px;height:2px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 0 12px #a855f7b3}.navbar-actions{align-items:center;gap:14px;display:flex}.btn-nav-resume{color:#fff;cursor:pointer;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0f;border:1px solid #ffffff2e;border-radius:9999px;align-items:center;gap:7px;padding:8px 18px;font-family:inherit;font-size:.86rem;font-weight:600;display:inline-flex}[data-theme=light] .btn-nav-resume{color:#0f172a;background:#fff;border-color:#0f172a26;box-shadow:0 2px 8px #0000000a}.btn-nav-resume:hover{background:var(--accent-purple,#8b5cf6);border-color:var(--accent-purple,#8b5cf6);color:#fff;transform:translateY(-1px);box-shadow:0 4px 14px #8b5cf659}[data-theme=light] .btn-nav-resume:hover{color:#fff;background:#7c3aed;border-color:#7c3aed}.mobile-menu-toggle{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px;display:none}[data-theme=light] .mobile-menu-toggle{color:#0f172a}.mobile-nav-backdrop,.mobile-nav-drawer{display:none}@media (width<=850px){.desktop-nav{display:none}.mobile-menu-toggle{place-items:center;display:grid}.mobile-nav-backdrop{-webkit-backdrop-filter:blur(8px);z-index:998;cursor:pointer;touch-action:manipulation;background:#030712ad;display:block;position:fixed;inset:76px 0 0}[data-theme=light] .mobile-nav-backdrop{background:#0f172a59}.mobile-nav-drawer{z-index:999;-webkit-backdrop-filter:blur(20px);background:#070d1efa;border-bottom:1px solid #ffffff1f;padding:20px 24px 28px;display:block;position:fixed;top:76px;left:0;right:0;overflow:hidden;box-shadow:0 20px 30px #0006}[data-theme=light] .mobile-nav-drawer{background:#fffffffa;border-bottom:1px solid #0000001a;box-shadow:0 15px 25px #00000014}.mobile-links{margin:0;padding:0;list-style:none;display:grid}.mobile-nav-link{color:#cbd5e1;border-bottom:1px solid #ffffff14;padding:14px 0;font-size:1.05rem;font-weight:600;text-decoration:none;display:block}[data-theme=light] .mobile-nav-link{color:#475569;border-bottom:1px solid #00000014}.mobile-nav-link.active,.mobile-nav-link:hover{color:var(--accent-cyan,#38bdf8)}.mobile-resume-btn{justify-content:center;align-items:center;gap:8px;width:100%;margin-top:20px;padding:12px;display:inline-flex}}@media (width<=460px){.navbar-container{padding:0 16px}.navbar-brand{font-size:1rem}.btn-nav-resume span{display:none}.btn-nav-resume{padding:8px 10px}}.global-animated-bg{pointer-events:none;z-index:-1;background-color:var(--bg-primary,#050713);width:auto;height:auto;position:fixed;inset:0;overflow:hidden}.bg-gradient-orb{-webkit-filter:blur(130px);opacity:.16;pointer-events:none;will-change:transform;border-radius:50%;position:absolute}.orb-purple{background:radial-gradient(circle,#8b5cf6 0%,#8b5cf600 70%);width:650px;height:650px;animation:28s ease-in-out infinite alternate floatOrbPurple;top:-10%;left:15%}.orb-cyan{background:radial-gradient(circle,#06b6d4 0%,#06b6d400 70%);width:600px;height:600px;animation:32s ease-in-out infinite alternate floatOrbCyan;bottom:5%;right:10%}.orb-indigo{opacity:.12;background:radial-gradient(circle,#6366f1 0%,#6366f100 70%);width:500px;height:500px;animation:36s ease-in-out infinite alternate floatOrbIndigo;top:45%;left:55%}@keyframes floatOrbPurple{0%{transform:translate(0,0)scale(1)}50%{transform:translate(80px,60px)scale(1.1)}to{transform:translate(-60px,120px)scale(.95)}}@keyframes floatOrbCyan{0%{transform:translate(0,0)scale(1)}50%{transform:translate(-90px,-80px)scale(1.08)}to{transform:translate(70px,-50px)scale(.92)}}@keyframes floatOrbIndigo{0%{transform:translate(0,0)scale(1)}50%{transform:translate(-70px,50px)scale(1.12)}to{transform:translate(60px,-60px)scale(.9)}}.bg-wave-lines{opacity:.75;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.wave-path{will-change:transform, opacity}.wave-path-1{animation:22s ease-in-out infinite alternate waveFlow1}.wave-path-2{animation:26s ease-in-out infinite alternate waveFlow2}.wave-path-3{animation:30s ease-in-out infinite alternate waveFlow3}@keyframes waveFlow1{0%{opacity:.8;transform:translate(0,0)}50%{opacity:1;transform:translate(-35px,20px)}to{opacity:.7;transform:translate(30px,-15px)}}@keyframes waveFlow2{0%{opacity:.7;transform:translate(0,0)}50%{opacity:.95;transform:translate(40px,-25px)}to{opacity:.65;transform:translate(-30px,20px)}}@keyframes waveFlow3{0%{opacity:.6;transform:translate(0,0)}50%{opacity:.9;transform:translate(-25px,-18px)}to{opacity:.55;transform:translate(35px,15px)}}.bg-grid-overlay{pointer-events:none;opacity:.6;background-image:radial-gradient(#ffffff0a 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.bg-gradient-orb,.wave-path-1,.wave-path-2,.wave-path-3{animation:none!important}}.hero-section{isolation:isolate;min-height:100vh;color:var(--text-title,#fff);background:radial-gradient(60% 70% at 87% 40%,#0f2b6770,#0000 72%),radial-gradient(42% 55% at 12% 86%,#14538f29,#0000 78%),#030713;align-items:center;padding:116px 0 28px;display:flex;position:relative;overflow:hidden}.hero-section .container{max-width:1200px}.hero-section:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(#7dd3fc05 1px,#0000 1px),linear-gradient(90deg,#7dd3fc04 1px,#0000 1px);background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 15% 86%,#0000);mask-image:linear-gradient(#0000,#000 15% 86%,#0000)}.hero-glow-1,.hero-glow-2{z-index:-1;pointer-events:none;border-radius:50%;position:absolute}.hero-glow-1{filter:blur(95px);background:radial-gradient(circle,#2056cc33,#0000 70%);width:720px;height:720px;top:-12%;right:-4%}.hero-glow-2{filter:blur(90px);background:radial-gradient(circle,#06b6d424,#0000 72%);width:600px;height:600px;bottom:-38%;left:-10%}.hero-grid{z-index:1;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:center;gap:clamp(20px,3.5vw,54px);display:grid;position:relative}.hero-left-wrapper{align-items:stretch;gap:clamp(18px,2vw,28px);min-width:0;display:flex}.hero-accent-rail{flex-direction:column;flex:0 0 14px;align-items:center;padding-top:15px;display:flex}.glowing-dot{background:#a855f7;border-radius:50%;width:10px;height:10px;animation:2.2s ease-in-out infinite alternate dotGlowPulse;box-shadow:0 0 14px #a855f7,0 0 28px #a855f7cc}.rail-line{background:linear-gradient(#a855f7,#a855f7cc 28%,#06b6d480 72%,#0000);border-radius:999px;flex:1;width:2px;min-height:310px;margin-top:10px}@keyframes dotGlowPulse{0%{transform:scale(.9);box-shadow:0 0 10px #a855f7,0 0 20px #a855f799}to{transform:scale(1.15);box-shadow:0 0 16px #a855f7,0 0 32px #06b6d4e6}}.hero-content{flex-direction:column;flex:1;min-width:0;max-width:625px;display:flex}.hero-status-pill{border-radius:var(--radius-full,9999px);width:fit-content;max-width:100%;color:var(--accent-purple-lighter,#c084fc);background:#5c34b724;border:1px solid #a855f757;align-items:center;gap:8px;margin-bottom:23px;padding:7px 15px;font-size:.84rem;font-weight:600;display:inline-flex;box-shadow:inset 0 1px #ffffff0f,0 0 24px #8b5cf61f}.status-dot{background:#06d5e9;border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite pulse-dot;box-shadow:0 0 8px #06d5e9}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.46;transform:scale(.84)}}.hero-headline{color:#fff;letter-spacing:-.052em;margin-bottom:14px;font-size:clamp(3rem,5.2vw,5rem);font-weight:800;line-height:1.07}.hero-name-gradient,.typewriter-text{background:linear-gradient(110deg,#aa55f7 12%,#7076ee 48%,#08c9e9 90%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-role-wrapper{color:#f8fafc;align-items:center;min-height:48px;margin-bottom:19px;font-size:clamp(1.32rem,2.4vw,2rem);font-weight:700;display:flex}.typewriter-container{font-family:var(--font-heading);align-items:center;display:inline-flex}.typewriter-cursor{color:var(--accent-cyan,#06b6d4);margin-left:2px;font-weight:300;animation:.8s infinite cursorBlink}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.hero-value-statement{color:#b7cef0;max-width:610px;margin-bottom:30px;font-size:clamp(.98rem,1.25vw,1.1rem);line-height:1.7}.hero-actions-group{flex-wrap:wrap;align-items:center;gap:15px;margin-bottom:30px;display:flex}.btn-hero-primary{background:linear-gradient(115deg,#a855f7 0%,#3f9bf3 58%,#08c6e8 100%);min-height:54px;padding-inline:31px;box-shadow:0 12px 28px #06b6d42e,0 8px 24px #a855f73d}.btn-hero-contact{background:#030c1d80;border-color:#97c3fa6b;min-height:54px;padding-inline:33px}.hero-social-strip{align-items:center;gap:12px;display:flex}.hero-social-icon-btn{border-radius:var(--radius-md,12px);color:#bed8fa;width:42px;height:42px;transition:transform var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);background:#0d1e3aad;border:1px solid #87b8f038;justify-content:center;align-items:center;display:inline-flex}.hero-social-icon-btn:hover{color:#fff;background:#0e3860c7;border-color:#38bdf8;transform:translateY(-2px);box-shadow:0 0 18px #38bdf840}.hero-3d-column{justify-content:center;align-items:center;width:100%;min-width:0;display:flex;position:relative}.hero-workstation-art{isolation:isolate;width:100%;max-width:100%;height:clamp(405px,40vw,590px);margin-right:0;position:relative;overflow:hidden}.hero-workstation-art:after{z-index:1;content:"";pointer-events:none;background:linear-gradient(90deg,#030713 0%,#030713c2 5%,#0000 28%),linear-gradient(#030713 0%,#0000 17% 78%,#030713 100%);position:absolute;inset:0}.hero-workstation-image{object-fit:cover;object-position:56% 51%;filter:saturate(1.1)contrast(1.03)brightness(1.05);width:100%;height:100%;display:block;transform:translateZ(0);-webkit-mask-image:linear-gradient(#0000 0% 9%,#000 15% 81%,#0000 94% 100%);mask-image:linear-gradient(#0000 0% 9%,#000 15% 81%,#0000 94% 100%)}.hero-scroll-divider-wrap{z-index:2;justify-content:center;align-items:center;gap:18px;width:100%;max-width:460px;margin:28px auto 0;display:flex;position:relative}.scroll-divider-line{flex:1;height:1px}.scroll-divider-line.left{background:linear-gradient(90deg,#0000,#38bdf866)}.scroll-divider-line.right{background:linear-gradient(90deg,#38bdf866,#0000)}.mouse-scroll-link{transition:transform var(--transition-fast);flex-direction:column;align-items:center;gap:6px;display:flex}.mouse-scroll-link:hover{transform:translateY(2px)}.mouse-indicator{border:1.5px solid #38bdf899;border-radius:11px;justify-content:center;width:20px;height:34px;padding-top:5px;display:flex;position:relative;box-shadow:0 0 10px #06b6d459}.mouse-wheel-dot{background:#38bdf8;border-radius:3px;width:3.5px;height:7px;animation:1.8s ease-in-out infinite mouseWheelScroll;box-shadow:0 0 8px #38bdf8}@keyframes mouseWheelScroll{0%{opacity:0;transform:translateY(0)}25%,75%{opacity:1}75%{transform:translateY(10px)}to{opacity:0;transform:translateY(14px)}}.mouse-scroll-text{color:#a6c4ea;font-family:var(--font-mono,monospace);letter-spacing:.24em;font-size:.68rem;font-weight:600}@media (width<=1100px){.hero-headline{font-size:clamp(3rem,5.5vw,4.25rem)}.hero-workstation-art{height:clamp(390px,43vw,500px)}}@media (width<=1080px){.hero-section{min-height:auto;padding-top:112px}.hero-grid{grid-template-columns:1fr;gap:40px}.hero-content{max-width:680px}.hero-3d-column{order:2}.hero-workstation-art{width:min(760px,100%);height:clamp(360px,66vw,530px);margin:-12px auto 0}}@media (width<=640px){.hero-section{padding-top:102px}.hero-left-wrapper{gap:16px}.rail-line{min-height:270px}.hero-actions-group{flex-direction:column;align-items:stretch}.hero-actions-group a{justify-content:center;width:100%}.hero-workstation-art{width:100%;height:330px;margin-left:0}.hero-scroll-divider-wrap{margin-top:22px}}@media (width<=480px){.hero-section{padding-bottom:22px}.hero-headline{font-size:2.55rem;line-height:1.13}.hero-role-wrapper{min-height:39px;font-size:1.12rem}.hero-status-pill{max-width:100%;padding:6px 11px;font-size:.73rem}.hero-accent-rail{display:none}.hero-workstation-art{height:280px}}@media (prefers-reduced-motion:reduce){.glowing-dot,.status-dot,.typewriter-cursor,.mouse-wheel-dot{animation:none}}.about-section{background:0 0;padding-top:clamp(70px,9vw,120px);padding-bottom:clamp(24px,3.5vw,40px);position:relative;overflow:hidden}.about-container{max-width:1240px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}.about-grid{grid-template-columns:minmax(320px,420px) 1fr;align-items:center;gap:clamp(36px,5vw,68px);display:grid}.about-photo-column{justify-content:center;align-items:center;width:100%;display:flex}.about-photo-card{background:#091329;border:1.5px solid #38bdf838;border-radius:26px;width:100%;max-width:430px;padding:18px 18px 20px;transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .4s,box-shadow .4s;position:relative;box-shadow:0 20px 45px -15px #000000b3,0 0 30px #38bdf814}.about-photo-card:hover{border-color:#38bdf873;transform:translateY(-5px);box-shadow:0 25px 50px -15px #000c,0 0 38px #38bdf82e}.about-photo-frame{aspect-ratio:1;background:#060b18;border-radius:18px;width:100%;position:relative;overflow:hidden}.about-photo-frame img{object-fit:cover;object-position:center 18%;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1);display:block}.about-photo-card:hover .about-photo-frame img{transform:scale(1.03)}.about-photo-quote{text-align:center;color:#94a3b8;letter-spacing:-.01em;margin:18px 0 2px;font-size:.95rem;font-weight:400;line-height:1.5}.about-content-column{flex-direction:column;justify-content:center;display:flex}.about-eyebrow{color:#38bdf8;letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:16px;font-size:.86rem;font-weight:700;display:inline-flex}.eyebrow-dash{color:#38bdf8;font-size:1.05rem;font-weight:800;line-height:1}.about-headline{color:#fff;letter-spacing:-.025em;margin:0 0 22px;font-size:clamp(2rem,3.4vw,2.9rem);font-weight:800;line-height:1.2}.about-bio-text{color:#cbd5e1;letter-spacing:-.01em;max-width:720px;margin:0 0 34px;font-size:clamp(.96rem,1.08vw,1.05rem);line-height:1.76}.about-pillars-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.about-pillars-grid>*{flex-direction:column;height:100%;display:flex}.about-pillar-card{background:#091329;border:1px solid #38bdf81f;border-radius:16px;flex-direction:column;min-width:0;height:100%;padding:22px 20px;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,box-shadow .35s,background .35s;display:flex;position:relative;overflow:hidden}.about-pillar-card:hover{background:#0c1836;border-color:#38bdf866;transform:translateY(-5px);box-shadow:0 16px 36px -10px #0009,0 0 24px #38bdf824}.pillar-icon-box{color:#38bdf8;background:#38bdf81f;border:1px solid #38bdf838;border-radius:10px;flex-shrink:0;place-items:center;width:38px;height:38px;margin-bottom:16px;transition:transform .3s,background .3s,color .3s,border-color .3s;display:grid}.about-pillar-card:hover .pillar-icon-box{color:#fff;background:#38bdf838;border-color:#38bdf880;transform:scale(1.08)}.pillar-title{color:#fff;letter-spacing:-.015em;white-space:nowrap;margin:0 0 8px;font-size:1.02rem;font-weight:700;line-height:1.35}.pillar-desc{color:#94a3b8;margin:0;font-size:.92rem;line-height:1.6}.pillar-highlight{color:#f1f5f9;font-weight:600}.about-cta-container{flex-direction:column;gap:14px;margin-top:28px;display:flex}.about-cta-buttons{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.about-btn-primary{color:#041026;cursor:pointer;background:linear-gradient(135deg,#0284c7 0%,#38bdf8 100%);border:1px solid #38bdf880;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:13px 24px;font-size:.95rem;font-weight:700;text-decoration:none;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,background .25s,border-color .25s;display:inline-flex;box-shadow:0 8px 24px -6px #38bdf866}.about-btn-primary:hover{color:#020817;background:linear-gradient(135deg,#0369a1 0%,#38bdf8 100%);border-color:#38bdf8;transform:translateY(-2px);box-shadow:0 12px 30px -4px #38bdf88c}.about-btn-primary:focus-visible{outline-offset:3px;outline:2px solid #38bdf8}.about-btn-secondary{color:#f8fafc;cursor:pointer;background:#38bdf814;border:1.5px solid #38bdf84d;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:13px 24px;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,background .25s,border-color .25s,color .25s;display:inline-flex;box-shadow:0 4px 16px -4px #0006}.about-btn-secondary:hover{color:#fff;background:#38bdf829;border-color:#38bdf899;transform:translateY(-2px);box-shadow:0 8px 24px -4px #38bdf840}.about-btn-secondary:focus-visible{outline-offset:3px;outline:2px solid #38bdf8}.about-btn-secondary:hover svg{transform:translate(3px)}.about-btn-secondary svg{transition:transform .25s}.about-availability-line{color:#94a3b8;letter-spacing:-.01em;align-items:center;gap:8px;margin:0;font-size:.88rem;font-weight:500;display:inline-flex}.availability-status-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2.4s ease-in-out infinite availabilityPulse;display:inline-block;box-shadow:0 0 10px #22c55eb3}@keyframes availabilityPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.75;transform:scale(1.25)}}@media (width<=1024px){.about-grid{grid-template-columns:1fr;gap:40px}.about-photo-column{justify-content:center}.about-content-column{text-align:left;max-width:720px;margin:0 auto}}@media (width<=768px){.about-pillars-grid{grid-template-columns:1fr;gap:14px}.pillar-title{white-space:normal}.about-headline{font-size:2.1rem}}@media (width<=640px){.about-cta-buttons{flex-direction:column;gap:12px;width:100%}.about-btn-primary,.about-btn-secondary{width:100%;min-height:48px;padding:14px 20px;font-size:.98rem}.about-availability-line{justify-content:flex-start}}@media (width<=480px){.about-photo-card{border-radius:20px;padding:14px 14px 18px}.about-photo-quote{margin-top:14px;font-size:.88rem}.about-headline{font-size:1.85rem}.about-bio-text{margin-bottom:26px;font-size:.94rem;line-height:1.7}.about-pillar-card{padding:18px 16px}}.journey-section-wrapper{border-top:1px solid #38bdf824;margin-top:clamp(64px,8vw,96px);padding-top:clamp(48px,6vw,76px)}.journey-section-header{text-align:center;flex-direction:column;align-items:center;max-width:700px;margin:0 auto clamp(36px,5vw,56px);display:flex}.journey-section-title{color:#fff;letter-spacing:-.025em;margin:0 0 14px;font-size:clamp(1.8rem,2.8vw,2.45rem);font-weight:800;line-height:1.25}.journey-section-subtitle{color:#94a3b8;letter-spacing:-.01em;margin:0;font-size:clamp(.95rem,1.1vw,1.05rem);line-height:1.65}.journey-timeline{max-width:960px;margin:0 auto;padding:16px 0 32px;position:relative}.journey-timeline-track{opacity:.85;z-index:1;background:linear-gradient(#38bdf840 0%,#818cf899 30%,#38bdf8cc 75%,#38bdf833 100%);border-radius:9999px;width:2px;position:absolute;top:18px;bottom:60px;left:50%;transform:translate(-50%);box-shadow:0 0 10px #38bdf866}.journey-timeline-list{z-index:2;flex-direction:column;gap:clamp(32px,4vw,44px);margin:0;padding:0;list-style:none;display:flex;position:relative}.journey-timeline-row{width:100%;position:relative}.journey-timeline-item{align-items:flex-start;width:100%;display:flex;position:relative}.journey-node-container{z-index:4;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:18px;left:50%;transform:translate(-50%)}.journey-node-icon{color:#0284c7;background:#fff;border:3px solid #060b18;border-radius:50%;place-items:center;width:44px;height:44px;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s,border-color .3s;display:grid;box-shadow:0 0 16px #38bdf866,inset 0 0 4px #0000001a}.journey-timeline-item:hover .journey-node-icon{border-color:#38bdf8;transform:scale(1.12);box-shadow:0 0 24px #38bdf8b3}.node-highlighted{border-color:#38bdf8;box-shadow:0 0 24px #38bdf8a6,inset 0 0 6px #38bdf84d}.item-left{flex-direction:row}.item-left .journey-card-col{order:1;width:calc(50% - 40px);margin-right:auto;position:relative}.item-left .journey-card-col:after{content:"";z-index:2;background:linear-gradient(90deg,#38bdf866 0%,#38bdf8cc 100%);width:18px;height:2px;transition:background .3s,box-shadow .3s;position:absolute;top:34px;right:-18px}.item-left .journey-date-col{text-align:left;order:2;width:calc(50% - 40px);margin-left:auto;padding-top:24px;padding-left:32px}.item-left .journey-card-pointer{z-index:3;border-top:9px solid #0000;border-bottom:9px solid #0000;border-left:9px solid #10162f;width:0;height:0;position:absolute;top:25px;right:-9px}.item-right{flex-direction:row}.item-right .journey-card-col{width:calc(50% - 40px);margin-left:auto;position:relative}.item-right .journey-card-col:after{content:"";z-index:2;background:linear-gradient(270deg,#38bdf866 0%,#38bdf8cc 100%);width:18px;height:2px;transition:background .3s,box-shadow .3s;position:absolute;top:34px;left:-18px}.item-right .journey-date-col{text-align:right;width:calc(50% - 40px);margin-right:auto;padding-top:24px;padding-right:32px}.item-right .journey-card-pointer{z-index:3;border-top:9px solid #0000;border-bottom:9px solid #0000;border-right:9px solid #10162f;width:0;height:0;position:absolute;top:25px;left:-9px}.journey-timeline-item:hover .journey-card-col:after{background:#38bdf8;box-shadow:0 0 10px #38bdf8cc}.item-left.item-highlighted .journey-card-pointer{border-left-color:#121c42}.item-right.item-highlighted .journey-card-pointer{border-right-color:#121c42}.journey-date-badge{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.journey-date-text{font-family:var(--font-mono,monospace);color:#e2e8f0;letter-spacing:-.01em;font-size:.94rem;font-weight:600}.journey-in-progress-pill{color:#4ade80;text-transform:uppercase;letter-spacing:.05em;background:#22c55e24;border:1px solid #22c55e59;border-radius:9999px;align-items:center;gap:6px;padding:2px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.in-progress-pulse{background:#22c55e;border-radius:50%;width:6px;height:6px;animation:2s infinite availabilityPulse;box-shadow:0 0 6px #22c55e}.journey-card{background:linear-gradient(155deg,#10162f 0%,#0a0e22 100%);border:1px solid #818cf838;border-radius:16px;padding:clamp(18px,2.5vw,24px) clamp(20px,2.8vw,26px);transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .3s,background .3s;position:relative;box-shadow:0 12px 30px -8px #000000b3,0 0 18px #38bdf80a}.journey-card:hover{background:linear-gradient(155deg,#131c3c 0%,#0d122b 100%);border-color:#38bdf873;transform:translateY(-2px);box-shadow:0 16px 36px -8px #000c,0 0 24px #38bdf81f}.card-col-highlighted .journey-card{background:linear-gradient(155deg,#121c42 0%,#0a1128 100%);border-color:#38bdf88c;box-shadow:0 0 32px #38bdf833,0 14px 34px -8px #000000b3}.card-col-highlighted .journey-card:hover{border-color:#38bdf8bf;box-shadow:0 0 38px #38bdf84d,0 18px 40px -8px #000c}.journey-card-header{margin-bottom:8px}.journey-card-title{color:#fff;letter-spacing:-.015em;margin:0;font-size:clamp(1.12rem,1.35vw,1.25rem);font-weight:750;line-height:1.35}.journey-card-summary{color:#cbd5e1;letter-spacing:-.005em;margin:0;font-size:.94rem;font-weight:400;line-height:1.65}.journey-tags-row{border-top:1px solid #ffffff14;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:12px;display:flex}.journey-tech-tag{color:#7dd3fc;background:#38bdf81a;border:1px solid #38bdf840;border-radius:6px;padding:3px 10px;font-size:.78rem;font-weight:600;transition:background .2s,border-color .2s,color .2s}.journey-tech-tag:hover{color:#fff;background:#38bdf833;border-color:#38bdf880}.journey-closing-wrapper{text-align:center;justify-content:center;margin-top:clamp(40px,5vw,56px);display:flex}.journey-closing-line{color:#cbd5e1;background:#ffffff08;border:1px solid #38bdf833;border-radius:9999px;align-items:center;gap:9px;margin:0;padding:8px 20px;font-size:.92rem;font-weight:500;display:inline-flex;box-shadow:0 4px 14px #00000059}.journey-closing-dot{background:#22c55e;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px #22c55ebf}[data-theme=light] .journey-section-wrapper{border-top-color:#e2e8f0}[data-theme=light] .journey-section-title{color:#0f172a}[data-theme=light] .journey-section-subtitle{color:#475569}[data-theme=light] .journey-timeline-track{opacity:.45;background:linear-gradient(#2563eb 0%,#6366f1 50%,#0284c7 100%);box-shadow:0 0 8px #2563eb40}[data-theme=light] .journey-node-icon{color:#2563eb;background:#fff;border-color:#2563eb;box-shadow:0 0 14px #2563eb40}[data-theme=light] .journey-card{background:#fff;border-color:#e2e8f0;box-shadow:0 4px 20px -2px #0000000f}[data-theme=light] .journey-card:hover{background:#fff;border-color:#3b82f6;box-shadow:0 12px 30px -4px #2563eb1f}[data-theme=light] .item-left .journey-card-pointer{border-left-color:#fff}[data-theme=light] .item-right .journey-card-pointer{border-right-color:#fff}[data-theme=light] .journey-card-title{color:#0f172a}[data-theme=light] .journey-card-summary{color:#475569}[data-theme=light] .journey-date-text{color:#334155}[data-theme=light] .journey-tags-row{border-top-color:#f1f5f9}[data-theme=light] .journey-tech-tag{color:#0369a1;background:#f0f9ff;border-color:#bae6fd}[data-theme=light] .journey-closing-line{color:#334155;background:#fff;border-color:#cbd5e1}[data-theme=light] .about-photo-card{background:#fff;border-color:#e2e8f0;box-shadow:0 10px 25px -5px #00000014}[data-theme=light] .about-photo-quote{color:#64748b}[data-theme=light] .about-headline{color:#0f172a}[data-theme=light] .about-bio-text{color:#475569}[data-theme=light] .about-pillar-card{background:#fff;border-color:#e2e8f0;box-shadow:0 4px 16px -2px #0000000d}[data-theme=light] .about-pillar-card:hover{background:#f8fafc;border-color:#3b82f6;box-shadow:0 8px 24px -2px #2563eb1a}[data-theme=light] .pillar-title{color:#0f172a}[data-theme=light] .pillar-desc{color:#475569}[data-theme=light] .pillar-highlight{color:#0f172a}[data-theme=light] .about-btn-primary{color:#fff;background:linear-gradient(135deg,#0284c7 0%,#0ea5e9 100%);border-color:#0284c7;box-shadow:0 4px 14px #0284c759}[data-theme=light] .about-btn-primary:hover{color:#fff;background:linear-gradient(135deg,#0369a1 0%,#0284c7 100%)}[data-theme=light] .about-btn-secondary{color:#0f172a;background:#f8fafc;border-color:#cbd5e1;box-shadow:0 2px 10px #0000000d}[data-theme=light] .about-btn-secondary:hover{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}[data-theme=light] .about-availability-line{color:#64748b}@media (width<=768px){.journey-timeline-track{top:16px;bottom:40px;left:20px;transform:none}.journey-timeline-list{gap:32px}.journey-timeline-item{width:100%;padding-left:50px;flex-direction:column!important}.journey-date-col,.journey-card-col{order:initial}.journey-node-container{width:38px;height:38px;top:14px;left:20px!important;transform:translate(-50%)!important}.journey-node-icon{width:38px;height:38px}.journey-node-icon svg{width:17px;height:17px}.journey-date-col{text-align:left!important;width:100%!important;margin:0!important;padding:0 0 8px!important}.journey-card-col{width:100%!important;margin:0!important}.journey-card-col:after{display:none!important}.journey-card-pointer{border:8px solid #0000!important;border-left:none!important;border-right-color:#10162f!important;top:18px!important;left:-8px!important;right:auto!important}.card-col-highlighted .journey-card-pointer{border-right-color:#121c42!important}[data-theme=light] .journey-card-pointer{border-right-color:#fff!important}}@media (width<=480px){.journey-timeline-track{top:14px;left:16px}.journey-timeline-item{padding-left:42px}.journey-node-container{width:32px;height:32px;top:12px;left:16px!important}.journey-node-icon{width:32px;height:32px}.journey-node-icon svg{width:15px;height:15px}.journey-card{border-radius:14px;padding:16px 18px}.journey-card-title{font-size:1.05rem}.journey-card-summary{font-size:.88rem;line-height:1.6}.journey-date-text{font-size:.85rem}.journey-closing-line{padding:6px 14px;font-size:.82rem}}@media (prefers-reduced-motion:reduce){.journey-node-icon,.journey-card,.journey-subitem-box,.journey-tech-tag,.about-btn-primary,.about-btn-secondary,.about-btn-secondary svg,.availability-status-dot{transition:none!important;animation:none!important;transform:none!important}}.skills-section{background:0 0;padding-top:clamp(28px,4vw,44px);padding-bottom:clamp(60px,8vw,100px);position:relative;overflow:hidden}.skills-container{width:100%;max-width:1440px;margin:0 auto;padding:0 clamp(16px,3vw,32px)}.skills-header{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-bottom:clamp(34px,4.5vw,50px);display:flex}.skills-subtitle{color:#94a3b8;letter-spacing:-.01em;font-size:.95rem;font-weight:500}.skills-title{color:#fff;letter-spacing:-.025em;margin:0;font-size:clamp(2.2rem,4vw,3rem);font-weight:800;line-height:1.15}.tech-stack-carousel-container{align-items:center;width:100%;display:flex;position:relative}.tech-stack-marquee-wrapper{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-x;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;width:100%;padding:24px 12px 28px;position:relative;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 4% 96%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 4% 96%,#0000 100%)}.tech-stack-marquee-wrapper.is-dragging{cursor:grabbing;scroll-behavior:auto}.tech-stack-marquee-wrapper::-webkit-scrollbar{width:0;height:0;display:none}.tech-stack-track{will-change:transform;align-items:center;gap:20px;width:max-content;display:flex}.tech-card{cursor:pointer;-webkit-user-select:none;user-select:none;background:#0b132b;border:1px solid #38bdf824;border-radius:18px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:12px;width:130px;height:136px;padding:16px 12px;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,box-shadow .35s,background .35s;display:flex;box-shadow:0 10px 25px -8px #0000008c}.tech-card:hover,.tech-card:focus-visible{box-shadow:0 18px 36px -8px #000000b3, 0 0 24px var(--tech-glow,#38bdf84d);background:#0e1a3c;border-color:#38bdf880;outline:none;transform:translateY(-8px)scale(1.03)}.tech-card-icon-wrap{justify-content:center;align-items:center;width:52px;height:52px;transition:transform .35s cubic-bezier(.16,1,.3,1);display:flex}.tech-card:hover .tech-card-icon-wrap,.tech-card:focus-visible .tech-card-icon-wrap{transform:scale(1.12)}.tech-card-name{color:#fff;text-align:center;letter-spacing:-.01em;white-space:nowrap;font-size:.92rem;font-weight:600}@media (width<=768px){.tech-card{border-radius:16px;gap:10px;width:114px;height:122px;padding:12px 10px}.tech-card-icon-wrap{width:44px;height:44px}.tech-card-icon-wrap svg{width:34px;height:34px}.tech-card-name{font-size:.84rem}.tech-stack-track{gap:14px}}@media (prefers-reduced-motion:reduce){.tech-card{scroll-snap-align:start}}.projects-section{padding:clamp(60px,8vw,100px) 0;position:relative;overflow:hidden}.projects-container{max-width:1040px;margin:0 auto}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:22px;display:grid}.project-tilt-container{height:100%}.project-card{background:var(--bg-card,#0d1226a6);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass,#ffffff14);border-radius:var(--radius-lg,16px);height:100%;box-shadow:var(--shadow-glass);flex-direction:column;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s,box-shadow .35s;display:flex;overflow:hidden}.project-card:hover{transform:translateY(-5px);border-color:#38bdf873!important;box-shadow:0 16px 36px -10px #000000b3,0 0 24px #38bdf82e!important}.project-card:focus-within{box-shadow:0 0 0 2px #38bdf866;border-color:#38bdf899!important}.project-card-link-wrapper{color:inherit;cursor:pointer;outline:none;flex-direction:column;flex:1;text-decoration:none;display:flex}.project-image-box{aspect-ratio:16/9;background:#070b1e;width:100%;position:relative;overflow:hidden}.project-screenshot-img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .55s cubic-bezier(.16,1,.3,1);display:block}.project-card:hover .project-screenshot-img{transform:scale(1.05)}.project-image-overlay-vignette{pointer-events:none;background:linear-gradient(#0507130d 0%,#05071340 60%,#050713bf 100%);position:absolute;inset:0}.project-corner-github{z-index:5;-webkit-backdrop-filter:blur(12px);color:#cbd5e1;cursor:pointer;background:#0d1226e0;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;text-decoration:none;transition:transform .25s,background .25s,color .25s,border-color .25s,box-shadow .25s;display:flex;position:absolute;top:14px;right:14px}.project-corner-github:hover,.project-corner-github:focus-visible{color:#38bdf8;background:#0b132b;border-color:#38bdf8;outline:none;transform:scale(1.12);box-shadow:0 0 16px #38bdf873}.project-gradient-placeholder{place-items:center;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.placeholder-pattern-overlay{opacity:.4;background-image:radial-gradient(#ffffff1f 1.2px,#0000 1.2px);background-size:18px 18px;position:absolute;inset:0}.placeholder-content{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:10px;padding:16px;display:flex;position:relative}.placeholder-icon-badge{color:#38bdf8;background:#ffffff14;border:1px solid #ffffff2e;border-radius:12px;place-items:center;width:50px;height:50px;display:grid}.placeholder-title{color:#fff;font-size:.98rem;font-weight:700}.project-card-body{flex-direction:column;flex:1;padding:18px 20px 22px;display:flex}.project-title-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.project-title{color:var(--text-title,#fff);letter-spacing:-.015em;align-items:center;gap:8px;margin:0;font-size:1.15rem;font-weight:700;line-height:1.35;transition:color .25s;display:inline-flex}.project-card:hover .project-title{color:#38bdf8}.project-one-liner{color:var(--text-body,#94a3b8);flex-grow:1;margin-top:6px;margin-bottom:14px;font-size:.88rem;line-height:1.55}.project-hashtag-tags{flex-wrap:wrap;gap:6px;margin-top:auto;display:flex}.hashtag-pill{font-family:var(--font-mono,monospace);border-radius:var(--radius-full,9999px);background:var(--tag-bg,#38bdf81a);border:1px solid var(--tag-border,#38bdf840);color:var(--tag-color,#38bdf8);-webkit-user-select:none;user-select:none;align-items:center;padding:3px 9px;font-size:.72rem;font-weight:600;transition:transform .2s,filter .2s;display:inline-flex}.hashtag-pill:hover{filter:brightness(1.2);transform:translateY(-1px)}@media (width<=880px){.projects-grid{grid-template-columns:1fr;max-width:520px;margin:0 auto}}.contact-exact-section{isolation:isolate;background:radial-gradient(52% 68% at 75% 45%,#05437a38,#0000 76%),radial-gradient(38% 58% at 16% 55%,#682ebd1f,#0000 73%),#020611;align-items:center;padding:clamp(56px,6vw,76px) 0 clamp(16px,2vw,24px);display:flex;position:relative;overflow:hidden}.contact-space-noise{z-index:-1;pointer-events:none;opacity:.7;background-image:radial-gradient(circle at 8% 24%,#b3e8ffb8 0 1px,#0000 1.5px),radial-gradient(circle at 76% 18%,#78cbff9e 0 1px,#0000 1.5px),radial-gradient(circle at 92% 71%,#b3e8ff94 0 1px,#0000 1.5px),radial-gradient(circle at 32% 90%,#b3e8ff66 0 1px,#0000 1.5px);background-size:230px 185px,320px 275px,290px 240px,380px 320px;position:absolute;inset:0}.contact-ambient-glow{z-index:-1;pointer-events:none;filter:blur(30px);background:radial-gradient(circle,#22b2ff21,#0000 68%);border-radius:50%;width:740px;height:740px;position:absolute;top:6%;right:-15%}.contact-exact-container{z-index:1;grid-template-columns:minmax(390px,552px) minmax(410px,1fr);align-items:center;gap:clamp(36px,7vw,115px);width:100%;max-width:1320px;margin:0 auto;padding:0 clamp(20px,4vw,38px);display:grid;position:relative}.contact-card-reveal-wrapper,.contact-earth-reveal-wrapper{width:100%}.contact-exact-card{background:linear-gradient(135deg,#20729a17,#0000 26%),linear-gradient(150deg,#0e2045f5,#060e22f5);border:1px solid #30daffad;border-radius:24px;padding:clamp(26px,3vw,34px);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #70eeff14,0 28px 70px #00000075,0 0 32px #0fcdec1f}.contact-exact-card:before{content:"";background:linear-gradient(90deg,#0000,#a0efffd6,#0000);height:1px;position:absolute;top:0;left:9%;right:9%}.contact-card-intro{margin-bottom:24px}.contact-availability{color:#d4fcf5;letter-spacing:.025em;text-transform:uppercase;background:#0766672e;border:1px solid #15dbab6b;border-radius:999px;align-items:center;gap:7px;margin-bottom:17px;padding:5px 11px;font-size:.72rem;font-weight:700;display:inline-flex}.contact-availability>span{background:#1fe1ad;border-radius:50%;width:8px;height:8px;box-shadow:0 0 9px #1fe1ad}.contact-card-eyebrow{color:#a6ccf6;font-family:var(--font-mono,monospace);letter-spacing:.36em;text-transform:uppercase;margin-bottom:6px;font-size:.75rem;font-weight:600;display:block}.contact-exact-title{color:#f8fbff;letter-spacing:-.052em;margin:0;font-size:clamp(2.35rem,4vw,3.45rem);font-weight:800;line-height:1.05}.contact-exact-title span{background:linear-gradient(105deg,#74e9ff 14%,#10bce6 55%,#8e7cf4 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.contact-exact-form{flex-direction:column;gap:14px;display:flex}.contact-input-group{flex-direction:column;gap:6px;display:flex}.contact-exact-label{color:#cbe2ff;font-size:.83rem;font-weight:600}.contact-field-shell{color:#8bc7ff;background:#051631c2;border:1px solid #5faaef66;border-radius:12px;align-items:center;gap:11px;min-height:48px;padding:0 14px;transition:border-color .18s,background .18s,box-shadow .18s;display:flex}.contact-field-shell:focus-within{background:#072042eb;border-color:#45d5f5;box-shadow:0 0 0 3px #2dc2ef21,0 0 16px #2dc2ef1a}.contact-field-shell.input-has-error{border-color:#fb7185}.contact-field-shell input,.contact-field-shell textarea{color:#f5f9ff;width:100%;font:inherit;background:0 0;border:0;outline:none;font-size:.9rem}.contact-field-shell input::placeholder,.contact-field-shell textarea::placeholder{color:#6786ae}.contact-message-shell{align-items:flex-start;min-height:104px;padding-top:13px}.contact-message-shell textarea{resize:vertical;min-height:76px;line-height:1.55}.contact-error-hint{color:#fda4af;font-size:.72rem}.contact-status-box{border:1px solid;border-radius:9px;padding:9px 12px;font-size:.79rem;line-height:1.45}.contact-status-box.success{color:#87f0ca;background:#10b9811c;border-color:#34d3996b}.contact-status-box.error{color:#fda4af;background:#f43f5e1c;border-color:#fb71856b}.contact-exact-submit-btn{color:#fafdff;width:100%;min-height:50px;font:inherit;background:linear-gradient(105deg,#10bce6 0%,#32c6f4 48%,#159fe0 100%);border:1px solid #b0f5ff66;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:0 25px;font-size:.95rem;font-weight:700;transition:transform .18s,box-shadow .18s,filter .18s;display:inline-flex;box-shadow:0 11px 24px #05afe32e,inset 0 1px #ffffff4d}.contact-exact-submit-btn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-2px);box-shadow:0 14px 29px #05afe347,0 0 22px #2ecdf638}.contact-exact-submit-btn:disabled{cursor:wait;opacity:.72}.btn-loading-state{align-items:center;gap:8px;display:inline-flex}.spin-icon{animation:.9s linear infinite spinLoader}@keyframes spinLoader{to{transform:rotate(360deg)}}.contact-quick-links{border-top:1px solid #74ade833;flex-wrap:wrap;align-items:center;gap:11px;margin-top:20px;padding-top:17px;display:flex}.contact-quick-links>span{background:#74ade86b;width:1px;height:16px}.contact-quick-link{color:#b9d7fb;font:inherit;align-items:center;gap:6px;font-size:.76rem;font-weight:600;transition:color .18s,transform .18s;display:inline-flex}.contact-quick-link:hover{color:#6de5fa;transform:translateY(-1px)}.contact-earth-reveal-wrapper{justify-content:center;align-items:center;display:flex}.contact-earth-container{justify-content:center;align-items:center;width:100%;min-height:520px;display:flex}.contact-earth-3d-wrapper{isolation:isolate;justify-content:center;align-items:center;width:min(100%,620px);height:520px;display:flex;position:relative}.contact-earth-canvas{z-index:1;cursor:grab;touch-action:none;display:block;position:relative;width:100%!important;height:100%!important}.contact-earth-canvas:active{cursor:grabbing}.earth-halo{z-index:0;filter:blur(24px);pointer-events:none;background:radial-gradient(circle,#0fc7ff38,#0c43931f 48%,#0000 74%);border-radius:50%;width:80%;height:80%;animation:4.8s ease-in-out infinite alternate earthHaloPulse;position:absolute;top:10%;left:10%}.earth-star{z-index:0;pointer-events:none;background:#c8f5ff;border-radius:50%;width:4px;height:4px;animation:3.4s ease-in-out infinite alternate starTwinkle;display:block;position:absolute;box-shadow:0 0 13px #86eaff}.earth-star-one{top:16%;right:9%}.earth-star-two{width:3px;height:3px;animation-delay:-1.2s;bottom:17%;left:12%}.earth-star-three{width:2px;height:2px;animation-delay:-2.1s;top:42%;left:6%}@keyframes earthHaloPulse{0%{opacity:.62;transform:scale(.94)}to{opacity:1;transform:scale(1.05)}}@keyframes starTwinkle{0%{opacity:.32;transform:scale(.75)}to{opacity:1;transform:scale(1.18)}}.contact-earth-loader{border:3px solid #38bdf833;border-top-color:#38bdf8;border-radius:50%;width:42px;height:42px;animation:.9s linear infinite spinLoader}.contact-earth-fallback-wrap{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.earth-fallback-sphere{background:radial-gradient(circle at 35% 35%,#0284c7 0%,#0c4a6e 50%,#030712 100%);border:1px solid #38bdf866;border-radius:50%;width:240px;height:240px;animation:6s ease-in-out infinite alternate earthHaloPulse;box-shadow:0 0 50px #38bdf84d,inset -15px -15px 40px #000000d9}@media (width<=960px){.contact-exact-container{grid-template-columns:1fr;gap:42px;max-width:590px}.contact-earth-container{min-height:420px}.contact-earth-3d-wrapper{width:min(100%,490px);height:440px}}@media (width<=520px){.contact-exact-section{padding-top:50px;padding-bottom:16px}.contact-exact-container{padding-inline:17px}.contact-exact-card{border-radius:20px;padding:24px 18px 20px}.contact-card-eyebrow{letter-spacing:.27em;font-size:.68rem}.contact-quick-links{gap:9px}.contact-quick-link{font-size:.71rem}.contact-quick-links>span{display:none}.contact-earth-container{min-height:330px}.contact-earth-3d-wrapper{height:330px}}@media (prefers-reduced-motion:reduce){.earth-halo,.earth-star,.spin-icon{animation:none}}.footer-section{z-index:10;text-align:center;border-top:1px solid #ffffff14;padding:20px 0;position:relative;background-color:#050713!important}.footer-container{justify-content:center;align-items:center;display:flex}.footer-copyright{letter-spacing:.02em;margin:0;font-size:.88rem;font-weight:500;color:#cbd5e1!important}@media (width<=768px){.footer-section{padding:16px 0 calc(72px + env(safe-area-inset-bottom,0px)) 0}}.mobile-bottom-nav{display:none}@media (width<=768px){.mobile-bottom-nav{-webkit-backdrop-filter:blur(16px);z-index:990;height:64px;padding-bottom:env(safe-area-inset-bottom,0px);background-color:#070d1ef2;border-top:1px solid #ffffff1f;display:block;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #00000073}.bottom-nav-container{justify-content:space-around;align-items:center;max-width:480px;height:100%;margin:0 auto;padding:0 12px;display:flex}.bottom-nav-item{color:#94a3b8;transition:color var(--transition-fast), background-color var(--transition-fast);border-radius:var(--radius-md);flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 12px;font-size:.72rem;font-weight:600;text-decoration:none;display:flex}.bottom-nav-item:hover{color:#fff}.bottom-nav-item.active{color:var(--accent-cyan,#06b6d4)}.bottom-nav-item.active .bottom-nav-icon-wrap{color:var(--accent-cyan,#06b6d4);transform:translateY(-2px)}.bottom-nav-icon-wrap{transition:transform var(--transition-fast);justify-content:center;align-items:center;display:flex}.bottom-nav-label{letter-spacing:.02em}.footer-section{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))!important}}
