body {
  font-family: "Figtree", sans-serif;
}
body * {
  font-family: inherit;
}

input,
textarea {
  font-family: "Figtree", sans-serif;
  font-size: 14px;
  line-height: 20px;
}

hr {
  border: none;
  height: 1px;
  background: var(--neutral-outline-1);
}

svg:not(.animation) {
  fill: currentColor;
}

ul,
ol {
  width: 100%;
  padding-left: 1.25em;
}

ul.list--unstyled,
ol.list--unstyled {
  list-style: none;
  padding: 0;
}

ul.ul--icons {
  list-style: none;
  padding-left: 0;
  display: flex;
  flex-direction: column;
  gap: var(--s2);
  --icon-color: var(--neutral-fg-2);
  --icon-background-color: var(--neutral-outline-1);
}

ul.ul--icons li {
  display: flex;
  flex-wrap: wrap;
  gap: var(--s2);
}

/* Buttons */
button,
.button {
  font-family: "Figtree", sans-serif;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: var(--s2);
  font-size: var(--s3-5);
  font-weight: 500 !important;
  line-height: var(--s5);
  text-decoration: none;
  padding: calc(var(--s1-5) - 1px) var(--s3);
  border-radius: var(--radius);
  border: none;
  color: var(--on-hue-fg);
  background-color: var(--primary-blue-bg);
  box-shadow: var(--button-primary-shadow);
  transition: 200ms ease-in-out background-color;
}
button:hover,
.button:hover {
  background-color: var(--primary-blue-bg-hover);
}
button:focus-visible,
.button:focus-visible {
  outline: 2px solid var(--focused-outline);
  outline-offset: 2px;
}

.button--pill {
  padding: var(--s1) var(--s3);
  border-radius: var(--s8);
}
.button--pill svg {
  fill: var(--neutral-fg-2);
}

.button--thick {
  padding: var(--s2) var(--s4);
}

.button--minimal {
  background-color: transparent;
  color: var(--neutral-fg-1);
  box-shadow: none;
}
.button--minimal:hover {
  background-color: var(--bg-3);
}

textarea:focus-visible,
input:focus-visible,
button:focus-visible,
a:focus-visible {
  position: relative;
  outline-color: var(--focused-outline);
  outline-width: 2px;
  outline-offset: 2px;
  outline-style: solid;
}

.button--full {
  width: 100%;
  justify-content: center;
}

.button--secondary {
  color: var(--neutral-fg-1);
  border-color: var(--neutral-outline-1);
  background-color: var(--bg-0);
  box-shadow: var(--button-neutral-shadow);
}
.button--secondary:hover {
  background-color: var(--bg-0-hover);
}

.button--success {
  color: var(--color-success);
  border-color: var(--color-success-outline);
  background: var(--color-success-surface);
}
.button--success:hover {
  background: var(--color-success-outline);
}

/* Card */
.card {
  padding: var(--s4);
  background-color: var(--bg-0);
  border: none;
  box-shadow: var(--elevation-small-puffy);
  border-radius: var(--radius);
  min-height: 100%;
  box-sizing: border-box;
}
@media (max-width: 744px) {
  .card {
    padding: var(--s3);
  }
}
.card.card--transparent {
  background-color: transparent;
}

.card:not(.flex) {
  display: block;
}

.flex--column .card {
  min-height: auto;
}

a.card {
  color: inherit;
  text-decoration: none;
}

a.card:hover {
  background-color: var(--bg-2);
}

.card--tight {
  background-color: var(--bg-2);
  padding: var(--s2);
  --gap: var(--s2);
  border-radius: 20px;
  box-shadow: none;
}
.card--tight.card--doubled:before, .card--tight.card--fancy_doubled:before {
  border-radius: calc(var(--radius) + 1px);
}

.card--primary {
  background-color: var(--blue-badge-bg);
  --color-outline: rgba(0, 68, 204, 0.08);
  background-image: url("/noise.svg");
  background-size: 200px, cover;
  border-radius: var(--radius);
  box-shadow: 0px 1px 0px 0px var(--primary-badge-outline), 0px 4px 8px 0px rgba(20, 20, 18, 0.08);
}
.card--primary.card--doubled:before {
  border-radius: calc(var(--radius) + 1px);
  box-shadow: none;
  background: transparent;
}

.card--inverse {
  color: var(--neutral-fg-1);
}

/* Badge */
.badge {
  display: inline-flex;
  padding: 0px var(--s1);
  justify-content: center;
  align-items: center;
  gap: var(--s1);
  --badge-text-color: var(--neutral-fg-1);
  --badge-border-color: var(--neutral-outline-3);
  --badge-background-color: var(--bg-3);
  border-radius: var(--s1);
  border: 1px solid var(--badge-border-color);
  background: var(--badge-background-color);
  box-shadow: 0px 1px 0px 0px var(--badge-border-color);
  color: var(--badge-text-color);
}

.badge--icon {
  padding: 2px;
}

.badge--bold {
  --badge-text-color: var(--on-contrast-fg);
  --badge-border-color: var(--neutral-fg-1);
  --badge-background-color: var(--bg-contrast-2);
}

.badge--success {
  --badge-text-color: var(--color-success);
  --badge-border-color: var(--color-success-outline);
  --badge-background-color: var(--color-success-surface);
}

.badge--primary {
  --badge-text-color: var(--primary-badge-fg);
  --badge-border-color: var(--primary-badge-outline);
  --badge-background-color: var(--blue-badge-bg);
}

.badge--bold_primary {
  --badge-text-color: var(--bg-1);
  --badge-border-color: var(--primary-blue-bg-hover);
  --badge-background-color: var(--primary-blue-bg);
}

.badge--bold_secondary {
  --badge-border-color: var(--neutral-outline-2);
  --badge-background-color: var(--bg-3);
}

.badge--warning {
  --badge-text-color: var(--color-warning);
  --badge-border-color: var(--color-warning-outline);
  --badge-background-color: var(--color-warning-surface);
}

.badge--danger {
  --badge-text-color: var(--color-danger);
  --badge-border-color: var(--color-danger-outline);
  --badge-background-color: var(--color-danger-surface);
}

.badge--mono {
  font-size: 13px;
  font-family: JetBrains Mono, monospace;
}

/* Tooltip */
.tooltip {
  color: var(--tooltip-fg);
  background-color: var(--tooltip-bg);
  box-shadow: var(--tooltip-shadow);
  padding: var(--s2) var(--s3);
  border-radius: var(--radius);
  z-index: 2;
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  pointer-events: none;
  opacity: 0;
  transform: scale(0.95) translate(0, -8px);
  transition: opacity 0.1s ease-out, transform 0.1s ease-out;
}
.tooltip.tooltip--open {
  pointer-events: all;
  opacity: 1;
  transform: scale(1) translate(0, 0);
}

/* Icons */
[astro-icon] {
  width: 1em;
  height: 1em;
  display: inline-block;
  fill: currentColor;
  vertical-align: text-top;
}

/* Slider */
.slider {
  overflow: hidden;
}

.slider__container {
  display: flex;
  cursor: ew-resize;
}

.slider__slide {
  flex: 0 0 100%;
  min-width: 0;
  opacity: 0;
  transition: opacity 666ms;
}
.slider__slide.current {
  opacity: 1;
}

.slider__buttons {
  display: flex;
}
.slider__buttons button {
  flex: 1;
  justify-content: center;
  border-radius: 0;
  position: relative;
}
.slider__buttons button:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  border-bottom: 2px solid var(--color-primary);
  width: 0%;
  transition: width 10000ms linear;
  visibility: hidden;
}
.slider.stopped .slider__buttons button:after {
  transition: none !important;
}
.slider__buttons button:not(:first-child) {
  border-left: none;
}
.slider__buttons button:not(.current) {
  color: var(--neutral-fg-2);
  background: var(--bg-1);
}
.slider__buttons button.current {
  color: var(--primary-fg);
  background: var(--bg-0);
}
.slider__buttons button.current:after {
  visibility: visible;
  width: 100%;
}/* Typescale */
h1,
h2,
.badge,
.title-4xl,
.title-3xl,
.title-2xl,
.title-xl,
.title-l,
.title-m,
.title-s,
.title-xs {
  font-style: normal;
  font-weight: 600;
  line-height: 1.25;
}

.h0,
.title-4xl {
  font-size: var(--s15);
  letter-spacing: -1.8px;
  line-height: var(--s18);
}
@media (max-width: 744px) {
  .h0,
  .title-4xl {
    font-size: var(--s8);
    line-height: var(--s10);
    letter-spacing: -0.64px;
  }
}

h1,
.title-3xl {
  font-size: var(--s12);
  letter-spacing: -1.44px;
  line-height: var(--s14);
}
@media (max-width: 744px) {
  h1,
  .title-3xl {
    font-size: var(--s7);
    line-height: var(--s9);
    letter-spacing: -0.56px;
  }
}

h2,
.title-2xl {
  font-size: var(--s10);
  letter-spacing: -1.2px;
  line-height: var(--s12);
}
@media (max-width: 744px) {
  h2,
  .title-2xl {
    font-size: var(--s6);
    line-height: var(--s8);
    letter-spacing: -0.24px;
  }
}

.title-xl {
  font-size: var(--s8);
  letter-spacing: -0.64px;
  line-height: var(--s10);
}
@media (max-width: 744px) {
  .title-xl {
    font-size: var(--s5);
    line-height: var(--s7);
    letter-spacing: 0;
  }
}

.title-l {
  font-size: var(--s6);
  letter-spacing: -0.24px;
  line-height: var(--s8);
}
@media (max-width: 744px) {
  .title-l {
    font-size: calc(var(--s4) + 1px);
    line-height: var(--s6);
    letter-spacing: 0.085px;
  }
}

.title-m {
  font-size: var(--s5);
  letter-spacing: 0.08px;
  line-height: var(--s7);
}
@media (max-width: 744px) {
  .title-m {
    font-size: var(--s4);
    line-height: var(--s6);
    letter-spacing: 0.08px;
  }
}

.title-s {
  font-size: var(--s4);
  line-height: var(--s6);
  letter-spacing: 0.08px;
}
@media (max-width: 744px) {
  .title-s {
    font-size: var(--s3-5);
    line-height: var(--s5);
    letter-spacing: 0.07px;
  }
}

.badge,
.title-xs {
  font-size: var(--s3-5);
  line-height: var(--s5);
  letter-spacing: 0.07px;
}
@media (max-width: 744px) {
  .badge,
  .title-xs {
    font-size: var(--s3);
    line-height: var(--s5);
    letter-spacing: 0.12px;
  }
}

h3,
h4,
.subtitle-4xl,
.subtitle-3xl,
.subtitle-2xl,
.subtitle-xl,
.subtitle-l,
.subtitle-m,
.subtitle-s,
.subtitle-xs {
  font-style: normal;
  font-weight: 500;
  line-height: 1.25;
}

.subtitle-4xl {
  font-size: var(--s15);
  letter-spacing: -1.8px;
  line-height: var(--s18);
}
@media (max-width: 744px) {
  .subtitle-4xl {
    font-size: var(--s8);
    line-height: var(--s10);
    letter-spacing: -0.64px;
  }
}

.subtitle-3xl {
  font-size: var(--s12);
  letter-spacing: -1.44px;
  line-height: var(--s14);
}
@media (max-width: 744px) {
  .subtitle-3xl {
    font-size: var(--s7);
    line-height: var(--s9);
    letter-spacing: -0.56px;
  }
}

.subtitle-2xl {
  font-size: var(--s10);
  letter-spacing: -1.2px;
  line-height: var(--s12);
}
@media (max-width: 744px) {
  .subtitle-2xl {
    font-size: var(--s6);
    line-height: var(--s8);
    letter-spacing: -0.24px;
  }
}

h3,
.subtitle-xl {
  font-size: var(--s8);
  letter-spacing: -0.64px;
  line-height: var(--s10);
}
@media (max-width: 744px) {
  h3,
  .subtitle-xl {
    font-size: var(--s5);
    line-height: var(--s7);
    letter-spacing: 0;
  }
}

h4,
.subtitle-l {
  font-size: var(--s6);
  letter-spacing: -0.24px;
  line-height: var(--s8);
}
@media (max-width: 744px) {
  h4,
  .subtitle-l {
    font-size: calc(var(--s4) + 1px);
    line-height: var(--s6);
    letter-spacing: 0.085px;
  }
}

.subtitle-m {
  font-size: var(--s5);
  letter-spacing: 0.08px;
  line-height: var(--s7);
}
@media (max-width: 744px) {
  .subtitle-m {
    font-size: var(--s4);
    line-height: var(--s6);
    letter-spacing: 0.08px;
  }
}

.subtitle-s {
  font-size: var(--s4);
  line-height: var(--s6);
  letter-spacing: 0.08px;
}
@media (max-width: 744px) {
  .subtitle-s {
    font-size: var(--s3-5);
    line-height: var(--s5);
    letter-spacing: 0.07px;
  }
}

.subtitle-xs {
  font-size: var(--s3-5);
  line-height: var(--s5);
  letter-spacing: 0.07px;
}
@media (max-width: 744px) {
  .subtitle-xs {
    font-size: var(--s3);
    line-height: var(--s5);
    letter-spacing: 0.12px;
  }
}

p,
small,
.body-4xl,
.body-3xl,
.body-2xl,
.body-xl,
.body-l,
.body-m,
.body-s,
.body-xs {
  font-style: normal;
  font-weight: 400;
  line-height: 1.25;
}

.body-4xl {
  font-size: var(--s15);
  letter-spacing: -1.8px;
  line-height: var(--s18);
}
@media (max-width: 744px) {
  .body-4xl {
    font-size: var(--s8);
    line-height: var(--s10);
    letter-spacing: -0.64px;
  }
}

.body-3xl {
  font-size: var(--s12);
  letter-spacing: -1.44px;
  line-height: var(--s14);
}
@media (max-width: 744px) {
  .body-3xl {
    font-size: var(--s7);
    line-height: var(--s9);
    letter-spacing: -0.56px;
  }
}

.body-2xl {
  font-size: var(--s10);
  letter-spacing: -1.2px;
  line-height: var(--s12);
}
@media (max-width: 744px) {
  .body-2xl {
    font-size: var(--s6);
    line-height: var(--s8);
    letter-spacing: -0.24px;
  }
}

.body-xl {
  font-size: var(--s8);
  letter-spacing: -0.64px;
  line-height: var(--s10);
}
@media (max-width: 744px) {
  .body-xl {
    font-size: var(--s5);
    line-height: var(--s7);
    letter-spacing: 0;
  }
}

.body-l {
  font-size: var(--s6);
  letter-spacing: -0.24px;
  line-height: var(--s8);
}
@media (max-width: 744px) {
  .body-l {
    font-size: calc(var(--s4) + 1px);
    line-height: var(--s6);
    letter-spacing: 0.085px;
  }
}

p,
.body-m {
  font-size: var(--s5);
  letter-spacing: 0.08px;
  line-height: var(--s7);
}
@media (max-width: 744px) {
  p,
  .body-m {
    font-size: var(--s4);
    line-height: var(--s6);
    letter-spacing: 0.08px;
  }
}

small,
.body-s {
  font-size: var(--s4);
  line-height: var(--s6);
  letter-spacing: 0.08px;
}
@media (max-width: 744px) {
  small,
  .body-s {
    font-size: var(--s3-5);
    line-height: var(--s5);
    letter-spacing: 0.07px;
  }
}

.body-xs {
  font-size: var(--s3-5);
  line-height: var(--s5);
  letter-spacing: 0.07px;
}
@media (max-width: 744px) {
  .body-xs {
    font-size: var(--s3);
    line-height: var(--s5);
    letter-spacing: 0.12px;
  }
}

em,
pre,
code,
.mono-4xl,
.mono-3xl,
.mono-2xl,
.mono-xl,
.mono-l,
.mono-m,
.mono-s,
.mono-xs {
  font-family: JetBrains Mono, monospace;
  font-style: normal;
  font-weight: 400;
  line-height: 1.25;
}

.mono-4xl {
  font-size: var(--s15);
  letter-spacing: -1.8px;
  line-height: var(--s18);
}
@media (max-width: 744px) {
  .mono-4xl {
    font-size: var(--s8);
    line-height: var(--s10);
    letter-spacing: -0.64px;
  }
}

.mono-3xl {
  font-size: var(--s12);
  letter-spacing: -1.44px;
  line-height: var(--s14);
}
@media (max-width: 744px) {
  .mono-3xl {
    font-size: var(--s7);
    line-height: var(--s9);
    letter-spacing: -0.56px;
  }
}

.mono-2xl {
  font-size: var(--s10);
  letter-spacing: -1.2px;
  line-height: var(--s12);
}
@media (max-width: 744px) {
  .mono-2xl {
    font-size: var(--s6);
    line-height: var(--s8);
    letter-spacing: -0.24px;
  }
}

.mono-xl {
  font-size: var(--s8);
  letter-spacing: -0.64px;
  line-height: var(--s10);
}
@media (max-width: 744px) {
  .mono-xl {
    font-size: var(--s5);
    line-height: var(--s7);
    letter-spacing: 0;
  }
}

.mono-l {
  font-size: var(--s6);
  letter-spacing: -0.24px;
  line-height: var(--s8);
}
@media (max-width: 744px) {
  .mono-l {
    font-size: calc(var(--s4) + 1px);
    line-height: var(--s6);
    letter-spacing: 0.085px;
  }
}

.mono-m {
  font-size: var(--s5);
  letter-spacing: 0.08px;
  line-height: var(--s7);
}
@media (max-width: 744px) {
  .mono-m {
    font-size: var(--s4);
    line-height: var(--s6);
    letter-spacing: 0.08px;
  }
}

pre,
code,
.mono-s {
  font-size: var(--s4);
  line-height: var(--s6);
  letter-spacing: 0.08px;
}
@media (max-width: 744px) {
  pre,
  code,
  .mono-s {
    font-size: var(--s3-5);
    line-height: var(--s5);
    letter-spacing: 0.07px;
  }
}

.mono-xs {
  font-size: var(--s3-5);
  line-height: var(--s5);
  letter-spacing: 0.07px;
}
@media (max-width: 744px) {
  .mono-xs {
    font-size: var(--s3);
    line-height: var(--s5);
    letter-spacing: 0.12px;
  }
}@media (max-width: 744px) {
  main {
    overflow: hidden;
  }
}
main > section {
  margin: calc(var(--s1) * 50) 0;
}
main > section.hero {
  margin: 0;
  padding: calc(var(--s1) * 24) 0 calc(var(--s1) * 50);
}
main > section.hero + section {
  margin-top: 0;
}
@media (max-width: 1280px) {
  main > section.hero {
    padding: calc(var(--s1) * 24) var(--s14) calc(var(--s1) * 24);
  }
}
@media (max-width: 1024px) {
  main > section.hero {
    padding-top: calc(var(--s1) * 38);
  }
}
@media (max-width: 744px) {
  main > section.hero {
    padding: calc(var(--s1) * 28) var(--s4) calc(var(--s1) * 24);
  }
}
@media (max-width: 1280px) {
  main > section {
    margin: calc(var(--s1) * 40) 0;
    padding: 0 var(--s14);
  }
}
@media (max-width: 744px) {
  main > section {
    margin: calc(var(--s1) * 24) 0;
    padding: 0 var(--s4);
  }
}
main > section[id] {
  scroll-margin-top: calc(var(--s1) * 18);
}
main > section > .title-2xl.ta--center {
  margin: 0 0 var(--s10);
}
@media (max-width: 1280px) {
  main > section > .title-2xl.ta--center {
    margin: 0 0 var(--s6);
  }
}
@media (max-width: 744px) {
  main > section > .title-2xl.ta--center {
    margin: 0 0 var(--s4);
  }
}

.quotes_container {
  margin-top: calc(var(--s1) * 50);
  margin-bottom: calc(var(--s1) * 50);
}
@media (max-width: 744px) {
  .quotes_container {
    margin: calc(var(--s1) * 24) 0;
  }
}
@media (max-width: 744px) {
  .quotes_container .title-2xl.ta--center em {
    display: block;
  }
}

h1:has(em),
h2:has(em),
h3:has(em) {
  color: var(--neutral-fg-2);
}
h1:has(em) em,
h2:has(em) em,
h3:has(em) em {
  font-family: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: var(--neutral-fg-1);
}

h1:has(em) {
  color: var(--neutral-fg-1);
}
h1:has(em) em {
  color: var(--primary-fg);
}

.title-4xl + .body-l,
.title-4xl + .body-m,
.title-3xl + .body-l,
.title-3xl + .body-m,
.title-2xl + .body-m,
.title-2xl ~ .body-s,
.title-xl + .body-m,
.title-xl ~ .body-s,
.card .body-s,
.lined .body-l,
.lined .body-s,
.graph .body-s,
.body-xs {
  color: var(--neutral-fg-2);
}

.card .body-s strong,
.lined .body-l strong,
.lined .body-s strong {
  color: var(--neutral-fg-1);
}

/* Lined boxes */
.lined {
  position: relative;
  background: linear-gradient(180deg, var(--bg-0) 0%, rgba(255, 255, 255, 0) 100%), url("/noise.svg") repeat 0% 0%/200px;
}
.lined.flex {
  --gap: 0px;
  align-items: stretch;
}

.lined:before {
  content: "";
  pointer-events: none;
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: 0;
  left: 0;
  border: 1px solid var(--neutral-outline-3);
}

.lined__box {
  padding: var(--s8);
  border-right: 1px dashed var(--neutral-outline-3);
  border-bottom: 1px dashed var(--neutral-outline-3);
}
.lined__box p {
  max-width: 500px;
}
@media (max-width: 1024px) {
  .lined__box {
    border-right: none;
  }
}
.lined__box.lined__box--tight {
  padding: var(--s4);
}
.lined__box.lined__box--end-column {
  border-right: none;
}
.lined__box:first-child:last-child {
  border: none;
}

.lined--paper,
.lined--dotted {
  background-color: var(--bg-0);
}

.graph {
  background-image: radial-gradient(61.76% 43.48% at 69.39% 38.89%, rgba(250, 250, 248, 0.5) 0%, #fafaf8 100%), url("/graphpaper.svg");
  background-size: cover, var(--s6);
}

.lined--dotted {
  background-size: 2184px, 784px;
}

.lined__dots,
.lined__lines {
  --line-size: var(--s2);
  height: calc(var(--line-size) * 2);
  width: calc(var(--line-size) * 2);
  border-top: 1px solid;
  border-right: 1px solid;
  border-color: var(--neutral-outline-3);
  background-color: transparent;
  overflow: visible;
  position: absolute;
  z-index: 2;
  bottom: calc(var(--line-size) * -2 + 1px);
  left: calc(var(--line-size) * -2 + 1px);
}
.lined__dots.lined__dots--bottom_right, .lined__dots.lined__lines--bottom_right,
.lined__lines.lined__dots--bottom_right,
.lined__lines.lined__lines--bottom_right {
  left: auto;
  right: calc(var(--line-size) * -2);
  transform: scaleX(-1);
}
.lined__dots.lined__dots--top_right, .lined__dots.lined__lines--top_right, .lined__dots.lined__dots--top_left, .lined__dots.lined__lines--top_left,
.lined__lines.lined__dots--top_right,
.lined__lines.lined__lines--top_right,
.lined__lines.lined__dots--top_left,
.lined__lines.lined__lines--top_left {
  bottom: auto;
}
.lined__dots.lined__dots--top_right, .lined__dots.lined__lines--top_right,
.lined__lines.lined__dots--top_right,
.lined__lines.lined__lines--top_right {
  left: auto;
  top: calc(var(--line-size) * -2);
  right: calc(var(--line-size) * -2);
  transform: scale(-1, -1);
}
.lined__dots.lined__dots--top_left, .lined__dots.lined__lines--top_left,
.lined__lines.lined__dots--top_left,
.lined__lines.lined__lines--top_left {
  top: calc(var(--line-size) * -2 - 0px);
  transform: scaleY(-1);
}

.lined__dots:before {
  content: "";
  position: absolute;
  top: calc(var(--s2) * -0.5 - 1px);
  right: calc(var(--s2) * -0.5 - 1px);
  display: block;
  width: var(--s2);
  height: var(--s2);
  background-color: var(--bg-0);
  border: none;
  border-radius: 50%;
  box-shadow: 0 -1px 0 0 rgba(0, 0, 0, 0.08) inset, 0 0 0 1px rgba(0, 0, 0, 0.16), 0 1px 2px 0 rgba(0, 0, 0, 0.08);
}
.lined__dots.lined__dots--bottom_right:before {
  transform: scaleX(-1);
}
.lined__dots.lined__dots--top_right:before {
  transform: scale(-1, -1);
}
.lined__dots.lined__dots--top_left:before {
  transform: scaleY(-1);
}

.lined__button {
  align-self: flex-start;
  margin-top: auto;
}

html.dark .lined__dots,
html.dark .lined__lines,
.card--inverse .lined__dots,
.card--inverse .lined__lines {
  border-color: var(--neutral-outline-2);
}
html.dark .lined__dots:before,
.card--inverse .lined__dots:before {
  box-shadow: 0 -1px 0 0 rgba(255, 255, 255, 0.16), 0 -1px 0 0 #000 inset, 0 0 0 1px rgba(255, 255, 255, 0.2), 0 1px 2px 0 rgba(0, 0, 0, 0.16), 0 2px 4px 0 rgba(0, 0, 0, 0.16);
}
html.dark .lined:before,
.card--inverse .lined:before {
  border-color: var(--neutral-outline-2);
}
html.dark .lined__box,
.card--inverse .lined__box {
  border-color: var(--neutral-outline-2);
}

/* Tracks */
.track {
  position: sticky;
  top: calc(var(--base) * 14);
  height: 0;
  transform: translate(calc(var(--s12) * -1), calc(var(--s6) * 1));
}

.track svg,
.icon svg {
  padding: 2px;
  width: var(--s8);
  height: var(--s8);
  border-radius: var(--s1-5);
  color: var(--primary-fg);
  border: 1px solid var(--primary-badge-outline);
  background: var(--blue-badge-bg);
  box-shadow: 0px 1px 0px 0px var(--primary-badge-outline);
}

.icon.icon--small svg {
  width: var(--s6);
  height: var(--s6);
}

.tracked_section {
  position: relative;
}

/* Icon list */
.icon_list {
  margin-top: var(--s4);
}

.icon_list li {
  position: relative;
  margin-bottom: var(--s8);
  display: flex;
  gap: var(--s3);
}

.icon_list li:not(:last-child) .icon:before,
.tracked_section:before {
  content: "";
  position: absolute;
  top: var(--s6);
  left: var(--s3);
  width: 1px;
  height: 100%;
  background: linear-gradient(0deg, rgba(252, 252, 252, 0.6) 0%, var(--neutral-outline-1) 30%, var(--neutral-outline-1) 60%, rgba(252, 252, 252, 0.6) 100%);
}

.icon_list--tight {
  margin-top: 0;
}

.icon_list--tight li {
  margin-bottom: var(--s2);
}
.icon_list--tight li:not(:last-child) .icon:before {
  content: none;
}

.tracked_section:before {
  left: calc(var(--s8) * -1);
}

/* Tabs */
.card.tabs_wrapper {
  position: relative;
  padding: var(--s2);
}
@media (max-width: 1024px) {
  .card.tabs_wrapper {
    height: calc(42vw + var(--s16) + var(--s1));
  }
}

.tabs {
  padding: var(--s1);
  background: var(--bg-1);
  border: 1px solid var(--neutral-outline-1);
  border-radius: var(--s3);
}
@media (max-width: 1024px) {
  .tabs {
    --gap: var(--s4) !important;
    height: auto !important;
    align-items: flex-start;
    flex-wrap: nowrap !important;
    overflow-x: auto;
  }
}

.tabs input[type=radio] {
  display: none;
}

.tabs input[type=radio] + label {
  cursor: pointer;
  display: flex;
  flex-grow: 1;
  justify-content: center;
  padding: var(--s1) var(--s2);
  border-radius: var(--s2);
  text-transform: uppercase;
  color: var(--neutral-fg-2);
}

.tabs input[type=radio]:checked + label {
  color: var(--primary-fg);
  background-color: var(--bg-0);
  border-radius: var(--s2);
  box-shadow: var(--button-neutral-shadow);
}

.tabs input[type=radio] + label + figure {
  display: flex;
  position: absolute;
  left: var(--s2);
  bottom: var(--s2);
  order: 99;
  width: calc(100% - var(--s2) * 2);
  height: calc(100% - var(--s2) * 2 - var(--s13));
  background-color: var(--bg-1);
  border-radius: var(--s3);
  border: 1px solid var(--neutral-outline-1);
  padding: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 666ms;
}
@media (max-width: 1024px) {
  .tabs input[type=radio] + label + figure {
    height: 42vw;
  }
}
.tabs input[type=radio] + label + figure img,
.tabs input[type=radio] + label + figure picture {
  margin: 0;
  height: 100%;
  width: 100%;
  border-radius: var(--s3);
  object-fit: contain;
}
@media (max-width: 1024px) {
  .tabs input[type=radio] + label + figure img,
  .tabs input[type=radio] + label + figure picture {
    width: 100%;
  }
}

.tabs input[type=radio]:checked + label + figure {
  opacity: 1;
  pointer-events: auto;
}

.faq {
  margin: calc(var(--s1) * 24) 0;
}
.faq .faq__sticky {
  gap: var(--s2);
}
@media (min-width: 1024px) {
  .faq .faq__sticky {
    padding-right: 100px;
    align-self: flex-start;
    position: sticky;
    top: calc(var(--base) * 18);
  }
}
.faq {
  /* Details */
}
.faq details {
  padding: var(--s6) 0;
  border-bottom: 1px solid var(--neutral-outline-1);
  interpolate-size: allow-keywords;
}
.faq details .body-s {
  color: var(--neutral-fg-2);
}
.faq details summary {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.faq details summary [astro-icon] {
  transition: transform 333ms;
  transform: rotate(0);
  color: var(--neutral-fg-2);
  width: var(--s6);
  height: var(--s6);
}
.faq details::details-content {
  overflow: hidden;
  height: 0;
  opacity: 0;
  padding-top: 0;
  transition: height 200ms ease, opacity 200ms ease, padding-top 200ms ease, content-visibility 200ms ease allow-discrete;
}
.faq details[open]::details-content {
  height: auto;
  opacity: 1;
  padding-top: var(--s4);
}
@starting-style {
  .faq details[open]::details-content {
    height: 0;
    opacity: 0;
    padding-top: 0;
  }
}
.faq details[open] summary [astro-icon] {
  transform: rotate(180deg);
}
.faq details summary::-webkit-details-marker,
.faq details summary::marker {
  display: none;
  content: "";
}

/* Assets */
.asset {
  display: block;
  margin: var(--s5) 0;
}

.asset--marginalized {
  width: calc(100% + var(--s8) * 2) !important;
  max-width: unset !important;
  margin: calc(var(--s4) * -1) calc(var(--s8) * -1) calc(var(--s8) * -1);
}
@media (max-width: 744px) {
  .asset--marginalized {
    object-fit: contain !important;
  }
}

.asset--marginalized_bottom {
  margin-bottom: calc(var(--s8) * -0.5);
}

.asset--marginalized_top {
  margin-top: calc(var(--s12) * -1);
}
@media (max-width: 744px) {
  .asset--marginalized_top {
    margin-top: unset;
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
    width: 100% !important;
    object-fit: cover !important;
  }
}

.asset--marginalized_first {
  margin-top: calc(var(--s8) * -1);
  margin-bottom: var(--s8);
}
@media (max-width: 744px) {
  .asset--marginalized_first {
    margin-top: calc(var(--s4) * -1);
    object-fit: cover !important;
  }
}

.asset--marginalized_left {
  width: calc(100% + var(--s8) * 2);
  margin-top: calc(var(--s10) * -1);
  margin-left: calc(var(--s14) * -1);
}
@media (max-width: 744px) {
  .asset--marginalized_left {
    margin-top: unset;
    margin-left: unset;
    max-width: 100% !important;
  }
}

.card > .flex--space-between,
.card > .flex--space-around {
  height: 100%;
}

.card.card--inverse.card--thick_inverse {
  box-shadow: 0px 0.75px 0px 0px rgba(255, 255, 255, 0.5) inset, 0px 0px 0px 1px #000, 0px 8px 16px 0px rgba(0, 0, 0, 0.16), 0px 16px 32px 0px rgba(0, 0, 0, 0.16);
  background: var(--tan-bg);
  border-radius: var(--s4);
  padding: calc(var(--s1) * 24) var(--s14);
  margin-left: max(50% - 50vw + var(--s4), (var(--max-width) - 1512px) / 2);
  margin-right: max(50% - 50vw + var(--s4), (var(--max-width) - 1512px) / 2);
  margin-bottom: calc(var(--s1) * 50);
}
@media (max-width: 1280px) {
  .card.card--inverse.card--thick_inverse {
    margin-bottom: calc(var(--s1) * 40);
  }
}
@media (max-width: 744px) {
  .card.card--inverse.card--thick_inverse {
    margin-bottom: calc(var(--s1) * 24);
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: var(--s12) var(--s4);
    border-radius: 0;
  }
}
.card.card--inverse.card--thick_inverse > .card {
  position: relative;
  z-index: 1;
  padding: var(--s4);
  margin: var(--s10) 0 calc(var(--s14) * -2);
  border-radius: var(--s8);
  background: var(--bg-2);
  box-shadow: 0px -1px 0px 0px rgba(255, 255, 255, 0.04), 0px 0px 0px 1px rgba(255, 255, 255, 0.24), 0px 8px 16px 0px rgba(0, 0, 0, 0.16), 0px 16px 32px 0px rgba(0, 0, 0, 0.16);
}
@media (max-width: 1024px) {
  .card.card--inverse.card--thick_inverse > .card {
    padding: var(--s8) var(--s6);
    margin-top: var(--s6);
  }
}
@media (max-width: 744px) {
  .card.card--inverse.card--thick_inverse > .card {
    padding: var(--s4);
  }
}
.card.card--inverse.card--thick_inverse > .card > .card {
  padding: var(--s14);
  border-radius: var(--s4);
  background: var(--bg-2);
  box-shadow: 0px -1px 0px 0px rgba(255, 255, 255, 0.04), 0px 0px 0px 1px rgba(255, 255, 255, 0.12), 0px 2px 4px 0px rgba(0, 0, 0, 0.32), 0px 4px 8px 0px rgba(0, 0, 0, 0.32);
}
@media (max-width: 744px) {
  .card.card--inverse.card--thick_inverse > .card > .card {
    padding: var(--s4);
  }
}.dropdown-wrapper[data-astro-cid-4q2xyk3y]{padding-top:var(--s2);z-index:1001;position:absolute;pointer-events:none;flex-wrap:wrap;opacity:0;transform:scale(0.98) translate(-4px,-4px);top:100%;left:0;transition:opacity 0.1s ease-in-out,transform 0.1s ease-in-out}@media (max-width: 1024px){.dropdown-wrapper[data-astro-cid-4q2xyk3y]{position:static;width:100%}.dropdown-wrapper[data-astro-cid-4q2xyk3y]:not(.active){display:none}}.active[data-astro-cid-4q2xyk3y]{pointer-events:all;display:flex!important;transform:scale(1) translate(0,0);opacity:1}.dropdown[data-astro-cid-4q2xyk3y]{height:fit-content;width:fit-content;display:flex;border-radius:var(--radius);background:var(--bg-0);gap:var(--s4);box-shadow:var(--elevation-xl)}@media (max-width: 1024px){.dropdown[data-astro-cid-4q2xyk3y]{flex-direction:column;width:100%;box-shadow:none;background:transparent}.dropdown[data-astro-cid-4q2xyk3y] .subtitle-xs[data-astro-cid-4q2xyk3y]{font-size:var(--s4)}}.card[data-astro-cid-4q2xyk3y]{display:flex;flex-direction:column;border-radius:var(--s2);background:var(--bg-1);box-shadow:var(--elevation-small-puffy)}html.dark .card[data-astro-cid-4q2xyk3y]{box-shadow:var(--button-neutral-shadow)}.card[data-astro-cid-4q2xyk3y]:hover,.card[data-astro-cid-4q2xyk3y]:focus{background:var(--bg-2)}.card--featured[data-astro-cid-4q2xyk3y]{justify-content:space-between;min-width:240px;min-height:240px;padding:var(--s4);margin:var(--s4)}@media (max-width: 1024px){.card--featured[data-astro-cid-4q2xyk3y]{min-height:0;gap:var(--s2);padding:var(--s3);margin:var(--s3);width:calc(100% - var(--s6))}}.card--featured[data-astro-cid-4q2xyk3y]>p[data-astro-cid-4q2xyk3y]:last-child{color:var(--primary-fg);text-decoration:none;text-transform:uppercase;display:flex;align-items:center;justify-content:space-between}.card--featured[data-astro-cid-4q2xyk3y]>p[data-astro-cid-4q2xyk3y]:last-child>svg[data-astro-cid-4q2xyk3y]{height:16px;width:16px}.card--features[data-astro-cid-4q2xyk3y]{gap:var(--s2);padding:var(--s4);margin-top:var(--s2)}.card--features[data-astro-cid-4q2xyk3y]:hover,.card--features[data-astro-cid-4q2xyk3y]:focus{background:var(--bg-1)}.card--features[data-astro-cid-4q2xyk3y] .mono-xs[data-astro-cid-4q2xyk3y]{color:var(--neutral-fg-2);text-transform:uppercase;margin-bottom:var(--s2)}.card--features[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y]{color:var(--neutral-fg-1);text-decoration:none}.card--features[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y] svg{height:1em;width:1em;vertical-align:middle;fill:var(--neutral-fg-2)}.card--features[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y]:hover{color:var(--primary-fg)}.card--features[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y]:hover svg{fill:var(--primary-fg)}.links-wrapper[data-astro-cid-4q2xyk3y]{text-wrap:nowrap;display:grid;grid-auto-flow:column;align-items:start}.links-wrapper[data-astro-cid-4q2xyk3y] .group[data-astro-cid-4q2xyk3y]{display:flex;flex-direction:column;gap:var(--s3);padding:var(--s5)}@media (max-width: 1024px){.links-wrapper[data-astro-cid-4q2xyk3y] .group[data-astro-cid-4q2xyk3y]{padding:var(--s3);gap:var(--s2)}}.links-wrapper[data-astro-cid-4q2xyk3y] .group[data-astro-cid-4q2xyk3y]>.mono-xs[data-astro-cid-4q2xyk3y]{color:var(--neutral-fg-2);text-transform:uppercase;margin-bottom:var(--s1)}.links-wrapper[data-astro-cid-4q2xyk3y] .group[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y]{color:var(--neutral-fg-1);text-decoration:none}.links-wrapper[data-astro-cid-4q2xyk3y] .group[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y] svg{height:1em;width:1em;vertical-align:middle;fill:var(--neutral-fg-2)}.links-wrapper[data-astro-cid-4q2xyk3y] .group[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y] .badge[data-astro-cid-4q2xyk3y]{margin-left:var(--s1)}.links-wrapper[data-astro-cid-4q2xyk3y] .group[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y].link{display:flex;flex-direction:column;gap:var(--s0-5)}.links-wrapper[data-astro-cid-4q2xyk3y] .group[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y].link .link__sublabel[data-astro-cid-4q2xyk3y]{color:var(--neutral-fg-2);font-weight:normal}.links-wrapper[data-astro-cid-4q2xyk3y] .group[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y]:hover{color:var(--primary-fg)}.links-wrapper[data-astro-cid-4q2xyk3y] .group[data-astro-cid-4q2xyk3y]>a[data-astro-cid-4q2xyk3y]:hover svg{fill:var(--primary-fg)}#products-dropdown{left:50%;transform:scale(0.98) translate(calc(var(--first-group-half-width, 156px) * -1 - 76px),-4px)}#products-dropdown.active{transform:scale(1) translate(calc(var(--first-group-half-width, 156px) * -1 - 72px),0)}@media (max-width: 1024px){#products-dropdown{left:0;transform:none}#products-dropdown.active{transform:none}}#products-dropdown .links-wrapper[data-astro-cid-4q2xyk3y]{width:max-content;grid-template-columns:repeat(3,1fr)}@media (max-width: 1024px){#products-dropdown .links-wrapper[data-astro-cid-4q2xyk3y]{grid-template-columns:1fr;grid-auto-flow:row;width:100%}}#products-dropdown .group[data-astro-cid-4q2xyk3y]:not(:last-child){border-right:1px solid var(--neutral-outline-1)}@media (max-width: 1024px){#products-dropdown .group[data-astro-cid-4q2xyk3y]{width:100%}#products-dropdown .group[data-astro-cid-4q2xyk3y]:not(:last-child){border-right:none}}.wrapper[data-astro-cid-34njvon7]{position:relative}button[data-astro-cid-34njvon7]{padding:var(--s1-5) var(--s1-5) var(--s1-5) var(--s3);gap:0;> svg {pointer-events: none; transition: 100ms ease-in-out transform; fill: var(--neutral-fg-2);} &.active {> svg {transform: rotate(180deg);}} > svg {height: 16px; margin-left: 2px;}}nav[data-astro-cid-65lhri5o]{position:sticky;top:0;width:100%;z-index:20;background-color:var(--tan-bg);color:var(--neutral-fg-1);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:var(--s3);border-bottom:1px solid var(--neutral-outline-1)}@media (max-width: 1024px){nav[data-astro-cid-65lhri5o]{position:fixed;height:calc(var(--s14) + 1px)}nav[data-astro-cid-65lhri5o] .max[data-astro-cid-65lhri5o]{display:flex;justify-content:space-between}nav[data-astro-cid-65lhri5o].menu-animated{transition:height 300ms ease-out}nav[data-astro-cid-65lhri5o].menu-animated .buttons[data-astro-cid-65lhri5o],nav[data-astro-cid-65lhri5o].menu-animated .links[data-astro-cid-65lhri5o]{transition:transform 300ms ease-out}nav[data-astro-cid-65lhri5o]:has(input[name=menu]:checked){height:100vh}@supports (height: 100dvh){nav[data-astro-cid-65lhri5o]:has(input[name=menu]:checked){height:100dvh}}nav[data-astro-cid-65lhri5o]:has(input[name=menu]:checked) .buttons[data-astro-cid-65lhri5o],nav[data-astro-cid-65lhri5o]:has(input[name=menu]:checked) .links[data-astro-cid-65lhri5o]{transform:translateY(0)}nav[data-astro-cid-65lhri5o] .buttons[data-astro-cid-65lhri5o]{position:absolute;bottom:0;left:0;width:100vw;padding:var(--s4);background-color:var(--tan-bg);border-top:1px solid var(--neutral-outline-2);transform:translateY(-100%);flex-direction:column}nav[data-astro-cid-65lhri5o] .buttons[data-astro-cid-65lhri5o] .button--minimal[data-astro-cid-65lhri5o]{display:none}nav[data-astro-cid-65lhri5o] .buttons[data-astro-cid-65lhri5o] .button[data-astro-cid-65lhri5o]{padding:var(--s2) var(--s4);width:100%;justify-content:center}nav[data-astro-cid-65lhri5o] .links[data-astro-cid-65lhri5o]{position:absolute;top:var(--s14);left:0;flex-direction:column;align-items:flex-start;gap:var(--s4);padding:var(--s4) var(--s2) calc(var(--s14) + var(--s18));background-color:var(--tan-bg);border-top:1px solid var(--neutral-outline-2);width:100vw;height:calc(100vh - var(--s14))}@supports (height: 100dvh){nav[data-astro-cid-65lhri5o] .links[data-astro-cid-65lhri5o]{height:calc(100dvh - var(--s14))}}nav[data-astro-cid-65lhri5o] .links[data-astro-cid-65lhri5o]{transform:translateY(-100%);overflow-y:auto;overscroll-behavior:contain}nav[data-astro-cid-65lhri5o] .links[data-astro-cid-65lhri5o] li[data-astro-cid-65lhri5o]{width:100%}nav[data-astro-cid-65lhri5o] .links[data-astro-cid-65lhri5o] .button--minimal{font-size:var(--s6)}}html:has(nav input[name="menu"]:checked),body:has(nav input[name="menu"]:checked){overflow:hidden}html.dark nav[data-astro-cid-65lhri5o]:not(.nav--outpost) #Symbol_-_Blue{fill:currentColor}.logo[data-astro-cid-65lhri5o]{display:flex;align-items:center;justify-self:start}.logo[data-astro-cid-65lhri5o] svg{height:var(--s5);width:auto}@media (max-width: 1024px){.logo[data-astro-cid-65lhri5o]{z-index:20}}a[data-astro-cid-65lhri5o]{text-decoration:none}.max[data-astro-cid-65lhri5o]{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;column-gap:var(--s4)}.full[data-astro-cid-65lhri5o]{max-width:100%;padding-left:var(--s3);padding-right:var(--s3)}ul[data-astro-cid-65lhri5o]{display:flex;align-items:center;gap:0;list-style-type:none;padding-left:0}.links[data-astro-cid-65lhri5o]{justify-self:center}.buttons[data-astro-cid-65lhri5o]{justify-self:end}input[data-astro-cid-65lhri5o][name=menu]{appearance:none;cursor:pointer;width:var(--s8);height:var(--s8);z-index:20;background-image:var(--open);background-size:var(--s5);background-repeat:no-repeat;background-position:center;border-radius:var(--s1);box-shadow:var(--button-neutral-shadow);vertical-align:bottom;margin-left:var(--s2)}@media (min-width: 1024px){input[data-astro-cid-65lhri5o][name=menu]{display:none}}input[data-astro-cid-65lhri5o][name=menu]:checked{background-image:var(--close)}.nav--outpost[data-astro-cid-65lhri5o] .logo-container[data-astro-cid-65lhri5o]{display:flex;align-items:center;gap:var(--s1-5);justify-self:start;text-decoration:none}.nav--outpost[data-astro-cid-65lhri5o] .logo-container[data-astro-cid-65lhri5o] svg{height:var(--s5);width:auto}.nav--outpost[data-astro-cid-65lhri5o] .logo-container[data-astro-cid-65lhri5o] .logo[data-astro-cid-65lhri5o]{position:relative}.nav--outpost[data-astro-cid-65lhri5o] .logo-container[data-astro-cid-65lhri5o] .logo-separator[data-astro-cid-65lhri5o]{height:var(--s4);animation:logo-fade-in 200ms ease-out 80ms both}.nav--outpost[data-astro-cid-65lhri5o] .logo-container[data-astro-cid-65lhri5o] .product[data-astro-cid-65lhri5o]{font-family:"JetBrains Mono",monospace;font-size:19px;line-height:var(--s5);font-weight:600;color:var(--primary-fg);animation:logo-fade-in 200ms ease-out 140ms both}@media (max-width: 1024px){.nav--outpost[data-astro-cid-65lhri5o] .logo-container[data-astro-cid-65lhri5o]{z-index:20}}.nav--outpost[data-astro-cid-65lhri5o] .nav__icon-button[data-astro-cid-65lhri5o]{padding:calc(var(--s1-5) + 1px);gap:0;aspect-ratio:1/1;justify-content:center}.nav--outpost[data-astro-cid-65lhri5o] .nav__icon-button[data-astro-cid-65lhri5o] svg{fill:none}@keyframes logo-fade-in{from{opacity:0;transform:translateX(-4px)}to{opacity:1;transform:translateX(0)}}@media (prefers-reduced-motion: reduce){.nav--outpost[data-astro-cid-65lhri5o] .logo-separator[data-astro-cid-65lhri5o],.nav--outpost[data-astro-cid-65lhri5o] .product[data-astro-cid-65lhri5o]{animation:none}}