.page_article__vFa0y{max-width:42rem;margin-inline:auto}.page_head__oXAFM{-webkit-padding-before:calc(var(--nav-h) + var(--s-8));padding-block-start:calc(var(--nav-h) + var(--s-8));-webkit-padding-after:var(--s-8);padding-block-end:var(--s-8);width:100vw;margin-inline:calc(50% - 50vw);margin-bottom:var(--s-8)}.page_headInner__vGG7w{max-width:42rem;margin-inline:auto;padding-inline:var(--gutter)}.page_back__pmv0r{display:inline-flex;align-items:center;gap:var(--s-2);margin-bottom:var(--s-6);font-size:var(--fs-sm);color:var(--text-3);transition:color var(--dur-fast) var(--ease-out),gap var(--dur-base) var(--ease-out)}.page_back__pmv0r:hover{color:var(--text-1);gap:var(--s-3)}.page_meta__bPjif{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3);margin-bottom:var(--s-5);font-size:var(--fs-sm);color:var(--text-4)}.page_sep___MW1z:after{content:"·"}.page_title__Gek8K{font-size:var(--fs-h1);font-weight:var(--fw-medium);line-height:var(--lh-h1);letter-spacing:var(--tk-h1);margin-bottom:var(--s-4)}.page_summary__ZdFGm{font-size:var(--fs-lead);line-height:var(--lh-lead);color:var(--text-2)}.page_body__vbpdJ{padding-bottom:var(--section)}.page_p__pGn08{color:var(--text-2);font-size:1.0625rem;line-height:1.75;margin-bottom:var(--s-5)}.page_h2__jFbs0{font-size:var(--fs-h2);font-weight:var(--fw-medium);line-height:var(--lh-h2);letter-spacing:var(--tk-h2);margin-block:var(--s-7) var(--s-4);scroll-margin-top:calc(var(--nav-h) + var(--s-5))}.page_list__5m4hJ{display:flex;flex-direction:column;gap:var(--s-3);margin-bottom:var(--s-5);padding-left:var(--s-2)}.page_li__Ef1rp{display:flex;gap:var(--s-3);align-items:baseline;color:var(--text-2);font-size:1.0625rem;line-height:1.65}.page_bullet__l4ovo{flex:none;display:grid;place-items:center;color:var(--text-4);transform:translateY(2px)}.page_quote__COJMj{margin-block:var(--s-7);padding:var(--s-6);border-radius:var(--r-lg);background:var(--surface-1);border:1px solid var(--hairline);border-left:2px solid var(--accent);font-family:var(--font-hand);font-size:calc(var(--fs-lead) * 1.16);line-height:1.42;letter-spacing:.006em;color:var(--text-1)}.page_code__VK8G0{margin-bottom:var(--s-5);padding:var(--s-5);border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--hairline);overflow-x:auto;font-family:var(--font-mono),monospace;font-size:var(--fs-sm);line-height:1.6;color:var(--text-1)}.page_footerNav__D7RRS{padding-block:var(--s-7);border-top:1px solid var(--hairline)}@media (max-width:48rem){.page_back__pmv0r{min-height:var(--tap)}}.Button_base__Uvc38{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:var(--fw-medium);letter-spacing:.002em;white-space:nowrap;position:relative;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),transform var(--dur-press) var(--ease-out)}.Button_base__Uvc38:after{content:"";position:absolute;inset:-8px}.Button_base__Uvc38[data-pressed=true]{transform:scale(.97)}.Button_md__A3KbI{height:2.75rem;padding-inline:var(--s-5)}.Button_lg__NfTRl{height:3.25rem;padding-inline:var(--s-6);font-size:var(--fs-body)}.Button_primary__Bapcw{background:var(--accent);color:var(--on-accent);font-weight:var(--fw-semibold)}.Button_primary__Bapcw:hover{background:var(--accent-bright)}.Button_secondary__pCIdg{background:var(--surface-2);color:var(--text-1);border:1px solid var(--hairline)}.Button_secondary__pCIdg:hover{background:var(--surface-3);border-color:var(--hairline-strong)}.Button_ghost__FM7bg{color:var(--text-2);padding-inline:var(--s-3)}.Button_ghost__FM7bg:hover{color:var(--text-1);background:var(--surface-1)}.Button_arrow__rsRuS{transition:transform var(--dur-base) var(--ease-out)}.Button_base__Uvc38:hover .Button_arrow__rsRuS{transform:translateX(3px)}@media (max-width:30rem){.Button_lg__NfTRl,.Button_md__A3KbI{width:100%;min-height:var(--tap)}.Button_ghost__FM7bg{width:auto}}.Button_primary__Bapcw,.Button_secondary__pCIdg{box-shadow:inset 0 1px 0 color-mix(in srgb,var(--scene-lift,#fff) 26%,transparent),var(--shadow-chip),var(--shadow-card)}.Button_primary__Bapcw:hover,.Button_secondary__pCIdg:hover{transform:translateY(-1px);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--scene-lift,#fff) 34%,transparent),var(--shadow-chip),var(--shadow-panel)}.Button_base__Uvc38[data-pressed=true]{transform:translateY(0) scale(.97);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--scene-lift,#fff) 18%,transparent),var(--shadow-chip)}@media (prefers-reduced-motion:reduce){.Button_primary__Bapcw:hover,.Button_secondary__pCIdg:hover{transform:none}}.ConsentBanner_banner__EO1_A{position:fixed;inset-inline-start:var(--gutter);inset-block-end:var(--s-6);z-index:99;width:min(23rem,calc(100vw - 2 * var(--gutter)));padding:var(--s-5);border:1px solid var(--hairline);border-radius:var(--r-lg);box-shadow:var(--shadow-sheet);animation:ConsentBanner_banner-rise__AtiXg var(--dur-base) var(--ease-out) both}.ConsentBanner_title__NPV3c{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-1)}.ConsentBanner_body__kH7gO{margin-top:var(--s-2);font-size:var(--fs-sm);line-height:1.55;color:var(--text-2)}.ConsentBanner_actions__j2Mz1{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--s-3);gap:var(--s-3);margin-top:var(--s-4)}.ConsentBanner_choice__IfLpW{width:100%;justify-content:center}.ConsentBanner_more__AizZI{color:var(--text-1);text-decoration:underline;text-underline-offset:.2em;transition:color var(--dur-fast) var(--ease-out)}.ConsentBanner_more__AizZI:hover{color:var(--accent)}@keyframes ConsentBanner_banner-rise__AtiXg{0%{opacity:0;transform:translateY(12px)}}@media (max-width:48rem){.ConsentBanner_banner__EO1_A{inset-inline:var(--gutter);inset-block-end:calc(var(--s-3) + env(safe-area-inset-bottom, 0px));width:auto;padding:var(--s-4)}.ConsentBanner_body__kH7gO{margin-top:var(--s-1)}.ConsentBanner_actions__j2Mz1{margin-top:var(--s-3)}body:has(.action-bar) .ConsentBanner_banner__EO1_A{inset-block-end:calc(var(--s-3) + 3.25rem + var(--s-3) + env(safe-area-inset-bottom, 0px))}}@media (prefers-reduced-motion:reduce){.ConsentBanner_banner__EO1_A{animation-name:ConsentBanner_banner-fade__QMFgV}}@keyframes ConsentBanner_banner-fade__QMFgV{0%{opacity:0}}.ProjectAccordion_shelf__fqAjm{--panel-h:clamp(24rem,42vw,34rem);--shadow-gutter:2.5rem;--panel-duration:160ms;--panel-ease:cubic-bezier(0.2,0.8,0.2,1);position:relative}.ProjectAccordion_row__WsE0J{display:flex;gap:var(--s-3);height:calc(var(--panel-h) + var(--shadow-gutter));padding-bottom:var(--shadow-gutter);margin-bottom:calc(var(--s-7) - var(--shadow-gutter));overflow-x:auto;overscroll-behavior-x:contain;scroll-behavior:smooth;scrollbar-width:none}.ProjectAccordion_row__WsE0J::-webkit-scrollbar{display:none}.ProjectAccordion_panel__ACwmv{position:relative;flex-basis:0;min-width:5.5rem;border-radius:var(--r-lg);overflow:hidden;background:var(--row-ground,var(--scene-ground));border:1px solid color-mix(in srgb,var(--tint,var(--accent)) 22%,transparent);box-shadow:0 22px 70px -46px rgba(74,51,33,.44);transition:flex-grow var(--panel-duration) var(--panel-ease)}.ProjectAccordion_link__WeDEZ{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;height:100%;padding:var(--s-5);text-decoration:none;color:inherit}.ProjectAccordion_media__kRjS7{position:absolute;top:50%;left:50%;width:var(--panel-h);height:calc(var(--panel-h) * .625);transform:translate(-50%,-50%) rotate(-90deg);pointer-events:none;transition:transform var(--panel-duration) var(--panel-ease),width var(--panel-duration) var(--panel-ease),height var(--panel-duration) var(--panel-ease)}.ProjectAccordion_media__kRjS7 img{display:block;width:100%;height:100%;object-fit:cover}.ProjectAccordion_panel__ACwmv[data-active] .ProjectAccordion_media__kRjS7{width:100%;height:100%;transform:translate(-50%,-50%)}.ProjectAccordion_scrim__CNX1T{position:absolute;inset:0;background:linear-gradient(0deg,rgba(27,14,8,.94),rgba(27,14,8,.65) 24%,transparent 62%);pointer-events:none}.ProjectAccordion_panel__ACwmv:not([data-active]) .ProjectAccordion_scrim__CNX1T{background:linear-gradient(90deg,rgba(27,14,8,.82),rgba(27,14,8,.14) 70%,transparent)}.ProjectAccordion_caption__h9Ykm{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-2);width:100%;min-width:0;color:#fff8ee}.ProjectAccordion_name__ABpRt{display:block;flex:none;max-width:calc(var(--panel-h) - 2 * var(--s-5));overflow:hidden;text-overflow:ellipsis;font-size:var(--fs-h3);font-weight:var(--fw-medium);white-space:nowrap;transform-origin:0 0;transform:rotate(-90deg) scale(.84);text-shadow:0 2px 12px rgba(0,0,0,.4);transition:transform var(--panel-duration) var(--panel-ease)}.ProjectAccordion_panel__ACwmv[data-active] .ProjectAccordion_name__ABpRt{transform:none}.ProjectAccordion_cta__QhojU,.ProjectAccordion_tagline__cNR70{max-height:0;overflow:hidden;opacity:0;font-size:var(--fs-sm);transition:opacity .1s ease-out,max-height var(--panel-duration) var(--panel-ease)}.ProjectAccordion_tagline__cNR70{max-width:34ch;color:#f3e7d9;line-height:1.5}.ProjectAccordion_cta__QhojU{display:inline-flex;align-items:center;gap:var(--s-2);font-weight:var(--fw-medium);margin-top:var(--s-1)}.ProjectAccordion_panel__ACwmv[data-active] .ProjectAccordion_tagline__cNR70{max-height:6rem;opacity:1}.ProjectAccordion_panel__ACwmv[data-active] .ProjectAccordion_cta__QhojU{max-height:3rem;opacity:1}.ProjectAccordion_arrow___w0zh{position:absolute;top:calc(var(--panel-h) / 2);transform:translateY(-50%);z-index:3;display:grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid var(--hairline-strong);border-radius:50%;background:var(--glass-sheet);box-shadow:var(--shadow-card);color:var(--text-1);cursor:pointer}.ProjectAccordion_arrow___w0zh:disabled{opacity:0;cursor:default}.ProjectAccordion_prev__fo6hn{left:var(--s-3)}.ProjectAccordion_prev__fo6hn svg{transform:rotate(180deg)}.ProjectAccordion_next__A4JvH{right:var(--s-3)}@media (max-width:60rem){.ProjectAccordion_row__WsE0J{display:none}}@media (prefers-reduced-motion:reduce){.ProjectAccordion_cta__QhojU,.ProjectAccordion_media__kRjS7,.ProjectAccordion_name__ABpRt,.ProjectAccordion_panel__ACwmv,.ProjectAccordion_tagline__cNR70{transition:none}.ProjectAccordion_row__WsE0J{scroll-behavior:auto}}.StackDetail_level__8oVrN{display:inline-flex;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-4);border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--hairline);font-size:var(--fs-xs);color:var(--text-3);margin-bottom:var(--s-5)}.StackDetail_levelCore__oAHsQ{background:var(--accent-dim);border-color:var(--accent-hairline);color:var(--accent)}.StackDetail_levelIcon__QZVKN{flex:none}.StackDetail_blurb__AKGPj{color:var(--text-2);font-size:1.0625rem;line-height:1.65;margin-bottom:var(--s-7)}.StackDetail_sectionLabel__I_A4Y{display:block;margin-bottom:var(--s-4)}.StackDetail_projects__wakEq{display:flex;flex-direction:column;gap:var(--s-3);margin-bottom:var(--s-7)}.StackDetail_project__ExQNV{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-4);border-radius:var(--r-sm);background:var(--surface-1);border:1px solid var(--hairline);transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-press) var(--ease-out)}.StackDetail_project__ExQNV:hover{background:var(--surface-2);border-color:var(--hairline-strong)}.StackDetail_project__ExQNV:active{transform:scale(.99)}.StackDetail_projectIcon__iqsJa{display:grid;place-items:center;flex:none;width:2.25rem;height:2.25rem;border-radius:.7rem;background:var(--accent-dim);border:1px solid var(--accent-hairline);color:var(--accent)}.StackDetail_projectBody__fw844{min-width:0;display:flex;flex-direction:column;gap:1px}.StackDetail_projectName___egrZ{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-1)}.StackDetail_projectTagline__2LySY{font-size:var(--fs-xs);color:var(--text-3);line-height:1.45;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.StackDetail_cta__1kyc1{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);width:100%;height:2.75rem;border-radius:var(--r-sm);background:var(--accent);color:var(--on-accent);font-size:var(--fs-sm);font-weight:var(--fw-semibold);transition:background-color var(--dur-fast) var(--ease-out)}.StackDetail_cta__1kyc1:hover{background:var(--accent-bright)}.StackShowcase_grid__f_gAP{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--s-5);gap:var(--s-5)}@media (max-width:60rem){.StackShowcase_grid__f_gAP{grid-template-columns:repeat(2,1fr)}}@media (max-width:36rem){.StackShowcase_grid__f_gAP{grid-template-columns:1fr}}.StackShowcase_tile__4br58{--tool-ground:#ddd6eb;--tool-ink:#443457;--tool-line:#a99abd;display:flex;flex-direction:column;gap:var(--s-3);height:100%;padding:var(--s-5);border-radius:8px;background:color-mix(in srgb,var(--tool-ground) 54%,var(--scene-ground));border:1px solid color-mix(in srgb,var(--tool-line) 65%,var(--scene-ground))}.StackShowcase_tile__4br58:nth-child(2){--tool-ground:#d3e2eb;--tool-ink:#294958;--tool-line:#94aebe}.StackShowcase_tile__4br58:nth-child(3){--tool-ground:#eddfbd;--tool-ink:#604719;--tool-line:#bca36b}.StackShowcase_tile__4br58:nth-child(4){--tool-ground:#ebd0c5;--tool-ink:#663b2a;--tool-line:#bd9583}.StackShowcase_tile__4br58:nth-child(5){--tool-ground:#d9dce7;--tool-ink:#394459;--tool-line:#9ba6bb}.StackShowcase_tile__4br58:nth-child(6){--tool-ground:#ecd4df;--tool-ink:#63384b;--tool-line:#bd95a8}.StackShowcase_tileHead__qK5X5{display:flex;align-items:center;gap:var(--s-2)}.StackShowcase_tileIcon__rk59b{display:grid;place-items:center;flex:none;color:var(--accent)}.StackShowcase_tileTitle__UTn36{font-size:var(--fs-body);font-weight:var(--fw-medium)}.StackShowcase_tileNote__CmXmX{color:var(--text-3);font-size:var(--fs-sm);line-height:1.55}.StackShowcase_chips__CJMz3{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);margin-top:auto;padding-top:var(--s-2)}.StackShowcase_item__BaMD5{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--s-3);min-height:2.25rem;max-width:100%;padding:var(--s-2) var(--s-3);border-radius:3px;background:var(--tool-ground);border:1px solid var(--tool-line);color:var(--tool-ink);font-family:inherit;font-size:var(--fs-xs);text-align:left;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.StackShowcase_item__BaMD5:hover{background:color-mix(in srgb,var(--tool-ground) 65%,white);border-color:var(--tool-ink);color:var(--tool-ink);transform:translateY(-1px)}.StackShowcase_itemArrow__na40C{flex:none;opacity:.7}@media (max-width:48rem){.StackShowcase_item__BaMD5{min-height:var(--tap);display:inline-flex;align-items:center}}.CursorGrid_host__WdQ4d{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.CursorGrid_canvas__j48Yx{display:block;width:100%;height:100%}@media (prefers-contrast:more){.CursorGrid_host__WdQ4d{opacity:.4}}.HalftonePlate_host__j8stk{position:relative;width:100%;height:100%;overflow:hidden;border-radius:var(--r-lg);background:var(--scene-ground);-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:pan-y;cursor:crosshair}.HalftonePlate_canvas__gIeWN,.HalftonePlate_plate__RSQtL{position:absolute;inset:0;display:block;width:100%;height:100%}.HalftonePlate_plate__RSQtL{object-fit:cover;-webkit-user-drag:none}.HalftonePlate_canvas__gIeWN{opacity:0;transition:opacity .72s var(--ease-out)}.HalftonePlate_host__j8stk[data-ready] .HalftonePlate_canvas__gIeWN{opacity:1}@media (prefers-reduced-motion:reduce){.HalftonePlate_host__j8stk{cursor:default}.HalftonePlate_canvas__gIeWN{transition:none}}.ContactForm_form__fNtBb{display:flex;flex-direction:column;gap:var(--s-5)}.ContactForm_row__m__1Q{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--s-4);gap:var(--s-4)}@media (max-width:44rem){.ContactForm_row__m__1Q{grid-template-columns:1fr}}.ContactForm_field__KZsqs{display:flex;flex-direction:column;gap:var(--s-2)}.ContactForm_label__d0DO9{font-size:var(--fs-sm);color:var(--text-2);font-weight:var(--fw-medium)}.ContactForm_optional__jBGBi{color:var(--text-4);font-weight:var(--fw-regular)}.ContactForm_input__LexWi,.ContactForm_textarea__tFAve{width:100%;padding:var(--s-3) var(--s-4);border-radius:var(--r-sm);background:var(--canvas-raised);border:1px solid var(--hairline);color:var(--text-1);font-size:var(--fs-body);transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.ContactForm_input__LexWi::placeholder,.ContactForm_textarea__tFAve::placeholder{color:var(--text-4)}.ContactForm_input__LexWi:hover,.ContactForm_textarea__tFAve:hover{border-color:var(--hairline-strong)}.ContactForm_input__LexWi:focus,.ContactForm_textarea__tFAve:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.ContactForm_textarea__tFAve{min-height:9rem;resize:vertical;line-height:1.6}.ContactForm_inputError__4TC_a{border-color:#b4331f}.ContactForm_inputError__4TC_a:focus{border-color:#b4331f;box-shadow:0 0 0 3px rgba(180,51,31,.14)}.ContactForm_error__Ba6Y7{font-size:var(--fs-xs);color:#b4331f}.ContactForm_topicSelect__ikB2o{position:relative;z-index:3}.ContactForm_topicButton__FzptD{width:100%;min-height:5.25rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:var(--s-3);gap:var(--s-3);padding:var(--s-3);border-radius:var(--r-md);border:1px solid var(--hairline);background:var(--surface-1);color:var(--text-1);text-align:left;box-shadow:var(--shadow-card);transition:border-color var(--dur-fast) var(--ease-out),transform var(--dur-press) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.ContactForm_topicButtonOpen__15fi8,.ContactForm_topicButton__FzptD:hover{border-color:var(--accent-hairline);box-shadow:var(--shadow-panel)}.ContactForm_topicButton__FzptD:active{transform:scale(.99)}.ContactForm_topicButton__FzptD:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.ContactForm_optionIcon___8yad,.ContactForm_topicIcon__tXZtY{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--r-sm);color:var(--accent);border:1px solid var(--accent-hairline);background:var(--accent-dim)}.ContactForm_topicCopy__ppMQy,.ContactForm_topicOption__0y342 span:last-child{min-width:0}.ContactForm_optionTitle__MVhRb,.ContactForm_topicValue__Vxx9q{display:block;color:var(--text-1);font-weight:var(--fw-medium)}.ContactForm_optionDetail__HELxa,.ContactForm_topicHint__0nlvF{display:block;margin-top:.2rem;color:var(--text-3);font-size:var(--fs-xs);line-height:1.45}.ContactForm_topicChevron__zCkA2{color:var(--text-3);transform:rotate(90deg);transition:transform var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.ContactForm_topicButtonOpen__15fi8 .ContactForm_topicChevron__zCkA2{color:var(--accent);transform:rotate(-90deg)}.ContactForm_topicMenu__pVWK_{position:absolute;inset-inline:0;top:calc(100% + var(--s-2));display:grid;grid-gap:var(--s-2);gap:var(--s-2);padding:var(--s-2);border-radius:var(--r-md);border:1px solid var(--hairline-strong);background:var(--canvas-raised);box-shadow:var(--shadow-panel)}.ContactForm_topicOption__0y342{display:grid;grid-template-columns:auto 1fr;align-items:center;grid-gap:var(--s-3);gap:var(--s-3);width:100%;padding:var(--s-3);border-radius:var(--r-sm);border:1px solid transparent;color:var(--text-2);text-align:left;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-press) var(--ease-out)}.ContactForm_topicOptionActive__91_Jc,.ContactForm_topicOption__0y342:hover{background:var(--accent-dim);border-color:var(--accent-hairline)}.ContactForm_topicOption__0y342:active{transform:scale(.99)}.ContactForm_consent__e8vyt{display:flex;gap:var(--s-3);align-items:flex-start;padding:var(--s-4);border-radius:var(--r-sm);background:var(--surface-1);border:1px solid var(--hairline);cursor:pointer}.ContactForm_checkbox__F9BU0{flex:none;width:1.125rem;height:1.125rem;margin-top:2px;accent-color:var(--accent)}.ContactForm_consentText__CyQFJ{font-size:var(--fs-sm);color:var(--text-2);line-height:1.55}.ContactForm_honeypot__nmxlX{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.ContactForm_actions__gdKWf{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-4)}.ContactForm_note__3M36C{font-size:var(--fs-xs);color:var(--text-4);line-height:1.5}.ContactForm_status__0rKLV{display:flex;gap:var(--s-3);align-items:flex-start;padding:var(--s-5);border-radius:var(--r-md);border:1px solid var(--accent-hairline);background:var(--accent-dim)}.ContactForm_statusFail__pt_ut{border-color:rgba(180,51,31,.35);background:rgba(180,51,31,.08)}.ContactForm_statusIcon__xnMkM{flex:none;color:var(--accent);margin-top:2px}.ContactForm_statusFail__pt_ut .ContactForm_statusIcon__xnMkM{color:#b4331f}.ContactForm_statusTitle__QHq86{font-weight:var(--fw-medium);color:var(--text-1);margin-bottom:var(--s-1)}.ContactForm_statusBody__iLDHS{font-size:var(--fs-sm);color:var(--text-2);line-height:1.55}.ContactForm_spinner__8nhi_{width:14px;height:14px;border-radius:50%;border:1.5px solid;border-top:1.5px solid transparent;animation:ContactForm_spin__533D4 .7s linear infinite}@keyframes ContactForm_spin__533D4{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.ContactForm_spinner__8nhi_{animation-duration:1.6s}}@media (max-width:35rem){.ContactForm_input__LexWi,.ContactForm_textarea__tFAve{font-size:max(16px,var(--fs-body));padding:var(--s-3) var(--s-4)}.ContactForm_topicButton__FzptD{min-height:var(--tap);padding:var(--s-3)}.ContactForm_optionDetail__HELxa,.ContactForm_topicHint__0nlvF{font-size:var(--fs-xs)}.ContactForm_submit__clbYn{min-height:var(--tap);font-size:var(--fs-body)}}@media (max-width:48rem){.ContactForm_checkbox__F9BU0{width:1.375rem;height:1.375rem;margin-top:0}}.Accordion_list__ZK5Dx{border-top:1px solid var(--hairline);max-width:46rem}.Accordion_row__u6iJM{border-bottom:1px solid var(--hairline)}.Accordion_trigger__28Z36{display:flex;align-items:center;gap:var(--s-5);width:100%;padding-block:var(--s-5);text-align:start;color:var(--text-1);transition:color .15s cubic-bezier(.16,1,.3,1)}.Accordion_trigger__28Z36:hover{color:var(--accent)}.Accordion_question__nFA1V{font-size:var(--fs-h3);font-weight:var(--fw-medium);letter-spacing:var(--tk-h3);line-height:var(--lh-h3);text-wrap:balance}.Accordion_icon__NJJ8N{position:relative;flex:none;-webkit-margin-start:auto;margin-inline-start:auto;width:1.75rem;height:1.75rem;display:grid;place-items:center;border-radius:var(--r-sm);border:1px solid var(--hairline);color:var(--text-3);transition:border-color .15s cubic-bezier(.16,1,.3,1),background-color .15s cubic-bezier(.16,1,.3,1),color .15s cubic-bezier(.16,1,.3,1)}.Accordion_trigger__28Z36:hover .Accordion_icon__NJJ8N{border-color:var(--accent-hairline);background:var(--accent-dim);color:var(--accent)}.Accordion_trigger__28Z36[data-pressed=true] .Accordion_icon__NJJ8N{transform:scale(.9)}.Accordion_answerWrap__lCW51{overflow:hidden}.Accordion_answer__Wa7je{padding-bottom:var(--s-5);-webkit-padding-end:calc(1.75rem + var(--s-5));padding-inline-end:calc(1.75rem + var(--s-5));color:var(--text-2);font-size:var(--fs-lead);line-height:var(--lh-lead);max-width:40rem}@media (max-width:44rem){.Accordion_question__nFA1V{font-size:1.125rem}.Accordion_answer__Wa7je{font-size:var(--fs-body);-webkit-padding-end:0;padding-inline-end:0}}.ObjectImage_stage__Su_Nr{display:grid;place-items:center;width:100%;perspective:900px}.ObjectImage_tilt__QJgnj{width:100%;max-width:27rem;transform-style:preserve-3d}.ObjectImage_image__W_rhG{display:block;width:100%;height:auto;-webkit-mask-image:radial-gradient(ellipse at 50% 50%,#000 46%,transparent 76%);mask-image:radial-gradient(ellipse at 50% 50%,#000 46%,transparent 76%)}@media (max-width:60rem){.ObjectImage_tilt__QJgnj{max-width:20rem}}.ObjectImage_stage__Su_Nr[data-cutout] .ObjectImage_image__W_rhG{-webkit-mask-image:none;mask-image:none}.ObjectImage_stage__Su_Nr[data-loop] .ObjectImage_image__W_rhG{-webkit-mask-image:linear-gradient(90deg,transparent,#000 13%,#000 87%,transparent),linear-gradient(180deg,transparent,#000 13%,#000 87%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 13%,#000 87%,transparent),linear-gradient(180deg,transparent,#000 13%,#000 87%,transparent);-webkit-mask-composite:source-in,xor;mask-composite:intersect}.PixelSwap_root__9D6WV{position:relative;width:100%;overflow:hidden;isolation:isolate;outline:none}.PixelSwap_layer__Y2WyS{position:absolute;inset:0;width:100%;height:100%}.PixelSwap_layer__Y2WyS[data-visible=false]{visibility:hidden}.PixelSwap_grid__G5H7x{position:absolute;inset:0;z-index:3;pointer-events:none}.PixelSwap_pixel__FtXDT{position:absolute;overflow:hidden;opacity:0;contain:paint}.PixelSwap_pixelContent__yvxH4{position:absolute}.PixelSwap_veil__QwlK7{position:absolute;inset:0;pointer-events:none}.PortraitCard_swap__y4uGz{border-radius:var(--r-lg);border:1px solid var(--hairline);box-shadow:var(--shadow-card);cursor:pointer}.PortraitCard_face__qtAG5{display:flex;flex-direction:column;height:100%}.PortraitCard_photo__dcuKO{position:relative;flex:1 1;min-height:0}.PortraitCard_portraitImage__oxtyk{object-fit:cover}.PortraitCard_footer__hnb3w{flex:none;display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-5);border-top:1px solid var(--hairline);background:var(--surface-1)}.PortraitCard_back__78Ko1 .PortraitCard_footer__hnb3w{border-top:none;flex:1 1;justify-content:center}.PortraitCard_back__78Ko1{background:var(--surface-1)}.PortraitCard_fact__ecC8A{display:flex;justify-content:space-between;gap:var(--s-4);font-size:var(--fs-sm)}.PortraitCard_factLabel__HJ1T0{color:var(--text-3);flex:none}.PortraitCard_factValue__xeuRb{color:var(--text-1);text-align:end}.PortraitCard_roleTags__WU7YN{display:flex;flex-wrap:wrap;gap:var(--s-2)}.PortraitCard_roleTag__dY7Aw{padding:var(--s-1) var(--s-3);border-radius:var(--r-pill);background:var(--accent-dim);border:1px solid var(--accent-hairline);color:var(--accent);font-size:var(--fs-xs);font-weight:var(--fw-medium)}.PortraitCard_availabilityDetail__YXIsR{color:var(--text-2);font-size:var(--fs-sm);line-height:1.55}.PortraitCard_backLinks__s97RU{display:flex;flex-direction:column;gap:var(--s-2)}.PortraitCard_backLink__4sg9I{display:inline-flex;align-items:center;gap:var(--s-2);color:var(--text-2);font-size:var(--fs-sm);transition:color var(--dur-fast) var(--ease-out)}.PortraitCard_backLink__4sg9I:hover{color:var(--accent)}.PortraitCard_backLinkIcon__nW8AV{flex:none;color:var(--text-3);transition:color var(--dur-fast) var(--ease-out)}.PortraitCard_backLink__4sg9I:hover .PortraitCard_backLinkIcon__nW8AV{color:var(--accent)}.PortraitCard_flipHint__e_dT8{color:var(--text-3);font-size:var(--fs-xs)}.ProjectChip_chip__NkLTF{display:inline-block;color:inherit}.ProjectChip_swap__ax1W8{width:11.5rem;height:3.25rem;border-radius:var(--r-md);border:1px solid var(--hairline);background:var(--surface-2);transition:border-color var(--dur-fast) var(--ease-out)}.ProjectChip_chip__NkLTF:focus-visible .ProjectChip_swap__ax1W8,.ProjectChip_chip__NkLTF:hover .ProjectChip_swap__ax1W8{border-color:var(--tint,var(--accent-hairline))}@media (max-width:48rem){.ProjectChip_swap__ax1W8{min-height:var(--tap)}}.ProjectChip_face__W3ewh{display:flex;align-items:center;height:100%;padding:var(--s-2) var(--s-3)}.ProjectChip_name__5rPg5{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ProjectChip_tagline__r8VkA{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--fs-xs);line-height:1.4;color:var(--tint,var(--accent))}.ArchitectureDiagram_figure__HnTDj{margin:0}.ArchitectureDiagram_diagram__iadBR{padding:var(--s-6);border-radius:var(--r-lg);background:var(--surface-1);border:1px solid var(--hairline);overflow-x:auto;perspective:var(--perspective);perspective-origin:50% 40%}.ArchitectureDiagram_layer__zJRgB{display:grid;grid-template-columns:9rem 1fr;grid-gap:var(--s-5);gap:var(--s-5);align-items:center;min-width:32rem;translate:0 0 0;border-radius:var(--r-md);transition:translate var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}@media (hover:hover){.ArchitectureDiagram_diagram__iadBR:hover .ArchitectureDiagram_layer__zJRgB{translate:0 0 calc(var(--layer-i, 0) * -26px);box-shadow:var(--shadow-card)}.ArchitectureDiagram_diagram__iadBR:hover .ArchitectureDiagram_layerEntry__wKIbs,.ArchitectureDiagram_diagram__iadBR:hover .ArchitectureDiagram_layer__zJRgB:first-of-type{box-shadow:var(--shadow-panel)}}@media (prefers-reduced-motion:reduce){.ArchitectureDiagram_diagram__iadBR:hover .ArchitectureDiagram_layer__zJRgB{translate:0 0 0}}@media (max-width:44rem){.ArchitectureDiagram_layer__zJRgB{grid-template-columns:1fr;gap:var(--s-3);min-width:0}}.ArchitectureDiagram_layerLabel__67Hxm{font-family:var(--font-mono),monospace;font-size:var(--fs-xs);letter-spacing:var(--tk-label);text-transform:uppercase;color:var(--text-4);text-align:end}@media (max-width:44rem){.ArchitectureDiagram_layerLabel__67Hxm{text-align:start}}.ArchitectureDiagram_nodes__m3Qkf{display:flex;flex-wrap:wrap;gap:var(--s-2)}.ArchitectureDiagram_node__R3pYb{padding:var(--s-2) var(--s-4);border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--hairline);font-size:var(--fs-sm);color:var(--text-2);white-space:nowrap}.ArchitectureDiagram_layerEntry__wKIbs .ArchitectureDiagram_node__R3pYb{border-color:var(--accent-hairline);color:var(--text-1)}.ArchitectureDiagram_connector__iudcT{grid-column:1/-1;display:flex;justify-content:center;padding-block:var(--s-3)}@media (max-width:44rem){.ArchitectureDiagram_connector__iudcT{justify-content:flex-start;-webkit-padding-start:var(--s-4);padding-inline-start:var(--s-4)}}.ArchitectureDiagram_connectorLine__sOyki{width:1px;height:var(--s-5);background:linear-gradient(to bottom,var(--hairline),var(--hairline-strong));position:relative}.ArchitectureDiagram_connectorLine__sOyki:after{content:"";position:absolute;inset-block-end:0;inset-inline-start:50%;width:5px;height:5px;-webkit-border-end:1px solid var(--hairline-strong);border-inline-end:1px solid var(--hairline-strong);-webkit-border-after:1px solid var(--hairline-strong);border-block-end:1px solid var(--hairline-strong);transform:translate(-50%,1px) rotate(45deg)}.ArchitectureDiagram_caption__arbFP{margin-top:var(--s-4);font-size:var(--fs-sm);color:var(--text-3);line-height:1.55;max-width:44rem}