:root{--bg:#05070b;--fg:#eef1ff;--muted:#9aa3c7;--accent:#22d3ee;--accent-2:#60a5fa;--max:1080px;--ease:cubic-bezier(.16, 1, .3, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box;margin:0}html,body{padding:0}body{min-height:100vh;overflow-x:hidden}html{scroll-padding-top:5rem}a{color:inherit;text-decoration:none}.canvas-holder{z-index:0;pointer-events:none;position:fixed;inset:0}.content{z-index:1;position:relative}.section{align-items:center;min-height:100vh;padding:14vh 6vw;scroll-margin-top:5rem;display:flex;position:relative}.section:before{content:"";pointer-events:none;background:radial-gradient(60% 55% at 32%,#05060ac7,#05060a00 72%);position:absolute;inset:0}.section--hero:before{background:radial-gradient(55% 48% at 50% 56%,#05060ad9,#05060a00 74%)}.section--hero{text-align:center;flex-direction:column;justify-content:center;min-height:100svh}.section--contact{min-height:90vh}.section__inner{z-index:1;width:100%;max-width:var(--max);flex-direction:column;gap:1.1rem;margin:0 auto;display:flex;position:relative}.section__inner>*{text-shadow:0 1px 4px #05060ad9,0 0 24px #05060a8c}.eyebrow{text-transform:uppercase;letter-spacing:.28em;color:var(--accent);font-size:.78rem}.hero__title{letter-spacing:-.03em;overflow-wrap:break-word;background:linear-gradient(120deg, #fff 20%, #b6f3ff 55%, var(--accent));color:#0000;text-shadow:none;filter:drop-shadow(0 2px 24px #05060ab3);-webkit-background-clip:text;background-clip:text;font-size:clamp(2.8rem,9vw,6.5rem);font-weight:700;line-height:1.02}.hero__tagline{color:var(--muted);max-width:34ch;margin:.4rem auto 0;font-size:clamp(1rem,2.2vw,1.35rem)}.section__title{letter-spacing:-.02em;margin-bottom:.4rem;font-size:clamp(1.9rem,5vw,3rem);font-weight:650}.prose{color:#cdd3f0;max-width:62ch;font-size:clamp(1rem,1.7vw,1.15rem);line-height:1.7}.button{background:linear-gradient(120deg, var(--accent), var(--accent-2));color:#03141a;text-shadow:none;transition:transform .3s var(--ease), box-shadow .3s var(--ease);border-radius:999px;align-self:flex-start;margin-top:.6rem;padding:.85rem 1.5rem;font-weight:550;box-shadow:0 6px 18px -8px #22d3ee99}.section--hero .button{align-self:center}.button:hover{transform:translateY(-2px);box-shadow:0 10px 24px -8px #22d3eeb3}.skills,.socials{flex-wrap:wrap;gap:.55rem;margin-top:.8rem;display:flex}.chip{color:#d7dcff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#78bed21a;border:1px solid #78d2eb33;border-radius:999px;padding:.4rem .8rem;font-size:.85rem}.chip--sm{padding:.3rem .6rem;font-size:.75rem}.socials a{color:var(--muted);border-bottom:1px solid #0000;transition:color .2s,border-color .2s}.socials a:hover{color:var(--fg);border-color:var(--accent)}.projects{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;padding:0;list-style:none;display:grid}.project__card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);height:100%;transition:transform .35s var(--ease), border-color .35s var(--ease), background .35s var(--ease);background:#1012228c;border:1px solid #78d2eb24;border-radius:18px;flex-direction:column;gap:.6rem;padding:1.4rem;display:flex}a.project__card:hover{background:#16182cb3;border-color:#22d3ee8c;transform:translateY(-4px)}.project__head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.project__head h3{font-size:1.15rem;font-weight:600}.project__year{color:var(--muted);font-size:.85rem}.project p{color:#c2c8ea;flex:1;font-size:.95rem;line-height:1.6}.project__tags{flex-wrap:wrap;gap:.4rem;display:flex}.nav{z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:linear-gradient(#05060a99,#0000);flex-wrap:wrap;justify-content:space-between;align-items:center;row-gap:.6rem;padding:1.1rem 6vw;font-size:.9rem;display:flex;position:fixed;inset:0 0 auto}.nav__brand{letter-spacing:-.01em;font-weight:600}.nav__right{align-items:center;gap:1.6rem;display:flex}.nav__links{color:var(--muted);gap:1.6rem;display:flex}.nav__links a{transition:color .2s}.nav__links a:hover{color:var(--fg)}.lang-switch{background:#78bed214;border:1px solid #78d2eb29;border-radius:999px;gap:.2rem;padding:.2rem;display:flex}.lang-switch__btn{appearance:none;color:var(--muted);font:inherit;letter-spacing:.02em;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.3rem .65rem;font-size:.78rem;font-weight:600;transition:color .2s,background .2s}.lang-switch__btn:hover{color:var(--fg)}.lang-switch__btn--active{color:#03141a;background:linear-gradient(120deg, var(--accent), var(--accent-2))}.lang-switch__btn--active:hover{color:#03141a}.scroll-hint{letter-spacing:.25em;text-transform:uppercase;color:var(--muted);animation:bob 2s var(--ease) infinite;font-size:.75rem;position:absolute;bottom:2.4rem;left:50%;transform:translate(-50%)}@keyframes bob{0%,to{opacity:.5;transform:translate(-50%)}50%{opacity:1;transform:translate(-50%,8px)}}.footer{color:var(--muted);margin-top:3rem;font-size:.8rem}.reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(24px)}.reveal--in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.scroll-hint{animation:none}}@media (width<=640px){.nav__links{gap:1rem}.nav__right{justify-content:space-between;gap:.8rem;width:100%}.section{padding:16vh 7vw}}@media (width<=360px){.hero__title{font-size:clamp(2.1rem,11vw,6.5rem)}}
