:root{--bg:#0b0b0c;--fg:#fff;--muted:#b7b7c0;--brand:#7dd3fc;--glass:rgba(255,255,255,.06);--ring: rgba(125,211,252,.45);--nav-h: 64px}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{height:100%}html,body{margin:0;background:var(--bg);color:var(--fg);font-family:Inter,system-ui,ui-sans-serif,Segoe UI,Roboto,Helvetica,Arial}a{color:inherit;text-decoration:none}.container{width:min(1100px,92vw);margin:0 auto}.nav{position:fixed;inset:16px 16px auto;display:flex;justify-content:space-between;align-items:center;padding:.6rem .9rem;background:var(--glass);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;z-index:20}.nav .brand{font-weight:800;letter-spacing:.02em}.nav nav{display:flex;gap:.9rem;align-items:center}.nav a{opacity:.75;transition:opacity .2s ease,border-color .2s ease}.nav a:hover{opacity:1}.nav a.active{opacity:1;border-bottom:2px solid var(--brand)}.nav a[aria-current=page]{opacity:1}.nav .cta{padding:.4rem .7rem;border:1px solid rgba(255,255,255,.12);border-radius:10px}a:focus-visible,.button:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:10px}[data-section],.about,.timeline,.showcase,.contact{scroll-margin-top:calc(var(--nav-h) + 32px)}section{padding:6rem 1.2rem}.hero{min-height:100svh}.panel{opacity:0;transform:translateY(40px)}.hero{position:relative;overflow:hidden;text-align:center}.hero-inner h1{font-size:clamp(3rem,10vw,7rem);margin:0;letter-spacing:.01em;opacity:0;transform:translateY(30px)}.hero-inner p{margin-top:.6rem;color:var(--muted);opacity:0;transform:translateY(18px)}.hero-ctas{margin-top:1.2rem;display:flex;gap:.6rem;justify-content:center}.glow{position:absolute;width:60vw;height:60vw;max-width:900px;max-height:900px;background:radial-gradient(45% 45% at 50% 50%,rgba(125,211,252,.25),transparent 60%);filter:blur(60px);inset:auto auto -10% -10%;transform:translateZ(0)}.button{display:inline-block;padding:.7rem 1rem;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:var(--glass)}.button.subtle{opacity:.9}.button:hover{opacity:1}.about .container{display:grid;gap:1rem;text-align:center}#about-title{font-size:clamp(1.6rem,3.4vw,2.2rem);margin:0}.about-text{color:var(--muted);font-size:clamp(.98rem,2.2vw,1.05rem);margin:0 auto;max-width:60ch}.timeline{padding:4rem 1.5rem}.timeline h2{text-align:center;margin-bottom:3rem;font-size:clamp(2rem,4vw,3rem)}.timeline{max-width:800px;margin:0 auto;position:relative}.timeline:before{content:"";position:absolute;top:0;left:20px;width:2px;height:100%;background:#ffffff1a}.timeline-list{list-style:none;margin:0;padding:0}.timeline-item{display:flex;align-items:flex-start;position:relative;margin-bottom:2.5rem}.timeline-dot{position:relative;z-index:2;width:12px;height:12px;background:var(--brand);border-radius:50%;margin-top:5px;margin-right:20px}.timeline-content{background:var(--glass);padding:1rem 1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.08);width:100%}.timeline-content h3{margin:0 0 .4rem;font-size:1.1rem}.timeline-date{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.5rem}.timeline-content p{margin:0;font-size:.95rem}.resume-link{text-align:center;margin-top:2rem}.resume-link a{color:var(--brand);font-weight:700;text-decoration:underline}.skills{padding:4rem 1.2rem}.skills .container{display:grid;gap:1.8rem}.skills h2{text-align:center;font-size:clamp(2rem,4vw,3rem);margin:0}.skill-block h3{margin:0 0 .6rem;font-size:1.1rem;color:var(--brand)}.pill-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem}.pill{padding:.45rem .7rem;border-radius:999px;font-size:.93rem;background:var(--glass);border:1px solid rgba(255,255,255,.08)}.skill-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.skill-tile{padding:1rem;border-radius:14px;background:linear-gradient(180deg,#ffffff0f,#ffffff08);border:1px solid rgba(255,255,255,.08);display:grid;gap:.25rem;text-align:center}.skill-tile strong{font-size:1rem}.skill-tile span{color:var(--muted);font-size:.9rem}@media (max-width:900px){.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.strengths{display:grid;gap:.7rem;margin-top:.3rem}.strength{display:grid;gap:.35rem}.strength .label{font-size:.95rem}.strength .bar{height:10px;background:#ffffff14;border:1px solid rgba(255,255,255,.08);border-radius:999px;overflow:hidden}.strength .bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--brand),rgba(125,211,252,.25));box-shadow:0 0 20px #7dd3fc59 inset,0 0 10px #7dd3fc40;border-radius:999px;transform:translateZ(0)}.showcase{position:relative;padding:0}.showcase .container{padding-top:3rem;padding-bottom:1rem}.showcase .track{display:flex;gap:2rem;padding:2rem 10vw 6rem}.card{min-width:clamp(260px,36vw,420px);padding:1.2rem;border-radius:18px;background:linear-gradient(180deg,#ffffff0f,#ffffff08);border:1px solid rgba(255,255,255,.08)}.card h3{margin:.2rem 0 .4rem;font-size:1.1rem}.card p{margin:0;color:var(--muted);font-size:.95rem}@media (max-width: 860px){.showcase .track{flex-wrap:wrap;justify-content:center}.card{min-width:min(90vw,420px)}}.card{display:flex;flex-direction:column;overflow:hidden}.card .thumb{display:block;border-radius:14px;overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.08)}.card .thumb img{display:block;width:100%;height:240px;object-fit:cover;transform:scale(1.02);transition:transform .35s ease,filter .35s ease}.card .thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.25));opacity:0;transition:opacity .35s ease}.card:hover .thumb img{transform:scale(1.06);filter:saturate(1.05)}.card:hover .thumb:after{opacity:1}.card-body{display:grid;gap:.5rem;padding-top:.8rem}.card-body h3{margin:.2rem 0;font-size:1.05rem}.card-body p{margin:0;color:var(--muted);font-size:.95rem}.actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.2rem}.actions .button{padding:.5rem .8rem;border-radius:10px}.actions .button.subtle{opacity:.9}.card .thumb:focus-visible{outline:2px solid var(--ring);outline-offset:4px;border-radius:14px}.contact{text-align:center}.foot{padding:2rem 1rem;text-align:center;color:var(--muted)}
