/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --spacing: 0.25rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-3xl: 48rem;
    --container-5xl: 64rem;
    --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-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --text-8xl: 6rem;
    --text-8xl--line-height: 1;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --tracking-tighter: -0.05em;
    --tracking-tight: -0.025em;
    --tracking-normal: 0em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --animate-spin: spin 1s linear infinite;
    --blur-xs: 4px;
    --blur-sm: 8px;
    --aspect-video: 16 / 9;
    --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);
    --font-body: var(--gh-font-body, var(--font-sans));
    --font-heading: var(--gh-font-heading, var(--font-sans));
    --color-transparent: transparent;
    --color-current: currentColor;
    --color-white: #fff;
    --color-black: #000;
    --color-blue: #3b82f6;
    --color-green: #22c55e;
    --color-red: #ef4444;
    --color-yellow: #eab308;
    --color-pink: #ec4899;
    --color-purple: #a855f7;
    --color-accent: var(--accent);
    --color-contrast: var(--contrast);
    --color-primary: var(--primary);
    --color-secondary: var(--secondary);
    --color-tertiary: var(--tertiary);
    --color-heading: var(--heading);
    --color-text: var(--text);
    --color-meta: var(--meta);
    --color-submenu: var(--submenu);
    --color-submenu-text: var(--submenu-text);
    --color-footer-heading: var(--footer-heading);
    --color-btn: var(--btn);
    --color-btn-text: var(--btn-text);
    --color-link: var(--link);
    --color-border: var(--border);
    --color-shadow: var(--shadow);
    --color-overlay: var(--overlay);
    --font-weight-inherit: inherit;
    --font-weight-variable: var(--gh-font-weight-variable, var(--font-weight-medium));
    --font-weight-weight-body: var(--gh-font-weight-body, var(--font-weight-normal));
    --font-weight-weight-heading: var(--gh-font-weight-heading, var(--font-weight-medium));
    --font-weight-weight-btn: var(--font-weight-variable);
    --aspect-portrait: 3 / 4;
    --aspect-landscape: 4 / 3;
    --radius-custom: calc(var(--spacing) * 1.5);
    --blur-2xs: calc(var(--blur-xs) / 2);
    --spacing-logo: max(calc(var(--spacing) * 8), min(calc(var(--spacing) * 14), var(--logo-height, 0px)));
    --animate-fade-in-up: fadeInUp 300ms ease-out both;
  }
}
@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 {
  .pointer-events-none {
    pointer-events: none;
  }
  .invisible {
    visibility: hidden;
  }
  .skip-link {
    position: absolute;
    inset-inline-start: calc(var(--spacing) * 4);
    top: calc(var(--spacing) * 4);
    background-color: var(--color-text);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    --tw-font-weight: var(--font-weight-variable);
    font-weight: var(--font-weight-variable);
    color: var(--color-primary);
    &:not(*:focus) {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip-path: inset(50%);
      white-space: nowrap;
      border-width: 0;
    }
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .icon-base {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .icon-sm {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .icon-xs {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
    width: calc(var(--spacing) * 7);
    height: calc(var(--spacing) * 7);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .btn-base {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    column-gap: calc(var(--spacing) * 1.5);
    border-radius: calc(infinity * 1px);
    text-align: center;
    font-family: var(--font-body);
    --tw-font-weight: var(--font-weight-weight-btn);
    font-weight: var(--font-weight-weight-btn);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .btn-lg {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    column-gap: calc(var(--spacing) * 1.5);
    border-radius: calc(infinity * 1px);
    text-align: center;
    font-family: var(--font-body);
    --tw-font-weight: var(--font-weight-weight-btn);
    font-weight: var(--font-weight-weight-btn);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
    padding-inline: calc(var(--spacing) * 6);
    padding-block: calc(var(--spacing) * 2.5);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .btn-sm {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    column-gap: calc(var(--spacing) * 1.5);
    border-radius: calc(infinity * 1px);
    text-align: center;
    font-family: var(--font-body);
    --tw-font-weight: var(--font-weight-weight-btn);
    font-weight: var(--font-weight-weight-btn);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .btn-xs {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    column-gap: calc(var(--spacing) * 1.5);
    border-radius: calc(infinity * 1px);
    text-align: center;
    font-family: var(--font-body);
    --tw-font-weight: var(--font-weight-weight-btn);
    font-weight: var(--font-weight-weight-btn);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .-inset-3 {
    inset: calc(var(--spacing) * -3);
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .inset-x-0 {
    inset-inline: calc(var(--spacing) * 0);
  }
  .start-0 {
    inset-inline-start: calc(var(--spacing) * 0);
  }
  .start-4 {
    inset-inline-start: calc(var(--spacing) * 4);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-4 {
    top: calc(var(--spacing) * 4);
  }
  .top-full {
    top: 100%;
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .-z-10 {
    z-index: calc(10 * -1);
  }
  .z-1 {
    z-index: 1;
  }
  .z-20 {
    z-index: 20;
  }
  .z-40 {
    z-index: 40;
  }
  .z-50 {
    z-index: 50;
  }
  .canvas {
    --padding: calc(var(--spacing) * 4);
    --regular: min(calc(var(--spacing) * 160), 100% - var(--padding) * 2);
    --wide: minmax(0, calc((var(--container-5xl) - var(--regular) - (var(--padding) * 2)) / 2));
    --full: minmax(var(--padding), 1fr);
    display: grid;
    width: 100%;
    grid-template-columns: [full-start] var(--full) [wide-start] var(--wide) [regular-start] var(--regular) [regular-end] var(--wide) [wide-end] var(--full) [full-end];
    :is(& > *) {
      grid-column: regular;
    }
  }
  .canvas-full {
    grid-column: full;
  }
  .canvas-regular {
    grid-column: regular;
  }
  .canvas-wide {
    grid-column: wide;
  }
  .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);
  }
  .container {
    margin-inline: auto;
    max-width: calc(var(--spacing) * 384);
    padding-inline: calc(var(--spacing) * 4);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .fancy-title {
    display: block;
    text-align: center;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    text-transform: uppercase;
    &::before {
      content: var(--tw-content);
      margin-inline-end: calc(var(--spacing) * 1);
    }
    &::before {
      content: var(--tw-content);
      opacity: 50%;
    }
    &::before {
      --tw-content: var(--fancy-icon);
      content: var(--tw-content);
    }
    &::after {
      content: var(--tw-content);
      margin-inline-start: calc(var(--spacing) * 1);
    }
    &::after {
      content: var(--tw-content);
      opacity: 50%;
    }
    &::after {
      --tw-content: var(--fancy-icon);
      content: var(--tw-content);
    }
  }
  .figcaption {
    margin-top: calc(var(--spacing) * 3);
    text-align: center;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-meta);
    :where(a) {
      color: var(--color-link);
      text-decoration-line: underline;
      transition-property: opacity;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      &:hover {
        @media (hover: hover) {
          opacity: 80%;
        }
      }
    }
  }
  .mt-2\.5 {
    margin-top: calc(var(--spacing) * 2.5);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .\!mb-0 {
    margin-bottom: calc(var(--spacing) * 0) !important;
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .line-clamp-1 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }
  .block {
    display: block;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .aspect-\[4\/3\] {
    aspect-ratio: 4/3;
  }
  .aspect-landscape {
    aspect-ratio: var(--aspect-landscape);
  }
  .aspect-portrait {
    aspect-ratio: var(--aspect-portrait);
  }
  .size-16 {
    width: calc(var(--spacing) * 16);
    height: calc(var(--spacing) * 16);
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .h-logo {
    height: var(--spacing-logo);
  }
  .max-h-full {
    max-height: 100%;
  }
  .w-\[120px\] {
    width: 120px;
  }
  .w-auto {
    width: auto;
  }
  .w-full {
    width: 100%;
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-160 {
    max-width: calc(var(--spacing) * 160);
  }
  .max-w-lg {
    max-width: var(--container-lg);
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-none {
    max-width: none;
  }
  .min-w-44 {
    min-width: calc(var(--spacing) * 44);
  }
  .flex-1 {
    flex: 1;
  }
  .translate-x-3 {
    --tw-translate-x: calc(var(--spacing) * 3);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-3 {
    --tw-translate-y: calc(var(--spacing) * 3);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .animate-fade-in-up {
    animation: var(--animate-fade-in-up);
  }
  .animate-spin {
    animation: var(--animate-spin);
  }
  .resize {
    resize: both;
  }
  .grid-cols-\[1fr_auto_1fr\] {
    grid-template-columns: 1fr auto 1fr;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-center {
    align-items: center;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-12 {
    gap: calc(var(--spacing) * 12);
  }
  .space-y-0\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 0.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 0.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-2 {
    :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)));
    }
  }
  .space-y-2\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :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)));
    }
  }
  .space-y-6 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-8 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-12 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-20 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 20) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 20) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .gap-x-0\.5 {
    column-gap: calc(var(--spacing) * 0.5);
  }
  .gap-x-1 {
    column-gap: calc(var(--spacing) * 1);
  }
  .gap-x-1\.5 {
    column-gap: calc(var(--spacing) * 1.5);
  }
  .gap-x-2 {
    column-gap: calc(var(--spacing) * 2);
  }
  .gap-x-2\.5 {
    column-gap: calc(var(--spacing) * 2.5);
  }
  .gap-x-3 {
    column-gap: calc(var(--spacing) * 3);
  }
  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }
  .gap-x-6 {
    column-gap: calc(var(--spacing) * 6);
  }
  .space-x-1 {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * 1) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  .gap-y-2\.5 {
    row-gap: calc(var(--spacing) * 2.5);
  }
  .gap-y-4 {
    row-gap: calc(var(--spacing) * 4);
  }
  .gap-y-6 {
    row-gap: calc(var(--spacing) * 6);
  }
  .gap-y-8 {
    row-gap: calc(var(--spacing) * 8);
  }
  .gap-y-12 {
    row-gap: calc(var(--spacing) * 12);
  }
  .justify-self-center {
    justify-self: center;
  }
  .justify-self-end {
    justify-self: flex-end;
  }
  .justify-self-start {
    justify-self: flex-start;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .rounded-custom {
    border-radius: var(--radius-custom);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-\[\#dcb720\] {
    border-color: #dcb720;
  }
  .border-white\/10 {
    border-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .var-glass {
    background-color: color-mix(in oklab, var(--color-overlay) 10%, transparent);
    color: var(--color-white);
    --tw-backdrop-blur: blur(var(--blur-sm));
    --tw-backdrop-saturate: saturate(150%);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .var-accent {
    background-color: var(--color-accent);
    color: var(--color-contrast);
  }
  .var-primary {
    background-color: var(--color-btn);
    color: var(--color-btn-text);
  }
  .var-secondary {
    background-color: var(--color-secondary);
    color: var(--color-text);
  }
  .var-tertiary {
    background-color: var(--color-tertiary);
    color: var(--color-text);
  }
  .bg-primary {
    background-color: var(--color-primary);
  }
  .bg-secondary {
    background-color: var(--color-secondary);
  }
  .bg-submenu {
    background-color: var(--color-submenu);
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-linear-to-b {
    --tw-gradient-position: to bottom;
    @supports (background-image: linear-gradient(in lab, red, red)) {
      --tw-gradient-position: to bottom in oklab;
    }
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-linear-to-br {
    --tw-gradient-position: to bottom right;
    @supports (background-image: linear-gradient(in lab, red, red)) {
      --tw-gradient-position: to bottom right in oklab;
    }
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-linear-to-t {
    --tw-gradient-position: to top;
    @supports (background-image: linear-gradient(in lab, red, red)) {
      --tw-gradient-position: to top in oklab;
    }
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .from-overlay\/20 {
    --tw-gradient-from: var(--color-overlay);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-overlay) 20%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-primary {
    --tw-gradient-from: var(--color-primary);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-overlay\/10 {
    --tw-gradient-to: var(--color-overlay);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-overlay) 10%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-transparent {
    --tw-gradient-to: transparent;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .px-10 {
    padding-inline: calc(var(--spacing) * 10);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }
  .py-20 {
    padding-block: calc(var(--spacing) * 20);
  }
  .py-28 {
    padding-block: calc(var(--spacing) * 28);
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pt-12 {
    padding-top: calc(var(--spacing) * 12);
  }
  .pb-0 {
    padding-bottom: calc(var(--spacing) * 0);
  }
  .pb-12 {
    padding-bottom: calc(var(--spacing) * 12);
  }
  .text-center {
    text-align: center;
  }
  .align-top {
    vertical-align: top;
  }
  .heading-2xl {
    font-family: var(--font-heading);
    --tw-font-weight: var(--font-weight-weight-heading);
    font-weight: var(--font-weight-weight-heading);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-heading);
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .heading-3xl {
    font-family: var(--font-heading);
    --tw-font-weight: var(--font-weight-weight-heading);
    font-weight: var(--font-weight-weight-heading);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-heading);
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .heading-4xl {
    font-family: var(--font-heading);
    --tw-font-weight: var(--font-weight-weight-heading);
    font-weight: var(--font-weight-weight-heading);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-heading);
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .heading-lg {
    font-family: var(--font-heading);
    --tw-font-weight: var(--font-weight-weight-heading);
    font-weight: var(--font-weight-weight-heading);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-heading);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .heading-sm {
    font-family: var(--font-heading);
    --tw-font-weight: var(--font-weight-weight-heading);
    font-weight: var(--font-weight-weight-heading);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-heading);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .font-body {
    font-family: var(--font-body);
  }
  .text-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .\!leading-tight {
    --tw-leading: var(--leading-tight) !important;
    line-height: var(--leading-tight) !important;
  }
  .leading-logo {
    --tw-leading: var(--spacing-logo);
    line-height: var(--spacing-logo);
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .font-variable {
    --tw-font-weight: var(--font-weight-variable);
    font-weight: var(--font-weight-variable);
  }
  .font-weight-body {
    --tw-font-weight: var(--font-weight-weight-body);
    font-weight: var(--font-weight-weight-body);
  }
  .tracking-tighter {
    --tw-tracking: var(--tracking-tighter);
    letter-spacing: var(--tracking-tighter);
  }
  .wrap-anywhere {
    overflow-wrap: anywhere;
  }
  .link {
    color: var(--color-link);
    text-decoration-line: underline;
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
  }
  .text-current {
    color: currentcolor;
  }
  .text-footer-heading {
    color: var(--color-footer-heading);
  }
  .text-meta {
    color: var(--color-meta);
  }
  .text-submenu-text {
    color: var(--color-submenu-text);
  }
  .text-text {
    color: var(--color-text);
  }
  .text-white {
    color: var(--color-white);
  }
  .italic {
    font-style: italic;
  }
  .text-decoration {
    text-decoration-line: underline;
    text-decoration-color: transparent;
    text-decoration-thickness: 1px;
    transition-property: text-decoration-color;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        text-decoration-color: currentcolor;
      }
    }
  }
  .no-underline {
    text-decoration-line: none;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-10 {
    opacity: 10%;
  }
  .opacity-20 {
    opacity: 20%;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .opacity-60 {
    opacity: 60%;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px 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);
  }
  .shadow-shadow\/20 {
    --tw-shadow-color: color-mix(in srgb, 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1) 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-shadow) 20%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .grayscale-100 {
    --tw-grayscale: grayscale(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-blur-2xs {
    --tw-backdrop-blur: blur(var(--blur-2xs));
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition-\[visibility\,opacity\,translate\] {
    transition-property: visibility,opacity,translate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-\[visibility\,opacity\] {
    transition-property: visibility,opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-250 {
    --tw-duration: 250ms;
    transition-duration: 250ms;
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .duration-500 {
    --tw-duration: 500ms;
    transition-duration: 500ms;
  }
  .will-change-\[opacity\] {
    will-change: opacity;
  }
  .will-change-transform {
    will-change: transform;
  }
  .\*\:icon-sm {
    :is(& > *) {
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: calc(infinity * 1px);
      transition-property: opacity;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      &:hover {
        @media (hover: hover) {
          opacity: 80%;
        }
      }
      width: calc(var(--spacing) * 8);
      height: calc(var(--spacing) * 8);
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .\*\:var-secondary {
    :is(& > *) {
      background-color: var(--color-secondary);
      color: var(--color-text);
    }
  }
  .not-has-child\:hidden {
    &:not(*:has(*:where(*))) {
      display: none;
    }
  }
  .not-lg\:grid {
    @media not (width >= 64rem) {
      display: grid;
    }
  }
  .not-lg\:hidden {
    @media not (width >= 64rem) {
      display: none;
    }
  }
  .not-lg\:overflow-hidden {
    @media not (width >= 64rem) {
      overflow: hidden;
    }
  }
  .not-dark\:hidden {
    &:not(*:where([data-theme="Dark"], [data-theme="Dark"] *, .dark, .dark *)) {
      display: none;
    }
  }
  .group-not-has-aria-hidden\:rotate-45 {
    &:is(:where(.group):not(*:has(*[aria-hidden="true"])) *) {
      rotate: 45deg;
    }
  }
  .group-hover\:translate-x-0 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: calc(var(--spacing) * 0);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-y-0 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * 0);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:scale-102 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-scale-x: 102%;
        --tw-scale-y: 102%;
        --tw-scale-z: 102%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .group-hover\:scale-105 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-scale-x: 105%;
        --tw-scale-y: 105%;
        --tw-scale-z: 105%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .group-hover\:opacity-80 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
  }
  .group-aria-expanded\:animate-fade-in-up {
    &:is(:where(.group)[aria-expanded="true"] *) {
      animation: var(--animate-fade-in-up);
    }
  }
  .before\:content-\(--fancy-icon\) {
    &::before {
      --tw-content: var(--fancy-icon);
      content: var(--tw-content);
    }
  }
  .after\:absolute {
    &::after {
      content: var(--tw-content);
      position: absolute;
    }
  }
  .after\:inset-0 {
    &::after {
      content: var(--tw-content);
      inset: calc(var(--spacing) * 0);
    }
  }
  .after\:z-10 {
    &::after {
      content: var(--tw-content);
      z-index: 10;
    }
  }
  .not-last\:after\:content-\[\'\,\'\] {
    &:not(*:last-child) {
      &::after {
        --tw-content: ',';
        content: var(--tw-content);
      }
    }
  }
  .hover\:opacity-100 {
    &:hover {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .has-kg-full-first\:pt-4\! {
    &:has(*:where(.kg-width-full:first-of-type)) {
      padding-top: calc(var(--spacing) * 4) !important;
    }
  }
  .has-kg-full-last\:pb-0\! {
    &:has(*:where(.kg-width-full:last-of-type)) {
      padding-bottom: calc(var(--spacing) * 0) !important;
    }
  }
  .not-lg\:aria-expanded\:visible {
    @media not (width >= 64rem) {
      &[aria-expanded="true"] {
        visibility: visible;
      }
    }
  }
  .not-lg\:aria-expanded\:opacity-100 {
    @media not (width >= 64rem) {
      &[aria-expanded="true"] {
        opacity: 100%;
      }
    }
  }
  .aria-hidden\:invisible {
    &[aria-hidden="true"] {
      visibility: hidden;
    }
  }
  .aria-hidden\:translate-y-1 {
    &[aria-hidden="true"] {
      --tw-translate-y: calc(var(--spacing) * 1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .aria-hidden\:opacity-0 {
    &[aria-hidden="true"] {
      opacity: 0%;
    }
  }
  .max-md\:hidden {
    @media (width < 48rem) {
      display: none;
    }
  }
  .sm\:hidden {
    @media (width >= 40rem) {
      display: none;
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:flex-row {
    @media (width >= 40rem) {
      flex-direction: row;
    }
  }
  .sm\:space-y-12 {
    @media (width >= 40rem) {
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
  }
  .sm\:space-y-20 {
    @media (width >= 40rem) {
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 20) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 20) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
  }
  .sm\:space-y-28 {
    @media (width >= 40rem) {
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 28) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 28) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
  }
  .sm\:py-28 {
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 28);
    }
  }
  .sm\:py-36 {
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 36);
    }
  }
  .sm\:text-left {
    @media (width >= 40rem) {
      text-align: left;
    }
  }
  .sm\:text-right {
    @media (width >= 40rem) {
      text-align: right;
    }
  }
  .sm\:tracking-normal {
    @media (width >= 40rem) {
      --tw-tracking: var(--tracking-normal);
      letter-spacing: var(--tracking-normal);
    }
  }
  .md\:hidden {
    @media (width >= 48rem) {
      display: none;
    }
  }
  .md\:inline {
    @media (width >= 48rem) {
      display: inline;
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:icon-sm {
    @media (width >= 64rem) {
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: calc(infinity * 1px);
      transition-property: opacity;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      &:hover {
        @media (hover: hover) {
          opacity: 80%;
        }
      }
      width: calc(var(--spacing) * 8);
      height: calc(var(--spacing) * 8);
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .lg\:hidden {
    @media (width >= 64rem) {
      display: none;
    }
  }
  .lg\:max-w-lg {
    @media (width >= 64rem) {
      max-width: var(--container-lg);
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-4 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-\[1fr_auto_1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1fr auto 1fr;
    }
  }
  .lg\:space-y-36 {
    @media (width >= 64rem) {
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 36) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 36) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
  }
  .lg\:justify-self-end {
    @media (width >= 64rem) {
      justify-self: flex-end;
    }
  }
  .lg\:py-36 {
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 36);
    }
  }
  .lg\:py-48 {
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 48);
    }
  }
  .lg\:pt-16 {
    @media (width >= 64rem) {
      padding-top: calc(var(--spacing) * 16);
    }
  }
  .lg\:\!text-left {
    @media (width >= 64rem) {
      text-align: left !important;
    }
  }
  .lg\:text-left {
    @media (width >= 64rem) {
      text-align: left;
    }
  }
  .lg\:\!leading-snug {
    @media (width >= 64rem) {
      --tw-leading: var(--leading-snug) !important;
      line-height: var(--leading-snug) !important;
    }
  }
  .lg\:before\:\!hidden {
    @media (width >= 64rem) {
      &::before {
        content: var(--tw-content);
        display: none !important;
      }
    }
  }
  .rtl\:rotate-y-180 {
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      --tw-rotate-y: rotateY(180deg);
      transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
    }
  }
  .dark\:hidden {
    &:where([data-theme="Dark"], [data-theme="Dark"] *, .dark, .dark *) {
      display: none;
    }
  }
  .dark\:opacity-0 {
    &:where([data-theme="Dark"], [data-theme="Dark"] *, .dark, .dark *) {
      opacity: 0%;
    }
  }
  .dark\:opacity-100 {
    &:where([data-theme="Dark"], [data-theme="Dark"] *, .dark, .dark *) {
      opacity: 100%;
    }
  }
  .dark\:invert-75 {
    &:where([data-theme="Dark"], [data-theme="Dark"] *, .dark, .dark *) {
      --tw-invert: invert(75%);
      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,);
    }
  }
  .a\:font-variable {
    :where(a) {
      --tw-font-weight: var(--font-weight-variable);
      font-weight: var(--font-weight-variable);
    }
  }
  .a\:link {
    :where(a) {
      color: var(--color-link);
      text-decoration-line: underline;
      transition-property: opacity;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      &:hover {
        @media (hover: hover) {
          opacity: 80%;
        }
      }
    }
  }
  .a\:text-decoration {
    :where(a) {
      text-decoration-line: underline;
      text-decoration-color: transparent;
      text-decoration-thickness: 1px;
      transition-property: text-decoration-color;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      &:hover {
        @media (hover: hover) {
          text-decoration-color: currentcolor;
        }
      }
    }
  }
  .a\:not-submenu\:font-variable {
    :where(a) {
      &:not(*:where(.submenu, .submenu *)) {
        --tw-font-weight: var(--font-weight-variable);
        font-weight: var(--font-weight-variable);
      }
    }
  }
  .a\:hover\:opacity-100 {
    :where(a) {
      &:hover {
        @media (hover: hover) {
          opacity: 100%;
        }
      }
    }
  }
  .li\:not-last\:after\:ms-2 {
    :where(li) {
      &:not(*:last-child) {
        &::after {
          content: var(--tw-content);
          margin-inline-start: calc(var(--spacing) * 2);
        }
      }
    }
  }
  .li\:not-last\:after\:content-\[\'·\'\] {
    :where(li) {
      &:not(*:last-child) {
        &::after {
          --tw-content: '·';
          content: var(--tw-content);
        }
      }
    }
  }
  .li\:not-last\:not-submenu\:after\:content-\[\'\,\'\] {
    :where(li) {
      &:not(*:last-child) {
        &:not(*:where(.submenu, .submenu *)) {
          &::after {
            --tw-content: ',';
            content: var(--tw-content);
          }
        }
      }
    }
  }
  .loading\:opacity-0 {
    &:where(.loading, .loading *) {
      opacity: 0%;
    }
  }
  .loading\:opacity-100 {
    &:where(.loading, .loading *) {
      opacity: 100%;
    }
  }
  .\[\&_br\]\:hidden {
    & br {
      display: none;
    }
  }
  .\[\&_br\]\:sm\:inline {
    & br {
      @media (width >= 40rem) {
        display: inline;
      }
    }
  }
}
@layer base {
  :root {
    --current: var(--color-current);
    --black: var(--color-black);
    --white: var(--color-white);
    --accent: var(--ghost-accent-color, var(--base));
    --contrast: var(--white);
    --btn: var(--accent);
    --btn-text: var(--contrast);
    --link: var(--accent);
    --logo-height: calc(var(--spacing) * 12);
    --fancy-icon: "\273B";
  }
  :root:is([data-theme="Light"]) {
    --base: #0f3b5a;
    --primary: var(--white);
    --secondary: #f4f4f5;
    --tertiary: #e4e4e7;
    --heading: var(--base);
    --text: var(--base);
    --meta: #71717a;
    --submenu: var(--base);
    --submenu-text: var(--white);
    --footer-primary: var(--base);
    --footer-heading: var(--white);
    --footer-text: var(--white);
    --footer-btn: #18181b;
    --footer-btn-text: var(--white);
    --border: var(--secondary);
    --shadow: var(--base);
    --overlay: var(--base);
    --dark-primary: #18181b;
    --dark-secondary: #27272a;
    --dark-tertiary: #3f3f46;
    --dark-heading: #fafafa;
    --dark-text: #fafafa;
    --dark-meta: #a1a1aa;
    --dark-submenu: var(--dark-secondary);
    --dark-submenu-text: var(--dark-text);
    --dark-footer-primary: var(--footer-primary);
    --dark-footer-heading: var(--dark-heading);
    --dark-footer-text: var(--dark-text);
    --dark-footer-btn: var(--footer-btn);
    --dark-footer-btn-text: var(--dark-text);
    --dark-link: var(--current);
    --dark-border: var(--dark-secondary);
  }
  :root:is([data-theme="Sepia"]) {
    --base: #121212;
    --accent: var(--base);
    --primary: #fbf7f0;
    --secondary: #efece5;
    --tertiary: #d3d0ca;
    --contrast: var(--primary);
    --heading: var(--base);
    --text: var(--base);
    --meta: #706e6c;
    --submenu: var(--base);
    --submenu-text: var(--primary);
    --footer-primary: var(--base);
    --footer-heading: var(--primary);
    --footer-text: var(--primary);
    --footer-btn: #1e1d1d;
    --footer-btn-text: var(--primary);
    --border: var(--secondary);
    --shadow: var(--base);
    --overlay: var(--base);
    --dark-primary: #1e1d1d;
    --dark-secondary: #292928;
    --dark-tertiary: #454543;
    --dark-heading: var(--primary);
    --dark-text: var(--primary);
    --dark-meta: #a6a39f;
    --dark-submenu: var(--dark-secondary);
    --dark-submenu-text: var(--dark-text);
    --dark-footer-primary: var(--footer-primary);
    --dark-footer-heading: var(--dark-heading);
    --dark-footer-text: var(--dark-text);
    --dark-footer-btn: var(--footer-btn);
    --dark-footer-btn-text: var(--dark-text);
    --dark-link: var(--current);
    --dark-border: var(--dark-secondary);
  }
  :root:is([data-theme="Blueberry"]) {
    --base: #2448bf;
    --accent: var(--base);
    --primary: #f6f5ff;
    --secondary: #e4e8fb;
    --tertiary: #d1daf7;
    --contrast: var(--primary);
    --heading: var(--base);
    --text: var(--base);
    --meta: var(--base);
    --submenu: var(--base);
    --submenu-text: var(--primary);
    --footer-primary: var(--base);
    --footer-heading: var(--primary);
    --footer-text: var(--primary);
    --footer-btn: #365bc7;
    --footer-btn-text: var(--primary);
    --border: var(--secondary);
    --shadow: #0f162a;
    --overlay: #0f162a;
    --dark-primary: #21283c;
    --dark-secondary: #2b3246;
    --dark-tertiary: #3f465a;
    --dark-heading: var(--primary);
    --dark-text: var(--primary);
    --dark-meta: var(--primary);
    --dark-submenu: var(--dark-secondary);
    --dark-submenu-text: var(--dark-text);
    --dark-footer-primary: #0f162a;
    --dark-footer-heading: var(--dark-heading);
    --dark-footer-text: var(--dark-text);
    --dark-footer-btn: var(--dark-primary);
    --dark-footer-btn-text: var(--dark-text);
    --dark-link: var(--current);
    --dark-border: var(--dark-secondary);
  }
  :root:is([data-theme="Forest"]) {
    --base: #263921;
    --accent: var(--base);
    --primary: #ebf2e7;
    --secondary: #dee6da;
    --tertiary: #d1dacd;
    --contrast: var(--primary);
    --heading: var(--base);
    --text: var(--base);
    --meta: var(--base);
    --submenu: var(--base);
    --submenu-text: var(--primary);
    --footer-primary: var(--base);
    --footer-heading: var(--primary);
    --footer-text: var(--primary);
    --footer-btn: #374932;
    --footer-btn-text: var(--primary);
    --border: var(--secondary);
    --shadow: #0f1210;
    --overlay: #0f1210;
    --dark-primary: #212421;
    --dark-secondary: #2a2d2a;
    --dark-tertiary: #3d413d;
    --dark-heading: var(--primary);
    --dark-text: var(--primary);
    --dark-meta: var(--primary);
    --dark-submenu: var(--dark-secondary);
    --dark-submenu-text: var(--dark-text);
    --dark-footer-primary: #0f1210;
    --dark-footer-heading: var(--dark-heading);
    --dark-footer-text: var(--dark-text);
    --dark-footer-btn: var(--dark-primary);
    --dark-footer-btn-text: var(--dark-text);
    --dark-link: var(--current);
    --dark-border: var(--dark-secondary);
  }
  :root:is([data-theme="Tangerine"]) {
    --base: #ca3500;
    --accent: var(--base);
    --primary: var(--white);
    --secondary: #fdece8;
    --tertiary: #fad9d0;
    --contrast: var(--primary);
    --heading: var(--base);
    --text: var(--base);
    --meta: var(--base);
    --submenu: var(--base);
    --submenu-text: var(--primary);
    --footer-primary: var(--base);
    --footer-heading: var(--primary);
    --footer-text: var(--primary);
    --footer-btn: #d24f2d;
    --footer-btn-text: var(--primary);
    --border: var(--secondary);
    --shadow: #9f2e0f;
    --overlay: #9f2e0f;
    --dark-primary: #a63d22;
    --dark-secondary: #ad4a32;
    --dark-tertiary: #b45740;
    --dark-heading: #fbf5f3;
    --dark-text: #fbf5f3;
    --dark-meta: #fbf5f3;
    --dark-submenu: var(--dark-secondary);
    --dark-submenu-text: var(--dark-text);
    --dark-footer-primary: #9f2e0f;
    --dark-footer-heading: var(--dark-heading);
    --dark-footer-text: var(--dark-text);
    --dark-footer-btn: var(--dark-primary);
    --dark-footer-btn-text: var(--dark-text);
    --dark-link: var(--current);
    --dark-border: var(--dark-secondary);
  }
  :root:is([data-theme="Wine"]) {
    --base: #380c23;
    --accent: var(--base);
    --primary: #fff5f1;
    --secondary: #f2e5e3;
    --tertiary: #e6d6d5;
    --contrast: var(--primary);
    --heading: var(--base);
    --text: var(--base);
    --meta: var(--base);
    --submenu: var(--base);
    --submenu-text: var(--primary);
    --footer-primary: var(--base);
    --footer-heading: var(--primary);
    --footer-text: var(--primary);
    --footer-btn: #4b2134;
    --footer-btn-text: var(--primary);
    --border: var(--secondary);
    --shadow: #200c17;
    --overlay: #200c17;
    --dark-primary: #2b1722;
    --dark-secondary: #37232d;
    --dark-tertiary: #432f38;
    --dark-heading: var(--primary);
    --dark-text: var(--primary);
    --dark-meta: var(--primary);
    --dark-submenu: var(--dark-secondary);
    --dark-submenu-text: var(--dark-text);
    --dark-footer-primary: #200c17;
    --dark-footer-heading: var(--dark-heading);
    --dark-footer-text: var(--dark-text);
    --dark-footer-btn: var(--dark-primary);
    --dark-footer-btn-text: var(--dark-text);
    --dark-link: var(--current);
    --dark-border: var(--dark-secondary);
  }
  :root:is([data-theme="Lavender"]) {
    --base: #791b9a;
    --accent: var(--base);
    --primary: #fafdf1;
    --secondary: #f2f0ed;
    --tertiary: #ebe3e8;
    --contrast: var(--primary);
    --heading: var(--base);
    --text: var(--base);
    --meta: var(--base);
    --submenu: var(--base);
    --submenu-text: var(--primary);
    --footer-primary: var(--base);
    --footer-heading: var(--primary);
    --footer-text: var(--primary);
    --footer-btn: #8639a4;
    --footer-btn-text: var(--primary);
    --border: var(--secondary);
    --shadow: #130d17;
    --overlay: #130d17;
    --dark-primary: #252029;
    --dark-secondary: #2f2a33;
    --dark-tertiary: #443f46;
    --dark-heading: var(--primary);
    --dark-text: var(--primary);
    --dark-meta: var(--primary);
    --dark-submenu: var(--dark-secondary);
    --dark-submenu-text: var(--dark-text);
    --dark-footer-primary: #130d17;
    --dark-footer-heading: var(--dark-heading);
    --dark-footer-text: var(--dark-text);
    --dark-footer-btn: var(--dark-primary);
    --dark-footer-btn-text: var(--dark-text);
    --dark-link: var(--current);
    --dark-border: var(--dark-secondary);
  }
  :root:is([data-theme="Dark"]) {
    --base: #09090b;
    --primary: #18181b;
    --secondary: #27272a;
    --tertiary: #3f3f46;
    --heading: #fafafa;
    --text: #fafafa;
    --meta: #a1a1aa;
    --submenu: var(--secondary);
    --submenu-text: var(--text);
    --footer-primary: var(--base);
    --footer-heading: var(--heading);
    --footer-text: var(--text);
    --footer-btn: #18181b;
    --footer-btn-text: var(--text);
    --link: var(--current);
    --border: var(--secondary);
    --shadow: var(--base);
    --overlay: var(--base);
  }
  :root:is(.dark) {
    --color-accent: var(--accent);
    --color-contrast: var(--contrast);
    --color-primary: var(--dark-primary);
    --color-secondary: var(--dark-secondary);
    --color-tertiary: var(--dark-tertiary);
    --color-heading: var(--dark-heading);
    --color-text: var(--dark-text);
    --color-meta: var(--dark-meta);
    --color-submenu: var(--dark-submenu);
    --color-submenu-text: var(--dark-submenu-text);
    --color-footer-primary: var(--dark-footer-primary);
    --color-footer-heading: var(--dark-footer-heading);
    --color-footer-text: var(--dark-footer-text);
    --color-footer-btn: var(--dark-footer-btn);
    --color-footer-btn-text: var(--dark-footer-btn-text);
    --color-btn: var(--dark-btn, var(--btn));
    --color-btn-text: var(--dark-btn-text, var(--btn-text));
    --color-link: var(--dark-link, var(--link));
    --color-border: var(--dark-border);
    --color-shadow: var(--dark-shadow, var(--shadow));
    --color-overlay: var(--dark-overlay, var(--overlay));
  }
  :root:is([data-font="General Sans"]) {
    --font-body: var(--gh-font-body, "General Sans", sans-serif);
    --font-heading: var(--gh-font-heading, "General Sans", sans-serif);
    --font-weight-variable: var(--gh-font-weight-variable, 480);
    --font-weight-weight-heading: var(--gh-font-weight-heading, 480);
  }
  :root:is([data-font="Satoshi"]) {
    --font-body: var(--gh-font-body, "Satoshi", sans-serif);
    --font-heading: var(--gh-font-heading, "Satoshi", sans-serif);
  }
  :root:is([data-font="Instrument Sans"]) {
    --font-body: var(--gh-font-body, "Instrument Sans", sans-serif);
    --font-heading: var(--gh-font-heading, "Instrument Sans", sans-serif);
  }
  :root:is([data-font="Fraunces"]) {
    --font-body: var(--gh-font-body, "Fraunces", serif);
    --font-heading: var(--gh-font-heading, "Fraunces", serif);
    --font-weight-variable: var(--gh-font-weight-variable, 400);
    --font-weight-weight-body: var(--gh-font-weight-body, 350);
    --font-weight-weight-heading: var(--gh-font-weight-heading, 400);
  }
  :root:is([data-font="EB Garamond"]) {
    --font-body: var(--gh-font-body, "EB Garamond", serif);
    --font-heading: var(--gh-font-heading, "EB Garamond", serif);
  }
  :root:is([data-font="Fraunces / General Sans"]) {
    --font-body: var(--gh-font-body, "General Sans", sans-serif);
    --font-heading: var(--gh-font-heading, "Fraunces", serif);
    --font-weight-variable: var(--gh-font-weight-variable, 480);
    --font-weight-weight-heading: var(--gh-font-weight-heading, 400);
  }
  :root:is([data-font="Fraunces / Satoshi"]) {
    --font-body: var(--gh-font-body, "Satoshi", sans-serif);
    --font-heading: var(--gh-font-heading, "Fraunces", serif);
    --font-weight-variable: var(--gh-font-weight-variable, 480);
    --font-weight-weight-heading: var(--gh-font-weight-heading, 400);
  }
  b, strong {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  svg {
    height: auto;
    width: 1em;
    overflow: visible;
  }
  button:not(:disabled), [role="button"]:not(:disabled) {
    cursor: pointer;
  }
}
.prose {
  :where(& > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
  }
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
}
.prose :where(a):not(:where(.kg-card *)) {
  color: var(--color-link);
  text-decoration-line: underline;
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
}
.prose :where(b, strong):not(:where(.kg-card *)) {
  --tw-font-weight: var(--font-weight-variable);
  font-weight: var(--font-weight-variable);
}
.prose :where(figcaption) {
  margin-top: calc(var(--spacing) * 3);
  text-align: center;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-meta);
  :where(a) {
    color: var(--color-link);
    text-decoration-line: underline;
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
  }
}
.prose :where(blockquote):not(:where(.kg-blockquote-alt)) {
  border-inline-start-style: var(--tw-border-style);
  border-inline-start-width: 1px;
  padding-inline-start: calc(var(--spacing) * 6);
  font-style: italic;
}
.prose :where(mark) {
  background-color: yellow;
  color: black;
}
.prose :where(hr) {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-border);
}
.prose :where(hr:has(+ [id])) {
  margin-top: calc(var(--spacing) * 6);
}
.prose :where(h1):not(:where(.kg-card *)) {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
}
.prose :where(h2):not(:where(.kg-card *)) {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
}
.prose :where(h3):not(:where(.kg-card *)) {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
}
.prose :where(h4):not(:where(.kg-card *)) {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.prose :where(h5):not(:where(.kg-card *)) {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
.prose :where(h6):not(:where(.kg-card *)) {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.prose :where(b, strong):where(:where(h1, h2, h3, h4, h5, h6) *):not(:where(.kg-card *)) {
  --tw-font-weight: var(--font-weight-inherit);
  font-weight: var(--font-weight-inherit);
}
.prose :where(h1, h2, h3, h4, h5, h6):not(:where(.kg-card *)) {
  margin-top: calc(var(--spacing) * 6);
  margin-bottom: calc(var(--spacing) * 4);
}
.prose :where([id] + [id], [id]:first-child):not(:where(.kg-card *)) {
  margin-top: calc(var(--spacing) * 0);
}
.prose :where(ol) {
  list-style-type: decimal;
  padding-inline-start: calc(var(--spacing) * 6);
}
.prose :where(* > ol > li > ol) {
  list-style-type: lower-alpha;
}
.prose :where(ul) {
  list-style-type: disc;
  padding-inline-start: calc(var(--spacing) * 6);
}
.prose :where(* > ul > li > ul) {
  list-style-type: circle;
}
.prose :where(ol ol, ol ul, ul ul, ul ol) {
  margin-block: calc(var(--spacing) * 3);
}
.prose :where(li) {
  margin-block: calc(var(--spacing) * 2);
}
.prose :where(ol > li:first-child, ul > li:first-child) {
  margin-top: calc(var(--spacing) * 0);
}
.prose :where(ol > li:last-child, ul > li:last-child) {
  margin-bottom: calc(var(--spacing) * 0);
}
.prose :where(ol > li, ul > li):not([class]) {
  padding-inline-start: calc(var(--spacing) * 1.5);
}
.prose :where(ol > li, ul > li):is([class]) {
  margin-block: calc(var(--spacing) * 0);
  list-style-type: none;
}
.prose :where(ol > li, ul > li)::marker {
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
}
.prose :where(code, kbd):not(:where(pre *)) {
  border-radius: calc(infinity * 1px);
  background-color: var(--color-secondary);
  padding-inline: calc(var(--spacing) * 1.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}
.prose :where(pre) {
  overflow-x: auto;
  border-radius: var(--radius-custom);
  background-color: var(--color-secondary);
  padding: calc(var(--spacing) * 6);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  direction: ltr;
}
.prose :where(table) {
  display: block;
  width: 100%;
  overflow: hidden;
  overflow-x: auto;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.prose :where(thead) {
  background-color: var(--color-secondary);
}
.prose :where(thead th) {
  vertical-align: bottom;
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.prose :where(tbody tr) {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-border);
}
.prose :where(tbody td) {
  vertical-align: baseline;
}
.prose :where(tfoot) {
  background-color: var(--color-secondary);
}
.prose :where(tfoot td) {
  vertical-align: top;
}
.prose :where(th, td) {
  text-align: start;
}
.prose :where(thead th, tbody td, tfoot td) {
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 2.5);
}
.prose :where(picture):not(:where(.kg-card, .kg-card *)) {
  display: block;
}
.prose :where(img):not(:where(.kg-card *)) {
  border-radius: var(--radius-custom);
  background-color: var(--color-secondary);
}
.prose :where(.kg-image, .kg-gallery-card img):is(:where([data-lightbox] *)) {
  cursor: pointer;
}
.prose iframe:is([src*="youtube.com"], [src*="vimeo.com"]) {
  margin-inline: auto;
  aspect-ratio: var(--aspect-video);
  height: auto;
  width: 100%;
}
[data-dropcaps] > :where(p:first-child)::first-letter {
  float: inline-start;
  margin-inline-end: calc(var(--spacing) * 4);
  margin-top: calc(var(--spacing) * 2);
  font-size: var(--text-8xl);
  line-height: var(--tw-leading, var(--text-8xl--line-height));
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  color: var(--color-heading);
}
@supports (initial-letter:1 1) {
  [data-dropcaps] > :where(p:first-child)::first-letter {
    float: none;
    margin-top: calc(var(--spacing) * 0);
    initial-letter: 3;
  }
}
[data-preview] > :where(*:last-child) {
  --tw-gradient-from: transparent;
  --tw-gradient-to: var(--color-primary);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  mask-image: var(--tw-mask-linear), var(--tw-mask-radial), var(--tw-mask-conic);
  mask-composite: intersect;
  --tw-mask-linear: var(--tw-mask-left), var(--tw-mask-right), var(--tw-mask-bottom), var(--tw-mask-top);
  --tw-mask-bottom: linear-gradient(to bottom, var(--tw-mask-bottom-from-color) var(--tw-mask-bottom-from-position), var(--tw-mask-bottom-to-color) var(--tw-mask-bottom-to-position));
  --tw-mask-bottom-from-position: calc(var(--spacing) * 0);
}
/*!
* -----------------
* TABLE OF CONTENTS
* -----------------
*
* 01. Basics
* 02. Blockquote Alt
* 03. Image
* 04. Gallery
* 05. Callout
* 06. Bookmark
* 07. Product
* 08. Button
* 09. Toggle
* 10. File
* 11. Audio
* 12. Video
* 13. CTA (Call To Action)
* 14. Header
* 15. Signup
*/
.kg-width-main {
  grid-column: regular;
}
.kg-width-wide {
  grid-column: wide;
}
.kg-width-full {
  grid-column: full;
}
.kg-card svg {
  fill: currentcolor;
}
.kg-card :where(b, strong) {
  --tw-font-weight: var(--font-weight-variable);
  font-weight: var(--font-weight-variable);
}
.kg-card.kg-width-full:has(+ .kg-card.kg-width-full) {
  margin-bottom: calc(var(--spacing) * 0);
}
.kg-blockquote-alt {
  grid-column: wide;
  text-align: center;
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  --tw-leading: var(--leading-tight);
  line-height: var(--leading-tight);
  font-style: italic;
  @media (width >= 40rem) {
    font-family: var(--font-heading);
    --tw-font-weight: var(--font-weight-weight-heading);
    font-weight: var(--font-weight-weight-heading);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-heading);
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
}
.kg-image-card img {
  background-color: var(--color-secondary);
}
.kg-image-card:is(.kg-width-full, .kg-width-wide) img {
  width: 100%;
}
.kg-image-card :where(img):not(:where(.kg-width-full *)) {
  border-radius: var(--radius-custom);
}
.kg-gallery-container {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2.5);
}
.kg-gallery-row {
  display: flex;
  justify-content: center;
  gap: calc(var(--spacing) * 2.5);
}
.kg-gallery-image img {
  display: block;
  width: 100%;
  border-radius: var(--radius-custom);
  background-color: var(--color-secondary);
}
.kg-callout-card {
  display: flex;
  column-gap: calc(var(--spacing) * 3);
  border-radius: var(--radius-custom);
  padding: calc(var(--spacing) * 6);
}
.kg-callout-card-white {
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-border);
}
.kg-callout-card-grey {
  background-color: color-mix(in srgb, #000 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  &:where([data-theme="Dark"], [data-theme="Dark"] *, .dark, .dark *) {
    background-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
}
.kg-callout-card-blue {
  background-color: color-mix(in srgb, #3b82f6 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-blue) 10%, transparent);
  }
}
.kg-callout-card-green {
  background-color: color-mix(in srgb, #22c55e 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-green) 10%, transparent);
  }
}
.kg-callout-card-yellow {
  background-color: color-mix(in srgb, #eab308 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-yellow) 10%, transparent);
  }
}
.kg-callout-card-red {
  background-color: color-mix(in srgb, #ef4444 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-red) 10%, transparent);
  }
}
.kg-callout-card-pink {
  background-color: color-mix(in srgb, #ec4899 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-pink) 10%, transparent);
  }
}
.kg-callout-card-purple {
  background-color: color-mix(in srgb, #a855f7 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-purple) 10%, transparent);
  }
}
.kg-callout-card-accent {
  background-color: var(--color-accent);
  color: var(--color-contrast);
}
.kg-bookmark-container {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: var(--radius-custom);
  background-color: var(--color-secondary);
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
  @media (width >= 40rem) {
    flex-direction: row;
  }
}
.kg-bookmark-content {
  flex: 1;
  flex-basis: 100%;
  padding: calc(var(--spacing) * 6);
}
.kg-bookmark-title {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
.kg-bookmark-description {
  margin-top: calc(var(--spacing) * 1.5);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.kg-bookmark-metadata {
  margin-top: calc(var(--spacing) * 4);
  display: flex;
  width: 100%;
  align-items: center;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  white-space: nowrap;
  color: var(--color-meta);
}
.kg-bookmark-icon {
  margin-inline-end: calc(var(--spacing) * 2);
  width: calc(var(--spacing) * 5);
  height: calc(var(--spacing) * 5);
  flex-shrink: 0;
}
.kg-bookmark-author {
  --tw-font-weight: var(--font-weight-variable);
  font-weight: var(--font-weight-variable);
  color: var(--color-text);
}
.kg-bookmark-publisher {
  display: block;
  max-width: calc(var(--spacing) * 60);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.kg-bookmark-publisher:before {
  padding-inline: calc(var(--spacing) * 2);
  --tw-content: "\2022";
  content: var(--tw-content);
}
.kg-bookmark-metadata > span:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
}
.kg-bookmark-thumbnail {
  position: relative;
  aspect-ratio: var(--aspect-video);
  flex-grow: 1;
  @media not (width >= 40rem) {
    order: -9999;
  }
  @media (width >= 40rem) {
    aspect-ratio: auto;
  }
  @media (width >= 40rem) {
    min-width: calc(1/3 * 100%);
  }
}
.kg-bookmark-thumbnail img {
  position: absolute;
  inset: calc(var(--spacing) * 0);
  width: 100%;
  height: 100%;
  background-color: var(--color-tertiary);
  object-fit: cover;
}
.kg-product-card {
  display: flex;
  justify-content: center;
}
.kg-product-card-container {
  display: grid;
  width: 100%;
  max-width: var(--container-xl);
  grid-template-columns: minmax(0,1fr) minmax(0,auto);
  gap: calc(var(--spacing) * 4);
  border-radius: var(--radius-custom);
  background-color: var(--color-secondary);
  padding: calc(var(--spacing) * 6);
}
.kg-product-card-image {
  grid-column: span 2 / span 2;
  width: 100%;
  overflow: hidden;
  border-radius: var(--radius-custom);
  background-color: var(--color-tertiary);
}
.kg-product-card-title {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.kg-product-card-description {
  grid-column: span 2 / span 2;
  margin-top: calc(var(--spacing) * -2);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  &:empty {
    display: none;
  }
}
.kg-product-card-description > *:has(+ *) {
  margin-bottom: calc(var(--spacing) * 4);
}
.kg-product-card-rating {
  display: flex;
  align-items: center;
  column-gap: calc(var(--spacing) * 1);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.kg-product-card-rating > *:not(.kg-product-card-rating-active) {
  opacity: 20%;
}
.kg-product-card :where(.kg-product-card-button, .kg-product-card-btn-accent) {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  column-gap: calc(var(--spacing) * 1.5);
  border-radius: calc(infinity * 1px);
  text-align: center;
  font-family: var(--font-body);
  --tw-font-weight: var(--font-weight-weight-btn);
  font-weight: var(--font-weight-weight-btn);
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
  padding-inline: calc(var(--spacing) * 5);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  grid-column: span 2 / span 2;
  background-color: var(--color-btn);
  color: var(--color-btn-text);
}
.kg-button-card {
  display: flex;
  justify-content: center;
}
.kg-button-card.kg-align-left {
  justify-content: flex-start;
}
.kg-button-card :where(.kg-btn, .kg-btn-accent) {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  column-gap: calc(var(--spacing) * 1.5);
  border-radius: calc(infinity * 1px);
  text-align: center;
  font-family: var(--font-body);
  --tw-font-weight: var(--font-weight-weight-btn);
  font-weight: var(--font-weight-weight-btn);
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
  padding-inline: calc(var(--spacing) * 5);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  background-color: var(--color-btn);
  color: var(--color-btn-text);
}
.kg-toggle-card {
  border-radius: var(--radius-custom);
  background-color: var(--color-secondary);
  padding: calc(var(--spacing) * 6);
}
.kg-toggle-heading {
  position: relative;
  z-index: 10;
  margin: calc(var(--spacing) * -6);
  display: flex;
  cursor: pointer;
  align-items: center;
  justify-content: space-between;
  gap: calc(var(--spacing) * 6);
  padding: calc(var(--spacing) * 6);
}
.kg-toggle-heading-text {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.kg-toggle-heading-text :where(b, strong) {
  --tw-font-weight: var(--font-weight-inherit);
  font-weight: var(--font-weight-inherit);
}
.kg-toggle-content {
  height: calc(var(--spacing) * 0);
  overflow: hidden;
  opacity: 0%;
  transition-property: height,opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  interpolate-size: allow-keywords;
}
.kg-toggle-card[data-kg-toggle-state=open] .kg-toggle-content {
  height: auto;
  opacity: 100%;
}
.kg-toggle-content > * {
  margin-top: calc(var(--spacing) * 4);
}
.kg-toggle-content a {
  color: var(--color-link);
  text-decoration-line: underline;
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
}
.kg-toggle-card-icon {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.kg-toggle-heading svg {
  fill: none;
  stroke: currentcolor;
  stroke-width: 1.8;
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
}
.kg-toggle-card[data-kg-toggle-state=open] .kg-toggle-heading svg {
  rotate: calc(180deg * -1);
}
.kg-toggle-card:has(+ .kg-toggle-card) {
  margin-bottom: calc(var(--spacing) * 4);
}
.kg-file-card .kg-file-card-container {
  display: flex;
  width: 100%;
  border-radius: var(--radius-custom);
  background-color: var(--color-secondary);
  padding: calc(var(--spacing) * 4);
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
}
.kg-file-card-contents {
  flex: 1;
  padding-block: calc(var(--spacing) * 2);
  padding-inline-start: calc(var(--spacing) * 2);
  padding-inline-end: calc(var(--spacing) * 4);
}
.kg-file-card-title {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.kg-file-card-caption {
  margin-top: calc(var(--spacing) * 1.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  &:empty {
    display: none;
  }
}
.kg-file-card-metadata {
  margin-top: calc(var(--spacing) * 4);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-meta);
}
.kg-file-card-filename {
  display: inline;
  --tw-font-weight: var(--font-weight-variable);
  font-weight: var(--font-weight-variable);
  color: var(--color-text);
}
.kg-file-card-filesize {
  display: inline;
}
.kg-file-card-filesize:before {
  display: inline-block;
  padding-inline: calc(var(--spacing) * 2);
  --tw-content: "\2022";
  content: var(--tw-content);
}
.kg-file-card-icon {
  position: relative;
  display: flex;
  width: calc(var(--spacing) * 20);
  height: calc(var(--spacing) * 20);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-custom);
  background-color: var(--color-tertiary);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
}
.kg-audio-card {
  --seek-before-width: 0%;
  --volume-before-width: 100%;
  --buffered-width: 0%;
}
.kg-audio-card {
  display: flex;
  column-gap: calc(var(--spacing) * 4);
  overflow: hidden;
  border-radius: var(--radius-custom);
  background-color: var(--color-secondary);
  padding: calc(var(--spacing) * 4);
}
.kg-audio-thumbnail {
  display: flex;
  width: calc(var(--spacing) * 20);
  height: calc(var(--spacing) * 20);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  border-radius: var(--radius-custom);
  object-fit: cover;
}
.kg-audio-thumbnail.placeholder {
  background-color: var(--color-tertiary);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
}
.kg-audio-player-container {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: space-between;
  @media (width >= 40rem) {
    padding-block: calc(var(--spacing) * 1);
  }
}
.kg-audio-title {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.kg-audio-player {
  margin-top: calc(var(--spacing) * 4);
  display: flex;
  width: 100%;
  align-items: center;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-leading: 1;
  line-height: 1;
  --tw-font-weight: var(--font-weight-variable);
  font-weight: var(--font-weight-variable);
  white-space: nowrap;
}
.kg-audio-play-icon, .kg-audio-pause-icon {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.kg-audio-hide {
  display: none !important;
}
.kg-audio-current-time {
  margin-inline-start: calc(var(--spacing) * 4);
  margin-inline-end: calc(var(--spacing) * 1);
  min-width: calc(var(--spacing) * 7);
}
.kg-audio-time {
  flex: 1;
  @media (width >= 40rem) {
    flex: none;
  }
}
.kg-audio-duration {
  margin-inline-start: calc(var(--spacing) * 1);
  margin-inline-end: calc(var(--spacing) * 4);
}
.kg-audio-seek-slider {
  display: none;
  width: 100%;
  flex: 1;
  @media (width >= 40rem) {
    display: block;
  }
}
.kg-audio-playback-rate {
  margin-inline-start: calc(var(--spacing) * 2);
  margin-inline-end: calc(var(--spacing) * 4);
}
.kg-audio-mute-icon, .kg-audio-unmute-icon {
  position: relative;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.kg-audio-volume-slider {
  margin-inline-start: calc(var(--spacing) * 1);
  display: none;
  width: calc(var(--spacing) * 20);
  @media (width >= 40rem) {
    display: block;
  }
}
.kg-audio-seek-slider::before, .kg-audio-volume-slider::before {
  position: absolute;
  inset-inline-start: calc(var(--spacing) * 0);
  height: calc(var(--spacing) * 1);
  width: var(--seek-before-width);
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-accent);
  --tw-content: "";
  content: var(--tw-content);
}
.kg-audio-volume-slider::before {
  width: var(--volume-before-width);
}
.kg-audio-player-container input[type=range] {
  position: relative;
  appearance: none;
  background-color: transparent;
}
.kg-audio-player-container input[type=range]::-webkit-slider-thumb {
  appearance: none;
}
.kg-audio-player-container input[type="range"]::-webkit-slider-runnable-track {
  height: calc(var(--spacing) * 1);
  width: 100%;
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-tertiary);
}
.kg-audio-player-container input[type="range"]::-webkit-slider-thumb {
  position: relative;
  box-sizing: content-box;
  width: calc(var(--spacing) * 3.5);
  height: calc(var(--spacing) * 3.5);
  --tw-translate-y: calc(calc(50% - (calc(var(--spacing) * 1) / 2)) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 0px;
  background-color: var(--color-white);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px 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);
  --tw-shadow-color: color-mix(in srgb, 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-shadow) 10%, transparent) var(--tw-shadow-alpha), transparent);
  }
}
.kg-audio-player-container input[type="range"]:active::-webkit-slider-thumb {
  --tw-scale-x: 125%;
  --tw-scale-y: 125%;
  --tw-scale-z: 125%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
}
.kg-audio-player-container input[type="range"]::-moz-range-track {
  height: calc(var(--spacing) * 1);
  width: 100%;
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-tertiary);
}
.kg-audio-player-container input[type="range"]::-moz-range-progress {
  height: calc(var(--spacing) * 1);
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-accent);
}
.kg-audio-player-container input[type="range"]::-moz-range-thumb {
  box-sizing: content-box;
  width: calc(var(--spacing) * 3.5);
  height: calc(var(--spacing) * 3.5);
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 0px;
  background-color: var(--color-white);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px 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);
}
.kg-audio-player-container input[type="range"]:active::-moz-range-thumb {
  --tw-scale-x: 125%;
  --tw-scale-y: 125%;
  --tw-scale-z: 125%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
}
.kg-video-card {
  --seek-before-width: 0%;
  --volume-before-width: 100%;
  --buffered-width: 0%;
}
.kg-video-container {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: calc(var(--spacing) * 0) !important;
}
.kg-video-overlay {
  position: absolute;
  inset: calc(var(--spacing) * 0);
  z-index: 30;
  display: flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  --tw-gradient-position: to bottom;
  @supports (background-image: linear-gradient(in lab, red, red)) {
    --tw-gradient-position: to bottom in oklab;
  }
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: color-mix(in oklab, var(--color-black) 30%, transparent);
  --tw-gradient-to: transparent;
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  --tw-gradient-to-position: 50%;
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.kg-video-large-play-icon {
  display: flex;
  width: calc(var(--spacing) * 16);
  height: calc(var(--spacing) * 16);
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  background-color: color-mix(in srgb, #000 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
  }
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  color: var(--color-white);
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.kg-video-large-play-icon svg {
  margin-left: calc(var(--spacing) * 1);
}
.kg-video-player-container {
  position: absolute;
  bottom: calc(var(--spacing) * 0);
  z-index: 20;
  height: calc(var(--spacing) * 20);
  width: 100%;
  --tw-gradient-position: to bottom;
  @supports (background-image: linear-gradient(in lab, red, red)) {
    --tw-gradient-position: to bottom in oklab;
  }
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: transparent;
  --tw-gradient-to: color-mix(in oklab, var(--color-black) 50%, transparent);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.kg-video-player {
  position: absolute;
  bottom: calc(var(--spacing) * 0);
  z-index: 30;
  display: flex;
  width: 100%;
  align-items: center;
  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-leading: 1;
  line-height: 1;
  --tw-font-weight: var(--font-weight-variable);
  font-weight: var(--font-weight-variable);
  white-space: nowrap;
  color: var(--color-white);
}
.kg-video-play-icon, .kg-video-pause-icon {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.kg-video-hide {
  display: none !important;
}
.kg-video-hide-animated {
  visibility: hidden;
  cursor: auto;
  opacity: 0%;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.kg-video-current-time {
  margin-inline-start: calc(var(--spacing) * 4);
  margin-inline-end: calc(var(--spacing) * 1);
  min-width: calc(var(--spacing) * 7);
}
.kg-video-time {
  flex: 1;
  @media (width >= 40rem) {
    flex: none;
  }
}
.kg-video-duration {
  margin-inline-start: calc(var(--spacing) * 1);
  margin-inline-end: calc(var(--spacing) * 4);
}
.kg-video-seek-slider {
  display: none;
  width: 100%;
  flex: 1;
  @media (width >= 40rem) {
    display: block;
  }
}
.kg-video-playback-rate {
  margin-inline-start: calc(var(--spacing) * 2);
  margin-inline-end: calc(var(--spacing) * 4);
}
.kg-video-mute-icon, .kg-video-unmute-icon {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.kg-video-volume-slider {
  margin-inline-start: calc(var(--spacing) * 1);
  display: none;
  width: calc(var(--spacing) * 20);
  @media (width >= 40rem) {
    display: block;
  }
}
.kg-video-seek-slider::before, .kg-video-volume-slider::before {
  position: absolute;
  inset-inline-start: calc(var(--spacing) * 0);
  height: calc(var(--spacing) * 1);
  width: var(--seek-before-width);
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  background-color: currentcolor;
  --tw-content: "";
  content: var(--tw-content);
}
.kg-video-volume-slider::before {
  width: var(--volume-before-width);
}
.kg-video-player-container input[type=range] {
  position: relative;
  appearance: none;
  background-color: transparent;
}
.kg-video-player-container input[type=range]::-webkit-slider-thumb {
  appearance: none;
}
.kg-video-player-container input[type="range"]::-webkit-slider-runnable-track {
  height: calc(var(--spacing) * 1);
  width: 100%;
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  background-color: color-mix(in srgb, #fff 25%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-white) 25%, transparent);
  }
}
.kg-video-player-container input[type="range"]::-webkit-slider-thumb {
  position: relative;
  box-sizing: content-box;
  width: calc(var(--spacing) * 3.5);
  height: calc(var(--spacing) * 3.5);
  --tw-translate-y: calc(calc(50% - (calc(var(--spacing) * 1) / 2)) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 0px;
  background-color: currentcolor;
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px 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);
  --tw-shadow-color: color-mix(in srgb, 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-shadow) 10%, transparent) var(--tw-shadow-alpha), transparent);
  }
}
.kg-video-player-container input[type="range"]:active::-webkit-slider-thumb {
  --tw-scale-x: 125%;
  --tw-scale-y: 125%;
  --tw-scale-z: 125%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
}
.kg-video-player-container input[type="range"]::-moz-range-track {
  height: calc(var(--spacing) * 1);
  width: 100%;
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  background-color: color-mix(in srgb, #fff 25%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-white) 25%, transparent);
  }
}
.kg-video-player-container input[type="range"]::-moz-range-progress {
  height: calc(var(--spacing) * 1);
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  background-color: currentcolor;
}
.kg-video-player-container input[type="range"]::-moz-range-thumb {
  box-sizing: content-box;
  width: calc(var(--spacing) * 3.5);
  height: calc(var(--spacing) * 3.5);
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 0px;
  background-color: var(--color-white);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px 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);
}
.kg-video-player-container input[type="range"]:active::-moz-range-thumb {
  --tw-scale-x: 125%;
  --tw-scale-y: 125%;
  --tw-scale-z: 125%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
}
.kg-cta-card {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 6);
  border-radius: var(--radius-custom);
  padding: calc(var(--spacing) * 6);
}
.kg-cta-bg-none {
  padding: calc(var(--spacing) * 0);
}
.kg-cta-bg-white {
  background-color: var(--color-white);
  &:where([data-theme="Dark"], [data-theme="Dark"] *, .dark, .dark *) {
    color: var(--color-black);
  }
}
.kg-cta-bg-grey {
  background-color: color-mix(in srgb, #000 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  &:where([data-theme="Dark"], [data-theme="Dark"] *, .dark, .dark *) {
    background-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
}
.kg-cta-bg-blue {
  background-color: color-mix(in srgb, #3b82f6 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-blue) 10%, transparent);
  }
}
.kg-cta-bg-green {
  background-color: color-mix(in srgb, #22c55e 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-green) 10%, transparent);
  }
}
.kg-cta-bg-yellow {
  background-color: color-mix(in srgb, #eab308 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-yellow) 10%, transparent);
  }
}
.kg-cta-bg-red {
  background-color: color-mix(in srgb, #ef4444 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-red) 10%, transparent);
  }
}
.kg-cta-bg-pink {
  background-color: color-mix(in srgb, #ec4899 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-pink) 10%, transparent);
  }
}
.kg-cta-bg-purple {
  background-color: color-mix(in srgb, #a855f7 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-purple) 10%, transparent);
  }
}
.kg-cta-bg-none .kg-cta-sponsor-label-wrapper {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-border);
  padding-bottom: calc(var(--spacing) * 4);
}
.kg-cta-sponsor-label {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  text-transform: uppercase;
}
.kg-cta-sponsor-label a {
  color: var(--color-link);
  text-decoration-line: underline;
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
}
.kg-cta-link-accent .kg-cta-sponsor-label a {
  color: var(--color-accent);
}
.kg-cta-content {
  display: flex;
  gap: calc(var(--spacing) * 6);
}
.kg-cta-bg-none .kg-cta-content:not(.kg-cta-sponsor-label-wrapper + .kg-cta-content) {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-border);
  padding-top: calc(var(--spacing) * 6);
}
.kg-cta-bg-none .kg-cta-content {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-border);
  padding-bottom: calc(var(--spacing) * 6);
}
.kg-cta-minimal .kg-cta-content {
  flex-direction: column;
  @media (width >= 40rem) {
    flex-direction: row;
  }
}
.kg-cta-immersive .kg-cta-content {
  flex-direction: column;
}
.kg-cta-content-inner {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 6);
}
.kg-cta-immersive.kg-cta-centered .kg-cta-content-inner {
  align-items: center;
}
.kg-cta-image-container {
  flex-shrink: 0;
}
.kg-cta-image-container img {
  width: 100%;
  border-radius: var(--radius-custom);
  object-fit: cover;
}
.kg-cta-minimal .kg-cta-image-container img {
  width: calc(var(--spacing) * 20);
  height: calc(var(--spacing) * 20);
}
.kg-cta-bg-none .kg-cta-image-container img {
  background-color: var(--color-secondary);
}
.kg-cta-text {
  :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)));
  }
}
.kg-cta-immersive.kg-cta-centered .kg-cta-text {
  text-align: center;
}
.cta-link-color {
  color: var(--color-link);
  text-decoration-line: underline;
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
  color: currentcolor;
}
.kg-cta-link-accent .cta-link-color {
  color: var(--color-accent);
}
.kg-cta-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  column-gap: calc(var(--spacing) * 1.5);
  border-radius: calc(infinity * 1px);
  text-align: center;
  font-family: var(--font-body);
  --tw-font-weight: var(--font-weight-weight-btn);
  font-weight: var(--font-weight-weight-btn);
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
  padding-inline: calc(var(--spacing) * 5);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  width: fit-content;
  background-color: var(--color-btn);
  color: var(--color-btn-text);
}
.kg-cta-button.kg-style-accent {
  background-color: var(--color-btn) !important;
  color: var(--color-btn-text) !important;
}
.kg-cta-immersive.kg-cta-has-img a.kg-cta-button {
  width: 100%;
}
.kg-header-card {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-custom);
}
.kg-header-card.kg-style-accent {
  background-color: var(--color-accent);
}
.kg-header-card.kg-width-full {
  --padding: calc(var(--spacing) * 4);
  --regular: min(calc(var(--spacing) * 160), 100% - var(--padding) * 2);
  --wide: minmax(0, calc((var(--container-5xl) - var(--regular) - (var(--padding) * 2)) / 2));
  --full: minmax(var(--padding), 1fr);
  display: grid;
  width: 100%;
  grid-template-columns: [full-start] var(--full) [wide-start] var(--wide) [regular-start] var(--regular) [regular-end] var(--wide) [wide-end] var(--full) [full-end];
  :is(& > *) {
    grid-column: regular;
  }
  border-radius: 0;
}
.kg-header-card-content {
  position: relative;
  z-index: 10;
}
.kg-width-wide .kg-header-card-content {
  --padding: calc(var(--spacing) * 4);
  --regular: min(calc(var(--spacing) * 160), 100% - var(--padding) * 2);
  --wide: minmax(0, calc((var(--container-5xl) - var(--regular) - (var(--padding) * 2)) / 2));
  --full: minmax(var(--padding), 1fr);
  display: grid;
  width: 100%;
  grid-template-columns: [full-start] var(--full) [wide-start] var(--wide) [regular-start] var(--regular) [regular-end] var(--wide) [wide-end] var(--full) [full-end];
  :is(& > *) {
    grid-column: regular;
  }
}
.kg-width-full:not(.kg-content-wide) .kg-header-card-content {
  grid-column: full;
}
.kg-content-wide .kg-header-card-content {
  grid-column: wide;
  align-items: center;
}
.kg-content-wide:not(.kg-layout-split) .kg-header-card-content {
  grid-column: regular;
}
.kg-layout-split .kg-header-card-content {
  display: grid;
  @media (width >= 48rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.kg-layout-split.kg-content-wide .kg-header-card-content {
  column-gap: calc(var(--spacing) * 12);
  row-gap: calc(var(--spacing) * 12);
  padding-block: calc(var(--spacing) * 12);
  @media (width >= 40rem) {
    padding-block: calc(var(--spacing) * 20);
  }
}
.kg-header-card-text {
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 12);
}
.kg-width-wide .kg-header-card-text {
  grid-column: full;
  @media (width >= 40rem) {
    grid-column: regular;
  }
  @media (width >= 40rem) {
    padding-inline: calc(var(--spacing) * 0);
  }
  @media (width >= 40rem) {
    padding-block: calc(var(--spacing) * 20);
  }
  @media (width >= 64rem) {
    padding-block: calc(var(--spacing) * 24);
  }
}
.kg-width-full .kg-header-card-text {
  @media (width >= 40rem) {
    padding-block: calc(var(--spacing) * 20);
  }
  @media (width >= 64rem) {
    padding-block: calc(var(--spacing) * 36);
  }
}
.kg-width-full:not(.kg-layout-split) .kg-header-card-text {
  padding-inline: calc(var(--spacing) * 0);
}
.kg-layout-split:not(.kg-content-wide) .kg-header-card-text {
  padding-inline: calc(var(--spacing) * 4);
  @media (width >= 40rem) {
    padding-inline: calc(var(--spacing) * 6);
  }
}
.kg-layout-split.kg-content-wide .kg-header-card-text {
  padding: calc(var(--spacing) * 0);
}
.kg-swapped .kg-header-card-text {
  order: -9999;
}
.kg-header-card-text.kg-align-center {
  text-align: center;
}
.kg-header-card-image {
  aspect-ratio: var(--aspect-video);
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.kg-layout-split .kg-header-card-image {
  background-color: color-mix(in srgb, #fff 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
  }
}
.kg-layout-split.kg-content-wide .kg-header-card-image {
  aspect-ratio: auto;
  height: auto;
  border-radius: var(--radius-custom);
}
.kg-header-card:not(.kg-layout-split) .kg-header-card-image {
  pointer-events: none;
  position: absolute;
  top: calc(var(--spacing) * 0);
  left: calc(var(--spacing) * 0);
  aspect-ratio: auto;
}
.kg-header-card-heading {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
}
.kg-header-card:not(.kg-width-regular) .kg-header-card-heading {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  @media (width >= 64rem) {
    font-family: var(--font-heading);
    --tw-font-weight: var(--font-weight-weight-heading);
    font-weight: var(--font-weight-weight-heading);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-heading);
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
}
.kg-style-accent .kg-header-card-heading {
  color: var(--color-contrast) !important;
}
.kg-header-card-subheading {
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  @media (width >= 48rem) {
    text-wrap: balance;
  }
}
.kg-style-accent .kg-header-card-subheading {
  color: var(--color-contrast) !important;
}
.kg-header-card-heading + .kg-header-card-subheading {
  margin-top: calc(var(--spacing) * 4);
}
.kg-header-card-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  column-gap: calc(var(--spacing) * 1.5);
  border-radius: calc(infinity * 1px);
  text-align: center;
  font-family: var(--font-body);
  --tw-font-weight: var(--font-weight-weight-btn);
  font-weight: var(--font-weight-weight-btn);
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
  padding-inline: calc(var(--spacing) * 5);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  background-color: var(--color-btn);
  color: var(--color-btn-text);
}
.kg-header-card-button.kg-style-accent {
  background-color: var(--color-btn) !important;
  color: var(--color-btn-text) !important;
}
.kg-header-card-text > * + .kg-header-card-button {
  margin-top: calc(var(--spacing) * 8);
}
.kg-signup-card {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-custom);
}
.kg-signup-card.kg-style-accent {
  background-color: var(--color-accent);
}
.kg-signup-card.kg-width-full {
  --padding: calc(var(--spacing) * 4);
  --regular: min(calc(var(--spacing) * 160), 100% - var(--padding) * 2);
  --wide: minmax(0, calc((var(--container-5xl) - var(--regular) - (var(--padding) * 2)) / 2));
  --full: minmax(var(--padding), 1fr);
  display: grid;
  width: 100%;
  grid-template-columns: [full-start] var(--full) [wide-start] var(--wide) [regular-start] var(--regular) [regular-end] var(--wide) [wide-end] var(--full) [full-end];
  :is(& > *) {
    grid-column: regular;
  }
  border-radius: 0;
}
.kg-signup-card-content {
  position: relative;
  z-index: 10;
}
.kg-width-wide .kg-signup-card-content {
  --padding: calc(var(--spacing) * 4);
  --regular: min(calc(var(--spacing) * 160), 100% - var(--padding) * 2);
  --wide: minmax(0, calc((var(--container-5xl) - var(--regular) - (var(--padding) * 2)) / 2));
  --full: minmax(var(--padding), 1fr);
  display: grid;
  width: 100%;
  grid-template-columns: [full-start] var(--full) [wide-start] var(--wide) [regular-start] var(--regular) [regular-end] var(--wide) [wide-end] var(--full) [full-end];
  :is(& > *) {
    grid-column: regular;
  }
}
.kg-width-full:not(.kg-content-wide) .kg-signup-card-content {
  grid-column: full;
}
.kg-content-wide .kg-signup-card-content {
  grid-column: wide;
  align-items: center;
}
.kg-content-wide:not(.kg-layout-split) .kg-signup-card-content {
  grid-column: regular;
}
.kg-layout-split .kg-signup-card-content {
  display: grid;
  @media (width >= 48rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.kg-layout-split.kg-content-wide .kg-signup-card-content {
  column-gap: calc(var(--spacing) * 12);
  row-gap: calc(var(--spacing) * 12);
  padding-block: calc(var(--spacing) * 12);
  @media (width >= 40rem) {
    padding-block: calc(var(--spacing) * 20);
  }
}
.kg-signup-card-text {
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 12);
}
.kg-width-wide .kg-signup-card-text {
  grid-column: full;
  @media (width >= 40rem) {
    grid-column: regular;
  }
  @media (width >= 40rem) {
    padding-inline: calc(var(--spacing) * 0);
  }
  @media (width >= 40rem) {
    padding-block: calc(var(--spacing) * 20);
  }
  @media (width >= 64rem) {
    padding-block: calc(var(--spacing) * 24);
  }
}
.kg-width-full .kg-signup-card-text {
  @media (width >= 40rem) {
    padding-block: calc(var(--spacing) * 20);
  }
  @media (width >= 64rem) {
    padding-block: calc(var(--spacing) * 36);
  }
}
.kg-width-full:not(.kg-layout-split) .kg-signup-card-text {
  padding-inline: calc(var(--spacing) * 0);
}
.kg-layout-split:not(.kg-content-wide) .kg-signup-card-text {
  padding-inline: calc(var(--spacing) * 4);
  @media (width >= 40rem) {
    padding-inline: calc(var(--spacing) * 6);
  }
}
.kg-layout-split.kg-content-wide .kg-signup-card-text {
  padding: calc(var(--spacing) * 0);
}
.kg-swapped .kg-signup-card-text {
  order: -9999;
}
.kg-signup-card-text.kg-align-center {
  text-align: center;
}
.kg-signup-card-image {
  aspect-ratio: var(--aspect-video);
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.kg-layout-split.kg-content-wide .kg-signup-card-image {
  aspect-ratio: auto;
  height: auto;
  border-radius: var(--radius-custom);
}
.kg-signup-card:not(.kg-layout-split) .kg-signup-card-image {
  pointer-events: none;
  position: absolute;
  top: calc(var(--spacing) * 0);
  left: calc(var(--spacing) * 0);
  aspect-ratio: auto;
}
.kg-signup-card-heading {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
}
.kg-signup-card:not(.kg-width-regular) .kg-signup-card-heading {
  font-family: var(--font-heading);
  --tw-font-weight: var(--font-weight-weight-heading);
  font-weight: var(--font-weight-weight-heading);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-heading);
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  @media (width >= 64rem) {
    font-family: var(--font-heading);
    --tw-font-weight: var(--font-weight-weight-heading);
    font-weight: var(--font-weight-weight-heading);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-heading);
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
}
.kg-style-accent .kg-signup-card-heading {
  color: var(--color-contrast) !important;
}
.kg-signup-card-subheading {
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  @media (width >= 48rem) {
    text-wrap: balance;
  }
}
.kg-style-accent .kg-signup-card-subheading {
  color: var(--color-contrast) !important;
}
.kg-signup-card-heading + .kg-signup-card-subheading {
  margin-top: calc(var(--spacing) * 4);
}
.kg-signup-card-form {
  display: flex;
  width: 100%;
  flex-direction: column;
}
.kg-align-center .kg-signup-card-form {
  align-items: center;
}
.kg-signup-card-text > * + .kg-signup-card-form {
  margin-top: calc(var(--spacing) * 8);
}
.kg-signup-card-fields {
  display: flex;
  width: 100%;
  max-width: var(--container-lg);
  column-gap: calc(var(--spacing) * 1);
  border-radius: calc(infinity * 1px);
  background-color: var(--color-primary);
  padding: calc(var(--spacing) * 1);
}
.kg-signup-card-input {
  width: 100%;
  border-radius: calc(infinity * 1px);
  background-color: transparent;
  padding-inline: calc(var(--spacing) * 4);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  color: var(--color-text);
  &::placeholder {
    color: currentcolor;
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, currentcolor 60%, transparent);
    }
  }
}
.kg-signup-card-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  column-gap: calc(var(--spacing) * 1.5);
  border-radius: calc(infinity * 1px);
  text-align: center;
  font-family: var(--font-body);
  --tw-font-weight: var(--font-weight-weight-btn);
  font-weight: var(--font-weight-weight-btn);
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
  padding-inline: calc(var(--spacing) * 5);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  background-color: var(--color-btn);
  color: var(--color-btn-text);
}
.kg-signup-card-button.kg-style-accent {
  background-color: var(--color-btn) !important;
  color: var(--color-btn-text) !important;
}
.kg-signup-card-button-loading {
  visibility: hidden;
  position: absolute;
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.kg-signup-card-form.loading .kg-signup-card-button-default {
  visibility: hidden;
}
.kg-signup-card-form.loading .kg-signup-card-button-loading {
  visibility: visible;
}
.kg-signup-card-form :where(.kg-signup-card-success, .kg-signup-card-error) {
  margin-top: calc(var(--spacing) * 4);
  display: none;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.kg-style-accent :where(.kg-signup-card-success, .kg-signup-card-error) {
  color: var(--color-contrast) !important;
}
.kg-signup-card-form :where(.success .kg-signup-card-success, .error .kg-signup-card-error) {
  display: block;
}
.kg-signup-card-disclaimer {
  margin-top: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.kg-style-accent .kg-signup-card-disclaimer {
  color: var(--color-contrast) !important;
}
.kg-signup-card-text:has(.success, .error) .kg-signup-card-disclaimer {
  display: none;
}
:root {
  .gh-announcement-bar {
    z-index: 30;
    min-height: auto;
    background-color: var(--topbar-bg) !important;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    padding-inline-end: calc(var(--spacing) * 12);
    text-align: center;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-variable);
    font-weight: var(--font-weight-variable);
  }
  .gh-announcement-bar.dark {
    color: var(--color-white);
    --topbar-bg: var(--color-black);
  }
  .gh-announcement-bar.light {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-border);
    color: var(--color-text);
    --topbar-bg: var(--color-transparent);
  }
  .gh-announcement-bar.accent {
    color: var(--color-contrast);
    --topbar-bg: var(--color-accent);
  }
  .gh-announcement-bar p[dir="ltr"] {
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      direction: rtl;
    }
  }
  .gh-announcement-bar a {
    --tw-font-weight: var(--font-weight-variable);
    font-weight: var(--font-weight-variable);
    color: var(--color-link);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
    color: currentcolor;
    text-decoration-line: underline;
  }
  .gh-announcement-bar.light a {
    color: currentcolor !important;
  }
  .gh-announcement-bar button {
    position: absolute;
    top: auto;
    right: calc(var(--spacing) * 0);
    margin-block: calc(var(--spacing) * 0);
    margin-inline-end: calc(var(--spacing) * 4);
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    border-radius: calc(infinity * 1px);
    color: currentcolor !important;
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      right: auto;
    }
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      left: calc(var(--spacing) * 0);
    }
  }
  .gh-announcement-bar svg {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
    path {
      stroke: transparent;
    }
  }
}
.pswp {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999999;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  font-family: var(--font-body);
  color: var(--color-white);
  backface-visibility: hidden;
  touch-action: none;
  outline: none;
}
.pswp img {
  max-width: none;
}
.pswp--animate_opacity {
  opacity: 0.001;
  transition: opacity 300ms var(--default-transition-timing-function);
  will-change: opacity;
}
.pswp--open {
  display: block;
}
.pswp--zoom-allowed .pswp__img {
  cursor: zoom-in;
}
.pswp--zoomed-in .pswp__img {
  cursor: grab;
}
.pswp--dragging .pswp__img {
  cursor: grabbing;
}
.pswp__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-overlay);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-overlay) 90%, transparent);
  }
  backdrop-filter: blur(var(--blur-xs));
  opacity: 0;
  transition: opacity 300ms var(--default-transition-timing-function);
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: opacity;
}
.pswp__scroll-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.pswp__container, .pswp__zoom-wrap {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  touch-action: none;
  backface-visibility: hidden;
}
.pswp__container, .pswp__img {
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}
.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  transition: transform 300ms var(--default-transition-timing-function);
  transform-origin: left top;
  transform: translateZ(0);
}
.pswp--animated-in :where(.pswp__bg, .pswp__zoom-wrap) {
  transition: none;
}
.pswp__item {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
}
.pswp__img {
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
}
.pswp__img--placeholder {
  background-color: color-mix(in srgb, #fff 1%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-white) 1%, transparent);
  }
  backface-visibility: hidden;
}
.pswp__img--placeholder--blank {
  background: var(--color-overlay);
}
.pswp--ie .pswp__img {
  top: 0;
  left: 0;
  width: 100% !important;
  height: auto !important;
}
.pswp__error-msg {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  font-size: var(--text-sm);
  line-height: var(--text-sm--line-height);
  text-align: center;
  transform: translateY(-50%);
}
.pswp__error-msg a {
  text-decoration: underline;
}
.pswp__button {
  position: relative;
  display: flex;
  align-items: center;
  height: calc(var(--spacing) * 12);
  font-size: var(--text-2xl);
  transition: opacity var(--default-transition-duration) var(--default-transition-timing-function);
}
.pswp__button svg {
  pointer-events: none;
}
.pswp__button:is(:focus, :hover) {
  opacity: .5;
}
.pswp__ui--over-close .pswp__button--close {
  opacity: 1;
}
.pswp__button--close {
  padding: 0 calc(var(--spacing) * 4);
}
.pswp--touch :where(.pswp__button--arrow--left, .pswp__button--arrow--right) {
  visibility: hidden;
}
.pswp__button--arrow--left, .pswp__button--arrow--right {
  position: absolute;
  top: 50%;
  width: auto;
  height: calc(var(--spacing) * 20);
  padding: 0 calc(var(--spacing) * 4);
  transform: translateY(-50%);
}
.pswp__button--arrow--left {
  left: 0;
}
.pswp__button--arrow--right {
  right: 0;
}
.pswp__counter {
  display: flex;
  align-items: center;
  height: calc(var(--spacing) * 12);
  font-size: var(--text-sm);
  line-height: var(--text-sm--line-height);
  font-weight: var(--font-weight-weight-body);
  padding: 0 calc(var(--spacing) * 4);
  user-select: none;
}
.pswp__preloader {
  display: flex;
  justify-content: center;
  align-items: center;
  grid-column-start: 2;
  height: calc(var(--spacing) * 12);
  font-size: var(--text-2xl);
  opacity: 0;
  transition: opacity 300ms ease-out;
  will-change: opacity;
}
.pswp__preloader--active {
  opacity: 1;
}
.pswp--css_animation .pswp__preloader--active {
  opacity: 1;
}
.pswp__close {
  display: flex;
  justify-content: end;
  grid-column-start: 3;
}
.pswp__ui {
  z-index: 9999;
  visibility: visible;
  opacity: 1;
  -webkit-font-smoothing: auto;
}
.pswp__top-bar {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(var(--spacing) * 12);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.pswp__top-bar, .pswp--has_mouse :where(.pswp__button--arrow--left, .pswp__button--arrow--right) {
  backface-visibility: hidden;
  transition: opacity 300ms var(--default-transition-timing-function);
  will-change: opacity;
}
.pswp--has_mouse :where(.pswp__button--arrow--left, .pswp__button--arrow--right) {
  visibility: visible;
}
.pswp__ui--idle :where(.pswp__top-bar, .pswp__button--arrow--left, .pswp__button--arrow--right) {
  opacity: 0;
}
.pswp__ui--hidden :where(.pswp__top-bar, .pswp__button--arrow--left, .pswp__button--arrow--right) {
  opacity: 0.001;
}
.pswp__ui--one-slide :where(.pswp__button--arrow--left, .pswp__button--arrow--right, .pswp__counter) {
  display: none;
}
.pswp__element--disabled {
  display: none !important;
}
.pswp--zoomed-in :where(.pswp__button, .pswp__counter, .pswp__preloader) {
  filter: drop-shadow(0 0 calc(var(--spacing) * 2) var(--color-shadow));
}
.gh-header-hero-wrapper {
  background-color: #e0f7f4;
  background-image: url("data:image/svg+xml,%3Csvg width='1600' height='900' viewBox='0 0 1600 900' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='100%25' height='100%25' fill='%23e0f7f4'/%3E%3Cdefs%3E%3ClinearGradient id='grad1' x1='0%25' y1='0%25' x2='100%25' y2='100%25'%3E%3Cstop offset='0%25' style='stop-color:%23b2d8d8; stop-opacity:0.6' /%3E%3Cstop offset='100%25' style='stop-color:%2392c5c5; stop-opacity:0' /%3E%3C/linearGradient%3E%3ClinearGradient id='grad2' x1='100%25' y1='0%25' x2='0%25' y2='100%25'%3E%3Cstop offset='0%25' style='stop-color:%23ffffff; stop-opacity:0.8' /%3E%3Cstop offset='100%25' style='stop-color:%23f1fcf8; stop-opacity:0' /%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M400,0 L1600,0 L1600,600 Z' fill='url(%23grad1)' /%3E%3Cpath d='M0,0 L900,0 L100,500 L0,900 Z' fill='url(%23grad2)' /%3E%3C/svg%3E");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}
.gh-header-hero-wrapper .navbar {
  background-color: transparent !important;
}
[data-ghost-search], [data-theme-toggle] {
  background-color: #0f3b5a !important;
  color: white !important;
  border-radius: 9999px;
  padding: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease;
}
[data-ghost-search]:hover, [data-theme-toggle]:hover {
  opacity: 0.8;
}
[data-ghost-search] svg, [data-theme-toggle] svg {
  color: white !important;
  stroke: white !important;
}
.hero-feature-image {
  display: block;
  margin: 0 auto !important;
  width: 140px;
  height: auto;
  border-radius: 0 !important;
  background-color: transparent !important;
  box-shadow: none !important;
}
.home-hero h1, .home-hero h3, .home-hero p {
  color: var(--base);
}
.home-template nav {
  @media (min-width: 1024px) {
    color: var(--base);
  }
}
.home-hero h1 mark {
  background: transparent;
  color: var(--ghost-accent-color);
}
.hero-mobile-br {
  display: none;
}
.hero-mobile-space {
  display: inline;
}
@media (max-width: 1023px) {
  .hero-mobile-br {
    display: block;
    height: 0;
  }
  .hero-mobile-space {
    display: none;
  }
}
.home-hero h3 mark {
  background: transparent;
  color: #dcb720;
}
.home-hero p {
  opacity: 0.7;
}
.footer {
  background-color: #0f3b5a !important;
  color: #ffffff !important;
}
.footer .heading-2xl, .footer .heading-4xl, .footer .brand-name {
  color: #ffffff !important;
}
.text-brand-gold {
  color: #dcb720 !important;
}
.footer-brand-icon picture {
  opacity: 1 !important;
  filter: none !important;
  margin: 0 auto;
}
.footer .tagline {
  font-style: italic;
  opacity: 0.9;
}
.social-links a {
  transition: transform 0.2s ease, color 0.2s ease;
}
.social-links a:hover {
  transform: translateY(-2px);
  color: var(--ghost-accent-color) !important;
}
.footer .btn-base.var-accent, .footer .btn-lg.var-accent {
  background-color: var(--accent) !important;
  color: var(--contrast) !important;
  font-weight: 700;
}
.call-out-section {
  border-top: 1px solid rgba(15, 59, 90, 0.05);
  border-bottom: 1px solid rgba(15, 59, 90, 0.05);
  position: relative;
  overflow: hidden;
}
.call-out-section .container {
  position: relative;
  z-index: 10;
}
.call-out-section .heading-2xl {
  color: var(--heading) !important;
  font-style: normal;
  font-weight: 600;
  line-height: 1.3;
}
@media (max-width: 767px) {
  .heading-2xl, .prose h3 {
    font-size: 1.25rem !important;
  }
  .heading-3xl, .prose h2 {
    font-size: 1.45rem !important;
  }
  .heading-4xl, .prose h1 {
    font-size: 1.75rem !important;
  }
  .heading-5xl {
    font-size: 2rem !important;
  }
  .prose p, .prose li, .prose {
    font-size: 1rem !important;
    line-height: 1.5 !important;
  }
  .call-out-section .prose p {
    font-size: 1.25rem !important;
  }
  .heading-lg {
    font-size: 1.05rem !important;
  }
  .tagline {
    font-size: 1rem !important;
  }
  .fancy-title {
    font-size: 0.65rem !important;
    letter-spacing: 0.05em;
  }
  .py-28 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .py-20 {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
  }
  .bg-secondary .heading-2xl, .bg-secondary .prose h3 {
    line-height: 1.4 !important;
  }
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-content {
  syntax: "*";
  initial-value: "";
  inherits: false;
}
@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-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-leading {
  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-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-mask-linear {
  syntax: "*";
  inherits: false;
  initial-value: linear-gradient(#fff, #fff);
}
@property --tw-mask-radial {
  syntax: "*";
  inherits: false;
  initial-value: linear-gradient(#fff, #fff);
}
@property --tw-mask-conic {
  syntax: "*";
  inherits: false;
  initial-value: linear-gradient(#fff, #fff);
}
@property --tw-mask-left {
  syntax: "*";
  inherits: false;
  initial-value: linear-gradient(#fff, #fff);
}
@property --tw-mask-right {
  syntax: "*";
  inherits: false;
  initial-value: linear-gradient(#fff, #fff);
}
@property --tw-mask-bottom {
  syntax: "*";
  inherits: false;
  initial-value: linear-gradient(#fff, #fff);
}
@property --tw-mask-top {
  syntax: "*";
  inherits: false;
  initial-value: linear-gradient(#fff, #fff);
}
@property --tw-mask-bottom-from-position {
  syntax: "*";
  inherits: false;
  initial-value: 0%;
}
@property --tw-mask-bottom-to-position {
  syntax: "*";
  inherits: false;
  initial-value: 100%;
}
@property --tw-mask-bottom-from-color {
  syntax: "*";
  inherits: false;
  initial-value: black;
}
@property --tw-mask-bottom-to-color {
  syntax: "*";
  inherits: false;
  initial-value: transparent;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(calc(var(--spacing) * 2));
  }
  100% {
    opacity: 1;
    transform: translateY(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-font-weight: initial;
      --tw-content: "";
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-border-style: solid;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-tracking: initial;
      --tw-leading: 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-duration: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-mask-linear: linear-gradient(#fff, #fff);
      --tw-mask-radial: linear-gradient(#fff, #fff);
      --tw-mask-conic: linear-gradient(#fff, #fff);
      --tw-mask-left: linear-gradient(#fff, #fff);
      --tw-mask-right: linear-gradient(#fff, #fff);
      --tw-mask-bottom: linear-gradient(#fff, #fff);
      --tw-mask-top: linear-gradient(#fff, #fff);
      --tw-mask-bottom-from-position: 0%;
      --tw-mask-bottom-to-position: 100%;
      --tw-mask-bottom-from-color: black;
      --tw-mask-bottom-to-color: transparent;
    }
  }
}