@font-face {
  font-display: swap;
  font-family: Geist;
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/geist/geist-regular.woff2) format("woff2");
}
@font-face {
  font-display: swap;
  font-family: Geist;
  font-style: normal;
  font-weight: 500;
  src: url(/fonts/geist/geist-500.woff2) format("woff2");
}
@font-face {
  font-display: swap;
  font-family: Geist;
  font-style: normal;
  font-weight: 600;
  src: url(/fonts/geist/geist-600.woff2) format("woff2");
}
@font-face {
  font-display: swap;
  font-family: Geist;
  font-style: normal;
  font-weight: 700;
  src: url(/fonts/geist/geist-700.woff2) format("woff2");
}
@font-face {
  font-display: swap;
  font-family: Geist\Mono;
  font-style: normal;
  font-weight: 400;
  src: url(/fonts/geist-mono/geist-mono-regular.woff2) format("woff2");
}
@font-face {
  font-display: swap;
  font-family: Geist\Mono;
  font-style: normal;
  font-weight: 500;
  src: url(/fonts/geist-mono/geist-mono-500.woff2) format("woff2");
}
:root {
  --color-background: #f2f1eb;
  --color-foreground: #121210;
  --color-foreground-rgb: 18, 18, 16;
  --color-body: #3a3a36;
  --color-muted: #706e63;
  --color-faint: #b6b5ab;
  --color-soft: rgba(var(--color-foreground-rgb), 0.64);
  --color-hairline: rgba(var(--color-foreground-rgb), 0.12);
  --color-accent: #1d39f5;
  --color-accent-rgb: 29, 57, 245;
  --color-accent-foreground: #f6f6f4;
  --color-accent-foreground-rgb: 246, 246, 244;
  --color-accent-muted: rgba(var(--color-accent-rgb), 0.85);
  --color-accent-line: rgba(var(--color-accent-rgb), 0.4);
  --color-accent-active-line: rgba(var(--color-accent-rgb), 0.5);
  --color-error: #ffd0c2;
  --color-inverted-foreground: var(--color-accent-foreground);
  --color-inverted-body: rgba(var(--color-accent-foreground-rgb), 0.9);
  --color-inverted-muted: rgba(var(--color-accent-foreground-rgb), 0.825);
  --color-inverted-soft: rgba(var(--color-accent-foreground-rgb), 0.75);
  --color-inverted-faint: rgba(var(--color-accent-foreground-rgb), 0.6);
  --color-inverted-active-line: var(--color-inverted-soft);
  --color-inverted-line: rgba(var(--color-accent-foreground-rgb), 0.3);
  --color-inverted-hairline: rgba(var(--color-accent-foreground-rgb), 0.15);
  --font-sans: "Geist", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-mono:
    Geist\Mono, ui-monospace, "SFMono-Regular", "SF Mono", Consolas,
    "Liberation Mono", Menlo, monospace;
  --reveal-position: 60%;
  --reveal-width: 1px;
  --transition-duration: 0.35s;
  --ease-out: cubic-bezier(0.2, 0.7, 0.2, 1);
  --layer-base: 1;
  --layer-reveal: 2;
  --layer-scrollbar: 12;
  --layer-overlay: 20;
}
* {
  box-sizing: border-box;
  letter-spacing: 0;
}
html {
  min-width: 320px;
  min-height: 100%;
  background: var(--color-background);
  color: var(--color-foreground);
  color-scheme: light;
  font-size: 100%;
}
@media (hover: hover) and (pointer: fine) {
  html[data-js="true"][data-site-scrollbar-page="true"] {
    scrollbar-width: none;
  }
  html[data-js="true"][data-site-scrollbar-page="true"]::-webkit-scrollbar,
  html[data-js="true"][data-site-scrollbar-page="true"]
    body::-webkit-scrollbar {
    width: 0;
    height: 0;
  }
}
@media (min-width: 112.5rem) {
  html {
    font-size: clamp(100%, calc(66.912% + 0.2941vw), 137.5%);
  }
}
body {
  min-height: 100%;
  margin: 0;
  overflow-x: clip;
  background: var(--color-background);
  color: var(--color-foreground);
  font-family: var(--font-sans);
  font-size: 1rem;
  font-synthesis-weight: none;
  line-height: 1.56;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
html.lenis,
html.lenis body {
  height: auto;
}
.lenis:not(.lenis-autoToggle).lenis-stopped {
  overflow: clip;
}
.lenis [data-lenis-prevent],
.lenis [data-lenis-prevent-wheel],
.lenis [data-lenis-prevent-touch],
.lenis [data-lenis-prevent-vertical],
.lenis [data-lenis-prevent-horizontal] {
  overscroll-behavior: contain;
}
.lenis.lenis-smooth iframe {
  pointer-events: none;
}
a {
  color: inherit;
  text-decoration-color: currentColor;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.25em;
}
a:hover {
  color: var(--color-accent);
}
a:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 3px;
}
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  border: 0 !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}
.site-skip-link {
  position: fixed;
  top: var(--site-header-padding-block);
  left: 50%;
  z-index: calc(var(--layer-overlay) + 1);
  padding: 0.625rem 0.75rem;
  background: var(--color-accent);
  color: var(--color-inverted-foreground);
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  line-height: 1;
  text-decoration: none;
  transform: translate(
    -50%,
    calc(-100% - var(--site-header-padding-block) - 0.25rem)
  );
  transition: transform 0.18s var(--ease-out);
}
.site-skip-link:focus-visible {
  color: var(--color-inverted-foreground);
  outline: 2px solid var(--color-inverted-foreground);
  outline-offset: 0.1875rem;
  transform: translate(-50%);
}
.site-main:focus {
  outline: none;
}
.site-text-link {
  --site-text-link-color: inherit;
  --site-text-link-hover-color: var(--color-accent);
  --site-text-link-underline-offset: -0.18em;
  --site-text-link-underline-duration: 0.26s;
  --site-text-link-resting-line-opacity: 0.6;
  position: relative;
  display: inline-block;
  width: max-content;
  max-width: 100%;
  color: var(--site-text-link-color);
  overflow-wrap: anywhere;
  text-decoration: none;
  transition: color 0.22s var(--ease-out);
}
.site-text-link:after {
  position: absolute;
  right: 0;
  bottom: var(--site-text-link-underline-offset);
  left: 0;
  height: 0;
  border-top: 1px solid currentColor;
  content: "";
  transform: scaleX(0);
  transform-origin: right center;
  transition: transform var(--site-text-link-underline-duration)
    cubic-bezier(0.16, 1, 0.3, 1);
}
.site-text-link--resting-line:before {
  position: absolute;
  right: 0;
  bottom: var(--site-text-link-underline-offset);
  left: 0;
  height: 0;
  border-top: 1px solid currentColor;
  content: "";
  opacity: var(--site-text-link-resting-line-opacity);
}
.site-text-link:hover,
.site-text-link:focus-visible {
  color: var(--site-text-link-hover-color);
}
.site-text-link:hover:after,
.site-text-link:focus-visible:after {
  transform: scaleX(1);
  transform-origin: left center;
}
.site-text-link--inverted {
  --site-text-link-color: var(--color-inverted-soft);
  --site-text-link-hover-color: var(--color-inverted-foreground);
}
.site-text-link--inverted-strong {
  --site-text-link-color: var(--color-inverted-foreground);
  --site-text-link-hover-color: var(--color-inverted-foreground);
  --site-text-link-underline-offset: -0.12em;
}
.site-text-link--foreground-hover {
  --site-text-link-hover-color: var(--color-foreground);
}
.site-text-link[aria-current="page"] {
  --site-text-link-hover-color: currentColor;
  cursor: default;
}
.site-text-link[aria-current="page"]:after {
  transform: scaleX(1);
  transform-origin: left center;
}
:root {
  --site-gutter: clamp(1.5rem, calc(0.607rem + 3.214vw), 3.5rem);
  --site-container-max: 200rem;
  --site-container-half-max: 100rem;
  --site-container-width: min(100vw, var(--site-container-max));
  --site-container-inner-width: calc(
    var(--site-container-width) - var(--site-gutter) - var(--site-gutter)
  );
  --site-container-offset: max(
    0rem,
    calc(50vw - var(--site-container-half-max))
  );
  --site-axis-position-md-max: 120rem;
  --site-axis-position-lg-max: 122.222rem;
  --site-axis-position-md: min(60vw, var(--site-axis-position-md-max));
  --site-axis-position-lg: min(61.111vw, var(--site-axis-position-lg-max));
  --section-padding-block: clamp(2.75rem, 7dvh, 3.5rem);
}
.site-container {
  width: min(100%, var(--site-container-max));
  margin-inline: auto;
  padding-inline: var(--site-gutter);
}
.site-main {
  display: block;
  min-width: 0;
}
.site-system-layer {
  display: contents;
}
.section-spacing {
  padding-block: var(--section-padding-block);
}
@media (min-width: 48rem) and (min-height: 42rem),
  (min-width: 48rem) and (hover: hover) and (pointer: fine) {
  :root {
    --section-padding-block: clamp(2.25rem, 5dvh, 2.75rem);
  }
}
@media (min-width: 75rem) and (min-height: 42rem),
  (min-width: 75rem) and (hover: hover) and (pointer: fine) {
  :root {
    --section-padding-block: clamp(2.5rem, 5.3dvh, 3.25rem);
  }
}
.site-scrollbar {
  --site-scrollbar-offset: 0.5rem;
  --site-scrollbar-hit-area: 1rem;
  --site-scrollbar-thumb-width: 0.1875rem;
  --site-scrollbar-thumb-right: 0.25rem;
  --site-scrollbar-thumb-height: 2rem;
  --site-scrollbar-thumb-y: 0px;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: var(--layer-scrollbar);
  width: var(--site-scrollbar-hit-area);
  opacity: 0;
  pointer-events: none;
  transform: translate(0.125rem);
  transition:
    opacity 0.22s var(--ease-out),
    transform 0.22s var(--ease-out);
}
html[data-site-scrollbar-visible="true"] .site-scrollbar {
  opacity: 1;
  transform: translate(0);
}
html[data-site-overlay-open] .site-scrollbar,
html[data-site-overlay-mode] .site-scrollbar {
  opacity: 0;
  pointer-events: none;
}
.site-scrollbar__track {
  position: absolute;
  top: var(--site-scrollbar-offset);
  right: 0;
  bottom: var(--site-scrollbar-offset);
  width: var(--site-scrollbar-hit-area);
  cursor: pointer;
  pointer-events: auto;
}
.site-scrollbar__thumb {
  position: absolute;
  top: 0;
  right: var(--site-scrollbar-thumb-right);
  width: var(--site-scrollbar-thumb-width);
  height: var(--site-scrollbar-thumb-height);
  background: rgba(var(--color-foreground-rgb), 0.3);
  cursor: grab;
  transform: translate3d(0, var(--site-scrollbar-thumb-y), 0);
  transition:
    background 0.18s var(--ease-out),
    width 0.18s var(--ease-out),
    right 0.18s var(--ease-out);
  will-change: transform;
}
.site-scrollbar__track:hover .site-scrollbar__thumb,
.site-scrollbar__track:focus-visible .site-scrollbar__thumb,
html[data-site-scrollbar-dragging="true"] .site-scrollbar__thumb {
  width: 0.3125rem;
  background: rgba(var(--color-foreground-rgb), 0.5);
}
html[data-site-scrollbar-dragging="true"] {
  cursor: grabbing;
  user-select: none;
}
html[data-site-scrollbar-dragging="true"] .site-scrollbar__thumb {
  cursor: grabbing;
}
@media (max-width: 47.999rem), (pointer: coarse) {
  .site-scrollbar {
    display: none;
  }
}
.site-button {
  --site-button-color: inherit;
  --site-button-accent-color: var(--color-accent);
  --site-button-font-size: clamp(1.375rem, calc(1.25rem + 0.35vw), 1.5rem);
  --site-button-font-weight: 600;
  --site-button-line-height: 1;
  --site-button-letter-spacing: -0.02em;
  --site-button-bracket-open-x: -0.07em;
  --site-button-bracket-close-x: 0.07em;
  --site-button-bracket-scale: 1.07;
  --site-button-motion-x: 3px;
  --site-button-motion-y: 1.5px;
  appearance: none;
  display: inline-flex;
  align-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--site-button-color);
  font-family: var(--font-sans);
  font-size: var(--site-button-font-size);
  font-weight: var(--site-button-font-weight);
  letter-spacing: var(--site-button-letter-spacing);
  line-height: var(--site-button-line-height);
  text-decoration: none;
  cursor: pointer;
}
.site-button:hover {
  color: var(--site-button-color);
}
.site-button:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 0.25rem;
}
.site-button:disabled,
.site-button[aria-disabled="true"] {
  --site-button-accent-color: currentColor;
  color: rgba(var(--color-foreground-rgb), 0.4);
  cursor: not-allowed;
  opacity: 1;
}
.site-button:before,
.site-button:after {
  display: inline-block;
  color: var(--site-button-accent-color);
}
.site-button:before {
  order: 0;
  content: "[";
  margin-right: 0.25em;
}
.site-button:after {
  order: 2;
  content: "]";
  margin-left: 0.25em;
}
.site-button__label {
  order: 1;
  display: inline-block;
}
.site-button__loader {
  order: 3;
  display: none;
  align-items: center;
  gap: 0.3125rem;
  margin-left: 0.75rem;
}
.site-button__loader span {
  display: block;
  width: 0.4375rem;
  height: 0.4375rem;
  background: var(--site-button-loader-color, currentColor);
  animation: site-button-loader-pulse 1.05s ease-in-out infinite;
}
.site-button__loader span:nth-child(2) {
  animation-delay: 0.18s;
}
.site-button__loader span:nth-child(3) {
  animation-delay: 0.36s;
}
.site-button--stacked {
  flex-direction: column;
  align-items: flex-start;
}
.site-button--stacked:before,
.site-button--stacked:after {
  content: none;
}
.site-button__line {
  display: inline-flex;
  align-items: center;
}
.site-button__accent {
  display: inline-block;
  color: var(--site-button-accent-color);
}
.site-button__line > .site-button__accent:first-child {
  margin-right: 0.25em;
}
.site-button__line > .site-button__accent:last-child {
  margin-left: 0.18em;
}
.site-button__accent--ghost {
  visibility: hidden;
}
.site-button--lg {
  --site-button-font-size: clamp(1.5rem, calc(1.1rem + 1vw), 2rem);
  --site-button-font-weight: 700;
  --site-button-line-height: 1.05;
  --site-button-letter-spacing: -0.03em;
  --site-button-bracket-open-x: -0.08em;
  --site-button-bracket-close-x: 0.08em;
  --site-button-bracket-scale: 1.08;
  --site-button-motion-x: 4px;
  --site-button-motion-y: 2px;
}
.site-button--sm {
  --site-button-font-size: 1.125rem;
  --site-button-font-weight: 500;
  --site-button-letter-spacing: -0.015em;
  --site-button-bracket-open-x: -0.05em;
  --site-button-bracket-close-x: 0.05em;
  --site-button-bracket-scale: 1.05;
  --site-button-motion-x: 2px;
  --site-button-motion-y: 1px;
}
.site-button--on-accent,
.site-reveal__layer--reveal .site-button {
  --site-button-color: var(--color-inverted-foreground);
  --site-button-accent-color: var(--color-inverted-faint);
}
.site-button--on-accent:focus-visible,
.site-reveal__layer--reveal .site-button:focus-visible {
  outline-color: var(--color-inverted-foreground);
}
.site-button--on-accent:disabled,
.site-button--on-accent[aria-disabled="true"] {
  --site-button-accent-color: currentColor;
  color: var(--color-inverted-faint);
}
.site-button[data-button-state="loading"] {
  --site-button-accent-color: rgba(var(--color-foreground-rgb), 0.45);
  --site-button-loader-color: var(--color-accent);
  color: rgba(var(--color-foreground-rgb), 0.6);
  cursor: wait;
}
.site-button--on-accent[data-button-state="loading"],
.site-reveal__layer--reveal .site-button[data-button-state="loading"] {
  --site-button-accent-color: rgba(var(--color-accent-foreground-rgb), 0.55);
  --site-button-loader-color: var(--color-inverted-foreground);
  color: var(--color-inverted-soft);
}
.site-button[data-button-state="loading"] .site-button__loader {
  display: inline-flex;
}
@keyframes site-button-loader-pulse {
  0%,
  to {
    opacity: 0.5;
    transform: scale(0.72);
  }
  45% {
    opacity: 1;
    transform: scale(1);
  }
}
@media (hover: hover) and (pointer: fine) {
  .site-button:before,
  .site-button:after,
  .site-button__accent {
    transition: transform 0.18s var(--ease-out);
    transform-origin: center;
  }
  .site-button:hover:before,
  .site-button:focus-visible:before,
  .site-reveal[data-site-button-motion-active="true"] .site-button:before {
    transform: translate(
        calc(
          var(--site-button-bracket-open-x) + var(--site-button-bracket-x, 0px)
        ),
        var(--site-button-bracket-y, 0px)
      )
      scale(var(--site-button-bracket-scale));
  }
  .site-button:hover:after,
  .site-button:focus-visible:after,
  .site-reveal[data-site-button-motion-active="true"] .site-button:after {
    transform: translate(
        calc(
          var(--site-button-bracket-close-x) + var(--site-button-bracket-x, 0px)
        ),
        var(--site-button-bracket-y, 0px)
      )
      scale(var(--site-button-bracket-scale));
  }
  .site-button--stacked:hover
    .site-button__line:first-child
    > .site-button__accent,
  .site-button--stacked:focus-visible
    .site-button__line:first-child
    > .site-button__accent,
  .site-reveal[data-site-button-motion-active="true"]
    .site-button--stacked
    .site-button__line:first-child
    > .site-button__accent {
    transform: translate(
        calc(
          var(--site-button-bracket-open-x) + var(--site-button-bracket-x, 0px)
        ),
        var(--site-button-bracket-y, 0px)
      )
      scale(var(--site-button-bracket-scale));
  }
  .site-button--stacked:hover
    .site-button__line:last-child
    > .site-button__accent:last-child,
  .site-button--stacked:focus-visible
    .site-button__line:last-child
    > .site-button__accent:last-child,
  .site-reveal[data-site-button-motion-active="true"]
    .site-button--stacked
    .site-button__line:last-child
    > .site-button__accent:last-child {
    transform: translate(
        calc(
          var(--site-button-bracket-close-x) + var(--site-button-bracket-x, 0px)
        ),
        var(--site-button-bracket-y, 0px)
      )
      scale(var(--site-button-bracket-scale));
  }
}
:root {
  --site-header-padding-block: clamp(0.875rem, min(2.4dvh, 4vw), 1.25rem);
  --site-header-wordmark-width: clamp(5.75rem, 15vw, 6.75rem);
  --site-header-wordmark-height: calc(
    var(--site-header-wordmark-width) * 0.2332
  );
  --site-header-height: calc(
    var(--site-header-padding-block) * 2 + var(--site-header-wordmark-height) +
      1px
  );
}
@media (min-width: 48rem) and (min-height: 52.5rem) {
  :root {
    --site-header-padding-block: clamp(1.25rem, 2.8dvh, 1.75rem);
  }
}
.site-header {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-block: var(--site-header-padding-block);
}
.site-header:after {
  position: absolute;
  right: var(--site-gutter);
  bottom: 0;
  left: var(--site-gutter);
  height: 0;
  border-top: 1px solid var(--color-hairline);
  content: "";
}
.site-header__brand,
.site-header__menu {
  color: inherit;
  text-decoration: none;
}
button.site-header__menu {
  min-height: 2.75rem;
  padding: 0.75rem;
  border: 0;
  margin: -0.75rem;
  appearance: none;
  background: transparent;
  cursor: pointer;
  font-family: inherit;
  font-weight: inherit;
}
button.site-header__menu:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 3px;
}
.site-header__brand {
  display: inline-flex;
  align-items: center;
  line-height: 0;
}
.site-header__brand--interactive:hover,
.site-header__brand--interactive:focus-visible {
  color: inherit;
}
.site-header__brand-mark {
  display: block;
  width: var(--site-header-wordmark-width);
  height: var(--site-header-wordmark-height);
  background: currentColor;
  -webkit-mask-image: url(/brand/logo_black.svg);
  mask-image: url(/brand/logo_white.svg);
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.site-header__nav {
  display: flex;
  align-items: center;
}
.site-header__menu {
  --menu-marker-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --menu-marker-open-from-dot-duration: 0.42s;
  --menu-marker-open-from-grid-duration: 0.56s;
  --menu-marker-close-duration: 0.56s;
  --menu-word-duration: 0.46s;
  --menu-word-delay: 0.14s;
  display: inline-flex;
  gap: 0.5rem;
  align-items: center;
  font-size: 1rem;
  letter-spacing: -0.01em;
  line-height: 1.2;
}
.site-header__menu-label {
  position: relative;
  display: inline-block;
  width: 2.75em;
  height: 1.2em;
  overflow: hidden;
  vertical-align: top;
}
.site-header__menu-word {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  transition:
    opacity var(--menu-word-duration) cubic-bezier(0.16, 1, 0.3, 1),
    transform var(--menu-word-duration) cubic-bezier(0.16, 1, 0.3, 1);
  transform: translateZ(0);
  will-change: opacity, transform;
}
.site-header__menu-word--menu {
  opacity: 1;
  transform: translateY(0);
  transition-delay: var(--menu-word-delay);
}
.site-header__menu-word--close {
  opacity: 0;
  transform: translate3d(0, 0.22em, 0);
  transition-delay: 0ms;
}
.site-header__menu[data-menu-state="open"] .site-header__menu-word--menu {
  opacity: 0;
  transform: translate3d(0, -0.22em, 0);
  transition-delay: 0ms;
}
.site-header__menu[data-menu-state="open"] .site-header__menu-word--close {
  opacity: 1;
  transform: translateZ(0);
  transition-delay: var(--menu-word-delay);
}
.site-header__menu-marker {
  position: relative;
  display: block;
  width: 1rem;
  height: 1rem;
  color: var(--color-accent);
}
.site-header__menu-marker span {
  --menu-marker-grid-top: 0.1875rem;
  --menu-marker-grid-left: 0.1875rem;
  --menu-marker-cross-top: 26.5625%;
  --menu-marker-cross-left: 26.5625%;
  --menu-marker-cross-rotation: 45deg;
  position: absolute;
  display: block;
  width: 0.375rem;
  height: 0.375rem;
  background: currentColor;
  transform: translate(-50%, -50%) rotate(0);
  transform-origin: center;
  transition:
    top 0.28s var(--ease-out),
    left 0.28s var(--ease-out),
    width 0.28s var(--ease-out),
    height 0.28s var(--ease-out),
    opacity 0.22s var(--ease-out),
    transform 0.3s var(--ease-out);
}
.site-header__menu-marker span:nth-child(1) {
  --menu-marker-grid-top: 0.1875rem;
  --menu-marker-grid-left: 0.1875rem;
  --menu-marker-cross-top: 26.5625%;
  --menu-marker-cross-left: 26.5625%;
  --menu-marker-cross-rotation: 45deg;
  top: var(--menu-marker-grid-top);
  left: var(--menu-marker-grid-left);
}
.site-header__menu-marker span:nth-child(2) {
  --menu-marker-grid-top: 0.1875rem;
  --menu-marker-grid-left: 0.8125rem;
  --menu-marker-cross-top: 26.5625%;
  --menu-marker-cross-left: 73.4375%;
  --menu-marker-cross-rotation: -45deg;
  top: var(--menu-marker-grid-top);
  left: var(--menu-marker-grid-left);
}
.site-header__menu-marker span:nth-child(3) {
  --menu-marker-grid-top: 0.8125rem;
  --menu-marker-grid-left: 0.1875rem;
  --menu-marker-cross-top: 73.4375%;
  --menu-marker-cross-left: 26.5625%;
  --menu-marker-cross-rotation: -45deg;
  top: var(--menu-marker-grid-top);
  left: var(--menu-marker-grid-left);
}
.site-header__menu-marker span:nth-child(4) {
  --menu-marker-grid-top: 0.8125rem;
  --menu-marker-grid-left: 0.8125rem;
  --menu-marker-cross-top: 73.4375%;
  --menu-marker-cross-left: 73.4375%;
  --menu-marker-cross-rotation: 45deg;
  top: var(--menu-marker-grid-top);
  left: var(--menu-marker-grid-left);
}
.site-reveal[data-reveal-anchor-active="menu"] .site-header__menu-marker span {
  top: 0.5rem;
  left: 0.5rem;
  width: 0.375rem;
  height: 0.375rem;
  transform: translate(-50%, -50%) rotate(0);
}
.site-header__menu[data-menu-state="open"] {
  color: var(--color-inverted-foreground);
}
.site-header__menu[data-menu-state="open"] .site-header__menu-marker {
  color: currentColor;
}
.site-header__menu[data-menu-state="open"] .site-header__menu-marker span {
  top: var(--menu-marker-cross-top);
  left: var(--menu-marker-cross-left);
  width: 0.5rem;
  height: 1.7px;
  opacity: 1;
  transform: translate(-50%, -50%) rotate(var(--menu-marker-cross-rotation));
}
.site-header__menu[data-overlay-control][data-menu-state="open"][data-menu-origin="dot"]
  .site-header__menu-marker
  span {
  animation: site-menu-marker-open-from-dot
    var(--menu-marker-open-from-dot-duration) var(--menu-marker-ease) both;
}
.site-header__menu[data-overlay-control][data-menu-state="open"][data-menu-origin="grid"]
  .site-header__menu-marker
  span {
  animation: site-menu-marker-open-from-grid
    var(--menu-marker-open-from-grid-duration) var(--menu-marker-ease) both;
}
.site-header__menu[data-overlay-control][data-menu-state="closed"][data-menu-origin="close"]
  .site-header__menu-marker
  span {
  animation: site-menu-marker-close-to-grid var(--menu-marker-close-duration)
    var(--menu-marker-ease) both;
}
.site-header--reveal:after {
  border-top-color: var(--color-inverted-line);
}
.site-header--reveal .site-header__menu-marker {
  color: currentColor;
}
.site-header__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  border: 0;
  clip-path: inset(50%);
  white-space: nowrap;
}
.site-header-spacer {
  min-height: var(--site-header-height);
}
.site-page-header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  background: var(--color-background);
}
.site-attached-header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 10;
  background: var(--color-background);
  color: var(--color-foreground);
  opacity: 0;
  pointer-events: none;
  transition:
    opacity 0.52s var(--ease-out),
    transform 0.52s var(--ease-out);
  transform: translateY(-0.625rem);
}
.site-attached-header[data-site-header-attached="true"] {
  opacity: 1;
  transform: translateY(0);
}
.site-attached-header[data-site-header-attached="true"] .site-header__brand,
.site-attached-header[data-site-header-attached="true"] .site-header__menu {
  pointer-events: auto;
}
.site-header-control {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: calc(var(--layer-overlay) + 1);
  justify-content: flex-end;
  min-height: calc(var(--site-header-height) - 1px);
  color: var(--color-inverted-foreground);
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
.site-header-control:after {
  content: none;
}
.site-header-control .site-header__menu {
  pointer-events: none;
}
html[data-site-overlay-control="header"] .site-header-control {
  opacity: 1;
  visibility: visible;
}
html[data-site-overlay-control="header"]
  .site-header-control
  .site-header__menu {
  pointer-events: auto;
}
@media (hover: hover) and (pointer: fine) {
  .site-header:not(.site-header--reveal)
    .site-header__menu:not([data-menu-state="open"]):is(:hover, :focus-visible)
    .site-header__menu-marker
    span,
  .site-attached-header
    .site-header__menu:not([data-menu-state="open"]):is(:hover, :focus-visible)
    .site-header__menu-marker
    span {
    top: 0.5rem;
    left: 0.5rem;
    width: 0.375rem;
    height: 0.375rem;
    transform: translate(-50%, -50%) rotate(0);
  }
}
@media (max-width: 47.999rem),
  (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .site-reveal > .site-reveal__layer > .site-header {
    visibility: hidden;
    pointer-events: none;
  }
  .site-header-spacer {
    display: none;
  }
  .site-attached-header {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes site-menu-marker-open-from-dot {
  0% {
    top: 0.5rem;
    left: 0.5rem;
    width: 0.375rem;
    height: 0.375rem;
    transform: translate(-50%, -50%) rotate(0);
  }
  to {
    top: var(--menu-marker-cross-top);
    left: var(--menu-marker-cross-left);
    width: 0.5rem;
    height: 1.7px;
    transform: translate(-50%, -50%) rotate(var(--menu-marker-cross-rotation));
  }
}
@keyframes site-menu-marker-open-from-grid {
  0% {
    top: var(--menu-marker-grid-top);
    left: var(--menu-marker-grid-left);
    width: 0.375rem;
    height: 0.375rem;
    transform: translate(-50%, -50%) rotate(0);
  }
  42% {
    top: 0.5rem;
    left: 0.5rem;
    width: 0.375rem;
    height: 0.375rem;
    transform: translate(-50%, -50%) rotate(0);
  }
  to {
    top: var(--menu-marker-cross-top);
    left: var(--menu-marker-cross-left);
    width: 0.5rem;
    height: 1.7px;
    transform: translate(-50%, -50%) rotate(var(--menu-marker-cross-rotation));
  }
}
@keyframes site-menu-marker-close-to-grid {
  0% {
    top: var(--menu-marker-cross-top);
    left: var(--menu-marker-cross-left);
    width: 0.5rem;
    height: 1.7px;
    transform: translate(-50%, -50%) rotate(var(--menu-marker-cross-rotation));
  }
  42% {
    top: 0.5rem;
    left: 0.5rem;
    width: 0.375rem;
    height: 0.375rem;
    transform: translate(-50%, -50%) rotate(0);
  }
  to {
    top: var(--menu-marker-grid-top);
    left: var(--menu-marker-grid-left);
    width: 0.375rem;
    height: 0.375rem;
    transform: translate(-50%, -50%) rotate(0);
  }
}
.site-footer {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 1.25rem;
  align-items: center;
  justify-content: space-between;
  padding-block: clamp(1.25rem, 4dvh, 1.75rem);
  background: var(--color-background);
  color: var(--color-muted);
  font-family: var(--font-mono);
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}
.site-footer:before {
  position: absolute;
  top: 0;
  right: var(--site-gutter);
  left: var(--site-gutter);
  height: 0;
  border-top: 1px solid var(--color-hairline);
  content: "";
}
.site-footer__legal,
.site-footer__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.5rem;
  align-items: center;
  margin: 0;
}
.site-footer__legal > span:first-child {
  color: var(--color-foreground);
}
.site-footer__meta time {
  color: var(--color-muted);
}
.site-footer__location {
  display: inline-flex;
  gap: 0.75rem;
  align-items: center;
  color: var(--color-foreground);
}
.site-footer__marker {
  display: block;
  width: 0.5625rem;
  height: 0.5625rem;
  background: var(--color-accent);
}
@media (max-width: 47.999rem) {
  .site-footer {
    display: grid;
    justify-content: stretch;
  }
  .site-footer__meta {
    justify-content: space-between;
  }
}
@media (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .site-footer {
    padding-block: 1rem;
  }
}
.site-reveal {
  --reveal-axis-width: 7rem;
  position: relative;
  display: grid;
  min-height: 100vh;
  min-height: 100svh;
  overflow-x: clip;
  background: var(--color-background);
  color: var(--color-foreground);
  isolation: isolate;
}
.site-reveal__layer {
  grid-area: 1 / 1;
  min-width: 0;
}
.site-reveal__band-probe {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(var(--reveal-position) - var(--reveal-width) / 2);
  z-index: -1;
  display: none;
  width: var(--reveal-width);
  pointer-events: none;
  visibility: hidden;
}
.site-reveal__layer--base {
  z-index: var(--layer-base);
}
.site-reveal__layer--reveal {
  display: none;
  z-index: var(--layer-reveal);
  overflow: hidden;
  background: var(--color-accent);
  color: var(--color-inverted-foreground);
  clip-path: inset(
    0 calc(100% - var(--reveal-position) - var(--reveal-width) / 2) 0
      calc(var(--reveal-position) - var(--reveal-width) / 2)
  );
  pointer-events: none;
  transition: clip-path var(--transition-duration) var(--ease-out);
}
.site-reveal[data-reveal-instant="true"] .site-reveal__layer--reveal {
  transition: none;
}
.site-reveal[data-reveal-active="true"] {
  --reveal-width: var(--reveal-axis-width);
}
@supports (height: 100dvh) {
  .site-reveal {
    min-height: 100dvh;
  }
}
@media (min-width: 48rem) {
  .site-reveal__band-probe,
  .site-reveal__layer--reveal {
    display: block;
  }
}
@media (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .site-reveal__band-probe,
  .site-reveal__layer--reveal {
    display: none;
  }
}
.section-header {
  --section-header-title-size: 1.75rem;
  --section-header-title-gap: 1.375rem;
  --section-header-title-column: 27.5rem;
  --section-header-description-size: 0.875rem;
  --section-header-description-min-column: 13.75rem;
  --section-header-description-column: 22.5rem;
  --section-header-description-max-width: 20rem;
  --section-header-label-color: var(--color-foreground);
  --section-header-number-color: var(--color-accent);
  --section-header-slash-color: var(--color-faint);
  --section-header-meta-color: var(--color-muted);
  --section-header-meta-value-color: var(--color-body);
  --section-header-title-color: var(--color-foreground);
  --section-header-description-color: var(--color-body);
  position: relative;
  z-index: 1;
  display: grid;
  gap: var(--section-header-title-gap);
  color: var(--color-foreground);
}
.section-header__label-row {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
}
.section-header__label,
.section-header__meta,
.section-header__title,
.section-header__description {
  margin: 0;
}
.section-header__label,
.section-header__meta {
  font-family: var(--font-mono);
  letter-spacing: 0.06em;
  line-height: 1.2;
}
.section-header__label {
  color: var(--section-header-label-color);
  font-size: 0.75rem;
}
.section-header__number {
  color: var(--section-header-number-color);
}
.section-header__slash {
  margin: 0 0.5rem;
  color: var(--section-header-slash-color);
}
.section-header__meta {
  flex: none;
  color: var(--section-header-meta-color);
  font-size: 0.6875rem;
  text-align: right;
  text-transform: uppercase;
}
.section-header__meta-value {
  display: inline-block;
  min-width: 0;
  margin-left: 0.5rem;
  color: var(--section-header-meta-value-color);
  font-size: 0.75rem;
}
.section-header__body {
  display: grid;
  gap: 0.8125rem;
}
.section-header__title {
  color: var(--section-header-title-color);
  font-size: var(--section-header-title-size);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.1;
}
.section-header__title-line {
  display: block;
}
.section-header__description {
  max-width: min(100%, var(--section-header-description-max-width));
  color: var(--section-header-description-color);
  font-size: var(--section-header-description-size);
  line-height: 1.5;
}
@media (max-width: 29.999rem) {
  .section-header__title-line {
    display: inline;
  }
  .section-header__title-line:not(:last-child):after {
    content: " ";
  }
}
@media (min-width: 48rem) and (min-height: 42rem),
  (min-width: 48rem) and (hover: hover) and (pointer: fine) {
  .section-header {
    --section-header-title-size: clamp(
      1.75rem,
      calc(-1.211rem + 5.263vw),
      3rem
    );
    --section-header-title-gap: clamp(
      1.25rem,
      calc(0.954rem + 0.526vw),
      1.375rem
    );
    --section-header-title-column: clamp(
      27.5rem,
      calc(-22.829rem + 89.474vw),
      48.75rem
    );
    --section-header-description-size: clamp(
      0.875rem,
      calc(0.579rem + 0.526vw),
      1rem
    );
    --section-header-description-min-column: clamp(
      13.75rem,
      calc(3.684rem + 17.895vw),
      18rem
    );
    --section-header-description-column: clamp(
      16.25rem,
      calc(1.447rem + 26.316vw),
      22.5rem
    );
    --section-header-description-max-width: var(
      --section-header-description-column
    );
  }
  .section-header__label {
    font-size: 0.8125rem;
  }
  .section-header__body {
    grid-template-columns: minmax(0, var(--section-header-title-column)) minmax(
        var(--section-header-description-min-column),
        var(--section-header-description-column)
      );
    gap: clamp(2.5rem, calc(1.611rem + 1.85vw), 3rem);
    align-items: end;
    justify-content: space-between;
  }
  .section-header__description {
    text-align: right;
  }
}
@media (min-width: 75rem) and (min-height: 42rem),
  (min-width: 75rem) and (hover: hover) and (pointer: fine) {
  .section-header__label {
    font-size: 0.875rem;
  }
  .section-header__meta {
    font-size: 0.75rem;
  }
  .section-header__meta-value {
    font-size: 0.8125rem;
  }
}
@media (max-width: 47.999rem),
  (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .section-header__meta {
    display: none;
  }
}
@media (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .section-header__description {
    max-width: none;
  }
  .section-header__title-line {
    display: inline;
  }
  .section-header__title-line:not(:last-child):after {
    content: " ";
  }
}
.line-node {
  --line-node-color: var(--color-faint);
  --line-node-dot-color: var(--color-accent);
  --line-node-dot-size: 0.5625rem;
  --line-node-bracket-gap: 0.9375rem;
  --line-node-bracket-size: 0.875rem;
  --line-node-translate-x: -50%;
  --line-node-translate-y: -50%;
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  color: var(--line-node-color);
  pointer-events: none;
  transform: translate(
    var(--line-node-translate-x),
    var(--line-node-translate-y)
  );
}
.line-node__dot {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: block;
  width: var(--line-node-dot-size);
  height: var(--line-node-dot-size);
  background: var(--line-node-dot-color);
  transform: translate(-50%, -50%);
}
.line-node__bracket {
  position: absolute;
  top: 0;
  display: block;
  color: var(--line-node-color);
  font-family: var(--font-mono);
  font-size: var(--line-node-bracket-size);
  line-height: 1;
  transform: translateY(-50%);
}
.line-node__bracket--left {
  right: var(--line-node-bracket-gap);
}
.line-node__bracket--right {
  left: var(--line-node-bracket-gap);
}
.axis-section {
  --axis-axis-absolute: 1.75rem;
  --axis-x: var(--axis-axis-absolute);
  --axis-list-margin-top: clamp(1.25rem, 2.8dvh, 1.5rem);
  --axis-chip-width: 2.25rem;
  --axis-row-padding-block: clamp(0.875rem, 2dvh, 1rem);
  --axis-active-row-padding-start: clamp(1.25rem, 2.9dvh, 1.375rem);
  --axis-active-row-padding-end: clamp(1.375rem, 3.1dvh, 1.5rem);
  --axis-inactive-row-min-size: clamp(3.35rem, 7.5dvh, 4.75rem);
  --axis-active-row-size: auto;
  --axis-active-row-min-size: 0;
  --axis-active-flex: 0 0 var(--axis-active-row-size);
  --axis-name-size: 1.25rem;
  --axis-description-size: 0.9375rem;
  --axis-name-weight: 600;
  --axis-name-active-weight: 700;
  --axis-system-row-min-size: var(--axis-inactive-row-min-size);
  --axis-overflow: clip;
  position: relative;
  min-height: 100vh;
  min-height: 100svh;
  overflow: var(--axis-overflow);
  background: var(--color-background);
  color: var(--color-foreground);
}
.axis-section--accent {
  background: var(--color-accent);
  color: var(--color-inverted-foreground);
}
.axis-section--accent .section-header {
  --section-header-label-color: var(--color-inverted-body);
  --section-header-number-color: var(--color-inverted-foreground);
  --section-header-slash-color: var(--color-inverted-faint);
  --section-header-meta-color: var(--color-inverted-muted);
  --section-header-meta-value-color: var(--color-inverted-foreground);
  --section-header-title-color: var(--color-inverted-foreground);
  --section-header-description-color: var(--color-inverted-body);
  color: var(--color-inverted-foreground);
}
.axis-section__inner {
  position: relative;
  z-index: 1;
  display: flex;
  min-height: inherit;
  flex-direction: column;
}
.axis-section__axis,
.axis-section__focus-trail {
  display: none;
}
.axis-section__list {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  padding: 0;
  margin: var(--axis-list-margin-top) 0 0;
  border-bottom: 1px solid var(--color-hairline);
  list-style: none;
}
.axis-section__list:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--axis-x);
  width: 0;
  border-left: 1px solid var(--color-hairline);
  content: "";
}
.axis-section__item {
  position: relative;
  z-index: 1;
  display: grid;
  flex: 1 1 var(--axis-inactive-row-min-size);
  min-height: var(--axis-inactive-row-min-size);
  min-width: 0;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  align-content: center;
  padding: var(--axis-row-padding-block) 0.25rem var(--axis-row-padding-block) 0;
  border-top: 1px solid var(--color-hairline);
  color: var(--color-soft);
}
.axis-section__item:before,
.axis-section__item:after {
  position: absolute;
  right: 0;
  left: 0;
  z-index: 2;
  display: block;
  height: 0;
  border-top: 1px solid var(--color-accent-active-line);
  content: "";
  opacity: 0;
  pointer-events: none;
  transform: scaleX(0);
  transform-origin: var(--axis-x) 50%;
  transition:
    transform 0.22s cubic-bezier(0.4, 0, 0.2, 1),
    opacity 80ms ease-out 0.18s;
  will-change: transform, opacity;
}
.axis-section__item:before {
  top: -1px;
}
.axis-section__item:after {
  bottom: -1px;
}
.axis-section__item--active {
  flex: var(--axis-active-flex);
  min-height: var(--axis-active-row-min-size);
  align-items: start;
  align-content: start;
  padding-block: var(--axis-active-row-padding-start)
    var(--axis-active-row-padding-end);
  color: var(--color-foreground);
}
.axis-section__item-link {
  position: absolute;
  inset: 0;
  z-index: 4;
  color: inherit;
  text-decoration: none;
  pointer-events: auto;
}
html[data-js="true"] .axis-section__item-link {
  pointer-events: none;
}
.axis-section__item-link:hover,
.axis-section__item-link:focus,
.axis-section__item-link:active,
.axis-section__item-link:visited {
  color: inherit;
  text-decoration: none;
}
.axis-section__item--active .axis-section__item-link,
html[data-js="true"] .axis-section__item--active .axis-section__item-link {
  pointer-events: auto;
}
.axis-section__item-link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: -0.375rem;
}
.axis-section__item--link.axis-section__item--active:hover:before,
.axis-section__item--link.axis-section__item--active:focus-within:before,
.axis-section__item--link.axis-section__item--active:hover:after,
.axis-section__item--link.axis-section__item--active:focus-within:after,
.axis-section__item--link.axis-section__item--preview-active:before,
.axis-section__item--link.axis-section__item--preview-active:after {
  opacity: 1;
  transform: scaleX(1);
  transition:
    transform 0.36s cubic-bezier(0.22, 0.61, 0.36, 1),
    opacity 80ms ease-out;
}
.axis-section__active-line {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--axis-x);
  display: none;
  width: 0;
  border-left: 1px solid var(--color-accent-active-line);
}
.axis-section__item--active > .axis-section__active-line,
.axis-section__system-slot--active > .axis-section__active-line {
  display: block;
}
.axis-section__chip {
  display: inline-flex;
  width: max-content;
  min-width: var(--axis-chip-width);
  height: 1.5rem;
  align-items: center;
  justify-content: center;
  justify-self: center;
  padding: 0 0.5rem;
  border: 1px solid var(--color-accent-line);
  background: var(--color-background);
  color: var(--color-accent-muted);
  font-family: var(--font-mono);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1;
}
.axis-section__item--active .axis-section__chip {
  align-self: start;
  margin-top: 0.25rem;
  border-color: var(--color-accent);
  background: var(--color-accent);
  color: var(--color-inverted-foreground);
  font-weight: 500;
}
.axis-section__chip-label {
  display: block;
}
.axis-section__name,
.axis-section__details {
  min-width: 0;
}
.axis-section__name {
  grid-column: 2;
  grid-row: 1;
}
.axis-section__item--active .axis-section__name {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  justify-content: space-between;
}
.axis-section__details {
  display: flex;
  grid-column: 2;
  grid-row: 2;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 0.375rem;
}
.axis-section__item--active .axis-section__details {
  margin-top: 0.625rem;
}
.axis-section__name-text {
  display: block;
  overflow-wrap: break-word;
  color: currentColor;
  font-size: var(--axis-name-size);
  font-weight: var(--axis-name-weight);
  letter-spacing: 0;
  line-height: 1.05;
}
.axis-section__item--active .axis-section__name-text {
  min-width: 0;
  color: currentColor;
  font-weight: var(--axis-name-active-weight);
}
.axis-section__category {
  color: currentColor;
  font-family: var(--font-mono);
  font-size: 0.625rem;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-transform: uppercase;
}
.axis-section__description {
  max-width: 25rem;
  color: var(--color-muted);
  font-size: var(--axis-description-size);
  line-height: 1.5;
}
.axis-section--description-active
  .axis-section__item:not(.axis-section__item--active)
  .axis-section__description {
  display: none;
}
.axis-section__arrow {
  display: none;
  flex: none;
  width: 1.25rem;
  height: 1.25rem;
  align-items: center;
  justify-content: center;
  color: currentColor;
}
.axis-section__item--active .axis-section__arrow {
  display: inline-flex;
}
.axis-section__arrow svg {
  display: block;
  width: 100%;
  height: 100%;
  transform: translate(-0.125rem, 0.125rem);
  transition: transform 0.26s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.axis-section__arrow path {
  stroke-dasharray: var(--axis-arrow-path-length);
  stroke-dashoffset: var(--axis-arrow-path-length);
}
.axis-section__arrow-line {
  --axis-arrow-path-length: 11.4;
  transition: stroke-dashoffset 0.18s ease-out;
}
.axis-section__arrow-head {
  --axis-arrow-path-length: 6.6;
  transition: stroke-dashoffset 0.14s ease-out;
}
.axis-section__item--active .axis-section__arrow svg,
.axis-section__item--preview-active .axis-section__arrow svg {
  transform: translate(0);
}
.axis-section__item--active .axis-section__arrow-line,
.axis-section__item--preview-active .axis-section__arrow-line {
  stroke-dashoffset: 0;
  transition: stroke-dashoffset 0.24s cubic-bezier(0.4, 0, 0.2, 1) 20ms;
}
.axis-section__item--active .axis-section__arrow-head,
.axis-section__item--preview-active .axis-section__arrow-head {
  stroke-dashoffset: 0;
  transition: stroke-dashoffset 0.15s cubic-bezier(0.35, 0, 0.2, 1) 0.18s;
}
.axis-section--accent .axis-section__axis,
.axis-section--accent .axis-section__list:before {
  border-left-color: var(--color-inverted-line);
}
.axis-section--accent .axis-section__list,
.axis-section--accent .axis-section__item {
  border-color: var(--color-inverted-hairline);
}
.axis-section--accent .axis-section__item:before,
.axis-section--accent .axis-section__item:after {
  border-top-color: var(--color-inverted-active-line);
}
.axis-section--accent .axis-section__item {
  color: var(--color-inverted-faint);
}
.axis-section--accent .axis-section__item--active {
  color: var(--color-inverted-foreground);
}
.axis-section--accent .axis-section__active-line {
  border-left-color: var(--color-inverted-active-line);
}
.axis-section--accent .axis-section__chip {
  border-color: var(--color-inverted-line);
  background: var(--color-accent);
  color: var(--color-inverted-body);
}
.axis-section--accent .axis-section__item--active .axis-section__chip {
  border-color: var(--color-inverted-foreground);
  background: var(--color-inverted-foreground);
  color: var(--color-accent);
}
.axis-section--accent .axis-section__description {
  color: var(--color-inverted-soft);
}
.axis-section__system-slot {
  min-height: var(--axis-system-row-min-size);
  align-items: start;
  align-content: start;
  grid-template-rows: auto auto;
}
.axis-section__system-node {
  --line-node-color: var(--color-faint);
  --line-node-dot-color: var(--color-faint);
  top: calc(var(--axis-row-padding-block) + 0.625rem);
  left: var(--axis-x);
  z-index: 2;
}
.axis-section__system-panel {
  min-width: 0;
}
.axis-section__system-panel--surface {
  grid-column: 2;
  grid-row: 1;
}
.axis-section__system-panel--system {
  grid-column: 2;
  grid-row: 2;
  margin-top: 1.125rem;
}
.axis-section__system-label {
  display: block;
  color: var(--color-muted);
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.14em;
  line-height: 1.2;
  text-transform: uppercase;
}
.axis-section__system-description {
  display: block;
  max-width: 25rem;
  margin-top: 0.5rem;
  color: var(--color-muted);
  font-size: var(--axis-description-size);
  line-height: 1.5;
}
.axis-section__system-slot--active .axis-section__system-label {
  color: var(--color-accent);
}
.axis-section__system-slot--active .axis-section__system-node {
  --line-node-dot-color: var(--color-accent);
}
.axis-section__system-slot--active .axis-section__system-description {
  color: var(--color-body);
}
@media (min-width: 48rem) and (min-height: 42rem),
  (min-width: 48rem) and (hover: hover) and (pointer: fine) {
  .axis-section {
    --axis-x: clamp(
      20rem,
      calc(var(--site-axis-position-md) - var(--site-gutter)),
      calc(var(--site-container-inner-width) - 14rem)
    );
    --axis-list-margin-top: clamp(1.25rem, 2.8dvh, 1.75rem);
    --axis-row-padding-block: clamp(0.5rem, 1.1dvh, 0.875rem);
    --axis-inactive-row-min-size: clamp(3.4rem, 7.5dvh, 5rem);
    --axis-active-row-size: clamp(7.75rem, 20dvh, 10rem);
    --axis-active-row-min-size: 7rem;
    --axis-active-flex: 0 1 var(--axis-active-row-size);
    --axis-name-size: clamp(1.75rem, calc(0.417rem + 2.78vw), 2.5rem);
  }
  .axis-section .section-header {
    --section-header-title-column: var(--axis-x);
  }
  .axis-section .section-header__body {
    grid-template-columns: minmax(0, var(--axis-x)) minmax(0, 1fr);
    gap: 0;
  }
  .axis-section .section-header__description {
    justify-self: end;
  }
  .axis-section__axis {
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(
      var(--site-container-offset) + var(--site-gutter) + var(--axis-x)
    );
    display: block;
    width: 0;
    border-left: 1px solid var(--color-hairline);
  }
  .axis-section__list:before {
    content: none;
  }
  .axis-section__item {
    grid-template-columns: var(--axis-x) minmax(0, 1fr);
    padding-block: var(--axis-row-padding-block);
    padding-inline: 0;
  }
  .axis-section__item--active {
    align-items: center;
    align-content: center;
    padding-block: var(--axis-row-padding-block);
  }
  .axis-section__chip {
    position: absolute;
    top: 50%;
    left: var(--axis-x);
    transform: translate(-50%, -50%);
  }
  .axis-section__item--active .axis-section__chip {
    align-self: auto;
    margin-top: 0;
  }
  .axis-section__name {
    grid-column: 1;
    grid-row: 1;
    padding-right: 2.5rem;
    text-align: right;
  }
  .axis-section__item--active .axis-section__name {
    display: block;
  }
  .axis-section__details {
    grid-column: 2;
    grid-row: 1;
    gap: 0.75rem;
    padding-right: 1.75rem;
    padding-left: 2.5rem;
    margin-top: 0;
  }
  .axis-section__category {
    font-size: 0.6875rem;
  }
  .axis-section__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    width: 1.375rem;
    height: 1.375rem;
    transform: translateY(-50%);
  }
  .axis-section__system-slot {
    grid-template-columns: var(--axis-x) minmax(0, 1fr);
    grid-template-rows: auto;
    align-items: center;
    align-content: center;
  }
  .axis-section__system-node {
    top: 50%;
  }
  .axis-section__system-panel--surface {
    grid-column: 1;
    grid-row: 1;
    padding-right: 2.5rem;
    text-align: right;
  }
  .axis-section__system-panel--system {
    grid-column: 2;
    grid-row: 1;
    padding-right: 1.75rem;
    padding-left: 2.5rem;
    margin-top: 0;
  }
  .axis-section__system-panel--surface .axis-section__system-description {
    max-width: 18.75rem;
    margin-left: auto;
  }
  .axis-section__system-panel--system .axis-section__system-description {
    max-width: 20rem;
  }
}
@media (min-width: 75rem) and (min-height: 42rem),
  (min-width: 75rem) and (hover: hover) and (pointer: fine) {
  .axis-section {
    --axis-x: clamp(
      22rem,
      calc(var(--site-axis-position-lg) - var(--site-gutter)),
      calc(var(--site-container-inner-width) - 18rem)
    );
    --axis-list-margin-top: clamp(1.25rem, 2.8dvh, 2rem);
    --axis-inactive-row-min-size: clamp(3.4rem, 7.2dvh, 5.25rem);
    --axis-active-row-size: clamp(8rem, 21dvh, 11.875rem);
    --axis-active-row-min-size: 7.25rem;
  }
  .axis-section__name {
    padding-right: 3rem;
  }
  .axis-section__details {
    gap: 0.875rem;
    padding-right: 2.75rem;
    padding-left: 3rem;
  }
  .axis-section__system-panel--surface {
    padding-right: 3rem;
  }
  .axis-section__system-panel--system {
    padding-right: 2.75rem;
    padding-left: 3rem;
  }
  .axis-section__category {
    font-size: 0.75rem;
  }
}
@supports (height: 100dvh) {
  .axis-section {
    min-height: 100dvh;
  }
}
@media (max-width: 47.999rem),
  (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .axis-section {
    --axis-list-margin-top: 2rem;
    --axis-row-padding-block: 1.125rem;
    --axis-active-row-padding-start: 1.5rem;
    --axis-active-row-padding-end: 1.625rem;
    --axis-overflow: visible;
  }
  .axis-section__list {
    flex: 0 0 auto;
    min-height: auto;
  }
  .axis-section__item {
    flex: 0 0 auto;
    min-height: 0;
  }
  .axis-section__system-slot {
    flex: 0 0 auto;
    min-height: 0;
    row-gap: 0.875rem;
    padding-block: 1.375rem 1.25rem;
  }
  .axis-section__system-node {
    position: relative;
    top: auto;
    left: auto;
    grid-column: 1;
    grid-row: 1;
    justify-self: center;
    align-self: start;
    margin-top: 0.40625rem;
    --line-node-translate-x: 0;
    --line-node-translate-y: 0;
  }
  .axis-section__system-panel--system {
    margin-top: 0;
  }
  .axis-section__system-label {
    color: var(--color-muted);
  }
  .axis-section__system-description {
    color: var(--color-body);
    line-height: 1.5;
  }
}
.work .axis-section__item-meta {
  display: grid;
  grid-column: 2;
  grid-row: 3;
  gap: 0.375rem;
  max-width: min(100%, 24rem);
  margin-top: 0.75rem;
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  line-height: 1.2;
  text-transform: uppercase;
}
.work .axis-section__item-meta-lavalamp {
  display: none;
}
.work .axis-section__item-meta-line {
  display: flex;
  gap: 0.4em;
  align-items: baseline;
  min-width: 0;
  white-space: nowrap;
}
.work .axis-section__item-meta-line + .axis-section__item-meta-line {
  padding-left: 1.08em;
}
.work .axis-section__item-meta-bracket {
  color: var(--color-inverted-faint);
  font-weight: 400;
}
.work .axis-section__item-meta-text {
  color: var(--color-inverted-muted);
  font-weight: 500;
}
@media (hover: hover) and (pointer: fine) {
  .work .axis-section__item-meta {
    display: none;
  }
  html[data-js="true"] .work .axis-section__item-link:focus-visible {
    outline: 0;
  }
  .work
    .axis-section__item--link[data-axis-available="true"]
    .axis-section__item-link,
  html[data-motion-failed="true"] .work .axis-section__item-link {
    pointer-events: auto;
  }
  html[data-motion-failed="true"] .work .axis-section__item-link:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: -0.375rem;
  }
  .work.axis-section--description-active .axis-section__description {
    display: block;
    max-height: 0;
    overflow: hidden;
    clip-path: inset(0 0 100% 0);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.1875rem);
    transition:
      max-height 0.32s var(--ease-out),
      clip-path 0.32s cubic-bezier(0.2, 0.75, 0.2, 1),
      opacity 0.18s ease-out,
      transform 0.32s cubic-bezier(0.2, 0.75, 0.2, 1),
      visibility 0.18s ease-out;
  }
  .work .axis-section__arrow {
    display: inline-flex;
    visibility: hidden;
  }
  .work .axis-section__arrow svg {
    transform: translate(-0.125rem, 0.125rem);
    transition: transform 0.26s cubic-bezier(0.22, 0.61, 0.36, 1);
  }
  .work .axis-section__item--active .axis-section__arrow,
  .work .axis-section__item--preview-active .axis-section__arrow {
    visibility: visible;
  }
  .work .axis-section__item--active .axis-section__arrow svg,
  .work .axis-section__item--preview-active .axis-section__arrow svg {
    transform: translate(0);
  }
  .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active) {
    color: var(--color-inverted-faint);
  }
  .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    > .axis-section__active-line {
    display: none;
  }
  .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__chip {
    border-color: var(--color-inverted-line);
    background: var(--color-accent);
    color: var(--color-inverted-body);
    font-weight: 400;
  }
  .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__arrow {
    visibility: hidden;
  }
  .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__arrow
    svg {
    transform: translate(-0.125rem, 0.125rem);
  }
  .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__arrow
    path {
    stroke-dashoffset: var(--axis-arrow-path-length);
    transition: none;
  }
  .work[data-axis-preview-active="true"].axis-section--description-active
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__description {
    max-height: 0;
    clip-path: inset(0 0 100% 0);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.1875rem);
  }
  .work .axis-section__item--preview-active {
    color: var(--color-inverted-foreground);
  }
  .work .axis-section__item--preview-active .axis-section__details {
    margin-top: 0.625rem;
  }
  .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__details {
    margin-top: 0.375rem;
  }
  .work .axis-section__item--preview-active > .axis-section__active-line {
    display: block;
  }
  .work .axis-section__item--preview-active:before,
  .work .axis-section__item--preview-active:after {
    opacity: 1;
    transform: scaleX(1);
    transition:
      transform 0.36s cubic-bezier(0.22, 0.61, 0.36, 1),
      opacity 80ms ease-out;
  }
  .work .axis-section__item--preview-active .axis-section__chip {
    border-color: var(--color-inverted-foreground);
    background: var(--color-inverted-foreground);
    color: var(--color-accent);
    font-weight: 500;
  }
  .work .axis-section__item--preview-active .axis-section__arrow {
    visibility: visible;
  }
  .work.axis-section--description-active
    .axis-section__item--active
    .axis-section__description,
  .work.axis-section--description-active
    .axis-section__item--preview-active
    .axis-section__description {
    max-height: 4.5rem;
    clip-path: inset(0);
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}
@media (min-width: 48rem) {
  .work .axis-section__item-meta {
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 3;
    display: none;
    grid-column: auto;
    grid-row: auto;
    font-size: 0.625rem;
    max-width: none;
    margin-top: 0;
    line-height: 1;
    pointer-events: none;
    transform: translateY(-50%);
  }
  .work .axis-section__item--active .axis-section__item-meta,
  .work .axis-section__item--preview-active .axis-section__item-meta {
    display: grid;
  }
  .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__item-meta {
    display: none;
  }
}
@media (min-width: 48rem) and (hover: hover) and (pointer: fine) {
  .work .axis-section__item-meta-lavalamp {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    display: grid;
    gap: 0.375rem;
    max-width: none;
    padding: 0;
    margin: 0;
    font-family: var(--font-mono);
    font-size: 0.625rem;
    font-weight: 500;
    letter-spacing: 0.12em;
    line-height: 1;
    text-transform: uppercase;
    list-style: none;
    opacity: 0;
    pointer-events: none;
    transform: translate3d(0, var(--work-meta-lavalamp-y, 0px), 0);
    transition:
      transform var(--work-meta-lavalamp-duration, 0.32s)
        cubic-bezier(0.16, 1, 0.3, 1),
      opacity 0.18s var(--ease-out);
    will-change: transform;
  }
  .work[data-work-meta-lavalamp-ready="true"]
    .axis-section__item-meta-lavalamp {
    opacity: 1;
  }
  .work[data-work-meta-lavalamp-ready="true"] .axis-section__item-meta {
    visibility: hidden;
  }
  .work[data-work-meta-lavalamp-instant="true"]
    .axis-section__item-meta-lavalamp {
    transition-duration: 0s;
  }
}
@media (min-width: 48rem) and (hover: none) {
  .work .axis-section__item .axis-section__item-meta {
    display: grid;
  }
}
@media (min-width: 75rem) {
  .work .axis-section__item-meta {
    font-size: 0.6875rem;
  }
}
@media (min-width: 75rem) and (hover: hover) and (pointer: fine) {
  .work .axis-section__item-meta-lavalamp {
    font-size: 0.6875rem;
  }
}
@media (max-width: 47.999rem),
  (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .work.axis-section--description-active
    .axis-section__item
    .axis-section__description {
    display: block;
  }
  .work .axis-section__item-link {
    pointer-events: auto;
  }
  .work .axis-section__item {
    padding-block: 1.25rem;
  }
  .work.axis-section--accent .axis-section__item {
    color: var(--color-inverted-foreground);
  }
  .work.axis-section--accent .axis-section__description {
    color: var(--color-inverted-body);
  }
  .work.axis-section--accent .axis-section__item .axis-section__chip {
    border-color: var(--color-inverted-line);
    background: var(--color-accent);
    color: var(--color-inverted-foreground);
  }
  .work .axis-section__item--active {
    align-items: center;
    align-content: center;
    padding: 1.25rem 0.25rem 1.25rem 0;
    color: var(--color-inverted-foreground);
  }
  .work .axis-section__item--active > .axis-section__active-line {
    display: none;
  }
  .work .axis-section__item--active .axis-section__chip {
    align-self: center;
    margin-top: 0;
    border-color: var(--color-inverted-line);
    background: var(--color-accent);
    color: var(--color-inverted-foreground);
    font-weight: 400;
  }
  .work .axis-section__name,
  .work .axis-section__item--active .axis-section__name {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    justify-content: space-between;
  }
  .work .axis-section__item--active .axis-section__name-text {
    font-weight: var(--axis-name-weight);
  }
  .work .axis-section__details,
  .work .axis-section__item--active .axis-section__details {
    margin-top: 0.625rem;
  }
  .work .axis-section__arrow {
    display: inline-flex;
    visibility: visible;
  }
  .work .axis-section__arrow svg {
    transform: translate(0);
  }
  .work .axis-section__arrow path {
    stroke-dashoffset: 0;
  }
}
.hero {
  --hero-body-color: var(--color-body);
  --hero-headline-size: clamp(2.5rem, calc(0.75rem + 9.1vw), 5.25rem);
  --hero-headline-line-height: 0.94;
  --hero-label-size: 0.875rem;
  --hero-description-size: clamp(1rem, calc(0.925rem + 0.32vw), 1.125rem);
  --hero-section-padding-top: clamp(2rem, min(4.25dvh, 7vw), 3.25rem);
  --hero-section-padding-bottom: clamp(2rem, min(4dvh, 6vw), 2.5rem);
  --hero-label-gap: clamp(1rem, min(3.2dvh, 6vw), 2.5rem);
  --hero-description-gap: clamp(1.25rem, min(2.7dvh, 5vw), 2rem);
  --hero-text-inline-end: 0rem;
  --hero-meta-size: 0.75rem;
  --hero-mono-tracking: 0.06em;
  --hero-heading-tracking: -0.04em;
  --hero-body-tracking: -0.005em;
  --hero-body-line-height: 1.56;
  position: relative;
  display: grid;
  min-height: calc(100vh - var(--site-header-height));
  min-height: calc(100svh - var(--site-header-height));
  overflow-x: clip;
}
.hero__section {
  z-index: 3;
  display: grid;
  min-height: inherit;
  grid-template-rows: minmax(0, 0.32fr) auto minmax(0, 1fr) auto;
  padding-block: var(--hero-section-padding-top)
    var(--hero-section-padding-bottom);
}
@supports (height: 100dvh) {
  .hero {
    min-height: calc(100dvh - var(--site-header-height));
  }
}
.hero__intro {
  grid-row: 2;
  min-width: 0;
}
.hero__section-label,
.hero__headline,
.hero__description,
.hero__meta {
  margin: 0;
}
.hero__section-label {
  color: var(--hero-body-color);
  font-family: var(--font-mono);
  font-size: var(--hero-label-size);
  letter-spacing: var(--hero-mono-tracking);
  line-height: 1.2;
}
.hero__slash {
  margin: 0 0.5rem;
  color: var(--color-faint);
}
.hero__headline {
  width: calc(100% - var(--hero-text-inline-end));
  max-width: 100%;
  margin-top: var(--hero-label-gap);
  color: inherit;
  font-size: var(--hero-headline-size);
  font-weight: 700;
  letter-spacing: var(--hero-heading-tracking);
  line-height: var(--hero-headline-line-height);
  white-space: normal;
}
.hero__nowrap {
  white-space: nowrap;
}
.hero__description {
  width: calc(100% - var(--hero-text-inline-end));
  max-width: 20rem;
  margin-top: var(--hero-description-gap);
  color: var(--color-muted);
  font-size: var(--hero-description-size);
  font-weight: 400;
  letter-spacing: var(--hero-body-tracking);
  line-height: var(--hero-body-line-height);
  white-space: normal;
}
.hero__bottom {
  grid-row: 4;
  display: flex;
  gap: 1rem;
  align-items: flex-end;
  justify-content: space-between;
}
.hero__meta {
  display: grid;
  grid-template-columns: 0.5rem auto;
  gap: 0.25rem 0.75rem;
  align-items: center;
  color: var(--hero-body-color);
  font-family: var(--font-mono);
  font-size: var(--hero-meta-size);
  letter-spacing: var(--hero-mono-tracking);
  line-height: 1.2;
  text-transform: uppercase;
}
.hero__location {
  display: contents;
  line-height: 1;
}
.hero__meta-marker {
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  background: var(--color-accent);
}
.hero__time {
  grid-column: 2;
  color: var(--color-muted);
}
.hero__accent {
  color: var(--color-accent);
}
@media (min-width: 30rem) {
  .hero__meta {
    display: flex;
    flex-wrap: nowrap;
    gap: 2rem;
  }
  .hero__location {
    display: inline-flex;
    gap: 0.75rem;
    align-items: center;
  }
  .hero__time {
    grid-column: auto;
  }
}
@media (min-width: 75rem) and (min-height: 42rem),
  (min-width: 75rem) and (hover: hover) and (pointer: fine) {
  .hero {
    --hero-headline-size: clamp(5.5rem, 7vw, 15rem);
    --hero-text-inline-end: -0.75rem;
  }
  .hero__headline-line {
    display: block;
  }
}
@media (min-width: 48rem) and (min-height: 52.5rem) {
  .hero {
    --hero-section-padding-top: clamp(3rem, 5dvh, 5rem);
    --hero-section-padding-bottom: clamp(2.5rem, 4dvh, 4rem);
    --hero-label-gap: clamp(2.25rem, 3.5dvh, 3.5rem);
    --hero-description-gap: clamp(1.75rem, 2.5dvh, 2.75rem);
  }
}
@media (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .hero {
    --hero-headline-size: clamp(2.75rem, 11.5dvh, 3.5rem);
    --hero-description-size: clamp(0.9375rem, 3.4dvh, 1rem);
    --hero-section-padding-top: clamp(1.75rem, 6dvh, 2rem);
    --hero-section-padding-bottom: clamp(1.75rem, 6dvh, 2rem);
    --hero-label-gap: clamp(0.875rem, 3dvh, 1rem);
    --hero-description-gap: clamp(1rem, 3.5dvh, 1.25rem);
    --hero-label-size: 0.75rem;
    --hero-meta-size: 0.6875rem;
    --hero-body-line-height: 1.5;
    --hero-text-inline-end: 0rem;
  }
  .hero__section {
    grid-template-rows: minmax(0, 0.12fr) auto minmax(1.5rem, 1fr) auto;
  }
  .hero__description {
    max-width: 34rem;
    white-space: normal;
  }
  .hero .site-button--lg {
    --site-button-font-size: clamp(1.375rem, 5dvh, 1.625rem);
  }
}
.site-reveal__layer--reveal .hero__section-label {
  color: var(--color-inverted-body);
}
.site-reveal__layer--reveal .hero__section-label .hero__accent {
  color: var(--color-inverted-foreground);
}
.site-reveal__layer--reveal .hero__slash {
  color: var(--color-inverted-faint);
}
.site-reveal__layer--reveal .hero__description,
.site-reveal__layer--reveal .hero__meta,
.site-reveal__layer--reveal .hero__time {
  color: var(--color-inverted-body);
}
.site-reveal__layer--reveal .hero__meta-marker {
  background: var(--color-inverted-foreground);
}
@media (min-width: 37.5rem) {
  .hero__description {
    max-width: 37.5rem;
    white-space: pre-line;
  }
}
.practice {
  --axis-name-active-weight: 600;
  --axis-active-row-size: var(--axis-inactive-row-min-size);
  --axis-active-row-min-size: var(--axis-inactive-row-min-size);
  --axis-active-flex: 1 1 var(--axis-inactive-row-min-size);
}
.practice .axis-section__item--active {
  align-items: center;
  align-content: center;
  padding-block: var(--axis-row-padding-block);
}
.practice .axis-section__item--active .axis-section__chip {
  align-self: auto;
  margin-top: 0;
}
.practice .axis-section__item--active .axis-section__name {
  display: block;
}
.practice .axis-section__item--active .axis-section__details {
  margin-top: 0.375rem;
}
@media (min-width: 48rem) and (min-height: 42rem),
  (min-width: 48rem) and (hover: hover) and (pointer: fine) {
  .practice {
    --axis-inactive-row-min-size: clamp(4.5rem, 9dvh, 5.75rem);
    --axis-name-size: clamp(1.75rem, calc(0.417rem + 2.78vw), 2rem);
  }
  .practice .axis-section__details {
    padding-right: 0;
  }
}
@media (min-width: 75rem) and (min-height: 42rem),
  (min-width: 75rem) and (hover: hover) and (pointer: fine) {
  .practice {
    --axis-inactive-row-min-size: clamp(4.75rem, 8.8dvh, 6rem);
    --axis-name-size: 2rem;
  }
}
@media (max-width: 47.999rem),
  (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .practice .axis-section__item {
    align-items: start;
    align-content: start;
    padding-block: 1.125rem 1.25rem;
    color: var(--color-foreground);
  }
  .practice .axis-section__chip {
    align-self: center;
    margin-top: 0;
    border-color: var(--color-hairline);
    color: var(--color-accent);
  }
  .practice .axis-section__name {
    align-self: center;
  }
  .practice .axis-section__details {
    gap: 0.5rem;
    margin-top: 0.75rem;
  }
  .practice .axis-section__description {
    max-width: 22rem;
    color: var(--color-body);
  }
  .practice .axis-section__item--active > .axis-section__active-line {
    display: none;
  }
  .practice .axis-section__item--active .axis-section__chip {
    align-self: center;
    margin-top: 0;
    border-color: var(--color-hairline);
    background: var(--color-background);
    color: var(--color-accent);
    font-weight: 400;
  }
  .practice .axis-section__item--active .axis-section__name {
    display: block;
  }
  .practice .axis-section__item--active .axis-section__name-text {
    font-weight: var(--axis-name-weight);
  }
  .practice .axis-section__item--active .axis-section__details {
    margin-top: 0.75rem;
  }
  .practice .axis-section__system-node {
    --line-node-dot-color: var(--color-accent);
  }
  .practice .axis-section__system-label {
    color: var(--color-accent);
  }
}
.about {
  --about-axis-x: 1.75rem;
  --about-measure-height: 22.5rem;
  --about-span-color: var(--color-accent-active-line);
  position: relative;
  overflow: clip;
  background: var(--color-background);
  color: var(--color-foreground);
}
.about__inner {
  position: relative;
  z-index: 2;
}
.about__axis {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(
    var(--site-container-offset) + var(--site-gutter) + var(--about-axis-x)
  );
  z-index: 1;
  display: none;
  width: 0;
  border-left: 1px solid var(--color-hairline);
  pointer-events: none;
}
.about__measure {
  position: relative;
  z-index: 2;
  height: var(--about-measure-height);
  margin-top: var(--section-padding-block);
}
.about__measure:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--about-axis-x);
  display: block;
  width: 0;
  border-left: 1px solid var(--about-span-color);
  content: "";
}
.about__endpoint,
.about__node {
  position: absolute;
  left: var(--about-axis-x);
  z-index: 3;
}
.about__endpoint--idea {
  top: 0;
}
.about__node {
  top: 50%;
}
.about__endpoint--form {
  top: 100%;
}
.about__endpoint-tick {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 0.5625rem;
  height: 0;
  border-top: 1px solid var(--about-span-color);
  transform: translate(-50%, -50%);
}
.about__endpoint-label {
  position: absolute;
  top: 0;
  left: 1.5rem;
  display: block;
  color: var(--color-muted);
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  line-height: 1.2;
  transform: translateY(-50%);
  white-space: nowrap;
}
.about__node-marker {
  top: 0;
  left: 0;
  --line-node-color: var(--color-faint);
  --line-node-dot-color: var(--color-accent);
}
.about__content {
  position: absolute;
  top: 0;
  left: 2rem;
  display: block;
  width: min(18rem, calc(100vw - 5rem));
  transform: translateY(-50%);
}
.about__brand,
.about__statement {
  margin: 0;
}
.about__brand {
  color: var(--color-foreground);
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.05;
}
.about__statement {
  margin-top: 0.5rem;
  color: var(--color-body);
  font-size: 0.875rem;
  letter-spacing: 0;
  line-height: 1.55;
}
@media (min-width: 48rem) and (min-height: 42rem),
  (min-width: 48rem) and (hover: hover) and (pointer: fine) {
  .about {
    --about-axis-x: clamp(
      20rem,
      calc(var(--site-axis-position-md) - var(--site-gutter)),
      calc(var(--site-container-inner-width) - 14rem)
    );
    --about-measure-height: 23rem;
  }
  .about__measure {
    margin-top: clamp(2.75rem, 8dvh, 5rem);
  }
  .about__axis {
    display: block;
  }
  .about__endpoint-label {
    left: 2rem;
    font-size: 0.75rem;
  }
  .about__content {
    position: static;
    display: contents;
    width: auto;
    transform: none;
  }
  .about__brand,
  .about__statement {
    position: absolute;
    top: 0;
    transform: translateY(-50%);
  }
  .about__brand {
    right: 3rem;
    width: min(48.5rem, calc(var(--about-axis-x) - 3rem));
    font-size: 1.75rem;
    text-align: right;
  }
  .about__statement {
    left: 3rem;
    width: min(
      17.5rem,
      calc(var(--site-container-inner-width) - var(--about-axis-x) - 3rem)
    );
    margin-top: 0;
    font-size: 0.9375rem;
  }
}
@media (min-width: 75rem) and (min-height: 42rem),
  (min-width: 75rem) and (hover: hover) and (pointer: fine) {
  .about {
    --about-axis-x: clamp(
      22rem,
      calc(var(--site-axis-position-lg) - var(--site-gutter)),
      calc(var(--site-container-inner-width) - 18rem)
    );
    --about-measure-height: 22.75rem;
  }
  .about__measure {
    margin-top: clamp(2.5rem, 7dvh, 4.75rem);
  }
  .about__brand {
    font-size: 1.875rem;
  }
  .about__statement {
    font-size: 1rem;
  }
}
@media (max-width: 47.999rem) {
  .about {
    overflow: visible;
  }
}
@media (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .about {
    --about-measure-height: 15rem;
    overflow: visible;
  }
}
.contact {
  --contact-axis-x: 1.75rem;
  --contact-plate-width: min(100%, 32rem);
  --contact-plate-padding-inline: clamp(1.5rem, 6vw, 2.25rem);
  --contact-plate-padding-block: clamp(1.625rem, 5vw, 2.25rem);
  position: relative;
  display: grid;
  min-height: 100vh;
  min-height: 100svh;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: clip;
  background: var(--color-background);
  color: var(--color-foreground);
}
.contact:before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(
    var(--site-container-offset) + var(--site-gutter) + var(--contact-axis-x)
  );
  z-index: 1;
  display: none;
  width: 0;
  border-left: 1px solid var(--color-hairline);
  content: "";
  pointer-events: none;
}
.contact__main {
  position: relative;
  z-index: 2;
  display: grid;
  min-height: 0;
  grid-template-rows: auto minmax(0, 1fr);
  row-gap: var(--section-padding-block);
  padding-block: var(--section-padding-block);
}
.contact__section-header {
  min-width: 0;
}
.contact__plate-wrap {
  position: relative;
  display: flex;
  min-height: clamp(16rem, 34dvh, 22rem);
  align-items: center;
  justify-content: center;
}
.contact__plate {
  width: var(--contact-plate-width);
  padding: var(--contact-plate-padding-block)
    var(--contact-plate-padding-inline);
  background: var(--color-accent);
  color: var(--color-inverted-foreground);
  text-align: center;
}
.contact__plate .site-button {
  max-width: 100%;
  text-align: center;
}
.contact__direct {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  align-items: baseline;
  justify-content: center;
  margin: clamp(1.5rem, 4vw, 2rem) 0 0;
  padding-top: clamp(1.25rem, 3.4vw, 1.75rem);
  border-top: 1px solid var(--color-inverted-hairline);
  color: var(--color-inverted-muted);
  font-family: var(--font-mono);
  font-size: clamp(0.75rem, calc(0.65rem + 0.35vw), 0.9375rem);
  letter-spacing: 0.06em;
  line-height: 1.35;
}
@supports (height: 100dvh) {
  .contact {
    min-height: 100dvh;
  }
}
@media (min-width: 48rem) and (min-height: 42rem),
  (min-width: 48rem) and (hover: hover) and (pointer: fine) {
  .contact {
    --contact-axis-x: clamp(
      20rem,
      calc(var(--site-axis-position-md) - var(--site-gutter)),
      calc(var(--site-container-inner-width) - 14rem)
    );
    --contact-plate-width: clamp(30rem, 33vw, 42rem);
    --contact-plate-padding-inline: clamp(2rem, 2.6vw, 3rem);
    --contact-plate-padding-block: clamp(1.75rem, 2.8vw, 2.75rem);
  }
  .contact:before {
    display: block;
  }
  .contact__main {
    row-gap: clamp(2.5rem, 6dvh, 5rem);
    padding-block: clamp(2.25rem, 5dvh, 3.75rem);
  }
  .contact__plate-wrap {
    min-height: clamp(13rem, 29dvh, 18rem);
    justify-content: initial;
  }
  .contact__plate {
    position: absolute;
    top: 50%;
    left: var(--contact-axis-x);
    transform: translate(-50%, -50%);
  }
}
@media (min-width: 75rem) and (min-height: 42rem),
  (min-width: 75rem) and (hover: hover) and (pointer: fine) {
  .contact {
    --contact-axis-x: clamp(
      22rem,
      calc(var(--site-axis-position-lg) - var(--site-gutter)),
      calc(var(--site-container-inner-width) - 18rem)
    );
  }
}
@media (max-width: 47.999rem),
  (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .contact {
    min-height: auto;
    grid-template-rows: auto auto auto;
  }
  .contact__main {
    grid-template-rows: auto auto;
    row-gap: var(--section-padding-block);
  }
  .contact__plate-wrap {
    min-height: 0;
    align-items: start;
  }
}
@media (max-width: 47.999rem) {
  .contact__direct {
    display: grid;
    gap: 0.375rem;
  }
}
@media (max-width: 64rem) and (max-height: 30rem) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
  .contact__main {
    row-gap: 1.5rem;
    padding-block: 1.5rem;
  }
}
.work-practice-motion,
.work-practice-motion__sticky,
.work-practice-motion__layer {
  display: contents;
}
.work-practice-motion__scroll-anchor {
  display: none;
}
@media (max-height: 37.499rem) {
  .work-practice-motion .section-header__meta {
    display: none;
  }
  .work-practice-motion .axis-section {
    --axis-overflow: visible;
    min-height: auto;
  }
  .work-practice-motion .axis-section__inner,
  .work-practice-motion .axis-section__list {
    min-height: auto;
  }
  .work-practice-motion .axis-section__list,
  .work-practice-motion .axis-section__item {
    flex: 0 0 auto;
  }
  .work-practice-motion .axis-section__item {
    min-height: 0;
    padding-block: 1.625rem;
  }
  .work-practice-motion
    .axis-section__item--active
    > .axis-section__active-line,
  .work-practice-motion
    .axis-section__system-slot--active
    > .axis-section__active-line {
    display: none;
  }
  .work-practice-motion
    .work.axis-section--description-active
    .axis-section__item
    .axis-section__description {
    display: block;
  }
  .work-practice-motion .work .axis-section__item-link {
    pointer-events: auto;
  }
  .work-practice-motion .work.axis-section--accent .axis-section__item {
    color: var(--color-inverted-foreground);
  }
  .work-practice-motion .work.axis-section--accent .axis-section__category {
    color: var(--color-inverted-body);
  }
  .work-practice-motion .work.axis-section--accent .axis-section__description {
    color: var(--color-inverted-soft);
  }
  .work-practice-motion .work.axis-section--accent .axis-section__chip,
  .work-practice-motion
    .work.axis-section--accent
    .axis-section__item--active
    .axis-section__chip {
    border-color: var(--color-inverted-line);
    background: var(--color-accent);
    color: var(--color-inverted-foreground);
    font-weight: 400;
  }
  .work-practice-motion
    .work
    .axis-section__item--active
    .axis-section__name-text,
  .work-practice-motion
    .practice
    .axis-section__item--active
    .axis-section__name-text {
    font-weight: var(--axis-name-weight);
  }
  .work-practice-motion .work .axis-section__arrow {
    display: inline-flex;
  }
  .work-practice-motion .practice .axis-section__item,
  .work-practice-motion .practice .axis-section__item--active {
    color: var(--color-foreground);
  }
  .work-practice-motion .practice .axis-section__chip,
  .work-practice-motion
    .practice
    .axis-section__item--active
    .axis-section__chip {
    border-color: var(--color-hairline);
    background: var(--color-background);
    color: var(--color-accent);
    font-weight: 400;
  }
  .work-practice-motion .practice .axis-section__description,
  .work-practice-motion .practice .axis-section__system-description {
    color: var(--color-body);
  }
  .work-practice-motion .practice .axis-section__system-node {
    --line-node-dot-color: var(--color-accent);
  }
  .work-practice-motion .practice .axis-section__system-label {
    color: var(--color-accent);
  }
}
@media (min-width: 48rem) and (min-height: 37.5rem) {
  html[data-js="true"]:not([data-motion-failed="true"])
    .work-practice-motion[data-work-practice-motion] {
    --wp-work-clip-top: 0%;
    position: relative;
    display: block;
    min-height: 320vh;
    min-height: 320dvh;
    background: var(--color-background);
  }
  html[data-js="true"] .work-practice-motion__scroll-anchor {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
  }
  .work-practice-motion[data-motion-settling="true"] *,
  .work-practice-motion[data-motion-settling="true"] *:before,
  .work-practice-motion[data-motion-settling="true"] *:after {
    transition-duration: 0s !important;
    transition-delay: 0s !important;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__sticky {
    position: sticky;
    top: 0;
    display: block;
    height: 100vh;
    height: 100dvh;
    overflow: clip;
    background: var(--color-background);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer {
    position: absolute;
    inset: 0;
    display: block;
    min-width: 0;
    overflow: clip;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice {
    z-index: 1;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work {
    z-index: 2;
    clip-path: inset(var(--wp-work-clip-top) 0 0 0);
  }
  .work-practice-motion[data-motion-enabled="true"][data-motion-active="true"]
    .work-practice-motion__layer--work {
    will-change: clip-path;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer
    > .axis-section {
    --axis-focus-top: 0px;
    --axis-focus-height: 0px;
    --axis-focus-reveal: 0;
    --axis-focus-strength: 0;
    height: 100%;
    min-height: 100%;
    overflow: clip;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__inner {
    height: 100%;
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__item {
    flex: 1 1 var(--axis-inactive-row-min-size);
    min-height: var(--axis-inactive-row-min-size);
    align-items: center;
    align-content: center;
    padding-block: var(--axis-row-padding-block);
    transition:
      color 0.22s var(--ease-out),
      opacity 0.22s var(--ease-out);
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__item--active {
    flex: 1 1 var(--axis-inactive-row-min-size);
    min-height: var(--axis-inactive-row-min-size);
    align-items: center;
    align-content: center;
    padding-block: var(--axis-row-padding-block);
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__chip,
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__item--active
    .axis-section__chip {
    align-self: auto;
    margin-top: 0;
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__details,
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__item--active
    .axis-section__details {
    margin-top: 0;
    transform: none;
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__name,
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__item--active
    .axis-section__name {
    transform: none;
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__item--active
    .axis-section__name-text {
    font-weight: var(--axis-name-weight);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__active-line {
    display: none;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__focus-trail {
    position: absolute;
    top: var(--axis-focus-top);
    left: var(
      --axis-focus-left,
      calc(var(--site-container-offset) + var(--site-gutter) + var(--axis-x))
    );
    z-index: 0;
    display: block;
    width: 0;
    height: var(--axis-focus-height);
    color: var(--color-accent);
    opacity: var(--axis-focus-reveal);
    pointer-events: none;
    transition:
      top 0.26s cubic-bezier(0.2, 0.75, 0.2, 1),
      height 0.26s cubic-bezier(0.2, 0.75, 0.2, 1),
      opacity 0.14s ease-out;
    will-change: opacity;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer
    > .axis-section
    .axis-section__focus-trail:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    display: block;
    border-left: 1px solid currentColor;
    content: "";
    opacity: var(--axis-focus-strength);
    transition: opacity 0.14s ease-out;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__focus-trail {
    color: var(--color-inverted-active-line);
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .axis-section--description-active
    .axis-section__description {
    display: block;
    max-height: 0;
    overflow: hidden;
    clip-path: inset(0 0 100% 0);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.1875rem);
    transition:
      max-height 0.32s var(--ease-out),
      clip-path 0.32s cubic-bezier(0.2, 0.75, 0.2, 1),
      opacity 0.18s ease-out,
      transform 0.32s cubic-bezier(0.2, 0.75, 0.2, 1),
      visibility 0.18s ease-out;
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .axis-section--description-active
    .axis-section__item--active
    .axis-section__description {
    max-height: 4.5rem;
    clip-path: inset(0);
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  .work-practice-motion[data-motion-enabled="true"] .axis-section__arrow {
    display: inline-flex;
    visibility: hidden;
  }
  .work-practice-motion[data-motion-enabled="true"] .axis-section__arrow svg {
    transform: translate(-0.125rem, 0.125rem);
    transition: transform 0.26s cubic-bezier(0.22, 0.61, 0.36, 1);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .axis-section__item--active
    .axis-section__arrow {
    visibility: visible;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .axis-section__item--active
    .axis-section__arrow
    svg {
    transform: translate(0);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__item {
    color: var(--color-soft);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__item--active {
    color: var(--color-foreground);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__item--active
    .axis-section__description {
    color: var(--color-body);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__item
    .axis-section__name-text {
    font-weight: var(--axis-name-weight);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__chip,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__chip {
    overflow: hidden;
    isolation: isolate;
    transition:
      border-color 0.26s cubic-bezier(0.2, 0.75, 0.2, 1),
      color 0.22s var(--ease-out);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__chip:before,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__chip:after,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__chip:before,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__chip:after {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    clip-path: inset(0 0 100% 0);
    pointer-events: none;
    transition: clip-path 0.26s cubic-bezier(0.2, 0.75, 0.2, 1);
    will-change: clip-path;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__chip:before,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__chip:before {
    inset: -1px;
    z-index: 2;
    content: "";
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__chip:after,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__chip:after {
    inset: 0;
    z-index: 3;
    content: attr(data-axis-chip-label);
    font-family: inherit;
    font-size: inherit;
    font-weight: 500;
    line-height: inherit;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__chip-label,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__chip-label {
    position: relative;
    z-index: 1;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__chip {
    border-color: var(--color-accent-line);
    background: var(--color-background);
    color: var(--color-accent-muted);
    font-weight: 400;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__chip:before {
    background: var(--color-accent);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__chip:after {
    color: var(--color-inverted-foreground);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__item--active
    .axis-section__chip {
    border-color: var(--color-accent);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__item--active
    .axis-section__chip:before,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__item--active
    .axis-section__chip:after {
    clip-path: inset(0);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__system-slot--focused
    .axis-section__system-label {
    color: var(--color-accent);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__system-description {
    color: var(--color-muted);
    transition: none;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--practice
    .practice
    .axis-section__system-slot--active
    .axis-section__system-description {
    color: var(--color-body);
  }
  .work-practice-motion[data-motion-enabled="true"] .axis-section__name,
  .work-practice-motion[data-motion-enabled="true"] .axis-section__details,
  .work-practice-motion[data-motion-enabled="true"] .axis-section__chip,
  .work-practice-motion[data-motion-enabled="true"] .axis-section__system-label,
  .work-practice-motion[data-motion-enabled="true"] .line-node__dot,
  .work-practice-motion[data-motion-enabled="true"] .line-node__bracket {
    transition:
      color 0.22s var(--ease-out),
      opacity 0.22s var(--ease-out),
      border-color 0.22s var(--ease-out),
      background-color 0.22s var(--ease-out);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--resolved {
    color: var(--color-inverted-faint);
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer--work
    .work
    .axis-section__details {
    row-gap: 0;
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer--work
    .work
    .axis-section__description {
    max-width: none;
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--active
    .axis-section__details {
    row-gap: clamp(0.375rem, calc(2dvh - 0.75rem), 0.875rem);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__name-text,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__details,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__arrow {
    clip-path: inset(0);
    transition:
      clip-path 0.26s cubic-bezier(0.2, 0.75, 0.2, 1),
      row-gap 0.26s cubic-bezier(0.2, 0.75, 0.2, 1),
      color 0.22s var(--ease-out);
    will-change: clip-path;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--resolved
    .axis-section__name-text {
    clip-path: inset(100% 0 0 0);
    pointer-events: none;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--resolved
    .axis-section__details,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--resolved
    .axis-section__arrow {
    clip-path: inset(100% 0 0 0);
    pointer-events: none;
    visibility: visible;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work.axis-section--description-active
    .axis-section__item--resolved
    .axis-section__description {
    max-height: 4.5rem;
    opacity: 1;
    visibility: visible;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__chip {
    border-color: var(--color-inverted-line);
    background: var(--color-accent);
    color: var(--color-inverted-body);
    font-weight: 400;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__chip:before {
    background: var(--color-inverted-foreground);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__chip:after {
    color: var(--color-accent);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--active
    .axis-section__chip,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--resolved
    .axis-section__chip {
    border-color: var(--color-inverted-foreground);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--active
    .axis-section__chip:before,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--active
    .axis-section__chip:after,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--resolved
    .axis-section__chip:before,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--resolved
    .axis-section__chip:after {
    clip-path: inset(0);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active) {
    color: var(--color-inverted-faint);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__details {
    row-gap: 0;
  }
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer--work
    .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__details {
    row-gap: 0;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work[data-axis-preview-active="true"].axis-section--description-active
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__description {
    max-height: 0;
    clip-path: inset(0 0 100% 0);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-0.1875rem);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__arrow {
    visibility: hidden;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__arrow
    svg {
    transform: translate(-0.125rem, 0.125rem);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__arrow
    path {
    stroke-dashoffset: var(--axis-arrow-path-length);
    transition: none;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__chip {
    border-color: var(--color-inverted-line);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__chip:before,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work[data-axis-preview-active="true"]
    .axis-section__item--active:not(.axis-section__item--preview-active)
    .axis-section__chip:after {
    clip-path: inset(0 0 100% 0);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--link[data-axis-available="true"]
    .axis-section__item-link {
    pointer-events: auto;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--preview-active {
    color: var(--color-inverted-foreground);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--preview-active
    .axis-section__details,
  html[data-js="true"]
    .work-practice-motion[data-work-practice-motion]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--preview-active
    .axis-section__details {
    row-gap: clamp(0.375rem, calc(2dvh - 0.75rem), 0.875rem);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work.axis-section--description-active
    .axis-section__item--preview-active
    .axis-section__description {
    max-height: 4.5rem;
    clip-path: inset(0);
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--preview-active
    .axis-section__arrow {
    visibility: visible;
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--preview-active
    .axis-section__arrow
    svg {
    transform: translate(0);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--preview-active
    .axis-section__chip {
    border-color: var(--color-inverted-foreground);
  }
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--preview-active
    .axis-section__chip:before,
  .work-practice-motion[data-motion-enabled="true"]
    .work-practice-motion__layer--work
    .work
    .axis-section__item--preview-active
    .axis-section__chip:after {
    clip-path: inset(0);
  }
}
@media (min-width: 48rem) and (min-height: 37.5rem) {
  html[data-js="true"] .site-reveal {
    --hero-work-axis-x: clamp(
      20rem,
      calc(var(--site-axis-position-md) - var(--site-gutter)),
      calc(var(--site-container-inner-width) - 14rem)
    );
  }
  html[data-js="true"]
    .site-reveal[data-hero-work-motion="active"]
    .site-reveal__layer--reveal {
    transition: none;
  }
  html[data-js="true"] .site-reveal[data-hero-work-motion="active"]:after {
    position: absolute;
    bottom: -6px;
    left: calc(var(--reveal-position) - var(--reveal-width) / 2);
    z-index: var(--layer-reveal);
    display: block;
    width: var(--reveal-width);
    height: 8px;
    background: var(--color-accent);
    content: "";
    pointer-events: none;
  }
  html[data-js="true"]
    .work-practice-motion[data-hero-work-motion="ready"]
    .work-practice-motion__sticky {
    clip-path: inset(
      var(--hero-work-clip-top, 0px) var(--hero-work-clip-right, 0px)
        var(--hero-work-clip-bottom, 0px) var(--hero-work-clip-left, 0px)
    );
  }
  html[data-js="true"]
    .work-practice-motion[data-hero-work-motion="ready"][data-hero-work-active="true"]
    .work-practice-motion__sticky {
    will-change: clip-path;
  }
}
@media (min-width: 48rem) and (min-height: 42rem),
  (min-width: 48rem) and (hover: hover) and (pointer: fine) {
  html[data-js="true"] .site-reveal__layer--reveal:before {
    position: absolute;
    top: calc(var(--site-header-height) - 1px);
    bottom: 0;
    left: calc(
      var(--site-container-offset) + var(--site-gutter) +
        var(--hero-work-axis-x)
    );
    z-index: 0;
    display: block;
    width: 0;
    border-left: 1px solid var(--color-inverted-line);
    content: "";
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.18s ease-out;
  }
  html[data-js="true"]
    .site-reveal[data-hero-work-motion="active"]
    .site-reveal__layer--reveal:before {
    opacity: 1;
  }
}
@media (min-width: 75rem) and (min-height: 42rem),
  (min-width: 75rem) and (hover: hover) and (pointer: fine) {
  html[data-js="true"] .site-reveal {
    --hero-work-axis-x: clamp(
      22rem,
      calc(var(--site-axis-position-lg) - var(--site-gutter)),
      calc(var(--site-container-inner-width) - 18rem)
    );
  }
}
@media (min-width: 48rem) and (min-height: 37.5rem) {
  html[data-js="true"] .about[data-practice-about-motion="ready"] {
    --practice-about-line-scale: 0;
    --practice-about-header-clip-bottom: 100%;
    --practice-about-idea-clip-bottom: 100%;
    --practice-about-idea-tick-scale: 0;
    --practice-about-form-clip-bottom: 100%;
    --practice-about-form-tick-scale: 0;
    --practice-about-brand-clip-bottom: 100%;
    --practice-about-statement-clip-bottom: 100%;
    --practice-about-target-node-opacity: 0;
  }
  html[data-js="true"]
    .about[data-practice-about-motion="ready"]:not(
      [data-about-contact-source-control="true"]
    )
    .about__measure:before {
    transform: scaleY(var(--practice-about-line-scale));
    transform-origin: top center;
    will-change: transform;
  }
  html[data-js="true"]
    .about[data-practice-about-motion="ready"]:not(
      [data-about-contact-source-control="true"]
    )
    .section-header {
    clip-path: inset(0 0 var(--practice-about-header-clip-bottom) 0);
    will-change: clip-path;
  }
  html[data-js="true"] .practice[data-practice-about-source="ready"] {
    --practice-about-source-opacity: 1;
  }
  html[data-js="true"]
    .practice[data-practice-about-source="ready"]
    .section-header,
  html[data-js="true"]
    .practice[data-practice-about-source="ready"]
    .axis-section__item {
    opacity: var(--practice-about-source-opacity);
  }
  html[data-js="true"]
    .practice[data-practice-about-source-control="true"]
    .section-header,
  html[data-js="true"]
    .practice[data-practice-about-source-control="true"]
    .axis-section__item {
    will-change: opacity;
  }
  html[data-js="true"]
    .practice[data-practice-about-source="ready"]
    .axis-section__list {
    border-bottom-color: transparent;
  }
  html[data-js="true"]
    .practice[data-practice-about-source="ready"]
    .axis-section__list:after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    height: 0;
    border-top: 1px solid var(--color-hairline);
    content: "";
    opacity: var(--practice-about-source-opacity);
    pointer-events: none;
  }
  html[data-js="true"]
    .practice[data-practice-about-source-control="true"]
    .axis-section__list:after {
    will-change: opacity;
  }
  html[data-js="true"]
    .axis-section.practice[data-practice-about-source-control="true"]
    .axis-section__focus-trail,
  html[data-js="true"]
    .axis-section.practice[data-practice-about-source-control="true"]
    .axis-section__focus-trail:before {
    transition: none;
  }
  html[data-js="true"]
    .axis-section.practice[data-practice-about-source-control="true"]
    .axis-section__system-node
    .line-node__dot,
  html[data-js="true"]
    .axis-section.practice[data-practice-about-source-control="true"]
    .axis-section__system-node
    .line-node__bracket {
    transition: none;
  }
  html[data-js="true"]
    .about[data-practice-about-motion="ready"]:not(
      [data-about-contact-source-control="true"]
    )
    .about__endpoint--idea
    .about__endpoint-tick {
    transform: translate(-50%, -50%)
      scaleX(var(--practice-about-idea-tick-scale));
    transform-origin: center;
    will-change: transform;
  }
  html[data-js="true"]
    .about[data-practice-about-motion="ready"]:not(
      [data-about-contact-source-control="true"]
    )
    .about__endpoint--form
    .about__endpoint-tick {
    transform: translate(-50%, -50%)
      scaleX(var(--practice-about-form-tick-scale));
    transform-origin: center;
    will-change: transform;
  }
  html[data-js="true"]
    .about[data-practice-about-motion="ready"]:not(
      [data-about-contact-source-control="true"]
    )
    .about__endpoint--idea
    .about__endpoint-label {
    clip-path: inset(0 0 var(--practice-about-idea-clip-bottom) 0);
    will-change: clip-path;
  }
  html[data-js="true"]
    .about[data-practice-about-motion="ready"]:not(
      [data-about-contact-source-control="true"]
    )
    .about__endpoint--form
    .about__endpoint-label {
    clip-path: inset(0 0 var(--practice-about-form-clip-bottom) 0);
    will-change: clip-path;
  }
  html[data-js="true"]
    .about[data-practice-about-motion="ready"]:not(
      [data-about-contact-source-control="true"]
    )
    .about__node-marker {
    opacity: var(--practice-about-target-node-opacity);
    will-change: opacity;
  }
  html[data-js="true"]
    .about[data-practice-about-motion="ready"]:not(
      [data-about-contact-source-control="true"]
    )
    .about__brand {
    clip-path: inset(0 0 var(--practice-about-brand-clip-bottom) 0);
    will-change: clip-path;
  }
  html[data-js="true"]
    .about[data-practice-about-motion="ready"]:not(
      [data-about-contact-source-control="true"]
    )
    .about__statement {
    clip-path: inset(0 0 var(--practice-about-statement-clip-bottom) 0);
    will-change: clip-path;
  }
}
.practice-about-motion__node {
  position: fixed;
  top: 0;
  left: 0;
  z-index: calc(var(--layer-scrollbar) - 1);
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(
    var(--practice-about-node-x, -100vw),
    var(--practice-about-node-y, -100vh),
    0
  );
  will-change: opacity, transform;
}
.practice-about-motion__node .line-node {
  top: 0;
  left: 0;
  --line-node-color: var(--color-faint);
  --line-node-dot-color: var(--color-accent);
}
@media (min-width: 48rem) and (min-height: 37.5rem) {
  html[data-js="true"] .about[data-about-contact-source="ready"] {
    --about-contact-source-opacity: 1;
    --about-contact-line-clip-start: 0%;
    --about-contact-line-clip-end: 0%;
    --about-contact-node-fold: 0;
    --about-contact-start-endpoint-y: 0px;
    --about-contact-end-endpoint-y: 0px;
    --about-contact-content-side-clip: 0%;
    --about-contact-brand-shift: 0px;
    --about-contact-statement-shift: 0px;
    --about-contact-endpoint-clip-bottom: 0%;
    --about-contact-bracket-shift: 0px;
    --about-contact-tick-scale: 1;
    --about-contact-folded-segment-opacity: 1;
  }
  html[data-js="true"]
    .about[data-about-contact-source="ready"]
    .section-header,
  html[data-js="true"] .about[data-about-contact-source="ready"] .about__brand,
  html[data-js="true"]
    .about[data-about-contact-source="ready"]
    .about__statement {
    opacity: var(--about-contact-source-opacity);
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .section-header,
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__brand,
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__statement {
    will-change: opacity;
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__measure:before {
    opacity: var(--about-contact-folded-segment-opacity);
    clip-path: inset(
      var(--about-contact-line-clip-start) 0 var(--about-contact-line-clip-end)
        0
    );
    will-change: opacity, clip-path;
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__endpoint {
    will-change: transform;
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__endpoint--idea {
    transform: translateY(var(--about-contact-start-endpoint-y));
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__endpoint--form {
    transform: translateY(var(--about-contact-end-endpoint-y));
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__endpoint-tick {
    opacity: var(--about-contact-folded-segment-opacity);
    transform: translate(-50%, -50%) scaleX(var(--about-contact-tick-scale));
    transform-origin: center center;
    will-change: opacity, transform;
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__endpoint-label {
    opacity: calc(1 - var(--about-contact-node-fold));
    clip-path: inset(0 0 var(--about-contact-endpoint-clip-bottom) 0);
    will-change: opacity, clip-path;
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__brand {
    clip-path: inset(0 0 0 var(--about-contact-content-side-clip));
    transform: translateY(-50%) translate(var(--about-contact-brand-shift));
    will-change: opacity, clip-path, transform;
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__statement {
    clip-path: inset(0 var(--about-contact-content-side-clip) 0 0);
    transform: translateY(-50%)
      translate(calc(0px - var(--about-contact-statement-shift)));
    will-change: opacity, clip-path, transform;
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__node-marker
    .line-node__bracket {
    opacity: calc(1 - var(--about-contact-node-fold));
    will-change: opacity, transform;
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__node-marker
    .line-node__bracket--left {
    transform: translateY(-50%) translate(var(--about-contact-bracket-shift));
  }
  html[data-js="true"]
    .about[data-about-contact-source-control="true"]
    .about__node-marker
    .line-node__bracket--right {
    transform: translateY(-50%)
      translate(calc(0px - var(--about-contact-bracket-shift)));
  }
  html[data-js="true"] .contact[data-about-contact-motion="ready"] {
    --about-contact-header-clip-bottom: 100%;
    --about-contact-plate-opacity: 1;
  }
  html[data-js="true"]
    .contact[data-about-contact-motion="ready"]
    .contact__section-header {
    clip-path: inset(0 0 var(--about-contact-header-clip-bottom) 0);
    will-change: clip-path;
  }
  html[data-js="true"]
    .contact[data-about-contact-motion="ready"]
    .contact__plate {
    opacity: var(--about-contact-plate-opacity);
    will-change: opacity;
  }
}
.about-contact-motion__shape {
  position: fixed;
  top: 0;
  left: 0;
  z-index: calc(var(--layer-scrollbar) - 2);
  display: block;
  width: var(--about-contact-shape-width, 0.5625rem);
  height: var(--about-contact-shape-height, 0.5625rem);
  overflow: clip;
  background: var(--color-accent);
  color: var(--color-inverted-foreground);
  opacity: 0;
  pointer-events: none;
  text-align: center;
  transform: translate3d(
      var(--about-contact-shape-x, -100vw),
      var(--about-contact-shape-y, -100vh),
      0
    )
    translate(-50%, -50%);
  will-change: opacity, transform;
}
.about-contact-motion__shape[data-about-contact-interactive="true"] {
  pointer-events: auto;
}
.about-contact-motion__shape > .about-contact-motion__plate-content {
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: var(--about-contact-plate-content-width, 0px);
  height: var(--about-contact-plate-content-height, auto);
  min-height: 0;
  background: transparent;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(
    var(--about-contact-plate-content-x, 0px),
    var(--about-contact-plate-content-y, 0px),
    0
  );
  will-change: opacity, transform;
}
.about-contact-motion__shape[data-about-contact-interactive="true"]
  > .about-contact-motion__plate-content {
  pointer-events: auto;
}
.site-overlay,
.site-header-control {
  --overlay-panel-padding: 2.5rem;
}
.site-overlay {
  --overlay-panel-width: 25rem;
  --overlay-menu-size: 2.5rem;
  --overlay-menu-row-max-height: 7rem;
  --overlay-menu-row-min-height: 4.75rem;
  --overlay-menu-footer-height: 4.625rem;
  --overlay-menu-row-height: clamp(
    var(--overlay-menu-row-min-height),
    calc(
      (100vh - var(--site-header-height) - var(--overlay-menu-footer-height)) /
        5
    ),
    var(--overlay-menu-row-max-height)
  );
  --overlay-menu-number-size: 0.8125rem;
  --overlay-menu-number-top: 0.375rem;
  --overlay-menu-spacer-width: 1.125rem;
  --overlay-menu-cue-gap: 1.375rem;
  --overlay-menu-cue-size: 0.6875rem;
  --overlay-title-size: 2.375rem;
  --overlay-axis-width: 7rem;
  --overlay-axis-left: calc(
    100% - var(--site-gutter) - var(--overlay-axis-width) / 2
  );
  --overlay-axis-right: calc(
    var(--site-gutter) - var(--overlay-axis-width) / 2
  );
  --overlay-panel-left: calc(100% - var(--overlay-panel-width));
  position: fixed;
  inset: 0;
  z-index: var(--layer-overlay);
  overflow: clip;
  color: var(--color-inverted-foreground);
  pointer-events: none;
  visibility: hidden;
  transition: visibility 0s linear 0.64s;
}
@supports (height: 100svh) {
  .site-overlay {
    --overlay-menu-row-height: clamp(
      var(--overlay-menu-row-min-height),
      calc(
        (
            100svh - var(--site-header-height) -
              var(--overlay-menu-footer-height)
          ) /
          5
      ),
      var(--overlay-menu-row-max-height)
    );
  }
}
@supports (height: 100dvh) {
  .site-overlay {
    --overlay-menu-row-height: clamp(
      var(--overlay-menu-row-min-height),
      calc(
        (
            100dvh - var(--site-header-height) -
              var(--overlay-menu-footer-height)
          ) /
          5
      ),
      var(--overlay-menu-row-max-height)
    );
  }
}
.site-overlay__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: #f2f1ebc7;
  opacity: 0;
  appearance: none;
  cursor: pointer;
  transition:
    opacity var(--transition-duration) var(--ease-out),
    visibility var(--transition-duration) var(--ease-out);
}
.site-overlay__backdrop:focus {
  outline: 0;
}
.site-overlay__panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  display: grid;
  width: min(100vw, var(--overlay-panel-width));
  grid-template-rows: auto minmax(auto, 1fr) auto;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  background: var(--color-accent);
  color: var(--color-inverted-foreground);
  opacity: 1;
  backface-visibility: hidden;
  transform: translate3d(100%, 0, 0);
  isolation: isolate;
  transition:
    transform 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    clip-path 0.52s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform;
}
.site-overlay__panel:focus {
  outline: 0;
}
.site-overlay__panel:before {
  position: absolute;
  z-index: 0;
  background: var(--color-accent);
  content: none;
}
.site-overlay__panel > * {
  position: relative;
  z-index: 1;
}
.site-overlay__panel[data-overlay-panel-active="false"] {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
.site-overlay__panel--contact {
  --overlay-panel-width: 27.5rem;
}
.site-overlay[data-overlay-mode="axis"] .site-overlay__panel {
  right: 0;
  left: 0;
  width: 100vw;
  background: transparent;
  transform: none;
  transition: none;
  will-change: auto;
}
.site-overlay[data-overlay-mode="axis"] .site-overlay__panel:before {
  position: fixed;
  inset: 0;
  clip-path: inset(0 var(--overlay-axis-right) 0 var(--overlay-axis-left));
  content: "";
  transition: clip-path 0.52s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: clip-path;
}
.site-overlay[data-overlay-mode="axis"]
  .site-overlay__panel
  > :not(.site-overlay__header) {
  opacity: 0;
  transform: translate(0.75rem);
  transition:
    opacity 0.22s var(--ease-out),
    transform 0.22s var(--ease-out);
}
.site-overlay__eyebrow,
.site-overlay__menu,
.site-overlay__contact,
.site-overlay__footer {
  opacity: 0;
  transition: opacity 0.22s var(--ease-out);
}
.site-overlay:not([data-overlay-mode="axis"]) .site-overlay__eyebrow,
.site-overlay:not([data-overlay-mode="axis"]) .site-overlay__menu,
.site-overlay:not([data-overlay-mode="axis"]) .site-overlay__contact,
.site-overlay:not([data-overlay-mode="axis"]) .site-overlay__footer {
  transform: translate(0.625rem);
  transition:
    opacity 0.22s var(--ease-out),
    transform 0.36s cubic-bezier(0.16, 1, 0.3, 1);
}
.site-overlay[data-overlay-mode="axis"] .site-overlay__eyebrow {
  transform: translate(0.75rem);
  transition:
    opacity 0.22s var(--ease-out),
    transform 0.36s cubic-bezier(0.16, 1, 0.3, 1);
}
.site-overlay[data-overlay-state="open"] {
  pointer-events: auto;
  visibility: visible;
  transition-delay: 0s;
}
.site-overlay[data-overlay-phase="opening"] {
  pointer-events: none;
  visibility: visible;
  transition-delay: 0s;
}
.site-overlay[data-overlay-phase="prewarm"] {
  opacity: 0;
  pointer-events: none;
  visibility: visible;
  transition-delay: 0s;
}
.site-overlay[data-overlay-phase="prewarm"] .site-overlay__panel {
  transition: none;
}
.site-overlay[data-overlay-state="open"] .site-overlay__backdrop {
  opacity: 1;
}
.site-overlay[data-overlay-state="open"] .site-overlay__panel {
  transform: translateZ(0);
}
.site-overlay[data-overlay-state="open"] .site-overlay__eyebrow,
.site-overlay[data-overlay-state="open"] .site-overlay__menu,
.site-overlay[data-overlay-state="open"] .site-overlay__contact,
.site-overlay[data-overlay-state="open"] .site-overlay__footer {
  opacity: 1;
  transition-delay: 0.14s;
}
.site-overlay[data-overlay-state="open"]:not([data-overlay-mode="axis"])
  .site-overlay__eyebrow,
.site-overlay[data-overlay-state="open"]:not([data-overlay-mode="axis"])
  .site-overlay__menu,
.site-overlay[data-overlay-state="open"]:not([data-overlay-mode="axis"])
  .site-overlay__contact,
.site-overlay[data-overlay-state="open"]:not([data-overlay-mode="axis"])
  .site-overlay__footer {
  transform: none;
  transition-delay: 0.26s;
}
.site-overlay[data-overlay-state="open"][data-overlay-mode="axis"]
  .site-overlay__panel {
  transform: none;
}
.site-overlay[data-overlay-state="open"][data-overlay-mode="axis"]
  .site-overlay__panel:before {
  clip-path: inset(0 0 0 var(--overlay-panel-left));
}
.site-overlay[data-overlay-state="open"][data-overlay-mode="axis"]
  .site-overlay__panel
  > :not(.site-overlay__header) {
  opacity: 1;
  transform: none;
  transition-delay: 0.3s;
}
.site-overlay[data-overlay-mode="axis"] .site-overlay__header,
.site-overlay[data-overlay-mode="axis"] .site-overlay__menu,
.site-overlay[data-overlay-mode="axis"] .site-overlay__contact,
.site-overlay[data-overlay-mode="axis"] .site-overlay__footer {
  padding-left: calc(var(--overlay-panel-left) + var(--overlay-panel-padding));
}
.site-overlay[data-overlay-mode="axis"] .site-overlay__header {
  padding-right: var(--site-gutter);
}
.site-overlay[data-overlay-mode="axis"] .site-overlay__footer {
  --overlay-footer-line-left: calc(
    var(--overlay-panel-left) + var(--overlay-panel-padding)
  );
}
.site-overlay__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: var(--site-header-height);
  padding-block: var(--site-header-padding-block);
  padding-inline: var(--overlay-panel-padding);
}
.site-overlay__eyebrow {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin: 0;
  color: var(--color-inverted-muted);
  font-family: var(--font-mono);
  font-size: 0.75rem;
  letter-spacing: 0.14em;
  line-height: 1;
  text-transform: uppercase;
}
.site-overlay[data-overlay-state="open"][data-overlay-mode="axis"]
  .site-overlay__eyebrow {
  opacity: 1;
  transform: none;
  transition-delay: 0.3s;
}
.site-overlay__marker {
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  background: var(--color-inverted-foreground);
}
.site-overlay__divider {
  color: var(--color-inverted-faint);
}
.site-overlay__close {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--color-inverted-foreground);
  font: inherit;
  font-size: 1rem;
  letter-spacing: -0.01em;
  line-height: 1.2;
  cursor: pointer;
}
.site-overlay__close--menu {
  gap: 0.5rem;
  font-size: 1rem;
}
.site-overlay__close .site-header__menu-marker {
  color: currentColor;
}
.site-overlay__close:hover {
  color: var(--color-inverted-foreground);
}
.site-overlay__close:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 0.25rem;
}
.site-overlay__close.site-header__menu:focus-visible {
  outline-color: currentColor;
}
html[data-site-overlay-control="header"]
  .site-header-control
  .site-header__menu:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 0.25rem;
}
html[data-site-overlay-control="header"] .site-overlay__close {
  pointer-events: none;
  visibility: hidden;
}
.site-overlay__menu {
  --overlay-menu-lavalamp-x: 0px;
  --overlay-menu-lavalamp-y: 0px;
  --overlay-menu-lavalamp-duration: 0.36s;
  position: relative;
  align-self: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  padding: 0 var(--overlay-panel-padding);
}
.site-overlay__menu-link {
  --overlay-menu-text-opacity: 1;
  --overlay-menu-number-color: var(--color-inverted-faint);
  --overlay-menu-cue-opacity: 0;
  --overlay-menu-cue-clip: inset(0 100% 0 0);
  --overlay-menu-cue-margin: var(--overlay-menu-cue-gap);
  position: relative;
  display: flex;
  height: var(--overlay-menu-row-height);
  min-width: 0;
  align-items: center;
  padding: 0;
  border-top: 1px solid rgba(var(--color-accent-foreground-rgb), 0.16);
  color: var(--color-inverted-foreground);
  isolation: isolate;
  overflow: clip;
  text-decoration: none;
}
.site-overlay__menu-link:first-child {
  border-top: 0;
}
.site-overlay__menu-link[data-overlay-menu-current="true"] {
  --overlay-menu-number-color: var(--color-inverted-foreground);
  --overlay-menu-cue-opacity: 1;
  --overlay-menu-cue-clip: inset(0 0 0 0);
}
.site-overlay__menu-link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 0.25rem;
}
.site-overlay__menu-number {
  position: relative;
  flex: 0 0 auto;
  align-self: flex-start;
  margin-top: var(--overlay-menu-number-top);
  color: var(--overlay-menu-number-color);
  font-family: var(--font-mono);
  font-size: var(--overlay-menu-number-size);
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1;
  opacity: var(--overlay-menu-text-opacity);
  transition:
    color 0.2s var(--ease-out),
    opacity 0.2s var(--ease-out);
}
.site-overlay__menu-content {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: baseline;
}
.site-overlay__menu-spacer {
  flex: 0 0 var(--overlay-menu-spacer-width);
  width: var(--overlay-menu-spacer-width);
}
.site-overlay__menu-label {
  position: relative;
  display: inline-block;
  flex: 0 1 auto;
  width: fit-content;
  max-width: 100%;
  color: var(--color-inverted-foreground);
  font-size: var(--overlay-menu-size);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
  opacity: var(--overlay-menu-text-opacity);
  transition:
    color 0.2s var(--ease-out),
    opacity 0.2s var(--ease-out);
}
.site-overlay__menu-cue {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  margin-left: var(--overlay-menu-cue-margin);
  color: var(--color-inverted-body);
  font-family: var(--font-mono);
  font-size: var(--overlay-menu-cue-size);
  font-weight: 500;
  letter-spacing: 0.12em;
  line-height: 1;
  white-space: nowrap;
  text-transform: uppercase;
  opacity: var(--overlay-menu-cue-opacity);
  clip-path: var(--overlay-menu-cue-clip);
  transition:
    clip-path 0.2s var(--ease-out),
    opacity 0.2s var(--ease-out);
}
.site-overlay__menu-cue:before,
.site-overlay__menu-cue:after {
  color: var(--color-inverted-faint);
}
.site-overlay__menu-cue:before {
  content: "[ ";
}
.site-overlay__menu-cue:after {
  content: " ]";
}
.site-overlay__menu-lavalamp {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: none;
  align-items: center;
  color: rgba(var(--color-accent-foreground-rgb), 0.85);
  font-family: var(--font-mono);
  font-size: var(--overlay-menu-cue-size);
  font-weight: 500;
  letter-spacing: 0.12em;
  line-height: 1;
  white-space: nowrap;
  text-transform: uppercase;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(
    var(--overlay-menu-lavalamp-x),
    var(--overlay-menu-lavalamp-y),
    0
  );
  transition:
    transform var(--overlay-menu-lavalamp-duration)
      cubic-bezier(0.16, 1, 0.3, 1),
    opacity 0.18s var(--ease-out);
  will-change: transform;
}
.site-overlay__menu-lavalamp:before,
.site-overlay__menu-lavalamp:after {
  color: var(--color-inverted-faint);
}
.site-overlay__menu-lavalamp:before {
  content: "[ ";
}
.site-overlay__menu-lavalamp:after {
  content: " ]";
}
.site-overlay__menu[data-overlay-menu-lavalamp-ready="true"]
  .site-overlay__menu-lavalamp {
  opacity: 1;
}
.site-overlay__menu[data-overlay-menu-lavalamp-instant="true"]
  .site-overlay__menu-lavalamp {
  transition: none;
}
.site-overlay__menu-link:hover .site-overlay__menu-number,
.site-overlay__menu-link:focus-visible .site-overlay__menu-number {
  --overlay-menu-number-color: var(--color-inverted-foreground);
}
.site-overlay__menu-link:hover .site-overlay__menu-label,
.site-overlay__menu-link:focus-visible .site-overlay__menu-label {
  color: var(--color-inverted-foreground);
}
@media (hover: hover) and (pointer: fine) {
  .site-overlay__menu:has(.site-overlay__menu-link:hover)
    .site-overlay__menu-link {
    --overlay-menu-text-opacity: 0.6;
    --overlay-menu-cue-opacity: 0;
    --overlay-menu-cue-clip: inset(0 100% 0 0);
    --overlay-menu-cue-margin: var(--overlay-menu-cue-gap);
  }
  .site-overlay__menu:has(.site-overlay__menu-link:hover)
    .site-overlay__menu-link:hover {
    --overlay-menu-text-opacity: 1;
    --overlay-menu-number-color: var(--color-inverted-foreground);
    --overlay-menu-cue-opacity: 1;
    --overlay-menu-cue-clip: inset(0 0 0 0);
  }
  .site-overlay__menu[data-overlay-menu-lavalamp-ready="true"]
    .site-overlay__menu-lavalamp {
    display: inline-flex;
  }
}
.site-overlay__menu:has(.site-overlay__menu-link:focus-visible)
  .site-overlay__menu-link {
  --overlay-menu-text-opacity: 0.6;
  --overlay-menu-cue-opacity: 0;
  --overlay-menu-cue-clip: inset(0 100% 0 0);
  --overlay-menu-cue-margin: var(--overlay-menu-cue-gap);
}
.site-overlay__menu:has(.site-overlay__menu-link:focus-visible)
  .site-overlay__menu-link:focus-visible {
  --overlay-menu-text-opacity: 1;
  --overlay-menu-number-color: var(--color-inverted-foreground);
  --overlay-menu-cue-opacity: 1;
  --overlay-menu-cue-clip: inset(0 0 0 0);
}
@media (hover: hover) and (pointer: fine) {
  .site-overlay__menu[data-overlay-menu-lavalamp-ready="true"]
    .site-overlay__menu-cue {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
  }
}
@media (hover: none), (pointer: coarse), (max-width: 63.99rem) {
  .site-overlay__panel--menu .site-overlay__menu-link {
    --overlay-menu-cue-opacity: 1;
    --overlay-menu-cue-clip: inset(0 0 0 0);
    --overlay-menu-cue-margin: var(--overlay-menu-cue-gap);
  }
  .site-overlay__panel--menu .site-overlay__menu-link:hover,
  .site-overlay__panel--menu .site-overlay__menu-link:focus-visible {
    --overlay-menu-cue-opacity: 1;
  }
}
.site-overlay__scrollbar {
  --overlay-scrollbar-offset: 0.5rem;
  --overlay-scrollbar-hit-area: 1rem;
  --overlay-scrollbar-thumb-width: 0.1875rem;
  --overlay-scrollbar-thumb-right: 0.25rem;
  --overlay-scrollbar-thumb-height: 2rem;
  --overlay-scrollbar-thumb-y: 0px;
  position: fixed;
  top: var(--overlay-scrollbar-offset);
  right: 0;
  bottom: var(--overlay-scrollbar-offset);
  z-index: 3;
  display: none;
  width: var(--overlay-scrollbar-hit-area);
  opacity: 0;
  pointer-events: none;
  transform: translate(0.125rem);
  transition:
    opacity 0.22s var(--ease-out),
    transform 0.22s var(--ease-out);
}
.site-overlay__scrollbar[data-overlay-scrollbar-visible="true"] {
  opacity: 1;
  pointer-events: auto;
  transform: translate(0);
}
.site-overlay__scrollbar-track {
  position: absolute;
  inset: 0;
  cursor: pointer;
}
.site-overlay__scrollbar-thumb {
  position: absolute;
  top: 0;
  right: var(--overlay-scrollbar-thumb-right);
  width: var(--overlay-scrollbar-thumb-width);
  height: var(--overlay-scrollbar-thumb-height);
  background: rgba(var(--color-accent-foreground-rgb), 0.44);
  cursor: grab;
  transform: translate3d(0, var(--overlay-scrollbar-thumb-y), 0);
  transition:
    background 0.18s var(--ease-out),
    width 0.18s var(--ease-out),
    right 0.18s var(--ease-out);
  will-change: transform;
}
.site-overlay__scrollbar-track:hover .site-overlay__scrollbar-thumb,
.site-overlay__scrollbar-track:focus-visible .site-overlay__scrollbar-thumb,
html[data-site-overlay-scrollbar-dragging="true"]
  .site-overlay__scrollbar-thumb {
  right: 0.1875rem;
  width: 0.3125rem;
  background: rgba(var(--color-accent-foreground-rgb), 0.66);
}
html[data-site-overlay-scrollbar-dragging="true"] {
  cursor: grabbing;
  user-select: none;
}
html[data-site-overlay-scrollbar-dragging="true"]
  .site-overlay__scrollbar-thumb {
  cursor: grabbing;
}
@media (min-width: 64rem) and (hover: hover) and (pointer: fine) {
  .site-overlay__panel {
    scrollbar-width: none;
  }
  .site-overlay__panel::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
  }
  .site-overlay__scrollbar {
    display: block;
  }
}
.site-overlay__footer {
  --overlay-footer-line-left: var(--overlay-panel-padding);
  --overlay-footer-line-right: var(--overlay-panel-padding);
  position: relative;
  grid-row: 3;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.75rem var(--overlay-panel-padding);
  color: var(--color-inverted-muted);
  font-family: var(--font-mono);
  font-size: 0.875rem;
  letter-spacing: 0.02em;
  line-height: 1.25;
}
.site-overlay__footer:before {
  position: absolute;
  top: 0;
  right: var(--overlay-footer-line-right);
  left: var(--overlay-footer-line-left);
  height: 0;
  border-top: 1px solid var(--color-inverted-hairline);
  content: "";
}
.site-overlay__footer--contact {
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-start;
  gap: 0.5rem;
  letter-spacing: 0.01em;
}
.site-overlay__contact {
  grid-row: 2;
  display: flex;
  flex-direction: column;
  padding: 3rem var(--overlay-panel-padding) 2rem;
}
.site-overlay__contact[hidden] {
  display: none;
}
.site-overlay__contact-intro h2,
.site-overlay__contact-intro p {
  margin: 0;
}
.site-overlay__contact-intro h2 {
  font-size: var(--overlay-title-size);
  font-weight: 500;
  letter-spacing: -0.026em;
  line-height: 1;
}
.site-overlay__contact-intro p {
  margin-top: 1rem;
  color: var(--color-inverted-soft);
  font-size: 1rem;
  line-height: 1.5;
}
.site-overlay__form {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-top: 2.75rem;
}
.site-overlay__form .site-button {
  align-self: flex-start;
  margin-top: 0.25rem;
}
.site-overlay__form[data-form-state="submitting"] {
  cursor: wait;
}
.site-overlay__form-consent {
  max-width: 22rem;
  margin: 0;
  color: var(--color-inverted-soft);
  font-family: var(--font-mono);
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  line-height: 1.35;
}
.site-overlay__form-compliance {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.site-overlay__form-error {
  max-width: 22rem;
  margin: 0;
  color: var(--color-error);
  font-family: var(--font-mono);
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  line-height: 1.35;
}
.site-overlay__form-error[hidden] {
  display: none;
}
.site-field {
  --site-field-control-height: 3rem;
  --site-field-line-color: var(--color-inverted-active-line);
  --site-field-line-opacity: 0;
  --site-field-line-scale: 0;
  position: relative;
  display: block;
  min-height: var(--site-field-control-height);
}
.site-field:before,
.site-field:after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
  content: "";
}
.site-field:before {
  height: 0;
  border-top: 1px solid var(--color-inverted-hairline);
}
.site-field:after {
  height: 1.5px;
  background: var(--site-field-line-color);
  opacity: var(--site-field-line-opacity);
  transform: scaleX(var(--site-field-line-scale));
  transform-origin: left center;
  transition:
    transform 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    opacity 0.18s var(--ease-out),
    background-color 0.18s var(--ease-out);
}
.site-field[data-field-filled="true"] {
  --site-field-line-opacity: 0.65;
  --site-field-line-scale: 0.24;
}
.site-field:focus-within {
  --site-field-line-opacity: 1;
  --site-field-line-scale: 1;
}
.site-field[data-field-state="invalid"] {
  --site-field-line-color: var(--color-error);
  --site-field-line-opacity: 1;
  --site-field-line-scale: 1;
}
.site-field--trap {
  position: absolute;
  width: 1px;
  height: 1px;
  min-height: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.site-field__control {
  display: block;
  width: 100%;
  height: var(--site-field-control-height);
  padding: 0;
  border: 0;
  border-radius: 0;
  appearance: none;
  background: transparent;
  background-clip: padding-box;
  color: var(--color-inverted-foreground);
  font: inherit;
  font-size: 1rem;
  line-height: 1.3125;
  outline: 0;
  color-scheme: dark;
}
.site-field__control::-webkit-contacts-auto-fill-button {
  position: absolute;
  right: 0;
  visibility: hidden;
  pointer-events: none;
}
.site-field__control::-webkit-credentials-auto-fill-button {
  position: absolute;
  right: 0;
  visibility: hidden;
  pointer-events: none;
}
@keyframes site-field-autofill {
  0% {
    opacity: 1;
  }
  to {
    opacity: 1;
  }
}
.site-field__control:-webkit-autofill,
.site-field__control:-webkit-autofill:hover,
.site-field__control:-webkit-autofill:focus {
  -webkit-appearance: none !important;
  background-color: transparent !important;
  background-image: none !important;
  border-radius: 0 !important;
  box-shadow: 0 0 0 1000px var(--color-accent) inset !important;
  -webkit-box-shadow: 0 0 0 1000px var(--color-accent) inset !important;
  caret-color: var(--color-inverted-foreground) !important;
  color: var(--color-inverted-foreground) !important;
  filter: none !important;
  -webkit-text-fill-color: var(--color-inverted-foreground) !important;
  animation-duration: 1ms;
  animation-name: site-field-autofill;
}
.site-field__control:autofill {
  background-color: transparent !important;
  background-image: none !important;
  border-radius: 0 !important;
  box-shadow: 0 0 0 1000px var(--color-accent) inset !important;
  caret-color: var(--color-inverted-foreground) !important;
  color: var(--color-inverted-foreground) !important;
  filter: none !important;
}
.site-field__control[chrome-autofilled] {
  background-color: transparent !important;
  background-image: none !important;
  color: var(--color-inverted-foreground) !important;
  -webkit-text-fill-color: var(--color-inverted-foreground) !important;
  caret-color: var(--color-inverted-foreground) !important;
  animation-duration: 1ms;
  animation-name: site-field-autofill;
}
textarea.site-field__control {
  height: 5.75rem;
  min-height: 5.75rem;
  overflow-y: auto;
  padding-top: 0.8125rem;
  resize: none;
  scrollbar-width: none;
}
textarea.site-field__control::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
.site-field__label {
  position: absolute;
  top: 0;
  bottom: auto;
  left: 0;
  display: flex;
  align-items: center;
  height: var(--site-field-control-height);
  color: var(--color-inverted-body);
  font-size: 1rem;
  line-height: 1;
  pointer-events: none;
  transform-origin: left top;
  transition:
    color var(--transition-duration) var(--ease-out),
    font-size var(--transition-duration) var(--ease-out),
    top var(--transition-duration) var(--ease-out),
    transform var(--transition-duration) var(--ease-out);
}
.site-field--message .site-field__label {
  top: 0;
  height: 2.9375rem;
}
.site-field__control:disabled {
  cursor: wait;
  opacity: 0.7;
  -webkit-text-fill-color: var(--color-inverted-foreground);
}
.site-field__control:focus + .site-field__label,
.site-field__control:not(:placeholder-shown) + .site-field__label,
.site-field__control:-webkit-autofill + .site-field__label,
.site-field__control:autofill + .site-field__label,
.site-field[data-field-filled="true"] .site-field__label {
  color: var(--color-inverted-foreground);
  top: -0.75rem;
  bottom: auto;
  height: 1.5rem;
  font-size: 0.875rem;
  transform: translateY(-0.0625rem);
}
.site-field--message .site-field__control:focus + .site-field__label,
.site-field--message
  .site-field__control:not(:placeholder-shown)
  + .site-field__label,
.site-field--message .site-field__control:-webkit-autofill + .site-field__label,
.site-field--message .site-field__control:autofill + .site-field__label,
.site-field--message[data-field-filled="true"] .site-field__label {
  top: -0.75rem;
  height: 1.5rem;
}
.site-field__message {
  position: absolute;
  top: calc(100% + 0.4375rem);
  right: 0;
  display: block;
  max-width: min(100%, 20rem);
  color: var(--color-error);
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.04em;
  line-height: 1.2;
  opacity: 0;
  text-align: right;
  transform: translateY(-0.25rem);
  transition:
    opacity 0.18s var(--ease-out),
    transform 0.22s cubic-bezier(0.16, 1, 0.3, 1),
    visibility 0s linear 0.18s;
  visibility: hidden;
}
@media (hover: hover) and (pointer: fine) {
  .site-field:not([data-field-state="invalid"]):hover {
    --site-field-line-opacity: 0.72;
    --site-field-line-scale: 0.18;
  }
  .site-field:not(
      [data-field-state="invalid"]
    )[data-field-filled="true"]:hover {
    --site-field-line-opacity: 0.8;
    --site-field-line-scale: 0.36;
  }
  .site-field:not([data-field-state="invalid"]):focus-within {
    --site-field-line-opacity: 1;
    --site-field-line-scale: 1;
  }
  .site-field:not([data-field-state="invalid"]):hover .site-field__label {
    color: var(--color-inverted-soft);
  }
  .site-field:not([data-field-state="invalid"]):focus-within
    .site-field__label {
    color: var(--color-inverted-foreground);
  }
}
.site-field[data-field-state="invalid"] .site-field__label {
  color: var(--color-error);
}
.site-field[data-field-state="invalid"] .site-field__message {
  opacity: 1;
  transform: none;
  transition-delay: 0s;
  visibility: visible;
}
.site-overlay__form[data-form-state="submitting"] .site-field {
  --site-field-line-opacity: 0.25;
}
.site-overlay__turnstile {
  width: 100%;
  min-height: 0;
  overflow: visible;
}
.site-overlay__turnstile[data-turnstile-visible="true"] {
  width: 100%;
  overflow: visible;
  opacity: 1;
  pointer-events: auto;
}
.site-overlay__contact--success {
  min-height: 0;
}
.site-overlay__contact--success .site-overlay__contact-intro h2 {
  font-size: 2.5rem;
  letter-spacing: -0.028em;
}
.site-overlay__contact--success .site-overlay__contact-intro p {
  margin-top: 1.125rem;
  font-size: 1.125rem;
}
.site-overlay__contact--success .site-button {
  align-self: flex-start;
  margin-top: 2rem;
}
html[data-site-overlay-open],
html[data-site-overlay-mode],
html[data-site-overlay-open] body,
html[data-site-overlay-mode] body {
  overflow: hidden;
}
@media (max-width: 47.99rem) {
  .site-overlay,
  .site-header-control {
    --overlay-panel-padding: 1.5rem;
  }
  .site-overlay {
    --overlay-panel-width: 100vw;
    --overlay-menu-size: 2rem;
    --overlay-menu-row-max-height: 5rem;
    --overlay-menu-row-min-height: 4.5rem;
    --overlay-menu-number-size: 0.6875rem;
    --overlay-menu-number-top: 0.25rem;
    --overlay-menu-spacer-width: 0.75rem;
    --overlay-menu-cue-gap: 0.625rem;
    --overlay-menu-cue-size: 0.625rem;
    --overlay-title-size: 2rem;
  }
  .site-overlay__backdrop {
    display: none;
  }
  .site-overlay__panel {
    left: 0;
    width: 100vw;
  }
  .site-overlay__contact {
    padding-top: 3.5rem;
  }
  .site-overlay__contact-intro p {
    margin-top: 0.875rem;
  }
  .site-overlay__form {
    gap: 1.75rem;
    margin-top: 2.25rem;
  }
  .site-field {
    --site-field-control-height: 2.75rem;
  }
  textarea.site-field__control {
    height: 5.25rem;
    min-height: 5.25rem;
  }
  .site-field--message .site-field__label {
    height: 2.6875rem;
  }
  .site-overlay__contact--success .site-overlay__contact-intro h2 {
    font-size: 2.125rem;
  }
  .site-overlay__contact--success .site-overlay__contact-intro p {
    margin-top: 0.875rem;
    font-size: 1rem;
  }
  .site-overlay__footer {
    justify-content: flex-start;
  }
  .site-overlay__footer--contact {
    align-items: flex-start;
  }
}
@media (min-width: 48rem) and (max-width: 63.99rem) {
  .site-overlay__panel--menu {
    --overlay-panel-width: 26.25rem;
    --overlay-menu-size: 2.25rem;
    --overlay-menu-row-max-height: 5.75rem;
    --overlay-menu-row-min-height: 5rem;
    --overlay-menu-number-size: 0.75rem;
    --overlay-menu-number-top: 0.3125rem;
    --overlay-menu-spacer-width: 1rem;
    --overlay-menu-cue-gap: 0.75rem;
    --overlay-menu-cue-size: 0.625rem;
  }
}


.about__stack {
  position: absolute;
  top: 68%;
  left: 2rem;
  transform: translateY(-50%);
  width: min(18rem, calc(100vw - 5rem));
  display: flex;
  flex-direction: column;
  gap: .5rem;
}

@media (min-width: 48rem) and (min-height: 42rem), (min-width: 48rem) and (hover: hover) and (pointer: fine) {
  .about__stack {
    left: 3rem;
    width: min(17.5rem, calc(var(--site-container-inner-width) - var(--about-axis-x) - 3rem));
  }
}

.about__stack-row {
  display: flex;
  flex-wrap: wrap;
  gap: .25rem .75rem;
  align-items: baseline;
  opacity: var(--about-stack-row-progress, 0);
  transform: translateY(calc((1 - var(--about-stack-row-progress, 0)) * .75rem));
  clip-path: inset(0 0 0 var(--about-contact-content-side-clip, 0%));
  will-change: opacity, transform, clip-path;
}

.about__stack-label {
  flex: 0 0 5.5rem;
  color: var(--color-muted);
  font-family: var(--font-mono);
  font-size: .625rem;
  font-weight: 500;
  letter-spacing: .14em;
  line-height: 1.2;
  text-transform: uppercase;
}

.about__stack-items {
  color: var(--color-body);
  font-size: .8125rem;
  line-height: 1.45;
}

.site-text-link--with-arrow {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
}
.site-text-link__arrow {
  display: inline-flex;
  width: 1rem;
  height: 1rem;
  color: currentColor;
}
.site-text-link__arrow svg {
  display: block;
  width: 100%;
  height: 100%;
  transform: translate(-.125rem, .125rem);
  transition: transform .26s cubic-bezier(.22, .61, .36, 1);
}
.site-text-link__arrow path {
  stroke-dasharray: var(--arrow-path-length);
  stroke-dashoffset: var(--arrow-path-length);
}
.site-text-link__arrow-line { --arrow-path-length: 11.4; transition: stroke-dashoffset .18s ease-out; }
.site-text-link__arrow-head { --arrow-path-length: 6.6; transition: stroke-dashoffset .14s ease-out; }

.site-text-link--with-arrow:hover .site-text-link__arrow svg,
.site-text-link--with-arrow:focus-visible .site-text-link__arrow svg {
  transform: translate(0);
}
.site-text-link--with-arrow:hover .site-text-link__arrow-line,
.site-text-link--with-arrow:focus-visible .site-text-link__arrow-line {
  stroke-dashoffset: 0;
  transition: stroke-dashoffset .24s cubic-bezier(.4, 0, .2, 1) 20ms;
}
.site-text-link--with-arrow:hover .site-text-link__arrow-head,
.site-text-link--with-arrow:focus-visible .site-text-link__arrow-head {
  stroke-dashoffset: 0;
  transition: stroke-dashoffset .15s cubic-bezier(.35, 0, .2, 1) .18s;
}