@layer base, layouts, views, utilities;
@layer base {
  :root {
    --text-2xs: 0.75rem;
    --text-2xs-xs: clamp(0.75rem, 0.0833333333vw + 0.725rem, 0.875rem);
    --text-2xs-sm: clamp(0.75rem, 0.1666666667vw + 0.7rem, 1rem);
    --text-2xs-md: clamp(0.75rem, 0.25vw + 0.675rem, 1.125rem);
    --text-2xs-lg: clamp(0.75rem, 0.3333333333vw + 0.65rem, 1.25rem);
    --text-2xs-xl: clamp(0.75rem, 0.5vw + 0.6rem, 1.5rem);
    --text-2xs-2xl: clamp(0.75rem, 0.8333333333vw + 0.5rem, 2rem);
    --text-2xs-3xl: clamp(0.75rem, 1.5vw + 0.3rem, 3rem);
    --text-2xs-4xl: clamp(0.75rem, 2.1666666667vw + 0.1rem, 4rem);
    --text-2xs-5xl: clamp(0.75rem, 2.5vw + 0rem, 4.5rem);
    --text-xs: 0.875rem;
    --text-xs-sm: clamp(0.875rem, 0.0833333333vw + 0.85rem, 1rem);
    --text-xs-md: clamp(0.875rem, 0.1666666667vw + 0.825rem, 1.125rem);
    --text-xs-lg: clamp(0.875rem, 0.25vw + 0.8rem, 1.25rem);
    --text-xs-xl: clamp(0.875rem, 0.4166666667vw + 0.75rem, 1.5rem);
    --text-xs-2xl: clamp(0.875rem, 0.75vw + 0.65rem, 2rem);
    --text-xs-3xl: clamp(0.875rem, 1.4166666667vw + 0.45rem, 3rem);
    --text-xs-4xl: clamp(0.875rem, 2.0833333333vw + 0.25rem, 4rem);
    --text-xs-5xl: clamp(0.875rem, 2.4166666667vw + 0.15rem, 4.5rem);
    --text-sm: 1rem;
    --text-sm-md: clamp(1rem, 0.0833333333vw + 0.975rem, 1.125rem);
    --text-sm-lg: clamp(1rem, 0.1666666667vw + 0.95rem, 1.25rem);
    --text-sm-xl: clamp(1rem, 0.3333333333vw + 0.9rem, 1.5rem);
    --text-sm-2xl: clamp(1rem, 0.6666666667vw + 0.8rem, 2rem);
    --text-sm-3xl: clamp(1rem, 1.3333333333vw + 0.6rem, 3rem);
    --text-sm-4xl: clamp(1rem, 2vw + 0.4rem, 4rem);
    --text-sm-5xl: clamp(1rem, 2.3333333333vw + 0.3rem, 4.5rem);
    --text-md: 1.125rem;
    --text-md-lg: clamp(1.125rem, 0.0833333333vw + 1.1rem, 1.25rem);
    --text-md-xl: clamp(1.125rem, 0.25vw + 1.05rem, 1.5rem);
    --text-md-2xl: clamp(1.125rem, 0.5833333333vw + 0.95rem, 2rem);
    --text-md-3xl: clamp(1.125rem, 1.25vw + 0.75rem, 3rem);
    --text-md-4xl: clamp(1.125rem, 1.9166666667vw + 0.55rem, 4rem);
    --text-md-5xl: clamp(1.125rem, 2.25vw + 0.45rem, 4.5rem);
    --text-lg: 1.25rem;
    --text-lg-xl: clamp(1.25rem, 0.1666666667vw + 1.2rem, 1.5rem);
    --text-lg-2xl: clamp(1.25rem, 0.5vw + 1.1rem, 2rem);
    --text-lg-3xl: clamp(1.25rem, 1.1666666667vw + 0.9rem, 3rem);
    --text-lg-4xl: clamp(1.25rem, 1.8333333333vw + 0.7rem, 4rem);
    --text-lg-5xl: clamp(1.25rem, 2.1666666667vw + 0.6rem, 4.5rem);
    --text-xl: 1.5rem;
    --text-xl-2xl: clamp(1.5rem, 0.3333333333vw + 1.4rem, 2rem);
    --text-xl-3xl: clamp(1.5rem, 1vw + 1.2rem, 3rem);
    --text-xl-4xl: clamp(1.5rem, 1.6666666667vw + 1rem, 4rem);
    --text-xl-5xl: clamp(1.5rem, 2vw + 0.9rem, 4.5rem);
    --text-2xl: 2rem;
    --text-2xl-3xl: clamp(2rem, 0.6666666667vw + 1.8rem, 3rem);
    --text-2xl-4xl: clamp(2rem, 1.3333333333vw + 1.6rem, 4rem);
    --text-2xl-5xl: clamp(2rem, 1.6666666667vw + 1.5rem, 4.5rem);
    --text-3xl: 3rem;
    --text-3xl-4xl: clamp(3rem, 0.6666666667vw + 2.8rem, 4rem);
    --text-3xl-5xl: clamp(3rem, 1vw + 2.7rem, 4.5rem);
    --text-4xl: 4rem;
    --text-4xl-5xl: clamp(4rem, 0.3333333333vw + 3.9rem, 4.5rem);
    --text-5xl: 4.5rem;
    --space-2xs: 0.75rem;
    --space-2xs-xs: clamp(0.75rem, 0.1666666667vw + 0.7rem, 1rem);
    --space-2xs-sm: clamp(0.75rem, 0.5vw + 0.6rem, 1.5rem);
    --space-2xs-md: clamp(0.75rem, 1.5vw + 0.3rem, 3rem);
    --space-2xs-lg: clamp(0.75rem, 2.1666666667vw + 0.1rem, 4rem);
    --space-2xs-xl: clamp(0.75rem, 2.8333333333vw + -0.1rem, 5rem);
    --space-2xs-2xl: clamp(0.75rem, 3.5vw + -0.3rem, 6rem);
    --space-2xs-3xl: clamp(0.75rem, 4.8333333333vw + -0.7rem, 8rem);
    --space-2xs-4xl: clamp(0.75rem, 7.5vw + -1.5rem, 12rem);
    --space-2xs-5xl: clamp(0.75rem, 10.1666666667vw + -2.3rem, 16rem);
    --space-xs: 1rem;
    --space-xs-sm: clamp(1rem, 0.3333333333vw + 0.9rem, 1.5rem);
    --space-xs-md: clamp(1rem, 1.3333333333vw + 0.6rem, 3rem);
    --space-xs-lg: clamp(1rem, 2vw + 0.4rem, 4rem);
    --space-xs-xl: clamp(1rem, 2.6666666667vw + 0.2rem, 5rem);
    --space-xs-2xl: clamp(1rem, 3.3333333333vw + 0rem, 6rem);
    --space-xs-3xl: clamp(1rem, 4.6666666667vw + -0.4rem, 8rem);
    --space-xs-4xl: clamp(1rem, 7.3333333333vw + -1.2rem, 12rem);
    --space-xs-5xl: clamp(1rem, 10vw + -2rem, 16rem);
    --space-sm: 1.5rem;
    --space-sm-md: clamp(1.5rem, 1vw + 1.2rem, 3rem);
    --space-sm-lg: clamp(1.5rem, 1.6666666667vw + 1rem, 4rem);
    --space-sm-xl: clamp(1.5rem, 2.3333333333vw + 0.8rem, 5rem);
    --space-sm-2xl: clamp(1.5rem, 3vw + 0.6rem, 6rem);
    --space-sm-3xl: clamp(1.5rem, 4.3333333333vw + 0.2rem, 8rem);
    --space-sm-4xl: clamp(1.5rem, 7vw + -0.6rem, 12rem);
    --space-sm-5xl: clamp(1.5rem, 9.6666666667vw + -1.4rem, 16rem);
    --space-md: 3rem;
    --space-md-lg: clamp(3rem, 0.6666666667vw + 2.8rem, 4rem);
    --space-md-xl: clamp(3rem, 1.3333333333vw + 2.6rem, 5rem);
    --space-md-2xl: clamp(3rem, 2vw + 2.4rem, 6rem);
    --space-md-3xl: clamp(3rem, 3.3333333333vw + 2rem, 8rem);
    --space-md-4xl: clamp(3rem, 6vw + 1.2rem, 12rem);
    --space-md-5xl: clamp(3rem, 8.6666666667vw + 0.4rem, 16rem);
    --space-lg: 4rem;
    --space-lg-xl: clamp(4rem, 0.6666666667vw + 3.8rem, 5rem);
    --space-lg-2xl: clamp(4rem, 1.3333333333vw + 3.6rem, 6rem);
    --space-lg-3xl: clamp(4rem, 2.6666666667vw + 3.2rem, 8rem);
    --space-lg-4xl: clamp(4rem, 5.3333333333vw + 2.4rem, 12rem);
    --space-lg-5xl: clamp(4rem, 8vw + 1.6rem, 16rem);
    --space-xl: 5rem;
    --space-xl-2xl: clamp(5rem, 0.6666666667vw + 4.8rem, 6rem);
    --space-xl-3xl: clamp(5rem, 2vw + 4.4rem, 8rem);
    --space-xl-4xl: clamp(5rem, 4.6666666667vw + 3.6rem, 12rem);
    --space-xl-5xl: clamp(5rem, 7.3333333333vw + 2.8rem, 16rem);
    --space-2xl: 6rem;
    --space-2xl-3xl: clamp(6rem, 1.3333333333vw + 5.6rem, 8rem);
    --space-2xl-4xl: clamp(6rem, 4vw + 4.8rem, 12rem);
    --space-2xl-5xl: clamp(6rem, 6.6666666667vw + 4rem, 16rem);
    --space-3xl: 8rem;
    --space-3xl-4xl: clamp(8rem, 2.6666666667vw + 7.2rem, 12rem);
    --space-3xl-5xl: clamp(8rem, 5.3333333333vw + 6.4rem, 16rem);
    --space-4xl: 12rem;
    --space-4xl-5xl: clamp(12rem, 2.6666666667vw + 11.2rem, 16rem);
    --space-5xl: 16rem;
    --space-3xs: 0.25rem;
    --space-3xs-2xs: clamp(0.25rem, 0.3333333333vw + 0.15rem, 0.75rem);
    --space-3xs-xs: clamp(0.25rem, 0.5vw + 0.1rem, 1rem);
    --space-3xs-sm: clamp(0.25rem, 0.8333333333vw + 0rem, 1.5rem);
    --space-3xs-md: clamp(0.25rem, 1.8333333333vw + -0.3rem, 3rem);
    --space-3xs-lg: clamp(0.25rem, 2.5vw + -0.5rem, 4rem);
    --space-3xs-xl: clamp(0.25rem, 3.1666666667vw + -0.7rem, 5rem);
    --space-3xs-2xl: clamp(0.25rem, 3.8333333333vw + -0.9rem, 6rem);
    --space-3xs-3xl: clamp(0.25rem, 5.1666666667vw + -1.3rem, 8rem);
    --space-3xs-4xl: clamp(0.25rem, 7.8333333333vw + -2.1rem, 12rem);
    --space-3xs-5xl: clamp(0.25rem, 10.5vw + -2.9rem, 16rem);
    --opacity-50: 0.5;
    --opacity-70: 0.7;
    --opacity-80: 0.8;
    --opacity-90: 0.9;
    --radius-xs: 0.125rem;
    --radius-sm: 0.25rem;
    --radius-md: 0.5rem;
    --radius-lg: 1rem;
    --radius-max: 9rem;
    --z-100: 100;
    --z-200: 200;
    --z-300: 300;
    --z-400: 400;
    --z-500: 500;
    --z-max: 900;
    --color-white: hsl(0, 0%, 100%);
    --color-black: #282828;
    --color-light-gray: rgba(40, 40, 40, 0.1);
    --color-trans-black: rgb(from var(--color-black) r g b/10%);
    --color-gray: #adadad;
    --color-muted: #fbf9f7;
    --color-muted-dark: #f2eeea;
    --color-muted-darker: #ece8e3;
    --color-primary: #FDCB00;
    --focus-ring-width: 0.125rem;
    --focus-ring-color: currentColor;
    --focus-ring-offset: 0.125rem;
    --focus-ring-style: solid;
    --font-sans: "Switzer Variable", system-ui, sans-serif;
    --font-serif: serif;
    --font-mono: monospace;
    --font-light: 300;
    --font-regular: 400;
    --font-medium: 500;
    --font-semibold: 600;
    --font-bold: 700;
    --tracking-xs: -0.04em;
    --tracking-sm: -0.02em;
    --tracking-lg: 0.02em;
    --tracking-xl: 0.04em;
    --leading-xs: 1.1;
    --leading-sm: 1.3;
    --leading-md: 1.5;
    --leading-lg: 1.7;
  }
  *,
  *::before,
  *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  html {
    scroll-behavior: smooth;
    -moz-text-size-adjust: none;
    -webkit-text-size-adjust: none;
    text-size-adjust: none;
  }
  body {
    min-height: 100dvh;
    font-family: var(--font-sans);
    line-height: var(--leading-md);
    text-rendering: optimizeSpeed;
  }
  a,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    overflow-wrap: break-word;
  }
  a {
    color: currentcolor;
    text-decoration: none;
    text-decoration-skip-ink: auto;
  }
  input,
  button,
  textarea,
  select {
    font: inherit;
  }
  ol[role=list],
  ul[role=list] {
    list-style: none;
  }
  ol:not([role=list]),
  ul:not([role=list]) {
    padding-inline-start: 1.25rem;
  }
  img,
  picture,
  canvas,
  video {
    max-width: 100%;
    height: auto;
  }
  iframe {
    border: 0;
  }
  table {
    border-collapse: collapse;
    caption-side: bottom;
  }
  thead,
  tbody,
  tfoot,
  th,
  tr,
  td {
    border-color: inherit;
    border-style: solid;
    border-width: 0;
  }
  th {
    text-align: inherit;
    text-align: -webkit-match-parent;
  }
  button,
  [type=button],
  [type=reset],
  [type=submit] {
    appearance: button;
    -webkit-appearance: button;
  }
  fieldset {
    border: none;
  }
  dialog {
    border: 0;
    max-width: none;
    max-height: none;
  }
  :focus {
    outline-color: var(--focus-ring-color);
    outline-offset: var(--focus-ring-offset);
    outline-style: var(--focus-ring-style);
    outline-width: var(--focus-ring-width);
  }
  @supports selector(:focus-visible) {
    :focus {
      outline: none;
    }
    :focus-visible {
      outline-color: var(--focus-ring-color);
      outline-offset: var(--focus-ring-offset);
      outline-style: var(--focus-ring-style);
      outline-width: var(--focus-ring-width);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    html {
      scroll-behavior: auto !important;
    }
    *,
    *::before,
    *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
      scroll-behavior: auto !important;
    }
  }
}
@layer layouts {
  .l-auto-grid {
    --auto-grid-columns: auto-fill;
    --auto-grid-basis: 20rem;
    --auto-grid-gap: 0;
    display: grid;
    grid-template-columns: repeat(var(--auto-grid-columns), minmax(min(100%, var(--auto-grid-basis)), 1fr));
    gap: var(--auto-grid-gap);
  }
  .l-auto-grid > * {
    max-width: 100%;
    min-width: 0;
    min-height: 0;
  }
  @media (min-width: 30em) {
    .l-auto-grid {
      --sm-auto-grid-columns: var(--auto-grid-columns);
      --sm-auto-grid-basis: var(--auto-grid-basis);
      --sm-auto-grid-gap: var(--auto-grid-gap);
      grid-template-columns: repeat(var(--sm-auto-grid-columns), minmax(min(100%, var(--sm-auto-grid-basis)), 1fr));
      gap: var(--sm-auto-grid-gap);
    }
  }
  @media (min-width: 60em) {
    .l-auto-grid {
      --md-auto-grid-columns: var(--sm-auto-grid-columns);
      --md-auto-grid-basis: var(--sm-auto-grid-basis);
      --md-auto-grid-gap: var(--sm-auto-grid-gap);
      grid-template-columns: repeat(var(--md-auto-grid-columns), minmax(min(100%, var(--md-auto-grid-basis)), 1fr));
      gap: var(--md-auto-grid-gap);
    }
  }
  @media (min-width: 100em) {
    .l-auto-grid {
      --lg-auto-grid-columns: var(--md-auto-grid-columns);
      --lg-auto-grid-basis: var(--md-auto-grid-basis);
      --lg-auto-grid-gap: var(--md-auto-grid-gap);
      grid-template-columns: repeat(var(--lg-auto-grid-columns), minmax(min(100%, var(--lg-auto-grid-basis)), 1fr));
      gap: var(--lg-auto-grid-gap);
    }
  }
}
@layer layouts {
  .l-flex {
    --flex-direction: row;
    --flex-wrap: nowrap;
    --flex-gap: 0;
    --flex-items: normal;
    --flex-content: normal;
    display: flex;
    flex-direction: var(--flex-direction);
    flex-wrap: var(--flex-wrap);
    gap: var(--flex-gap);
    place-items: var(--flex-items);
    place-content: var(--flex-content);
  }
  .l-flex > * {
    --flex-basis: auto;
    --flex-grow: 0;
    --flex-shrink: 1;
    --flex-order: 0;
    --flex-self: auto;
    flex-basis: var(--flex-basis);
    flex-grow: var(--flex-grow);
    flex-shrink: var(--flex-shrink);
    order: var(--flex-order);
    place-self: var(--flex-self);
  }
  @media (min-width: 30em) {
    .l-flex {
      --sm-flex-direction: var(--flex-direction);
      --sm-flex-wrap: var(--flex-wrap);
      --sm-flex-gap: var(--flex-gap);
      --sm-flex-items: var(--flex-items);
      --sm-flex-content: var(--flex-content);
      flex-direction: var(--sm-flex-direction);
      flex-wrap: var(--sm-flex-wrap);
      gap: var(--sm-flex-gap);
      place-items: var(--sm-flex-items);
      place-content: var(--sm-flex-content);
    }
    .l-flex > * {
      --sm-flex-basis: var(--flex-basis);
      --sm-flex-grow: var(--flex-grow);
      --sm-flex-shrink: var(--flex-shrink);
      --sm-flex-order: var(--flex-order);
      --sm-flex-self: var(--flex-self);
      flex-basis: var(--sm-flex-basis);
      flex-grow: var(--sm-flex-grow);
      flex-shrink: var(--sm-flex-shrink);
      order: var(--sm-flex-order);
      place-self: var(--sm-flex-self);
    }
  }
  @media (min-width: 60em) {
    .l-flex {
      --md-flex-direction: var(--sm-flex-direction);
      --md-flex-wrap: var(--sm-flex-wrap);
      --md-flex-gap: var(--sm-flex-gap);
      --md-flex-items: var(--sm-flex-items);
      --md-flex-content: var(--sm-flex-content);
      flex-direction: var(--md-flex-direction);
      flex-wrap: var(--md-flex-wrap);
      gap: var(--md-flex-gap);
      place-items: var(--md-flex-items);
      place-content: var(--md-flex-content);
    }
    .l-flex > * {
      --md-flex-basis: var(--sm-flex-basis);
      --md-flex-grow: var(--sm-flex-grow);
      --md-flex-shrink: var(--sm-flex-shrink);
      --md-flex-order: var(--sm-flex-order);
      --md-flex-self: var(--sm-flex-self);
      flex-basis: var(--md-flex-basis);
      flex-grow: var(--md-flex-grow);
      flex-shrink: var(--md-flex-shrink);
      order: var(--md-flex-order);
      place-self: var(--md-flex-self);
    }
  }
  @media (min-width: 100em) {
    .l-flex {
      --lg-flex-direction: var(--md-flex-direction);
      --lg-flex-wrap: var(--md-flex-wrap);
      --lg-flex-gap: var(--md-flex-gap);
      --lg-flex-items: var(--md-flex-items);
      --lg-flex-content: var(--md-flex-content);
      flex-direction: var(--lg-flex-direction);
      flex-wrap: var(--lg-flex-wrap);
      gap: var(--lg-flex-gap);
      place-items: var(--lg-flex-items);
      place-content: var(--lg-flex-content);
    }
    .l-flex > * {
      --lg-flex-basis: var(--md-flex-basis);
      --lg-flex-grow: var(--md-flex-grow);
      --lg-flex-shrink: var(--md-flex-shrink);
      --lg-flex-order: var(--md-flex-order);
      --lg-flex-self: var(--md-flex-self);
      flex-basis: var(--lg-flex-basis);
      flex-grow: var(--lg-flex-grow);
      flex-shrink: var(--lg-flex-shrink);
      order: var(--lg-flex-order);
      place-self: var(--lg-flex-self);
    }
  }
}
@layer layouts {
  .l-frame {
    --frame-focus: 50% 50%;
    --frame-fit: cover;
    --frame-ratio: 1/1;
    position: relative;
    width: 100%;
    aspect-ratio: var(--frame-ratio);
    overflow: hidden;
  }
  .l-frame > * {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: var(--frame-fit);
    object-position: var(--frame-focus);
  }
  @media (min-width: 30em) {
    .l-frame {
      --sm-frame-focus: var(--frame-focus);
      --sm-frame-fit: var(--frame-fit);
      --sm-frame-ratio: var(--frame-ratio);
      aspect-ratio: var(--sm-frame-ratio);
    }
    .l-frame > * {
      object-fit: var(--sm-frame-fit);
      object-position: var(--sm-frame-focus);
    }
  }
  @media (min-width: 60em) {
    .l-frame {
      --md-frame-focus: var(--sm-frame-focus);
      --md-frame-fit: var(--sm-frame-fit);
      --md-frame-ratio: var(--sm-frame-ratio);
      aspect-ratio: var(--md-frame-ratio);
    }
    .l-frame > * {
      object-fit: var(--md-frame-fit);
      object-position: var(--md-frame-focus);
    }
  }
  @media (min-width: 100em) {
    .l-frame {
      --lg-frame-focus: var(--md-frame-focus);
      --lg-frame-fit: var(--md-frame-fit);
      --lg-frame-ratio: var(--md-frame-ratio);
      aspect-ratio: var(--lg-frame-ratio);
    }
    .l-frame > * {
      object-fit: var(--lg-frame-fit);
      object-position: var(--lg-frame-focus);
    }
  }
}
@layer layouts {
  .l-grid, .l-base-grid {
    --grid-columns: 1;
    --grid-column-size: 1fr;
    --grid-rows: 1;
    --grid-row-size: auto;
    --grid-auto-columns: auto;
    --grid-flow: row;
    --grid-gap: 0;
    --grid-items: normal;
    --grid-content: normal;
    display: grid;
    grid-template-columns: repeat(var(--grid-columns), var(--grid-column-size));
    grid-template-rows: repeat(var(--grid-rows), var(--grid-row-size));
    grid-auto-columns: var(--grid-auto-columns);
    grid-auto-flow: var(--grid-flow);
    gap: var(--grid-gap);
    place-items: var(--grid-items);
    place-content: var(--grid-content);
  }
  .l-grid > *, .l-base-grid > * {
    --grid-column: auto;
    --grid-row: auto;
    --grid-self: auto;
    grid-column: var(--grid-column);
    grid-row: var(--grid-row);
    place-self: var(--grid-self);
    max-width: 100%;
    min-width: 0;
    min-height: 0;
  }
  @media (min-width: 30em) {
    .l-grid, .l-base-grid {
      --sm-grid-columns: var(--grid-columns);
      --sm-grid-column-size: var(--grid-column-size);
      --sm-grid-rows: var(--grid-rows);
      --sm-grid-row-size: var(--grid-row-size);
      --sm-grid-auto-columns: var(--grid-auto-columns);
      --sm-grid-flow: var(--grid-flow);
      --sm-grid-gap: var(--grid-gap);
      --sm-grid-items: var(--grid-items);
      --sm-grid-content: var(--grid-content);
      grid-template-columns: repeat(var(--sm-grid-columns), var(--sm-grid-column-size));
      grid-template-rows: repeat(var(--sm-grid-rows), var(--sm-grid-row-size));
      grid-auto-columns: var(--sm-grid-auto-columns);
      grid-auto-flow: var(--sm-grid-flow);
      gap: var(--sm-grid-gap);
      place-items: var(--sm-grid-items);
      place-content: var(--sm-grid-content);
    }
    .l-grid > *, .l-base-grid > * {
      --sm-grid-column: var(--grid-column);
      --sm-grid-row: var(--grid-row);
      --sm-grid-self: var(--grid-self);
      grid-column: var(--sm-grid-column);
      grid-row: var(--sm-grid-row);
      place-self: var(--sm-grid-self);
    }
  }
  @media (min-width: 60em) {
    .l-grid, .l-base-grid {
      --md-grid-columns: var(--sm-grid-columns);
      --md-grid-column-size: var(--sm-grid-column-size);
      --md-grid-rows: var(--sm-grid-rows);
      --md-grid-row-size: var(--sm-grid-row-size);
      --md-grid-auto-columns: var(--sm-grid-auto-columns);
      --md-grid-flow: var(--sm-grid-flow);
      --md-grid-gap: var(--sm-grid-gap);
      --md-grid-items: var(--sm-grid-items);
      --md-grid-content: var(--sm-grid-content);
      grid-template-columns: repeat(var(--md-grid-columns), var(--md-grid-column-size));
      grid-template-rows: repeat(var(--md-grid-rows), var(--md-grid-row-size));
      grid-auto-columns: var(--md-grid-auto-columns);
      grid-auto-flow: var(--md-grid-flow);
      gap: var(--md-grid-gap);
      place-items: var(--md-grid-items);
      place-content: var(--md-grid-content);
    }
    .l-grid > *, .l-base-grid > * {
      --md-grid-column: var(--sm-grid-column);
      --md-grid-row: var(--sm-grid-row);
      --md-grid-self: var(--sm-grid-self);
      grid-column: var(--md-grid-column);
      grid-row: var(--md-grid-row);
      place-self: var(--md-grid-self);
    }
  }
  @media (min-width: 100em) {
    .l-grid, .l-base-grid {
      --lg-grid-columns: var(--md-grid-columns);
      --lg-grid-column-size: var(--md-grid-column-size);
      --lg-grid-rows: var(--md-grid-rows);
      --lg-grid-row-size: var(--md-grid-row-size);
      --lg-grid-auto-columns: var(--md-grid-auto-columns);
      --lg-grid-flow: var(--md-grid-flow);
      --lg-grid-gap: var(--md-grid-gap);
      --lg-grid-items: var(--md-grid-items);
      --lg-grid-content: var(--md-grid-content);
      grid-template-columns: repeat(var(--lg-grid-columns), var(--lg-grid-column-size));
      grid-template-rows: repeat(var(--lg-grid-rows), var(--lg-grid-row-size));
      grid-auto-columns: var(--lg-grid-auto-columns);
      grid-auto-flow: var(--lg-grid-flow);
      gap: var(--lg-grid-gap);
      place-items: var(--lg-grid-items);
      place-content: var(--lg-grid-content);
    }
    .l-grid > *, .l-base-grid > * {
      --lg-grid-column: var(--md-grid-column);
      --lg-grid-row: var(--md-grid-row);
      --lg-grid-self: var(--md-grid-self);
      grid-column: var(--lg-grid-column);
      grid-row: var(--lg-grid-row);
      place-self: var(--lg-grid-self);
    }
  }
}
@layer layouts {
  .l-spacer {
    --spacer-margin: 0;
    --spacer-padding: 0;
    margin-block: var(--spacer-margin);
    padding-block: var(--spacer-padding);
  }
}
@layer layouts {
  .l-stack {
    --stack-space: 1em;
  }
  .l-stack > * + * {
    margin-block-start: var(--stack-space);
  }
}
@layer layouts {
  .l-switch {
    --switch-breakpoint: 0;
    --switch-gap: 0;
    --switch-items: normal;
    --switch-content: normal;
    display: flex;
    flex-wrap: wrap;
    gap: var(--switch-gap);
    place-items: var(--switch-items);
    place-content: var(--switch-content);
  }
  .l-switch > * {
    --switch-grow: 1;
    --switch-order: 0;
    --switch-self: auto;
    flex-basis: max((var(--switch-breakpoint) - 100%) * 999, 0px);
    flex-grow: calc(var(--switch-grow));
    place-self: var(--switch-self);
  }
}
@layer layouts {
  .l-wrap {
    --wrap-width: 100%;
    --wrap-max-width: auto;
    --wrap-margin: auto;
    --wrap-padding: var(--base-margin);
    width: var(--wrap-width);
    max-width: var(--wrap-max-width);
    margin-inline: var(--wrap-margin);
    padding-inline: var(--wrap-padding);
  }
  @media (min-width: 30em) {
    .l-wrap {
      --sm-wrap-width: var(--wrap-width);
      --sm-wrap-max-width: var(--wrap-max-width);
      --sm-wrap-margin: var(--wrap-margin);
      --sm-wrap-padding: var(--wrap-padding);
      width: var(--sm-wrap-width);
      max-width: var(--sm-wrap-max-width);
      margin-inline: var(--sm-wrap-margin);
      padding-inline: var(--sm-wrap-padding);
    }
  }
  @media (min-width: 60em) {
    .l-wrap {
      --md-wrap-width: var(--sm-wrap-width);
      --md-wrap-max-width: var(--sm-wrap-max-width);
      --md-wrap-margin: var(--sm-wrap-margin);
      --md-wrap-padding: var(--sm-wrap-padding);
      width: var(--md-wrap-width);
      max-width: var(--md-wrap-max-width);
      margin-inline: var(--md-wrap-margin);
      padding-inline: var(--md-wrap-padding);
    }
  }
  @media (min-width: 100em) {
    .l-wrap {
      --lg-wrap-width: var(--md-wrap-width);
      --lg-wrap-max-width: var(--md-wrap-max-width);
      --lg-wrap-margin: var(--md-wrap-margin);
      --lg-wrap-padding: var(--md-wrap-padding);
      width: var(--lg-wrap-width);
      max-width: var(--lg-wrap-max-width);
      margin-inline: var(--lg-wrap-margin);
      padding-inline: var(--lg-wrap-padding);
    }
  }
}
@layer layouts {
  .l-display {
    --display: block;
    display: var(--display);
  }
  @media (min-width: 30em) {
    .l-display {
      --sm-display: var(--display);
      display: var(--sm-display);
    }
  }
  @media (min-width: 60em) {
    .l-display {
      --md-display: var(--sm-display);
      display: var(--md-display);
    }
  }
  @media (min-width: 100em) {
    .l-display {
      --lg-display: var(--md-display);
      display: var(--lg-display);
    }
  }
}
@layer utilities {
  .u-line-clamp {
    display: -webkit-box;
    -webkit-line-clamp: var(--line-clamp, 1);
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}
@layer utilities {
  .u-link-stretch {
    position: static;
  }
  .u-link-stretch::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: var(--link-stretch-z-index, 1);
    width: 100%;
    height: 100%;
    border-radius: var(--link-stretch-border-radius, 0);
    cursor: pointer;
  }
  .u-link-stretch:focus-visible {
    outline: none;
  }
  .u-link-stretch:focus-visible::before {
    outline: var(--link-stretch-outline-width, 0.125rem) var(--link-stretch-outline-type, solid) var(--link-stretch-outline-color, currentColor);
  }
}
@layer utilities {
  .u-visually-hidden {
    position: absolute;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    clip: rect(0 0 0 0);
    overflow: hidden;
    white-space: nowrap;
  }
}
@layer utilities {
  .u-opacity-50 {
    opacity: var(--opacity-50);
  }
  .u-opacity-70 {
    opacity: var(--opacity-70);
  }
  .u-opacity-80 {
    opacity: var(--opacity-80);
  }
  .u-opacity-90 {
    opacity: var(--opacity-90);
  }
  .u-text-display {
    font-size: var(--text-2xl-4xl);
    font-weight: var(--font-semibold);
    font-family: var(--font-sans);
    letter-spacing: var(--tracking-sm);
    line-height: var(--leading-xs);
  }
  .u-text-heading {
    font-size: var(--text-lg-xl);
    font-weight: var(--font-semibold);
    font-family: var(--font-sans);
    letter-spacing: var(--tracking-sm);
    line-height: var(--leading-sm);
  }
  .u-text-label {
    font-size: var(--text-xs);
    line-height: var(--leading-xs);
    letter-spacing: normal;
    font-weight: var(--font-semibold);
    text-transform: uppercase;
  }
  .u-text-label-thin {
    font-size: var(--text-xs);
    color: var(--color-black);
    line-height: var(--leading-xs);
    letter-spacing: normal;
  }
  .u-text-label-sm {
    font-size: var(--text-2xs);
    letter-spacing: var(--tracking-sm);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
  }
  .u-text-data {
    font-size: var(--text-xs);
    font-weight: var(--font-regular);
    letter-spacing: normal;
  }
  .u-text-data-sm {
    font-size: var(--text-2xs);
    font-weight: var(--font-regular);
    letter-spacing: normal;
  }
  .u-text-subhead {
    font-size: var(--text-lg-xl);
    font-weight: var(--font-semibold);
    font-family: var(--font-sans);
    letter-spacing: var(--tracking-sm);
    line-height: var(--leading-xs);
  }
  .u-text-body {
    font-size: var(--text-sm);
    font-weight: var(--font-regular);
    font-family: var(--font-sans);
    line-height: var(--leading-md);
  }
  .u-text-overline {
    font-size: var(--text-xs-sm);
    font-weight: var(--font-medium);
    font-family: var(--font-sans);
    letter-spacing: var(--tracking-sm);
    line-height: var(--leading-sm);
  }
  .u-text-balance {
    text-wrap: balance;
  }
  .u-bg-white {
    background-color: var(--color-white);
  }
  .u-bg-black {
    background-color: var(--color-black);
  }
  .u-bg-light-gray {
    background-color: var(--color-light-gray);
  }
  .u-bg-trans-black {
    background-color: var(--color-trans-black);
  }
  .u-bg-gray {
    background-color: var(--color-gray);
  }
  .u-bg-muted {
    background-color: var(--color-muted);
  }
  .u-bg-muted-dark {
    background-color: var(--color-muted-dark);
  }
  .u-bg-muted-darker {
    background-color: var(--color-muted-darker);
  }
  .u-bg-primary {
    background-color: var(--color-primary);
  }
  .u-text-white {
    color: var(--color-white);
  }
  .u-text-black {
    color: var(--color-black);
  }
  .u-text-light-gray {
    color: var(--color-light-gray);
  }
  .u-text-trans-black {
    color: var(--color-trans-black);
  }
  .u-text-gray {
    color: var(--color-gray);
  }
  .u-text-muted {
    color: var(--color-muted);
  }
  .u-text-muted-dark {
    color: var(--color-muted-dark);
  }
  .u-text-muted-darker {
    color: var(--color-muted-darker);
  }
  .u-text-primary {
    color: var(--color-primary);
  }
  .u-font-sans {
    font-family: var(--font-sans);
  }
  .u-font-serif {
    font-family: var(--font-serif);
  }
  .u-font-mono {
    font-family: var(--font-mono);
  }
  .u-text-2xs {
    font-size: var(--text-2xs);
  }
  .u-text-2xs-xs {
    font-size: var(--text-2xs-xs);
  }
  .u-text-2xs-sm {
    font-size: var(--text-2xs-sm);
  }
  .u-text-2xs-md {
    font-size: var(--text-2xs-md);
  }
  .u-text-2xs-lg {
    font-size: var(--text-2xs-lg);
  }
  .u-text-2xs-xl {
    font-size: var(--text-2xs-xl);
  }
  .u-text-2xs-2xl {
    font-size: var(--text-2xs-2xl);
  }
  .u-text-2xs-3xl {
    font-size: var(--text-2xs-3xl);
  }
  .u-text-2xs-4xl {
    font-size: var(--text-2xs-4xl);
  }
  .u-text-2xs-5xl {
    font-size: var(--text-2xs-5xl);
  }
  .u-text-xs {
    font-size: var(--text-xs);
  }
  .u-text-xs-sm {
    font-size: var(--text-xs-sm);
  }
  .u-text-xs-md {
    font-size: var(--text-xs-md);
  }
  .u-text-xs-lg {
    font-size: var(--text-xs-lg);
  }
  .u-text-xs-xl {
    font-size: var(--text-xs-xl);
  }
  .u-text-xs-2xl {
    font-size: var(--text-xs-2xl);
  }
  .u-text-xs-3xl {
    font-size: var(--text-xs-3xl);
  }
  .u-text-xs-4xl {
    font-size: var(--text-xs-4xl);
  }
  .u-text-xs-5xl {
    font-size: var(--text-xs-5xl);
  }
  .u-text-sm {
    font-size: var(--text-sm);
  }
  .u-text-sm-md {
    font-size: var(--text-sm-md);
  }
  .u-text-sm-lg {
    font-size: var(--text-sm-lg);
  }
  .u-text-sm-xl {
    font-size: var(--text-sm-xl);
  }
  .u-text-sm-2xl {
    font-size: var(--text-sm-2xl);
  }
  .u-text-sm-3xl {
    font-size: var(--text-sm-3xl);
  }
  .u-text-sm-4xl {
    font-size: var(--text-sm-4xl);
  }
  .u-text-sm-5xl {
    font-size: var(--text-sm-5xl);
  }
  .u-text-md {
    font-size: var(--text-md);
  }
  .u-text-md-lg {
    font-size: var(--text-md-lg);
  }
  .u-text-md-xl {
    font-size: var(--text-md-xl);
  }
  .u-text-md-2xl {
    font-size: var(--text-md-2xl);
  }
  .u-text-md-3xl {
    font-size: var(--text-md-3xl);
  }
  .u-text-md-4xl {
    font-size: var(--text-md-4xl);
  }
  .u-text-md-5xl {
    font-size: var(--text-md-5xl);
  }
  .u-text-lg {
    font-size: var(--text-lg);
  }
  .u-text-lg-xl {
    font-size: var(--text-lg-xl);
  }
  .u-text-lg-2xl {
    font-size: var(--text-lg-2xl);
  }
  .u-text-lg-3xl {
    font-size: var(--text-lg-3xl);
  }
  .u-text-lg-4xl {
    font-size: var(--text-lg-4xl);
  }
  .u-text-lg-5xl {
    font-size: var(--text-lg-5xl);
  }
  .u-text-xl {
    font-size: var(--text-xl);
  }
  .u-text-xl-2xl {
    font-size: var(--text-xl-2xl);
  }
  .u-text-xl-3xl {
    font-size: var(--text-xl-3xl);
  }
  .u-text-xl-4xl {
    font-size: var(--text-xl-4xl);
  }
  .u-text-xl-5xl {
    font-size: var(--text-xl-5xl);
  }
  .u-text-2xl {
    font-size: var(--text-2xl);
  }
  .u-text-2xl-3xl {
    font-size: var(--text-2xl-3xl);
  }
  .u-text-2xl-4xl {
    font-size: var(--text-2xl-4xl);
  }
  .u-text-2xl-5xl {
    font-size: var(--text-2xl-5xl);
  }
  .u-text-3xl {
    font-size: var(--text-3xl);
  }
  .u-text-3xl-4xl {
    font-size: var(--text-3xl-4xl);
  }
  .u-text-3xl-5xl {
    font-size: var(--text-3xl-5xl);
  }
  .u-text-4xl {
    font-size: var(--text-4xl);
  }
  .u-text-4xl-5xl {
    font-size: var(--text-4xl-5xl);
  }
  .u-text-5xl {
    font-size: var(--text-5xl);
  }
  .u-font-light {
    font-weight: var(--font-light);
  }
  .u-font-regular {
    font-weight: var(--font-regular);
  }
  .u-font-medium {
    font-weight: var(--font-medium);
  }
  .u-font-semibold {
    font-weight: var(--font-semibold);
  }
  .u-font-bold {
    font-weight: var(--font-bold);
  }
  .u-tracking-xs {
    letter-spacing: var(--tracking-xs);
  }
  .u-tracking-sm {
    letter-spacing: var(--tracking-sm);
  }
  .u-tracking-lg {
    letter-spacing: var(--tracking-lg);
  }
  .u-tracking-xl {
    letter-spacing: var(--tracking-xl);
  }
  .u-leading-xs {
    line-height: var(--leading-xs);
  }
  .u-leading-sm {
    line-height: var(--leading-sm);
  }
  .u-leading-md {
    line-height: var(--leading-md);
  }
  .u-leading-lg {
    line-height: var(--leading-lg);
  }
  .u-text-left {
    text-align: left;
  }
  .u-text-center {
    text-align: center;
  }
  .u-text-right {
    text-align: right;
  }
  .u-text-upper {
    text-transform: uppercase;
  }
  .u-text-lower {
    text-transform: lowercase;
  }
  .u-text-caps {
    text-transform: capitalize;
  }
}
@layer base {
  @font-face {
    font-family: "Switzer";
    font-style: normal;
    font-weight: 300;
    src: url("fonts/switzer-300.woff2") format("woff2");
  }
  @font-face {
    font-family: "Switzer";
    font-style: normal;
    font-weight: 400;
    src: url("fonts/switzer-400.woff2") format("woff2");
  }
  @font-face {
    font-family: "Switzer";
    font-style: normal;
    font-weight: 500;
    src: url("fonts/switzer-500.woff2") format("woff2");
  }
  @font-face {
    font-family: "Switzer";
    font-style: normal;
    font-weight: 600;
    src: url("fonts/switzer-600.woff2") format("woff2");
  }
  @font-face {
    font-family: "Switzer";
    font-style: normal;
    font-weight: 700;
    src: url("fonts/switzer-700.woff2") format("woff2");
  }
  :root {
    --ease-in-sine: cubic-bezier(0.47, 0, 0.745, 0.715);
    --ease-out-sine: cubic-bezier(0.39, 0.575, 0.565, 1);
    --ease-in-out-sine: cubic-bezier(0.445, 0.05, 0.55, 0.95);
    --ease-in-quad: cubic-bezier(0.55, 0.085, 0.68, 0.53);
    --ease-out-quad: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    --ease-in-out-quad: cubic-bezier(0.455, 0.03, 0.515, 0.955);
    --ease-in-cubic: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    --ease-out-cubic: cubic-bezier(0.215, 0.61, 0.355, 1);
    --ease-in-out-cubic: cubic-bezier(0.645, 0.045, 0.355, 1);
    --ease-in-quart: cubic-bezier(0.895, 0.03, 0.685, 0.22);
    --ease-out-quart: cubic-bezier(0.165, 0.84, 0.44, 1);
    --ease-in-out-quart: cubic-bezier(0.77, 0, 0.175, 1);
    --ease-in-quint: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    --ease-out-quint: cubic-bezier(0.23, 1, 0.32, 1);
    --ease-in-out-quint: cubic-bezier(0.86, 0, 0.07, 1);
    --ease-in-expo: cubic-bezier(0.95, 0.05, 0.795, 0.035);
    --ease-out-expo: cubic-bezier(0.19, 1, 0.22, 1);
    --ease-in-out-expo: cubic-bezier(1, 0, 0, 1);
    --ease-in-circ: cubic-bezier(0.6, 0.04, 0.98, 0.335);
    --ease-out-circ: cubic-bezier(0.075, 0.82, 0.165, 1);
    --ease-in-out-circ: cubic-bezier(0.785, 0.135, 0.15, 0.86);
    --ease-in-back: cubic-bezier(0.6, -0.28, 0.735, 0.045);
    --ease-out-back: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    --ease-in-out-back: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    --animation-ease: var(--ease-out-sine);
    --animation-duration: 200ms;
    --animation-delay: 0ms;
    --base-grid: 4;
    --base-gap: var(--space-2xs);
    --base-margin: var(--space-xs-sm);
    --base-content-max-width: 42rem;
    --base-border: 1px solid var(--color-trans-black);
    --base-radius: var(--radius-sm);
    --base-card-ratio-landscape: 5/4;
    --base-border: 1px solid var(--color-light-gray);
    --root-adminbar-height: 2.5rem;
  }
  @media (min-width: 30em) {
    :root {
      --base-grid: 6;
    }
  }
  @media (min-width: 60em) {
    :root {
      --base-grid: 12;
    }
  }
  html {
    scroll-behavior: auto;
  }
  html[data-overlay=true] {
    overflow: hidden;
  }
  html[data-menu=transparent] #main-content {
    margin-top: -4.875rem;
  }
  body {
    display: flex;
    flex-direction: column;
  }
  main + footer {
    margin-block-start: auto;
  }
  figure {
    border-radius: var(--base-radius);
    overflow: clip;
  }
  button {
    cursor: pointer;
  }
  [data-hidden=true] {
    display: none !important;
  }
  [id] {
    scroll-margin-block: var(--base-margin);
  }
  html {
    /* Add responsive growth after screen width of 178rem */
    font-size: max(100%, 0.5625vw);
  }
  body {
    color: var(--color-black);
    font-size: var(--text-sm);
    font-weight: var(--font-regular);
    line-height: var(--leading-md);
    font-feature-settings: normal;
    font-variation-settings: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-color: var(--color-muted);
    display: flex;
    flex-direction: column;
  }
  h1, h2, h3, h4, h5, h6 {
    font-weight: var(--font-semibold);
    letter-spacing: var(--tracking-sm);
  }
  h1 {
    font-size: var(--text-2xl);
    line-height: var(--leading-xs);
  }
  h2 {
    font-size: var(--text-xl);
    line-height: var(--leading-xs);
  }
  h3 {
    font-size: var(--text-lg);
    line-height: var(--leading-sm);
  }
  h4 {
    font-size: var(--text-md);
    line-height: var(--leading-sm);
  }
  h5 {
    font-size: var(--text-sm);
    line-height: var(--leading-md);
  }
  h6 {
    font-size: var(--text-xs);
    line-height: var(--leading-md);
  }
  strong {
    font-weight: var(--font-semibold);
  }
  details {
    position: relative;
  }
  details summary {
    cursor: pointer;
  }
  details summary:after {
    --icon-size: 1.5rem;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: var(--icon-size);
    height: var(--icon-size);
    background-color: var(--color-muted-dark);
    background-image: url("/assets/public/icons/chevron-down.svg");
    background-size: 1.25rem;
    background-position: 50%;
    background-repeat: no-repeat;
    border-radius: calc(var(--icon-size) / 2);
    transition: transform 0.2s var(--animation-ease);
  }
  details[open] summary {
    position: relative;
  }
  details[open] summary:after {
    transform: rotate(180deg);
  }
  details > summary {
    list-style: none;
  }
  details > summary::-webkit-details-marker {
    display: none;
  }
  .input-group {
    display: flex;
    flex-direction: column;
    position: relative;
  }
  .input-group label {
    position: absolute;
    top: var(--space-2xs-xs);
    left: var(--space-2xs-xs);
    font-size: var(--text-xs);
    font-weight: var(--font-medium);
    letter-spacing: var(--tracking-sm);
  }
  .input-group input, .input-group textarea {
    font-size: var(--text-xs);
    padding: var(--space-2xs-xs);
    padding-block-start: 2.5rem;
    border: none;
    border-radius: var(--base-radius);
  }
  html[data-js=true] img[loading=lazy] {
    opacity: 0;
  }
  img[loading=lazy][data-animation=loaded] {
    --animation-delay: 200ms;
    --animation-duration: 200ms;
    animation: fadeIn var(--animation-ease) var(--animation-duration) var(--animation-delay) forwards;
  }
  figure,
  img {
    display: block;
    width: 100%;
  }
  @keyframes slideUp {
    from {
      transform: translateY(clamp(2rem, 50%, 4rem));
    }
    to {
      transform: translateY(0);
    }
  }
  @keyframes slideDown {
    from {
      transform: translateY(clamp(-4rem, -50%, -2rem));
    }
    to {
      transform: translateY(0);
    }
  }
  @keyframes fadeIn {
    from {
      opacity: var(--from-opacity, 0);
    }
    to {
      opacity: var(--to-opacity, 1);
    }
  }
}
@layer layouts {
  .l-grid, .l-base-grid {
    --grid-gap: var(--base-gap);
  }
  .l-base-grid {
    --grid-columns: var(--base-grid);
  }
  .l-frame {
    background-color: var(--color-black);
  }
}
@layer utilities {
  .u-link-arrow {
    font-weight: var(--font-medium);
    position: relative;
    padding-right: 2em;
  }
  .u-link-arrow > svg {
    display: block;
    position: absolute;
    width: 1em;
    height: 1em;
    top: 0.2em;
    right: 1em;
    transform: translateX(0.5em);
    transition: transform 0.3s ease-in-out;
  }
  .u-link-arrow:hover > svg {
    transform: translateX(1em);
  }
  .u-border-flair {
    border-left: 1px solid var(--color-primary);
    padding-left: var(--base-margin);
  }
  .u-grid-quarter {
    --grid-column: span 4;
    --sm-grid-column: span 3;
  }
  .u-filter-label {
    text-transform: uppercase;
    font-size: var(--text-xs);
    line-height: var(--leading-xs);
    letter-spacing: normal;
  }
  .u-border-top {
    margin-block-start: var(--space-sm);
    padding-block-start: var(--space-sm);
    border-block-start: var(--base-border);
  }
  .u-icon-button {
    border: none;
    line-height: 1;
    padding: var(--space-2xs) calc(var(--space-2xs) + 1px);
    background-color: rgba(40, 40, 40, 0.05);
    border-radius: var(--base-radius);
  }
  .u-icon-button svg {
    width: 0.875rem;
    height: 0.875rem;
    transform: translateY(1px);
  }
  .u-pagination-link {
    background-color: var(--color-black);
    color: var(--color-white);
    display: flex;
    padding: var(--space-2xs);
    line-height: 1;
  }
  .u-pagination-link[aria-current=page] {
    color: var(--color-primary);
  }
  .u-chevron-button {
    border: none;
    background-color: var(--color-muted);
    width: var(--space-sm);
    height: var(--space-sm);
    border-radius: calc(var(--space-sm) / 2);
    transition: transform 0.2s var(--animation-ease);
  }
  .u-chevron-button[aria-expanded=true] {
    transform: rotate(180deg);
  }
  .u-chevron-button svg {
    width: 1rem;
    transform: translateY(3px);
  }
  .u-text-limit {
    max-width: 40rem;
  }
  .u-transition-disabled {
    transition: none;
  }
}
@layer views {
  .block-stack > *:not(:first-child) {
    padding-top: var(--space-sm);
    border-top: var(--base-border);
  }
  .block-stack > [data-page-block=large-text], .block-stack [data-page-block=media] {
    border-top: none;
  }
  .block-stack > * + * {
    --stack-space: var(--space-xl-2xl);
  }
  .block-stack > [data-page-block=cards] + [data-page-block=cover] {
    --stack-space: var(--space-sm);
  }
  .block-stack > [data-page-block=cover] + [data-page-block=text] {
    border-top: none;
  }
}
@layer views {
  .button {
    --button-align-items: center;
    --button-gap: 0.5em;
    --button-padding: 0.75rem;
    --button-background-color: transparent;
    --button-background-color-hover: transparent;
    --button-background-color-active: var(--button-background-color-hover);
    --button-color: currentColor;
    --button-color-hover: var(--button-color);
    --button-color-active: var(--button-color-hover);
    --button-backdrop-filter: 0px;
    --button-border-width: 0.0625em;
    --button-border-style: solid;
    --button-border-color: currentColor;
    --button-border-color-hover: var(--button-border-color);
    --button-radius: var(--base-radius);
    --button-font-family: var(--font-sans);
    --button-font-size: var(--text-sm-md);
    --button-font-weight: var(--font-semibold);
    --button-leading: var(--leading-xs);
    --button-tracking: var(--tracking-md);
    --button-text-decoration: none;
    --button-icon-size: 1.25cap;
    --focus-ring-color: var(--button-background-color);
    display: inline-flex;
    align-items: var(--button-align-items);
    gap: var(--button-gap);
    padding: var(--button-padding);
    background-color: var(--button-background-color);
    color: var(--button-color);
    backdrop-filter: blur(var(--button-backdrop-filter));
    border-width: var(--button-border-width);
    border-style: var(--button-border-style);
    border-color: var(--button-border-color);
    border-radius: var(--button-radius);
    font-family: var(--button-font-family);
    font-size: var(--button-font-size);
    font-weight: var(--button-font-weight);
    letter-spacing: var(--button-tracking);
    line-height: var(--button-leading);
    text-decoration: var(--button-text-decoration);
    cursor: pointer;
    transition: background-color var(--animation-ease) 200ms, border-color var(--animation-ease) 200ms, transform var(--animation-ease) 100ms;
  }
  .button:hover {
    background-color: var(--button-background-color-hover);
    color: var(--button-color-hover);
    border-color: var(--button-border-color-hover);
  }
  .button:active {
    transform: scale(98%);
    color: var(--button-color-active);
    background-color: var(--button-background-color-active);
  }
  .button > svg {
    flex: none;
    width: auto;
    height: var(--button-icon-size);
  }
  .button > svg:first-child {
    margin-inline-start: -0.125em;
  }
  .button > svg:last-child {
    margin-inline-end: -0.125em;
  }
  .button[disabled] {
    opacity: 0.5;
    cursor: default;
  }
  .button[disabled]:active {
    transform: scale(100%);
  }
  .button[data-variant=primary] {
    text-transform: initial;
    justify-content: center;
    --button-font-weight: var(--font-medium);
    --button-background-color: var(--color-primary);
    --button-border-color: var(--color-primary);
    --button-background-color-hover: var(--color-primary);
    --button-border-color-hover: var(--color-primary);
    --button-color: var(--color-black);
  }
  .button[data-variant=black] {
    --button-color: var(--color-muted);
    --button-color-hover: var(--color-muted);
    --button-font-weight: var(--font-medium);
    --button-background-color: var(--color-black);
    --button-border-color: var(--color-black);
    --button-background-color-hover: var(--color-black);
    --button-border-color-hover: var(--color-black);
  }
  .button[data-variant=text] {
    --button-padding: 0;
    --button-background-color: transparent;
    --button-background-color-hover: transparent;
    --button-color: var(--color-black);
    --button-color-hover: var(--color-black);
    --button-border-width: 0;
    --focus-ring-color: currentColor;
    --button-font-size: var(--text-sm);
  }
  .button[data-variant=text][data-state=active] {
    --button-background-color: var(--color-black);
    --button-color: var(--color-white);
    --button-padding: var(--space-3xs) var(--space-2xs);
    --button-background-color-hover: var(--color-black);
    --button-color-hover: var(--color-muted-dark);
  }
  .button[data-variant=filter] {
    --button-padding: 0.125rem 0.25rem;
    --button-background-color: var(--color-muted-dark);
    --button-border-color: var(--color-muted-dark);
    --button-background-color-hover: transparent;
    --button-color: var(--color-black);
    --button-color-hover: var(--color-black);
    --button-border-width: 1px;
    --button-font-weight: var(--font-regular);
    --button-font-size: var(--text-xs);
    text-transform: initial;
  }
  .button[data-variant=filter]:active {
    transform: none;
    --button-border-color: var(--color-muted-dark);
  }
  .button[data-variant=filter][data-state=active] {
    --button-border-color: var(--color-black);
    --button-background-color: var(--color-black);
    --button-color: var(--color-white);
    --button-background-color-hover: var(--color-muted-dark);
  }
  .button[data-variant=filter][data-state=disabled] {
    --button-background-color: transparent;
    --button-color: rgba(0, 0, 0, 0.6);
    --button-color-hover: rgba(0, 0, 0, 0.6);
    cursor: default;
  }
  .button[data-variant=filter][data-state=enabled] {
    --button-background-color: var(--color-muted-darker);
  }
  [data-ref=cart-float-toggle] {
    position: fixed;
    bottom: var(--base-margin);
    right: var(--base-margin);
    z-index: var(--z-500);
    opacity: 0;
    pointer-events: none;
    transition: opacity 200ms var(--animation-ease);
  }
  [data-ref=cart-float-toggle][data-state=visible] {
    opacity: 1;
    pointer-events: auto;
  }
}
@layer views {
  .card {
    --grid-column: span 4;
    --sm-grid-column: span 3;
    --md-grid-column: span 6;
    position: relative;
    min-height: 56.25vw;
    border-radius: var(--base-radius);
    overflow: clip;
  }
  @media (min-width: 30em) {
    .card {
      min-height: 28.125vw;
    }
  }
  @media (min-width: 160em) {
    .card {
      min-height: 45rem;
    }
  }
  .card[data-variant=intro] {
    background-color: var(--color-primary);
  }
  .card-media {
    position: absolute;
    inset: 0;
    background-color: var(--color-black);
  }
  .card-media > * {
    height: 100%;
    width: 100%;
    object-fit: cover;
  }
  .card-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.125);
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.375) 50%, rgba(0, 0, 0, 0) 100%);
  }
  .card-wrap {
    --grid-columns: 6;
    height: 100%;
    padding: var(--base-margin);
  }
  .card-copy {
    --grid-column: span 6;
    --md-grid-column: span 5;
    --lg-grid-column: span 4;
    z-index: var(--z-100);
    margin-bottom: auto;
  }
  .card-copy-intro {
    --grid-column: span 6;
    --md-grid-column: span 5;
    --lg-grid-column: span 4;
    --flex-direction: column;
    --flex-gap: var(--base-gap);
    width: min(95%, 50rem);
  }
  .card-tagline {
    margin-block-start: auto;
  }
  .cards-group {
    --grid-column: span 4;
    --sm-grid-column: span 3;
    --md-grid-column: span 6;
    --auto-grid-basis: 30rem;
    --auto-grid-gap: var(--base-gap);
    --auto-grid-columns: auto-fit;
  }
  .cards-group .card {
    height: 100%;
    min-height: max(16vmin, 12rem);
  }
}
@layer views {
  .cart-item-comment {
    background-color: var(--color-white);
    padding: var(--space-xs);
    padding-block-start: var(--space-sm);
    border-radius: var(--base-radius);
  }
  .cart-item-comment-heading {
    font-size: 0.875rem;
    margin-bottom: var(--space-2xs);
  }
  .cart-item {
    border-top: var(--base-border);
    margin-top: var(--space-xs);
    padding-top: var(--space-xs);
  }
  .cart-item-header {
    --flex-items: center;
  }
  .cart-item-remove-button {
    height: 2rem;
    width: 2rem;
    padding: 0.5rem;
    border: none;
    background: transparent;
  }
  .cart-item-remove-button img {
    width: 0.75rem;
    height: auto;
  }
  .cart-form {
    --grid-gap: var(--space-3xs);
  }
  .cart-submit-button-wrap {
    --spacer-padding: var(--space-2xs) 0;
    --flex-direction: column;
    position: sticky;
    bottom: var(--base-margin);
  }
}
@layer views {
  .contact-list-grid {
    --grid-gap: var(--space-sm) var(--base-gap);
    padding-block: var(--space-sm);
  }
  .contact-cardlet {
    --switch-items: start;
    --switch-gap: var(--space-3xs) var(--base-gap);
    --switch-breakpoint: 15rem;
  }
  .contact-cardlet-frame {
    --switch-grow: 1;
    --switch-basis: 0;
  }
  .contact-cardlet-copy {
    --switch-grow: 2;
    --switch-basis: 0;
    line-height: var(--leading-sm);
    padding-block: var(--space-2xs-xs);
  }
  .contact-cardlet-copy a:hover {
    text-decoration: underline;
  }
  .contact-cardlet-title {
    margin-block: var(--space-2xs);
  }
  .address-item-copy {
    margin-block: var(--space-2xs);
  }
}
@layer views {
  .cover {
    --flex-direction: column;
    position: relative;
    width: 100%;
    min-height: 80vh;
    min-height: 80svh;
    padding-block: var(--base-margin);
    padding-inline: var(--base-margin);
    border-radius: var(--base-radius);
    overflow: hidden;
  }
  .cover-media {
    --cover-media-background-color: var(--color-black);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: var(--z-100);
    background-color: var(--cover-media-background-color);
  }
  .cover-media > *:is(img, video) {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .cover-overlay {
    --cover-overlay-opacity: 0;
    --cover-overlay-background-color: var(--color-black);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: var(--z-200);
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 75%);
  }
  .cover-wrap {
    --flex-grow: 1;
    --grid-rows: 2;
    --grid-gap: var(--space-md-lg) var(--base-gap);
    --md-grid-columns: var(--base-grid);
    --wrap-max-width: none;
    position: relative;
    z-index: var(--z-300);
    min-height: 66vh;
    min-height: 66svh;
    color: var(--color-white);
    text-align: left;
  }
  .cover-content-start {
    --grid-gap: var(--space-sm-md);
    --grid-content: start;
    --md-grid-column: 1/6;
    --lg-grid-column: 1/6;
  }
  .cover[data-layout-variant="2"] .cover-content-start {
    --grid-row: span 2;
    --md-grid-content: start;
    --md-grid-column: 1/7;
  }
  .cover[data-layout-variant="3"] .cover-content-start {
    --grid-row: span 2;
    --md-grid-content: start;
    --md-grid-column: 1/7;
  }
  .cover-content-end {
    --grid-gap: var(--space-xs);
    --grid-content: end;
    --md-grid-column: 1/6;
    --lg-grid-column: 1/6;
    width: min(100%, 50rem);
  }
  .cover[data-layout-variant="2"] .cover-content-end {
    --grid-content: start;
    --md-grid-content: end;
    --grid-row: span 2;
    --md-grid-column: 7/-1;
    --lg-grid-column: 7/-1;
  }
  .cover[data-layout-variant="3"] .cover-content-end {
    --grid-content: start;
    --md-grid-content: end;
    --grid-row: span 2;
    --md-grid-column: 1/9;
    --lg-grid-column: 1/7;
  }
}
@layer views {
  .faq-questions {
    padding-block-start: var(--space-xs);
  }
  @media (min-width: 60em) {
    .faq-questions {
      padding-block-start: 0;
    }
  }
  .faq-question {
    border-bottom: var(--base-border);
  }
  .faq-question summary {
    font-weight: var(--font-medium);
    font-size: var(--text-md);
    padding-right: 3rem;
    padding-block: var(--base-margin);
  }
  .faq-question summary:after {
    top: 1.5em;
  }
  .faq-answer {
    --grid-gap: 0 var(--base-gap);
    padding-block-end: var(--base-margin);
  }
  .faq-answer > * {
    --sm-grid-column: 1 / span 5;
  }
}
@layer views {
  .footer {
    margin-block-start: var(--space-xl-2xl);
    padding-block-start: var(--space-sm);
    border-top: var(--base-border);
  }
  .footer-tagline {
    padding-block-start: var(--space-xl-2xl);
    margin-block-start: var(--space-sm);
    padding-block-end: var(--space-sm);
  }
  .footer-brand a {
    height: 0.875rem;
    width: auto;
  }
  .footer-brand a > svg {
    height: 0.875rem;
    width: auto;
  }
}
@layer views {
  .hero-cover {
    --hero-cover-padding-block-start: var(--space-2xl);
    --hero-cover-padding-block-end: var(--base-margin);
    --flex-direction: column;
    position: relative;
    width: 100%;
    min-height: 80vh;
    min-height: 80svh;
    padding-block-start: var(--hero-cover-padding-block-start);
    padding-block-end: var(--hero-cover-padding-block-end);
    margin-block-end: var(--space-xl-2xl);
    overflow: hidden;
  }
  .hero-cover-media {
    --hero-cover-media-background-color: var(--color-black);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: var(--z-100);
    background-color: var(--hero-cover-media-background-color);
  }
  .hero-cover-media > *:is(img, video) {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .hero-cover-overlay {
    --hero-cover-overlay-opacity: 0;
    --hero-cover-overlay-background-color: var(--color-black);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: var(--z-200);
    opacity: var(--hero-cover-overlay-opacity);
    background-color: var(--hero-cover-overlay-background-color);
  }
  .hero-cover-wrap {
    --grid-gap: 0 var(--base-gap);
    --md-grid-columns: var(--base-grid);
    --wrap-max-width: none;
    position: relative;
    z-index: var(--z-300);
    min-height: 80vh;
    min-height: 80svh;
    margin-block-start: auto;
    color: var(--color-white);
    text-align: left;
  }
  .hero-cover-content-start {
    --grid-gap: var(--space-sm-md);
    --grid-content: end;
    --md-grid-column: 7/12;
    margin-block: var(--space-xl-2xl);
  }
  .hero-cover[data-layout-variant="2"] .hero-cover-content-start {
    --grid-row: span 2;
    --md-grid-content: start;
    --md-grid-column: 1/7;
  }
  .hero-cover[data-layout-variant="3"] .hero-cover-content-start {
    --grid-row: span 2;
    --md-grid-content: start;
    --md-grid-column: 1/7;
  }
  .hero-cover-content-end {
    --grid-content: end;
    --grid-column: 1 / -1;
  }
  .hero-cover[data-layout-variant="2"] .hero-cover-content-end {
    --grid-content: start;
    --md-grid-content: end;
    --grid-row: span 2;
    --md-grid-column: 7/-1;
    --lg-grid-column: 7/-1;
  }
  .hero-cover[data-layout-variant="3"] .hero-cover-content-end {
    --grid-content: start;
    --md-grid-content: end;
    --grid-row: span 2;
    --md-grid-column: 1/9;
    --lg-grid-column: 1/7;
  }
  .hero-cover-card {
    --flex-content: space-between;
    --flex-direction: column;
    color: var(--color-black);
    background-color: var(--color-primary);
    border-radius: var(--base-radius);
    padding: var(--base-margin);
    position: relative;
    height: max(16vmin, 8rem);
    transition: background-color 0.2s var(--animation-ease);
  }
  .hero-cover-card[data-bg=gray] {
    background-color: var(--color-muted-dark);
  }
  .hero-cover-card:hover {
    background-color: var(--color-white);
  }
  .hero-cover-card-link {
    display: flex;
  }
  .hero-cover-card-link svg {
    width: 1.25rem;
    height: 1.25rem;
    margin-left: auto;
    margin-top: var(--space-2xs);
  }
}
@layer views {
  .hero-simple {
    padding-block-start: var(--space-sm-md);
    padding-block-end: var(--space-sm-md);
  }
  .hero-simple-date {
    opacity: 0.5;
    text-align: end;
  }
  .hero-simple-breadcrumb {
    font-size: var(--text-xs);
  }
  .hero-simple-breadcrumb a:not(:last-child):after {
    content: "/";
    pointer-events: none;
    margin-inline: var(--space-3xs);
  }
  .hero-simple-breadcrumb a:last-child {
    font-weight: var(--font-medium);
  }
}
@layer views {
  .inquery {
    margin-top: var(--space-xl-2xl);
  }
  .inquery-header {
    --spacer-margin: 0 var(--space-2xs);
  }
  .inquery-summary {
    --grid-gap: var(--space-sm);
    background-color: var(--color-muted-dark);
    padding: var(--space-sm);
    padding-block-start: var(--space-md);
    border-radius: var(--base-radius);
  }
  .inquery-summary-list {
    border-top: var(--base-border);
  }
  .inquery-summary-comment {
    padding: var(--space-xs);
    padding-block-start: var(--space-sm);
    background-color: var(--color-white);
    border-radius: var(--base-radius);
  }
  .inquery-summary-product {
    padding-block-start: var(--space-sm);
  }
  .inquery-summary-product:not(:first-child) {
    border-top: var(--base-border);
  }
  .inquery-summary-label {
    font-size: var(--text-xs);
    line-height: var(--leading-xs);
    letter-spacing: normal;
    font-weight: var(--font-semibold);
    margin-block-end: var(--space-2xs);
  }
}
@layer views {
  .large-text {
    font-size: var(--text-lg-3xl);
    line-height: var(--leading-sm);
    letter-spacing: var(--tracking-sm);
    border-radius: var(--base-radius);
  }
  .large-text.bg-primary {
    background-color: var(--color-primary);
    padding: var(--space-xl-2xl);
  }
}
@layer views {
  [data-menu=transparent] .navbar {
    background-color: transparent;
  }
  .navbar {
    position: relative;
    --navbar-wrap-padding-block: var(--space-xs);
    --navbar-wrap-background-color: var(--color-white);
    --navbar-wrap-color: var(--color-black);
    width: 100%;
    max-width: none;
    transform: translateY(0);
    transition: transform var(--animation-ease) 200ms;
    will-change: transform;
    position: relative;
    z-index: 450;
  }
  .navbar[data-variant=sticky] {
    position: sticky;
    z-index: var(--z-500);
    top: 0;
  }
  .navbar[data-variant=fixed] {
    position: fixed;
    z-index: var(--z-500);
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
  }
  @media (min-width: 60em) {
    .navbar[data-variant=fixed] {
      top: 0;
      bottom: auto;
    }
  }
  .navbar[data-variant=fixed][data-scroll-state=is-scrolling-up] {
    transform: translateY(0);
  }
  .navbar[data-variant=fixed][data-scroll-state=is-scrolling-down] {
    transform: translateY(100%);
  }
  @media (min-width: 60em) {
    .navbar[data-variant=fixed][data-scroll-state=is-scrolling-down] {
      transform: translateY(-100%);
    }
  }
  .navbar[data-background=transparent]:not(.submenu-open) {
    --navbar-wrap-background-color: transparent;
    --navbar-wrap-color: var(--color-white);
  }
  .navbar[data-background=transparent]:not(.submenu-open) .button[data-variant=black] {
    --button-color: var(--color-black);
    --button-background-color: var(--color-white);
    --button-border-color: var(--color-white);
    --button-color-hover: var(--color-black);
    --button-background-color-hover: var(--color-white);
    --button-border-color-hover: var(--color-white);
  }
  .navbar[data-variant=fixed][data-background=transparent] {
    --navbar-wrap-background-color: transparent;
    --navbar-wrap-color: var(--color-black);
    --navbar-wrap-padding-block: var(--space-2xs);
  }
  @media (min-width: 60em) {
    .navbar[data-variant=fixed][data-background=transparent] {
      --navbar-wrap-background-color: transparent;
      --navbar-wrap-color: var(--color-white);
      --navbar-wrap-padding-block: var(--space-md) var(--space-sm);
    }
  }
  .navbar[data-variant=fixed][data-background=transparent][data-scroll-state=is-scrolling-up] {
    --navbar-wrap-background-color: var(--color-white);
    --navbar-wrap-color: var(--color-black);
    --navbar-wrap-padding-block: var(--space-2xs);
  }
  .navbar[data-variant=fixed][data-background=transparent][data-scroll-state=is-scroll-end] {
    --navbar-wrap-background-color: var(--color-white);
    --navbar-wrap-color: var(--color-black);
    --navbar-wrap-padding-block: var(--space-2xs);
  }
  .navbar-wrap {
    --wrap-max-width: none;
    --flex-gap: var(--base-gap) var(--space-xs-md);
    --flex-items: center;
    padding-block: var(--navbar-wrap-padding-block);
    background-color: var(--navbar-wrap-background-color);
    color: var(--navbar-wrap-color);
  }
  .navbar-brand {
    --flex-basis: auto;
    --flex-grow: auto;
    --flex-order: 0;
  }
  .navbar-brand-link {
    display: flex;
    font-size: var(--text-xs);
    font-weight: var(--font-medium);
  }
  .navbar-brand-link > svg {
    width: auto;
    height: clamp(1rem, 0.3846153846vw + 0.8846153846rem, 1.5rem);
    color: currentColor;
  }
  .navbar-brand-link:hover {
    color: currentColor;
  }
  .navbar-primary-group {
    --flex-basis: auto;
    --flex-grow: 1;
    --flex-order: 0;
    --flex-items: center;
  }
  .navbar-nav {
    --flex-basis: auto;
    --flex-grow: 1;
    --flex-order: 0;
  }
  .navbar-list {
    --flex-wrap: wrap;
    --flex-gap: var(--space-sm);
    --flex-content: center start;
  }
  .navbar-list li {
    display: flex;
  }
  .navbar-link {
    padding: 0.25em;
    font-size: var(--text-sm-md);
    color: currentColor;
    font-weight: var(--font-semibold);
  }
  .navbar-link:hover {
    color: currentColor;
  }
  .navbar-secondary-group {
    --flex-gap: var(--space-sm);
    --flex-basis: auto;
    --flex-grow: auto;
    --flex-order: 0;
    --flex-items: center;
    margin-inline-start: auto;
  }
  .navbar-button {
    display: flex;
    gap: var(--space-2xs);
    align-items: center;
    padding: 0.25em;
    font-size: var(--text-sm-md);
    font-weight: var(--font-semibold);
    background-color: transparent;
    color: currentColor;
    border-radius: 0;
    border: none;
    cursor: pointer;
  }
  .navbar-button > svg {
    width: 1.125rem;
    height: 1.125rem;
  }
  .navbar-button[data-variant=index-menu] {
    margin-inline-end: calc(var(--space-xs-md) - var(--base-gap));
  }
  .navbar-submenu-popup {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    background-color: var(--color-white);
    color: var(--color-black);
    padding: var(--space-sm);
  }
  .submenu-item {
    --frame-ratio: 3/1;
    border-radius: var(--base-radius);
    position: relative;
    display: flex;
  }
  .submenu-item-figure {
    position: absolute;
    inset: 0;
  }
  .submenu-item-figure > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .submenu-item-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.2);
  }
  .submenu-item-wrap {
    --grid-items: end start;
    padding: var(--space-xs);
    font-size: var(--text-sm);
    font-weight: var(--font-semibold);
  }
  .submenu-item-link {
    display: flex;
    width: 100%;
    align-items: flex-end;
  }
  .submenu-item-link svg {
    width: 1em;
    height: 1em;
    margin-left: auto;
  }
  .submenu-intro {
    width: 90%;
    opacity: 0.8;
  }
  .submenu-button[aria-expanded=true] svg {
    transform: rotate(45deg);
  }
}
@layer views {
  wc-toggle-overlay {
    display: block;
  }
  .overlay {
    --overlay-backdrop-opacity: 0;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: var(--z-500);
    display: flex;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    background: none;
    overflow-y: auto;
    overscroll-behavior: contain;
    transition: opacity var(--animation-ease, ease-in) 200ms;
    pointer-events: none;
    opacity: 0;
    outline: 0;
    -webkit-overflow-scrolling: touch;
  }
  .overlay[open] {
    pointer-events: auto;
    opacity: 1;
  }
  .overlay[data-type=drawer], .overlay[data-type=fullscreen] {
    overflow-x: hidden;
  }
  .overlay.submenu {
    z-index: 400;
  }
  .overlay.submenu .overlay-box {
    margin-top: var(--space-xl-2xl);
  }
  .overlay-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: var(--z-100);
    background-color: var(--overlay-backdrop-background-color, var(--color-black));
    opacity: var(--overlay-backdrop-opacity);
    transition: opacity var(--animation-ease, ease-in) 400ms;
  }
  .overlay[open] > .overlay-backdrop {
    --overlay-backdrop-opacity: 0.25;
    transition: opacity var(--animation-ease, ease-in) 400ms;
  }
  .overlay[open]:has(.overlay[open]) > .overlay-backdrop {
    --overlay-backdrop-opacity: 0;
  }
  .overlay-wrap {
    position: relative;
    z-index: var(--z-200);
    width: var(--overlay-wrap-width, 100%);
    height: var(--overlay-wrap-height, auto);
    margin: auto;
    padding: var(--overlay-wrap-padding, 0);
  }
  .overlay[data-type=drawer] > .overlay-wrap {
    --overlay-wrap-width: calc(100% - (var(--base-margin) * 2));
    min-height: 100%;
    margin-inline-start: 0;
    transform: translate3d(-30%, 0, 0);
    transition: transform var(--animation-ease, ease-in) 200ms;
  }
  .overlay[data-type=drawer] > .overlay-wrap .overlay-box {
    min-height: 100vh;
  }
  .overlay[data-type=drawer][data-enter-from=inline-end] > .overlay-wrap {
    margin-inline-start: auto;
    margin-inline-end: 0;
    transform: translate3d(30%, 0, 0);
  }
  @media (min-width: 30em) {
    .overlay[data-type=drawer][data-enter-from=inline-end] > .overlay-wrap {
      max-width: 30rem;
    }
  }
  .overlay[data-type=drawer][data-enter-from=block-start] > .overlay-wrap {
    --overlay-wrap-width: 100%;
    min-height: auto;
    margin-block-start: 0;
    margin-inline: 0;
    transform: translate3d(0, -100%, 0);
  }
  .overlay[data-type=drawer][data-enter-from=block-start] > .overlay-wrap .overlay-box {
    min-height: auto;
  }
  .overlay[data-type=drawer][data-enter-from=block-end] > .overlay-wrap {
    --overlay-wrap-width: 100%;
    min-height: auto;
    margin-block-end: 0;
    margin-inline: 0;
    transform: translate3d(0, 100%, 0);
  }
  .overlay[data-type=drawer][data-enter-from=block-end] > .overlay-wrap .overlay-box {
    min-height: auto;
  }
  .overlay[data-type=drawer][open] .overlay-wrap {
    transform: translate3d(0, 0, 0);
  }
  .overlay[data-type=popover] > .overlay-wrap {
    --overlay-wrap-width: max(min(100%, 45rem), 40%);
    --overlay-wrap-padding: var(--space-sm);
    transform: translate3d(0, 4rem, 0);
    transition: transform var(--animation-ease, ease-in) 400ms;
  }
  .overlay[data-type=popover] > .overlay-wrap .overlay-box {
    border-radius: var(--overlay-box-radius, var(--radius-md));
  }
  .overlay[data-type=popover][data-variant=preview-share] > .overlay-wrap {
    --overlay-wrap-width: 30rem;
    --overlay-wrap-padding: 1rem;
  }
  html[data-adminbar=true] .overlay[data-type=popover][data-variant=preview-share] > .overlay-wrap {
    --overlay-wrap-padding: 1rem 1rem calc(1rem + var(--root-adminbar-height)) 1rem;
  }
  .overlay[data-type=popover][data-enter-from=inline-start] > .overlay-wrap {
    transform: translate3d(-4rem, 0, 0);
  }
  .overlay[data-type=popover][data-enter-from=inline-end] > .overlay-wrap {
    transform: translate3d(4rem, 0, 0);
  }
  .overlay[data-type=popover][data-enter-from=block-start] > .overlay-wrap {
    transform: translate3d(0, -4rem, 0);
  }
  .overlay[data-type=popover][open] > .overlay-wrap {
    transform: translate3d(0, 0, 0);
  }
  .overlay[data-type=fullscreen] > .overlay-wrap {
    --overlay-wrap-width: 100%;
    --overlay-wrap-height: 100%;
    transform: translate3d(0, 4rem, 0);
    transition: transform var(--animation-ease, ease-in) 400ms;
  }
  .overlay[data-type=fullscreen] > .overlay-wrap .overlay-box {
    min-height: 100vh;
  }
  .overlay[data-type=fullscreen][data-enter-from=inline-start] > .overlay-wrap {
    transform: translate3d(-4rem, 0, 0);
  }
  .overlay[data-type=fullscreen][data-enter-from=inline-end] > .overlay-wrap {
    transform: translate3d(4rem, 0, 0);
  }
  .overlay[data-type=fullscreen][data-enter-from=block-start] > .overlay-wrap {
    transform: translate3d(0, -4rem, 0);
  }
  .overlay[data-type=fullscreen][open] > .overlay-wrap {
    transform: translate3d(0, 0, 0);
  }
  .overlay-box {
    padding: var(--overlay-box-padding, var(--base-margin));
    background-color: var(--overlay-box-bg-color, var(--color-muted-dark));
  }
  .overlay[data-type=popover][data-variant=preview-share] > .overlay-box {
    --overlay-box-padding: 1rem;
  }
}
@layer views {
  .product-table-sidebar {
    --grid-content: start;
    --grid-gap: var(--space-2xs);
    --grid-column: span 2;
  }
  .product-table-sidebar > header {
    min-height: 21px;
  }
  .product-table-main {
    --grid-column: 1 / -1;
    --md-grid-column: 3 / -1;
  }
  .product-table-sidebar-sticky-wrap {
    position: sticky;
    top: var(--base-margin);
  }
  .product-table-row {
    position: relative;
    background-color: var(--color-muted-dark);
    padding: var(--space-xs) var(--space-xs) 0 var(--space-xs);
    border-radius: var(--radius-sm);
  }
  .product-table-row:not(.product-table-header):has([hidden]):hover {
    background-color: var(--color-white);
  }
  .product-table-row-grid {
    --grid-columns: 10;
    padding-block-end: var(--space-xs);
  }
  .product-row-open-button {
    --grid-self: center end;
    top: var(--space-xs);
    right: var(--space-xs);
  }
  .product-details {
    padding-block-end: var(--space-xs);
  }
  .product-table-sort-link {
    position: relative;
    white-space: nowrap;
  }
  .product-table-sort-link.active:after {
    position: absolute;
    width: 20px;
    height: 20px;
    margin-left: 4px;
    content: "";
    transform: translateY(-1px);
    background-image: url("/assets/public/icons/chevron-down.svg");
  }
  .product-table-sort-link.asc:after {
    background-image: url("/assets/public/icons/chevron-up.svg");
  }
  .product-table-filter {
    --grid-gap: var(--space-2xs);
    margin-block-end: var(--space-sm);
  }
  .product-table-header {
    position: sticky;
    top: 0;
    z-index: 5;
  }
  .product-filter-counter {
    transform: translateY(-0.375rem);
  }
  .products-table-info {
    border-block-end: var(--base-border);
    padding-block-end: var(--space-sm);
    margin-block-end: var(--space-sm);
  }
  .products-table-intro {
    --grid-content: start;
    background-color: var(--color-primary);
    padding: var(--space-sm);
    border-radius: var(--base-radius);
  }
  .product-table-intro-text {
    max-width: 40rem;
  }
  .product-filter-grid {
    --sm-grid-columns: 4;
    --md-grid-columns: 10;
  }
  .product-filter-grid-header {
    padding-inline-end: var(--space-xs);
    --md-grid-column: span 2;
  }
  .product-filter-grid-content {
    --grid-column: 3 / -1;
    --flex-wrap: wrap;
    --flex-gap: var(--space-3xs);
  }
  .product-filter-featured-category {
    --md-grid-column: span 5;
    --grid-gap: var(--base-gap);
    --grid-content: start;
    padding: var(--space-sm);
    border-radius: var(--base-radius);
    background-color: var(--color-muted-dark);
  }
  .product-filter-featured-category .u-text-body > * + * {
    margin-block-start: 1em;
  }
  .filter-category[data-state=active] {
    background-color: var(--color-black);
    color: var(--color-white);
    padding: var(--space-3xs) var(--space-2xs);
    border-radius: var(--base-radius);
  }
  .filter-category[data-state=active]:hover {
    color: var(--color-muted-dark);
  }
  .product-form-comment {
    border: none;
    height: 6rem;
    border-radius: var(--base-radius);
    padding: var(--space-2xs);
  }
  .product-row-mobile {
    background-color: var(--color-muted-dark);
    padding: var(--space-xs);
    border-radius: var(--radius-sm);
  }
  .product-intro {
    width: 66%;
  }
  .mobile-filter {
    margin-block-end: var(--space-sm);
  }
}
@layer views {
  .related-card {
    position: relative;
    place-content: start;
  }
  .related-card-date {
    margin-bottom: var(--space-2xs);
    opacity: 0.8;
    font-size: var(--text-xs);
  }
  .related-card-heading {
    margin-bottom: var(--space-xs);
  }
  .related-card-text {
    opacity: 0.8;
    width: 95%;
  }
}
@layer views {
  .rich-text > * + * {
    --stack-space: 1em;
  }
  .rich-text > * + :where(h1, h2, h3, h4, h5, h6,
  ul, ol,
  img, video, iframe, figure) {
    --stack-space: calc(var(--leading-md) * 1em);
  }
  .rich-text a {
    text-decoration: underline;
    transition: all var(--animation-ease) 200ms;
  }
  .rich-text a:hover {
    color: var(--color-primary);
    text-decoration: none;
  }
  .rich-text li + li {
    margin-block-start: 0.5em;
  }
  .rich-text[data-text-color=muted] p {
    opacity: var(--opacity-70);
  }
}
@layer views {
  .skip-to-content {
    position: absolute;
    top: var(--base-margin);
    left: var(--base-margin);
    z-index: var(--z-max);
    display: block;
    padding: var(--space-2xs);
    font-size: var(--text-sm);
    text-align: center;
    white-space: nowrap;
    background-color: var(--color-white);
    color: var(--color-black);
    opacity: 0;
    pointer-events: none;
    cursor: pointer;
  }
  .skip-to-content:focus {
    opacity: 1;
    pointer-events: auto;
  }
}
@layer views {
  .text-media.media-end .text-media-media-container {
    --md-grid-column: 7 / span 6;
    margin-right: 0;
  }
  .text-media.media-end .text-media-text-container {
    --md-grid-column: 1 / span 5;
    --lg-grid-column: 1 / span 4;
    --md-grid-row: 1;
  }
  .text-media-media-container {
    --grid-column: 1 / span 4;
    --sm-grid-column: 1 / span 6;
    margin-right: calc(var(--base-gap) * 2);
  }
  .text-media-text-container {
    --grid-column: 1 / span 4;
    --sm-grid-column: 1 / span 6;
    --md-grid-column: 7 / span 5;
    --lg-grid-column: 7 / span 4;
  }
}
@layer views {
  .pagination {
    --grid-columns: 3;
    margin-block-start: var(--space-xl-2xl);
  }
  .pagination-link {
    background-color: var(--color-black);
    color: var(--color-white);
    display: flex;
    padding: var(--space-2xs);
    line-height: 1;
  }
  .pagination-link[aria-current=page] {
    color: var(--color-primary);
  }
  .pagination-prev {
    --grid-column: 1;
    margin-inline-end: auto;
    color: var(--color-black);
  }
  .pagination-button-group {
    --grid-column: 2;
    --grid-self: center;
    border-radius: var(--base-radius);
    overflow: clip;
  }
  .pagination-next {
    --grid-column: 3;
    margin-inline-start: auto;
    color: var(--color-black);
  }
}
@layer views {
  .bws-adminbar {
    --bws-adminbar-bg-color: black;
    --bws-adminbar-text-color: white;
    --bws-adminbar-padding-block: 0.5rem;
    --bws-adminbar-height: var(--root-adminbar-height);
    position: fixed;
    bottom: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    width: 100%;
    height: var(--bws-adminbar-height);
    padding-block: var(--bws-adminbar-padding-block);
    background-color: var(--bws-adminbar-bg-color);
    color: var(--bws-adminbar-text-color);
    font-size: 0.875rem;
  }
  .bws-adminbar-wrap {
    --wrap-max-width: none;
    --wrap-padding: 1rem;
    display: flex;
    gap: 2rem;
    justify-content: space-between;
  }
  .bws-adminbar-tools {
    display: flex;
    gap: 2rem;
  }
  .bws-adminbar-button {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background-color: transparent;
    border: none;
    color: var(--bws-adminbar-text-color);
    cursor: pointer;
  }
  .bws-adminbar-link {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
  }
}
