/* Font Families */

@font-face {
  font-family: "Untitled Sans";
  src: url("/assets/fonts/UntitledSansWeb-Regular.eot");
  src: url("/assets/fonts/UntitledSansWeb-Regular.eot?#iefix")
      format("embedded-opentype"),
    url("/assets/fonts/UntitledSansWeb-Regular.woff2") format("woff2"),
    url("/assets/fonts/UntitledSansWeb-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Untitled Sans";
  src: url("/assets/fonts/UntitledSansWeb-Medium.eot");
  src: url("/assets/fonts/UntitledSansWeb-Medium.eot?#iefix")
      format("embedded-opentype"),
    url("/assets/fonts/UntitledSansWeb-Medium.woff2") format("woff2"),
    url("/assets/fonts/UntitledSansWeb-Medium.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

/* Root Elements */

:root {
  --Fh: 2.725rem;
  --Fxxl: 3.25rem;
  --Fxl: 2.125rem;
  --Fl: 1.688rem;
  --Fm: 1.25rem;
  --Fb: 1rem;
  --Fs: 0.875rem;
  --Fc: 0.75rem;
  --black: #0f0f0f;
  --white: #ffffff;
  --red: #ff003d;
  --grey: #696969;
  --lightGrey: #f0f0f0;
  --green: #1ae371;
  --fg: var(--black);
  --bg: var(--white);
  --ac: var(--red);
  --bc: var(--grey);
  --Pm: 0.75rem;
  --Pg: 0.75rem;
  --Ph: calc(0.5 * var(--Pm));
  --Pd: calc(2 * var(--Pm));
  --Hh: 167px;
  --Hf: calc(100vh - var(--Hh));
  --Wf: calc(100% + (2 * var(--Pg)));
  --Wg: calc(100% + var(--Pg));
  --Ml: calc(-1 * var(--Pg));
  --tRight: translateX(-1.75vw);
  --tDown: translateY(-1.75vw);
  --tLength: 0.25s;
  --tDelay: 0.25s;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

* {
  box-sizing: border-box;
}

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

.visually-hidden {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

.hidden {
  display: none !important;
}

textarea,
input,
button,
select {
  font-family: inherit;
  font-size: inherit;
  text-align: inherit;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  background: inherit;
  color: inherit;
  border: none;
  padding: 0;
  outline: inherit;
  opacity: 1;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  background: inherit;
  color: inherit;
  border: none;
  padding: 0;
  outline: inherit;
  opacity: 1;
}

input,
textarea,
input::placeholder,
textarea::placeholder {
  background: inherit;
  color: inherit;
  border: none;
  padding: 0;
  outline: inherit;
  opacity: 1;
}

textarea {
  resize: none;
}

input:not([type="submit"]),
textarea {
  display: block;
  width: 100%;
  border-radius: 0;
}

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

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance: none;
}

input[type="number"] {
  -moz-appearance: textfield;
}

select {
  background: none;
  width: 100%;
  cursor: pointer;
  border: none;
  outline: none;
  border-radius: 0;
  color: var(--fg);
  margin: 0;
  padding: 0;
}

select option {
  color: var(--fg);
  margin: 0;
  padding: 0;
  background: var(--bg);
}

select:focus {
  outline: none;
}

ul,
li {
  text-decoration: none;
  list-style: none;
}

/* Input Elements */

button,
input[type="submit"],
input[type="reset"],
div[role="button"] {
  background: none;
  color: inherit;
  border: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
  outline: inherit;
  -webkit-appearance: none;
  border-radius: 0;
}

input[type="button"],
input[type="button"]:focus {
  outline: none;
}

/* a:link span,
a:visited span, */
a:link,
a:visited {
  color: inherit;
  cursor: pointer;
  text-decoration: none;
}

/* Details Elements */

summary,
summary:focus {
  outline: none;
  list-style-type: none;
  position: relative;
  cursor: pointer;
}

details summary::marker,
details summary::-webkit-details-marker {
  content: "";
  visibility: hidden;
  position: absolute;
  z-index: -10;
  list-style-type: none;
  display: none;
}

summary > * {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
}

summary .aspectholder {
  display: grid;
  align-items: center;
  justify-content: center;
  width: 10px;
  height: 10px;
}

summary .aspectholder > * {
  grid-column: 1/2;
  grid-row: 1;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  transition: all 0.2s;
}

summary .aspectholder > *:nth-child(2),
details[open] summary .aspectholder > *:nth-child(1) {
  opacity: 0;
  visibility: hidden;
}

details[open] summary .aspectholder > *:nth-child(2) {
  opacity: 1;
  visibility: visible;
}

summary .aspectholder svg path {
  stroke: var(--fg);
}

details[open] summary ~ * {
  -webkit-animation: appear 0.9s forwards ease-in;
  animation: appear 0.9s forwards ease-in;
}

details.closing summary ~ * {
  -webkit-animation: close 0.8s forwards ease-out;
  animation: close 0.8s forwards ease-out;
}

@-webkit-keyframes appear {
  0% {
    opacity: 0;
    max-height: 0;
  }

  50% {
    opacity: 0;
    max-height: 100vh;
  }

  100% {
    opacity: 1;
  }
}

@keyframes appear {
  0% {
    opacity: 0;
    max-height: 0;
  }

  50% {
    opacity: 0;
    max-height: 100vh;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes close {
  0% {
    opacity: 1;
    max-height: 100vh;
  }

  25% {
    opacity: 1;
    max-height: 100vh;
  }

  100% {
    opacity: 0;
    max-height: 0;
  }
}

@keyframes close {
  0% {
    opacity: 1;
    max-height: 100vh;
  }

  25% {
    opacity: 1;
    max-height: 100vh;
  }

  100% {
    opacity: 0;
    max-height: 0;
  }
}

/* Image/Video Elements */

.aspectholder > * {
  display: block;
}

.vsc-controller {
  height: 0 !important;
  width: 0 !important;
  -o-object-fit: unset !important;
  object-fit: unset !important;
}

/* Universal Elements */

html {
  font-size: 16px;
  font-family: "Untitled Sans", "Arial", sans-serif;
  font-weight: normal;
  font-style: normal;
  line-height: 1.4;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
  color: var(--fg);
  background: var(--bg);
  -webkit-text-size-adjust: none;
}

/* Tags */

.button_tag {
  color: var(--fg);
  background-color: var(--ac);
  padding: 1px 3px;
  white-space: nowrap;
  border: 1px solid var(--ac);
  border-radius: 5px;
  /* margin: 0 0.5em; */
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
  display: inline-flex;
  align-items: center;
}

.button_tag svg {
  width: 12px;
  height: 11px;
  margin-left: 0.375rem;
}

.button_tag svg rect,
.button_tag svg path {
  transition: all 0.2s;
}

a.button_tag:hover,
button.button_tag:hover {
  color: var(--bg);
  background-color: var(--fg);
  border-color: var(--bg);
}

a.button_tag:hover svg path,
button.button_tag:hover svg path,
a.button_tag:hover rect path,
button.button_tag:hover rect path {
  stroke: var(--bg);
}

/* Universal Text Styling */

h1,
h2,
h3,
h4,
p,
a {
  line-height: 1.4;
}

.font_h.richtext *,
.font_h {
  font-size: var(--Fh);
  line-height: 1.1;
}

.font_xxl.richtext *,
.font_xxl {
  font-size: var(--Fxl);
  line-height: 1.25;
}

.font_xl.richtext *,
.font_xl {
  font-size: var(--Fxl);
  line-height: 1.25;
}

.font_l.richtext *,
.font_l {
  font-size: var(--Fl);
  line-height: 1.25;
}

.font_m.richtext *,
.font_m {
  font-size: var(--Fm);
  line-height: 1.25;
}

.font_b.richtext *,
.font_b {
  font-size: var(--Fb);
}

.font_s.richtext *,
.font_s {
  font-size: var(--Fs);
}

.font_c.richtext *,
.font_c {
  font-size: var(--Fc);
}

.font_up {
  text-transform: uppercase;
}

.richtext strong,
.font_grey {
  color: var(--bc);
}

.richtext > *:not(:last-child) {
  margin-bottom: 1em;
  min-height: 1em;
}

.richtext a {
  border-bottom: 1px solid;
  padding-bottom: 0.5px;
  /* white-space: nowrap; */
}

/* Form Styling */

.form_embed form * {
  font-family: "Untitled Sans", "Arial", sans-serif !important;
  font-size: var(--Fs) !important;
  color: var(--fg) !important;
  font-weight: normal !important;
}

.form_embed .kl-private-reset-css-Xuajs1 label {
  padding-bottom: 0.25rem !important;
}

.form_embed .kl-private-reset-css-Xuajs1 input:not([type]),
.form_embed .kl-private-reset-css-Xuajs1 input[type="text"],
.form_embed .kl-private-reset-css-Xuajs1 input[type="email"],
.form_embed .kl-private-reset-css-Xuajs1 input[type="number"],
.form_embed .kl-private-reset-css-Xuajs1 input[type="date"],
.form_embed .kl-private-reset-css-Xuajs1 input[type="tel"] {
  padding: 0.625rem !important;
  background-color: var(--ac) !important;
  border-radius: 8px !important;
  height: -webkit-fit-content !important;
  height: -moz-fit-content !important;
  height: fit-content !important;
  border: none !important;
}

.form_embed ::-webkit-input-placeholder {
  opacity: 0.3 !important;
  font-family: "Untitled Sans", "Arial", sans-serif !important;
}

.form_embed ::-moz-placeholder {
  opacity: 0.3 !important;
  font-family: "Untitled Sans", "Arial", sans-serif !important;
}

.form_embed ::placeholder {
  opacity: 0.3 !important;
  font-family: "Untitled Sans", "Arial", sans-serif !important;
}

.form_embed button[type="button"] {
  display: flex;
  align-items: center;
  width: -webkit-fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
  height: -webkit-fit-content !important;
  height: -moz-fit-content !important;
  height: fit-content !important;
  padding: 0.375rem 0.875rem !important;
  text-align: center !important;
  border-radius: 20px !important;
  cursor: pointer;
  color: var(--fg) !important;
  background-color: var(--ac) !important;
  border: 1px solid var(--ac) !important;
  line-height: 1.4 !important;
  margin-top: 0.25rem !important;
  transition: opacity 0.2s, color 0.2s, background-color 0.2s, border-color 0.2s;
}

.form_embed button[type="button"]::after {
  content: "";
  mask-image: url("../graphics/icon-arrow-right.svg");
  -webkit-mask-image: url("../graphics/icon-arrow-right.svg");
  background: var(--bg);
  display: inline-block;
  width: 12px;
  height: 11px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  mask-size: cover;
  -webkit-mask-size: cover;
  opacity: 0;
  max-width: 0;
  opacity: 0;
  transition: all 0.2s;
  margin-left: 0;
}

@media (hover: hover) and (pointer: fine) {
  .form_embed button[type="button"]:hover {
    color: var(--bg) !important;
    background-color: var(--fg) !important;
    border-color: var(--fg) !important;
  }

  .form_embed button[type="button"]:hover::after {
    max-width: 12px;
    opacity: 1;
    transition: all 0.2s, opacity 0.2s 0.1s;
    margin-left: 0.375rem;
  }
}

.form_embed form > div,
.form_form {
  display: flex;
  flex-direction: column;
  row-gap: 0.75rem;
}

.form_field,
.form_inline {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.form_field > *,
.form_field input:not([type="radio"]) {
  width: 100%;
}

.form_field input:not([type="radio"]),
.form_field textarea,
.form_inline-inner,
.form_field-select select,
.form_field-radio > div {
  padding: 0.625rem;
  background-color: var(--ac);
  border-radius: 8px;
}

.form_field input:not([type="radio"])::-webkit-input-placeholder,
.form_field textarea::-webkit-input-placeholder,
.form_inline input::-webkit-input-placeholder {
  opacity: 0.3;
}

.form_field input:not([type="radio"])::-moz-placeholder,
.form_field textarea::-moz-placeholder,
.form_inline input::-moz-placeholder {
  opacity: 0.3;
}

.form_field input:not([type="radio"])::placeholder,
.form_field textarea::placeholder,
.form_inline input::placeholder {
  opacity: 0.3;
}

.form_field-header,
.form_inline label {
  margin-bottom: 0.25rem;
}

.form_field-header {
  display: flex;
  -webkit-column-gap: 0.75rem;
  -moz-column-gap: 0.75rem;
  column-gap: 0.75rem;
  justify-content: space-between;
}

.form_inline-inner {
  display: flex;
  align-items: center;
  -webkit-column-gap: 0.5rem;
  -moz-column-gap: 0.5rem;
  column-gap: 0.5rem;
}

.form_inline-inner input {
  flex: 1 1 auto;
  width: 100%;
}

.form_inline-inner button {
  width: 8px;
  height: 11px;
}

.form_inline-inner button svg {
  width: 100%;
  height: 100%;
}

.form_field-select {
  position: relative;
}

.form_field-select select {
  padding-right: calc(0.75rem + 9px);
  display: block;
  transition: all 0.2s;
}

@media (hover: hover) and (pointer: fine) {
  .form_field-select:hover select {
    color: var(--bg);
    background-color: var(--fg);
  }
}

.form_field-select svg {
  width: 9px;
  height: 4.5px;
  position: absolute;
  top: 50%;
  right: 0.375rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 2;
}

.form_field-select svg path {
  stroke: var(--fg);
  transition: all 0.2s;
}

@media (hover: hover) and (pointer: fine) {
  .form_field-select:hover svg path {
    stroke: var(--bg);
  }
}

.form_field-radio {
  display: flex;
  flex-direction: column;
  row-gap: 0.25rem;
}

.form_field-radio > div {
  display: flex;
  position: relative;
  transition: all 0.3s;
}

.form_field-radio > div:hover {
  background-color: var(--grey);
}

.form_field-radio > div.active {
  color: var(--bg);
  background-color: var(--fg);
}

.form_field-radio input[type="radio"],
.form_field-checkboxes input[type="checkbox"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  margin: 0;
  opacity: 0;
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
  cursor: pointer;
  line-height: 1;
}

.form_field-checkboxes {
  flex-direction: row;
  flex-wrap: wrap;
  -webkit-column-gap: 0.25rem;
  -moz-column-gap: 0.25rem;
  column-gap: 0.25rem;
}

.form_field-checkboxes > * {
  display: flex;
  flex: 1 1 auto;
}

.form_submit {
  margin-top: 0.25rem;
  align-self: flex-end;
}

.uploadcare--widget {
  width: 100%;
}

.uploadcare--widget__button {
  font-size: var(--Fs) !important;
  color: var(--fg) !important;
  background: var(--ac) !important;
  border: 1px solid var(--ac);
  display: flex;
  justify-content: space-between;
  -webkit-column-gap: 1rem;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  padding: 0.625rem;
  border-radius: 8px;
  cursor: pointer;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
}

.uploadcare--widget__button::after {
  content: "+";
}

.uploadcare--widget__button:focus {
  color: var(--fg) !important;
}

.uploadcare--widget__button:hover {
  background: var(--grey) !important;
}

.uploadcare--widget__button:focus {
  outline: none;
}

.uploadcare--progress_type_canvas {
  color: var(--red) !important;
}

.uploadcare--widget__text {
  font-size: var(--Fs) !important;
}

.uploadcare--widget__progress {
  width: 1rem !important;
  height: 1rem !important;
}

.uploadcare--link,
.uploadcare--link:link,
.uploadcare--link:visited {
  color: var(--red) !important;
  text-decoration: none !important;
  transition: all 0.2s;
}

.uploadcare--link:hover {
  opacity: 0.5;
}

/* Button Elements */

.button_pill,
.button_pill a,
a.button_pill,
button.button_pill,
.button_pill button {
  display: flex;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  padding: 0.375rem 0.875rem;
  text-align: center;
  border-radius: 20px;
  cursor: pointer;
  transition: opacity 0.2s, color 0.2s, background-color 0.2s, border-color 0.2s;
}

.button_pill svg {
  width: 12px;
  height: 11px;
  margin-left: 0.375rem;
}

.button_pill svg rect,
.button_pill svg path {
  transition: all 0.2s;
}

.button_ac,
.button_ac a,
a.button_ac,
button.button_ac,
.button_ac button {
  color: var(--fg);
  background-color: var(--ac);
  border: 1px solid var(--ac);
}

.button_ac svg path,
.button_ac svg rect {
  stroke: var(--fg);
}

.button_bg,
.button_bg a,
a.button_bg,
button.button_bg,
.button_bg button {
  color: var(--bg);
  background-color: var(--fg);
  border: 1px solid var(--fg);
}

.button_bg svg path,
.button_bg svg rect {
  stroke: var(--bg);
}

.button_fg,
.button_fg a,
a.button_fg,
button.button_fg,
.button_fg button {
  color: var(--fg);
  background-color: var(--bg);
  border: 1px solid var(--fg);
}

.button_fg svg path,
.button_fg svg rect {
  stroke: var(--fg);
}

.button_grey,
.button_grey a,
a.button_grey,
button.button_grey,
.button_grey button {
  color: var(--fg);
  background-color: var(--ac);
  border: 1px solid var(--ac);
}

.button_grey svg path,
.button_grey svg rect {
  stroke: var(--fg);
}

.button_clear,
.button_clear a,
a.button_clear,
button.button_clear,
.button_clear button {
  color: var(--bg);
  border: 1px solid;
}

.button_clear svg path,
.button_clear svg rect {
  stroke: var(--bg);
}

.button_expand > svg {
  max-width: 0;
  opacity: 0;
  transition: all 0.2s;
  margin-left: 0;
}

@media (hover: hover) and (pointer: fine) {
  .button_expand:hover > svg {
    max-width: 12px;
    opacity: 1;
    transition: all 0.2s;
    margin-left: 0.375rem;
  }
}

.button_ac.active {
  color: var(--bg);
  background-color: var(--fg) !important;
}

@media (hover: hover) and (pointer: fine) {
  .button_ac:hover,
  .button_ac a:hover,
  a.button_ac:hover,
  button.button_ac:hover,
  .button_ac button:hover {
    color: var(--bg);
    background-color: var(--fg) !important;
    border-color: var(--fg);
  }

  .button_ac:hover svg path,
  .button_ac:hover svg rect {
    stroke: var(--bg);
  }

  .button_bg:hover,
  .button_bg a:hover,
  a.button_bg:hover,
  button.button_bg:hover,
  .button_bg button:hover {
    color: var(--fg);
    background-color: var(--bg) !important;
  }

  .button_bg:hover svg path,
  .button_bg:hover svg rect {
    stroke: var(--fg);
  }

  .button_fg:hover,
  .button_fg a:hover,
  a.button_fg:hover,
  button.button_fg:hover,
  .button_fg button:hover {
    color: var(--bg);
    background-color: var(--fg) !important;
  }

  .button_fg:hover svg path,
  .button_fg:hover svg rect {
    stroke: var(--bg);
  }

  .button_grey:hover,
  .button_grey a:hover,
  a.button_grey:hover,
  button.button_grey:hover,
  .button_grey button:hover {
    background-color: var(--bc);
    border-color: var(--bc);
  }

  .button_clear:hover,
  .button_clear a:hover,
  a.button_clear:hover,
  button.button_clear:hover,
  .button_clear button:hover {
    color: var(--fg);
    background-color: var(--bg);
  }

  .button_clear:hover svg path,
  .button_clear:hover svg rect {
    stroke: var(--fg);
  }

  .button_black button:hover {
    background-color: var(--ac);
    border: 1px solid var(--red);
  }
}

a.link_anchor,
.link_anchor a,
button.link_anchor,
.link_anchor button,
a.link_grey,
.link_grey a,
button.link_grey,
.link_grey button,
a.link_reverse-grey,
.link_reverse-grey a,
button.link_reverse-grey,
.link_reverse-grey button {
  transition: all 0.2s;
}

@media (hover: hover) and (pointer: fine) {
  a.link_anchor:hover,
  .link_anchor a:hover,
  button.link_anchor:hover,
  .link_anchor button:hover {
    opacity: 0.5;
  }

  a.link_grey:hover,
  .link_grey a:hover,
  button.link_grey:hover,
  .link_grey button:hover {
    opacity: 1 !important;
  }

  a.link_grey:hover,
  .link_grey a:hover,
  button.link_grey:hover,
  .link_grey button:hover {
    color: var(--bc);
  }

  a.link_reverse-grey:hover,
  .link_reverse-grey a:hover,
  button.link_reverse-grey:hover,
  .link_reverse-grey button:hover {
    color: var(--fg);
  }
}

.button_arrow {
  display: flex;
  align-items: center;
  border-bottom: 1px solid;
  padding-bottom: 0.286rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.button_arrow svg {
  width: 10px;
  height: 8.5px;
  margin-left: 2.857rem;
}

.button_arrow svg path {
  fill: var(--fg);
}

/* Enter View */

.block {
  /* transition: all var(--tLength) ease-in; */
}

.block,
.stagger .stagger-child {
  opacity: 0;
}

.block.animate_right,
.stagger-child.animate_right {
  -webkit-transform: var(--tRight);
  transform: var(--tRight);
}

.block.animate_down,
.stagger-child.animate_down {
  -webkit-transform: var(--tDown);
  transform: var(--tDown);
}

.block.animate_blur,
.stagger-child.animate_blur {
  -webkit-filter: blur(5px);
  filter: blur(5px);
  opacity: 1 !important;
}

.block.entered {
  /* opacity: 1; */
  -webkit-animation: var(--tLength) ease-in both fadeIn;
  animation: var(--tLength) ease-in both fadeIn;
}

.block.entered.animate_right {
  /* transform: translateX(0); */
  -webkit-animation: var(--tLength) ease-in both enterRight;
  animation: var(--tLength) ease-in both enterRight;
}

.block.entered.animate_down {
  /* transform: translateY(0); */
  -webkit-animation: var(--tLength) ease-in both enterDown;
  animation: var(--tLength) ease-in both enterDown;
}

.block.entered.animate_blur {
  -webkit-animation: var(--tLength) ease-in 0.5s both blurIn;
  animation: var(--tLength) ease-in 0.5s both blurIn;
}

.stagger.entered .stagger-child {
  -webkit-animation: var(--tLength) ease-in
    calc(var(--animation-order) * var(--tDelay)) both fadeIn;
  animation: var(--tLength) ease-in calc(var(--animation-order) * var(--tDelay))
    both fadeIn;
}

.stagger.entered .stagger-child.animate_right {
  -webkit-animation: var(--tLength) ease-in
    calc(var(--animation-order) * var(--tDelay)) both enterRight;
  animation: var(--tLength) ease-in calc(var(--animation-order) * var(--tDelay))
    both enterRight;
}

.stagger.entered .stagger-child.animate_down {
  -webkit-animation: var(--tLength) ease-in
    calc(var(--animation-order) * var(--tDelay)) both enterDown;
  animation: var(--tLength) ease-in calc(var(--animation-order) * var(--tDelay))
    both enterDown;
}

.stagger.entered .stagger-child.animate_blur {
  -webkit-animation: var(--tLength) ease-in
    calc(var(--animation-order) * var(--tDelay)) both blurIn;
  animation: var(--tLength) ease-in calc(var(--animation-order) * var(--tDelay))
    both blurIn;
}

@-webkit-keyframes enterRight {
  0% {
    opacity: 0;
    -webkit-transform: var(--tRight);
    transform: var(--tRight);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes enterRight {
  0% {
    opacity: 0;
    -webkit-transform: var(--tRight);
    transform: var(--tRight);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@-webkit-keyframes enterDown {
  0% {
    opacity: 0;
    -webkit-transform: var(--tDown);
    transform: var(--tDown);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes enterDown {
  0% {
    opacity: 0;
    -webkit-transform: var(--tDown);
    transform: var(--tDown);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes blurIn {
  0% {
    -webkit-filter: blur(5px);
    filter: blur(5px);
  }

  100% {
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

@keyframes blurIn {
  0% {
    -webkit-filter: blur(5px);
    filter: blur(5px);
  }

  100% {
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

/* Cookie Modal */
.cookie-modal {
  /* pointer-events: all !important; */
  background-color: transparent !important;
}

.cookie-modal__content {
  position: absolute;
  bottom: 0;
  left: 0;
  margin: 0 !important;
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  color: var(--bg);
  background-color: var(--fg) !important;
  max-width: unset !important;
  padding: var(--Pg) !important;
  display: flex;
  align-items: center;
  justify-content: space-between;
  -webkit-column-gap: 5rem;
  -moz-column-gap: 5rem;
  column-gap: 5rem;
}

.cookie-modal__options {
  visibility: hidden;
  opacity: 0;
  height: 0;
  overflow: hidden;
  margin-bottom: 0 !important;
}

.cookie-modal__buttons {
  -webkit-column-gap: 0.625rem;
  -moz-column-gap: 0.625rem;
  column-gap: 0.625rem;
  align-items: center !important;
  justify-content: center !important;
}

.cookie-modal__buttons .button_pill {
  white-space: nowrap;
}

@media (hover: hover) and (pointer: fine) {
  .cookie-modal__buttons a.button_ac:hover {
    border-color: var(--ac);
  }
}

/* Main Styling */

.page-content {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

body {
  height: 100%;
  display: flex;
  flex-direction: column;
}

body.active {
  overflow: hidden;
}

header,
main inner > section,
footer {
  display: grid;
  grid-template-columns: repeat(24, 1fr);
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
  align-items: start;
  min-height: -webkit-fit-content;
  min-height: -moz-fit-content;
  min-height: fit-content;
  width: 100%;
  position: relative;
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
}

/* Header */

header {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  padding: 1rem var(--Pg);
  row-gap: 1rem;
  padding-bottom: 5rem;
  background-color: var(--bg);
  /* transition: all 0.2s; */
}

header.inactive {
  visibility: hidden;
  pointer-events: none;
  opacity: 0;
}

[data-template="home"] header {
  padding-bottom: 7.25rem;
}

header a,
header button {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.header__icon {
  grid-column: 1/7;
  grid-row: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 25px;
}

header .aspectholder {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 100%;
}

header .aspectholder > * {
  width: auto;
  height: 100%;
  max-width: 100%;
}

header .aspectholder svg path {
  fill: var(--fg);
  transition: fill 0.2s;
}

@media (hover: hover) and (pointer: fine) {
  .header__icon a:hover svg path {
    fill: var(--ac);
  }
}

.header__announcements {
  grid-column: 19/25;
  display: flex;
  flex-direction: column;
  justify-self: flex-end;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: fixed;
  top: 1rem;
  right: var(--Pg);
  transition: all 0.2s;
  padding-bottom: 1.5rem;
}

@media (hover: hover) and (pointer: fine) {
  .header__announcements:hover {
    row-gap: 0.375rem;
  }
}

.header__announcements-item {
  width: 226px !important;
  display: grid !important;
  grid-template-columns: 18px 1fr;
  align-items: center;
  -webkit-column-gap: 0.375rem;
  -moz-column-gap: 0.375rem;
  column-gap: 0.375rem;
  position: relative;
  overflow: hidden;
  -webkit-filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.15));
  filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.15));
  transition: color 0.2s, background-color 0.2s, border-color 0.2s,
    -webkit-transform 0.2s, -webkit-filter 0.2s !important;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s,
    transform 0.2s, filter 0.2s !important;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s,
    transform 0.2s, filter 0.2s, -webkit-transform 0.2s, -webkit-filter 0.2s !important;
}

@media (hover: hover) and (pointer: fine) {
  .header__announcements:hover .header__announcements-item {
    -webkit-transform: translateY(0) !important;
    transform: translateY(0) !important;
    -webkit-filter: none;
    filter: none;
    z-index: 0 !important;
  }
}

.header__announcements-item > svg path {
  stroke: unset !important;
  fill: var(--fg);
}

@media (hover: hover) and (pointer: fine) {
  .header__announcements-item:hover > svg path {
    fill: var(--bg);
  }
}

/* .header__announcements-item_inner {
  width: 100%;
  overflow: hidden;
  display: flex;
  height: 1.3em;
  align-items: center;
}

.header__announcements-item_inner>* {
  display: inline-block;
  white-space: nowrap;
  transition-timing-function: linear;
  line-height: 1;
} */

.header__announcements-item_inner {
  width: 100%;
  overflow: hidden;
  /* display: flex; */
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  align-items: center;
}

.header__announcements-item_inner .swiper-wrapper {
  transition-timing-function: linear;
}

.header__announcements-item_inner .swiper-slide {
  width: -webkit-fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
}

.header__announcements-item .swiper-slide > * {
  white-space: nowrap;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

@media (hover: hover) and (pointer: fine) {
  .header__announcements-item:hover .header__announcements-item_inner > * {
    color: var(--bg);
  }
}

.header__announcements-item > svg {
  width: 18px;
  height: 18px;
  margin: 0;
}

.header__announcements-item .aspectholder {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  padding: 0 0.875rem 0 0.375rem;
  background-color: var(--fg);
  opacity: 0;
  display: flex;
  align-items: center;
  z-index: 2;
  transition: opacity 0.2s;
}

@media (hover: hover) and (pointer: fine) {
  .header__announcements-item:hover .aspectholder {
    opacity: 1;
  }
}

.header__announcements-item .aspectholder svg {
  width: 12px;
  height: 11px;
  margin: 0;
}

.header__announcements-item > svg path,
.header__announcements-item > svg rect {
  stroke: var(--fg);
}

.header__toggle {
  display: none !important;
}

/* Timezone Section */
.timezone {
  grid-column: 1/9;
  grid-row: 2;
  display: flex;
  flex-direction: column;
  row-gap: 1.375rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.timezone__list * {
  line-height: 1;
}

.timezone__list {
  display: flex;
  flex-direction: column;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  row-gap: 0.375rem;
}

.timezone__list li {
  display: flex;
  align-items: center;
  cursor: default;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.timezone__list li > *:not(:last-child) {
  margin-right: 0.5rem;
}

.timezone__status {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  color: var(--grey);
  border: 1px solid var(--grey);
  transition: border-color 0.3s, background-color 0.3s;
}

li.open .timezone__status {
  background-color: var(--green);
  border-color: var(--green);
}

.timezone__text {
  position: relative;
}

.timezone__text > * {
  transition: opacity 0.3s, visibility 0.3s, color 0.3s;
}

.timezone__text-msg {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  white-space: nowrap;
  color: var(--grey);
}

.timezone__list li.open .timezone__text-msg {
  color: var(--green);
}

@media (hover: hover) and (pointer: fine) {
  .timezone__list li:hover .timezone__text-msg {
    opacity: 1 !important;
    visibility: visible;
  }
}

@media (hover: hover) and (pointer: fine) {
  .timezone__list li:hover .timezone__text-time {
    opacity: 0;
    visibility: hidden;
  }
}

/* Main Menu */
.header__nav {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  align-items: center;
  position: fixed;
  z-index: 10;
  top: 1rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  padding: 0.25rem;
  -webkit-column-gap: 0.125rem;
  -moz-column-gap: 0.125rem;
  column-gap: 0.125rem;
  overflow: hidden;
  -ms-overflow-style: none;
  scrollbar-width: none;
  border-radius: 40px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.16);
}

.header__nav::-webkit-scrollbar {
  display: none;
}

.header__nav::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backdrop-filter: blur(15px);
  background: rgba(255, 255, 255, 0.5);
  -webkit-backdrop-filter: blur(15px);
  -moz-backdrop-filter: blur(15px);
  -o-backdrop-filter: blur(15px);
  z-index: -1;
  overflow: hidden;
}

.button_header {
  display: flex;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  text-align: center;
  border-radius: 20px;
  transition: color 0.2s, background-color 0.2s, padding 0.2s;
}

.button_header > a {
  padding: 0.25rem 0.875rem;
  transition: padding 0.1s;
}

.header__nav:not(.hovered) .button_header.open,
.button_header.active {
  color: var(--bg);
  background-color: var(--fg);
}

@media (hover: hover) and (pointer: fine) {
  .button_header:hover {
    color: var(--bg);
    background-color: var(--fg);
  }
}

.header__nav:not(.hovered) .button_header.sub.open > a,
.button_header.sub.active > a {
  padding-right: calc(0.875rem / 2);
  transition: padding 0.1s;
}

.header__nav.hovered .button_header.sub.open > a {
  transition: padding 0.1s;
}

.button_header-menu > *:not(:last-child) {
  padding: 0.25rem calc(0.875rem / 2);
}

.button_header-menu > *:last-child {
  padding: 0.25rem 0.875rem 0.25rem calc(0.875rem / 2);
}

.button_header-menu {
  display: flex;
  align-items: center;
  overflow: hidden;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  max-width: 0;
  visibility: hidden;
  transition: max-width 0.4s, padding-left 0.3s 0.2s, visibility 0s 0.4s;
  white-space: nowrap;
}

.header__nav:not(.hovered) .button_header.open .button_header-menu,
.button_header.active .button_header-menu {
  max-width: 100vw;
  visibility: visible;
  transition: max-width 0.8s, padding-left 0.2s;
}

.header__nav.hovered .button_header.open .button_header-menu {
  transition: max-width 0.2s, padding-left 0.2s;
}

.button_header-sub {
  opacity: 0.5;
  transition: opacity 0.2s;
}

.button_header-sub.active {
  opacity: 1;
}

@media (hover: hover) and (pointer: fine) {
  .button_header-sub:hover {
    opacity: 1;
  }
}

/* Footer */

footer {
  padding: 1.875rem var(--Pg) var(--Pg) var(--Pg);
  row-gap: 4.875rem;
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  left: 0;
  z-index: 0;
}

footer a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
}

.footer__zones {
  grid-column: 1/9;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 1.875rem;
}

.footer__zones a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
}

.footer__zones li {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.footer__zones li > *:not(:last-child) {
  margin-bottom: 0.5rem;
}

.footer__zones-header {
  display: flex;
  align-items: center;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  cursor: default;
}

.footer__zones-header > *:not(:last-child) {
  margin-right: 0.5rem;
}

.footer__zones-msg {
  position: absolute;
  right: 0;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  z-index: 2;
  color: var(--grey);
  background-color: var(--bg);
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
  padding-right: 0.5rem;
}

.footer__zones li.open .footer__zones-msg {
  color: var(--green);
}

@media (hover: hover) and (pointer: fine) {
  .footer__zones li:hover .footer__zones-msg {
    opacity: 1;
    visibility: visible;
  }
}

.footer__menus {
  grid-column: 17/25;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 1.875rem;
}

.footer__menus-disclaimer {
  grid-column: 4/5;
  display: flex;
  flex-direction: column;
  row-gap: 0.375rem;
}

.footer__menus-flags {
  display: flex;
  flex-wrap: wrap;
  -webkit-column-gap: 0.313rem;
  -moz-column-gap: 0.313rem;
  column-gap: 0.313rem;
  row-gap: 0.313rem;
  padding: 0.313rem;
  background-color: var(--ac);
  border-radius: 4px;
}

.footer__menus-flags .aspectholder {
  width: 15px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.footer__menus-flags .aspectholder > * {
  width: 100%;
  height: auto;
}

.footer__disclaimer {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  row-gap: 11.25rem;
  width: 100%;
  height: 100vh;
  padding: 1.125rem var(--Pg);
  background-color: var(--fg);
  z-index: 25;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
}

.footer__disclaimer.active {
  opacity: 1;
  visibility: visible;
}

.footer__disclaimer > .aspectholder {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 25px;
}

.footer__disclaimer > .aspectholder > * {
  width: auto;
  height: 100%;
}

.footer__disclaimer > .aspectholder svg path {
  fill: var(--bg);
}

.footer__disclaimer-flags {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 1.875rem;
  width: 100%;
  z-index: 3;
}

.footer__disclaimer-flags > * {
  display: flex;
  flex-direction: column;
  row-gap: 0.625rem;
  padding: 0.625rem;
  background-color: var(--bg);
  border-radius: 6px;
}

.footer__disclaimer-flags .aspectholder {
  width: 15px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.footer__disclaimer-flags .aspectholder > * {
  width: 100%;
  height: auto;
}

.footer__disclaimer-close {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  cursor: pointer;
  z-index: 2;
}

@media (hover: hover) and (pointer: fine) {
  .footer__disclaimer-close:hover .footer__disclaimer-tooltip {
    opacity: 1;
    visibility: visible;
  }
}

.footer__disclaimer-tooltip {
  position: absolute;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  color: var(--bg);
  background: var(--fg);
  margin-left: 0.25rem;
  padding: 0.25rem 0.5rem;
  -webkit-transform: translateY(-85%);
  transform: translateY(-85%);
  border-radius: 6px;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}

footer nav {
  display: flex;
  flex-direction: column;
}

footer nav {
  display: flex;
  flex-direction: column;
}

.footer__menu > *:not(:last-child),
footer nav > *:not(:last-child) {
  margin-bottom: 0.125rem;
}

.footer__icon {
  grid-column: 1/25;
}

.footer__icon .aspectholder {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.footer__icon .aspectholder > * {
  width: 100%;
  height: 100%;
}

.footer__icon .aspectholder svg path {
  fill: var(--fg);
}

/* Blocks */

main {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  min-height: var(--Hf);
  /* padding-top: 5rem; */
}

[data-template="home"] main {
  /* padding-top: 7.25rem; */
}

main inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  /* box-shadow: 0px 10px 10px rgba(0, 0, 0, 0.08); */
  background: var(--bg);
  flex: 1 1 auto;
  background-color: var(--bg);
  z-index: 2;
  border-top: 1px solid var(--ac);
  position: relative;
}

main inner::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  box-shadow: 0px 8px 11px var(--fg);
  opacity: 0.11;
}

main inner > section {
  row-gap: 3.75rem;
  color: var(--fg);
  background-color: var(--bg);
  padding: 1.25rem var(--Pg) 3.75rem var(--Pg);
}

main section .anchor {
  position: absolute;
  top: calc(-1 * var(--Hh));
}

.block__lined {
  border-top: 1px solid var(--ac);
  padding-top: 1rem;
}

.block__inner {
  grid-column: 1/25;
  display: grid;
  grid-template-columns: repeat(24, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 1rem;
}

.block__full {
  grid-column: 1/25;
  display: flex;
  flex-direction: column;
  row-gap: 0.75rem;
}

.block__left {
  grid-column: 1/10;
  display: flex;
  flex-direction: column;
  row-gap: 0.75rem;
}

.block__right {
  grid-column: 13/25;
  display: flex;
  flex-direction: column;
  row-gap: 0.75rem;
}

.block__right-h {
  grid-column: 13/22;
  display: flex;
  flex-direction: column;
  row-gap: 0.75rem;
}

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

.block__header > * {
  display: inline;
}

.block__header > *:not(:last-child) {
  margin-right: 0.375rem;
}

.block__left-h {
  grid-column: 1/13;
}

.block__left > .button_pill {
  margin-top: 1rem;
}

.block__sticky {
  position: -webkit-sticky;
  position: sticky;
  /* top: calc(var(--Hh) + 3.75rem + 0.5rem + 1.25rem + 2.125rem); */
  /* top: calc(var(--Hh) + 5rem + 1.25rem); */
  top: var(--Hh);
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.block__ctas {
  display: flex;
  flex-direction: column;
  row-gap: 0.25rem;
}

.block__ctas:not(:first-child) {
  margin-top: 1.75rem;
}

/* Text Block */
.text__items {
  display: flex;
  flex-direction: column;
  row-gap: 2.5rem;
}

.text__item {
  display: flex;
  flex-direction: column;
  row-gap: 0.375rem;
}

.text__ctas {
  display: flex;
  flex-wrap: wrap;
  -webkit-column-gap: 0.375rem;
  -moz-column-gap: 0.375rem;
  column-gap: 0.375rem;
  row-gap: 0.375rem;
}

.text__stats {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 1.25rem;
}

.text__stats > * {
  display: flex;
  flex-direction: column;
}

.text__stats > *:nth-child(odd) {
  grid-column: 1/4;
}

.text__stats > *:nth-child(even) {
  grid-column: 5/8;
}

/* Works Block */
.works__scroll {
  grid-column: 1/25;
  white-space: nowrap;
  width: var(--Wf);
  margin-left: var(--Ml);
  padding-left: var(--Pg);
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.works__scroll::-webkit-scrollbar {
  display: none;
}

.works__scroll .swiper-slide {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.works__scroll .work-card {
  display: block;
  white-space: normal;
  min-width: 36.438rem;
  width: 40.486111vw;
  transition: width 0.4s 0.2s, min-width 0.4s 0.2s;
}

.works__scroll .work-card.active {
  min-width: 73.625rem;
  transition: width 0.6s 0.3s, min-width 0.6s 0.3s;
}

.works__scroll .swiper-slide {
  padding-right: var(--Pm);
}

.works__scroll .work-card__inner {
  min-height: 36.438rem;
  height: 40.486111vw;
}

/* Spacer Block */
[data-type="spacerblock"] {
  display: block;
  padding: 0;
}

/* Media Block */
[data-type="mediablock"] {
  row-gap: 1.5rem;
  padding-bottom: 3.75rem;
}

.media__container {
  grid-column: 1/25;
  width: 100%;
  display: flex;
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
}

.media__container > * {
  flex: 1 1 auto;
  width: 100%;
}

.media__container .aspectholder {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  border-radius: 8px;
  overflow: hidden;
}

.media__container .aspectholder > * {
  width: 100%;
  height: 100%;
}

.media__caption {
  grid-column: 1/8;
  margin-top: -0.75rem;
}

/* Cards Block */
.cards__container {
  width: var(--Wf);
  margin-left: var(--Ml);
  padding: 0 var(--Pg);
  overflow: hidden;
}

.cards__list {
  display: grid;
  grid-template-columns: repeat(var(--grid), 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
}

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

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

.cards__list > * {
  /* flex: 1 1 auto; */
  width: calc((100vw - var(--Pg) - (var(--Pm) * var(--grid))) / var(--grid));
  height: 100%;
  max-height: var(--initHeight);
  transition: width 0.4s 0.2s, max-height 0.4s 0.2s, height 0.4s 0.2s;
}

.cards__list > *.expand.active {
  /* width: calc((100vw - var(--Pg) - var(--Pm)) / 3 * 2); */
  width: calc(
    (100vw - var(--Pg) - (var(--Pm) * (var(--grid) - 1))) / var(--grid) *
      (var(--grid) - 1)
  );
  height: 100vh;
  max-height: 565px;
  transition: width 0.6s 0.3s, max-height 0.6s 0.3s, height 0s;
}

.cards__list li,
.cards__item {
  position: relative;
}

.cards__inner {
  /* width: 100%; */
  height: 100%;
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 3.75rem;
  grid-auto-rows: -webkit-min-content 1fr;
  grid-auto-rows: min-content 1fr;
  padding: 0.5rem 0.75rem 1rem 0.75rem;
  border-radius: 8px;
  position: relative;
  background-color: var(--ac);
  /* transition: all 0.4s 0.2s; */
}

.cards__item.expand.active {
  row-gap: 5rem;
  /* pointer-events: none; */
}

.cards__button {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  /* background: red; */
}

.cards__item.expand.active .cards__button {
  pointer-events: none;
  display: none;
}

/* .cards__item.expand.active .cards__inner {
  overflow: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  transition: all 0.6s 0.3s;
} */

.cards__item.expand.active .cards__inner::-webkit-scrollbar {
  display: none;
}

.cards__inner,
button + .cards__inner {
  transition: all 0.2s;
}

.cards__item.expand.active a.cards__inner,
.cards__item.expand.active button + .cards__inner {
  color: var(--bg);
  background-color: var(--fg);
}

@media (hover: hover) and (pointer: fine) {
  .cards__item:hover a.cards__inner,
  .cards__item:hover button + .cards__inner {
    color: var(--bg);
    background-color: var(--fg);
  }
}

.cards__inner-heading {
  grid-column: 1/9;
}

.cards__inner-body {
  grid-column: 1/7;
  grid-row: 2;
  align-self: flex-end;
  transition: opacity 0.3s 0.6s, visibility 0.3s 0.6s;
}

.cards__container.flex_start .cards__inner-body {
  align-self: flex-start;
}

.cards__item.expand.active .cards__inner-body {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}

.cards__inner-ebody {
  grid-column: 1/9;
  grid-row: 2;
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  padding-bottom: calc(9px + 3rem);
  opacity: 0;
  visibility: hidden;
  max-height: 0;
  overflow: hidden;
  transition: opacity 0.3s, visibility 0.3s, max-height 0.3s;
}

.cards__item.expand.active .cards__inner-ebody {
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.cards__item.expand.active .cards__inner-ebody::-webkit-scrollbar {
  display: none;
}

.cards__inner-ebody > div {
  grid-column: 1/4;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.cards__inner-ebody > ul {
  grid-column: 5/9;
}

.cards__inner-ebody .list__accordion details,
.cards__inner-ebody.list__accordion details[open] {
  color: var(--fg) !important;
  background-color: var(--ac) !important;
}

.cards__inner-ebody .list__accordion details:hover {
  background-color: var(--bg) !important;
}

.cards__inner-ebody
  .list__accordion
  details:hover
  summary
  .aspectholder
  svg
  path {
  stroke: var(--fg);
}

.cards__inner-ebody
  .list__accordion
  details[open]
  summary
  .aspectholder
  svg
  path {
  stroke: var(--fg);
}

.cards__item.expand.active .cards__inner-ebody {
  opacity: 1;
  visibility: visible;
  max-height: 100vh;
  transition: opacity 0.3s 0.8s, visibility 0.3s 0.8s, max-height 0.3s 0.8s;
}

.cards__inner-icon {
  grid-column: 8/9;
  align-self: flex-end;
  justify-self: flex-end;
  width: 13px;
  height: 8px;
}

.cards__inner-icon.arrow_down {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.cards__inner-icon svg {
  width: 100%;
  height: 100%;
}

.cards__inner-icon svg path {
  stroke: var(--bg);
  opacity: 0;
  transition: all 0.2s;
}

@media (hover: hover) and (pointer: fine) {
  .cards__item:hover a.cards__inner .cards__inner-icon svg path {
    opacity: 1;
  }
}

.cards__inner-expand {
  grid-column: 1/9;
  align-self: flex-end;
  justify-self: flex-end;
  position: absolute;
  bottom: 0;
  right: -0.75rem;
  padding: 1rem 0.75rem;
  z-index: 2;
  width: calc(100% + 1.5rem);
  display: flex;
  justify-content: flex-end;
  pointer-events: none;
  transition: all 0.2s;
  border-radius: 8px;
}

.cards__item.active .cards__inner-expand {
  background-color: var(--fg);
  pointer-events: unset;
  transition: all 0.4s 0.2s;
}

.cards__inner-expand .aspectholder {
  width: 9px;
  height: 9px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  opacity: 0;
  transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, transform 0.3s;
  transition: opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
}

@media (hover: hover) and (pointer: fine) {
  .cards__item:hover .cards__inner-expand .aspectholder {
    opacity: 1;
  }
}

.cards__item.active .cards__inner-expand .aspectholder {
  opacity: 1;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  transition: opacity 0.3s, -webkit-transform 0.3s 0.6s;
  transition: opacity 0.3s, transform 0.3s 0.6s;
  transition: opacity 0.3s, transform 0.3s 0.6s, -webkit-transform 0.3s 0.6s;
}

@media (hover: hover) and (pointer: fine) {
  .cards__item.active .cards__inner-expand:hover .aspectholder {
    opacity: 0.5;
  }
}

.cards__inner-expand .aspectholder svg {
  width: 100%;
  height: 100%;
}

.cards__inner-expand .aspectholder svg path {
  stroke: var(--fg);
  transition: all 0.2s;
}

@media (hover: hover) and (pointer: fine) {
  .cards__item:hover
    button
    + .cards__inner
    .cards__inner-expand
    .aspectholder
    svg
    path {
    stroke: var(--bg);
  }
}

.cards__item.expand.active
  button
  + .cards__inner
  .cards__inner-expand
  .aspectholder
  svg
  path {
  stroke: var(--bg);
}

/* List Block */
.list__accordion {
  display: flex;
  flex-direction: column;
  row-gap: 0.375rem;
}

.list__accordion details {
  background-color: var(--ac);
  transition: all 0.2s;
  border-radius: 8px;
}

.list__accordion details[open] {
  color: var(--bg);
  background-color: var(--fg);
}

.list__accordion details[open] summary .aspectholder svg path {
  stroke: var(--bg);
}

@media (hover: hover) and (pointer: fine) {
  .list__accordion details:hover {
    color: var(--bg);
    background-color: var(--fg);
  }
}

@media (hover: hover) and (pointer: fine) {
  .list__accordion details:hover summary .aspectholder svg path {
    stroke: var(--bg);
  }
}

.list__accordion summary > div {
  padding: 0.75rem;
}

.list__accordion details > div {
  padding: 0 1.5rem 0 0.75rem;
}

.list__accordion details > div > *:first-child {
  padding-top: 0.25rem;
}

.list__accordion details > div > *:last-child {
  padding-bottom: 0.75rem;
}

.list__works {
  white-space: nowrap;
  width: var(--Wg);
  padding-right: var(--Pg);
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.list__works::-webkit-scrollbar {
  display: none;
}

.list__works .work-card {
  display: inline-block;
  white-space: normal;
  width: 36.319444vw;
}

.list__works .work-card:not(:last-child) {
  margin-right: var(--Pm);
}

.list__works .work-card__inner {
  height: 36.319444vw;
}

/* Icons Block */
.icons__icons {
  display: block;
  width: var(--Wf);
  margin-left: var(--Ml);
  overflow: hidden;
}

.icons__icons .swiper-wrapper {
  transition-timing-function: linear;
}

.icons__icons .swiper-slide {
  width: -webkit-fit-content !important;
  width: -moz-fit-content !important;
  width: fit-content !important;
}

.icons__icons .swiper-slide > * {
  width: 255px;
  height: 100px;
  min-height: 3.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--ac);
  border-radius: 5px;
  overflow: hidden;
  padding: 2.5rem 1rem;
  white-space: normal;
  position: relative;
  transition: background-color 0.3s;
}

@media (hover: hover) and (pointer: fine) {
  .icons__icons a:hover {
    background-color: var(--fg);
  }

  .icons__icons a:hover .aspectholder svg path {
    fill: var(--bg);
  }

  .icons__icons a:hover > svg path {
    stroke: var(--bg);
  }
}

.icons__icons .aspectholder {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 100%;
  max-width: 100%;
  display: flex;
}

.icons__icons .aspectholder:not(:last-child) {
  margin-right: 0.25rem;
}

.icons__icons .aspectholder > * {
  width: auto;
  height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.icons__icons .button_expand > svg {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
}

/* Clients Block */
.clients__tags {
  display: flex;
  flex-wrap: wrap;
  -webkit-column-gap: 0.375rem;
  -moz-column-gap: 0.375rem;
  column-gap: 0.375rem;
  row-gap: 0.25rem;
}

.clients__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 0.25rem;
}

.clients__tags button,
.clients__list a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.clients__list.active li {
  opacity: 0.2;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  pointer-events: none;
}

.clients__list li {
  transition: color 0.2s, background-color 0.2s, border-color 0.2s, opacity 0.2s !important;
}

/* Articles Block */
.articles__container {
  grid-column: 1/25;
  display: grid;
  grid-template-columns: repeat(24, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 2.75rem;
}

.articles__item {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.articles__item.article_small {
  grid-column: span 6 !important;
}

.articles__item.article_med {
  grid-column: span 8 !important;
}

.articles__item.article_large {
  grid-column: span 12 !important;
}

.articles__item-media {
  position: relative;
  width: 100%;
  height: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  transition: all 0.2s;
}

.articles__item-media::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background-color: var(--black);
  opacity: 0;
  border-radius: 6px;
  transition: all 0.2s;
}

@media (hover: hover) and (pointer: fine) {
  .articles__item:hover .articles__item-media::after {
    opacity: 0.2;
  }
}

.articles__item-media .aspectholder {
  width: 100%;
  height: 100%;
}

.articles__item-media .aspectholder > * {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 6px;
}

.articles__item-meta {
  /* display: flex; */
  flex-wrap: wrap;
  -webkit-column-gap: 0.5rem;
  -moz-column-gap: 0.5rem;
  column-gap: 0.5rem;
}

.articles__item-meta > * {
  display: inline;
}

.articles__item-meta > *:not(:last-child) {
  margin-right: 0.5rem;
}

/* .articles__item.article_small .aspectholder {
  height: 24.930556vw !important;
}

.articles__item.article_med .aspectholder {
  height: 32.916667vw !important;
}

.articles__item.article_large .aspectholder {
  height: 50.347222vw !important;
} */

/* Pages */

/* News Page */
.news {
  row-gap: 1.625rem;
}

.news .articles__item.inactive {
  display: none;
}

.news .articles__item:nth-child(2),
.news .articles__item:nth-child(3) {
  grid-column: span 6;
}

.news .articles__item:nth-child(5n + 4),
.news .articles__item:nth-child(5n + 5),
.news .articles__item:nth-child(5n + 6) {
  grid-column: span 8;
}

.news .articles__item:nth-child(1),
.news .articles__item:nth-child(5n + 7),
.news .articles__item:nth-child(5n + 8) {
  grid-column: span 12;
}

/* .news .articles__item:nth-child(2) .aspectholder,
.news .articles__item:nth-child(3) .aspectholder {
  height: 24.930556vw;
}

.news .articles__item:nth-child(5n + 4) .aspectholder,
.news .articles__item:nth-child(5n + 5) .aspectholder,
.news .articles__item:nth-child(5n + 6) .aspectholder {
  height: 32.916667vw;
}

.news .articles__item:nth-child(1) .aspectholder,
.news .articles__item:nth-child(5n + 7) .aspectholder,
.news .articles__item:nth-child(5n + 8) .aspectholder {
  height: 50.347222vw;
} */

/* Article Page */
.article-header {
  padding-bottom: 1.25rem;
}

.article-footer__meta {
  display: flex;
  flex-direction: column;
  row-gap: 0.375rem;
}

.article-footer__meta li {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 0.375rem;
  align-items: center;
}

.article-footer__meta li > p {
  grid-column: 1/2;
}

.article-footer__meta li > div {
  grid-column: 2/4;
  display: flex;
  flex-wrap: wrap;
  -webkit-column-gap: 0.25rem;
  -moz-column-gap: 0.25rem;
  column-gap: 0.25rem;
  row-gap: 0.25rem;
}

/* Works Page */
.works {
  row-gap: 3.5rem;
}

.works .block__full {
  grid-column: 1/22;
}

.works__toggle {
  grid-column: 23/25;
  justify-self: flex-end;
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.works__toggle > * {
  grid-column: 1/2;
  grid-row: 1;
}

.works.grid-2 .works__toggle > *:nth-child(2),
.works.grid-4 .works__toggle > *:nth-child(1) {
  display: none;
}

.works.grid-2 .works__toggle > *:nth-child(1),
.works.grid-4 .works__toggle > *:nth-child(2) {
  display: flex;
}

.works__toggle .button_pill {
  padding: 0.25rem 0.75rem;
}

.works__toggle .button_pill svg {
  margin-left: 0;
  width: 20px;
  height: 20px;
}

.works__toggle .button_ac svg path,
.works__toggle .button_ac svg rect {
  stroke: none;
  fill: var(--fg);
}

.works__toggle .button_ac:hover svg path,
.works__toggle .button_ac:hover svg rect {
  fill: var(--bg);
}

.works__list {
  grid-column: 1/25;
  grid-row: 2;
  width: var(--Wf);
  margin-left: var(--Ml);
  padding: 0 var(--Pg);
  overflow: hidden;
  transition: opacity 0.3s, visibility 0.3s, justify-content 0s 0.6s;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}

.works.grid-2 .works__list-2,
.works.grid-4 .works__list-4 {
  opacity: 1;
  visibility: visible;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  pointer-events: unset;
}

.works.grid-2 .works__list-4,
.works.grid-4 .works__list-2 {
  opacity: 0;
  visibility: hidden;
  height: 0;
  pointer-events: none;
}

.works__item {
  display: grid;
  grid-auto-rows: auto;
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 2rem;
}

.works__list-2 .works__item {
  grid-template-columns: repeat(2, 1fr);
}

.works__list-4 .works__item {
  grid-template-columns: repeat(4, 1fr);
}

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

.work-card {
  position: relative;
  transition: width 0.4s 0.2s;
  overflow: hidden;
}

.works__list-2 .work-card {
  width: calc(50vw - var(--Pg) - var(--Ph));
}

.works__list-4 .work-card {
  width: calc(25vw - var(--Pg) - (var(--Pm) / 3));
}

.work-card.active {
  width: 81.805556vw;
  transition: width 0.6s 0.3s;
}

.works__list-4 .work-card.active {
  width: calc(75vw - var(--Pg) - (var(--Pm) / 2));
}

.work-card > *:not(:last-child) {
  margin-bottom: 0.5rem;
}

.work-card__inner {
  width: 100%;
  /* height: 37.152778vw; */
  max-height: calc((100vw - var(--Pd) - var(--Pm)) / 2);
  height: 100vh;
  position: relative;
  border-radius: 6px;
  overflow: hidden;
}

.works__list-4 .work-card__inner {
  max-height: calc(25vw - var(--Pg) - (var(--Pm) / 3));
  transition: max-height 0.4s 0.2s;
}

.works__list-4 .work-card.active .work-card__inner {
  max-height: calc((100vw - var(--Pd) - var(--Pm)) / 2);
  transition: max-height 0.6s 0.3s;
}

.work-card h3 {
  width: 100%;
  white-space: nowrap;
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.work-card h3::-webkit-scrollbar {
  display: none;
}

.work-card__image {
  width: 100%;
  height: 100%;
  position: relative;
  background-color: var(--ac);
  display: block;
}

.work-card.active .work-card__image {
  pointer-events: none;
}

.work-card__image .aspectholder,
.work-card__image .aspectholder > * {
  width: 100%;
  height: 100%;
  transition: all 0.5s;
  pointer-events: none;
}

.work-card__image .aspectholder > * {
  -o-object-fit: cover;
  object-fit: cover;
}

.work-card__image .aspectholder:nth-of-type(2) {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s;
  z-index: 2;
}

@media (hover: hover) and (pointer: fine) {
  .work-card:hover .work-card__image .aspectholder:nth-of-type(2) {
    opacity: 1;
    visibility: visible;
  }
}

.work-card__inner {
  position: relative;
}

.work-card__btn {
  display: flex;
  flex-wrap: wrap;
  -webkit-column-gap: 0.5rem;
  -moz-column-gap: 0.5rem;
  column-gap: 0.5rem;
  row-gap: 0.5rem;
  justify-content: space-between;
  position: absolute;
  top: calc((1rem * 1.4) + 0.5rem + 0.625rem + 4px);
  /* transform: translateY(calc(100% + 0.625rem)); */
  left: 0.625rem;
  z-index: 4;
  margin-bottom: 0 !important;
  width: calc(100% - 1.25rem);
}

.work-card__btn > div {
  display: flex;
  -webkit-column-gap: 0.5rem;
  -moz-column-gap: 0.5rem;
  column-gap: 0.5rem;
}

.work-card__btn-site {
  opacity: 0;
  transition: all 0.3s;
}

.work-card:hover .work-card__btn-site {
  opacity: 1;
}

.work-card__btn .button_pill {
  padding: 0.25rem 0.625rem;
  white-space: nowrap;
}

.work-card.active .work-card__btn-site {
  opacity: 1;
}

@media (hover: hover) and (pointer: fine) {
  .work-card:hover .work-card__btn-site {
    opacity: 1;
  }
}

.work-card__btn-inactive,
.work-card.active .work-card__btn-active {
  display: flex;
  align-items: center;
  justify-content: center;
}

.work-card.active .work-card__btn-inactive,
.work-card__btn-active {
  display: none;
}

.work-card__info {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 5rem 0.625rem 1.25rem 0.625rem;
  border-radius: 6px;
  color: var(--bg);
  background-color: transparent;
  z-index: 3;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 3.75rem;
  overflow: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s 0.6s;
}

.work-card.active .work-card__info {
  opacity: 1;
  visibility: visible;
  background-color: var(--fg);
  transition: all 0.3s;
}

.work-card__info::-webkit-scrollbar {
  display: none;
}

.work-card__info.spaced {
  padding-bottom: 7.5rem;
}

.work-card__info > * {
  opacity: 0;
  transition: all 0.3s;
}

.work-card.active .work-card__info > * {
  opacity: 1;
  transition: all 0.3s 0.9s;
}

.work-card__info-text {
  grid-column: 1/3;
  grid-row: 1;
  max-width: 80ch;
}

.work-card__info-data {
  grid-column: 2/3;
  grid-row: 2;
  display: flex;
  flex-direction: column;
  row-gap: 1.5rem;
}

.work-card__info-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: auto;
  -webkit-column-gap: 2.25rem;
  -moz-column-gap: 2.25rem;
  column-gap: 2.25rem;
  row-gap: 1.5rem;
}

.work-card__info-stack {
  display: flex;
  flex-direction: column;
  row-gap: 0.7rem;
}

.work-card__info-items {
  grid-column: 1/2;
  grid-row: 2;
  display: flex;
  flex-direction: column;
  row-gap: 0.7rem;
}

.work-card__info-quote {
  grid-column: 1/3;
  grid-row: 3;
  display: flex;
  flex-direction: column;
  row-gap: 0.375rem;
  max-width: 80ch;
}

.work-card__info-link {
  position: absolute;
  bottom: 0;
  right: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: flex-end;
  -webkit-column-gap: 0.25rem;
  -moz-column-gap: 0.25rem;
  column-gap: 0.25rem;
  row-gap: 0.25rem;
  width: 100%;
  background-color: var(--fg);
  padding: 0.625rem;
  z-index: 20;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
  border-radius: 6px;
  overflow: hidden;
}

.work-card.active .work-card__info-link {
  opacity: 1;
  visibility: visible;
  transition: all 0.3s 0.9s;
}

/* Contact Page */
.contact > * {
  row-gap: 3.75rem;
}

.contact__right {
  grid-column: 13/25;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
}

.contact__right > div {
  grid-column: 1/10;
  visibility: hidden;
  opacity: 0;
}

.contact__socials > * {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
}

.contact__socials > *:not(:last-child) {
  margin-bottom: 0.25rem;
}

.contact__socials > *.spaced {
  margin-bottom: 2.5rem;
}

.contact__socials h3 {
  grid-column: 1/2;
}

.contact__socials nav {
  grid-column: 2/4;
  display: flex;
  flex-wrap: wrap;
  -webkit-column-gap: 0.25rem;
  -moz-column-gap: 0.25rem;
  column-gap: 0.25rem;
  row-gap: 0.25rem;
}

.contact__socials .form_embed,
.contact__socials form {
  grid-column: 2/4;
}

.contact__form-success {
  grid-column: 1/13;
}

.contact__form {
  grid-column: 1/13;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 1rem;
}

.contact__form ol {
  grid-column: 1/4;
  display: flex;
  flex-direction: column;
  margin-bottom: 0 !important;
}

.contact__form ol > *:not(:last-child) {
  margin-bottom: 3.5rem;
}

.contact__form li {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: 1.5rem;
}

.contact__form li h4 {
  grid-column: 1/2;
  display: flex;
}

.contact__form li h4 span {
  width: 1.875rem;
  margin-right: 0.375rem;
}

.contact__form li > div {
  grid-column: 2/4;
}

.contact__form li > div > *:not(:last-child) {
  margin-bottom: 0.75rem;
}

.contact__form .form_submit {
  grid-column: 2/4;
  margin-top: 0;
  justify-self: flex-end;
}

.contact__form .form_submit button[disabled] {
  opacity: 0.5;
  pointer-events: none;
}

.contact .footer__zones {
  grid-template-columns: repeat(3, 1fr);
  row-gap: 1.875rem;
}

/* Bio Page */
.bio {
  row-gap: 3.75rem;
  flex: 1 1 auto;
  padding-bottom: var(--Pg);
}

.bio .contact__form {
  row-gap: 1.5rem;
}

.bio__featured {
  position: absolute;
  right: 0;
  bottom: var(--Pg);
  grid-column: 17/25;
  display: flex;
  flex-direction: column;
  width: 100%;
}

.bio__featured > *:not(:last-child) {
  margin-bottom: 0.125rem;
}

.bio__featured .work-card {
  width: 100%;
}

.bio__featured .work-card__inner {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  aspect-ratio: 1/1;
}

/* Payments Page */
.payment__items {
  display: flex;
  flex-direction: column;
  row-gap: 4rem;
}

.payment__items li {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
}

.payment__items li h4 {
  grid-column: 1/2;
}

.payment__items li > div {
  grid-column: 2/4;
}

.payment .payment__items li > div {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: var(--Pd);
}

/* text pills block */
.pill_pill {
  display: flex;
  padding: 4px 10px;
  flex-direction: column;
  align-items: flex-start;
  border-radius: 20px;
  background: var(--Greys-NT-Grey-30, #4d4d4d);
  color: var(--white);
  width: fit-content;
}
.text-pills_block {
  display: grid;
  grid-template-columns: repeat(24, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: var(--Pd);
  padding: var(--Pg);
}
.text-pills_block_heading {
  grid-column: 1/13;
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}
.text-pills_block_items {
  grid-column: 16/25;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}
.text-pills_block_items-item {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
}
.block__item_pills {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  -webkit-column-gap: 0.25rem;
  -moz-column-gap: 0.25rem;
  column-gap: 0.25rem;
  row-gap: 0.25rem;
}

/* offerings block */
.offerings_block_offerings {
  display: flex;
  flex-direction: row;
  column-gap: var(--Pm);
  grid-column: 1/-1;
}
.offerings_block_offering {
  flex: 1;
  display: flex;
  flex-direction: column;
  row-gap: var(--Pm);
  /* width: 100%; */
  height: 100%;
  /* display: grid; */
  padding: 0.5rem 0.75rem 1rem 0.75rem;
  border-radius: 8px;
  position: relative;
  background-color: var(--ac);
  row-gap: 2rem;
}
.offerings_block_offering_header {
  display: flex;
  flex-direction: column;
  row-gap: 3rem;
}
.offerings_block_offering_list {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
}
.offerings_block_offering_list_item {
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
}
.offerings_block_offering_list_item svg {
  width: 10px;
  height: 10px;
}
.offerings_block_offering_list_cta {
  padding-top: 1rem;
}
.offerings_block_offering_list_cta button {
  width: 100%;
  justify-content: center;
}
.opacity_75 {
  color: var(--bc);
}
/* shakedown page */

[data-template="shakedown"] header {
  padding: 1rem var(--Pg);
}
.shakedown_hero {
  position: relative;
  margin-bottom: 148px;
}
.shakedown_hero_image {
  width: 100%;
  height: 100%;
  aspect-ratio: 1.8;
  /* grid-column: 1/-1; */
}

.shakedown_hero_image .aspectholder {
  width: 100%;
  height: 100%;
  /* border: 1px solid #f0f0f051; */
}
.shakedown_hero_image .aspectholder * {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* opacity: 0; */
}

.shakedown_hero_content {
  position: absolute;
  display: grid;
  grid-template-columns: repeat(24, 1fr);
  -webkit-column-gap: var(--Pm);
  -moz-column-gap: var(--Pm);
  column-gap: var(--Pm);
  row-gap: var(--Pd);
  padding: var(--Pg);
  z-index: 10;
  color: var(--white);
  mix-blend-mode: difference;
}
.shakedown_hero_content_inner {
  grid-column: 1/11;
  padding-top: 148px;
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}
.shakedown_hero_content_inner .hc {
  opacity: 0.5;
  cursor: help;
  transition: opacity 0.4s;
}
.shakedown_hero_content_inner .extraText {
  opacity: 0.5;
}
.shakedown_hero_content_inner .hc:hover {
  opacity: 0.2;
}
.shakedown-btns {
  display: flex;
  column-gap: var(--Pm);
  padding-top: 2rem;
}

.shakedown_hero_overlay {
  position: absolute;
  display: flex;
  width: fit-content;
  padding: 8px;
  align-items: flex-start;
  gap: 8px;
  border-radius: 8px;
  background: var(--Button-BG-Button, #f0f0f051);
  backdrop-filter: blur(7.5px);
  z-index: 20;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s, visibility 0.4s;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.16);
}
.shakedown_hero_overlay.active {
  opacity: 1;
  visibility: visible;
}
@media (max-width: 768px) {
  .shakedown_hero_overlay {
    inset: unset !important;
    bottom: 70px !important;
    left: 10px !important;
    width: calc(100% - 20px) !important;
  }
  .shakedown_hero_overlay.active {
    opacity: 1;
    inset: unset !important;
    visibility: visible;
    bottom: 70px !important;
    left: 10px !important;
    width: calc(100% - 20px) !important;
  }
}
.shakedown_hero_overlay_content {
  color: var(--black);
  width: 304px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 120px;
}
.shakedown_hero_overlay_image {
  height: 100%;
  width: 120px;
  aspect-ratio: 1/1;
}
.shakedown_hero_overlay_image .aspectholder {
  width: 100%;
  height: 100%;
}
.shakedown_hero_overlay_image .aspectholder * {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Shakedown form */
.shakedown_form,
.shakedown_breakdown {
  position: fixed;
  bottom: 12px;
  right: 12px;
  width: calc(100% - 24px);
  height: auto;
  max-width: 667px;
  /* background-color: var(--white); */
  z-index: 9999;
  border-radius: 8px;
  /* Blur & Shadow */
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.16);
  backdrop-filter: blur(15px);
  background: var(--white);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.16);
  padding: 12px;
  transform: translateY(120%);
  transition: transform 0.5s;
  min-height: 740px;
}
.bg,
.bg_bd {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}
.bg.active,
.bg_bd.active {
  opacity: 1;
  visibility: visible;
}
.shakedown_form.active,
.shakedown_breakdown.active {
  transform: translateY(0);
}
.shakedown_form_content_inner,
.shakedown_breakdown_content_inner {
  display: flex;
  flex-direction: column;
  row-gap: 3rem;
}

.form_group {
  padding: 3rem 0;
  border-top: 1px solid var(--ac);
  display: flex;
  flex-direction: row;
  column-gap: var(--Pm);
  row-gap: var(--Pd);
}
.form_group_title {
  flex: 1;
}
.form_group_title h3 {
  display: flex;
  column-gap: 0.5rem;
}
.form_group_fields {
  flex: 2;
  display: flex;
  flex-direction: column;
  row-gap: var(--Pm);
}
.form_group_fields_cta {
  display: flex;
  justify-content: flex-end;
  padding-top: 2rem;
}

.form_success {
  /* display: flex; */
  display: none;
  flex-direction: column;
  row-gap: 1rem;
  align-items: flex-start;
  justify-content: flex-start;
  /* text-align: center; */
}

.shakedown_form.success .form_success {
  display: flex;
}
.shakedown_form.success .form_form {
  display: none;
}

.close_shakedown.button_pill {
  /* width: 20px;
  height: 14px; */
  /* padding: 0; */
  position: absolute;
  top: 12px;
  right: 12px;
}
.close_shakedown.button_pill svg {
  max-width: unset;
  opacity: 1;
  transition: all 0.2s;
  margin-left: 0 !important;
}

.shakedown_breakdown_content,
.shakedown_breakdown_content_inner {
  padding-bottom: 2.5rem;
}

.shakedown_breakdown_content_inner_heading {
  padding-bottom: 2.5rem;
  border-bottom: 1px solid var(--ac);
}
.audit_steps {
  display: flex;
  flex-direction: column;
  row-gap: 2.5rem;
}

.audit_step {
  display: flex;
  column-gap: var(--Ph);
}
.audit_step_number {
  flex: 2;
}
.audit_step_number span {
  width: 30px;
  display: inline-block;
}
.audit_step_body {
  flex: 5;
}
.shakedown_breakdown_content_inner_cta {
  display: flex;
  justify-content: flex-end;
}

@media (max-width: 768px) {
  .shakedown_hero {
    margin-bottom: 2.5rem;
  }
  .shakedown_hero_content {
    position: relative;
  }
  .shakedown_hero_content_inner {
    grid-column: 1/-1;
  }
  .shakedown_hero_image {
    aspect-ratio: 1/1;
    padding: var(--Pg);
    padding-top: 2rem;
  }
  .shakedown_hero_image .aspectholder {
    border-radius: 8px;
    overflow: hidden;
  }
  .text-pills_block_heading,
  .text-pills_block_items {
    grid-column: 1/-1;
  }
  .offerings_block_offerings {
    flex-direction: column;
    row-gap: var(--Pg);
  }
  .shakedown_breakdown_content_inner_heading {
    padding-bottom: 1rem;
  }
  .form_group {
    flex-direction: column;
    padding: 2rem 0;
  }
  .shakedown_form,
  .shakedown_breakdown {
    width: 100%;
    inset: 0;
    width: 100%;
    height: 100dvh;
    border-radius: 0;
    max-height: unset;
    transition: transform 0.3s;
    -webkit-transform: translateX(0);
    overflow: scroll;
    transform: translateX(120%) translateY(0%);
  }
  .shakedown_form.active,
  .shakedown_breakdown.active {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .shakedown_form_content_inner,
  .shakedown_breakdown_content_inner {
    display: flex;
    flex-direction: column;
    row-gap: 1rem;
  }
  .form_embed form > div,
  .form_form {
    row-gap: 0rem;
  }
  .shakedown_breakdown .form_group {
    flex-direction: column;
  }
  .shakedown_hero_content_inner {
    padding-top: 72px;
  }

  .audit_step {
    flex-direction: column;
    row-gap: 1rem;
  }

  .shakedown_breakdown_content,
  .shakedown_breakdown_content_inner,
  .shakedown_form_content_inner,
  .shakedown_form_content {
    padding-bottom: 3.5rem;
  }
}
