.sections_heroShell__LHZfx{position:relative}.sections_heroOutlineA__hzHBX{width:260px;height:260px;top:-120px;right:8%;opacity:.6}.sections_heroOutlineA__hzHBX,.sections_heroOutlineB__jHkso{position:absolute;border:1px solid rgb(var(--color-line));border-radius:9999px;pointer-events:none}.sections_heroOutlineB__jHkso{width:180px;height:180px;bottom:-60px;left:-40px;opacity:.5}.sections_heroImageFrame__gRp8q{position:relative;border:1px solid rgb(var(--color-line));border-radius:28px;overflow:hidden;background:rgb(var(--color-paper))}.sections_heroCaption__Zc6n8{font-size:.875rem;color:rgb(var(--color-muted));letter-spacing:.02em}.sections_sectionDivider__l_8rj{height:1px;background:rgb(var(--color-line));width:100%}.sections_projectFeature__o_GLi{border:1px solid rgb(var(--color-line));border-radius:24px;overflow:hidden;background:rgb(var(--color-paper))}.sections_projectStack__jOg9r{display:block;border:1px solid rgb(var(--color-line));border-radius:20px;overflow:hidden;background:rgb(var(--color-paper));text-decoration:none}.sections_imageSwap__AhLec{position:relative}.sections_imageSwapPrimary__PMccN{transition:opacity .35s ease}.sections_imageSwapSecondary__fEjPu{position:absolute;inset:0;opacity:0;transition:opacity .35s ease}.sections_imageSwap__AhLec:hover .sections_imageSwapPrimary__PMccN{opacity:0}.sections_imageSwap__AhLec:hover .sections_imageSwapSecondary__fEjPu{opacity:1}.sections_mobileDialog__VGqu6{border:none;background:transparent;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;padding:0}.sections_mobileDialog__VGqu6::backdrop{background:rgba(26,26,26,.35);animation:sections_mobileBackdropIn__NURk5 .45s ease}.sections_mobilePanel__04BTA{position:absolute;inset:0;height:100dvh;width:100vw;background:rgb(var(--color-primary));padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);transform:translateY(8%);opacity:0;transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .3s ease;overflow-y:auto}.sections_mobilePanelOpen__qlqNO{transform:translateY(0);opacity:1}@keyframes sections_mobileBackdropIn__NURk5{0%{opacity:0}to{opacity:1}}