@charset "UTF-8";
:root {
  --base-font-size: 1rem;
  --base-font-family: sans-serif;
  --base-line-height: 1.5rem;
  --heading-font-family: var(--base-font-family);
  --input-color: var(--bodytext-color); }

/* stylelint-disable selector-max-universal */
*,
*::after,
*::before {
  box-sizing: inherit; }

/* stylelint-enable */
html {
  /* stylelint-disable property-no-vendor-prefix */
  box-sizing: border-box;
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  /* stylelint-enable */ }

body {
  line-height: var(--base-line-height);
  margin: 0;
  font-family: var(--base-font-family);
  font-size: var(--base-font-size); }

main {
  display: block; }

h1,
h2,
h3,
h4,
h5,
h6,
.headline {
  font-family: var(--heading-font-family); }

img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  border-style: none;
  vertical-align: middle; }

button,
input,
select,
textarea {
  color: var(--input-color); }

[type="text"],
[type="password"],
[type="date"],
[type="datetime"],
[type="datetime-local"],
[type="month"],
[type="week"],
[type="email"],
[type="number"],
[type="search"],
[type="tel"],
[type="time"],
[type="url"],
[type="color"],
textarea {
  border-radius: 0; }

button {
  cursor: pointer; }

figure {
  margin: 0; }

iframe {
  border: 0; }

/*
* Select all text inputs
*/
/*
	Breakpoint mixin based on the $breakpoints sass-map
	Add 'up', 'only' or 'down' to specify a range
	Examples:
	    @include breakpoint(sm only) {} -> (min-widh: 310px) and (max-width: 459px)
	    @include breakpoint(md down) {} -> (max-width: 459px)
*/
/* stylelint-disable max-nesting-depth */
body {
  /* stylelint-disable-next-line selector-no-qualifying-type */ }
  body::after {
    content: "xs:0&sm:320px&md:460px&lg:768px&xl:1024px";
    display: none; }
  @media (min-width: 0) {
    body.development::before {
      content: "xs";
      position: absolute;
      top: 0;
      right: 0;
      padding: var(--space-xs);
      background-color: var(--primary-color);
      font-size: 14px; } }
  @media (min-width: 320px) {
    body.development::before {
      content: "sm";
      position: absolute;
      top: 0;
      right: 0;
      padding: var(--space-xs);
      background-color: var(--primary-color);
      font-size: 14px; } }
  @media (min-width: 460px) {
    body.development::before {
      content: "md";
      position: absolute;
      top: 0;
      right: 0;
      padding: var(--space-xs);
      background-color: var(--primary-color);
      font-size: 14px; } }
  @media (min-width: 768px) {
    body.development::before {
      content: "lg";
      position: absolute;
      top: 0;
      right: 0;
      padding: var(--space-xs);
      background-color: var(--primary-color);
      font-size: 14px; } }
  @media (min-width: 1024px) {
    body.development::before {
      content: "xl";
      position: absolute;
      top: 0;
      right: 0;
      padding: var(--space-xs);
      background-color: var(--primary-color);
      font-size: 14px; } }

/* stylelint-enable max-nesting-depth */
:root {
  --space-unit: var(--base-line-height);
  --space-xs: calc(var(--base-line-height) / 4);
  --space-sm: calc(var(--base-line-height) / 2);
  --space-md: var(--base-line-height);
  --space-lg: calc(var(--base-line-height) * 2);
  --space-xl: calc(var(--base-line-height) * 3);
  --space-xxl: calc(var(--base-line-height) * 4);
  --component-padding: var(--base-line-height); }

:root {
  --base-grid-gap: var(--space-md);
  --container-width: 1200px; }

/*
	Row of columns that are positioned using flex
*/
.row {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  max-width: var(--container-width);
  margin-right: auto;
  margin-left: auto; }
  .row .row {
    width: auto;
    margin-right: calc((var(--base-grid-gap) / 2) * -1);
    margin-left: calc((var(--base-grid-gap) / 2) * -1); }

.row--stretch {
  max-width: 100%; }

.row--collapse > [class*="col-"] {
  padding-right: 0;
  padding-left: 0; }

[class*="col-"] {
  display: flex;
  flex-direction: column;
  flex: 0 0 100%;
  padding-right: calc(var(--base-grid-gap) / 2);
  padding-left: calc(var(--base-grid-gap) / 2); }

/*
	Base grid, used for the default grid on all resolutions
*/
.col-1 {
  flex-basis: 8.33333%;
  max-width: 8.33333%; }

.col-2 {
  flex-basis: 16.66667%;
  max-width: 16.66667%; }

.col-3 {
  flex-basis: 25%;
  max-width: 25%; }

.col-4 {
  flex-basis: 33.33333%;
  max-width: 33.33333%; }

.col-5 {
  flex-basis: 41.66667%;
  max-width: 41.66667%; }

.col-6 {
  flex-basis: 50%;
  max-width: 50%; }

.col-7 {
  flex-basis: 58.33333%;
  max-width: 58.33333%; }

.col-8 {
  flex-basis: 66.66667%;
  max-width: 66.66667%; }

.col-9 {
  flex-basis: 75%;
  max-width: 75%; }

.col-10 {
  flex-basis: 83.33333%;
  max-width: 83.33333%; }

.col-11 {
  flex-basis: 91.66667%;
  max-width: 91.66667%; }

.col-12 {
  flex-basis: 100%;
  max-width: 100%; }

/*
	Responsive grid, based on the $grid-cols list
*/
@media (min-width: 460px) {
  .col-3\@md {
    flex-basis: 25%;
    max-width: 25%; }
  .col-4\@md {
    flex-basis: 33.33333%;
    max-width: 33.33333%; }
  .col-6\@md {
    flex-basis: 50%;
    max-width: 50%; }
  .col-9\@md {
    flex-basis: 75%;
    max-width: 75%; }
  .col-12\@md {
    flex-basis: 100%;
    max-width: 100%; } }

@media (min-width: 768px) {
  .col-1\@lg {
    flex-basis: 8.33333%;
    max-width: 8.33333%; }
  .col-2\@lg {
    flex-basis: 16.66667%;
    max-width: 16.66667%; }
  .col-3\@lg {
    flex-basis: 25%;
    max-width: 25%; }
  .col-4\@lg {
    flex-basis: 33.33333%;
    max-width: 33.33333%; }
  .col-5\@lg {
    flex-basis: 41.66667%;
    max-width: 41.66667%; }
  .col-6\@lg {
    flex-basis: 50%;
    max-width: 50%; }
  .col-7\@lg {
    flex-basis: 58.33333%;
    max-width: 58.33333%; }
  .col-8\@lg {
    flex-basis: 66.66667%;
    max-width: 66.66667%; }
  .col-9\@lg {
    flex-basis: 75%;
    max-width: 75%; }
  .col-10\@lg {
    flex-basis: 83.33333%;
    max-width: 83.33333%; }
  .col-11\@lg {
    flex-basis: 91.66667%;
    max-width: 91.66667%; }
  .col-12\@lg {
    flex-basis: 100%;
    max-width: 100%; } }

@media (min-width: 1024px) {
  .col-3\@xl {
    flex-basis: 25%;
    max-width: 25%; }
  .col-4\@xl {
    flex-basis: 33.33333%;
    max-width: 33.33333%; } }

.icon {
  display: inline-block;
  flex-shrink: 0;
  vertical-align: middle; }

.icon--12 {
  width: 12px;
  height: 12px; }

.icon--14 {
  width: 14px;
  height: 14px; }

.icon--16 {
  width: 16px;
  height: 16px; }

.icon--18 {
  width: 18px;
  height: 18px; }

.icon--20 {
  width: 20px;
  height: 20px; }

.icon--22 {
  width: 22px;
  height: 22px; }

.icon--24 {
  width: 24px;
  height: 24px; }

:root {
  --primary-color: #ff69b4;
  --secondary-color: #6495ed;
  --black: #000;
  --white: #fff; }

:root {
  --label-font-size: 14px;
  --input-radius: 0;
  --input-height: calc(var(--base-line-height) * 2);
  --input-padding: var(--space-xs) var(--space-sm);
  --input-border-color: var(--black);
  --input-background: var(--white);
  --input-border: 1px solid var(--input-border-color);
  --label-margin: var(--space-sm);
  --textarea-padding: var(--space-sm);
  --textarea-min-height: calc(var(--base-line-height) * 6);
  --option-padding: 0 var(--space-sm);
  --option-min-height: var(--base-line-height);
  --select-border: 1px solid var(--input-border-color);
  --fieldset-padding: var(--space-sm);
  --fielset-margin: var(--space-sm) 0;
  --fieldset-border-color: var(--black);
  --fieldset-border: 1px solid var(--fieldset-border-color);
  --custom-input-size: 16px;
  --custom-input-color: var(--primary-color);
  --custom-input-tick-color: var(--white);
  --custom-checkbox-border-radius: 3px;
  --custom-radio-border-radius: 50%;
  --custom-input-tick-width: 5px;
  --custom-input-tick-height: 8px;
  --custom-input-tick-radius: 0;
  --select-tick-size: 2px;
  --select-tick-color: var(--black);
  --floating-label-size: 0;
  --floating-label-margin: 0;
  --floating-label-size: calc(var(--label-font-size) * 0.9);
  --floating-label-line-height: 1;
  --floating-label-position-left: 0;
  --floating-label-transform: translateY(-100%); }

fieldset {
  padding: 0;
  border: 0;
  margin: 0; }

.fieldset {
  padding: var(--fieldset-padding);
  border: var(--fieldset-border);
  margin: var(--fieldset-margin); }

label {
  display: inline-flex;
  align-items: center;
  line-height: var(--base-line-height);
  font-size: var(--label-font-size);
  cursor: pointer; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea,
select:not([multiple]) {
  width: 100%;
  height: var(--input-height);
  padding: var(--input-padding);
  border: var(--input-border);
  border-radius: var(--input-radius);
  font-family: var(--base-font-family);
  appearance: none; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea,
select {
  background-color: var(--input-background); }

select {
  border: var(--select-border); }
  select::-ms-expand {
    display: none; }

input[type="range"] {
  width: 100%; }

input[type="checkbox"],
input[type="radio"] {
  margin: 0 var(--label-margin) 0 0; }

textarea {
  min-height: var(--textarea-min-height);
  resize: vertical;
  padding: var(--textarea-padding); }

option {
  display: flex;
  align-items: center;
  min-height: var(--option-min-height);
  padding: var(--option-padding); }

.select {
  position: relative; }
  .select::after {
    content: "";
    position: absolute;
    top: 50%;
    right: var(--space-sm);
    width: 10px;
    height: 10px;
    border-bottom: var(--select-tick-size) solid var(--select-tick-color);
    border-left: var(--select-tick-size) solid var(--select-tick-color);
    margin-top: -5px;
    transform: rotate(-45deg);
    pointer-events: none; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .select::after {
        margin-top: -10px; } }

/*
* Use input-field to align labels and forms vertical or horizontal
*/
.input-field {
  display: flex;
  flex-direction: column; }
  .input-field label {
    margin-bottom: var(--label-margin); }

.input-field--horizontal {
  flex-direction: row;
  align-items: center; }
  .input-field--horizontal label {
    flex-shrink: 0;
    margin-right: var(--label-margin);
    margin-bottom: 0; }

/*
* For floating labels the label should be AFTER the input.
*/
.input-field--floating-label {
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  margin: var(--floating-field-margin); }
  .input-field--floating-label label {
    position: absolute;
    top: 50%;
    left: var(--space-sm);
    opacity: 0;
    transform: translateY(-50%);
    transition: 300ms ease-in-out; }
  .input-field--floating-label input:not(:placeholder-shown) ~ label,
  .input-field--floating-label textarea:not(:placeholder-shown) ~ label {
    top: 0;
    left: var(--floating-label-position-left);
    line-height: var(--floating-label-line-height);
    margin: var(--floating-label-margin);
    opacity: 1;
    font-size: var(--floating-label-size);
    transform: var(--floating-label-transform); }

.custom-input {
  position: relative; }
  .custom-input input {
    opacity: 0; }
  .custom-input input:checked ~ .custom-input__icon {
    background-color: var(--custom-input-color); }
    .custom-input input:checked ~ .custom-input__icon::before {
      top: 50%;
      width: calc(var(--custom-input-size) * 1.5);
      height: calc(var(--custom-input-size) * 1.5);
      border: 2px solid var(--custom-input-color);
      margin-top: calc(calc(var(--custom-input-size) * 0.75) * -1);
      margin-left: calc(calc(var(--custom-input-size) * 0.75) * -1);
      opacity: 0;
      transform: scale(3);
      pointer-events: none; }
    .custom-input input:checked ~ .custom-input__icon::after {
      opacity: 1; }

.custom-input__icon {
  position: absolute;
  top: 50%;
  left: 0;
  width: var(--custom-input-size);
  height: var(--custom-input-size);
  border: 1px solid var(--custom-input-color);
  border-radius: var(--custom-checkbox-border-radius);
  margin-top: calc(calc(var(--custom-input-size) / 2) * -1);
  background-color: transparent;
  transition: background-color 100ms ease-in-out; }
  .custom-input__icon::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 5px;
    width: 0;
    height: 0;
    border: 2px solid var(--secondary-color);
    border-radius: var(--custom-checkbox-border-radius);
    transform: scale(0) translateY(-50%);
    transition: transform 100ms, opacity 100ms; }
  .custom-input__icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: var(--custom-input-tick-width);
    height: var(--custom-input-tick-height);
    border-right: 2px solid var(--custom-input-tick-color);
    border-bottom: 2px solid var(--custom-input-tick-color);
    border-radius: var(--custom-input-tick-radius);
    margin: -2px 0 0 2px;
    opacity: 0;
    transform: rotate(45deg) translateY(-50%);
    transition: opacity 100ms ease-in-out; }

.custom-input--checkbox .custom-input__icon {
  border-radius: var(--custom-checkbox-border-radius); }

.custom-input--radio .custom-input__icon {
  border-radius: var(--custom-radio-border-radius); }
  .custom-input--radio .custom-input__icon::before {
    border-radius: var(--custom-radio-border-radius); }

/*
* Used to style fields to display the state (for example errors, warnings, success)
* @var $color: Color of the border and value of the field.
*/
/*
* Used to style a help  message below fields (for example errors, warnings, success)
* @var $background-color: Color of the background of the help message
* @var $color: Color of the text in the message.
*/
:root {
  --anchor-color: var(--primary-color);
  --bodytext-margin: var(--space-unit);
  --bodytext-color: var(--black); }

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/*
    Map for generating the headings. The list is made up of 4 items:
    - font-size in pixels
    - Line-height multiplier
    - Margin top multiplier
    - Margin bottom multiplier
*/
@media (min-width: 0) {
  .heading-size-h1,
  h1 {
    line-height: calc(var(--base-line-height) * 1.313);
    font-size: 28px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); }
  .heading-size-h2,
  h2 {
    line-height: calc(var(--base-line-height) * 1.313);
    font-size: 28px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); }
  .heading-size-h3,
  h3 {
    line-height: calc(var(--base-line-height) * 1.219);
    font-size: 26px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); }
  .heading-size-h4,
  h4 {
    line-height: calc(var(--base-line-height) * 1);
    font-size: 18px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); }
  .heading-size-h5,
  h5 {
    line-height: calc(var(--base-line-height) * 1);
    font-size: 16px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); }
  .heading-size-h6,
  h6 {
    line-height: calc(var(--base-line-height) * 1);
    font-size: 16px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); } }

@media (min-width: 768px) {
  .heading-size-h1,
  h1 {
    line-height: calc(var(--base-line-height) * 2.1);
    font-size: 45px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); }
  .heading-size-h2,
  h2 {
    line-height: calc(var(--base-line-height) * 1.875);
    font-size: 40px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); }
  .heading-size-h3,
  h3 {
    line-height: calc(var(--base-line-height) * 1.781);
    font-size: 38px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); }
  .heading-size-h4,
  h4 {
    line-height: calc(var(--base-line-height) * 1.125);
    font-size: 24px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); }
  .heading-size-h5,
  h5 {
    line-height: calc(var(--base-line-height) * 1);
    font-size: 20px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); }
  .heading-size-h6,
  h6 {
    line-height: calc(var(--base-line-height) * 1);
    font-size: 20px;
    margin-top: 0;
    margin-bottom: calc(var(--space-unit) * 0.5); } }

body {
  color: var(--bodytext-color); }

a {
  color: var(--anchor-color); }

ol,
ul {
  margin: 0 0 var(--bodytext-margin);
  color: var(--bodytext-color); }

p {
  margin: 0;
  color: var(--bodytext-color); }

strong {
  font-weight: 700; }

:root {
  --btn-outline-size: 2px;
  --btn-font-size: var(--base-font-size);
  --btn-small-font-size: calc(var(--base-font-size) * 0.875);
  --btn-primary-background: var(--primary-color);
  --btn-primary-color: #fff;
  --btn-primary-outline-color: var(--primary-color);
  --btn-secondary-background: var(--secondary-color);
  --btn-secondary-color: #fff;
  --btn-secondary-outline-color: var(--secondary-color); }

.btn {
  display: inline-flex;
  align-items: center;
  line-height: var(--base-line-height);
  padding: var(--space-sm) var(--space-md);
  border: 0;
  font-size: var(--btn-font-size);
  transition: border-color 300ms ease-in-out, background-color 300ms ease-in-out;
  cursor: pointer;
  text-decoration: none;
  appearance: none; }

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

.btn--secondary {
  background-color: var(--btn-secondary-background);
  color: var(--btn-secondary-color); }

.btn--outline {
  padding-top: calc(var(--space-sm) - var(--btn-outline-size));
  padding-bottom: calc(var(--space-sm) - var(--btn-outline-size));
  border: var(--btn-outline-size) solid;
  background-color: transparent; }
  .btn--outline.btn--primary {
    --btn-primary-color: var(--primary-color);
    border-color: var(--btn-primary-background);
    color: var(--btn-primary-outline-color); }
  .btn--outline.btn--secondary {
    border-color: var(--btn-secondary-background);
    color: var(--btn-secondary-outline-color); }

.btn--small {
  padding: var(--space-xs) var(--space-sm);
  margin-top: var(--space-xs);
  margin-bottom: var(--space-xs);
  font-size: var(--btn-small-font-size); }

.list--reset {
  padding-left: 0;
  margin-bottom: 0;
  list-style-type: none; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.order--1 {
  order: -1; }

.order-0 {
  order: 0; }

.order-1 {
  order: 1; }

.order-2 {
  order: 2; }

.flex-gap-sm {
  margin-right: calc((var(--space-sm) / 2) * -1);
  margin-left: calc((var(--space-sm) / 2) * -1);
  /* stylelint-disable selector-max-universal */
  /* stylelint-enable */ }
  .flex-gap-sm > * {
    padding-right: calc(var(--space-sm) / 2);
    padding-left: calc(var(--space-sm) / 2); }

@media (min-width: 0) {
  .flex-gap-sm\@xs {
    margin-right: calc((var(--space-sm) / 2) * -1);
    margin-left: calc((var(--space-sm) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-sm\@xs > * {
      padding-right: calc(var(--space-sm) / 2);
      padding-left: calc(var(--space-sm) / 2); } }

@media (min-width: 320px) {
  .flex-gap-sm\@sm {
    margin-right: calc((var(--space-sm) / 2) * -1);
    margin-left: calc((var(--space-sm) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-sm\@sm > * {
      padding-right: calc(var(--space-sm) / 2);
      padding-left: calc(var(--space-sm) / 2); } }

@media (min-width: 460px) {
  .flex-gap-sm\@md {
    margin-right: calc((var(--space-sm) / 2) * -1);
    margin-left: calc((var(--space-sm) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-sm\@md > * {
      padding-right: calc(var(--space-sm) / 2);
      padding-left: calc(var(--space-sm) / 2); } }

@media (min-width: 768px) {
  .flex-gap-sm\@lg {
    margin-right: calc((var(--space-sm) / 2) * -1);
    margin-left: calc((var(--space-sm) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-sm\@lg > * {
      padding-right: calc(var(--space-sm) / 2);
      padding-left: calc(var(--space-sm) / 2); } }

@media (min-width: 1024px) {
  .flex-gap-sm\@xl {
    margin-right: calc((var(--space-sm) / 2) * -1);
    margin-left: calc((var(--space-sm) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-sm\@xl > * {
      padding-right: calc(var(--space-sm) / 2);
      padding-left: calc(var(--space-sm) / 2); } }

.flex-gap-md {
  margin-right: calc((var(--space-md) / 2) * -1);
  margin-left: calc((var(--space-md) / 2) * -1);
  /* stylelint-disable selector-max-universal */
  /* stylelint-enable */ }
  .flex-gap-md > * {
    padding-right: calc(var(--space-md) / 2);
    padding-left: calc(var(--space-md) / 2); }

@media (min-width: 0) {
  .flex-gap-md\@xs {
    margin-right: calc((var(--space-md) / 2) * -1);
    margin-left: calc((var(--space-md) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-md\@xs > * {
      padding-right: calc(var(--space-md) / 2);
      padding-left: calc(var(--space-md) / 2); } }

@media (min-width: 320px) {
  .flex-gap-md\@sm {
    margin-right: calc((var(--space-md) / 2) * -1);
    margin-left: calc((var(--space-md) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-md\@sm > * {
      padding-right: calc(var(--space-md) / 2);
      padding-left: calc(var(--space-md) / 2); } }

@media (min-width: 460px) {
  .flex-gap-md\@md {
    margin-right: calc((var(--space-md) / 2) * -1);
    margin-left: calc((var(--space-md) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-md\@md > * {
      padding-right: calc(var(--space-md) / 2);
      padding-left: calc(var(--space-md) / 2); } }

@media (min-width: 768px) {
  .flex-gap-md\@lg {
    margin-right: calc((var(--space-md) / 2) * -1);
    margin-left: calc((var(--space-md) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-md\@lg > * {
      padding-right: calc(var(--space-md) / 2);
      padding-left: calc(var(--space-md) / 2); } }

@media (min-width: 1024px) {
  .flex-gap-md\@xl {
    margin-right: calc((var(--space-md) / 2) * -1);
    margin-left: calc((var(--space-md) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-md\@xl > * {
      padding-right: calc(var(--space-md) / 2);
      padding-left: calc(var(--space-md) / 2); } }

.flex-gap-lg {
  margin-right: calc((var(--space-lg) / 2) * -1);
  margin-left: calc((var(--space-lg) / 2) * -1);
  /* stylelint-disable selector-max-universal */
  /* stylelint-enable */ }
  .flex-gap-lg > * {
    padding-right: calc(var(--space-lg) / 2);
    padding-left: calc(var(--space-lg) / 2); }

@media (min-width: 0) {
  .flex-gap-lg\@xs {
    margin-right: calc((var(--space-lg) / 2) * -1);
    margin-left: calc((var(--space-lg) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-lg\@xs > * {
      padding-right: calc(var(--space-lg) / 2);
      padding-left: calc(var(--space-lg) / 2); } }

@media (min-width: 320px) {
  .flex-gap-lg\@sm {
    margin-right: calc((var(--space-lg) / 2) * -1);
    margin-left: calc((var(--space-lg) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-lg\@sm > * {
      padding-right: calc(var(--space-lg) / 2);
      padding-left: calc(var(--space-lg) / 2); } }

@media (min-width: 460px) {
  .flex-gap-lg\@md {
    margin-right: calc((var(--space-lg) / 2) * -1);
    margin-left: calc((var(--space-lg) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-lg\@md > * {
      padding-right: calc(var(--space-lg) / 2);
      padding-left: calc(var(--space-lg) / 2); } }

@media (min-width: 768px) {
  .flex-gap-lg\@lg {
    margin-right: calc((var(--space-lg) / 2) * -1);
    margin-left: calc((var(--space-lg) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-lg\@lg > * {
      padding-right: calc(var(--space-lg) / 2);
      padding-left: calc(var(--space-lg) / 2); } }

@media (min-width: 1024px) {
  .flex-gap-lg\@xl {
    margin-right: calc((var(--space-lg) / 2) * -1);
    margin-left: calc((var(--space-lg) / 2) * -1);
    /* stylelint-disable selector-max-universal */
    /* stylelint-enable */ }
    .flex-gap-lg\@xl > * {
      padding-right: calc(var(--space-lg) / 2);
      padding-left: calc(var(--space-lg) / 2); } }

@media (min-width: 768px) {
  .flex-grow-1\@lg {
    flex-grow: 1; }
  .flex-grow-0\@lg {
    flex-grow: 0; }
  .flex-shrink-1\@lg {
    flex-shrink: 1; }
  .flex-shrink-0\@lg {
    flex-shrink: 0; }
  .flex-wrap\@lg {
    flex-wrap: wrap; }
  .flex-column\@lg {
    flex-direction: column; }
  .flex-column-reverse\@lg {
    flex-direction: column-reverse; }
  .flex-row\@lg {
    flex-direction: row; }
  .flex-row-reverse\@lg {
    flex-direction: row-reverse; }
  .flex-center\@lg {
    justify-content: center;
    align-items: center; }
  .justify-start\@lg {
    justify-content: flex-start; }
  .justify-end\@lg {
    justify-content: flex-end; }
  .justify-center\@lg {
    justify-content: center; }
  .justify-between\@lg {
    justify-content: space-between; }
  .items-center\@lg {
    align-items: center; }
  .items-start\@lg {
    align-items: flex-start; }
  .items-end\@lg {
    align-items: flex-end; }
  .order--1\@lg {
    order: -1; }
  .order-0\@lg {
    order: 0; }
  .order-1\@lg {
    order: 1; }
  .order-2\@lg {
    order: 2; } }

@media (min-width: 1024px) {
  .flex-grow-1\@xl {
    flex-grow: 1; }
  .flex-grow-0\@xl {
    flex-grow: 0; }
  .flex-shrink-1\@xl {
    flex-shrink: 1; }
  .flex-shrink-0\@xl {
    flex-shrink: 0; }
  .flex-wrap\@xl {
    flex-wrap: wrap; }
  .flex-column\@xl {
    flex-direction: column; }
  .flex-column-reverse\@xl {
    flex-direction: column-reverse; }
  .flex-row\@xl {
    flex-direction: row; }
  .flex-row-reverse\@xl {
    flex-direction: row-reverse; }
  .flex-center\@xl {
    justify-content: center;
    align-items: center; }
  .justify-start\@xl {
    justify-content: flex-start; }
  .justify-end\@xl {
    justify-content: flex-end; }
  .justify-center\@xl {
    justify-content: center; }
  .justify-between\@xl {
    justify-content: space-between; }
  .items-center\@xl {
    align-items: center; }
  .items-start\@xl {
    align-items: flex-start; }
  .items-end\@xl {
    align-items: flex-end; }
  .order--1\@xl {
    order: -1; }
  .order-0\@xl {
    order: 0; }
  .order-1\@xl {
    order: 1; }
  .order-2\@xl {
    order: 2; } }

.margin-xs {
  margin: var(--space-xs); }

.margin-x-xs {
  margin-right: var(--space-xs);
  margin-left: var(--space-xs); }

.margin-y-xs {
  margin-top: var(--space-xs);
  margin-bottom: var(--space-xs); }

.margin-top-0 {
  margin-top: 0; }

.margin-top-xs {
  margin-top: var(--space-xs); }

.margin-right-0 {
  margin-right: 0; }

.margin-right-xs {
  margin-right: var(--space-xs); }

.margin-bottom-0 {
  margin-bottom: 0; }

.margin-bottom-xs {
  margin-bottom: var(--space-xs); }

.margin-left-0 {
  margin-left: 0; }

.margin-left-xs {
  margin-left: var(--space-xs); }

.margin-sm {
  margin: var(--space-sm); }

.margin-x-sm {
  margin-right: var(--space-sm);
  margin-left: var(--space-sm); }

.margin-y-sm {
  margin-top: var(--space-sm);
  margin-bottom: var(--space-sm); }

.margin-top-0 {
  margin-top: 0; }

.margin-top-sm {
  margin-top: var(--space-sm); }

.margin-right-0 {
  margin-right: 0; }

.margin-right-sm {
  margin-right: var(--space-sm); }

.margin-bottom-0 {
  margin-bottom: 0; }

.margin-bottom-sm {
  margin-bottom: var(--space-sm); }

.margin-left-0 {
  margin-left: 0; }

.margin-left-sm {
  margin-left: var(--space-sm); }

.margin-md {
  margin: var(--space-md); }

.margin-x-md {
  margin-right: var(--space-md);
  margin-left: var(--space-md); }

.margin-y-md {
  margin-top: var(--space-md);
  margin-bottom: var(--space-md); }

.margin-top-0 {
  margin-top: 0; }

.margin-top-md {
  margin-top: var(--space-md); }

.margin-right-0 {
  margin-right: 0; }

.margin-right-md {
  margin-right: var(--space-md); }

.margin-bottom-0 {
  margin-bottom: 0; }

.margin-bottom-md {
  margin-bottom: var(--space-md); }

.margin-left-0 {
  margin-left: 0; }

.margin-left-md {
  margin-left: var(--space-md); }

.margin-lg {
  margin: var(--space-lg); }

.margin-x-lg {
  margin-right: var(--space-lg);
  margin-left: var(--space-lg); }

.margin-y-lg {
  margin-top: var(--space-lg);
  margin-bottom: var(--space-lg); }

.margin-top-0 {
  margin-top: 0; }

.margin-top-lg {
  margin-top: var(--space-lg); }

.margin-right-0 {
  margin-right: 0; }

.margin-right-lg {
  margin-right: var(--space-lg); }

.margin-bottom-0 {
  margin-bottom: 0; }

.margin-bottom-lg {
  margin-bottom: var(--space-lg); }

.margin-left-0 {
  margin-left: 0; }

.margin-left-lg {
  margin-left: var(--space-lg); }

.margin-xl {
  margin: var(--space-xl); }

.margin-x-xl {
  margin-right: var(--space-xl);
  margin-left: var(--space-xl); }

.margin-y-xl {
  margin-top: var(--space-xl);
  margin-bottom: var(--space-xl); }

.margin-top-0 {
  margin-top: 0; }

.margin-top-xl {
  margin-top: var(--space-xl); }

.margin-right-0 {
  margin-right: 0; }

.margin-right-xl {
  margin-right: var(--space-xl); }

.margin-bottom-0 {
  margin-bottom: 0; }

.margin-bottom-xl {
  margin-bottom: var(--space-xl); }

.margin-left-0 {
  margin-left: 0; }

.margin-left-xl {
  margin-left: var(--space-xl); }

.margin-xxl {
  margin: var(--space-xxl); }

.margin-x-xxl {
  margin-right: var(--space-xxl);
  margin-left: var(--space-xxl); }

.margin-y-xxl {
  margin-top: var(--space-xxl);
  margin-bottom: var(--space-xxl); }

.margin-top-0 {
  margin-top: 0; }

.margin-top-xxl {
  margin-top: var(--space-xxl); }

.margin-right-0 {
  margin-right: 0; }

.margin-right-xxl {
  margin-right: var(--space-xxl); }

.margin-bottom-0 {
  margin-bottom: 0; }

.margin-bottom-xxl {
  margin-bottom: var(--space-xxl); }

.margin-left-0 {
  margin-left: 0; }

.margin-left-xxl {
  margin-left: var(--space-xxl); }

@media (min-width: 768px) {
  .margin-xs\@lg {
    margin: var(--space-xs); }
  .margin-x-xs\@lg {
    margin-right: var(--space-xs);
    margin-left: var(--space-xs); }
  .margin-y-xs\@lg {
    margin-top: var(--space-xs);
    margin-bottom: var(--space-xs); }
  .margin-top-0\@lg {
    margin-top: 0; }
  .margin-top-xs\@lg {
    margin-top: var(--space-xs); }
  .margin-right-0\@lg {
    margin-right: 0; }
  .margin-right-xs\@lg {
    margin-right: var(--space-xs); }
  .margin-bottom-0\@lg {
    margin-bottom: 0; }
  .margin-bottom-xs\@lg {
    margin-bottom: var(--space-xs); }
  .margin-left-0\@lg {
    margin-left: 0; }
  .margin-left-xs\@lg {
    margin-left: var(--space-xs); }
  .margin-sm\@lg {
    margin: var(--space-sm); }
  .margin-x-sm\@lg {
    margin-right: var(--space-sm);
    margin-left: var(--space-sm); }
  .margin-y-sm\@lg {
    margin-top: var(--space-sm);
    margin-bottom: var(--space-sm); }
  .margin-top-0\@lg {
    margin-top: 0; }
  .margin-top-sm\@lg {
    margin-top: var(--space-sm); }
  .margin-right-0\@lg {
    margin-right: 0; }
  .margin-right-sm\@lg {
    margin-right: var(--space-sm); }
  .margin-bottom-0\@lg {
    margin-bottom: 0; }
  .margin-bottom-sm\@lg {
    margin-bottom: var(--space-sm); }
  .margin-left-0\@lg {
    margin-left: 0; }
  .margin-left-sm\@lg {
    margin-left: var(--space-sm); }
  .margin-md\@lg {
    margin: var(--space-md); }
  .margin-x-md\@lg {
    margin-right: var(--space-md);
    margin-left: var(--space-md); }
  .margin-y-md\@lg {
    margin-top: var(--space-md);
    margin-bottom: var(--space-md); }
  .margin-top-0\@lg {
    margin-top: 0; }
  .margin-top-md\@lg {
    margin-top: var(--space-md); }
  .margin-right-0\@lg {
    margin-right: 0; }
  .margin-right-md\@lg {
    margin-right: var(--space-md); }
  .margin-bottom-0\@lg {
    margin-bottom: 0; }
  .margin-bottom-md\@lg {
    margin-bottom: var(--space-md); }
  .margin-left-0\@lg {
    margin-left: 0; }
  .margin-left-md\@lg {
    margin-left: var(--space-md); }
  .margin-lg\@lg {
    margin: var(--space-lg); }
  .margin-x-lg\@lg {
    margin-right: var(--space-lg);
    margin-left: var(--space-lg); }
  .margin-y-lg\@lg {
    margin-top: var(--space-lg);
    margin-bottom: var(--space-lg); }
  .margin-top-0\@lg {
    margin-top: 0; }
  .margin-top-lg\@lg {
    margin-top: var(--space-lg); }
  .margin-right-0\@lg {
    margin-right: 0; }
  .margin-right-lg\@lg {
    margin-right: var(--space-lg); }
  .margin-bottom-0\@lg {
    margin-bottom: 0; }
  .margin-bottom-lg\@lg {
    margin-bottom: var(--space-lg); }
  .margin-left-0\@lg {
    margin-left: 0; }
  .margin-left-lg\@lg {
    margin-left: var(--space-lg); }
  .margin-xl\@lg {
    margin: var(--space-xl); }
  .margin-x-xl\@lg {
    margin-right: var(--space-xl);
    margin-left: var(--space-xl); }
  .margin-y-xl\@lg {
    margin-top: var(--space-xl);
    margin-bottom: var(--space-xl); }
  .margin-top-0\@lg {
    margin-top: 0; }
  .margin-top-xl\@lg {
    margin-top: var(--space-xl); }
  .margin-right-0\@lg {
    margin-right: 0; }
  .margin-right-xl\@lg {
    margin-right: var(--space-xl); }
  .margin-bottom-0\@lg {
    margin-bottom: 0; }
  .margin-bottom-xl\@lg {
    margin-bottom: var(--space-xl); }
  .margin-left-0\@lg {
    margin-left: 0; }
  .margin-left-xl\@lg {
    margin-left: var(--space-xl); }
  .margin-xxl\@lg {
    margin: var(--space-xxl); }
  .margin-x-xxl\@lg {
    margin-right: var(--space-xxl);
    margin-left: var(--space-xxl); }
  .margin-y-xxl\@lg {
    margin-top: var(--space-xxl);
    margin-bottom: var(--space-xxl); }
  .margin-top-0\@lg {
    margin-top: 0; }
  .margin-top-xxl\@lg {
    margin-top: var(--space-xxl); }
  .margin-right-0\@lg {
    margin-right: 0; }
  .margin-right-xxl\@lg {
    margin-right: var(--space-xxl); }
  .margin-bottom-0\@lg {
    margin-bottom: 0; }
  .margin-bottom-xxl\@lg {
    margin-bottom: var(--space-xxl); }
  .margin-left-0\@lg {
    margin-left: 0; }
  .margin-left-xxl\@lg {
    margin-left: var(--space-xxl); } }

@media (min-width: 1024px) {
  .margin-xs\@xl {
    margin: var(--space-xs); }
  .margin-x-xs\@xl {
    margin-right: var(--space-xs);
    margin-left: var(--space-xs); }
  .margin-y-xs\@xl {
    margin-top: var(--space-xs);
    margin-bottom: var(--space-xs); }
  .margin-top-0\@xl {
    margin-top: 0; }
  .margin-top-xs\@xl {
    margin-top: var(--space-xs); }
  .margin-right-0\@xl {
    margin-right: 0; }
  .margin-right-xs\@xl {
    margin-right: var(--space-xs); }
  .margin-bottom-0\@xl {
    margin-bottom: 0; }
  .margin-bottom-xs\@xl {
    margin-bottom: var(--space-xs); }
  .margin-left-0\@xl {
    margin-left: 0; }
  .margin-left-xs\@xl {
    margin-left: var(--space-xs); }
  .margin-sm\@xl {
    margin: var(--space-sm); }
  .margin-x-sm\@xl {
    margin-right: var(--space-sm);
    margin-left: var(--space-sm); }
  .margin-y-sm\@xl {
    margin-top: var(--space-sm);
    margin-bottom: var(--space-sm); }
  .margin-top-0\@xl {
    margin-top: 0; }
  .margin-top-sm\@xl {
    margin-top: var(--space-sm); }
  .margin-right-0\@xl {
    margin-right: 0; }
  .margin-right-sm\@xl {
    margin-right: var(--space-sm); }
  .margin-bottom-0\@xl {
    margin-bottom: 0; }
  .margin-bottom-sm\@xl {
    margin-bottom: var(--space-sm); }
  .margin-left-0\@xl {
    margin-left: 0; }
  .margin-left-sm\@xl {
    margin-left: var(--space-sm); }
  .margin-md\@xl {
    margin: var(--space-md); }
  .margin-x-md\@xl {
    margin-right: var(--space-md);
    margin-left: var(--space-md); }
  .margin-y-md\@xl {
    margin-top: var(--space-md);
    margin-bottom: var(--space-md); }
  .margin-top-0\@xl {
    margin-top: 0; }
  .margin-top-md\@xl {
    margin-top: var(--space-md); }
  .margin-right-0\@xl {
    margin-right: 0; }
  .margin-right-md\@xl {
    margin-right: var(--space-md); }
  .margin-bottom-0\@xl {
    margin-bottom: 0; }
  .margin-bottom-md\@xl {
    margin-bottom: var(--space-md); }
  .margin-left-0\@xl {
    margin-left: 0; }
  .margin-left-md\@xl {
    margin-left: var(--space-md); }
  .margin-lg\@xl {
    margin: var(--space-lg); }
  .margin-x-lg\@xl {
    margin-right: var(--space-lg);
    margin-left: var(--space-lg); }
  .margin-y-lg\@xl {
    margin-top: var(--space-lg);
    margin-bottom: var(--space-lg); }
  .margin-top-0\@xl {
    margin-top: 0; }
  .margin-top-lg\@xl {
    margin-top: var(--space-lg); }
  .margin-right-0\@xl {
    margin-right: 0; }
  .margin-right-lg\@xl {
    margin-right: var(--space-lg); }
  .margin-bottom-0\@xl {
    margin-bottom: 0; }
  .margin-bottom-lg\@xl {
    margin-bottom: var(--space-lg); }
  .margin-left-0\@xl {
    margin-left: 0; }
  .margin-left-lg\@xl {
    margin-left: var(--space-lg); }
  .margin-xl\@xl {
    margin: var(--space-xl); }
  .margin-x-xl\@xl {
    margin-right: var(--space-xl);
    margin-left: var(--space-xl); }
  .margin-y-xl\@xl {
    margin-top: var(--space-xl);
    margin-bottom: var(--space-xl); }
  .margin-top-0\@xl {
    margin-top: 0; }
  .margin-top-xl\@xl {
    margin-top: var(--space-xl); }
  .margin-right-0\@xl {
    margin-right: 0; }
  .margin-right-xl\@xl {
    margin-right: var(--space-xl); }
  .margin-bottom-0\@xl {
    margin-bottom: 0; }
  .margin-bottom-xl\@xl {
    margin-bottom: var(--space-xl); }
  .margin-left-0\@xl {
    margin-left: 0; }
  .margin-left-xl\@xl {
    margin-left: var(--space-xl); }
  .margin-xxl\@xl {
    margin: var(--space-xxl); }
  .margin-x-xxl\@xl {
    margin-right: var(--space-xxl);
    margin-left: var(--space-xxl); }
  .margin-y-xxl\@xl {
    margin-top: var(--space-xxl);
    margin-bottom: var(--space-xxl); }
  .margin-top-0\@xl {
    margin-top: 0; }
  .margin-top-xxl\@xl {
    margin-top: var(--space-xxl); }
  .margin-right-0\@xl {
    margin-right: 0; }
  .margin-right-xxl\@xl {
    margin-right: var(--space-xxl); }
  .margin-bottom-0\@xl {
    margin-bottom: 0; }
  .margin-bottom-xxl\@xl {
    margin-bottom: var(--space-xxl); }
  .margin-left-0\@xl {
    margin-left: 0; }
  .margin-left-xxl\@xl {
    margin-left: var(--space-xxl); } }

.padding-xs {
  padding: var(--space-xs); }

.padding-x-xs {
  padding-right: var(--space-xs);
  padding-left: var(--space-xs); }

.padding-y-xs {
  padding-top: var(--space-xs);
  padding-bottom: var(--space-xs); }

.padding-top-0 {
  padding-top: 0; }

.padding-top-xs {
  padding-top: var(--space-xs); }

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

.padding-right-xs {
  padding-right: var(--space-xs); }

.padding-bottom-0 {
  padding-bottom: 0; }

.padding-bottom-xs {
  padding-bottom: var(--space-xs); }

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

.padding-left-xs {
  padding-left: var(--space-xs); }

.padding-sm {
  padding: var(--space-sm); }

.padding-x-sm {
  padding-right: var(--space-sm);
  padding-left: var(--space-sm); }

.padding-y-sm {
  padding-top: var(--space-sm);
  padding-bottom: var(--space-sm); }

.padding-top-0 {
  padding-top: 0; }

.padding-top-sm {
  padding-top: var(--space-sm); }

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

.padding-right-sm {
  padding-right: var(--space-sm); }

.padding-bottom-0 {
  padding-bottom: 0; }

.padding-bottom-sm {
  padding-bottom: var(--space-sm); }

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

.padding-left-sm {
  padding-left: var(--space-sm); }

.padding-md {
  padding: var(--space-md); }

.padding-x-md {
  padding-right: var(--space-md);
  padding-left: var(--space-md); }

.padding-y-md {
  padding-top: var(--space-md);
  padding-bottom: var(--space-md); }

.padding-top-0 {
  padding-top: 0; }

.padding-top-md {
  padding-top: var(--space-md); }

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

.padding-right-md {
  padding-right: var(--space-md); }

.padding-bottom-0 {
  padding-bottom: 0; }

.padding-bottom-md {
  padding-bottom: var(--space-md); }

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

.padding-left-md {
  padding-left: var(--space-md); }

.padding-lg {
  padding: var(--space-lg); }

.padding-x-lg {
  padding-right: var(--space-lg);
  padding-left: var(--space-lg); }

.padding-y-lg {
  padding-top: var(--space-lg);
  padding-bottom: var(--space-lg); }

.padding-top-0 {
  padding-top: 0; }

.padding-top-lg {
  padding-top: var(--space-lg); }

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

.padding-right-lg {
  padding-right: var(--space-lg); }

.padding-bottom-0 {
  padding-bottom: 0; }

.padding-bottom-lg {
  padding-bottom: var(--space-lg); }

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

.padding-left-lg {
  padding-left: var(--space-lg); }

.padding-xl {
  padding: var(--space-xl); }

.padding-x-xl {
  padding-right: var(--space-xl);
  padding-left: var(--space-xl); }

.padding-y-xl {
  padding-top: var(--space-xl);
  padding-bottom: var(--space-xl); }

.padding-top-0 {
  padding-top: 0; }

.padding-top-xl {
  padding-top: var(--space-xl); }

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

.padding-right-xl {
  padding-right: var(--space-xl); }

.padding-bottom-0 {
  padding-bottom: 0; }

.padding-bottom-xl {
  padding-bottom: var(--space-xl); }

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

.padding-left-xl {
  padding-left: var(--space-xl); }

.padding-xxl {
  padding: var(--space-xxl); }

.padding-x-xxl {
  padding-right: var(--space-xxl);
  padding-left: var(--space-xxl); }

.padding-y-xxl {
  padding-top: var(--space-xxl);
  padding-bottom: var(--space-xxl); }

.padding-top-0 {
  padding-top: 0; }

.padding-top-xxl {
  padding-top: var(--space-xxl); }

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

.padding-right-xxl {
  padding-right: var(--space-xxl); }

.padding-bottom-0 {
  padding-bottom: 0; }

.padding-bottom-xxl {
  padding-bottom: var(--space-xxl); }

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

.padding-left-xxl {
  padding-left: var(--space-xxl); }

@media (min-width: 768px) {
  .padding-xs\@lg {
    padding: var(--space-xs); }
  .padding-x-xs\@lg {
    padding-right: var(--space-xs);
    padding-left: var(--space-xs); }
  .padding-y-xs\@lg {
    padding-top: var(--space-xs);
    padding-bottom: var(--space-xs); }
  .padding-top-0\@lg {
    padding-top: 0; }
  .padding-top-xs\@lg {
    padding-top: var(--space-xs); }
  .padding-right-0\@lg {
    padding-right: 0; }
  .padding-right-xs\@lg {
    padding-right: var(--space-xs); }
  .padding-bottom-0\@lg {
    padding-bottom: 0; }
  .padding-bottom-xs\@lg {
    padding-bottom: var(--space-xs); }
  .padding-left-0\@lg {
    padding-left: 0; }
  .padding-left-xs\@lg {
    padding-left: var(--space-xs); }
  .padding-sm\@lg {
    padding: var(--space-sm); }
  .padding-x-sm\@lg {
    padding-right: var(--space-sm);
    padding-left: var(--space-sm); }
  .padding-y-sm\@lg {
    padding-top: var(--space-sm);
    padding-bottom: var(--space-sm); }
  .padding-top-0\@lg {
    padding-top: 0; }
  .padding-top-sm\@lg {
    padding-top: var(--space-sm); }
  .padding-right-0\@lg {
    padding-right: 0; }
  .padding-right-sm\@lg {
    padding-right: var(--space-sm); }
  .padding-bottom-0\@lg {
    padding-bottom: 0; }
  .padding-bottom-sm\@lg {
    padding-bottom: var(--space-sm); }
  .padding-left-0\@lg {
    padding-left: 0; }
  .padding-left-sm\@lg {
    padding-left: var(--space-sm); }
  .padding-md\@lg {
    padding: var(--space-md); }
  .padding-x-md\@lg {
    padding-right: var(--space-md);
    padding-left: var(--space-md); }
  .padding-y-md\@lg {
    padding-top: var(--space-md);
    padding-bottom: var(--space-md); }
  .padding-top-0\@lg {
    padding-top: 0; }
  .padding-top-md\@lg {
    padding-top: var(--space-md); }
  .padding-right-0\@lg {
    padding-right: 0; }
  .padding-right-md\@lg {
    padding-right: var(--space-md); }
  .padding-bottom-0\@lg {
    padding-bottom: 0; }
  .padding-bottom-md\@lg {
    padding-bottom: var(--space-md); }
  .padding-left-0\@lg {
    padding-left: 0; }
  .padding-left-md\@lg {
    padding-left: var(--space-md); }
  .padding-lg\@lg {
    padding: var(--space-lg); }
  .padding-x-lg\@lg {
    padding-right: var(--space-lg);
    padding-left: var(--space-lg); }
  .padding-y-lg\@lg {
    padding-top: var(--space-lg);
    padding-bottom: var(--space-lg); }
  .padding-top-0\@lg {
    padding-top: 0; }
  .padding-top-lg\@lg {
    padding-top: var(--space-lg); }
  .padding-right-0\@lg {
    padding-right: 0; }
  .padding-right-lg\@lg {
    padding-right: var(--space-lg); }
  .padding-bottom-0\@lg {
    padding-bottom: 0; }
  .padding-bottom-lg\@lg {
    padding-bottom: var(--space-lg); }
  .padding-left-0\@lg {
    padding-left: 0; }
  .padding-left-lg\@lg {
    padding-left: var(--space-lg); }
  .padding-xl\@lg {
    padding: var(--space-xl); }
  .padding-x-xl\@lg {
    padding-right: var(--space-xl);
    padding-left: var(--space-xl); }
  .padding-y-xl\@lg {
    padding-top: var(--space-xl);
    padding-bottom: var(--space-xl); }
  .padding-top-0\@lg {
    padding-top: 0; }
  .padding-top-xl\@lg {
    padding-top: var(--space-xl); }
  .padding-right-0\@lg {
    padding-right: 0; }
  .padding-right-xl\@lg {
    padding-right: var(--space-xl); }
  .padding-bottom-0\@lg {
    padding-bottom: 0; }
  .padding-bottom-xl\@lg {
    padding-bottom: var(--space-xl); }
  .padding-left-0\@lg {
    padding-left: 0; }
  .padding-left-xl\@lg {
    padding-left: var(--space-xl); }
  .padding-xxl\@lg {
    padding: var(--space-xxl); }
  .padding-x-xxl\@lg {
    padding-right: var(--space-xxl);
    padding-left: var(--space-xxl); }
  .padding-y-xxl\@lg {
    padding-top: var(--space-xxl);
    padding-bottom: var(--space-xxl); }
  .padding-top-0\@lg {
    padding-top: 0; }
  .padding-top-xxl\@lg {
    padding-top: var(--space-xxl); }
  .padding-right-0\@lg {
    padding-right: 0; }
  .padding-right-xxl\@lg {
    padding-right: var(--space-xxl); }
  .padding-bottom-0\@lg {
    padding-bottom: 0; }
  .padding-bottom-xxl\@lg {
    padding-bottom: var(--space-xxl); }
  .padding-left-0\@lg {
    padding-left: 0; }
  .padding-left-xxl\@lg {
    padding-left: var(--space-xxl); } }

@media (min-width: 1024px) {
  .padding-xs\@xl {
    padding: var(--space-xs); }
  .padding-x-xs\@xl {
    padding-right: var(--space-xs);
    padding-left: var(--space-xs); }
  .padding-y-xs\@xl {
    padding-top: var(--space-xs);
    padding-bottom: var(--space-xs); }
  .padding-top-0\@xl {
    padding-top: 0; }
  .padding-top-xs\@xl {
    padding-top: var(--space-xs); }
  .padding-right-0\@xl {
    padding-right: 0; }
  .padding-right-xs\@xl {
    padding-right: var(--space-xs); }
  .padding-bottom-0\@xl {
    padding-bottom: 0; }
  .padding-bottom-xs\@xl {
    padding-bottom: var(--space-xs); }
  .padding-left-0\@xl {
    padding-left: 0; }
  .padding-left-xs\@xl {
    padding-left: var(--space-xs); }
  .padding-sm\@xl {
    padding: var(--space-sm); }
  .padding-x-sm\@xl {
    padding-right: var(--space-sm);
    padding-left: var(--space-sm); }
  .padding-y-sm\@xl {
    padding-top: var(--space-sm);
    padding-bottom: var(--space-sm); }
  .padding-top-0\@xl {
    padding-top: 0; }
  .padding-top-sm\@xl {
    padding-top: var(--space-sm); }
  .padding-right-0\@xl {
    padding-right: 0; }
  .padding-right-sm\@xl {
    padding-right: var(--space-sm); }
  .padding-bottom-0\@xl {
    padding-bottom: 0; }
  .padding-bottom-sm\@xl {
    padding-bottom: var(--space-sm); }
  .padding-left-0\@xl {
    padding-left: 0; }
  .padding-left-sm\@xl {
    padding-left: var(--space-sm); }
  .padding-md\@xl {
    padding: var(--space-md); }
  .padding-x-md\@xl {
    padding-right: var(--space-md);
    padding-left: var(--space-md); }
  .padding-y-md\@xl {
    padding-top: var(--space-md);
    padding-bottom: var(--space-md); }
  .padding-top-0\@xl {
    padding-top: 0; }
  .padding-top-md\@xl {
    padding-top: var(--space-md); }
  .padding-right-0\@xl {
    padding-right: 0; }
  .padding-right-md\@xl {
    padding-right: var(--space-md); }
  .padding-bottom-0\@xl {
    padding-bottom: 0; }
  .padding-bottom-md\@xl {
    padding-bottom: var(--space-md); }
  .padding-left-0\@xl {
    padding-left: 0; }
  .padding-left-md\@xl {
    padding-left: var(--space-md); }
  .padding-lg\@xl {
    padding: var(--space-lg); }
  .padding-x-lg\@xl {
    padding-right: var(--space-lg);
    padding-left: var(--space-lg); }
  .padding-y-lg\@xl {
    padding-top: var(--space-lg);
    padding-bottom: var(--space-lg); }
  .padding-top-0\@xl {
    padding-top: 0; }
  .padding-top-lg\@xl {
    padding-top: var(--space-lg); }
  .padding-right-0\@xl {
    padding-right: 0; }
  .padding-right-lg\@xl {
    padding-right: var(--space-lg); }
  .padding-bottom-0\@xl {
    padding-bottom: 0; }
  .padding-bottom-lg\@xl {
    padding-bottom: var(--space-lg); }
  .padding-left-0\@xl {
    padding-left: 0; }
  .padding-left-lg\@xl {
    padding-left: var(--space-lg); }
  .padding-xl\@xl {
    padding: var(--space-xl); }
  .padding-x-xl\@xl {
    padding-right: var(--space-xl);
    padding-left: var(--space-xl); }
  .padding-y-xl\@xl {
    padding-top: var(--space-xl);
    padding-bottom: var(--space-xl); }
  .padding-top-0\@xl {
    padding-top: 0; }
  .padding-top-xl\@xl {
    padding-top: var(--space-xl); }
  .padding-right-0\@xl {
    padding-right: 0; }
  .padding-right-xl\@xl {
    padding-right: var(--space-xl); }
  .padding-bottom-0\@xl {
    padding-bottom: 0; }
  .padding-bottom-xl\@xl {
    padding-bottom: var(--space-xl); }
  .padding-left-0\@xl {
    padding-left: 0; }
  .padding-left-xl\@xl {
    padding-left: var(--space-xl); }
  .padding-xxl\@xl {
    padding: var(--space-xxl); }
  .padding-x-xxl\@xl {
    padding-right: var(--space-xxl);
    padding-left: var(--space-xxl); }
  .padding-y-xxl\@xl {
    padding-top: var(--space-xxl);
    padding-bottom: var(--space-xxl); }
  .padding-top-0\@xl {
    padding-top: 0; }
  .padding-top-xxl\@xl {
    padding-top: var(--space-xxl); }
  .padding-right-0\@xl {
    padding-right: 0; }
  .padding-right-xxl\@xl {
    padding-right: var(--space-xxl); }
  .padding-bottom-0\@xl {
    padding-bottom: 0; }
  .padding-bottom-xxl\@xl {
    padding-bottom: var(--space-xxl); }
  .padding-left-0\@xl {
    padding-left: 0; }
  .padding-left-xxl\@xl {
    padding-left: var(--space-xxl); } }

.position-absolute {
  position: absolute; }

.position-relative {
  position: relative; }

.position-fixed {
  position: fixed; }

.position-static {
  position: static; }

.position-sticky {
  position: sticky; }

.ce-bodytext p,
.bodytext p {
  margin: 0 0 var(--bodytext-margin); }

.bodytext-margin-sm {
  --bodytext-margin: var(--space-sm); }

.bodytext-margin-md {
  --bodytext-margin: var(--space-md); }

.block {
  display: block; }

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

.inline {
  display: inline-block; }

.flex {
  display: flex; }

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

.hidden {
  /* stylelint-disable declaration-no-important */
  display: none !important;
  /* stylelint-enable */ }

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

@media (min-width: 460px) {
  .block\@md {
    display: block; }
  .inline-block\@md {
    display: inline-block; }
  .inline\@md {
    display: inline-block; }
  .flex\@md {
    display: flex; }
  .inline-flex\@md {
    display: inline-flex; }
  .hidden\@md {
    /* stylelint-disable declaration-no-important */
    display: none !important;
    /* stylelint-enable */ } }

.show\@md {
  /* stylelint-disable declaration-no-important */
  display: none !important;
  /* stylelint-enable */ }
  @media (min-width: 460px) {
    .show\@md {
      /* stylelint-disable declaration-no-important */
      display: inherit !important;
      /* stylelint-enable */ } }

@media (min-width: 768px) {
  .block\@lg {
    display: block; }
  .inline-block\@lg {
    display: inline-block; }
  .inline\@lg {
    display: inline-block; }
  .flex\@lg {
    display: flex; }
  .inline-flex\@lg {
    display: inline-flex; }
  .hidden\@lg {
    /* stylelint-disable declaration-no-important */
    display: none !important;
    /* stylelint-enable */ } }

.show\@lg {
  /* stylelint-disable declaration-no-important */
  display: none !important;
  /* stylelint-enable */ }
  @media (min-width: 768px) {
    .show\@lg {
      /* stylelint-disable declaration-no-important */
      display: inherit !important;
      /* stylelint-enable */ } }

@media (min-width: 1024px) {
  .block\@xl {
    display: block; }
  .inline-block\@xl {
    display: inline-block; }
  .inline\@xl {
    display: inline-block; }
  .flex\@xl {
    display: flex; }
  .inline-flex\@xl {
    display: inline-flex; }
  .hidden\@xl {
    /* stylelint-disable declaration-no-important */
    display: none !important;
    /* stylelint-enable */ } }

.show\@xl {
  /* stylelint-disable declaration-no-important */
  display: none !important;
  /* stylelint-enable */ }
  @media (min-width: 1024px) {
    .show\@xl {
      /* stylelint-disable declaration-no-important */
      display: inherit !important;
      /* stylelint-enable */ } }

.responsive-media {
  position: relative;
  height: 0;
  padding-bottom: 56.25%; }
  .responsive-media iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .responsive-media video,
  .responsive-media img {
    object-fit: cover; }

.responsive-media--4\:3 {
  padding-bottom: 75%; }

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

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

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

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

@media (min-width: 768px) {
  .truncate\@lg {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis; }
  .text-center\@lg {
    text-align: center; }
  .text-left\@lg {
    text-align: left; }
  .text-right\@lg {
    text-align: right; } }

.width--25 {
  width: 25%; }

.width--50 {
  width: 50%; }

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

blockquote {
  line-height: 1.45;
  margin: 0 0 var(--space-md);
  font-weight: 700;
  font-size: 26px; }
  @media (min-width: 768px) {
    blockquote {
      font-size: 30px; } }
  blockquote:before {
    content: "";
    display: block;
    width: 56px;
    height: 48px;
    margin-bottom: var(--space-sm);
    background-size: 56px 48px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 48'%3E%3Cpath fill='%23b8b8b8' fill-rule='nonzero' d='M26.21 47.81V24.14H14.02c.2-2.85 1.16-5.32 2.87-7.41 1.72-2.1 4.83-4.2 9.32-6.3L20.71 0C13.4 3.2 8.23 6.9 5.22 11.07c-3 4.18-4.5 9.89-4.5 17.11v19.63H26.2zm29.7 0V24.14H43.74c.2-2.85 1.15-5.32 2.87-7.41 1.72-2.1 4.83-4.2 9.32-6.3L50.4 0c-7.3 3.2-12.46 6.9-15.47 11.07-3 4.18-4.51 9.89-4.51 17.11v19.63h25.49z'/%3E%3C/svg%3E");
    background-position: center center;
    background-repeat: no-repeat; }
  blockquote p {
    margin-bottom: var(--space-sm); }
    blockquote p:before, blockquote p:after {
      display: inline; }
    blockquote p:before {
      content: "“"; }
    blockquote p:after {
      content: "”"; }
  blockquote cite {
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    color: var(--gray-400); }
    @media (min-width: 768px) {
      blockquote cite {
        font-size: 20px; } }

:root {
  --btn-outline-size: 1px;
  --btn-font-size: 18px;
  --btn-secondary-background: var(--black);
  --btn-primary-outline-color: var(--black);
  --btn-tertiary-background: var(--white);
  --btn-tertiary-color: var(--black); }

.btn {
  line-height: 1.6;
  margin-bottom: var(--space-xs);
  font-weight: 700; }

.btn--no-margin {
  margin-bottom: 0; }

.btn--primary:hover, .btn--primary:focus {
  --btn-primary-background: var(--black); }

.btn--secondary:hover, .btn--secondary:focus {
  --btn-secondary-background: var(--primary-color); }

.btn--tertiary {
  background-color: var(--btn-tertiary-background);
  color: var(--btn-tertiary-color); }
  .btn--tertiary:hover, .btn--tertiary:focus {
    --btn-tertiary-color: var(--secondary-color); }

.btn--outline.btn--primary {
  border-color: var(--gray-700); }
  .btn--outline.btn--primary:hover, .btn--outline.btn--primary:focus {
    border-color: var(--primary-color); }

:root {
  --gray-200: #ebebeb;
  --gray-400: #b8b8b8;
  --gray-700: #a4a4a4;
  --gray-900: #333333;
  --primary-color: var(--gray-900);
  --secondary-color: var(--gray-400);
  --tertiary-color: var(--gray-200);
  --black: #000;
  --white: #fff; }

@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Medium.woff2") format("woff2"), url("../fonts/Montserrat-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Bold.woff2") format("woff2"), url("../fonts/Montserrat-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap; }

:root {
  --label-font-size: 16px;
  --textarea-min-height: 237px;
  --input-border-color: var(--gray-700);
  --select-tick-size: 1px;
  --select-tick-color: var(--gray-900);
  --custom-input-size: 18px;
  --custom-input-tick-height: 10px;
  --custom-checkbox-border-radius: 0;
  --floating-label-size: 10px;
  --floating-label-position-left: calc(var(--space-sm) + 1px);
  --floating-label-transform: translateY(-150%); }

input[type="checkbox"],
input[type="radio"] {
  --label-margin: calc(var(--space-sm) * 1.5); }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea,
select {
  font-size: var(--label-font-size); }

[type='text']::placeholder, [type='password']::placeholder, [type='date']::placeholder, [type='datetime']::placeholder, [type='datetime-local']::placeholder, [type='month']::placeholder, [type='week']::placeholder, [type='email']::placeholder, [type='number']::placeholder, [type='search']::placeholder, [type='tel']::placeholder, [type='time']::placeholder, [type='url']::placeholder, [type='color']::placeholder,
textarea::placeholder {
  color: var(--primary-color); }

textarea {
  width: 100%; }

select {
  cursor: pointer; }

input[type="search"] {
  padding-left: var(--space-lg);
  border: 0;
  background-size: 22px 22px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 20'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath stroke='%23333' d='M16 8c0 4.418-3.582 8-8 8s-8-3.582-8-8 3.582-8 8-8 8 3.582 8 8zM14.545 13.091L19.219 17.764' transform='translate(-79 -162) translate(80 163)'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
  background-position: 14px 50%;
  background-repeat: no-repeat; }
  input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button {
    appearance: none; }
  input[type="search"] ~ label {
    left: var(--space-lg); }

.input-field {
  margin-bottom: var(--space-sm); }

.input-field--floating-label label {
  margin-bottom: 0; }

.input-field--floating-label input:not(:placeholder-shown) {
  --input-padding: var(--space-sm) var(--space-sm) 0 var(--space-sm); }
  .input-field--floating-label input:not(:placeholder-shown) ~ label {
    top: 50%; }

.input-field--floating-label input[type="search"]:not(:placeholder-shown) ~ label {
  left: var(--space-lg); }

.input-field--floating-label textarea ~ label {
  top: var(--space-md); }

.select:after {
  width: 8px;
  height: 8px; }

.select--secondary select {
  border: 0;
  font-weight: 700; }

.custom-input__icon {
  border: 1px solid var(--input-border-color); }

.custom-input {
  --label-font-size: 14px;
  margin-bottom: var(--space-xs); }
  @media (min-width: 768px) {
    .custom-input {
      --label-font-size: 16px; } }
  .custom-input input[type="checkbox"]:checked ~ .custom-input__icon {
    --input-border-color: var(--black); }
  .custom-input input[type="radio"]:checked ~ .custom-input__icon {
    background-color: transparent; }
    .custom-input input[type="radio"]:checked ~ .custom-input__icon:before {
      display: none; }
    .custom-input input[type="radio"]:checked ~ .custom-input__icon:after {
      background-color: var(--primary-color); }

.custom-input--radio .custom-input__icon:after {
  --custom-input-tick-radius: 50%;
  --custom-input-tick-width: 9px;
  --custom-input-tick-height: 9px;
  left: 50%;
  margin: 0;
  border-right: 0;
  border-bottom: 0;
  transform: translate(-50%, -50%); }

:root {
  --base-font-family: "Montserrat", sans-serif; }

table {
  margin-bottom: var(--space-md);
  background-color: var(--white);
  color: var(--black);
  text-align: left;
  border-collapse: collapse; }
  table th {
    background-color: var(--gray-400); }
  table th,
  table td {
    line-height: 1.75;
    padding: var(--space-sm) var(--space-md); }
  table tbody tr:nth-child(odd) td {
    background-color: var(--gray-200); }

:root {
  --anchor-color: currentColor;
  --bodytext-color: var(--gray-900); }

p {
  margin-bottom: var(--bodytext-margin); }

h2,
h5,
h6 {
  font-weight: 500; }

.header-links {
  display: flex;
  flex-direction: column; }
  @media (min-width: 1024px) {
    .header-links {
      flex-direction: row;
      height: 100%;
      padding-right: calc(var(--space-md) + var(--space-xs)); } }

.header-links__link {
  display: flex; }
  .header-links__link a {
    display: flex;
    align-items: center;
    flex-grow: 1;
    padding-right: var(--space-xs);
    padding-left: var(--space-xs);
    text-decoration: none; }
    .header-links__link a:hover, .header-links__link a:focus {
      text-decoration: underline; }
    @media (min-width: 1024px) {
      .header-links__link a {
        padding: 28px var(--space-sm); } }

:root {
  --nav-toggle-width: 20px;
  --nav-toggle-height: 20px;
  --nav-toggle-line-height: 1px;
  --nav-toggle-line-color: var(--black); }

.nav-toggle {
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1;
  padding: 0;
  border: 0;
  background: none;
  font-size: 9px;
  appearance: none; }

.nav-toggle__icon {
  position: relative;
  width: var(--nav-toggle-width);
  height: var(--nav-toggle-height); }

.nav-toggle__line {
  position: absolute;
  display: block;
  width: var(--nav-toggle-width);
  height: var(--nav-toggle-line-height);
  background-color: var(--nav-toggle-line-color);
  transition: opacity 300ms ease, transform 300ms ease, top 300ms ease; }

.nav-toggle__line--1 {
  top: 0; }

.nav-toggle__line--2 {
  top: 50%;
  margin-top: calc((var(--nav-toggle-line-height) / 2) * -1); }

.nav-toggle__line--3 {
  top: calc(100% - var(--nav-toggle-line-height)); }

.nav-toggle[aria-expanded="true"] .nav-toggle__line--1 {
  top: 50%;
  transform: rotate(45deg); }

.nav-toggle[aria-expanded="true"] .nav-toggle__line--2 {
  opacity: 0; }

.nav-toggle[aria-expanded="true"] .nav-toggle__line--3 {
  top: 50%;
  transform: rotate(-45deg); }

.square {
  width: var(--space-lg);
  height: var(--space-lg); }

.square--bordered {
  border: 1px solid var(--gray-200); }

.banner__content {
  bottom: 0;
  padding: 30px; }
  @media screen and (min-width: 768px) {
    .banner__content {
      padding: 40px; } }
  .banner__content .elementButton-title {
    margin-right: 20px;
    font-weight: 700; }

.banner__content h3,
.banner__text p {
  margin-bottom: 10px;
  color: var(--white); }

.banner__content h3 {
  line-height: 1.1;
  font-weight: 700;
  font-size: 28px; }
  @media screen and (min-width: 768px) {
    .banner__content h3 {
      font-size: 32px; } }
  @media screen and (min-width: 1024px) {
    .banner__content h3 {
      font-size: 38px; } }

.banner__text p {
  line-height: 1.4;
  font-weight: 500;
  font-size: 18px; }
  @media screen and (min-width: 768px) {
    .banner__text p {
      font-size: 20px; } }
  @media screen and (min-width: 1024px) {
    .banner__text p {
      font-size: 24px; } }

.banner__image {
  width: 100%; }

.bottombar {
  font-size: 14px; }
  @media (min-width: 460px) {
    .bottombar {
      font-size: 16px; } }

.bottombar__link {
  text-decoration: none; }
  .bottombar__link:hover, .bottombar__link:focus {
    text-decoration: underline; }

.grid-container--bg-grey {
  padding-top: var(--space-md);
  background-color: var(--gray-200); }

.elementButton {
  display: inline-block;
  padding: 15px 20px;
  text-decoration: none;
  font-size: 16px;
  color: var(--black);
  background-color: var(--white); }
  @media screen and (min-width: 768px) {
    .elementButton {
      font-size: 18px; } }

.footer {
  --bodytext-color: var(--white);
  --anchor-color: var(--white);
  overflow: hidden;
  background-color: var(--primary-color);
  color: var(--white); }

.footer__logo-link {
  margin-bottom: var(--space-md); }
  @media (min-width: 460px) {
    .footer__logo-link {
      margin-bottom: var(--space-sm); } }

.footer__logo {
  width: 112px;
  height: 15px;
  color: var(--white); }
  @media (min-width: 460px) {
    .footer__logo {
      height: 29px; } }
  @media (min-width: 768px) {
    .footer__logo {
      height: 42px; } }

@media (min-width: 460px) {
  .footer__menu {
    margin-bottom: var(--space-md); } }

.footer__menu-list {
  display: none; }
  .footer__menu-list[aria-hidden="false"] {
    display: block;
    margin-bottom: var(--space-sm); }
    @media (min-width: 460px) {
      .footer__menu-list[aria-hidden="false"] {
        margin-bottom: 0; } }
  @media (min-width: 460px) {
    .footer__menu-list {
      display: block; } }

.footer-menu__column--has-socials,
.footer__menu-header {
  position: relative; }
  .footer-menu__column--has-socials:before,
  .footer__menu-header:before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(var(--space-sm) * -1);
    right: calc(var(--space-sm) * -1);
    display: block;
    height: 1px;
    background-color: var(--tertiary-color);
    opacity: 0.6; }
    @media (min-width: 460px) {
      .footer-menu__column--has-socials:before,
      .footer__menu-header:before {
        display: none; } }

.footer__menu-header {
  padding-top: var(--space-sm);
  padding-bottom: var(--space-sm);
  margin-bottom: 0;
  font-size: 14px;
  cursor: pointer; }
  .footer__menu-header:hover, .footer__menu-header:focus {
    text-decoration: underline; }
  .footer__menu-header[aria-expanded="true"] .footer__menu-svg {
    transform: scaleY(-1); }
  @media (min-width: 460px) {
    .footer__menu-header {
      padding: 0;
      margin-bottom: var(--space-sm);
      font-size: 18px;
      cursor: default; } }

@media (min-width: 460px) {
  .footer__menu-svg {
    display: none; } }

@media (min-width: 460px) {
  .footer__columns {
    padding-bottom: var(--space-md); } }

.footer-menu__column--has-socials {
  padding-top: var(--space-md); }
  @media (min-width: 460px) {
    .footer-menu__column--has-socials {
      padding-top: 0; } }

.footer__subheader {
  font-size: 18px;
  font-weight: 500;
  line-height: var(--base-line-height); }

.footer__link {
  text-decoration: none; }
  .footer__link:hover, .footer__link:focus {
    text-decoration: underline; }

.footer-menu__column {
  line-height: calc(var(--base-line-height) * 1.1); }

.footer__bottombar {
  position: relative;
  max-width: var(--container-width);
  width: 100%;
  margin: 0 auto; }
  .footer__bottombar:before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(var(--space-md) / -2);
    right: calc(var(--space-md) / -2);
    display: block;
    height: 1px;
    background-color: var(--tertiary-color);
    opacity: 0.2; }
    @media (min-width: 460px) {
      .footer__bottombar:before {
        left: calc(var(--space-md) / 2);
        right: calc(var(--space-md) / 2); } }

.icon-list {
  padding-top: calc(var(--space-xs) * 1.5);
  padding-bottom: calc(var(--space-xs) * 1.5);
  background-color: var(--secondary-color);
  font-size: 12px;
  color: var(--primary-color); }

.page-header .icon-list__item {
  margin-bottom: 0; }

.load-more__progress {
  display: flex;
  align-items: center;
  height: 2px;
  background-color: var(--gray-200); }

.load-more__indicator {
  height: 6px;
  background-color: var(--gray-700); }

:root {
  --navigation-breakpoint: xl;
  --dropdown-large-padding: var(--space-sm) 0;
  --dropdown-background-color: var(--white);
  --dropdown-column-width: 20%; }

@media (min-width: 1024px) {
  .main-menu__item--has-submenu:hover .main-menu__dropdown, .main-menu__item--has-submenu:focus .main-menu__dropdown {
    display: flex; } }

.main-menu__link {
  text-decoration: none;
  padding: var(--space-sm);
  font-weight: 700; }
  .main-menu__link:hover, .main-menu__link:focus {
    text-decoration: underline; }
  .main-menu__link.main-menu__link--sub {
    --anchor-color: var(--primary-color); }
  @media (min-width: 1024px) {
    .main-menu__link {
      --anchor-color: var(--white);
      padding: var(--space-md) calc(var(--space-sm) * 1.5); } }

.main-menu__link-label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  pointer-events: none; }
  .main-menu__link-label .icon {
    transform: rotate(-90deg); }
    @media (min-width: 1024px) {
      .main-menu__link-label .icon {
        display: none; } }

.main-menu__dropdown {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  display: none;
  background-color: var(--dropdown-background-color); }
  .main-menu__dropdown[aria-hidden="false"] {
    display: flex; }
  @media (min-width: 1024px) {
    .main-menu__dropdown {
      top: auto;
      bottom: auto; } }

@media (min-width: 1024px) {
  .main-menu__dropdown--large {
    justify-content: center;
    padding: var(--dropdown-large-padding); } }

@media (min-width: 1024px) {
  .main-menu__dropdown--sub {
    position: static; } }

.main-menu__dropdown-inner {
  margin: 0 auto;
  width: 100%;
  max-width: var(--container-width); }

@media (min-width: 1024px) {
  .main-menu__dropdown-item--current {
    display: none; } }

@media (min-width: 1024px) {
  .main-menu__column {
    max-width: var(--dropdown-column-width); } }

.main-menu__column-title {
  display: flex;
  justify-content: space-between;
  align-items: center; }
  @media (min-width: 1024px) {
    .main-menu__column-title .icon {
      display: none; } }

:root {
  --logo-width: 100px;
  --logo-height: 48px; }

.page-header__topbar {
  background-color: var(--secondary-color); }

.page-header__content {
  background-color: var(--white); }

.page-header__logo {
  width: var(--logo-width);
  height: var(--logo-height); }
  @media (min-width: 1024px) {
    .page-header__logo {
      --logo-width: 112px; } }

.page-header__navigation {
  position: relative;
  left: 0;
  display: none;
  width: 100%; }
  .page-header__navigation[aria-hidden="false"] {
    display: block; }
  @media (min-width: 1024px) {
    .page-header__navigation {
      position: static;
      left: auto;
      display: flex;
      width: auto; } }

.page-header__search label {
  pointer-events: none; }

.page-header__search input[type="search"] {
  font-size: 14px;
  background-color: var(--gray-200);
  border-bottom: 1px solid var(--gray-400); }
  @media (min-width: 1024px) {
    .page-header__search input[type="search"] {
      font-size: 16px;
      background-color: 1px solid var(--white);
      border-bottom: 0; } }

.page-header__search .input-field {
  margin-bottom: 0; }

.page-header__actions {
  align-self: stretch;
  align-items: center;
  margin-left: auto; }
  @media (min-width: 1024px) {
    .page-header__actions {
      padding-left: var(--space-md);
      border-left: 1px solid var(--tertiary-color); } }

.page-header__action {
  display: flex;
  align-self: stretch;
  align-items: stretch; }
  @media (min-width: 1024px) {
    .page-header__action {
      margin-right: var(--space-xs); }
      .page-header__action:last-child {
        margin-right: 0; } }

.page-header__action-link {
  justify-content: center;
  text-decoration: none; }
  .page-header__action-link:hover, .page-header__action-link:focus {
    text-decoration: underline; }

.page-header__action-label {
  display: none;
  font-size: 12px; }
  @media (min-width: 1024px) {
    .page-header__action-label {
      display: block; } }

@media (min-width: 1024px) {
  .page-navigation {
    background-color: var(--primary-color); } }

.page-navigation .icon {
  pointer-events: none; }

.pagination {
  color: var(--gray-700); }

.pagination__item {
  padding-right: 5px; }
  .pagination__item:last-child {
    padding-right: 0; }

.pagination__item--prev,
.pagination__item--next {
  padding-right: 0; }

.pagination__item--prev .pagination__link {
  padding-left: 0; }

.pagination__item--next .pagination__link {
  padding-right: 0; }

.pagination__link {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: var(--space-xs);
  text-align: center;
  text-decoration: none; }
  .pagination__link:not(.pagination__link--next):hover, .pagination__link:not(.pagination__link--next):focus {
    color: var(--black); }
  .pagination__link:not(.pagination__link--prev):not(.pagination__link--next) {
    padding: var(--space-xs); }
  .pagination__link:not(.pagination__link--prev):not(.pagination__link--next):not(.pagination__link--more) {
    min-width: 42px;
    line-height: 1.8;
    border: 1px solid currentColor; }

.pagination__link--current {
  color: var(--black); }

.pagination__link--current,
.pagination__link--more {
  pointer-events: none; }

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

.background--secondary {
  background-color: var(--secondary-color); }

.background--tertiary {
  background-color: var(--tertiary-color); }

.background--white {
  background-color: var(--white); }

.background--black {
  background-color: var(--black); }

.background--gray-700 {
  background-color: var(--gray-700); }

.color--primary {
  color: var(--primary-color); }

.color--secondary {
  color: var(--secondary-color); }

.color--tertiary {
  color: var(--tertiary-color); }

.color--white {
  color: var(--white); }

.color--black {
  color: var(--black); }

.color--gray-700 {
  color: var(--gray-700); }

.font-size--18 {
  font-size: 18px; }

.margin-top-auto {
  margin-top: auto; }

.radius--50 {
  border-radius: 50%; }
