.navBar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:var(--spaceMd) var(--spaceLg);background:transparent;border-bottom:1px solid transparent;transition:background var(--durationFast) var(--easeStandard),border-color var(--durationFast) var(--easeStandard)}.navBarScrolled{background:#0a0a0acc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--colorBorder)}.navLogo{font-family:var(--fontMono);font-size:var(--fontSizeSm);color:var(--colorText)}.navLinkList{display:flex;gap:var(--spaceLg)}.navLink{font-family:var(--fontBody);font-size:var(--fontSizeSm);color:var(--colorTextMuted);transition:color var(--durationFast) var(--easeStandard)}.navLink:hover,.navLink:focus-visible{color:var(--colorAccent)}.navHamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;background:transparent;border:none;z-index:210}.navHamburger span{display:block;width:22px;height:2px;background:var(--colorText);border-radius:2px;transition:transform var(--durationFast) var(--easeStandard),opacity var(--durationFast) var(--easeStandard)}.navHamburger.isOpen span:nth-child(1){transform:translateY(7px) rotate(45deg)}.navHamburger.isOpen span:nth-child(2){opacity:0}.navHamburger.isOpen span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.navOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;opacity:0;pointer-events:none;transition:opacity var(--durationFast) var(--easeStandard);z-index:190}.navOverlay.isOpen{opacity:1;pointer-events:auto}.navSidebar{position:fixed;top:0;right:0;bottom:0;width:min(280px,80vw);background:var(--colorBgElevated);border-left:1px solid var(--colorBorder);padding:calc(var(--spaceMd) * 2) var(--spaceLg);transform:translate(100%);transition:transform var(--durationMedium) var(--easeStandard);z-index:200}.navSidebar.isOpen{transform:translate(0)}.navSidebarList{display:flex;flex-direction:column;gap:var(--spaceLg)}.navSidebarLink{font-family:var(--fontBody);font-size:var(--fontSizeMd);color:var(--colorTextMuted);transition:color var(--durationFast) var(--easeStandard)}.navSidebarLink:hover,.navSidebarLink:focus-visible{color:var(--colorAccent)}@media (max-width: 768px){.navLinkList{display:none}.navHamburger{display:flex}}@media (min-width: 769px){.navOverlay,.navSidebar{display:none}}.heroSection{min-height:100vh;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--spaceXl);padding:var(--spaceLg);max-width:var(--maxWidth);margin:0 auto;position:relative}.heroContent{max-width:720px}.heroPhoto{flex-shrink:0;width:280px;height:280px;border-radius:999px;object-fit:cover;border:1px solid var(--colorBorderStrong);box-shadow:0 24px 48px #00000073}@media (max-width: 900px){.heroPhoto{display:none}}.heroMeta{display:flex;align-items:center;gap:var(--spaceSm);margin-bottom:var(--spaceXs)}.heroEyebrow{font-family:var(--fontMono);font-size:var(--fontSizeXs);font-weight:600;color:var(--colorAccent);letter-spacing:.08em;background:#5eead41f;border-radius:999px;padding:.25rem .65rem}.heroName{font-family:var(--fontDisplay);font-size:var(--fontSizeMd);font-weight:600}.heroContactList{display:flex;flex-wrap:wrap;gap:var(--spaceMd);margin-bottom:var(--spaceMd)}.heroContactList a{font-family:var(--fontMono);font-size:var(--fontSizeSm);color:var(--colorTextMuted);transition:color var(--durationFast) var(--easeStandard)}.heroContactList a:hover,.heroContactList a:focus-visible{color:var(--colorAccent)}.heroHighlights{display:flex;flex-direction:column;gap:.6rem;margin-bottom:var(--spaceLg)}.heroHighlights li{position:relative;padding-left:var(--spaceMd);font-size:var(--fontSizeSm);color:var(--colorTextMuted);max-width:560px}.heroHighlights li:before{content:"";position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:999px;background:var(--colorAccent)}.heroHighlights strong{color:var(--colorText);font-weight:600}.heroTitle{font-family:var(--fontDisplay);font-size:var(--fontSize3xl);font-weight:700;line-height:1.15;margin-bottom:var(--spaceMd)}.heroSubtitle{font-size:var(--fontSizeLg);color:var(--colorTextMuted);max-width:520px;margin-bottom:var(--spaceLg)}.heroActions{display:flex;gap:var(--spaceMd)}.heroActions{align-items:center}.heroButtonPrimary{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--fontSizeSm);font-weight:600;padding:.85rem 1.6rem;border-radius:999px;background:var(--colorText);color:var(--colorBg);transition:background var(--durationFast) var(--easeStandard),transform var(--durationFast) var(--easeStandard)}.heroButtonPrimary:hover,.heroButtonPrimary:focus-visible{background:var(--colorAccent);transform:translateY(-2px)}.heroButtonArrow{display:inline-block;transition:transform var(--durationFast) var(--easeStandard)}.heroButtonPrimary:hover .heroButtonArrow,.heroButtonPrimary:focus-visible .heroButtonArrow{transform:translate(3px)}.heroButtonSecondary{font-family:var(--fontMono);font-size:var(--fontSizeSm);color:var(--colorTextMuted);border-bottom:1px solid var(--colorBorderStrong);padding-bottom:.2rem;transition:color var(--durationFast) var(--easeStandard),border-color var(--durationFast) var(--easeStandard)}.heroButtonSecondary:hover,.heroButtonSecondary:focus-visible{color:var(--colorAccent);border-color:var(--colorAccent)}.heroScrollHint{position:absolute;bottom:var(--spaceXl);left:var(--spaceLg);width:1px;height:48px;overflow:hidden}.heroScrollLine{display:block;width:100%;height:100%;background:var(--colorBorderStrong);position:relative}.heroScrollLine:after{content:"";position:absolute;top:-100%;left:0;width:100%;height:100%;background:var(--colorAccent);animation:scrollLineMove 2s var(--easeStandard) infinite}@keyframes scrollLineMove{to{top:100%}}@media (max-width: 768px){.heroSection{align-items:flex-start;padding-top:5.5rem}}@media (max-width: 640px){.heroTitle{font-size:var(--fontSize2xl)}.heroActions{flex-direction:column;align-items:flex-start;gap:var(--spaceSm)}.heroButtonPrimary{justify-content:center;width:100%}}.profileCard{position:absolute;top:var(--space2xl);right:var(--spaceLg);width:220px;height:220px;overflow:hidden;border-radius:var(--radiusMd);border:1px solid var(--colorBorderStrong);box-shadow:0 24px 48px #00000073;cursor:pointer;outline:none}.profileCard:hover,.profileCard:focus-visible{border-color:var(--colorAccent)}.profileCardImage{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.profileCardGradient{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.85),rgba(0,0,0,.15) 55%,transparent)}.profileCardInfo{position:absolute;left:0;bottom:0;width:100%;padding:var(--spaceSm)}.profileCardRole{font-family:var(--fontMono);font-size:.65rem;letter-spacing:.05em;text-transform:uppercase;color:var(--colorAccent);margin-bottom:.25rem}.profileCardName{font-family:var(--fontDisplay);font-size:var(--fontSizeMd);font-weight:600;color:var(--colorText)}.profileCardQuickContact{position:absolute;right:var(--spaceXs);bottom:var(--spaceXs);z-index:2;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#fff;color:var(--colorBg);border-radius:999px;box-shadow:0 8px 16px #00000059;transition:transform var(--durationFast) var(--easeStandard)}.profileCardQuickContact:hover,.profileCardQuickContact:focus-visible{transform:scale(1.08)}.profileCardModalRoot{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:var(--spaceMd)}.profileCardBackdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0a0acc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.profileCardModal{position:relative;z-index:1;width:100%;max-width:900px;height:min(80vh,640px);display:flex;overflow:hidden;background:var(--colorBgElevated);border:1px solid var(--colorBorderStrong);border-radius:var(--radiusMd);box-shadow:0 32px 64px #0000008c}.profileCardModalQuickContact{position:absolute;right:var(--spaceMd);bottom:var(--spaceMd);z-index:2;display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:#fff;color:var(--colorBg);border-radius:999px;box-shadow:0 8px 20px #0006;transition:transform var(--durationFast) var(--easeStandard)}.profileCardModalQuickContact:hover,.profileCardModalQuickContact:focus-visible{transform:scale(1.08)}.profileCardCloseBtn{position:absolute;top:var(--spaceSm);right:var(--spaceSm);z-index:2;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#0a0a0a99;border:1px solid var(--colorBorder);border-radius:999px;color:var(--colorText);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background var(--durationFast) var(--easeStandard),border-color var(--durationFast) var(--easeStandard)}.profileCardCloseBtn:hover,.profileCardCloseBtn:focus-visible{border-color:var(--colorAccent);background:#0a0a0ad9}.profileCardModalImageWrap{position:relative;flex-shrink:0;width:45%;height:100%;overflow:hidden}.profileCardModalImage{width:100%;height:100%;object-fit:cover}.profileCardModalContent{display:flex;flex-direction:column;width:55%;height:100%;padding:var(--spaceLg);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.profileCardModalContent::-webkit-scrollbar{display:none}.profileCardModalRole{font-family:var(--fontMono);font-size:var(--fontSizeXs);letter-spacing:.05em;text-transform:uppercase;color:var(--colorAccent);margin-bottom:.4rem}.profileCardModalName{font-family:var(--fontDisplay);font-size:var(--fontSizeXl);font-weight:600;color:var(--colorText);margin-bottom:.3rem}.profileCardMbti{font-family:var(--fontMono);font-size:var(--fontSizeXs);letter-spacing:.05em;color:var(--colorTextMuted);padding-bottom:var(--spaceSm);margin-bottom:var(--spaceMd);border-bottom:1px solid var(--colorBorder)}.profileCardModalBody{display:flex;flex-direction:column;gap:var(--spaceMd);color:var(--colorTextMuted);font-size:var(--fontSizeSm);line-height:1.6;flex:1}.profileCardModalBody h4{font-family:var(--fontMono);font-size:var(--fontSizeXs);letter-spacing:.05em;color:var(--colorText);margin-bottom:.6rem}.profileCardSkillList{display:flex;flex-wrap:wrap;gap:.4rem}.profileCardSkillItem{font-family:var(--fontMono);font-size:var(--fontSizeXs);color:var(--colorText);border:1px solid var(--colorBorder);border-radius:var(--radiusSm);padding:.3rem .6rem}@media (max-width: 900px){.profileCard{display:none}}@media (max-width: 768px){.profileCardModal{flex-direction:column;height:min(90vh,720px);overflow-y:auto}.profileCardModalImageWrap{width:100%;height:220px}.profileCardModalContent{width:100%;height:auto;overflow-y:visible}}.aboutSection{position:relative;border-top:1px solid var(--colorBorder)}.aboutContent{display:flex;flex-direction:column;gap:var(--spaceLg);max-width:640px}.aboutText{font-size:var(--fontSizeLg);color:var(--colorTextMuted)}.skillsSection{border-top:1px solid var(--colorBorder)}.skillsContent{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spaceLg)}.skillsGroup{display:flex;flex-direction:column;gap:var(--spaceSm)}.skillsGroupTitle{font-family:var(--fontMono);font-size:var(--fontSizeSm);color:var(--colorAccent);letter-spacing:.03em}.skillsHardGroup:not(:last-child){margin-bottom:var(--spaceMd)}.skillsHardGroupTitle{font-family:var(--fontMono);font-size:var(--fontSizeXs);color:var(--colorTextMuted);letter-spacing:.03em;margin-bottom:.5rem}.skillsHardList{display:flex;flex-wrap:wrap;gap:var(--spaceSm);align-content:flex-start}.skillsHardItem{font-family:var(--fontMono);font-size:var(--fontSizeSm);border-radius:var(--radiusSm);padding:.65rem 1.15rem}.skillsHardItem.isPrimary{color:var(--colorText);background:#5eead414;border:1px solid rgba(94,234,212,.3)}.skillsHardItem.isSecondary{color:var(--colorTextMuted);border:1px solid var(--colorBorder)}.skillsSoftList{display:flex;flex-direction:column;gap:var(--spaceMd)}.skillsSoftItem strong{display:block;font-family:var(--fontDisplay);font-size:var(--fontSizeMd);font-weight:600;margin-bottom:.25rem}.skillsSoftItem p{font-size:var(--fontSizeSm);color:var(--colorTextMuted)}@media (max-width: 640px){.skillsContent{grid-template-columns:1fr}}.projectsSection{border-top:1px solid var(--colorBorder)}.projectsGroup:not(:last-child){margin-bottom:var(--spaceLg)}.projectsGroupTitle{font-family:var(--fontMono);font-size:var(--fontSizeSm);color:var(--colorAccent);letter-spacing:.03em;margin-bottom:var(--spaceSm)}.projectsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spaceMd)}.projectCard{display:flex;flex-direction:column;gap:var(--spaceSm);padding:var(--spaceLg);border:1px solid var(--colorBorder);border-radius:var(--radiusMd);background:var(--colorBgElevated);transition:border-color var(--durationFast) var(--easeStandard),transform var(--durationFast) var(--easeStandard)}.projectCard:hover,.projectCard:focus-visible{border-color:var(--colorAccent);transform:translateY(-4px)}.projectCardTitle{font-family:var(--fontDisplay);font-size:var(--fontSizeLg);font-weight:600}.projectCardDescription{font-size:var(--fontSizeSm);color:var(--colorTextMuted);flex:1}.projectCardTechList{display:flex;flex-wrap:wrap;gap:var(--spaceXs)}.projectCardTechItem{font-family:var(--fontMono);font-size:var(--fontSizeXs);color:var(--colorTextMuted)}.projectCardTechItem:after{content:""}.projectCardTechItem:not(:last-child):after{content:" · "}.projectCardActions{display:flex;gap:var(--spaceXs);margin-top:var(--spaceXs)}.projectCardActionButton{font-family:var(--fontMono);font-size:var(--fontSizeXs);color:var(--colorText);border:1px solid var(--colorBorderStrong);border-radius:var(--radiusSm);padding:.5rem .9rem;transition:border-color var(--durationFast) var(--easeStandard),color var(--durationFast) var(--easeStandard)}.projectCardActionButton:hover,.projectCardActionButton:focus-visible{border-color:var(--colorAccent);color:var(--colorAccent)}.inProgress{align-self:flex-start;font-family:var(--fontMono);font-size:var(--fontSizeXs);color:var(--colorAccent);background:#5eead41a;border:1px solid rgba(94,234,212,.3);border-radius:var(--radiusSm);padding:.2rem .6rem}.isRun{align-self:flex-start;font-family:var(--fontMono);font-size:var(--fontSizeXs);color:#f2b8b5;background:#f2b8b51a;border:1px solid rgba(242,184,181,.3);border-radius:var(--radiusSm);padding:.2rem .6rem}.contactSection{border-top:1px solid var(--colorBorder);display:flex;flex-direction:column;min-height:60vh;justify-content:center}.contactTitle{font-family:var(--fontDisplay);font-size:var(--fontSize2xl);font-weight:600;margin-bottom:var(--spaceLg);max-width:560px}.contactLinkList{display:flex;gap:var(--spaceLg);margin-bottom:var(--space2xl)}.contactLink{font-family:var(--fontMono);font-size:var(--fontSizeSm);color:var(--colorText);border-bottom:1px solid var(--colorBorderStrong);padding-bottom:.25rem;transition:color var(--durationFast) var(--easeStandard),border-color var(--durationFast) var(--easeStandard)}.contactLink:hover,.contactLink:focus-visible{color:var(--colorAccent);border-color:var(--colorAccent)}.contactFooter{font-family:var(--fontMono);font-size:var(--fontSizeXs);color:var(--colorTextFaint)}@media (max-width: 640px){.contactLinkList{flex-direction:column;gap:var(--spaceSm)}}.troubleshootingSection{border-top:1px solid var(--colorBorder)}.troubleshootingHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--spaceMd);flex-wrap:wrap}.troubleshootingPagination{display:flex;align-items:center;gap:var(--spaceSm);margin-bottom:var(--spaceLg)}.troubleshootingPageBtn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;padding:0;font-size:var(--fontSizeXl);line-height:1;color:var(--colorText);transition:opacity var(--durationFast) var(--easeStandard)}.troubleshootingPageBtn:hover:not(:disabled),.troubleshootingPageBtn:focus-visible:not(:disabled){opacity:.7}.troubleshootingPageBtn:disabled{opacity:.25;cursor:default}.troubleshootingPageDots{display:flex;align-items:center;gap:.4rem}.troubleshootingPageDot{width:8px;height:8px;border:none;padding:0;border-radius:999px;background:#ffffff40;transition:background var(--durationFast) var(--easeStandard),transform var(--durationFast) var(--easeStandard)}.troubleshootingPageDot:hover{background:#fff6}.troubleshootingPageDot.isActive{background:#fff9;transform:scale(1.3)}.troubleshootingList{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spaceLg)}.troubleshootingCard{display:flex;flex-direction:column;gap:var(--spaceSm);background:var(--colorBgElevated);border:1px solid var(--colorBorder);border-radius:var(--radiusMd);padding:var(--spaceLg);transition:border-color var(--durationFast) var(--easeStandard),transform var(--durationFast) var(--easeStandard)}.troubleshootingCard:hover{border-color:var(--colorBorderStrong);transform:translateY(-4px)}.troubleshootingIssue{align-self:flex-start;font-family:var(--fontMono);font-size:var(--fontSizeXs);color:var(--colorAccent);border:1px solid var(--colorBorder);border-radius:var(--radiusSm);padding:.3rem .7rem}.troubleshootingTitle{font-family:var(--fontDisplay);font-size:var(--fontSizeLg);font-weight:600}.troubleshootingDescription{color:var(--colorTextMuted);font-size:var(--fontSizeSm)}.troubleshootingLearnPoint{font-size:var(--fontSizeSm);color:var(--colorText);line-height:1.55;background:#5eead414;border:1px solid rgba(94,234,212,.25);border-left:3px solid var(--colorAccent);border-radius:var(--radiusSm);padding:var(--spaceSm) var(--spaceMd);margin-top:auto}.troubleshootingLearnPoint strong{display:block;color:var(--colorAccent);font-family:var(--fontMono);font-size:var(--fontSizeXs);letter-spacing:.03em;margin-bottom:.35rem}@media (max-width: 640px){.troubleshootingList{grid-template-columns:1fr}}.floatingContactBtn{position:fixed;right:var(--spaceLg);bottom:var(--spaceLg);z-index:250;display:inline-flex;align-items:center;gap:.4rem;padding:.85rem 1.5rem;background:var(--colorText);color:var(--colorBg);font-family:var(--fontBody);font-weight:600;font-size:var(--fontSizeSm);border-radius:999px;box-shadow:0 16px 32px #00000073;transition:background var(--durationFast) var(--easeStandard),transform var(--durationFast) var(--easeStandard),box-shadow var(--durationFast) var(--easeStandard)}.floatingContactBtn:hover,.floatingContactBtn:focus-visible{background:var(--colorAccent);transform:translateY(-3px);box-shadow:0 20px 40px #0000008c}.floatingContactBtnArrow{display:inline-block;transition:transform var(--durationFast) var(--easeStandard)}.floatingContactBtn:hover .floatingContactBtnArrow,.floatingContactBtn:focus-visible .floatingContactBtnArrow{transform:translate(3px)}@media (max-width: 640px){.floatingContactBtn{right:var(--spaceMd);bottom:var(--spaceMd);padding:.7rem 1.15rem;font-size:var(--fontSizeXs)}}:root{--colorBg: #0a0a0a;--colorBgElevated: #111111;--colorText: #f2f2f2;--colorTextMuted: #8a8a8a;--colorTextFaint: #545454;--colorAccent: #5eead4;--colorBorder: rgba(255, 255, 255, .08);--colorBorderStrong: rgba(255, 255, 255, .16);--fontDisplay: "Space Grotesk", sans-serif;--fontBody: "Inter", sans-serif;--fontMono: "JetBrains Mono", monospace;--fontSizeXs: .75rem;--fontSizeSm: .875rem;--fontSizeMd: 1rem;--fontSizeLg: 1.25rem;--fontSizeXl: 1.75rem;--fontSize2xl: 2.5rem;--fontSize3xl: 4rem;--spaceXs: .5rem;--spaceSm: 1rem;--spaceMd: 1.5rem;--spaceLg: 2.5rem;--spaceXl: 4rem;--space2xl: 6rem;--space3xl: 9rem;--maxWidth: 1080px;--radiusSm: 6px;--radiusMd: 12px;--easeStandard: cubic-bezier(.22, 1, .36, 1);--durationFast: .2s;--durationMedium: .6s}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}body{background:var(--colorBg);color:var(--colorText);font-family:var(--fontBody);font-size:var(--fontSizeMd);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}ul{list-style:none}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer}::selection{background:var(--colorAccent);color:var(--colorBg)}.sectionContainer{max-width:var(--maxWidth);margin:0 auto;padding:var(--space2xl) var(--spaceLg)}.sectionLabel{font-family:var(--fontMono);font-size:var(--fontSizeSm);color:var(--colorTextMuted);letter-spacing:.05em;margin-bottom:var(--spaceSm);display:inline-block}.sectionTitle{font-family:var(--fontDisplay);font-size:var(--fontSize2xl);font-weight:600;margin-bottom:var(--spaceLg)}.revealOnScroll{opacity:0;filter:blur(8px);transform:translateY(16px);transition:opacity var(--durationMedium) var(--easeStandard),filter var(--durationMedium) var(--easeStandard),transform var(--durationMedium) var(--easeStandard)}.revealOnScroll.isVisible{opacity:1;filter:blur(0);transform:translateY(0)}@media (prefers-reduced-motion: reduce){.revealOnScroll{opacity:1;filter:none;transform:none;transition:none}}@media (max-width: 640px){.sectionContainer{padding:var(--spaceXl) var(--spaceMd)}}
