@charset "UTF-8";
/* ================================================== */
/* Reset */
/* ================================================== */
/* Use box-sizing model */
*, *::before, *::after {
  box-sizing: border-box;
}

/* Kill margin with fire */
* {
  margin: 0;
}

/* Improve text rendering */
body {
  -webkit-font-smoothing: antialiased;
}

/* Remove list styles */
ol,
ul {
  list-style: none;
}

/* Prevent text overflow */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

/* Remove padding */
a,
ul,
ol,
li,
dl,
dt,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hgroup,
p,
blockquote,
figure,
form,
fieldset,
input,
legend,
pre,
abbr,
button,
body,
textarea,
select {
  padding: 0;
}

/* Reset interactive elements */
a,
input,
button,
textarea,
fieldset,
select {
  font: inherit;
  margin: 0;
  padding: 0;
  margin-inline-start: 0;
  margin-inline-end: 0;
  padding-block-start: 0;
  padding-inline-start: 0;
  padding-inline-end: 0;
  padding-block-end: 0;
  background-color: transparent;
  border: 0;
  border-style: none;
  text-decoration: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  pointer-events: auto;
}

/* debug */
/* Utils */
/* ================================================== */
/* Grid | Flex-box | Gap */
/* ================================================== */
/* Mixins */
/* ================================================== */
/* Space */
/* ================================================== */
/* Mobile 1st breakpoints */
/* ================================================== */
/* Breakpoints MAP ✨ Config these values */
/* ================================================== */
/* Breakpoints MAP ✨ Config these values */
/* ================================================== */
/* Breakpoint mixin */
/* ================================================== */
/* Breakpoint variables */
/* ================================================== */
/* ================================================== */
/* How to use */
/* ================================================== */
/* add this ⬇︎ to the very top of the document */
/* 💠 example */
/* ================================================== */
/* Container queries */
/* ================================================== */
/* Background container query */
/* ================================================== */
/* Used by _card, _accordion, and _glass */
.bg-container {
  container: bg/inline-size;
  width: 100%;
}

/* ================================================== */
/* z-index */
/* ================================================== */
/* ================================================== */
/* ================================================== */
/* Dynamic T-shirt sizes ✨ Config these values */
/* ================================================== */
:root {
  /* 4px */
  --5xs: 0.25rem;
  /* 8px */
  --4xs: 0.5rem;
  /* 12px */
  --3xs: 0.75rem;
  /* 14px */
  --2xs: 0.875rem;
  /* 16px */
  --xs: 1rem;
  /* 16px → 24px */
  --sm: clamp(1rem, calc(2vw + 0.5rem), 1.5rem);
  /* 20px → 32px */
  --md: clamp(1.25rem, calc(2vw + 0.85rem), 2rem);
  /* 24px → 40px */
  --lg: clamp(1.5rem, calc(2vw + 1rem), 2.5rem);
  /* 28px → 48px */
  --xl: clamp(1.75rem, calc(2vw + 1.4rem), 3rem);
  /* 32px → 56px */
  --2xl: clamp(2rem, calc(2vw + 1.6rem), 3.5rem);
  /* 48px → 72px */
  --3xl: clamp(3rem, calc(2vw + 2.6rem), 4.5rem);
  /* 64px → 96px */
  --4xl: clamp(4rem, calc(2vw + 3.6rem), 6rem);
  /* 80px → 120px */
  --5xl: clamp(5rem, calc(2vw + 4.6rem), 7.5rem);
}

/* T-shirt Size MAP */
/* ================================================== */
/* Update if you add/remove/edit names of fluid sizes above */
/* Gutters ✨ Config these values */
/* ================================================== */
/* ================================================== */
/* Responsive spacing/sizing ✨ Config these values */
/* ================================================== */
html {
  --gutter: 1rem;
  --w-layout-inner-base: calc(100% - (var(--gutter) * 2));
  /* Container query value for padding / margin / gap */
  --space-q-sm: 7cqw;
  --space-q-md: 7cqw;
  --space-q-lg: 11cqw;
  /* ui height */
  --ui-h-xs: 1.375rem; /* 22px */
  --ui-h-sm: 1.75rem; /* 28px */
  --ui-h-md: 2rem; /* 32px */
  --ui-h-lg: 2.5rem; /* 40px */
  --ui-h-xl: 3.25rem; /* 52px */
}
@media only screen and (min-width: 22.5rem) {
  html {
    --ui-h-xs: 1.5rem; /* 24px */
    --ui-h-sm: 2rem; /* 32px */
    --ui-h-md: 2.25rem; /* 36px */
    --ui-h-lg: 2.75rem; /* 44px */
  }
}
@media only screen and (min-width: 30rem) {
  html {
    --gutter: 1rem;
    --space-q-sm: 7cqw;
    --space-q-md: 6cqw;
    --space-q-lg: min(10cqw, 5rem);
  }
}
@media only screen and (min-width: 48rem) {
  html {
    --gutter: 2rem;
  }
}
@media only screen and (min-width: 64rem) {
  html {
    --gutter: 4rem;
    --ui-h-sm: 2.125rem; /* 34px */
    --ui-h-md: 2.375rem; /* 38px */
    --ui-h-lg: 2.875rem; /* 46px */
    --ui-h-xl: 3.375rem; /* 54px */
  }
}
@media only screen and (min-width: 90rem) {
  html {
    --gutter: 9rem;
  }
}

/* ================================================== */
/* Gutters */
/* ================================================== */
.gutter-all {
  width: var(--w-layout-inner-base);
  max-width: 44rem;
  margin: 0 auto;
}
@media only screen and (min-width: 48rem) {
  .gutter-all {
    max-width: 56rem;
  }
}
@media only screen and (min-width: 64rem) {
  .gutter-all {
    max-width: 72rem;
  }
}
@media only screen and (min-width: 90rem) {
  .gutter-all {
    max-width: 1500px;
  }
}

.gutter-from-xs {
  width: 100%;
  margin: 0 auto;
}
@media only screen and (min-width: 22.5rem) {
  .gutter-from-xs {
    width: var(--w-layout-inner-base);
    max-width: 28rem;
  }
}
@media only screen and (min-width: 30rem) {
  .gutter-from-xs {
    max-width: 44rem;
  }
}
@media only screen and (min-width: 48rem) {
  .gutter-from-xs {
    max-width: 56rem;
  }
}
@media only screen and (min-width: 64rem) {
  .gutter-from-xs {
    max-width: 72rem;
  }
}
@media only screen and (min-width: 90rem) {
  .gutter-from-xs {
    max-width: 1500px;
  }
}

.gutter-from-sm {
  width: 100%;
  margin: 0 auto;
}
@media only screen and (min-width: 30rem) {
  .gutter-from-sm {
    width: var(--w-layout-inner-base);
    max-width: 44rem;
  }
}
@media only screen and (min-width: 48rem) {
  .gutter-from-sm {
    max-width: 56rem;
  }
}
@media only screen and (min-width: 64rem) {
  .gutter-from-sm {
    max-width: 72rem;
  }
}
@media only screen and (min-width: 90rem) {
  .gutter-from-sm {
    max-width: 1500px;
  }
}

.gutter-from-md {
  width: 100%;
  margin: 0 auto;
}
@media only screen and (min-width: 48rem) {
  .gutter-from-md {
    width: var(--w-layout-inner-base);
    max-width: 56rem;
  }
}
@media only screen and (min-width: 64rem) {
  .gutter-from-md {
    max-width: 72rem;
  }
}
@media only screen and (min-width: 90rem) {
  .gutter-from-md {
    max-width: 1500px;
  }
}

.gutter-from-lg {
  width: 100%;
  margin: 0 auto;
}
@media only screen and (min-width: 64rem) {
  .gutter-from-lg {
    width: var(--w-layout-inner-base);
    max-width: 72rem;
  }
}
@media only screen and (min-width: 90rem) {
  .gutter-from-lg {
    max-width: 1500px;
  }
}

/* ================================================== */
/* Width */
/* ================================================== */
/* ℹ️ .w- classes limit the width of elements to their suffix breakpoint */
/* e.g. .w-md takes up 100% width at $bp-sm & won't get bigger than the value of $bp-md */
.w-xs {
  width: min(100%, 22.5rem);
}

.w-sm {
  width: min(100%, 30rem);
}

.w-md {
  width: min(100%, 48rem);
}

.w-lg {
  width: min(100%, 64rem);
}

.w-xl {
  width: min(100%, 90rem);
}

.w-2xl {
  width: min(100%, 107rem);
}

/* ================================================== */
/* Large spacing */
/* ================================================== */
.page-gap {
  z-index: 1;
  display: grid;
  gap: 8rem;
}
@media only screen and (min-width: 22.5rem) {
  .page-gap {
    gap: 10rem;
  }
}
@media only screen and (min-width: 30rem) {
  .page-gap {
    gap: 12rem;
  }
}
@media only screen and (min-width: 48rem) {
  .page-gap {
    gap: 14rem;
  }
}
@media only screen and (min-width: 64rem) {
  .page-gap {
    gap: 16rem;
  }
}
@media only screen and (min-width: 90rem) {
  .page-gap {
    gap: 18rem;
  }
}

.section-gap {
  z-index: 2;
  display: grid;
  gap: 5rem;
}
@media only screen and (min-width: 22.5rem) {
  .section-gap {
    gap: 8rem;
  }
}
@media only screen and (min-width: 30rem) {
  .section-gap {
    gap: 9rem;
  }
}
@media only screen and (min-width: 48rem) {
  .section-gap {
    gap: 10rem;
  }
}
@media only screen and (min-width: 64rem) {
  .section-gap {
    gap: 11rem;
  }
}
@media only screen and (min-width: 90rem) {
  .section-gap {
    gap: 12rem;
  }
}

/* Edge-to-edge classes */
/* ================================================== */
.e2e {
  --_space: var(--space, 1rem);
  --neg-space: calc(-1 * var(--_space));
  --_neg-space: var(--neg-space, -1rem);
  width: calc(100% + var(--_space) * 2);
  display: grid;
  margin-left: var(--_neg-space);
  margin-right: var(--_neg-space);
  padding: var(--_space);
}
.e2e.p-0 {
  padding: 0;
}

.e2e-no-t {
  --_space: var(--space, 1rem);
  --neg-space: calc(-1 * var(--_space));
  --_neg-space: var(--neg-space, -1rem);
  width: calc(100% + var(--_space) * 2);
  display: grid;
  margin-left: var(--_neg-space);
  margin-right: var(--_neg-space);
  padding: var(--_space);
  margin-top: var(--neg-space);
}
.e2e-no-t.p-0 {
  padding: 0;
}

.e2e-no-b {
  --_space: var(--space, 1rem);
  --neg-space: calc(-1 * var(--_space));
  --_neg-space: var(--neg-space, -1rem);
  width: calc(100% + var(--_space) * 2);
  display: grid;
  margin-left: var(--_neg-space);
  margin-right: var(--_neg-space);
  padding: var(--_space);
  margin-bottom: var(--neg-space);
}
.e2e-no-b.p-0 {
  padding: 0;
}

.e2e-no-y {
  --_space: var(--space, 1rem);
  --neg-space: calc(-1 * var(--_space));
  --_neg-space: var(--neg-space, -1rem);
  width: calc(100% + var(--_space) * 2);
  display: grid;
  margin-left: var(--_neg-space);
  margin-right: var(--_neg-space);
  padding: var(--_space);
  margin-top: var(--neg-space);
  margin-bottom: var(--neg-space);
}
.e2e-no-y.p-0 {
  padding: 0;
}

.e2e-inset {
  --_space: var(--space, 1rem);
  --neg-space: calc(-1 * var(--_space));
  --_neg-space: var(--neg-space, -1rem);
  width: calc(100% + var(--_space) * 2);
  display: grid;
  margin-left: var(--_neg-space);
  margin-right: var(--_neg-space);
  padding: var(--_space);
  margin-left: calc(var(--neg-space) + 1px);
  margin-right: var(--neg-space);
  background-color: var(--inset-bg-deep);
  box-shadow: var(--inset-flat-md);
}
.e2e-inset.p-0 {
  padding: 0;
}

/* Remove margin-left offset at 100vw or bigger */
/* the -16px prevents issues with scrollbars cutting into 100vw */
@container card (width >= calc(100vw - 16px)) {
  .e2e-inset {
    margin-left: var(--neg-space);
  }
}
/* ================================================== */
/* Generic class generating mixin */
/* ================================================== */
/* Size modifier mixin */
/* ================================================== */
/* Generates classes using the $sizes map from _space.scss */
/* 2 property size modifier mixin */
/* ================================================== */
/* HSL lightness values */
/* ================================================== */
/* Color lightness generating mixin */
/* ================================================== */
/* Color generating mixin */
/* ================================================== */
/* ================================================== */
/* ================================================== */
/* Gap classes */
/* ================================================== */
.gap-5xs {
  gap: var(--5xs);
}
.gap-4xs {
  gap: var(--4xs);
}
.gap-3xs {
  gap: var(--3xs);
}
.gap-2xs {
  gap: var(--2xs);
}
.gap-xs {
  gap: var(--xs);
}
.gap-sm {
  gap: var(--sm);
}
.gap-md {
  gap: var(--md);
}
.gap-lg {
  gap: var(--lg);
}
.gap-xl {
  gap: var(--xl);
}
.gap-2xl {
  gap: var(--2xl);
}
.gap-3xl {
  gap: var(--3xl);
}
.gap-4xl {
  gap: var(--4xl);
}
.gap-5xl {
  gap: var(--5xl);
}

/* ================================================== */
/* flex-box */
/* ================================================== */
.flex {
  display: flex;
}

/* flex center x & y */
.flex-c {
  display: flex;
  justify-content: center;
  align-items: center;
}

.flex-column-c {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

/* flex-direction: */
/* ================================================== */
.flex-column {
  display: flex;
  flex-direction: column;
}

.flex-column-rev {
  display: flex;
  flex-direction: column-reverse;
}

.flex-row {
  display: flex;
  flex-direction: row;
}

.flex-row-rev {
  display: flex;
  flex-direction: row-reverse;
}

/* flex-wrap: */
/* ================================================== */
.flex-wrap {
  display: flex;
  flex-wrap: wrap;
}

.flex-wrap-rev {
  display: flex;
  flex-wrap: wrap-reverse;
}

.flex-nowrap {
  display: flex;
  flex-wrap: nowrap;
}

/* justify-content: */
/* ================================================== */
.justify-l {
  display: flex;
  justify-content: flex-start;
}

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

.justify-c {
  display: flex;
  justify-content: center;
}

.justify-sb {
  display: flex;
  justify-content: space-between;
}

.justify-sa {
  display: flex;
  justify-content: space-around;
}

.justify-se {
  display: flex;
  justify-content: space-evenly;
}

/* align-items: */
/* ================================================== */
.align-items-t {
  display: flex;
  align-items: flex-start;
}

.align-items-c {
  display: flex;
  align-items: center;
}

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

.align-items-s {
  display: flex;
  align-items: stretch;
}

/* For multi-line flex-wrap */
/* ================================================== */
.align-content-c {
  display: flex;
  align-content: center;
}

.align-content-sb {
  display: flex;
  align-content: space-between;
}

.align-content-sa {
  display: flex;
  align-content: space-around;
}

.align-content-se {
  display: flex;
  align-content: space-evenly;
}

/* For flex items */
/* ================================================== */
.align-self-t {
  align-self: flex-start;
}

.align-self-c {
  align-self: center;
}

.align-self-b {
  align-self: flex-end;
}

.align-self-s {
  align-self: stretch;
}

.flex-100 {
  display: flex;
  flex: 0 1 100px;
}

/* ================================================== */
/* Grid */
/* ================================================== */
.grid {
  display: grid;
}

/* grid center x & y */
.grid-c {
  display: grid;
  place-items: center;
}

.grid-start {
  display: grid;
  place-items: center start;
}

.grid-end {
  display: grid;
  place-items: center end;
}

.grid-content-c {
  display: grid;
  place-content: center;
}

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

/* auto-fill */
/* Fills the row with as many columns as it can fit. So it creates implicit columns. */
.grid-auto-fill {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
}

/* auto-fit */
/* Fits the columns it has into the space by expanding them. */
.grid-auto-fit {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
}

.grid-auto-fit-300 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

/* Properties for Grid Items */
/* ================================================== */
.place-self-c {
  place-self: center;
}

.place-self-s {
  place-self: stretch;
}

/* ================================================== */
/* Layout helpers */
/* ================================================== */
/* width */
/* ================================================== */
.w-100 {
  width: 100%;
}

.w-fit {
  width: -moz-fit-content;
  width: fit-content;
}

.w-fit-max {
  width: -moz-max-content;
  width: max-content;
}

.w-fit-min {
  width: -moz-min-content;
  width: min-content;
}

/* Display */
/* ================================================== */
.block {
  display: block;
}

.inline {
  display: inline;
}

.inlineblock {
  display: inline-block;
}

.hidden {
  display: none;
}

.visually-hidden {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  overflow: hidden;
  padding: 0;
  border: 0;
  white-space: nowrap;
}

/* Aspect-ratio */
/* ================================================== */
.ratio-1 {
  aspect-ratio: 1;
}

.ratio-4-3 {
  aspect-ratio: 4/3;
}

.ratio-16-9 {
  aspect-ratio: 16/9;
}

/* Sidescroll */
/* ================================================== */
.sidescroll-bin {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.sidescroll-bin::-webkit-scrollbar {
  display: none;
}
.sidescroll-bin:hover {
  overflow-x: scroll;
}

.sidescroll {
  flex: 0 0 auto;
}

/* Other */
/* ================================================== */
.no-pointer {
  pointer-events: none;
}

.overflow-hidden {
  overflow: hidden;
}

/* ================================================== */
/* Margins & Padding */
/* ================================================== */
/* ================================================== */
/* Margins */
/* ================================================== */
.m-5xs {
  margin: var(--5xs);
}
.m-4xs {
  margin: var(--4xs);
}
.m-3xs {
  margin: var(--3xs);
}
.m-2xs {
  margin: var(--2xs);
}
.m-xs {
  margin: var(--xs);
}
.m-sm {
  margin: var(--sm);
}
.m-md {
  margin: var(--md);
}
.m-lg {
  margin: var(--lg);
}
.m-xl {
  margin: var(--xl);
}
.m-2xl {
  margin: var(--2xl);
}
.m-3xl {
  margin: var(--3xl);
}
.m-4xl {
  margin: var(--4xl);
}
.m-5xl {
  margin: var(--5xl);
}

.m-t-5xs {
  margin-top: var(--5xs);
}
.m-t-4xs {
  margin-top: var(--4xs);
}
.m-t-3xs {
  margin-top: var(--3xs);
}
.m-t-2xs {
  margin-top: var(--2xs);
}
.m-t-xs {
  margin-top: var(--xs);
}
.m-t-sm {
  margin-top: var(--sm);
}
.m-t-md {
  margin-top: var(--md);
}
.m-t-lg {
  margin-top: var(--lg);
}
.m-t-xl {
  margin-top: var(--xl);
}
.m-t-2xl {
  margin-top: var(--2xl);
}
.m-t-3xl {
  margin-top: var(--3xl);
}
.m-t-4xl {
  margin-top: var(--4xl);
}
.m-t-5xl {
  margin-top: var(--5xl);
}

.m-b-5xs {
  margin-bottom: var(--5xs);
}
.m-b-4xs {
  margin-bottom: var(--4xs);
}
.m-b-3xs {
  margin-bottom: var(--3xs);
}
.m-b-2xs {
  margin-bottom: var(--2xs);
}
.m-b-xs {
  margin-bottom: var(--xs);
}
.m-b-sm {
  margin-bottom: var(--sm);
}
.m-b-md {
  margin-bottom: var(--md);
}
.m-b-lg {
  margin-bottom: var(--lg);
}
.m-b-xl {
  margin-bottom: var(--xl);
}
.m-b-2xl {
  margin-bottom: var(--2xl);
}
.m-b-3xl {
  margin-bottom: var(--3xl);
}
.m-b-4xl {
  margin-bottom: var(--4xl);
}
.m-b-5xl {
  margin-bottom: var(--5xl);
}

.m-l-5xs {
  margin-left: var(--5xs);
}
.m-l-4xs {
  margin-left: var(--4xs);
}
.m-l-3xs {
  margin-left: var(--3xs);
}
.m-l-2xs {
  margin-left: var(--2xs);
}
.m-l-xs {
  margin-left: var(--xs);
}
.m-l-sm {
  margin-left: var(--sm);
}
.m-l-md {
  margin-left: var(--md);
}
.m-l-lg {
  margin-left: var(--lg);
}
.m-l-xl {
  margin-left: var(--xl);
}
.m-l-2xl {
  margin-left: var(--2xl);
}
.m-l-3xl {
  margin-left: var(--3xl);
}
.m-l-4xl {
  margin-left: var(--4xl);
}
.m-l-5xl {
  margin-left: var(--5xl);
}

.m-r-5xs {
  margin-right: var(--5xs);
}
.m-r-4xs {
  margin-right: var(--4xs);
}
.m-r-3xs {
  margin-right: var(--3xs);
}
.m-r-2xs {
  margin-right: var(--2xs);
}
.m-r-xs {
  margin-right: var(--xs);
}
.m-r-sm {
  margin-right: var(--sm);
}
.m-r-md {
  margin-right: var(--md);
}
.m-r-lg {
  margin-right: var(--lg);
}
.m-r-xl {
  margin-right: var(--xl);
}
.m-r-2xl {
  margin-right: var(--2xl);
}
.m-r-3xl {
  margin-right: var(--3xl);
}
.m-r-4xl {
  margin-right: var(--4xl);
}
.m-r-5xl {
  margin-right: var(--5xl);
}

.m-x-5xs {
  margin-right: var(--5xs);
  margin-left: var(--5xs);
}
.m-x-4xs {
  margin-right: var(--4xs);
  margin-left: var(--4xs);
}
.m-x-3xs {
  margin-right: var(--3xs);
  margin-left: var(--3xs);
}
.m-x-2xs {
  margin-right: var(--2xs);
  margin-left: var(--2xs);
}
.m-x-xs {
  margin-right: var(--xs);
  margin-left: var(--xs);
}
.m-x-sm {
  margin-right: var(--sm);
  margin-left: var(--sm);
}
.m-x-md {
  margin-right: var(--md);
  margin-left: var(--md);
}
.m-x-lg {
  margin-right: var(--lg);
  margin-left: var(--lg);
}
.m-x-xl {
  margin-right: var(--xl);
  margin-left: var(--xl);
}
.m-x-2xl {
  margin-right: var(--2xl);
  margin-left: var(--2xl);
}
.m-x-3xl {
  margin-right: var(--3xl);
  margin-left: var(--3xl);
}
.m-x-4xl {
  margin-right: var(--4xl);
  margin-left: var(--4xl);
}
.m-x-5xl {
  margin-right: var(--5xl);
  margin-left: var(--5xl);
}

.m-y-5xs {
  margin-top: var(--5xs);
  margin-bottom: var(--5xs);
}
.m-y-4xs {
  margin-top: var(--4xs);
  margin-bottom: var(--4xs);
}
.m-y-3xs {
  margin-top: var(--3xs);
  margin-bottom: var(--3xs);
}
.m-y-2xs {
  margin-top: var(--2xs);
  margin-bottom: var(--2xs);
}
.m-y-xs {
  margin-top: var(--xs);
  margin-bottom: var(--xs);
}
.m-y-sm {
  margin-top: var(--sm);
  margin-bottom: var(--sm);
}
.m-y-md {
  margin-top: var(--md);
  margin-bottom: var(--md);
}
.m-y-lg {
  margin-top: var(--lg);
  margin-bottom: var(--lg);
}
.m-y-xl {
  margin-top: var(--xl);
  margin-bottom: var(--xl);
}
.m-y-2xl {
  margin-top: var(--2xl);
  margin-bottom: var(--2xl);
}
.m-y-3xl {
  margin-top: var(--3xl);
  margin-bottom: var(--3xl);
}
.m-y-4xl {
  margin-top: var(--4xl);
  margin-bottom: var(--4xl);
}
.m-y-5xl {
  margin-top: var(--5xl);
  margin-bottom: var(--5xl);
}

/* Margin left-right auto centering */
/* ================================================== */
.m-auto-x {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
}

/* ================================================== */
/* Padding */
/* ================================================== */
.p-5xs {
  padding: var(--5xs);
}
.p-4xs {
  padding: var(--4xs);
}
.p-3xs {
  padding: var(--3xs);
}
.p-2xs {
  padding: var(--2xs);
}
.p-xs {
  padding: var(--xs);
}
.p-sm {
  padding: var(--sm);
}
.p-md {
  padding: var(--md);
}
.p-lg {
  padding: var(--lg);
}
.p-xl {
  padding: var(--xl);
}
.p-2xl {
  padding: var(--2xl);
}
.p-3xl {
  padding: var(--3xl);
}
.p-4xl {
  padding: var(--4xl);
}
.p-5xl {
  padding: var(--5xl);
}

.p-t-5xs {
  padding-top: var(--5xs);
}
.p-t-4xs {
  padding-top: var(--4xs);
}
.p-t-3xs {
  padding-top: var(--3xs);
}
.p-t-2xs {
  padding-top: var(--2xs);
}
.p-t-xs {
  padding-top: var(--xs);
}
.p-t-sm {
  padding-top: var(--sm);
}
.p-t-md {
  padding-top: var(--md);
}
.p-t-lg {
  padding-top: var(--lg);
}
.p-t-xl {
  padding-top: var(--xl);
}
.p-t-2xl {
  padding-top: var(--2xl);
}
.p-t-3xl {
  padding-top: var(--3xl);
}
.p-t-4xl {
  padding-top: var(--4xl);
}
.p-t-5xl {
  padding-top: var(--5xl);
}

.p-b-5xs {
  padding-bottom: var(--5xs);
}
.p-b-4xs {
  padding-bottom: var(--4xs);
}
.p-b-3xs {
  padding-bottom: var(--3xs);
}
.p-b-2xs {
  padding-bottom: var(--2xs);
}
.p-b-xs {
  padding-bottom: var(--xs);
}
.p-b-sm {
  padding-bottom: var(--sm);
}
.p-b-md {
  padding-bottom: var(--md);
}
.p-b-lg {
  padding-bottom: var(--lg);
}
.p-b-xl {
  padding-bottom: var(--xl);
}
.p-b-2xl {
  padding-bottom: var(--2xl);
}
.p-b-3xl {
  padding-bottom: var(--3xl);
}
.p-b-4xl {
  padding-bottom: var(--4xl);
}
.p-b-5xl {
  padding-bottom: var(--5xl);
}

.p-l-5xs {
  padding-left: var(--5xs);
}
.p-l-4xs {
  padding-left: var(--4xs);
}
.p-l-3xs {
  padding-left: var(--3xs);
}
.p-l-2xs {
  padding-left: var(--2xs);
}
.p-l-xs {
  padding-left: var(--xs);
}
.p-l-sm {
  padding-left: var(--sm);
}
.p-l-md {
  padding-left: var(--md);
}
.p-l-lg {
  padding-left: var(--lg);
}
.p-l-xl {
  padding-left: var(--xl);
}
.p-l-2xl {
  padding-left: var(--2xl);
}
.p-l-3xl {
  padding-left: var(--3xl);
}
.p-l-4xl {
  padding-left: var(--4xl);
}
.p-l-5xl {
  padding-left: var(--5xl);
}

.p-r-5xs {
  padding-right: var(--5xs);
}
.p-r-4xs {
  padding-right: var(--4xs);
}
.p-r-3xs {
  padding-right: var(--3xs);
}
.p-r-2xs {
  padding-right: var(--2xs);
}
.p-r-xs {
  padding-right: var(--xs);
}
.p-r-sm {
  padding-right: var(--sm);
}
.p-r-md {
  padding-right: var(--md);
}
.p-r-lg {
  padding-right: var(--lg);
}
.p-r-xl {
  padding-right: var(--xl);
}
.p-r-2xl {
  padding-right: var(--2xl);
}
.p-r-3xl {
  padding-right: var(--3xl);
}
.p-r-4xl {
  padding-right: var(--4xl);
}
.p-r-5xl {
  padding-right: var(--5xl);
}

.p-x-5xs {
  padding-right: var(--5xs);
  padding-left: var(--5xs);
}
.p-x-4xs {
  padding-right: var(--4xs);
  padding-left: var(--4xs);
}
.p-x-3xs {
  padding-right: var(--3xs);
  padding-left: var(--3xs);
}
.p-x-2xs {
  padding-right: var(--2xs);
  padding-left: var(--2xs);
}
.p-x-xs {
  padding-right: var(--xs);
  padding-left: var(--xs);
}
.p-x-sm {
  padding-right: var(--sm);
  padding-left: var(--sm);
}
.p-x-md {
  padding-right: var(--md);
  padding-left: var(--md);
}
.p-x-lg {
  padding-right: var(--lg);
  padding-left: var(--lg);
}
.p-x-xl {
  padding-right: var(--xl);
  padding-left: var(--xl);
}
.p-x-2xl {
  padding-right: var(--2xl);
  padding-left: var(--2xl);
}
.p-x-3xl {
  padding-right: var(--3xl);
  padding-left: var(--3xl);
}
.p-x-4xl {
  padding-right: var(--4xl);
  padding-left: var(--4xl);
}
.p-x-5xl {
  padding-right: var(--5xl);
  padding-left: var(--5xl);
}

.p-y-5xs {
  padding-top: var(--5xs);
  padding-bottom: var(--5xs);
}
.p-y-4xs {
  padding-top: var(--4xs);
  padding-bottom: var(--4xs);
}
.p-y-3xs {
  padding-top: var(--3xs);
  padding-bottom: var(--3xs);
}
.p-y-2xs {
  padding-top: var(--2xs);
  padding-bottom: var(--2xs);
}
.p-y-xs {
  padding-top: var(--xs);
  padding-bottom: var(--xs);
}
.p-y-sm {
  padding-top: var(--sm);
  padding-bottom: var(--sm);
}
.p-y-md {
  padding-top: var(--md);
  padding-bottom: var(--md);
}
.p-y-lg {
  padding-top: var(--lg);
  padding-bottom: var(--lg);
}
.p-y-xl {
  padding-top: var(--xl);
  padding-bottom: var(--xl);
}
.p-y-2xl {
  padding-top: var(--2xl);
  padding-bottom: var(--2xl);
}
.p-y-3xl {
  padding-top: var(--3xl);
  padding-bottom: var(--3xl);
}
.p-y-4xl {
  padding-top: var(--4xl);
  padding-bottom: var(--4xl);
}
.p-y-5xl {
  padding-top: var(--5xl);
  padding-bottom: var(--5xl);
}

.p-0 {
  padding: 0;
}

/* ================================================== */
/* Border Radius */
/* ================================================== */
/* Conditional border-radius */
/* ================================================== */
/* Nested border radius */
/* ================================================== */
/* Top or bottom radius only */
/* ================================================== */
.top-radius {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  overflow: hidden;
}

.bottom-radius {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
  overflow: hidden;
}

/* Border radius classes */
/* ================================================== */
/* Generates classes using the $sizes map from _space.scss */
.radius-5xs {
  border-radius: var(--5xs);
}
.radius-4xs {
  border-radius: var(--4xs);
}
.radius-3xs {
  border-radius: var(--3xs);
}
.radius-2xs {
  border-radius: var(--2xs);
}
.radius-xs {
  border-radius: var(--xs);
}
.radius-sm {
  border-radius: var(--sm);
}
.radius-md {
  border-radius: var(--md);
}
.radius-lg {
  border-radius: var(--lg);
}
.radius-xl {
  border-radius: var(--xl);
}
.radius-2xl {
  border-radius: var(--2xl);
}
.radius-3xl {
  border-radius: var(--3xl);
}
.radius-4xl {
  border-radius: var(--4xl);
}
.radius-5xl {
  border-radius: var(--5xl);
}

/* Radius bin */
/* ================================================== */
/* This parent calss helps remove janky rendering artifacts that occur in some browsers when inset box-shadow + border-radius are used on the same element.
The solution though not perfect is to add a parent wrapper that sets the border-radius while the child sets the inset box-shadow */
.radius-bin-5xs {
  border-radius: var(--5xs);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-4xs {
  border-radius: var(--4xs);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-3xs {
  border-radius: var(--3xs);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-2xs {
  border-radius: var(--2xs);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-xs {
  border-radius: var(--xs);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-sm {
  border-radius: var(--sm);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-md {
  border-radius: var(--md);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-lg {
  border-radius: var(--lg);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-xl {
  border-radius: var(--xl);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-2xl {
  border-radius: var(--2xl);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-3xl {
  border-radius: var(--3xl);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-4xl {
  border-radius: var(--4xl);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}
.radius-bin-5xl {
  border-radius: var(--5xl);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  overflow: hidden;
}

/* ================================================== */
/* Text util */
/* ================================================== */
/* Colors */
/* ================================================== */
/* ================================================== */
/* Color tokens */
/* ================================================== */
:root {
  /* Hue and saturation values ✨ Config these values */
  /* ================================================== */
  --primary-h: 190;
  --primary-s: 60%;
  --neutral-h: 205;
  --neutral-s: 20%;
  /* Primary */
  /* ================================================== */
  --primary-98: var(--primary-h) var(--primary-s) 98%;
  --primary-95: var(--primary-h) var(--primary-s) 95%;
  --primary-90: var(--primary-h) var(--primary-s) 90%;
  --primary-85: var(--primary-h) var(--primary-s) 85%;
  --primary-80: var(--primary-h) var(--primary-s) 80%;
  --primary-70: var(--primary-h) var(--primary-s) 70%;
  --primary-60: var(--primary-h) var(--primary-s) 60%;
  --primary-50: var(--primary-h) var(--primary-s) 50%;
  --primary-40: var(--primary-h) var(--primary-s) 40%;
  --primary-30: var(--primary-h) var(--primary-s) 30%;
  --primary-20: var(--primary-h) var(--primary-s) 20%;
  --primary-10: var(--primary-h) var(--primary-s) 10%;
  --primary-5: var(--primary-h) var(--primary-s) 5%;
  /* Neutral */
  /* ================================================== */
  --neutral-100: var(--neutral-h) var(--neutral-s) 100%;
  --neutral-98: var(--neutral-h) var(--neutral-s) 98%;
  --neutral-95: var(--neutral-h) var(--neutral-s) 95%;
  --neutral-90: var(--neutral-h) var(--neutral-s) 90%;
  --neutral-85: var(--neutral-h) var(--neutral-s) 85%;
  --neutral-80: var(--neutral-h) var(--neutral-s) 80%;
  --neutral-70: var(--neutral-h) var(--neutral-s) 70%;
  --neutral-60: var(--neutral-h) var(--neutral-s) 60%;
  --neutral-50: var(--neutral-h) var(--neutral-s) 50%;
  --neutral-40: var(--neutral-h) var(--neutral-s) 40%;
  --neutral-30: var(--neutral-h) var(--neutral-s) 30%;
  --neutral-20: var(--neutral-h) var(--neutral-s) 20%;
  --neutral-15: var(--neutral-h) var(--neutral-s) 15%;
  --neutral-10: var(--neutral-h) var(--neutral-s) 10%;
  --neutral-5: var(--neutral-h) var(--neutral-s) 5%;
}

/* ================================================== */
/* Color theme */
/* ================================================== */
html {
  /* Solid colors */
  /* ================================================== */
  --color-white: hsl(var(--neutral-98) / 1);
  --color-2xlight: hsl(var(--neutral-90) / 1);
  --color-xlight: hsl(var(--neutral-80) / 1);
  --color-light: hsl(var(--neutral-70) / 1);
  --color-gray: hsl(var(--neutral-50) / 1);
  --color-dark: hsl(var(--neutral-40) / 1);
  --color-xdark: hsl(var(--neutral-30) / 1);
  --color-2xdark: hsl(var(--neutral-20) / 1);
  --color-black: hsl(var(--neutral-5) / 1);
  /* Translucent tints */
  /* ================================================== */
  --tint-3xlight: hsl(var(--neutral-95) / 0.4);
  --tint-2xlight: hsl(var(--neutral-95) / 0.3);
  --tint-xlight: hsl(var(--neutral-95) / 0.2);
  --tint-light: hsl(var(--neutral-95) / 0.1);
  --tint-clear: hsl(var(--neutral-10) / 0.01);
  --tint-dark: hsl(var(--neutral-10) / 0.1);
  --tint-xdark: hsl(var(--neutral-10) / 0.25);
  --tint-2xdark: hsl(var(--neutral-10) / 0.4);
  --tint-3xdark: hsl(var(--neutral-10) / 0.6);
  /* Text colors */
  /* ================================================== */
  --text-2xstrong: hsl(var(--neutral-100) / 1);
  --text-xstrong: hsl(var(--neutral-98) / 1);
  --text-strong: hsl(var(--neutral-95) / 1);
  --text-base: hsl(var(--neutral-90) / 1);
  --text-mild: hsl(var(--neutral-80) / 1);
  --text-xmild: hsl(var(--neutral-60) / 1);
  --text-2xmild: hsl(var(--neutral-50) / 1);
  --text-accent-base: hsl(var(--primary-90) / 1);
  /* Inset bg colors */
  /* ================================================== */
  --inset-bg-reg: hsl(var(--neutral-10) / 0.15);
  --inset-bg-deep: hsl(var(--neutral-10) / 0.25);
  --inset-bg-xdeep: hsl(var(--neutral-10) / 0.35);
  /* Box-shadows | Text-shadows | Drop-shadows */
  /* ================================================== */
  --shadow: var(--neutral-10);
  --highlight: var(--neutral-90);
}

/* Solid colors MAP */
/* ================================================== */
/* Generate color classes */
.color-white {
  background-color: var(--color-white);
}
.color-2xlight {
  background-color: var(--color-2xlight);
}
.color-xlight {
  background-color: var(--color-xlight);
}
.color-light {
  background-color: var(--color-light);
}
.color-gray {
  background-color: var(--color-gray);
}
.color-dark {
  background-color: var(--color-dark);
}
.color-xdark {
  background-color: var(--color-xdark);
}
.color-2xdark {
  background-color: var(--color-2xdark);
}
.color-black {
  background-color: var(--color-black);
}

/* Tints MAP */
/* ================================================== */
/* Generate tint classes */
.tint-3xlight {
  background-color: var(--tint-3xlight);
}
.tint-2xlight {
  background-color: var(--tint-2xlight);
}
.tint-xlight {
  background-color: var(--tint-xlight);
}
.tint-light {
  background-color: var(--tint-light);
}
.tint-clear {
  background-color: var(--tint-clear);
}
.tint-dark {
  background-color: var(--tint-dark);
}
.tint-xdark {
  background-color: var(--tint-xdark);
}
.tint-2xdark {
  background-color: var(--tint-2xdark);
}
.tint-3xdark {
  background-color: var(--tint-3xdark);
}

/* Text colors MAP */
/* ================================================== */
/* Generate text color classes */
.text-2xstrong {
  color: var(--text-2xstrong);
}
.text-xstrong {
  color: var(--text-xstrong);
}
.text-strong {
  color: var(--text-strong);
}
.text-base {
  color: var(--text-base);
}
.text-mild {
  color: var(--text-mild);
}
.text-xmild {
  color: var(--text-xmild);
}
.text-2xmild {
  color: var(--text-2xmild);
}
.text-white {
  color: var(--color-white);
}
.text-2xlight {
  color: var(--color-2xlight);
}
.text-xlight {
  color: var(--color-xlight);
}
.text-light {
  color: var(--color-light);
}
.text-gray {
  color: var(--color-gray);
}
.text-dark {
  color: var(--color-dark);
}
.text-xdark {
  color: var(--color-xdark);
}
.text-2xdark {
  color: var(--color-2xdark);
}
.text-black {
  color: var(--color-black);
}

/* ================================================== */
/* Text */
/* ================================================== */
/* font-family: ✨ Config these values */
/* ================================================== */
/* ℹ️ Link your fonts in <head> of index.html */
/* letter-spacing: ✨ Config these values */
/* ================================================== */
/* line-height: ✨ Config these values */
/* ================================================== */
/* font-weight: ✨ Config these values */
/* ================================================== */
/* font-size: ✨ Config these values */
/* ================================================== */
/* https://modern-fluid-typography.vercel.app/ */
:root {
  --text-2xs: clamp(0.75rem, 4vw - 1.5rem, 0.8rem);
  --text-xs: clamp(0.875rem, 4vw - 1rem, 0.9rem);
  --text-sm: clamp(1rem, 0.13vw + 1rem, 1.125rem);
  --text-md: clamp(1.125rem, 0.5vw + 1rem, 1.25rem);
  --text-lg: clamp(1.375rem, 1.3vw + 1rem, 1.75rem);
  --text-xl: clamp(1.5rem, 1.7vw + 1rem, 2.25rem);
  --text-2xl: clamp(2rem, calc(2vw + 1.5rem), 2.75rem);
  --text-3xl: clamp(2.6rem, 3.8vw + 1rem, 3.75rem);
}

/* Text size MAP */
/* ================================================== */
/* Update if you add/remove/edit names of fluid font-sizes above */
/* Generate text size classes */
.text-2xs {
  font-size: var(--text-2xs);
}
.text-xs {
  font-size: var(--text-xs);
}
.text-sm {
  font-size: var(--text-sm);
}
.text-md {
  font-size: var(--text-md);
}
.text-lg {
  font-size: var(--text-lg);
}
.text-xl {
  font-size: var(--text-xl);
}
.text-2xl {
  font-size: var(--text-2xl);
}
.text-3xl {
  font-size: var(--text-3xl);
}

/* ================================================== */
/* Text styles */
/* ================================================== */
/* Body text */
/* ================================================== */
body,
p,
input,
textarea {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  line-height: calc(0.125em + 2.5ex + 0.125em);
  color: var(--text-base);
}

.text-max-w {
  max-width: 70ch;
}

/* Titles */
/* ================================================== */
.title-thick {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
}

.title-md {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 300;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
}

.title-thin {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 200;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
}

/* Text styles */
/* ================================================== */
.title-1 {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 300;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  font-size: var(--text-3xl);
  letter-spacing: -0.005em;
  line-height: calc(0.125em + 2.25ex + 0.125em);
  color: var(--text-strong);
  text-shadow: var(--text-sha-2xl);
}

.title-2 {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  font-size: var(--text-xl);
  letter-spacing: 0.02em;
  text-align: start;
  color: var(--text-strong);
  text-shadow: var(--text-sha-2xl);
}

.title-3 {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 200;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  font-size: var(--text-2xl);
  text-align: center;
  text-shadow: var(--text-sha-lg);
}

.title-4 {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  text-align: start;
  letter-spacing: 0.02em;
  font-size: var(--text-lg);
  color: var(--text-strong);
  text-shadow: var(--text-sha-xl);
}

.title-md {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 300;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  text-align: start;
  letter-spacing: 0.01em;
  font-size: var(--text-md);
}

.subtitle {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  text-align: center;
  font-size: var(--text-sm);
  letter-spacing: -0.005em;
  line-height: calc(0.125em + 2.25ex + 0.125em);
  color: var(--text-mild);
  text-shadow: var(--text-sha-3xs);
}

.eyebrow {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-size: var(--text-2xs);
  letter-spacing: 0.04em;
  line-height: calc(0.125em + 2.25ex + 0.125em);
  color: var(--text-mild);
  text-transform: uppercase;
  text-shadow: var(--text-sha-3xs);
}

/* Labels */
/* ================================================== */
.label-xs {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 500;
  letter-spacing: 0.01em;
  font-size: var(--text-xs);
  line-height: calc(0.125em + 2.25ex + 0.125em);
  text-shadow: var(--text-sha-xs);
}

.label-sm {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 500;
  letter-spacing: 0.01em;
  font-size: var(--text-sm);
  line-height: calc(0.125em + 2.25ex + 0.125em);
  text-shadow: var(--text-sha-sm);
}

.label-md {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 500;
  letter-spacing: 0.01em;
  font-size: var(--text-md);
  line-height: calc(0.125em + 2.25ex + 0.125em);
  text-shadow: var(--text-sha-md);
}

/* ================================================== */
/* text-align: */
/* ================================================== */
.text-center {
  text-align: center;
}

.text-left {
  text-align: start;
}

.text-right {
  text-align: end;
}

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

/* text-transform: */
/* ================================================== */
.text-cap {
  text-transform: capitalize;
}

.text-allcap {
  text-transform: uppercase;
}

.text-lower {
  text-transform: lowercase;
}

.text-bold {
  font-weight: 400;
}

.text-ital {
  font-style: italic;
}

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

.text-underline {
  text-decoration: underline;
}

.first-line-bold:first-line {
  font-weight: 400;
}

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

.break-word {
  overflow-wrap: break-word;
  min-width: 0;
}

.no-word-break {
  word-break: keep-all;
}

/* Bullet points */
/* ================================================== */
.dot::before {
  padding-right: 0.25em;
  content: "•";
}

.check::before {
  padding-right: 0.25em;
  content: "☐";
}

.arrow::before {
  padding-right: 0.25em;
  content: "➟";
}

/* Design */
/* ================================================== */
/* Interactions */
/* ================================================== */
/* Speeds variables ✨ Config these values */
/* ================================================== */
/* cubic-bezier */
/* ================================================== */
/* :focus-visible */
/* ================================================== */
:focus-visible {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
}

:focus {
  outline: 1px solid transparent;
}

::-moz-focus-inner {
  border: 0;
  padding: 0;
  padding-block: 0;
  padding-inline: 0;
}

/* Fade animations */
/* ================================================== */
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Spotlight cursor effect */
/* ================================================== */
/* 1. Add `js-spotlightBin` class to parent */
/* 2. Add `spotlight` or `mini-spotlight` class to child element */
/* If it dosen't work... */
/* 1. Make sure the spotlight script is added at the end of <body> */
/* 2. Make sure `findSpotlights()` is called in `loadContent.js` */
/* 💠 example */
@media (hover: hover) {
  .spotlight {
    position: relative;
  }
  .spotlight:hover {
    --active: 1;
  }
  .spotlight::before {
    content: "";
    position: absolute;
    inset: 1px;
    pointer-events: none;
    border-radius: inherit;
    overflow: hidden;
    background: radial-gradient(circle at calc(var(--x) * 1px) calc(var(--y) * 1px), hsl(var(--neutral-95)/0.2) 0%, hsl(var(--neutral-95)/0.15) 10%, hsl(var(--neutral-95)/0.05) 20%, hsl(var(--neutral-95)/0.001) 30%, transparent 100%);
    background-attachment: fixed;
    opacity: var(--active, 0);
    will-change: opacity;
    transition: opacity 750ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
  }
}

/* For CTA buttons or other small elements */
@media (hover: hover) {
  .mini-spotlight {
    position: relative;
  }
  .mini-spotlight:hover {
    --active: 1;
  }
  .mini-spotlight::before {
    content: "";
    position: absolute;
    pointer-events: none;
    border-radius: inherit;
    overflow: hidden;
    background: radial-gradient(circle at calc(var(--x) * 1px) calc(var(--y) * 1px), hsl(var(--neutral-95)/0.4) 0%, hsl(var(--neutral-95)/0.15) 2%, hsl(var(--neutral-95)/0.05) 5%, hsl(var(--neutral-95)/0.001) 15%, transparent 100%);
    background-attachment: fixed;
    opacity: var(--active, 0);
    will-change: opacity, color;
    transition: opacity 750ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 750ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
  }
}

/* ================================================== */
/* Gradients */
/* ================================================== */
.gradient-2xlight {
  background: linear-gradient(to top left, hsl(var(--neutral-90)/0.8) 0%, hsl(var(--neutral-95)/0.6) 60%, hsl(var(--neutral-98)/0.3) 100%);
}

.gradient-xlight {
  background: linear-gradient(to top left, hsl(var(--neutral-70)/0.8) 0%, hsl(var(--neutral-80)/0.6) 60%, hsl(var(--neutral-90)/0.3) 100%);
}

.gradient-light {
  background: linear-gradient(to top left, hsl(var(--neutral-50)/0.8) 0%, hsl(var(--neutral-60)/0.6) 60%, hsl(var(--neutral-70)/0.3) 100%);
}

.gradient-dark {
  background: linear-gradient(to top left, hsl(var(--neutral-30)/0.8) 0%, hsl(var(--neutral-40)/0.6) 60%, hsl(var(--neutral-50)/0.3) 100%);
}

.gradient-xdark {
  background: linear-gradient(to top left, hsl(var(--neutral-15)/0.8) 0%, hsl(var(--neutral-20)/0.6) 60%, hsl(var(--neutral-30)/0.3) 100%);
}

.gradient-2xdark {
  background: linear-gradient(to top left, hsl(var(--neutral-5)/0.8) 0%, hsl(var(--neutral-10)/0.6) 60%, hsl(var(--neutral-15)/0.3) 100%);
}

/* ================================================== */
/* SVGs */
/* ================================================== */
/* SVG masks that let you change their color via CSS */
/* Credit: Chris Coyier */
/* https://css-tricks.com/change-color-of-svg-on-hover/ */
/* 💠 example */
.svg-copy {
  -webkit-mask: url(/assets/icons/Copy.svg);
          mask: url(/assets/icons/Copy.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-square-out {
  -webkit-mask: url(/assets/icons/SquareOut.svg);
          mask: url(/assets/icons/SquareOut.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-chev-up {
  -webkit-mask: url(/assets/icons/CaretUp.svg);
          mask: url(/assets/icons/CaretUp.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-chev-down {
  -webkit-mask: url(/assets/icons/CaretDown.svg);
          mask: url(/assets/icons/CaretDown.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-chev-l {
  -webkit-mask: url(/assets/icons/CaretLeft.svg);
          mask: url(/assets/icons/CaretLeft.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-chev-r {
  -webkit-mask: url(/assets/icons/CaretRight.svg);
          mask: url(/assets/icons/CaretRight.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-linkedin {
  -webkit-mask: url(/assets/icons/LinkedinLogo.svg);
          mask: url(/assets/icons/LinkedinLogo.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-instagram {
  -webkit-mask: url(/assets/icons/InstagramLogo.svg);
          mask: url(/assets/icons/InstagramLogo.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-github {
  -webkit-mask: url(/assets/icons/GithubLogo.svg);
          mask: url(/assets/icons/GithubLogo.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-ham {
  -webkit-mask: url(/assets/icons/List.svg);
          mask: url(/assets/icons/List.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-x {
  -webkit-mask: url(/assets/icons/X.svg);
          mask: url(/assets/icons/X.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-circleHalf {
  -webkit-mask: url(/assets/icons/CircleHalf.svg);
          mask: url(/assets/icons/CircleHalf.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-circleHalfTilt {
  -webkit-mask: url(/assets/icons/CircleHalfTilt.svg);
          mask: url(/assets/icons/CircleHalfTilt.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-magnifying-glass {
  -webkit-mask: url(/assets/icons/MagnifyingGlass.svg);
          mask: url(/assets/icons/MagnifyingGlass.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-xCircle {
  -webkit-mask: url(/assets/icons/XCircle.svg);
          mask: url(/assets/icons/XCircle.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

.svg-xCircleOutline {
  -webkit-mask: url(/assets/icons/XCircleOutline.svg);
          mask: url(/assets/icons/XCircleOutline.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

/* ================================================== */
/* Fonts */
/* ================================================== */
/* Credit: Mario Ranftl for Google Webfonts Helper */
/* https://gwfh.mranftl.com/fonts */
/* Poppins - title font */
/* ================================================== */
/* poppins-200 - latin */
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 200;
  src: url("/assets/fonts/poppins-v23-latin-ext/poppins-v23-latin-ext-200.woff2") format("woff2");
}
/* poppins-300 - latin */
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 300;
  src: url("/assets/fonts/poppins-v23-latin-ext/poppins-v23-latin-ext-300.woff2") format("woff2");
}
/* poppins-regular - latin */
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 400;
  src: url("/assets/fonts/poppins-v23-latin-ext/poppins-v23-latin-ext-regular.woff2") format("woff2");
}
/* poppins-500 - latin */
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 500;
  src: url("/assets/fonts/poppins-v23-latin-ext/poppins-v23-latin-ext-500.woff2") format("woff2");
}
/* poppins-700 - latin */
@font-face {
  font-display: swap;
  font-family: "Poppins";
  font-style: normal;
  font-weight: 700;
  src: url("/assets/fonts/poppins-v23-latin-ext/poppins-v23-latin-ext-700.woff2") format("woff2");
}
/* Nunito Sans - body font */
/* ================================================== */
/* nunito-sans-300 - latin */
@font-face {
  font-display: swap;
  font-family: "Nunito Sans";
  font-style: normal;
  font-weight: 300;
  src: url("/assets/fonts/nunito-sans-v18-latin/nunito-sans-v18-latin-300.woff2") format("woff2");
}
/* nunito-sans-regular - latin */
@font-face {
  font-display: swap;
  font-family: "Nunito Sans";
  font-style: normal;
  font-weight: 400;
  src: url("/assets/fonts/nunito-sans-v18-latin/nunito-sans-v18-latin-regular.woff2") format("woff2");
}
/* nunito-sans-500 - latin */
@font-face {
  font-display: swap;
  font-family: "Nunito Sans";
  font-style: normal;
  font-weight: 500;
  src: url("/assets/fonts/nunito-sans-v18-latin/nunito-sans-v18-latin-500.woff2") format("woff2");
}
/* nunito-sans-600 - latin */
@font-face {
  font-display: swap;
  font-family: "Nunito Sans";
  font-style: normal;
  font-weight: 600;
  src: url("/assets/fonts/nunito-sans-v18-latin/nunito-sans-v18-latin-600.woff2") format("woff2");
}
/* nunito-sans-700 - latin */
@font-face {
  font-display: swap;
  font-family: "Nunito Sans";
  font-style: normal;
  font-weight: 700;
  src: url("/assets/fonts/nunito-sans-v18-latin/nunito-sans-v18-latin-700.woff2") format("woff2");
}
/* Fragment Mono - code font */
/* ================================================== */
@font-face {
  font-display: swap;
  font-family: "Fragment Mono";
  font-style: normal;
  font-weight: 400;
  src: url("/assets/fonts/fragment-mono-v5-latin-regular.woff2") format("woff2");
}
/* Glass */
/* ================================================== */
/* Bevels */
/* ================================================== */
/* Curved bevels */
/* ================================================== */
html {
  --bevel-xs:
  inset 1px 1px 0.5px -1.5px hsl(var(--highlight) / 0.7),
  inset 1.5px 1.5px 0.75px -2.75px hsl(var(--highlight) / 0.5),
  inset 0.25px 0.25px 0.5px -0.25px hsl(var(--highlight) / 0.15),
  inset 0.25px 0.25px 0.25px hsl(var(--highlight) / 0.08),
  inset 0 0 0.25px 0.25px hsl(var(--highlight) / 0.03);
  --bevel-sm:
  inset 1.5px 1.5px 0.75px -2.75px hsl(var(--highlight) / 0.9),
  inset 2px 2px 1px -3px hsl(var(--highlight) / 0.7),
  inset 0.5px 0.5px 0.5px -0.25px hsl(var(--highlight) / 0.1),
  inset 0.5px 0.5px 0.25px hsl(var(--highlight) / 0.05),
  inset 0 0 0.25px 0.25px hsl(var(--highlight) / 0.03);
  --bevel-md:
  inset 2px 2px 1px -3px hsl(var(--highlight) / 0.8),
  inset 2px 2px 1px -3px hsl(var(--highlight) / 0.5),
  inset 1px 1px 1px -0.5px hsl(var(--highlight) / 0.15),
  inset 1px 1px 0.25px hsl(var(--highlight) / 0.03),
  inset 0 0 0.25px 0.5px hsl(var(--highlight) / 0.03);
  --bevel-lg:
  inset 2px 2px 1px -3px hsl(var(--highlight) / 0.8),
  inset 3px 3px 1.5px -4.5px hsl(var(--highlight) / 0.5),
  inset 1.25px 1.25px 1.25px -0.75px hsl(var(--highlight) / 0.15),
  inset 1.25px 1.25px 0.25px hsl(var(--highlight) / 0.03),
  inset 0 0 0.25px 0.5px hsl(var(--highlight) / 0.03);
  --bevel-xl:
  inset 2px 2px 1px -3px hsl(var(--highlight) / 0.8),
  inset 4px 4px 2px -6px hsl(var(--highlight) / 0.3),
  inset 1.5px 1.5px 1.5px -0.75px hsl(var(--highlight) / 0.15),
  inset 1.5px 1.5px 0.25px hsl(var(--highlight) / 0.03),
  inset 0 0 0.25px 0.5px hsl(var(--highlight) / 0.03);
  /* Flat bevels */
  /* ================================================== */
  --flat-bevel-sm:
  inset 0 0.25px 0.35px -0.23px hsl(var(--highlight) / 0.15),
  inset 0 0.5px 0.5px -0.25px hsl(var(--highlight) / 0.1),
  inset 0 0.5px 0.1px 0 hsl(var(--highlight) / 0.08);
  --flat-bevel-md:
  inset 0 0.25px 0.35px -0.23px hsl(var(--highlight) / 0.2),
  inset 0 1px 1px -1px hsl(var(--highlight) / 0.1),
  inset 0 0.8px 0.2px hsl(var(--highlight) / 0.08);
  --flat-bevel-lg:
  inset 0 0.25px 0.35px -0.22px hsl(var(--highlight) / 0.2),
  inset 0 1px 1.25px -1px hsl(var(--highlight) / 0.15),
  inset 0 1px 0.1px hsl(var(--highlight) / 0.08);
}

/* Bevel classes */
/* ================================================== */
.bevel-none {
  box-shadow: none;
}

.bevel-xs {
  box-shadow: var(--bevel-xs);
}

.bevel-sm {
  box-shadow: var(--bevel-sm);
}

.bevel-md {
  box-shadow: var(--bevel-md);
}

.bevel-lg {
  box-shadow: var(--bevel-lg);
}

.bevel-xl {
  box-shadow: var(--bevel-xl);
}

.flat-bevel-sm {
  box-shadow: var(--flat-bevel-sm);
}

.flat-bevel-md {
  box-shadow: var(--flat-bevel-md);
}

.flat-bevel-lg {
  box-shadow: var(--flat-bevel-lg);
}

/* ================================================== */
/* Glass */
/* ================================================== */
/* ⚠️ Glass backgrounds stop working at around 2000px width in Firefox! */
/* ================================================== */
/* Noise textures ✨ Config these values */
/* ================================================== */
/* Noise texture generator */
/* https://devsdash.com/tools/noise-texture-generator */
/* ================================================== */
/* backdrop-filter: ✨ Config these values */
/* ================================================== */
/* Backdrop filter mixin */
/* ================================================== */
/* 💠 example */
/* or */
/* ================================================== */
/* Glass base mixin */
/* ================================================== */
/* Glass filter presets for glass base ✨ Config these values */
/* ================================================== */
body {
  --blur: 40px;
  --bright: 0.7;
  --satu: 2;
}

/* 3D glass ✨ Config these values */
/* ================================================== */
.glass-3d {
  position: relative;
  z-index: 4;
}
.glass-3d::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--bevel-md);
}
.glass-3d::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 40px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.glass-3d > * {
  position: relative;
  z-index: 6;
}

.glass-3d-sm {
  position: relative;
  z-index: 4;
}
.glass-3d-sm::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--bevel-sm);
}
.glass-3d-sm::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 25px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.glass-3d-sm > * {
  position: relative;
  z-index: 6;
}

/* Flat glass */
/* ================================================== */
/* For elements that span edge-to-edge or don't have border-radius */
.glass-flat {
  position: relative;
  z-index: 4;
}
.glass-flat::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--flat-bevel-md);
}
.glass-flat::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 40px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.glass-flat > * {
  position: relative;
  z-index: 6;
}

.glass-flat-sm {
  position: relative;
  z-index: 4;
}
.glass-flat-sm::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--flat-bevel-sm);
}
.glass-flat-sm::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 25px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.glass-flat-sm > * {
  position: relative;
  z-index: 6;
}

/* 2D glass -> no bevel */
/* ================================================== */
.glass-2d {
  position: relative;
  z-index: 4;
}
.glass-2d::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--bevel-none);
}
.glass-2d::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 40px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.glass-2d > * {
  position: relative;
  z-index: 6;
}

/* ================================================== */
/* Glass container queries */
/* ================================================== */
/* Switch to a flat-bevel at 100vw or bigger to prevent a white line down the left edge */
/* the -16px prevents issues with scrollbars cutting into 100vw */
@container bg (width >= calc(100vw - 16px)) {
  .glass-3d {
    position: relative;
    z-index: 4;
  }
  .glass-3d::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    z-index: 5;
    box-shadow: var(--flat-bevel-md);
  }
  .glass-3d::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    z-index: 3;
    background-repeat: repeat;
    background-size: 40px;
    background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
    -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
    backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  }
  .glass-3d > * {
    position: relative;
    z-index: 6;
  }
  .glass-3d-sm {
    position: relative;
    z-index: 4;
  }
  .glass-3d-sm::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    z-index: 5;
    box-shadow: var(--flat-bevel-sm);
  }
  .glass-3d-sm::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    z-index: 3;
    background-repeat: repeat;
    background-size: 25px;
    background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
    -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
    backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  }
  .glass-3d-sm > * {
    position: relative;
    z-index: 6;
  }
}
/* ================================================== */
/* Insets */
/* ================================================== */
html {
  /* Insets */
  /* ================================================== */
  --inset-sm:
    inset -2px -2px 1px -3.25px hsl(var(--highlight) / 0.99),
    inset -0.5px -0.5px 0.5px -0.25px hsl(var(--highlight) / 0.3),
    inset -0.75px -0.75px 0.25px hsl(var(--highlight) / 0.1),
    inset 0.5px 0.5px 0.5px -0.5px hsl(var(--shadow) / 0.1),
    inset 0.25px 0.25px 1.25px hsl(var(--shadow) / 0.2),
    inset 1px 1px 2px hsl(var(--shadow) / 0.2),
    inset 2px 2px 16px -8px hsl(var(--shadow) / 0.25);
  --inset-md:
    inset -2px -2px 1px -3.25px hsl(var(--highlight) / 0.99),
    inset -1px -1px 0.75px -0.75px hsl(var(--highlight) / 0.4),
    inset -1px -1px 0.25px hsl(var(--highlight) / 0.1),
    inset 0.75px 0.75px 1px -0.25px hsl(var(--shadow) / 0.1),
    inset 0.25px 0.25px 1.25px hsl(var(--shadow) / 0.2),
    inset 1.25px 1.25px 2px hsl(var(--shadow) / 0.2),
    inset 2px 2px 16px -8px hsl(var(--shadow) / 0.25);
  --inset-lg:
    inset -2px -2px 1px -3.25px hsl(var(--highlight) / 0.99),
    inset -1.25px -1.25px 1px -0.75px hsl(var(--highlight) / 0.4),
    inset -1.25px -1.25px 0.25px hsl(var(--highlight) / 0.1),
    inset 0.75px 0.75px 1px -0.25px hsl(var(--shadow) / 0.1),
    inset 0.25px 0.25px 1.25px hsl(var(--shadow) / 0.2),
    inset 1.5px 1.5px 2.25px hsl(var(--shadow) / 0.2),
    inset 4px 4px 18px -10px hsl(var(--shadow) / 0.25);
  /* Flat insets  */
  /* ================================================== */
  --inset-flat-sm:
    inset 0 -0.75px 0.75px -0.8px hsl(var(--highlight) / 0.4),
    inset 0 -0.75px 0.25px -0.25px hsl(var(--highlight) / 0.15),
    inset 0 0.5px 0.5px -0.55px hsl(var(--shadow) / 0.1),
    inset 0 1.5px 1.5px -1.55px hsl(var(--shadow) / 0.2),
    inset 0 2px 2px -2.25px hsl(var(--shadow) / 0.35),
    inset 0 12px 12px -13px hsl(var(--shadow) / 0.2);
  --inset-flat-md:
    inset 0 -1px 1px -1.05px hsl(var(--highlight) / 0.4),
    inset 0 -1px 0.25px -0.25px hsl(var(--highlight) / 0.15),
    inset 0 0.5px 0.5px -0.55px hsl(var(--shadow) / 0.1),
    inset 0 2px 2px -2.25px hsl(var(--shadow) / 0.25),
    inset 0 3px 3px -3.25px hsl(var(--shadow) / 0.35),
    inset 0 14px 14px -15px hsl(var(--shadow) / 0.2);
  --inset-flat-lg:
    inset 0 -1.5px 1.5px -1.55px hsl(var(--highlight) / 0.4),
    inset 0 -1.5px 0.25px -0.25px hsl(var(--highlight) / 0.15),
    inset 0 0.5px 0.5px -0.55px hsl(var(--shadow) / 0.15),
    inset 0 2.5px 2.5px -2.75px hsl(var(--shadow) / 0.25),
    inset 0 4px 4px -4.25px hsl(var(--shadow) / 0.35),
    inset 0 16px 16px -17px hsl(var(--shadow) / 0.2);
}

/* Rounded inset classes */
/* ================================================== */
.inset-sm {
  box-shadow: var(--inset-sm);
}

.inset-md {
  box-shadow: var(--inset-md);
}

.inset-lg {
  box-shadow: var(--inset-lg);
}

/* Flat inset classes */
/* ================================================== */
.inset-flat-sm {
  box-shadow: var(--inset-flat-sm);
}

.inset-flat-md {
  box-shadow: var(--inset-flat-md);
}

.inset-flat-lg {
  box-shadow: var(--inset-flat-lg);
}

/* Inset background colors */
/* ================================================== */
.inset-bg-reg {
  background-color: var(--inset-bg-reg);
}

.inset-bg-deep {
  background-color: var(--inset-bg-deep);
}

.inset-bg-xdeep {
  background-color: var(--inset-bg-xdeep);
}

/* ================================================== */
/* Shadows */
/* ================================================== */
/* Elevation shadows */
/* ================================================== */
html {
  --sha-3xs:
    0 0 0.3px hsl(var(--shadow) / 0.08),
    0 0 0.75px hsl(var(--shadow) / 0.05),
    0.5px 0.4px 1px hsl(var(--shadow) / 0.1),
    0.5px 0.5px 1.5px hsl(var(--shadow) / 0.08);
  --sha-2xs:
    0 0 0.3px hsl(var(--shadow) / 0.08),
    0 0 0.75px hsl(var(--shadow) / 0.05),
    0.5px 0.4px 1px hsl(var(--shadow) / 0.08),
    1px 0.75px 1.75px -0.1px hsl(var(--shadow) / 0.1);
  --sha-xs:
    0 0 0.3px hsl(var(--shadow) / 0.08),
    0 0 0.75px hsl(var(--shadow) / 0.05),
    1px 0.75px 1.75px -0.1px hsl(var(--shadow) / 0.08),
    2px 1.5px 4px -0.5px hsl(var(--shadow) / 0.08);
  --sha-sm:
    0 0 0.3px hsl(var(--shadow) / 0.08),
    0 0 0.75px hsl(var(--shadow) / 0.05),
    1px 1px 1.5px -0.25px hsl(var(--shadow) / 0.08),
    1.5px 1.5px 2px -1px hsl(var(--shadow) / 0.08),
    3px 3px 8px -1px hsl(var(--shadow) / 0.08);
  --sha-md:
    0 0 0.3px hsl(var(--shadow) / 0.08),
    0 0 0.75px hsl(var(--shadow) / 0.05),
    1px 0.75px 1.75px -0.25px hsl(var(--shadow) / 0.08),
    2px 1.5px 3.5px -0.5px hsl(var(--shadow) / 0.08),
    4px 3px 12px -1px hsl(var(--shadow) / 0.08);
  --sha-lg:
    0 0 0.3px hsl(var(--shadow) / 0.08),
    0 0 0.75px hsl(var(--shadow) / 0.05),
    1.5px 1.5px 2px -0.5px hsl(var(--shadow) / 0.08),
    3px 3px 6px -1px hsl(var(--shadow) / 0.08),
    6px 4.5px 14px -1.5px hsl(var(--shadow) / 0.08);
  --sha-xl:
    0 0 0.3px hsl(var(--shadow) / 0.08),
    0 0 0.75px hsl(var(--shadow) / 0.05),
    1.5px 1.5px 2px -0.5px hsl(var(--shadow) / 0.08),
    3px 3px 6px -1px hsl(var(--shadow) / 0.08),
    8px 6px 18px -2px hsl(var(--shadow) / 0.08);
}

/* Shadows MAP */
/* ================================================== */
.sha-3xs {
  box-shadow: var(--sha-3xs);
}
.sha-2xs {
  box-shadow: var(--sha-2xs);
}
.sha-xs {
  box-shadow: var(--sha-xs);
}
.sha-sm {
  box-shadow: var(--sha-sm);
}
.sha-md {
  box-shadow: var(--sha-md);
}
.sha-lg {
  box-shadow: var(--sha-lg);
}
.sha-xl {
  box-shadow: var(--sha-xl);
}

/* ================================================== */
/* Flat overhang shadows */
/* ================================================== */
html {
  --overhang-sha-xs:
    inset 0 0.5px 1px -1px hsl(var(--shadow) / 0.5),
    inset 0 1px 2px -2px hsl(var(--shadow) / 0.5),
    inset 0 2px 4px -4px hsl(var(--shadow) / 0.3);
  --overhang-sha-sm:
    inset 0 0.5px 1px -1px hsl(var(--shadow) / 0.7),
    inset 0 1px 2px -2px hsl(var(--shadow) / 0.5),
    inset 0 2px 4px -4px hsl(var(--shadow) / 0.3),
    inset 0 4px 8px -8px hsl(var(--shadow) / 0.3);
  --overhang-sha-md:
    inset 0 0.5px 1px -1px hsl(var(--shadow) / 0.5),
    inset 0 1px 2px -2px hsl(var(--shadow) / 0.5),
    inset 0 2px 4px -4px hsl(var(--shadow) / 0.5),
    inset 0 6px 12px -12px hsl(var(--shadow) / 0.3);
  --overhang-sha-lg:
    inset 0 0.5px 1px -1px hsl(var(--shadow) / 0.4),
    inset 0 2px 4px -4px hsl(var(--shadow) / 0.5),
    inset 0 4px 8px -8px hsl(var(--shadow) / 0.5),
    inset 0 8px 16px -16px hsl(var(--shadow) / 0.3);
  --overhang-sha-xl:
    inset 0 0.5px 1px -1px hsl(var(--shadow) / 0.4),
    inset 0 4px 8px -8px hsl(var(--shadow) / 0.5),
    inset 0 8px 16px -16px hsl(var(--shadow) / 0.5),
    inset 0 10px 20px -20px hsl(var(--shadow) / 0.3);
}

/* Flat overhang shadow MAP */
/* ================================================== */
.overhang-sha-xs {
  box-shadow: var(--overhang-sha-xs);
}
.overhang-sha-sm {
  box-shadow: var(--overhang-sha-sm);
}
.overhang-sha-md {
  box-shadow: var(--overhang-sha-md);
}
.overhang-sha-lg {
  box-shadow: var(--overhang-sha-lg);
}
.overhang-sha-xl {
  box-shadow: var(--overhang-sha-xl);
}

/* ================================================== */
/* Text shadows */
/* ================================================== */
html {
  --text-sha-3xs:
    0.2px 0 0.2px hsl(var(--shadow) / 0.1),
    0.2px 0.2px 0.2px hsl(var(--shadow) / 0.2),
    0.25px 0.25px 0.5px hsl(var(--shadow) / 0.1),
    0 0 0.05em hsl(var(--shadow) / 0.1),
    0 0 0.7em hsl(var(--shadow) / 0.15);
  --text-sha-2xs:
    0.2px 0 0.2px hsl(var(--shadow) / 0.1),
    0.25px 0.25px 0.25px hsl(var(--shadow) / 0.2),
    0.25px 0.25px 0.5px hsl(var(--shadow) / 0.1),
    0 0 0.05em hsl(var(--shadow) / 0.1),
    0 0 0.7em hsl(var(--shadow) / 0.15);
  --text-sha-xs:
    0.1px 0.1px hsl(var(--shadow) / 0.3),
    0.25px 0.25px hsl(var(--shadow) / 0.35),
    0.02em 0.02em 0.04em hsl(var(--shadow) / 0.2),
    0 0 0.05em hsl(var(--shadow) / 0.2),
    0 0 0.7em hsl(var(--shadow) / 0.2);
  --text-sha-sm:
    0.2px 0 0.2px hsl(var(--shadow) / 0.1),
    0.35px 0.35px 0.35px hsl(var(--shadow) / 0.25),
    0.5px 0.5px 1px hsl(var(--shadow) / 0.1),
    0 0 0.05em hsl(var(--shadow) / 0.1),
    0 0 0.7em hsl(var(--shadow) / 0.15);
  --text-sha-md:
    0.2px 0 0.2px hsl(var(--shadow) / 0.1),
    0.4px 0.4px 0.4px hsl(var(--shadow) / 0.25),
    0.5px 0.5px 1px hsl(var(--shadow) / 0.1),
    0 0 0.05em hsl(var(--shadow) / 0.1),
    0 0 0.7em hsl(var(--shadow) / 0.2);
  --text-sha-lg:
    0.25px 0 0.25px hsl(var(--shadow) / 0.1),
    0.45px 0.45px 0.45px hsl(var(--shadow) / 0.25),
    0.75px 0.75px 1.5px hsl(var(--shadow) / 0.1),
    0 0 0.05em hsl(var(--shadow) / 0.1),
    0 0 0.7em hsl(var(--shadow) / 0.2);
  --text-sha-xl:
    0.25px 0 0.25px hsl(var(--shadow) / 0.1),
    0.5px 0.5px 0.5px hsl(var(--shadow) / 0.25),
    0.75px 0.75px 1.5px hsl(var(--shadow) / 0.1),
    0 0 0.05em hsl(var(--shadow) / 0.1),
    0 0 0.7em hsl(var(--shadow) / 0.2);
  --text-sha-2xl:
    0.25px 0 0.25px hsl(var(--shadow) / 0.1),
    0.55px 0.55px 0.55px hsl(var(--shadow) / 0.25),
    1px 1px 2px hsl(var(--shadow) / 0.1),
    0 0 0.05em hsl(var(--shadow) / 0.1),
    0 0 0.7em hsl(var(--shadow) / 0.2);
  --text-sha-3xl:
    0.25px 0 0.25px hsl(var(--shadow) / 0.1),
    0.6px 0.6px 0.6px hsl(var(--shadow) / 0.25),
    1px 1px 2px hsl(var(--shadow) / 0.1),
    0 0 0.05em hsl(var(--shadow) / 0.1),
    0 0 0.7em hsl(var(--shadow) / 0.2);
}

/* Text shadow MAP */
/* ================================================== */
.text-sha-3xs {
  text-shadow: var(--text-sha-3xs);
}
.text-sha-2xs {
  text-shadow: var(--text-sha-2xs);
}
.text-sha-xs {
  text-shadow: var(--text-sha-xs);
}
.text-sha-sm {
  text-shadow: var(--text-sha-sm);
}
.text-sha-md {
  text-shadow: var(--text-sha-md);
}
.text-sha-lg {
  text-shadow: var(--text-sha-lg);
}
.text-sha-xl {
  text-shadow: var(--text-sha-xl);
}
.text-sha-2xl {
  text-shadow: var(--text-sha-2xl);
}
.text-sha-3xl {
  text-shadow: var(--text-sha-3xl);
}

/* Components */
/* ================================================== */
/* Accordion */
/* ================================================== */
.accordion-solo {
  --space: var(--sm);
  --neg-space: calc(-1 * var(--space));
  --radius: var(--sm);
  pointer-events: none;
  overflow: hidden;
  z-index: 7;
  width: 100%;
  display: grid;
  background-color: var(--tint-xdark);
  border-radius: var(--radius);
  box-shadow: var(--sha-md);
}
.accordion-solo .accordion-btn[aria-expanded=true] {
  border-top-left-radius: var(--radius);
  border-top-right-radius: var(--radius);
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.accordion-solo .accordion-btn[aria-expanded=false] {
  border-radius: var(--radius);
}

.accordion-multi {
  --space: var(--sm);
  --neg-space: calc(-1 * var(--space));
  --radius: var(--sm);
  pointer-events: none;
  overflow: hidden;
  z-index: 7;
  width: 100%;
  display: grid;
  background-color: var(--tint-xdark);
  border-radius: var(--radius);
  box-shadow: var(--sha-md);
}
.accordion-multi > :last-child .accordion-btn[aria-expanded=false] {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: var(--radius);
  border-bottom-left-radius: var(--radius);
  overflow: hidden;
}
.accordion-multi > :last-child .accordion-btn[aria-expanded=true] {
  border-radius: 0;
}

.accordion-btn {
  position: relative;
  pointer-events: auto;
  cursor: pointer;
  z-index: 8;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sm);
  padding: var(--space);
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-md);
  text-align: start;
  color: var(--text-base);
  text-shadow: var(--text-sha-md);
  will-change: background-color;
  transition: background-color 200ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.accordion-btn:hover {
  background-color: var(--tint-light);
}
.accordion-btn:focus-visible {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
  background-color: var(--tint-light);
}

.accordion-header {
  pointer-events: none;
  z-index: 8;
  width: 100%;
  padding-top: calc(var(--space) * 1.5);
  padding-right: var(--space);
  padding-bottom: var(--space);
  padding-left: var(--space);
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  text-align: start;
  letter-spacing: 0.02em;
  font-size: var(--text-lg);
  color: var(--text-strong);
  text-shadow: var(--text-sha-xl);
}

.accordion-icon {
  pointer-events: none;
  display: inline;
  z-index: -1;
  background-color: var(--color-white);
  height: var(--ui-h-xs);
  transform: rotate(180deg);
  transition: transform 750ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.accordion-icon.is-closed {
  transform: rotate(0deg);
}

.accordion-content {
  pointer-events: none;
  z-index: 7;
  display: grid;
  gap: var(--space);
  background-color: var(--tint-3xdark);
  height: -moz-fit-content;
  height: fit-content;
  padding: var(--space);
  opacity: 1;
  transition: height 300ms cubic-bezier(0.46, 0.43, 0.1, 0.99), padding 300ms cubic-bezier(0.46, 0.43, 0.1, 0.99), opacity 300ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.accordion-content.is-closed {
  height: 0;
  padding: 0;
  opacity: 0;
}

/* Remove border-radius at 100vw or bigger */
/* the -16px prevents issues with scrollbars cutting into 100vw */
@container bg (width >= calc(100vw - 16px)) {
  .accordion-solo,
  .accordion-multi {
    --radius: 0;
  }
}
/* ================================================== */
/* Bento grids */
/* ================================================== */
/* Bento grid with 2 to 3 columns */
/* ================================================== */
.bento-2to3 {
  width: 100%;
  display: grid;
  place-content: center;
  gap: var(--md);
  grid-template-columns: 1fr 1fr;
}
@media only screen and (min-width: 48rem) {
  .bento-2to3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

/* Bento grid with 1 to 5 columns */
/* ================================================== */
.bento-1to5 {
  width: 100%;
  display: grid;
  grid-template-columns: 150px;
  place-content: center;
  gap: var(--md);
}
@media only screen and (min-width: 22.5rem) {
  .bento-1to5 {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 30rem) {
  .bento-1to5 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only screen and (min-width: 48rem) {
  .bento-1to5 {
    gap: var(--lg);
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media only screen and (min-width: 64rem) {
  .bento-1to5 {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
}

/* Bento children */
/* ================================================== */
.bento-cube {
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--md);
}

.bento-rect {
  min-width: -moz-fit-content;
  min-width: fit-content;
  width: 100%;
  aspect-ratio: 3/1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: var(--md);
  border-radius: var(--md);
}

/* ================================================== */
/* Buttons */
/* ================================================== */
/* Button transitions ✨ Config these values */
/* ================================================== */
/* Button text ✨ Config these values */
/* ================================================== */
/* ================================================== */
/* Button structure */
/* ================================================== */
/* Button sizes ✨ Config these values */
/* ================================================== */
.btn-sm {
  --_btn-h: var(--btn-h, 2.25rem);
  --_btn-content-h: var(--btn-content-h, 1rem);
  --_btn-padding-x: var(--btn-padding-x, 1.5rem);
  --_btn-padding-top: var(--btn-padding-top, 0);
  --_btn-padding-bottom: var(--btn-padding-bottom, 0);
  --_btn-gap: var(--btn-gap, 0.25rem);
  --_btn-radius: var(--btn-radius, 999px);
  position: relative;
  z-index: 17;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  height: var(--_btn-h);
  padding-top: 0; /* added to .btn-text so svg is not affected */
  padding-right: var(--_btn-padding-x);
  padding-bottom: 0; /* added to .btn-text so svg is not affected */
  padding-left: var(--_btn-padding-x);
  gap: var(--_btn-gap);
  border-radius: var(--_btn-radius);
  pointer-events: auto;
  cursor: pointer;
  --btn-h: var(--ui-h-sm);
  --btn-content-h: 0.95rem;
  --btn-padding-x: calc(var(--btn-h) * 0.55);
  --btn-padding-top: 0;
  --btn-padding-bottom: 0;
  --btn-gap: calc(var(--btn-h) * 0.25);
  --btn-radius: 999px;
}
.btn-sm::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 18;
}
.btn-sm::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 16;
}
.btn-sm > .btn-text {
  pointer-events: none;
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-align: center;
  white-space: nowrap;
  text-decoration: none;
  text-shadow: var(--text-sha-sm);
  z-index: 19;
  font-size: var(--_btn-content-h);
  line-height: var(--_btn-content-h);
  padding-top: var(--_btn-padding-top);
  padding-bottom: var(--_btn-padding-bottom);
  pointer-events: none;
}
.btn-sm > svg {
  z-index: 19;
  height: calc(var(--_btn-content-h) * 1.15);
  aspect-ratio: 1;
  pointer-events: none;
}
.btn-sm.icon-end {
  padding-top: 0;
  padding-right: calc(var(--_btn-padding-x) * 0.8);
  padding-bottom: 0;
  padding-left: var(--_btn-padding-x);
}
.btn-sm.icon-start {
  padding-top: 0;
  padding-right: var(--_btn-padding-x);
  padding-bottom: 0;
  padding-left: calc(var(--_btn-padding-x) * 0.8);
}

.btn-md {
  --_btn-h: var(--btn-h, 2.25rem);
  --_btn-content-h: var(--btn-content-h, 1rem);
  --_btn-padding-x: var(--btn-padding-x, 1.5rem);
  --_btn-padding-top: var(--btn-padding-top, 0);
  --_btn-padding-bottom: var(--btn-padding-bottom, 0);
  --_btn-gap: var(--btn-gap, 0.25rem);
  --_btn-radius: var(--btn-radius, 999px);
  position: relative;
  z-index: 17;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  height: var(--_btn-h);
  padding-top: 0; /* added to .btn-text so svg is not affected */
  padding-right: var(--_btn-padding-x);
  padding-bottom: 0; /* added to .btn-text so svg is not affected */
  padding-left: var(--_btn-padding-x);
  gap: var(--_btn-gap);
  border-radius: var(--_btn-radius);
  pointer-events: auto;
  cursor: pointer;
  --btn-h: var(--ui-h-md);
  --btn-content-h: 1.15rem;
  --btn-padding-x: calc(var(--btn-h) * 0.6);
  --btn-padding-top: 0;
  --btn-padding-bottom: 0;
  --btn-gap: calc(var(--btn-h) * 0.25);
  --btn-radius: 999px;
}
.btn-md::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 18;
}
.btn-md::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 16;
}
.btn-md > .btn-text {
  pointer-events: none;
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-align: center;
  white-space: nowrap;
  text-decoration: none;
  text-shadow: var(--text-sha-sm);
  z-index: 19;
  font-size: var(--_btn-content-h);
  line-height: var(--_btn-content-h);
  padding-top: var(--_btn-padding-top);
  padding-bottom: var(--_btn-padding-bottom);
  pointer-events: none;
}
.btn-md > svg {
  z-index: 19;
  height: calc(var(--_btn-content-h) * 1.15);
  aspect-ratio: 1;
  pointer-events: none;
}
.btn-md.icon-end {
  padding-top: 0;
  padding-right: calc(var(--_btn-padding-x) * 0.8);
  padding-bottom: 0;
  padding-left: var(--_btn-padding-x);
}
.btn-md.icon-start {
  padding-top: 0;
  padding-right: var(--_btn-padding-x);
  padding-bottom: 0;
  padding-left: calc(var(--_btn-padding-x) * 0.8);
}

.btn-lg {
  --_btn-h: var(--btn-h, 2.25rem);
  --_btn-content-h: var(--btn-content-h, 1rem);
  --_btn-padding-x: var(--btn-padding-x, 1.5rem);
  --_btn-padding-top: var(--btn-padding-top, 0);
  --_btn-padding-bottom: var(--btn-padding-bottom, 0);
  --_btn-gap: var(--btn-gap, 0.25rem);
  --_btn-radius: var(--btn-radius, 999px);
  position: relative;
  z-index: 17;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  height: var(--_btn-h);
  padding-top: 0; /* added to .btn-text so svg is not affected */
  padding-right: var(--_btn-padding-x);
  padding-bottom: 0; /* added to .btn-text so svg is not affected */
  padding-left: var(--_btn-padding-x);
  gap: var(--_btn-gap);
  border-radius: var(--_btn-radius);
  pointer-events: auto;
  cursor: pointer;
  --btn-h: var(--ui-h-lg);
  --btn-content-h: 1.25rem;
  --btn-padding-x: calc(var(--btn-h) * 0.65);
  --btn-padding-top: 0;
  --btn-padding-bottom: 0;
  --btn-gap: calc(var(--btn-h) * 0.25);
  --btn-radius: 999px;
}
.btn-lg::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 18;
}
.btn-lg::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 16;
}
.btn-lg > .btn-text {
  pointer-events: none;
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-align: center;
  white-space: nowrap;
  text-decoration: none;
  text-shadow: var(--text-sha-sm);
  z-index: 19;
  font-size: var(--_btn-content-h);
  line-height: var(--_btn-content-h);
  padding-top: var(--_btn-padding-top);
  padding-bottom: var(--_btn-padding-bottom);
  pointer-events: none;
}
.btn-lg > svg {
  z-index: 19;
  height: calc(var(--_btn-content-h) * 1.15);
  aspect-ratio: 1;
  pointer-events: none;
}
.btn-lg.icon-end {
  padding-top: 0;
  padding-right: calc(var(--_btn-padding-x) * 0.8);
  padding-bottom: 0;
  padding-left: var(--_btn-padding-x);
}
.btn-lg.icon-start {
  padding-top: 0;
  padding-right: var(--_btn-padding-x);
  padding-bottom: 0;
  padding-left: calc(var(--_btn-padding-x) * 0.8);
}

.btn-full-w {
  --_btn-h: var(--btn-h, 2.25rem);
  --_btn-content-h: var(--btn-content-h, 1rem);
  --_btn-padding-x: var(--btn-padding-x, 1.5rem);
  --_btn-padding-top: var(--btn-padding-top, 0);
  --_btn-padding-bottom: var(--btn-padding-bottom, 0);
  --_btn-gap: var(--btn-gap, 0.25rem);
  --_btn-radius: var(--btn-radius, 999px);
  position: relative;
  z-index: 17;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  height: var(--_btn-h);
  padding-top: 0; /* added to .btn-text so svg is not affected */
  padding-right: var(--_btn-padding-x);
  padding-bottom: 0; /* added to .btn-text so svg is not affected */
  padding-left: var(--_btn-padding-x);
  gap: var(--_btn-gap);
  border-radius: var(--_btn-radius);
  pointer-events: auto;
  cursor: pointer;
  width: 100%;
  --btn-h: var(--ui-h-xl);
  --btn-content-h: 1.25rem;
  --btn-padding-x: calc(var(--btn-h) * 0.7);
  --btn-padding-top: 0;
  --btn-padding-bottom: 0;
  --btn-gap: calc(var(--btn-h) * 0.25);
  --btn-radius: var(--2xs);
}
.btn-full-w::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 18;
}
.btn-full-w::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 16;
}
.btn-full-w > .btn-text {
  pointer-events: none;
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-align: center;
  white-space: nowrap;
  text-decoration: none;
  text-shadow: var(--text-sha-sm);
  z-index: 19;
  font-size: var(--_btn-content-h);
  line-height: var(--_btn-content-h);
  padding-top: var(--_btn-padding-top);
  padding-bottom: var(--_btn-padding-bottom);
  pointer-events: none;
}
.btn-full-w > svg {
  z-index: 19;
  height: calc(var(--_btn-content-h) * 1.15);
  aspect-ratio: 1;
  pointer-events: none;
}
.btn-full-w.icon-end {
  padding-top: 0;
  padding-right: calc(var(--_btn-padding-x) * 0.8);
  padding-bottom: 0;
  padding-left: var(--_btn-padding-x);
}
.btn-full-w.icon-start {
  padding-top: 0;
  padding-right: var(--_btn-padding-x);
  padding-bottom: 0;
  padding-left: calc(var(--_btn-padding-x) * 0.8);
}

/* ================================================== */
/* Round icon button structure */
/* ================================================== */
/* Icon button sizes ✨ Config these values */
/* ================================================== */
.btn-icon-sm {
  --_btn-h: var(--btn-h, 2.25rem);
  --_btn-icon-h: var(--btn-icon-h, 1rem);
  position: relative;
  z-index: 17;
  display: flex;
  justify-content: center;
  align-items: center;
  width: var(--_btn-h);
  height: var(--_btn-h);
  border-radius: 999px;
  pointer-events: auto;
  cursor: pointer;
  --btn-h: var(--ui-h-sm);
  --btn-icon-h: calc(var(--btn-h) * 0.55);
}
.btn-icon-sm::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
}
.btn-icon-sm::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
}
.btn-icon-sm > svg {
  z-index: 19;
  height: var(--_btn-icon-h);
  width: var(--_btn-icon-h);
  aspect-ratio: 1;
  pointer-events: none;
  will-change: width, height;
  transition: width 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), height 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-icon-sm:hover > svg {
  width: calc(var(--_btn-icon-h) * 1.1);
  height: calc(var(--_btn-icon-h) * 1.1);
}

.btn-icon-md {
  --_btn-h: var(--btn-h, 2.25rem);
  --_btn-icon-h: var(--btn-icon-h, 1rem);
  position: relative;
  z-index: 17;
  display: flex;
  justify-content: center;
  align-items: center;
  width: var(--_btn-h);
  height: var(--_btn-h);
  border-radius: 999px;
  pointer-events: auto;
  cursor: pointer;
  --btn-h: var(--ui-h-md);
  --btn-icon-h: calc(var(--btn-h) * 0.55);
}
.btn-icon-md::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
}
.btn-icon-md::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
}
.btn-icon-md > svg {
  z-index: 19;
  height: var(--_btn-icon-h);
  width: var(--_btn-icon-h);
  aspect-ratio: 1;
  pointer-events: none;
  will-change: width, height;
  transition: width 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), height 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-icon-md:hover > svg {
  width: calc(var(--_btn-icon-h) * 1.1);
  height: calc(var(--_btn-icon-h) * 1.1);
}

.btn-icon-lg {
  --_btn-h: var(--btn-h, 2.25rem);
  --_btn-icon-h: var(--btn-icon-h, 1rem);
  position: relative;
  z-index: 17;
  display: flex;
  justify-content: center;
  align-items: center;
  width: var(--_btn-h);
  height: var(--_btn-h);
  border-radius: 999px;
  pointer-events: auto;
  cursor: pointer;
  --btn-h: var(--ui-h-lg);
  --btn-icon-h: calc(var(--btn-h) * 0.55);
}
.btn-icon-lg::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
}
.btn-icon-lg::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
}
.btn-icon-lg > svg {
  z-index: 19;
  height: var(--_btn-icon-h);
  width: var(--_btn-icon-h);
  aspect-ratio: 1;
  pointer-events: none;
  will-change: width, height;
  transition: width 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), height 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-icon-lg:hover > svg {
  width: calc(var(--_btn-icon-h) * 1.1);
  height: calc(var(--_btn-icon-h) * 1.1);
}

/* ================================================== */
/* Button style */
/* ================================================== */
/* Primary button ✨ Config these values */
/* ================================================== */
/* Secondary button ✨ Config these values */
/* ================================================== */
/* Outline button ✨ Config these values */
/* ================================================== */
/* Ghost button ✨ Config these values */
/* ================================================== */
.btn-primary {
  --_btn-text: var(--btn-text, black);
  --_btn-icon: var(--btn-icon, var(--_btn-text));
  --_btn-state-bg: var(--btn-state-bg, rgba(36, 156, 3, 0.9));
  --_btn-state-text: var(--btn-state-text, var(--_btn-text));
  --_btn-state-icon: var(--btn-state-icon, var(--_btn-state-text));
  --_btn-bevel: var(--btn-bevel, none);
  --_btn-blur: var(--btn-blur, 3px);
  --_btn-brightness: var(--btn-brightness, 1);
  --_btn-saturate: var(--btn-saturate, 1.2);
  --_btn-rest: var(--btn-rest, 0.1);
  --_btn-hover: var(--btn-hover, 0.3);
  --_btn-focus: var(--btn-focus, 0.3);
  --_btn-active: var(--btn-active, 0.7);
  --_btn-disabled: var(--btn-disabled, 0.6);
  --btn-text: var(--text-xstrong);
  --btn-icon: var(--btn-text);
  --btn-state-bg: hsl(var(--primary-10) / 0.9);
  --btn-state-text: var(--btn-text);
  --btn-state-icon: var(--btn-state-text);
  --btn-bevel: var(--bevel-md);
  box-shadow: var(--sha-2xs);
  --btn-blur: 15px;
  --btn-brightness: 1;
  --btn-saturate: 2.75;
  --btn-rest: 0.25;
  --btn-hover: 0.6;
  --btn-focus: 0.6;
  --btn-active: 1;
  --btn-disabled: 0.6;
}
.btn-primary::before {
  will-change: opacity, color;
  transition: opacity 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
  background-color: var(--_btn-state-bg);
  opacity: var(--_btn-rest);
}
.btn-primary::after {
  -webkit-backdrop-filter: blur(var(--_btn-blur)) brightness(var(--_btn-brightness)) saturate(var(--_btn-saturate));
  backdrop-filter: blur(var(--_btn-blur)) brightness(var(--_btn-brightness)) saturate(var(--_btn-saturate));
  box-shadow: var(--_btn-bevel);
}
.btn-primary > .btn-text {
  color: var(--_btn-text);
  will-change: opacity, color;
  transition: opacity 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-primary > svg {
  background-color: var(--_btn-icon);
  will-change: background-color;
  transition: background-color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-primary:hover > .btn-text {
  color: var(--_btn-state-text);
}
.btn-primary:hover > svg {
  background-color: var(--_btn-state-icon);
}
.btn-primary:hover::before {
  opacity: var(--_btn-hover);
}
.btn-primary:focus-visible > .btn-text {
  color: var(--_btn-state-text);
}
.btn-primary:focus-visible > svg {
  background-color: var(--_btn-state-icon);
}
.btn-primary:focus-visible::before {
  opacity: var(--_btn-focus);
}
.btn-primary:focus-visible::after {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
}
.btn-primary:active > .btn-text {
  color: var(--_btn-state-text);
}
.btn-primary:active > svg {
  background-color: var(--_btn-state-icon);
}
.btn-primary:active::before {
  opacity: var(--_btn-active);
}
.btn-primary:disabled {
  cursor: not-allowed;
  opacity: var(--_btn-disabled);
  background-color: hsl(var(--neutral-10)/0.1);
}

.btn-secondary {
  --_btn-text: var(--btn-text, black);
  --_btn-icon: var(--btn-icon, var(--_btn-text));
  --_btn-state-bg: var(--btn-state-bg, rgba(36, 156, 3, 0.9));
  --_btn-state-text: var(--btn-state-text, var(--_btn-text));
  --_btn-state-icon: var(--btn-state-icon, var(--_btn-state-text));
  --_btn-bevel: var(--btn-bevel, none);
  --_btn-blur: var(--btn-blur, 3px);
  --_btn-brightness: var(--btn-brightness, 1);
  --_btn-saturate: var(--btn-saturate, 1.2);
  --_btn-rest: var(--btn-rest, 0.1);
  --_btn-hover: var(--btn-hover, 0.3);
  --_btn-focus: var(--btn-focus, 0.3);
  --_btn-active: var(--btn-active, 0.7);
  --_btn-disabled: var(--btn-disabled, 0.6);
  --btn-text: var(--text-xstrong);
  --btn-icon: var(--btn-text);
  --btn-state-bg: hsl(var(--primary-5) / 0.9);
  --btn-state-text: var(--btn-text);
  --btn-state-icon: var(--btn-state-text);
  --btn-bevel: var(--bevel-sm);
  box-shadow: var(--sha-3xs);
  --btn-blur: 10px;
  --btn-brightness: 0.8;
  --btn-saturate: 1.5;
  --btn-rest: 0.1;
  --btn-hover: 0.5;
  --btn-focus: 0.5;
  --btn-active: 0.9;
  --btn-disabled: 0.6;
}
.btn-secondary::before {
  will-change: opacity, color;
  transition: opacity 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
  background-color: var(--_btn-state-bg);
  opacity: var(--_btn-rest);
}
.btn-secondary::after {
  -webkit-backdrop-filter: blur(var(--_btn-blur)) brightness(var(--_btn-brightness)) saturate(var(--_btn-saturate));
  backdrop-filter: blur(var(--_btn-blur)) brightness(var(--_btn-brightness)) saturate(var(--_btn-saturate));
  box-shadow: var(--_btn-bevel);
}
.btn-secondary > .btn-text {
  color: var(--_btn-text);
  will-change: opacity, color;
  transition: opacity 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-secondary > svg {
  background-color: var(--_btn-icon);
  will-change: background-color;
  transition: background-color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-secondary:hover > .btn-text {
  color: var(--_btn-state-text);
}
.btn-secondary:hover > svg {
  background-color: var(--_btn-state-icon);
}
.btn-secondary:hover::before {
  opacity: var(--_btn-hover);
}
.btn-secondary:focus-visible > .btn-text {
  color: var(--_btn-state-text);
}
.btn-secondary:focus-visible > svg {
  background-color: var(--_btn-state-icon);
}
.btn-secondary:focus-visible::before {
  opacity: var(--_btn-focus);
}
.btn-secondary:focus-visible::after {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
}
.btn-secondary:active > .btn-text {
  color: var(--_btn-state-text);
}
.btn-secondary:active > svg {
  background-color: var(--_btn-state-icon);
}
.btn-secondary:active::before {
  opacity: var(--_btn-active);
}
.btn-secondary:disabled {
  cursor: not-allowed;
  opacity: var(--_btn-disabled);
  background-color: hsl(var(--neutral-10)/0.1);
}

.btn-outline {
  --_btn-text: var(--btn-text, black);
  --_btn-icon: var(--btn-icon, var(--_btn-text));
  --_btn-state-bg: var(--btn-state-bg, rgba(36, 156, 3, 0.9));
  --_btn-state-text: var(--btn-state-text, var(--_btn-text));
  --_btn-state-icon: var(--btn-state-icon, var(--_btn-state-text));
  --_btn-bevel: var(--btn-bevel, none);
  --_btn-blur: var(--btn-blur, 3px);
  --_btn-brightness: var(--btn-brightness, 1);
  --_btn-saturate: var(--btn-saturate, 1.2);
  --_btn-rest: var(--btn-rest, 0.1);
  --_btn-hover: var(--btn-hover, 0.3);
  --_btn-focus: var(--btn-focus, 0.3);
  --_btn-active: var(--btn-active, 0.7);
  --_btn-disabled: var(--btn-disabled, 0.6);
  --btn-text: var(--text-2xstrong);
  --btn-icon: var(--btn-text);
  --btn-state-bg: hsl(var(--neutral-50) / 0.95);
  --btn-state-text: var(--btn-text);
  --btn-state-icon: var(--btn-state-text);
  --btn-bevel: none;
  outline: 1.5px solid hsl(var(--neutral-95)/0.6);
  --btn-blur: 10px;
  --btn-brightness: 0.95;
  --btn-saturate: 1.1;
  --btn-rest: 0;
  --btn-hover: 0.5;
  --btn-focus: 0.5;
  --btn-active: 0.99;
  --btn-disabled: 0.6;
}
.btn-outline::before {
  will-change: opacity, color;
  transition: opacity 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
  background-color: var(--_btn-state-bg);
  opacity: var(--_btn-rest);
}
.btn-outline::after {
  -webkit-backdrop-filter: blur(var(--_btn-blur)) brightness(var(--_btn-brightness)) saturate(var(--_btn-saturate));
  backdrop-filter: blur(var(--_btn-blur)) brightness(var(--_btn-brightness)) saturate(var(--_btn-saturate));
  box-shadow: var(--_btn-bevel);
}
.btn-outline > .btn-text {
  color: var(--_btn-text);
  will-change: opacity, color;
  transition: opacity 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-outline > svg {
  background-color: var(--_btn-icon);
  will-change: background-color;
  transition: background-color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-outline:hover > .btn-text {
  color: var(--_btn-state-text);
}
.btn-outline:hover > svg {
  background-color: var(--_btn-state-icon);
}
.btn-outline:hover::before {
  opacity: var(--_btn-hover);
}
.btn-outline:focus-visible > .btn-text {
  color: var(--_btn-state-text);
}
.btn-outline:focus-visible > svg {
  background-color: var(--_btn-state-icon);
}
.btn-outline:focus-visible::before {
  opacity: var(--_btn-focus);
}
.btn-outline:focus-visible::after {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
}
.btn-outline:active > .btn-text {
  color: var(--_btn-state-text);
}
.btn-outline:active > svg {
  background-color: var(--_btn-state-icon);
}
.btn-outline:active::before {
  opacity: var(--_btn-active);
}
.btn-outline:disabled {
  cursor: not-allowed;
  opacity: var(--_btn-disabled);
  background-color: hsl(var(--neutral-10)/0.1);
}

.btn-ghost {
  --_btn-text: var(--btn-text, black);
  --_btn-icon: var(--btn-icon, var(--_btn-text));
  --_btn-state-bg: var(--btn-state-bg, rgba(36, 156, 3, 0.9));
  --_btn-state-text: var(--btn-state-text, var(--_btn-text));
  --_btn-state-icon: var(--btn-state-icon, var(--_btn-state-text));
  --_btn-bevel: var(--btn-bevel, none);
  --_btn-blur: var(--btn-blur, 3px);
  --_btn-brightness: var(--btn-brightness, 1);
  --_btn-saturate: var(--btn-saturate, 1.2);
  --_btn-rest: var(--btn-rest, 0.1);
  --_btn-hover: var(--btn-hover, 0.3);
  --_btn-focus: var(--btn-focus, 0.3);
  --_btn-active: var(--btn-active, 0.7);
  --_btn-disabled: var(--btn-disabled, 0.6);
  --btn-text: var(--text-2xstrong);
  --btn-icon: var(--btn-text);
  --btn-state-bg: hsl(var(--primary-95) / 0.9);
  --btn-state-text: var(--tint-3xdark);
  --btn-state-icon: var(--btn-state-text);
  --btn-bevel: none;
  background-color: transparent;
  --btn-blur: 0px;
  --btn-brightness: 1;
  --btn-saturate: 1;
  --btn-rest: 0;
  --btn-hover: 0.25;
  --btn-focus: 0.25;
  --btn-active: 0.4;
  --btn-disabled: 0.5;
}
.btn-ghost::before {
  will-change: opacity, color;
  transition: opacity 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
  background-color: var(--_btn-state-bg);
  opacity: var(--_btn-rest);
}
.btn-ghost::after {
  -webkit-backdrop-filter: blur(var(--_btn-blur)) brightness(var(--_btn-brightness)) saturate(var(--_btn-saturate));
  backdrop-filter: blur(var(--_btn-blur)) brightness(var(--_btn-brightness)) saturate(var(--_btn-saturate));
  box-shadow: var(--_btn-bevel);
}
.btn-ghost > .btn-text {
  color: var(--_btn-text);
  will-change: opacity, color;
  transition: opacity 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-ghost > svg {
  background-color: var(--_btn-icon);
  will-change: background-color;
  transition: background-color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.btn-ghost:hover > .btn-text {
  color: var(--_btn-state-text);
}
.btn-ghost:hover > svg {
  background-color: var(--_btn-state-icon);
}
.btn-ghost:hover::before {
  opacity: var(--_btn-hover);
}
.btn-ghost:focus-visible > .btn-text {
  color: var(--_btn-state-text);
}
.btn-ghost:focus-visible > svg {
  background-color: var(--_btn-state-icon);
}
.btn-ghost:focus-visible::before {
  opacity: var(--_btn-focus);
}
.btn-ghost:focus-visible::after {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
}
.btn-ghost:active > .btn-text {
  color: var(--_btn-state-text);
}
.btn-ghost:active > svg {
  background-color: var(--_btn-state-icon);
}
.btn-ghost:active::before {
  opacity: var(--_btn-active);
}
.btn-ghost:disabled {
  cursor: not-allowed;
  opacity: var(--_btn-disabled);
  background-color: hsl(var(--neutral-10)/0.1);
}
.btn-ghost::after {
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  box-shadow: none;
}

/* New button template ✨ Config these values */
/* ================================================== */
.my-new-btn {
  --_btn-text: var(--btn-text, black);
  --_btn-icon: var(--btn-icon, var(--_btn-text));
  --_btn-state-bg: var(--btn-state-bg, rgba(36, 156, 3, 0.9));
  --_btn-state-text: var(--btn-state-text, var(--_btn-text));
  --_btn-state-icon: var(--btn-state-icon, var(--_btn-state-text));
  --_btn-bevel: var(--btn-bevel, none);
  --_btn-blur: var(--btn-blur, 3px);
  --_btn-brightness: var(--btn-brightness, 1);
  --_btn-saturate: var(--btn-saturate, 1.2);
  --_btn-rest: var(--btn-rest, 0.1);
  --_btn-hover: var(--btn-hover, 0.3);
  --_btn-focus: var(--btn-focus, 0.3);
  --_btn-active: var(--btn-active, 0.7);
  --_btn-disabled: var(--btn-disabled, 0.6);
  --btn-text: black;
  --btn-icon: darkblue;
  --btn-state-bg: black;
  --btn-state-text: white;
  --btn-state-icon: lightblue;
  --btn-bevel: var(--bevel-md);
  --btn-blur: 8px;
  --btn-brightness: 1;
  --btn-saturate: 1.5;
  --btn-rest: 0.3;
  --btn-hover: 0.6;
  --btn-focus: 0.6;
  --btn-active: 0.9;
  --btn-disabled: 0.6;
}
.my-new-btn::before {
  will-change: opacity, color;
  transition: opacity 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
  background-color: var(--_btn-state-bg);
  opacity: var(--_btn-rest);
}
.my-new-btn::after {
  -webkit-backdrop-filter: blur(var(--_btn-blur)) brightness(var(--_btn-brightness)) saturate(var(--_btn-saturate));
  backdrop-filter: blur(var(--_btn-blur)) brightness(var(--_btn-brightness)) saturate(var(--_btn-saturate));
  box-shadow: var(--_btn-bevel);
}
.my-new-btn > .btn-text {
  color: var(--_btn-text);
  will-change: opacity, color;
  transition: opacity 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99), color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.my-new-btn > svg {
  background-color: var(--_btn-icon);
  will-change: background-color;
  transition: background-color 500ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.my-new-btn:hover > .btn-text {
  color: var(--_btn-state-text);
}
.my-new-btn:hover > svg {
  background-color: var(--_btn-state-icon);
}
.my-new-btn:hover::before {
  opacity: var(--_btn-hover);
}
.my-new-btn:focus-visible > .btn-text {
  color: var(--_btn-state-text);
}
.my-new-btn:focus-visible > svg {
  background-color: var(--_btn-state-icon);
}
.my-new-btn:focus-visible::before {
  opacity: var(--_btn-focus);
}
.my-new-btn:focus-visible::after {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
}
.my-new-btn:active > .btn-text {
  color: var(--_btn-state-text);
}
.my-new-btn:active > svg {
  background-color: var(--_btn-state-icon);
}
.my-new-btn:active::before {
  opacity: var(--_btn-active);
}
.my-new-btn:disabled {
  cursor: not-allowed;
  opacity: var(--_btn-disabled);
  background-color: hsl(var(--neutral-10)/0.1);
}

/* 💠 example */
/* ================================================== */
/* Cards */
/* ================================================== */
/* Card base */
/* ================================================== */
.card {
  --_space: var(--space, 1rem);
  --neg-space: calc(-1 * var(--_space));
  --_neg-space: var(--neg-space, -1rem);
  --_card-radius: var(--card-radius, 1.5rem);
  z-index: 7;
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  display: grid;
  gap: var(--_space);
  padding: var(--_space);
  overflow: hidden;
  pointer-events: auto;
  border-radius: var(--_card-radius);
}

/* Cards that fit the width of their content */
/* ================================================== */
.card-fit-tight {
  --_space: var(--space, 1rem);
  --neg-space: calc(-1 * var(--_space));
  --_neg-space: var(--neg-space, -1rem);
  --_card-radius: var(--card-radius, 1.5rem);
  z-index: 7;
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  display: grid;
  gap: var(--_space);
  padding: var(--_space);
  overflow: hidden;
  pointer-events: auto;
  border-radius: var(--_card-radius);
  --space: var(--xl);
  max-width: 100%;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: max(0px, min(var(--md), (100vw - 16px - 100%) * 9999))/var(--md);
}

.card-fit-roomy {
  --_space: var(--space, 1rem);
  --neg-space: calc(-1 * var(--_space));
  --_neg-space: var(--neg-space, -1rem);
  --_card-radius: var(--card-radius, 1.5rem);
  z-index: 7;
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  display: grid;
  gap: var(--_space);
  padding: var(--_space);
  overflow: hidden;
  pointer-events: auto;
  border-radius: var(--_card-radius);
  --space: var(--3xl);
  max-width: 100%;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: max(0px, min(var(--lg), (100vw - 16px - 100%) * 9999))/var(--lg);
}

/* Card children */
/* ================================================== */
.title-group {
  z-index: 8;
  display: grid;
  gap: 0.5em;
}

.card-title-lg {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 200;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  font-size: var(--text-2xl);
  text-align: center;
  text-shadow: var(--text-sha-lg);
  z-index: 8;
}

.card-title-md {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 300;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  z-index: 8;
  text-align: center;
  font-size: var(--text-xl);
  text-shadow: var(--text-sha-md);
  color: var(--text-base);
}

.card-subtitle {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  text-align: center;
  font-size: var(var(--text-sm));
  letter-spacing: -0.005em;
  line-height: calc(0.125em + 2.25ex + 0.125em);
  color: var(--text-mild);
  text-shadow: var(--text-sha-3xs);
  z-index: 8;
}

/* Card Container queries */
/* ================================================== */
/* 360px and smaller */
@container bg (width < 360px ) {
  .card {
    --space: 7cqw;
    --card-radius: 7cqw;
  }
  .title-group {
    gap: 0.5em;
  }
  .card-title-lg {
    font-size: 8cqw;
  }
  .card-subtitle {
    font-size: var(--text-xs);
  }
}
/* breakpoint xs: 360px and bigger */
@container bg (width >= 360px) {
  .card {
    --space: 7cqw;
    --card-radius: 7cqw;
  }
  .title-group {
    gap: 0.4em;
  }
  .card-title-lg {
    font-size: 8cqw;
  }
  .card-subtitle {
    font-size: var(--text-sm);
  }
}
/* breakpoint sm: 560px and bigger */
@container bg (width >= 560px) {
  .card {
    --space: 6cqw;
    --card-radius: 6cqw;
  }
  .card-title-lg {
    font-size: 7cqw;
  }
}
/* breakpoint md: 768px and bigger */
@container bg (width >= 768px) {
  .card {
    --space: 5cqw;
    --card-radius: 5cqw;
  }
  .title-group {
    gap: 0.75em;
  }
  .card-title-lg {
    font-size: 6cqw;
  }
  .card-subtitle {
    font-size: var(--text-md);
  }
}
/* breakpoint lg: 1024px and bigger */
@container bg (width >= 1024px) {
  .card {
    --space: 4cqw;
    --card-radius: 4cqw;
  }
  .card-title-lg {
    font-size: 5cqw;
  }
}
/* breakpoint xl: 1440px and bigger */
@container bg (width >= 1440px) {
  .card {
    --space: 3.5cqw;
    --card-radius: 3.5cqw;
  }
  .title-group {
    gap: 0.5rem;
  }
  .card-title-lg {
    font-size: min(4cqw, 70px);
  }
}
/* Remove border-radius at 100vw or bigger */
/* the -16px prevents issues with scrollbar cutting into 100vw */
@container bg (width >= calc(100vw - 16px)) {
  .card,
  .card-fit-tight,
  .card-fit-roomy {
    --card-radius: 0;
  }
}
/* ================================================== */
/* Dropdown */
/* ================================================== */
.dropdown-group {
  position: relative;
  pointer-events: none;
  z-index: 11;
}

.dropdown-toggle {
  pointer-events: auto;
}
.dropdown-toggle > .svg-ham {
  display: none;
}
.dropdown-toggle > .svg-x {
  display: inline-block;
}
.dropdown-toggle.is-closed > .svg-ham {
  display: inline-block;
}
.dropdown-toggle.is-closed > .svg-x {
  display: none;
}

.dropdown {
  --top-offset: calc(var(--nav-item-h) + var(--nav-padding));
  --dropdown-h: 0px; /* height value set via dropdown.js */
  position: absolute;
  z-index: 11;
  min-width: 140px;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  top: var(--top-offset);
  right: 0;
  display: grid;
  gap: var(--2xs);
  pointer-events: auto;
  border-radius: var(--sm);
  opacity: 1;
  transform: translateX(0);
  transition: opacity 200ms cubic-bezier(0.46, 0.43, 0.1, 0.99), transform 400ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.dropdown.is-closed {
  opacity: 0;
  transform: translateY(calc(var(--dropdown-h) * 1.25));
}

.dropdown-item {
  z-index: 12;
  min-width: -moz-max-content;
  min-width: max-content;
  width: 100%;
  display: flex;
  justify-content: flex-start;
  pointer-events: auto;
  cursor: pointer;
}

/* ================================================== */
/* Forms | Text inputs */
/* ================================================== */
body {
  --text-input-height: var(--ui-h-lg);
  --text-input-maxwidth: 380px;
  --text-input-padding: var(--3xs);
  --text-input-radius: 12px;
  --text-input-inset: var(--inset-md);
  --text-input-inset-bg: var(--inset-bg-xdeep);
  --textarea-maxwidth: 500px;
  --textarea-minheight: 150px;
  --placeholder-color: var(--text-mild);
  --caret-color: hsl(var(--primary-70) / 1);
}

/* Caret styling */
/* ================================================== */
input,
textarea,
[contenteditable] {
  caret-color: var(--caret-color);
}

/* Text styling */
/* ================================================== */
.text-input-group {
  height: -moz-fit-content;
  height: fit-content;
  width: 100%;
  display: grid;
}
.text-input-group > .text-input-label {
  padding-bottom: var(--4xs);
}
.text-input-group > .input-hint {
  padding-top: var(--5xs);
}

.text-input-label {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 300;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  text-align: start;
  letter-spacing: 0.01em;
  font-size: var(--text-md);
  line-height: calc(0.125em + 1.5ex + 0.125em);
  color: var(--text-strong);
  text-shadow: var(--text-sha-sm);
}

.input-hint {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-xs);
  line-height: calc(0.125em + 2.25ex + 0.125em);
  color: var(--text-mild);
  text-shadow: var(--text-sha-3xs);
}

/* Input base mixins */
/* ================================================== */
/* Search input */
/* ================================================== */
.search-input-bg {
  pointer-events: none;
  position: relative;
  z-index: 13;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: var(--text-input-padding);
  background-color: var(--text-input-inset-bg);
  box-shadow: var(--text-input-inset);
  border-radius: var(--text-input-radius);
  overflow: hidden;
  height: var(--text-input-height);
  width: min(var(--text-input-maxwidth), 100%);
  padding: 0 var(--text-input-padding);
  --search-icon-h: calc(var(--text-input-height) - (var(--text-input-padding) * 2));
  --wrap-icon: calc(var(--search-icon-h) + (var(--text-input-padding) * 2));
}

.search-input-icon {
  z-index: 15;
  height: var(--search-icon-h);
  width: var(--search-icon-h);
  aspect-ratio: 1;
  background-color: var(--placeholder-color);
}

.search-input {
  position: absolute;
  inset: 0;
  z-index: 14;
  width: 100%;
  height: 100%;
  background-color: transparent;
  border-radius: var(--text-input-radius);
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  z-index: 15;
  line-height: 1;
  text-align: start;
  color: var(--text-base);
  pointer-events: auto;
  cursor: text;
  padding-left: var(--wrap-icon);
  padding-right: var(--text-input-padding);
}
.search-input::-moz-placeholder {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  z-index: 15;
  line-height: 1;
  text-align: start;
  color: var(--text-base);
  color: var(--placeholder-color);
}
.search-input::placeholder {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  z-index: 15;
  line-height: 1;
  text-align: start;
  color: var(--text-base);
  color: var(--placeholder-color);
}
.search-input:focus-visible {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
}

/* Little x that lets you clear what you typed. Not always available */
input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
  z-index: 15;
  height: calc(var(--text-input-height) - var(--text-input-padding) * 2);
  aspect-ratio: 1;
  background: url(/assets/icons/XCircleOutline.svg) no-repeat 50% 50%;
  background-size: contain;
  opacity: 0;
  pointer-events: none;
}

input[type=search]:focus::-webkit-search-cancel-button {
  opacity: 0.33;
  pointer-events: all;
}

/* Text input */
/* ================================================== */
.text-input-bg {
  pointer-events: none;
  position: relative;
  z-index: 13;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: var(--text-input-padding);
  background-color: var(--text-input-inset-bg);
  box-shadow: var(--text-input-inset);
  border-radius: var(--text-input-radius);
  overflow: hidden;
  height: var(--text-input-height);
  width: min(var(--text-input-maxwidth), 100%);
}

.text-input {
  position: absolute;
  inset: 0;
  z-index: 14;
  width: 100%;
  height: 100%;
  background-color: transparent;
  border-radius: var(--text-input-radius);
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  z-index: 15;
  line-height: 1;
  text-align: start;
  color: var(--text-base);
  pointer-events: auto;
  cursor: text;
  padding: 0 var(--text-input-padding);
}
.text-input::-moz-placeholder {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  z-index: 15;
  line-height: 1;
  text-align: start;
  color: var(--text-base);
  color: var(--placeholder-color);
}
.text-input::placeholder {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  z-index: 15;
  line-height: 1;
  text-align: start;
  color: var(--text-base);
  color: var(--placeholder-color);
}
.text-input:focus-visible {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
}

/* Textarea input */
/* ================================================== */
.textarea-bg {
  pointer-events: none;
  position: relative;
  z-index: 13;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: var(--text-input-padding);
  background-color: var(--text-input-inset-bg);
  box-shadow: var(--text-input-inset);
  border-radius: var(--text-input-radius);
  overflow: hidden;
  width: min(var(--textarea-maxwidth), 100%);
  min-height: var(--textarea-minheight);
  height: -moz-fit-content;
  height: fit-content;
}

.textarea {
  position: absolute;
  inset: 0;
  z-index: 14;
  width: 100%;
  height: 100%;
  background-color: transparent;
  border-radius: var(--text-input-radius);
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  z-index: 15;
  line-height: 1;
  text-align: start;
  color: var(--text-base);
  pointer-events: auto;
  cursor: text;
  padding: var(--text-input-padding);
  white-space: pre-wrap;
  overflow: auto;
  resize: none;
  line-height: calc(0.125em + 2.5ex + 0.125em);
}
.textarea::-moz-placeholder {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  z-index: 15;
  line-height: 1;
  text-align: start;
  color: var(--text-base);
  color: var(--placeholder-color);
}
.textarea::placeholder {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-sm);
  z-index: 15;
  line-height: 1;
  text-align: start;
  color: var(--text-base);
  color: var(--placeholder-color);
}
.textarea:focus-visible {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
}

/* ================================================== */
/* Inputs */
/* ================================================== */
/* Base for switch | checkbox | radio button  ✨ Config these values */
/* ================================================== */
/* Checkbox */
/* ================================================== */
input[type=checkbox].checkbox {
  --input-h: var(--ui-h-xs);
  --bg: var(--inset-bg-deep);
  --bg-hover: var(--tint-2xdark);
  --inset: var(--inset-sm);
  --knob: hsl(var(--neutral-95) / 1);
  --knob-sha: var(--sha-xs);
  --bg-checked: hsl(var(--primary-50) / 1);
  --bg-checked-hover: hsl(var(--primary-30) / 1);
  --bg-disabled: var(--inset-bg-xdeep);
  --inset-disabled: none;
  --knob-disabled: hsl(var(--neutral-90) / 0.25);
  --knob-disabled-sha: none;
  --bg-disabled-checked: hsl(var(--primary-70) / 0.4);
  position: relative;
  z-index: 14;
  overflow: hidden;
  pointer-events: auto;
  cursor: pointer;
  background-color: var(--bg);
  box-shadow: var(--inset);
  will-change: background-color;
  transition: background-color 400ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
  width: var(--input-h);
  height: var(--input-h);
  border-radius: 0.5rem;
}
input[type=checkbox].checkbox::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 15;
  overflow: hidden;
}
@media (pointer: fine) {
  input[type=checkbox].checkbox:hover {
    background-color: var(--bg-hover);
  }
}
input[type=checkbox].checkbox:checked {
  background-color: var(--bg-checked);
}
input[type=checkbox].checkbox:checked:hover {
  background-color: var(--bg-checked-hover);
}
input[type=checkbox].checkbox:focus-visible {
  box-shadow: 0 0 0 1px hsl(var(--primary-98)/0.4), 0 0 0 2px hsl(var(--primary-90)/0.3), 0 0 0 3px hsl(var(--primary-5)/0.2) !important;
}
input[type=checkbox].checkbox:disabled {
  cursor: not-allowed;
  background-color: var(--bg-disabled);
  box-shadow: var(--inset-disabled);
}
input[type=checkbox].checkbox:disabled + label {
  color: var(--text-xmild);
}
input[type=checkbox].checkbox:disabled::after {
  box-shadow: var(--knob-disabled-sha);
}
input[type=checkbox].checkbox:disabled:checked {
  background-color: var(--bg-disabled-checked);
}
input[type=checkbox].checkbox:disabled:checked::after {
  box-shadow: var(--knob-disabled-sha);
}
input[type=checkbox].checkbox::after {
  background-color: transparent;
  box-shadow: none;
}
input[type=checkbox].checkbox:checked::after {
  border-radius: 0.05rem;
  width: 55%;
  height: 30%;
  border: 2.5px solid var(--knob);
  border-top: 0;
  border-right: 0;
  left: 23%;
  top: 32%;
  transform: rotate(-45deg);
}
input[type=checkbox].checkbox:disabled::after {
  border-radius: 0.05rem;
  width: 80%;
  height: 30%;
  border-bottom: 2px solid var(--knob-disabled);
  border-top: 0;
  border-right: 0;
  border-left: 0;
  left: 0%;
  top: 30%;
  transform: rotate(-45deg);
}
input[type=checkbox].checkbox:disabled:checked::after {
  width: 55%;
  height: 32%;
  border: 2.5px solid var(--knob-disabled);
  border-top: 0;
  border-right: 0;
  left: 23%;
  top: 30%;
}

/* Switch */
/* ================================================== */
input[type=checkbox].switch {
  --switch-width: calc(var(--input-h) * 1.8);
  --thumb-margin: 3.5px;
  --input-h: var(--ui-h-xs);
  --bg: var(--inset-bg-deep);
  --bg-hover: var(--tint-2xdark);
  --inset: var(--inset-sm);
  --knob: hsl(var(--neutral-95) / 1);
  --knob-sha: var(--sha-xs);
  --bg-checked: hsl(var(--primary-50) / 1);
  --bg-checked-hover: hsl(var(--primary-30) / 1);
  --bg-disabled: var(--inset-bg-xdeep);
  --inset-disabled: none;
  --knob-disabled: hsl(var(--neutral-90) / 0.25);
  --knob-disabled-sha: none;
  --bg-disabled-checked: hsl(var(--primary-70) / 0.4);
  position: relative;
  z-index: 14;
  overflow: hidden;
  pointer-events: auto;
  cursor: pointer;
  background-color: var(--bg);
  box-shadow: var(--inset);
  will-change: background-color;
  transition: background-color 400ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
  display: inline-flex;
  width: var(--switch-width);
  height: var(--input-h);
  align-items: center;
  border-radius: 99px;
}
input[type=checkbox].switch::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 15;
  overflow: hidden;
}
@media (pointer: fine) {
  input[type=checkbox].switch:hover {
    background-color: var(--bg-hover);
  }
}
input[type=checkbox].switch:checked {
  background-color: var(--bg-checked);
}
input[type=checkbox].switch:checked:hover {
  background-color: var(--bg-checked-hover);
}
input[type=checkbox].switch:focus-visible {
  box-shadow: 0 0 0 1px hsl(var(--primary-98)/0.4), 0 0 0 2px hsl(var(--primary-90)/0.3), 0 0 0 3px hsl(var(--primary-5)/0.2) !important;
}
input[type=checkbox].switch:disabled {
  cursor: not-allowed;
  background-color: var(--bg-disabled);
  box-shadow: var(--inset-disabled);
}
input[type=checkbox].switch:disabled + label {
  color: var(--text-xmild);
}
input[type=checkbox].switch:disabled::after {
  box-shadow: var(--knob-disabled-sha);
}
input[type=checkbox].switch:disabled:checked {
  background-color: var(--bg-disabled-checked);
}
input[type=checkbox].switch:disabled:checked::after {
  box-shadow: var(--knob-disabled-sha);
}
input[type=checkbox].switch::after {
  display: block;
  aspect-ratio: 1;
  margin: var(--thumb-margin);
  height: calc(100% - 2 * var(--thumb-margin));
  background-color: var(--knob);
  box-shadow: var(--knob-sha);
  border-radius: 99px;
  transition: margin 300ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
input[type=checkbox].switch:checked::after {
  margin-inline-start: calc(var(--switch-width) - var(--input-h) + var(--thumb-margin));
}
input[type=checkbox].switch:disabled::after {
  background-color: var(--knob-disabled);
}

/* Radio button */
/* ================================================== */
input[type=radio] {
  --input-h: var(--ui-h-xs);
  --bg: var(--inset-bg-deep);
  --bg-hover: var(--tint-2xdark);
  --inset: var(--inset-sm);
  --knob: hsl(var(--neutral-95) / 1);
  --knob-sha: var(--sha-xs);
  --bg-checked: hsl(var(--primary-50) / 1);
  --bg-checked-hover: hsl(var(--primary-30) / 1);
  --bg-disabled: var(--inset-bg-xdeep);
  --inset-disabled: none;
  --knob-disabled: hsl(var(--neutral-90) / 0.25);
  --knob-disabled-sha: none;
  --bg-disabled-checked: hsl(var(--primary-70) / 0.4);
  position: relative;
  z-index: 14;
  overflow: hidden;
  pointer-events: auto;
  cursor: pointer;
  background-color: var(--bg);
  box-shadow: var(--inset);
  will-change: background-color;
  transition: background-color 400ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
  width: var(--input-h);
  height: var(--input-h);
  aspect-ratio: 1;
  border-radius: 99px;
}
input[type=radio]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 15;
  overflow: hidden;
}
@media (pointer: fine) {
  input[type=radio]:hover {
    background-color: var(--bg-hover);
  }
}
input[type=radio]:checked {
  background-color: var(--bg-checked);
}
input[type=radio]:checked:hover {
  background-color: var(--bg-checked-hover);
}
input[type=radio]:focus-visible {
  box-shadow: 0 0 0 1px hsl(var(--primary-98)/0.4), 0 0 0 2px hsl(var(--primary-90)/0.3), 0 0 0 3px hsl(var(--primary-5)/0.2) !important;
}
input[type=radio]:disabled {
  cursor: not-allowed;
  background-color: var(--bg-disabled);
  box-shadow: var(--inset-disabled);
}
input[type=radio]:disabled + label {
  color: var(--text-xmild);
}
input[type=radio]:disabled::after {
  box-shadow: var(--knob-disabled-sha);
}
input[type=radio]:disabled:checked {
  background-color: var(--bg-disabled-checked);
}
input[type=radio]:disabled:checked::after {
  box-shadow: var(--knob-disabled-sha);
}
input[type=radio]::after {
  background-color: transparent;
  box-shadow: none;
}
input[type=radio]:checked::after {
  margin: 5px;
  aspect-ratio: 1;
  border-radius: 99px;
  background-color: var(--knob);
  box-shadow: var(--knob-sha);
}
input[type=radio]:disabled:checked::after {
  background-color: var(--knob-disabled);
}

/* Input wappers & items */
/* ================================================== */
.input-legend {
  padding-bottom: var(--md);
  font-size: var(--text-md);
}

.input-fieldset {
  display: grid;
  gap: var(--sm);
}

.input-group {
  display: flex;
  align-items: center;
  gap: var(--xs);
}

.input-label {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 300;
  letter-spacing: 0.02em;
  color: var(--text-xstrong);
  text-shadow: var(--text-sha-sm);
}

.inline-label {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  color: var(--text-strong);
}

/* ================================================== */
/* Nav */
/* ================================================== */
html {
  --nav-padding: var(--xs);
  --nav-item-h: var(--ui-h-md);
  --nav-h: calc(var(--nav-item-h) + (var(--nav-padding) * 2));
}

.main-nav-bin {
  position: fixed;
  z-index: 9;
  height: var(--nav-h);
  inset: 0;
  padding: var(--nav-padding) 0;
  pointer-events: none;
}

.main-nav {
  max-width: 90rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--3xs);
  margin: 0 auto;
  pointer-events: none;
}

.nav-item {
  z-index: 10;
  height: var(--nav-item-h);
  display: grid;
  place-items: center;
}
.nav-item > svg {
  width: calc(var(--nav-item-h) * 0.8);
  height: calc(var(--nav-item-h) * 0.8);
}

/* ================================================== */
/* Tab menu */
/* ================================================== */
.tab-panel {
  position: relative;
  width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  overflow: hidden;
}

.panel-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.tab-menu-bin {
  --tab-menu-space: 4px;
  --tab-radius: 8px;
  pointer-events: none;
  overflow: hidden;
  position: relative;
  z-index: 9;
  width: -moz-fit-content;
  width: fit-content;
  height: var(--ui-h-md);
  border-radius: calc(var(--tab-radius) + var(--tab-menu-space) - (var(--tab-radius) + var(--tab-menu-space)) * 3 / 100);
}
@media only screen and (min-width: 64rem) {
  .tab-menu-bin {
    --tab-radius: 9px;
  }
}

.tab-menu {
  pointer-events: none;
  width: -moz-fit-content;
  width: fit-content;
  height: 100%;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  gap: var(--tab-menu-space);
  padding: var(--tab-menu-space);
  border-radius: inherit;
  background-color: var(--inset-bg-deep);
  box-shadow: var(--inset-md);
  -webkit-backdrop-filter: blur(10px) brightness(0.95) saturate(1.5);
  backdrop-filter: blur(10px) brightness(0.95) saturate(1.5);
}

[role=tab] {
  --_btn-h: var(--btn-h, 2.25rem);
  --_btn-content-h: var(--btn-content-h, 1rem);
  --_btn-padding-x: var(--btn-padding-x, 1.5rem);
  --_btn-padding-top: var(--btn-padding-top, 0);
  --_btn-padding-bottom: var(--btn-padding-bottom, 0);
  --_btn-gap: var(--btn-gap, 0.25rem);
  --_btn-radius: var(--btn-radius, 999px);
  position: relative;
  z-index: 17;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  height: var(--_btn-h);
  padding-top: 0; /* added to .btn-text so svg is not affected */
  padding-right: var(--_btn-padding-x);
  padding-bottom: 0; /* added to .btn-text so svg is not affected */
  padding-left: var(--_btn-padding-x);
  gap: var(--_btn-gap);
  border-radius: var(--_btn-radius);
  pointer-events: auto;
  cursor: pointer;
  --btn-h: 100%;
  --btn-content-h: 0.9rem;
  --btn-padding-x: 0.75rem;
  --btn-padding-top: 0;
  --btn-padding-bottom: 0;
  --btn-radius: var(--tab-radius);
}
[role=tab]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 18;
}
[role=tab]::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 16;
}
[role=tab] > .btn-text {
  pointer-events: none;
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-align: center;
  white-space: nowrap;
  text-decoration: none;
  text-shadow: var(--text-sha-sm);
  z-index: 19;
  font-size: var(--_btn-content-h);
  line-height: var(--_btn-content-h);
  padding-top: var(--_btn-padding-top);
  padding-bottom: var(--_btn-padding-bottom);
  pointer-events: none;
}
[role=tab] > svg {
  z-index: 19;
  height: calc(var(--_btn-content-h) * 1.15);
  aspect-ratio: 1;
  pointer-events: none;
}
[role=tab].icon-end {
  padding-top: 0;
  padding-right: calc(var(--_btn-padding-x) * 0.8);
  padding-bottom: 0;
  padding-left: var(--_btn-padding-x);
}
[role=tab].icon-start {
  padding-top: 0;
  padding-right: var(--_btn-padding-x);
  padding-bottom: 0;
  padding-left: calc(var(--_btn-padding-x) * 0.8);
}
@media only screen and (min-width: 22.5rem) {
  [role=tab] {
    --btn-content-h: 1rem;
    --btn-padding-x: 1rem;
  }
}
@media only screen and (min-width: 30rem) {
  [role=tab] {
    --btn-padding-x: 1.15rem;
  }
}
@media only screen and (min-width: 48rem) {
  [role=tab] {
    --btn-padding-x: 1.25rem;
  }
}
@media only screen and (min-width: 64rem) {
  [role=tab] {
    --btn-content-h: 1.1rem;
    --btn-padding-x: 1.5rem;
  }
}

[role=tab][aria-selected=true] {
  --btn-text: var(--tint-3xdark);
}
[role=tab][aria-selected=true]::before {
  opacity: 0.6;
}

/* ================================================== */
/* Main Footer */
/* ================================================== */
.footer-area {
  z-index: 9;
  position: relative;
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  background-color: var(--footer-bg);
  padding: 0 var(--gutter);
  display: grid;
  place-items: end center;
}

/* upper */
.footer-upper {
  width: 100%;
  max-width: 90rem;
  height: -moz-fit-content;
  height: fit-content;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--4xs);
  padding: var(--3xs) 0 var(--5xs) 0;
  border-bottom: 1px solid var(--text-2xmild);
}
@media only screen and (min-width: 22.5rem) {
  .footer-upper {
    padding: var(--2xs) 0 var(--4xs) 0;
  }
}
@media only screen and (min-width: 30rem) {
  .footer-upper {
    padding: var(--sm) 0 var(--4xs) 0;
  }
}

.footer-tagline-group > :first-child {
  font-size: calc(var(--text-lg) * 0.55);
}
.footer-tagline-group > :nth-child(2) {
  font-size: calc(var(--text-lg) * 0.75);
}
.footer-tagline-group > :last-child {
  font-size: calc(var(--text-lg) * 0.9);
}
@media only screen and (min-width: 22.5rem) {
  .footer-tagline-group > :first-child {
    font-size: calc(var(--text-lg) * 0.7);
  }
  .footer-tagline-group > :nth-child(2) {
    font-size: calc(var(--text-lg) * 0.9);
  }
  .footer-tagline-group > :last-child {
    font-size: calc(var(--text-lg) * 1.1);
  }
}
@media only screen and (min-width: 30rem) {
  .footer-tagline-group > :first-child {
    font-size: calc(var(--text-xl) * 0.8);
  }
  .footer-tagline-group > :nth-child(2) {
    font-size: var(--text-xl);
  }
  .footer-tagline-group > :last-child {
    font-size: calc(var(--text-xl) * 1.15);
  }
}

.footer-tagline {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  line-height: calc(0.125em + 1.5ex + 0.125em);
  letter-spacing: -0.005em;
  width: -moz-fit-content;
  width: fit-content;
  text-align: start;
  text-shadow: var(--text-sha-xs);
  color: var(--text-xstrong);
}

.footer-mail-group {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--5xs);
}

.footer-mail {
  gap: var(--5xs);
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 400;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: var(--text-sm);
  letter-spacing: 0.01em;
  text-align: end;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-shadow: var(--text-sha-xs);
  color: var(--text-2xstrong);
  will-change: color;
  transition: color 400ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.footer-mail:hover {
  color: var(--text-accent-base);
}

/* lower */
.footer-lower {
  width: 100%;
  max-width: 90rem;
  height: -moz-fit-content;
  height: fit-content;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0 0 var(--3xs) 0;
}
@media only screen and (min-width: 22.5rem) {
  .footer-lower {
    padding: 0.2rem 0 var(--3xs) 0;
  }
}
@media only screen and (min-width: 30rem) {
  .footer-lower {
    flex-direction: row;
  }
}

.footer-social {
  width: auto;
  display: flex;
  align-content: center;
  gap: var(--4xs);
}
.footer-social svg {
  background-color: var(--text-2xstrong);
}
@media only screen and (min-width: 48rem) {
  .footer-social {
    gap: var(--xs);
  }
}

.built-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media only screen and (min-width: 30rem) {
  .built-group {
    align-items: flex-end;
  }
}
.built-group p {
  color: var(--text-mild);
}

.glass-logo {
  height: 1.2em;
  background-color: var(--text-mild);
}

.glass-logo-group {
  display: flex;
  align-items: center;
  gap: 0.1rem;
  font-weight: 400;
  font-size: var(--text-2xs);
  font-family: "Poppins", "Arial", sans-serif;
  letter-spacing: 0.01em;
  line-height: 1;
  color: var(--text-mild);
  will-change: color;
  transition: color 400ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.glass-logo-group svg {
  background-color: var(--text-mild);
  will-change: background-color;
  transition: background-color 400ms cubic-bezier(0.46, 0.43, 0.1, 0.99);
}
.glass-logo-group:hover {
  color: var(--text-xstrong);
}
.glass-logo-group:hover svg {
  background-color: var(--text-xstrong);
}

/* Pages */
/* ================================================== */
/* Used on all pages */
/* ================================================== */
html {
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  min-height: 100vh;
  scroll-behavior: smooth;
  scroll-padding-top: var(--nav-h);
}

body {
  position: relative;
  width: 100%;
  min-height: 100lvh;
  height: -moz-fit-content;
  height: fit-content;
}

.page-area {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  display: grid;
  grid-template-areas: "nav" "main" "footer";
  grid-template-rows: var(--nav-h) 1fr auto;
}
.page-area .nav-area {
  grid-area: nav;
}
.page-area .content-area {
  grid-area: main;
}
.page-area .footer-area {
  grid-area: footer;
}

.content-area {
  width: 100%;
  height: 100%;
  min-height: -moz-fit-content;
  min-height: fit-content;
  padding-bottom: var(--5xl);
  /* for debug */
}

/* ================================================== */
/* Demo only styles */
/* ================================================== */
/* Fixed background panel */
/* ================================================== */
/* Controled by nav's tab menu */
.page-bg-panel-group {
  pointer-events: none;
  position: fixed;
  inset: 0;
  z-index: -10;
  width: 100%;
  height: 100vh;
  min-height: 100lvh;
}

.page-bg-panel {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 100lvh;
  overflow: hidden;
}

.page-bg-img {
  width: 100%;
  height: 100%;
  min-height: 100lvh;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.page-bg-noise {
  pointer-events: none;
}
.page-bg-noise::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  background-size: 40px;
  background-repeat: repeat;
}

.page-bg-blur {
  pointer-events: none;
}
.page-bg-blur::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  -webkit-backdrop-filter: blur(4px) brightness(0.7) saturate(1.2);
  backdrop-filter: blur(4px) brightness(0.7) saturate(1.2);
}

/*  Main nav glass logo */
/* ================================================== */
.svg-3d-glass-ui-logo {
  -webkit-mask: url(/assets/logos/3D-glass-UI-logo.svg);
          mask: url(/assets/logos/3D-glass-UI-logo.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-backdrop-filter: blur(10px) brightness(0.8) saturate(2.5);
  backdrop-filter: blur(10px) brightness(0.8) saturate(2.5);
}

.svg-logo {
  -webkit-mask: url(/assets/logos/3D-glass-UI-logo.svg);
          mask: url(/assets/logos/3D-glass-UI-logo.svg);
  max-width: 100%;
  max-height: 100%;
  aspect-ratio: 1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-position: center;
          mask-position: center;
}

/*  Hero header */
/* ================================================== */
.card-3d-layout {
  pointer-events: none;
  position: relative;
  width: 100%;
  height: 100%;
  display: grid;
  place-self: center;
  place-items: end center;
  padding: var(--5xl) 0;
  perspective: 2500px;
}
@media only screen and (min-width: 48rem) {
  .card-3d-layout {
    place-items: end start;
    padding: 15vh 0 15vh 9rem;
  }
}
@media only screen and (min-width: 64rem) {
  .card-3d-layout {
    max-width: 64rem;
    padding: 20vh 0 20vh var(--gutter);
  }
}
@media only screen and (min-width: 90rem) {
  .card-3d-layout {
    max-width: 1200px;
  }
}
@media only screen and (min-width: 1700px) {
  .card-3d-layout {
    max-width: 90rem;
  }
}
@media only screen and (min-width: 2500px) {
  .card-3d-layout {
    perspective: 3000px;
    max-width: 2000px;
  }
}

.card-3d {
  --_space: var(--space, 1rem);
  --neg-space: calc(-1 * var(--_space));
  --_neg-space: var(--neg-space, -1rem);
  --_card-radius: var(--card-radius, 1.5rem);
  z-index: 7;
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
  display: grid;
  gap: var(--_space);
  padding: var(--_space);
  overflow: hidden;
  pointer-events: auto;
  border-radius: var(--_card-radius);
  pointer-events: none;
  --space: calc(var(--sm) * 1.1);
  width: min(93%, 340px);
  border-radius: calc(var(--lg) * 1.05);
  box-shadow: var(--sha-lg);
  padding: var(--space);
}
@media only screen and (min-width: 22.5rem) {
  .card-3d {
    width: min(90%, 360px);
  }
}
@media only screen and (min-width: 30rem) {
  .card-3d {
    width: 380px;
    --space: var(--md);
  }
}
@media only screen and (min-width: 48rem) {
  .card-3d {
    width: 390px;
    --space: calc(var(--md) * 0.9);
    border-radius: var(--md);
  }
}
@media only screen and (min-width: 64rem) {
  .card-3d {
    width: 480px;
    --space: var(--md);
  }
}

.card-3d-title {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 300;
  letter-spacing: 0.02em;
  text-shadow: var(--text-sha-2xl);
  line-height: 1.15;
  color: var(--text-strong);
  font-size: var(--text-xl);
}
@media only screen and (min-width: 22.5rem) {
  .card-3d-title {
    font-size: calc(var(--text-2xl) * 0.95);
  }
}
@media only screen and (min-width: 48rem) {
  .card-3d-title {
    font-size: calc(var(--text-2xl) * 0.9);
  }
}

.card-3d-text {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-size: var(--text-xs);
  letter-spacing: 0.02em;
  text-shadow: var(--text-sha-2xs);
}
@media only screen and (min-width: 22.5rem) {
  .card-3d-text {
    font-size: calc(var(--text-xs) * 1.1);
  }
}
@media only screen and (min-width: 30rem) {
  .card-3d-text {
    font-size: var(--text-sm);
  }
}
@media only screen and (min-width: 64rem) {
  .card-3d-text {
    font-size: calc(var(--text-md) * 1.1);
  }
}

/* Menu link marquee */
/* ================================================== */
.marquee-bin {
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  display: flex;
  justify-content: flex-start;
}

.marquee {
  width: -moz-fit-content;
  width: fit-content;
  min-width: 50%;
  display: flex;
  justify-content: flex-end;
  padding: var(--sm);
  margin-bottom: var(--3xl);
  background-color: var(--tint-clear);
  border-radius: 0 var(--sm) var(--sm) 0;
  box-shadow: var(--sha-sm);
  position: relative;
  z-index: 4;
}
.marquee::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--flat-bevel-md);
}
.marquee::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 40px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.marquee > * {
  position: relative;
  z-index: 6;
}
@media only screen and (min-width: 22.5rem) {
  .marquee {
    min-width: 40%;
  }
}
@media only screen and (min-width: 30rem) {
  .marquee {
    min-width: 33%;
  }
}

.marquee-title {
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: calc(0.125em + 1.5ex + 0.125em);
  font-size: var(--text-xl);
  letter-spacing: 0.02em;
  text-align: end;
  color: var(--text-strong);
  text-shadow: var(--text-sha-2xl);
}

/* Glass bevel Demo */
/* ================================================== */
.glass-bevel-xs {
  position: relative;
  z-index: 4;
}
.glass-bevel-xs::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--bevel-xs);
}
.glass-bevel-xs::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 40px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.glass-bevel-xs > * {
  position: relative;
  z-index: 6;
}

.glass-bevel-sm {
  position: relative;
  z-index: 4;
}
.glass-bevel-sm::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--bevel-sm);
}
.glass-bevel-sm::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 40px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.glass-bevel-sm > * {
  position: relative;
  z-index: 6;
}

.glass-bevel-md {
  position: relative;
  z-index: 4;
}
.glass-bevel-md::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--bevel-md);
}
.glass-bevel-md::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 40px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.glass-bevel-md > * {
  position: relative;
  z-index: 6;
}

.glass-bevel-lg {
  position: relative;
  z-index: 4;
}
.glass-bevel-lg::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--bevel-lg);
}
.glass-bevel-lg::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 40px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.glass-bevel-lg > * {
  position: relative;
  z-index: 6;
}

.glass-bevel-xl {
  position: relative;
  z-index: 4;
}
.glass-bevel-xl::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 5;
  box-shadow: var(--bevel-xl);
}
.glass-bevel-xl::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  z-index: 3;
  background-repeat: repeat;
  background-size: 40px;
  background-image: url(/assets/textures/noise-texture-rough-gray-500x500.png);
  -webkit-backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
  backdrop-filter: blur(var(--blur)) brightness(var(--bright)) saturate(var(--satu));
}
.glass-bevel-xl > * {
  position: relative;
  z-index: 6;
}

/* Telescope rect */
.tele-rect-bin {
  height: 450px;
}
@media only screen and (min-width: 22.5rem) {
  .tele-rect-bin {
    height: 550px;
  }
}

.tele-rect {
  display: grid;
  touch-action: pan-y;
  min-width: -moz-fit-content;
  min-width: fit-content;
  width: 100%;
  overflow: hidden;
  padding: 8% 12% 4% 4%;
  background-color: var(--tint-xdark);
  will-change: padding;
  transition: padding cubic-bezier(0.46, 0.43, 0.1, 0.99) 150ms;
}
@media (hover: hover) {
  .tele-rect:hover {
    padding: 8%;
  }
}
.tele-rect > p {
  padding: var(--2xs);
  pointer-events: none;
}

/* Glass inset Demo */
/* ================================================== */
.inset-demo {
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  border-radius: inherit;
  background-color: var(--inset-bg-xdeep);
  padding: var(--2xs);
}
@media only screen and (min-width: 30rem) {
  .inset-demo {
    padding: var(--xs);
  }
}

/*  glass tint demo */
/* ================================================== */
.glass-bento-2to3 {
  display: grid;
  place-content: center;
  grid-template-columns: repeat(2, minmax(100px, 1fr));
  gap: var(--md);
}
@media only screen and (min-width: 22.5rem) {
  .glass-bento-2to3 {
    grid-template-columns: repeat(3, minmax(100px, 180px));
    gap: var(--3xs);
  }
}
@media only screen and (min-width: 30rem) {
  .glass-bento-2to3 {
    gap: var(--2xs);
  }
}
@media only screen and (min-width: 48rem) {
  .glass-bento-2to3 {
    gap: var(--xs);
  }
}
@media only screen and (min-width: 64rem) {
  .glass-bento-2to3 {
    grid-template-columns: repeat(3, minmax(100px, 200px));
    gap: var(--sm);
  }
}

/* Button Demo */
/* ================================================== */
.btn-demo-bin {
  width: 100%;
  max-width: 64rem;
  display: grid;
  place-items: center;
  padding: var(--lg) var(--3xl);
}
@media only screen and (min-width: 30rem) {
  .btn-demo-bin {
    padding: var(--lg) 0;
  }
}
@media only screen and (min-width: 64rem) {
  .btn-demo-bin {
    padding: var(--lg);
  }
}

.btn-layout {
  width: 200px;
  display: grid;
  row-gap: var(--4xl);
  -moz-column-gap: var(--3xl);
       column-gap: var(--3xl);
}
@media only screen and (min-width: 30rem) {
  .btn-layout {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-evenly;
  }
}
@media only screen and (min-width: 48rem) {
  .btn-layout {
    -moz-column-gap: var(--5xl);
         column-gap: var(--5xl);
  }
}

.btn-col {
  display: grid;
  gap: var(--md);
  width: 100%;
  place-items: center start;
}
@media only screen and (min-width: 22.5rem) {
  .btn-col {
    width: -moz-fit-content;
    width: fit-content;
  }
}

.btn-col-c {
  display: grid;
  gap: var(--md);
  width: 100%;
  place-items: center start;
}
@media only screen and (min-width: 22.5rem) {
  .btn-col-c {
    place-items: center;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.btn-cell-label {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 600;
  font-size: var(--text-xs);
  letter-spacing: min(1vw, 10px);
  text-transform: uppercase;
  line-height: calc(0.125em + 2.25ex + 0.125em);
  color: var(--text-base);
  text-shadow: var(--text-sha-lg);
  margin-bottom: -10px;
  width: 100%;
}
@media only screen and (min-width: 30rem) {
  .btn-cell-label {
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media only screen and (min-width: 64rem) {
  .btn-cell-label {
    font-size: var(--text-sm);
  }
}

/* Fake btn states */
.btn-hover {
  pointer-events: none;
}
.btn-hover > .btn-text {
  color: var(--btn-state-text);
}
.btn-hover > svg {
  background-color: var(--btn-state-icon);
}
.btn-hover::before {
  opacity: var(--btn-hover);
}

.btn-focus {
  pointer-events: none;
}
.btn-focus > .btn-text {
  color: var(--btn-state-text);
}
.btn-focus > svg {
  background-color: var(--btn-state-icon);
}
.btn-focus::before {
  opacity: var(--btn-focus);
}
.btn-focus::after {
  box-shadow: inset 0 0 0 1px hsl(var(--primary-98)/0.5), inset 0 0 0 1.5px hsl(var(--primary-95)/0.4), inset 0 0 0 2px hsl(var(--primary-5)/0.2) !important;
}

.btn-active {
  pointer-events: none;
}
.btn-active > .btn-text {
  color: var(--btn-state-text);
}
.btn-active > svg {
  background-color: var(--btn-state-icon);
}
.btn-active::before {
  opacity: var(--btn-active);
}

/* Contact section */
/* ================================================== */
.contact-inset {
  display: grid;
  place-items: center;
  gap: var(--2xs);
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  padding: var(--lg);
  box-shadow: var(--inset-lg);
  border-radius: inherit;
  background-color: var(--inset-bg-deep);
}

.stamp {
  width: 100px;
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: var(--xs);
  opacity: 0.9;
  box-shadow: var(--sha-md);
}
@media only screen and (min-width: 22.5rem) {
  .stamp {
    width: 150px;
    border-radius: var(--sm);
  }
}
@media only screen and (min-width: 30rem) {
  .stamp {
    width: 180px;
  }
}
.stamp > img {
  width: 100%;
}

/* Demo text styles */
/* ================================================== */
.class-name {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 300;
  letter-spacing: 0.04em;
  text-shadow: var(--text-sha-sm);
  word-break: keep-all;
  font-size: var(--text-sm);
}
@media only screen and (min-width: 30rem) {
  .class-name {
    font-size: var(--text-md);
  }
}

.code-label-md {
  font-family: "Nunito Sans", "Arial", sans-serif;
  font-weight: 500;
  letter-spacing: 0.01em;
  font-size: var(--text-sm);
  line-height: calc(0.125em + 2.25ex + 0.125em);
  font-family: "Fragment Mono", "Courier", monospace;
  text-shadow: var(--text-sha-2xs);
}
@media only screen and (min-width: 30rem) {
  .code-label-md {
    font-family: "Nunito Sans", "Arial", sans-serif;
    font-weight: 500;
    letter-spacing: 0.01em;
    font-size: var(--text-md);
    line-height: calc(0.125em + 2.25ex + 0.125em);
  }
}

/* Code fonts */
/* ================================================== */
.c-comment {
  font-family: "Fragment Mono", "Courier", monospace;
  font-size: inherit;
  line-height: inherit;
  font-weight: 400; /* only font-weight available for this font */
  font-style: italic;
  color: var(--text-xmild);
}

.code-class {
  font-family: "Fragment Mono", "Courier", monospace;
  font-size: inherit;
  line-height: inherit;
  font-weight: 400; /* only font-weight available for this font */
  display: inline;
}

.w-demo-acc {
  width: 100%;
  max-width: 680px;
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsIi4uLy4uL3NyYy9zYXNzLzItdXRpbC9fcmVzZXQuc2NzcyIsIi4uLy4uL3NyYy9zYXNzL2ZvcndhcmQtc3R5bGVzL191dGlsLnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8yLXV0aWwvX2dyaWQtZmxleC1nYXAuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzItdXRpbC9fbWl4aW4uc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzAtZGVzaWduL19zcGFjZS5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvMC1kZXNpZ24vX2JyZWFrcG9pbnQuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzItdXRpbC9fei1pbmRleC5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvMi11dGlsL19sYXlvdXQuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzItdXRpbC9fbWFyZ2luLXBhZGRpbmcuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzItdXRpbC9fcmFkaXVzLnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8yLXV0aWwvX3RleHQtdXRpbC5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvMC1kZXNpZ24vX2NvbG9yLnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8wLWRlc2lnbi9fdGV4dC1jb25maWcuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzAtZGVzaWduL190ZXh0LXN0eWxlcy5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvZm9yd2FyZC1zdHlsZXMvX2Rlc2lnbi5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvMC1kZXNpZ24vX2ludGVyYWN0aW9uLnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8wLWRlc2lnbi9fZ3JhZGllbnQuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzAtZGVzaWduL19zdmcuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzAtZGVzaWduL19mb250LnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy9mb3J3YXJkLXN0eWxlcy9fZ2xhc3Muc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzEtZ2xhc3MvX2JldmVsLnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8xLWdsYXNzL19nbGFzcy5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvMS1nbGFzcy9faW5zZXQuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzEtZ2xhc3MvX3NoYWRvdy5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvZm9yd2FyZC1zdHlsZXMvX2NvbXBvbmVudHMuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzMtY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8zLWNvbXBvbmVudHMvX2JlbnRvLnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8zLWNvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvMy1jb21wb25lbnRzL19jYXJkLnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8zLWNvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8zLWNvbXBvbmVudHMvX2lucHV0LXRleHQuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzMtY29tcG9uZW50cy9faW5wdXQuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzMtY29tcG9uZW50cy9fbmF2LnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8zLWNvbXBvbmVudHMvX3RhYi1tZW51LnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy8zLWNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvZm9yd2FyZC1zdHlsZXMvX3BhZ2VzLnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy80LXBhZ2VzL19nbG9iYWwuc2NzcyIsIi4uLy4uL3NyYy9zYXNzLzQtcGFnZXMvX2RlbW8tb25seS1zdHVmZi5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQix1REFBQTtBQUNBLFVBQUE7QUFDQSx1REFBQTtBQUVBLHlCQUFBO0FBQ0E7RUFHRSxzQkFBQTtBRENGOztBQ0VBLDBCQUFBO0FBQ0E7RUFBSSxTQUFBO0FERUo7O0FDQ0EsMkJBQUE7QUFDQTtFQUNFLG1DQUFBO0FERUY7O0FDQ0EsdUJBQUE7QUFDQTs7RUFFRSxnQkFB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O0FJNTRCSTtFQUNFLGtCQUFBO0FKODRCTjtBSS80Qkk7RUFDRSxrQkFBQTtBSmk1Qk47QUlsNUJJO0VBQ0Usa0JBQUE7QUpvNUJOO0FJcjVCSTtFQUNFLGtCQUFBO0FKdTVCTjs7QUl4NUJJO0VBQ0Usc0JBQUE7QUoyNUJOO0FJNTVCSTtFQUNFLHNCQUFBO0FKODVCTjtBSS81Qkk7RUFDRSxzQkFBQTtBSmk2Qk47QUlsNkJJO0VBQ0Usc0JBQUE7QUpvNkJOO0FJcjZCSTtFQUNFLHFCQUFBO0FKdTZCTjtBSXg2Qkk7RUFDRSxxQkFBQTtBSjA2Qk47QUkzNkJJO0VBQ0UscUJBQUE7QUo2NkJOO0FJOTZCSTtFQUNFLHFCQUFBO0FKZzdCTjtBSWo3Qkk7RUFDRSxxQkFBQTtBSm03Qk47QUlwN0JJO0VBQ0Usc0JBQUE7QUpzN0JOO0FJdjdCSTtFQUNFLHNCQUFBO0FKeTdCTjtBSTE3Qkk7RUFDRSxzQkFBQTtBSjQ3Qk47QUk3N0JJO0VBQ0Usc0JBQUE7QUorN0JOOztBSWg4Qkk7RUFDRSx5QkFBQTtBSm04Qk47QUlwOEJJO0VBQ0UseUJBQUE7QUpzOEJOO0FJdjhCSTtFQUNFLHlCQUFBO0FKeThCTjtBSTE4Qkk7RUFDRSx5QkFBQTtBSjQ4Qk47QUk3OEJJO0VBQ0Usd0JBQUE7QUorOEJOO0FJaDlCSTtFQUNFLHdCQUFBO0FKazlCTjtBSW45Qkk7RUFDRSx3QkFBQTtBSnE5Qk47QUl0OUJJO0VBQ0Usd0JBQUE7QUp3OUJOO0FJejlCSTtFQUNFLHdCQUFBO0FKMjlCTjtBSTU5Qkk7RUFDRSx5QkFBQTtBSjg5Qk47QUkvOUJJO0VBQ0UseUJBQUE7QUppK0JOO0FJbCtCSTtFQUNFLHlCQUFBO0FKbytCTjtBSXIrQkk7RUFDRSx5QkFBQTtBSnUrQk47O0FJeCtCSTtFQUNFLHVCQUFBO0FKMitCTjtBSTUrQkk7RUFDRSx1QkFBQTtBSjgrQk47QUkvK0JJO0VBQ0UsdUJBQUE7QUppL0JOO0FJbC9CSTtFQUNFLHVCQUFBO0FKby9CTjtBSXIvQkk7RUFDRSxzQkFBQTtBSnUvQk47QUl4L0JJO0VBQ0Usc0JBQUE7QUowL0JOO0FJMy9CSTtFQUNFLHNCQUFBO0FKNi9CTjtBSTkvQkk7RUFDRSxzQkFBQTtBSmdnQ047QUlqZ0NJO0VBQ0Usc0JBQUE7QUptZ0NOO0FJcGdDSTtFQUNFLHVCQUFBO0FKc2dDTjtBSXZnQ0k7RUFDRSx1QkFBQTtBSnlnQ047QUkxZ0NJO0VBQ0UsdUJBQUE7QUo0Z0NOO0FJN2dDSTtFQUNFLHVCQUFBO0FKK2dDTjs7QUloaENJO0VBQ0Usd0JBQUE7QUptaENOO0FJcGhDSTtFQUNFLHdCQUFBO0FKc2hDTjtBSXZoQ0k7RUFDRSx3QkFBQTtBSnloQ047QUkxaENJO0VBQ0Usd0JBQUE7QUo0aENOO0FJN2hDSTtFQUNFLHVCQUFBO0FKK2hDTjtBSWhpQ0k7RUFDRSx1QkFBQTtBSmtpQ047QUluaUNJO0VBQ0UsdUJBQUE7QUpxaUNOO0FJdGlDSTtFQUNFLHVCQUFBO0FKd2lDTjtBSXppQ0k7RUFDRSx1QkFBQTtBSjJpQ047QUk1aUNJO0VBQ0Usd0JBQUE7QUo4aUNOO0FJL2lDSTtFQUNFLHdCQUFBO0FKaWpDTjtBSWxqQ0k7RUFDRSx3QkFBQTtBSm9qQ047QUlyakNJO0VBQ0Usd0JBQUE7QUp1akNOOztBSTdpQ0k7RUFDRSx3QkFBQTtFQUNBLHVCQUFBO0FKZ2pDTjtBSWxqQ0k7RUFDRSx3QkFBQTtFQUNBLHVCQUFBO0FKb2pDTjtBSXRqQ0k7RUFDRSx3QkFBQTtFQUNBLHVCQUFBO0FKd2pDTjtBSTFqQ0k7RUFDRSx3QkFBQTtFQUNBLHVCQUFBO0FKNGpDTjtBSTlqQ0k7RUFDRSx1QkFBQTtFQUNBLHNCQUFBO0FKZ2tDTjtBSWxrQ0k7RUFDRSx1QkFBQTtFQUNBLHNCQUFBO0FKb2tDTjtBSXRrQ0k7RUFDRSx1QkFBQTtFQUNBLHNCQUFBO0FKd2tDTjtBSTFrQ0k7RUFDRSx1QkFBQTtFQUNBLHNCQUFBO0FKNGtDTjtBSTlrQ0k7RUFDRSx1QkFBQTtFQUNBLHNCQUFBO0FKZ2xDTjtBSWxsQ0k7RUFDRSx3QkFBQTtFQUNBLHVCQUFBO0FKb2xDTjtBSXRsQ0k7RUFDRSx3QkFBQTtFQUNBLHVCQUFBO0FKd2xDTjtBSTFsQ0k7RUFDRSx3QkFBQTtFQUNBLHVCQUFBO0FKNGxDTjtBSTlsQ0k7RUFDRSx3QkFBQTtFQUNBLHVCQUFBO0FKZ21DTjs7QUlsbUNJO0VBQ0Usc0JBQUE7RUFDQSx5QkFBQTtBSnFtQ047QUl2bUNJO0VBQ0Usc0JBQUE7RUFDQSx5QkFBQTtBSnltQ047QUkzbUNJO0VBQ0Usc0JBQUE7RUFDQSx5QkFBQTtBSjZtQ047QUkvbUNJO0VBQ0Usc0JBQUE7RUFDQSx5QkFBQTtBSmluQ047QUlubkNJO0VBQ0UscUJBQUE7RUFDQSx3QkFBQTtBSnFuQ047QUl2bkNJO0VBQ0UscUJBQUE7RUFDQSx3QkFBQTtBSnluQ047QUkzbkNJO0VBQ0UscUJBQUE7RUFDQSx3QkFBQTtBSjZuQ047QUkvbkNJO0VBQ0UscUJBQUE7RUFDQSx3QkFBQTtBSmlvQ047QUlub0NJO0VBQ0UscUJBQUE7RUFDQSx3QkFBQTtBSnFvQ047QUl2b0NJO0VBQ0Usc0JBQUE7RUFDQSx5QkFBQTtBSnlvQ047QUkzb0NJO0VBQ0Usc0JBQUE7RUFDQSx5QkFBQTtBSjZvQ047QUkvb0NJO0VBQ0Usc0JBQUE7RUFDQSx5QkFBQTtBSmlwQ047QUlucENJO0VBQ0Usc0JBQUE7RUFDQSx5QkFBQTtBSnFwQ047O0FTbnBDQSxxQ0FBQTtBQUNBLHVEQUFBO0FBQ0E7RUFDRSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0FUc3BDRjs7QVNucENBLHVEQUFBO0FBQ0EsWUFBQTtBQUNBLHVEQUFBO0FMMUJJO0VBQ0UsbUJBQUE7QUppckNOO0FJbHJDSTtFQUNFLG1CQUFBO0FKb3JDTjtBSXJyQ0k7RUFDRSxtQkFBQTtBSnVyQ047QUl4ckNJO0VBQ0UsbUJBQUE7QUowckNOO0FJM3JDSTtFQUNFLGtCQUFBO0FKNnJDTjtBSTlyQ0k7RUFDRSxrQkFBQTtBSmdzQ047QUlqc0NJO0VBQ0Usa0JBQUE7QUptc0NOO0FJcHNDSTtFQUNFLGtCQUFBO0FKc3NDTjtBSXZzQ0k7RUFDRSxrQkFBQTtBSnlzQ047QUkxc0NJO0VBQ0UsbUJBQUE7QUo0c0NOO0FJN3NDSTtFQUNFLG1CQUFBO0FKK3NDTjtBSWh0Q0k7RUFDRSxtQkFBQTtBSmt0Q047QUludENJO0VBQ0UsbUJBQUE7QUpxdENOOztBSXR0Q0k7RUFDRSx1QkFBQTtBSnl0Q047QUkxdENJO0VBQ0UsdUJBQUE7QUo0dENOO0FJN3RDSTtFQUNFLHVCQUFBO0FKK3RDTjtBSWh1Q0k7RUFDRSx1QkFBQTtBSmt1Q047QUludUNJO0VBQ0Usc0JBQUE7QUpxdUNOO0FJdHVDSTtFQUNFLHNCQUFBO0FKd3VDTjtBSXp1Q0k7RUFDRSxzQkFBQTtBSjJ1Q047QUk1dUNJO0VBQ0Usc0JBQUE7QUo4dUNOO0FJL3VDSTtFQUNFLHNCQUFBO0FKaXZDTjtBSWx2Q0k7RUFDRSx1QkFBQTtBSm92Q047QUlydkNJO0VBQ0UsdUJBQUE7QUp1dkNOO0FJeHZDSTtFQUNFLHVCQUFBO0FKMHZDTjtBSTN2Q0k7RUFDRSx1QkFBQTtBSjZ2Q047O0FJOXZDSTtFQUNFLDBCQUFBO0FKaXdDTjtBSWx3Q0k7RUFDRSwwQkFBQTtBSm93Q047QUlyd0NJO0VBQ0UsMEJBQUE7QUp1d0NOO0FJeHdDSTtFQUNFLDBCQUFBO0FKMHdDTjtBSTN3Q0k7RUFDRSx5QkFBQTtBSjZ3Q047QUk5d0NJO0VBQ0UseUJBQUE7QUpneENOO0FJanhDSTtFQUNFLHlCQUFBO0FKbXhDTjtBSXB4Q0k7RUFDRSx5QkFBQTtBSnN4Q047QUl2eENJO0VBQ0UseUJBQUE7QUp5eENOO0FJMXhDSTtFQUNFLDBCQUFBO0FKNHhDTjtBSTd4Q0k7RUFDRSwwQkFBQTtBSit4Q047QUloeUNJO0VBQ0UsMEJBQUE7QUpreUNOO0FJbnlDSTtFQUNFLDBCQUFBO0FKcXlDTjs7QUl0eUNJO0VBQ0Usd0JBQUE7QUp5eUNOO0FJMXlDSTtFQUNFLHdCQUFBO0FKNHlDTjtBSTd5Q0k7RUFDRSx3QkFBQTtBSit5Q047QUloekNJO0VBQ0Usd0JBQUE7QUprekNOO0FJbnpDSTtFQUNFLHVCQUFBO0FKcXpDTjtBSXR6Q0k7RUFDRSx1QkFBQTtBSnd6Q047QUl6ekNJO0VBQ0UsdUJBQUE7QUoyekNOO0FJNXpDSTtFQUNFLHVCQUFBO0FKOHpDTjtBSS96Q0k7RUFDRSx1QkFBQTtBSmkwQ047QUlsMENJO0VBQ0Usd0JBQUE7QUpvMENOO0FJcjBDSTtFQUNFLHdCQUFBO0FKdTBDTjtBSXgwQ0k7RUFDRSx3QkFBQTtBSjAwQ047QUkzMENJO0VBQ0Usd0JBQUE7QUo2MENOOztBSTkwQ0k7RUFDRSx5QkFBQTtBSmkxQ047QUlsMUNJO0VBQ0UseUJBQUE7QUpvMUNOO0FJcjFDSTtFQUNFLHlCQUFBO0FKdTFDTjtBSXgxQ0k7RUFDRSx5QkFBQTtBSjAxQ047QUkzMUNJO0VBQ0Usd0JBQUE7QUo2MUNOO0FJOTFDSTtFQUNFLHdCQUFBO0FKZzJDTjtBSWoyQ0k7RUFDRSx3QkFBQTtBSm0yQ047QUlwMkNJO0VBQ0Usd0JBQUE7QUpzMkNOO0FJdjJDSTtFQUNFLHdCQUFBO0FKeTJDTjtBSTEyQ0k7RUFDRSx5QkFBQTtBSjQyQ047QUk3MkNJO0VBQ0UseUJBQUE7QUorMkNOO0FJaDNDSTtFQUNFLHlCQUFBO0FKazNDTjtBSW4zQ0k7RUFDRSx5QkFBQTtBSnEzQ047O0FJMzJDSTtFQUNFLHlCQUFBO0VBQ0Esd0JBQUE7QUo4MkNOO0FJaDNDSTtFQUNFLHlCQUFBO0VBQ0Esd0JBQUE7QUprM0NOO0FJcDNDSTtFQUNFLHlCQUFBO0VBQ0Esd0JBQUE7QUpzM0NOO0FJeDNDSTtFQUNFLHlCQUFBO0VBQ0Esd0JBQUE7QUowM0NOO0FJNTNDSTtFQUNFLHdCQUFBO0VBQ0EsdUJBQUE7QUo4M0NOO0FJaDRDSTtFQUNFLHdCQUFBO0VBQ0EsdUJBQUE7QUprNENOO0FJcDRDSTtFQUNFLHdCQUFBO0VBQ0EsdUJBQUE7QUpzNENOO0FJeDRDSTtFQUNFLHdCQUFBO0VBQ0EsdUJBQUE7QUowNENOO0FJNTRDSTtFQUNFLHdCQUFBO0VBQ0EsdUJBQUE7QUo4NENOO0FJaDVDSTtFQUNFLHlCQUFBO0VBQ0Esd0JBQUE7QUprNUNOO0FJcDVDSTtFQUNFLHlCQUFBO0VBQ0Esd0JBQUE7QUpzNUNOO0FJeDVDSTtFQUNFLHlCQUFBO0VBQ0Esd0JBQUE7QUowNUNOO0FJNTVDSTtFQUNFLHlCQUFBO0VBQ0Esd0JBQUE7QUo4NUNOOztBSWg2Q0k7RUFDRSx1QkFBQTtFQUNBLDBCQUFBO0FKbTZDTjtBSXI2Q0k7RUFDRSx1QkFBQTtFQUNBLDBCQUFBO0FKdTZDTjtBSXo2Q0k7RUFDRSx1QkFBQTtFQUNBLDBCQUFBO0FKMjZDTjtBSTc2Q0k7RUFDRSx1QkFBQTtFQUNBLDBCQUFBO0FKKzZDTjtBSWo3Q0k7RUFDRSxzQkFBQTtFQUNBLHlCQUFBO0FKbTdDTjtBSXI3Q0k7RUFDRSxzQkFBQTtFQUNBLHlCQUFBO0FKdTdDTjtBSXo3Q0k7RUFDRSxzQkFBQTtFQUNBLHlCQUFBO0FKMjdDTjtBSTc3Q0k7RUFDRSxzQkFBQTtFQUNBLHlCQUFBO0FKKzdDTjtBSWo4Q0k7RUFDRSxzQkFBQTtFQUNBLHlCQUFBO0FKbThDTjtBSXI4Q0k7RUFDRSx1QkFBQTtFQUNBLDBCQUFBO0FKdThDTjtBSXo4Q0k7RUFDRSx1QkFBQTtFQUNBLDBCQUFBO0FKMjhDTjtBSTc4Q0k7RUFDRSx1QkFBQTtFQUNBLDBCQUFBO0FKKzhDTjtBSWo5Q0k7RUFDRSx1QkFBQTtFQUNBLDBCQUFBO0FKbTlDTjs7QVN6NkNBO0VBQU8sVUFBQTtBVDY2Q1A7O0FVei9DQSx1REFBQTtBQUNBLGtCQUFBO0FBR0EsdURBQUE7QUFFQSw4QkFBQTtBQUNBLHVEQUFBO0FBVUEseUJBQUE7QUFDQSx1REFBQTtBQVVBLDhCQUFBO0FBQ0EsdURBQUE7QUFpQkE7RUFmRSwrQkFBQTtFQUNBLGdDQUFBO0VBQ0EsNkJBQUE7RUFDQSw0QkFBQTtFQUNBLGdCQUFBO0FWdStDRjs7QVUzOUNBO0VBUkUseUJBQUE7RUFDQSwwQkFBQTtFQUNBLG1DQUFBO0VBQ0Esa0NBQUE7RUFDQSxnQkFBQTtBVnUrQ0Y7O0FVaCtDQSwwQkFBQTtBQUNBLHVEQUFBO0FBQ0EsNERBQUE7QU4vQkk7RUFDRSx5QkFBQTtBSm1nRE47QUlwZ0RJO0VBQ0UseUJBQUE7QUpzZ0ROO0FJdmdESTtFQUNFLHlCQUFBO0FKeWdETjtBSTFnREk7RUFDRSx5QkFBQTtBSjRnRE47QUk3Z0RJO0VBQ0Usd0JBQUE7QUorZ0ROO0FJaGhESTtFQUNFLHdCQUFBO0FKa2hETjtBSW5oREk7RUFDRSx3QkFBQTtBSnFoRE47QUl0aERJO0VBQ0Usd0JBQUE7QUp3aEROO0FJemhESTtFQUNFLHdCQUFBO0FKMmhETjtBSTVoREk7RUFDRSx5QkFBQTtBSjhoRE47QUkvaERJO0VBQ0UseUJBQUE7QUppaUROO0FJbGlESTtFQUNFLHlCQUFBO0FKb2lETjtBSXJpREk7RUFDRSx5QkFBQTtBSnVpRE47O0FVcGdEQSxlQUFBO0FBQ0EsdURBQUE7QUFDQTtrSUFBQTtBTnRDSTtFQUNFLHlCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVZ1Z0RKO0FJbmpESTtFQUNFLHlCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVY2Z0RKO0FJempESTtFQUNFLHlCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVZtaERKO0FJL2pESTtFQUNFLHlCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVZ5aERKO0FJcmtESTtFQUNFLHdCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVYraERKO0FJM2tESTtFQUNFLHdCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVZxaURKO0FJamxESTtFQUNFLHdCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVYyaURKO0FJdmxESTtFQUNFLHdCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVZpakRKO0FJN2xESTtFQUNFLHdCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVZ1akRKO0FJbm1ESTtFQUNFLHlCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVY2akRKO0FJem1ESTtFQUNFLHlCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVZta0RKO0FJL21ESTtFQUNFLHlCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVZ5a0RKO0FJcm5ESTtFQUNFLHlCQUFBO0VNeUNGLFdBQUE7RUFDQSx3QkFBQTtFQUFBLG1CQUFBO0VBQ0EsZ0JBQUE7QVYra0RKOztBV2hwREEsdURBQUE7QUFDQSxjQUFBO0FDREEsdURBQUE7QUFDQSxXQUFBO0FBSUEsdURBQUE7QUFFQSx1REFBQTtBQUNBLGlCQUFBO0FBQ0EsdURBQUE7QUFDQTtFQUNFLG9EQUFBO0VBQ0EsdURBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUVBLFlBQUE7RUFDQSx1REFBQTtFQUNBLG1EQUFBO0VBQ0EsbURBQUE7RUFDQSxtREFBQTtFQUNBLG1EQUFBO0VBQ0EsbURBQUE7RUFDQSxtREFBQTtFQUNBLG1EQUFBO0VBQ0EsbURBQUE7RUFDQSxtREFBQTtFQUNBLG1EQUFBO0VBQ0EsbURBQUE7RUFDQSxtREFBQTtFQUNBLGlEQUFBO0VBRUEsWUFBQTtFQUNBLHVEQUFBO0VBQ0EscURBQUE7RUFDQSxtREFBQTtFQUNBLG1EQUFBO0VBQ0EsbURBQUE7RUFDQSxtREFBQTtFQUNBLG1EQUFBO0VBQ0EsbURBQUE7RUFDQSxtREFBQTtFQUNBLG1EQUFBO0VBQ0EsbURBQUE7RUFDQSxtREFBQTtFQUNBLG1EQUFBO0VBQ0EsbURBQUE7RUFDQSxtREFBQTtFQUNBLGlEQUFBO0FaK29ERjs7QVk1b0RBLHVEQUFBO0FBQ0EsZ0JBQUE7QUFDQSx1REFBQTtBQUNBO0VBQ0UsaUJBQUE7RUFDQSx1REFBQTtFQUNBLHlDQUFBO0VBQ0EsMkNBQUE7RUFDQSwwQ0FBQTtFQUNBLHlDQUFBO0VBQ0Esd0NBQUE7RUFDQSx3Q0FBQTtFQUNBLHlDQUFBO0VBQ0EsMENBQUE7RUFDQSx3Q0FBQTtFQUVBLHNCQUFBO0VBQ0EsdURBQUE7RUFDQSw0Q0FBQTtFQUNBLDRDQUFBO0VBQ0EsMkNBQUE7RUFDQSwwQ0FBQTtFQUNBLDJDQUFBO0VBQ0EseUNBQUE7RUFDQSwyQ0FBQTtFQUNBLDJDQUFBO0VBQ0EsMkNBQUE7RUFFQSxnQkFBQTtFQUNBLHVEQUFBO0VBQ0EsNENBQUE7RUFDQSwwQ0FBQTtFQUNBLHlDQUFBO0VBQ0EsdUNBQUE7RUFDQSx1Q0FBQTtFQUNBLHdDQUFBO0VBQ0EseUNBQUE7RUFFQSw4Q0FBQTtFQUVBLG9CQUFBO0VBQ0EsdURBQUE7RUFDQSw2Q0FBQTtFQUNBLDhDQUFBO0VBQ0EsK0NBQUE7RUFFQSw4Q0FBQTtFQUNBLHVEQUFBO0VBQ0EsMkJBQUE7RUFDQSw4QkFBQTtBWjBvREY7O0FZdG9EQSxxQkFBQTtBQUNBLHVEQUFBO0FBYUEsMkJBQUE7QVIvR0k7RUFDRSxvQ0FBQTtBSjZ1RE47QUk5dURJO0VBQ0Usc0NBQUE7QUpndkROO0FJanZESTtFQUNFLHFDQUFBO0FKbXZETjtBSXB2REk7RUFDRSxvQ0FBQTtBSnN2RE47QUl2dkRJO0VBQ0UsbUNBQUE7QUp5dkROO0FJMXZESTtFQUNFLG1DQUFBO0FKNHZETjtBSTd2REk7RUFDRSxvQ0FBQTtBSit2RE47QUlod0RJO0VBQ0UscUNBQUE7QUprd0ROO0FJbndESTtFQUNFLG9DQUFBO0FKcXdETjs7QVlqcERBLGNBQUE7QUFDQSx1REFBQTtBQWFBLDBCQUFBO0FSbklJO0VBQ0UscUNBQUE7QUo0d0ROO0FJN3dESTtFQUNFLHFDQUFBO0FKK3dETjtBSWh4REk7RUFDRSxvQ0FBQTtBSmt4RE47QUlueERJO0VBQ0UsbUNBQUE7QUpxeEROO0FJdHhESTtFQUNFLG1DQUFBO0FKd3hETjtBSXp4REk7RUFDRSxrQ0FBQTtBSjJ4RE47QUk1eERJO0VBQ0UsbUNBQUE7QUo4eEROO0FJL3hESTtFQUNFLG9DQUFBO0FKaXlETjtBSWx5REk7RUFDRSxvQ0FBQTtBSm95RE47O0FZNXBEQSxvQkFBQTtBQUNBLHVEQUFBO0FBV0EsZ0NBQUE7QVJySkk7RUFDRSwyQkFBQTtBSjJ5RE47QUk1eURJO0VBQ0UsMEJBQUE7QUo4eUROO0FJL3lESTtFQUNFLHlCQUFBO0FKaXpETjtBSWx6REk7RUFDRSx1QkFBQTtBSm96RE47QUlyekRJO0VBQ0UsdUJBQUE7QUp1ekROO0FJeHpESTtFQUNFLHdCQUFBO0FKMHpETjtBSTN6REk7RUFDRSx5QkFBQTtBSjZ6RE47QUk5ekRJO0VBQ0UseUJBQUE7QUpnMEROO0FJajBESTtFQUNFLDJCQUFBO0FKbTBETjtBSXAwREk7RUFDRSwwQkFBQTtBSnMwRE47QUl2MERJO0VBQ0UseUJBQUE7QUp5MEROO0FJMTBESTtFQUNFLHdCQUFBO0FKNDBETjtBSTcwREk7RUFDRSx3QkFBQTtBSiswRE47QUloMURJO0VBQ0UseUJBQUE7QUprMUROO0FJbjFESTtFQUNFLDBCQUFBO0FKcTFETjtBSXQxREk7RUFDRSx5QkFBQTtBSncxRE47O0FhbDJEQSx1REFBQTtBQUNBLFNBQUE7QUFHQSx1REFBQTtBQUVBLHVDQUFBO0FBQ0EsdURBQUE7QUFDQSwrQ0FBQTtBQUtBLDBDQUFBO0FBQ0EsdURBQUE7QUFRQSx1Q0FBQTtBQUNBLHVEQUFBO0FBTUEsdUNBQUE7QUFDQSx1REFBQTtBQU1BLHFDQUFBO0FBQ0EsdURBQUE7QUFDQSxnREFBQTtBQUNBO0VBQ0UsZ0RBQUE7RUFDQSw4Q0FBQTtFQUNBLCtDQUFBO0VBQ0EsaURBQUE7RUFDQSxpREFBQTtFQUNBLCtDQUFBO0VBQ0Esb0RBQUE7RUFDQSxnREFBQTtBYjYwREY7O0FhMTBEQSxrQkFBQTtBQUNBLHVEQUFBO0FBQ0Esa0VBQUE7QUFZQSwrQkFBQTtBVHZESTtFQUNFLDBCQUFBO0FKMDNETjtBSTMzREk7RUFDRSx5QkFBQTtBSjYzRE47QUk5M0RJO0VBQ0UseUJBQUE7QUpnNEROO0FJajRESTtFQUNFLHlCQUFBO0FKbTRETjtBSXA0REk7RUFDRSx5QkFBQTtBSnM0RE47QUl2NERJO0VBQ0UseUJBQUE7QUp5NEROO0FJMTRESTtFQUNFLDBCQUFBO0FKNDRETjtBSTc0REk7RUFDRSwwQkFBQTtBSis0RE47O0FjejVEQSx1REFBQTtBQUNBLGdCQUFBO0FBSUEsdURBQUE7QUFFQSxjQUFBO0FBQ0EsdURBQUE7QUFZQTs7OztFQVZFLCtDQUFBO0VBQ0EsZ0JEcUJlO0VDcEJmLHlCQUFBO0VBQ0Esa0JBQUE7RUFDQSwrQ0FDRTtFQUVGLHlCQUFBO0VBUUEsNENEQ2U7RUNBZix1QkFBQTtBZGs1REY7O0FjLzREQTtFQUFjLGVBQUE7QWRtNURkOztBY2o1REEsV0FBQTtBQUNBLHVEQUFBO0FBUUE7RUFORSwyQ0R6QmtCO0VDMEJsQixnQkRGZTtFQ0dmLHNCRG5Ca0I7RUNvQmxCLDRDRGJrQjtBYmk2RHBCOztBY2g1REE7RUFQRSwyQ0R6QmtCO0VDMEJsQixnQkRIZTtFQ0lmLHNCRG5Ca0I7RUNvQmxCLDRDRGJrQjtBYnc2RHBCOztBY3Q1REE7RUFSRSwyQ0R6QmtCO0VDMEJsQixnQkRKZTtFQ0tmLHNCRG5Ca0I7RUNvQmxCLDRDRGJrQjtBYis2RHBCOztBYzE1REEsZ0JBQUE7QUFDQSx1REFBQTtBQUNBO0VBYkUsMkNEekJrQjtFQzBCbEIsZ0JESGU7RUNJZixzQkRuQmtCO0VDb0JsQiw0Q0Ria0I7RUN5QmxCLDBCQUFBO0VBQ0Esd0JEbENrQjtFQ21DbEIsNkNEMUJlO0VDNEJmLHlCQUFBO0VBQ0EsZ0NBQUE7QWQrNURGOztBY2w1REE7RUFqQ0UsMkNEekJrQjtFQzBCbEIsZ0JERmU7RUNHZixzQkRuQmtCO0VDb0JsQiw0Q0Ria0I7RUNvQ2xCLHlCQUFBO0VBQ0Esc0JEM0NrQjtFQzRDbEIsaUJBSzBCO0VBSDFCLHlCQUFBO0VBQ0EsZ0NBQUE7QWRnNkRGOztBY3I1REE7RUExQ0UsMkNEekJrQjtFQzBCbEIsZ0JESmU7RUNLZixzQkRuQmtCO0VDb0JsQiw0Q0Ria0I7RUNnRGxCLDBCQUFBO0VBQ0Esa0JBRzBCO0VBRjFCLCtCQUFBO0FkaTZERjs7QWNuNURBO0VBdERFLDJDRHpCa0I7RUMwQmxCLGdCREZlO0VDR2Ysc0JEbkJrQjtFQ29CbEIsNENEYmtCO0VDeURsQixpQkFPMEI7RUFOMUIsc0JEaEVrQjtFQ2lFbEIseUJBQUE7RUFFQSx5QkFBQTtFQUNBLCtCQUFBO0FkaTZERjs7QWN0NURBO0VBL0RFLDJDRHpCa0I7RUMwQmxCLGdCREhlO0VDSWYsc0JEbkJrQjtFQ29CbEIsNENEYmtCO0VDcUVsQixpQkFJNEI7RUFINUIsc0JEN0VrQjtFQzhFbEIseUJBQUE7QWRrNkRGOztBY3A1REE7RUFuR0UsK0NBQUE7RUFDQSxnQkRxQmU7RUNwQmYseUJBQUE7RUFDQSxrQkFBQTtFQUNBLCtDQUNFO0VBRUYseUJBQUE7RUFxRkEsa0JBTzRCO0VBTjVCLHlCQUFBO0VBQ0Esd0JEeEZrQjtFQ3lGbEIsNkNEaEZlO0VDaUZmLHVCQUFBO0VBQ0EsZ0NBQUE7QWRxNkRGOztBY3Y1REE7RUFDRSwrQ0RoSGlCO0VDaUhqQixnQkQzRmU7RUM0RmYsMEJBQUE7RUFDQSxzQkQxR2tCO0VDMkdsQiw2Q0RyR2U7RUN1R2YsdUJBQUE7RUFDQSx5QkFBQTtFQUNBLGdDQUFBO0FkeTVERjs7QWNyNURBLFdBQUE7QUFDQSx1REFBQTtBQVNBO0VBUEUsK0NEL0hpQjtFQ2dJakIsZ0JEeEdlO0VDeUdmLHNCRDFIa0I7RUMySGxCLHlCQUFBO0VBQ0EsNkNEcEhlO0VDeUhmLCtCQUFBO0FkbzVERjs7QWNqNURBO0VBWkUsK0NEL0hpQjtFQ2dJakIsZ0JEeEdlO0VDeUdmLHNCRDFIa0I7RUMySGxCLHlCQUFBO0VBQ0EsNkNEcEhlO0VDOEhmLCtCQUFBO0FkdzVERjs7QWNyNURBO0VBakJFLCtDRC9IaUI7RUNnSWpCLGdCRHhHZTtFQ3lHZixzQkQxSGtCO0VDMkhsQix5QkFBQTtFQUNBLDZDRHBIZTtFQ21JZiwrQkFBQTtBZDQ1REY7O0FXaGpFQSx1REFBQTtBQUVBLGdCQUFBO0FBQ0EsdURBQUE7QUFDQTtFQUFlLGtCQUFBO0FYbWpFZjs7QVdsakVBO0VBQWEsaUJBQUE7QVhzakViOztBV3JqRUE7RUFBYyxlQUFBO0FYeWpFZDs7QVd4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 */