@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600;700&display=swap";html,body{background-color:var(--bg, #0a0a0a)}:root{color-scheme:dark light}:root{--nav-max: 1200px;--nav-pad: 2rem}:root{--font-display: "Outfit", sans-serif;--font-body: "Space Grotesk", sans-serif;--font-mono: "JetBrains Mono", monospace;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.23, 1, .32, 1);--transition-theme: background-color .5s ease, color .4s ease, border-color .4s ease, box-shadow .4s ease;--bg: #0a0a0a;--text: #f0f0f0;--dragon-size: clamp(340px, 38vw, 680px);--hound-size: var(--dragon-size)}html:not([data-theme]) *,html:not([data-theme]) *:before,html:not([data-theme]) *:after{transition:none!important}html[data-theme]:not([data-theme-ready]) *,html[data-theme]:not([data-theme-ready]) *:before,html[data-theme]:not([data-theme-ready]) *:after{transition:none!important}html[data-theme=dark]{color-scheme:dark}html[data-theme=light]{color-scheme:light}html[data-theme=dark]{--bg: #0a0a0a;--bg2: #111111;--bg3: #1a1a1a;--surface: #1e1e1e;--border: #2a2a2a;--border-hover: #3a3a3a;--text: #f0f0f0;--text2: #888888;--text3: #555555;--neon: #c8ff00;--neon-rgb: 200, 255, 0;--orange: #ff6b35;--orange-rgb: 255, 107, 53;--purple: #a78bfa;--purple-rgb: 167, 139, 250;--blue: #60a5fa;--blue-rgb: 96, 165, 250;--pink: #f472b6;--pink-rgb: 244, 114, 182;--yellow: #fbbf24;--yellow-rgb: 251, 191, 36;--card-shadow: 0 4px 24px rgba(0,0,0,.4);--card-shadow-hover: 0 20px 60px rgba(0,0,0,.5);--glow-strength: .25;--noise-opacity: .025;--nav-bg: rgba(10,10,10,.96);--loader-bg: #0a0a0a;--scrollbar-track: #0a0a0a;--scrollbar-thumb: #2a2a2a;--tag-bg: rgba(200,255,0,.06);--tag-border: rgba(200,255,0,.15);--tag-bg-hover: rgba(200,255,0,.1);--tag-border-hover: rgba(200,255,0,.25);--stroke-color: #444;--hero-badge-bg: rgba(200,255,0,.08);--hero-badge-border: rgba(200,255,0,.25);--proficiency-track: #1a1a1a;--card-glass: rgba(16,17,12,.75);--card-glass-border: rgba(200,255,0,.08);--nav-panel-bg: rgba(10,10,10,.96);--nav-panel-border: rgba(200,255,0,.12)}html[data-theme=light]{--bg: #ffffff;--bg2: #f9fafb;--bg3: #f3f4f6;--surface: #e5e7eb;--border: #d1d5db;--border-hover: #9ca3af;--text: #111111;--text2: #4b5563;--text3: #9ca3af;--neon: #0ea5c9;--neon-rgb: 14, 165, 201;--orange: #d4541e;--orange-rgb: 212, 84, 30;--purple: #7c3aed;--purple-rgb: 124, 58, 237;--blue: #2563eb;--blue-rgb: 37, 99, 235;--pink: #db2777;--pink-rgb: 219, 39, 119;--yellow: #ca8a04;--yellow-rgb: 202, 138, 4;--card-shadow: 0 2px 12px rgba(0,0,0,.06);--card-shadow-hover: 0 12px 40px rgba(0,0,0,.1);--glow-strength: .12;--noise-opacity: .008;--nav-bg: rgba(255,255,255,.97);--loader-bg: #ffffff;--scrollbar-track: #ffffff;--scrollbar-thumb: #d1d5db;--tag-bg: rgba(14,165,201,.06);--tag-border: rgba(14,165,201,.2);--tag-bg-hover: rgba(14,165,201,.12);--tag-border-hover: rgba(14,165,201,.35);--stroke-color: #cbd5e1;--hero-badge-bg: rgba(14,165,201,.08);--hero-badge-border: rgba(14,165,201,.25);--proficiency-track: #e5e7eb;--card-glass: rgba(255,255,255,.82);--card-glass-border: rgba(14,165,201,.15);--nav-panel-bg: rgba(255,255,255,.98);--nav-panel-border: rgba(0,0,0,.08)}html[data-theme=light] .noise{opacity:.003}html[data-theme=light] .scanline-overlay:after{opacity:.18}html[data-theme=light] .particle-canvas{opacity:.18}html[data-theme=light] .edu-rail:before{background:linear-gradient(180deg,transparent,rgba(var(--neon-rgb),.55),transparent)}html[data-theme=light] .edu-card{background:#ffffffb8;border-color:rgba(var(--neon-rgb),.22);box-shadow:0 6px 24px #0000000f}html[data-theme=light] .edu-dot{background:rgba(var(--neon-rgb),.1);border-color:rgba(var(--neon-rgb),.3);box-shadow:0 0 0 6px rgba(var(--neon-rgb),.05)}html[data-theme=light] .edu-dot-inner{background:#ffffffa6;border-color:rgba(var(--neon-rgb),.25)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--bg);color:var(--text);overflow-x:hidden;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.65}html[data-theme][data-theme-ready] body,html[data-theme][data-theme-ready] .nav,html[data-theme][data-theme-ready] .hero-card,html[data-theme][data-theme-ready] .hero-tag,html[data-theme][data-theme-ready] .btn-neon,html[data-theme][data-theme-ready] .btn-ghost,html[data-theme][data-theme-ready] .stat-card,html[data-theme][data-theme-ready] .skill-card,html[data-theme][data-theme-ready] .project-card,html[data-theme][data-theme-ready] .edu-item,html[data-theme][data-theme-ready] .contact-card{transition:background-color .6s ease,color .5s ease,border-color .5s ease,box-shadow .5s ease,filter .6s ease}html[data-theme][data-theme-ready] body{transition:var(--transition-theme)}.stat-card,.skill-card,.project-card,.contact-card{contain:layout style;transition:transform .32s var(--ease-out),box-shadow .32s var(--ease-out),border-color .32s var(--ease-out)}.stat-card:hover,.skill-card:hover,.project-card:hover,.contact-card:hover{will-change:transform}.stat-card:after,.skill-card:after,.project-card:after,.contact-card:after{transition:left .8s var(--ease-out),opacity .32s var(--ease-out);opacity:0}.stat-card:hover:after,.skill-card:hover:after,.project-card:hover:after,.contact-card:hover:after{opacity:1}.ham-line{transition:transform .35s var(--ease-spring),opacity .25s ease,stroke .5s ease!important;transform-origin:center}.loader{transition:opacity .6s ease,visibility .6s ease,background-color .6s ease!important}.loader.done{transition:opacity .6s ease,visibility .6s ease!important}.hero-badge{transition:background-color .6s ease,border-color .6s ease,color .5s ease,box-shadow 3s ease!important}canvas.particle-canvas{transition:none!important}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--neon)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px rgba(var(--neon-rgb),.1),inset 0 0 20px rgba(var(--neon-rgb),.05)}50%{box-shadow:0 0 40px rgba(var(--neon-rgb),var(--glow-strength)),inset 0 0 40px rgba(var(--neon-rgb),.1)}}@keyframes scanline{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes loadFill{0%{width:0}to{width:100%}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes navSlideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes heroTagIn{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes cardShine{0%{left:-100%}to{left:200%}}@keyframes borderGlow{0%,to{border-color:var(--card-glass-border)}50%{border-color:rgba(var(--neon-rgb),.2)}}@keyframes dragonFly{0%{transform:translateY(0) rotate(0) scale(1)}15%{transform:translateY(-6px) rotate(.6deg) scale(1.005)}30%{transform:translateY(-12px) rotate(-.3deg) scale(1.01)}45%{transform:translateY(-7px) rotate(.8deg) scale(1.006)}60%{transform:translateY(-14px) rotate(-.5deg) scale(1.012)}75%{transform:translateY(-5px) rotate(.4deg) scale(1.003)}90%{transform:translateY(-10px) rotate(-.2deg) scale(1.008)}to{transform:translateY(0) rotate(0) scale(1)}}@keyframes dragonSway{0%,to{transform:translate(0)}20%{transform:translate(5px)}40%{transform:translate(-4px)}60%{transform:translate(6px)}80%{transform:translate(-3px)}}@keyframes dragonGlowPulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.06)}}.dragon-img{grid-area:1 / 1;width:100%;height:100%;object-fit:contain;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;opacity:0;pointer-events:none;transition:opacity .6s ease;animation:dragonFly 8s ease-in-out infinite,dragonSway 6s ease-in-out infinite}.dragon-img.dragon-img-ready.dragon-img-active{opacity:1;pointer-events:auto}.dragon-container:hover .dragon-img-active{filter:brightness(1.06);transition:filter .3s ease}@media(prefers-reduced-motion:reduce){.dragon-img,.dragon-glow{animation:none!important}}.cursor-blink{animation:blink .8s step-end infinite;color:var(--neon)}.loader{position:fixed;inset:0;background:var(--loader-bg);z-index:10000;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.5rem;transition:opacity .6s,visibility .6s}.loader.done{opacity:0;visibility:hidden;pointer-events:none}.loader-text{font-family:var(--font-mono);font-size:.72rem;color:var(--text2);letter-spacing:.15em;text-transform:uppercase}.loader-bar{width:140px;height:2px;background:var(--border);border-radius:1px;overflow:hidden}.loader-fill{height:100%;background:var(--neon);border-radius:1px;animation:loadFill 1s ease forwards;box-shadow:0 0 12px rgba(var(--neon-rgb),.5)}.noise{position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:var(--noise-opacity);background-image:repeating-conic-gradient(rgba(128,128,128,.04) 0% 25%,transparent 0% 50%);background-size:4px 4px}.scanline-overlay{display:none}.particle-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.dragon-container{position:relative;display:flex;align-items:center;justify-content:center;width:100%;contain:layout style}.dragon-glow{position:absolute;width:120%;height:120%;border-radius:50%;background:radial-gradient(circle,rgba(var(--neon-rgb),.12),rgba(var(--neon-rgb),.04) 40%,transparent 70%);pointer-events:none;animation:dragonGlowPulse 6s ease-in-out infinite;transition:background .6s ease}.dragon-stack{position:relative;display:grid;place-items:center;width:var(--dragon-size);max-width:100%;aspect-ratio:3 / 2}.dragon-stack-svg{width:var(--dragon-size);max-width:100%;aspect-ratio:3 / 2;display:grid;place-items:center}.dragon-svg{grid-area:1 / 1;width:100%;height:100%;opacity:1}.dragon-svg svg{width:100%;height:100%;display:block}.nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0;height:70px;display:flex;align-items:center;justify-content:space-between;background:var(--nav-bg);border-bottom:1px solid transparent;transition:all .3s}.nav.scrolled{border-bottom-color:var(--border)}.nav-inner{height:70px;width:min(1300px,calc(100vw - 3rem));margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0}.nav-logo{color:var(--neon);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;padding:4px 8px;border-radius:8px;transition:all .3s ease}.nav-logo:hover{background:rgba(var(--neon-rgb),.06)}.logo-mark{font-family:var(--font-display);font-weight:900;font-size:1.8rem;color:var(--text);letter-spacing:-.04em;line-height:1}.logo-dot{color:var(--neon)}.nav-links{display:flex;gap:.25rem;align-items:center}.nav-link{background:none;border:none;color:var(--text2);font-family:var(--font-mono);font-size:.7rem;padding:.42rem .75rem;cursor:pointer;border-radius:6px;transition:all .2s;text-transform:uppercase;letter-spacing:.06em}.nav-link:hover{color:var(--text);background:var(--surface)}.nav-link.active{color:var(--neon);background:rgba(var(--neon-rgb),.08)}.nav-cta{background:var(--neon);color:var(--bg);font-family:var(--font-display);font-weight:700;font-size:.78rem;padding:.55rem 1.25rem;border-radius:6px;border:none;cursor:pointer;margin-left:.75rem;transition:all .2s;letter-spacing:.02em}.nav-cta:hover{opacity:.85;transform:translateY(-1px)}.theme-toggle{background:transparent;border:none;width:auto;height:auto;padding:4px;border-radius:10px;color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .25s ease,transform .25s ease;margin-left:.5rem}.theme-toggle:hover{background:transparent;border:none;color:var(--neon)}.theme-toggle svg{transition:transform .26s var(--ease-out);transform-origin:center}.theme-toggle:hover svg{transform:rotate(18deg) scale(1.06)}.mobile-toggle{display:none;background:none;border:none;padding:8px;cursor:pointer;border-radius:8px;width:42px;height:42px;align-items:center;justify-content:center;transition:background .25s ease;-webkit-tap-highlight-color:transparent}.mobile-toggle:hover{background:rgba(var(--neon-rgb),.06);transform:translateY(-1px)}.mobile-toggle.open .ham-top{transform:translateY(7px) rotate(45deg);stroke:var(--neon)}.mobile-toggle.open .ham-mid{opacity:0;transform:scaleX(0)}.mobile-toggle.open .ham-bot{transform:translateY(-7px) rotate(-45deg);stroke:var(--neon)}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;z-index:1;overflow:hidden;padding:5rem 1.5rem 3rem}.hero-layout{width:100%;max-width:1300px;margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center;min-width:0}.hero-content{position:relative;z-index:2;text-align:left;display:flex;flex-direction:column;align-items:flex-start;min-width:0}.hero-visual{display:flex;align-items:center;justify-content:center;position:relative;min-width:0}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.7rem;color:var(--neon);background:var(--hero-badge-bg);border:1px solid var(--hero-badge-border);padding:.4rem 1rem;border-radius:20px;margin-bottom:2rem;animation:glowPulse 3s ease infinite;letter-spacing:.06em;max-width:100%;flex-wrap:wrap;white-space:normal}.hero-badge .dot{width:6px;height:6px;border-radius:50%;background:var(--neon);animation:blink 1.5s ease infinite}.hero-badge *{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.hero h1{font-family:var(--font-display);font-size:clamp(3.2rem,7vw,6rem);font-weight:900;line-height:.95;letter-spacing:-.05em;margin-bottom:1.5rem;display:flex;flex-direction:column;max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.hero-line1{color:var(--text);display:block;max-width:100%}.hero-line2{color:transparent;-webkit-text-stroke:2px var(--stroke-color);display:block;max-width:100%}.hero-line3{color:var(--text);display:block;max-width:100%}.hero-line3 .accent{color:var(--neon)}.hero-sub{font-family:var(--font-body);font-size:1.05rem;color:var(--text2);max-width:min(480px,100%);line-height:1.75;margin-bottom:1.5rem;white-space:normal;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.hero-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.hero-tag{font-family:var(--font-mono);font-size:.65rem;font-weight:600;letter-spacing:.08em;padding:.4rem .85rem;border-radius:20px;border:1px solid var(--tag-border);background:var(--tag-bg);color:var(--text2);transition:all .25s;cursor:default;animation:heroTagIn .6s var(--ease-out) both}.hero-tag:nth-child(1){animation-delay:.8s}.hero-tag:nth-child(2){animation-delay:.9s}.hero-tag:nth-child(3){animation-delay:1s}.hero-tag:nth-child(4){animation-delay:1.1s}.hero-tag:nth-child(5){animation-delay:1.2s}.hero-tag:nth-child(6){animation-delay:1.3s}.hero-tag:hover{border-color:var(--neon);color:var(--neon);background:rgba(var(--neon-rgb),.08);transform:translateY(-2px)}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.hero-scroll{position:absolute;bottom:3rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--text2);font-family:var(--font-mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;animation:float 2.5s ease infinite}.scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--neon),transparent)}@media(max-width:768px){.hero-content{width:100%}.hero h1,.hero-sub{width:100%;max-width:100%}.hero-badge{width:100%;justify-content:flex-start;gap:.5rem;padding:.4rem .85rem}}@media(max-width:520px){.hero-badge{font-size:.62rem;padding:.38rem .8rem}}.btn-neon,.btn-ghost{display:inline-flex;align-items:center;gap:.6rem;padding:.85rem 2rem;border-radius:8px;font-family:var(--font-display);font-size:.9rem;font-weight:700;text-decoration:none;cursor:pointer;border:none;transition:all .25s;letter-spacing:.01em}.btn-neon{background:var(--neon);color:var(--bg);box-shadow:0 0 30px rgba(var(--neon-rgb),var(--glow-strength))}.btn-neon:hover{box-shadow:0 0 50px rgba(var(--neon-rgb),.35);transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--text);border:1.5px solid var(--border)}.btn-ghost:hover{border-color:var(--neon);color:var(--neon)}.section{max-width:1200px;margin:0 auto;padding:7rem 2rem;position:relative;z-index:1}.section-label{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--neon);margin-bottom:.75rem;display:inline-flex;align-items:center;gap:.75rem}.section-label:before{content:"";width:30px;height:1px;background:var(--neon);opacity:.9}.section-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:900;letter-spacing:-.04em;line-height:1.15;margin-bottom:1rem;color:var(--text)}.section-desc{color:var(--text2);font-family:var(--font-body);font-size:1.05rem;max-width:550px;line-height:1.75;margin-bottom:3rem}.section.is-centered{text-align:center}.section.is-centered .section-label{justify-content:center}.section.is-centered .section-label:before{width:22px}.section.is-centered .section-desc{margin-left:auto;margin-right:auto;max-width:720px}.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;align-items:start}.about-text p{color:var(--text2);font-family:var(--font-body);line-height:1.8;margin-bottom:1.25rem;font-size:1rem}.about-text p strong{color:var(--text);font-weight:600}.about-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.stat-card{background:var(--card-glass);border:1px solid var(--card-glass-border);border-radius:14px;padding:1.6rem;text-align:center;transition:transform .42s var(--ease-out),box-shadow .42s var(--ease-out),border-color .42s var(--ease-out);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--neon),transparent);opacity:0;transition:opacity .3s}.stat-card:hover{border-color:rgba(var(--neon-rgb),.28);box-shadow:var(--card-shadow-hover)}.stat-card:hover:before{opacity:1}.stat-number{font-family:var(--font-display);font-size:clamp(1.85rem,4.2vw,2.35rem);font-weight:850;color:var(--neon);line-height:1;margin-bottom:.55rem;letter-spacing:-.02em}.stat-label{font-family:var(--font-mono);font-size:.68rem;color:var(--text2);text-transform:uppercase;letter-spacing:.12em;line-height:1.35;opacity:.92}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.skill-card{background:var(--card-glass);border:1px solid var(--card-glass-border);border-radius:14px;padding:2rem 1.75rem;transition:transform .42s var(--ease-out),box-shadow .42s var(--ease-out),border-color .42s var(--ease-out);position:relative;overflow:hidden;text-align:center;display:flex;flex-direction:column;align-items:center}.skill-card:after{content:"";position:absolute;inset:0;border-radius:14px;background:radial-gradient(circle at 50% 0%,rgba(var(--neon-rgb),.05),transparent 60%);opacity:0;transition:opacity .3s}.skill-card:hover{box-shadow:var(--card-shadow-hover);border-color:rgba(var(--neon-rgb),.2)}.skill-card:hover:after{opacity:1}.skill-icon{margin:0 auto 1.05rem;display:flex;align-items:center;justify-content:center;width:auto;height:auto;padding:0;background:transparent!important;border:none!important;border-radius:0;position:relative;z-index:1}.skill-icon svg{width:34px;height:34px}.skill-card h3{font-family:var(--font-display);font-size:1.05rem;font-weight:750;margin-bottom:.9rem;letter-spacing:-.015em;position:relative;z-index:1}.skill-tags{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center;position:relative;z-index:1}.skill-tag{font-family:var(--font-mono);font-size:.6rem;padding:.32rem .65rem;border-radius:6px;background:var(--tag-bg);color:var(--text2);border:1px solid var(--tag-border);transition:all .2s;letter-spacing:.02em}.skill-card:hover .skill-tag{border-color:var(--tag-border-hover);background:var(--tag-bg-hover)}.proficiency{margin-top:4rem;background:var(--card-glass);border:1px solid var(--card-glass-border);border-radius:14px;padding:2.5rem;transition:var(--transition-theme)}.proficiency h3{font-family:var(--font-mono);font-size:.75rem;color:var(--neon);text-transform:uppercase;letter-spacing:.1em;margin-bottom:2rem}.prof-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 3rem}.projects-head{display:grid;grid-template-columns:1.15fr .85fr;gap:2rem;align-items:center;margin-bottom:2.25rem;min-width:0}.projects-head-text{min-width:0}.projects-head-hound{width:var(--dragon-size);max-width:100%;aspect-ratio:3 / 2;justify-self:end;pointer-events:none;opacity:.92}.projects-head-hound .hellhound-container,.projects-head-hound .hellhound-stack{width:100%;height:100%}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.project-card{background:var(--card-glass);border:1px solid var(--card-glass-border);border-radius:14px;padding:3.25rem 2rem 2rem;position:relative;overflow:hidden;cursor:pointer;text-decoration:none;color:inherit;display:block;transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out),border-color .35s var(--ease-out);min-width:0}.project-card:hover{border-color:rgba(var(--neon-rgb),.18);box-shadow:var(--card-shadow-hover)}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(var(--neon-rgb),.55),transparent);opacity:0;transition:opacity .25s ease}.project-card:hover:before{opacity:1}.project-card.featured{grid-column:1 / -1;display:grid;grid-template-columns:1.3fr 1fr;gap:2.5rem;align-items:center;padding-top:3.25rem;text-align:left}.project-card.featured>div{align-self:start;min-width:0}.project-tag{position:absolute;top:1.1rem;left:1.1rem;margin:0;z-index:2;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.58rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;padding:.32rem .75rem;border-radius:999px;border:1px solid rgba(var(--neon-rgb),.12);background:rgba(var(--neon-rgb),.08)}.project-title{font-family:var(--font-display);font-size:1.25rem;font-weight:750;margin-bottom:.75rem;letter-spacing:-.02em;display:inline-flex;align-items:center;gap:.5rem}.arrow-icon{display:inline-flex;align-items:center;justify-content:center;opacity:.55;transform:translateY(-.5px);transition:opacity .2s ease,transform .2s ease}.project-card:hover .arrow-icon{opacity:.95;transform:translateY(-1px)}.project-card p{font-family:var(--font-body);font-size:.95rem;color:var(--text2);line-height:1.7;max-width:min(58ch,100%);margin:0 auto;white-space:normal;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.project-tech{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.25rem}.project-card:not(.featured) .project-tech{justify-content:center}.project-preview{background:var(--bg);border:1px solid var(--border);border-radius:12px;height:220px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;min-width:0}.project-preview-text{font-family:var(--font-mono);font-size:.85rem;color:var(--neon);z-index:1;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.project-preview:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg,transparent,rgba(var(--neon-rgb),.05),transparent,rgba(var(--orange-rgb),.05),transparent)}@media(max-width:900px){.projects-head{grid-template-columns:1fr;gap:1rem}.projects-head-hound{width:var(--dragon-size);justify-self:center;opacity:.95}.projects-grid{grid-template-columns:1fr}.project-card.featured{grid-template-columns:1fr;gap:1.25rem;text-align:center;align-items:start}.project-card.featured .project-title,.project-card.featured .project-tech{justify-content:center}.project-card.featured .project-preview{width:100%;max-width:520px;margin:.25rem auto 0;height:clamp(170px,32vw,220px)}}@media(max-width:420px){.projects-head-hound{opacity:.85}}.edu-timeline{position:relative;display:grid;gap:1.25rem;width:min(920px,100%);margin:0 auto}.edu-item{position:relative;display:grid;grid-template-columns:44px 1fr;gap:.85rem;align-items:start;background:transparent;overflow:visible;box-shadow:none!important;min-width:0}.edu-item:before,.edu-item:after{content:none!important}.edu-item:hover{transform:translate(6px)}.edu-rail{position:relative;width:44px;min-height:100%}.edu-rail:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-50%);background:linear-gradient(180deg,transparent,rgba(var(--neon-rgb),.35),transparent)}.edu-dot{position:absolute;left:50%;top:2rem;transform:translate(-50%);width:34px;height:34px;border-radius:999px;display:grid;place-items:center;border:1px solid rgba(var(--neon-rgb),.2);background:rgba(var(--neon-rgb),.06);box-shadow:0 0 0 6px rgba(var(--neon-rgb),.03);z-index:2}.edu-dot-inner{width:26px;height:26px;border-radius:999px;display:grid;place-items:center;background:#00000040;border:1px solid rgba(var(--neon-rgb),.16)}.edu-dot-inner svg{opacity:.95}.edu-card{background:var(--card-glass);border:1px solid var(--card-glass-border);border-radius:14px;padding:2rem;transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out),border-color .3s var(--ease-out);min-width:0}.edu-card:hover{border-color:rgba(var(--neon-rgb),.3);transform:translate(8px);box-shadow:var(--card-shadow)}.edu-meta{font-family:var(--font-mono);font-size:.68rem;color:var(--neon);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}.edu-card h3{font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin-bottom:.5rem}.edu-card p{font-family:var(--font-body);font-size:.95rem;color:var(--text2);line-height:1.75;white-space:normal;max-width:100%;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.contact-card{background:var(--card-glass);border:1px solid var(--card-glass-border);border-radius:14px;padding:2rem;display:flex;align-items:center;gap:1.25rem;text-decoration:none;color:inherit;transition:transform .42s var(--ease-out),box-shadow .42s var(--ease-out),border-color .42s var(--ease-out)}.contact-card:hover{border-color:rgba(var(--neon-rgb),.3);box-shadow:var(--card-shadow-hover)}.contact-icon{width:52px;height:52px;min-width:52px;border-radius:14px;background:rgba(var(--neon-rgb),.08);border:1px solid rgba(var(--neon-rgb),.15);display:flex;align-items:center;justify-content:center;transition:all .3s}.contact-card:hover .contact-icon{background:rgba(var(--neon-rgb),.15);box-shadow:0 0 20px rgba(var(--neon-rgb),.15);transform:scale(1.05)}.contact-label{font-family:var(--font-mono);font-size:.65rem;color:var(--text2);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.2rem}.contact-value{font-family:var(--font-display);font-size:.92rem;font-weight:600;max-width:100%;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.footer{max-width:1200px;margin:0 auto;padding:3rem 2rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1;transition:var(--transition-theme)}.footer p{font-family:var(--font-mono);font-size:.72rem;color:var(--text2)}.footer a{font-family:var(--font-mono);font-size:.72rem;color:var(--text2);text-decoration:none;transition:color .2s}.footer a:hover{color:var(--neon)}@keyframes navSlideInRight{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@media(max-width:1024px){:root{--dragon-size: clamp(320px, 60vw, 520px)}.hero-layout{grid-template-columns:1fr;text-align:left;align-items:start}.hero-content{display:flex;flex-direction:column;align-items:flex-start}.hero-sub{max-width:520px}.hero-tags,.hero-actions{justify-content:flex-start}.hero-visual{margin-top:2rem;width:100%;display:grid;place-items:center}.hero-visual .dragon-container{width:100%;display:grid;place-items:center}.hero-visual .dragon-stack{width:var(--dragon-size);max-width:100%;margin-inline:auto;justify-self:center}}@media(max-width:900px){.skills-grid{grid-template-columns:1fr 1fr}.prof-grid,.projects-grid{grid-template-columns:1fr}.project-card.featured{grid-template-columns:1fr;gap:1.25rem;padding:1.85rem 1.5rem;text-align:center;align-items:start}.project-card.featured .project-title,.project-card.featured .project-tech{justify-content:center}.project-card.featured .project-preview{width:100%;max-width:520px;margin:.25rem auto 0;height:clamp(170px,32vw,220px)}}@media(max-width:768px){:root{--dragon-size: min(86vw, 440px)}.hero-sub{width:100%;max-width:100%;overflow-wrap:break-word;word-break:break-word}.mobile-toggle{display:flex}.hero-card{padding:2rem 1.25rem;border-radius:1.25rem;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.dragon-glow{transition:none}.hero-layout{grid-template-columns:1fr;align-items:center;text-align:left;padding:0}.hero-content{align-items:flex-start}.hero h1{font-size:clamp(2.5rem,10vw,3.5rem)}.hero-visual{width:100%;justify-self:center;align-self:center;display:grid;place-items:center;margin-top:1rem;padding-left:0!important;padding-right:0!important}.hero-visual .dragon-container{width:100%;display:grid;place-items:center;margin:0 auto}.hero-visual .dragon-stack{width:var(--dragon-size);max-width:100%;margin-inline:auto;justify-self:center;align-self:center}.hero-visual .dragon-stack,.hero-visual .dragon-container{left:auto!important;right:auto!important;transform:none!important}body{font-size:15px}[data-theme=light] .hero-card{background:linear-gradient(135deg,#0ea5c90d,#ffffffe0,#0ea5c908);border-color:#0ea5c933;box-shadow:0 4px 40px #0ea5c90f}.nav-links{display:none;position:absolute;top:69px;right:.75rem;left:auto;border-top:0;border-radius:0 0 14px 14px;width:150px;box-sizing:border-box;padding:10px;gap:8px;overflow:hidden;grid-template-columns:1fr auto;grid-auto-rows:min-content;align-items:center;background:var(--nav-panel-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--nav-panel-border);box-shadow:0 18px 60px #0000008c;z-index:2000}.nav-links:before{content:"";position:absolute;top:-10px;right:14px;width:18px;height:18px;background:var(--nav-panel-bg);border-left:1px solid var(--nav-panel-border);border-top:1px solid var(--nav-panel-border);transform:rotate(45deg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.nav-links.open{display:grid;animation:navSlideInRight .35s var(--ease-spring)}.nav-links .nav-link{grid-column:1 / -1;justify-self:end;text-align:right}.nav-links .nav-cta{grid-column:1;justify-self:end;margin:.3rem 0 0;padding:.5rem 1rem}.nav-links .theme-toggle{grid-column:2;justify-self:end;align-self:center;margin:.3rem 0 0}.section{padding:5rem 1.5rem}.about-grid{grid-template-columns:1fr;gap:2.5rem}.skills-grid,.projects-grid,.project-card.featured,.contact-grid{grid-template-columns:1fr}.footer{flex-direction:column;gap:1rem;text-align:center}.hero-scroll{display:none}}@media(max-width:520px){:root{--dragon-size: min(90vw, 380px)}.hero-actions{justify-content:center}.hero-actions .btn-neon,.hero-actions .btn-ghost{flex:1 1 0;min-width:0;justify-content:center;padding:.75rem 1rem;font-size:.85rem;white-space:nowrap}.hero-actions .btn-neon span:last-child{display:none}.project-card.featured{padding:3.1rem 1.25rem 1.6rem;gap:1rem}.project-tag{top:.9rem;left:.9rem}.project-card.featured .project-preview{max-width:100%;height:180px}.edu-timeline{width:100%}.edu-item{grid-template-columns:40px 1fr;gap:.75rem}.edu-rail{width:40px}.edu-card{padding:1.65rem 1.25rem}.edu-dot{top:1.65rem}}.hero-card{background:linear-gradient(135deg,rgba(var(--neon-rgb),.04),var(--card-glass),rgba(var(--neon-rgb),.02));border:1px solid rgba(var(--neon-rgb),.15);border-radius:1.5rem;padding:clamp(2.25rem,4vw,3.5rem) clamp(1.5rem,3vw,3rem);position:relative;width:100%;max-width:min(1300px,calc(100vw - 3rem));margin:0 auto;overflow:hidden}.hero-card:before{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(var(--neon-rgb),.03),transparent);pointer-events:none}.hero-card:after{content:"";position:absolute;top:-1px;left:10%;right:10%;height:2px;background:linear-gradient(90deg,transparent,rgba(var(--neon-rgb),.4),transparent);border-radius:2px}.stat-card,.skill-card,.project-card,.contact-card{position:relative;overflow:hidden}.stat-card:after,.skill-card:after,.project-card:after,.contact-card:after{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(var(--neon-rgb),.04),transparent);pointer-events:none}.stat-card:hover:after,.skill-card:hover:after,.project-card:hover:after,.contact-card:hover:after{animation:cardShine .8s ease forwards}.projects-grid{grid-template-columns:repeat(3,1fr)}.project-card.featured{text-align:left}.project-card.featured p{text-align:left;margin:0;max-width:none}.project-card.featured .project-tech,.project-card.featured .project-title{justify-content:flex-start}.project-card p{text-align:left}html[data-theme=light] .project-card{background:#ffffffd9;border-color:#00000014;box-shadow:0 2px 12px #0000000a}html[data-theme=light] .project-card:hover{border-color:rgba(var(--neon-rgb),.35);box-shadow:0 12px 40px #00000014}html[data-theme=light] .project-card:before{background:linear-gradient(90deg,transparent,rgba(var(--neon-rgb),.45),transparent)}html[data-theme=light] .project-tag{background:rgba(var(--neon-rgb),.12);border-color:rgba(var(--neon-rgb),.25);font-weight:700}html[data-theme=light] .skill-tag{border-color:#0000001f;color:var(--text)}.project-preview{background:linear-gradient(135deg,var(--bg2),var(--bg3));border-color:var(--border)}@media(max-width:900px){.projects-grid{grid-template-columns:1fr 1fr}}@media(max-width:768px){.projects-grid{grid-template-columns:1fr}.section>div[style*="grid-template-columns: repeat(4"]{grid-template-columns:1fr 1fr!important}}.hero{padding-top:5rem;padding-bottom:2rem;min-height:100vh;min-height:100dvh}.hero-card{padding:clamp(2rem,3.5vw,3rem) clamp(1.5rem,3vw,3rem)}.hero-layout{gap:2rem;align-items:center}.hero-visual{min-height:0}html[data-theme=light] .stat-card,html[data-theme=light] .skill-card,html[data-theme=light] .project-card,html[data-theme=light] .contact-card,html[data-theme=light] .edu-card,html[data-theme=light] .proficiency{background:linear-gradient(165deg,#dcf5ff99,#ffffffd9 30%,#f0faffb3 70%,#dcf0fc80);border-color:#0ea5c926;box-shadow:0 2px 16px #0ea5c90f,inset 0 1px #fffc}html[data-theme=light] .stat-card:before,html[data-theme=light] .skill-card:after,html[data-theme=light] .project-card:before{background:linear-gradient(90deg,transparent 5%,rgba(14,165,201,.25) 30%,rgba(180,230,255,.4) 50%,rgba(14,165,201,.25) 70%,transparent 95%)}html[data-theme=light] .stat-card:hover,html[data-theme=light] .skill-card:hover,html[data-theme=light] .project-card:hover,html[data-theme=light] .contact-card:hover,html[data-theme=light] .edu-card:hover{border-color:#0ea5c94d;box-shadow:0 8px 32px #0ea5c91a,0 2px 8px #0ea5c90f,inset 0 1px #ffffffe6}html[data-theme=light] .skill-tag,html[data-theme=light] .hero-tag{background:#0ea5c912;border-color:#0ea5c92e;color:#1a6b80}html[data-theme=light] .skill-card:hover .skill-tag{background:#0ea5c91f;border-color:#0ea5c94d;color:#0e7490}html[data-theme=light] .hero-tag:hover{background:#0ea5c924;border-color:#0ea5c966;color:#0e7490}html[data-theme=light] .project-tag{background:#0ea5c914;border-color:#0ea5c933;font-weight:700}html[data-theme=light] .hero-card{background:linear-gradient(145deg,#dcf5ff73,#ffffffe0,#f5fcffbf,#e6f8ff99,#d7f0fa73);border-color:#0ea5c92e;box-shadow:0 4px 40px #0ea5c90f,inset 0 1px #ffffffe6}html[data-theme=light] .hero-card:after{background:linear-gradient(90deg,transparent 5%,rgba(14,165,201,.3) 30%,rgba(180,235,255,.5) 50%,rgba(14,165,201,.3) 70%,transparent 95%)}html[data-theme=light] .stat-number{color:#0891b2}html[data-theme=light] .edu-dot{background:#0ea5c914;border-color:#0ea5c940;box-shadow:0 0 0 6px #0ea5c90a}html[data-theme=light] .edu-dot-inner{background:#fffc;border-color:#0ea5c933}html[data-theme=light] .edu-rail:before{background:linear-gradient(180deg,transparent,rgba(14,165,201,.35),transparent)}html[data-theme=light] .contact-icon{background:#0ea5c914;border-color:#0ea5c92e}html[data-theme=light] .contact-card:hover .contact-icon{background:#0ea5c926;box-shadow:0 0 16px #0ea5c91f}html[data-theme=light] .project-preview{background:linear-gradient(135deg,#e6f8ffcc,#f5fcffe6,#dcf2fcb3);border-color:#0ea5c91f}html[data-theme=light] .proficiency{background:linear-gradient(165deg,#e1f8ff80,#ffffffd9,#ebfaff99)}html[data-theme=light] .nav{background:#f8fdfff2}html[data-theme=light] .nav.scrolled{border-bottom-color:#0ea5c91f;box-shadow:0 1px 12px #0ea5c90a}html[data-theme=light] .hero-badge{background:#0ea5c90f;border-color:#0ea5c938}html[data-theme=light] .btn-neon{box-shadow:0 0 24px #0ea5c933}html[data-theme=light] .btn-neon:hover{box-shadow:0 0 40px #0ea5c94d}html[data-theme=light] .btn-ghost{border-color:#0ea5c940}html[data-theme=light] .btn-ghost:hover{border-color:#0ea5c980;color:#0891b2}html[data-theme=light]::-webkit-scrollbar-thumb{background:#0ea5c933}html[data-theme=light]::-webkit-scrollbar-thumb:hover{background:#0ea5c980}html[data-theme=light] .stat-card:hover:after,html[data-theme=light] .skill-card:hover:after,html[data-theme=light] .project-card:hover:after,html[data-theme=light] .contact-card:hover:after{background:linear-gradient(90deg,transparent,rgba(180,235,255,.15),transparent)}html[data-theme=light] .footer{border-top-color:#0ea5c91a}@media(min-width:1025px){:root{--nav-pad: 1.5rem}}.section-with-hound{position:relative;overflow:visible}.section-with-hound>:not(.hellhound-sentinel){position:relative;z-index:1}.hellhound-sentinel{position:absolute;z-index:0;pointer-events:none;top:52%;right:0;transform:translateY(-50%);width:min(760px,58vw);aspect-ratio:2 / 1;max-width:760px;opacity:.92;filter:saturate(1.02) contrast(1.02)}.hellhound-sentinel>*{width:100%;height:100%}:root{--card-hover-ms: .42s;--card-lift: 6px}html[data-theme=light]{--card-lift: 4px}.stat-card,.skill-card,.project-card,.contact-card{transition:transform var(--card-hover-ms) var(--ease-out),box-shadow var(--card-hover-ms) var(--ease-out),border-color var(--card-hover-ms) var(--ease-out);transform:translateZ(0);backface-visibility:hidden}@media(hover:hover)and (pointer:fine){.stat-card:hover,.skill-card:hover,.project-card:hover,.contact-card:hover{transform:translate3d(0,calc(var(--card-lift) * -1),0)}}
