[data-theme='light'] {
  --color-background: #ffffff;
  --color-text-primary: #000000;
  --color-text-muted: #333333;
  --color-accent-primary: #4b0082;
  --color-accent-counter: #db0043;
  --color-modal-overlay: rgba(0, 0, 0, 0.5);
}

[data-theme='dark'] {
  --color-background: #000000;
  --color-text-primary: #ffffff;
  --color-text-muted: #aaaaaa;
  --color-accent-primary: #4851d1;
  --color-accent-counter: #ff4f00;
  --color-modal-overlay: rgba(255, 255, 255, 0.2);
}

/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Prevent font size inflation */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Remove default margin in favour of better control in authored CSS */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin-block-end: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role='list'],
ol[role='list'] {
  list-style: none;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  line-height: 1.5;
}

/* Set shorter line heights on headings and interactive elements */
h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
}

/* Custom Reset */
html,
body {
  margin: 0;
  padding: 0;
}

/* Theme */
html {
  font-family: Sans-Serif;
  background-color: var(--color-background);
  color: var(--color-text-primary);
}

:root {
  --text-sm: 0.875rem;
  --text-md: 1rem;
  --text-lg: 2rem;
  --text-xl: 3rem;
  --text-xxl: 4.5rem;

  --control-radius: 1rem;
  --control-border-width: 0.125rem;
  --control-font-size: clamp(1.5rem, 2svw, 2rem);

  --header-height-sm: 3.125rem;
  --header-height-lg: 6.25rem;
  --gutter-width: 1.875rem;

  --modal-label-text: 2rem;
  --modal-label-gap: 1rem;
}

.Sqr8G {
  background: var(--color-background);
  color: var(--color-text);
  border-radius: var(--control-radius);
  border-width: 0.0625rem;
  font-size: clamp(var(--text-md), 2svw, var(--text-lg));
  padding: clamp(0.25rem, 2svw, 0.5rem);
  -moz-appearance: textfield;
  appearance: textfield;
}

.Sqr8G::-webkit-outer-spin-button,
.Sqr8G::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.vrlog {
  border-style: solid;
  border-width: 0.125rem;
  font-weight: 500;
  font-size: clamp(var(--text-md), 2svw, var(--text-lg));
  padding: clamp(0.5rem, 2svw, 0.75rem);
  border-radius: var(--control-radius);
  border-color: var(--color-accent-primary);
  background-color: var(--color-background);
  color: var(--color-text);
  cursor: pointer;
  transition: opacity 0.25s ease;
}

.m4szH {
  background-color: var(--color-accent-primary);
  color: var(--color-text);
}

.I00yn {
  cursor: inherit;
  opacity: 0.3;
  transition: opacity 0.6s cubic-bezier(0.9, 0, 1, 1);
}

.IAB9a {
  height: 100svh;
  width: 100%;
  scrollbar-gutter: stable;
  overflow: hidden;
}

.s4ue7 {
  display: flex;
  flex-flow: row nowrap;
  height: 100%;
  width: 200%;
  transition: 0.5s;
  transform: translateX(0%);
}

.s4ue7._gkEn {
  transform: translateX(-50%);
}

.GCw17 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 50%;
}

.qaewN {
  font-size: var(--text-md);
  text-align: center;
}

.rVQEA {
  cursor: pointer;
  text-decoration: underline;
  color: var(--color-accent-primary);
}

.hcQ6T {
  width: min(80%, 28.125rem);
}

.JxQEz {
  font-weight: 1;
  letter-spacing: 1.125rem;
  font-size: var(--text-lg);
}

.JxQEz.WDKGi {
  color: var(--color-accent-counter);
}

.yd1JI {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100svh;
  width: 100%;
  opacity: 0;
  transition-property: opacity;
  transition-delay: 2.5s;
  transition-duration: 0.5s;
  transition-timing-function: ease;
}

.yd1JI.rAswY {
  opacity: 1;
}

.lVcKz {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100svh;
  width: 100%;
}

.cjagZ {
  position: fixed;
  inset: 0;
  z-index: 10;
  display: grid;
  place-items: center;
  background-color: transparent;
  transition:
    backdrop-filter 0.5s ease,
    background-color 0.5s ease;
}

.cjagZ.KVjwt {
  backdrop-filter: blur(0.375rem);
  background-color: var(--color-modal-overlay);
}

.N4cpj {
  padding: 0;
  background-color: var(--color-background);
  border-radius: var(--control-radius);
  z-index: 20;
  opacity: 0;
  transform: scale(0.5);
  transition:
    opacity 0.5s ease,
    transform 0.5s ease;
}

.N4cpj.KVjwt {
  opacity: 1;
  transform: scale(1);
}

.VxazD {
  width: 4.0625rem;
  min-width: 4.0625rem;
  height: 2.5rem;
  background-color: #000000;
  border-color: var(--color-accent-primary);
  border-radius: 6.25rem;
  border-style: solid;
  border-width: 0.1875rem;
  position: relative;
  transition: background-color 0.2s;
  opacity: 1;
  cursor: pointer;

  @media (min-width: 64rem) {
    height: 1.9rem;
  }
}

.pys9N {
  background-color: var(--color-accent-primary);
}

.mce5B {
  opacity: 0.5;
  cursor: unset;
}

.gP9Uu {
  content: '';
  position: absolute;
  top: 0.0625rem;
  left: 0.125rem;
  width: 1.5625rem;
  height: 2.1875rem;
  background-color: #ffffff;
  border-color: #000000;
  border-radius: 2.8125rem;
  border-style: solid;
  border-width: 0.125rem;
  transition: 0.2s;
  transform: unset;

  @media (min-width: 64rem) {
    top: 0;
    height: 1.5625rem;
  }
}

.VxazD.pys9N .gP9Uu {
  left: calc(100% - 0.125rem);
  border-color: var(--color-accent-primary);
  transform: translateX(-100%);
}

.IMUKe {
  display: flex;
  flex-direction: column;
  width: 100%;
  flex-wrap: nowrap;
  justify-content: space-around;
  gap: 1.25rem;
  padding: 1.25rem;
}

.LETi_ {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-around;
  align-items: center;
  gap: 0.625rem;
}

.yqnOl {
  font-size: var(--text-lg);
}

.NModR {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  height: var(--header-height-sm);
  @media (min-width: 64rem) {
    height: var(--header-height-lg);
  }
}

.GIFCF {
  height: calc(var(--header-height-sm) - 0.25rem);
  aspect-ratio: 1/1;

  @media (min-width: 64rem) {
    height: calc(var(--header-height-lg) - 0.25rem);
  }
}

.GIFCF.JZxhv {
  margin-left: 0.125rem;

  @media (min-width: 64rem) {
    margin-left: 0.1875;
  }
}

.QpSX4 {
  cursor: pointer;
  margin-right: 0.125rem;

  @media (min-width: 64rem) {
    margin-right: 0.1875;
  }
}

.u4Fb4 {
  display: flex;
  flex-direction: column;
  width: 100%;
  scrollbar-gutter: stable;
  min-height: 100svh;
}

._5bSl {
  flex: 1;
  width: 100%;
}

.StTs2 {
  opacity: 0;
  transform: scale(0.5);
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
  transition-delay: var(--delay);
}

.StTs2.sr1rZ {
  opacity: 1;
  transform: scale(1);
}

.d8zy_ {
}

.Gt5QG {
  width: 6.25rem;
  height: 6.25rem;
  @media (min-width: 64rem) {
    width: 11.25rem;
    height: 11.25rem;
  }
}

.hvzGt {
  display: flex;
  flex-direction: row;
  width: 100%;
  justify-content: center;
}

.fweHD {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  width: min(90%, 68.75rem);
  padding-top: 3.125rem;
  gap: 4rem;
}

.cyLev {
  width: 100%;
  padding-left: calc(var(--gutter-width) + 0.3125rem);
  padding-right: calc(var(--gutter-width) + 0.3125rem);

  @media (min-width: 64rem) {
    width: 50%;
    padding-left: 0;
    padding-right: 0;
  }
}

.RibMs {
  display: none;
  @media (min-width: 64rem) {
    width: 25%;
    display: unset;
  }
}

.TPmb4 {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  width: 100%;
}

.JUQkG {
  position: fixed;
  padding: 0;
  width: var(--gutter-width);
  height: 6.25rem;
}

.I55oo {
  left: 0;
  border-radius: 0% 30% 30% 0%;
}

.ns8BJ {
  right: 0;
  border-radius: 30% 0% 0% 30%;
}

.QO24y {
  top: 50%;
  transform: translateY(-50%);
}

.h7fwf {
  display: flex;
  flex-direction: row;
  width: min(60%, 25rem);
  align-items: center;
  justify-content: start;
  gap: 2.1875rem;
  padding: 1rem;
  text-decoration: none;
  color: var(--color-accent-primary);
  border: none;
}

.H400P {
  width: min(45svw, 45svh);
  aspect-ratio: 1/1;
  border: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  cursor: pointer;
  text-decoration: none;
  color: var(--color-accent-primary);
}

.h7fwf img {
  width: 2.8125rem;
  aspect-ratio: 1/1;
  align-self: center;
}

.H400P img {
  width: 75%;
  aspect-ratio: 1/1;
}

.gRdmG {
  font-size: var(--text-md);
}

.fYeYq {
  width: min(90svw, 90svh);
  text-align: center;
  margin-bottom: 1.875rem;
  margin-top: 1.875rem;
  font-size: var(--text-md);
  @media (min-width: 64rem) {
    width: min(60%, 25rem);
  }
}

.ykRVP {
  width: min(90svw, 90svh);
  display: flex;
  flex-direction: row;
  align-items: center;
  padding-left: 0.3125rem;
  padding-right: 0.3125rem;
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;

  @media (min-width: 64rem) {
    width: min(60%, 25rem);
  }
}

.bUAM1 {
  flex: 1 1 auto;
  min-width: 0;
  white-space: normal;
  overflow-wrap: break-word;
}

.ZyZTO {
  flex: autho;
}

.x1yQE {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  max-width: min(90svw, 90svh);
}

.td0cW {
  width: 25%;
}

.MOvrI {
  display: flex;
  flex-direction: column;
  align-items: var(--align);
  width: 100%;
  padding: 0.3125rem;
}

.vTbTJ {
  overflow: scroll;

  @media (min-width: 64rem) {
    overflow: unset;
  }
}

.qvFyJ {
  font-size: var(--text-xl);
  margin-bottom: 1.5rem;
  margin-top: 1.5rem;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;

  @media (min-width: 64rem) {
    overflow-x: unset;
    overflow-y: unset;
    white-space: unset;
  }
}

.myQ8e {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.xs9MW {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  overflow: hidden;
  padding-top: 1.25rem;
  text-decoration: none;
  color: var(--color-text);
}

.iAYG1 {
  font-size: var(--text-lg);
}

.N0bpq {
  font-size: (--text-md);
}

.Ox4sj {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.q7wUu {
  padding-top: 20rem;
  color: var(--color-accent-counter);
  font-size: var(--text-lg);
}

.zem0Q {
  display: flex;
  flex-flow: column-reverse nowrap;
  gap: 1rem;
  @media (min-width: 64rem) {
    flex-flow: row nowrap;
    justify-content: end;
  }
}

.N5j78 {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.lRqPk {
  padding-top: 20rem;
  font-weight: 1;
  letter-spacing: 1.125rem;
  font-size: var(--text-lg);
}

.a3PjG {
  display: none;
}

.YDEli {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1rem;
  border-radius: 60rem;
  cursor: pointer;
  user-select: none;
  transition: all 0.2s ease;
  font-size: var(--text-lg);
  border: solid 0.125rem var(--color-accent-primary);
}

.a3PjG:checked + .YDEli {
  background-color: var(--color-accent-primary);
  color: var(--color-text);
  border-color: var(--color-accent-primary);
}

.PQ2FB {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  max-width: 90svw;
  padding: 1.25rem;
  gap: 1.25rem;
  @media (min-width: var(--background-lg)) {
    max-width: 25rem;
  }
}

.lF6tY {
  font-size: var(--text-md);
  text-align: center;
}

.gqAhl {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  max-width: 90svw;
  padding: 1.25rem;
  gap: 1.25rem;
  @media (min-width: 64rem) {
    max-width: 43.75rem;
  }
}

.mwZ8w {
  font-size: 3.75rem;
  letter-spacing: 1.5625rem;
  text-align: center;
  visibility: hidden;

  @media (min-width: 64rem) {
    font-size: 4.5rem;
    letter-spacing: 1.875rem;
  }
}

.BJHnX {
  font-size: var(--text-md);
  visibility: hidden;
  text-align: center;
}

.FdaBT {
  visibility: visible;
}

.wtsO5 {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;

  @media (min-width: 64rem) {
    flex-direction: row;
  }
}

.SAZAD {
  @media (min-width: 64rem) {
    order: 2;
    flex: 1;
  }
}

.N0JUr {
  display: flex;
  flex-direction: column;
  margin-bottom: 1.25rem;
}

.xB1vT {
  display: flex;
  flex-flow: column nowrap;
  margin-bottom: 2.8125rem;
}

.YVJZ3 {
  display: flex;
  flex-flow: column nowrap;
  justify-content: start;
  align-items: start;
  margin-bottom: 2.8125rem;
  gap: 6.25rem;

  @media (min-width: 64rem) {
    flex-flow: row nowrap;
  }
}

.ZRZ5N {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  width: 100%;
  gap: 1.25rem;

  @media (min-width: 64rem) {
    width: 50%;
  }
}

.fb8wi {
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-around;
  gap: 1.25rem;
  width: 100%;

  @media (min-width: 64rem) {
    flex-flow: row wrap;
  }
}

.RwkW0 {
  display: flex;
  flex-flow: column nowrap;
  gap: 1rem;
  width: 100%;

  @media (min-width: 64rem) {
    align-items: start;
  }
}

._hr4Z {
  font-size: var(--text-md);
}

.h3cbC {
  display: flex;
  flex-direction: column;
}

.gxqRm {
  display: flex;
  flex-flow: column nowrap;
  gap: 1rem;
  margin-bottom: 2.8125rem;
  justify-content: stretch;
  @media (min-width: 64rem) {
    flex-flow: row nowrap;
  }
}

.V69PI {
  flex: 1;
}

.JhkgX {
  width: 3.125rem;
  aspect-ratio: 1/1;
}

.qCf31 {
  width: 3.125rem;
  aspect-ratio: 1/1;
}

.KE9d3 {
  border-collapse: separate;
  border-spacing: 0 1.25rem;
  width: 100%;
  font-size: var(--text-md);
}

.UF0kq {
  display: flex;
  flex-flow: row nowrap;
  gap: 0.625rem;
}

.bup6M {
  display: flex;
  flex-flow: row nowrap;
  padding-top: 2.1875rem;
  padding-bottom: 2.1875rem;
  gap: 1.25rem;
}

.Kpxvw {
  display: flex;
  flex-flow: column nowrap;
  gap: 0.625rem;
  flex: 0 0 auto;
}

.kPSnw {
  display: flex;
  flex-flow: column nowrap;
  flex: 1;
}

.GBcoJ {
  display: flex;
  flex-flow: row nowrap;
  flex: 1;
  align-items: center;
}

.musKw {
  font-size: var(--text-md);
  flex: 1;
  text-align: center;
}

.UUOl_ {
  display: flex;
  flex-flow: column nowrap;
}

.EkUaz {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  margin-top: 4.6875rem;
}

.WhIZw {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-items: start;
  margin-bottom: 1.5625rem;
}

.uauXB {
  font-size: var(--text-xxl);
  margin-bottom: 1rem;
}

.fkOcc {
  font-size: var(--text-lg);
  font-weight: 1;
}

.sT037 {
  font-size: var(--text-lg);
}

.PbSWH {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.EMIsK {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  overflow: clip;

  @media (max-width: 64rem) and (orientation: landscape) {
    flex-flow: row nowrap;
  }
}

.BJuJe {
  width: 99%;
  aspect-ratio: 1/1;
  transform: rotate(var(--rotation));

  @media (max-width: 64rem) and (orientation: landscape) {
    width: unset;
    height: 80svh;
  }
}

.YlnN8 {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 1.25rem;
}

.YlnN8.j8APi {
  flex-direction: row;
}

.QxVPo {
  flex: 1;
  text-align: center;
  font-size: 4.5rem;
}

.S3weH {
  height: 9.375rem;
  width: 9.375rem;
  margin: 0.625rem;
  cursor: pointer;

  @media (min-width: 80rem) {
    height: 18.75rem;
    width: 18.75rem;
  }
}

.JJOdC {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}

.p26yk {
  display: flex;
  flex-flow: column nowrap;
}

.eKe73 {
  display: flex;
  flex-flow: column;
  gap: 0.625rem;

  @media (min-width: 64rem) {
    flex-flow: row nowrap;
  }
}

.BqqxI {
  display: flex;
  flex-direction: column;
  margin-top: 3.75rem;
}

.mB_vZ {
  font-size: var(--text-md);
  text-align: center;
}

.HNT2y {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;

  @media (min-width: 64rem) {
    flex-direction: row;
  }
}

.I0ob5 {
  display: flex;
  flex-direction: column;
  order: 2;
  justify-content: space-between;

  @media (min-width: 64rem) {
    order: 1;
    flex: 0 0 60%;
  }
}

.pCbhh {
  order: 1;
  max-width: 100%;
  height: auto;
  object-fit: contain;

  @media (min-width: 64rem) {
    order: 2;
    flex: 1;
    max-width: 40%;
    height: auto;
    object-fit: contain;
  }
}

.JD_14 {
  font-size: var(--textmd);
}

.SIySW {
  display: flex;
  flex-direction: column;
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;

  @media (min-width: 64rem) {
    margin-top: unset;
    margin-bottom: unset;
  }
}

.AUZNU {
  font-size: 2rem;
  letter-spacing: 0.3125rem;
  text-transform: uppercase;
  text-align: center;
}

.etAcX {
  @media (min-width: 64rem) {
    flex: 0 0 auto;
  }
}

.u73jd {
  @media (min-width: 64rem) {
    flex: 1 1 auto;
  }
}

.gnB_x {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  max-width: 90svw;
  padding: 1.25rem;
  gap: 1.25rem;
  @media (min-width: 64rem) {
    max-width: 25rem;
  }
}

.rQClN {
  font-size: var(--text-md);
  text-align: center;
}

.pd_jR {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;

  @media (min-width: 64rem) {
    flex-direction: row;
  }
}

.Od65A {
  @media (min-width: 64rem) {
    order: 2;
    flex: 1;
  }
}

.zPhN0 {
  @media (min-width: 64rem) {
    order: 1;
    flex: 1;
  }
}

.hPE4n {
  text-transform: uppercase;
  letter-spacing: 0.3125rem;
  font-weight: 1;
}

.j9fW3 {
  font-size: var(--text-md);

  @media (min-width: 64rem) {
    font-size: var(--text-lg);
  }
}

.f2NAW {
  display: flex;
  flex-direction: column;
  margin-bottom: 3.125rem;
  gap: 1.25rem;
}

.r1QkA {
  display: flex;
  display: row;
  justify-content: space-around;
  flex: 2;
  margin-bottom: 1.25rem;

  @media (min-width: 64rem) {
    margin-bottom: unset;
  }
}

.NsHgw {
  width: min(20svw, 20svh);
  aspect-ratio: 1/1;

  @media (min-width: 64rem) {
    width: min(10svw, 10svh);
  }
}

.Yt1pS {
  background-color: #00000000;
  border: none;
  cursor: pointer;
}

.cxQa0 {
  fill: var(--color-text-primary);
  cursor: pointer;
  &:active {
    fill: var(--color-accent-primary);
  }
}

.Y8YQc {
  opacity: 0.25;
  cursor: unset;
}

.tWd9W {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.gnuxx {
  display: flex;
  flex-direction: row;
  justify-content: left;
  border: solid 1px;
  height: 1.5625rem;
  width: 100%;
  cursor: pointer;
}

.w7hkA {
  background-color: var(--color-accent-primary);
  width: var(--percent);
  height: 100%;
}

.d_qY3 {
  margin-top: 0.625rem;
  display: flex;
  justify-content: space-between;
}

.zsU5C {
  font-size: var(--text-md);
}

.Hntgp {
  margin-top: 1.25rem;
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 1.875rem;
  align-items: center;
}

.CZhvP {
  font-size: 1rem;
  text-align: center;

  @media (min-width: 64rem) {
    font-size: var(--text-lg);
  }
}

.hHKE7 {
  display: flex;
  width: 100%;
  flex-direction: row;
  justify-content: center;
}

.Eh_Xc {
  top: 20%;
  transform: translateY(-20%);
}

.olDho {
  background-color: #00000000;
  border: none;
  cursor: pointer;
}

.Ywo7p {
  width: 3.75rem;
  aspect-ratio: 1/1;
}

.WfxiA {
  display: flex;
  flex-direction: column;
}

.XMjCy {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-bottom: 1.875rem;
  align-items: center;

  @media (min-width: 64rem) {
    flex-direction: row;
    position: relative;
  }
}

.H9_BB {
  font-size: var(--text-md);
  text-align: center;
  flex: 2;

  @media (min-width: 64rem) {
    font-size: var(--text-xl);
  }
}

.YY32w {
  flex: 1;
  width: 70%;
  aspect-ratio: 1/1;

  @media (min-width: 64rem) {
    width: 80%;
  }
}

.CQI0E {
  @media (min-width: 64rem) {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}

.XDTU4 {
  font-size: var(--text-md);
  text-align: start;
}

.h3gHe {
  border-collapse: separate;
  border-spacing: 1.875rem 0.625rem;
}

.NsNfw {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.i5YA6 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin-top: 2.5rem;
  width: 100%;
}

.e9dNs {
  width: 100%;
}

.K2mSU {
  font-size: var(--text-xl);
  text-align: center;
}

.s0BjI {
  font-size: var(--text-lg);
  text-align: center;
}

.ghGbt {
  display: flex;
  flex-direction: column;
}

.W34pz {
  text-align: left;
}

.AZfIQ {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 0.625rem;

  @media (min-width: 64rem) {
    justify-content: end;
  }
}

.MNxXO {
  flex: 1;
  @media (min-width: 64rem) {
    flex: unset;
  }
}

.JQ2TO {
  margin-bottom: 1.875rem;
}

.nSAZO {
  text-decoration: none;
  color: var(--color-text);
}

.yyh3y {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}

.cR5eq {
  display: flex;
  flex-direction: column;
  border-bottom: solid 0.0625rem;
  border-color: var(--color-accent-primary);
  padding-bottom: 1.5625rem;
  gap: 1rem;
}

.Do1BB {
  display: flex;
  flex-direction: column;
  width: 100%;
  position: relative;
}

.v3n74 {
  @media (min-width: 64rem) {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 999;
  }
}

.xQoz9 {
  position: relative;
  text-align: center;
  width: 100%;
  overflow: hidden;
}

.Abpse {
  width: 100%;
  height: auto;
  transform: rotate(var(--rotation));
}

.V5J4a {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.yoFoX {
  font-size: 3.5rem;
}

.wRj5b {
  font-size: 1.125rem;
}

.YPNM0 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.625rem;
  position: relative;
}

.h5U24 {
  margin-top: 6.25rem;
}

.rnB76 {
  @media (min-width: 64rem) {
    align-self: flex-start;
  }
}

.m1t9r {
  display: flex;
  flex-direction: column;
  gap: 2.8125rem;
  margin-top: 2.8125rem;
}

.LheYd {
  border-bottom: solid 0.0625rem;
  border-color: var(--color-accent-primary);
  padding-bottom: 2.8125rem;
}

.ndn9I {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  border: solid 0.25rem;
  border-color: var(--color-accent-primary);
  border-radius: 6.25rem;
  cursor: pointer;
}

.ndn9I.E0Wp1 {
  outline: 0.4375rem solid #ff4500;
  outline-offset: 0.25rem;
}

.FwEbl {
  display: flex;
  align-items: center;
  justify-content: center;

  @media (max-width: 64rem) {
    padding-top: 0.9375rem;
  }
}

.FwEbl span {
  font-size: var(--text-lg);
  @media (max-width: 64rem) {
    font-size: var(--text-sm);
  }
}

.AUgAk {
  flex: 0 0 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.9375rem;
  padding: 1.875rem;
  box-sizing: border-box;
}

.AUgAk span {
  font-size: var(--text-md);
  border: solid 0.25rem;
  border-color: var(--color-accent-primary);
  border-radius: var(--control-radius);
  padding: 0.625rem;
  background-color: var(--color-background);
  @media (max-width: var(--breapoint-lg)) {
    font-size: var(--text-sm);
  }
}

.NJP5A {
  font-size: 4.5rem;
  padding: 0.3125rem;
  line-height: 0;
}

.gSxpY {
  font-size: var(--text-sm);
  font-weight: 100;
  text-transform: uppercase;
  letter-spacing: 0.1875rem;
  @media (max-width: 64rem) {
    font-size: var(--text-sm);
    letter-spacing: unset;
    order: 2;
    flex: 1;
  }
}

.kP7z2 {
  display: flex;
  flex-direction: row;
  flex: 1;
  align-items: center;
  justify-content: center;
  margin-top: 3.75rem;
  margin-bottom: 0.9375;
  @media (max-width: 64rem) {
    flex-direction: column;
    margin-top: 2.8125rem;
    gap: 1.875;
    order: 2;
    flex: 1;
  }
}

.Z82Wm {
  flex: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin-top: 3.75rem;
  margin-bottom: 0.9375rem;
  @media (max-width: 64rem) {
    flex-direction: column;
    gap: 1.875rem;
    margin-top: 2.8125rem;
  }
}

.QIvTG {
  flex: 2;

  @media (max-width: 64rem) {
    order: 1;
    flex: 0 0 100%;
  }
}

.hl3ob {
  @media (max-width: 64rem) {
    order: 4;
  }
}

.X3iWE {
  flex-direction: column;
  align-items: center;
  padding-top: 1.5625rem;
}

.nse6W {
  display: flex;
  flex-direction: column;
  gap: 2.1875rem;
}

.fHPzY {
  top: 20%;
  transform: translateY(-20%);
}

.N6ZNs {
  border-radius: 6.25rem;
  transform: scaleY(0.8);
  transform-origin: center;
}

.EZNvp {
  font-size: var(--text-md);
}

.PRnGt {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  margin-bottom: 2.8125rem;
  border: solid 0.25rem;
  border-color: var(--color-accent-primary);
  border-radius: 6.25rem;
}

.aZpVb {
  display: flex;
  align-items: center;
  justify-content: center;
  @media (max-width: 64rem) {
    padding-top: 0.9375rem;
  }
}

.aZpVb span {
  font-size: var(--text-lg);
  @media (max-width: 64rem) {
    font-size: var(--text-md);
  }
}

.HEBCY {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  @media (max-width: 64rem) {
    flex-direction: column;
  }
}

.HEBCY .FPT4C {
  font-size: 3.75rem;
  line-height: 0.75;
  margin-right: 0.9375rem;
  @media (max-width: 64rem) {
    flex-direction: column;
    margin-right: 0rem;
  }
}

.HEBCY .IYIvN {
  font-size: var(--text-md);
}

.aMlL0 {
  flex: 1;
  align-items: stretch;
  @media (max-width: 64rem) {
    order: 2;
    flex: 1;
  }
}

.Cegn9 {
  flex: 2;
  @media (max-width: 64rem) {
    order: 1;
    flex: 0 0 100%;
  }
}

.vOjvz {
  flex: 1;
  @media (max-width: 64rem) {
    order: 2;
    flex: 1;
  }
}

.aMlL0 span {
  font-size: 4.5rem;
  color: var(--color-accent-primary);
  margin-left: 1.25rem;
}

.LSUOh {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

.TH6ca {
  margin-bottom: 0.9375rem;
  flex: 1 1 100%;
}

.iUI9c {
  align-items: stretch;
  flex: 1 1 100%;
}

.iUI9c span {
  font-size: 3rem;
  padding: 0.3125rem;
  color: var(--color-accent-primary);
  line-height: 1.4;

  @media (max-width: 64rem) {
    font-size: 3rem;
  }
}

.vVbil {
  flex: 1;
}

.vVbil span {
  font-size: 4.5rem;
}

.Uju4f {
  flex: 1;
}

.BLJql {
  display: flex;
  flex-direction: column;
}

.EAJzu {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 9.375rem;
  margin-top: 6.25rem;
  @media (max-width: 64rem) {
    justify-content: space-between;
    gap: unset;
    margin-top: 3.125rem;
    > :only-child {
      margin: 0 auto;
    }
  }
}

.GppT0 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
}

.viz6_ {
  display: flex;
  flex-direction: row;
  width: 100%;
  gap: 2.8125rem;
  @media (max-width: 64rem) {
    flex-direction: column;
  }
  & > * {
    flex: 1 1 0;
  }
}

.mUilC {
  font-size: var(--text-lg);
  font-weight: bold;
  margin-bottom: 1.5rem;
  text-align: center;

  @media (min-width: 64rem) {
    text-align: unset;
  }
}

.lgnul {
  font-size: var(--text-lg);
}

.GO0wB {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  justify-content: center;
  padding: 0.625rem;
}

.R058_ {
  display: inline-block;
  padding: 0.5rem 0.75rem;
  border: solid 0.1875rem;
  border-color: var(--color-accent-primary);
  border-radius: var(--control-radius);
  color: var(--color-accent-primary);
  font-weight: bold;
  font-size: var(--text-md);
}

.RoJmb {
  font-size: var(--text-md);
  text-align: center;

  @media (min-width: 64rem) {
    text-align: unset;
  }
}

.dl5nm {
  display: flex;
  flex-direction: column;
  margin-bottom: 1.875rem;
}

._FxH6 {
  display: flex;
  flex-direction: column;
  padding-top: 6.25rem;
  gap: 0.625rem;

  @media (min-width: 64rem) {
    flex-direction: row;
    justify-content: center;
  }
}

.W9LER {
  font-size: 4.5rem;
  text-align: center;
}

.aY6xL {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
  border-bottom: solid 0.0625rem;
  border-color: var(--color-accent-primary);
}

.zBr_i {
  font-size: var(--text-lg);
}

.g5qnZ {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  max-width: 90svw;
  padding: 1.25rem;
  gap: 1.25rem;
  @media (min-width: 64rem) {
    max-width: 25rem;
  }
}

.ytU8g {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  max-width: 90svw;
  padding: 1.25rem;
  gap: 1.25;
  @media (min-width: 64rem) {
    max-width: 25rem;
  }
}

.g9e2p {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;

  @media (min-width: 64rem) {
    flex-direction: row;
  }
}

.vVG8A {
  @media (min-width: 64rem) {
    order: 2;
    flex: 1;
  }
}

.alL2M {
  @media (min-width: 64rem) {
    order: 1;
    flex: 1;
  }
}

.R5k18 {
  padding: 1.25rem;
  background-color: #00000000;
  color: var(--color-text);
  text-align: left;
  border: none;
  border-bottom: solid 0.0625rem;
  border-color: var(--color-accent-primary);
  cursor: pointer;
}

.on90o {
  display: flex;
  flex-direction: column;
  max-width: 90svw;
  padding: 1.25rem;
  gap: 1.25rem;
  @media (min-width: 64rem) {
    max-width: 25rem;
  }
}

.sTq50 {
  display: flex;
  flex-flow: row nowrap;
}

.WkEXd {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  flex: 1;

  @media (min-width: 64rem) {
    flex-direction: row;
  }
}

.O_8HV {
  font-size: 1.5rem;
  text-align: center;
}

.qqQKF {
  aspect-ratio: 1/1;
}

.BS9Nj {
  align-self: center;
}

.UViq_ {
  order: 0;

  @media (min-width: 64rem) {
    order: 1;
    flex: 1;
  }
}

.yFwDz {
  order: 1;

  @media (min-width: 64rem) {
    order: 0;
    flex: 1;
  }
}

.clcn3 {
  width: min(30svw, 30svh);
  aspect-ratio: 1/1;
  border: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  cursor: pointer;
  text-decoration: none;
  color: var(--color-accent-primary);
}

.GUebc {
  display: flex;
  flex-flow: row nowrap;
  gap: 0.625rem;
  margin-top: 1.25rem;
  width: 100%;
}

.S2X6n {
  display: flex;
  flex-direction: column;
}

.Bx3ES {
  flex: 0 0 auto;
}

.ELY11 {
  flex: 1;
  min-width: 0;
}

.hJttO {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.dyZXO {
  font-size: 3rem;
  text-align: center;
}

.bwC3N {
  display: flex;
  flex-direction: row;
  gap: 0.625rem;
  align-items: center;
  justify-content: center;
}

.kslvt {
  font-size: 4rem;
  gap: 3.125rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.IMFZ9 {
  width: 1.875rem;
  height: 1.875;
}

.ip_US {
  transform: rotate(180deg);
}

.y0ACQ {
  display: flex;
  flex-direction: column;
  margin-top: 3.125rem;
  justify-content: space-around;
  width: 100%;
}

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

.ZXi37 {
  display: flex;
  flex-direction: row;
  flex: 1;
  align-items: center;
  justify-content: center;
  padding: 0.625rem;
  gap: 0.625rem;
}

._8VrHv {
  font-size: 7.75rem;
  gap: 3.125rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.ssGqD {
  font-size: 4rem;
  gap: 3.125rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.WdtP7 {
  width: 3.75rem;
  aspect-ratio: 1 /1;
}

.LtP52 {
  display: flex;
  flex-direction: column;
}

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

.q8xZ5 {
  flex: 2;
  display: flex;
  justify-content: center;
  align-items: center;
}

.SMVq7 {
  flex: 1;
  display: flex;
  justify-content: start;
}

.iP4ec {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.qsHIv {
  display: inline-flex;
  align-items: end;
  justify-content: end;
  font-size: 3rem;
  font-weight: 250;
}

.vUxkK {
  font-size: 2rem;
  font-weight: 100;
  letter-spacing: 0.3125rem;
  text-align: center;
}

.lnW5I {
  font-size: 3.75rem;
}

.kOIG2 {
  font-size: 3.75rem;
  color: var(--color-accent-primary);
}

.esDhw {
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.C8EI9 {
  width: 50%;
  height: 50%;

  @media (min-width: 64rem) {
    width: 25%;
    height: 25%;
  }
}

.l4vQk {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.X3LWV {
  display: flex;
  flex-direction: column;
  margin-top: 3.125rem;
}

.UJzuo {
  font-size: 3rem;
  letter-spacing: 0.3125rem;
  text-transform: uppercase;
}

.TBq2d {
  width: 50%;

  @media (min-width: 64rem) {
    width: 25%;
  }
}

.pEzyD {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 1.5625rem;
}

.QtljH {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-around;
}

.J3qm_ {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}

.PL463 {
  font-size: 4rem;
  gap: 3.125rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.WhZRX {
  width: 3.75rem;
  aspect-ratio: 1 /1;
}



.auWjZ {
  display: flex;
  flex-direction: column;
  width: 100%;
}

