.page_header__kVzhN{height:var(--header-h);display:flex;justify-content:space-between;align-items:center;padding:0 2.5rem;border-bottom:1px solid var(--rule)}.page_headerName__VZz4t{font-family:var(--font-sans);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--paper)}.page_headerNav__s8uUQ{display:flex;align-items:baseline;gap:1.8rem}.page_headerLink__Yv_5N,.page_headerResume__H4Num{font-family:var(--font-sans);font-size:.68rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;transition:color .3s}.page_headerLink__Yv_5N{color:var(--mid)}.page_headerLink__Yv_5N:hover{color:var(--paper)}.page_headerResume__H4Num{color:var(--accent);border-bottom:1px solid transparent;transition:color .3s,border-color .3s}.page_headerResume__H4Num:hover{border-bottom-color:var(--accent)}.page_spine__Fm6YP{display:none}@media (min-width:1100px){.page_spine__Fm6YP{display:block;position:fixed;top:calc(var(--header-h) + 24px);bottom:32px;left:28px;width:1px;background:var(--rule);z-index:90;pointer-events:none}.page_spineFill__9fYre{position:absolute;inset:0;background:var(--accent);transform:scaleY(var(--sp,0));transform-origin:top}}.page_hero__SKW6o{min-height:calc(100dvh - var(--header-h));display:grid;grid-template-rows:1fr auto;padding:0 2.5rem;position:relative;overflow:hidden}.page_heroSparks__3v20U{position:absolute;inset:0;pointer-events:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:rgba(23,19,16,.14);z-index:0}.page_heroSparks__3v20U span{position:absolute;font-size:.8rem}.page_heroSparks__3v20U span:first-child{top:18%;left:12%}.page_heroSparks__3v20U span:nth-child(2){top:36%;left:21%;font-size:1rem}.page_heroSparks__3v20U span:nth-child(3){top:22%;right:14%}.page_heroSparks__3v20U span:nth-child(4){top:48%;right:8%;color:rgba(37,99,235,.28)}.page_heroSparks__3v20U span:nth-child(5){bottom:27%;left:8%}.page_heroSparks__3v20U span:nth-child(6){bottom:18%;right:20%}.page_waveBand__UsZMQ{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;transform:translateY(calc(var(--hp, 0) * 24px));opacity:calc(1 - var(--hp, 0) * .7)}.page_heroStack__prKYY{justify-content:center;text-align:center;min-height:0;padding:1rem 0 2rem}.page_heroContent__2lPR8,.page_heroStack__prKYY{position:relative;display:flex;flex-direction:column;align-items:center}.page_heroContent__2lPR8{z-index:2;transform:translateY(calc(var(--hp, 0) * -80px)) scale(calc(1 - var(--hp, 0) * .04));opacity:calc(1 - var(--hp, 0) * .9)}.page_heroOrb__grRpY{position:relative;width:min(620px,90vw);height:clamp(230px,34vh,380px);transform:translateY(calc(var(--hp, 0) * 30px));opacity:calc(1 - var(--hp, 0) * .5)}.page_asciiCanvas__QuYmS{position:relative;z-index:1;display:block;width:100%;height:100%;opacity:0;transition:opacity 1.6s ease .45s;touch-action:pan-y;-webkit-mask-image:radial-gradient(75% 75% at 50% 50%,#000 46%,transparent 80%);mask-image:radial-gradient(75% 75% at 50% 50%,#000 46%,transparent 80%)}.page_heroOrbVisible__r_o4a .page_asciiCanvas__QuYmS{opacity:1}.page_maskLine__2RVxP{display:block;overflow:hidden;padding-bottom:.15em;margin-bottom:-.15em}.page_maskLineInner__lsjp0{display:block;transform:translateY(110%);transition:transform 1s cubic-bezier(.22,1,.36,1) .15s}.page_visible__NlJV_ .page_maskLineInner__lsjp0{transform:translateY(0)}.page_heroName__L5Y4I{font-family:var(--font-serif);font-weight:400;font-size:clamp(3.6rem,7.5vw,6.2rem);line-height:1;letter-spacing:-.01em;color:var(--paper);margin:0}.page_heroTagline__BFtFD{font-family:var(--font-sans);font-size:clamp(.95rem,1.2vw,1.08rem);line-height:1.65;color:var(--mid);max-width:26rem;margin:1.4rem auto 0;opacity:0;transform:translateY(14px);transition:opacity .9s cubic-bezier(.22,1,.36,1) .55s,transform .9s cubic-bezier(.22,1,.36,1) .55s}.page_heroActions__8_tzb{display:flex;justify-content:center;align-items:center;gap:1.4rem;margin-top:2rem;opacity:0;transform:translateY(14px);transition:opacity .9s cubic-bezier(.22,1,.36,1) .72s,transform .9s cubic-bezier(.22,1,.36,1) .72s}.page_visible__NlJV_ .page_heroActions__8_tzb,.page_visible__NlJV_ .page_heroTagline__BFtFD{opacity:1;transform:none}.page_heroCta__jc8eN{font-family:var(--font-sans);font-size:.82rem;font-weight:500;letter-spacing:.03em;color:var(--bg);background:var(--paper);text-decoration:none;padding:.85rem 1.7rem;border-radius:999px;box-shadow:0 10px 28px rgba(23,19,16,.16);transition:background .3s,transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s}.page_heroCta__jc8eN:hover{background:var(--accent);transform:translateY(-2px);box-shadow:0 14px 34px rgba(37,99,235,.28)}.page_heroCta__jc8eN:active{transform:translateY(0) scale(.98)}.page_heroCtaGhost__2ymqq{font-family:var(--font-sans);font-size:.82rem;font-weight:500;letter-spacing:.03em;color:var(--mid);text-decoration:none;padding:.85rem .4rem;border-bottom:1px solid transparent;transition:color .3s,border-color .3s}.page_heroCtaGhost__2ymqq:hover{color:var(--paper);border-bottom-color:var(--paper-dim)}.page_heroBar__BLjBK{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--rule);padding:1.2rem 0}.page_heroBarLabel__Nz_4G{font-family:var(--font-sans);font-size:.7rem;color:var(--ghost);letter-spacing:.06em}.page_heroLine__AXb8A{height:1px;background:var(--accent);flex:1 1;margin:0 2rem;max-width:0;transition:max-width 1.8s cubic-bezier(.16,1,.3,1)}.page_heroLine__AXb8A.page_expanded__Wmqkf{max-width:100%}.page_workSection__nVQG7{max-width:1100px;margin:0 auto}.page_workHeader__4X2JY{padding:5rem 2.5rem 1rem;display:flex;justify-content:space-between;align-items:baseline;position:relative;opacity:0;transform:translateY(20px);transition:all .6s cubic-bezier(.16,1,.3,1)}.page_workHeader__4X2JY:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--rule);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.22,1,.36,1)}.page_workHeader__4X2JY.page_visible__NlJV_:after{transform:scaleX(1)}.page_workHeader__4X2JY.page_visible__NlJV_{opacity:1;transform:none}.page_workLabel___VRsh{font-family:var(--font-sans);font-size:.78rem;color:var(--mid);letter-spacing:.12em;font-feature-settings:"smcp";font-variant-caps:small-caps;text-transform:lowercase}.page_workSubtitle__nyEIF{font-family:var(--font-serif);font-style:italic;font-size:.9rem;color:var(--ghost)}.page_projectWrap__pueYQ{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}.page_projectWrap__pueYQ.page_visible__NlJV_{opacity:1;transform:none}.page_projectLink__ELw1G{display:grid;grid-template-columns:clamp(48px,6vw,80px) 1fr;grid-gap:2rem;gap:2rem;align-items:start;padding:3.5rem 2.5rem;text-decoration:none;color:inherit;position:relative;overflow:hidden}.page_projectLinkInteractive__p4FQl{cursor:pointer}.page_projectLinkStatic__zuNgK{cursor:default}.page_projectGlow__6dXga{position:absolute;inset:0;background:none;transition:opacity .4s;pointer-events:none}.page_projectLinkInteractive__p4FQl:focus-visible .page_projectGlow__6dXga,.page_projectLinkInteractive__p4FQl:hover .page_projectGlow__6dXga{background:radial-gradient(600px circle at var(--mx) var(--my),rgba(37,99,235,.08),transparent 40%)}.page_projectLink__ELw1G:before{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--rule);transform:scaleX(0);transform-origin:left;transition:background .4s,transform .9s cubic-bezier(.22,1,.36,1)}.page_projectWrap__pueYQ.page_visible__NlJV_ .page_projectLink__ELw1G:before{transform:scaleX(1)}.page_projectLinkInteractive__p4FQl:focus-visible:before,.page_projectLinkInteractive__p4FQl:hover:before{background:linear-gradient(90deg,var(--rule) 0,rgba(37,99,235,.5) calc(var(--mx, 50%) - 100px),var(--accent) var(--mx,50%),rgba(37,99,235,.5) calc(var(--mx, 50%) + 100px),var(--rule) 100%)}.page_projectNumWrap__3vWHO{position:relative}.page_projectNum__I8fOb{display:inline-block;font-family:var(--font-serif);font-style:italic;font-size:1.15rem;color:var(--ghost);line-height:1;margin-top:.85rem;transition:color .4s,transform .4s ease}.page_projectLinkInteractive__p4FQl:focus-visible .page_projectNum__I8fOb,.page_projectLinkInteractive__p4FQl:hover .page_projectNum__I8fOb{color:var(--accent);transform:translateX(-4px)}.page_projectContent__LCO__{position:relative;transition:transform .4s ease}.page_projectLinkInteractive__p4FQl:focus-visible .page_projectContent__LCO__,.page_projectLinkInteractive__p4FQl:hover .page_projectContent__LCO__{transform:translateX(6px)}.page_projectHeader__x_IRZ{display:flex;align-items:baseline;gap:1.5rem;margin-bottom:.8rem;flex-wrap:wrap}.page_projectTitle__OwPzL{font-family:var(--font-display);font-weight:600;font-size:clamp(1.8rem,3.5vw,3rem);color:var(--paper);margin:0;letter-spacing:-.02em;transition:color .3s}.page_projectLinkInteractive__p4FQl:focus-visible .page_projectTitle__OwPzL,.page_projectLinkInteractive__p4FQl:hover .page_projectTitle__OwPzL{color:var(--accent)}.page_projectMeta__KTRaC{font-family:var(--font-sans);font-size:.7rem;color:var(--ghost);letter-spacing:.1em}.page_projectDesc__2lmu6{font-family:var(--font-sans);font-size:1rem;line-height:1.7;color:var(--mid);max-width:560px;margin:0 0 1.5rem}.page_projectTagLine__sVvo6{font-family:var(--font-sans);font-size:.78rem;letter-spacing:.02em;color:var(--ghost);margin:0;transition:color .3s}.page_projectLinkInteractive__p4FQl:focus-visible .page_projectTagLine__sVvo6,.page_projectLinkInteractive__p4FQl:hover .page_projectTagLine__sVvo6{color:var(--paper-dim)}.page_caseStudyBtn__2pvRB{display:inline-block;margin-top:1.2rem;font-family:var(--font-sans);font-size:.72rem;font-weight:500;letter-spacing:.06em;color:var(--accent);text-decoration:none;padding:.5rem 1.2rem;border:1px solid var(--accent);border-radius:var(--radius-pill);transition:all .3s;position:relative;z-index:2}.page_caseStudyBtn__2pvRB:hover{background:var(--accent);color:var(--bg)}.page_caseStudyBtn__2pvRB:active{transform:scale(.97) translateY(1px)}.page_about__aOfOo{max-width:1100px;margin:0 auto;padding:8rem 2.5rem;opacity:0;transform:translateY(35px);transition:all .9s cubic-bezier(.16,1,.3,1)}.page_about__aOfOo.page_visible__NlJV_{opacity:1;transform:none}.page_sectionLabel__leOgg{display:flex;align-items:center;gap:1.5rem;margin-bottom:4rem}.page_sectionLabelText__zfopa{font-family:var(--font-sans);font-size:.78rem;color:var(--mid);letter-spacing:.12em;font-feature-settings:"smcp";font-variant-caps:small-caps;text-transform:lowercase}.page_sectionRule__QendM{flex:1 1;height:1px;background:var(--rule);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.22,1,.36,1)}.page_visible__NlJV_ .page_sectionRule__QendM{transform:scaleX(1)}.page_aboutGrid__3OvzD{display:grid;grid-template-columns:1.3fr .7fr;grid-gap:6rem;gap:6rem;align-items:start}.page_aboutQuote__tpGOv{font-family:var(--font-sans);font-weight:700;font-size:clamp(1.6rem,3vw,2.4rem);color:var(--paper);line-height:1.15;letter-spacing:-.02em;margin:0 0 2.5rem}.page_aboutBio__67IwH{font-family:var(--font-sans);font-size:.95rem;line-height:1.8;color:var(--mid);display:flex;flex-direction:column;gap:1.2rem}.page_aboutBio__67IwH p{margin:0}.page_aboutDetails__whr6R{padding-top:.5rem}.page_aboutItem__MKbZv{padding:1.3rem 0;border-bottom:1px solid var(--rule);opacity:0;transform:translateY(14px);transition:opacity .7s cubic-bezier(.22,1,.36,1) var(--d,0s),transform .7s cubic-bezier(.22,1,.36,1) var(--d,0s),padding-left .3s cubic-bezier(.22,1,.36,1)}.page_visible__NlJV_ .page_aboutItem__MKbZv{opacity:1;transform:none}.page_aboutItem__MKbZv:hover{padding-left:.5rem}.page_aboutItem__MKbZv:first-child{border-top:1px solid var(--rule)}.page_aboutItemLabel__Ec6YN{font-family:var(--font-sans);font-size:.62rem;color:var(--ghost);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.5rem}.page_aboutItemValue__ZiEJ9{font-family:var(--font-sans);font-size:.92rem;color:var(--paper);font-weight:500}.page_aboutItemSub__U9eTR{font-family:var(--font-sans);font-size:.78rem;color:var(--ghost);margin-top:.2rem}.page_contact__BmhPC{max-width:1100px;margin:0 auto;padding:4rem 2.5rem 6rem;opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.16,1,.3,1)}.page_contact__BmhPC.page_visible__NlJV_{opacity:1;transform:none}.page_contactTitle__f9zlz{font-family:var(--font-sans);font-weight:700;font-size:clamp(2.5rem,6vw,5rem);color:var(--paper);line-height:.98;letter-spacing:-.035em;margin:0 0 1rem}.page_contactSub__BXAC1{font-family:var(--font-sans);font-size:.95rem;color:var(--mid);max-width:400px;margin-bottom:3.5rem;line-height:1.6}.page_contactLinks__seXlJ{border-top:1px solid var(--rule)}.page_contactLinkWrap__vV_Eb{opacity:0;transform:translateY(16px);transition:opacity .7s cubic-bezier(.22,1,.36,1) var(--d,0s),transform .7s cubic-bezier(.22,1,.36,1) var(--d,0s)}.page_visible__NlJV_ .page_contactLinkWrap__vV_Eb{opacity:1;transform:none}.page_contactLink__wr6_f{display:grid;grid-template-columns:90px 1fr auto;align-items:center;grid-gap:2rem;gap:2rem;padding:1.5rem .5rem;border-bottom:1px solid var(--rule);text-decoration:none;position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.22,1,.36,1)}.page_contactLink__wr6_f:after{content:"";position:absolute;inset:0;background:var(--accent-dim);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1);pointer-events:none}.page_contactLink__wr6_f:hover:after{transform:scaleX(1)}.page_contactLink__wr6_f:active{transform:scale(.995)}.page_contactLinkLabel__PdyYo{font-family:var(--font-sans);font-size:.62rem;color:var(--ghost);letter-spacing:.12em;text-transform:uppercase;position:relative;z-index:1}.page_contactLinkValue__NTpL8{font-family:var(--font-sans);font-size:.95rem;font-weight:500;color:var(--paper);transition:color .3s;position:relative;z-index:1}.page_contactLink__wr6_f:hover .page_contactLinkValue__NTpL8{color:var(--accent)}.page_contactLinkArrow__t9x5t{font-family:var(--font-sans);font-size:.8rem;color:var(--ghost);opacity:0;transform:translateX(-8px);transition:all .3s;position:relative;z-index:1}.page_contactLink__wr6_f:hover .page_contactLinkArrow__t9x5t{opacity:1;transform:translateX(0)}.page_footer__sHKi3{max-width:1100px;margin:0 auto;padding:2rem 2.5rem 3rem;border-top:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.page_footerCopy__Oxx70{font-family:var(--font-sans);font-size:.65rem;color:var(--ghost);letter-spacing:.08em}.page_footerRight__FpukQ{display:flex;gap:2rem;align-items:center}.page_footerLink__8kkdp{font-family:var(--font-sans);font-size:.65rem;color:var(--ghost);text-decoration:none;letter-spacing:.08em;transition:color .3s}.page_footerLink__8kkdp:hover{color:var(--accent)}.page_footerBuilt__N9B9E{font-family:var(--font-sans);font-size:.6rem;color:var(--ghost);letter-spacing:.06em}@media (max-width:768px){.page_header__kVzhN{padding:0 1.2rem}.page_headerNav__s8uUQ{gap:1rem}.page_headerLink__Yv_5N,.page_headerName__VZz4t,.page_headerResume__H4Num{font-size:.62rem}.page_hero__SKW6o{padding:0 1.2rem}.page_heroStack__prKYY{padding:.5rem 0 1.5rem}.page_heroOrb__grRpY{height:clamp(190px,28vh,270px)}.page_heroName__L5Y4I{font-size:clamp(2.9rem,13vw,4.2rem)}.page_heroSparks__3v20U span:nth-child(2),.page_heroSparks__3v20U span:nth-child(5){display:none}.page_heroActions__8_tzb{flex-wrap:wrap;gap:1rem}.page_heroBar__BLjBK{flex-wrap:wrap;gap:.5rem}.page_heroLine__AXb8A{order:3;width:100%;margin:.5rem 0 0}.page_workHeader__4X2JY{padding:5rem 1.2rem 1rem;flex-direction:column;gap:.5rem}.page_projectLink__ELw1G{grid-template-columns:1fr;padding:2.5rem 1.2rem;gap:1rem}.page_aboutGrid__3OvzD{grid-template-columns:1fr;gap:3rem}.page_about__aOfOo{padding:5rem 1.2rem}.page_contact__BmhPC{padding:4rem 1.2rem 6rem}.page_contactLink__wr6_f{grid-template-columns:70px 1fr auto;gap:1rem}.page_footer__sHKi3{padding:2rem 1.2rem 3rem}}