.heading-xl{font-size:3.5rem;font-weight:900;line-height:1.1;letter-spacing:-2px;background:linear-gradient(120deg,#2563eb,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem}.heading-lg{font-size:2.25rem;font-weight:700;color:#22223b;margin-bottom:1.5rem}.heading-md{font-size:1.5rem;font-weight:600;color:#3b3b4f;margin-bottom:1rem}.text-gradient{background:linear-gradient(120deg,#2563eb,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.section{padding:.5rem 0 2rem;position:relative;background:#f8fafc}.container{max-width:1100px;margin:0 auto;padding:0 2rem}.card{background:#fff;box-shadow:0 4px 24px #2563eb12,0 1.5px 6px #00000008;border-radius:1.25rem;padding:.7rem 2rem 2.5rem;border:1px solid #e5e7eb;transition:box-shadow .3s cubic-bezier(.25,.8,.25,1),transform .3s cubic-bezier(.25,.8,.25,1)}.card-static{background:#fff;box-shadow:0 4px 24px #2563eb12,0 1.5px 6px #00000008;border-radius:1.25rem;padding:.7rem 2rem 2.5rem;border:1px solid #e5e7eb}.card:not(.card-static):hover{box-shadow:0 8px 32px #2563eb1f,0 3px 12px #0000000f;transform:translateY(-6px) scale(1.02)}.grid{display:grid;gap:2rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}@media (max-width: 900px){.container{padding:0 1rem}.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-2,.grid-3{grid-template-columns:1fr}.heading-xl{font-size:2.25rem;margin-bottom:.8rem}.heading-lg{font-size:1.5rem}.card,.card-static{padding:.5rem 1rem 1.5rem}.section{padding:.25rem 0 1rem}}.fade-in{opacity:0;animation:fadeIn .7s cubic-bezier(.25,.8,.25,1) forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.accent-line{height:3px;width:60px;background:linear-gradient(90deg,#2563eb,#60a5fa);margin:1rem 0 2rem;border-radius:2px}.highlight{position:relative;display:inline-block}.highlight:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:8px;background:#60a5fa26;z-index:-1}.button{display:inline-block;padding:.75rem 1.5rem;background:#2563eb;border:none;border-radius:.5rem;color:#fff;font-weight:600;text-decoration:none;transition:background .2s,transform .2s,box-shadow .2s;box-shadow:0 2px 8px #2563eb14;width:80%;text-align:center;cursor:pointer}.button:hover{background:#1d4ed8;transform:translateY(-2px) scale(1.03);box-shadow:0 4px 16px #2563eb21}.button.primary{background:linear-gradient(120deg,#2563eb,#60a5fa);color:#fff;border:none}.button.primary:hover{filter:brightness(1.08);background:linear-gradient(120deg,#1d4ed8,#60a5fa)}.skill-set,.tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.skill,.tag{background:#2563eb14;color:#2563eb;padding:.3rem 1rem;border-radius:9999px;font-size:.95rem;font-weight:500;letter-spacing:.02em}:root{--primary: #2563eb;--secondary: #60a5fa;--background: #f8fafc;--text: #22223b;--transition: all .3s cubic-bezier(.25,.8,.25,1)}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;color:var(--text);background:var(--background)}.header{position:fixed;top:0;width:100%;background:#f8fafcf7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:var(--transition);z-index:1000;border-bottom:1px solid #e5e7eb}.header-scrolled{box-shadow:0 2px 20px #2563eb12}.header-content{max-width:1100px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo{text-decoration:none;color:var(--primary)}.logo h1{font-size:1.5rem;font-weight:800;margin:0;letter-spacing:-1px}nav ul{display:flex;gap:2rem;list-style:none;margin:0;padding:0}nav a{text-decoration:none;color:var(--text);font-weight:600;position:relative;padding:.5rem 0;transition:color .2s}nav a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--primary);transition:var(--transition)}nav a:hover,nav a.active{color:var(--primary)}nav a:hover:after,nav a.active:after{width:100%}main{margin-top:90px;min-height:calc(100vh - 180px);padding:2rem 0;max-width:1100px;margin-left:auto;margin-right:auto}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transform:translateY(0);transition:var(--transition)}.footer{background:#22223b;color:#e5e7eb;text-align:center;padding:2rem 0 1rem;font-size:1rem;margin-top:3rem;border-top:1px solid #e5e7eb}
