:root{--paper:#f3f3f1;--ink:#242424;--muted:#646464;--signal:#b13c2d;--coral:#ffb4a1;--line:#d3d3ce;--surface:#e8e8e4;--dark:#222;--gutter:clamp(22px,6vw,88px);color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{-webkit-font-smoothing:antialiased;background:#f3f3f1;background:var(--paper);color:#242424;color:var(--ink);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;line-height:1.65;margin:0}a{text-decoration:none;text-underline-offset:.25em}a,button{color:inherit}button{cursor:pointer;font:inherit}a,button,summary{-webkit-tap-highlight-color:rgba(0,0,0,0)}:focus-visible{outline:2px solid #b13c2d;outline:2px solid var(--signal);outline-offset:5px}::selection{background:#ffb4a1;background:var(--coral);color:#242424;color:var(--ink)}figure,h1,h2,h3,h4,p{margin:0}a,button,summary{touch-action:manipulation}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}}.motion-progress{height:2px;inset:0 0 auto;pointer-events:none;position:fixed;z-index:100}.motion-progress span{background:var(--signal);display:block;height:100%;transform:scaleX(0);transform-origin:left}.motion-toggle{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:3px;bottom:18px;box-shadow:0 2px 12px rgba(36,36,36,.039);color:var(--ink);display:flex;font-size:11px;gap:8px;letter-spacing:.03em;min-height:44px;padding:8px 13px;position:fixed;right:20px;z-index:90}.motion-toggle:hover{border-color:var(--ink)}.motion-toggle:disabled{cursor:default}.motion-toggle-mark{text-align:center;width:12px}html[data-motion=on] .motion-enter{animation:motion-arrive .7s cubic-bezier(.2,.7,.2,1) both}html[data-motion=on] .motion-enter:focus-within{animation:none}html[data-motion=on] .product-devices{transform:translateZ(0);transform:translate3d(0,var(--motion-drift,0),0)}@keyframes motion-arrive{0%{opacity:.2;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}html[data-motion=off]{scroll-behavior:auto}html[data-motion=off] .App *,html[data-motion=off] .App :after,html[data-motion=off] .App :before{animation-play-state:paused!important}html[data-motion=off] .motion-enter{animation:none!important}@media(prefers-reduced-motion:reduce){.motion-progress{display:none}html[data-motion] .product-devices{transform:none}.motion-enter{animation:none!important}}@media(max-width:600px){.motion-toggle{bottom:12px;right:12px}}@media print{.motion-progress,.motion-toggle{display:none}html[data-motion] .motion-enter{animation:none!important}html[data-motion] .product-devices{transform:none}}@media(max-width:600px){.motion-toggle{border-radius:50%;height:44px;justify-content:center;padding:0;width:44px}.motion-toggle-label{clip:rect(0,0,0,0);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}}.signal-loom{--loom-scroll:0px;--loom-x:0deg;--loom-y:0deg;align-self:center;margin:0;min-width:0;perspective:900px}.signal-loom__topline{border-top:1px solid var(--line);color:var(--muted);display:flex;font:10px/1.5 ui-monospace,monospace;justify-content:space-between;letter-spacing:1.2px;padding:16px 0}.signal-loom__topline>span:last-child{color:var(--signal);font-size:18px}.signal-loom__art{transform:translateY(var(--loom-scroll)) rotateX(var(--loom-x)) rotateY(var(--loom-y));transition:transform .65s cubic-bezier(.2,.8,.2,1)}.signal-loom__art svg{display:block;overflow:visible;width:100%}.loom-axis{stroke:var(--line);stroke-width:.7;stroke-dasharray:2 7}.loom-thread-shape{transform:scaleY(.56);transform-origin:300px 180px;transition:transform 1.2s cubic-bezier(.22,1,.36,1)}.is-amplified .loom-thread-shape{transform:scaleY(1.12)}.loom-thread{stroke:var(--signal);stroke-width:.7;opacity:.44}.loom-thread:nth-child(3n){stroke:var(--ink);opacity:.26}.loom-source{fill:var(--signal)}.loom-result{fill:var(--ink)}.loom-result-tick{stroke:var(--paper);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.loom-travellers path{stroke:var(--signal);stroke-width:1.4;stroke-dasharray:9 101;stroke-dashoffset:10;animation:loom-travel 2.2s cubic-bezier(.4,0,.2,1) both;animation-delay:calc(var(--thread)*65ms);opacity:0}@keyframes loom-travel{0%{stroke-dashoffset:10;opacity:0}15%{opacity:1}85%{opacity:1}to{stroke-dashoffset:-100;opacity:0}}.signal-loom__labels{color:var(--muted);display:flex;font:10px/1.5 ui-monospace,monospace;gap:10px;justify-content:space-between;margin-top:3px}.signal-loom__labels span:nth-child(2){color:var(--signal)}.signal-loom__bottom{align-items:center;border-top:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;margin-top:30px;padding-top:18px}.signal-loom__bottom p{color:var(--muted);font-size:12px;line-height:1.7}.signal-loom__bottom strong{color:var(--ink);font-weight:500}.signal-loom__bottom button{align-items:center;background:#0000;border:1px solid var(--line);border-radius:30px;color:var(--ink);display:flex;font-size:11px;gap:10px;min-height:44px;padding:10px 14px;transition:background .18s,border-color .18s,transform .18s}.signal-loom__bottom button:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.signal-loom__bottom button:active{transform:scale(.96)}.signal-loom__bottom button svg{transition:transform .6s cubic-bezier(.2,.8,.2,1)}.is-amplified .signal-loom__bottom button svg{transform:rotate(135deg)}html[data-motion=off] .signal-loom *{animation:none!important;transition:none!important}html[data-motion=off] .signal-loom__art{transform:none}@media(prefers-reduced-motion:reduce){.signal-loom *{animation:none!important;transition:none!important}.signal-loom__art{transform:none}}@media(max-width:700px){.signal-loom{margin-top:4px}.signal-loom__art{margin:auto;max-width:480px}.signal-loom__bottom{margin-top:20px}.signal-loom__labels,.signal-loom__topline{font-size:9px}}@media print{.signal-loom{display:none}}.shuttle-spotlight{--shuttle-gold:#d2b577;background:#24231f;border:1px solid #3b3930;color:#fffdf8;display:grid;grid-column:1/-1;grid-template-columns:1.05fr 1fr;margin-bottom:32px;overflow:hidden}.shuttle-spotlight__copy{align-items:flex-start;display:flex;flex-direction:column;padding:clamp(28px,4vw,56px)}.shuttle-spotlight__eyebrow{color:var(--shuttle-gold);font:10px/1.6 ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase}.shuttle-spotlight__identity{margin:45px 0 50px;width:100%}.shuttle-spotlight__identity img{display:block;height:auto;max-width:392px;width:100%}.shuttle-spotlight__detail{margin-top:auto;max-width:320px}.shuttle-spotlight__detail>p{text-wrap:pretty;font-size:clamp(21px,2.2vw,28px);font-weight:400;letter-spacing:-.5px;line-height:1.45}.shuttle-spotlight__detail>a{align-items:center;border-bottom:1px solid #746343;color:var(--shuttle-gold);display:inline-flex;font-size:12px;gap:28px;margin-top:29px;padding-block:10px;transition:border-color .2s}.shuttle-spotlight__detail>a>span[aria-hidden]{transition:transform .25s}.shuttle-spotlight__detail>a:hover{border-color:var(--shuttle-gold)}.shuttle-spotlight__detail>a:hover>span[aria-hidden]{transform:translate(3px,-3px)}.shuttle-spotlight__detail>a:focus-visible{outline-color:var(--shuttle-gold)}.shuttle-spotlight__visual{background:#d9d4c7;isolation:isolate;min-height:490px;overflow:hidden;position:relative}.shuttle-spotlight__visual:after{background:linear-gradient(#0000,#d9d4c7);content:"";height:100px;inset:auto 0 0;pointer-events:none;position:absolute}.shuttle-spotlight__visual figcaption{bottom:20px;color:#504a3d;display:flex;font:9px/1.5 ui-monospace,monospace;gap:12px;justify-content:space-between;left:25px;position:absolute;right:25px;z-index:1}.shuttle-spotlight__screen{border:5px solid #fffdf8;border-radius:25px;box-shadow:0 25px 45px rgba(40,34,24,.188),0 2px 6px rgba(40,34,24,.082);left:50%;max-width:350px;overflow:hidden;position:absolute;top:48px;transform:translateX(-50%) rotate(-5deg);transform-origin:50% 30%;transition:transform .8s cubic-bezier(.22,1,.36,1);width:69%}.shuttle-spotlight__screen img{display:block;height:auto;width:100%}@media(hover:hover)and (prefers-reduced-motion:no-preference){html:not([data-motion=off]) .shuttle-spotlight:hover .shuttle-spotlight__screen{transform:translateX(-50%) translateY(-8px) rotate(-2deg)}}@media(max-width:700px){.shuttle-spotlight{grid-template-columns:1fr}.shuttle-spotlight__copy{padding:28px}.shuttle-spotlight__identity{margin:30px 0;max-width:330px}.shuttle-spotlight__detail{max-width:360px}.shuttle-spotlight__detail>a{margin-top:17px}.shuttle-spotlight__visual{min-height:370px}.shuttle-spotlight__screen{max-width:290px;top:30px;width:66%}}html[data-motion=off] .shuttle-spotlight *,html[data-motion=off] .shuttle-spotlight :after{transition:none!important}@media(prefers-reduced-motion:reduce){.shuttle-spotlight *{transition:none!important}}.shuttle-spotlight__club-header{background:#f5f5f7}.shuttle-spotlight__club-header img{height:auto;width:63.72%}.shuttle-spotlight__screen{background:#f5f5f7;border-radius:34px;border-width:6px;padding-top:32px}.shuttle-spotlight__screen:before{background:#242424;border-radius:20px;content:"";height:15px;left:50%;position:absolute;top:7px;transform:translateX(-50%);width:28%;z-index:2}.build-loop{--loop-line:#5b5b55;margin-top:52px}.build-loop :focus-visible{outline-color:var(--coral)}.build-loop__caption{color:#b9b9b4;display:flex;font:11px/1.5 ui-monospace,monospace;gap:16px;justify-content:space-between;padding-bottom:26px}.build-loop__tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:relative}.build-loop__forward{fill:none;stroke:var(--coral);stroke-width:2;height:2px;overflow:visible;pointer-events:none;position:absolute;top:30px;width:100%;z-index:1}.build-loop__selection{display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;top:2px;transform:translateX(calc(var(--active-stage)*100%));transition:transform .58s cubic-bezier(.22,1,.36,1);width:20%}.build-loop__selection span{border:1px solid var(--coral);border-radius:50%;height:58px;opacity:.4;width:58px}.build-loop__tab{align-items:center;background:#0000;border:0;border-radius:2px;color:#c9c9c3;display:flex;flex-direction:column;font-size:14px;gap:12px;padding:8px 0 12px;position:relative}.build-loop__tab:after{background:var(--loop-line);content:"";height:1px;left:calc(50% + 30px);pointer-events:none;position:absolute;right:calc(-50% + 30px);top:31px}.build-loop__tab:last-child:after{display:none}.build-loop__tab[aria-selected=true]{color:var(--coral)}.build-loop__tab[aria-selected=true] .build-loop__node{animation:loop-node-arrive .6s cubic-bezier(.22,1,.36,1) both;background:var(--coral);border-color:var(--coral);color:var(--ink)}.build-loop__tab:hover .build-loop__node{border-color:var(--coral)}.build-loop__node{background:var(--dark);border:1px solid var(--loop-line);border-radius:50%;display:grid;font:12px ui-monospace,monospace;height:46px;place-items:center;position:relative;transition:background-color .24s,border-color .24s,color .24s;width:46px;z-index:2}.build-loop__return{height:61px;margin-bottom:25px;position:relative;text-align:center}.build-loop__return svg{fill:none;stroke:var(--loop-line);stroke-width:1;display:block;height:52px;overflow:visible;width:100%}.build-loop__return svg path{vector-effect:non-scaling-stroke}.build-loop__return .build-loop__feedback-trace{stroke:var(--coral);stroke-width:2;stroke-dasharray:.08 .92;animation:loop-feedback 10s linear infinite;animation-play-state:paused}.build-loop__return span{background:var(--dark);color:#b9b9b4;font:10px/1.5 ui-monospace,monospace;padding:0 14px;position:relative;top:-24px}.build-loop__panel{border-top:1px solid var(--loop-line);min-height:244px;padding-top:28px}.build-loop__panel[hidden]{display:none}@keyframes loop-node-arrive{0%{transform:scale(.86)}55%{transform:scale(1.07)}to{transform:scale(1)}}.build-loop__panel-heading{align-items:baseline;display:flex;gap:18px;margin-bottom:27px}.build-loop__panel-heading h3{font-size:clamp(23px,2.5vw,32px);font-weight:400;letter-spacing:-.7px;line-height:1.3}.build-loop__stage-number{color:var(--coral);font:11px ui-monospace,monospace}.build-loop__roles{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr .8fr}.build-loop__roles h4{font:11px/1.5 ui-monospace,monospace;font-weight:400;margin-bottom:12px}.build-loop__role p{color:#b9b9b4;font-size:14px;line-height:1.8}.build-loop__role h4 span{margin-right:6px}.build-loop__role--ai h4{color:var(--coral)}.build-loop__output{border-left:1px solid var(--loop-line);padding-left:25px}.build-loop__output h4{color:#b9b9b4}.build-loop__output p{display:flex;font-size:19px;gap:15px;justify-content:space-between;line-height:1.4}.build-loop__output p span{color:var(--coral)}@media(max-width:700px){.build-loop{margin-top:34px}.build-loop__caption{font-size:10px}.build-loop__caption>span:last-child{display:none}.build-loop__tab{font-size:11px;gap:10px}.build-loop__tab:after{left:calc(50% + 20px);right:calc(-50% + 20px);top:25px}.build-loop__node{font-size:10px;height:34px;width:34px}.build-loop__forward{top:24px}.build-loop__selection{top:3px}.build-loop__selection span{height:44px;width:44px}.build-loop__return{margin-bottom:16px}.build-loop__return span{font-size:9px;padding-inline:8px}.build-loop__panel{min-height:392px;padding-top:24px}.build-loop__panel-heading{gap:12px;margin-bottom:24px}.build-loop__roles{gap:22px;grid-template-columns:1fr}.build-loop__roles h4{margin-bottom:8px}.build-loop__output{border-left:0;border-top:1px solid var(--loop-line);padding:18px 0 0}}@media(prefers-reduced-motion:reduce){.build-loop *,.build-loop :after,.build-loop :before{animation:none!important;transition:none!important}.build-loop__feedback-trace,.build-loop__forward{display:none}}html[data-motion=off] .build-loop *,html[data-motion=off] .build-loop :after,html[data-motion=off] .build-loop :before{animation:none!important;transition:none!important}html[data-motion=off] .build-loop__feedback-trace,html[data-motion=off] .build-loop__forward{display:none}@media(prefers-reduced-motion:no-preference){html:not([data-motion=off]) .build-loop__node:after{background:rgba(255,180,161,.149);border:2px solid var(--coral);border-radius:50%;box-shadow:0 0 18px rgba(255,180,161,.302);content:"";inset:-1px;opacity:0;pointer-events:none;position:absolute}}.build-loop__forward{left:0;left:var(--pulse-start,0);opacity:0;opacity:var(--forward-opacity,0);overflow:hidden;width:0;width:var(--pulse-track-width,0)}.build-loop__pulse{background:var(--coral);height:2px;left:0;position:absolute;top:0;transform:translateX(0);transform:translateX(var(--pulse-left,0));width:0;width:var(--pulse-width,0)}.build-loop__return .build-loop__feedback-trace{stroke-dasharray:.08 2;stroke-dashoffset:.08;stroke-dashoffset:var(--return-offset,.08);animation:none;opacity:0;opacity:var(--return-opacity,0)}@media(prefers-reduced-motion:no-preference){html:not([data-motion=off]) .build-loop__node:after{animation:none;opacity:0;opacity:var(--node-glow,0);transform:none}}.App{margin:auto;max-width:1600px}.about,.approach,.hero,.projects,.site-footer,.site-nav{padding-inline:var(--gutter)}.eyebrow{font:500 10px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.4px;text-transform:uppercase}.site-nav{align-items:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f3f3f1f2;border-bottom:1px solid var(--line);display:flex;height:88px;justify-content:space-between;position:-webkit-sticky;position:sticky;top:0;z-index:10}.wordmark{font-size:35px;font-weight:750;letter-spacing:-3px;line-height:1;padding-block:12px}.wordmark span{color:var(--signal)}.site-nav>div{align-items:center;display:flex;font-size:12px;gap:30px}.site-nav>div>a{padding-block:13px;position:relative}.site-nav>div>a:after{background:var(--signal);bottom:9px;content:"";height:1px;left:0;position:absolute;transform:scaleX(0);transform-origin:left;transition:transform .2s;width:100%}.site-nav>div>a:hover:after{transform:scaleX(1)}.nav-cv{margin-left:12px}.hero{padding-top:80px}.hero>.eyebrow{color:var(--muted)}.separator{color:var(--signal);margin-inline:12px}.hero h1{font-size:clamp(48px,7.2vw,108px);font-weight:500;letter-spacing:-.065em;line-height:1.05;margin:32px 0 38px}.hero h1>span{color:var(--signal)}.hero-bottom{grid-gap:60px;align-items:end;display:grid;gap:60px;grid-template-columns:minmax(0,650px) 1fr;padding-bottom:65px}.hero-intro>p{color:var(--muted);font-size:18px;max-width:580px}.hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:25px;margin-top:28px}.button-primary{align-items:center;background:var(--ink);border:1px solid var(--ink);color:var(--paper);display:inline-flex;font-size:12px;gap:35px;justify-content:space-between;padding:14px 20px;transition:background .2s,border-color .2s}.button-primary:hover{background:var(--signal);border-color:var(--signal)}.inline-link{align-items:center;display:inline-flex;font-size:12px;gap:20px;padding-block:10px}.contact-link>span,.inline-link>span[aria-hidden]{transition:transform .2s}.inline-link:hover{color:var(--signal)}.contact-link:hover>span,.inline-link:hover>span[aria-hidden]{transform:translate(2px,-2px)}.hero-note{border-left:1px solid var(--line);justify-self:end;padding:0 0 5px 24px;text-align:left}.signal-mark{color:var(--signal);display:block;font-size:42px;line-height:1;margin-bottom:15px}.hero-note p{color:var(--muted);font-size:12px;line-height:1.8}.hero-meta{border-top:1px solid var(--line);color:var(--muted);display:flex;flex-wrap:wrap;font-size:11px;gap:12px 25px;justify-content:space-between;padding:20px 0}.hero-meta strong{color:var(--ink);font-weight:500}.projects{padding-block:100px}.section-heading{align-items:end;display:flex;gap:40px;justify-content:space-between}.about h2,.section-heading h2{font-size:clamp(34px,4.1vw,58px);font-weight:500;letter-spacing:-.045em;line-height:1.12;margin-top:20px}.about .eyebrow,.section-heading .eyebrow,.section-heading>.eyebrow{color:var(--signal)}.section-heading>p{color:var(--muted);font-size:13px;line-height:1.8}.project-controls{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:36px 0 30px}.filter-bar{display:flex;flex-wrap:wrap;gap:8px}.filter-bar button{background:#0000;border:1px solid var(--line);border-radius:30px;font-size:12px;min-height:44px;padding:9px 16px;transition:background .18s,border-color .18s}.filter-bar button:hover{border-color:var(--ink)}.filter-bar button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.filter-bar button>span{font-size:10px;margin-left:12px;opacity:.7}.project-count{color:var(--muted);font:10px ui-monospace,monospace;white-space:nowrap}.project-grid{grid-column-gap:48px;column-gap:48px;display:grid;grid-template-columns:1fr 1fr}.featured-project{background:#e9e8e4;border:1px solid var(--line);display:grid;grid-column:1/-1;grid-template-columns:1fr 1fr;margin-bottom:30px;min-width:0}.featured-copy{align-items:start;display:flex;flex-direction:column;padding:44px}.featured-copy>.eyebrow{color:var(--muted);font-size:9px;letter-spacing:1px}.featured-copy h3{font-size:36px;font-weight:500;letter-spacing:-1.5px;line-height:1.1;margin:28px 0 15px;max-width:340px}.project-lead{font-size:18px;letter-spacing:-.3px;line-height:1.5}.project-description{color:var(--muted);font-size:14px;line-height:1.8;margin-top:15px}.featured-copy>.project-description{max-width:380px}.featured-copy>.project-links{margin-top:22px}.featured-copy .project-details{margin-top:22px;width:100%}.product-figure{background:#dddcd8;display:flex;flex-direction:column;min-width:0;overflow:hidden}.product-devices{flex:1 1;min-height:440px;overflow:hidden;position:relative}.phone-screen{border:7px solid #242424;border-radius:30px;box-shadow:10px 15px 30px rgba(36,36,36,.141);left:46%;top:38px;transform:translateX(-30%) rotate(7deg);width:218px}.phone-screen,.watch-screen{height:auto;position:absolute}.watch-screen{border:8px solid #333;border-radius:38px;box-shadow:6px 10px 22px #24242438;left:12%;top:180px;transform:rotate(-8deg);width:156px}.product-figure figcaption{background:#e2e1dd;border-top:1px solid #c7c6c2;display:flex;font:9px/1.6 ui-monospace,monospace;gap:15px;justify-content:space-between;letter-spacing:.3px;padding:18px 22px;position:relative}.product-figure figcaption>span{color:var(--muted)}.project-card{border-top:1px solid var(--line);display:flex;flex-direction:column;min-width:0;padding:32px 0 24px}.project-topline{align-items:center;color:var(--muted);display:flex;gap:20px;margin-bottom:28px}.project-number{color:var(--signal);font:10px ui-monospace,monospace}.project-topline .eyebrow{font-size:9px;letter-spacing:1px}.project-card h3{font-size:27px;font-weight:500;letter-spacing:-.8px;line-height:1.2;margin-bottom:13px}.project-card>.project-description,.project-card>.project-lead{max-width:430px}.project-bottom{margin-top:auto;padding-top:22px}.project-quiet{position:relative}.project-quiet:after{background:var(--signal);content:"";height:3px;margin-top:30px;width:26px}.project-details{border-top:1px solid var(--line)}.project-details summary{align-items:center;cursor:pointer;display:flex;font-size:12px;gap:20px;justify-content:space-between;list-style:none;min-height:48px}.project-details summary::-webkit-details-marker{display:none}.details-icon{color:var(--signal);font-size:20px;font-weight:300;transition:transform .18s}.project-details[open] .details-icon{transform:rotate(45deg)}.project-expanded{color:var(--muted);font-size:13px;line-height:1.85;padding:3px 0 22px}.tags{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:18px 0 0;padding:0}.tags li{background:var(--paper);border:1px solid var(--line);color:var(--muted);font:10px/1.6 ui-monospace,monospace;padding:4px 8px}.approach{background:var(--dark);color:var(--paper);padding-block:80px}.approach .section-heading .eyebrow{color:var(--coral)}.approach .section-heading>p{color:#b9b9b4}.principles{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(3,1fr);margin-top:55px}.principles article{border-top:1px solid #50504c;padding-top:22px}.principle-number{color:var(--coral);font:10px ui-monospace,monospace}.principles h3{font-size:20px;font-weight:500;letter-spacing:-.4px;line-height:1.4;margin:20px 0 14px}.principles p{color:#b9b9b4;font-size:14px;line-height:1.85}.about{grid-gap:55px 70px;display:grid;gap:55px 70px;grid-template-columns:1fr 1fr;padding-block:100px}.career-note{display:flex;flex-direction:column;font-size:12px;gap:5px;margin:32px 0 20px}.career-note>span{color:var(--muted);font-size:10px;margin-top:10px}.career-note>strong{font-weight:500}.about-copy{color:var(--muted);font-size:15px;line-height:1.85;padding-top:36px}.about-copy p+p{margin-top:22px}.about-copy .about-lead{color:var(--ink);font-size:23px;letter-spacing:-.5px;line-height:1.5}.off-screen{border-top:1px solid var(--line);margin-top:30px;padding-top:22px}.off-screen p{font-size:12px;margin-top:10px}.leadership-quote{border-top:1px solid var(--line);grid-column:1/-1;margin:0;padding:40px 0 0}.leadership-quote>p{font:400 clamp(23px,2.6vw,34px)/1.5 Georgia,serif;letter-spacing:-.5px;max-width:920px}.leadership-quote footer{color:var(--muted);display:flex;font-size:11px;gap:25px;justify-content:space-between;margin-top:22px}.leadership-quote cite{font-style:normal}.leadership-quote a:hover{text-decoration:underline}.site-footer{background:#e8e8e4;padding-top:60px}.footer-top{align-items:end;display:flex;gap:50px;justify-content:space-between}.site-footer .eyebrow{color:var(--signal)}.site-footer h2{font-size:clamp(34px,4vw,55px);font-weight:500;letter-spacing:-.045em;line-height:1.12;margin:20px 0 0}.contact-links{align-items:start;display:flex;flex-direction:column;gap:16px;padding-bottom:6px}.contact-link{align-items:center;border-bottom:1px solid var(--signal);color:var(--signal);display:flex;font-size:18px;gap:40px;letter-spacing:-.3px;padding-bottom:10px}.contact-links>a:not(.contact-link){font-size:12px;padding-block:6px}.contact-links>a:not(.contact-link):hover{text-decoration:underline}.footer-bottom{border-top:1px solid #cececa;color:var(--muted);display:flex;font-size:11px;gap:20px;justify-content:space-between;margin-top:55px;padding-block:23px}.footer-bottom>span>span{padding-inline:10px}.footer-bottom nav{display:flex;gap:25px}.footer-bottom a{padding-block:10px}.footer-bottom a:hover{color:var(--signal)}.skip-link{background:var(--ink);color:var(--paper);left:20px;padding:14px 22px;position:fixed;top:-100px;z-index:30}.skip-link:focus{top:12px}@media(min-width:1400px){.product-devices{min-height:470px}.phone-screen{width:250px}.watch-screen{top:190px;width:178px}}@media(max-width:1000px){.hero-bottom{gap:30px;grid-template-columns:1fr 180px}.featured-copy{padding:30px}.phone-screen{left:40%;width:195px}.watch-screen{left:7%;top:205px;width:135px}.about{gap:45px}.footer-top{gap:30px}.contact-link{font-size:16px;gap:20px}}@media(max-width:700px){html{scroll-padding-top:88px}.site-nav{height:72px}.site-nav>div{font-size:11px;gap:17px}.nav-cv{margin-left:0}.wordmark{font-size:30px}.hero{padding-top:48px}.hero>.eyebrow{font-size:11px;letter-spacing:1px}.separator{margin-inline:5px}.hero h1{font-size:clamp(41px,9.7vw,67px);letter-spacing:-.055em;line-height:1.08;margin:25px 0}.hero-bottom{gap:25px;grid-template-columns:1fr;padding-bottom:36px}.hero-intro>p{font-size:16px;line-height:1.8}.hero-actions{gap:15px;margin-top:23px}.hero-actions .inline-link{font-size:11px;gap:9px}.hero-note{align-items:center;border-left:0;display:flex;gap:15px;justify-self:start;padding-left:0}.signal-mark{font-size:28px;margin:0}.hero-note p{font-size:11px}.hero-note br{display:none}.hero-meta{grid-gap:8px;display:grid;font-size:10px;gap:8px;padding-block:20px}.projects{padding-block:60px}.section-heading{align-items:start;flex-direction:column;gap:20px}.about h2,.section-heading h2{font-size:35px}.section-heading>p{font-size:12px}.project-controls{gap:10px;margin:26px 0}.project-count{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.filter-bar{gap:6px}.filter-bar button{font-size:11px;padding-inline:12px}.filter-bar button>span{margin-left:8px}.featured-project,.project-grid{grid-template-columns:1fr}.featured-copy{padding:28px 24px}.featured-copy h3{font-size:32px;margin-top:20px}.product-figure{order:-1}.product-devices{min-height:340px}.phone-screen{left:46%;top:25px;width:180px}.watch-screen{border-radius:30px;border-width:6px;left:18%;top:155px;width:125px}.product-figure figcaption{font-size:8px;padding:13px 18px}.project-card{padding-top:25px}.project-topline{margin-bottom:20px}.project-card h3{font-size:25px}.project-card>.project-lead{font-size:17px}.approach{padding-block:55px}.principles{gap:28px;grid-template-columns:1fr;margin-top:30px}.principles h3{margin:12px 0 10px}.about{gap:25px;grid-template-columns:1fr;padding-block:60px}.about-copy{padding-top:0}.about-copy .about-lead{font-size:21px}.leadership-quote{margin-top:10px;padding-top:28px}.leadership-quote footer{flex-direction:column;gap:12px}.site-footer{padding-top:48px}.footer-top{align-items:start;flex-direction:column;gap:32px}.footer-bottom{flex-direction:column;margin-top:38px}.footer-bottom nav{gap:30px}.contact-link{font-size:18px}.contact-links{gap:10px}}@media(max-width:360px){.site-nav>div{gap:12px}.site-nav>div>a{font-size:10px}.hero-actions{align-items:start;flex-direction:column}.watch-screen{left:8%}.phone-screen{left:40%}}@media print{.filter-bar,.hero-actions,.project-count,.site-nav,.skip-link{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.about,.approach,.hero,.projects,.site-footer{padding:20px 0}.approach{background:#fff;color:#000}.approach .principles p,.approach .section-heading>p{color:#444}.hero h1{font-size:42px}.hero-bottom{padding-bottom:20px}.featured-project,.principles article,.project-card{break-inside:avoid;page-break-inside:avoid}.featured-copy{padding:20px}.product-devices{min-height:330px}.hero-meta{font-size:10px}.about{gap:25px}.site-footer{background:#fff}.site-footer h2{font-size:30px}}.hero{padding-top:54px}.hero-stage{grid-gap:6%;align-items:center;display:grid;gap:6%;grid-template-columns:1.15fr 1fr;padding-bottom:58px}.hero h1{font-size:clamp(52px,5.7vw,86px);line-height:1.04;margin:28px 0}.hero h1 .hero-line{color:var(--ink);display:block}.hero h1 .hero-line--signal{color:var(--signal)}.hero-intro>p{font-size:16px;line-height:1.8;max-width:450px}html[data-motion=on] .hero-line{animation:hero-line-in 1s cubic-bezier(.16,1,.3,1) both}html[data-motion=on] .hero-line--signal{animation-delay:.12s}@keyframes hero-line-in{0%{-webkit-clip-path:inset(100% 0 0);clip-path:inset(100% 0 0);opacity:0;transform:translateY(24px)}to{-webkit-clip-path:inset(0);clip-path:inset(0);opacity:1;transform:translateY(0)}}html[data-motion=off] .hero-line{animation:none}.button-primary{border-radius:3px}.button-primary>span{transition:transform .3s cubic-bezier(.2,.8,.2,1)}.button-primary:hover>span{transform:translate(3px,-3px)}.button-primary:active{transform:translateY(1px)}.project-card{transition:border-color .22s}.project-card:hover{border-color:var(--signal)}.project-card h3{transition:color .22s}.project-card:hover h3{color:var(--signal)}.project-expanded{animation:detail-arrive .3s ease-out}@keyframes detail-arrive{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.hero-stage{gap:5%;grid-template-columns:1.05fr 1fr}.hero h1{font-size:clamp(45px,6.2vw,65px)}.hero-intro>p{font-size:14px}}@media(max-width:700px){.hero{padding-top:35px}.hero-stage{gap:38px;grid-template-columns:1fr;padding-bottom:32px}.hero h1{font-size:clamp(46px,10.4vw,69px)}.hero-line--signal br{display:none}.hero-intro>p{font-size:15px}.hero-actions{gap:20px}.signal-loom__art svg{max-height:230px}.hero-meta{gap:9px}}@media(prefers-reduced-motion:reduce){.hero-line,.project-expanded{animation:none!important}.button-primary>span,.project-card,.project-card h3{transition:none}}.ui-icon{flex-shrink:0;vertical-align:middle}.filter-bar button{align-items:center;display:inline-flex;gap:8px}.filter-bar button>span{margin-left:4px}@media(max-width:380px){.filter-bar button{gap:5px;padding-inline:9px}.filter-bar .ui-icon{height:13px;width:13px}}.project-inline-tags{color:var(--muted);display:flex;flex-wrap:wrap;font:10px/1.7 ui-monospace,monospace;gap:7px 14px;list-style:none;margin:0;padding:0}.project-inline-tags li+li:before{color:var(--signal);content:"·";margin-right:14px}.project-card .project-links{margin-top:12px}.project-card .project-bottom{padding-top:20px}.project-links .inline-link{gap:10px}.project-links .inline-link>svg{margin-right:0!important}.project-links .inline-link>span[aria-hidden]{margin-left:8px}.device-badges{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.device-badges>span{align-items:center;border:1px solid #bdbcb6;border-radius:20px;display:inline-flex;gap:5px;padding:3px 7px;white-space:nowrap}.device-badges svg{fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;height:15px;width:12px}@media screen and (min-width:701px){.approach .section-heading{align-items:end;display:grid;grid-template-columns:1.15fr 1fr}.approach .section-heading>p{justify-self:end;max-width:44ch}}
/*# sourceMappingURL=main.53c9b6b7.css.map*/