.header[data-astro-cid-3ef6ksr2]{padding-top:var(--space-xs);padding-bottom:var(--space-xs);background-color:var(--color-dark);width:100%}.header__content[data-astro-cid-3ef6ksr2]{position:relative;display:flex;align-items:center;justify-content:space-between}.header__title[data-astro-cid-3ef6ksr2]{z-index:10}.header__title[data-astro-cid-3ef6ksr2] h2[data-astro-cid-3ef6ksr2]{color:var(--color-light);text-transform:uppercase;font-size:var(--step-5);margin-bottom:var(--space-s-m);letter-spacing:var(--tracking-w)}.header__image[data-astro-cid-3ef6ksr2]{position:absolute;z-index:0;-o-object-fit:cover;object-fit:cover;width:100%;opacity:0.2}/*
// zie: https://piccalil.li/blog/a-modern-css-reset/
*/

/* A elements that don't have a class get default styles */

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

.container {
  width: 100%;
}

@media (min-width: 1px) {

  .container {
    max-width: 1px;
  }
}

@media (min-width: 720px) {

  .container {
    max-width: 720px;
  }
}

@media (min-width: 1024px) {

  .container {
    max-width: 1024px;
  }
}

@media (min-width: 1280px) {

  .container {
    max-width: 1280px;
  }
}

@media (min-width: 1536px) {

  .container {
    max-width: 1536px;
  }
}

.debug-screens::before {
  position: fixed;
  z-index: 2147483647;
  bottom: 0;
  left: 0;
  padding: .3333333em .5em;
  font-size: 12px;
  line-height: 1;
  font-family: sans-serif;
  background-color: #000;
  color: #fff;
  box-shadow: 0 0 0 1px #fff;
  content: 'screen: _';
}

@media (min-width: 1px) {

  .debug-screens::before {
    content: 'screen: sm';
  }
}

@media (min-width: 720px) {

  .debug-screens::before {
    content: 'screen: md';
  }
}

@media (min-width: 1024px) {

  .debug-screens::before {
    content: 'screen: lg';
  }
}

@media (min-width: 1280px) {

  .debug-screens::before {
    content: 'screen: xl';
  }
}

@media (min-width: 1536px) {

  .debug-screens::before {
    content: 'screen: 2xl';
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.visible {
  visibility: visible;
}

.invisible {
  visibility: hidden;
}

.collapse {
  visibility: collapse;
}

.static {
  position: static;
}

.fixed {
  position: fixed;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.inset-0 {
  inset: 0px;
}

.-top-4 {
  top: -1rem;
}

.-top-7 {
  top: -1.75rem;
}

.bottom-0 {
  bottom: 0px;
}

.bottom-\[60px\] {
  bottom: 60px;
}

.left-0 {
  left: 0px;
}

.right-0 {
  right: 0px;
}

.right-2 {
  right: 0.5rem;
}

.right-2\.5 {
  right: 0.625rem;
}

.top-0 {
  top: 0px;
}

.top-2 {
  top: 0.5rem;
}

.top-2\.5 {
  top: 0.625rem;
}

.z-10 {
  z-index: 10;
}

.z-20 {
  z-index: 20;
}

.z-30 {
  z-index: 30;
}

.z-40 {
  z-index: 40;
}

.z-50 {
  z-index: 50;
}

.m-auto {
  margin: auto;
}

.mx-0 {
  margin-left: 0px;
  margin-right: 0px;
}

.mx-1 {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}

.mx-3 {
  margin-left: 0.75rem;
  margin-right: 0.75rem;
}

.my-4 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.my-6 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.mb-1 {
  margin-bottom: 0.25rem;
}

.mb-2 {
  margin-bottom: 0.5rem;
}

.mr-1 {
  margin-right: 0.25rem;
}

.mr-2 {
  margin-right: 0.5rem;
}

.mt-2 {
  margin-top: 0.5rem;
}

.mt-4 {
  margin-top: 1rem;
}

.mt-6 {
  margin-top: 1.5rem;
}

.mt-8 {
  margin-top: 2rem;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.inline {
  display: inline;
}

.flex {
  display: flex;
}

.table {
  display: table;
}

.grid {
  display: grid;
}

.hidden {
  display: none;
}

.h-3 {
  height: 0.75rem;
}

.h-4 {
  height: 1rem;
}

.h-5 {
  height: 1.25rem;
}

.h-6 {
  height: 1.5rem;
}

.h-64 {
  height: 16rem;
}

.h-9 {
  height: 2.25rem;
}

.h-full {
  height: 100%;
}

.min-h-screen {
  min-height: 100vh;
}

.w-1\/2 {
  width: 50%;
}

.w-3 {
  width: 0.75rem;
}

.w-4 {
  width: 1rem;
}

.w-5 {
  width: 1.25rem;
}

.w-6 {
  width: 1.5rem;
}

.w-64 {
  width: 16rem;
}

.w-full {
  width: 100%;
}

.min-w-full {
  min-width: 100%;
}

.max-w-80 {
  max-width: 20rem;
}

.max-w-xl {
  max-width: 36rem;
}

.flex-1 {
  flex: 1 1 0%;
}

.flex-shrink {
  flex-shrink: 1;
}

.shrink-0 {
  flex-shrink: 0;
}

.-translate-x-full {
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-y-full {
  --tw-translate-y: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-full {
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-full {
  --tw-translate-y: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform-none {
  transform: none;
}

.cursor-default {
  cursor: default;
}

.cursor-not-allowed {
  cursor: not-allowed;
}

.cursor-pointer {
  cursor: pointer;
}

.resize {
  resize: both;
}

.grid-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grid-cols-7 {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.flex-col {
  flex-direction: column;
}

.items-start {
  align-items: flex-start;
}

.items-end {
  align-items: flex-end;
}

.items-center {
  align-items: center;
}

.justify-start {
  justify-content: flex-start;
}

.justify-end {
  justify-content: flex-end;
}

.justify-center {
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

.gap-1 {
  gap: 0.25rem;
}

.gap-3 {
  gap: 0.75rem;
}

.gap-4 {
  gap: 1rem;
}

.gap-y-1 {
  row-gap: 0.25rem;
}

.gap-y-5 {
  row-gap: 1.25rem;
}

.space-x-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.5rem * var(--tw-space-x-reverse));
  margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(1rem * var(--tw-space-x-reverse));
  margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-scroll {
  overflow: scroll;
}

.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.rounded {
  border-radius: 0.25rem;
}

.rounded-lg {
  border-radius: 0.5rem;
}

.rounded-md {
  border-radius: 0.375rem;
}

.rounded-e-lg {
  border-start-end-radius: 0.5rem;
  border-end-end-radius: 0.5rem;
}

.rounded-l-lg {
  border-top-left-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
}

.rounded-r-lg {
  border-top-right-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}

.rounded-s-lg {
  border-start-start-radius: 0.5rem;
  border-end-start-radius: 0.5rem;
}

.border {
  border-width: 1px;
}

.border-0 {
  border-width: 0px;
}

.border-2 {
  border-width: 2px;
}

.border-4 {
  border-width: 4px;
}

.border-b {
  border-bottom-width: 1px;
}

.border-blue-600 {
  --tw-border-opacity: 1;
  border-color: rgb(37 99 235 / var(--tw-border-opacity));
}

.border-blue-700 {
  --tw-border-opacity: 1;
  border-color: rgb(29 78 216 / var(--tw-border-opacity));
}

.border-gray-100 {
  --tw-border-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-border-opacity));
}

.border-gray-200 {
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity));
}

.border-gray-300 {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity));
}

.border-gray-400 {
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity));
}

.border-green-800 {
  --tw-border-opacity: 1;
  border-color: rgb(22 101 52 / var(--tw-border-opacity));
}

.border-indigo-700 {
  --tw-border-opacity: 1;
  border-color: rgb(67 56 202 / var(--tw-border-opacity));
}

.border-transparent {
  border-color: transparent;
}

.bg-blue-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(29 78 216 / var(--tw-bg-opacity));
}

.bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}

.bg-gray-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity));
}

.bg-gray-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity));
}

.bg-gray-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
}

.bg-gray-900\/50 {
  background-color: rgb(17 24 39 / 0.5);
}

.bg-green-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(21 128 61 / var(--tw-bg-opacity));
}

.bg-indigo-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(67 56 202 / var(--tw-bg-opacity));
}

.bg-light {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}

.bg-slate-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity));
}

.bg-slate-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(51 65 85 / var(--tw-bg-opacity));
}

.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

.bg-white\/50 {
  background-color: rgb(255 255 255 / 0.5);
}

.bg-opacity-50 {
  --tw-bg-opacity: 0.5;
}

.fill-current {
  fill: currentColor;
}

.p-1 {
  padding: 0.25rem;
}

.p-2 {
  padding: 0.5rem;
}

.p-2\.5 {
  padding: 0.625rem;
}

.p-4 {
  padding: 1rem;
}

.px-0 {
  padding-left: 0px;
  padding-right: 0px;
}

.px-12 {
  padding-left: 3rem;
  padding-right: 3rem;
}

.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.py-1 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.py-2\.5 {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

.py-20 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.pb-4 {
  padding-bottom: 1rem;
}

.pr-1 {
  padding-right: 0.25rem;
}

.pt-2 {
  padding-top: 0.5rem;
}

.pt-4 {
  padding-top: 1rem;
}

.text-center {
  text-align: center;
}

.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}

.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.font-bold {
  font-weight: 700;
}

.font-medium {
  font-weight: 500;
}

.font-semibold {
  font-weight: 600;
}

.uppercase {
  text-transform: uppercase;
}

.leading-6 {
  line-height: 1.5rem;
}

.leading-9 {
  line-height: 2.25rem;
}

.text-black {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

.text-blue-600 {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity));
}

.text-dark {
  --tw-text-opacity: 1;
  color: rgb(3 7 18 / var(--tw-text-opacity));
}

.text-gray-500 {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity));
}

.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}

.text-gray-800 {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity));
}

.text-gray-900 {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}

.text-indigo-100 {
  --tw-text-opacity: 1;
  color: rgb(224 231 255 / var(--tw-text-opacity));
}

.text-indigo-300 {
  --tw-text-opacity: 1;
  color: rgb(165 180 252 / var(--tw-text-opacity));
}

.text-indigo-500 {
  --tw-text-opacity: 1;
  color: rgb(99 102 241 / var(--tw-text-opacity));
}

.text-indigo-700 {
  --tw-text-opacity: 1;
  color: rgb(67 56 202 / var(--tw-text-opacity));
}

.text-light {
  --tw-text-opacity: 1;
  color: rgb(249 250 251 / var(--tw-text-opacity));
}

.text-secondary {
  --tw-text-opacity: 1;
  color: rgb(55 48 163 / var(--tw-text-opacity));
}

.text-slate-100 {
  --tw-text-opacity: 1;
  color: rgb(241 245 249 / var(--tw-text-opacity));
}

.text-slate-200 {
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity));
}

.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.line-through {
  text-decoration-line: line-through;
}

.opacity-0 {
  opacity: 0;
}

.opacity-100 {
  opacity: 1;
}

.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.outline {
  outline-style: solid;
}

.ring-gray-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(229 231 235 / var(--tw-ring-opacity));
}

.ring-offset-2 {
  --tw-ring-offset-width: 2px;
}

.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-opacity {
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-shadow {
  transition-property: box-shadow;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.duration-200 {
  transition-duration: 200ms;
}

.ease-in {
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ease-out {
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

:root,
::backdrop {
  --color-primary-h: 266.5;
  --color-primary-s: 39.4%;
  --color-primary-l: 21.4%;
  --color-text-h: 0;
  --color-text-s: 0%;
  --color-text-l: 34.9%;
  --color-light: #f9fafb;
  --color-light-shade: #d1d5db;
  --color-dark: #030712;
  --color-primary-lighter: hsla(var(--color-primary-h), var(--color-primary-s), 80%, 100%);
  --color-primary: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 100%);
  --color-primary-shade: hsla(var(--color-primary-h), var(--color-primary-s), 20%, 100%);
  --color-secondary: hsl(243.7, 54.5%, 41.4%);
  --color-secondary-shade: hsl(243.7, 54.5%, 21.4%);
  --step--2: clamp(0.69rem, calc(0.69rem + 0.04vw), 0.72rem);
  --step--1: clamp(0.83rem, calc(0.81rem + 0.11vw), 0.9rem);
  --step-0: clamp(1rem, calc(0.96rem + 0.21vw), 1.13rem);
  --step-1: clamp(1.2rem, calc(1.13rem + 0.34vw), 1.41rem);
  --step-2: clamp(1.44rem, calc(1.33rem + 0.53vw), 1.76rem);
  --step-3: clamp(1.73rem, calc(1.57rem + 0.78vw), 2.2rem);
  --step-4: clamp(2.07rem, calc(1.85rem + 1.12vw), 2.75rem);
  --step-5: clamp(2.49rem, calc(2.17rem + 1.58vw), 3.43rem);
  --gutter: 1rem;
  --space-s-m: clamp(1.13rem, calc(0.86rem + 1.3vw), 1.88rem);
  --space-m-l: clamp(1.69rem, calc(1.4rem + 1.41vw), 2.5rem);
  --space-xs: 1rem;
  --space-md: 3rem;
  --tracking: -0.05ch;
  --tracking-s: -0.075ch;
  --tracking-w: 0.05em;
  --font-sans: Gilroy, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue,
    Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  --font-serif: Alex Brush, ui-serif, Georgia, Cambria, Times New Roman, Times, serif;
  --shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, 0.06), 0px 2px 1px hsla(0, 0%, 0%, 0.06);
  --shadow-md: 0px 8px 4px hsla(0, 0%, 0%, 0.03), 0px 5px 2px hsla(0, 0%, 0%, 0.03), 0px 3px 2px hsla(0, 0%, 0%, 0.06),
    0px 1px 1px hsla(0, 0%, 0%, 0.06);
  --shadow-lg: 0px 25px 7px rgba(0, 0, 0, 0.01), 0px 16px 6px hsla(0, 0%, 0%, 0.03),
    0px 9px 5px hsla(223, 13%, 10%, 0.08), 0px 4px 4px hsla(0, 0%, 0%, 0.16), 0px 4px 2px hsla(0, 0%, 0%, 0.04);
  --color-backdrop-overlay: hsla(225, 9%, 36%, 0.66);
  --sidebar-target-width: 20rem;
}

/*
  See https://gwfh.mranftl.com/
*/

@font-face {
  font-family: 'Gilroy';
  font-weight: 400;
  font-style: normal;
  src:
    local(''),
    url('/fonts/gilroy-light.woff2') format('woff2'),
    url('/fonts/gilroy-light.woff') format('woff');
  /* font-display: swap; avoid showing invisible text, now link preload is used in layout.astro */
}

html {
  scrollbar-gutter: stable;
}

body {
  background-color: var(--color-dark);
  color: var(--color-light);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: var(--font-sans);
  line-height: 1.5;
  overflow-x: hidden;
}

/* Set line lengths */

p,
li,
blockquote:not([class]) {
  max-width: 55ch;
}

ul,
p {
  font-size: var(--step-0);
}

a {
  color: var(--color-primary);
  font-size: var(--step-0);
  /*
  color: currentColor;
  text-decoration-color: var(--color-primary);
  text-decoration-line: underline;
  */
}

a:hover {
  text-decoration: underline;
}

:focus {
  outline: 1px dotted currentColor;
  outline-offset: 0.2rem;
}

main:focus {
  outline: none;
}

[x-cloak] {
  display: none !important;
}

h1,
h2,
h3 {
  font-family: var(--font-serif);
}

h1,
h2 {
  color: var(--color-primary);
  line-height: 1.1;
}

.blog h2 {
  color: #fde68a;
}

h1 {
  font-size: var(--step-4);
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

h2 {
  font-size: var(--step-1);
  margin-top: 2rem;
  margin-bottom: 1rem;
}

h3 {
  font-size: var(--step-1);
  margin-top: 2rem;
  margin-bottom: 0.5rem;
  font-weight: 400;
  color: var(--color-primary);
}

.skip-link {
  display: inline-block;
  padding: 0.7rem 1rem 0.5rem 1rem;
  background: var(--color-light);
  color: var(--color-primary-shade);
  text-decoration: none;
  font-weight: 700;
  text-transform: uppercase;
  position: absolute;
  top: 1rem;
  left: 1rem;
}

.skip-link:hover {
  background: var(--color-dark);
  color: var(--color-light-shade);
}

.skip-link:not(:focus) {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

.flow > * + * {
  margin-top: var(--flow-space, 1em);
}

.full-bleed {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

@media (min-width: 48em) {

.columns {
    -moz-column-count: 2;
         column-count: 2
}
  }

.all-center > * {
  text-align: center;
  margin-inline: auto;
}

.auto-grid {
  --auto-grid-min-size: 16rem;
}

.auto-grid > * {
  max-width: 400px;
}

.auto-grid > * + * {
  margin-top: 1rem;
}

@supports (display: grid) {
  .auto-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(var(--auto-grid-min-size), 1fr));
    grid-gap: 1rem;
  }

  .auto-grid > * {
    max-width: unset;
  }

  .auto-grid > * + * {
    margin-top: unset;
  }
}

.grid {
  display: grid;
  gap: var(--gutter, var(--space-s-l));
  grid-template-columns: repeat(var(--grid-placement, auto-fill), minmax(var(--grid-min-item-size, 16rem), 1fr));
}

.grid[data-layout='50-50'] {
  --grid-placement: auto-fit;
  --grid-min-item-size: clamp(16rem, 50vw, 30rem);
}

.grid[data-layout='thirds'] {
  --grid-placement: auto-fit;
  --grid-min-item-size: clamp(16rem, 33vw, 20rem);
}

.grid[data-layout='fourths'] {
  --grid-placement: auto-fit;
  --grid-min-item-size: clamp(13rem, 25vw, 16rem);
}

.grid[data-layout='fifths'] {
  --grid-placement: auto-fit;
  --grid-min-item-size: clamp(10rem, 20vw, 14rem);
}

/*
    A layout that allows you to lay 2 items next to each other until there is not enough horizontal space to allow that.

Configuration
Property	Default value	Description
--switcher-gutter	$global-gutter	This defines the space between each item
--switcher-vertical-alignment	flex-start	How items should align vertically. Can be any acceptable flexbox alignment value.
--switcher-target-container-width	30rem	How large the container needs to be to allow items to sit inline with each other
*/

.switcher {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gutter, clamp(1.375rem, 1.2rem + 0.89vw, 2rem));
  align-items: var(--switcher-vertical-alignment, flex-start);
}

.switcher > * {
  flex-grow: 1;
  flex-basis: calc((var(--switcher-target-container-width, 40rem) - 100%) * 999);
}

.switcher > :nth-last-child(n + 3),
.switcher > :nth-last-child(n + 3) ~ * {
  flex-basis: 100%;
}

.switcher[data-align='center'] > * {
  align-items: center;
}

.wrapper {
  max-width: 65rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.wrapper[data-variant='full'] {
  max-width: 100%;
}

.wrapper[data-variant='xl'] {
  max-width: 90%;
}

.wrapper[data-variant='m'] {
  max-width: 75rem;
}

.wrapper[data-variant='s'] {
  max-width: 62.5rem;
}

.wrapper[data-variant='xs'] {
  max-width: 30rem;
}

.nav-toggle {
  display: none;
  order: 1;
  margin-left: auto;
  padding: 0.2rem 1rem 0.3rem;
  height: 3.25em;
  border: 0;
}

.nav-toggle span {
  display: block;
  margin: 0.25em 0 0;
  font-size: 0.875em;
}

.nav-main {
  position: absolute;
  top: 3.25rem;
  left: 0;
  right: 0;
  z-index: 9999;
  background-color: #000;
}

.nav-main > ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
  margin: 0;
  padding: 0;
  color: var(--color-light);
}

.nav-main > ul > li {
  margin: 0.1rem;
}

.nav-main > ul > li > a {
  display: block;
  padding: 0.8rem;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  color: currentColor;
}

.nav-main a:hover {
  color: var(--color-light-shade);
}

.has-js-loaded .nav-toggle {
  display: block;
}

.has-js-loaded .nav-wrapper.noshow {
  display: none;
}

@media screen and (min-width: 768px) {
  .nav-toggle {
    display: none;
  }

  .header.has-js-loaded .nav-toggle {
    display: none;
  }

  .header.has-js-loaded .nav-wrapper.noshow {
    display: flex;
    align-items: center;
  }

  header {
    align-items: baseline;
  }
      header.has-js-loaded .nav-toggle {
        display: none;
      }

      header.has-js-loaded .nav-wrapper.noshow {
        display: block;
      }

  .nav-main {
    position: static;
    left: auto;
    right: auto;
    top: auto;
    background: $color-gray-dark;
  }

    .nav-main > ul {
      margin-left: 1rem;
      flex-direction: row;
    }
        .nav-main > ul > li > a {
          position: relative;
          color: #fff;
          padding: 0 1rem 0.25rem;
          border-top: 0.25rem solid transparent;
          font-size: 1rem;
          font-weight: 500;
          line-height: 3.25rem;
          transition: border-top-color 250ms ease-out;
        }

          .nav-main > ul > li > a:hover,
          .nav-main > ul > li > a:focus {
            color: #fff;
            border-top-color: $color-link;
          }

          .nav-main > ul > li > a:active {
            border-top-color: $color-brand;
          }

          .nav-main > ul > li > a[aria-expanded='true'] {
            background: #fff;
            border-top-color: $color-brand;
            color: $color-text;
            z-index: 1002;
          }
          .nav-main > ul > li.has-subnav > a {
            display: flex;
            align-items: center;
          }

            .nav-main > ul > li.has-subnav > a::before {
              display: none;
            }

  .subnav {
    position: absolute;
    left: 0;
    right: 0;
    top: 3.75rem;
    padding: 2rem;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    z-index: 1001;
  }
          .has-js-loaded .nav-main > ul > li.has-subnav > a::after {
            content: '';
            display: block;
            margin-left: 1rem;
            width: 0.5rem;
            height: 0.5rem;
            border-right: 0.094rem solid #fff;
            border-bottom: 0.094rem solid #fff;
            transform: rotate(45deg) translate(-0.3rem, 0.15rem);
          }
            .has-js-loaded .nav-main > ul > li.has-subnav > a[aria-expanded='true']::after {
              border-right-color: $color-text;
              border-bottom-color: $color-text;
              transform: rotate(-135deg) translate(0.15rem, -0.3rem);
            }
}

.button {
  font: inherit;
  display: inline-block;
  line-height: 1;
  text-decoration: none;
  border: 1px solid var(--color-secondary);
  background: var(--color-secondary);
  padding: 0.6rem 1.5rem;
  position: relative;
}

.button[data-variant='ghost'] {
  border-color: currentColor;
  background: transparent;
}

.button:focus {
  outline-offset: -0.4rem;
  outline: 1px solid;
}

.button:hover {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-light);
}

.button:active {
  transform: scale(0.95);
}

button[type='submit'] {
  font-weight: 600;
  color: var(--color-light);
  background-color: var(--color-primary);
  border-radius: 0.5rem;
  margin-top: 2rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

button[type='submit']:hover {
  background-color: var(--color-primary-shade);
}

a[data-inverted='true'] {
  color: var(--color-light);
}

p[data-priority='low'],
p[data-priority='low'] a {
  color: var(--color-light-shade);
  font-size: var(--step--1);
}

.last\:pb-1:last-child {
  padding-bottom: 0.25rem;
}

.hover\:border-gray-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity));
}

.hover\:bg-blue-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(30 64 175 / var(--tw-bg-opacity));
}

.hover\:bg-gray-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}

.hover\:bg-gray-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity));
}

.hover\:bg-green-600:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(22 163 74 / var(--tw-bg-opacity));
}

.hover\:bg-indigo-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(67 56 202 / var(--tw-bg-opacity));
}

.hover\:bg-indigo-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(55 48 163 / var(--tw-bg-opacity));
}

.hover\:bg-slate-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity));
}

.hover\:bg-white:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

.hover\:text-blue-600:hover {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity));
}

.hover\:text-gray-600:hover {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}

.hover\:text-gray-900:hover {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}

.hover\:underline:hover {
  text-decoration-line: underline;
}

.hover\:no-underline:hover {
  text-decoration-line: none;
}

.hover\:shadow-md:hover {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.focus\:outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-4:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-blue-300:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(147 197 253 / var(--tw-ring-opacity));
}

.focus\:ring-blue-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity));
}

.focus\:ring-gray-200:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(229 231 235 / var(--tw-ring-opacity));
}

.focus\:ring-indigo-300:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(165 180 252 / var(--tw-ring-opacity));
}

.focus-visible\:ring-2:focus-visible {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

@media (min-width: 1px) {

  .sm\:flex-row {
    flex-direction: row;
  }
}

@media (min-width: 720px) {

  .md\:gap-5 {
    gap: 1.25rem;
  }

  .last\:md\:pb-4:last-child {
    padding-bottom: 1rem;
  }
}

@media (min-width: 1024px) {

  .lg\:mx-0 {
    margin-left: 0px;
    margin-right: 0px;
  }

  .lg\:block {
    display: block;
  }

  .lg\:gap-6 {
    gap: 1.5rem;
  }

  .lg\:text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .lg\:tracking-tight {
    letter-spacing: -0.025em;
  }
}

@media (min-width: 1536px) {

  .\32xl\:relative {
    position: relative;
  }

  .\32xl\:hidden {
    display: none;
  }

  .\32xl\:transform-none {
    transform: none;
  }

  .\32xl\:opacity-100 {
    opacity: 1;
  }
}

.rtl\:rotate-180:where([dir="rtl"], [dir="rtl"] *) {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rtl\:space-x-reverse:where([dir="rtl"], [dir="rtl"] *) > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 1;
}

@media (prefers-color-scheme: dark) {

  .dark\:border-blue-500 {
    --tw-border-opacity: 1;
    border-color: rgb(59 130 246 / var(--tw-border-opacity));
  }

  .dark\:border-gray-600 {
    --tw-border-opacity: 1;
    border-color: rgb(75 85 99 / var(--tw-border-opacity));
  }

  .dark\:border-gray-700 {
    --tw-border-opacity: 1;
    border-color: rgb(55 65 81 / var(--tw-border-opacity));
  }

  .dark\:border-transparent {
    border-color: transparent;
  }

  .dark\:bg-blue-600 {
    --tw-bg-opacity: 1;
    background-color: rgb(37 99 235 / var(--tw-bg-opacity));
  }

  .dark\:bg-gray-600 {
    --tw-bg-opacity: 1;
    background-color: rgb(75 85 99 / var(--tw-bg-opacity));
  }

  .dark\:bg-gray-700 {
    --tw-bg-opacity: 1;
    background-color: rgb(55 65 81 / var(--tw-bg-opacity));
  }

  .dark\:bg-gray-800 {
    --tw-bg-opacity: 1;
    background-color: rgb(31 41 55 / var(--tw-bg-opacity));
  }

  .dark\:bg-gray-800\/50 {
    background-color: rgb(31 41 55 / 0.5);
  }

  .dark\:bg-gray-900\/80 {
    background-color: rgb(17 24 39 / 0.8);
  }

  .dark\:bg-indigo-600 {
    --tw-bg-opacity: 1;
    background-color: rgb(79 70 229 / var(--tw-bg-opacity));
  }

  .dark\:text-blue-500 {
    --tw-text-opacity: 1;
    color: rgb(59 130 246 / var(--tw-text-opacity));
  }

  .dark\:text-gray-400 {
    --tw-text-opacity: 1;
    color: rgb(156 163 175 / var(--tw-text-opacity));
  }

  .dark\:text-white {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
  }

  .dark\:hover\:bg-blue-700:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(29 78 216 / var(--tw-bg-opacity));
  }

  .dark\:hover\:bg-gray-600:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(75 85 99 / var(--tw-bg-opacity));
  }

  .dark\:hover\:bg-gray-800:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(31 41 55 / var(--tw-bg-opacity));
  }

  .dark\:hover\:bg-indigo-700:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(67 56 202 / var(--tw-bg-opacity));
  }

  .dark\:hover\:text-blue-500:hover {
    --tw-text-opacity: 1;
    color: rgb(59 130 246 / var(--tw-text-opacity));
  }

  .dark\:hover\:text-gray-300:hover {
    --tw-text-opacity: 1;
    color: rgb(209 213 219 / var(--tw-text-opacity));
  }

  .dark\:hover\:text-white:hover {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
  }

  .dark\:focus\:ring-indigo-800:focus {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(55 48 163 / var(--tw-ring-opacity));
  }
}
.footer[data-astro-cid-sz7xmlte]{color:var(--color-dark);background-color:var(--color-light-shade);padding-top:var(--space-m-l);padding-bottom:var(--space-m-l)}.footer-widget[data-astro-cid-sz7xmlte]{width:100%;padding-right:1rem}.footer-widget__header[data-astro-cid-sz7xmlte]{text-transform:uppercase;letter-spacing:var(--tracking-w);font-weight:400}footer[data-astro-cid-sz7xmlte]{padding-top:2rem;padding-bottom:2rem}.footer__copyright[data-astro-cid-sz7xmlte]{font-size:var(--step--1)}