/* As defined in the style guide */

/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&display=swap');

/* Colors */
:root {
  --color-primary: #00e5ba;
  --color-primary-disabled: #bdf7e5;
  --color-secondary: #7d8cc4;
  --color-secondary-disabled: #a7b5ca;
  --color-tertiary: #02366f;
  --color-tertiary-disabled: #a7b5ca;
  --color-dark: #0e0e0e;
  --color-medium: #c4c4c4;
  --color-light: #f6f5f5;
  --color-white: #ffffff;
  --color-black: #000000;
  --color-error: #ff0000;
  --color-disabled: #888888;
}

* {
  font-family: 'Jost', sans-serif;
  font-optical-sizing: auto;
}

body,
html {
  width: 100%;
  height: 100%;
  margin: 0px;
  padding: 0px;
}

html {
  font-size: 16px;
  /* font-size: 12px; */
}

body {
  padding-top: 96px;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  box-shadow: 0px 16px 16px rgba(0, 0, 0, 0.1);
}

footer {
  /* bottom: 0;
  position: absolute; */
  width: 100%;
}

ul {
  list-style-type: none;
  list-style-position: inside;
  padding: 0;
  margin: 0;
}

/* @media only screen and (max-width: 768px) {
  html {
    font-size: 12px;
  }
} */

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
}

/* Assuming the base font-size is 16px */
.img-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
}

.img-header > img {
  width: 32px;
}

.xl-header {
  font-size: 6rem; /* 100px / 16px = 6.25rem */
  font-weight: 500;
}
.l-header {
  font-size: 3rem; /* 100px / 16px = 6.25rem */
  font-weight: 500;
}
.m-header {
  font-size: 2.5rem; /* 60px / 16px = 3.75rem */
  font-weight: 500;
  /* font-weight: 400 500 700; */
}
.s-header {
  font-size: 2rem; /* 48px / 16px = 3rem */
  font-weight: 500;
  /* font-weight: 400 500 700; */
}

.xs-header {
  font-size: 1.5rem; /* 48px / 16px = 3rem */
  font-weight: 200;
  /* font-weight: 400 500 700; */
}

.text-primary {
  font-size: 1.5rem; /* 24px / 16px = 1.5rem */
  font-weight: 400;
}

.text-secondary {
  font-size: 1.25rem; /* 20px / 16px = 1.25rem */
  font-weight: 400;
}

.text-tertiary {
  font-size: 1rem; /* 16px / 16px = 1rem */
  font-weight: 400;
}

.text-quaternary {
  font-size: 0.875rem; /* 14px / 16px = 0.875rem */
  font-weight: 400;
}

.color-primary {
  color: var(--color-primary);
}
.color-secondary {
  color: var(--color-secondary);
}
.color-tertiary {
  color: var(--color-tertiary);
}
.color-white {
  color: var(--color-white);
}
.color-medium {
  color: var(--color-medium);
}

a {
  text-decoration: none;
  color: unset;
}

button {
  border: none;
  /* min-width: 128px; */
  height: 44px;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 6px 12px;
}

button > label {
  cursor: inherit;
}

button.icon-only {
  min-width: unset;
}

button img {
  height: 100%;
}

input,
select {
  border: none;
  min-width: 128px;
  min-height: 44px;
  border-radius: 4px;
  background-color: var(--color-medium);
  /* color: var(--color-white); */
  padding: 0 16px;
}

.button-primary-fill {
  background-color: var(--color-primary);
  color: var(--color-white);
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
}
.button-primary-clear {
  background-color: var(--color-white);
  color: var(--color-primary);
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
}
.button-primary-disabled {
  background-color: var(--color-primary-disabled);
  color: var(--color-white);
  pointer-events: none;
}
.button-secondary-fill {
  background-color: var(--color-secondary);
  color: var(--color-white);
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
}
.button-secondary-clear {
  background-color: var(--color-white);
  color: var(--color-secondary);
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
}
.button-secondary-disabled {
  background-color: var(--color-secondary-disabled);
  color: var(--color-white);
  pointer-events: none;
}
.button-tertiary-fill {
  background-color: var(--color-tertiary);
  color: var(--color-white);
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
}
.button-tertiary-clear {
  background-color: var(--color-white);
  color: var(--color-tertiary);
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
}
.button-tertiary-disabled {
  background-color: var(--color-tertiary-disabled);
  color: var(--color-white);
  pointer-events: none;
}
.button-white-fill {
  background-color: var(--color-white);
  color: var(--color-primary);
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
}
.button-white-clear {
  background-color: var(--color-primary);
  color: var(--color-white);
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
}
.button-white-disabled {
  background-color: var(--color-white-disabled);
  color: var(--color-tertiary);
  pointer-events: none;
}
.button-gradient-fill {
  background: #00e5ba;
  background: linear-gradient(
    135deg,
    rgba(0, 229, 186, 1) 0%,
    rgba(2, 54, 111, 1) 50%,
    rgba(2, 54, 111, 1) 100%
  );

  color: var(--color-white);
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1);
}

.button-large {
  height: 80px;
  padding: 6px 64px;
  /* width: -webkit-fill-available; */
}
.button-medium {
  height: 64px;
  padding: 6px 44px;
  /* width: -webkit-fill-available; */
}
.button-small {
  height: 44px;
  padding: 6px 44px;
  /* width: -webkit-fill-available; */
}

.no-shadow {
  box-shadow: none;
}

.bg-primary {
  background-color: var(--color-primary);
  /* color: var(--color-white); */
  /* padding: 64px; */
  box-sizing: border-box;
}
.bg-secondary {
  background-color: var(--color-secondary);
  /* color: var(--color-white); */
  /* padding: 64px; */
  box-sizing: border-box;
}
.bg-secondary-light {
  background-color: rgb(176, 184, 218);
  /* color: var(--color-white); */
  /* padding: 64px; */
  box-sizing: border-box;
}
.bg-tertiary {
  background-color: var(--color-tertiary);
  /* color: var(--color-white); */
  /* padding: 64px; */
  box-sizing: border-box;
}
.bg-light {
  background-color: var(--color-light);
  /* color: var(--color-white); */
  /* padding: 64px; */
  box-sizing: border-box;
}

.border-primary {
  border: 2px solid var(--color-primary);
  /* color: var(--color-white); */
}
.border-white {
  border: 2px solid var(--color-white);
  /* color: var(--color-white); */
}

li {
  margin: 16px 0;
  /* text-wrap: balance; */
}

/* li.checkmark::marker {
  content: '✔ ';
  font-size: 1.2em;
  color: var(--color-white);
} */

li.checkmark > span {
  font-size: 1.2em;
  color: var(--color-white);
}

li.icon {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
}
