:root{--bg:#0b0d14;--panel:#12151f;--line:#232838;--text:#e8eaf2;--dim:#9aa1b8;--accent:#7c9cff;--accent2:#5eead4;--max:1000px;--gutter:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}body{color:var(--text);background:radial-gradient(1400px 900px at 70% 10%,#0d1124 0%,#05060b 65%) fixed;margin:0;font:16px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}#bg{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}#app{z-index:1;position:relative}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,.btn:focus-visible{outline:2px solid var(--accent2);outline-offset:3px}section,footer{max-width:var(--max);padding:80px var(--gutter);margin:0 auto}h1{letter-spacing:-.02em;margin:0;font-size:clamp(2.6rem,8vw,5rem);line-height:1.05}h2{margin:0 0 32px;font-size:clamp(1.6rem,4vw,2.2rem)}h3{margin:0;font-size:1.1rem}.nav{z-index:10;padding:10px var(--gutter);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#0b0d14b3;align-items:center;gap:16px;display:flex;position:sticky;top:0}.nav nav{gap:18px;margin-left:auto;display:flex}.nav nav a{color:var(--dim);font-size:.95rem}.nav nav a:hover{color:var(--text);text-decoration:none}.brand{letter-spacing:.08em;color:var(--text);font-weight:800}@media (width<=600px){.nav nav{display:none}.nav .btn{margin-left:auto}}.hero{align-items:center;min-height:calc(100svh - 52px);padding-top:40px;display:flex;position:relative}.scroll-cue{color:var(--dim);letter-spacing:.2em;text-transform:uppercase;flex-direction:column;align-items:center;gap:2px;font-size:.75rem;transition:opacity .4s;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.scroll-cue:hover{color:var(--text);text-decoration:none}.scroll-cue svg{animation:1.8s ease-in-out infinite cue}@keyframes cue{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.scroll-cue svg{animation:none}}body.scrolled .scroll-cue{opacity:0;pointer-events:none}.hero-text{max-width:560px}.eyebrow{color:var(--accent2);text-transform:uppercase;letter-spacing:.15em;margin:0 0 12px;font-size:.8rem}.role{color:var(--accent);margin:8px 0 20px;font-size:clamp(1.2rem,3vw,1.6rem)}.lead{color:var(--dim);max-width:48ch;font-size:1.1rem}.hint{color:var(--dim);margin-top:28px;font-size:.85rem}@media (width>=900px){.hero-text{max-width:480px}}.dl{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.dl.center{justify-content:center}.btn{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:10px;padding:12px 20px;font-weight:600;transition:transform .15s,border-color .15s;display:inline-block}.btn:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}.btn.primary{background:var(--accent);color:#0b0d14;border-color:var(--accent)}.btn.small{padding:6px 14px;font-size:.9rem}.timeline{border-left:2px solid var(--line);gap:24px;padding-left:20px;display:grid;position:relative}.job{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);background:#0e111af5;border-radius:14px;padding:22px;position:relative}.job:before{content:"";background:var(--accent);width:12px;height:12px;box-shadow:0 0 0 4px var(--bg);border-radius:50%;position:absolute;top:28px;left:-28px}.job-head{flex-wrap:wrap;justify-content:space-between;gap:4px 16px;display:flex}.at{color:var(--accent);font-weight:500}.dates{color:var(--dim);margin:0;font-size:.9rem}.job ul:not(.chips){color:#cdd2e4;padding-left:18px}.job li{margin-bottom:6px}.chips{flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.chips li{border:1px solid var(--line);color:var(--dim);background:#1a1f2f;border-radius:999px;margin:0;padding:3px 10px;font-size:.78rem}.links{flex-wrap:wrap;gap:8px 18px;margin:14px 0 0;font-size:.9rem;display:flex}.apps{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;display:grid}.app{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);background:#0e111af5;border-radius:14px;align-items:flex-start;gap:14px;padding:16px;display:flex}.app img{border-radius:22%;flex:none;width:56px;height:56px;box-shadow:0 0 0 1px #ffffff14}.app p{color:#cdd2e4;margin:4px 0 6px;font-size:.92rem;line-height:1.45}.app a{font-size:.88rem}.skills{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.skill p{color:#cdd2e4;margin:6px 0 0;font-size:.92rem;line-height:1.5}.skill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);background:#0e111af5;border-radius:14px;padding:18px}.contact{text-align:center}.mail{word-break:break-all;font-size:clamp(1.1rem,4vw,1.8rem);font-weight:700}.dim{color:var(--dim)}footer{text-align:center;color:var(--dim);padding:32px var(--gutter);font-size:.85rem}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(18px)}.reveal.in{opacity:1;transform:none}
