.arrow-link-module__0LpfSW__root{color:var(--text-secondary);align-items:center;gap:0;text-decoration:none;display:inline-flex}.arrow-link-module__0LpfSW__label{padding-block-end:.15em;position:relative}.arrow-link-module__0LpfSW__label:before{content:"";background-color:color-mix(in srgb, currentColor 28%, transparent);block-size:1px;position:absolute;inset-block-end:0;inset-inline:0}.arrow-link-module__0LpfSW__label:after{content:"";background-color:var(--arrow-link-active,var(--accent));transform-origin:0;block-size:1px;transition:transform .28s ease-out;position:absolute;inset-block-end:0;inset-inline:0;transform:scaleX(0)}.arrow-link-module__0LpfSW__arrow{color:inherit;opacity:0;flex:none;transition:opacity .22s ease-out 90ms,translate .22s ease-out 90ms,color .22s ease-out 90ms;translate:-2px 2px}@media (hover:hover){.arrow-link-module__0LpfSW__root:hover .arrow-link-module__0LpfSW__label:after{transform:scaleX(1)}.arrow-link-module__0LpfSW__root:hover .arrow-link-module__0LpfSW__arrow{color:var(--arrow-link-active,var(--accent));opacity:1;translate:0}}.arrow-link-module__0LpfSW__root:focus-visible .arrow-link-module__0LpfSW__label:after{transform:scaleX(1)}.arrow-link-module__0LpfSW__root:focus-visible .arrow-link-module__0LpfSW__arrow{color:var(--arrow-link-active,var(--accent));opacity:1;translate:0}.arrow-link-module__0LpfSW__plain{color:var(--text-primary);--arrow-link-active:currentColor}@media (prefers-reduced-motion:reduce){.arrow-link-module__0LpfSW__label:after,.arrow-link-module__0LpfSW__arrow{transition:none}.arrow-link-module__0LpfSW__arrow{translate:0}}
.about-preview-module__F8c5kG__root{align-items:flex-start;gap:var(--space-2xs);border-block-start:var(--border-hairline) solid var(--separator);flex-direction:column;padding-block-start:var(--space-xl);display:flex}.about-preview-module__F8c5kG__label{font-size:var(--text-xs);font-weight:var(--weight-regular);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.about-preview-module__F8c5kG__body{max-inline-size:var(--measure-prose);color:var(--text-secondary);text-wrap:pretty}.about-preview-module__F8c5kG__link{font-size:var(--text-sm);margin-block-start:var(--space-3xs)}
.case-study-header-module__NKVLPG__root{gap:var(--space-sm);max-inline-size:var(--width-text);border-block-end:var(--border-hairline) solid var(--separator);flex-direction:column;margin-inline:auto;padding-block-end:var(--space-lg);display:flex}.case-study-header-module__NKVLPG__back{font-size:var(--text-xs);align-self:flex-start}.case-study-header-module__NKVLPG__titleRow{justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.case-study-header-module__NKVLPG__title{font-size:var(--text-2xl);font-weight:var(--weight-medium);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--text-primary);text-wrap:balance}.case-study-header-module__NKVLPG__year{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;flex:none}.case-study-header-module__NKVLPG__summary{color:var(--text-secondary);text-wrap:pretty}.case-study-header-module__NKVLPG__actions{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.case-study-header-module__NKVLPG__action{align-items:center;gap:var(--space-3xs);min-block-size:44px;color:var(--text-primary);font-size:var(--text-sm);text-decoration:none;display:inline-flex}.case-study-header-module__NKVLPG__actionLabel{padding-block-end:.15em;position:relative}.case-study-header-module__NKVLPG__actionLabel:before,.case-study-header-module__NKVLPG__actionLabel:after{content:"";pointer-events:none;block-size:1px;position:absolute;inset-block-end:0;inset-inline:0}.case-study-header-module__NKVLPG__actionLabel:before{background-color:color-mix(in srgb, currentColor 28%, transparent)}.case-study-header-module__NKVLPG__actionLabel:after{transform-origin:0;background-color:currentColor;transition:transform .28s ease-out;transform:scaleX(0)}.case-study-header-module__NKVLPG__actionArrow{color:currentColor;opacity:0;flex:none;transition:opacity .22s ease-out 90ms,translate .22s ease-out 90ms;translate:-2px 2px}@media (hover:hover) and (pointer:fine){.case-study-header-module__NKVLPG__action:hover .case-study-header-module__NKVLPG__actionLabel:after{transform:scaleX(1)}.case-study-header-module__NKVLPG__action:hover .case-study-header-module__NKVLPG__actionArrow{opacity:1;translate:0}}.case-study-header-module__NKVLPG__action:focus-visible .case-study-header-module__NKVLPG__actionLabel:after{transform:scaleX(1)}.case-study-header-module__NKVLPG__action:focus-visible .case-study-header-module__NKVLPG__actionArrow{opacity:1;translate:0}@media (prefers-reduced-motion:reduce){.case-study-header-module__NKVLPG__actionLabel:after,.case-study-header-module__NKVLPG__actionArrow{transition:none}.case-study-header-module__NKVLPG__actionArrow{translate:0}}.case-study-header-module__NKVLPG__meta{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));margin:0;margin-block-start:var(--space-2xs);display:grid}.case-study-header-module__NKVLPG__metaItem{gap:var(--space-3xs);flex-direction:column;min-inline-size:0;display:flex}.case-study-header-module__NKVLPG__metaLabel{font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.case-study-header-module__NKVLPG__metaValue{font-size:var(--text-sm);color:var(--text-secondary);text-wrap:pretty;margin:0}
.contact-ending-module__yw7vpG__root{align-items:flex-start;gap:var(--space-2xs);border-block-start:var(--border-hairline) solid var(--separator);flex-direction:column;padding-block-start:var(--space-xl);display:flex}.contact-ending-module__yw7vpG__label{font-size:var(--text-xs);font-weight:var(--weight-regular);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.contact-ending-module__yw7vpG__invitation{max-inline-size:var(--measure-prose);color:var(--text-secondary);text-wrap:pretty}.contact-ending-module__yw7vpG__details{align-items:center;gap:var(--space-2xs) var(--space-md);flex-wrap:wrap;margin-block-start:var(--space-3xs);display:flex}.contact-ending-module__yw7vpG__email{min-block-size:1.5rem;font-size:var(--text-sm);line-height:var(--leading-snug);cursor:pointer;color:var(--text-primary);align-items:center;text-decoration:none;display:inline-flex;position:relative}.contact-ending-module__yw7vpG__email:before,.contact-ending-module__yw7vpG__email:after{content:"";pointer-events:none;block-size:1px;position:absolute;inset-block-end:0;inset-inline:0}.contact-ending-module__yw7vpG__email:before{background-color:var(--separator)}.contact-ending-module__yw7vpG__email:after{transform-origin:0;background-color:currentColor;transition:transform .22s cubic-bezier(.22,1,.36,1);transform:scaleX(0)}.contact-ending-module__yw7vpG__email:hover:after,.contact-ending-module__yw7vpG__email:focus-visible:after{transform:scaleX(1)}.contact-ending-module__yw7vpG__links{align-items:center;gap:var(--space-3xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.contact-ending-module__yw7vpG__links>li{align-items:center;display:flex}.contact-ending-module__yw7vpG__link{block-size:2.75rem;inline-size:2.75rem;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;text-decoration:none;transition:color .15s;display:inline-flex}.contact-ending-module__yw7vpG__link:hover{color:var(--accent)}.contact-ending-module__yw7vpG__link:hover .contact-ending-module__yw7vpG__linkIcon,.contact-ending-module__yw7vpG__link:focus-visible .contact-ending-module__yw7vpG__linkIcon{transform:translateY(-2px)scale(1.14)}.contact-ending-module__yw7vpG__link:active .contact-ending-module__yw7vpG__linkIcon{transform:translate(0,0)scale(.94)}.contact-ending-module__yw7vpG__email:focus-visible,.contact-ending-module__yw7vpG__link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-xs)}.contact-ending-module__yw7vpG__linkIcon{will-change:transform;pointer-events:none;flex:none;block-size:1rem;inline-size:1rem;transition:transform .18s cubic-bezier(.22,1,.36,1);transform:translate(0,0)scale(1)}@media (prefers-reduced-motion:reduce){.contact-ending-module__yw7vpG__link,.contact-ending-module__yw7vpG__linkIcon,.contact-ending-module__yw7vpG__email:after{transition:none}}
.case-study-media-module__GU8qjq__figure{gap:var(--space-2xs);flex-direction:column;margin:0;display:flex}.case-study-media-module__GU8qjq__frame{background-color:var(--surface-sunken);border-radius:var(--radius-md);position:relative;overflow:hidden}.case-study-media-module__GU8qjq__image{block-size:auto;inline-size:100%}.case-study-media-module__GU8qjq__video{object-fit:cover;block-size:100%;inline-size:100%;display:block}.case-study-media-module__GU8qjq__caption{color:var(--text-muted);font-size:var(--text-xs)}
.color-picker-module__1g-TaW__root{gap:var(--space-2xs);flex-direction:column;display:flex}.color-picker-module__1g-TaW__field{border-radius:var(--radius-sm);cursor:crosshair;touch-action:none;background-image:linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, var(--picker-hue,#4f7fe0));block-size:6.5rem;box-shadow:inset 0 0 0 var(--border-hairline) var(--dock-border);position:relative}.color-picker-module__1g-TaW__fieldThumb{border-radius:var(--radius-full);pointer-events:none;border:2px solid #fff;block-size:.75rem;inline-size:.75rem;position:absolute;translate:-50% -50%;box-shadow:0 0 0 1px #00000059,0 1px 3px #0006}.color-picker-module__1g-TaW__hue{display:block}.color-picker-module__1g-TaW__hueInput{appearance:none;border-radius:var(--radius-full);cursor:pointer;block-size:.75rem;inline-size:100%;box-shadow:inset 0 0 0 var(--border-hairline) var(--dock-border);background:linear-gradient(90deg,red 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);margin:0}.color-picker-module__1g-TaW__hueInput::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-full);cursor:pointer;background:0 0;border:2px solid #fff;block-size:.75rem;inline-size:.75rem;box-shadow:0 0 0 1px #00000059,0 1px 3px #0006}.color-picker-module__1g-TaW__hueInput::-moz-range-thumb{border-radius:var(--radius-full);cursor:pointer;background:0 0;border:2px solid #fff;block-size:.75rem;inline-size:.75rem;box-shadow:0 0 0 1px #00000059,0 1px 3px #0006}.color-picker-module__1g-TaW__row{align-items:center;gap:var(--space-2xs);display:flex}.color-picker-module__1g-TaW__preview{border-radius:var(--radius-sm);block-size:1.25rem;inline-size:1.25rem;box-shadow:inset 0 0 0 var(--border-hairline) var(--dock-border);flex:none}.color-picker-module__1g-TaW__hex{min-inline-size:0;padding:var(--space-3xs) var(--space-2xs);color:var(--text-primary);border:var(--border-hairline) solid var(--dock-border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-transform:uppercase;background-color:#0000;flex:auto}.color-picker-module__1g-TaW__reset{padding:var(--space-3xs) var(--space-2xs);color:var(--text-secondary);border:var(--border-hairline) solid var(--dock-border);border-radius:var(--radius-sm);font-size:var(--text-2xs);cursor:pointer;transition:var(--transition-colour);background-color:#0000;flex:none}.color-picker-module__1g-TaW__reset:hover{color:var(--text-primary)}.color-picker-module__1g-TaW__presets{gap:var(--space-3xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.color-picker-module__1g-TaW__swatch{border-radius:var(--radius-sm);cursor:pointer;block-size:1.125rem;inline-size:1.125rem;box-shadow:inset 0 0 0 var(--border-hairline) var(--dock-border);transition:var(--transition-transform);border:0;padding:0}@media (hover:hover){.color-picker-module__1g-TaW__swatch:hover{transform:scale(1.12)}}.color-picker-module__1g-TaW__swatch[aria-pressed=true]{box-shadow:inset 0 0 0 var(--border-hairline) var(--dock-border), 0 0 0 2px var(--surface-page), 0 0 0 3px var(--text-primary)}@media (prefers-reduced-motion:reduce){.color-picker-module__1g-TaW__swatch,.color-picker-module__1g-TaW__reset{transition:none}.color-picker-module__1g-TaW__swatch:hover{transform:none}}
.case-study-capture-module__y2fooW__root{gap:var(--space-xs);flex-direction:column;margin:0;display:flex}.case-study-capture-module__y2fooW__frame{isolation:isolate;background:radial-gradient(circle at 50% 46%, var(--accent-subtle), transparent 36%), var(--surface-sunken);border-radius:var(--radius-lg);min-block-size:18rem;box-shadow:0 0 0 var(--border-hairline) color-mix(in srgb, var(--text-primary) 11%, transparent), 0 18px 42px -36px color-mix(in srgb, var(--text-primary) 30%, transparent);place-items:center;display:grid;position:relative;overflow:hidden}.case-study-capture-module__y2fooW__grid{z-index:var(--z-below);opacity:.42;background-image:linear-gradient(to right, color-mix(in srgb, var(--text-primary) 6%, transparent) var(--border-hairline), transparent var(--border-hairline)), linear-gradient(to bottom, color-mix(in srgb, var(--text-primary) 6%, transparent) var(--border-hairline), transparent var(--border-hairline));background-size:2rem 2rem;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000 0%,#0000 72%);mask-image:radial-gradient(circle,#000 0%,#0000 72%)}.case-study-capture-module__y2fooW__prompt{max-inline-size:24rem;padding:var(--space-md);text-align:center;flex-direction:column;align-items:center;display:flex}.case-study-capture-module__y2fooW__iconWrap{block-size:2.75rem;inline-size:2.75rem;color:var(--text-primary);background-color:var(--surface-raised);border-radius:var(--radius-full);box-shadow:0 0 0 var(--border-hairline) color-mix(in srgb, var(--text-primary) 14%, transparent), var(--shadow-sm);place-items:center;margin-block-end:var(--space-xs);display:grid}.case-study-capture-module__y2fooW__eyebrow{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.case-study-capture-module__y2fooW__frameTitle{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--weight-medium);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);text-wrap:balance;margin-block-start:var(--space-2xs)}.case-study-capture-module__y2fooW__corner{opacity:.56;block-size:1.25rem;inline-size:1.25rem;position:absolute}.case-study-capture-module__y2fooW__corner:nth-of-type(2){border-block-start:var(--border-hairline) solid var(--text-muted);border-inline-start:var(--border-hairline) solid var(--text-muted);inset-block-start:var(--space-sm);inset-inline-start:var(--space-sm)}.case-study-capture-module__y2fooW__corner:nth-of-type(3){border-block-start:var(--border-hairline) solid var(--text-muted);border-inline-end:var(--border-hairline) solid var(--text-muted);inset-block-start:var(--space-sm);inset-inline-end:var(--space-sm)}.case-study-capture-module__y2fooW__corner:nth-of-type(4){border-block-end:var(--border-hairline) solid var(--text-muted);border-inline-end:var(--border-hairline) solid var(--text-muted);inset-block-end:var(--space-sm);inset-inline-end:var(--space-sm)}.case-study-capture-module__y2fooW__corner:nth-of-type(5){border-block-end:var(--border-hairline) solid var(--text-muted);border-inline-start:var(--border-hairline) solid var(--text-muted);inset-block-end:var(--space-sm);inset-inline-start:var(--space-sm)}.case-study-capture-module__y2fooW__caption{align-items:start;gap:var(--space-md);grid-template-columns:minmax(0,1fr) auto;display:grid}.case-study-capture-module__y2fooW__description{max-inline-size:36rem;color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-normal);text-wrap:pretty}.case-study-capture-module__y2fooW__requirements{justify-content:flex-end;gap:var(--space-3xs);flex-wrap:wrap;max-inline-size:21rem;margin:0;padding:0;list-style:none;display:flex}.case-study-capture-module__y2fooW__requirements li{padding:.2rem var(--space-2xs);color:var(--text-muted);background-color:var(--surface-sunken);border-radius:var(--radius-full);font-family:var(--font-mono);font-size:var(--text-2xs);white-space:nowrap}@media (max-width:42rem){.case-study-capture-module__y2fooW__frame{min-block-size:13rem}.case-study-capture-module__y2fooW__caption{gap:var(--space-xs);grid-template-columns:1fr}.case-study-capture-module__y2fooW__requirements{justify-content:flex-start}}
.editable-phrase-module__CQpo0q__root{--figma-blue:#0d99ff;--editor-panel:#2c2c2c;--editor-control:#383838;--editor-control-hover:#454545;--editor-line:#ffffff1f;vertical-align:baseline;isolation:isolate;max-inline-size:100%;display:inline-block;position:relative}.editable-phrase-module__CQpo0q__textBox{min-block-size:1.875rem;min-inline-size:4.5rem;max-inline-size:100%;line-height:var(--leading-snug);white-space:normal;overflow-wrap:break-word;cursor:text;outline:none;padding-inline:2px;display:inline-block;overflow:hidden}.editable-phrase-module__CQpo0q__textBox:focus-visible{outline:none}.editable-phrase-module__CQpo0q__selectionFrame{z-index:2;border:1px solid color-mix(in srgb, var(--figma-blue) 58%, transparent);pointer-events:none;position:absolute;inset:-3px}.editable-phrase-module__CQpo0q__selected .editable-phrase-module__CQpo0q__selectionFrame,.editable-phrase-module__CQpo0q__root:focus-within .editable-phrase-module__CQpo0q__selectionFrame{border-color:var(--figma-blue)}.editable-phrase-module__CQpo0q__handle{background:var(--surface-page);border:1px solid var(--figma-blue);opacity:.76;border-radius:1px;block-size:7px;inline-size:7px;position:absolute}.editable-phrase-module__CQpo0q__selected .editable-phrase-module__CQpo0q__handle,.editable-phrase-module__CQpo0q__root:focus-within .editable-phrase-module__CQpo0q__handle{opacity:1}.editable-phrase-module__CQpo0q__handle[data-position=nw]{inset-block-start:-4px;inset-inline-start:-4px}.editable-phrase-module__CQpo0q__handle[data-position=ne]{inset-block-start:-4px;inset-inline-end:-4px}.editable-phrase-module__CQpo0q__handle[data-position=sw]{inset-block-end:-4px;inset-inline-start:-4px}.editable-phrase-module__CQpo0q__handle[data-position=se]{inset-block-end:-4px;inset-inline-end:-4px}.editable-phrase-module__CQpo0q__resizeHandle{pointer-events:auto;touch-action:none}.editable-phrase-module__CQpo0q__resizeHandle[data-position=nw],.editable-phrase-module__CQpo0q__resizeHandle[data-position=se]{cursor:nwse-resize}.editable-phrase-module__CQpo0q__resizeHandle[data-position=ne],.editable-phrase-module__CQpo0q__resizeHandle[data-position=sw]{cursor:nesw-resize}.editable-phrase-module__CQpo0q__resizeHandle:after{content:"";position:absolute;inset:-12px}.editable-phrase-module__CQpo0q__sizeLabel{color:#fff;font-family:var(--font-sans);white-space:nowrap;background:var(--figma-blue);opacity:0;pointer-events:none;border-radius:3px;padding:3px 6px;font-size:10px;font-weight:500;line-height:1;position:absolute;inset-block-start:calc(100% + 8px);inset-inline-start:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000002e}.editable-phrase-module__CQpo0q__selected .editable-phrase-module__CQpo0q__sizeLabel,.editable-phrase-module__CQpo0q__root:focus-within .editable-phrase-module__CQpo0q__sizeLabel{opacity:1}.editable-phrase-module__CQpo0q__toolbar{z-index:5;color:#f5f5f5;min-block-size:38px;font-family:var(--font-sans);white-space:nowrap;background:var(--editor-panel);border:1px solid var(--editor-line);opacity:0;transform-origin:bottom;visibility:hidden;pointer-events:none;border-radius:8px;align-items:center;gap:3px;padding:4px;font-size:12px;line-height:1;transition:opacity .12s ease-out,transform .15s ease-out,visibility 0s linear .15s;display:flex;position:absolute;inset-block-end:calc(100% + 14px);inset-inline-start:50%;transform:translate(-50%,4px)scale(.98);box-shadow:0 14px 36px #0000004d,0 2px 6px #0003}.editable-phrase-module__CQpo0q__toolbar:after{content:"";background:var(--editor-panel);border-inline-end:1px solid var(--editor-line);border-block-end:1px solid var(--editor-line);block-size:8px;inline-size:8px;position:absolute;inset-block-start:100%;inset-inline-start:50%;transform:translate(-50%,-4px)rotate(45deg)}.editable-phrase-module__CQpo0q__selected .editable-phrase-module__CQpo0q__toolbar,.editable-phrase-module__CQpo0q__root:focus-within .editable-phrase-module__CQpo0q__toolbar{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(-50%)scale(1)}.editable-phrase-module__CQpo0q__objectType{block-size:28px;inline-size:28px;color:var(--figma-blue);background:color-mix(in srgb, var(--figma-blue) 10%, transparent);border-radius:5px;flex:none;place-items:center;font-size:13px;font-weight:650;display:grid}.editable-phrase-module__CQpo0q__select,.editable-phrase-module__CQpo0q__numberInput{min-block-size:28px;color:inherit;font:inherit;background:var(--editor-control);border:1px solid #0000;border-radius:5px;outline:none;padding-block:0}.editable-phrase-module__CQpo0q__select{cursor:pointer;inline-size:78px;padding-inline:8px 4px}.editable-phrase-module__CQpo0q__numberInput{text-align:center;font-variant-numeric:tabular-nums;inline-size:46px;padding-inline:5px}.editable-phrase-module__CQpo0q__separator{background:var(--editor-line);flex:none;block-size:20px;inline-size:1px;margin-inline:3px}.editable-phrase-module__CQpo0q__toolButton,.editable-phrase-module__CQpo0q__resetButton,.editable-phrase-module__CQpo0q__colorTrigger{min-block-size:28px;min-inline-size:28px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;padding:0;display:inline-grid}.editable-phrase-module__CQpo0q__toolButton[data-active=true]{color:#fff;background:var(--figma-blue)}.editable-phrase-module__CQpo0q__underline{text-underline-offset:2px;text-decoration:underline}.editable-phrase-module__CQpo0q__resetButton{color:#c9c9c9;min-inline-size:auto;padding-inline:8px}.editable-phrase-module__CQpo0q__select:focus-visible,.editable-phrase-module__CQpo0q__numberInput:focus-visible,.editable-phrase-module__CQpo0q__toolButton:focus-visible,.editable-phrase-module__CQpo0q__resetButton:focus-visible,.editable-phrase-module__CQpo0q__colorTrigger:focus-visible{outline-offset:1px;outline:2px solid #fff}.editable-phrase-module__CQpo0q__colorControl{display:inline-flex;position:relative}.editable-phrase-module__CQpo0q__colorSwatch{border:1px solid #ffffff57;border-radius:4px;block-size:16px;inline-size:16px;box-shadow:inset 0 0 0 1px #0000001f}.editable-phrase-module__CQpo0q__colorPopover{z-index:6;inline-size:min(17rem,100vw - 2rem);color:var(--text-primary);white-space:normal;background:var(--dock-surface-opaque);border:1px solid var(--dock-border);cursor:default;pointer-events:auto;border-radius:9px;padding:10px;position:absolute;inset-block-start:calc(100% + 10px);inset-inline-end:0;box-shadow:0 16px 44px #0000005c}@media (hover:hover) and (pointer:fine){.editable-phrase-module__CQpo0q__resizeHandle:hover{background:var(--figma-blue);box-shadow:0 0 0 3px color-mix(in srgb, var(--figma-blue) 18%, transparent)}.editable-phrase-module__CQpo0q__select:hover,.editable-phrase-module__CQpo0q__numberInput:hover,.editable-phrase-module__CQpo0q__toolButton:not([data-active=true]):hover,.editable-phrase-module__CQpo0q__resetButton:hover,.editable-phrase-module__CQpo0q__colorTrigger:hover,.editable-phrase-module__CQpo0q__colorTrigger[aria-expanded=true]{background:var(--editor-control-hover)}}@media (max-width:42rem){.editable-phrase-module__CQpo0q__toolbar{overscroll-behavior-inline:contain;max-inline-size:calc(100vw - 2rem);inset-inline-start:0;overflow-x:auto;transform:translateY(4px)scale(.98)}.editable-phrase-module__CQpo0q__selected .editable-phrase-module__CQpo0q__toolbar,.editable-phrase-module__CQpo0q__root:focus-within .editable-phrase-module__CQpo0q__toolbar{transform:translateY(0)scale(1)}.editable-phrase-module__CQpo0q__toolbar:after{inset-inline-start:1.5rem}.editable-phrase-module__CQpo0q__select,.editable-phrase-module__CQpo0q__numberInput{font-size:16px}}@media (prefers-reduced-motion:reduce){.editable-phrase-module__CQpo0q__toolbar,.editable-phrase-module__CQpo0q__sizeLabel{transition:none}}
.expandable-diagram-module__O2-nqq__root{display:block}.expandable-diagram-module__O2-nqq__inline{gap:var(--space-2xs);flex-direction:column;margin:0;display:flex}.expandable-diagram-module__O2-nqq__caption{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);display:flex}.expandable-diagram-module__O2-nqq__captionText{gap:var(--space-3xs);flex-direction:column;min-inline-size:0;display:flex}.expandable-diagram-module__O2-nqq__title{font-size:var(--text-sm);color:var(--text-primary)}.expandable-diagram-module__O2-nqq__description{font-size:var(--text-xs);color:var(--text-muted);text-wrap:pretty}.expandable-diagram-module__O2-nqq__trigger{block-size:1.75rem;inline-size:1.75rem;color:var(--text-secondary);border:var(--border-hairline) solid var(--separator);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-colour);background-color:#0000;flex:none;place-items:center;padding:0;display:inline-grid}.expandable-diagram-module__O2-nqq__icon{flex:none}.expandable-diagram-module__O2-nqq__trigger:hover{color:var(--accent);border-color:var(--accent-line)}.expandable-diagram-module__O2-nqq__overlay{z-index:var(--z-overlay);padding:var(--space-md);place-items:center;display:grid;position:fixed;inset:0}.expandable-diagram-module__O2-nqq__backdrop{cursor:default;background-color:color-mix(in srgb, var(--surface-inset) 78%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:expandable-diagram-module__O2-nqq__canvas-backdrop var(--duration-fast) var(--ease-standard);border:0;padding:0;position:absolute;inset:0}.expandable-diagram-module__O2-nqq__canvas{gap:var(--space-sm);max-block-size:100%;inline-size:min(76rem,100%);padding:var(--space-sm);background-color:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);animation:expandable-diagram-module__O2-nqq__canvas-open var(--duration-medium) var(--ease-entrance);flex-direction:column;display:flex;position:relative;overflow:auto}.expandable-diagram-module__O2-nqq__canvas:focus{outline:none}.expandable-diagram-module__O2-nqq__canvasBar{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.expandable-diagram-module__O2-nqq__canvasTitle{font-size:var(--text-sm);color:var(--text-primary)}.expandable-diagram-module__O2-nqq__close{block-size:1.75rem;inline-size:1.75rem;color:var(--text-secondary);border:var(--border-hairline) solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-colour);background-color:#0000;flex:none;place-items:center;padding:0;display:inline-grid}.expandable-diagram-module__O2-nqq__close:hover{color:var(--text-primary)}.expandable-diagram-module__O2-nqq__canvasFigure{min-block-size:0;position:relative}.expandable-diagram-module__O2-nqq__selection{border:1px solid var(--accent-line);border-radius:var(--radius-md);pointer-events:none;position:absolute;inset:0}.expandable-diagram-module__O2-nqq__handle{background-color:var(--surface-page);border:1px solid var(--accent);border-radius:1px;block-size:6px;inline-size:6px;position:absolute}.expandable-diagram-module__O2-nqq__handle:first-child{inset-block-start:-4px;inset-inline-start:-4px}.expandable-diagram-module__O2-nqq__handle:nth-child(2){inset-block-start:-4px;inset-inline-end:-4px}.expandable-diagram-module__O2-nqq__handle:nth-child(3){inset-block-end:-4px;inset-inline-end:-4px}.expandable-diagram-module__O2-nqq__handle:nth-child(4){inset-block-end:-4px;inset-inline-start:-4px}@keyframes expandable-diagram-module__O2-nqq__canvas-backdrop{0%{opacity:0}to{opacity:1}}@keyframes expandable-diagram-module__O2-nqq__canvas-open{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.expandable-diagram-module__O2-nqq__backdrop,.expandable-diagram-module__O2-nqq__canvas{animation:none}.expandable-diagram-module__O2-nqq__trigger,.expandable-diagram-module__O2-nqq__close{transition:none}}
.introduction-module__xr_h4q__root{gap:var(--space-md);flex-direction:column;display:flex}.introduction-module__xr_h4q__logo{justify-content:flex-start;display:flex}.introduction-module__xr_h4q__logoImage{border-radius:var(--radius-lg);object-fit:cover;block-size:4rem;inline-size:4rem}.introduction-module__xr_h4q__columns{gap:var(--space-sm);grid-template-columns:minmax(0,1fr);display:grid}@media (min-width:40rem){.introduction-module__xr_h4q__columns{gap:var(--space-lg);grid-template-columns:7.5rem minmax(0,1fr);align-items:start}}.introduction-module__xr_h4q__identity{gap:var(--space-3xs);flex-direction:column;display:flex}.introduction-module__xr_h4q__name{font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:var(--tracking-normal);line-height:var(--leading-snug);color:var(--text-primary)}.introduction-module__xr_h4q__role{font-size:var(--text-xs);line-height:var(--leading-snug);color:var(--text-muted);text-wrap:balance}.introduction-module__xr_h4q__availability{align-items:center;gap:var(--space-3xs);font-size:var(--text-xs);color:var(--text-secondary);margin-block-start:var(--space-3xs);display:flex}.introduction-module__xr_h4q__availabilityDot{border-radius:var(--radius-full);background-color:var(--accent);block-size:.375rem;inline-size:.375rem;animation:introduction-module__xr_h4q__availability-pulse 2.6s var(--ease-standard) infinite;flex:none}@keyframes introduction-module__xr_h4q__availability-pulse{0%,to{opacity:1}50%{opacity:.45}}.introduction-module__xr_h4q__body{gap:var(--space-sm);flex-direction:column;display:flex}.introduction-module__xr_h4q__lead{font-size:var(--text-2xl);font-weight:var(--weight-regular);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--text-primary);text-wrap:pretty}.introduction-module__xr_h4q__support{font-size:var(--text-body);line-height:var(--leading-normal);color:var(--text-secondary);text-wrap:pretty}@media (prefers-reduced-motion:reduce){.introduction-module__xr_h4q__availabilityDot{animation:none}}
.case-study-section-module__fnwJ6a__root{grid-template-columns:[full-start] minmax(0, 1fr) [text-start] min(var(--width-text), 100%) [text-end] minmax(0, 1fr) [full-end];row-gap:var(--space-sm);padding-block:var(--space-2xl);scroll-margin-block-start:var(--space-xl);display:grid}.case-study-section-module__fnwJ6a__root>*{grid-column:text}.case-study-section-module__fnwJ6a__title{font-size:var(--text-xl);font-weight:var(--weight-medium);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--text-primary);text-wrap:balance}.case-study-section-module__fnwJ6a__observation{font-size:var(--text-lg);line-height:var(--leading-snug);color:var(--text-primary);text-wrap:pretty}.case-study-section-module__fnwJ6a__prose{color:var(--text-secondary);text-wrap:pretty}.case-study-section-module__fnwJ6a__wide{inline-size:min(var(--width-media), 100%);margin-inline:auto;margin-block:var(--space-sm);grid-column:full}.case-study-section-module__fnwJ6a__quote{border-inline-start:2px solid var(--accent-line);color:var(--text-primary);margin:0;padding-inline-start:var(--space-sm)}.case-study-section-module__fnwJ6a__attribution{font-size:var(--text-xs);color:var(--text-muted);margin-block-start:var(--space-2xs);font-style:normal;display:block}.case-study-section-module__fnwJ6a__list{gap:var(--space-2xs);color:var(--text-secondary);flex-direction:column;display:flex}.case-study-section-module__fnwJ6a__orderedList{padding-inline-start:var(--space-md);list-style:decimal}.case-study-section-module__fnwJ6a__unorderedList{padding-inline-start:var(--space-md);list-style:outside}
.project-row-module__WiVOFq__root{isolation:isolate;box-sizing:border-box;inline-size:calc(100% + (2 * var(--space-2xs)));margin-inline:calc(-1 * var(--space-2xs));position:relative}.project-row-module__WiVOFq__row{column-gap:var(--space-md);box-sizing:border-box;min-block-size:5.5rem;inline-size:100%;padding-block:var(--space-sm);padding-inline:var(--space-2xs);border-radius:var(--radius-md);color:inherit;background-color:#0000;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;text-decoration:none;display:grid}.project-row-module__WiVOFq__preview{aspect-ratio:16/10;flex:none;inline-size:clamp(4.5rem,12vw,5.75rem);margin-block-start:.1rem;position:relative}.project-row-module__WiVOFq__frame{border-radius:var(--radius-sm);background-color:var(--surface-sunken);transform-origin:50%;will-change:transform;border:0;transition:transform .3s cubic-bezier(.34,1.4,.64,1);position:absolute;inset:0;overflow:hidden}.project-row-module__WiVOFq__frameBack,.project-row-module__WiVOFq__frameMid{background-color:var(--border-strong);box-shadow:0 .2rem .6rem #0000002e}.project-row-module__WiVOFq__frameBack{z-index:0;transform:translate(2px,-2px)rotate(8deg)}.project-row-module__WiVOFq__frameMid{z-index:1;transform:translate(-2px,-2px)rotate(-5deg)}.project-row-module__WiVOFq__frameFront{z-index:2;transform:translate(0,0);box-shadow:0 .35rem 1rem #0000001a}.project-row-module__WiVOFq__cover{object-fit:cover;background-color:var(--surface-sunken);block-size:100%;inline-size:100%;display:block}.project-row-module__WiVOFq__body{gap:var(--space-3xs);flex-direction:column;min-inline-size:0;transition:transform .22s cubic-bezier(.22,1,.36,1);display:flex}.project-row-module__WiVOFq__title{font-size:var(--text-md);font-weight:var(--weight-medium);line-height:var(--leading-snug);color:var(--text-primary)}.project-row-module__WiVOFq__link{cursor:pointer}.project-row-module__WiVOFq__link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-md)}.project-row-module__WiVOFq__summary{font-size:var(--text-body);line-height:var(--leading-normal);color:var(--text-secondary);text-wrap:pretty}.project-row-module__WiVOFq__year{font-size:var(--text-xs);line-height:var(--leading-snug);color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:end;padding-block-start:.15em}.project-row-module__WiVOFq__status{background-color:var(--surface-sunken);min-inline-size:2.55rem;color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-snug);letter-spacing:var(--tracking-wide);text-align:center;border-radius:999px;align-self:start;padding:.18rem .45rem}.project-row-module__WiVOFq__root[data-disabled] .project-row-module__WiVOFq__row{opacity:.52}.project-row-module__WiVOFq__root[data-disabled] .project-row-module__WiVOFq__frame{will-change:auto}@media (hover:hover) and (pointer:fine){.project-row-module__WiVOFq__root[data-interactive]:hover .project-row-module__WiVOFq__body{transform:translate(4px)}.project-row-module__WiVOFq__root[data-interactive]:hover .project-row-module__WiVOFq__frameBack{transform:translate(13px,-12px)rotate(13deg)}.project-row-module__WiVOFq__root[data-interactive]:hover .project-row-module__WiVOFq__frameMid{transform:translate(-12px,-15px)rotate(-10.5deg)}.project-row-module__WiVOFq__root[data-interactive]:hover .project-row-module__WiVOFq__frameFront{transform:translateY(7px)rotate(4deg)}}.project-row-module__WiVOFq__root[data-interactive]:focus-within .project-row-module__WiVOFq__body{transform:translate(4px)}.project-row-module__WiVOFq__root[data-interactive]:focus-within .project-row-module__WiVOFq__frameBack{transform:translate(13px,-12px)rotate(13deg)}.project-row-module__WiVOFq__root[data-interactive]:focus-within .project-row-module__WiVOFq__frameMid{transform:translate(-12px,-15px)rotate(-10.5deg)}.project-row-module__WiVOFq__root[data-interactive]:focus-within .project-row-module__WiVOFq__frameFront{transform:translateY(7px)rotate(4deg)}@media (prefers-reduced-motion:reduce){.project-row-module__WiVOFq__body,.project-row-module__WiVOFq__frame{transition:none}.project-row-module__WiVOFq__root:hover .project-row-module__WiVOFq__body,.project-row-module__WiVOFq__root:focus-within .project-row-module__WiVOFq__body{transform:none}.project-row-module__WiVOFq__root:hover .project-row-module__WiVOFq__frameBack,.project-row-module__WiVOFq__root:focus-within .project-row-module__WiVOFq__frameBack{transform:translate(2px,-2px)rotate(8deg)}.project-row-module__WiVOFq__root:hover .project-row-module__WiVOFq__frameMid,.project-row-module__WiVOFq__root:focus-within .project-row-module__WiVOFq__frameMid{transform:translate(-2px,-2px)rotate(-5deg)}.project-row-module__WiVOFq__root:hover .project-row-module__WiVOFq__frameFront,.project-row-module__WiVOFq__root:focus-within .project-row-module__WiVOFq__frameFront{transform:translate(0,0)}}@media (max-width:34rem){.project-row-module__WiVOFq__row{column-gap:var(--space-sm)}.project-row-module__WiVOFq__preview{inline-size:4.5rem}}
.chapter-navigation-module__LQHjNq__root{display:none}@media (min-width:64rem){.chapter-navigation-module__LQHjNq__root{z-index:var(--z-sticky);display:block;position:fixed;inset-block:50% auto;inset-inline-end:var(--space-md);translate:0 -50%}.chapter-navigation-module__LQHjNq__list{box-shadow:none;background:0 0;border:0;flex-direction:column;gap:0;max-inline-size:none;margin:0;padding:0;list-style:none;display:flex}.chapter-navigation-module__LQHjNq__item{justify-content:flex-end;display:flex}.chapter-navigation-module__LQHjNq__link{padding:5px 0;color:var(--text-secondary);background:0 0;border-radius:0;justify-content:flex-end;align-items:center;gap:0;padding-inline-start:var(--space-lg);text-decoration:none;display:flex;position:relative}.chapter-navigation-module__LQHjNq__link:hover{background:0 0}.chapter-navigation-module__LQHjNq__tick{border-radius:var(--radius-full);background-color:var(--text-muted);opacity:.4;block-size:2px;inline-size:14px;transition:inline-size var(--duration-medium) var(--ease-standard), opacity var(--duration-medium) var(--ease-standard), background-color var(--duration-medium) var(--ease-standard);display:block}.chapter-navigation-module__LQHjNq__link:hover .chapter-navigation-module__LQHjNq__tick,.chapter-navigation-module__LQHjNq__link:focus-visible .chapter-navigation-module__LQHjNq__tick{opacity:.9;inline-size:22px}.chapter-navigation-module__LQHjNq__linkActive .chapter-navigation-module__LQHjNq__tick{opacity:1;background-color:var(--text-primary);inline-size:28px}.chapter-navigation-module__LQHjNq__label{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chapter-navigation-module__LQHjNq__card{gap:var(--space-3xs);inline-size:min(20rem,32vw);padding:var(--space-sm);background-color:var(--dock-surface-opaque);border:var(--border-hairline) solid var(--dock-border);border-radius:var(--radius-lg);box-shadow:var(--dock-shadow);opacity:0;translate:var(--space-2xs) -50%;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-standard), translate var(--duration-fast) var(--ease-standard);flex-direction:column;display:flex;position:absolute;inset-block-start:50%;inset-inline-end:calc(100% + var(--space-2xs))}.chapter-navigation-module__LQHjNq__link:hover .chapter-navigation-module__LQHjNq__card,.chapter-navigation-module__LQHjNq__link:focus-visible .chapter-navigation-module__LQHjNq__card{opacity:1;translate:0 -50%}.chapter-navigation-module__LQHjNq__cardEyebrow{font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:lowercase;color:var(--text-muted)}.chapter-navigation-module__LQHjNq__cardTitle{font-size:var(--text-lg);font-weight:var(--weight-medium);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--text-primary);text-wrap:balance}.chapter-navigation-module__LQHjNq__cardExcerpt{font-size:var(--text-sm);line-height:var(--leading-snug);color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}@media (prefers-reduced-motion:reduce){.chapter-navigation-module__LQHjNq__link,.chapter-navigation-module__LQHjNq__tick,.chapter-navigation-module__LQHjNq__card{transition:none}.chapter-navigation-module__LQHjNq__card{translate:0 -50%}}
.selected-work-module__CnfFtq__root{gap:var(--space-sm);flex-direction:column;display:flex}.selected-work-module__CnfFtq__header{justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.selected-work-module__CnfFtq__heading{font-size:var(--text-xs);font-weight:var(--weight-regular);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.selected-work-module__CnfFtq__viewAll{font-size:var(--text-xs)}.selected-work-module__CnfFtq__list{flex-direction:column;inline-size:100%;display:flex}.selected-work-module__CnfFtq__list>li{opacity:1;flex:none;transition:opacity .19s}@media (hover:hover) and (pointer:fine){.selected-work-module__CnfFtq__list:has(>li[data-interactive]:hover)>li:not(:hover){opacity:.4}}.selected-work-module__CnfFtq__list:focus-within>li{opacity:.4}.selected-work-module__CnfFtq__list:focus-within>li:focus-within{opacity:1}@media (prefers-reduced-motion:reduce){.selected-work-module__CnfFtq__list>li{transition:none}}.selected-work-module__CnfFtq__empty{color:var(--text-muted);font-size:var(--text-sm)}
