﻿*{box-sizing:border-box;margin:0;padding:0}html{background-color:#0f172a}body{background:linear-gradient(135deg,#0f172a 0%,#1e1b4b 50%,#4c1d95 100%);background-attachment:fixed;color:#f8fafc;font-family:inter,system-ui,-apple-system,sans-serif;line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}.background{position:fixed;top:0;left:0;width:100vw;height:100vh;background:linear-gradient(135deg,#0f172a 0%,#1e1b4b 50%,#4c1d95 100%);z-index:-1}.container{max-width:1000px;margin:0 auto;padding:0 2rem}a{color:inherit;text-decoration:none;transition:color .2s ease}a:hover{color:#38bdf8}.site-header{position:sticky;top:0;z-index:50;padding:1rem 0;background:rgba(15,23,42,.4);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.1)}.site-header nav{display:flex;justify-content:space-between;align-items:center}.site-header .logo{font-weight:800;font-size:1.5rem;background:linear-gradient(to right,#fff,#38bdf8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.site-header .nav-links{display:flex;gap:2rem}.site-header .nav-links .nav-item{font-weight:500;display:flex;align-items:center;gap:.5rem}.site-header .nav-links .nav-item:hover{color:#38bdf8;text-shadow:0 0 10px rgba(56,189,248,.3)}.hero{padding:8rem 0 5rem;text-align:center}.hero__image-wrapper{margin-bottom:2rem}.hero__image-wrapper .hero__image{border-radius:50%;border:4px solid #fff;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);object-fit:cover}.hero__greeting{display:block;font-size:1.1rem;color:#38bdf8;margin-bottom:1rem;font-family:monospace}.hero__title{font-size:3.5rem;line-height:1.1;font-weight:800;margin-bottom:1.5rem;background:linear-gradient(to right,#fff,#a5b4fc);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero__bio{font-size:1.25rem;color:#94a3b8;max-width:65ch;margin:0 auto 2.5rem}.hero .current-learning{margin-top:1.5rem;margin-bottom:3rem}.hero .current-learning__label{font-size:.875rem;color:#38bdf8;text-transform:uppercase;letter-spacing:.05em;margin-right:.5rem}.hero .current-learning__tech{font-weight:700;color:#fff;background:rgba(255,255,255,.1);padding:.25rem .75rem;border-radius:99px}.btn{display:inline-flex;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;margin-right:1rem;transition:all .2s ease}.btn--primary{background:#38bdf8;color:#0f172a}.btn--primary:hover{background:#69cdfa;box-shadow:0 0 15px rgba(56,189,248,.4)}.btn--outline{background:rgba(255,255,255,5%);border:1px solid rgba(255,255,255,.2);color:#f8fafc}.btn--outline:hover{border-color:#38bdf8;color:#38bdf8;background:rgba(255,255,255,.1)}.projects-section{padding-bottom:4rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;margin-top:3rem}.project-card{background:rgba(15,23,42,.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;display:flex;flex-direction:column;position:relative;transition:all .4s cubic-bezier(.25,.8,.25,1);overflow:hidden}.project-card:hover{transform:translateY(-7px);background:linear-gradient(145deg,rgba(30,27,75,.8),rgba(131,24,67,.3));border-color:#db2777;box-shadow:0 20px 40px -10px rgba(0,0,0,.5)}.project-card__title{font-size:1.5rem;font-weight:700;margin-bottom:1rem}.project-card__title a{color:#f8fafc;text-decoration:none}.project-card__title a::before{content:'';position:absolute;inset:0;z-index:1}.project-card__meta{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.5rem}.project-card__summary{color:#94a3b8;font-size:.95rem;margin-bottom:2rem;flex-grow:1}.project-card__footer{margin-top:auto;z-index:2}.tech-badge{font-size:.75rem;font-family:monospace;background:rgba(255,255,255,.1);color:#38bdf8;padding:.3rem .8rem;border-radius:4px;border:1px solid rgba(56,189,248,.2)}.link-arrow{color:#38bdf8;font-weight:600;display:flex;align-items:center}.link-arrow::after{content:"→";margin-left:8px;transition:transform .3s ease}.project-card:hover .link-arrow{color:#fff}.project-card:hover .link-arrow::after{transform:translateX(6px)}footer{margin-top:4rem;padding:2rem 0;border-top:1px solid rgba(255,255,255,.1);color:#94a3b8;text-align:center;font-size:.9rem}.contact-text{color:#94a3b8}.email-link{color:#f8fafc;font-size:1.5rem;font-weight:700;display:block;margin:1rem 0}