.project-dialog.case-study-dialog{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#f7f6f2;color:#141512;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;--case-tint:#dce6df;--case-ink:#264a37}.project-dialog.case-study-dialog::backdrop{background:#141512;-webkit-backdrop-filter:none;backdrop-filter:none}.case-study-dialog .cs-story{width:100%;min-width:0}.case-study-dialog .cs-navigation{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:76px;padding:12px 32px;background:#f7f6f2f5;border-bottom:1px solid #14151217;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.case-study-dialog .cs-back,.case-study-dialog .cs-close,.case-study-dialog .cs-return{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:8px 0;border:0;background:transparent;font-size:12px;line-height:1.4;color:#141512}.case-study-dialog .cs-back{justify-self:start}.case-study-dialog .cs-navigation-title{display:flex;align-items:center;gap:16px;font-size:13px;font-weight:550;letter-spacing:-.02em}.case-study-dialog .cs-navigation-title span{padding-left:16px;border-left:1px solid #14151230;font-size:10px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:#61645b}.case-study-dialog .cs-close{justify-self:end;width:44px;padding:0;border:1px solid #14151230;border-radius:50%;transition:background-color .18s,color .18s,transform .18s}@media(hover:hover)and (pointer:fine){.case-study-dialog .cs-close:hover{background:#141512;color:#f7f6f2;transform:rotate(90deg)}.case-study-dialog .cs-back:hover{color:var(--color-accent-hover)}}@media(max-width:650px){.case-study-dialog .cs-navigation{min-height:66px;padding:10px 20px;gap:10px}.case-study-dialog .cs-navigation-title{font-size:12px}.case-study-dialog .cs-navigation-title span{display:none}.case-study-dialog .cs-back{font-size:11px;gap:7px}.case-study-dialog .cs-close{width:42px;min-height:42px}}@media(prefers-reduced-motion:reduce){.case-study-dialog .cs-close{transition:none}.case-study-dialog .cs-close:hover{transform:none}}.case-study-dialog.cs-natsnap{background:#22221f;color:#f7f6f2}.case-study-dialog.cs-natsnap .cs-navigation-title{color:#141512}.ns-story{--ns-yellow:#ffd337;--ns-dark:#22221f;--ns-muted:#bbbcb3}.ns-story .ns-width{width:min(1440px,calc(100% - 96px));margin-inline:auto}.ns-story h3{margin:0;font-size:clamp(34px,4.5vw,65px);font-weight:550;line-height:1.04;letter-spacing:-.055em;text-wrap:balance}.ns-story .ns-eyebrow{font-size:10px;line-height:1.5;letter-spacing:.15em;text-transform:uppercase}.ns-hero{height:calc(100svh - 76px);min-height:540px;display:flex;flex-direction:column}.ns-hero-heading{display:flex;align-items:center;justify-content:space-between;gap:48px;padding-block:28px;flex-shrink:0}.ns-hero-heading h2{margin:0;width:clamp(240px,31vw,430px);flex-shrink:0}.ns-hero-heading h2 img{width:100%;height:auto;display:block}.ns-promise{font-size:clamp(24px,3vw,42px);letter-spacing:-.045em;line-height:1.1}.ns-deck{color:var(--ns-muted);font-size:14px;line-height:1.5;margin-top:10px}.ns-hero-media{flex:1;min-height:0;padding:0 24px;display:grid;place-items:center;background:#191a17}.ns-capture{margin:0;min-width:0}.ns-capture img{display:block;width:100%;height:auto;object-fit:contain;border-radius:3px}.ns-capture figcaption{margin-top:16px;color:inherit;opacity:.72;font-size:11px;line-height:1.5}.ns-hero-media .ns-capture{height:100%;width:100%;animation:ns-arrive .7s cubic-bezier(.16,.8,.22,1) both}.ns-hero-media img{height:100%;object-fit:contain}.ns-hero-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:20px;color:var(--ns-muted);font-size:10px;line-height:1.5;flex-shrink:0}.ns-hero-foot svg{color:var(--ns-yellow);flex-shrink:0}.ns-section{padding-block:76px}.ns-intro{display:grid;grid-template-columns:1fr 2fr;gap:48px;margin-bottom:40px}.ns-intro>.ns-eyebrow{padding-top:8px}.ns-intro>div>p{max-width:660px;margin-top:22px;font-size:16px;line-height:1.65;color:var(--ns-muted)}.ns-discovery{background:#f4f3ec;color:#22221f}.ns-discovery .ns-intro>div>p{color:#595c53}.ns-discovery-media{overflow:hidden}.ns-intelligence{margin-top:36px;padding-top:28px;border-top:1px solid #22221f35}.ns-intelligence-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:24px}.ns-intelligence-grid h4{margin:0 0 12px;font-size:clamp(21px,2.2vw,30px);line-height:1.15;letter-spacing:-.04em;font-weight:550}.ns-intelligence-grid p{max-width:540px;color:#595c53;font-size:15px;line-height:1.65}.ns-visitors{background:#e9e9df;color:#22221f}.ns-visitors .ns-intro>div>p{color:#595c53}.ns-visitor-screens{display:grid;grid-template-columns:minmax(0,3.8fr) minmax(0,1fr);gap:32px;align-items:center}.ns-booking-capture{max-width:280px}.ns-booking-capture img{box-shadow:0 20px 45px #16181016}.ns-providers{background:var(--ns-dark)}.ns-providers .ns-eyebrow{color:var(--ns-yellow)}.ns-provider-media{padding:32px clamp(20px,6vw,100px);background:#191a17}.ns-stack{margin-top:36px;padding-top:24px;border-top:1px solid #ffffff30}.ns-stack h4{margin:0 0 26px;font-weight:500}.ns-stack-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px;margin:0}.ns-stack-list dt{color:var(--ns-muted);font-size:11px;line-height:1.5;margin-bottom:9px}.ns-stack-list dd{display:flex;align-items:center;gap:12px;margin:0;color:#f7f6f2;font-size:clamp(14px,1.35vw,19px);line-height:1.4;letter-spacing:-.025em;font-weight:500}.ns-tech-marks{display:flex;align-items:center;gap:7px;flex-shrink:0}.ns-tech-marks img{display:block;width:22px;height:22px;object-fit:contain;filter:brightness(0) invert(1);opacity:.9}.ns-closing{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:48px;padding-block:70px 24px;border-top:1px solid #ffffff30}.ns-closing-logo{display:block;width:min(210px,80%);height:auto}.ns-closing .ns-eyebrow{color:var(--ns-yellow);margin-bottom:24px}.ns-closing h3{font-size:clamp(36px,4.4vw,62px)}.ns-closing>div>p:not(.ns-eyebrow){max-width:590px;margin-top:24px;color:var(--ns-muted);font-size:15px;line-height:1.65}.ns-visit{display:inline-flex;align-items:center;gap:36px;margin-top:28px;padding:15px 23px;background:var(--ns-yellow);color:#191a17;font-size:14px;font-weight:550;border-radius:3px;transition:background .2s}.ns-visit svg{transition:transform .2s}.ns-return{grid-column:1/-1;display:flex;align-items:center;gap:10px;width:100%;margin-top:22px;padding:24px 0 0;border:0;border-top:1px solid #ffffff30;background:transparent;color:var(--ns-muted);text-align:left;font-size:12px}@keyframes ns-arrive{0%{opacity:.3;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(hover:hover){.ns-visit:hover{background:#ffe275}.ns-visit:hover svg{transform:translate(2px,-2px)}.ns-return:hover{color:#fff}}@media(max-width:1000px){.ns-story .ns-width{width:calc(100% - 64px)}.ns-hero-heading{gap:30px;padding-block:22px}.ns-hero-heading h2{width:260px}.ns-hero-heading .ns-deck{max-width:300px;font-size:13px}.ns-section{padding-block:60px}.ns-intro{grid-template-columns:.7fr 2fr;gap:28px}.ns-intro>div>p{font-size:15px}.ns-visitor-screens{gap:22px;grid-template-columns:3.2fr 1fr}.ns-stack-list dd{flex-direction:column;align-items:flex-start;gap:12px}}@media(max-width:650px){.ns-story .ns-width{width:calc(100% - 40px)}.ns-hero{height:auto;min-height:0}.ns-hero-heading{display:block;padding-block:32px}.ns-hero-heading h2{width:min(300px,86%)}.ns-hero-heading>div{margin-top:28px}.ns-promise{font-size:32px}.ns-hero-heading .ns-deck{max-width:none;font-size:14px}.ns-hero-media{padding:12px}.ns-hero-media .ns-capture,.ns-hero-media img{height:auto}.ns-hero-foot{padding-block:18px;font-size:9px}.ns-section{padding-block:48px}.ns-intelligence-grid{grid-template-columns:1fr;gap:28px}.ns-intro{display:block;margin-bottom:28px}.ns-intro>.ns-eyebrow{margin-bottom:24px;padding:0}.ns-story h3{font-size:36px}.ns-intro>div>p{margin-top:20px}.ns-visitor-screens{grid-template-columns:1fr;gap:32px}.ns-booking-capture{width:65%;max-width:260px;justify-self:center}.ns-provider-media{padding:16px 12px}.ns-stack{margin-top:28px}.ns-stack-list{grid-template-columns:1fr 1fr;gap:24px 20px}.ns-stack-list dd{font-size:16px}.ns-closing{grid-template-columns:1fr;gap:32px;padding-top:48px}.ns-closing-logo{width:115px}.ns-closing .ns-eyebrow{margin-bottom:20px}.ns-closing h3{font-size:38px}.ns-return{margin-top:8px}}@media(prefers-reduced-motion:reduce){.ns-hero-media .ns-capture{animation:none}.ns-visit,.ns-visit svg{transition:none}}.pc-story{--pc-paper:#faf7f1;--pc-ink:#301d10;--pc-muted:#6c6359;--pc-tint:#eee9e4;--pc-accent:#205cff;--pc-deep:#162954;color:var(--pc-ink);background:var(--pc-paper)}.pc-story.pc-rehabevo{--pc-paper:#f5f8f8;--pc-ink:#163d51;--pc-muted:#526975;--pc-tint:#e0ecef;--pc-accent:#237591;--pc-deep:#143a4e}.pc-story .pc-width{width:min(1360px,calc(100% - 96px));margin-inline:auto}.pc-story .pc-eyebrow{margin:0;font-size:10px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;font-weight:500}.pc-story h3{margin:0;font-size:clamp(34px,4.3vw,62px);line-height:1.06;letter-spacing:-.055em;font-weight:550;text-wrap:balance}.pc-hero{height:calc(100svh - 76px);min-height:550px;display:flex;flex-direction:column}.pc-hero-heading{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;padding-block:28px}.pc-hero-heading .pc-eyebrow{color:var(--pc-accent)}.pc-hero-heading h2{margin:12px 0 0;font-size:clamp(52px,6.5vw,90px);font-weight:650;letter-spacing:-.065em;line-height:.98}.pc-hero-promise{justify-self:end;max-width:360px}.pc-hero-promise>p{font-size:clamp(22px,2.6vw,36px);line-height:1.12;letter-spacing:-.04em;text-wrap:balance}.pc-hero-promise>span{display:block;margin-top:16px;font-size:11px;line-height:1.5;color:var(--pc-muted)}.pc-hero-media{display:grid;grid-template-rows:minmax(0,1fr);place-items:center;flex:1;min-height:0;padding:20px 32px;background:var(--pc-tint)}.pc-capture{margin:0;min-width:0}.pc-capture img{display:block;width:100%;height:auto;object-fit:contain;border-radius:3px}.pc-capture figcaption{margin-top:16px;font-size:11px;line-height:1.5;opacity:.75}.pc-hero-media .pc-capture{width:100%;height:100%;min-height:0;animation:pc-arrive .7s cubic-bezier(.16,.8,.22,1) both}.pc-hero-media img{height:100%;object-fit:contain}.pc-hero-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:19px;font-size:10px;line-height:1.5;color:var(--pc-muted)}.pc-hero-foot svg{color:var(--pc-accent);flex-shrink:0}.pc-section{padding-block:76px}.pc-intro{display:grid;grid-template-columns:1fr 2fr;gap:48px;margin-bottom:42px}.pc-intro>.pc-eyebrow{padding-top:7px;color:var(--pc-accent)}.pc-intro>div>p{max-width:650px;margin-top:22px;font-size:16px;line-height:1.65;color:var(--pc-muted)}.pc-media{padding:32px;background:var(--pc-tint)}.pc-media-pair{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:28px}.pc-media-pair .pc-capture img{aspect-ratio:1.72;object-fit:contain;background:#ffffff60}.pc-preplingo .pc-project .pc-capture img{aspect-ratio:985/570}.pc-experience{background:var(--pc-tint)}.pc-experience .pc-media{padding:0}.pc-preplingo .pc-experience .pc-media{max-width:1060px}.pc-rehabevo .pc-experience .pc-media-pair .pc-capture img{aspect-ratio:1.65}.pc-built{color:#f5f8fc;background:var(--pc-deep)}.pc-built .pc-intro>.pc-eyebrow{color:#b4d3f4}.pc-built .pc-intro>div>p{color:#c4d3e3}.pc-signature{padding:36px;background:#ffffff0a}.pc-signature .pc-capture{max-width:1100px;margin-inline:auto}.pc-rehabevo .pc-signature .pc-capture{max-width:900px}.pc-highlights{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding-top:32px;margin-top:36px;border-top:1px solid #ffffff30}.pc-highlights h4{margin:0 0 12px;font-size:24px;line-height:1.2;letter-spacing:-.035em;font-weight:550}.pc-highlights p{max-width:520px;font-size:15px;line-height:1.65;color:#c4d3e3}.pc-stack{margin-top:36px;padding-top:28px;border-top:1px solid #ffffff30}.pc-stack h4.pc-eyebrow{margin-bottom:24px;color:#b4d3f4}.pc-stack dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0}.pc-stack dt{font-size:11px;color:#c4d3e3;margin-bottom:10px;line-height:1.5}.pc-stack dd{display:flex;align-items:center;gap:12px;font-size:18px;line-height:1.4;letter-spacing:-.025em;font-weight:500;margin:0}.pc-tech-marks{display:flex;align-items:center;gap:7px;flex-shrink:0}.pc-tech-marks img{display:block;width:22px;height:22px;object-fit:contain;filter:brightness(0) invert(1);opacity:.9}.pc-evidence-note{margin-top:36px;color:#c4d3e3;font-size:11px;line-height:1.5}.pc-closing{padding-block:76px 26px}.pc-closing .pc-eyebrow{color:var(--pc-accent)}.pc-closing h3{max-width:980px;margin-top:28px;font-size:clamp(40px,5.2vw,72px)}.pc-closing h3+p{max-width:600px;margin-top:24px;font-size:15px;line-height:1.65;color:var(--pc-muted)}.pc-visit{display:inline-flex;align-items:center;gap:36px;padding:15px 23px;margin-top:30px;background:var(--pc-accent);color:#fff;font-size:14px;font-weight:500;border-radius:4px}.pc-visit svg{transition:transform .2s}.pc-return{display:flex;align-items:center;gap:10px;width:100%;padding:24px 0 0;margin-top:56px;border:0;border-top:1px solid color-mix(in srgb,var(--pc-ink) 25%,transparent);color:var(--pc-muted);background:transparent;font-size:12px;text-align:left}@keyframes pc-arrive{0%{opacity:.3;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(hover:hover){.pc-visit:hover svg{transform:translate(2px,-2px)}.pc-return:hover{color:var(--pc-accent)}}@media(max-width:1000px){.pc-story .pc-width{width:calc(100% - 64px)}.pc-hero-heading{padding-block:24px;gap:28px}.pc-section{padding-block:60px}.pc-intro{grid-template-columns:.7fr 2fr;gap:28px}.pc-media,.pc-signature{padding:24px}.pc-media-pair{gap:20px}.pc-highlights{gap:36px}.pc-stack dd{font-size:16px}}@media(max-width:650px){.pc-story .pc-width{width:calc(100% - 40px)}.pc-hero{height:auto;min-height:0}.pc-hero-heading{display:block;padding-block:32px}.pc-hero-heading h2{font-size:clamp(49px,14vw,80px)}.pc-hero-promise{margin-top:28px;max-width:340px}.pc-hero-promise>p{font-size:27px}.pc-hero-promise>span{margin-top:14px}.pc-hero-media{padding:14px}.pc-hero-media .pc-capture,.pc-hero-media img{height:auto}.pc-hero-foot{font-size:9px;padding-block:18px}.pc-section{padding-block:48px}.pc-intro{display:block;margin-bottom:28px}.pc-intro>.pc-eyebrow{margin-bottom:24px;padding:0}.pc-intro>div>p{font-size:15px;margin-top:20px}.pc-media,.pc-signature{padding:14px}.pc-media-pair{grid-template-columns:1fr;gap:28px}.pc-capture figcaption{font-size:10px;margin-top:12px}.pc-highlights{grid-template-columns:1fr;gap:28px;margin-top:28px;padding-top:28px}.pc-highlights h4{font-size:23px}.pc-stack dl{grid-template-columns:1fr 1fr;gap:26px 20px}.pc-stack dd{flex-direction:column;align-items:flex-start;font-size:16px}.pc-closing{padding-block:48px 24px}.pc-closing h3{font-size:40px}.pc-return{margin-top:40px}}@media(prefers-reduced-motion:reduce){.pc-hero-media .pc-capture{animation:none}.pc-visit svg{transition:none}}.stack-section{position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper)}.stack-anchor{position:absolute;top:0}.stack-heading{align-items:end;margin-bottom:36px}.stack-heading h2{font-size:clamp(40px,4.6vw,66px);line-height:1.02;letter-spacing:-.055em}.stack-heading .intro{max-width:36ch}.stack-composition{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(24px,3.2vw,52px);align-items:center}.stack-figure{min-width:0;margin:0}.stack-artwork{position:relative;width:calc(100% + 32px);margin-inline:-16px;aspect-ratio:3/2}.stack-artwork>img{display:block;width:100%;height:auto}.stack-signals{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.stack-figure figcaption{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.stack-figure figcaption p{font-size:clamp(22px,2.25vw,32px);font-weight:600;line-height:1.12;letter-spacing:-.045em}.stack-rows{margin:0}.stack-row{display:grid;grid-template-columns:minmax(145px,.8fr) minmax(0,1.3fr);gap:20px;padding:23px 0;border-top:1px solid var(--line);align-items:start}.stack-row:last-child{border-bottom:1px solid var(--line)}.stack-row dt{display:flex;gap:14px;align-items:flex-start;font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.035em}.stack-row dt>svg{flex-shrink:0;color:var(--color-accent-text);width:25px;height:25px}.stack-row dd{margin:0;min-width:0}.stack-note{font-size:12px;color:var(--muted);margin:14px 0 0}@media(prefers-reduced-motion:reduce){.stack-signals{display:none}}@media(min-width:801px)and (max-width:1100px){.stack-row{grid-template-columns:1fr;gap:10px;padding-block:14px}.stack-row dt{font-size:16px;align-items:center}.stack-row dt>svg{width:21px;height:21px}.stack-row ul{gap:8px 14px}.stack-row dd{padding-left:35px}.stack-heading{grid-template-columns:1.1fr 1fr}}@media(max-width:800px){.stack-composition{grid-template-columns:1fr;gap:32px}.stack-heading{margin-bottom:28px}.stack-figure{width:100%;max-width:570px;margin-inline:auto}.stack-artwork{width:100%;margin:0}.stack-figure figcaption{margin-top:8px}.stack-row{grid-template-columns:minmax(140px,.8fr) minmax(0,1.3fr);padding-block:20px}}@media(max-width:480px){.stack-row{grid-template-columns:1fr;gap:12px}.stack-row dt{align-items:center}.stack-row dd{padding-left:39px}.stack-row ul{gap:10px 16px}.stack-heading h2{font-size:clamp(38px,10vw,48px)}.stack-note{padding-left:39px}}@media(min-width:801px)and (max-width:1100px)and (max-height:800px){.stack-heading{margin-bottom:24px}.stack-heading .intro{font-size:16px}.stack-row{padding-block:10px;gap:6px}.stack-row ul{gap:6px 12px}.stack-row li{font-size:13px}.stack-detail{margin-top:7px;font-size:12px}.stack-note{margin-top:10px}}.stack-row{align-items:center;padding-block:14px}.stack-row .stack-icons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,42px);gap:10px 12px;list-style:none;margin:0;padding:0}.stack-row .stack-icons-eight{grid-template-columns:repeat(4,minmax(0,1fr))}.stack-row .stack-icons li{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0}.stack-row .stack-icons img,.stack-row .stack-icons li>svg{width:23px;height:23px;object-fit:contain;flex-shrink:0}.stack-row .stack-icons span{font-size:12px;line-height:14px;white-space:nowrap;color:#60615c}@media(min-width:801px)and (max-width:1100px){.stack-composition{grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:24px}.stack-row{grid-template-columns:125px minmax(0,1fr);gap:14px;padding-block:10px}.stack-row dd{padding:0}.stack-row dt{font-size:14px;gap:9px}.stack-row .stack-icons{gap:8px 8px}.stack-row .stack-icons span{font-size:11px}}@media(max-width:480px){.stack-row{grid-template-columns:1fr;gap:18px;padding-block:20px}.stack-row dd{padding-left:0}}.stack-row .stack-icons li{position:relative}.stack-row .stack-icons img{width:var(--mark-width,25px);height:25px;filter:brightness(0)}.stack-row .stack-icons span{color:#60615c}.stack-icons [data-tech=go],.stack-icons [data-tech=dotnet],.stack-icons [data-tech=scikitlearn],.stack-icons [data-tech=amazonaws],.stack-icons [data-tech=mysql]{--mark-width:36px}.stack-icons [data-tech=mongodb],.stack-icons [data-tech=react],.stack-icons [data-tech=java],.stack-icons [data-tech=postgresql-solid],.stack-icons [data-tech=onnx]{--mark-width:28px}.contact-panel{min-width:0;width:100%;color:#141512;background:#f7f6f2;border:1px solid #ffffff24;border-radius:14px;overflow:hidden}.contact-panel .contact-inquiry-form{padding:clamp(24px,2.6vw,36px);gap:20px;border-radius:0;background:transparent}.contact-panel .contact-inquiry-form label{display:block;min-width:0;font-size:12px;font-weight:550;line-height:1.45;letter-spacing:.015em}.contact-panel .form-row{gap:18px;min-width:0}.inquiry-heading{display:flex;justify-content:space-between;align-items:center;padding-bottom:17px;border-bottom:1px solid #14151226;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.inquiry-heading svg{color:var(--color-accent-text);transform:rotate(-40deg)}.contact-panel .contact-inquiry-form :is(input,select,textarea){width:100%;min-width:0;min-height:46px;margin-top:8px;padding:11px 12px;border:1px solid #c3c4bb;border-radius:5px;background:#f7f6f2;color:#141512;font:inherit;font-size:16px;font-weight:400;letter-spacing:normal;line-height:1.4;transition:border-color .16s ease,background-color .16s ease}.contact-panel .contact-inquiry-form :is(input,select,textarea):focus-visible{border-color:#141512;outline:2px solid var(--color-focus);outline-offset:3px;background:#fff}.contact-panel .contact-inquiry-form :is(input,select,textarea):disabled{opacity:.65;cursor:wait}.contact-panel .inquiry-select{display:block;position:relative}.contact-panel .inquiry-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:34px;cursor:pointer}.contact-panel .inquiry-select select:invalid{color:#66685f}.contact-panel .inquiry-select option{color:#141512}.contact-panel .inquiry-select>svg{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}.contact-panel .contact-inquiry-form .field-help{margin-top:5px;font-size:12px;font-weight:400;line-height:1.5;letter-spacing:normal;color:#66685f}.contact-panel .contact-inquiry-form textarea{min-height:124px;height:124px;resize:vertical}.contact-panel .contact-inquiry-form .button{min-height:48px;justify-content:space-between;padding-inline:18px;border-radius:5px;background:var(--color-accent-solid);color:#141512}.contact-panel .contact-inquiry-form .button:focus-visible{outline:2px solid #141512;outline-offset:4px}.contact-panel .contact-inquiry-form .contact-error{padding:12px 0 0;border:0;border-top:1px solid var(--color-accent-border);border-radius:0;color:var(--color-error-text);background:transparent;font-size:13px}.contact-panel .inquiry-receipt{display:flex;flex-direction:column;justify-content:space-between;min-height:var(--receipt-height, 490px);padding:clamp(24px,2.6vw,36px)}.receipt-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid #14151226;font-size:10px;font-weight:550;line-height:1.4;letter-spacing:.13em;text-transform:uppercase}.receipt-topline>span:first-child{display:flex;align-items:center;gap:8px}.receipt-topline>span:first-child:before{content:"";width:6px;height:6px;background:var(--color-accent-solid)}.receipt-topline>span:last-child{color:#66685f;font-variant-numeric:tabular-nums}.receipt-content{padding-block:30px}.receipt-mark{position:relative;display:grid;place-items:center;width:64px;height:64px;margin-bottom:26px}.receipt-mark>span{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-accent-solid);border-radius:3px;animation:receipt-mark-in .55s cubic-bezier(.2,.7,.2,1) both}.receipt-mark>svg{position:relative;stroke-dasharray:50;stroke-dashoffset:0;animation:receipt-check-in .55s .13s ease-out both}.contact-panel .inquiry-receipt h3{font-size:clamp(32px,3vw,46px);line-height:1.08;font-weight:550;letter-spacing:-.05em}.contact-panel .inquiry-receipt h3:focus{outline:none}.receipt-content>p{max-width:38ch;margin-top:18px;color:#555852;font-size:14px;line-height:1.65;overflow-wrap:anywhere}.receipt-content strong{color:#141512;font-weight:550}.receipt-signature{display:flex;align-items:center;flex-wrap:wrap;gap:18px;padding-top:18px;border-top:1px solid #14151226}.receipt-signature img{width:88px;height:auto}.receipt-signature>span{color:#66685f;font-size:9px;line-height:1.4;letter-spacing:.14em;text-transform:uppercase}@media(hover:hover)and (pointer:fine){.contact-panel .contact-inquiry-form :is(input,select,textarea):hover{border-color:#777b6e}.contact-panel .contact-inquiry-form .button:hover{background:var(--color-accent-hover);color:#141512}}@media(min-width:801px)and (max-height:750px){.contact-panel .contact-inquiry-form{padding:24px;gap:16px}.contact-panel .contact-inquiry-form textarea{height:110px;min-height:110px}}@media(max-width:520px){.contact-panel .contact-inquiry-form{padding:22px;gap:20px}.contact-panel .form-row{grid-template-columns:1fr;gap:20px}.contact-panel .contact-inquiry-form textarea{min-height:140px;height:140px}.contact-panel .inquiry-receipt{padding:24px}.receipt-content{padding-block:44px}}@keyframes receipt-mark-in{0%{transform:scale(.85) rotate(-5deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes receipt-check-in{0%{stroke-dashoffset:50;opacity:0}to{stroke-dashoffset:0;opacity:1}}@media(prefers-reduced-motion:reduce){.contact-panel *,.contact-panel *:before,.contact-panel *:after{animation:none!important;transition:none!important}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Inter Variable,Inter,Arial,sans-serif;color:#141512;background:#f7f6f2;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ink:#141512;--paper:#f7f6f2;--card:#eeefeb;--muted:#555852;--line:#c9ccc3;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{color:inherit}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-weight:650;letter-spacing:-.055em;line-height:1.06}p{line-height:1.5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--color-accent-solid);outline-offset:5px}::selection{background:var(--color-selection)}.dark{background:var(--ink);color:var(--paper)}.container{width:min(1240px,calc(100% - 64px));margin-inline:auto}.eyebrow,.index{font-size:11px;line-height:1.4;letter-spacing:.16em;text-transform:uppercase}.eyebrow{margin-bottom:16px}.index{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:46px;padding:12px 24px;background:var(--ink);color:var(--paper);border:0;border-radius:100px;font-size:14px;font-weight:550;line-height:1.3}.button-light{background:var(--paper);color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:16px;border:0;border-bottom:1px solid currentColor;padding:9px 0;background:none;color:inherit;font-size:14px;font-weight:550;line-height:1.4;text-align:left}.text-link svg{flex-shrink:0}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;background:transparent}.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:12px 20px;background:var(--color-accent-solid);color:var(--ink);transform:translateY(-180%)}.skip-link:focus{transform:none}.reading-progress{position:fixed;inset:0 0 auto;height:2px;background:var(--color-accent-solid);transform:scaleX(0);transform-origin:left;z-index:50;pointer-events:none}.header{height:var(--header-height,80px);display:flex;align-items:center;gap:36px;position:relative;z-index:20}.brand{display:flex;align-items:center;gap:20px}.brand img{width:130px;height:auto;filter:invert(1)}.brand span{font-size:9px;text-transform:uppercase;letter-spacing:.24em}.desktop-nav{margin-left:auto;display:flex;gap:28px;font-size:13px}.desktop-nav a{padding-block:14px}.header-cta{margin-left:24px}.menu-toggle,.mobile-nav[hidden]{display:none}.hero{text-align:center;padding:20px 0 24px}.hero-eyebrow{color:#b9bcb1;font-size:11px}.hero h1{font-size:clamp(44px,min(6.4vw,9svh),88px);line-height:1.03;letter-spacing:-.06em}.title-mask{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}.title-mask>span{display:block;transform-origin:left bottom}.hero-copy{max-width:690px;margin:20px auto 0;font-size:18px;line-height:1.5;text-wrap:pretty;color:#d5d6cf}.hero-actions{display:flex;align-items:center;justify-content:center;gap:32px;margin-top:22px}.system-scene{margin-top:28px;text-align:left;width:100%}.system-scene-top{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #41443c;padding-top:8px;color:#b9bcb1;font-size:11px;letter-spacing:.09em;text-transform:uppercase}.scene-motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:6px 8px;border:0;background:transparent;color:#c4c7bc;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.system-stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;position:relative}.system-piece{min-width:0;position:relative;display:grid;grid-template-rows:minmax(0,1fr) 60px;gap:8px}.system-art{width:100%;height:100%;min-height:0;object-fit:contain;position:relative}.system-wires{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:calc(100% - 68px);pointer-events:none}.system-wire,.system-signal{fill:none;stroke:var(--color-accent-solid);stroke-width:2;vector-effect:non-scaling-stroke}.system-wire{stroke-dasharray:100;opacity:.55}.system-signal{stroke:#f7f6f2;stroke-width:3;stroke-dasharray:8 100;stroke-dashoffset:-108;opacity:0}.system-label{display:flex;align-items:start;gap:14px;border-top:1px solid #4c5044;padding-top:12px}.system-number{color:#aeb3a2;font-size:11px;padding-top:4px}.system-label strong{display:block;font-size:17px;font-weight:550;letter-spacing:-.025em}.system-label span>span{display:block;color:#b9bcb1;font-size:12px;padding-top:4px}.section{padding:clamp(48px,6vw,80px) 0}.section>.container{display:flex;flex-direction:column;justify-content:center;min-height:0}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:36px;margin-bottom:clamp(24px,3.5svh,38px)}.section-heading h2{font-size:clamp(36px,3.9vw,56px);max-width:650px;text-wrap:balance}.section-heading .intro{max-width:370px;justify-self:end;font-size:17px;line-height:1.5;color:var(--muted)}.dark .section-heading .intro{color:#c9ccc1}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-card{border:1px solid #e2e4dc;border-radius:14px;overflow:hidden;background:var(--card);display:flex;flex-direction:column}.project-card.dark{background:var(--ink);border-color:var(--ink)}.project-image{height:clamp(130px,21svh,230px);margin:10px 10px 0;border-radius:8px;overflow:hidden;background:#e4e4df}.project-image img{width:100%;height:100%;object-fit:cover;object-position:center top}.project-content{padding:22px;display:flex;flex-direction:column;flex:1}.project-category{font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.project-content h3{font-size:36px;margin-bottom:16px}.project-description{font-size:15px;color:var(--muted);min-height:4.5em}.dark .project-description{color:#c4c7bd}.project-proof{margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}.dark .project-proof{border-color:#45483f}.project-proof>span{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.dark .project-proof>span{color:#aeb3a2}.project-proof p{font-size:14px;margin-top:6px}.project-content .text-link{margin-top:16px;align-self:start;font-size:13px}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-card{display:grid;grid-template-columns:1.3fr .8fr;grid-template-areas:"index art" "title art" "description description" "scope scope";grid-template-rows:auto 1fr auto auto;gap:8px 12px;padding:22px;border-radius:14px;background:var(--card);transition:background-color .22s ease-out;overflow:hidden;position:relative}.service-card .index{grid-area:index;font-size:11px}.service-card h3{grid-area:title;font-size:clamp(23px,2.15vw,31px);align-self:center}.art{object-fit:contain}.service-card .art{grid-area:art;width:100%;height:clamp(96px,15svh,145px);margin:0}.service-description{grid-area:description;font-size:15px;line-height:1.5;min-height:4.5em;color:var(--muted);margin-top:8px}.scope{grid-area:scope;padding-top:12px;border-top:1px solid var(--line);font-size:12px;line-height:1.45;color:var(--muted)}.engineering-story{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.story-copy h2{font-size:clamp(40px,4.7vw,68px);line-height:1.04}.story-copy h2 span{color:var(--color-accent-solid)}.story-copy>p:not(.eyebrow){color:#c9ccc1;max-width:41ch;font-size:17px;margin-top:24px}.story-copy .text-link{margin-top:24px}.event-panel{background:#20221d;border:1px solid #44483c;border-radius:14px;position:relative;overflow:hidden;padding:24px}.event-panel-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px}.event-caption{font-size:12px;color:#b3b9a9;margin-top:2px}.event-list{list-style:none;padding:0;margin:24px 0}.event-row{display:flex;align-items:center;position:relative;gap:14px;border-top:1px solid #454a3d;padding:22px 0}.event-row:last-child{border-bottom:1px solid #454a3d}.event-light{position:absolute;top:0;right:-24px;bottom:0;left:-24px;background:var(--color-accent-wash);opacity:0;pointer-events:none;border-left:3px solid var(--color-accent-solid)}.event-number{font-size:11px;color:#b3b9a9;font-variant-numeric:tabular-nums}.event-row>div{flex:1}.event-row strong{display:block;font-weight:550;font-size:15px}.event-row>div>span{display:block;font-size:12px;color:#b3b9a9;margin-top:6px}.event-status{display:flex;align-items:center;gap:6px;font-size:11px;white-space:nowrap;color:#dce1d1}.event-status svg{color:var(--color-accent-solid)}.event-result>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#b3b9a9;margin-bottom:8px}.event-result strong{font-size:24px;font-weight:550;letter-spacing:-.035em}.event-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--color-accent-solid);transform:scaleX(0);transform-origin:left}.story-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;border-top:1px solid #45483f;margin-top:40px;padding-top:22px}.story-notes .eyebrow{color:#b3b9a9;font-size:10px}.story-notes p{font-size:14px;margin-top:8px}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;list-style:none;padding:0;margin:0}.steps li{min-width:0}.steps .art{width:100%;height:clamp(100px,18svh,180px);margin-bottom:24px}.step-content{border-top:1px solid var(--line);padding-top:20px}.step-content .index{color:var(--muted)}.step-content h3{font-size:24px;margin:12px 0 16px;min-height:2.12em}.step-content>p:not(.index){font-size:15px;line-height:1.5;color:var(--muted);min-height:6em}.step-output{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.step-output>span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.step-output p{font-size:14px;line-height:1.5;margin-top:8px}.engagement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.engagement-card{display:flex;flex-direction:column;border-radius:14px;padding:26px;background:var(--paper);color:var(--ink);transition:background-color .22s ease-out}.engagement-card h3{font-size:38px}.engagement-card .art{width:100%;height:clamp(95px,17svh,175px);margin:12px 0 20px}.engagement-card h4{font-size:21px;line-height:1.2;min-height:2.4em;margin-bottom:12px}.engagement-card>p{font-size:15px;color:var(--muted);line-height:1.5;min-height:4.5em;padding-bottom:18px}.best-for{border-top:1px solid var(--line);padding-top:18px;margin-top:auto}.best-for .eyebrow{font-size:11px;margin-bottom:10px}.best-for>p:last-child{font-size:14px;color:var(--muted);line-height:1.5}.contact{border-top:1px solid #41443a}.section>.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.contact h2{font-size:clamp(42px,4.8vw,68px);max-width:530px}.contact-copy{font-size:18px;color:#c9ccc1;margin:24px 0;max-width:440px}.email-link{display:inline-block;font-size:19px;border-bottom:1px solid var(--color-accent-solid);padding:6px 0}.contact-followup{font-size:14px;line-height:1.6;color:#aeb3a2;margin-top:32px;max-width:34ch}.contact-form{background:var(--paper);color:var(--ink);border-radius:14px;padding:28px;display:grid;gap:20px}.contact-form label{font-size:14px;line-height:1.4}.optional{font-size:12px;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,textarea{display:block;width:100%;min-height:46px;border:1px solid #8b8f83;border-radius:6px;background:transparent;padding:12px;color:var(--ink);margin-top:8px}textarea{min-height:120px;resize:vertical}.field-help{display:block;font-size:12px;line-height:1.5;color:var(--muted);margin-top:6px}.contact-form .button{width:100%}.form-note,.form-status{font-size:12px;line-height:1.5;color:var(--muted)}.form-status:empty{display:none}.draft-preview{border-top:1px solid var(--line);padding-top:20px}.draft-preview h3{font-size:24px;margin-bottom:10px}.draft-preview>p{font-size:13px;color:var(--muted)}.draft-preview textarea{font-size:13px!important;min-height:150px;margin:18px 0;line-height:1.5}.draft-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.draft-actions .button{width:auto;font-size:12px;padding-inline:18px}.draft-actions .text-link{font-size:12px;gap:8px}.draft-preview .form-status{margin-top:12px}footer{padding:0 0 28px}.footer-top{border-top:1px solid #45483f;padding-top:24px;display:flex;justify-content:space-between;gap:24px;font-size:13px;color:#c9ccc1}.footer-top nav{display:flex;gap:24px}.footer-brand{display:flex;align-items:center;gap:40px;padding:30px 0;overflow:hidden}.footer-brand img{width:72%;height:auto;filter:invert(1)}.footer-brand span{font-size:clamp(12px,1.6vw,23px);letter-spacing:.24em;text-transform:uppercase}.footer-bottom{border-top:1px solid #45483f;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#c9ccc1}.project-dialog{border:0;padding:0;border-radius:16px;background:var(--paper);color:var(--ink);width:min(900px,calc(100% - 32px));max-height:calc(100svh - 48px);overscroll-behavior:contain}.project-dialog::backdrop{background:#080a08b8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.project-note{padding:36px}.note-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}.note-top .eyebrow{margin:0}.note-top .icon-button{position:sticky;top:0;background:var(--paper)}.project-note h2{font-size:clamp(30px,3.6vw,48px);line-height:1.1;max-width:750px}.note-context{color:var(--muted);font-size:17px;margin:24px 0;max-width:65ch}.note-facts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.note-facts span{padding:8px 12px;border:1px solid var(--line);border-radius:100px;font-size:12px}.note-image{width:100%;height:auto;border-radius:8px}.note-details{margin:28px 0}.note-details>div{display:grid;grid-template-columns:160px 1fr;gap:28px;padding:24px 0;border-top:1px solid var(--line)}.note-details dt{font-size:14px;font-weight:600}.note-details dd{margin:0;font-size:15px;line-height:1.65;color:var(--muted)}.note-boundary{font-size:13px;line-height:1.6;background:var(--card);padding:18px;border-radius:8px;margin-bottom:20px}@media(hover:hover)and (pointer:fine){.service-card:hover,.engagement-card:hover{background:var(--color-accent-solid)}.service-card:hover p,.engagement-card:hover p{color:#202119}.service-card:hover .scope,.engagement-card:hover .best-for{border-color:#14151255}.scene-motion-toggle:hover{color:#fff}.text-link:hover{color:var(--color-accent-hover)}.dark .text-link:hover{color:var(--color-accent-solid)}}@media(min-width:801px){.site-root{--header-height:clamp(64px,9svh,88px)}.hero-shell,.hero{height:calc(100svh - var(--header-height));min-height:440px}.hero{display:flex;align-items:center;flex-direction:column}.hero>*{flex-shrink:0}.system-scene{flex:1;min-height:0;display:flex;flex-direction:column}.system-stage{flex:1;min-height:0}.system-piece{min-height:0}.system-scene-top{flex-shrink:0}}@media(max-width:1100px){.header{gap:20px}.brand{gap:14px}.brand img{width:110px}.brand span{font-size:8px}.desktop-nav{gap:18px;font-size:12px}.header-cta{margin-left:0;font-size:12px;padding-inline:18px}.engineering-story{gap:32px}.event-panel{padding:20px}.event-row{gap:10px}.event-status{font-size:10px;gap:4px}.event-row>div>span{font-size:11px}.story-copy h2{font-size:clamp(38px,4.7vw,52px)}.section-heading .intro{font-size:16px}.project-content{padding:18px}.project-content h3{font-size:32px}.steps{gap:18px}.step-content h3{font-size:21px}.section>.contact-grid{gap:36px}.engagement-card{padding:22px}.engagement-card h4{font-size:19px}}@media(min-width:801px)and (max-height:700px){.hero-eyebrow{margin-bottom:10px}.hero h1{font-size:clamp(40px,8.5svh,60px)}.hero-copy{font-size:16px;margin-top:12px}.hero-actions{margin-top:14px}.system-scene{margin-top:16px}.hero{padding-top:14px;padding-bottom:16px}.system-piece{grid-template-rows:minmax(0,1fr) 52px}.system-label{padding-top:8px}.system-label strong{font-size:15px}.system-label span>span{font-size:11px}.system-scene-top{padding-top:4px}.system-wires{height:calc(100% - 60px)}.section{padding-block:24px}.section>.container{min-height:0}.section-heading{margin-bottom:22px}.section-heading h2{font-size:36px}.section-heading .eyebrow{margin-bottom:10px}.project-image{height:120px}.project-content{padding:16px}.project-content h3{font-size:30px;margin-bottom:12px}.project-description{font-size:14px}.project-proof{margin-top:12px;padding-top:10px}.project-content .text-link{margin-top:10px}.service-card{padding:18px;gap:6px 12px}.service-card .art{height:84px}.service-card h3{font-size:23px}.service-description{font-size:14px;min-height:4.5em;margin-top:4px}.scope{padding-top:10px;font-size:11px}.steps .art{height:100px;margin-bottom:16px}.step-content{padding-top:14px}.step-content h3{margin:10px 0 12px}.step-content>p:not(.index){font-size:14px}.step-output{margin-top:14px;padding-top:12px}.engagement-card .art{height:90px;margin:6px 0 14px}.engagement-card h3{font-size:32px}.engagement-card>p{font-size:14px}.best-for{padding-top:14px}.best-for>p:last-child{font-size:13px}.event-row{padding-block:18px}.story-notes{margin-top:28px}.contact-form{padding:22px;gap:14px}.contact h2{font-size:48px}.contact-copy{font-size:16px}.contact-form textarea{min-height:100px}.contact-followup{margin-top:24px}}@media(max-width:800px){.container{width:calc(100% - 40px)}.header{height:84px;gap:14px}.brand{display:block}.brand img{width:100px}.brand span{display:block;margin-top:5px;font-size:7px}.desktop-nav{display:none}.header-cta{margin-left:auto;font-size:11px;padding:12px 15px;gap:8px;min-height:42px}.menu-toggle{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex-shrink:0;border:1px solid #626659;border-radius:50%;background:transparent;color:var(--paper)}.mobile-nav:not([hidden]){display:grid;position:absolute;top:76px;left:0;right:0;background:var(--ink);padding:12px 22px;border:1px solid #45483f;border-radius:12px;box-shadow:0 15px 35px #0004}.mobile-nav a{display:flex;justify-content:space-between;align-items:center;font-size:20px;padding:16px 0;border-bottom:1px solid #45483f}.mobile-nav a:last-child{border:0;color:var(--color-accent-solid)}.hero{padding:30px 0}.hero h1{font-size:clamp(36px,7.8vw,62px)}.hero-copy{font-size:16px;margin-top:22px}.hero-eyebrow{font-size:10px}.hero-actions{gap:22px;flex-wrap:wrap}.hero-actions .button{font-size:12px;padding-inline:18px}.hero-actions .text-link{font-size:12px}.system-scene{margin-top:32px}.system-scene-top{font-size:9px;letter-spacing:.04em}.system-stage{gap:14px;margin-top:10px}.system-piece{grid-template-rows:140px auto}.system-label{gap:0;padding-top:10px}.system-number{display:none}.system-label strong{font-size:14px}.system-label span>span{font-size:11px}.system-wires{height:140px}.section{padding-block:56px}.section>.container{min-height:0}.section-heading{grid-template-columns:1fr;gap:16px;margin-bottom:28px}.section-heading h2{font-size:42px;max-width:650px;text-wrap:initial}.section-heading .intro{justify-self:start;max-width:45ch;font-size:16px}.project-grid{grid-template-columns:1fr;gap:20px}.project-card{display:grid;grid-template-columns:1fr 1fr}.project-image{height:100%;min-height:230px;margin:0;border-radius:0}.project-content{padding:24px}.project-description{min-height:0}.project-proof{margin-top:18px}.services-grid{grid-template-columns:1fr}.service-card{padding:24px;grid-template-columns:1.4fr .8fr}.service-card h3{font-size:28px}.service-card .art{height:120px}.service-description{min-height:0;margin:8px 0 10px;font-size:16px}.scope{font-size:12px}.engineering-story{grid-template-columns:1fr;gap:32px}.story-copy h2{font-size:48px}.story-copy>p:not(.eyebrow){font-size:16px}.story-copy .text-link{margin-top:20px}.event-panel{padding:24px}.event-row{padding-block:22px}.event-status{font-size:12px}.event-row>div>span{font-size:12px}.story-notes{gap:22px;margin-top:28px}.story-notes p{font-size:13px}.steps{grid-template-columns:1fr;gap:24px}.steps li{display:grid;grid-template-columns:100px 1fr;gap:24px}.steps .art{height:100px;margin:0}.step-content{padding-top:14px}.step-content h3{font-size:25px;min-height:0;margin:10px 0 12px}.step-content>p:not(.index){font-size:16px;min-height:0}.step-output{border:0;margin-top:14px;padding:0}.step-output p{font-size:14px;margin-top:4px}.engagement-grid{grid-template-columns:1fr;gap:18px}.engagement-card{display:grid;grid-template-columns:1fr 140px;gap:0 20px;padding:26px}.engagement-card h3{font-size:36px}.engagement-card .art{grid-column:2;grid-row:1/4;height:140px;width:100%;margin:0;align-self:center}.engagement-card h4{font-size:21px;min-height:0;margin:14px 0 10px}.engagement-card>p{font-size:16px;min-height:0;padding-bottom:20px}.best-for{grid-column:1/-1;padding-top:16px}.best-for>p:last-child{font-size:14px}.section>.contact-grid{grid-template-columns:1fr;gap:32px}.contact h2{font-size:48px;max-width:520px}.contact-copy{font-size:17px;margin:20px 0}.contact-followup{margin-top:20px;max-width:45ch}.contact-form{padding:26px;gap:20px}.contact-form textarea{min-height:130px}.footer-top{flex-direction:column;gap:18px}.footer-top nav{gap:22px;flex-wrap:wrap}.footer-brand{gap:24px}.footer-brand span,.footer-bottom{font-size:11px}.project-note{padding:24px}.note-details>div{grid-template-columns:1fr;gap:10px}.note-context{font-size:16px}.project-dialog{max-height:calc(100svh - 24px)}}@media(max-width:520px){.container{width:calc(100% - 36px)}.header{gap:10px}.brand img{width:92px}.header-cta{padding-inline:12px;font-size:10px}.header-cta svg{width:14px}.hero h1{font-size:clamp(32px,8.2vw,43px)}.hero-copy{font-size:15px}.hero-actions{gap:20px}.system-piece{grid-template-rows:100px auto}.system-stage{gap:8px}.system-wires{height:100px}.system-label strong{font-size:12px}.system-label span>span{font-size:10px}.scene-motion-toggle{font-size:10px;min-height:40px}.system-scene-top{font-size:8px}.section{padding-block:44px}.section-heading h2{font-size:36px}.eyebrow{font-size:10px;margin-bottom:12px}.project-card{display:flex}.project-image{min-height:0;height:185px;margin:10px 10px 0;border-radius:8px}.project-content{padding:20px}.project-content h3{font-size:32px;margin-bottom:14px}.project-category{font-size:11px}.project-description{font-size:15px}.project-proof{margin-top:16px}.project-content .text-link{margin-top:12px}.service-card{padding:20px;grid-template-columns:1.3fr .8fr;column-gap:8px}.service-card h3{font-size:24px}.service-card .art{height:100px}.service-description{font-size:15px;line-height:1.5}.scope{font-size:12px}.story-copy h2{font-size:42px}.story-copy .text-link{font-size:13px}.event-panel{padding:18px}.event-row{gap:8px;padding-block:20px;flex-wrap:wrap}.event-row strong{font-size:14px}.event-row>div>span{font-size:11px}.event-status{font-size:10px;margin-left:22px}.event-row>div{flex-basis:calc(100% - 30px)}.event-light{top:0;right:-18px;bottom:0;left:-18px}.event-panel-top{font-size:13px}.event-result strong{font-size:23px}.story-notes{grid-template-columns:1fr;gap:18px}.story-notes p{font-size:14px;margin-top:4px}.story-notes .eyebrow{font-size:10px}.steps li{grid-template-columns:64px 1fr;gap:16px}.steps .art{height:80px;margin-top:10px}.step-content h3{font-size:23px}.step-content>p:not(.index){font-size:15px}.engagement-card{grid-template-columns:1fr 95px;gap:0 12px;padding:22px}.engagement-card h3{font-size:32px}.engagement-card .art{height:95px;grid-row:1/3}.engagement-card h4{font-size:19px;line-height:1.25}.engagement-card>p{grid-column:1/-1;font-size:15px;margin-top:4px}.contact h2{font-size:42px}.contact-copy{font-size:16px}.contact-form{padding:22px}.form-row{grid-template-columns:1fr;gap:18px}.contact-form textarea{min-height:140px}.footer-brand{flex-direction:column;align-items:start;gap:18px}.footer-brand img{width:100%}.footer-bottom{flex-direction:column;gap:10px}.note-facts span{font-size:11px}.note-top{gap:12px}.note-top .eyebrow{font-size:10px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reading-progress,.system-signal,.scene-motion-toggle,.event-progress,.event-light{display:none}.system-art{transform:none!important}.system-wire{stroke-dashoffset:0!important}}.perspective-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:32px;align-items:center}.perspective-copy h2{font-size:clamp(38px,4vw,60px);line-height:1.06}.perspective-copy>p:last-child{font-size:18px;line-height:1.5;margin-top:24px;max-width:42ch;color:#c9ccc1}.perspective-system{display:grid;grid-template-columns:1fr .58fr;gap:18px;height:clamp(320px,57svh,520px);align-items:stretch}.perspective-system>.art{width:100%;height:100%;min-height:0;object-fit:contain}.perspective-system dl{display:grid;grid-template-rows:repeat(3,1fr);margin:6% 0;padding-left:22px;border-left:1px solid var(--color-accent-solid)}.perspective-system dl>div{display:flex;flex-direction:column;justify-content:center}.perspective-system dt{font-size:18px;font-weight:550;letter-spacing:-.025em;margin-bottom:10px}.perspective-system dt span{display:block;font-size:10px;letter-spacing:.15em;color:var(--color-accent-solid);margin-bottom:9px}.perspective-system dd{font-size:14px;line-height:1.5;color:#c9ccc1;margin:0}.perspective-close{font-size:clamp(28px,3vw,42px);font-weight:600;letter-spacing:-.045em;line-height:1.2;margin-top:28px;padding-top:22px;border-top:1px solid #55594e}@media(max-width:1000px)and (min-width:801px){.perspective-grid{gap:24px;grid-template-columns:1fr 1.1fr}.perspective-copy h2{font-size:36px}.perspective-copy>p:last-child{font-size:16px}.perspective-system{gap:10px}.perspective-system dl{padding-left:14px}.perspective-system dt{font-size:16px}.perspective-system dd{font-size:12px}}@media(max-width:800px){.perspective-grid{grid-template-columns:1fr;gap:32px}.perspective-copy h2{font-size:clamp(32px,6vw,48px)}.perspective-copy>p:last-child{font-size:16px;max-width:45ch}.perspective-system{height:400px;grid-template-columns:1fr .65fr;max-width:560px;width:100%;margin:auto}.perspective-close{font-size:30px}}@media(max-width:380px){.perspective-system{height:350px;gap:10px;grid-template-columns:1fr .8fr}.perspective-system dl{padding-left:12px}.perspective-system dt{font-size:15px}.perspective-system dd{font-size:12px}.perspective-close{font-size:26px}}.perspective-system{isolation:isolate;grid-template-columns:1fr .74fr}.perspective-system>.art{mix-blend-mode:lighten}.perspective-system dl{position:relative;border-left:0;margin-block:0;padding-left:24px}.perspective-system .perspective-track{position:absolute;left:0;top:5%;bottom:5%;width:2px;display:block;background:#45483d;pointer-events:none}.perspective-track i{display:block;width:100%;height:100%;background:var(--color-accent-solid);transform-origin:top}.perspective-system dt{font-size:18px;margin-bottom:8px}.perspective-system dt span{font-size:9px;line-height:1.4;letter-spacing:.1em;text-transform:uppercase}.perspective-system dd{font-size:13px;line-height:1.5}.perspective-close{font-size:clamp(25px,2.6vw,36px)}@media(max-width:1000px)and (min-width:801px){.perspective-system{grid-template-columns:1fr .95fr;height:clamp(360px,62svh,480px)}.perspective-system dl{padding-left:16px}.perspective-system dt{font-size:16px}.perspective-system dd{font-size:12px}.perspective-copy h2{font-size:36px}}@media(max-width:800px){.perspective-system{height:460px;grid-template-columns:1fr .9fr}.perspective-system dt{font-size:18px}.perspective-system dd{font-size:13px}.perspective-close{font-size:27px}}@media(max-width:380px){.perspective-system{height:490px;grid-template-columns:.85fr 1fr;gap:10px}.perspective-system dl{padding-left:14px}.perspective-system dt{font-size:16px}.perspective-system dd{font-size:13px}.perspective-close{font-size:25px}}@media(prefers-reduced-motion:reduce){.perspective-track i{transform:none!important}}.perspective-system{background:var(--ink)}.perspective-system .perspective-track{margin:0}@media(max-width:800px){.perspective-system{height:auto;min-height:520px}.perspective-system dl{grid-template-rows:repeat(3,auto);gap:24px}.perspective-system>.art{height:440px;align-self:center}.perspective-system .perspective-track{top:0;bottom:0}}@media(max-width:380px){.perspective-system{height:auto;min-height:560px}.perspective-system>.art{height:420px}}.contact-trap{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);pointer-events:none}.contact-form input::placeholder{font-size:12px;color:#74776e}.contact-form .button:disabled{cursor:default;opacity:.7}.contact-error,.contact-success{font-size:14px;line-height:1.5;margin:0;padding:14px;border-radius:8px}.contact-error{color:var(--color-error-text);background:var(--color-error-surface);border-left:2px solid var(--color-accent-solid)}.contact-success{color:#264a33;background:#e5eee4}.sending-icon{animation:contact-spin 1s linear infinite}@keyframes contact-spin{to{transform:rotate(360deg)}}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.site-root{--motion-ease-out: cubic-bezier(.23, 1, .32, 1);--motion-ease-ui: cubic-bezier(.2, 0, 0, 1)}html:has(.site-root[data-motion-input=keyboard]){scroll-behavior:auto!important}.site-root :is(.button,.menu-toggle){-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background-color .16s var(--motion-ease-ui),color .16s var(--motion-ease-ui),opacity .15s ease-out}.site-root :is(.text-link,.desktop-nav a,.footer-top a,.email-link){transition:color .16s var(--motion-ease-ui),border-color .16s var(--motion-ease-ui)}.site-root :is(.button,.text-link) svg{transition:none}.site-root .mobile-nav{overscroll-behavior:contain}.site-root .contact-form :is(input,textarea){font-size:16px;transition:border-color .15s var(--motion-ease-ui),background-color .15s var(--motion-ease-ui)}.site-root .contact-form :is(input,textarea):focus-visible{background-color:#fff}.site-root .project-image img{outline:1px solid oklch(0 0 0 / .1);outline-offset:-1px}.site-root .dark .project-image img{outline-color:#ffffff1a}@media(prefers-reduced-motion:no-preference){.site-root :is(.button,.menu-toggle){transition:background-color .16s var(--motion-ease-ui),color .16s var(--motion-ease-ui),opacity .15s ease-out,scale .15s ease-out}.site-root :is(.button,.menu-toggle):not(:disabled):not([aria-disabled=true]):not([data-static-motion]):not(:focus-visible):active{scale:.96}}@media(hover:hover)and (pointer:fine){.site-root .button:hover{background-color:var(--color-accent-hover);color:#fff;transform:none}.site-root :is(.desktop-nav a,.footer-top a,.text-link,.email-link):hover{color:var(--color-accent-solid)}}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.site-root :is(.button,.text-link) svg{transition:transform .16s var(--motion-ease-out)}.site-root :is(.button,.text-link):hover svg{transform:translate(2px)}}@media(hover:none),(pointer:coarse){.site-root .button:hover{background-color:var(--ink);color:var(--paper);transform:none}.site-root .button-light:hover{background-color:var(--paper);color:var(--ink)}.site-root :is(.button,.text-link):hover svg{transform:none}.site-root :is(.desktop-nav a,.footer-top a):hover{color:inherit}}.site-root :is(.button,.menu-toggle):is(:disabled,[aria-disabled=true]){scale:1;transform:none}.site-root :is(.button,.text-link,.menu-toggle):focus-visible,.site-root :is(.button,.text-link):focus-visible svg{transition:none;transform:none;scale:1}@media(prefers-reduced-motion:reduce){html:has(.site-root){scroll-behavior:auto!important}.site-root :is(.button,.text-link,.menu-toggle),.site-root :is(.button,.text-link) svg{transform:none!important;scale:1!important;animation:none!important;transition:opacity .15s ease-out!important}}.work .project-grid{gap:24px}.work .project-card{background:transparent;border:0;border-radius:0;overflow:visible}.work .project-cover{position:relative;display:block;padding:0;border:0;border-radius:12px;background:#e7e8e0;overflow:hidden;width:100%}.work .project-image{height:auto;aspect-ratio:1.44;margin:0;padding:12px;border-radius:0;background:#e7e8e0;display:flex;align-items:center}.work .project-preplingo .project-image{background:#eee4df}.work .project-natsnap .project-image{background:#22231f}.work .project-rehabevo .project-image{background:#e0e8e8}.work .project-image img{width:100%;height:auto;max-height:100%;object-fit:contain;border-radius:4px;box-shadow:0 5px 15px #14151212;transition:transform .35s cubic-bezier(.2,.7,.3,1)}.project-cover-action{position:absolute;right:20px;bottom:20px;width:38px;height:38px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;transform:translateY(5px);opacity:0;transition:opacity .18s,transform .18s}.project-cover-action svg{transform:rotate(-40deg)}.project-cover:hover .project-cover-action,.project-cover:focus-visible .project-cover-action{opacity:1;transform:none}.project-cover:hover img{transform:scale(1.025)}.work .project-content{padding:22px 0 0;display:flex;flex-direction:column;flex:1;max-width:none;width:100%}.project-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.work .project-category{font-size:10px;letter-spacing:.12em;margin-bottom:12px}.project-index{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.work .project-content h3{font-size:clamp(30px,3vw,42px);margin-bottom:12px}.work .project-description{min-height:0;max-width:none;padding-bottom:20px;flex:1;font-size:15px;line-height:1.5}.project-disciplines{margin-top:auto;padding-top:14px;border-top:1px solid var(--line);font-size:11px;line-height:1.6;color:var(--muted)}.work .project-content .text-link{margin-top:12px;border-bottom:0;width:100%;justify-content:space-between;font-size:13px}.work .project-content .text-link svg{transition:transform .18s}.work .project-content .text-link:hover svg{transform:translate(4px)}footer .footer-brand{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:18px;padding-block:34px}footer .footer-brand img{width:100%;height:auto}footer .footer-brand span{display:flex;align-items:center;justify-content:flex-end;gap:18px;font-size:clamp(10px,1.4vw,18px);letter-spacing:.28em}footer .footer-brand span:before{content:"";width:48px;height:2px;background:var(--color-accent-solid)}@media(min-width:801px)and (max-height:750px){.work .project-image{max-height:190px;aspect-ratio:1.65;padding:10px}.work .project-content{padding-top:16px}.work .project-description{font-size:14px}.project-disciplines{margin-top:14px;padding-top:10px}}@media(max-width:800px)and (min-width:521px){.work .project-card{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:center;padding-bottom:24px;border-bottom:1px solid var(--line)}.work .project-content{padding:0}.work .project-description{min-height:0}}@media(max-width:520px){.work .project-grid{gap:38px}.work .project-card{display:flex}.work .project-image{min-height:0;aspect-ratio:1.44;padding:12px}.work .project-description{min-height:0;max-width:none}.project-cover-action{opacity:1;transform:none;width:32px;height:32px;right:18px;bottom:18px}footer .footer-brand{gap:16px;padding-block:28px}}@media(min-width:801px){.hero h1{font-size:clamp(36px,min(5.05vw,8svh),72px)}}.service-card .service-description{min-height:0;margin-top:4px}@media(min-width:801px){.service-card .art{height:clamp(88px,12svh,120px)}}.section.faq{border-top:1px solid var(--line)}.section>.faq-layout{display:grid;grid-template-columns:.85fr 1.3fr;gap:clamp(32px,6vw,96px);align-items:start;align-content:center}.faq-heading h2{font-size:clamp(36px,4vw,56px);line-height:1.06}.faq-heading>p:not(.eyebrow){margin-top:22px;max-width:29ch;font-size:17px;color:var(--muted)}.faq-signature{display:block;margin-top:42px;font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}.faq-list{border-top:1px solid var(--ink);min-width:0}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{list-style:none;display:grid;grid-template-columns:22px 1fr 32px;gap:16px;align-items:center;padding:23px 0;cursor:pointer;font-size:17px;font-weight:550;line-height:1.4;letter-spacing:-.025em}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::marker{content:""}.faq-number{font-size:10px;font-weight:450;letter-spacing:0;font-variant-numeric:tabular-nums;color:var(--muted)}.faq-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:50%}.faq-item[open] .faq-icon{background:var(--color-accent-solid);border-color:var(--color-accent-solid)}.faq-item[open] .faq-icon svg{transform:rotate(45deg)}.faq-item[open] .faq-number{color:var(--color-accent-text)}.faq-answer{padding:0 48px 24px 38px;max-width:65ch;font-size:15px;color:var(--muted);line-height:1.6}.faq-item summary:focus-visible{outline:3px solid var(--color-accent-solid);outline-offset:4px;border-radius:3px}@media(hover:hover)and (pointer:fine){.faq-item summary:hover .faq-icon{background:var(--color-accent-solid);border-color:var(--color-accent-solid)}}@media(prefers-reduced-motion:no-preference){.faq-icon{transition:background-color .15s ease-out,border-color .15s ease-out}.faq-icon svg{transition:transform .2s var(--motion-ease-out)}}@media(max-width:800px){.section>.faq-layout{grid-template-columns:1fr;gap:32px}.faq-signature{display:none}.faq-heading>p:not(.eyebrow){max-width:38ch}}@media(max-width:480px){.faq-item summary{gap:10px;grid-template-columns:20px 1fr 30px;font-size:16px;padding-block:20px}.faq-answer{padding:0 8px 22px 30px}}.hero-accent{color:var(--color-accent-solid)}.hero .hero-copy{max-width:52ch;font-size:clamp(16px,1.4vw,19px);line-height:1.5}.hero .hero-actions .button{background:var(--color-accent-solid);color:var(--ink)}.accent-text{color:var(--color-accent-text)}.dark .accent-text{color:var(--color-accent-solid)}.faq-heading .eyebrow{color:var(--color-accent-text)}.faq-icon{color:var(--color-accent-text);border-color:var(--color-accent-border)}.faq-item[open] .faq-icon{color:var(--ink)}.process-art{min-width:0}@media(min-width:801px){.hero{padding-top:clamp(30px,5svh,64px)}.work .project-grid{align-items:stretch}.work .project-card{padding:0}.work .project-content{display:grid;grid-template-rows:auto auto 1fr auto auto}.work .project-category{min-height:0}.work .project-description{padding-bottom:22px}.section.faq,.section.contact,.section.perspective{padding-block:clamp(56px,6.5vw,88px)}}@media(max-width:520px){.hero h1{font-size:clamp(32px,8.6vw,44px)}.hero .hero-copy{font-size:16px}}@media(min-width:801px)and (max-height:800px){.section{padding-block:32px}.section.faq,.section.contact,.section.perspective{padding-block:48px}}.services.dark .section-heading .eyebrow{color:var(--color-accent-solid)}.services.dark .service-card{color:var(--ink)}.services.dark .service-card .index{color:var(--color-accent-text)}@media(hover:hover)and (pointer:fine){.services.dark .service-card:hover .index{color:var(--ink)}}:root{--font-display:"Space Grotesk Variable","Inter Variable",Arial,sans-serif;--type-section:clamp(2rem,3.8vw,3.5rem);--type-card:clamp(1.5rem,2.15vw,1.9375rem)}.site-root :is(h1,h2,h3,h4),.site-root .system-label strong{font-family:var(--font-display);font-weight:600}.site-root .hero h1{font-weight:600;letter-spacing:-.045em;line-height:1.08}.site-root p{text-wrap:pretty}.site-root :is(.eyebrow,.index){font-size:.75rem;font-weight:500;letter-spacing:.08em}.site-root .section .section-heading{grid-template-columns:minmax(0,1fr) minmax(15rem,21rem);gap:clamp(24px,3.5vw,48px);align-items:end;margin-bottom:clamp(28px,3.5vw,40px)}.section-heading>div{min-width:0}.site-root .section :is(.section-heading,.faq-heading) h2,.site-root .contact h2{font-size:var(--type-section);font-weight:600;line-height:1.2;letter-spacing:-.035em;max-width:24ch;text-wrap:balance;overflow-wrap:normal;color:inherit}.site-root .section{--heading-accent:var(--red-700)}.site-root :is(.stack-section,.faq){--heading-accent:var(--blue-600)}.site-root .approach{--heading-accent:var(--green-700)}.site-root .section.dark{--heading-accent:var(--red-300)}.site-root .services.dark{--heading-accent:var(--blue-300)}.site-root .section h2 .accent-text{color:var(--heading-accent)}.site-root .section .eyebrow{font-size:.75rem;line-height:1.5;letter-spacing:.08em;font-weight:500;margin-bottom:16px;color:inherit}.site-root .section .section-heading .intro,.site-root .faq-heading>p:not(.eyebrow),.site-root .contact .contact-copy{font-size:clamp(17px,1.4vw,19px);line-height:1.5;text-wrap:pretty}.site-root .section .section-heading .intro{max-width:34ch;padding:0}.site-root .service-card h3{font-size:var(--type-card);line-height:1.25;letter-spacing:-.025em;text-wrap:pretty}.work .project-content h3,.engagement-card h3{line-height:1.15;letter-spacing:-.03em}.site-root .steps h3{line-height:1.2;letter-spacing:-.025em;text-wrap:pretty}.engagement-card h4{line-height:1.3;letter-spacing:-.02em;text-wrap:pretty}@media(max-width:1100px){.site-root .section .section-heading{grid-template-columns:minmax(0,1fr);gap:16px}.site-root .section .section-heading .intro{justify-self:start;max-width:60ch}}@media(max-width:800px){.site-root .section :is(.section-heading,.faq-heading) h2,.site-root .contact h2{font-size:clamp(2rem,5vw,2.625rem);line-height:1.2;letter-spacing:-.03em}.site-root .service-card h3{font-size:clamp(1.5rem,3.5vw,1.75rem)}}@media(max-width:380px){.site-root .section :is(.section-heading,.faq-heading) h2,.site-root .contact h2{line-height:1.2}}@media(max-width:520px){.engagement-card h4{line-height:1.4}}.language-switcher{position:relative;flex-shrink:0;margin-left:-16px}.language-trigger{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 10px;border:1px solid #56584e;border-radius:100px;background:transparent;color:var(--paper);font-size:11px;font-weight:550;letter-spacing:.04em}.language-flag{width:20px;height:14px;flex-shrink:0;border-radius:2px;overflow:hidden}.language-trigger>svg:last-child{transition:transform .2s}.language-trigger[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}.language-options{position:absolute;z-index:25;right:0;top:calc(100% + 10px);width:176px;padding:6px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px #0002}.language-options[hidden]{display:none}.language-options a{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px;border-radius:7px;font-size:14px}.language-options a>span{flex:1}.language-options a:hover,.language-options a[aria-current=true]{background:#e9e8e2}.language-options a:focus-visible{outline-offset:-2px}@media(min-width:1101px){.header{gap:22px}.desktop-nav{gap:20px}.header-cta{margin-left:0}}@media(max-width:1100px){.header{gap:16px}.header-cta{margin-left:auto}.language-switcher{margin-left:0}}@media(max-width:800px){.header{gap:12px}.language-switcher{margin-left:0}.header-cta{display:none}.language-switcher{margin-left:auto}.menu-toggle{margin-left:0}}@media(max-width:380px){.header{gap:10px}.language-trigger{padding-inline:8px}.language-trigger .language-flag{width:18px;height:12px}}.engagement-grid,.engagement-card,.engagement-card>*{min-width:0}@media(max-width:520px){.engagement-card{grid-template-columns:minmax(0,1fr) 95px}.engagement-card h3{grid-column:1/-1}.engagement-card .art{grid-row:2;grid-column:2}.engagement-card h4{grid-row:2;grid-column:1}}.hero-shell .hero{position:relative}.product-connection{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:1}.product-connection path{fill:none;stroke:var(--color-border-connection);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.product-connection .product-connection-signal{stroke:var(--color-accent-solid);stroke-width:2;stroke-dasharray:2 101;stroke-dashoffset:5}.product-connection [data-connection=system] .product-connection-signal{stroke:var(--color-accent-supporting)}.product-connection [data-connection=outcome] .product-connection-signal{stroke:var(--color-accent-detail)}.product-connection-wire{opacity:.65}.connection-terminal{fill:var(--color-accent-solid)}[data-connection=system] .connection-terminal{fill:var(--color-accent-supporting)}[data-connection=outcome] .connection-terminal{fill:var(--color-accent-detail)}.hero-word-outcome .hero-word-stroke{display:none}@media(prefers-reduced-motion:reduce){.product-connection-signal{display:none}}.hero-shell,#top{--red-600: #e32636;--red-700: #c11a2a;--blue-600: #2458e6;--blue-400: #76a1ff;--green-600: #168344;--neutral-950: #141512;--neutral-50: #f7f6f2;--neutral-0: #ffffff;--neutral-600: #555852;--color-bg-brand: var(--neutral-950);--color-text-brand: var(--neutral-50);--color-text-on-action: var(--neutral-0);--color-accent-solid: var(--red-600);--color-accent-hover: var(--red-700);--color-accent-supporting: var(--blue-600);--color-accent-detail: var(--green-600);--color-focus: var(--blue-400);--color-border-connection: var(--neutral-600);background:var(--color-bg-brand);color:var(--color-text-brand)}.hero-shell .hero h1{color:var(--color-text-brand)}.hero-shell .title-mask{padding-bottom:.2em;margin-bottom:-.2em}.hero-word{position:relative;display:inline-block}.hero-word-product{color:var(--color-accent-solid)}.hero-word-system{color:var(--color-accent-supporting)}.hero-word-outcome,.hero-outcome-anchor{color:var(--color-accent-detail)}[data-connection=system] .connection-terminal,[data-connection=outcome] .connection-terminal{display:none}.hero-word-stroke{position:absolute;left:0;bottom:-.13em;width:100%;height:.16em;fill:none;stroke:var(--color-accent-detail);stroke-width:3;stroke-linecap:round;pointer-events:none}.hero-shell .hero .hero-actions .button,.site-root #top .header-cta{background:var(--color-text-brand);color:var(--color-bg-brand);padding:8px 9px 8px 24px;gap:22px;min-height:48px}.hero-shell .hero-actions .button>svg,.site-root #top .header-cta>svg{box-sizing:content-box;padding:8px;border-radius:50%;flex-shrink:0;background:var(--color-accent-solid);color:var(--color-text-on-action)}.site-root .hero-shell .hero-actions .button:is(:hover,:active)>svg,.site-root #top .header-cta:is(:hover,:active)>svg{transform:none}.hero-shell .hero-actions .text-link>svg{color:var(--color-focus)}@media(prefers-reduced-motion:no-preference){.hero-shell .hero-actions .button>svg,.site-root #top .header-cta>svg{transition:background-color .16s ease}}.hero-shell .system-wire{stroke:var(--color-border-connection);opacity:.8}.hero-shell .system-signal{stroke:var(--color-text-brand)}.hero-shell .system-piece{--color-illustration-accent: var(--color-accent-solid)}.hero-shell .system-piece:nth-of-type(2){--color-illustration-accent: var(--color-accent-supporting)}.hero-shell .system-piece:nth-of-type(3){--color-illustration-accent: var(--color-accent-detail)}.hero-shell .system-label{position:relative}.hero-shell .system-label:before{content:"";position:absolute;top:-2px;left:0;width:24px;height:3px;background:var(--color-illustration-accent)}.hero-shell :is(a,button):focus-visible,#top :is(a,button):focus-visible{outline-color:var(--color-focus)}.hero-shell ::selection,#top ::selection{background:var(--color-accent-supporting);color:var(--color-text-on-action)}@media(hover:hover)and (pointer:fine){.hero-shell .hero .hero-actions .button:hover{background:var(--color-text-on-action);color:var(--color-bg-brand)}.hero-shell .hero-actions .button:hover>svg,.site-root #top .header-cta:hover>svg{background:var(--color-accent-hover)}.site-root .hero-shell .text-link:hover,.site-root #top .desktop-nav a:hover{color:var(--color-focus)}.site-root #top .header-cta:hover{background:var(--color-text-on-action);color:var(--color-bg-brand)}}.site-root :is(.hero-shell,.section,footer){position:relative;isolation:isolate;--grid-major: rgba(20, 21, 18, .075);--grid-minor: rgba(20, 21, 18, .035)}.site-root :is(.hero-shell,.section,footer).dark{--grid-major: rgba(235, 240, 242, .075);--grid-minor: rgba(235, 240, 242, .035)}.site-root :is(.hero-shell,.section,footer):before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:linear-gradient(var(--grid-major) 1px,transparent 1px),linear-gradient(90deg,var(--grid-major) 1px,transparent 1px),linear-gradient(var(--grid-minor) 1px,transparent 1px),linear-gradient(90deg,var(--grid-minor) 1px,transparent 1px);background-size:120px 120px,120px 120px,24px 24px,24px 24px;background-position:center top;-webkit-mask-image:radial-gradient(ellipse at 50% 44%,transparent 30%,rgba(0,0,0,.25) 58%,#000 100%);mask-image:radial-gradient(ellipse at 50% 44%,transparent 30%,rgba(0,0,0,.25) 58%,#000 100%)}:root{--red-600: #e32636;--red-700: #c11a2a;--red-300: #ff858d;--blue-600: #2458e6;--blue-300: #76a1ff;--green-600: #168344;--green-700: #116d38;--green-300: #69cd92;--color-accent-solid: var(--red-600);--color-accent-hover: var(--red-700);--color-accent-text: var(--red-700);--color-accent-supporting: var(--blue-600);--color-accent-detail: var(--green-600);--color-link: var(--blue-600);--color-focus: var(--blue-600);--color-selection: #2458e633;--color-accent-wash: #e3263610;--color-accent-border: #e3263640;--color-error-text: #a71927;--color-error-surface: #fcebed;--color-signal-product: #ffb2b8;--color-signal-system: #b1c8ff;--color-signal-operations: #b5e9c9;--color-category: var(--color-accent-solid);--color-category-text: var(--color-accent-text)}.dark{--color-accent-text: var(--red-300);--color-link: var(--blue-300);--color-focus: var(--blue-300)}.site-root :is(a,button,input,select,textarea,summary):focus-visible{outline-color:var(--color-focus)}.site-root ::selection{background:var(--color-selection)}.site-root .reading-progress{background:var(--color-accent-solid)}.site-root .skip-link{background:var(--color-accent-solid);color:#fff}[data-brand-role=product]{--color-category: var(--red-600);--color-category-text: var(--red-700);--color-category-wash: #f8ecec}[data-brand-role=system]{--color-category: var(--blue-600);--color-category-text: var(--blue-600);--color-category-wash: #eaf0fc}[data-brand-role=operations]{--color-category: var(--green-600);--color-category-text: var(--green-700);--color-category-wash: #eaf3ed}.services.dark .service-card .index,.steps .index{color:var(--color-category-text)}.service-card:after{background:var(--color-category)}.engagement-card h3{color:var(--color-category-text)}.work .project-content .text-link{color:var(--color-link)}.stack-row dt>svg{color:var(--color-category)}.stack-signal[data-signal-role=product]{stroke:var(--color-signal-product)}.stack-signal[data-signal-role=system]{stroke:var(--color-signal-system)}.stack-signal[data-signal-role=operations]{stroke:var(--color-signal-operations)}.faq-icon,.faq-item[open] .faq-number{color:var(--color-accent-supporting)}.faq-icon{border-color:var(--line)}.faq-item[open] .faq-icon{background:var(--color-accent-supporting);border-color:var(--color-accent-supporting);color:#fff}.contact-form{--color-focus: var(--blue-600);--color-accent-text: var(--red-700)}.site-root .contact-panel .contact-inquiry-form .button{background:var(--color-accent-solid);color:#fff}.receipt-topline>span:first-child:before,.receipt-mark>span{background:var(--color-accent-detail)}.receipt-mark>svg{color:#fff}.email-link{border-color:var(--color-accent-solid)}footer .footer-brand span:before{background:linear-gradient(90deg,var(--color-accent-solid) 0 50%,transparent 50% 54%,var(--color-accent-supporting) 54% 79%,transparent 79% 83%,var(--color-accent-detail) 83%)}@media(hover:hover)and (pointer:fine){.site-root :is(.service-card,.engagement-card):hover{background-color:var(--color-category-wash)}.site-root .services.dark .service-card:hover .index{color:var(--color-category-text)}.site-root :is(.text-link,.email-link,.footer-top a):hover{color:var(--color-link)}.site-root .faq-item summary:hover .faq-icon{background:var(--color-accent-supporting);border-color:var(--color-accent-supporting);color:#fff}.site-root .contact-panel .contact-inquiry-form .button:hover{background:var(--color-accent-hover);color:#fff}}.site-root [data-brand-role=product]{--color-tile: #f7f0ed;--color-category-wash: #f5e3e3}.site-root [data-brand-role=system]{--color-tile: #eff1f6;--color-category-wash: #e1e9fa}.site-root [data-brand-role=operations]{--color-tile: #eef3ed;--color-category-wash: #dfeddf}.site-root :is(.service-card,.engagement-card){background-color:var(--color-tile)}.site-root :is(.service-card,.engagement-card):focus-within{background-color:var(--color-category-wash)}.section-action{display:flex;justify-content:center;margin-top:32px}.site-root .engagement-link{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;margin-top:20px;padding-block:10px;font-size:1rem;font-weight:550;color:var(--color-category-text);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;transition:color .15s ease-out}.engagement-link svg{flex-shrink:0}@media(hover:hover)and (pointer:fine){.site-root :is(.service-card,.engagement-card):hover{background-color:var(--color-category-wash)}.site-root .engagement-link:hover{color:var(--ink)}}@media(max-width:520px){.section-action .button{width:100%;justify-content:center}}.site-root .work .project-category{font-size:.75rem;letter-spacing:.08em}.site-root .project-index{font-size:.75rem}.site-root .project-disciplines{font-size:.8125rem;line-height:1.55}.site-root .work .project-content .text-link{min-height:44px;font-size:.875rem}.site-root .step-output>span{font-size:.75rem;letter-spacing:.08em}.site-root .engagement-link{grid-column:1 / -1}.site-root .section .section-heading .intro{text-wrap:pretty}@media(min-width:801px){.site-root .hero-shell,.site-root .hero{height:max(620px,calc(100svh - var(--hero-header-height,64px)))}}@media(max-width:800px){.site-root .hero{padding-block:28px 32px}.site-root .hero-copy{font-size:1rem;line-height:1.55}.site-root .hero-actions{margin-top:24px;gap:12px 24px}.site-root .hero-actions .text-link{min-height:44px;font-size:.875rem;align-items:center}.site-root .hero-actions .button{font-size:.875rem}.site-root .system-scene{margin-top:18px}.site-root .system-stage{margin-top:0;padding-top:0;gap:12px}.site-root .system-piece{grid-template-rows:140px auto;gap:8px}.site-root .system-label{min-height:0;padding-top:12px}.site-root .system-label strong{font-size:.9375rem;line-height:1.25;letter-spacing:-.02em}.site-root .system-label span>span{font-size:.8125rem;line-height:1.45;max-width:none;padding-top:5px}.site-root .system-wires{height:140px}.site-root .service-card{padding:24px}.site-root .service-card .service-description,.site-root .engagement-card>p,.site-root .work .project-description{font-size:1rem;line-height:1.55;min-height:0}.site-root .scope,.site-root .best-for>p:last-child{font-size:.875rem;line-height:1.55}.site-root .steps .art{width:100%;height:100px;margin:0}.site-root .step-content h3{min-height:0}.site-root .steps .step-content>p:not(.index){font-size:1rem;line-height:1.55;min-height:0}.site-root .engagement-card h4{min-height:0}.site-root .engagement-link{margin-top:12px}.site-root .stack-note,.site-root .footer-bottom{font-size:.8125rem;line-height:1.5}}@media(max-width:520px){.site-root .hero-actions{flex-direction:column;gap:8px}.site-root .system-stage{gap:6px}.site-root .system-piece{grid-template-rows:112px auto}.site-root .system-art{width:112%;max-width:none;margin-left:-6%;height:112px;aspect-ratio:auto}.site-root .system-wires{height:112px}.site-root .system-label strong{font-size:.8125rem}.site-root .system-label span>span{font-size:.75rem;line-height:1.5}.site-root .section{padding-block:40px}.site-root .section .section-heading{margin-bottom:28px}.site-root .service-card{padding:20px;grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr)}.site-root .service-card .art{height:104px}.site-root .service-card .scope{margin-top:4px}.site-root .steps li{grid-template-columns:72px minmax(0,1fr);gap:16px}.site-root .steps .art{height:88px}.site-root .engagement-card{grid-template-columns:minmax(0,1fr) 96px;padding:22px}.site-root .engagement-card .art{height:108px}.site-root .engagement-card h4{line-height:1.4}.site-root .stack-row dd,.site-root .stack-note{padding-left:0}.site-root .stack-row{gap:14px}}@media(max-width:360px){.site-root .services .section-heading h2{line-height:1.4}.site-root .system-label strong{font-size:.75rem}.site-root .service-card h3{font-size:1.375rem;line-height:1.4}.site-root .engagement-card{column-gap:10px;grid-template-columns:minmax(0,1fr) 80px;padding:18px}}@media(min-width:521px)and (max-width:800px){.site-root .hero h1{font-size:clamp(2rem,5.6vw,2.75rem)}}@media(max-width:800px),(hover:none),(pointer:coarse){.site-root :is(.service-card,.engagement-card).is-viewport-active{background-color:var(--color-category-wash)}}.site-root footer{padding-bottom:32px}.site-root .footer-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:32px;padding-top:32px}.site-root .footer-top>p{max-width:none;width:100%;text-wrap:wrap;font-size:.9375rem;line-height:1.6;justify-self:end}.site-root .footer-top nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px}.site-root .footer-top nav a{display:flex;align-items:center;min-height:44px;width:fit-content;font-size:.9375rem}.site-root footer .footer-brand{gap:20px;padding-block:40px 32px}.site-root footer .footer-brand span{justify-content:flex-start;font-size:.75rem;letter-spacing:.18em;gap:12px}.site-root footer .footer-brand span:before{width:36px}.site-root .footer-bottom{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding-top:24px}.footer-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:baseline;gap:12px 20px;font-size:.875rem;line-height:1.5}.footer-cities{margin-left:auto;text-align:right}.site-root .footer-copyright{font-size:.75rem;line-height:1.6;color:#b9bcb1}@media(min-width:801px){.site-root .footer-top>p{text-align:left}}@media(max-width:800px){.site-root .header .brand{flex-shrink:0}.site-root .header .brand img{width:clamp(110px,25vw,128px);height:auto}.site-root .header .brand>span{font-size:.5rem;letter-spacing:.14em}.site-root .footer-top{grid-template-columns:minmax(0,1fr);gap:24px}.site-root .footer-top nav{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:0 24px}.site-root .footer-top>p{max-width:none;justify-self:stretch;text-align:left}.site-root footer .footer-brand{padding-block:32px;gap:16px}.site-root .footer-bottom{gap:24px}.footer-identity{column-gap:16px}}@media(max-width:520px){.site-root .footer-top nav{column-gap:20px}.site-root .footer-copyright{max-width:42ch}}
