@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400;1,700&family=DM+Mono:wght@300;400;500&family=Nunito:wght@300;400;500;600&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}:root{--primary: #1a1a2e;--accent: #e94560;--accent2: #f5a623;--surface: #16213e;--surface2: #0f3460;--text: #eaeaea;--text-muted: #8899aa;--card-bg: rgba(22,33,62,.85);--font-display: "Playfair Display", serif;--font-mono: "DM Mono", monospace;--font-body: "Nunito", sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--primary)!important;color:var(--text)!important;font-family:var(--font-body)!important;overflow-x:hidden}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--primary)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:2px}.bg-animated{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}.bg-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.12;animation:orbFloat 12s ease-in-out infinite}.bg-orb:nth-child(1){width:500px;height:500px;background:var(--accent);top:-150px;right:-100px;animation-delay:0s}.bg-orb:nth-child(2){width:400px;height:400px;background:var(--surface2);bottom:100px;left:-100px;animation-delay:-4s}.bg-orb:nth-child(3){width:300px;height:300px;background:var(--accent2);top:50%;left:40%;animation-delay:-8s}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-40px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}}.navbar-custom{background:#1a1a2eeb!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(233,69,96,.15);transition:all .3s ease}.navbar-brand-custom{font-family:var(--font-display)!important;font-size:1.4rem!important;color:var(--text)!important;letter-spacing:.02em}.navbar-brand-custom span{color:var(--accent)}.nav-link-custom{font-family:var(--font-mono)!important;font-size:.72rem!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--text-muted)!important;transition:color .3s!important;position:relative;padding:8px 14px!important}.nav-link-custom:after{content:"";position:absolute;bottom:4px;left:14px;right:14px;height:1px;background:var(--accent);transform:scaleX(0);transition:transform .3s ease;transform-origin:left}.nav-link-custom:hover{color:var(--text)!important}.nav-link-custom:hover:after{transform:scaleX(1)}.hero-section{min-height:100vh;position:relative;z-index:1;display:flex;align-items:center;padding:100px 0 60px}.hero-tag{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:20px;display:flex;align-items:center;gap:10px}.hero-tag:before{content:"";display:inline-block;width:30px;height:1px;background:var(--accent)}.hero-name{font-family:var(--font-display);font-size:clamp(3rem,7vw,7rem);font-weight:700;line-height:1;color:var(--text);margin-bottom:12px}.hero-name-italic{font-style:italic;color:var(--accent);display:block}.hero-role{font-family:var(--font-mono);font-size:1rem;color:var(--text-muted);margin-bottom:28px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.role-badge{background:#e945601f;border:1px solid rgba(233,69,96,.3);color:var(--accent);padding:4px 14px;border-radius:20px;font-size:.72rem;letter-spacing:.08em}.hero-desc{font-size:1.05rem;line-height:1.8;color:var(--text-muted);max-width:480px;margin-bottom:40px;font-weight:300}.btn-primary-custom{background:var(--accent)!important;border:none!important;color:#fff!important;font-family:var(--font-mono)!important;font-size:.75rem!important;letter-spacing:.12em!important;text-transform:uppercase!important;padding:14px 32px!important;border-radius:4px!important;transition:all .3s ease!important;position:relative;overflow:hidden}.btn-primary-custom:before{content:"";position:absolute;inset:0;background:#ffffff1a;transform:translate(-100%);transition:transform .3s ease}.btn-primary-custom:hover:before{transform:translate(0)}.btn-primary-custom:hover{transform:translateY(-2px)!important;box-shadow:0 10px 30px #e945604d!important}.btn-outline-custom{background:transparent!important;border:1px solid rgba(255,255,255,.2)!important;color:var(--text)!important;font-family:var(--font-mono)!important;font-size:.75rem!important;letter-spacing:.12em!important;text-transform:uppercase!important;padding:14px 32px!important;border-radius:4px!important;transition:all .3s ease!important}.btn-outline-custom:hover{border-color:var(--accent)!important;color:var(--accent)!important;transform:translateY(-2px)!important}.hero-avatar-wrap{position:relative;display:flex;justify-content:center}.hero-avatar{width:320px;height:320px;border-radius:50%;background:linear-gradient(135deg,var(--surface2) 0%,var(--surface) 100%);border:3px solid rgba(233,69,96,.5);display:flex;align-items:center;justify-content:center;position:relative;z-index:1;box-shadow:0 0 60px #e9456026,0 0 120px #e945600d;animation:avatarPulse 4s ease-in-out infinite;overflow:hidden}.hero-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;filter:grayscale(10%) contrast(1.05);transition:transform .4s ease}.hero-avatar:hover img{transform:scale(1.06)}@keyframes avatarPulse{0%,to{box-shadow:0 0 60px #e9456026,0 0 120px #e945600d}50%{box-shadow:0 0 80px #e9456040,0 0 160px #e945601a}}.avatar-overlay{position:absolute;inset:0;border-radius:50%;background:linear-gradient(to top,rgba(233,69,96,.18) 0%,transparent 60%);z-index:2;pointer-events:none}.avatar-ring{position:absolute;border-radius:50%;border:1px solid rgba(233,69,96,.2);animation:ringRotate 20s linear infinite}.avatar-ring:nth-child(1){width:360px;height:360px;top:-20px;left:50%;transform:translate(-50%)}.avatar-ring:nth-child(2){width:400px;height:400px;top:-40px;left:50%;transform:translate(-50%);animation-direction:reverse;animation-duration:30s}.avatar-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--accent);top:10px;left:50%;transform:translate(-50%)}@keyframes ringRotate{0%{transform:translate(-50%) rotate(0)}to{transform:translate(-50%) rotate(360deg)}}.section-pad{padding:100px 0;position:relative;z-index:1}.section-label{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;display:flex;align-items:center;gap:12px}.section-label:after{content:"";flex:1;height:1px;background:#e945604d;max-width:60px}.section-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3.5rem);font-weight:700;color:var(--text);line-height:1.1;margin-bottom:16px}.section-title em{font-style:italic;color:var(--accent)}.section-subtitle{font-size:1rem;color:var(--text-muted);max-width:500px;font-weight:300;line-height:1.7}.divider{height:1px;background:linear-gradient(to right,transparent,rgba(233,69,96,.3),transparent);margin:0}.about-section{background:var(--surface)}.about-card{background:var(--card-bg);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:40px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.about-text{color:var(--text-muted);line-height:1.85;font-size:1rem;font-weight:300}.stat-box{text-align:center;padding:32px 20px;border:1px solid rgba(233,69,96,.15);border-radius:12px;background:#e945600a;transition:all .3s ease}.stat-box:hover{border-color:#e9456066;background:#e9456014;transform:translateY(-4px)}.stat-num{font-family:var(--font-display);font-size:3rem;font-weight:700;color:var(--accent);line-height:1}.stat-label{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin-top:8px}.skills-section{background:var(--primary)}.skill-card{background:var(--card-bg);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:32px;height:100%;transition:all .4s ease;position:relative;overflow:hidden}.skill-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(to right,var(--accent),var(--accent2));transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.skill-card:hover{border-color:#e9456040;transform:translateY(-6px);box-shadow:0 20px 40px #0000004d}.skill-card:hover:before{transform:scaleX(1)}.skill-icon{font-size:2.2rem;margin-bottom:16px;display:block}.skill-name{font-family:var(--font-display);font-size:1.4rem;color:var(--text);margin-bottom:10px}.skill-desc{font-size:.85rem;color:var(--text-muted);line-height:1.7;margin-bottom:20px;font-weight:300}.skill-tags{display:flex;flex-wrap:wrap;gap:6px}.skill-tag{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border:1px solid rgba(233,69,96,.25);color:var(--accent);border-radius:3px;background:#e945600f}.projects-section{background:var(--surface)}.project-card{background:var(--card-bg);border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:hidden;height:100%;transition:all .4s ease;display:flex;flex-direction:column}.project-card:hover{border-color:#e945604d;transform:translateY(-8px);box-shadow:0 30px 60px #0006}.project-thumb{height:180px;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--surface2),var(--primary));display:flex;align-items:center;justify-content:center}.project-thumb-num{font-family:var(--font-display);font-size:6rem;font-weight:700;color:#e945601f;font-style:italic;-webkit-user-select:none;user-select:none}.project-thumb-icon{position:absolute;font-size:3rem;opacity:.6}.project-body{padding:28px;flex:1;display:flex;flex-direction:column}.project-cat{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}.project-name{font-family:var(--font-display);font-size:1.5rem;color:var(--text);margin-bottom:12px}.project-desc{font-size:.88rem;color:var(--text-muted);line-height:1.7;font-weight:300;flex:1}.project-footer{margin-top:24px;display:flex;align-items:center;justify-content:space-between;padding-top:20px;border-top:1px solid rgba(255,255,255,.06)}.project-stack{display:flex;gap:8px;flex-wrap:wrap}.project-stack-tag{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.project-link{width:36px;height:36px;border-radius:50%;border:1px solid rgba(233,69,96,.3);display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:1rem;transition:all .3s;text-decoration:none;cursor:pointer}.project-link:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:rotate(45deg)}.experience-section{background:var(--primary)}.timeline-line{position:absolute;left:20px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,var(--accent),transparent)}.timeline-wrap{position:relative;padding-left:56px}.timeline-item{position:relative;padding-bottom:48px;opacity:0;transform:translate(-24px);transition:opacity .6s ease,transform .6s ease}.timeline-item.visible{opacity:1;transform:none}.timeline-dot{position:absolute;left:-44px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px solid var(--primary);box-shadow:0 0 0 3px #e9456040,0 0 12px #e945604d;z-index:1}.timeline-date{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.timeline-role{font-family:var(--font-display);font-size:1.6rem;color:var(--text);margin-bottom:4px}.timeline-org{font-size:.9rem;color:var(--text-muted);margin-bottom:14px}.timeline-desc{font-size:.9rem;color:var(--text-muted);line-height:1.75;font-weight:300;max-width:520px}.contact-section{background:var(--surface)}.contact-card{background:var(--card-bg);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:60px 48px;text-align:center;position:relative;overflow:hidden}.contact-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(to right,var(--accent),var(--accent2),var(--accent))}.contact-big{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,5rem);font-weight:700;color:var(--text);line-height:1.1;margin-bottom:20px}.contact-big em{font-style:italic;color:var(--accent)}.contact-sub{font-size:1rem;color:var(--text-muted);margin-bottom:40px;font-weight:300}.contact-email-link{font-family:var(--font-display);font-size:1.3rem;font-style:italic;color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(233,69,96,.4);padding-bottom:2px;transition:all .3s;display:inline-block;margin-bottom:48px}.contact-email-link:hover{color:var(--accent2);border-color:var(--accent2)}.social-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);text-decoration:none;padding:10px 20px;border:1px solid rgba(255,255,255,.1);border-radius:4px;transition:all .3s;margin:6px}.social-btn:hover{color:var(--accent);border-color:#e9456066;background:#e945600f;transform:translateY(-2px)}.footer-custom{background:var(--primary);border-top:1px solid rgba(255,255,255,.04);padding:28px 0;text-align:center}.footer-text{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:#ffffff2e}.marquee-section{background:var(--accent);padding:16px 0;overflow:hidden}.marquee-track{display:flex;gap:48px;width:max-content;animation:marqueeScroll 18s linear infinite}.marquee-word{font-family:var(--font-display);font-size:1rem;font-style:italic;color:#ffffffd9;white-space:nowrap}.marquee-sep{color:#fff6;font-style:normal}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.fade-up{opacity:0;transform:translateY(40px);transition:opacity .7s ease,transform .7s ease}.fade-up.visible{opacity:1;transform:none}.fade-up.delay-1{transition-delay:.1s}.fade-up.delay-2{transition-delay:.2s}.fade-up.delay-3{transition-delay:.3s}.fade-up.delay-4{transition-delay:.4s}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.cursor-blink{animation:blink 1s infinite;color:var(--accent)}.skill-progress{height:4px;background:#ffffff0f;border-radius:2px;margin-top:12px;overflow:hidden}.skill-progress-fill{height:100%;border-radius:2px;background:linear-gradient(to right,var(--accent),var(--accent2));width:0;transition:width 1.2s cubic-bezier(.25,.46,.45,.94)}
