/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: var(--font-body);
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-700: oklch(50.5% 0.213 27.518);
    --color-neutral-50: oklch(96.76% 0.01 84.48);
    --color-neutral-100: oklch(92.20% 0.02 90.51);
    --color-neutral-200: oklch(84.44% 0.04 87.06);
    --color-neutral-300: oklch(74.82% 0.05 83.86);
    --color-neutral-400: oklch(66.74% 0.07 79.36);
    --color-neutral-500: oklch(61.41% 0.07 75.57);
    --color-neutral-600: oklch(55.18% 0.06 65.97);
    --color-neutral-700: oklch(45.56% 0.05 56.69);
    --color-neutral-800: oklch(40.90% 0.04 49.67);
    --color-neutral-900: oklch(37.54% 0.03 45.40);
    --color-neutral-950: oklch(25.76% 0.02 42.02);
    --color-white: rgb(255 255 255 / 80%);
    --spacing: 0.25rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-7xl: 4.5rem;
    --text-7xl--line-height: 1;
    --font-weight-light: 300;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-wide: 0.025em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-primary-50: oklch(97.34% 0.00 214.02);
    --color-primary-100: oklch(92.84% 0.01 225.90);
    --color-primary-200: oklch(86.30% 0.02 225.70);
    --color-primary-300: oklch(76.37% 0.03 227.35);
    --color-primary-400: oklch(63.63% 0.05 230.06);
    --color-primary-500: oklch(54.32% 0.05 232.59);
    --color-primary-600: oklch(49.57% 0.04 238.49);
    --color-primary-700: oklch(42.75% 0.03 239.09);
    --color-primary-800: oklch(38.68% 0.03 244.43);
    --color-primary-900: oklch(35.41% 0.02 245.93);
    --color-primary-950: oklch(26.44% 0.02 248.54);
    --color-primary: var(--color-primary-500);
    --color-accent-50: oklch(98.47% 0.02 92.46);
    --color-accent-100: oklch(96.03% 0.06 93.81);
    --color-accent-200: oklch(91.94% 0.12 93.28);
    --color-accent-300: oklch(87.16% 0.16 88.24);
    --color-accent-400: oklch(82.95% 0.17 80.17);
    --color-accent-500: oklch(77.20% 0.17 64.55);
    --color-accent-600: oklch(67.17% 0.17 54.08);
    --color-accent-700: oklch(55.71% 0.16 45.15);
    --color-accent-800: oklch(47.39% 0.14 42.39);
    --color-accent-900: oklch(41.38% 0.11 42.94);
    --color-accent-950: oklch(27.94% 0.08 43.41);
    --color-accent: var(--color-accent-500);
    --color-success-50: #fcfdfd;
    --color-success-100: #f3f7f5;
    --color-success-200: #d0e7df;
    --color-success-300: #add7c8;
    --color-success-400: #409f7f;
    --color-success-500: #328267;
    --color-success-600: #24654f;
    --color-success-700: #164837;
    --color-success-800: #082b1f;
    --color-success-900: #04170f;
    --color-success-950: #010a06;
    --color-alert-50: #fcfcfd;
    --color-alert-100: #f5f3f6;
    --color-alert-200: #dad2e4;
    --color-alert-300: #bfb1d3;
    --color-alert-400: #a490c1;
    --color-alert-500: #7c54b6;
    --color-alert-600: #68459a;
    --color-alert-700: #54367e;
    --color-alert-800: #3f2861;
    --color-alert-900: #2b1945;
    --color-alert-950: #170a29;
    --color-danger-50: #fdfcfc;
    --color-danger-100: #f8f2f3;
    --color-danger-200: #eaccd1;
    --color-danger-300: #dda7b0;
    --color-danger-400: #cf818e;
    --color-danger-500: #c84158;
    --color-danger-600: #a93549;
    --color-danger-700: #8a293a;
    --color-danger-800: #6c1d2a;
    --color-danger-900: #4d111b;
    --color-danger-950: #2e050c;
    --color-0: transparent;
    --color-50: var(--color-neutral-50);
    --color-100: var(--color-neutral-100);
    --color-200: var(--color-neutral-200);
    --color-300: var(--color-neutral-300);
    --color-400: var(--color-neutral-400);
    --color-500: var(--color-neutral-500);
    --color-600: var(--color-neutral-600);
    --color-700: var(--color-neutral-700);
    --color-800: var(--color-neutral-800);
    --color-900: var(--color-neutral-900);
    --font-heading: "Sofia Sans", "Inter", "Helvetica Neue", Arial, sans-serif;
    --font-body: "Sofia Sans", "Inter", "Helvetica Neue", Arial, sans-serif;
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    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;
    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 {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.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 {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :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)) {
        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, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-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"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .absolute {
    position: absolute;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .inset-x-0 {
    inset-inline: calc(var(--spacing) * 0);
  }
  .start {
    inset-inline-start: var(--spacing);
  }
  .end {
    inset-inline-end: var(--spacing);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-full {
    top: 100%;
  }
  .z-30 {
    z-index: 30;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .m-0 {
    margin: calc(var(--spacing) * 0);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }
  .ml-auto {
    margin-left: auto;
  }
  .btn-ui {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    width: fit-content;
    max-width: 100%;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    cursor: pointer;
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &.low, &[data-prominence="low"] {
      background-color: transparent;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-500);
    }
    &.low, &[data-prominence="low"] {
      text-decoration-line: underline;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          text-decoration-line: none;
        }
      }
    }
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-100) 70%, transparent);
    }
    color: var(--color-700);
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
        }
      }
    }
    &[data-prominence="high"] {
      background-color: var(--color-500);
    }
    &[data-prominence="high"] {
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 97%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 97%, transparent);
      }
    }
    &[data-prominence="high"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    &.low, &[data-prominence="low"] {
      background-color: var(--color-0);
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-800);
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-50);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      background-color: var(--color-500);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        background-color: var(--color-0);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        color: var(--color-50);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-500);
          }
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        background-color: var(--color-100);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        color: var(--color-900);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-50);
          }
        }
      }
    }
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-flex {
    display: inline-flex;
  }
  .size-5 {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }
  .size-10 {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .h-full {
    height: 100%;
  }
  .w-full {
    width: 100%;
  }
  .max-w-7xl {
    max-width: var(--container-7xl);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .grow {
    flex-grow: 1;
  }
  .resize {
    resize: both;
  }
  .list-none {
    list-style-type: none;
  }
  .flex-col {
    flex-direction: column;
  }
  .content-center {
    align-content: center;
  }
  .items-center {
    align-items: center;
  }
  .justify-center {
    justify-content: center;
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .btn-ui-chip {
    border-radius: calc(infinity * 1px);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1);
  }
  .btn-ui-compact {
    border-radius: var(--radius-md);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1);
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .p-0 {
    padding: calc(var(--spacing) * 0);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .pt-5 {
    padding-top: calc(var(--spacing) * 5);
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .text-7xl {
    font-size: var(--text-7xl);
    line-height: var(--tw-leading, var(--text-7xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .leading-8 {
    --tw-leading: calc(var(--spacing) * 8);
    line-height: calc(var(--spacing) * 8);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .no-underline {
    text-decoration-line: none;
  }
  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-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,);
  }
  .md\:static {
    @media (width >= 48rem) {
      position: static;
    }
  }
  .md\:block {
    @media (width >= 48rem) {
      display: block;
    }
  }
  .md\:hidden {
    @media (width >= 48rem) {
      display: none;
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:border-t-0 {
    @media (width >= 48rem) {
      border-top-color: var(--color-0);
    }
  }
  .md\:bg-transparent {
    @media (width >= 48rem) {
      background-color: transparent;
    }
  }
  .md\:px-0 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 0);
    }
  }
  .md\:py-0 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 0);
    }
  }
  .md\:shadow-none {
    @media (width >= 48rem) {
      --tw-shadow: 0 0 #0000;
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
}
:root {
  --color-50: var(--color-neutral-50);
  --color-100: var(--color-neutral-100);
  --color-200: var(--color-neutral-200);
  --color-300: var(--color-neutral-300);
  --color-400: var(--color-neutral-400);
  --color-500: var(--color-neutral-500);
  --color-600: var(--color-neutral-600);
  --color-700: var(--color-neutral-700);
  --color-800: var(--color-neutral-800);
  --color-900: var(--color-neutral-900);
  --color-950: var(--color-neutral-950);
}
:where([data='primary'], [data-flavor='primary'], [flavor='primary']) {
  --color-50: var(--color-primary-50);
  --color-100: var(--color-primary-100);
  --color-200: var(--color-primary-200);
  --color-300: var(--color-primary-300);
  --color-400: var(--color-primary-400);
  --color-500: var(--color-primary-500);
  --color-600: var(--color-primary-600);
  --color-700: var(--color-primary-700);
  --color-800: var(--color-primary-800);
  --color-900: var(--color-primary-900);
  --color-950: var(--color-primary-950);
}
:where([data='neutral'], [data-flavor='neutral'], [flavor='neutral']) {
  --color-50: var(--color-neutral-50);
  --color-100: var(--color-neutral-100);
  --color-200: var(--color-neutral-200);
  --color-300: var(--color-neutral-300);
  --color-400: var(--color-neutral-400);
  --color-500: var(--color-neutral-500);
  --color-600: var(--color-neutral-600);
  --color-700: var(--color-neutral-700);
  --color-800: var(--color-neutral-800);
  --color-900: var(--color-neutral-900);
  --color-950: var(--color-neutral-950);
}
:where([data='accent'], [data-flavor='accent'], [flavor='accent']) {
  --color-50: var(--color-accent-50);
  --color-100: var(--color-accent-100);
  --color-200: var(--color-accent-200);
  --color-300: var(--color-accent-300);
  --color-400: var(--color-accent-400);
  --color-500: var(--color-accent-500);
  --color-600: var(--color-accent-600);
  --color-700: var(--color-accent-700);
  --color-800: var(--color-accent-800);
  --color-900: var(--color-accent-900);
  --color-950: var(--color-accent-950);
}
:where([data='success'], [data-flavor='success'], [flavor='success']) {
  --color-50: var(--color-success-50);
  --color-100: var(--color-success-100);
  --color-200: var(--color-success-200);
  --color-300: var(--color-success-300);
  --color-400: var(--color-success-400);
  --color-500: var(--color-success-500);
  --color-600: var(--color-success-600);
  --color-700: var(--color-success-700);
  --color-800: var(--color-success-800);
  --color-900: var(--color-success-900);
  --color-950: var(--color-success-950);
}
:where([data='alert'], [data-flavor='alert'], [flavor='alert']) {
  --color-50: var(--color-alert-50);
  --color-100: var(--color-alert-100);
  --color-200: var(--color-alert-200);
  --color-300: var(--color-alert-300);
  --color-400: var(--color-alert-400);
  --color-500: var(--color-alert-500);
  --color-600: var(--color-alert-600);
  --color-700: var(--color-alert-700);
  --color-800: var(--color-alert-800);
  --color-900: var(--color-alert-900);
  --color-950: var(--color-alert-950);
}
:where([data='danger'], [data-flavor='danger'], [flavor='danger']) {
  --color-50: var(--color-danger-50);
  --color-100: var(--color-danger-100);
  --color-200: var(--color-danger-200);
  --color-300: var(--color-danger-300);
  --color-400: var(--color-danger-400);
  --color-500: var(--color-danger-500);
  --color-600: var(--color-danger-600);
  --color-700: var(--color-danger-700);
  --color-800: var(--color-danger-800);
  --color-900: var(--color-danger-900);
  --color-950: var(--color-danger-950);
}
@layer base {
  h1, h2, h3, h4, h5, h6 {
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    color: var(--color-900);
    margin-top: 2rem;
    em {
      color: var(--color-accent-500);
      font-style: normal;
    }
  }
  h1 {
    font-size: clamp(32px, 4vw, 52px);
    font-weight: 900;
    line-height: 1.06;
    letter-spacing: -0.5px;
    margin-bottom: 22px;
  }
  h2 {
    font-size: clamp(24px, 3vw, 36px);
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: -0.3px;
    margin-bottom: 16px;
  }
  h3 {
    font-size: 22px;
    font-weight: 900;
    line-height: 1.15;
    margin-bottom: 14px;
  }
  h4 {
    font-size: 17px;
    font-weight: 800;
    margin-bottom: 8px;
  }
  h5 {
    margin-bottom: calc(var(--spacing) * 3);
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    color: var(--color-neutral-900);
  }
  h6 {
    margin-bottom: calc(var(--spacing) * 3);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    color: var(--color-neutral-900);
  }
  .eyebrow, .section-eyebrow, .step-eyebrow {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--color-accent-600);
    margin-bottom: 10px;
    display: block;
  }
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    h1, h2, h3, h4, h5, h6 {
      font-family: var(--font-heading);
      color: var(--color-primary-700);
      break-after: avoid-page;
    }
    h1 {
      font-size: 28pt;
      line-height: 1.1;
    }
    h2 {
      font-size: 20pt;
      line-height: 1.2;
      margin-top: 10mm;
    }
    h3 {
      font-size: 15pt;
      line-height: 1.25;
      margin-top: 7mm;
    }
  }
}
@layer base {
  * {
    color: inherit;
  }
  p, .p {
    &:has(+ *) {
      margin-bottom: calc(var(--spacing) * 2);
    }
    color: var(--color-900);
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      --tw-font-weight: var(--font-weight-light);
      font-weight: var(--font-weight-light);
    }
  }
  p.low {
    color: var(--color-500);
  }
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    p {
      margin-top: 0;
      margin-bottom: 4mm;
      orphans: 3;
      widows: 3;
    }
  }
}
@layer base {
  a, .a {
    color: color-mix(in srgb, oklch(54.32% 0.05 232.59) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-primary) 70%, transparent);
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-primary);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 90%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 90%, transparent);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &:hover {
        @media (hover: hover) {
          color: color-mix(in srgb, rgb(255 255 255 / 80%) 95%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            color: color-mix(in oklab, var(--color-white) 95%, transparent);
          }
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      --tw-font-weight: 350;
      font-weight: 350;
    }
    text-decoration-line: underline;
    &:hover {
      @media (hover: hover) {
        text-decoration-line: none;
      }
    }
    text-decoration-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      text-decoration-color: color-mix(in oklab, var(--color-neutral-100) 50%, transparent);
    }
  }
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    a, .a {
      color: inherit;
      text-decoration: none;
    }
  }
}
@layer base {
  :where(ul, ol) {
    margin-left: calc(var(--spacing) * 10);
    & > li::before, & > li::marker {
      color: var(--color-500);
    }
    &.low, &[data-prominence="low"] {
      & > li::before, & > li::marker {
        color: color-mix(in srgb, oklch(61.41% 0.07 75.57) 50%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-500) 50%, transparent);
        }
      }
      & > li {
        color: color-mix(in srgb, oklch(45.56% 0.05 56.69) 70%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-700) 70%, transparent);
        }
      }
    }
  }
}
@layer utilities {
  .icon-check {
    --icon: "✓";
    &:where(ul) {
      list-style-type: none;
      padding-left: calc(var(--spacing) * 0);
      & > li {
        display: flex;
        align-items: flex-start;
      }
      & > li::before {
        content: var(--icon);
        margin-right: calc(var(--spacing) * 2);
        display: flex;
        align-self: center;
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
      }
    }
  }
  .icon-cross {
    --icon: "✕";
    &:where(ul) {
      list-style-type: none;
      padding-left: calc(var(--spacing) * 0);
      & > li {
        display: flex;
        align-items: flex-start;
      }
      & > li::before {
        content: var(--icon);
        margin-right: calc(var(--spacing) * 2);
        display: flex;
        align-self: center;
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
      }
    }
  }
  .inline {
    &:where(ul, ol) {
      &:where(ol) {
        list-style-type: decimal;
      }
      &:where(ul) {
        list-style-type: none;
      }
      display: inline-flex;
      flex-wrap: wrap;
      column-gap: calc(var(--spacing) * 4);
      row-gap: calc(var(--spacing) * 1);
      &:where(ol) {
        & > li {
          margin-right: calc(var(--spacing) * 5);
          display: list-item;
        }
      }
      &:where(ul) {
        & > li {
          margin-right: calc(var(--spacing) * 5);
        }
      }
    }
  }
}
@layer base {
  ul:not(.inline):not(.icon-check):not(.icon-cross), ol:not(.inline):not(.icon-check):not(.icon-cross):not(.steps-vertical) {
    padding-left: 1.5rem;
  }
  ul:not(.inline):not(.icon-check):not(.icon-cross) {
    list-style: disc;
  }
  ol:not(.inline):not(.icon-check):not(.icon-cross):not(.steps-vertical) {
    list-style: decimal;
  }
  ol.steps-vertical {
    list-style: none !important;
    margin: 0 0 1rem;
    margin-left: 0;
    margin-right: 0;
    padding-inline-start: 0;
    padding-left: 0;
    counter-reset: step;
    display: flex;
    flex-direction: column;
  }
  ol.steps-vertical > li {
    list-style: none;
    counter-increment: step;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-top: calc(var(--spacing) * 10);
  }
  ol.steps-vertical > li::marker {
    content: "";
  }
  ol.steps-vertical > li::before {
    content: counter(step);
    display: block;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1;
    margin-bottom: 0.35rem;
    color: var(--color-accent-500);
  }
  ol.steps-vertical.high > li::before {
    color: var(--color-accent-500);
  }
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    ul, ol {
      margin-top: 0;
      margin-bottom: 4mm;
      padding-left: 6mm;
    }
    li {
      orphans: 3;
      widows: 3;
    }
  }
}
@layer base {
  table {
    margin-block: calc(var(--spacing) * 8);
    width: 100%;
    border-collapse: separate;
    --tw-border-spacing-x: calc(var(--spacing) * 0);
    --tw-border-spacing-y: calc(var(--spacing) * 0);
    border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
    overflow: hidden;
    border-radius: var(--radius-2xl);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-neutral-200);
    background-color: var(--color-white);
    text-align: left;
  }
  thead th {
    background-color: var(--color-neutral-50);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    --tw-tracking: 0.08em;
    letter-spacing: 0.08em;
    color: var(--color-neutral-700);
    text-transform: uppercase;
  }
  tbody td {
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    vertical-align: top;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-neutral-700);
  }
  tbody tr + tr td {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-neutral-100);
  }
  thead th + th, tbody td + td {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
    border-color: var(--color-neutral-100);
  }
  tbody tr td:first-child {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-neutral-900);
  }
  tbody tr td:empty {
    background-color: color-mix(in srgb, oklch(96.76% 0.01 84.48) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-neutral-50) 70%, transparent);
    }
  }
  .section[data-emphasis="strong"] table {
    border-color: color-mix(in srgb, oklch(54.32% 0.05 232.59) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-primary-500) 40%, transparent);
    }
    background-color: color-mix(in srgb, oklch(42.75% 0.03 239.09) 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-primary-700) 20%, transparent);
    }
  }
  .section[data-emphasis="strong"] thead th {
    background-color: color-mix(in srgb, oklch(49.57% 0.04 238.49) 25%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-primary-600) 25%, transparent);
    }
    color: var(--color-neutral-50);
  }
  .section[data-emphasis="strong"] tbody td {
    color: var(--color-neutral-100);
  }
  .section[data-emphasis="strong"] tbody tr td:first-child {
    color: var(--color-white);
  }
  .section[data-emphasis="strong"] tbody tr + tr td, .section[data-emphasis="strong"] thead th + th, .section[data-emphasis="strong"] tbody td + td {
    border-color: color-mix(in srgb, oklch(63.63% 0.05 230.06) 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-primary-400) 30%, transparent);
    }
  }
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    table {
      margin-top: 0;
      margin-bottom: 4mm;
      width: 100%;
      border-collapse: collapse;
      page-break-inside: auto;
    }
    thead {
      display: table-header-group;
    }
    tfoot {
      display: table-footer-group;
    }
    tr {
      break-inside: avoid;
    }
    th, td {
      orphans: 3;
      widows: 3;
      border: 0.3pt solid var(--color-neutral-300);
      padding: 2mm;
      vertical-align: top;
    }
  }
}
@layer base {
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    img, svg {
      break-inside: avoid;
      max-width: 100%;
    }
  }
}
@layer base {
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    blockquote {
      break-inside: avoid;
      max-width: 100%;
    }
  }
}
@layer base {
  hr, .hr {
    margin-block: calc(var(--spacing) * 7);
    border-color: color-mix(in srgb, oklch(61.41% 0.07 75.57) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-500) 50%, transparent);
    }
  }
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    hr, .hr {
      break-before: page;
      page-break-before: always;
      border: 0;
      height: 0;
      margin: 0;
      padding: 0;
    }
  }
}
@layer components {
  p.cta {
    margin-block: calc(var(--spacing) * 6);
  }
  p.cta > a:first-child {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    width: fit-content;
    max-width: 100%;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    cursor: pointer;
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &.low, &[data-prominence="low"] {
      background-color: transparent;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-500);
    }
    &.low, &[data-prominence="low"] {
      text-decoration-line: underline;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          text-decoration-line: none;
        }
      }
    }
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-100) 70%, transparent);
    }
    color: var(--color-700);
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
        }
      }
    }
    &[data-prominence="high"] {
      background-color: var(--color-500);
    }
    &[data-prominence="high"] {
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 97%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 97%, transparent);
      }
    }
    &[data-prominence="high"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    &.low, &[data-prominence="low"] {
      background-color: var(--color-0);
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-800);
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-50);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      background-color: var(--color-500);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        background-color: var(--color-0);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        color: var(--color-50);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-500);
          }
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        background-color: var(--color-100);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        color: var(--color-900);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-50);
          }
        }
      }
    }
    background-color: var(--color-primary-500);
    color: var(--color-white);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-primary-400);
      }
    }
  }
  p.cta.high > a:first-child {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    width: fit-content;
    max-width: 100%;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    cursor: pointer;
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &.low, &[data-prominence="low"] {
      background-color: transparent;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-500);
    }
    &.low, &[data-prominence="low"] {
      text-decoration-line: underline;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          text-decoration-line: none;
        }
      }
    }
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-100) 70%, transparent);
    }
    color: var(--color-700);
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
        }
      }
    }
    &[data-prominence="high"] {
      background-color: var(--color-500);
    }
    &[data-prominence="high"] {
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 97%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 97%, transparent);
      }
    }
    &[data-prominence="high"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    &.low, &[data-prominence="low"] {
      background-color: var(--color-0);
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-800);
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-50);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      background-color: var(--color-500);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        background-color: var(--color-0);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        color: var(--color-50);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-500);
          }
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        background-color: var(--color-100);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        color: var(--color-900);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-50);
          }
        }
      }
    }
    background-color: var(--color-accent-500);
    color: var(--color-white);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-accent-400);
      }
    }
  }
  p.cta > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    width: fit-content;
    max-width: 100%;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    cursor: pointer;
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &.low, &[data-prominence="low"] {
      background-color: transparent;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-500);
    }
    &.low, &[data-prominence="low"] {
      text-decoration-line: underline;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          text-decoration-line: none;
        }
      }
    }
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-100) 70%, transparent);
    }
    color: var(--color-700);
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
        }
      }
    }
    &[data-prominence="high"] {
      background-color: var(--color-500);
    }
    &[data-prominence="high"] {
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 97%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 97%, transparent);
      }
    }
    &[data-prominence="high"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    &.low, &[data-prominence="low"] {
      background-color: var(--color-0);
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-800);
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-50);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      background-color: var(--color-500);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        background-color: var(--color-0);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        color: var(--color-50);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-500);
          }
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        background-color: var(--color-100);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        color: var(--color-900);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-50);
          }
        }
      }
    }
    background-color: transparent;
    color: var(--color-primary-500);
  }
  p.cta.low > a:first-child {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    width: fit-content;
    max-width: 100%;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    cursor: pointer;
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &.low, &[data-prominence="low"] {
      background-color: transparent;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-500);
    }
    &.low, &[data-prominence="low"] {
      text-decoration-line: underline;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          text-decoration-line: none;
        }
      }
    }
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-100) 70%, transparent);
    }
    color: var(--color-700);
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
        }
      }
    }
    &[data-prominence="high"] {
      background-color: var(--color-500);
    }
    &[data-prominence="high"] {
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 97%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 97%, transparent);
      }
    }
    &[data-prominence="high"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    &.low, &[data-prominence="low"] {
      background-color: var(--color-0);
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-800);
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-50);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      background-color: var(--color-500);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        background-color: var(--color-0);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        color: var(--color-50);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-500);
          }
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        background-color: var(--color-100);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        color: var(--color-900);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-50);
          }
        }
      }
    }
    background-color: transparent;
    color: var(--color-primary-500);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-primary-100);
      }
    }
  }
}
@font-face {
  font-family: "Sofia Sans";
  font-style: normal;
  font-weight: 1 1000;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/sofiasans/v20/Yq6R-LCVXSLy9uPBwlATrOF6kjouQb4.woff2") format("woff2");
}
@font-face {
  font-family: "Sofia Sans";
  font-style: italic;
  font-weight: 1 1000;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/sofiasans/v20/Yq6T-LCVXSLy9uPBwlATrORKkDApY7xO6w.woff2") format("woff2");
}
@layer theme {
  --aside-left-width: 180px;
  --aside-right-width: 280px;
  --content-max-width: 999rem;
}
@layer components {
  main-content.main-content {
    --main-padding: 0px;
    --section-gap: 0px;
    --content-inline-space: 1rem;
    --article-half-max-width: calc(
      (
          var(--content-max-width) -
          var(--aside-left-width) -
          var(--aside-right-width) -
          (2 * var(--section-gap))
        ) / 2
    );
    --grid-columns: [main-start]
      minmax(var(--main-padding), 1fr)
      [layout-start aside-left-start]
      var(--aside-left-width)
      [aside-left-end article-start]
      minmax(0, var(--article-half-max-width))
      [article-center]
      minmax(0, var(--article-half-max-width))
      [article-end aside-right-start]
      var(--aside-right-width)
      [aside-right-end layout-end]
      minmax(var(--main-padding), 1fr)
      [main-end];
    display: block;
  }
  main-content .layout {
    display: grid;
    grid-template-columns: var(--grid-columns);
    column-gap: 0;
    row-gap: 0;
    align-content: start;
    align-items: start;
  }
  main-content .layout__asides {
    display: contents;
  }
  main-content .layout__sections {
    grid-column: main-start / main-end;
    grid-row: 1;
    display: grid;
    grid-template-columns: subgrid;
    row-gap: 0;
    column-gap: 0;
    align-content: start;
    align-items: start;
    min-width: 0;
  }
  main-content .layout__sections > :not(ftg-section):not(ftg-section-split):not(hr) {
    grid-column: article-start / article-end;
    min-width: 0;
    padding-inline: var(--content-inline-space);
  }
  main-content .layout__aside {
    position: sticky;
    top: var(--sticky-top, 1rem);
    align-self: start;
    z-index: 3;
    min-width: 0;
  }
  main-content .layout__aside-inner {
    padding-inline: var(--content-inline-space);
  }
  main-content .layout__aside--left {
    grid-column: aside-left-start / aside-left-end;
    grid-row: 1;
  }
  main-content .layout__aside--right {
    grid-column: aside-right-start / aside-right-end;
    grid-row: 1;
  }
  main-content.main-content[data-has-aside-left="false"] {
    --aside-left-width: 0px;
  }
  main-content.main-content[data-has-aside-right="false"] {
    --aside-right-width: 0px;
  }
  @media (max-width: 57.5rem) {
    main-content.main-content {
      --grid-columns: [main-start article-start article-center]
        minmax(0, 1fr)
        [article-end main-end];
    }
    main-content .layout__aside {
      position: static;
    }
    main-content .layout__aside--left, main-content .layout__aside--right {
      grid-column: main-start / main-end;
    }
    main-content .layout__sections > :not(ftg-section):not(ftg-section-split):not(hr) {
      grid-column: main-start / main-end;
      padding-inline: var(--content-inline-space);
    }
  }
}
@layer components {
  ftg-alert {
    display: block;
    margin: 1rem 0;
  }
  ftg-alert .alert {
    padding: 14px 18px;
    border: 1px solid var(--color-200);
    border-left: 4px solid var(--color-500);
    border-radius: 10px;
    background: var(--color-50);
    color: var(--color-700);
  }
  ftg-alert .alert > :first-child {
    margin-top: 0;
  }
  ftg-alert .alert > :last-child {
    margin-bottom: 0;
  }
  .markdown-alert, blockquote.alert, blockquote.alert-note, blockquote.alert-important, blockquote.alert-tip, blockquote.alert-warning {
    margin: 1rem 0;
    padding: 14px 18px;
    border: 1px solid var(--color-primary-200);
    border-left: 4px solid var(--color-primary-500);
    border-radius: 10px;
    background: var(--color-primary-50);
  }
  .markdown-alert > :first-child, blockquote.alert > :first-child, blockquote.alert-note > :first-child, blockquote.alert-important > :first-child, blockquote.alert-tip > :first-child, blockquote.alert-warning > :first-child {
    margin-top: 0;
  }
  .markdown-alert > :last-child, blockquote.alert > :last-child, blockquote.alert-note > :last-child, blockquote.alert-important > :last-child, blockquote.alert-tip > :last-child, blockquote.alert-warning > :last-child {
    margin-bottom: 0;
  }
  .markdown-alert .markdown-alert-title, blockquote.alert .markdown-alert-title, blockquote.alert-note .markdown-alert-title, blockquote.alert-important .markdown-alert-title, blockquote.alert-tip .markdown-alert-title, blockquote.alert-warning .markdown-alert-title {
    margin-bottom: 0.35rem;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-primary-700);
  }
}
@layer components {
  ftg-accordion {
    display: block;
  }
  ftg-accordion:not([prominence='low']) > details {
    background-color: var(--color-50);
    color: var(--color-900);
    display: block;
    overflow: hidden;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: color-mix(in oklab, var(--color-200) 30%, transparent);
    margin: calc(var(--spacing) * 1);
    outline-color: transparent;
  }
  ftg-accordion:not([prominence='low']), ftg-accordion:not([prominence='low']) * {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
  }
  ftg-accordion:not([prominence='low']) > details[open] {
    background-color: var(--color-white);
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
    outline-color: color-mix(in srgb, oklch(87.16% 0.16 88.24) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      outline-color: color-mix(in oklab, var(--color-accent-300) 50%, transparent);
    }
  }
  ftg-accordion:not([prominence='low']) > details:last-child {
    border-bottom-color: var(--color-0);
  }
  ftg-accordion:not([prominence='low']) > details > summary {
    display: flex;
    width: 100%;
    cursor: pointer;
    align-items: flex-start;
    justify-content: space-between;
    gap: calc(var(--spacing) * 4);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 4);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-800);
    list-style-type: none;
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      --tw-ring-inset: inset;
    }
  }
  ftg-accordion:not([prominence='low']) > details > summary::-webkit-details-marker {
    display: none;
  }
  ftg-accordion:not([prominence='low']) > details > summary::after {
    content: '+';
    margin-top: 1px;
    flex-shrink: 0;
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-500);
  }
  ftg-accordion:not([prominence='low']) > details[open] > summary::after {
    content: '-';
  }
  ftg-accordion:not([prominence='low']) > details > summary:hover {
    background-color: color-mix(in srgb, oklch(96.76% 0.01 84.48) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-50) 50%, transparent);
    }
  }
  ftg-accordion:not([prominence='low']) > details > *:not(summary) {
    padding-inline: calc(var(--spacing) * 5);
    padding-bottom: calc(var(--spacing) * 5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
    color: var(--color-700);
  }
  ftg-accordion[prominence='low'] > details {
    border-bottom: 1px solid var(--color-neutral-200);
    margin: 0;
  }
  ftg-accordion[prominence='low'] > details:first-child {
    border-top: 1px solid var(--color-neutral-200);
  }
  ftg-accordion[prominence='low'] > details > summary {
    font-size: 16px;
    font-weight: 700;
    color: var(--color-neutral-900);
    padding: 18px 0;
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
  }
  ftg-accordion[prominence='low'] > details > summary::-webkit-details-marker {
    display: none;
  }
  ftg-accordion[prominence='low'] > details > summary::after {
    content: '+';
    font-size: 18px;
    font-weight: 400;
    color: var(--color-neutral-700);
    flex-shrink: 0;
    transition: transform 0.2s;
  }
  ftg-accordion[prominence='low'] > details[open] > summary::after {
    transform: rotate(45deg);
  }
  ftg-accordion[prominence='low'] > details > *:not(summary) {
    font-size: 14px;
    color: var(--color-neutral-700);
    line-height: 1.7;
    padding-bottom: 18px;
  }
}
@layer components {
  :where( button:not([class]), a.button ) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    width: fit-content;
    max-width: 100%;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    cursor: pointer;
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &.low, &[data-prominence="low"] {
      background-color: transparent;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-500);
    }
    &.low, &[data-prominence="low"] {
      text-decoration-line: underline;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          text-decoration-line: none;
        }
      }
    }
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-100) 70%, transparent);
    }
    color: var(--color-700);
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
        }
      }
    }
    &[data-prominence="high"] {
      background-color: var(--color-500);
    }
    &[data-prominence="high"] {
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 97%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 97%, transparent);
      }
    }
    &[data-prominence="high"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    &.low, &[data-prominence="low"] {
      background-color: var(--color-0);
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-800);
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-50);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      background-color: var(--color-500);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        background-color: var(--color-0);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        color: var(--color-50);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-500);
          }
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        background-color: var(--color-100);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        color: var(--color-900);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-50);
          }
        }
      }
    }
  }
  :where( input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]) ) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    width: fit-content;
    max-width: 100%;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    cursor: pointer;
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &.low, &[data-prominence="low"] {
      background-color: transparent;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-500);
    }
    &.low, &[data-prominence="low"] {
      text-decoration-line: underline;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          text-decoration-line: none;
        }
      }
    }
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-100) 70%, transparent);
    }
    color: var(--color-700);
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
        }
      }
    }
    &[data-prominence="high"] {
      background-color: var(--color-500);
    }
    &[data-prominence="high"] {
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 97%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 97%, transparent);
      }
    }
    &[data-prominence="high"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    &.low, &[data-prominence="low"] {
      background-color: var(--color-0);
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-800);
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-50);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      background-color: var(--color-500);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        background-color: var(--color-0);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        color: var(--color-50);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-500);
          }
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        background-color: var(--color-100);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        color: var(--color-900);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-50);
          }
        }
      }
    }
    appearance: none;
  }
}
@layer components {
  ftg-browser-runtime {
    display: block;
  }
}
@layer components {
  ftg-badge {
    display: inline-block;
  }
  ftg-badge .badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: fit-content;
    max-width: 100%;
    margin-top: 14px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 999px;
  }
  ftg-badge .badge[data-flavor='primary'] {
    background: var(--color-primary-50);
    border: 1px solid var(--color-primary-300);
    color: var(--color-primary-700);
  }
  ftg-badge .badge[data-flavor='neutral'] {
    background: var(--color-neutral-50);
    border: 1px solid var(--color-neutral-200);
    color: var(--color-neutral-700);
  }
  ftg-badge .badge[data-flavor='accent'] {
    background: var(--color-accent-50);
    border: 1px solid var(--color-accent-200);
    color: var(--color-accent-700);
  }
  ftg-badge .badge[data-flavor='success'] {
    background: var(--color-success-50);
    border: 1px solid var(--color-success-200);
    color: var(--color-success-700);
  }
  ftg-badge .badge[data-flavor='alert'] {
    background: var(--color-alert-50);
    border: 1px solid var(--color-alert-200);
    color: var(--color-alert-700);
  }
  ftg-badge .badge[data-flavor='danger'] {
    background: var(--color-danger-50);
    border: 1px solid var(--color-danger-200);
    color: var(--color-danger-700);
  }
}
@layer components {
  ftg-card {
    display: block;
  }
  ftg-card > article {
    height: 100%;
    border-radius: var(--radius-lg);
    background-color: var(--color-50);
    color: var(--color-800);
    font-family: var(--font-body);
    box-sizing: border-box;
    background-color: var(--color-white);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in oklab, var(--color-neutral-200) 50%, transparent);
    position: relative;
    overflow: visible;
  }
  ftg-card[prominence='high'] > article {
    border-color: var(--color-accent-500);
    border-width: 2px;
    box-shadow: 0 16px 48px color-mix(in srgb, oklch(77.20% 0.17 64.55) 35%, transparent), 0 4px 16px color-mix(in srgb, oklch(42.75% 0.03 239.09) 25%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 16px 48px color-mix(in oklab, var(--color-accent-500) 35%, transparent), 0 4px 16px color-mix(in oklab, var(--color-primary-700) 25%, transparent);
    }
    transform: translateY(-12px);
    z-index: 1;
  }
  ftg-card[prominence='low'] > article {
    border-color: color-mix(in srgb, oklch(84.44% 0.04 87.06) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-neutral-200) 40%, transparent);
    }
  }
  ftg-card .card-tagline {
    position: absolute;
    left: calc(1 / 2 * 100%);
    z-index: 10;
    margin: calc(var(--spacing) * 0);
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    border-radius: calc(infinity * 1px);
    background-color: var(--color-accent-500);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 1.5);
    text-align: center;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    --tw-tracking: 0.08em;
    letter-spacing: 0.08em;
    color: var(--color-white);
    text-transform: uppercase;
    top: 0;
  }
  ftg-card[padding='sm'] > article {
    padding: calc(var(--spacing) * 3);
  }
  ftg-card[padding='md'] > article {
    padding: calc(var(--spacing) * 4);
  }
  ftg-card[padding='lg'] > article {
    padding: calc(var(--spacing) * 6);
  }
  ftg-card[padding='none'] > article {
    padding: calc(var(--spacing) * 0);
  }
  ftg-card[elevated] > article {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  ftg-card .card-media {
    margin: calc(var(--spacing) * 0);
  }
  ftg-card .card-media a {
    display: block;
  }
  ftg-card .card-media img {
    height: auto;
    width: 100%;
    object-fit: cover;
  }
  ftg-card[padding='sm'] .card-media {
    margin-inline: calc(var(--spacing) * -3);
    margin-top: calc(var(--spacing) * -3);
    margin-bottom: calc(var(--spacing) * 3);
  }
  ftg-card[padding='md'] .card-media {
    margin-inline: calc(var(--spacing) * -4);
    margin-top: calc(var(--spacing) * -4);
    margin-bottom: calc(var(--spacing) * 4);
  }
  ftg-card[padding='lg'] .card-media {
    margin-inline: calc(var(--spacing) * -6);
    margin-top: calc(var(--spacing) * -6);
    margin-bottom: calc(var(--spacing) * 6);
  }
  ftg-card hr {
    margin-block: calc(var(--spacing) * 5);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-0);
    border-color: color-mix(in srgb, oklch(84.44% 0.04 87.06) 65%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-neutral-200) 65%, transparent);
    }
  }
  ftg-card p {
    margin-block: calc(var(--spacing) * 5);
  }
}
@layer components {
  ftg-card-carousel {
    display: block;
  }
  ftg-card-carousel .viewport {
    overflow: hidden;
    padding-block: calc(var(--spacing) * 10);
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }
  ftg-card-carousel .track {
    display: flex;
    gap: var(--ftg-carousel-gap, 16px);
    touch-action: pan-y pinch-zoom;
  }
  ftg-card-carousel .track > slot {
    display: contents;
  }
  ftg-card-carousel .track > * {
    flex: 0 0 calc( (100% - (var(--ftg-carousel-base, 1.25) - 1) * var(--ftg-carousel-gap, 16px)) / var(--ftg-carousel-base, 1.25) );
    min-width: 0;
    scroll-snap-align: start;
  }
  @media (min-width: 48rem) {
    ftg-card-carousel .track > * {
      flex-basis: calc( (100% - (var(--ftg-carousel-md, 2) - 1) * var(--ftg-carousel-gap, 16px)) / var(--ftg-carousel-md, 2) );
    }
  }
  @media (min-width: 64rem) {
    ftg-card-carousel .track > * {
      flex-basis: calc( (100% - (var(--ftg-carousel-lg, 3) - 1) * var(--ftg-carousel-gap, 16px)) / var(--ftg-carousel-lg, 3) );
    }
  }
}
@layer components {
  ftg-chips-nav {
    display: block;
  }
  ftg-chips-nav nav {
    margin-bottom: calc(var(--spacing) * 6);
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--spacing) * 2);
  }
  ftg-chips-nav .chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    width: fit-content;
    max-width: 100%;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    cursor: pointer;
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &.low, &[data-prominence="low"] {
      background-color: transparent;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-500);
    }
    &.low, &[data-prominence="low"] {
      text-decoration-line: underline;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          text-decoration-line: none;
        }
      }
    }
    background-color: color-mix(in oklab, var(--color-100) 70%, transparent);
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
        }
      }
    }
    &[data-prominence="high"] {
      background-color: var(--color-500);
    }
    &[data-prominence="high"] {
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 97%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 97%, transparent);
      }
    }
    &[data-prominence="high"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    &.low, &[data-prominence="low"] {
      background-color: var(--color-0);
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-800);
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-50);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      background-color: var(--color-500);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        background-color: var(--color-0);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        color: var(--color-50);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-500);
          }
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        background-color: var(--color-100);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        color: var(--color-900);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-50);
          }
        }
      }
    }
    border-radius: calc(infinity * 1px);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1);
    border-color: color-mix(in oklab, var(--color-700) 30%, transparent);
    color: var(--color-700);
  }
  ftg-chips-nav .chip[aria-current='page'] {
    border-color: var(--color-700);
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
    }
    color: var(--color-700);
    background-color: var(--color-700);
    color: var(--color-white);
  }
}
@layer components {
  ftg-disclosure {
    display: block;
  }
  ftg-disclosure .disclosure {
    border: 0;
    border-radius: 0;
    background: transparent;
  }
  ftg-disclosure summary {
    padding: 0;
    margin: 0;
  }
  ftg-disclosure summary::-webkit-details-marker {
    display: none;
  }
  ftg-disclosure .disclosure__content {
    padding: 0;
  }
}
@layer components {
  ftg-doc-example .doc-example {
    margin-block: calc(var(--spacing) * 6);
    overflow: hidden;
    border-radius: var(--radius-xl);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-neutral-200);
    background-color: var(--color-white);
  }
  ftg-doc-example .doc-example__tabs {
    display: flex;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-neutral-200);
    background-color: var(--color-neutral-50);
  }
  ftg-doc-example .doc-example__tabs button {
    cursor: pointer;
    border-color: var(--color-0);
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-700);
  }
  ftg-doc-example .doc-example__tabs button.is-active {
    background-color: var(--color-white);
    color: var(--color-900);
  }
  ftg-doc-example .doc-example__panel {
    display: none;
  }
  ftg-doc-example .doc-example__panel.is-active {
    display: block;
  }
  ftg-doc-example .doc-example__iframe {
    display: block;
    width: 100%;
    border-color: var(--color-0);
    background-color: var(--color-white);
  }
  ftg-doc-example .doc-example__editor {
    width: 100%;
    overflow: auto;
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-neutral-100);
    min-height: 260px;
  }
  ftg-doc-example .doc-example__editor .highlight {
    margin: calc(var(--spacing) * 0);
    display: block;
    width: 100%;
    overflow: auto;
    background-color: var(--color-neutral-950);
  }
  ftg-doc-example .doc-example__editor .highlight pre {
    margin: calc(var(--spacing) * 0);
    padding: calc(var(--spacing) * 4);
    font-size: 0.82rem;
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
  }
  ftg-doc-example .doc-example--inline {
    margin-block: calc(var(--spacing) * 6);
    overflow: visible;
    border-radius: 0;
    border-color: var(--color-0);
    background-color: transparent;
  }
  ftg-doc-example .doc-example__inline-live {
    margin-bottom: calc(var(--spacing) * 3);
  }
  ftg-doc-example .doc-example__code-toggle {
    cursor: pointer;
    border-radius: var(--radius-md);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-neutral-300);
    background-color: var(--color-white);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-800);
  }
  ftg-doc-example .doc-example__inline-code {
    margin-top: calc(var(--spacing) * 3);
    overflow: hidden;
    border-radius: var(--radius-xl);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-neutral-200);
    background-color: var(--color-white);
    display: none;
  }
  ftg-doc-example .doc-example__inline-code.is-open {
    display: block;
  }
  ftg-doc-example .doc-example__inline-code .highlight {
    margin: calc(var(--spacing) * 0);
    display: block;
    width: 100%;
    overflow: auto;
    background-color: var(--color-neutral-950);
  }
  ftg-doc-example .doc-example__inline-code .highlight pre {
    margin: calc(var(--spacing) * 0);
    padding: calc(var(--spacing) * 4);
    font-size: 0.82rem;
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
  }
}
content-grid {
  --content-grid-gap: 1rem;
  --content-grid-row-gap: var(--content-grid-gap);
  --content-grid-column-gap: var(--content-grid-gap);
  display: flex;
  flex-wrap: wrap;
  row-gap: var(--content-grid-row-gap);
  column-gap: var(--content-grid-column-gap);
}
content-grid-cell {
  --content-grid-cell-grow: 1;
  --content-grid-cell-basis: 0;
  --content-grid-cell-min-width: 0;
  --content-grid-cell-max-width: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: left;
  flex: var(--content-grid-cell-grow) 1 var(--content-grid-cell-basis);
  min-width: var(--content-grid-cell-min-width);
  max-width: var(--content-grid-cell-max-width);
}
content-grid > hr {
  flex-basis: 100%;
  width: 100%;
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
@media (max-width: 640px) {
  content-grid-cell {
    flex-basis: 100%;
    min-width: 100%;
  }
  content-grid > hr {
    display: none;
  }
}
@layer components {
  ftg-logo {
    display: inline-flex;
    vertical-align: middle;
    line-height: 1;
    svg * {
      --logo-color: var(--color-primary-500);
      fill: var(--logo-color);
    }
    span {
      color: var(--color-primary-600);
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
      font-size: 1.5rem;
      --tw-font-weight: 700;
      font-weight: 700;
    }
    svg, img {
      display: block;
      height: 1em;
      width: auto;
      max-width: none;
    }
  }
}
@layer components {
  ftg-meta-inline {
    display: inline-block;
  }
  ftg-meta-inline .meta-inline {
    margin: calc(var(--spacing) * 0);
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
  }
  ftg-meta-inline[size='xs'] .meta-inline {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  ftg-meta-inline[size='sm'] .meta-inline {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  ftg-meta-inline[size='base'] .meta-inline {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  ftg-meta-inline .meta-inline > * {
    display: inline-flex;
    align-items: center;
  }
  ftg-meta-inline .meta-inline > * + *::before {
    content: '·';
    margin-inline: calc(var(--spacing) * 1);
    color: currentcolor;
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, currentcolor 60%, transparent);
    }
  }
  ftg-meta-inline[separator='pipe'] .meta-inline > * + *::before {
    content: '|';
  }
  ftg-meta-inline[separator='slash'] .meta-inline > * + *::before {
    content: '/';
  }
  ftg-meta-inline[muted] .meta-inline {
    color: var(--color-600);
  }
}
@layer components {
  ftg-newsletter-signup {
    display: block;
  }
  ftg-newsletter-signup > form > .newsletter-fields {
    margin-block: calc(var(--spacing) * 3);
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
  }
  ftg-newsletter-signup > form > .newsletter-fields > input.newsletter-input {
    width: 100%;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in srgb, oklch(74.82% 0.05 83.86) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-300) 60%, transparent);
    }
    background-color: var(--color-0);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    color: var(--color-800);
    &::placeholder {
      color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    background-color: var(--color-white);
    &:focus {
      background-color: var(--color-white);
    }
  }
  ftg-newsletter-signup > form > .newsletter-fields > button.newsletter-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    background-color: var(--color-500);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: color-mix(in srgb, rgb(255 255 255 / 80%) 97%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 97%, transparent);
    }
    cursor: pointer;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-400);
      }
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  ftg-newsletter-signup > form > .newsletter-fields > button.newsletter-submit[disabled] {
    cursor: wait;
    opacity: 90%;
  }
  ftg-newsletter-signup > form > .newsletter-fields > button.newsletter-submit[aria-busy='true']::before {
    content: '';
    width: 0.875rem;
    height: 0.875rem;
    margin-right: 0.5rem;
    border-radius: 9999px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    animation: ftg-newsletter-spin 0.8s linear infinite;
  }
  ftg-newsletter-signup > form > .newsletter-fields > .newsletter-message {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-red-700);
  }
  ftg-newsletter-signup > form > .newsletter-fields > altcha-widget {
    display: none;
  }
  @media (min-width: 640px) {
    ftg-newsletter-signup > form > .newsletter-fields {
      display: grid;
      grid-template-columns: minmax(0,1fr) auto;
      align-items: flex-start;
      gap: calc(var(--spacing) * 3);
    }
    ftg-newsletter-signup > form > .newsletter-fields > input.newsletter-input {
      grid-column: 1;
    }
    ftg-newsletter-signup > form > .newsletter-fields > button.newsletter-submit {
      grid-column: 2;
    }
    ftg-newsletter-signup > form > .newsletter-fields > .newsletter-message {
      grid-column: 1 / -1;
    }
  }
}
@keyframes ftg-newsletter-spin {
  to {
    transform: rotate(360deg);
  }
}
@layer components {
  ftg-posthog-survey {
    display: flex;
    min-height: calc(var(--spacing) * 0);
    width: 100%;
    flex-grow: 1;
    flex-direction: column;
  }
  ftg-posthog-survey .posthog-survey-shell {
    display: flex;
    min-height: calc(var(--spacing) * 0);
    width: 100%;
    flex-grow: 1;
    flex-direction: column;
    overflow: hidden;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in srgb, oklch(84.44% 0.04 87.06) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-neutral-200) 70%, transparent);
    }
    background-color: var(--color-white);
  }
  ftg-posthog-survey .posthog-survey-frame {
    display: flex;
    flex-grow: 1;
    border-color: var(--color-0);
    width: 100%;
    min-width: 100%;
    min-height: 0;
    height: auto;
    align-self: stretch;
  }
}
@layer components {
  ftg-page-nav {
    margin-top: calc(var(--spacing) * 8);
    display: block;
  }
  ftg-page-nav .page-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 4);
  }
  ftg-page-nav .page-nav__prev, ftg-page-nav .page-nav__next {
    min-width: calc(var(--spacing) * 20);
  }
  ftg-page-nav .page-nav__next {
    text-align: right;
  }
  ftg-page-nav .page-nav__pages {
    margin: calc(var(--spacing) * 0);
    display: flex;
    list-style-type: none;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 0);
  }
  ftg-page-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    width: fit-content;
    max-width: 100%;
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: transparent;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    cursor: pointer;
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-500);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &.low, &[data-prominence="low"] {
      background-color: transparent;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-500);
    }
    &.low, &[data-prominence="low"] {
      text-decoration-line: underline;
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          text-decoration-line: none;
        }
      }
    }
    background-color: color-mix(in oklab, var(--color-100) 70%, transparent);
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
        }
      }
    }
    &[data-prominence="high"] {
      background-color: var(--color-500);
    }
    &[data-prominence="high"] {
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 97%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 97%, transparent);
      }
    }
    &[data-prominence="high"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    &.low, &[data-prominence="low"] {
      background-color: var(--color-0);
    }
    &.low, &[data-prominence="low"] {
      color: var(--color-800);
    }
    &.low, &[data-prominence="low"] {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-50);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      background-color: var(--color-500);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-50);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-400);
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        background-color: var(--color-0);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        color: var(--color-50);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &.low, &[data-prominence="low"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-500);
          }
        }
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        background-color: var(--color-100);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        color: var(--color-900);
      }
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      &[data-prominence="high"] {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-50);
          }
        }
      }
    }
    border-radius: var(--radius-md);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1);
    border-color: color-mix(in oklab, var(--color-700) 30%, transparent);
    color: var(--color-700);
  }
  ftg-page-nav a[aria-current='page'] {
    border-color: var(--color-700);
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-100) 30%, transparent);
    }
    color: var(--color-700);
    background-color: var(--color-700);
    color: var(--color-white);
  }
}
@layer components {
  ftg-pricing-plans {
    display: block;
  }
  ftg-pricing-plans .pricing-plans__note {
    font-size: 13px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--color-white);
    border: 1px solid var(--color-neutral-200);
    border-radius: 100px;
    padding: 5px 14px;
    margin: 12px 0 20px;
  }
  ftg-pricing-plans .pricing-plans__grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px;
    align-items: start;
    padding-top: 16px;
  }
  .pricing-plans__grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px;
    align-items: start;
    padding-top: 16px;
  }
  ftg-pricing-plan {
    display: block;
  }
  ftg-pricing-plan .pricing-plan {
    background: var(--color-white);
    border: 1px solid var(--color-neutral-200);
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  ftg-pricing-plan[featured] .pricing-plan {
    border-color: var(--color-accent-500);
    border-width: 2px;
    box-shadow: 0 16px 48px color-mix(in srgb, oklch(77.20% 0.17 64.55) 35%, transparent), 0 4px 16px color-mix(in srgb, oklch(42.75% 0.03 239.09) 25%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 16px 48px color-mix(in oklab, var(--color-accent-500) 35%, transparent), 0 4px 16px color-mix(in oklab, var(--color-primary-700) 25%, transparent);
    }
    transform: translateY(-12px);
    position: relative;
    z-index: 1;
  }
  ftg-pricing-plan .pricing-plan__badge {
    background: var(--color-accent-500);
    color: white;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    text-align: center;
    padding: 7px 0;
    margin: 0;
  }
  ftg-pricing-plan .pricing-plan__head {
    padding: 28px 28px 20px;
  }
  ftg-pricing-plan .pricing-plan__name {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin: 0 0 16px;
  }
  ftg-pricing-plan .pricing-plan__price {
    font-size: 44px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -1px;
    margin: 0 0 6px;
  }
  .pricing-plan__price {
    font-size: 44px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -1px;
    margin: 0 0 6px;
  }
  ftg-pricing-plan .pricing-plan__cadence {
    font-size: 13px;
    margin: 0;
  }
  .pricing-plan__cadence {
    font-size: 13px;
    margin: 0;
  }
  ftg-pricing-plan .pricing-plan__tagline {
    font-size: 14px;
    line-height: 1.6;
    padding: 12px 28px 20px;
    border-top: 1px solid var(--color-neutral-100);
  }
  ftg-pricing-plan .pricing-plan__tagline:empty {
    display: none;
  }
  ftg-pricing-plan .pricing-plan__features {
    padding: 0 28px 28px;
    flex: 1;
    font-size: 14px;
  }
  ftg-pricing-plan .pricing-plan__features ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 9px;
    margin: 0;
    padding: 0;
  }
  ftg-pricing-plan .pricing-plan__features ul.inline {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 20px;
  }
  ftg-pricing-plan .pricing-plan__features ul.icon-check + ul.icon-cross, ftg-pricing-plan .pricing-plan__features ul.icon-cross + ul.icon-check {
    margin-top: 14px;
  }
  ftg-pricing-plan .pricing-plan__features li {
    font-size: 14px;
    line-height: 1.45;
  }
  ftg-pricing-plan .pricing-plan__features strong {
    font-weight: 700;
  }
  ftg-pricing-plan .pricing-plan__cta {
    margin: 0 28px 24px;
  }
  ftg-pricing-plan .pricing-plan__cta:empty {
    display: none;
  }
  ftg-pricing-plan .pricing-plan__cta > *:first-child {
    margin-top: 0;
  }
  ftg-pricing-plan .pricing-plan__cta > *:last-child {
    margin-bottom: 0;
  }
  @media (max-width: 1024px) {
    ftg-pricing-plans .pricing-plans__grid {
      grid-template-columns: 1fr;
      max-width: 480px;
      margin: 0 auto;
    }
    .pricing-plans__grid {
      grid-template-columns: 1fr;
      max-width: 480px;
      margin: 0 auto;
    }
    ftg-pricing-plan[featured] .pricing-plan {
      transform: none;
    }
  }
}
@layer components {
  thirdparty-logo {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    line-height: 1;
    color: var(--color-neutral-950);
    .sizer {
      display: block;
      width: auto;
      max-width: none;
      height: 1em;
      visibility: hidden;
    }
    .glyph {
      position: absolute;
      inset: 0;
      background-color: var(--color-neutral-900);
      -webkit-mask-image: var(--logo-src);
      mask-image: var(--logo-src);
      -webkit-mask-repeat: no-repeat;
      mask-repeat: no-repeat;
      -webkit-mask-position: center;
      mask-position: center;
      -webkit-mask-size: contain;
      mask-size: contain;
    }
    @supports not (mask-image: url("")) {
      .glyph {
        background-color: transparent;
        background-image: var(--logo-src);
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
      }
    }
  }
}
@layer components {
  ftg-site-header {
    position: sticky;
    top: calc(var(--spacing) * 2);
    z-index: 50;
    display: block;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: transparent;
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, rgb(255 255 255 / 80%));
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in srgb, var(--color-neutral-100) 30%, var(--color-white));
    }
    isolation: isolate;
    transition: border-color 150ms ease, box-shadow 150ms ease;
    &[data-scrolled="true"] {
      border-color: color-mix(in srgb, oklch(37.54% 0.03 45.40) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-neutral-900) 10%, transparent);
      }
      box-shadow: 0 1px 3px color-mix(in srgb, oklch(37.54% 0.03 45.40) 8%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px 3px color-mix(in srgb, var(--color-neutral-900) 8%, transparent);
      }
    }
    a[slot="brand"] {
      display: inline-flex;
      align-items: center;
      gap: calc(var(--spacing) * 2);
      padding: calc(var(--spacing) * 0);
      font-size: 1.125rem;
      --tw-leading: 1;
      line-height: 1;
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      color: var(--color-700);
      text-decoration-line: none;
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    header {
      background-color: inherit;
    }
    [id^="ftg-site-header-mobile-panel"] {
      border-color: color-mix(in srgb, oklch(37.54% 0.03 45.40) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-neutral-900) 10%, transparent);
      }
      background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, rgb(255 255 255 / 80%));
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in srgb, var(--color-neutral-100) 30%, var(--color-white));
      }
    }
    button {
      border-color: color-mix(in srgb, oklch(45.56% 0.05 56.69) 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-700) 30%, transparent);
      }
      background-color: var(--color-white);
      color: var(--color-700);
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-100);
        }
      }
    }
    nav {
      display: flex;
      flex-direction: column;
      gap: calc(var(--spacing) * 1);
      @media (width >= 48rem) {
        flex-direction: row;
      }
      @media (width >= 48rem) {
        align-items: center;
      }
      @media (width >= 48rem) {
        gap: calc(var(--spacing) * 7);
      }
    }
    nav a {
      border-radius: 0.25rem;
      padding-inline: calc(var(--spacing) * 0);
      padding-block: calc(var(--spacing) * 1);
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
      --tw-font-weight: var(--font-weight-medium);
      font-weight: var(--font-weight-medium);
      color: var(--color-700);
      text-decoration-line: none;
      transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      --tw-duration: 150ms;
      transition-duration: 150ms;
      &:hover {
        @media (hover: hover) {
          opacity: 80%;
        }
      }
    }
    nav a:not([data-prominence='low']) {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: var(--radius-md);
      padding-inline: calc(var(--spacing) * 4);
      padding-block: calc(var(--spacing) * 2);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      --tw-leading: 1;
      line-height: 1;
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      background-color: var(--color-700);
      color: var(--color-white);
      text-decoration-line: none;
      &:hover {
        @media (hover: hover) {
          opacity: 90%;
        }
      }
    }
    nav a[data-prominence='low'] {
      background-color: transparent;
      color: var(--color-700);
      text-decoration-line: none;
      &:hover {
        @media (hover: hover) {
          opacity: 80%;
        }
      }
    }
  }
}
@layer components {
  ftg-site-footer {
    display: block;
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-900);
    background-color: var(--color-900);
    color: color-mix(in srgb, rgb(255 255 255 / 80%) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
    .footer-menu {
      display: flex;
      width: 100%;
      flex-direction: column;
      gap: calc(var(--spacing) * 6);
      padding-inline: calc(var(--spacing) * 4);
      padding-block: calc(var(--spacing) * 6);
      @media (width >= 48rem) {
        flex-direction: row;
      }
      @media (width >= 48rem) {
        gap: calc(var(--spacing) * 8);
      }
    }
    .footer-menu > nav {
      min-width: calc(var(--spacing) * 0);
      flex: 1;
      display: flex;
      flex-direction: column;
    }
    h2 {
      padding-inline: calc(var(--spacing) * 4);
      padding-block: calc(var(--spacing) * 2);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      --tw-font-weight: var(--font-weight-semibold);
      font-weight: var(--font-weight-semibold);
      --tw-tracking: var(--tracking-wide);
      letter-spacing: var(--tracking-wide);
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 70%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 70%, transparent);
      }
      text-transform: uppercase;
    }
    nav a {
      display: block;
      color: color-mix(in srgb, rgb(255 255 255 / 80%) 80%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-white) 80%, transparent);
      }
      &:hover {
        @media (hover: hover) {
          color: color-mix(in srgb, rgb(255 255 255 / 80%) 90%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            color: color-mix(in oklab, var(--color-white) 90%, transparent);
          }
        }
      }
      --tw-font-weight: var(--font-weight-light);
      font-weight: var(--font-weight-light);
      text-decoration-line: none;
      &:hover {
        @media (hover: hover) {
          text-decoration-line: underline;
        }
      }
      border-radius: 0.25rem;
      padding-inline: calc(var(--spacing) * 4);
      padding-block: calc(var(--spacing) * 2);
    }
  }
}
@layer components {
  main-content.main-content {
    --space-section-normal: clamp(0.75rem, 1vw, 1rem);
    --space-section-boundary: clamp(3.75rem, 7.5vw, 5.625rem);
  }
  .section {
    position: relative;
    display: grid;
    min-width: calc(var(--spacing) * 0);
    grid-column: main-start / main-end;
    grid-template-columns: subgrid;
    column-gap: 0;
    row-gap: 0;
  }
  .section[data-emphasis="soft"] {
    background-color: var(--color-100);
  }
  .section[data-emphasis="strong"] {
    background-color: var(--color-600);
    color: var(--color-50);
  }
  .section[data-container="focus"] {
    background-color: transparent;
  }
  .section .section__inner {
    min-width: calc(var(--spacing) * 0);
    flex-direction: column;
    align-content: center;
    grid-column: article-start / article-end;
    padding-block: var(--section-padding-block, var(--space-section-normal));
    padding-inline: var(--content-inline-space, 1rem);
  }
  .section[data-container="callout"] .section__inner {
    padding-block: var(--space-section-normal);
    text-align: center;
  }
  .section[data-container="focus"] .section__inner {
    margin-top: var(--space-section-normal);
    margin-bottom: var(--space-section-normal);
    margin-inline: calc(var(--spacing) * 10);
    @media (width >= 48rem) {
      margin-inline: calc(var(--spacing) * 20);
    }
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 7);
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 20);
    }
    [emphasis="soft"] &, [data-emphasis="soft"] & {
      background-color: var(--color-100);
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      background-color: var(--color-600);
    }
    border-radius: var(--radius-lg);
    border-color: color-mix(in srgb, oklch(84.44% 0.04 87.06) 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-200) 30%, transparent);
    }
    [emphasis="soft"] &, [data-emphasis="soft"] & {
      border-style: var(--tw-border-style);
      border-width: 1px;
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      border-style: var(--tw-border-style);
      border-width: 1px;
    }
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      border-color: color-mix(in srgb, oklch(84.44% 0.04 87.06) 70%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-200) 70%, transparent);
      }
    }
    text-align: center;
  }
  .section[data-container="full"] .section__inner {
    grid-column: main-start / main-end;
    padding-inline: var(--content-inline-space, 1rem);
  }
  main-content .layout__sections > .section:not([data-container="callout"]):not([data-container="focus"]) .section__inner, main-content .layout__sections > .section-split > .section-split__section:not([data-container="callout"]):not([data-container="focus"]) .section__inner {
    padding-block: var(--space-section-normal);
  }
  main-content .layout__sections > .section:first-child:not([data-container="callout"]):not([data-container="focus"]) .section__inner, main-content .layout__sections > .section-split:first-child > .section-split__section:not([data-container="callout"]):not([data-container="focus"]) .section__inner {
    padding-top: var(--space-section-boundary);
  }
  main-content .layout__sections > .section:last-child:not([data-container="callout"]):not([data-container="focus"]) .section__inner, main-content .layout__sections > .section-split:last-child > .section-split__section:not([data-container="callout"]):not([data-container="focus"]) .section__inner {
    padding-bottom: var(--space-section-boundary);
  }
  main-content .layout__sections > .section[data-container="focus"]:first-child .section__inner {
    margin-top: var(--space-section-boundary);
  }
  main-content .layout__sections > .section[data-container="focus"]:last-child .section__inner {
    margin-bottom: var(--space-section-boundary);
  }
  .section-split {
    display: grid;
    min-width: calc(var(--spacing) * 0);
    grid-column: main-start / main-end;
    grid-template-columns: subgrid;
    column-gap: 0;
    row-gap: 0;
  }
  .section-split > .section-split__section--first, .section-split > .section-split__section--second {
    grid-template-columns: subgrid;
    column-gap: 0;
    grid-row: 1;
  }
  .section-split > .section-split__section--first {
    grid-column: main-start / article-center;
  }
  .section-split > .section-split__section--second {
    grid-column: article-center / main-end;
  }
  .section-split[data-reverse-desktop="true"] > .section-split__section--first {
    grid-column: article-center / main-end;
  }
  .section-split[data-reverse-desktop="true"] > .section-split__section--second {
    grid-column: main-start / article-center;
  }
  .section-split > .section-split__section--first .section__inner {
    grid-column: article-start / article-center;
  }
  .section-split > .section-split__section--second .section__inner {
    grid-column: article-center / article-end;
  }
  .section-split > .section-split__section--first[data-container="full"] .section__inner {
    grid-column: main-start / article-center;
  }
  .section-split > .section-split__section--second[data-container="full"] .section__inner {
    grid-column: article-center / main-end;
  }
  .section-split[data-reverse-desktop="true"] > .section-split__section--first .section__inner {
    grid-column: article-center / article-end;
  }
  .section-split[data-reverse-desktop="true"] > .section-split__section--second .section__inner {
    grid-column: article-start / article-center;
  }
  .section-split[data-reverse-desktop="true"] > .section-split__section--first[data-container="full"] .section__inner {
    grid-column: article-center / main-end;
  }
  .section-split[data-reverse-desktop="true"] > .section-split__section--second[data-container="full"] .section__inner {
    grid-column: main-start / article-center;
  }
  main-content .layout__sections > hr {
    grid-column: article-start / article-end;
    width: 100%;
    margin: 0;
    border: 0;
  }
  main-content .layout__sections > .section[data-boundary-before-hr="true"]:not([data-container="focus"]) .section__inner, main-content .layout__sections > .section-split[data-boundary-before-hr="true"] > .section-split__section:not([data-container="callout"]):not([data-container="focus"]) .section__inner {
    padding-bottom: var(--space-section-boundary);
  }
  main-content .layout__sections > .section[data-boundary-after-hr="true"]:not([data-container="focus"]) .section__inner, main-content .layout__sections > .section-split[data-boundary-after-hr="true"] > .section-split__section:not([data-container="callout"]):not([data-container="focus"]) .section__inner {
    padding-top: var(--space-section-boundary);
  }
  main-content .layout__sections > .section[data-container="focus"][data-boundary-before-hr="true"] .section__inner {
    margin-bottom: var(--space-section-boundary);
  }
  main-content .layout__sections > .section[data-container="focus"][data-boundary-after-hr="true"] .section__inner {
    margin-top: var(--space-section-boundary);
  }
  main-content .layout__sections > hr.line {
    border-top: 1px solid var(--color-border-subtle, currentColor);
    opacity: 0.35;
  }
  @media (max-width: 57.5rem) {
    .section .section__inner, .section[data-container="full"] .section__inner, .section-split > .section-split__section--first, .section-split > .section-split__section--second, .section-split > .section-split__section--first .section__inner, .section-split > .section-split__section--second .section__inner {
      grid-column: main-start / main-end;
      padding-inline: var(--content-inline-space, 1rem);
    }
    .section-split > .section-split__section--first, .section-split > .section-split__section--second {
      grid-row: auto;
    }
    main-content .layout__sections > hr {
      grid-column: main-start / main-end;
      padding-inline: var(--content-inline-space, 1rem);
    }
  }
}
@layer components {
  ftg-stat {
    display: block;
  }
  ftg-stat .stat {
    display: grid;
    gap: 6px;
  }
  ftg-stat .stat[data-align='left'] {
    text-align: left;
    justify-items: start;
  }
  ftg-stat .stat[data-align='center'] {
    text-align: center;
    justify-items: center;
  }
  ftg-stat .stat[data-align='right'] {
    text-align: right;
    justify-items: end;
  }
  ftg-stat .stat__value {
    margin: 0;
    font-size: clamp(2.5rem, 6vw, 3.5rem);
    font-weight: 900;
    line-height: 0.95;
    letter-spacing: -0.03em;
    color: var(--color-500);
  }
  ftg-stat .stat__body {
    margin: 0;
    line-height: 1.4;
    color: white;
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    font-weight: 900;
  }
  .zk-stat-value {
    font-size: clamp(1.75rem, 3vw, 2.25rem);
    font-weight: 900;
    line-height: 1.1;
    [emphasis="strong"] &, [data-emphasis="strong"] & {
      color: var(--color-accent-500) !important;
    }
    margin: 0 0 0.35rem;
  }
  .zk-stat-label {
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.02em;
    margin: 0 0 0.45rem;
  }
  .zk-stat-desc {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    line-height: 1.6;
    margin: 0;
  }
}
@layer components {
  ftg-testimonial {
    display: block;
  }
  ftg-testimonial .testimonial {
    background-color: var(--color-white);
    border: 1px solid var(--color-neutral-200);
    border-left: 4px solid var(--color-accent-500);
    border-radius: 0 16px 16px 0;
    padding: 28px 28px 24px;
  }
  ftg-testimonial .testimonial__context {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--color-neutral-700);
    margin: 0 0 12px;
  }
  ftg-testimonial .testimonial__quote {
    font-size: 18px;
    font-weight: 600;
    color: var(--color-neutral-900);
    line-height: 1.5;
    margin: 0 0 16px;
    font-style: italic;
  }
  ftg-testimonial .testimonial__meta {
    font-size: 13px;
    color: var(--color-neutral-700);
    margin: 0;
  }
}
@layer components {
  ftg-ticker {
    display: block;
    --ftg-ticker-edge-fade: 0px;
    --ftg-ticker-edge-shadow-size: 14px;
    --ftg-ticker-edge-shadow-color: color-mix(in srgb, oklch(84.44% 0.04 87.06) 16%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --ftg-ticker-edge-shadow-color: color-mix(in oklab, var(--color-neutral-200) 16%, transparent);
    }
    padding-block: calc(var(--spacing) * 7);
    position: relative;
    isolation: isolate;
  }
  ftg-ticker .container > * {
    margin-inline: calc(var(--spacing) * 5);
  }
  ftg-ticker::before, ftg-ticker::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: var(--ftg-ticker-edge-shadow-size);
    pointer-events: none;
    z-index: 0;
  }
  ftg-ticker::before {
    left: 0;
    background: linear-gradient( to right, var(--ftg-ticker-edge-shadow-color) 0, transparent 100% );
  }
  ftg-ticker::after {
    right: 0;
    background: linear-gradient( to left, var(--ftg-ticker-edge-shadow-color) 0, transparent 100% );
  }
  ftg-ticker .edge-border {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 1px;
    background: var(--color-neutral-200);
    pointer-events: none;
    z-index: 3;
  }
  ftg-ticker .edge-border.left {
    left: 0;
  }
  ftg-ticker .edge-border.right {
    right: 0;
  }
  ftg-ticker .viewport {
    overflow: hidden;
    width: 100%;
    -webkit-overflow-scrolling: touch;
    border-radius: 0;
    position: relative;
    z-index: 1;
    -webkit-mask-image: linear-gradient( to right, transparent 0, #000 var(--ftg-ticker-edge-fade), #000 calc(100% - var(--ftg-ticker-edge-fade)), transparent 100% );
    mask-image: linear-gradient( to right, transparent 0, #000 var(--ftg-ticker-edge-fade), #000 calc(100% - var(--ftg-ticker-edge-fade)), transparent 100% );
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-position: 0 0;
    mask-position: 0 0;
  }
  ftg-ticker .container {
    display: flex;
    align-items: stretch;
    gap: var(--ftg-ticker-gap, 24px);
    touch-action: pan-y pinch-zoom;
    position: relative;
    z-index: 1;
  }
  ftg-ticker .container > slot {
    display: contents;
  }
  ftg-ticker .container > * {
    flex: 0 0 auto;
    min-width: 0;
  }
}
@layer components {
  .signature {
    counter-increment: signature-item;
    display: flex;
    min-height: 44mm;
    flex-direction: column;
    justify-content: space-between;
    border-radius: 2mm;
    border-style: var(--tw-border-style);
    border-width: 1px;
    padding: calc(var(--spacing) * 5);
    background: #fff;
    border-color: var(--doc-border);
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .signature::before {
    content: "Signatur " counter(signature-item);
    margin-bottom: calc(var(--spacing) * 3);
    font-size: 8.5pt;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--doc-muted);
  }
  .signature__person {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .signature__line {
    margin: calc(var(--spacing) * 0);
    min-height: 0;
    border-top: 1pt solid var(--doc-text);
  }
  .signature__field {
    margin-top: auto;
    display: flex;
    align-items: flex-start;
    min-height: 40mm;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-neutral-100);
    border-style: solid;
    border-radius: 1.5mm;
    padding: 2.5mm;
  }
  .signature__name, .signature__role, .signature__meta {
    margin-top: calc(var(--spacing) * 0);
    margin-bottom: calc(var(--spacing) * 1);
  }
  .signature__name {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .signature__role, .signature__meta {
    color: var(--doc-muted);
  }
}
@layer components {
  ftg-flow-step {
    display: flex;
    min-height: calc(var(--spacing) * 0);
    flex-grow: 1;
    flex-direction: column;
  }
  ftg-flow-step .flow-step-shell {
    display: flex;
    min-height: calc(var(--spacing) * 0);
    width: 100%;
    flex-grow: 1;
    flex-direction: column;
  }
  ftg-flow-step .flow-step-head {
    margin-bottom: calc(var(--spacing) * 3);
    display: flex;
    align-items: flex-start;
    gap: calc(var(--spacing) * 2);
    text-align: left;
  }
  ftg-flow-step .flow-step-headline {
    min-width: calc(var(--spacing) * 0);
    flex-grow: 1;
  }
  ftg-flow-step .flow-step-title {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-700);
    text-transform: uppercase;
    @media (width >= 48rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  ftg-flow-step .flow-step-header {
    margin-top: calc(var(--spacing) * 0);
    margin-right: calc(var(--spacing) * 2);
    margin-bottom: calc(var(--spacing) * 0);
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-primary-700);
    @media (width >= 48rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  ftg-flow-step .flow-step-progress {
    margin-left: auto;
    display: flex;
    flex-shrink: 0;
    flex-direction: column;
    align-items: flex-end;
    gap: calc(var(--spacing) * 1);
    text-align: right;
  }
  ftg-flow-step .flow-step-progress-label {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-700);
  }
  ftg-flow-step .flow-step-progress-label span {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  ftg-flow-step .flow-step-dots {
    margin: calc(var(--spacing) * 0);
    display: flex;
    list-style-type: none;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 0);
  }
  ftg-flow-step .flow-step-dot-item {
    display: flex;
  }
  ftg-flow-step .flow-step-dot {
    display: block;
    width: calc(var(--spacing) * 2.5);
    height: calc(var(--spacing) * 2.5);
    border-radius: calc(infinity * 1px);
    background-color: var(--color-300);
  }
  ftg-flow-step .flow-step-dot[data-state='done'] {
    background-color: var(--color-primary);
  }
  ftg-flow-step .flow-step-dot[data-state='current'] {
    background-color: var(--color-accent);
  }
  ftg-flow-step .flow-step-card {
    display: flex;
    min-height: calc(var(--spacing) * 0);
    flex-grow: 1;
    flex-direction: column;
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in srgb, oklch(84.44% 0.04 87.06) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-neutral-200) 50%, transparent);
    }
    background-color: color-mix(in srgb, rgb(255 255 255 / 80%) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
    padding: calc(var(--spacing) * 6);
  }
  ftg-flow-step .flow-step-content {
    display: flex;
    min-height: calc(var(--spacing) * 0);
    flex-grow: 1;
    flex-direction: column;
  }
  ftg-flow-step .flow-step-actions {
    margin-top: calc(var(--spacing) * 6);
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-end;
    gap: calc(var(--spacing) * 4);
    text-align: left;
    @media (width >= 48rem) {
      flex-direction: row;
    }
    @media (width >= 48rem) {
      align-items: center;
    }
    @media (width >= 48rem) {
      justify-content: space-between;
    }
  }
  ftg-flow-step .flow-step-intro {
    min-height: calc(var(--spacing) * 0);
    width: 100%;
    flex-grow: 1;
  }
  ftg-flow-step .flow-step-cta {
    display: flex;
    width: 100%;
    flex-shrink: 0;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: calc(var(--spacing) * 3);
    @media (width >= 48rem) {
      width: auto;
    }
  }
}
@layer components {
  .signature {
    counter-increment: signature-item;
    display: flex;
    min-height: 44mm;
    flex-direction: column;
    justify-content: space-between;
    border-radius: 2mm;
    border-style: var(--tw-border-style);
    border-width: 1px;
    padding: calc(var(--spacing) * 5);
    background: #fff;
    border-color: var(--doc-border);
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .signature::before {
    content: "Signatur " counter(signature-item);
    margin-bottom: calc(var(--spacing) * 3);
    font-size: 8.5pt;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--doc-muted);
  }
  .signature__person {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .signature__line {
    margin: calc(var(--spacing) * 0);
    min-height: 0;
    border-top: 1pt solid var(--doc-text);
  }
  .signature__field {
    margin-top: auto;
    display: flex;
    align-items: flex-start;
    min-height: 40mm;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-neutral-100);
    border-style: solid;
    border-radius: 1.5mm;
    padding: 2.5mm;
  }
  .signature__name, .signature__role, .signature__meta {
    margin-top: calc(var(--spacing) * 0);
    margin-bottom: calc(var(--spacing) * 1);
  }
  .signature__name {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .signature__role, .signature__meta {
    color: var(--doc-muted);
  }
}
@layer components {
  .legal-cover {
    min-height: 210mm;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: calc(var(--spacing) * 6);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-neutral-300);
    page-break-after: always;
  }
  .legal-kicker {
    margin: calc(var(--spacing) * 0);
    --tw-tracking: 0.08em;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 9pt;
    color: var(--color-neutral-600);
  }
  .legal-title {
    margin: calc(var(--spacing) * 0);
    max-width: 150mm;
  }
  .legal-cover-intro {
    margin: calc(var(--spacing) * 0);
    max-width: 150mm;
    font-size: 12pt;
    line-height: 1.35;
    color: var(--color-neutral-800);
  }
  .legal-subtitle {
    margin: calc(var(--spacing) * 0);
    font-size: 13pt;
    color: var(--color-neutral-600);
  }
  .legal-meta {
    margin-top: calc(var(--spacing) * 4);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: calc(var(--spacing) * 4);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    padding-top: calc(var(--spacing) * 4);
    border-color: var(--color-neutral-300);
  }
  .legal-meta dt {
    margin-bottom: calc(var(--spacing) * 1);
    --tw-tracking: 0.06em;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    font-size: 8.5pt;
    color: var(--color-neutral-600);
  }
  .legal-meta dd {
    margin: calc(var(--spacing) * 0);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    font-size: 11pt;
  }
  .legal-toc {
    margin-bottom: calc(var(--spacing) * 8);
    page-break-after: always;
  }
  .legal-toc ul {
    margin-bottom: calc(var(--spacing) * 5);
    list-style-type: none;
  }
  .legal-toc > nav > ul {
    margin: calc(var(--spacing) * 0);
    padding: calc(var(--spacing) * 0);
    padding-top: calc(var(--spacing) * 5);
  }
  .legal-toc > nav > ul > li > a {
    margin-bottom: calc(var(--spacing) * 1);
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .legal-toc li {
    margin-bottom: calc(var(--spacing) * 0);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: #edf0f3;
  }
  .legal-toc a {
    display: block;
    text-decoration-line: none;
    color: inherit;
  }
  .legal-content h2:first-child {
    margin-top: calc(var(--spacing) * 0);
  }
  .legal-signatures {
    margin-top: calc(var(--spacing) * 0);
    page-break-before: always;
    page-break-inside: avoid;
  }
  .legal-signatures__title {
    margin-top: calc(var(--spacing) * 0);
    margin-bottom: calc(var(--spacing) * 2);
  }
  .legal-signatures__hint {
    margin-top: calc(var(--spacing) * 0);
    margin-bottom: calc(var(--spacing) * 7);
    color: var(--color-neutral-600);
  }
  .legal-signatures__grid {
    counter-reset: signature-item;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: calc(var(--spacing) * 8);
    row-gap: calc(var(--spacing) * 8);
  }
  .legal-content h3 {
    counter-reset: statuten-paragraph;
  }
  .legal-content h3 ~ p {
    position: relative;
    padding-left: calc(var(--spacing) * 8);
  }
  .legal-content h3 ~ p::before {
    counter-increment: statuten-paragraph;
    content: counter(statuten-paragraph) ".";
    position: absolute;
    left: calc(var(--spacing) * 0);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-neutral-600);
  }
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    .legal-toc a::after {
      content: leader(".") " " target-counter(attr(href), page);
    }
    .legal-content h2 {
      string-set: section-title content();
    }
    .legal-content ul {
      list-style: disc outside;
      margin-top: 0;
      margin-bottom: 4mm;
      padding-left: 10mm;
    }
    .legal-content ol {
      list-style: decimal outside;
      margin-top: 0;
      margin-bottom: 4mm;
      padding-left: 10mm;
    }
    .legal-content h3 ~ ul, .legal-content h3 ~ ol {
      padding-left: 14mm;
    }
    .legal-content li::marker {
      color: var(--color-neutral-600);
    }
  }
}
@layer components {
  .blog-overview, .blog-single {
    width: 100%;
  }
  .blog-overview__header, .blog-single__header {
    margin-bottom: calc(var(--spacing) * 8);
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
    padding-top: clamp(3.75rem, 7.5vw, 5.625rem);
  }
  .blog-overview__description, .blog-single__summary {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    color: var(--color-700);
  }
  .blog-single__image {
    margin-top: calc(var(--spacing) * 5);
  }
  .blog-single__image img, ftg-card.blog-card .card-media img {
    height: auto;
    width: 100%;
    border-radius: var(--radius-lg);
    object-fit: cover;
  }
  .blog-content {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
    }
    padding-bottom: clamp(3.75rem, 7.5vw, 5.625rem);
  }
  .blog-content h1 {
    display: none;
  }
  :where(html[data-layout="site"]) {
    .blog-single {
      margin-inline: auto;
      --blog-measure: 46rem;
      --blog-measure-wide: 52rem;
    }
    .blog-single__header {
      margin-bottom: calc(var(--spacing) * 10);
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
    .blog-single__summary {
      max-width: var(--blog-measure);
      font-size: 1.125rem;
      --tw-leading: calc(var(--spacing) * 8);
      line-height: calc(var(--spacing) * 8);
      color: var(--color-800);
    }
    .blog-content {
      max-width: var(--blog-measure);
      margin-left: 0;
      margin-right: auto;
      font-size: 1.0625rem;
      --tw-leading: calc(var(--spacing) * 8);
      line-height: calc(var(--spacing) * 8);
      color: var(--color-800);
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
    }
    .blog-content > :where(figure, .highlight) {
      max-width: var(--blog-measure-wide);
      margin-block: calc(var(--spacing) * 8);
      width: 100%;
    }
    .blog-content > p {
      text-wrap: pretty;
    }
    .blog-content > p + p {
      margin-top: calc(var(--spacing) * 5);
    }
    .blog-content > :where(h2, h3, h4) {
      --tw-tracking: -0.01em;
      letter-spacing: -0.01em;
      text-wrap: balance;
    }
    .blog-content > h2 {
      margin-top: calc(var(--spacing) * 14);
      margin-bottom: calc(var(--spacing) * 4);
      font-size: 1.9rem;
      --tw-leading: var(--leading-tight);
      line-height: var(--leading-tight);
      color: var(--color-primary-800);
    }
    .blog-content > h3 {
      margin-top: calc(var(--spacing) * 10);
      margin-bottom: calc(var(--spacing) * 3);
      font-size: 1.45rem;
      --tw-leading: var(--leading-tight);
      line-height: var(--leading-tight);
      color: var(--color-primary-800);
    }
    .blog-content > h4 {
      margin-top: calc(var(--spacing) * 8);
      margin-bottom: calc(var(--spacing) * 3);
      font-size: 1.2rem;
      --tw-leading: var(--leading-snug);
      line-height: var(--leading-snug);
      color: var(--color-primary-800);
    }
    .blog-content :where(ul, ol) {
      padding-left: calc(var(--spacing) * 6);
    }
    .blog-content li + li {
      margin-top: calc(var(--spacing) * 2);
    }
    .blog-content blockquote {
      border-left-style: var(--tw-border-style);
      border-left-width: 2px;
      border-color: var(--color-primary-300);
      background-color: color-mix(in srgb, oklch(97.34% 0.00 214.02) 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-primary-50) 30%, transparent);
      }
      padding-block: calc(var(--spacing) * 1);
      padding-right: calc(var(--spacing) * 4);
      padding-left: calc(var(--spacing) * 5);
      color: var(--color-700);
      font-style: italic;
    }
    .blog-content :where(a:not(.chip)) {
      text-decoration-color: var(--color-primary-300);
      text-decoration-thickness: 2px;
      text-underline-offset: 3px;
    }
    .blog-content :where(code):not(pre code) {
      border-radius: 0.25rem;
      background-color: var(--color-neutral-100);
      padding-inline: calc(var(--spacing) * 1.5);
      padding-block: calc(var(--spacing) * 0.5);
      font-size: 0.9em;
      color: var(--color-900);
    }
    .blog-content pre {
      overflow-x: auto;
      border-radius: var(--radius-xl);
      border-style: var(--tw-border-style);
      border-width: 1px;
      border-color: var(--color-neutral-200);
      background-color: var(--color-neutral-950);
      padding: calc(var(--spacing) * 4);
      font-size: 0.925rem;
      --tw-leading: calc(var(--spacing) * 7);
      line-height: calc(var(--spacing) * 7);
      color: var(--color-neutral-100);
    }
    .blog-content pre code {
      background-color: transparent;
      padding: calc(var(--spacing) * 0);
      color: inherit;
    }
    .blog-content table {
      border-collapse: collapse;
      font-size: 0.96rem;
      --tw-leading: calc(var(--spacing) * 7);
      line-height: calc(var(--spacing) * 7);
    }
    .blog-content :where(th, td) {
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 1px;
      border-color: var(--color-neutral-200);
      padding-block: calc(var(--spacing) * 2);
      padding-right: calc(var(--spacing) * 4);
      vertical-align: top;
    }
    .blog-toc {
      border-radius: 0.25rem;
      border-color: var(--color-neutral-100);
      background-color: var(--color-white);
      padding: calc(var(--spacing) * 4);
    }
    .blog-toc__title {
      margin-bottom: calc(var(--spacing) * 2);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      --tw-tracking: 0.08em;
      letter-spacing: 0.08em;
      color: var(--color-800);
    }
    .blog-toc nav li + li {
      margin-top: calc(var(--spacing) * 1);
    }
    .blog-toc nav a {
      display: block;
      border-radius: var(--radius-md);
      padding-inline: calc(var(--spacing) * 2);
      padding-block: calc(var(--spacing) * 1);
      font-size: 1rem;
      --tw-leading: calc(var(--spacing) * 6);
      line-height: calc(var(--spacing) * 6);
      color: var(--color-600);
      transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      --tw-duration: 150ms;
      transition-duration: 150ms;
      &:hover {
        @media (hover: hover) {
          color: var(--color-900);
        }
      }
      &:focus-visible {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
      }
      &:focus-visible {
        --tw-ring-color: var(--color-primary-300);
      }
      &:focus-visible {
        --tw-outline-style: none;
        outline-style: none;
      }
    }
    .blog-toc nav > ul > li > a {
      color: var(--color-600);
    }
    .blog-toc nav ul ul {
      margin-top: calc(var(--spacing) * 1);
      margin-left: calc(var(--spacing) * 2);
      border-left-style: var(--tw-border-style);
      border-left-width: 1px;
      border-color: var(--color-neutral-300);
      padding-left: calc(var(--spacing) * 2);
    }
    .blog-toc nav ul ul a {
      font-size: 0.92rem;
      --tw-leading: calc(var(--spacing) * 5);
      line-height: calc(var(--spacing) * 5);
    }
    .blog-toc-mobile {
      border-radius: var(--radius-lg);
      border-style: var(--tw-border-style);
      border-width: 1px;
      border-color: var(--color-neutral-200);
      background-color: color-mix(in srgb, oklch(96.76% 0.01 84.48) 65%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-neutral-50) 65%, transparent);
      }
      padding: calc(var(--spacing) * 3);
    }
  }
  .blog-toc {
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-neutral-100);
    background-color: var(--color-white);
    padding: calc(var(--spacing) * 4);
  }
  .blog-toc-mobile {
    border-color: var(--color-0);
    background-color: transparent;
    padding: calc(var(--spacing) * 0);
    @media (width >= 64rem) {
      display: none;
    }
  }
  .blog-toc-desktop {
    display: none;
    @media (width >= 64rem) {
      display: block;
    }
  }
  .blog-toc__title {
    margin-top: calc(var(--spacing) * 0);
    margin-bottom: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: 0.08em;
    letter-spacing: 0.08em;
    color: var(--color-800);
    text-transform: uppercase;
  }
  .blog-toc nav ul {
    margin: calc(var(--spacing) * 0);
    list-style-type: none;
    padding: calc(var(--spacing) * 0);
  }
  .blog-toc nav li {
    margin: calc(var(--spacing) * 0);
  }
  .blog-toc nav li + li {
    margin-top: calc(var(--spacing) * 1);
  }
  .blog-toc nav ul ul {
    margin-top: calc(var(--spacing) * 1);
    margin-left: calc(var(--spacing) * 2);
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
    border-color: var(--color-neutral-300);
    padding-left: calc(var(--spacing) * 2);
  }
  .blog-toc nav a {
    display: block;
    border-radius: var(--radius-md);
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    font-size: 1rem;
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
    color: var(--color-600);
    &:hover {
      @media (hover: hover) {
        color: var(--color-900);
      }
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-primary-300);
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .blog-single__header ftg-chips-nav nav {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .blog-grid {
    display: grid;
    gap: calc(var(--spacing) * 6);
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .blog-grid--shortcode {
    margin-block: calc(var(--spacing) * 6);
  }
  ftg-card.blog-card > article {
    overflow: hidden;
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in srgb, oklch(84.44% 0.04 87.06) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-neutral-200) 70%, transparent);
    }
    background-color: var(--color-white);
  }
  .blog-card__content {
    padding: calc(var(--spacing) * 4);
  }
  .blog-card__content h2 {
    margin-top: calc(var(--spacing) * 0);
    margin-bottom: calc(var(--spacing) * 2);
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .blog-card__content p {
    margin-bottom: calc(var(--spacing) * 0);
  }
  ftg-card.blog-card .card-media img {
    border-radius: 0;
  }
}
@layer components {
  :where(html[data-layout="documentation"]) {
    .doc-layout {
      width: 100%;
      display: grid;
      grid-template-columns: minmax(0, 18rem) minmax(0, 1fr);
      column-gap: 0;
      align-items: start;
      min-height: calc(100vh - var(--sticky-top, 1rem));
    }
    .doc-shell {
      width: 100%;
    }
    .doc-description {
      margin-top: calc(var(--spacing) * 3);
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
      color: var(--color-700);
    }
    .doc-meta {
      margin-top: calc(var(--spacing) * 2);
      margin-bottom: calc(var(--spacing) * 0);
      display: inline-block;
      border-radius: calc(infinity * 1px);
      border-style: var(--tw-border-style);
      border-width: 1px;
      border-color: var(--color-neutral-300);
      padding-inline: calc(var(--spacing) * 2);
      padding-block: calc(var(--spacing) * 1);
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      --tw-font-weight: var(--font-weight-semibold);
      font-weight: var(--font-weight-semibold);
      --tw-tracking: 0.06em;
      letter-spacing: 0.06em;
      color: var(--color-700);
      text-transform: uppercase;
    }
    .doc-capabilities {
      margin-top: calc(var(--spacing) * 3);
    }
    .doc-capabilities__title {
      margin-bottom: calc(var(--spacing) * 1);
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      --tw-font-weight: var(--font-weight-semibold);
      font-weight: var(--font-weight-semibold);
      --tw-tracking: 0.06em;
      letter-spacing: 0.06em;
      color: var(--color-700);
      text-transform: uppercase;
    }
    .doc-capabilities ul {
      margin: calc(var(--spacing) * 0);
      display: flex;
      list-style-type: none;
      flex-wrap: wrap;
      gap: calc(var(--spacing) * 2);
      padding: calc(var(--spacing) * 0);
    }
    .doc-capabilities li {
      margin: calc(var(--spacing) * 0);
    }
    .doc-capabilities code {
      display: inline-block;
      border-radius: 0.25rem;
      background-color: var(--color-neutral-100);
      padding-inline: calc(var(--spacing) * 2);
      padding-block: calc(var(--spacing) * 1);
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      color: var(--color-800);
    }
    .doc-index {
      margin: calc(var(--spacing) * 0);
      list-style-type: none;
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
      }
      padding: calc(var(--spacing) * 0);
    }
    .doc-index a, .doc-aside a {
      color: var(--color-primary-700);
      text-decoration-line: none;
      text-decoration-color: var(--color-primary-300);
      transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      --tw-duration: 150ms;
      transition-duration: 150ms;
      &:hover {
        @media (hover: hover) {
          color: var(--color-primary-900);
        }
      }
      &:hover {
        @media (hover: hover) {
          text-decoration-line: underline;
        }
      }
    }
    .doc-aside {
      display: none;
      @media (width >= 64rem) {
        display: block;
      }
      position: sticky;
      top: var(--sticky-top, 1rem);
      align-self: start;
    }
    .doc-aside--tree {
      border-right-style: var(--tw-border-style);
      border-right-width: 1px;
      border-color: var(--color-neutral-200);
      padding: 0.75rem;
      height: calc(100vh - var(--sticky-top, 1rem) - 1rem);
      display: flex;
      flex-direction: column;
      overflow: hidden;
    }
    .doc-aside__scroll {
      flex: 1;
      min-height: 0;
      overflow: auto;
      overscroll-behavior: contain;
      scrollbar-gutter: stable;
      padding-right: calc(var(--spacing) * 1);
    }
    .doc-aside__title {
      margin-bottom: calc(var(--spacing) * 2);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      --tw-font-weight: var(--font-weight-semibold);
      font-weight: var(--font-weight-semibold);
      --tw-tracking: 0.08em;
      letter-spacing: 0.08em;
      color: var(--color-700);
      text-transform: uppercase;
      flex: 0 0 auto;
    }
    .doc-tree + .doc-aside__title {
      margin-top: calc(var(--spacing) * 5);
    }
    .doc-tree {
      margin: calc(var(--spacing) * 0);
      list-style-type: none;
      padding: calc(var(--spacing) * 0);
    }
    .doc-tree .doc-tree {
      margin-top: calc(var(--spacing) * 1);
      margin-left: calc(var(--spacing) * 4);
    }
    .doc-tree__item + .doc-tree__item {
      margin-top: calc(var(--spacing) * 1);
    }
    .doc-tree a[aria-current="page"] {
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
    }
    @media (max-width: 64rem) {
      .doc-layout {
        grid-template-columns: minmax(0, 1fr);
      }
    }
  }
}
@page doc {
  size: A4;
  margin: 28mm 16mm 28mm 16mm;
  @top-left {
    content: element(doc-running-header-left);
  }
  @top-right {
    content: element(doc-running-header-right);
  }
  @bottom-left {
    content: element(doc-running-footer-left);
  }
  @bottom-center {
    content: element(doc-running-footer-center);
  }
  @bottom-right {
    content: "Seite " counter(page) " von " counter(pages);
    font-family: var(--font-body);
    font-size: 9pt;
    color: var(--color-neutral-600);
  }
}
@page doc:first {
  @top-left {
    content: none;
  }
  @top-right {
    content: none;
  }
}
@layer base {
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    *, *::before, *::after {
      box-sizing: border-box;
    }
    body {
      page: doc;
      margin: 0;
      padding: 0;
      color: var(--color-neutral-800);
      font-family: var(--font-body);
      font-size: 11pt;
      line-height: 1.45;
    }
  }
}
@layer components {
  &:where([data-target="pdf"], [data-target="pdf"] *) {
    main {
      margin: calc(var(--spacing) * 0);
      padding: calc(var(--spacing) * 0);
    }
    .print-running-header-left, .print-running-header-right, .print-running-footer-left, .print-running-footer-center {
      color: var(--color-neutral-600);
      font-family: var(--font-body);
      font-size: 9pt;
      white-space: nowrap;
    }
    .print-running-header-left {
      position: running(doc-running-header-left);
      text-align: left;
    }
    .print-running-header-right {
      position: running(doc-running-header-right);
      text-align: right;
    }
    .print-running-footer-left {
      position: running(doc-running-footer-left);
      text-align: left;
    }
    .print-running-footer-center {
      position: running(doc-running-footer-center);
      text-align: center;
    }
  }
}
html[data-target="pdf"] .print-running-header-left {
  position: running(doc-running-header-left);
  text-align: left;
  color: var(--color-neutral-600);
  font-family: var(--font-body);
  font-size: 9pt;
  white-space: nowrap;
}
html[data-target="pdf"] .print-running-header-right {
  position: running(doc-running-header-right);
  text-align: right;
  color: var(--color-neutral-600);
  font-family: var(--font-body);
  font-size: 9pt;
  white-space: nowrap;
}
html[data-target="pdf"] .print-running-footer-left {
  position: running(doc-running-footer-left);
  text-align: left;
  color: var(--color-neutral-600);
  font-family: var(--font-body);
  font-size: 9pt;
  white-space: nowrap;
}
html[data-target="pdf"] .print-running-footer-center {
  position: running(doc-running-footer-center);
  text-align: center;
  color: var(--color-neutral-600);
  font-family: var(--font-body);
  font-size: 9pt;
  white-space: nowrap;
}
html[data-target="pdf"] body {
  display: block !important;
  min-height: auto !important;
}
html[data-target="pdf"] main {
  display: block !important;
  flex: none !important;
}
html[data-target="pdf"] #TableOfContents a::after {
  content: leader(".") " " target-counter(attr(href), page);
}
@layer base {
  :root {
    color-scheme: light;
    --aside-left-width: 0;
    --aside-right-width: 300px;
    --content-max-width: var(--container-7xl);
    --sticky-top: 100px;
  }
  html, body {
    font-family: var(--font-body);
    line-height: 1.5;
  }
  [centered] {
    text-align: center;
  }
  .centered {
    text-align: center;
  }
  .right {
    text-align: right;
  }
  img {
    margin-inline: auto;
  }
  body {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    background-color: color-mix(in srgb, oklch(92.20% 0.02 90.51) 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-neutral-100) 30%, transparent);
    }
    color: var(--color-900);
  }
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@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: 0px;
}
@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-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-border-spacing-x {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-spacing-y {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@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-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-duration: initial;
      --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-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-border-spacing-x: 0;
      --tw-border-spacing-y: 0;
      --tw-tracking: initial;
      --tw-outline-style: solid;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-space-y-reverse: 0;
    }
  }
}
