:root{--bg:#0a0e14;--bg-alt:#10151d;--card:#131922;--border:#232b36;--text:#e6e9ef;--text-dim:#9aa4b2;--accent:#22d3ee;--accent-2:#6366f1;--radius:14px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;scroll-behavior:smooth}a{color:var(--accent);text-decoration:none}.container{max-width:1100px;margin:0 auto;padding:0 24px;position:relative;z-index:1}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(10,14,20,.8);border-bottom:1px solid var(--border)}.nav-inner{max-width:1100px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between}.logo{font-weight:700;font-size:18px;letter-spacing:.5px;transition:transform .3s ease;display:inline-block}.logo:hover{transform:perspective(300px) rotateY(10deg)}.nav-links{display:flex;gap:24px;list-style:none;margin:0;padding:0}.nav-links a{color:var(--text-dim);font-size:14px;position:relative;padding-bottom:4px}.nav-links a:after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:linear-gradient(90deg,var(--accent-2),var(--accent));transition:width .3s ease}.nav-links a:hover{color:var(--text)}.nav-links a:hover:after{width:100%}.hero{position:relative;overflow:hidden;padding:96px 0 64px;text-align:center;background:radial-gradient(circle at 50% -10%,rgba(99,102,241,.25),transparent 60%)}.hero:after,.hero:before{content:"";position:absolute;width:340px;height:340px;border-radius:50%;filter:blur(90px);opacity:.35;z-index:0;animation:floatBlob 12s ease-in-out infinite;pointer-events:none}.hero:before{background:var(--accent-2);top:-120px;left:6%}.hero:after{background:var(--accent);top:-60px;right:8%;animation-delay:-6s}@keyframes floatBlob{0%,to{transform:translate(0) scale(1)}50%{transform:translate(40px,30px) scale(1.15)}}.hero-3d{position:absolute;perspective:900px;z-index:0;pointer-events:none;opacity:.6}.hero-3d-a{top:70px;right:8%;width:90px;height:90px}.hero-3d-b{bottom:20px;left:6%;width:60px;height:60px;opacity:.45}.cube{width:100%;height:100%;position:relative;transform-style:preserve-3d;animation:cubeSpin 18s linear infinite}.hero-3d-b .cube{animation-duration:13s;animation-direction:reverse}.face{position:absolute;width:100%;height:100%;border:1px solid var(--accent);background:linear-gradient(135deg,rgba(99,102,241,.35),rgba(34,211,238,.15))}.hero-3d-a .face{transform:translateZ(45px)}.hero-3d-a .face.back{transform:translateZ(-45px) rotateY(180deg)}.hero-3d-a .face.right{transform:rotateY(90deg) translateZ(45px)}.hero-3d-a .face.left{transform:rotateY(-90deg) translateZ(45px)}.hero-3d-a .face.top{transform:rotateX(90deg) translateZ(45px)}.hero-3d-a .face.bottom{transform:rotateX(-90deg) translateZ(45px)}.hero-3d-b .face{transform:translateZ(30px)}.hero-3d-b .face.back{transform:translateZ(-30px) rotateY(180deg)}.hero-3d-b .face.right{transform:rotateY(90deg) translateZ(30px)}.hero-3d-b .face.left{transform:rotateY(-90deg) translateZ(30px)}.hero-3d-b .face.top{transform:rotateX(90deg) translateZ(30px)}.hero-3d-b .face.bottom{transform:rotateX(-90deg) translateZ(30px)}@keyframes cubeSpin{0%{transform:rotateX(0deg) rotateY(0deg)}to{transform:rotateX(1turn) rotateY(1turn)}}@media (max-width:900px){.hero-3d{display:none}}.hero-eyebrow{color:var(--accent);letter-spacing:2px;text-transform:uppercase;font-size:13px;font-weight:600}.hero h1{font-size:48px;margin:12px 0 8px;background:linear-gradient(90deg,var(--text),var(--accent),var(--accent-2),var(--text));background-size:300% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gradientShift 7s linear infinite}@keyframes gradientShift{to{background-position:300%}}.hero p.role{font-size:20px;color:var(--text-dim);margin-bottom:24px}.hero-contact{flex-wrap:wrap;gap:16px;font-size:14px;color:var(--text-dim);margin-bottom:28px}.hero-contact,.hero-cta{display:flex;justify-content:center}.hero-cta{gap:14px}.btn{display:inline-block;padding:12px 22px;border-radius:999px;font-weight:600;font-size:14px;border:1px solid var(--border);transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.btn-primary{background:linear-gradient(90deg,var(--accent-2),var(--accent));color:#051018;border:none}.btn-primary:hover{transform:perspective(600px) translateY(-3px) rotateX(8deg);box-shadow:0 14px 34px rgba(34,211,238,.35)}.btn-secondary{color:var(--text)}.btn-secondary:hover{transform:perspective(600px) translateY(-3px) rotateX(8deg);background:var(--bg-alt)}section{padding:72px 0;border-top:1px solid var(--border)}.section-title{font-size:13px;text-transform:uppercase;letter-spacing:2px;color:var(--accent);margin-bottom:8px}.section-heading{font-size:30px;margin:0 0 32px}.about-text{color:var(--text-dim);font-size:16px;line-height:1.8;max-width:760px}.timeline{display:flex;flex-direction:column;gap:32px}.timeline-item{border:1px solid var(--border);border-radius:var(--radius);padding:24px;background:var(--card);transition:box-shadow .3s ease,border-color .3s ease}.timeline-item:hover{box-shadow:0 20px 40px rgba(0,0,0,.4);border-color:var(--accent)}.timeline-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:12px}.timeline-role{font-size:18px;font-weight:700}.timeline-company{color:var(--accent);font-size:14px}.timeline-period{color:var(--text-dim);font-size:13px;white-space:nowrap}.timeline ul{margin:0;padding-left:20px;color:var(--text-dim);line-height:1.7;font-size:14.5px}.timeline li{margin-bottom:6px}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:20px;gap:20px}.skill-card{border:1px solid var(--border);border-radius:var(--radius);padding:20px;background:var(--card);transition:box-shadow .3s ease,border-color .3s ease}.skill-card:hover{box-shadow:0 20px 40px rgba(0,0,0,.4);border-color:var(--accent)}.skill-card h3{margin:0 0 12px;font-size:15px;color:var(--accent)}.skill-tags{display:flex;flex-wrap:wrap;gap:8px}.tag{background:var(--bg-alt);border:1px solid var(--border);border-radius:999px;padding:5px 12px;font-size:13px;color:var(--text-dim);transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease;display:inline-block}.tag:hover{transform:perspective(300px) translateZ(6px) scale(1.05);background:rgba(34,211,238,.12);color:var(--accent);border-color:var(--accent)}.cards-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:20px;gap:20px}.info-card{border:1px solid var(--border);border-radius:var(--radius);padding:24px;background:var(--card);transition:box-shadow .3s ease,border-color .3s ease}.info-card:hover{box-shadow:0 20px 40px rgba(0,0,0,.4);border-color:var(--accent)}.info-card h3{margin:0 0 8px;font-size:16px}.info-card p{margin:4px 0;color:var(--text-dim);font-size:14px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:20px;gap:20px}.project-card{border:1px solid var(--border);border-radius:var(--radius);padding:24px;background:var(--card);transition:box-shadow .3s ease,border-color .3s ease}.project-card:hover{box-shadow:0 20px 40px rgba(0,0,0,.4);border-color:var(--accent)}.project-card h3{margin:0 0 10px;font-size:17px}.project-card p{color:var(--text-dim);font-size:14.5px;line-height:1.6;margin:0}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:20px;gap:20px}.contact-card{border:1px solid var(--border);border-radius:var(--radius);padding:20px;background:var(--card);text-align:center;transition:box-shadow .3s ease,border-color .3s ease}.contact-card:hover{box-shadow:0 20px 40px rgba(0,0,0,.4);border-color:var(--accent)}.contact-card .label{color:var(--text-dim);font-size:12px;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}.contact-card .value{font-size:15px;font-weight:600}.tilt-card{transition:transform .15s ease-out;will-change:transform;transform-style:preserve-3d}footer{border-top:1px solid var(--border);padding:32px 0;text-align:center;color:var(--text-dim);font-size:13px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media (max-width:640px){.hero h1{font-size:34px}.nav-links{display:none}}