@layer core {
  @layer tokens {
    :root {
      --oli-s-page-background-color: #fff;
      --hni-gap-xxs: var(--oli-g-spacing-xxs);
      --hni-gap-xs: var(--oli-g-spacing-xs);
      --hni-gap-s: var(--oli-g-spacing-s);
      --hni-gap-m: var(--oli-g-spacing-m);
      --hni-gap-l: var(--oli-g-spacing-l);
    }
  }
}
@layer third-party;
@layer components {
  hni-blocklink {
    display: block;
    transform: rotate(0);
  }
  [data-hni-link]:before {
    content: "";
    position: absolute;
    inset: 0;
  }
  [data-hni-z="up"] {
    z-index: calc(infinity);
    position: relative;
  }
  hni-icon {
    display: inline-block;
  }
  hni-info {
    padding: var(--oli-g-spacing-s);
    background: oklch(95% 0.03 231.34);
    margin-block-end: var(--oli-s-content-spacing);
    display: block;
  }
  hni-stack {
    display: block;
    &:not(:defined) {
      align-items: start;
      gap: var(--oli-g-spacing-m);
      flex-wrap: wrap;
      display: flex;
    }
    &:not(:last-child) {
      margin-block-end: var(--oli-g-spacing-m);
    }
    &::part(root) {
      --_gap: var(--hni-gap-s);
      gap: var(--_gap);
      align-items: start;
      display: flex;
      @container style(--hni-stack-wrap:true) {
        flex-wrap: wrap;
      }
      @container style(--hni-stack-from:m) {
        display: block;
        @container style(--oli-inline-size-m:var(--oli-s-break-points-m)) {
          display: flex;
        }
      }
    }
    @container style(--hni-stack-gap:xxs) {
      &::part(root) {
        --_gap: var(--hni-gap-xxs);
      }
    }
    @container style(--hni-stack-gap:m) {
      &::part(root) {
        --_gap: var(--hni-gap-m);
      }
    }
    @container style(--hni-stack-gap:l) {
      &::part(root) {
        --_gap: var(--hni-gap-l);
      }
    }
    @container style(--hni-stack-justify:center) {
      &::part(root) {
        justify-content: center;
      }
    }
    @container style(--hni-stack-justify:space-between) {
      &::part(root) {
        justify-content: space-between;
      }
    }
    @container style(--hni-stack-justify:space-evenly) {
      &::part(root) {
        justify-content: space-evenly;
      }
    }
    @container style(--hni-stack-align:center) {
      &::part(root) {
        align-items: center;
      }
    }
    &[_=] > * {
      outline: 4px solid red;
    }
  }
  hni-list {
    margin-block-end: var(--oli-g-spacing-m);
    display: block;
    & > h3,
    & .item {
      --oli-s-text-exponent: 0.4;
      font-variant: tabular-nums;
      margin-block: var(--oli-g-spacing-s);
      text-wrap: auto;
      padding-block-end: var(--oli-g-spacing-xs);
      font-weight: 500;
      & a {
        color: var(--oli-g-colors-text);
        text-decoration: var(--list-a-text-decoration, none);
        display: block;
      }
    }
    :is(& > h3, .item):not(:last-child) {
      border-bottom: 1px solid oklch(from var(--oli-g-colors-dark) l c h / 0.3);
    }
    & .item h3 {
      --oli-s-text-exponent: 0.4;
      margin-block-end: 0;
      font-weight: 500;
    }
    & > :is(ol, ul) {
      padding: 0;
      list-style: none;
      display: block;
    }
    & > div {
      --oli-s-text-exponent: 0.1;
      letter-spacing: 0.5px;
      margin-block-end: var(--oli-g-spacing-xl);
    }
    & a:is(:link, :visited) {
      --list-a-text-decoration: none;
    }
    & a:hover {
      --list-a-text-decoration: underline;
    }
    & time {
      --oli-s-text-exponent: 0;
    }
    & hgroup {
      margin-block-start: 0;
      line-height: 1;
    }
  }
  hni-cta {
    & a {
      text-underline-offset: 5px;
      color: var(--oli-g-colors-text);
      text-decoration-thickness: 4px;
      text-decoration-color: var(--oli-g-colors-main);
      font-weight: 700;
    }
  }
  hni-pagination {
    display: block;
  }
  hni-pagination:not(:defined) :is(ol, ul) {
    gap: var(--oli-g-spacing-s);
    flex-flow: wrap;
    justify-content: center;
    padding: 0;
    list-style: none;
  }
}
@layer utility,core.reset,core.tokens,core.base;
@layer third-party.imports {
  @layer tokens {
    :root {
      --oli-g-colors-1: calc(abs(var(--oli-s-color-scheme) - 0.1));
      --oli-g-colors-2: calc(abs(var(--oli-s-color-scheme) - 0.2));
      --oli-g-colors-3: calc(abs(var(--oli-s-color-scheme) - 0.3));
      --oli-g-colors-4: calc(abs(var(--oli-s-color-scheme) - 0.4));
      --oli-g-colors-5: calc(abs(var(--oli-s-color-scheme) - 0.5));
      --oli-g-colors-6: calc(abs(var(--oli-s-color-scheme) - 0.6));
      --oli-g-colors-7: calc(abs(var(--oli-s-color-scheme) - 0.7));
      --oli-g-colors-8: calc(abs(var(--oli-s-color-scheme) - 0.8));
      --oli-g-colors-9: calc(abs(var(--oli-s-color-scheme) - 0.9));
      --oli-g-colors-95: calc(abs(var(--oli-s-color-scheme) - 0.95));
      --oli-g-colors-base-hue: 130;
      --oli-g-colors-base-chroma: 0.09;
      --oli-g-colors-base-light: 0.5;
      --oli-g-colors-light: oklch(
        from var(--oli-g-colors-neutral-10)
          calc(abs(var(--oli-s-color-scheme) - 0.96)) c h
      );
      --oli-g-colors-dark: var(--oli-g-colors-main-80);
      --oli-g-colors-background: var(--oli-g-colors-neutral-5);
      --oli-g-colors-background-alt: var(--oli-g-colors-contrast-80);
      --oli-g-colors-background-alt2: var(--oli-g-colors-contrast2-20);
      --oli-g-colors-highlight: var(--oli-g-colors-main);
      --oli-g-colors-text: var(--oli-g-colors-dark);
      --oli-g-colors-text-alt: var(--oli-g-colors-light);
      --oli-g-colors-cta: var(--oli-g-colors-main-50);
      --oli-g-colors-cta-text: var(--oli-g-colors-light);
      --oli-g-colors-cta-alt: var(--oli-g-colors-contrast-50);
      --oli-g-colors-state-highlight: var(--oli-g-colors-contrast-10);
      --oli-g-colors-state-error: oklch(
        from var(--oli-g-colors-contrast) 0.4 0.6 0
      );
      --oli-g-colors-state-disabled: var(--oli-g-colors-neutral-30);
      --oli-g-colors-selector-attribute-atrule: var(
        --oli-g-colors-contrast2-10
      );
      --oli-g-colors-comment-doctype: var(--oli-g-colors-neutral-30);
      --oli-g-colors-property-tag-constant: var(--oli-g-colors-main-10);
      --oli-g-colors-string-value-function: var(--oli-g-colors-contrast-5);
      --oli-g-colors-main: oklch(
        calc(abs(var(--oli-s-color-scheme) - var(--oli-g-colors-base-light)))
          var(--oli-g-colors-base-chroma) var(--oli-g-colors-base-hue)
      );
      --oli-g-colors-main-10: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - 0.9))
          c h
      );
      --oli-g-colors-main-20: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - 0.8))
          c h
      );
      --oli-g-colors-main-30: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - 0.7))
          c h
      );
      --oli-g-colors-main-40: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - 0.6))
          c h
      );
      --oli-g-colors-main-50: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - 0.5))
          c h
      );
      --oli-g-colors-main-60: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - 0.4))
          c h
      );
      --oli-g-colors-main-70: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - 0.3))
          c h
      );
      --oli-g-colors-main-80: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - 0.2))
          c h
      );
      --oli-g-colors-main-90: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - 0.1))
          c h
      );
      --oli-g-colors-neutral: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - l))
          calc(c - 0.087) h
      );
      --oli-g-colors-neutral-5: oklch(
        from var(--oli-g-colors-neutral)
          calc(abs(var(--oli-s-color-scheme) - 0.95)) c h
      );
      --oli-g-colors-neutral-10: oklch(
        from var(--oli-g-colors-neutral)
          calc(abs(var(--oli-s-color-scheme) - 0.9)) c h
      );
      --oli-g-colors-neutral-20: oklch(
        from var(--oli-g-colors-neutral)
          calc(abs(var(--oli-s-color-scheme) - 0.8)) c h
      );
      --oli-g-colors-neutral-30: oklch(
        from var(--oli-g-colors-neutral)
          calc(abs(var(--oli-s-color-scheme) - 0.7)) c h
      );
      --oli-g-colors-neutral-40: oklch(
        from var(--oli-g-colors-neutral)
          calc(abs(var(--oli-s-color-scheme) - 0.6)) c h
      );
      --oli-g-colors-neutral-50: oklch(
        from var(--oli-g-colors-neutral)
          calc(abs(var(--oli-s-color-scheme) - 0.5)) c h
      );
      --oli-g-colors-neutral-60: oklch(
        from var(--oli-g-colors-neutral)
          calc(abs(var(--oli-s-color-scheme) - 0.4)) c h
      );
      --oli-g-colors-neutral-70: oklch(
        from var(--oli-g-colors-neutral)
          calc(abs(var(--oli-s-color-scheme) - 0.3)) c h
      );
      --oli-g-colors-neutral-80: oklch(
        from var(--oli-g-colors-neutral)
          calc(abs(var(--oli-s-color-scheme) - 0.2)) c h
      );
      --oli-g-colors-neutral-90: oklch(
        from var(--oli-g-colors-neutral)
          calc(abs(var(--oli-s-color-scheme) - 0.1)) c h
      );
      --oli-g-colors-contrast: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - l)) c
          calc(h + 240)
      );
      --oli-g-colors-contrast-5: oklch(
        from var(--oli-g-colors-contrast)
          calc(abs(var(--oli-s-color-scheme) - 0.95)) c h
      );
      --oli-g-colors-contrast-10: oklch(
        from var(--oli-g-colors-contrast)
          calc(abs(var(--oli-s-color-scheme) - 0.9)) c h
      );
      --oli-g-colors-contrast-20: oklch(
        from var(--oli-g-colors-contrast)
          calc(abs(var(--oli-s-color-scheme) - 0.8)) c h
      );
      --oli-g-colors-contrast-30: oklch(
        from var(--oli-g-colors-contrast)
          calc(abs(var(--oli-s-color-scheme) - 0.7)) c h
      );
      --oli-g-colors-contrast-40: oklch(
        from var(--oli-g-colors-contrast)
          calc(abs(var(--oli-s-color-scheme) - 0.6)) c h
      );
      --oli-g-colors-contrast-50: oklch(
        from var(--oli-g-colors-contrast)
          calc(abs(var(--oli-s-color-scheme) - 0.5)) c h
      );
      --oli-g-colors-contrast-60: oklch(
        from var(--oli-g-colors-contrast)
          calc(abs(var(--oli-s-color-scheme) - 0.4)) c h
      );
      --oli-g-colors-contrast-70: oklch(
        from var(--oli-g-colors-contrast)
          calc(abs(var(--oli-s-color-scheme) - 0.3)) c h
      );
      --oli-g-colors-contrast-80: oklch(
        from var(--oli-g-colors-contrast)
          calc(abs(var(--oli-s-color-scheme) - 0.2)) c h
      );
      --oli-g-colors-contrast-90: oklch(
        from var(--oli-g-colors-contrast)
          calc(abs(var(--oli-s-color-scheme) - 0.1)) c h
      );
      --oli-g-colors-contrast2: oklch(
        from var(--oli-g-colors-main) calc(abs(var(--oli-s-color-scheme) - l))
          calc(c + 0.05) calc(h - 50)
      );
      --oli-g-colors-contrast2-10: oklch(
        from var(--oli-g-colors-contrast2)
          calc(abs(var(--oli-s-color-scheme) - 0.9)) c h
      );
      --oli-g-colors-contrast2-20: oklch(
        from var(--oli-g-colors-contrast2)
          calc(abs(var(--oli-s-color-scheme) - 0.8)) c h
      );
      --oli-g-colors-contrast2-30: oklch(
        from var(--oli-g-colors-contrast2)
          calc(abs(var(--oli-s-color-scheme) - 0.7)) c h
      );
      --oli-g-colors-contrast2-40: oklch(
        from var(--oli-g-colors-contrast2)
          calc(abs(var(--oli-s-color-scheme) - 0.6)) c h
      );
      --oli-g-colors-contrast2-50: oklch(
        from var(--oli-g-colors-contrast2)
          calc(abs(var(--oli-s-color-scheme) - 0.5)) c h
      );
      --oli-g-colors-contrast2-60: oklch(
        from var(--oli-g-colors-contrast2)
          calc(abs(var(--oli-s-color-scheme) - 0.4)) c h
      );
      --oli-g-colors-contrast2-70: oklch(
        from var(--oli-g-colors-contrast2)
          calc(abs(var(--oli-s-color-scheme) - 0.3)) c h
      );
      --oli-g-colors-contrast2-80: oklch(
        from var(--oli-g-colors-contrast2)
          calc(abs(var(--oli-s-color-scheme) - 0.2)) c h
      );
      --oli-g-colors-contrast2-90: oklch(
        from var(--oli-g-colors-contrast2)
          calc(abs(var(--oli-s-color-scheme) - 0.1)) c h
      );
      --oli-g-colors-l: calc(abs(var(--oli-s-color-scheme) - l));
      --oli-g-text-size-base-s: 0.95rem;
      --oli-g-text-size-base-m: 1.2rem;
      --oli-s-color-scheme: 0;
      --oli-s-magic: true;
      --oli-s-layout: vertical;
      --oli-s-scroll-behavior: smooth;
      --oli-s-font-stack: humanist;
      --oli-s-break-points-m: 48rem;
      --oli-s-break-points-l: 64rem;
      --oli-s-page-max-width: 80rem;
      --oli-s-page-start-column-width: 16rem;
      --oli-s-page-base-font-size-s: var(--oli-g-text-size-base-s);
      --oli-s-page-base-font-size-m: 1.1rem;
      --oli-s-page-text-scale: 1;
      --oli-s-page-line-height-s: 1.7;
      --oli-s-page-line-height-m: 1.7;
      --oli-s-page-padding: clamp(1rem, 0.6667rem + 1.6667vw, 2rem);
      --oli-s-page-background-color: var(--oli-g-colors-background);
      --oli-s-page-color: var(--oli-g-colors-text);
      --oli-s-content-max-width: 54rem;
      --oli-s-content-vertical-offset: initial;
      --oli-s-content-spacing: var(--oli-g-spacing-m);
      --oli-s-content-hyphens: none;
      --oli-s-heading-1-line-height: 1.1;
      --oli-s-heading-1-color: var(--oli-g-colors-highlight);
      --oli-s-heading-1-font-weight: 600;
      --oli-s-heading-1-margin-block: revert-layer;
      --oli-s-heading-1-scalefactor: 5;
      --oli-s-heading-2-line-height: 1.2;
      --oli-s-heading-2-color: var(--oli-g-colors-highlight);
      --oli-s-heading-2-font-weight: 600;
      --oli-s-heading-2-margin-block: var(--oli-g-spacing-xl)
        var(--oli-g-spacing-m);
      --oli-s-heading-2-scalefactor: 3;
      --oli-s-heading-3-line-height: 1.2;
      --oli-s-heading-3-font-weight: 600;
      --oli-s-heading-3-margin-block: var(--oli-g-spacing-xl)
        var(--oli-g-spacing-m);
      --oli-s-heading-3-scalefactor: 2;
      --oli-s-heading-4-line-height: 1.2;
      --oli-s-heading-4-font-weight: 500;
      --oli-s-heading-4-margin-block: var(--oli-g-spacing-m)
        var(--oli-g-spacing-s);
      --oli-s-heading-4-scalefactor: 1;
      --oli-s-heading-5-scalefactor: 1;
      --oli-s-heading-6-scalefactor: 1;
      --oli-s-section-background-color: transparent;
      --oli-s-section-color: inherit;
      --oli-s-section-margin: calc(
        var(--oli-g-spacing-base) * pow(var(--oli-g-spacing-scale), 4)
      );
      --oli-s-section-padding-block: 0;
      --oli-s-link-color: var(--oli-g-colors-cta);
      --oli-s-link-color-visited: var(--oli-g-colors-cta-alt);
      --oli-s-states-error: var(--oli-g-colors-state-error);
      --oli-s-states-highlight: var(--oli-g-colors-state-highlight);
      --oli-s-header-alignment: end;
      --oli-s-header-background-color: transparent;
      --oli-s-header-border-image: conic-gradient(transparent 0 0) fill 1 / /0
        50vw;
      --oli-s-header-color: var(--oli-g-colors-highlight);
      --oli-s-header-margin-block-end: var(--oli-g-spacing-xxxl);
      --oli-s-header-title-margin-block-end: var(--oli-g-spacing-xxl);
      --oli-s-header-logo-inline-size: 150px;
      --oli-s-main-nav-gap: var(--oli-g-spacing-m);
      --oli-s-main-nav-gap-vertical: var(--oli-g-spacing-m);
      --oli-s-main-nav-color: var(--oli-g-colors-cta-alt);
      --oli-s-main-nav-color-active: var(--oli-g-colors-cta);
      --oli-s-main-nav-text-scale: 0.5;
      --oli-s-footer-margin-block-start: var(--oli-g-spacing-xl);
      --oli-s-figure-background-color: var(--oli-g-colors-background-alt2);
      --oli-s-figure-color: var(--oli-g-colors-text);
      --oli-s-blockquote-margin-block: var(--oli-g-spacing-xxl);
      --oli-s-blockquote-pseudo-before-color: var(--oli-g-colors-highlight);
      --oli-s-hr-border-color: var(--oli-g-colors-highlight);
      --oli-s-code-font-family: "Fira Code", monospace;
      --oli-s-strong-font-weight: 600;
      --oli-s-table-background-color: var(--oli-g-colors-background);
      --oli-s-table-th-font-weight: 600;
      --oli-s-table-th-background-color: var(--oli-g-colors-background-alt2);
      --oli-s-table-th-color: var(--oli-g-colors-text);
      --oli-s-list-flex-direction: column;
      --oli-s-list-gap: 0.3rem;
      --oli-s-list-marker-color: var(--oli-g-colors-highlight);
      --oli-s-form-item-background-color: var(--oli-g-colors-background);
      --oli-s-form-item-spacing: var(--oli-g-spacing-s);
      --oli-s-form-button-background-color: var(--oli-g-colors-cta);
      --oli-s-form-button-background-color-pressed: var(--oli-g-colors-cta-alt);
      --oli-s-form-button-background-color-disabled: var(
        --oli-g-colors-state-disabled
      );
      --oli-s-form-button-border-radius: 3px;
      --oli-s-form-button-color: var(--oli-g-colors-light);
      --oli-s-form-legend-border-color: var(--oli-g-colors-highlight);
      --oli-s-text-scale: 1.26;
      --oli-g-spacing-base: clamp(0.5rem, 0.3333rem + 0.8333vw, 1rem);
      --oli-g-spacing-scale: 1.414;
      --oli-g-spacing-xxxs: calc(
        var(--oli-g-spacing-base) * pow(var(--oli-g-spacing-scale), -3)
      );
      --oli-g-spacing-xxs: calc(
        var(--oli-g-spacing-base) * pow(var(--oli-g-spacing-scale), -2)
      );
      --oli-g-spacing-xs: calc(
        var(--oli-g-spacing-base) * pow(var(--oli-g-spacing-scale), -1)
      );
      --oli-g-spacing-s: calc(
        var(--oli-g-spacing-base) * pow(var(--oli-g-spacing-scale), 0)
      );
      --oli-g-spacing-m: calc(
        var(--oli-g-spacing-base) * pow(var(--oli-g-spacing-scale), 1)
      );
      --oli-g-spacing-l: calc(
        var(--oli-g-spacing-base) * pow(var(--oli-g-spacing-scale), 2)
      );
      --oli-g-spacing-xl: calc(
        var(--oli-g-spacing-base) * pow(var(--oli-g-spacing-scale), 3)
      );
      --oli-g-spacing-xxl: calc(
        var(--oli-g-spacing-base) * pow(var(--oli-g-spacing-scale), 4)
      );
      --oli-g-spacing-xxxl: calc(
        var(--oli-g-spacing-base) * pow(var(--oli-g-spacing-scale), 5)
      );
      --_oli-font-stack-humanist:
        Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans",
        source-sans-pro, sans-serif;
      --_oli-font-stack-geometric:
        Avenir, Montserrat, Corbel, "URW Gothic", source-sans-pro, sans-serif;
      --_oli-font-stack-old:
        "Iowan Old Style", "Palatino Linotype", "URW Palladio L", P052, serif;
      --_oli-font-stack-slab-serif:
        Rockwell, "Rockwell Nova", "Roboto Slab", "DejaVu Serif", "Sitka Small",
        serif;
      --_oli-font-stack-transitional:
        Charter, "Bitstream Charter", "Sitka Text", Cambria, serif;
      --_oli-font-stack-monospace-slab-serif:
        "Nimbus Mono PS", "Courier New", monospace;
      --_oli-font-stack-monospace:
        ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas,
        "DejaVu Sans Mono", monospace;
    }
    body,
    :is(h1, h2, h3, h4, h5, h6) {
      @container style(--oli-s-font-stack:geometric) {
        --oli-s-font-family: var(--_oli-font-stack-geometric);
      }
      @container style(--oli-s-font-stack:old) {
        --oli-s-font-family: var(--_oli-font-stack-old);
      }
      @container style(--oli-s-font-stack:humanist) {
        --oli-s-font-family: var(--_oli-font-stack-humanist);
      }
      @container style(--oli-s-font-stack:slab-serif) {
        --oli-s-font-family: var(--_oli-font-stack-slab-serif);
      }
      @container style(--oli-s-font-stack:transitional) {
        --oli-s-font-family: var(--_oli-font-stack-transitional);
      }
      @container style(--oli-s-font-stack:monospace-slab-serif) {
        --oli-s-font-family: var(--_oli-font-stack-monospace-slab-serif);
      }
      @container style(--oli-s-font-stack:monospace) {
        --oli-s-font-family: var(--_oli-font-stack-monospace);
      }
    }
    @container style(--oli-s-magic:true) {
      body {
        --_body-padding: 0;
        --_wrapper-padding: var(--oli-s-page-padding);
      }
    }
  }
  @layer styles {
    @layer uaplus-reset-styles {
      *,
      :after,
      :before {
        box-sizing: border-box;
      }
      :focus-visible {
        outline-offset: 3px;
      }
      html {
        -webkit-text-size-adjust: none;
        text-size-adjust: none;
        scrollbar-gutter: stable;
        line-height: 1.5;
      }
      body {
        -webkit-font-smoothing: antialiased;
      }
      h1 {
        margin-block: 0.67em;
        font-size: 2em;
      }
      h1,
      h2,
      h3 {
        line-height: 1.2;
      }
      abbr[title] {
        cursor: help;
        text-decoration-line: underline;
        text-decoration-style: dotted;
      }
      @media (forced-colors: active) {
        mark {
          color: highlighttext;
          background-color: highlight;
        }
      }
      audio,
      iframe,
      img,
      svg,
      video {
        max-block-size: 100%;
        max-inline-size: 100%;
      }
      fieldset {
        min-inline-size: 0;
      }
      label:has(
        + :where(input:not([type="radio"], [type="checkbox"]), select, textarea)
      ) {
        display: block;
      }
      textarea:not([rows]) {
        min-block-size: 6em;
      }
      button,
      input,
      select,
      textarea {
        font-family: inherit;
        font-size: inherit;
      }
      :disabled {
        cursor: not-allowed;
      }
      [type="search"] {
        -webkit-appearance: textfield;
      }
      @supports (-webkit-touch-callout: none) {
        [type="search"] {
          border: 1px solid -apple-system-secondary-label;
          background-color: canvas;
        }
      }
      input:where(
          [type="tel"],
          [type="url"],
          [type="email"],
          [type="number"]
        ):not(:placeholder-shown) {
        direction: ltr;
      }
      table {
        border-collapse: collapse;
        font-variant-numeric: tabular-nums lining-nums slashed-zero;
        border: 1px solid;
      }
      th,
      td {
        vertical-align: top;
        border: 1px solid;
        padding: 0.25em 0.5em;
      }
      dialog::backdrop {
        background: oklch(0% 0 0/0.5);
      }
      dialog {
        --_dialog-transition-speed: 0.15s;
        --_dialog-transition: var(--_dialog-transition-speed);
      }
      dialog:not(:modal) {
        --_dialog-transition: 0;
      }
      dialog:-internal-dialog-in-top-layer {
        --_dialog-transition: var(--_dialog-transition-speed);
      }
      dialog,
      [popover],
      dialog::backdrop {
        opacity: 0;
        transition:
          opacity var(--_dialog-transition) ease-out,
          display var(--_dialog-transition) allow-discrete,
          overlay var(--_dialog-transition) allow-discrete;
      }
      dialog[open],
      :popover-open,
      dialog[open]::backdrop {
        opacity: 1;
      }
      @starting-style {
        dialog[open],
        :popover-open,
        dialog[open]::backdrop {
          opacity: 0;
        }
      }
      [hidden]:not([hidden="until-found"]) {
        display: none !important;
      }
      img {
        display: block;
      }
      summary {
        cursor: default;
      }
      iframe {
        border: none;
      }
      @supports (position-area: end) {
        [popover] {
          position-area: end span-end;
          position-try-fallbacks:
            flip-block,
            flip-inline,
            flip-block flip-inline;
          margin: 0;
        }
      }
    }
    .phi-visually-hidden {
      clip-path: inset(50%);
      white-space: nowrap;
      width: 1px;
      height: 1px;
      position: absolute;
      overflow: hidden;
    }
    .phi-skip-link {
      z-index: calc(infinity);
      border-radius: 3px;
      padding: 0.1rem 0.7rem;
      text-decoration: none;
      position: absolute;
    }
    .phi-skip-link:not(:focus-visible) {
      clip-path: inset(50%);
      white-space: nowrap;
      width: 1px;
      height: 1px;
      overflow: hidden;
    }
    .phi-list-reset {
      margin: 0;
      padding: 0;
      list-style-type: "";
    }
    @property --oli-inline-size-m {
      syntax: "<length-percentage>";
      inherits: true;
      initial-value: 100vi;
    }
    @property --oli-inline-size-l {
      syntax: "<length-percentage>";
      inherits: true;
      initial-value: 100vi;
    }
    html {
      --oli-inline-size-m: min(var(--oli-s-break-points-m), 100vi);
      --oli-inline-size-l: min(var(--oli-s-break-points-l), 100vi);
      container-type: inline-size;
    }
    html *,
    :before,
    :after {
      --_font-size-base: var(--oli-s-page-base-font-size-s);
      --_font-size-scaling-factor: pow(
        var(--oli-s-text-scale),
        var(--oli-s-text-exponent, 0)
      );
      @container style(--oli-inline-size-m:var(--oli-s-break-points-m)) {
        --_font-size-base: var(--oli-s-page-base-font-size-m);
      }
      font-size: var(
        --oli-text-size,
        round(
          calc(var(--_font-size-base) * var(--_font-size-scaling-factor)),
          1px
        )
      );
    }
    @media (prefers-reduced-motion: no-preference) {
      html {
        scroll-behavior: var(--oli-s-scroll-behavior);
      }
    }
    body {
      --_body-padding: var(--oli-s-page-padding);
      --_wrapper-padding: 0;
      --_body-display: grid;
      --_body-grid-template-columns: initial;
      --_body-grid-template-row: auto 1fr auto;
      --_body-min-block-size: 0;
      --_body-line-height: var(--oli-s-page-line-height-s);
      --oli-s-text-exponent: var(--oli-s-page-text-scale);
      background-color: var(--oli-s-page-background-color);
      color: var(--oli-s-page-color);
      display: var(--_body-display);
      font-family: var(--oli-s-font-family);
      grid-template-columns: var(--_body-grid-template-columns);
      grid-template-rows: var(--_body-grid-template-row);
      line-height: var(--_body-line-height);
      min-block-size: var(--_body-min-block-size);
      padding: var(--_body-padding);
      margin: 0;
    }
    body {
      @container style(--oli-inline-size-m:var(--oli-s-break-points-m)) {
        --_body-line-height: var(--oli-s-page-line-height-m);
      }
    }
    header,
    [role="banner"] {
      --_header-margin: 0 0 var(--oli-s-header-margin-block-end) 0;
      --_header-justify-content: initial;
      --_header-align-items: initial;
      --_header-padding-block: var(--_wrapper-padding);
      --_header-padding-inline: var(--_wrapper-padding);
      --_header-border-image: initial;
      align-items: var(--_header-align-items);
      border-image: var(--_header-border-image);
      justify-content: var(--_header-justify-content);
      padding-inline: var(--_header-padding-inline);
      padding-block: var(--_header-padding-block);
      margin: var(--_header-margin);
    }
    main {
      --_main-margin: 0;
      --_main-padding-block: var(--_wrapper-padding);
      --_main-padding-inline: var(--_wrapper-padding);
      --_main-max-inline-size: auto;
      --oli-s-font-stack: transitional;
      hyphens: var(--oli-s-content-hyphens);
      margin: var(--_main-margin);
      min-width: 0;
      padding-inline: var(--_main-padding-inline);
      padding-block: var(--_main-padding-block);
      max-inline-size: var(--_main-max-inline-size);
    }
    footer {
      --_footer-grid-column: auto;
      --_footer-margin: var(--oli-s-footer-margin-block-start) 0 0 0;
      --_footer-padding-block: var(--_wrapper-padding);
      --_footer-padding-inline: var(--_wrapper-padding);
      padding-inline: var(--_footer-padding-inline);
      padding-block: var(--_footer-padding-block);
      grid-column: var(--_footer-grid-column);
      margin: var(--_footer-margin);
    }
    :is(section, article):where(:not(:last-child)) {
      margin-block-end: var(--oli-s-section-margin);
    }
    section {
      padding-block: var(--oli-s-section-padding-block);
      background-color: var(--oli-s-section-background-color);
    }
    p,
    ol,
    ul,
    dl,
    figure,
    blockquote,
    picture {
      max-inline-size: var(--oli-s-content-max-width);
      margin-block: 0;
    }
    :is(p, ol, ul, dl, figure, blockquote, picture):where(:not(:last-child)) {
      margin-block-end: var(--oli-s-content-spacing);
    }
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
      text-wrap: balance;
      font-family: var(--oli-s-font-family);
    }
    :where(h1, h2, h3, h4, h5, h6):first-child {
      margin-block-start: 0;
    }
    h1 {
      color: var(--oli-s-heading-1-color);
      font-weight: var(--oli-s-heading-1-font-weight);
      line-height: var(--oli-s-heading-1-line-height);
    }
    h1,
    hgroup:has(h1) {
      --oli-s-text-exponent: var(--oli-s-heading-1-scalefactor);
    }
    dialog :is(h1, hgroup:has(h1)) {
      --oli-s-text-exponent: var(--oli-s-heading-2-scalefactor);
    }
    h2 {
      color: var(--oli-s-heading-2-color);
      font-weight: var(--oli-s-heading-2-font-weight);
      line-height: var(--oli-s-heading-2-line-height);
    }
    h2,
    hgroup:has(h2) {
      --oli-s-text-exponent: var(--oli-s-heading-2-scalefactor);
      margin-block: var(--oli-s-heading-2-margin-block);
    }
    h3 {
      color: var(--oli-s-heading-3-color);
      font-weight: var(--oli-s-heading-3-font-weight);
      line-height: var(--oli-s-heading-3-line-height);
    }
    h3,
    hgroup:has(h3) {
      --oli-s-text-exponent: var(--oli-s-heading-3-scalefactor);
      margin-block: var(--oli-s-heading-3-margin-block);
    }
    h4 {
      color: var(--oli-s-heading-4-color);
      font-weight: var(--oli-s-heading-4-font-weight);
      line-height: var(--oli-s-heading-4-line-height);
    }
    h4,
    hgroup:has(h4) {
      --oli-s-text-exponent: var(--oli-s-heading-4-scalefactor);
      margin-block: var(--oli-s-heading-4-margin-block);
    }
    h5 {
      --oli-s-text-exponent: var(--oli-s-heading-5-scalefactor);
    }
    h6 {
      --oli-s-text-exponent: var(--oli-s-heading-6-scalefactor);
    }
    hgroup :where(h1, h2, h3, h4, h5, h6) {
      margin-block-end: 0;
    }
    hgroup :where(h1, h2, h3, h4, h5, h6) + * {
      margin: 0;
    }
    hgroup > :not(h1, h2, h3, h4, h5, h6) {
      --oli-s-text-exponent: 0.5;
    }
    :where(figure) {
      background-color: var(--oli-s-figure-background-color);
      color: var(--oli-s-figure-color);
      border-radius: 3px;
      margin: 0;
      padding: 0.3em;
    }
    figcaption {
      padding: 0.6rem 0.3rem 0;
    }
    blockquote {
      --oli-s-text-exponent: 4;
      margin-block: var(--oli-s-blockquote-margin-block);
      font-style: italic;
      line-height: 1.1;
      position: relative;
    }
    blockquote:after,
    blockquote:before {
      color: var(--oli-s-blockquote-pseudo-before-color);
      opacity: 0.4;
      line-height: 0;
    }
    blockquote:before {
      content: open-quote;
      margin-inline-end: -0.2em;
    }
    blockquote:after {
      content: close-quote;
      margin-inline-start: -0.2em;
    }
    hr {
      border-color: var(--oli-s-hr-border-color);
      border-style: solid;
      border-width: 0 0 2px;
    }
    pre {
      --oli-s-text-exponent: 0;
    }
    ol,
    ul {
      flex-direction: var(--oli-s-list-flex-direction);
      gap: var(--oli-s-list-gap);
      line-height: calc(var(--_body-line-height) - 0.2);
      display: flex;
    }
    ol ol,
    ul ul {
      gap: 0.1rem;
      padding-inline-start: 1em;
    }
    li::marker {
      color: var(--oli-s-list-marker-color);
    }
    code:not([class]) {
      font-size: 0.9em;
      font-family: var(--oli-s-code-font-family);
    }
    samp {
      --oli-s-text-exponent: 0;
      font-family: var(--_oli-font-stack-monospace);
    }
    var,
    kbd {
      font-size: 0.9em;
      font-family: var(--oli-s-code-font-family);
    }
    sub,
    sup {
      --oli-s-text-exponent: -2;
    }
    strong,
    b {
      font-weight: var(--oli-s-strong-font-weight);
    }
    cite,
    q {
      font-style: italic;
    }
    ruby rt {
      --oli-s-text-exponent: -1;
      margin-block: 1px;
    }
    a {
      text-underline-offset: 2px;
    }
    a:link {
      color: var(--oli-s-link-color);
    }
    a:where(:hover, :focus-visible) {
      text-decoration: none;
    }
    a:visited {
      color: var(--oli-s-link-color-visited);
    }
    u {
      color: var(--oli-s-states-error);
      text-decoration-style: wavy;
    }
    small {
      --oli-s-text-exponent: 1;
    }
    mark {
      background-color: var(--oli-s-states-highlight);
      border-radius: 2px;
      padding-inline: 0.2em;
    }
    iframe {
      border-style: solid;
    }
    table {
      --oli-s-text-exponent: 0.25;
      background-color: oklch(
        from var(--oli-s-table-background-color) l c h / 0.67
      );
      inline-size: min(100%, var(--oli-s-content-max-width));
      margin-block-end: var(--oli-s-content-spacing);
    }
    caption {
      --oli-s-text-exponent: 1;
      text-align: start;
      font-weight: 600;
    }
    th {
      text-align: start;
      background-color: var(--oli-s-table-th-background-color);
      color: var(--oli-s-table-th-color);
      font-weight: var(--oli-s-table-th-font-weight);
    }
    th:only-of-type,
    td[scope="row"] {
      background-color: oklch(
        from var(--oli-s-table-th-background-color) l c h / 0.2
      );
    }
    form > :is(div, p) {
      margin-block-end: var(--oli-s-form-item-spacing);
    }
    label {
      letter-spacing: 0.025em;
      font-size: smaller;
      line-height: 1.2;
    }
    input:where(
      [type="date"],
      [type="email"],
      [type="month"],
      [type="number"],
      [type="password"],
      [type="search"],
      [type="tel"],
      [type="text"],
      [type="time"],
      [type="url"],
      [type="week"]
    ),
    textarea,
    select {
      --oli-s-text-exponent: 0.5;
      border-style: solid;
      border-width: 1px;
      border-color: var(--oli-g-colors-highlight);
      border-radius: 0.1em;
      margin-block-start: 2px;
      padding: 0.3em 0.4em;
    }
    button,
    input:is([type="button"], [type="reset"], [type="submit"]),
    .oli-h-button {
      --_button-background: var(--oli-s-form-button-background-color);
      --_button-opacity: 1;
      --_button-color: var(--oli-s-form-button-color);
      --_button-radius: var(--oli-s-form-button-border-radius);
      border-radius: var(--_button-radius);
      background: oklch(
        from var(--_button-background) l c h / var(--_button-opacity)
      );
      color: var(--_button-color);
      letter-spacing: 1px;
      text-box-trim: trim-both;
      text-box-edge: cap alphabetic;
      border: 1px solid #0000;
      padding: 0.25em 0.6em;
      font-family: Seravek, system-ui, sans-serif;
      line-height: 1.2;
      text-decoration: none;
      display: inline-flex;
    }
    .oli-h-button:is(:link, :visited) {
      color: var(--_button-color);
    }
    :is(
        button,
        input:where([type="button"], [type="reset"], [type="submit"])
      ):not([disabled]):is(:hover, :focus-visible) {
      --_button-opacity: 0.8;
    }
    [disabled] {
      --_button-background: var(--oli-s-form-button-background-color-disabled);
      cursor: not-allowed;
    }
    [aria-pressed],
    [aria-selected] {
      --_button-background: var(--oli-s-form-button-background-color-pressed);
    }
    [aria-selected="false"]:not(:hover, :focus-visible) {
      --_button-opacity: 0.2;
      color: var(--oli-s-form-button-background-color-pressed);
    }
    [aria-selected]:not([disabled]):is(:hover, :focus-visible) {
      --_button-background: var(--oli-s-form-button-background-color-pressed);
    }
    fieldset {
      border: none;
      margin: 0;
      padding: 0;
    }
    legend {
      background-color: var(--oli-s-page-background-color);
      margin-left: 20px;
      margin-block-end: 1rem;
      padding-inline: 10px;
      line-height: 1;
      position: relative;
      left: 0;
    }
    legend:before {
      content: "";
      background: var(--oli-s-form-legend-border-color);
      z-index: -1;
      width: calc(100% + 40px);
      height: 2px;
      display: block;
      position: absolute;
      top: calc(50% + 3px);
      left: -20px;
      transform: translateY(-100%);
    }
    [type="radio"],
    [type="checkbox"] {
      appearance: none;
      aspect-ratio: 1;
      background-color: var(--oli-s-form-button-color);
      border: 1px solid var(--oli-s-form-button-background-color);
      margin: 0 var(--oli-g-spacing-xxxs) 0 0;
      border-radius: 2px;
      width: 0.7em;
      position: relative;
    }
    [type="radio"] {
      border-radius: 50%;
    }
    :is([type="radio"], [type="checkbox"]):checked {
      background-color: var(--oli-s-form-button-background-color);
    }
    :is([type="radio"], [type="checkbox"]):checked:before {
      content: "";
      margin: auto;
      display: block;
      position: absolute;
      inset: 0;
    }
    [type="radio"]:checked:before {
      background-color: var(--oli-s-form-button-color);
      border-radius: inherit;
      aspect-ratio: 1;
      width: 50%;
    }
    [type="checkbox"]:checked:before {
      aspect-ratio: 16/9;
      border: 2px solid;
      border-color: transparent transparent var(--oli-s-form-button-color)
        var(--oli-s-form-button-color);
      transform-origin: 50%;
      width: 80%;
      inset: -2px 0 0;
      transform: rotate(-45deg) translate(-0%);
    }
    [role="region"][tabindex="0"] {
      overflow: auto;
    }
    .step {
      display: none;
    }
    .step--active {
      display: block;
    }
    dialog {
      background-color: var(--oli-g-colors-background);
      border-width: 0;
    }
    [popover] {
      background-color: var(--oli-g-colors-light);
      border-color: var(--oli-s-form-button-background-color);
      border-width: 3px;
      border-radius: 4px;
      margin-block-start: 2px;
    }
    :focus-visible {
      outline: 3px solid var(--oli-g-colors-cta);
    }
    @container style(--oli-s-magic:true) {
      header,
      main,
      footer {
        --_wrapper-layout: max(0px, 50cqw - var(--oli-s-page-max-width) / 2);
      }
      main {
        --_main-margin: 0 var(--_wrapper-layout);
      }
      header,
      [role="banner"] {
        --_header-align-items: var(--oli-s-header-alignment);
        --_header-border-image: var(--oli-s-header-border-image);
        --_header-justify-content: space-between;
        --_header-margin: 0 var(--_wrapper-layout)
          var(--oli-s-header-margin-block-end);
        --_header-padding-block: var(--oli-g-spacing-s) 0;
      }
      footer,
      [role="contentinfo"] {
        --_footer-margin: var(--oli-s-footer-margin-block-start)
          var(--_wrapper-layout) 0;
      }
      body {
        --_body-padding: 0 var(--oli-s-page-padding) var(--oli-s-page-padding);
      }
      header > div:first-child {
        align-items: center;
        gap: 8px;
        line-height: 1;
        display: flex;
      }
      header > div:first-child a {
        color: var(--oli-s-header-color);
        font-weight: 600;
        text-decoration: none;
      }
      header nav :is(ol, ul) {
        --oli-s-text-exponent: var(--oli-s-main-nav-text-scale);
        --oli-s-list-flex-direction: row;
        gap: var(--oli-s-main-nav-gap);
        flex-wrap: wrap;
        margin: 0;
        padding: 0;
        list-style: none;
        display: flex;
      }
      header nav li {
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
      }
      header nav a {
        --_header-main-nav-link-text-decoration: none;
        text-decoration: var(--_header-main-nav-link-text-decoration);
        letter-spacing: 0.5px;
        text-underline-offset: 0.22em;
        text-transform: uppercase;
        letter-spacing: 1px;
        font-weight: 600;
        text-decoration-thickness: 0.12em;
      }
      header nav a:is(:link, :visited) {
        color: var(--oli-s-main-nav-color);
      }
      header nav a:hover {
        --_header-main-nav-link-text-decoration: underline;
      }
      header nav a[aria-current="page"] {
        --_header-main-nav-link-text-decoration: underline;
        color: var(--oli-s-main-nav-color-active);
      }
      div:has(a:first-child > img):has(a:last-child > img):not(:last-child) {
        margin-block-end: var(--oli-s-content-spacing);
      }
      :is(div, p):has(> [aria-invalid]) {
        color: var(--oli-s-states-error);
      }
      dialog > button[command="close"]:not([class]) {
        --oli-s-text-exponent: 0;
        position: relative;
        left: 100%;
        transform: translate(-100%);
      }
    }
    @container style(--oli-s-layout:vertical) {
      @media (width>=64em) {
        body {
          --_body-start-column: calc(
            var(--oli-s-page-start-column-width) + (var(--_wrapper-padding) * 2)
          );
          --_body-padding: 0;
          --_wrapper-padding: var(--oli-s-page-padding);
          --_body-grid-template-columns: var(--_body-start-column) 1fr;
          --_body-grid-template-row: 1fr auto;
          --_body-min-block-size: 100dvh;
        }
        header,
        [role="banner"] {
          --_header-padding-block: var(--_wrapper-padding);
          --_header-padding-inline: var(--_wrapper-padding);
          --_header-border-image: initial;
          --_header-margin: 0;
        }
        main {
          --_main-padding-block: var(
              --oli-s-content-vertical-offset,
              var(--_wrapper-padding)
            )
            var(--_wrapper-padding);
          --_main-padding-inline: 0 var(--_wrapper-padding);
          --_main-margin: 0;
          --_main-max-inline-size: calc(
            var(--oli-s-page-max-width) - var(--_body-start-column)
          );
        }
        footer {
          grid-column: 2;
          margin: 0;
          padding-inline: 0;
        }
        header > div:first-child {
          margin-block-end: var(--oli-s-header-title-margin-block-end);
        }
        header > div:first-child svg {
          width: var(--oli-s-header-logo-inline-size);
        }
        header nav :is(ol, ul) {
          --oli-s-list-flex-direction: column;
          gap: var(--oli-s-main-nav-gap-vertical);
        }
      }
    }
    @container style(--oli-s-magic:true) and style(--oli-s-layout:horizontal) {
      header,
      [role="banner"] {
        display: flex;
      }
    }
    @container style(--oli-s-magic:true) and style(--oli-s-layout:vertical) {
      @media (width<=64em) {
        header,
        [role="banner"] {
          display: flex;
        }
      }
    }
    @container style(--oli-s-magic:true) or style(--oli-s-layout:vertical) {
      :is(article, aside, main, nav, section) :is(header, footer) {
        all: revert;
      }
    }
  }
}
@layer third-party.overrides,components.base,components.variations;
