@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--bg-color:#0f172a;--bg-surface:#1e293b;--text-main:#f8fafc;--text-muted:#94a3b8;--primary:#38bdf8;--primary-hover:#0ea5e9;--border-color:#ffffff1a;--glass-bg:#1e293bb3}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);background-image:radial-gradient(circle at 15%,#38bdf826,#0000 25%),radial-gradient(circle at 85% 30%,#38bdf81a,#0000 25%);background-attachment:fixed;font-family:Be Vietnam Pro,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}a{color:var(--primary);text-decoration:none;transition:all .3s}a:hover{color:var(--primary-hover)}.container{max-width:1000px;margin:0 auto;padding:2rem}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:1rem;padding:2rem;box-shadow:0 4px 30px #0000001a}.hero{align-items:center;gap:3rem;margin-bottom:4rem;animation:.8s ease-out fadeInDown;display:flex}.hero-img{object-fit:cover;border:4px solid var(--bg-surface);border-radius:50%;width:200px;height:200px;transition:transform .3s,box-shadow .3s;box-shadow:0 0 20px #38bdf84d}.hero-img:hover{transform:scale(1.05);box-shadow:0 0 30px #38bdf880}.hero-content h1{background:linear-gradient(90deg,#f8fafc,#38bdf8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:3.5rem;font-weight:800}.hero-content h2{color:var(--primary);margin-bottom:1rem;font-size:1.5rem;font-weight:500}.hero-content p{color:var(--text-muted);font-size:1.1rem}.section{margin-bottom:4rem;animation:.8s ease-out backwards fadeInUp}.section-title{align-items:center;gap:1rem;margin-bottom:2rem;font-size:2rem;font-weight:700;display:flex}.section-title:after{content:"";background:linear-gradient(to right, var(--primary), transparent);flex:1;height:1px}.timeline{padding-left:2rem;position:relative}.timeline:before{content:"";background:var(--border-color);width:2px;height:100%;position:absolute;top:0;left:0}.timeline-item{margin-bottom:2.5rem;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-dot{background:var(--primary);border:3px solid var(--bg-color);border-radius:50%;width:1rem;height:1rem;position:absolute;top:.3rem;left:-2.35rem;box-shadow:0 0 10px #38bdf880}.timeline-content{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:.75rem;padding:1.5rem;transition:transform .3s,border-color .3s}.timeline-content:hover{border-color:var(--primary);transform:translateY(-5px)}.timeline-date{color:var(--primary);background:#38bdf81a;border-radius:2rem;margin-bottom:.5rem;padding:.2rem .8rem;font-size:.9rem;font-weight:600;display:inline-block}.timeline-role{margin-bottom:.2rem;font-size:1.3rem;font-weight:700}.timeline-company{color:var(--text-muted);margin-bottom:1rem;font-weight:500}.timeline-desc ul{color:var(--text-muted);padding-left:1.5rem;list-style-type:disc}.timeline-desc li{margin-bottom:.5rem}.projects-grid,.skills-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:.75rem;padding:1.5rem;transition:all .3s}.card:hover{border-color:#38bdf880;transform:translateY(-5px);box-shadow:0 10px 20px #0003}.card h3{color:var(--primary);margin-bottom:.8rem;font-size:1.2rem}.card p{color:var(--text-muted);font-size:.95rem}.badge-container{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.badge{border:1px solid var(--border-color);background:#ffffff0d;border-radius:2rem;padding:.4rem 1rem;font-size:.85rem;transition:all .2s}.badge:hover{background:var(--primary);color:#fff;border-color:var(--primary)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}@media (width<=768px){.hero{text-align:center;flex-direction:column}.hero-img{margin:0 auto}.hero-content h1{font-size:2.5rem}}
