.app-shell{min-height:100vh;position:relative;isolation:isolate}.skip-link{position:fixed;left:1rem;top:1rem;z-index:200;transform:translateY(-160%);background:var(--accent);color:#07090e;border-radius:.5rem;padding:.65rem .9rem;font-weight:700;text-decoration:none;transition:transform .2s ease}.skip-link:focus{transform:translateY(0)}.container{width:min(1240px,90vw);margin:0 auto;padding:0 1.5rem}.section{position:relative;z-index:10;padding:7rem 0 5rem}.portfolio-canvas-container{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none;overflow:hidden}.portfolio-canvas-container canvas{width:100%!important;height:100%!important;outline:none;pointer-events:none}.fallback-background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 65% 40%,#101624,#07090e 70%)}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:1rem 0;transition:background .3s ease,backdrop-filter .3s ease,padding .3s ease}.site-header.scrolled{background:#07090ed9;-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);border-bottom:1px solid rgba(148,163,184,.08);padding:.7rem 0}.nav-shell{display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;width:3rem;height:3rem;align-items:center;justify-content:center;border:1px solid rgba(218,182,90,.45);border-radius:14px;background:linear-gradient(135deg,#07090ef2,#12171fd1);box-shadow:inset 0 0 0 1px #f7e7a31f,0 0 18px #d9b65a26;text-decoration:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.brand:hover{border-color:var(--accent);box-shadow:inset 0 0 0 1px #f7e7a32e,0 0 20px #d9b65a47;transform:translateY(-1px)}.brand-mark{width:1.9rem;height:1.9rem;display:block;filter:drop-shadow(0 0 8px rgba(217,182,90,.35))}.site-nav{display:flex;align-items:center;gap:.4rem}.nav-link{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-secondary);text-decoration:none;font-size:.85rem;font-weight:500;padding:.4rem .65rem;border-radius:8px;transition:color .2s ease,background .2s ease}.nav-link:hover{color:var(--text-primary);background:#ffffff0a}.nav-link.active{color:var(--accent)}.nav-dot{width:4px;height:4px;border-radius:50%;background:var(--accent);box-shadow:0 0 6px var(--accent)}.menu-toggle{display:none;background:transparent;border:0;width:40px;height:40px;padding:8px;cursor:pointer}.menu-toggle span{display:block;width:100%;height:2px;margin:5px 0;background:var(--text-primary);border-radius:2px}.global-section-rail{position:fixed;right:1.8rem;top:50%;transform:translateY(-50%);z-index:90;pointer-events:auto}.rail-track{display:flex;flex-direction:column;gap:.7rem;list-style:none}.rail-item{display:flex;align-items:center;gap:.5rem;text-decoration:none;font-size:.72rem;color:var(--text-muted, #64748b);opacity:.5;transition:opacity .25s ease,color .25s ease}.rail-item:hover,.rail-item.active{opacity:1;color:var(--accent)}.rail-num{font-weight:700;font-family:JetBrains Mono,monospace;font-size:.68rem;min-width:1.2rem}.rail-active-indicator{font-size:.7rem;color:var(--accent)}.rail-label{font-size:.72rem;font-weight:500}.hero{min-height:100vh;display:flex;align-items:center;padding-top:6rem;padding-bottom:3rem}.hero-container{position:relative;width:100%}.hero-content{position:relative;z-index:12;max-width:600px;padding:2.5rem 2rem 2.5rem 0}.hero-content:before{content:"";position:absolute;top:-2rem;left:-3rem;right:-1rem;bottom:-2rem;background:radial-gradient(ellipse at 20% 50%,rgba(7,9,14,.92) 0%,rgba(7,9,14,.7) 50%,transparent 80%);z-index:-1;pointer-events:none}.hero-badges{display:flex;align-items:center;gap:.7rem;margin-bottom:1.8rem;flex-wrap:wrap}.badge{font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:.35rem .75rem;border-radius:999px;display:inline-flex;align-items:center;gap:.4rem}.badge-gold{border:1px solid rgba(212,160,74,.35);color:var(--accent);background:#d4a04a0f}.badge-live{border:1px solid rgba(148,163,184,.12);color:var(--text-secondary);background:#ffffff08}.live-dot{width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 8px #34d399;animation:livePulse 2.5s ease-in-out infinite}@keyframes livePulse{0%,to{opacity:1}50%{opacity:.5}}.hero-title{display:flex;flex-direction:column;font-size:clamp(3.8rem,8vw,7rem);font-weight:800;line-height:.92;letter-spacing:-.045em;margin-bottom:1.5rem;color:var(--text-primary)}.name-line{display:block}.hero-headline{font-size:clamp(1.15rem,2vw,1.55rem);font-weight:600;color:var(--accent);margin-bottom:.8rem;line-height:1.35}.hero-intro{font-size:1rem;color:var(--text-secondary);line-height:1.75;max-width:46ch;margin-bottom:2.2rem}.hero-cta-group{display:flex;align-items:center;gap:.8rem;margin-bottom:2.5rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:.55rem;padding:.75rem 1.5rem;border-radius:999px;font-weight:600;font-size:.9rem;text-decoration:none;cursor:pointer;border:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--accent);color:#07090e;box-shadow:0 4px 16px #d4a04a4d}.btn-gold:hover{background:#e5b55a;box-shadow:0 6px 24px #d4a04a73}.btn-outline{background:#0e121c99;color:var(--text-primary);border:1px solid rgba(148,163,184,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-outline:hover{border-color:var(--accent);color:var(--accent);background:#d4a04a14}.hero-social-footer{margin-top:.5rem}.social-label{font-size:.75rem;color:var(--text-muted, #64748b);margin-bottom:.45rem;display:block;text-transform:uppercase;letter-spacing:.08em}.social-icon-row{display:flex;align-items:center;gap:.5rem}.social-btn{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:10px;background:#ffffff0a;border:1px solid rgba(148,163,184,.1);color:var(--text-secondary);text-decoration:none;transition:color .2s,border-color .2s,transform .2s,background .2s}.social-btn:hover{color:var(--accent);border-color:var(--accent);background:#d4a04a14;transform:translateY(-2px)}.hero-hud-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:8}.hud-card{position:absolute;padding:.6rem .85rem;border-radius:10px;background:#0a0e16cc;border:1px solid rgba(148,163,184,.12);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 24px #0006;display:flex;flex-direction:column;gap:.15rem;pointer-events:auto;transition:border-color .3s,transform .3s}.hud-card:hover{border-color:#d4a04a80;transform:translateY(-3px)}.hud-header{display:flex;align-items:center;gap:.4rem}.hud-icon{font-size:.8rem}.hud-title{font-size:.75rem;font-weight:700;color:var(--text-primary)}.hud-subtitle{font-size:.65rem;color:var(--text-secondary)}.hud-top-right{top:18%;right:18%}.hud-top-left{top:14%;right:42%}.hud-mid-right{top:50%;right:12%}.hud-bottom-left{bottom:24%;right:38%}.hero-scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.4rem;z-index:12;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted, #64748b)}.mouse-icon{width:18px;height:28px;border:1.5px solid rgba(148,163,184,.3);border-radius:10px;display:flex;justify-content:center;padding-top:5px}.mouse-wheel{width:2px;height:6px;background:var(--accent);border-radius:2px;animation:mouseScroll 1.8s infinite ease-in-out}@keyframes mouseScroll{0%{transform:translateY(0);opacity:1}to{transform:translateY(8px);opacity:0}}.section-heading{max-width:600px;margin-bottom:2.5rem}.section-eyebrow{text-transform:uppercase;color:var(--accent);letter-spacing:.12em;font-size:.78rem;font-weight:600;margin-bottom:.4rem}.section-heading h2{font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;color:var(--text-primary)}.section-heading .text-accent{color:var(--accent)}.glass-card{padding:1.5rem;border-radius:16px;background:#0e121cb3;border:1px solid rgba(148,163,184,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 32px #00000059;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.glass-card:hover{transform:translateY(-3px);border-color:#d4a04a59;box-shadow:0 12px 40px #0006,0 0 16px #d4a04a14}.about-section{position:relative;z-index:10}.about-container{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:start}.about-left{max-width:560px}.about-kicker,.lab-kicker,.contact-kicker{color:var(--accent);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.6rem}.about-title,.lab-title,.contact-title{font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:800;color:var(--text-primary);line-height:1.08;letter-spacing:-.04em;margin-bottom:1.2rem}.text-accent{color:var(--accent)}.about-lead{font-size:1.05rem;font-weight:500;color:var(--text-primary);line-height:1.65;margin-bottom:.8rem}.about-body,.lab-subtitle,.contact-subtitle{font-size:.95rem;color:var(--text-secondary);line-height:1.7}.about-cards-col{display:flex;flex-direction:column;gap:1rem}.about-glass-card{display:flex;gap:1.1rem;padding:1.3rem 1.4rem;border-radius:14px;background:#0e121cb3;border:1px solid rgba(148,163,184,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 28px #00000059;transition:transform .25s ease,border-color .25s ease}.about-glass-card:hover{transform:translateY(-2px);border-color:#d4a04a59}.pillar-num{font-size:.78rem;font-weight:700;color:var(--accent);font-family:JetBrains Mono,monospace;padding-top:.15rem}.pillar-content{display:flex;flex-direction:column;gap:.25rem}.pillar-title{font-size:1.05rem;font-weight:700;color:var(--text-primary)}.pillar-desc{font-size:.88rem;color:var(--text-secondary);line-height:1.55}.lab-content{max-width:560px}.system-network-wrapper{position:relative;width:100%;max-width:480px;margin:1.5rem 0 2rem}.network-svg-lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:visible}.network-line{fill:none;stroke:#94a3b826;stroke-width:1;stroke-dasharray:4 4;transition:stroke .3s,stroke-width .3s}.network-line.active{stroke:var(--accent);stroke-width:2;stroke-dasharray:none;filter:drop-shadow(0 0 4px rgba(212,160,74,.5))}.network-dot{fill:var(--accent)}.network-center-node{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:4;padding:.3rem .7rem;border-radius:999px;background:#07090e;border:1px solid rgba(212,160,74,.4);box-shadow:0 0 12px #d4a04a26;color:var(--accent);font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:lowercase;pointer-events:none}.system-cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;position:relative;z-index:3}.system-card{display:flex;flex-direction:column;justify-content:space-between;min-height:105px;padding:1rem 1.1rem;border-radius:14px;background:#0e121cb3;border:1px solid rgba(148,163,184,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-primary);text-align:left;cursor:pointer;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.system-card:hover,.system-card.active{transform:translateY(-3px);border-color:#d4a04a66;box-shadow:0 8px 28px #0006,0 0 12px #d4a04a14}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7rem}.card-num{font-size:.72rem;font-weight:700;color:var(--accent);font-family:JetBrains Mono,monospace}.card-body{display:flex;align-items:flex-end;justify-content:space-between;gap:.5rem}.card-title{font-size:.88rem;font-weight:700;color:var(--text-primary);line-height:1.25}.card-icon{color:var(--accent);opacity:.6;transition:opacity .2s}.system-card:hover .card-icon{opacity:1}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}.project-card{display:flex;flex-direction:column;gap:.8rem;padding:1.4rem;border-radius:14px;background:#0e121cb3;border:1px solid rgba(148,163,184,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 28px #00000059;transition:transform .25s ease,border-color .25s ease}.project-card:hover{transform:translateY(-3px);border-color:#d4a04a59}.project-card.active-3d-highlight{border-color:var(--accent);box-shadow:0 8px 28px #00000059,0 0 12px #d4a04a1a}.project-card h3{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.project-status{color:var(--accent);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.project-description,.project-label{color:var(--text-secondary);font-size:.92rem;line-height:1.6}.feature-list{list-style-position:inside;color:var(--text-secondary);font-size:.9rem;line-height:1.7}.project-links{display:flex;gap:.6rem;margin-top:auto;padding-top:.6rem}.project-toggle{background:none;border:none;color:var(--accent);font-size:.82rem;font-weight:600;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:.35rem}.project-toggle span{font-size:1.1rem}.project-details{border-left:2px solid rgba(212,160,74,.3);padding-left:.8rem;color:var(--text-secondary);font-size:.92rem}.project-details .project-label{margin-bottom:.4rem;font-weight:600;color:var(--text-primary);font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.chip-wrap{display:flex;flex-wrap:wrap;gap:.4rem}.tech-chip{padding:.25rem .6rem;border-radius:999px;border:1px solid rgba(148,163,184,.12);color:var(--text-secondary);font-size:.78rem;background:#ffffff08}.secondary-projects{margin-top:1.5rem;padding:1.2rem;border-radius:12px;background:#0e121c80;border:1px solid rgba(148,163,184,.06)}.secondary-projects h3{color:var(--text-primary);font-size:1rem;margin-bottom:.6rem}.secondary-projects ul{list-style-position:inside;color:var(--text-secondary);display:grid;gap:.35rem;font-size:.9rem}.skills-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}.skill-card{padding:1.4rem;border-radius:14px;background:#0e121cb3;border:1px solid rgba(148,163,184,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 28px #00000059;transition:transform .2s ease,border-color .2s ease}.skill-card:hover{transform:translateY(-2px);border-color:#d4a04a4d}.skill-card h3{margin-bottom:.8rem;color:var(--text-primary);font-size:1rem}.timeline,.achievement-grid{display:grid;gap:1.2rem;grid-template-columns:repeat(2,1fr)}.timeline-item,.achievement-card{padding:1.4rem;border-radius:14px;background:#0e121cb3;border:1px solid rgba(148,163,184,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 28px #00000059;transition:transform .25s ease,border-color .25s ease}.timeline-item:hover,.achievement-card:hover{transform:translateY(-2px);border-color:#d4a04a4d}.timeline-type{color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.3rem}.timeline-item h3,.achievement-card h3{font-size:1.05rem;font-weight:700;color:var(--text-primary);margin-bottom:.3rem}.timeline-org,.timeline-years{color:var(--text-secondary);font-size:.88rem}.timeline-item ul,.achievement-card ul{margin-top:.6rem;padding-left:1rem;color:var(--text-secondary);display:grid;gap:.3rem;font-size:.88rem}.currently-panel{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:1.8rem;border-radius:16px;background:#0e121cb3;border:1px solid rgba(148,163,184,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 28px #00000059}.currently-panel dl{display:grid;gap:1rem}.currently-panel dt{color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.currently-panel dd{font-size:1.05rem;font-weight:700;color:var(--text-primary)}.currently-focus p{color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.7rem}.currently-focus ul{display:grid;gap:.4rem;list-style:none}.currently-focus li{padding:.45rem .7rem;border-radius:8px;background:#ffffff08;border:1px solid rgba(148,163,184,.06);color:var(--text-secondary);font-size:.88rem}.contact-container{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(2rem,5vw,4rem);align-items:start}.contact-info-col{display:flex;flex-direction:column}.contact-details-list{display:flex;flex-direction:column;gap:1.2rem;margin-bottom:2rem}.contact-detail-row{display:flex;align-items:center;gap:1rem}.contact-icon-circle{width:2.8rem;height:2.8rem;border-radius:50%;border:1px solid rgba(212,160,74,.25);background:#d4a04a0d;color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s,border-color .2s}.contact-detail-row:hover .contact-icon-circle{transform:scale(1.05);border-color:var(--accent)}.contact-detail-text{display:flex;flex-direction:column;gap:.1rem}.detail-label{font-size:.82rem;color:var(--text-secondary);font-weight:500}.detail-value{font-size:.95rem;color:var(--accent);font-weight:600;text-decoration:none}.detail-value:hover{opacity:.8}.contact-glass-card{padding:2rem;border-radius:16px;background:#0e121cbf;border:1px solid rgba(148,163,184,.1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 12px 36px #0006;display:flex;flex-direction:column;gap:.9rem}.form-field input,.form-field textarea{width:100%;background:#07090e99;border:1px solid rgba(148,163,184,.1);color:var(--text-primary);border-radius:10px;padding:.8rem 1rem;font-size:.92rem;font-family:inherit;transition:border-color .2s,box-shadow .2s}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--text-secondary);opacity:.4}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 12px #d4a04a26}.btn-send-full{width:100%;justify-content:center;margin-top:.3rem}.form-status{font-size:.88rem;margin-top:.4rem;padding:.5rem .8rem;border-radius:8px}.form-status.success{color:#34d399;background:#34d39914;border:1px solid rgba(52,211,153,.2)}.form-status.error{color:#f87171;background:#f8717114;border:1px solid rgba(248,113,113,.2)}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-footer{border-top:1px solid rgba(148,163,184,.08);padding:2rem 0;position:relative;z-index:10;color:var(--text-secondary);font-size:.85rem}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.footer-links{display:flex;gap:1.2rem}.footer-links a{text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--accent)}@media (max-width: 1100px){.global-section-rail{display:none}}@media (max-width: 1024px){.hero-hud-overlay{display:none}.about-container,.contact-container,.projects-grid,.skills-grid,.timeline,.achievement-grid,.currently-panel{grid-template-columns:1fr}.site-nav{position:fixed;top:60px;right:5vw;min-width:200px;background:#0a0e16f5;border:1px solid rgba(148,163,184,.1);border-radius:14px;padding:1rem;display:none;flex-direction:column;align-items:flex-start;gap:.3rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 12px 40px #00000080}.site-nav.open{display:flex}.menu-toggle{display:block}}@media (max-width: 640px){.section{padding:4.5rem 0 3rem}.hero{padding-top:5rem}.hero-title{font-size:clamp(2.8rem,12vw,4.5rem)}.hero-content{max-width:100%;padding-right:0}.hero-content:before{background:radial-gradient(ellipse at 30% 50%,rgba(7,9,14,.95) 0%,rgba(7,9,14,.8) 60%,transparent 90%)}.system-cards-grid{grid-template-columns:1fr}.network-svg-lines,.network-center-node{display:none}}:root{--bg-main: #07090e;--bg-elevated: #0d111a;--bg-soft: #0a0d14;--surface: rgba(14, 18, 28, .78);--surface-border: rgba(148, 163, 184, .14);--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--accent: #d4a04a;--accent-strong: #f5c542;--accent-glow: rgba(212, 160, 74, .35);--success: #34d399;--danger: #f87171;--shadow-soft: 0 20px 50px rgba(0, 0, 0, .55)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{font-family:Sora,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:radial-gradient(circle at 15% 15%,#101624,#07090e 50%),linear-gradient(180deg,#07090e,#05070a);color:var(--text-primary);line-height:1.7;min-height:100vh}a{color:inherit}:focus-visible{outline:3px solid #d4a04a;outline-offset:4px}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}#root{min-height:100vh}
