.page-module___8aEwW__page{color:#e6edf5;min-height:100vh;font-family:var(--font-geist-sans);background:radial-gradient(circle at 10% 20%,#7cc6ff14,#0000 25%),radial-gradient(circle at 90% 10%,#7cc6ff0d,#0000 22%),#0b0f18;flex-direction:column;display:flex}.page-module___8aEwW__section{scroll-snap-align:start;justify-content:center;min-height:100vh;padding:72px 24px 96px;display:flex;position:relative;overflow:visible}.page-module___8aEwW__sectionHero{background:radial-gradient(circle at 10% 20%,#7cc6ff14,#0000 25%),radial-gradient(circle at 90% 10%,#7cc6ff0d,#0000 22%),linear-gradient(#0b0f1880,#0b0f1880);position:relative;overflow:visible}.page-module___8aEwW__sectionHero:before{content:"";opacity:.3;will-change:transform;z-index:0;background-image:url(/portrait.jpg);background-position:100% 0;background-repeat:no-repeat;background-size:cover;background-attachment:scroll;transition:opacity .6s,transform .6s;position:absolute;inset:0}.page-module___8aEwW__sectionHero.page-module___8aEwW__visible:before{opacity:.45}.page-module___8aEwW__sectionDefault{background:radial-gradient(circle at 10% 20%,#7cc6ff14,#0000 25%),radial-gradient(circle at 90% 10%,#7cc6ff0d,#0000 22%),#0b0f18}.page-module___8aEwW__shell{z-index:1;flex-direction:column;gap:48px;width:min(1100px,100%);display:flex}.page-module___8aEwW__topBar{justify-content:space-between;align-items:center;gap:16px;display:flex}.page-module___8aEwW__identity{align-items:center;gap:12px;display:flex}.page-module___8aEwW__logoMark{letter-spacing:.5px;background:#ffffff0f;border:1px solid #ffffff14;border-radius:12px;place-items:center;width:44px;height:44px;font-weight:700;display:grid}.page-module___8aEwW__name{color:#e6edf5;font-size:22px;font-weight:700}.page-module___8aEwW__role{color:#9fb3c8;font-size:14px}.page-module___8aEwW__status{color:#9fb3c8;background:#ffffff0a;border:1px solid #ffffff14;border-radius:999px;padding:10px 14px;font-size:14px}.page-module___8aEwW__hero{flex-direction:column;justify-content:center;align-items:flex-start;gap:16px;min-height:calc(100vh - 140px);display:flex}.page-module___8aEwW__overline{text-transform:uppercase;letter-spacing:.08em;color:#7cc6ff;font-size:12px}.page-module___8aEwW__hero h1{max-width:760px;font-size:clamp(32px,5vw,48px);line-height:1.1}.page-module___8aEwW__heroTitle{letter-spacing:-.5px;align-items:center;gap:16px;font-size:clamp(42px,6vw,60px);line-height:1.05;display:flex}.page-module___8aEwW__cursor{color:#7cc6ff;margin-left:2px;animation:1s infinite page-module___8aEwW__blink;display:inline-block}@keyframes page-module___8aEwW__blink{0%,50%{opacity:1}51%,to{opacity:0}}.page-module___8aEwW__heroAbbr{letter-spacing:.5px;background:#ffffff0f;border:1px solid #ffffff14;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:24px;font-weight:700;display:inline-flex}.page-module___8aEwW__heroAvatar{object-fit:cover;border:1px solid #ffffff14;border-radius:.375rem;flex-shrink:0;width:1em;height:1em;margin-right:.5rem;display:block}.page-module___8aEwW__heroSubtitle{color:#9fb3c8;margin-top:-2px;font-size:18px}.page-module___8aEwW__lead{color:#c4d1e1;max-width:760px;line-height:1.6}.page-module___8aEwW__actions{flex-wrap:wrap;gap:12px;margin-top:4px;display:flex}.page-module___8aEwW__actions a{border-radius:999px;justify-content:center;align-items:center;padding:12px 18px;font-weight:600;transition:transform .15s,background .2s,border-color .2s,color .2s;display:inline-flex}.page-module___8aEwW__primary{color:#0a0f18;background:#7cc6ff}.page-module___8aEwW__primary:hover{background:#a1dbff;transform:translateY(-1px)}.page-module___8aEwW__secondary{color:#e6edf5;border:1px solid #fff3}.page-module___8aEwW__secondary:hover{color:#7cc6ff;border-color:#7cc6ff;transform:translateY(-1px)}.page-module___8aEwW__emailLink{color:#fff;background:#ea4335}.page-module___8aEwW__emailLink:hover{background:#d33b2c}.page-module___8aEwW__linkedinLink{color:#fff;background:#0077b5;border-color:#005885}.page-module___8aEwW__linkedinLink:hover{color:#fff;background:#005885;border-color:#003d5c}.page-module___8aEwW__twitterLink{color:#fff;background:#1da1f2;border-color:#1a8cd8}.page-module___8aEwW__twitterLink:hover{color:#fff;background:#1a8cd8;border-color:#1478b8}.page-module___8aEwW__githubLink{color:#fff;background:#6e5494;border-color:#5a4477}.page-module___8aEwW__githubLink:hover{color:#fff;background:#5a4477;border-color:#46355a}.page-module___8aEwW__highlights{display:none}.page-module___8aEwW__skills{flex-direction:column;justify-content:center;gap:20px;min-height:calc(100vh - 140px);display:flex}.page-module___8aEwW__skillsHeader h2{color:#e6edf5;font-size:clamp(28px,3.2vw,36px)}.page-module___8aEwW__skillsGrid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.page-module___8aEwW__skillCard{background:#ffffff08;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:8px;padding:18px;display:flex}.page-module___8aEwW__skillTitle{color:#e6edf5;font-weight:600}.page-module___8aEwW__skillList{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.page-module___8aEwW__skillItem{color:#c4d1e1;background:#ffffff0d;border:1px solid #ffffff14;border-radius:10px;padding:6px 10px;font-size:14px}.page-module___8aEwW__openCollab{flex-direction:column;justify-content:center;gap:20px;min-height:calc(100vh - 140px);display:flex}.page-module___8aEwW__openHeader h2{color:#e6edf5;font-size:clamp(28px,3.4vw,38px)}.page-module___8aEwW__openGrid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.page-module___8aEwW__openCard{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:14px;flex-direction:column;gap:8px;padding:18px;display:flex}.page-module___8aEwW__openLabel{text-transform:uppercase;letter-spacing:.1em;color:#7cc6ff;font-size:12px}.page-module___8aEwW__openTitle{color:#e6edf5;font-weight:700}.page-module___8aEwW__openCopy{color:#c4d1e1;line-height:1.5}.page-module___8aEwW__openActions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.page-module___8aEwW__openActions a{color:#0a0f18;background:#7cc6ff;border:1px solid #7cc6ff;border-radius:12px;padding:10px 14px;font-weight:700}.page-module___8aEwW__openActions a:hover{background:#a1dbff;border-color:#a1dbff;transform:translateY(-1px)}.page-module___8aEwW__experience{flex-direction:column;justify-content:center;gap:20px;min-height:calc(100vh - 140px);display:flex}.page-module___8aEwW__experienceHeader h2{color:#e6edf5;font-size:clamp(28px,3.2vw,36px)}.page-module___8aEwW__experienceList{flex-direction:column;gap:12px;padding-left:24px;display:flex;position:relative}.page-module___8aEwW__experienceItem{background:#ffffff08;border:1px solid #ffffff14;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex;position:relative}.page-module___8aEwW__experienceList:before{content:"";background:linear-gradient(#7cc6ffcc,#7cc6ff33);width:2px;height:100%;position:absolute;top:0;left:10px}.page-module___8aEwW__experienceItem:before{content:"";background:#7cc6ff;border-radius:50%;width:12px;height:12px;position:absolute;top:20px;left:-2px;box-shadow:0 0 0 4px #7cc6ff26}.page-module___8aEwW__experienceTitle{color:#e6edf5;font-weight:600}.page-module___8aEwW__experienceOrg{color:#9fb3c8;font-size:14px}.page-module___8aEwW__experiencePeriod{color:#c4d1e1;font-size:14px}.page-module___8aEwW__animate{opacity:0;will-change:opacity,transform;transition:opacity .6s,transform .6s;transform:translateY(24px)}.page-module___8aEwW__visible{opacity:1;transform:translateY(0)}@keyframes page-module___8aEwW__bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.page-module___8aEwW__fab{color:#e6edf5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);scroll-behavior:smooth;z-index:1000;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:#ffffff14;border:1px solid #ffffff59;border-radius:50%;place-items:center;width:44px;height:44px;font-size:18px;font-weight:700;text-decoration:none;transition:transform .2s,background .2s,border-color .2s;animation:2s ease-in-out infinite page-module___8aEwW__bounce;display:grid;position:fixed;bottom:80px;right:24px}.page-module___8aEwW__fab:hover{background:#7cc6ff38;border-color:#7cc6ff80;animation-play-state:paused;transform:translateY(-4px)scale(1.05)}.page-module___8aEwW__fabDown,.page-module___8aEwW__fabUp{bottom:80px}@media (max-width:720px){.page-module___8aEwW__topBar{flex-direction:column;align-items:flex-start}.page-module___8aEwW__status{align-self:flex-start}.page-module___8aEwW__fab{width:48px;height:48px;font-size:20px;bottom:24px;right:16px}}
