.Hero-module__PgAKtG__pageContent{flex-direction:column;margin-left:246px;display:flex}#home{order:0}#about{order:1}#writing{order:2}#writing{margin-top:clamp(3rem,8vw,6rem)}#projects{order:3}#experience{order:4}#contact{order:6}#projects .Hero-module__PgAKtG__sectionHead>span:first-child{font-size:0}#projects .Hero-module__PgAKtG__sectionHead>span:first-child:after{content:"03 — projects";font-size:.68rem}#about .Hero-module__PgAKtG__sectionHead>span:first-child{font-size:0}#about .Hero-module__PgAKtG__sectionHead>span:first-child:after{content:"01 — strategies";font-size:.68rem}.Hero-module__PgAKtG__hero{width:100%;padding:clamp(3.5rem,8vw,7.5rem) clamp(1.25rem,7vw,8rem) 2rem;animation:.7s both Hero-module__PgAKtG__appear}.Hero-module__PgAKtG__inner{grid-template-columns:minmax(250px,.8fr) minmax(0,1.45fr);align-items:center;gap:clamp(2rem,4vw,4rem);max-width:1100px;margin-inline:auto;display:grid}.Hero-module__PgAKtG__content{text-align:left;flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.Hero-module__PgAKtG__imageColumn{padding-top:1rem}.Hero-module__PgAKtG__kicker,.Hero-module__PgAKtG__sectionHead,.Hero-module__PgAKtG__date,.Hero-module__PgAKtG__footer span{font-family:var(--font-mono);letter-spacing:.04em;color:var(--foreground-muted);text-transform:lowercase;font-size:.68rem}.Hero-module__PgAKtG__heading{letter-spacing:-.07em;text-transform:lowercase;margin:.3rem 0 .5rem;font-size:clamp(4rem,8vw,7.7rem);font-weight:800;line-height:.88}.Hero-module__PgAKtG__lede{max-width:52ch;margin-top:1.4rem;font-size:clamp(1.1rem,1.8vw,1.35rem);line-height:1.45}.Hero-module__PgAKtG__bio{max-width:62ch;color:var(--foreground-muted);line-height:1.6}.Hero-module__PgAKtG__ctas{flex-wrap:wrap;gap:.7rem;margin-top:.8rem;display:flex}.Hero-module__PgAKtG__primaryBtn,.Hero-module__PgAKtG__secondaryBtn{font-family:var(--font-mono);border-radius:2px;align-items:center;gap:.6rem;padding:.72rem 1rem;font-size:.7rem;transition:background .18s,border-color .18s;display:inline-flex}.Hero-module__PgAKtG__primaryBtn{background:var(--accent);color:var(--accent-contrast);border:1px solid #0000}.Hero-module__PgAKtG__primaryBtn:hover{background:var(--accent-strong)}.Hero-module__PgAKtG__secondaryBtn{color:var(--foreground);border:1px solid var(--border);background:0 0}.Hero-module__PgAKtG__secondaryBtn:hover{border-color:var(--accent)}.Hero-module__PgAKtG__section{border-top:1px solid var(--border);max-width:1100px;margin-inline:auto;padding:2rem clamp(1.25rem,7vw,8rem);scroll-margin-top:2rem;animation:.7s both Hero-module__PgAKtG__reveal}.Hero-module__PgAKtG__sectionHead{justify-content:space-between;gap:1rem;margin-bottom:1.1rem;display:flex}.Hero-module__PgAKtG__sectionHead a{text-underline-offset:3px;text-decoration:underline}.Hero-module__PgAKtG__feature,.Hero-module__PgAKtG__note{grid-template-columns:minmax(220px,.8fr) 1fr 30px;align-items:start;gap:1.25rem;padding:1.1rem 0;transition:padding .18s;display:grid}.Hero-module__PgAKtG__feature:hover,.Hero-module__PgAKtG__note:hover{padding-inline:.5rem}.Hero-module__PgAKtG__projectImage{border:1px solid var(--border);background:var(--surface);aspect-ratio:1.76;cursor:pointer;text-align:left;width:100%;padding:0;position:relative;overflow:hidden}.Hero-module__PgAKtG__projectImage img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.Hero-module__PgAKtG__feature:hover .Hero-module__PgAKtG__projectImage img{transform:scale(1.035)}.Hero-module__PgAKtG__reverseFeature .Hero-module__PgAKtG__projectInfo{grid-area:1/1}.Hero-module__PgAKtG__reverseFeature .Hero-module__PgAKtG__projectImage{grid-area:1/2}.Hero-module__PgAKtG__reverseFeature .Hero-module__PgAKtG__arrow{grid-area:1/3}.Hero-module__PgAKtG__projectInfo{padding-top:.2rem}.Hero-module__PgAKtG__projectInfo h2{margin-top:.9rem}.Hero-module__PgAKtG__projectTags{flex-wrap:wrap;gap:.45rem;margin-top:1rem;display:flex}.Hero-module__PgAKtG__projectTags span{border:1px solid var(--border);font:.62rem var(--font-mono);color:var(--foreground-muted);border-radius:2px;padding:.35rem .5rem}.Hero-module__PgAKtG__modalBackdrop{z-index:10;background:#0a0a0a94;place-items:center;padding:1.25rem;animation:.18s both Hero-module__PgAKtG__fadeIn;display:grid;position:fixed;inset:0}.Hero-module__PgAKtG__modal{border:1px solid var(--border);background:var(--background);width:min(720px,100%);max-height:min(760px,90vh);color:var(--foreground);scrollbar-width:none;-ms-overflow-style:none;padding:clamp(1.5rem,4vw,3rem);animation:.26s cubic-bezier(.22,1,.36,1) both Hero-module__PgAKtG__modalIn;position:relative;overflow:auto;box-shadow:16px 16px #0000002e}.Hero-module__PgAKtG__modal::-webkit-scrollbar{display:none}.Hero-module__PgAKtG__modal h2{letter-spacing:-.05em;max-width:15ch;margin:1rem 0 1.25rem;font-size:clamp(1.8rem,4vw,3rem);line-height:.98}.Hero-module__PgAKtG__modal p{max-width:65ch;color:var(--foreground-muted);margin-top:.8rem;line-height:1.6}.Hero-module__PgAKtG__modalClose{border:1px solid var(--border);cursor:pointer;background:0 0;width:2rem;height:2rem;font-size:1.3rem;line-height:1;position:absolute;top:1rem;right:1rem}.Hero-module__PgAKtG__modalClose:hover{color:var(--accent-contrast);background:var(--accent)}.Hero-module__PgAKtG__modalGrid{border-top:1px solid var(--border);grid-template-columns:1.25fr .75fr;gap:1.5rem;margin-top:2rem;padding-top:1.25rem;display:grid}.Hero-module__PgAKtG__modalLabel{font:.65rem var(--font-mono);color:var(--foreground-muted);text-transform:uppercase}@keyframes Hero-module__PgAKtG__fadeIn{0%{opacity:0}to{opacity:1}}@keyframes Hero-module__PgAKtG__modalIn{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.Hero-module__PgAKtG__feature h2,.Hero-module__PgAKtG__note h2{text-transform:lowercase;font-size:clamp(1.1rem,2vw,1.5rem);line-height:1.15}.Hero-module__PgAKtG__feature p,.Hero-module__PgAKtG__note p{color:var(--foreground-muted);margin-top:.55rem;font-size:.9rem;line-height:1.55}.Hero-module__PgAKtG__blogCarousel{max-width:100%;position:relative}.Hero-module__PgAKtG__blogViewport{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;max-width:100%;overflow-x:auto}.Hero-module__PgAKtG__blogViewport::-webkit-scrollbar{display:none}.Hero-module__PgAKtG__blogTrack{width:100%;display:flex}.Hero-module__PgAKtG__blogSlide{box-sizing:border-box;scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;min-width:0;max-width:100%;padding-inline:.25rem}.Hero-module__PgAKtG__blogSlide[aria-hidden=true]{pointer-events:none}.Hero-module__PgAKtG__swipeHint{display:none}@media (max-width:900px),(pointer:coarse){.Hero-module__PgAKtG__swipeHint{color:var(--foreground-muted);font:.65rem var(--font-mono);justify-content:space-between;align-items:center;gap:12px;margin:-4px 0 16px;display:flex}}.Hero-module__PgAKtG__blogPost{border:1px solid var(--border);background:color-mix(in srgb, var(--background) 92%, var(--surface));max-width:760px;margin-inline:auto}.Hero-module__PgAKtG__carouselArrow{z-index:1;border:1px solid var(--border);background:var(--background);width:2.6rem;height:2.6rem;color:var(--foreground);cursor:pointer;border-radius:50%;place-items:center;transition:background .18s,color .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.Hero-module__PgAKtG__carouselArrow:hover{color:var(--accent-contrast);background:var(--accent)}.Hero-module__PgAKtG__carouselArrowLeft{left:-1.3rem}.Hero-module__PgAKtG__carouselArrowRight{right:-1.3rem}.Hero-module__PgAKtG__carouselDots{justify-content:center;gap:.5rem;margin-top:1.25rem;display:flex}.Hero-module__PgAKtG__carouselDot{border:1px solid var(--foreground-muted);cursor:pointer;background:0 0;border-radius:50%;width:.55rem;height:.55rem;padding:0;transition:background .18s,border-color .18s,transform .18s}.Hero-module__PgAKtG__carouselDot:hover{border-color:var(--foreground)}.Hero-module__PgAKtG__carouselDotActive{background:var(--foreground);border-color:var(--foreground);transform:scale(1.2)}@media (max-width:900px){.Hero-module__PgAKtG__carouselArrow{width:2.1rem;height:2.1rem;font-size:.85rem}.Hero-module__PgAKtG__carouselArrowLeft{left:.1rem}.Hero-module__PgAKtG__carouselArrowRight{right:.1rem}}@media (max-width:620px){.Hero-module__PgAKtG__blogSlide{padding-inline:0}.Hero-module__PgAKtG__carouselArrow{display:none}.Hero-module__PgAKtG__carouselDots{margin-top:1rem}.Hero-module__PgAKtG__carouselDot{width:.7rem;height:.7rem}}@media (prefers-reduced-motion:reduce){.Hero-module__PgAKtG__blogTrack{transition:none}}.Hero-module__PgAKtG__postHeader{align-items:center;gap:.75rem;padding:1rem;display:flex}.Hero-module__PgAKtG__postAvatar{background:var(--accent);width:2.4rem;height:2.4rem;color:var(--accent-contrast);font:700 .7rem var(--font-mono);border-radius:50%;place-items:center;display:grid}.Hero-module__PgAKtG__postHeader h2{font-size:1rem;line-height:1.1}.Hero-module__PgAKtG__postHeader .Hero-module__PgAKtG__date{margin-top:.25rem;display:block}.Hero-module__PgAKtG__postMenu{letter-spacing:.18em;color:var(--foreground-muted);margin-left:auto}.Hero-module__PgAKtG__postCaption{color:var(--foreground-muted);padding:0 1rem 1rem;font-size:.95rem;line-height:1.6}.Hero-module__PgAKtG__postCaption strong{color:var(--foreground)}.Hero-module__PgAKtG__postGallery{background:var(--border);grid-template-columns:1.35fr .65fr;gap:3px;display:grid}.Hero-module__PgAKtG__galleryMain,.Hero-module__PgAKtG__gallerySide{background:var(--surface);min-height:320px;position:relative;overflow:hidden}.Hero-module__PgAKtG__galleryMain img,.Hero-module__PgAKtG__gallerySide img{object-fit:cover;transition:transform .5s,filter .5s}.Hero-module__PgAKtG__gallerySide{grid-template-rows:repeat(3,1fr);gap:3px;display:grid}.Hero-module__PgAKtG__galleryThumb{min-height:0;position:relative;overflow:hidden}.Hero-module__PgAKtG__galleryMain,.Hero-module__PgAKtG__galleryThumb{cursor:zoom-in;text-align:left;border:0;padding:0}.Hero-module__PgAKtG__blogPost:hover .Hero-module__PgAKtG__galleryMain img,.Hero-module__PgAKtG__blogPost:hover .Hero-module__PgAKtG__gallerySide img{filter:saturate(1.08);transform:scale(1.025)}.Hero-module__PgAKtG__postMeta{color:var(--foreground-muted);font:.68rem var(--font-mono);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:.8rem 1rem;display:flex}.Hero-module__PgAKtG__reactionSummary{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.Hero-module__PgAKtG__reactionSummary>span:first-child{letter-spacing:-.25em;padding-right:4px;font-size:.9rem}.Hero-module__PgAKtG__reactionBar{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:0 12px 12px;display:grid}.Hero-module__PgAKtG__reactionButton{border:1px solid var(--border);background:var(--background);min-width:0;min-height:44px;color:var(--foreground-muted);font:.65rem var(--font-sans);cursor:pointer;border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;padding:8px 4px;transition:background .16s,border-color .16s,color .16s;display:flex}.Hero-module__PgAKtG__reactionButton svg{flex-shrink:0;width:15px;height:15px}.Hero-module__PgAKtG__reactionButton b{font:600 .65rem var(--font-mono)}.Hero-module__PgAKtG__reactionButton:hover{color:var(--foreground);border-color:var(--foreground-muted);background:var(--surface)}.Hero-module__PgAKtG__reactionSelected{color:var(--foreground);border-color:var(--foreground);background:var(--surface)}.Hero-module__PgAKtG__reactionSelected[data-reaction=like] svg{color:#4285d4;fill:#4285d426}.Hero-module__PgAKtG__reactionSelected[data-reaction=love] svg{color:#e03e5b;fill:#e03e5b}.Hero-module__PgAKtG__reactionSelected[data-reaction=celebrate] svg{color:#bd8534}.Hero-module__PgAKtG__postActions{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(2,1fr);display:grid}.Hero-module__PgAKtG__postActions button{color:var(--foreground-muted);cursor:pointer;font:.68rem var(--font-mono);background:0 0;border:0;justify-content:center;align-items:center;gap:.45rem;padding:.75rem .5rem;display:inline-flex}.Hero-module__PgAKtG__postActions button:hover{color:var(--foreground);background:var(--surface)}.Hero-module__PgAKtG__postActions svg,.Hero-module__PgAKtG__commentForm svg{width:.9rem;height:.9rem}.Hero-module__PgAKtG__comments{gap:.55rem;padding:.8rem 1rem 0;display:grid}.Hero-module__PgAKtG__comments p{background:var(--surface);color:var(--foreground-muted);border-radius:0 8px 8px;margin:0;padding:.55rem .7rem;font-size:.8rem}.Hero-module__PgAKtG__comments strong{color:var(--foreground);margin-right:.45rem}.Hero-module__PgAKtG__commentForm{gap:.5rem;padding:.8rem 1rem 1rem;display:flex}.Hero-module__PgAKtG__commentForm input{border:1px solid var(--border);background:var(--background);min-width:0;color:var(--foreground);font:.75rem var(--font-sans);border-radius:999px;flex:1;padding:.65rem .75rem}.Hero-module__PgAKtG__commentForm button{background:var(--accent);width:2.2rem;color:var(--accent-contrast);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.Hero-module__PgAKtG__imageViewer{z-index:20;background:#000000d6;place-items:center;padding:1rem;animation:.18s both Hero-module__PgAKtG__fadeIn;display:grid;position:fixed;inset:0}.Hero-module__PgAKtG__viewerContent{place-items:center;width:min(900px,100vw - 2rem);height:min(90vh,100vh - 2rem);display:grid;position:relative;overflow:hidden}.Hero-module__PgAKtG__viewerImage{object-fit:contain;width:100%;height:100%;display:block}.Hero-module__PgAKtG__viewerClose{z-index:1;color:#fff;cursor:pointer;background:#171719;border:2px solid #fff;border-radius:50%;place-items:center;width:2.75rem;height:2.75rem;font-size:1.7rem;line-height:1;display:grid;position:absolute;top:.75rem;right:.75rem;box-shadow:0 2px 12px #00000073}.Hero-module__PgAKtG__viewerClose:hover,.Hero-module__PgAKtG__viewerClose:focus-visible{color:#171719;background:#fff}.Hero-module__PgAKtG__arrow{font-size:1.3rem}.Hero-module__PgAKtG__aboutText{letter-spacing:-.04em;max-width:660px;font-size:clamp(1.45rem,3vw,2.7rem);line-height:1.05}.Hero-module__PgAKtG__strategyLead{max-width:56ch;color:var(--foreground-muted);margin-top:1.1rem;line-height:1.6}.Hero-module__PgAKtG__strategyGrid{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:1.5rem;display:grid}@media (max-width:1100px){.Hero-module__PgAKtG__strategyGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}.Hero-module__PgAKtG__strategyCard{background:var(--background);padding:1.5rem;transition:background .18s}.Hero-module__PgAKtG__strategyCard:hover{background:var(--surface)}.Hero-module__PgAKtG__strategyIndex{font-family:var(--font-mono);color:var(--foreground-muted);font-size:.68rem}.Hero-module__PgAKtG__strategyCard h3{letter-spacing:-.02em;text-transform:lowercase;margin-top:.6rem;font-size:1.05rem}.Hero-module__PgAKtG__strategyCard p{color:var(--foreground-muted);margin-top:.5rem;font-size:.88rem;line-height:1.55}.Hero-module__PgAKtG__strategyNote{max-width:56ch;color:var(--foreground-muted);margin-top:1.5rem;font-size:.9rem;line-height:1.6}.Hero-module__PgAKtG__badges{margin-top:0}.Hero-module__PgAKtG__footer{border-top:1px solid var(--border);justify-content:space-between;align-items:baseline;max-width:1100px;margin:2rem auto 0;padding:4rem clamp(2rem,7vw,8rem);display:flex}.Hero-module__PgAKtG__footer a{letter-spacing:-.05em;font-size:clamp(1.4rem,3vw,2.5rem);font-weight:700}@keyframes Hero-module__PgAKtG__appear{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes Hero-module__PgAKtG__reveal{0%{opacity:.35;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.Hero-module__PgAKtG__reverseFeature .Hero-module__PgAKtG__projectInfo,.Hero-module__PgAKtG__reverseFeature .Hero-module__PgAKtG__projectImage,.Hero-module__PgAKtG__reverseFeature .Hero-module__PgAKtG__arrow{grid-area:auto}.Hero-module__PgAKtG__pageContent{margin-left:0}.Hero-module__PgAKtG__hero{padding:48px 24px}.Hero-module__PgAKtG__inner{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:clamp(24px,4vw,36px);max-width:820px}.Hero-module__PgAKtG__imageColumn{min-width:0;padding:0}.Hero-module__PgAKtG__content{gap:16px;min-width:0}.Hero-module__PgAKtG__kicker{font-size:.7rem;line-height:1.6}.Hero-module__PgAKtG__heading{margin:0;font-size:clamp(3.6rem,9.5vw,5.5rem)}.Hero-module__PgAKtG__lede{margin-top:8px;font-size:1.1rem;line-height:1.5}.Hero-module__PgAKtG__bio{font-size:.95rem;line-height:1.65}.Hero-module__PgAKtG__ctas{gap:10px;margin-top:8px}.Hero-module__PgAKtG__primaryBtn,.Hero-module__PgAKtG__secondaryBtn{justify-content:center;min-height:44px;padding-inline:16px;font-size:.72rem}.Hero-module__PgAKtG__section{width:100%;scroll-margin-top:calc(var(--mobile-header-clearance) + 20px);padding:40px 24px}.Hero-module__PgAKtG__sectionHead{flex-wrap:wrap;gap:8px 16px;line-height:1.6}.Hero-module__PgAKtG__feature,.Hero-module__PgAKtG__note{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 20px}.Hero-module__PgAKtG__feature:hover,.Hero-module__PgAKtG__note:hover{padding-inline:0}.Hero-module__PgAKtG__projectInfo{min-width:0}.Hero-module__PgAKtG__strategyGrid{list-style:none}.Hero-module__PgAKtG__badges{flex-wrap:wrap;gap:8px;list-style:none;display:flex}.Hero-module__PgAKtG__footer{gap:16px;width:100%;margin-top:0;padding:40px 24px;display:grid}.Hero-module__PgAKtG__footer a{overflow-wrap:anywhere}.Hero-module__PgAKtG__modal{max-height:85dvh;box-shadow:8px 8px #0000002e}.Hero-module__PgAKtG__modalClose{place-items:center;width:44px;height:44px;display:grid;top:8px;right:8px}.Hero-module__PgAKtG__modal>.Hero-module__PgAKtG__date{padding-right:36px;display:block}.Hero-module__PgAKtG__postAvatar{flex-shrink:0}.Hero-module__PgAKtG__postHeader>div{min-width:0}.Hero-module__PgAKtG__postHeader h2{overflow-wrap:anywhere}.Hero-module__PgAKtG__postActions button{min-height:44px}.Hero-module__PgAKtG__commentForm input{min-height:44px;font-size:1rem}.Hero-module__PgAKtG__commentForm button{flex-shrink:0;width:44px}.Hero-module__PgAKtG__comments p{overflow-wrap:anywhere}#writing{margin-top:0}}@media (max-width:620px){.Hero-module__PgAKtG__hero{padding:calc(var(--mobile-header-clearance) - var(--mobile-header-height) + 36px) 20px 40px}.Hero-module__PgAKtG__inner{grid-template-columns:minmax(0,1fr);gap:24px;max-width:480px}.Hero-module__PgAKtG__imageColumn{order:-1}.Hero-module__PgAKtG__heading{font-size:clamp(4rem,22vw,7rem);line-height:.9}.Hero-module__PgAKtG__lede{margin-top:4px;font-size:1.125rem}.Hero-module__PgAKtG__ctas{width:100%}.Hero-module__PgAKtG__primaryBtn,.Hero-module__PgAKtG__secondaryBtn{flex:auto}.Hero-module__PgAKtG__section{padding:32px 20px}.Hero-module__PgAKtG__feature,.Hero-module__PgAKtG__note{grid-template-columns:minmax(0,1fr);gap:16px;padding-block:20px}.Hero-module__PgAKtG__feature+.Hero-module__PgAKtG__feature{border-top:1px solid var(--border)}.Hero-module__PgAKtG__aboutText{font-size:clamp(1.5rem,5.8vw,2rem);line-height:1.2}.Hero-module__PgAKtG__strategyGrid{grid-template-columns:1fr}.Hero-module__PgAKtG__strategyCard{padding:20px}.Hero-module__PgAKtG__projectImage{aspect-ratio:1.55}.Hero-module__PgAKtG__modalGrid{grid-template-columns:1fr;gap:1rem}.Hero-module__PgAKtG__blogPost{margin-inline:0}.Hero-module__PgAKtG__postHeader{gap:8px;padding:12px}.Hero-module__PgAKtG__postHeader h2{font-size:.9rem}.Hero-module__PgAKtG__postHeader .Hero-module__PgAKtG__date{font-size:.6rem}.Hero-module__PgAKtG__postMenu{letter-spacing:0}.Hero-module__PgAKtG__postGallery{grid-template-columns:1fr}.Hero-module__PgAKtG__galleryMain{min-height:280px}.Hero-module__PgAKtG__gallerySide{grid-template-rows:1fr;grid-template-columns:repeat(3,minmax(0,1fr));min-height:0}.Hero-module__PgAKtG__galleryThumb{aspect-ratio:1;min-height:0}.Hero-module__PgAKtG__postActions{gap:0;padding-inline:4px}.Hero-module__PgAKtG__postActions button{padding-inline:4px;font-size:.75rem}.Hero-module__PgAKtG__carouselDots{gap:4px}.Hero-module__PgAKtG__carouselDot{background:0 0;border:0;width:44px;height:44px;position:relative}.Hero-module__PgAKtG__carouselDot:before{content:"";border:1px solid var(--foreground-muted);border-radius:50%;position:absolute;inset:16px}.Hero-module__PgAKtG__carouselDotActive{background:0 0;transform:none}.Hero-module__PgAKtG__carouselDotActive:before{border-color:var(--foreground);background:var(--foreground)}.Hero-module__PgAKtG__footer{padding:32px 20px}.Hero-module__PgAKtG__arrow{display:none}}@media (max-width:900px) and (orientation:portrait){.Hero-module__PgAKtG__inner{grid-template-columns:minmax(0,1fr)}.Hero-module__PgAKtG__imageColumn{display:none}}.Hero-module__PgAKtG__lockedPost{text-align:center;background:radial-gradient(ellipse at top, #a56b6514, transparent 70%), var(--surface);border-top:1px solid var(--border);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:420px;padding:40px 24px;display:flex}.Hero-module__PgAKtG__lockedPostIcon{border:1px solid var(--border);color:#a56b65;background:var(--background);border-radius:50%;place-items:center;width:86px;height:86px;display:grid}.Hero-module__PgAKtG__lockedPost h3{letter-spacing:-.05em;font-size:clamp(26px,4vw,40px)}.Hero-module__PgAKtG__lockedPost p{color:var(--foreground-muted);font-size:14px}.Hero-module__PgAKtG__lockedPost small{color:var(--foreground-muted);font-size:11px}.Hero-module__PgAKtG__openPost{background:var(--accent);color:var(--accent-contrast);border-radius:6px;justify-content:center;align-items:center;gap:12px;margin-top:8px;padding:14px 24px;font-size:14px;display:inline-flex}.Hero-module__PgAKtG__openPost:hover{background:var(--accent-strong)}.Hero-module__PgAKtG__openPost:focus-visible{outline:2px solid var(--foreground);outline-offset:4px}@media (max-width:620px){.Hero-module__PgAKtG__lockedPost{min-height:340px;padding:32px 18px}}.Hero-module__PgAKtG__openPost{cursor:pointer;border:0;font-family:inherit}.Hero-module__PgAKtG__passwordModal{border:1px solid var(--border);background:var(--background);width:min(420px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--foreground);text-align:left;border-radius:16px;margin:auto;padding:0;position:fixed;inset:0}.Hero-module__PgAKtG__passwordModal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009}.Hero-module__PgAKtG__passwordPanel{padding:32px;position:relative}.Hero-module__PgAKtG__passwordPanel h2{margin:16px 0 8px}.Hero-module__PgAKtG__passwordPanel p{color:var(--foreground-muted);font-size:14px;line-height:1.6}.Hero-module__PgAKtG__passwordPanel form{gap:12px;margin-top:24px;display:grid}.Hero-module__PgAKtG__passwordPanel label{font-size:13px}.Hero-module__PgAKtG__passwordPanel input{border:1px solid var(--border);background:var(--surface);width:100%;min-width:0;color:var(--foreground);font:inherit;border-radius:6px;padding:12px;font-size:16px}.Hero-module__PgAKtG__passwordPanel [role=alert]{color:#b64242}.Hero-module__PgAKtG__passwordPanel button:disabled{opacity:.6;cursor:wait}.Hero-module__PgAKtG__passwordClose{width:36px;height:36px;color:var(--foreground);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:14px;right:14px}.Hero-module__PgAKtG__experienceTitle{letter-spacing:-.045em;margin-bottom:16px;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.15}.Hero-module__PgAKtG__experienceIntro{color:var(--foreground-muted);max-width:65ch;margin-bottom:28px;line-height:1.7}.Hero-module__PgAKtG__certificateList{gap:18px;display:grid}.Hero-module__PgAKtG__certificateCard{border:1px solid var(--border);background:var(--background);border-radius:8px;grid-template-columns:40px minmax(0,1fr);gap:18px;padding:26px;display:grid}.Hero-module__PgAKtG__certificateNumber{color:var(--foreground-muted);font:13px var(--font-mono);padding-top:4px}.Hero-module__PgAKtG__certificateCard h3{letter-spacing:-.025em;margin:8px 0;font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.35}.Hero-module__PgAKtG__certificateCard p{color:var(--foreground-muted);font-size:14px;line-height:1.7}.Hero-module__PgAKtG__certificateCard .Hero-module__PgAKtG__certificateIssuer{color:var(--foreground);margin-bottom:14px;font-size:12px}.Hero-module__PgAKtG__certificateCard .Hero-module__PgAKtG__certificateDate{margin-top:12px;font-size:12px}.Hero-module__PgAKtG__certificateLink{border:1px solid var(--border);border-radius:4px;align-items:center;gap:18px;margin-top:20px;padding:10px 14px;font-size:13px;display:inline-flex}.Hero-module__PgAKtG__certificateLink span{color:var(--foreground-muted);font:11px var(--font-mono)}.Hero-module__PgAKtG__certificateLink:hover{background:var(--surface)}@media (max-width:620px){.Hero-module__PgAKtG__certificateCard{grid-template-columns:24px minmax(0,1fr);gap:10px;padding:20px 16px}}.Hero-module__PgAKtG__certificateLink{color:var(--foreground);cursor:pointer;background:0 0;font-family:inherit}.Hero-module__PgAKtG__certificateModal{border:1px solid var(--border);background:var(--background);width:min(1000px,100vw - 32px);max-width:none;height:min(900px,100dvh - 40px);max-height:none;color:var(--foreground);border-radius:12px;margin:auto;padding:0;position:fixed;inset:0;overflow:hidden}.Hero-module__PgAKtG__certificateModal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000b}.Hero-module__PgAKtG__certificateModalContent{flex-direction:column;height:100%;min-height:0;display:flex}.Hero-module__PgAKtG__certificateModalHeader{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.Hero-module__PgAKtG__certificateModalHeader h2{font-size:15px;line-height:1.4}.Hero-module__PgAKtG__certificateModalHeader button{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--foreground);cursor:pointer;border-radius:6px;flex-shrink:0;place-items:center;display:grid}.Hero-module__PgAKtG__certificatePdf{background:var(--surface);border:0;flex:1;width:100%;min-height:0}.Hero-module__PgAKtG__certificateImage{background:var(--surface);text-align:center;flex:1;min-height:0;padding:16px;overflow:auto}.Hero-module__PgAKtG__certificateImage img{width:auto;max-width:100%;height:auto;margin:auto;display:block}.Hero-module__PgAKtG__certificateModalFooter{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:12px 18px;font-size:12px;display:flex}.Hero-module__PgAKtG__certificateModalFooter span{color:var(--foreground-muted)}.Hero-module__PgAKtG__certificateModalFooter a{text-underline-offset:3px;text-decoration:underline}@media (max-width:620px){.Hero-module__PgAKtG__certificateModal{width:calc(100vw - 16px);height:calc(100dvh - 24px)}.Hero-module__PgAKtG__certificateModalHeader{padding:10px 12px}.Hero-module__PgAKtG__certificateModalHeader h2{font-size:13px}.Hero-module__PgAKtG__certificateImage{padding:8px}}.Hero-module__PgAKtG__privateGalleryModal{overscroll-behavior:contain;width:min(1080px,100vw - 32px);height:calc(100dvh - 40px);max-height:calc(100dvh - 40px)}.Hero-module__PgAKtG__privateGalleryContent{text-align:left}.Hero-module__PgAKtG__privateGalleryHeader{z-index:2;border-bottom:1px solid var(--border);background:var(--background);justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;font-size:13px;display:flex;position:sticky;top:0}.Hero-module__PgAKtG__privateGalleryHeader button{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--foreground);cursor:pointer;border-radius:6px;place-items:center;display:grid}@media (max-width:620px){.Hero-module__PgAKtG__privateGalleryModal{width:calc(100vw - 16px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}}.Hero-module__PgAKtG__contactSection{width:100%;margin-top:clamp(48px,7vw,96px)}.Hero-module__PgAKtG__contactGrid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:40px;padding:28px 0;display:grid}.Hero-module__PgAKtG__contactTitle{letter-spacing:-.065em;margin-bottom:24px;font-size:clamp(2.8rem,5vw,4.8rem);line-height:1.05}.Hero-module__PgAKtG__contactTitle span{color:var(--foreground-muted)}.Hero-module__PgAKtG__contactIntro{max-width:42ch;font-size:18px;line-height:1.6}.Hero-module__PgAKtG__contactNote{color:var(--foreground-muted);max-width:48ch;margin-top:14px;font-size:14px;line-height:1.7}.Hero-module__PgAKtG__contactActions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.Hero-module__PgAKtG__contactResume{border:1px solid var(--border);background:var(--background);color:var(--foreground);font:12px var(--font-mono);cursor:pointer;border-radius:2px;justify-content:center;align-items:center;gap:9px;padding:12px 16px;display:inline-flex}.Hero-module__PgAKtG__contactResume svg{width:16px;height:16px}.Hero-module__PgAKtG__contactResume:hover{background:var(--surface)}.Hero-module__PgAKtG__contactDetails{border-left:1px solid var(--border);gap:24px;padding-left:28px;display:grid}.Hero-module__PgAKtG__contactDetails dt{color:var(--foreground-muted);font:11px var(--font-mono);margin-bottom:9px}.Hero-module__PgAKtG__contactDetails dd{overflow-wrap:anywhere;font-size:15px;line-height:1.6}.Hero-module__PgAKtG__contactDetails a:hover{text-underline-offset:4px;text-decoration:underline}.Hero-module__PgAKtG__contactSignoff{border-top:1px solid var(--border);color:var(--foreground-muted);margin-top:24px;padding-top:24px;font-size:12px}@media (max-width:620px){.Hero-module__PgAKtG__contactGrid{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:16px}.Hero-module__PgAKtG__contactDetails{border-left:0;border-top:1px solid var(--border);padding:24px 0 0}}.Hero-module__PgAKtG__messageCard{border:1px solid var(--border);background:var(--background);border-radius:14px;margin-top:28px;overflow:hidden}.Hero-module__PgAKtG__messageHeader{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:24px;display:flex}.Hero-module__PgAKtG__messageAvatar{background:var(--foreground);width:46px;height:46px;color:var(--background);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.Hero-module__PgAKtG__messageHeader h3{letter-spacing:-.03em;font-size:18px}.Hero-module__PgAKtG__messageHeader p{color:var(--foreground-muted);margin-top:5px;font-size:12px}.Hero-module__PgAKtG__messageBubble{background:var(--surface);border-radius:0 16px 16px;max-width:calc(100% - 48px);margin:24px 24px 0;padding:14px 18px;font-size:14px;line-height:1.6;display:inline-block}.Hero-module__PgAKtG__messageForm{gap:20px;padding:24px;display:grid;position:relative}.Hero-module__PgAKtG__messageFields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.Hero-module__PgAKtG__messageForm label{gap:9px;font-size:12px;font-weight:500;display:grid}.Hero-module__PgAKtG__messageForm input,.Hero-module__PgAKtG__messageForm textarea{border:1px solid var(--border);background:var(--background);width:100%;min-width:0;color:var(--foreground);font:inherit;border-radius:7px;padding:13px 14px;font-size:16px;line-height:1.5}.Hero-module__PgAKtG__messageForm textarea{resize:vertical;min-height:140px}.Hero-module__PgAKtG__messageForm input:focus-visible,.Hero-module__PgAKtG__messageForm textarea:focus-visible{outline:2px solid var(--foreground);outline-offset:2px}.Hero-module__PgAKtG__messageForm .Hero-module__PgAKtG__messageTrap{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.Hero-module__PgAKtG__messageSend{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.Hero-module__PgAKtG__messageSend span{color:var(--foreground-muted);font-size:12px}.Hero-module__PgAKtG__messageSend button{background:var(--foreground);color:var(--background);font:inherit;cursor:pointer;border:0;border-radius:6px;justify-content:center;align-items:center;gap:12px;padding:14px 20px;font-size:14px;display:inline-flex}.Hero-module__PgAKtG__messageSend button:disabled{opacity:.6;cursor:wait}.Hero-module__PgAKtG__messageStatus,.Hero-module__PgAKtG__messageError{font-size:14px;line-height:1.6}.Hero-module__PgAKtG__messageError{color:#b33d3d}.Hero-module__PgAKtG__messageError a{text-decoration:underline}@media (max-width:620px){.Hero-module__PgAKtG__messageHeader,.Hero-module__PgAKtG__messageForm{padding:20px}.Hero-module__PgAKtG__messageFields{grid-template-columns:minmax(0,1fr)}.Hero-module__PgAKtG__messageBubble{max-width:calc(100% - 40px);margin:20px 20px 0}.Hero-module__PgAKtG__messageSend button{width:100%}}
.SidebarTechStack-module__ZHkamq__stack{border-top:1px solid var(--border);margin-top:48px;padding-top:22px}.SidebarTechStack-module__ZHkamq__stack h2{font:11px var(--font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--foreground)}.SidebarTechStack-module__ZHkamq__stack p{color:var(--foreground-muted);margin-top:7px;font-size:10px}.SidebarTechStack-module__ZHkamq__stack ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 6px;margin-top:16px;list-style:none;display:grid}.SidebarTechStack-module__ZHkamq__stack li{border:1px solid var(--border);background:var(--background);min-width:0;color:var(--foreground-muted);border-radius:5px;align-items:center;gap:6px;padding:9px 5px;transition:color .18s,background .18s;display:flex}.SidebarTechStack-module__ZHkamq__stack li:hover{background:var(--surface);color:var(--foreground)}.SidebarTechStack-module__ZHkamq__stack svg{flex-shrink:0;width:14px;height:14px}.SidebarTechStack-module__ZHkamq__stack li span{letter-spacing:-.02em;font-size:9px}
.gallery-module__rYiboW__page{width:min(1120px,100%);margin:auto;padding:28px 32px 40px}.gallery-module__rYiboW__nav,.gallery-module__rYiboW__nav a,.gallery-module__rYiboW__nav button,.gallery-module__rYiboW__albumLabel,.gallery-module__rYiboW__albumLabel span{align-items:center;gap:10px;display:flex}.gallery-module__rYiboW__nav{justify-content:space-between;font-size:13px}.gallery-module__rYiboW__nav button{border:1px solid var(--border);background:var(--background);color:var(--foreground);cursor:pointer;border-radius:24px;padding:10px 14px}.gallery-module__rYiboW__heading{text-align:center;padding:76px 0 38px}.gallery-module__rYiboW__eyebrow{font:11px var(--font-mono);letter-spacing:.18em;color:var(--foreground-muted)}.gallery-module__rYiboW__heading h1{letter-spacing:-.075em;margin:16px 0;font-size:clamp(64px,12vw,104px);line-height:1.15}.gallery-module__rYiboW__heading h1 span{color:#a56b65}.gallery-module__rYiboW__heading p,.gallery-module__rYiboW__gate p{color:var(--foreground-muted);font-size:15px;line-height:1.7}.gallery-module__rYiboW__gate{border:1px solid var(--border);background:var(--background);text-align:center;border-radius:20px;max-width:440px;margin:0 auto;padding:36px;box-shadow:0 12px 40px #00000005}.gallery-module__rYiboW__lock{color:#a56b65;background:#a56b6514;border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto 22px;display:grid}.gallery-module__rYiboW__gate h2{letter-spacing:-.04em;margin-bottom:10px;font-size:21px}.gallery-module__rYiboW__gate form{text-align:left;gap:12px;margin:28px 0 22px;display:grid}.gallery-module__rYiboW__gate label{font-size:12px;font-weight:600}.gallery-module__rYiboW__gate input{width:100%;min-width:0;font:inherit;background:var(--surface);border:1px solid var(--border);color:var(--foreground);border-radius:8px;padding:14px;font-size:16px}.gallery-module__rYiboW__gate form button{background:var(--foreground);color:var(--background);cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:12px;padding:14px;display:flex}.gallery-module__rYiboW__gate button:disabled{opacity:.55;cursor:wait}.gallery-module__rYiboW__gate small{color:var(--foreground-muted);justify-content:center;align-items:center;gap:6px;font-size:11px;display:flex}.gallery-module__rYiboW__gate .gallery-module__rYiboW__error{color:#af3939;margin-bottom:18px;font-size:13px}.gallery-module__rYiboW__albumLabel{border-top:1px solid var(--border);color:var(--foreground-muted);justify-content:space-between;padding:20px 0;font-size:12px}.gallery-module__rYiboW__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.gallery-module__rYiboW__photo{border:1px solid var(--border);background:var(--background);min-width:0;color:var(--foreground-muted);cursor:pointer;text-align:left;border-radius:8px;padding:9px}.gallery-module__rYiboW__photo img{aspect-ratio:4/5;object-fit:cover;border-radius:3px;width:100%;height:auto;display:block}.gallery-module__rYiboW__photo span{font:10px var(--font-mono);padding:14px 4px 5px;display:block}.gallery-module__rYiboW__viewer{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:max(64px, env(safe-area-inset-top)) 16px max(20px, env(safe-area-inset-bottom));color:#fff;background:#111;border:0;margin:auto;position:fixed;inset:0;overflow:hidden}.gallery-module__rYiboW__viewer[open]{place-items:center;display:grid}.gallery-module__rYiboW__viewer::backdrop{background:#000e}.gallery-module__rYiboW__viewer img{object-fit:contain;width:auto;max-width:100%;height:auto;min-height:0;max-height:100%;display:block}.gallery-module__rYiboW__close{z-index:2;right:max(16px, env(safe-area-inset-right));top:max(12px, env(safe-area-inset-top));color:#fff;cursor:pointer;background:#171719;border:1px solid #fff5;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute}.gallery-module__rYiboW__photoNotice{text-align:center;color:#fff;font-size:14px;position:absolute;inset:50% 24px auto}.gallery-module__rYiboW__footer{text-align:center;color:var(--foreground-muted);padding-top:52px;font-size:11px}@media (max-width:620px){.gallery-module__rYiboW__page{padding:22px 18px 32px}.gallery-module__rYiboW__heading{padding-top:54px}.gallery-module__rYiboW__heading p{max-width:270px;margin:auto}.gallery-module__rYiboW__gate{padding:28px 22px}.gallery-module__rYiboW__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-module__rYiboW__photo{padding:6px}.gallery-module__rYiboW__photo span{font-size:8px}}
.ProfileImage-module__ghc34q__wrap{aspect-ratio:1/1.12;width:min(330px,78vw);margin-inline:auto;position:relative}.ProfileImage-module__ghc34q__glow{background:radial-gradient(circle at 35% 30%, var(--accent) 0%, var(--accent-soft) 45%, transparent 70%);filter:blur(38px);opacity:.45;pointer-events:none;border-radius:0;transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1);position:absolute;inset:-12%;transform:scale(.92)rotate(0)}.ProfileImage-module__ghc34q__glowActive{opacity:.8;transform:scale(1.08)rotate(6deg)}.ProfileImage-module__ghc34q__wrap:has(.ProfileImage-module__ghc34q__frame:focus-visible) .ProfileImage-module__ghc34q__glow{opacity:.8;transform:scale(1.08)rotate(6deg)}.ProfileImage-module__ghc34q__frame{cursor:pointer;background:var(--surface);border:none;border-radius:2px;width:100%;height:100%;padding:0;transition:transform .55s cubic-bezier(.22,1,.36,1);display:block;position:relative;overflow:hidden;box-shadow:12px 12px #dededb}.ProfileImage-module__ghc34q__frameActive,.ProfileImage-module__ghc34q__frame:focus-visible{transform:scale(1.03)rotate(-1.5deg)}.ProfileImage-module__ghc34q__image{object-fit:cover;filter:grayscale()contrast(1.05)brightness(.98);width:100%;height:100%;transition:filter .55s}.ProfileImage-module__ghc34q__frameActive .ProfileImage-module__ghc34q__image,.ProfileImage-module__ghc34q__frame:focus-visible .ProfileImage-module__ghc34q__image{filter:grayscale(0)contrast()brightness()}.ProfileImage-module__ghc34q__controls{font-family:var(--font-mono);justify-content:space-between;align-items:center;margin-top:.9rem;display:flex}.ProfileImage-module__ghc34q__arrow{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:2.6rem;height:2.6rem;transition:background .18s,color .18s;display:grid}.ProfileImage-module__ghc34q__arrow:hover{color:var(--accent-contrast);background:var(--accent)}.ProfileImage-module__ghc34q__dots{gap:.45rem;display:flex}.ProfileImage-module__ghc34q__dot{border:1px solid var(--foreground-muted);cursor:pointer;background:0 0;border-radius:50%;width:1.4rem;height:1.4rem;padding:.48rem}.ProfileImage-module__ghc34q__dotActive{border-color:var(--foreground);background:var(--foreground)}@media (max-width:900px){.ProfileImage-module__ghc34q__wrap{aspect-ratio:auto;width:min(280px,100% - 16px)}.ProfileImage-module__ghc34q__glow{opacity:.18;filter:blur(28px);inset:-4% -4% 12%}.ProfileImage-module__ghc34q__frame{aspect-ratio:1/1.12;height:auto;box-shadow:8px 8px 0 var(--border)}.ProfileImage-module__ghc34q__image{position:absolute;inset:0}.ProfileImage-module__ghc34q__controls{margin-top:12px}.ProfileImage-module__ghc34q__arrow{width:44px;height:44px}.ProfileImage-module__ghc34q__dots{gap:0}.ProfileImage-module__ghc34q__dot{background:0 0;border:0;width:44px;height:44px;padding:0;position:relative}.ProfileImage-module__ghc34q__dot:before{content:"";border:1px solid var(--foreground-muted);border-radius:50%;position:absolute;inset:15px}.ProfileImage-module__ghc34q__dotActive:before{border-color:var(--foreground);background:var(--foreground)}}@media (max-width:620px){.ProfileImage-module__ghc34q__wrap{width:clamp(208px,54vw,280px)}}@media (prefers-reduced-motion:reduce){.ProfileImage-module__ghc34q__glow,.ProfileImage-module__ghc34q__frame,.ProfileImage-module__ghc34q__image{transition:none}}
