/* [project]/apps/north.law/app/globals.css [app-client] (css) */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-border-style: solid;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: var(--font-geist-sans), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
    --font-serif: var(--font-fraunces), Georgia, serif;
    --font-mono: var(--font-geist-mono), ui-monospace, SFMono-Regular, Menlo, monospace;
    --spacing: .25rem;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-paper: #f3f3f1;
    --color-paper-2: #eaeae6;
    --color-panel: #fff;
    --color-ink: #17181c;
    --color-ink-2: #3b3d44;
    --color-muted: #646872;
    --color-faint: #a7abb2;
    --color-line: #e5e5e1;
    --color-accent: #35664f;
    --color-claude: #d97757;
    --color-wash: #35664f24;
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components;

@layer utilities {
  .\!visible {
    visibility: visible !important;
  }

  .collapse {
    visibility: collapse;
  }

  .visible {
    visibility: visible;
  }

  .fixed {
    position: fixed;
  }

  .static {
    position: static;
  }

  .start {
    inset-inline-start: var(--spacing);
  }

  .end {
    inset-inline-end: var(--spacing);
  }

  .container {
    width: 100%;
  }

  @media (min-width: 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (min-width: 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (min-width: 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .table {
    display: table;
  }

  .shrink {
    flex-shrink: 1;
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .resize {
    resize: both;
  }

  .flex-wrap {
    flex-wrap: wrap;
  }

  .rounded {
    border-radius: .25rem;
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .mask-repeat {
    -webkit-mask-repeat: repeat;
    mask-repeat: repeat;
  }

  .uppercase {
    text-transform: uppercase;
  }

  .italic {
    font-style: italic;
  }

  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }

  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .drop-shadow {
    --tw-drop-shadow-size: drop-shadow(0 1px 2px var(--tw-drop-shadow-color, #0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color, #0000000f));
    --tw-drop-shadow: drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .backdrop-filter {
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
}

:root {
  --pad: clamp(28px, 6vw, 96px);
  --maxw: 1180px;
  --ease: cubic-bezier(.22, 1, .36, 1);
  --ink: var(--color-ink);
  --ink-2: var(--color-ink-2);
  --accent: var(--color-accent);
  --wash: var(--color-wash);
  --mono: var(--font-mono);
  --serif: var(--font-serif);
  --paper: var(--color-paper);
  --sans: var(--font-sans);
  --claude: var(--color-claude);
  --line: var(--color-line);
  --faint: var(--color-faint);
  --muted: var(--color-muted);
  --panel: var(--color-panel);
  --paper-2: var(--color-paper-2);
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--color-paper);
  color: var(--color-ink);
  font-family: var(--font-sans);
  -webkit-font-smoothing: antialiased;
}

.hero h1, .big, .cust__quote, .bigstat, .adopt__num {
  font-optical-sizing: none;
  font-variation-settings: "opsz" 110, "SOFT" 0, "WONK" 0;
  font-weight: 400;
}

.nav {
  z-index: 60;
  animation: navIn .6s var(--ease) both;
  position: fixed;
  top: 14px;
  left: 0;
  right: 0;
}

@keyframes navIn {
  from {
    opacity: 0;
    transform: translateY(-12px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .nav {
    animation: none;
  }
}

.nav__bar {
  max-width: var(--maxw);
  padding: 0 var(--pad);
  transition: max-width .45s var(--ease);
  margin: 0 auto;
}

.nav.scrolled .nav__bar {
  max-width: calc(100vw - 12px);
  padding: 0 8px;
}

.nav__pill {
  -webkit-backdrop-filter: blur(14px) saturate();
  box-shadow: none;
  transition: background .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease);
  background: #ffffff24;
  border: 1px solid #0000;
  border-radius: 16px;
  align-items: center;
  gap: 18px;
  padding: 11px 22px;
  display: flex;
}

.nav.scrolled .nav__pill {
  -webkit-backdrop-filter: blur(22px) saturate(180%);
  background: #ffffffad;
  border-color: #16120b0f;
  box-shadow: 0 6px 26px -20px #16120b47;
}

.brand svg {
  color: #f3efe6;
  width: auto;
  height: 15px;
  transition: color .3s var(--ease);
}

.nav.scrolled .brand svg {
  color: var(--ink);
}

@keyframes nwm-letter {
  0% {
    opacity: 0;
    transform: translateY(-60px);
  }

  55% {
    opacity: 1;
    transform: translateY(8px);
  }

  78% {
    transform: translateY(-3px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.nwm-draw path {
  animation: nwm-letter .42s var(--ease) backwards;
}

.nwm-draw path:first-child {
  animation-delay: 40ms;
}

.nwm-draw path:nth-child(2) {
  animation-delay: .1s;
}

.nwm-draw path:nth-child(3) {
  animation-delay: .16s;
}

.nwm-draw path:nth-child(4) {
  animation-delay: .22s;
}

.nwm-draw path:nth-child(5) {
  animation-delay: .28s;
}

@media (prefers-reduced-motion: reduce) {
  .nwm-draw path {
    animation: none;
  }
}

.sp {
  flex: 1;
}

.links {
  gap: 4px;
  display: flex;
}

.links a {
  height: 34px;
  font-family: var(--mono);
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #f3efe6d1;
  border-radius: 999px;
  align-items: center;
  padding: 0 14px;
  font-size: 11px;
  transition: color .2s, background .2s;
  display: inline-flex;
}

.nav.scrolled .links a {
  color: var(--ink-2);
}

.nav .links a:hover {
  color: #f3efe6;
  background: #f3efe61f;
}

.nav.scrolled .links a:hover {
  color: var(--ink);
  background: #16120b0f;
}

.links a.hiring {
  color: #fff;
  background: var(--accent);
  font-weight: 600;
  box-shadow: 0 6px 18px -8px #35664fa6;
}

.links a.hiring:before {
  content: "";
  background: #fff;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  margin-right: 7px;
  box-shadow: 0 0 0 3px #ffffff59;
}

.nav.scrolled .links a.hiring {
  color: #fff;
  background: var(--accent);
}

.nav.scrolled .links a.hiring:before {
  background: #fff;
  box-shadow: 0 0 0 3px #ffffff61;
}

.nav .links a.hiring:hover, .nav.scrolled .links a.hiring:hover {
  color: #fff;
  background: #2a5240;
}

@media (prefers-reduced-motion: no-preference) {
  .links a.hiring:before {
    --glow: 255, 255, 255;
    animation: 2.8s ease-in-out infinite dotPulse;
  }
}

@media (max-width: 860px) {
  .links {
    display: none;
  }
}

.cta {
  color: #f3efe6;
  white-space: nowrap;
  height: 34px;
  font-family: var(--mono);
  letter-spacing: .06em;
  text-transform: uppercase;
  transition: background .2s, border-color .2s, color .3s var(--ease), transform .1s;
  background: none;
  border: 1px solid #f3efe680;
  border-radius: 999px;
  flex: none;
  align-items: center;
  gap: 8px;
  padding: 0 16px;
  font-size: 11px;
  font-weight: 500;
  display: inline-flex;
}

.cta:hover {
  background: #f3efe61f;
  border-color: #f3efe6cc;
}

.cta:active {
  transform: translateY(1px);
}

.cta .arrow, .btn-light .arrow {
  transition: transform .2s var(--ease);
  display: inline-block;
}

.cta:hover .arrow, .btn-light:hover .arrow {
  transform: translateX(4px);
}

.nav.scrolled .cta {
  color: var(--ink);
  border-color: #16120b38;
}

.nav.scrolled .cta:hover {
  background: #16120b0f;
  border-color: #16120b73;
}

.hero {
  background: #1a1409;
  align-items: center;
  min-height: clamp(680px, 92vh, 1040px);
  display: flex;
  position: relative;
  overflow: hidden;
}

.hero__img {
  will-change: transform;
  position: absolute;
  inset: 0;
  overflow: hidden;
  transform: scale(1.06);
}

.hero:after {
  content: "";
  pointer-events: none;
  z-index: 1;
  background: linear-gradient(#0000006b 0%, #0000 16%), linear-gradient(90deg, #0e0b06a3 0%, #0e0b0657 34%, #0e0b0600 64%);
  position: absolute;
  inset: 0;
}

.hero__inner {
  z-index: 2;
  width: 100%;
  max-width: var(--maxw);
  padding: 0 var(--pad);
  text-align: left;
  margin: 0 auto;
  position: relative;
}

@keyframes heroIn {
  from {
    opacity: 0;
    transform: translateY(18px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.hero__inner > * {
  animation: heroIn .7s var(--ease) both;
}

.hero__inner > h1 {
  animation-delay: .12s;
}

.hero__inner > .hero__sub {
  animation-delay: .26s;
}

.hero__inner > .hero__two {
  animation-delay: .36s;
}

.hero__inner > .hero__cta {
  animation-delay: .48s;
}

@media (prefers-reduced-motion: reduce) {
  .hero__inner > * {
    animation: none;
  }
}

.hero__kicker {
  font-family: var(--mono);
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #fdf4e8;
  box-shadow: none;
  background: #000;
  border: 1px solid #ffffff29;
  border-radius: 999px;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  padding: 7px 15px;
  font-size: 11px;
  display: inline-flex;
}

.hero__kicker:before {
  display: none;
}

.hero h1 {
  font-family: var(--serif);
  color: #fcf8f0;
  letter-spacing: -.02em;
  text-shadow: 0 3px 40px #00000073;
  max-width: 75%;
  margin: 0 0 18px;
  font-size: clamp(44px, 6.4vw, 82px);
  font-weight: 400;
  line-height: 1.03;
}

@media (max-width: 680px) {
  .hero h1 {
    white-space: normal;
    font-size: clamp(34px, 9vw, 52px);
  }
}

.hero h1 em {
  color: #fff6ea;
  text-shadow: 0 2px 26px #6e2e0899;
  font-style: italic;
}

.hero h1 .cl-mark {
  vertical-align: baseline;
  filter: drop-shadow(0 1px 8px #461c0073);
  width: auto;
  height: .6em;
  animation: bob 5s var(--ease) infinite;
  margin-right: .14em;
  display: inline-block;
}

.hero h1 .cl-mark path {
  fill: #fff6ea !important;
}

@keyframes bob {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-.07em);
  }
}

.hero__sub {
  color: #f4ead9;
  text-shadow: 0 1px 16px #0000008c;
  max-width: 52ch;
  margin: 0;
  font-size: clamp(17px, 2vw, 23px);
  line-height: 1.5;
}

.hero__sub strong {
  color: #fff;
  font-weight: 600;
}

.hero__two {
  color: #f4ead9;
  text-shadow: 0 1px 16px #0000008c;
  text-wrap: pretty;
  max-width: 58ch;
  margin: 14px 0 0;
  font-size: clamp(16px, 1.6vw, 19px);
  line-height: 1.55;
}

.hero__two a {
  color: #fff;
  text-underline-offset: 5px;
  transition: text-decoration-color .2s var(--ease);
  font-weight: 600;
  -webkit-text-decoration: underline #a9c3b1;
  text-decoration: underline #a9c3b1;
  text-decoration-thickness: 1.5px;
}

.hero__two a:hover {
  text-decoration-color: #fff;
}

.hero__cta {
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 28px;
  margin-top: 28px;
  display: flex;
}

.btn-light {
  background: var(--paper);
  color: var(--ink);
  border-radius: 999px;
  align-items: center;
  gap: 9px;
  padding: 14px 22px;
  font-size: 15px;
  font-weight: 500;
  transition: transform .12s, background .2s, box-shadow .2s;
  display: inline-flex;
  box-shadow: 0 10px 30px -12px #00000080;
}

.btn-light:hover {
  background: #fff;
}

.btn-line {
  color: #f3efe6;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  transition: gap .2s;
  display: inline-flex;
}

.btn-line:hover {
  gap: 12px;
}

.btn-claude {
  opacity: .9;
  width: auto;
  height: 1.2em;
  animation: bob 4.5s var(--ease) infinite;
  filter: drop-shadow(0 0 6px #d9775773);
}

.btn-line:hover .btn-claude {
  opacity: 1;
}

.stmt {
  padding: clamp(60px, 8.5vh, 96px) 0;
}

.eyebrow {
  width: fit-content;
  font-family: var(--mono);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--ink);
  background: #35664f21;
  border-radius: 999px;
  align-items: center;
  gap: 10px;
  margin: 0 0 32px;
  padding: 8px 17px 8px 13px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
}

.eyebrow .dot {
  background: var(--accent);
  --glow: 53, 102, 79;
  border-radius: 50%;
  flex: none;
  width: 7px;
  height: 7px;
  box-shadow: 0 0 0 3px #35664f1f;
}

@media (prefers-reduced-motion: no-preference) {
  .eyebrow.vis .dot {
    animation: 2.8s ease-in-out infinite dotPulse;
  }
}

@keyframes dotPulse {
  0%, 100% {
    box-shadow: 0 0 0 2px rgba(var(--glow), .12);
  }

  50% {
    box-shadow: 0 0 0 6px rgba(var(--glow), 0);
  }
}

.big {
  font-family: var(--serif);
  letter-spacing: -.022em;
  text-wrap: balance;
  max-width: 17ch;
  margin: 0;
  font-size: clamp(26px, 4.4vw, 60px);
  font-weight: 400;
  line-height: 1.04;
}

.big em {
  font-style: italic;
}

.say {
  color: var(--ink-2);
  max-width: 44ch;
  margin: 30px 0 0;
  font-size: clamp(16px, 1.7vw, 20px);
  line-height: 1.55;
}

.center {
  text-align: center;
}

.center .eyebrow {
  margin-left: auto;
  margin-right: auto;
}

.center .sectionbrand {
  justify-content: center;
}

.center .big {
  max-width: none;
  margin-left: auto;
  margin-right: auto;
}

.center .say {
  text-wrap: balance;
  max-width: 56ch;
  margin-left: auto;
  margin-right: auto;
}

.center .modgrid > div {
  text-align: center;
}

.center .adopt {
  max-width: 580px;
  margin-left: auto;
  margin-right: auto;
}

.center .adopt__lab {
  text-align: center;
}

.split {
  grid-template-columns: .92fr 1.08fr;
  align-items: center;
  gap: clamp(36px, 5vw, 80px);
  display: grid;
}

.split__media {
  aspect-ratio: 848 / 1264;
  background: #1a1409;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 34px 70px -34px #00000080;
}

.split__media img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.split__text .big {
  max-width: 18ch;
}

@media (max-width: 820px) {
  .split {
    grid-template-columns: 1fr;
  }

  .split__media {
    aspect-ratio: 16 / 10;
  }
}

.say.muted {
  color: var(--muted);
  max-width: 50ch;
  font-size: clamp(16px, 1.7vw, 19px);
}

.bigstat b {
  font-size: clamp(44px, 6vw, 76px);
  font-weight: 400;
  line-height: 1;
}

.bigstat .arr {
  color: var(--accent);
  font-size: clamp(28px, 4vw, 48px);
}

.bigstat small {
  font-family: var(--mono);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--muted);
  align-self: center;
  max-width: 20ch;
  font-size: 11px;
  line-height: 1.5;
}

.pts {
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: 14px;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  margin-top: 48px;
  display: grid;
  overflow: hidden;
}

@media (max-width: 680px) {
  .pts {
    grid-template-columns: 1fr;
  }
}

.pts > div {
  background: var(--paper);
  padding: 26px 24px;
}

.pts h4 {
  font-family: var(--serif);
  margin: 0 0 8px;
  font-size: 23px;
  font-weight: 400;
}

.pts p {
  color: var(--muted);
  margin: 0;
  font-size: 14.5px;
  line-height: 1.55;
}

.pts .k {
  font-family: var(--mono);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 13px;
  font-size: 11px;
  display: block;
}

#deploy {
  padding: clamp(48px, 6.5vh, 76px) 0;
}

.deploy-grid {
  grid-template-columns: minmax(0, 1fr) 500px;
  align-items: center;
  gap: clamp(28px, 4vw, 56px);
  display: grid;
}

.deploy-photo {
  aspect-ratio: 4 / 5;
  border-radius: 16px;
  margin-top: clamp(28px, 4vh, 48px);
  overflow: hidden;
  box-shadow: 0 34px 70px -36px #00000073;
}

.deploy-photo img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  display: block;
}

.deploy-pts {
  background: none;
  border: none;
  border-radius: 0;
  justify-self: end;
  width: 500px;
  height: 400px;
  margin: 0;
  position: relative;
  overflow: visible;
}

.deploy-step {
  background: none;
  border: none;
  width: 330px;
  padding: 0;
  position: absolute;
}

.deploy-step:first-child {
  z-index: 3;
  top: 0;
  right: 170px;
  transform: rotate(-1.4deg);
}

.deploy-step:nth-child(2) {
  z-index: 2;
  top: 140px;
  right: 0;
  transform: rotate(1.1deg);
}

.deploy-step:nth-child(3) {
  z-index: 1;
  top: 280px;
  right: 150px;
  transform: rotate(-.8deg);
}

.deploy-card {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 20px;
  box-shadow: 0 1px 2px #14161a0a, 0 16px 38px -26px #14161a4d;
}

.deploy-card h4 {
  font-family: var(--serif);
  margin: 0 0 8px;
  font-size: 23px;
  font-weight: 400;
}

.deploy-card p {
  color: var(--muted);
  margin: 0;
  font-size: 14.5px;
  line-height: 1.55;
}

.deploy-card .k {
  font-family: var(--mono);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 13px;
  font-size: 11px;
  display: block;
}

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    @keyframes deployFloatA {
      from {
        transform: translateY(-10px);
      }

      to {
        transform: translateY(10px);
      }
    }

    @keyframes deployFloatB {
      from {
        transform: translateY(12px);
      }

      to {
        transform: translateY(-12px);
      }
    }

    @keyframes deployFloatC {
      from {
        transform: translateY(-8px);
      }

      to {
        transform: translateY(14px);
      }
    }

    .deploy-step:first-child .deploy-card {
      animation: linear both deployFloatA;
      animation-timeline: view();
      animation-range: entry exit;
    }

    .deploy-step:nth-child(2) .deploy-card {
      animation: linear both deployFloatB;
      animation-timeline: view();
      animation-range: entry exit;
    }

    .deploy-step:nth-child(3) .deploy-card {
      animation: linear both deployFloatC;
      animation-timeline: view();
      animation-range: entry exit;
    }
  }
}

@media (max-width: 1100px) {
  .deploy-grid {
    grid-template-columns: minmax(0, 1fr) 420px;
  }

  .deploy-pts {
    width: 420px;
    height: 370px;
  }

  .deploy-step {
    width: 300px;
  }

  .deploy-step:first-child {
    right: 120px;
  }

  .deploy-step:nth-child(2) {
    top: 130px;
  }

  .deploy-step:nth-child(3) {
    top: 260px;
    right: 110px;
  }
}

@media (max-width: 900px) {
  .deploy-grid {
    grid-template-columns: 1fr;
  }

  .deploy-pts {
    flex-direction: column;
    gap: 14px;
    width: auto;
    max-width: none;
    height: auto;
    margin: 0;
    display: flex;
    position: static;
  }

  .deploy-step, .deploy-step:first-child, .deploy-step:nth-child(2), .deploy-step:nth-child(3) {
    width: 100%;
    position: static;
    transform: none;
  }

  .deploy-card {
    animation: none;
  }
}

.modgrid {
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: 16px;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  margin-top: 46px;
  display: grid;
  overflow: hidden;
}

@media (max-width: 680px) {
  .modgrid {
    grid-template-columns: 1fr 1fr;
  }
}

.modgrid > div {
  background: var(--panel);
  padding: 24px 22px 22px;
  transition: background .2s;
}

.modgrid > div:hover {
  background: #fafafa;
}

.modgrid .mod-ic {
  width: 30px;
  height: 30px;
  color: var(--ink);
  stroke-width: 1.6px;
  transition: color .2s, transform .3s var(--ease);
  margin: 0 auto 16px;
  display: block;
}

.modgrid > div:hover .mod-ic {
  color: var(--accent);
  transform: translateY(-2px);
}

.modgrid .mk {
  font-family: var(--mono);
  letter-spacing: .1em;
  color: var(--accent);
  font-size: 11px;
}

.modgrid h4 {
  font-family: var(--serif);
  margin: 12px 0 5px;
  font-size: 24px;
  font-weight: 400;
}

.modgrid p {
  font-family: var(--mono);
  letter-spacing: .04em;
  color: var(--muted);
  margin: 0;
  font-size: 11px;
}

.bigstat {
  font-family: var(--serif);
  align-items: baseline;
  gap: 18px;
  margin-top: 48px;
  display: flex;
}

.skills-wrap {
  text-align: center;
}

.skills-wrap .eyebrow {
  margin-left: auto;
  margin-right: auto;
}

.skills-wrap .big {
  max-width: 38ch;
  margin-left: auto;
  margin-right: auto;
}

.skills-wrap .say {
  text-wrap: balance;
  max-width: 56ch;
  margin-left: auto;
  margin-right: auto;
}

.skillcloud {
  isolation: isolate;
  max-width: 1000px;
  height: clamp(460px, 58vh, 610px);
  margin: 58px auto 0;
  position: relative;
  overflow: visible;
}

.skillcloud__links {
  z-index: 0;
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.skillcloud__links path {
  fill: none;
  stroke: #35664f38;
  stroke-width: .16px;
  vector-effect: non-scaling-stroke;
  stroke-dasharray: 3 9;
  animation: 7.5s linear infinite pulseLine;
}

.skillcloud__links path:nth-child(2n) {
  stroke: #17181c24;
  animation-delay: -2s;
}

.skillhub {
  z-index: 2;
  aspect-ratio: 1;
  pointer-events: none;
  width: 240px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.skillhub__ring {
  aspect-ratio: 1;
  box-shadow: none;
  background: none;
  border-radius: 50%;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
}

.skillhub__ring--sm {
  opacity: .86;
  border: 1.5px solid #35664f6b;
  width: 86px;
  animation: 7s linear infinite ringOrbitSm;
  transform: translate(-50%, -50%)rotate(0);
}

.skillhub__ring--md {
  opacity: .56;
  border: 1px solid #35664f47;
  width: 160px;
  animation: 10s linear infinite reverse ringOrbitMd;
  transform: translate(-50%, -50%)rotate(0);
}

.skillhub__ring--lg {
  opacity: .34;
  border: 1px solid #35664f2e;
  width: 246px;
  animation: 14s linear infinite ringOrbitLg;
  transform: translate(-50%, -50%)rotate(0);
}

.skillcloud > span {
  z-index: 3;
  font-family: var(--mono);
  text-align: center;
  white-space: nowrap;
  background: var(--panel);
  border: 1px solid var(--line);
  color: var(--ink);
  --drift: drift;
  animation: var(--drift) var(--d, 8s) var(--ease) infinite;
  animation-delay: var(--dl, 0s);
  will-change: transform;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  font-size: 13.5px;
  line-height: 1;
  display: inline-flex;
  position: absolute;
  translate: -50% -50%;
  box-shadow: 0 8px 24px -14px #14161a47;
}

.skillcloud .sk-ic {
  opacity: .85;
  width: 15px;
  height: 15px;
  animation: iconPulse 4.8s var(--ease) infinite;
  flex: none;
}

.skillcloud > span.hot {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
}

.skillcloud > span.clay {
  color: var(--accent);
  border-color: var(--accent);
  background: var(--panel);
}

.skillcloud > span:nth-of-type(3n) {
  --drift: driftSide;
}

.skillcloud > span:nth-of-type(4n) {
  --drift: driftTilt;
}

.skillcloud > span.hot {
  --drift: driftGlow;
}

@keyframes drift {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-12px);
  }
}

@keyframes driftSide {
  0%, 100% {
    transform: translate(0);
  }

  50% {
    transform: translate(8px, -10px);
  }
}

@keyframes driftTilt {
  0%, 100% {
    transform: translate(0)rotate(0);
  }

  50% {
    transform: translate(-7px, -9px)rotate(-1.2deg);
  }
}

@keyframes driftGlow {
  0%, 100% {
    transform: translateY(0);
    box-shadow: 0 8px 24px -14px #14161a47;
  }

  50% {
    transform: translateY(-12px);
    box-shadow: 0 12px 30px -16px #35664f80;
  }
}

@keyframes iconPulse {
  0%, 100% {
    opacity: .72;
  }

  50% {
    opacity: 1;
  }
}

@keyframes ringOrbitSm {
  from {
    opacity: .42;
    transform: translate(-50%, -50%)rotate(0)scale(.94);
  }

  50% {
    opacity: .9;
    transform: translate(-50%, -50%)rotate(180deg)scale(1.06);
  }

  to {
    opacity: .42;
    transform: translate(-50%, -50%)rotate(360deg)scale(.94);
  }
}

@keyframes ringOrbitMd {
  from {
    opacity: .28;
    transform: translate(-50%, -50%)rotate(0)scale(1.04);
  }

  50% {
    opacity: .66;
    transform: translate(-50%, -50%)rotate(180deg)scale(.96);
  }

  to {
    opacity: .28;
    transform: translate(-50%, -50%)rotate(360deg)scale(1.04);
  }
}

@keyframes ringOrbitLg {
  from {
    opacity: .18;
    transform: translate(-50%, -50%)rotate(0)scale(.98);
  }

  50% {
    opacity: .42;
    transform: translate(-50%, -50%)rotate(180deg)scale(1.05);
  }

  to {
    opacity: .18;
    transform: translate(-50%, -50%)rotate(360deg)scale(.98);
  }
}

@keyframes pulseLine {
  to {
    stroke-dashoffset: -44px;
  }
}

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .skillcloud > span:not(.skillhub__ring) {
      animation: var(--drift) var(--d, 8s) var(--ease) infinite, skillCloudScroll linear both, skillCloudParallax linear both;
      animation-delay: var(--dl, 0s), 0s, 0s;
      animation-timeline: auto, view(), view();
      animation-range: normal, entry exit, entry exit;
    }
  }
}

@keyframes skillCloudScroll {
  from {
    rotate: -4deg;
  }

  50% {
    rotate: .4deg;
  }

  to {
    rotate: 4deg;
  }
}

@keyframes skillCloudParallax {
  from {
    translate: -50% calc(-50% - var(--px, 30px) * .5);
  }

  to {
    translate: -50% calc(-50% + var(--px, 30px) * .5);
  }
}

@media (prefers-reduced-motion: reduce) {
  .skillhub__ring, .skillcloud > span, .skillcloud .sk-ic, .skillcloud__links path {
    animation: none;
  }
}

@media (max-width: 900px) {
  .skillcloud {
    isolation: auto;
    flex-wrap: wrap;
    place-content: center;
    gap: 9px;
    max-width: none;
    height: auto;
    margin-top: 40px;
    display: flex;
  }

  .skillcloud__links, .skillhub {
    display: none;
  }

  .skills-wrap .skillcloud > span {
    will-change: auto;
    white-space: nowrap;
    max-width: none;
    padding: 8px 13px;
    font-size: 12px;
    animation: none;
    position: static;
    translate: none;
  }
}

.sectionbrand {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 14px;
  margin: 0 0 32px;
  display: flex;
}

.sectionbrand .dot {
  background: var(--accent);
  border-radius: 50%;
  flex: none;
  align-self: center;
  width: 8px;
  height: 8px;
}

.sectionbrand b {
  font-family: var(--mono);
  letter-spacing: .03em;
  text-transform: uppercase;
  color: var(--ink);
  font-size: clamp(18px, 2.3vw, 27px);
  font-weight: 500;
}

.sectionbrand span {
  font-family: var(--mono);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--muted);
  font-size: 12px;
}

.adopt {
  margin-top: 48px;
}

.adopt__lab {
  font-family: var(--mono);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 24px;
  font-size: 11px;
  display: block;
}

.adopt__row {
  grid-template-columns: 170px 1fr 84px;
  align-items: center;
  gap: 22px;
  margin-bottom: 20px;
  display: grid;
}

.adopt__name {
  font-family: var(--mono);
  letter-spacing: .04em;
  color: var(--ink-2);
  font-size: 13px;
}

.adopt__track {
  background: var(--paper-2);
  border-radius: 999px;
  height: 16px;
  overflow: hidden;
}

.adopt__fill {
  width: 0;
  height: 100%;
  transition: width 1.2s var(--ease);
  background: #c9c6bf;
  border-radius: 999px;
}

.adopt__fill.hot {
  background: var(--accent);
}

.adopt.vis .adopt__fill {
  width: var(--w);
}

.adopt__num {
  font-family: var(--serif);
  text-align: right;
  font-size: clamp(30px, 3.4vw, 46px);
  line-height: 1;
}

.adopt__row:last-child .adopt__num {
  color: var(--accent);
}

@media (max-width: 560px) {
  .adopt__row {
    grid-template-columns: 92px 1fr 52px;
    gap: 13px;
  }

  .adopt__name {
    font-size: 11px;
  }
}

.osshow {
  border: 1px solid var(--line);
  background: #0e0d0b;
  border-radius: 16px;
  max-width: 900px;
  margin: 56px auto 0;
  overflow: hidden;
  box-shadow: 0 34px 70px -36px #00000073;
}

.osshow__img {
  object-fit: cover;
  object-position: 50% 0%;
  width: 100%;
  height: clamp(320px, 46vh, 520px);
  display: block;
}

.osshow__cap {
  text-align: center;
  padding: 16px var(--pad);
  background: var(--paper);
  font-family: var(--mono);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #9a948a;
  margin: 0;
  font-size: 11px;
}

.claude-inline {
  white-space: nowrap;
  font-style: normal;
}

.claude-inline svg {
  vertical-align: -.05em;
  width: auto;
  height: .72em;
  margin-right: .14em;
  display: inline-block;
}

.wrap {
  max-width: var(--maxw);
  padding: 0 var(--pad);
  margin: 0 auto;
}

.rv, .rv.vis {
  opacity: 1;
  transform: none;
}

.dark {
  background: var(--ink);
  color: #f3ece0;
  padding: clamp(110px, 20vh, 240px) 0;
  position: relative;
  overflow: hidden;
}

.dark:after {
  content: "";
  z-index: 0;
  pointer-events: none;
  opacity: .7;
  background-image: url("/assets/cape-cod-hopper.jpg");
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  inset: 0;
  -webkit-mask-image: linear-gradient(to left, #000 0% 28%, #00000080 55%, #0000 78%);
  mask-image: linear-gradient(to left, #000 0% 28%, #00000080 55%, #0000 78%);
}

.dark > .wrap {
  z-index: 1;
  position: relative;
}

.dark .eyebrow {
  color: #a9c3b1;
  background: linear-gradient(135deg, #a9c3b124 0%, #a9c3b10a 100%);
}

.dark .eyebrow .dot {
  --glow: 169, 195, 177;
  background: #a9c3b1;
  box-shadow: 0 0 0 3px #a9c3b11f;
}

.dark .big {
  color: #fcf8f0;
}

.dark .say {
  color: #cfc7b8;
}

@media (max-width: 680px) {
  .dark:after {
    opacity: .18;
  }
}

.cust {
  padding: clamp(60px, 8.5vh, 96px) 0;
}

.cust .eyebrow {
  margin-left: auto;
  margin-right: auto;
}

.cust__card {
  text-align: center;
  max-width: 1000px;
  animation: custFade .45s var(--ease) both;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  margin: 6px auto 0;
  display: flex;
}

@keyframes custFade {
  from {
    opacity: 0;
    transform: translateY(6px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.cust__avatar {
  border: 1px solid var(--line);
  border-radius: 50%;
  flex: none;
  width: 88px;
  height: 88px;
  overflow: hidden;
  box-shadow: 0 12px 34px -18px #14161a73;
}

.cust__avatar img {
  object-fit: cover;
  object-position: 50% 16%;
  width: 100%;
  height: 100%;
  display: block;
}

.cust__quote {
  font-family: var(--serif);
  letter-spacing: -.022em;
  max-width: none;
  margin: 0;
  font-size: clamp(26px, 4.4vw, 60px);
  font-weight: 400;
  line-height: 1.04;
}

.cust__by {
  flex-direction: column;
  gap: 7px;
  display: flex;
}

.cust__name {
  font-family: var(--sans);
  color: var(--ink);
  font-size: 15px;
  font-weight: 500;
}

.cust__meta {
  font-family: var(--mono);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--muted);
  font-size: 11px;
}

.cust__logo {
  opacity: .5;
  width: auto;
  height: 30px;
  margin-top: 12px;
}

#faq .eyebrow {
  margin-left: auto;
  margin-right: auto;
}

.faq {
  max-width: 1000px;
  margin: 8px auto 0;
}

details {
  border-bottom: 1px solid var(--line);
}

summary {
  cursor: pointer;
  font-family: var(--serif);
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 24px 2px;
  font-size: clamp(20px, 2.3vw, 27px);
  list-style: none;
  transition: color .2s;
  display: flex;
}

summary::-webkit-details-marker {
  display: none;
}

summary:hover {
  color: var(--accent);
}

summary .pm {
  flex: none;
  width: 16px;
  height: 16px;
  position: relative;
}

summary .pm:before, summary .pm:after {
  content: "";
  background: var(--accent);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

summary .pm:before {
  width: 13px;
  height: 2px;
}

summary .pm:after {
  width: 2px;
  height: 13px;
  transition: transform .25s;
}

details[open] summary .pm:after {
  transform: translate(-50%, -50%)scaleY(0);
}

.ans {
  color: var(--muted);
  max-width: 70ch;
  padding: 0 2px 24px;
  font-size: 16.5px;
  line-height: 1.7;
}

.final-cta {
  background: var(--paper);
  padding: clamp(72px, 10vh, 128px) 0;
}

.final-cta__inner {
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, .74fr);
  align-items: end;
  gap: clamp(34px, 6vw, 92px);
  display: grid;
}

.final-cta__copy .eyebrow {
  margin-bottom: 24px;
}

.final-cta__action {
  flex-flow: wrap;
  align-items: center;
  gap: 18px 24px;
  padding-bottom: 8px;
  display: flex;
}

.final-cta__button {
  background: var(--ink);
  min-height: 50px;
  color: var(--paper);
  border-radius: 999px;
  align-items: center;
  gap: 9px;
  padding: 0 22px;
  font-size: 15px;
  font-weight: 500;
  transition: background .2s, transform .1s;
  display: inline-flex;
}

.final-cta__button:hover {
  background: #000;
}

.final-cta__button:active {
  transform: translateY(1px);
}

.final-cta__button span {
  transition: transform .2s var(--ease);
  display: inline-block;
}

.final-cta__button:hover span {
  transform: translateX(4px);
}

.final-cta__built {
  font-family: var(--mono);
  letter-spacing: .11em;
  text-transform: uppercase;
  color: var(--muted);
  align-items: center;
  gap: 8px;
  font-size: 11px;
  display: inline-flex;
}

.final-cta__built svg {
  width: 15px;
  height: 15px;
  color: var(--claude);
  flex: none;
}

@media (max-width: 820px) {
  .final-cta__inner {
    grid-template-columns: 1fr;
    align-items: start;
  }
}

.contact {
  background: var(--paper-2);
  padding: clamp(72px, 11vh, 120px) 0;
}

.form-grid {
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 60px;
  margin-top: 14px;
  display: grid;
}

@media (max-width: 860px) {
  .form-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

.form-aside .big {
  font-size: clamp(34px, 4.4vw, 58px);
}

.built {
  border: 1px solid var(--line);
  background: var(--panel);
  font-family: var(--mono);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--muted);
  border-radius: 999px;
  align-items: center;
  gap: 9px;
  margin-top: 26px;
  padding: 9px 15px 9px 11px;
  font-size: 11px;
  display: inline-flex;
}

.built b {
  color: var(--ink);
  font-weight: 500;
}

.built svg {
  width: 15px;
  height: 15px;
}

.field {
  margin-bottom: 16px;
}

.field label {
  font-family: var(--mono);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 7px;
  font-size: 11px;
  display: block;
}

.field label .req {
  color: var(--accent);
}

.field input, .field select, .field textarea {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 10px;
  width: 100%;
  padding: 13px 15px;
  font-size: 15px;
  transition: border-color .2s, box-shadow .2s;
}

.field input::placeholder, .field textarea::placeholder {
  color: var(--faint);
}

.field input:focus, .field select:focus, .field textarea:focus {
  border-color: var(--accent);
  outline: none;
  box-shadow: 0 0 0 3px #35664f21;
}

.field textarea {
  resize: vertical;
  min-height: 104px;
}

.field select {
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b6354' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-position: right 14px center;
  background-repeat: no-repeat;
  padding-right: 38px;
}

.row2 {
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  display: grid;
}

@media (max-width: 480px) {
  .row2 {
    grid-template-columns: 1fr;
  }
}

.submit {
  background: var(--ink);
  width: 100%;
  color: var(--paper);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  padding: 15px;
  font-size: 15px;
  font-weight: 500;
  transition: background .2s, transform .1s;
  display: inline-flex;
}

.submit:hover {
  background: #000;
}

.submit:active {
  transform: translateY(1px);
}

.form-foot {
  text-align: center;
  font-family: var(--mono);
  letter-spacing: .04em;
  color: var(--faint);
  margin-top: 13px;
  font-size: 10.5px;
}

.err {
  color: #b9322a;
  font-family: var(--mono);
  margin-top: 6px;
  font-size: 10.5px;
  display: none;
}

.field.invalid input, .field.invalid select, .field.invalid textarea {
  border-color: #b9322a;
}

.field.invalid .err {
  display: block;
}

.form-success {
  padding: 34px 4px;
  display: none;
}

.form-success.show {
  display: block;
}

.form-success .serif {
  font-family: var(--serif);
  font-size: 30px;
}

.form-success p {
  color: var(--muted);
  margin-top: 8px;
}

footer {
  background: var(--ink);
  color: #e7e1d4;
  padding: 74px 0 40px;
}

.foot-top {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px;
  display: flex;
}

.foot-brand .wm {
  width: auto;
  height: 20px;
}

.foot-brand .wm path {
  fill: #f3efe6;
}

.foot-brand .tag {
  font-family: var(--mono);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--claude);
  margin-top: 13px;
  font-size: 11px;
}

.foot-cols {
  flex-wrap: wrap;
  gap: 56px;
  display: flex;
}

.foot-col h5 {
  font-family: var(--mono);
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #9a948a;
  margin: 0 0 14px;
  font-size: 11px;
  font-weight: 400;
}

.foot-col a {
  color: #e7e1d4;
  opacity: .8;
  margin-bottom: 9px;
  font-size: 14px;
  transition: opacity .2s;
  display: block;
}

.foot-col a:hover {
  opacity: 1;
}

.foot-bottom {
  font-family: var(--mono);
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #9a948a;
  border-top: 1px solid #f3efe624;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  margin-top: 46px;
  padding-top: 22px;
  font-size: 11px;
  display: flex;
}

@media (max-width: 680px) {
  .nav {
    top: 10px;
  }

  .nav__pill {
    gap: 10px;
    padding: 5px 12px;
  }

  .nav__pill .cta {
    height: 30px;
    padding: 0 13px;
  }

  .stmt {
    padding: 46px 0;
  }

  #deploy {
    padding: 42px 0;
  }

  .cust {
    padding: 46px 0;
  }

  .final-cta, .contact {
    padding: 54px 0;
  }

  footer {
    padding: 48px 0 32px;
  }

  .dark {
    padding: 56px 0;
  }
}

.pagehead {
  background: var(--ink);
  color: #f3ece0;
  padding: clamp(118px, 17vh, 176px) 0 clamp(40px, 7vh, 68px);
  position: relative;
  overflow: hidden;
}

.pagehead:after {
  content: "";
  z-index: 1;
  pointer-events: none;
  background: radial-gradient(120% 150% at 82% -10%, #a9c3b133, #0000 58%), linear-gradient(#00000059 0%, #0000 22%);
  position: absolute;
  inset: 0;
}

.pagehead > .wrap {
  z-index: 2;
  position: relative;
}

.pagehead__art {
  z-index: 0;
  object-fit: cover;
  object-position: 50% 34%;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.pagehead--art:after {
  background: linear-gradient(90deg, #0e0b06f0 0%, #0e0b06bd 32%, #0e0b064d 62%, #0e0b060a 100%), linear-gradient(0deg, #0e0b0694 0%, #0e0b0600 42%), linear-gradient(#0e0b0680 0%, #0e0b0600 24%);
}

@media (max-width: 680px) {
  .pagehead__art {
    object-position: 58% 44%;
  }

  .pagehead--art:after {
    background: linear-gradient(#0e0b068c 0%, #0e0b0659 42%, #0e0b06d6 100%);
  }
}

.about-split {
  grid-template-columns: 1.06fr .94fr;
  align-items: center;
  gap: clamp(34px, 5vw, 72px);
  display: grid;
}

@media (max-width: 860px) {
  .about-split {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

.about-split__media {
  aspect-ratio: 848 / 1040;
  background: #1a1409;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 30px 64px -34px #00000080;
}

.about-split__media img {
  object-fit: cover;
  object-position: 50% 44%;
  width: 100%;
  height: 100%;
  display: block;
}

@media (max-width: 860px) {
  .about-split__media {
    aspect-ratio: 16 / 11;
  }
}

.pagehead .eyebrow {
  color: #a9c3b1;
  background: linear-gradient(135deg, #a9c3b129 0%, #a9c3b10a 100%);
}

.pagehead .eyebrow .dot {
  --glow: 169, 195, 177;
  background: #a9c3b1;
  box-shadow: 0 0 0 3px #a9c3b11f;
}

.pagehead h1 {
  font-family: var(--serif);
  color: #fcf8f0;
  letter-spacing: -.02em;
  text-wrap: balance;
  max-width: 18ch;
  margin: 0;
  font-size: clamp(34px, 5.4vw, 66px);
  font-weight: 400;
  line-height: 1.04;
}

.pagehead h1 em {
  color: #fff6ea;
  font-style: italic;
}

.pagehead .lede {
  color: #cfc7b8;
  max-width: 62ch;
  margin: 20px 0 0;
  font-size: clamp(17px, 2vw, 21px);
  line-height: 1.55;
}

.pagehead .hero__cta {
  justify-content: flex-start;
}

.backlink {
  font-family: var(--mono);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #cfc7b8;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  transition: color .2s, gap .2s;
  display: inline-flex;
}

.backlink:hover {
  color: #fff6ea;
  gap: 11px;
}

.roles {
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
  margin-top: 46px;
  display: grid;
}

@media (max-width: 780px) {
  .roles {
    grid-template-columns: 1fr;
  }
}

.role {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 16px;
  flex-direction: column;
  gap: 14px;
  padding: 26px 24px;
  transition: border-color .2s, box-shadow .2s, transform .12s;
  display: flex;
}

.role:hover {
  border-color: #d9d7d0;
  transform: translateY(-2px);
  box-shadow: 0 20px 44px -30px #14161a6b;
}

.role__top {
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  display: flex;
}

.role__org {
  font-family: var(--mono);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 7px;
  font-size: 11px;
}

.role__title {
  font-family: var(--serif);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 400;
  line-height: 1.08;
}

.role__open {
  font-family: var(--mono);
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #3a7d4f;
  white-space: nowrap;
  flex: none;
  padding-top: 5px;
  font-size: 10px;
}

.role__blurb {
  color: var(--ink-2);
  flex: 1;
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
}

.role__meta {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.tag {
  font-family: var(--mono);
  letter-spacing: .05em;
  color: var(--muted);
  border: 1px solid var(--line);
  white-space: nowrap;
  border-radius: 999px;
  padding: 5px 11px;
  font-size: 10.5px;
}

.role__cta {
  font-family: var(--mono);
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--accent);
  align-items: center;
  gap: 7px;
  font-size: 11px;
  transition: gap .2s;
  display: inline-flex;
}

.role:hover .role__cta {
  gap: 11px;
}

.jd {
  max-width: 760px;
  margin: 0 auto;
}

.jd .jd-sec {
  margin-top: 40px;
}

.jd h3 {
  font-family: var(--mono);
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--accent);
  margin: 0 0 16px;
  font-size: 12px;
  font-weight: 500;
}

.jd p {
  color: var(--ink-2);
  max-width: 68ch;
  margin: 0 0 14px;
  font-size: 17px;
  line-height: 1.7;
}

.jd ul {
  flex-direction: column;
  gap: 13px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.jd li {
  color: var(--ink-2);
  max-width: 68ch;
  padding-left: 26px;
  font-size: 16px;
  line-height: 1.6;
  position: relative;
}

.jd li:before {
  content: "";
  background: var(--accent);
  border-radius: 50%;
  width: 6px;
  height: 6px;
  position: absolute;
  top: 10px;
  left: 6px;
}

.jd__apply {
  margin-top: 46px;
}

.jd__meta {
  flex-wrap: wrap;
  gap: 9px;
  margin: 24px 0 0;
  display: flex;
}

.pagehead .tag {
  color: #cfc7b8;
  border-color: #f3efe633;
}

.field input[type="file"] {
  cursor: pointer;
  font-family: var(--mono);
  color: var(--ink-2);
  padding: 11px 14px;
  font-size: 12px;
}

.field input[type="file"]::file-selector-button {
  font-family: var(--mono);
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--ink);
  background: var(--paper);
  border: 1px solid var(--line);
  cursor: pointer;
  border-radius: 8px;
  margin-right: 12px;
  padding: 8px 12px;
  font-size: 11px;
  transition: background .2s, border-color .2s;
}

.field input[type="file"]::file-selector-button:hover {
  background: var(--paper-2);
  border-color: #d9d7d0;
}

.field .hint {
  font-family: var(--mono);
  letter-spacing: .03em;
  color: var(--faint);
  margin-top: 7px;
  font-size: 10.5px;
  display: block;
}

.team-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 46px;
  display: grid;
}

@media (max-width: 780px) {
  .team-grid {
    grid-template-columns: 1fr;
  }
}

.member {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 24px 22px;
}

.member__photo {
  object-fit: cover;
  object-position: center top;
  border: 1px solid var(--line);
  background: var(--paper-2);
  border-radius: 14px;
  width: 96px;
  height: 96px;
  margin-bottom: 18px;
  display: block;
}

.member__name {
  font-family: var(--serif);
  font-size: 24px;
  font-weight: 400;
  line-height: 1.1;
}

.member__role {
  font-family: var(--mono);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--accent);
  margin: 7px 0 13px;
  font-size: 11px;
}

.member__bio {
  color: var(--ink-2);
  margin: 0;
  font-size: 14.5px;
  line-height: 1.6;
}

.backed {
  border-top: 1px solid var(--line);
  font-family: var(--mono);
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--muted);
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 10px;
  margin-top: 30px;
  padding-top: 22px;
  font-size: 11px;
  line-height: 1.7;
  display: flex;
}

.backed b {
  color: var(--ink-2);
  font-weight: 500;
}

@media (max-width: 680px) {
  .pagehead {
    padding: 96px 0 44px;
  }
}

.posts {
  grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 780px) {
  .posts {
    grid-template-columns: 1fr;
  }
}

.post {
  padding: 0;
  overflow: hidden;
}

.post > :not(.post__cover) {
  margin-left: 24px;
  margin-right: 24px;
}

.post > .role__org {
  margin-top: 22px;
}

.post > .role__cta {
  margin-bottom: 24px;
}

.post__cover {
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background: var(--paper-2);
  border-bottom: 1px solid var(--line);
  width: 100%;
  display: block;
}

.post:not(:has(.post__cover)) > .role__org {
  margin-top: 26px;
}

.blog-empty {
  padding: 12px 0 40px;
}

.blog-empty a {
  color: var(--accent);
  text-underline-offset: 3px;
  text-decoration: underline;
}

.post-by {
  align-items: center;
  gap: 14px;
  margin-top: 26px;
  display: flex;
}

.post-by img {
  object-fit: cover;
  border: 1px solid #f3efe640;
  border-radius: 50%;
  width: 44px;
  height: 44px;
}

.post-by__name {
  color: #fcf8f0;
  font-size: 14px;
  font-weight: 500;
  display: block;
}

.post-by__role {
  font-family: var(--mono);
  letter-spacing: .09em;
  text-transform: uppercase;
  color: #cfc7b8;
  margin-top: 3px;
  font-size: 10.5px;
  display: block;
}

.post-body__cover {
  border-radius: 16px;
  width: 100%;
  margin: 0 0 40px;
  display: block;
  box-shadow: 0 30px 64px -34px #00000059;
}

.post-body h2 {
  font-family: var(--serif);
  letter-spacing: -.015em;
  margin: 44px 0 16px;
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 400;
  line-height: 1.15;
}

.post-body h3 {
  font-family: var(--serif);
  margin: 36px 0 12px;
  font-size: clamp(20px, 2.2vw, 25px);
  font-weight: 400;
  line-height: 1.2;
}

.post-body blockquote {
  border-left: 2px solid var(--accent);
  font-family: var(--serif);
  color: var(--ink);
  margin: 34px 0;
  padding-left: 22px;
  font-size: clamp(19px, 2.1vw, 24px);
  line-height: 1.4;
}

.post-body blockquote p {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

.post-body a {
  color: var(--accent);
  text-underline-offset: 3px;
  text-decoration: underline;
}

.post-body ul {
  flex-direction: column;
  gap: 13px;
  margin: 0 0 14px;
  padding: 0;
  list-style: none;
  display: flex;
}

.post-body li {
  color: var(--ink-2);
  max-width: 68ch;
  padding-left: 26px;
  font-size: 16px;
  line-height: 1.6;
  position: relative;
}

.post-body li:before {
  content: "";
  background: var(--accent);
  border-radius: 50%;
  width: 6px;
  height: 6px;
  position: absolute;
  top: 10px;
  left: 6px;
}

.post-body ol {
  color: var(--ink-2);
  flex-direction: column;
  gap: 13px;
  margin: 0 0 14px;
  padding-left: 22px;
  font-size: 16px;
  line-height: 1.6;
  display: flex;
}

.post-body code {
  font-family: var(--mono);
  background: var(--paper-2);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 2px 6px;
  font-size: .88em;
}

.post-fig {
  margin: 36px 0;
}

.post-fig img {
  border-radius: 14px;
  width: 100%;
  display: block;
}

.post-fig figcaption {
  font-family: var(--mono);
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
  text-align: center;
  margin-top: 10px;
  font-size: 11px;
}

.skills-link {
  font-family: var(--mono);
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--accent);
  white-space: nowrap;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  transition: gap .2s;
  display: inline-flex;
}

.skills-link:hover {
  gap: 10px;
}

a.tag {
  transition: color .2s, border-color .2s;
}

a.tag:hover {
  color: var(--accent);
  border-color: var(--accent);
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false
}

/* [project]/node_modules/.bun/geist@1.7.2+8ca1904f0da21ea1/node_modules/geist/dist/geistsans_d5a4f12f.module.css [app-client] (css) */
@font-face {
  font-family: GeistSans;
  src: url("../media/Geist_Variable-s.p.bb1d9210.woff2") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}

@font-face {
  font-family: GeistSans Fallback;
  src: local(Arial);
  ascent-override: 94.56%;
  descent-override: 27.76%;
  line-gap-override: 0.0%;
  size-adjust: 106.28%;
}

.geistsans_d5a4f12f-module__OSBDdG__className {
  font-family: GeistSans, GeistSans Fallback;
}

.geistsans_d5a4f12f-module__OSBDdG__variable {
  --font-geist-sans: "GeistSans", "GeistSans Fallback";
}

/* [project]/node_modules/.bun/geist@1.7.2+8ca1904f0da21ea1/node_modules/geist/dist/geistmono_157ca88a.module.css [app-client] (css) */
@font-face {
  font-family: GeistMono;
  src: url("../media/GeistMono_Variable.p.cd2691d3.woff2") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}

.geistmono_157ca88a-module__xFKuQW__className {
  font-family: GeistMono, ui-monospace, SFMono-Regular, Roboto Mono, Menlo, Monaco, Liberation Mono, DejaVu Sans Mono, Courier New, monospace;
}

.geistmono_157ca88a-module__xFKuQW__variable {
  --font-geist-mono: "GeistMono", ui-monospace, SFMono-Regular, Roboto Mono, Menlo, Monaco, Liberation Mono, DejaVu Sans Mono, Courier New, monospace;
}

/* [next]/internal/font/google/fraunces_520b8abd.module.css [app-client] (css) */
@font-face {
  font-family: Fraunces;
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/6865e74822869db5-s.e9baa5d3.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Fraunces;
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/0494568ab28b6008-s.3386308b.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Fraunces;
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/66b33cc02d8f8b9d-s.p.be4602c5.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Fraunces;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/a5a3076f5a3c2968-s.b14ad258.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Fraunces;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/23f1a98b08006014-s.a9f8c6bf.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Fraunces;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/54fc36028e2bb174-s.p.a3b6b797.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Fraunces Fallback;
  src: local(Times New Roman);
  ascent-override: 84.71%;
  descent-override: 22.09%;
  line-gap-override: 0.0%;
  size-adjust: 115.45%;
}

.fraunces_520b8abd-module__unggJa__className {
  font-family: Fraunces, Fraunces Fallback;
}

.fraunces_520b8abd-module__unggJa__variable {
  --font-fraunces: "Fraunces", "Fraunces Fallback";
}

/* [project]/apps/north.law/app/suisse_44e97e6e.module.css [app-client] (css) */
@font-face {
  font-family: suisse;
  src: url("../media/SuisseIntl_Thin-s.p.52d36b60.woff2") format("woff2");
  font-display: swap;
  font-weight: 100;
  font-style: normal;
}

@font-face {
  font-family: suisse;
  src: url("../media/SuisseIntl_Light-s.p.dbe37ea4.woff2") format("woff2");
  font-display: swap;
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: suisse;
  src: url("../media/SuisseIntl_Book-s.p.b190f152.woff2") format("woff2");
  font-display: swap;
  font-weight: 350;
  font-style: normal;
}

@font-face {
  font-family: suisse;
  src: url("../media/SuisseIntl_Regular-s.p.c70d4739.woff2") format("woff2");
  font-display: swap;
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: suisse;
  src: url("../media/SuisseIntl_Medium-s.p.0c7cb737.woff2") format("woff2");
  font-display: swap;
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: suisse Fallback;
  src: local(Arial);
  ascent-override: 96.05%;
  descent-override: 27.17%;
  line-gap-override: 0.0%;
  size-adjust: 105.26%;
}

.suisse_44e97e6e-module__qMe5aW__className {
  font-family: suisse, suisse Fallback;
}

.suisse_44e97e6e-module__qMe5aW__variable {
  --font-suisse: "suisse", "suisse Fallback";
}

/* [project]/apps/north.law/app/suissemono_dca15235.module.css [app-client] (css) */
@font-face {
  font-family: suisseMono;
  src: url("../media/SuisseIntlMono_Regular-s.p.1d0fd89b.woff2") format("woff2");
  font-display: swap;
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: suisseMono Fallback;
  src: local(Arial);
  ascent-override: 69.65%;
  descent-override: 21.97%;
  line-gap-override: 0.0%;
  size-adjust: 141.57%;
}

.suissemono_dca15235-module__3Y-ziq__className {
  font-family: suisseMono, suisseMono Fallback;
}

.suissemono_dca15235-module__3Y-ziq__variable {
  --font-suisse-mono: "suisseMono", "suisseMono Fallback";
}

/*# sourceMappingURL=%5Broot-of-the-server%5D__856ffc90._.css.map*/