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

@font-face {
  font-family: Helveticanowdisplay;
  src: url('../fonts/HelveticaNowDisplay-Regular.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Ppeditorialnew;
  src: url('../fonts/PPEditorialNew-Ultralight-BF644b21500d0c0.otf') format("opentype");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

:root {
  --color--neutral--200: #e3e3e3;
  --color--neutral--light: white;
  --color--neutral--dark: black;
  --color--neutral--300: #c6c6c6;
  --color--neutral--400: #aaa;
  --color--neutral--500: #8e8e8e;
  --color--neutral--600: #717171;
  --color--neutral--700: #555;
  --color--neutral--800: #393939;
  --color--neutral--900: #1c1c1c;
}

.w-form-formradioinput--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 50%;
  width: 12px;
  height: 12px;
}

.w-form-formradioinput--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

.w-form-formradioinput--inputType-custom.w--redirected-checked {
  border-width: 4px;
  border-color: #3898ec;
}

body {
  color: #333;
  font-family: Helveticanowdisplay, Arial, sans-serif;
  font-size: .833vw;
  line-height: 1.5;
}

h1 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 4em;
  font-weight: 500;
  line-height: 1.1;
}

h2 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3em;
  font-weight: 500;
  line-height: 1.2;
}

h3 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2.5em;
  font-weight: 500;
  line-height: 1.2;
}

h4 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2em;
  font-weight: 500;
  line-height: 1.3;
}

h5 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.5em;
  font-weight: 500;
  line-height: 1.3;
}

h6 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.25em;
  font-weight: 500;
  line-height: 1.3;
}

p {
  margin-bottom: 0;
}

a {
  text-decoration: none;
}

img {
  object-fit: cover;
  max-width: 100%;
  display: inline-block;
}

.max-width-full {
  width: 100%;
  max-width: none;
}

.fs-styleguide_label {
  color: #fff;
  background-color: #2d62ff;
  border-radius: .25rem;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: .25rem .75rem .3rem;
  font-weight: 600;
  display: flex;
}

.fs-styleguide_label.is-tag {
  background-color: #dd23bb;
}

.text-size-tiny {
  font-size: .75em;
}

.heading-style-h2 {
  font-size: 3em;
  font-weight: 500;
}

.fs-styleguide_section-header {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-bottom: 1px solid #eee;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  padding-bottom: 3rem;
  line-height: 1.4;
  display: grid;
}

.padding-section-large {
  padding-top: 8em;
  padding-bottom: 8em;
}

.fs-styleguide_hero-label {
  color: #000;
  text-transform: uppercase;
  background-color: #eee;
  border-radius: .25rem;
  padding: .25rem .375rem;
  font-size: .75rem;
  font-weight: 500;
  text-decoration: none;
}

.heading-style-h6 {
  font-size: 1.25em;
  font-weight: 500;
  line-height: 1.3;
}

.fs-styleguide_background {
  border: 1px solid #0000001a;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  display: flex;
}

.background-color-neutral-200 {
  background-color: var(--color--neutral--200);
}

.overflow-visible {
  overflow: visible;
}

.fs-styleguide_header-block {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: center start;
  display: grid;
}

.overflow-hidden {
  overflow: hidden;
}

.pointer-events-none {
  pointer-events: none;
}

.fs-styleguide_item-header {
  border-bottom: 1px solid #0000001a;
  width: 100%;
  padding-bottom: 2rem;
}

.fs-styleguide_heading-header {
  font-size: 6rem;
}

.fs-styleguide_item-wrapper {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.text-weight-xbold {
  font-weight: 800;
}

.fs-styleguide_section {
  grid-column-gap: 6rem;
  grid-row-gap: 6rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: start;
  display: grid;
}

.fs-styleguide_section.is-vertical {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-columns: 1fr;
}

.button-icon {
  flex-flow: column;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  display: flex;
}

.form_checkbox {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.fs-styleguide_header {
  color: #fff;
  background-color: #000;
  background-image: radial-gradient(circle at 100% 100%, #dd23bb40, #0000 40%), radial-gradient(circle at 0 100%, #2d62ff4d, #0000 60%);
}

.form_input {
  background-color: #0000;
  border: 1px solid #eee;
  min-height: 3rem;
  margin-bottom: .75rem;
  padding: .5rem 1rem;
}

.form_input::placeholder, .form_input.is-select-input {
  color: #222;
}

.form_input.is-text-area {
  min-height: 8rem;
  padding-top: .75rem;
}

.pointer-events-auto {
  pointer-events: auto;
}

.max-width-medium {
  width: 100%;
  max-width: 32rem;
}

.text-color-alternate {
  color: #fff;
}

.text-weight-medium {
  font-weight: 500;
}

.text-style-muted {
  opacity: .6;
}

.container-small {
  width: 100%;
  max-width: 48em;
  margin-left: auto;
  margin-right: auto;
}

.text-color-neutral-light {
  color: var(--color--neutral--light);
}

.text-size-regular {
  font-size: 1em;
}

.text-size-regular.text-color-neutral-light.is-line {
  text-decoration: underline;
}

.form_component {
  margin-bottom: 0;
}

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

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

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

.hide {
  display: none;
}

.heading-style-h1 {
  font-size: 4em;
  font-weight: 500;
  line-height: 1.1;
}

.overflow-scroll {
  overflow: scroll;
}

.aspect-ratio-portrait {
  aspect-ratio: 2 / 3;
  object-fit: cover;
}

.button-group {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.z-index-1 {
  z-index: 1;
  position: relative;
}

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

.padding-section-small {
  padding-top: 3em;
  padding-bottom: 3em;
}

.aspect-ratio-landscape {
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

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

.form_radio {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.text-weight-light {
  font-weight: 300;
}

.fs-styleguide_classes {
  grid-column-gap: 1px;
  grid-row-gap: 1px;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.overflow-auto {
  overflow: auto;
}

.text-style-italic {
  font-style: italic;
  font-weight: 200;
}

.text-weight-semibold {
  font-weight: 600;
}

.fs-styleguide_empty-box {
  z-index: -1;
  background-color: #2d40ea0d;
  border: 1px dashed #2d40ea;
  min-width: 3rem;
  height: 3rem;
  position: relative;
}

.text-color-neutral-200 {
  color: var(--color--neutral--200);
}

.aspect-ratio-widescreen {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.heading-style-h4 {
  font-size: 2em;
  font-weight: 500;
  line-height: 1.3;
}

.form_message-success {
  color: #114e0b;
  background-color: #cef5ca;
  padding: 1.25rem;
}

.aspect-ratio-square {
  aspect-ratio: 1;
  object-fit: cover;
}

.background-color-neutral-dark {
  background-color: var(--color--neutral--dark);
}

.heading-style-h3 {
  font-size: 2.5em;
}

.fs-styleguide_heading-medium {
  font-size: 4rem;
}

.button {
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 20em;
  padding: .75em 1.25em;
  font-size: .875em;
  font-weight: 500;
  text-decoration: none;
}

.button.is-text {
  color: #000;
  background-color: #0000;
  border: 2px solid #0000;
}

.button.is-secondary {
  color: #000;
  background-color: #0000;
  border: 1px solid #222;
}

.button.is-large {
  padding: 1rem 2rem;
}

.button.is-icon {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  display: flex;
}

.button.is-small {
  padding: .5rem 1.25rem;
}

.button.is-light {
  background-color: var(--color--neutral--light);
  color: var(--color--neutral--dark);
}

.align-center {
  margin-left: auto;
  margin-right: auto;
}

.text-style-allcaps {
  text-transform: uppercase;
}

.fs-styleguide_spacing {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  background-image: linear-gradient(to top, #2d40ea1a, #fff0);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start stretch;
  display: grid;
  position: relative;
}

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

.form_radio-icon {
  width: .875rem;
  height: .875rem;
  margin-top: 0;
  margin-left: 0;
  margin-right: .5rem;
}

.form_radio-icon.w--redirected-checked {
  border-width: .25rem;
  width: .875rem;
  height: .875rem;
}

.form_radio-icon.w--redirected-focus {
  width: .875rem;
  height: .875rem;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.fs-styleguide_background-space {
  width: 1px;
  height: 1px;
  margin: 5rem;
}

.text-size-small {
  font-size: .875em;
}

.global-styles {
  display: block;
  position: fixed;
  inset: 0% auto auto 0%;
}

.text-size-xlarge {
  font-size: 1.5em;
}

.form_message-error {
  color: #3b0b0b;
  background-color: #f8e4e4;
  margin-top: .75rem;
  padding: .75rem;
}

.container-large {
  width: 100%;
  max-width: 117em;
  margin-left: auto;
  margin-right: auto;
}

.spacing-clean {
  margin: 0;
  padding: 0;
}

.fs-styleguide_4-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.heading-style-h5 {
  font-size: 1.5em;
  font-weight: 500;
  line-height: 1.3;
}

.fs-styleguide_3-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: stretch;
  width: 100%;
  display: grid;
}

.fs-styleguide_item {
  grid-column-gap: 1.125rem;
  grid-row-gap: 1.125rem;
  border-bottom: 1px solid #0000001a;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start;
  padding-bottom: 3rem;
  display: grid;
  position: relative;
}

.fs-styleguide_item.is-stretch {
  justify-items: stretch;
}

.text-style-nowrap {
  white-space: nowrap;
}

.z-index-2 {
  z-index: 2;
  position: relative;
}

.padding-global {
  padding-left: 1.5em;
  padding-right: 1.5em;
}

.text-style-link {
  color: #2d62ff;
  text-decoration: underline;
}

.padding-section-medium {
  padding-top: 5em;
  padding-bottom: 5em;
}

.background-color-neutral-300 {
  background-color: var(--color--neutral--300);
}

.text-size-medium {
  font-size: 1.125em;
}

.fs-styleguide_row {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-direction: row;
  grid-template-rows: auto;
  grid-template-columns: auto;
  grid-auto-columns: auto;
  grid-auto-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.background-color-neutral-light {
  background-color: var(--color--neutral--light);
}

.container-medium {
  width: 100%;
  max-width: 64em;
  margin-left: auto;
  margin-right: auto;
}

.text-style-quote {
  border-left: .25rem solid #e2e2e2;
  margin-bottom: 0;
  padding: 0 1.25rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.fs-styleguide_1-col {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.fs-styleguide_message {
  color: #5e5515;
  background-color: #fcf8d8;
  border-radius: .25rem;
  padding: .25rem .5rem;
  font-size: .875rem;
}

.layer {
  justify-content: center;
  align-items: center;
  position: absolute;
  inset: 0%;
}

.form_checkbox-icon {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form_checkbox-icon.w--redirected-checked {
  background-size: 90%;
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form_checkbox-icon.w--redirected-focus {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.section {
  z-index: 1;
  background-color: var(--color--neutral--light);
  position: relative;
}

.section.is-home-hero {
  z-index: 1;
  mix-blend-mode: difference;
  background-color: #fff0;
  position: fixed;
  inset: 0%;
}

.text-color-neutral-300 {
  color: var(--color--neutral--300);
}

.text-color-neutral-400 {
  color: var(--color--neutral--400);
}

.text-color-neutral-500 {
  color: var(--color--neutral--500);
}

.text-color-neutral-600 {
  color: var(--color--neutral--600);
}

.text-color-neutral-700 {
  color: var(--color--neutral--700);
}

.text-color-neutral-800 {
  color: var(--color--neutral--800);
}

.text-color-neutral-900 {
  color: var(--color--neutral--900);
}

.text-color-neutral-dark {
  color: var(--color--neutral--dark);
}

.background-color-neutral-400 {
  background-color: var(--color--neutral--400);
}

.background-color-neutral-500 {
  background-color: var(--color--neutral--500);
}

.background-color-neutral-600 {
  background-color: var(--color--neutral--600);
}

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

.background-color-neutral-800 {
  background-color: var(--color--neutral--800);
}

.background-color-neutral-900 {
  background-color: var(--color--neutral--900);
}

.text-size-large {
  font-size: 1.25em;
}

.navbar {
  z-index: 99;
  mix-blend-mode: difference;
  padding-top: 1em;
  padding-bottom: 1em;
  position: fixed;
  inset: 0% 0% auto;
}

.navbar-component {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.nav_brand {
  color: var(--color--neutral--light);
  font-size: 1.5em;
  font-weight: 500;
  text-decoration: none;
}

.nav_location {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  justify-content: center;
  align-items: center;
  display: flex;
}

.nav_time {
  grid-column-gap: .375em;
  grid-row-gap: .375em;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: relative;
  left: -6em;
}

.nav_time.is-footer {
  left: auto;
}

.nav_links {
  grid-column-gap: .563em;
  grid-row-gap: .563em;
  justify-content: center;
  align-items: center;
  display: flex;
}

.nav_language {
  grid-column-gap: .563em;
  grid-row-gap: .563em;
  color: var(--color--neutral--light);
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
  left: 4.4em;
}

.nav_cta {
  grid-column-gap: .375em;
  grid-row-gap: .375em;
  justify-content: center;
  align-items: center;
  padding-bottom: .375em;
  line-height: 1;
  text-decoration: none;
  display: flex;
  position: relative;
  overflow: hidden;
}

.nav_link {
  color: var(--color--neutral--light);
  font-size: .875em;
  text-decoration: none;
}

.flag-br {
  width: 1em;
  height: .625em;
  color: var(--color--neutral--light);
  justify-content: center;
  align-items: center;
  display: flex;
}

.flag-br.is-light {
  filter: invert();
}

.image-full {
  object-fit: cover;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.icon-nav-time {
  background-color: var(--color--neutral--light);
  width: .25em;
  height: .25em;
}

.icon-nav-time.background-color-neutral-light {
  background-color: var(--color--neutral--light);
}

.link-language {
  color: var(--color--neutral--light);
  text-transform: uppercase;
  font-size: .875em;
  text-decoration: none;
}

.nav_divider {
  color: var(--color--neutral--light);
  font-size: .875em;
}

.nav_cta_icon {
  justify-content: center;
  align-items: center;
  width: .563em;
  height: .375em;
  display: flex;
}

.line-cta {
  background-color: #000;
  height: 1px;
  position: absolute;
  inset: auto 0% 0%;
}

.line-cta.is-light {
  background-color: #fff;
}

.hero-component {
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 100svh;
  display: flex;
  position: relative;
}

.max-width-36em {
  width: 36em;
}

.pp-font {
  font-family: Ppeditorialnew, Arial, sans-serif;
  font-weight: 200;
}

.max-width-25em {
  width: 25em;
}

.hero_footer {
  z-index: 1;
  justify-content: space-between;
  align-items: center;
  padding: 1em 1.5em;
  display: flex;
  position: fixed;
  inset: auto 0% 0%;
}

.text-color-b3b3b3 {
  color: #b3b3b3;
}

.footer_credit {
  grid-column-gap: .375em;
  grid-row-gap: .375em;
  cursor: pointer;
  justify-content: center;
  align-items: flex-end;
  display: flex;
}

.button_link {
  padding-bottom: .25em;
  line-height: 1;
  text-decoration: none;
  position: relative;
}

.contact-modal {
  z-index: 98;
  justify-content: center;
  align-items: center;
  height: 100svh;
  padding: 1em;
  display: none;
  position: fixed;
  inset: 0%;
}

.contact-modal_overlay {
  -webkit-backdrop-filter: blur(1.5em);
  backdrop-filter: blur(1.5em);
  background-color: #0000000d;
  position: absolute;
  inset: 0%;
}

.contact-modal_card {
  z-index: 2;
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  background-color: #f0f0f0;
  border-radius: 1em;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 38em;
  padding: 1.89em;
  display: flex;
  position: relative;
}

.contact-modal_close {
  z-index: 2;
  cursor: pointer;
  background-color: #50505066;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 4em;
  min-width: 4em;
  height: 4em;
  min-height: 4em;
  display: flex;
  position: absolute;
  top: 5.313em;
  right: 1.25em;
}

.icon-close-modal {
  width: 1em;
  height: 1em;
}

.form_contact {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.form_row {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.form-block {
  width: 100%;
  margin-bottom: 0;
}

.form-content {
  grid-column-gap: .75em;
  grid-row-gap: .75em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.form_field {
  border: 1px solid #9f9f9f4d;
  border-radius: .473em;
  height: 3.307em;
  margin-bottom: 0;
  padding: .875em 1em;
}

.form_field::placeholder {
  color: #000c;
  font-size: .938em;
}

.form_field.is-project {
  height: auto;
  padding-bottom: 8.188em;
}

.form_group {
  grid-column-gap: 1.25em;
  grid-row-gap: 1.25em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.radio_group {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.radio_text {
  opacity: .5;
  color: #000;
  margin-bottom: 0;
  font-size: .944em;
  font-weight: 400;
}

.radio-button {
  border: 1px solid #9f9f9f80;
  width: .945em;
  height: .945em;
  margin-top: 0;
  margin-right: .75em;
}

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

.about-modal {
  z-index: 98;
  justify-content: center;
  align-items: center;
  height: 100svh;
  padding: 5.313em 1em 2em;
  display: none;
  position: fixed;
  inset: 0%;
}

.about-modal_card {
  z-index: 2;
  grid-column-gap: 2.5em;
  grid-row-gap: 2.5em;
  background-color: #f0f0f0;
  border-radius: .563em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 38em;
  max-height: 80vh;
  padding: 1.25em 1.375em;
  display: flex;
  position: relative;
  overflow: scroll;
}

.about-modal_close {
  z-index: 2;
  cursor: pointer;
  background-color: #50505066;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 4em;
  min-width: 4em;
  height: 4em;
  min-height: 4em;
  display: flex;
  position: absolute;
  top: 5.313em;
  right: 1.25em;
}

.about-modal_overlay {
  -webkit-backdrop-filter: blur(1.5em);
  backdrop-filter: blur(1.5em);
  background-color: #0000000d;
  position: absolute;
  inset: 0%;
}

.letter-spacing {
  letter-spacing: -.02em;
}

.about-modal_image {
  border-radius: .563em;
  flex: none;
  width: 100%;
  height: 32.5em;
  overflow: hidden;
}

.component_cases {
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.cases_sidebar {
  flex-flow: column;
  flex: none;
  justify-content: space-between;
  align-items: flex-start;
  width: 19.688em;
  height: 100vh;
  padding-top: 8em;
  padding-bottom: 2em;
  padding-right: 1.5em;
  display: flex;
  position: sticky;
  top: 0;
}

.cases_sidebar.bigger-padding {
  padding-top: 8em;
}

.cases_sidebar_title {
  grid-column-gap: 1.125em;
  grid-row-gap: 1.125em;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.cases_sidebar_description {
  grid-column-gap: .813em;
  grid-row-gap: .813em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 14.118em;
  display: flex;
}

.cases_sidebar_content {
  grid-column-gap: 1.875em;
  grid-row-gap: 1.875em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.cases_sidebar_content.is-mobile {
  display: none;
}

.cases_content {
  grid-column-gap: 2.25em;
  grid-row-gap: 2.25em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  padding-top: 8em;
  padding-bottom: 2em;
  display: flex;
}

.cases_header {
  grid-column-gap: 37.9em;
  grid-row-gap: 37.9em;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.cases_collection {
  width: 100%;
}

.cases_list {
  grid-column-gap: 1.25em;
  grid-row-gap: 2.5em;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.case_item {
  grid-column-gap: 1.25em;
  grid-row-gap: 1.25em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.case_image {
  border-radius: .188em;
  width: 100%;
  height: 37.5em;
  position: relative;
  overflow: hidden;
}

.case_info {
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.link-case {
  z-index: 1;
  position: absolute;
  inset: 0%;
}

.component_cases-index {
  justify-content: flex-end;
  align-items: flex-start;
  display: flex;
}

.cases_index {
  grid-column-gap: 2em;
  grid-row-gap: 2em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 97.25em;
  display: flex;
}

.cases_index_collection {
  width: 100%;
}

.cases_index_list {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.cases_index_item {
  border-bottom: 1px solid #0000001a;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-top: 1.25em;
  padding-bottom: 1.25em;
  display: flex;
  position: relative;
}

.case_meta {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 77.4em;
  display: flex;
}

.case_details {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 59.813em;
  display: flex;
}

.case_description {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 31.1em;
  display: flex;
}

.service_tag {
  color: #333;
  letter-spacing: -.02em;
  text-transform: uppercase;
  background-color: #f0f0f0;
  border-radius: 21em;
  padding: .313em .625em;
  font-size: .75em;
}

.case_services_list {
  grid-column-gap: .375em;
  grid-row-gap: .375em;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.collection-services {
  width: 10.375em;
}

.footer {
  flex-flow: column;
  justify-content: space-between;
  height: 100vh;
  max-height: 100vh;
  display: flex;
}

.component_footer {
  background-color: var(--color--neutral--dark);
  flex-flow: column;
  height: 50%;
  padding: 1.5em 1.5em 1em;
  display: flex;
}

.footer_bottom {
  justify-content: space-between;
  align-items: center;
  padding: .75em 1.5em;
  display: flex;
}

.back-to-top {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  -webkit-text-decoration-color: var(--color--neutral--light);
  text-decoration-color: var(--color--neutral--light);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.arrow-top {
  width: .563em;
  height: .875em;
}

.footer_grid-toggle {
  grid-column-gap: .375em;
  grid-row-gap: .375em;
  cursor: pointer;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.footer_grid-toggle.is-rel {
  position: relative;
  left: 2.4em;
}

.footer_top {
  justify-content: space-between;
  align-items: stretch;
  height: 100%;
  display: flex;
}

.footer-left {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.footer_cta {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.footer_content {
  grid-column-gap: 9.75em;
  grid-row-gap: 9.75em;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  max-width: 57.6em;
  display: flex;
}

.footer_bar {
  justify-content: space-between;
  align-items: center;
  width: 36.625em;
  display: flex;
}

.footer_navigation {
  grid-column-gap: 1.25em;
  grid-row-gap: 1.25em;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.footer_menu {
  grid-column-gap: .75em;
  grid-row-gap: .75em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 28.438em;
  display: flex;
}

.footer_menu_list {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.link_footer {
  color: var(--color--neutral--light);
  font-size: 1em;
  text-decoration: none;
}

.footer_logo {
  background-color: #121212;
  width: 100%;
  height: 100%;
  margin-bottom: 0;
}

.cases-sidebar_content {
  grid-column-gap: 3em;
  grid-row-gap: 3em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.case_meta-sidebar {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.text-size-micro {
  font-size: .5em;
}

.bar-meta {
  background-color: #949494;
  width: 1.5em;
  height: 1px;
  display: none;
}

.body-large {
  margin-bottom: 0;
  font-size: 18px;
  line-height: 160%;
  text-decoration: none;
}

.body-large.text-color-light {
  color: #d6d6d6;
}

.what-question {
  color: #282422;
  text-transform: uppercase;
  flex: 1;
  font-size: .875em;
  font-weight: 400;
}

.plus-icon {
  width: 100%;
  max-width: .563em;
  height: .875em;
  margin-top: 0;
}

.what-answer-block {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding-top: 1.25em;
  padding-bottom: 0;
  padding-left: .75em;
  display: flex;
}

.case_faq {
  flex-flow: column;
  width: 100%;
  display: flex;
}

.answer-block {
  background-color: #0000;
  display: block;
  position: relative;
  overflow: hidden;
}

.question-block {
  grid-column-gap: 12px;
  white-space: pre-wrap;
  width: 100%;
  padding: 30px 0 0;
  display: flex;
}

.question-block.top {
  justify-content: flex-start;
  align-items: center;
  padding-top: 0;
}

.question-inner {
  grid-column-gap: .25em;
  grid-row-gap: .25em;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.faq_item {
  flex-direction: column;
  width: 100%;
  padding-top: 1em;
  padding-bottom: 1em;
  display: flex;
}

.ball-question {
  background-color: #f2f2f2;
  border-radius: 100%;
  width: .375em;
  height: .375em;
  display: none;
}

.faq_answer {
  color: gray;
  letter-spacing: -.02em;
  font-size: .75em;
}

.component_cases_intern {
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.cms-item {
  width: 100%;
}

.line-divider {
  background-image: linear-gradient(90deg, #dcd7d600, #dcd7d6 50%, #dcd7d600);
  width: 100%;
  height: 1px;
}

.line-divider.is-black {
  background-image: linear-gradient(90deg, #dcd7d600, #dcd7d64d 50%, #dcd7d600);
}

.cube-divider {
  border: 1px solid #dcd7d6;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 1.125em;
  height: 1.125em;
  display: flex;
}

.cube-divider.is-black {
  opacity: .3;
}

.blogs-collection-wrapper {
  width: 100%;
}

.ball-divider {
  background-color: #dcd7d6;
  border-radius: .25rem;
  flex: none;
  width: .625em;
  height: .625em;
}

.project_gallery-wrapper {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  width: 100%;
  padding-top: 4.625em;
  display: flex;
}

.cms-list._01 {
  width: 100%;
}

.project_image {
  width: 100%;
  height: 100%;
  max-height: 54.703em;
  overflow: hidden;
}

.line-section {
  grid-column-gap: 3em;
  grid-row-gap: 3em;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0% 0% auto;
}

.line-section.is-relative {
  width: 100%;
  position: relative;
}

.component_more-cases {
  grid-column-gap: 3em;
  grid-row-gap: 3em;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.more-cases_cta {
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.case_card {
  grid-column-gap: .75em;
  grid-row-gap: .75em;
  flex-flow: column;
  width: 100%;
  max-width: 57.4em;
  display: flex;
}

.case_card_media {
  border-radius: .188em;
  height: 34.063em;
  position: relative;
  overflow: hidden;
}

.case_card_info {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.footer_embed-wrap {
  background-color: #121212;
  flex-flow: column;
  height: 50%;
  display: flex;
}

.animated-grid {
  z-index: 200;
  pointer-events: none;
  display: block;
  position: fixed;
  inset: 0;
}

.container {
  width: 100%;
  max-width: var(--size-container);
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5em;
  padding-right: 1.5em;
}

.container.is--full-height {
  height: 100%;
}

.animated-grid__row {
  grid-column-gap: 1.5em;
  grid-row-gap: 1.5em;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  display: grid;
  overflow: clip;
}

.animated-grid__col {
  opacity: .2;
  background-color: silver;
  width: 100%;
  height: 100%;
  min-height: 100vh;
}

.nav_left-row {
  grid-column-gap: 18.8em;
  grid-row-gap: 18.8em;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.nav_right-row {
  grid-column-gap: 14.6em;
  grid-row-gap: 14.6em;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.nex-case_item {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.padding-section-xlarge {
  padding-top: 12em;
  padding-bottom: 12em;
}

.mwg096 {
  z-index: 0;
  position: relative;
}

.mwg096-pin-height {
  height: 300vh;
}

.mwg096-container {
  height: 100vh;
  overflow: hidden;
}

.mwg096-media {
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
}

.mwg096-media-img {
  width: 14vw;
  max-width: none;
  height: auto;
}

.code-embed {
  position: absolute;
  top: 0;
  left: 0;
}

.home-sections {
  background-color: var(--color--neutral--light);
}

.button-038 {
  color: var(--button-038-color);
  -webkit-user-select: none;
  user-select: none;
  background-color: #0000;
  border-radius: 20em;
  outline-style: none;
  padding: 0;
  font-size: .875em;
  line-height: 1;
  text-decoration: none;
  display: inline-grid;
  position: relative;
  overflow: hidden;
}

.button-038.is-dark {
  color: var(--color--neutral--light);
}

.button-038__bg {
  background-color: var(--button-038-color-background);
  border-radius: 20em;
  grid-area: 1 / 1;
  width: 100%;
  height: 100%;
  padding: 0;
}

.button-038__bg.is-dark {
  background-color: var(--color--neutral--dark);
}

.button-038__inner {
  width: 100%;
  height: 100%;
  padding: .75em 1.25em;
  padding: var(--button-038-padding);
  grid-area: 1 / 1;
  justify-content: center;
  align-items: center;
  display: flex;
}

.button-038__text {
  clip-path: inset(-10% 0%);
}

.btn_script, .btn_style {
  display: none;
}

.link_line-wrap {
  position: relative;
  overflow: hidden;
}

.preload {
  z-index: 199;
  background-color: var(--color--neutral--light);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 1.125em;
  font-weight: 500;
  display: none;
  position: fixed;
  inset: 0%;
}

.transition {
  z-index: 100;
  pointer-events: none;
  position: fixed;
  inset: 0;
  overflow: clip;
}

.transition__dark {
  opacity: 0;
  background-color: #000;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.cases_side-column {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-flow: column;
  width: 100%;
  display: flex;
}

.cases_divider {
  background-color: #d9d9d9;
  width: 100%;
  height: 1px;
}

.case_wip-wrap {
  background-color: #000c;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 2em;
  display: flex;
  position: absolute;
  inset: 0%;
}

.case_wip-card {
  grid-column-gap: .75em;
  grid-row-gap: .75em;
  text-align: center;
  background-color: #e6e6e6;
  border-radius: .25em;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 20.875em;
  padding: 1.5em;
  display: flex;
}

.case_wip-card-content {
  grid-column-gap: .5em;
  grid-row-gap: .5em;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.case_wip-icon {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 1.5em;
  display: flex;
}

.preview-item__heading {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3.5em;
  font-weight: 400;
  line-height: 1;
}

.preview-item__inner {
  border-top: 1px solid #00000040;
  width: 100%;
  padding-top: 2.5em;
  padding-bottom: 2.5em;
}

.preview-collection {
  width: 100%;
}

.preview-container__label {
  color: #0a0a0a80;
  text-transform: uppercase;
  font-size: .75em;
}

.preview-item {
  width: 100%;
  transition: opacity .2s;
  position: relative;
}

.preview-follower__inner {
  z-index: 2;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
}

.preview-list {
  flex-flow: column;
  width: 100%;
  display: flex;
  position: relative;
}

.preview-item__col {
  flex: 1;
}

.preview-item__col.is--large {
  max-width: 45%;
}

.preview-item__col.is--small {
  max-width: 15%;
}

.preview-item__col.is--medium {
  max-width: 25%;
}

.preview-follower {
  z-index: 100;
  aspect-ratio: 1;
  pointer-events: none;
  border-radius: .25em;
  justify-content: center;
  align-items: center;
  width: 11.3125em;
  display: flex;
  position: fixed;
  inset: 0% auto auto 0%;
  overflow: hidden;
}

.preview-item__visual {
  aspect-ratio: 1 / 1.25;
  width: 20em;
  display: none;
  position: absolute;
  overflow: hidden;
}

.preview-item__text {
  margin-bottom: 0;
  font-size: 1.25em;
  font-weight: 400;
  line-height: 1.2;
}

.preview-follower__label-span {
  background-color: #fff;
  border-radius: .25em;
  padding: .75em 1.25em;
  font-size: 1em;
}

.preview-follower__label {
  z-index: 2;
  position: absolute;
}

.preview-container {
  width: 100%;
}

.preview-item__visual-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.preview-item__row {
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.text-op-40 {
  color: #0006;
}

.case_hover-img-cover {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 2em;
  display: flex;
  position: absolute;
  inset: 0%;
}

.case_hover-img-overlay {
  background-color: #0000004d;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.case_hover-img-wrap {
  width: 100%;
  max-width: 36.875em;
  height: 17.625em;
  position: relative;
}

.case_hover-img {
  width: 100%;
  height: 100%;
}

.footer_inner {
  flex-flow: column;
  justify-content: space-between;
  height: 100%;
  display: flex;
}

.text-line-neutral {
  line-height: 1;
}

@media screen and (max-width: 991px) {
  body {
    font-size: 1.615vw;
  }

  .padding-section-large {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .fs-styleguide_heading-header {
    font-size: 4rem;
  }

  .fs-styleguide_section {
    grid-column-gap: 2.5rem;
    grid-template-columns: 1fr;
  }

  .fs-styleguide_heading-medium {
    font-size: 3rem;
  }

  .fs-styleguide_4-col, .fs-styleguide_3-col {
    grid-template-columns: 1fr;
  }

  .hide-tablet {
    display: none;
  }

  .max-width-full-tablet {
    width: 100%;
    max-width: none;
  }

  .text-size-medium.text-color-neutral-dark.is-smaller {
    font-size: .875em;
  }

  .fs-styleguide_1-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .nav_location {
    margin-left: 9em;
  }

  .nav_location.is-footer {
    position: relative;
    left: .625em;
  }

  .nav_time {
    margin-left: 3.1em;
    left: auto;
  }

  .nav_time.is-footer {
    margin-left: 0;
    position: static;
  }

  .nav_links {
    margin-right: 4.3125em;
  }

  .nav_language {
    margin-right: 5.975em;
    left: auto;
  }

  .contact-modal_card {
    overflow: scroll;
  }

  .about-modal_card {
    max-height: 80vh;
  }

  .component_cases {
    flex-flow: column;
  }

  .cases_sidebar {
    flex-flow: row;
    width: 100%;
    height: auto;
    position: static;
  }

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

  .cases_sidebar_content {
    width: auto;
    display: none;
  }

  .cases_sidebar_content.is-mobile {
    display: flex;
  }

  .cases_content {
    padding-top: 4em;
  }

  .cases_header {
    grid-column-gap: 0em;
    grid-row-gap: 0em;
    justify-content: space-between;
    width: 100%;
  }

  .case_image {
    aspect-ratio: 1;
    height: auto;
  }

  .case_meta {
    max-width: 48.8em;
  }

  .case_details {
    grid-column-gap: 4em;
    grid-row-gap: 4em;
    justify-content: space-between;
    align-items: center;
    max-width: 30.8em;
  }

  .case_description {
    width: auto;
    max-width: none;
  }

  .footer_grid-toggle.is-rel {
    left: .6em;
  }

  .footer_top {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .footer-left {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
  }

  .footer_content {
    grid-column-gap: 0em;
    grid-row-gap: 0em;
    max-width: none;
    height: 100%;
  }

  .footer_navigation {
    grid-column-gap: 1.9em;
    grid-row-gap: 1.9em;
  }

  .cases-sidebar_content {
    width: 100%;
  }

  .component_cases_intern {
    grid-column-gap: 5em;
    grid-row-gap: 5em;
    flex-flow: column;
  }

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

  .animated-grid__row {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  }

  .nav_left-row, .nav_right-row {
    grid-column-gap: 0em;
    grid-row-gap: 0em;
    justify-content: space-between;
  }

  .padding-section-xlarge {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .preview-item__heading {
    font-size: 2em;
  }

  .preview-item__inner {
    border: 1px #000;
    flex-flow: column;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
  }

  .preview-list {
    flex-flow: wrap;
  }

  .preview-item__col.is--large {
    flex: none;
    order: -1;
    width: 100%;
    max-width: none;
  }

  .preview-item__col.is--small {
    text-align: right;
    max-width: 20%;
  }

  .preview-item__col.is--small.tablet--hide {
    display: none;
  }

  .preview-item__col.is--medium {
    order: -1;
    max-width: 80%;
  }

  .preview-follower {
    display: none;
  }

  .preview-item__visual {
    border-radius: .75em;
    order: -1;
    width: 100%;
    margin-bottom: 1em;
    display: none;
    position: relative;
  }

  .preview-item__row {
    grid-row-gap: .5em;
  }

  .preview-item__row.tablet--hide {
    display: none;
  }

  .case_hover-img-wrap {
    height: auto;
  }

  .cases_header-text-width {
    width: 100%;
    max-width: 28.6em;
  }
}

@media screen and (max-width: 767px) {
  body {
    font-size: 2.086vw;
  }

  .fs-styleguide_section-header {
    font-size: .875rem;
  }

  .max-width-full-mobile-landscape {
    width: 100%;
    max-width: none;
  }

  .hide-mobile-landscape {
    display: none;
  }

  .heading-style-h4 {
    font-size: 1rem;
  }

  .fs-styleguide_heading-medium {
    font-size: 2rem;
  }

  .text-style-nowrap {
    white-space: normal;
  }

  .padding-global {
    padding-left: 1em;
    padding-right: 1em;
  }

  .nav_location {
    margin-left: 2.5em;
  }

  .nav_time {
    display: none;
  }

  .nav_time.is-footer {
    display: flex;
  }

  .nav_links {
    margin-right: 7.7125em;
  }

  .nav_language {
    margin-right: auto;
  }

  .nav_cta {
    flex: none;
  }

  .nav_cta.link_line-wrap {
    display: none;
  }

  .hero_footer {
    padding-left: 1em;
    padding-right: 1em;
  }

  .contact-modal {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-end;
    padding-top: 4em;
    padding-bottom: 2em;
  }

  .contact-modal_card {
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: auto;
    margin-right: auto;
  }

  .contact-modal_close {
    width: 2em;
    min-width: 2em;
    height: 2em;
    min-height: 2em;
    position: static;
  }

  .icon-close-modal {
    width: .8em;
    height: .8em;
  }

  .about-modal {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-end;
    padding-top: 4em;
  }

  .about-modal_card {
    max-height: none;
    margin-left: auto;
    margin-right: auto;
    padding: 1em;
  }

  .about-modal_close {
    width: 2em;
    min-width: 2em;
    height: 2em;
    min-height: 2em;
    position: static;
  }

  .case_meta {
    max-width: none;
  }

  .case_details {
    max-width: 22.4em;
  }

  .component_footer, .footer_bottom {
    padding-left: 1em;
    padding-right: 1em;
  }

  .component_cases_intern {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
  }

  .container.is--full-height {
    padding-left: 1em;
    padding-right: 1em;
  }

  .animated-grid__row {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .preview-item {
    width: 100%;
  }

  .text-op-40.mobile-smaller {
    font-size: .875em;
  }

  .cases_header-text-width {
    max-width: 22.1em;
  }
}

@media screen and (max-width: 479px) {
  body {
    font-size: 3.738vw;
  }

  .heading-style-h2.pp-font.text-color-neutral-light.is-footer {
    font-size: 2em;
  }

  .max-width-full-mobile-portrait {
    width: 100%;
    max-width: none;
  }

  .heading-style-h3.text-color-neutral-dark.mobile-smaller {
    font-size: 1.5em;
  }

  .text-size-small.text-color-neutral-400.is-smaller, .text-size-small.text-color-neutral-light.is-smaller {
    font-size: .75em;
  }

  .hide-mobile-portrait {
    display: none;
  }

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

  .text-color-neutral-dark.text-smaller {
    font-size: .875em;
  }

  .nav_location {
    display: none;
  }

  .nav_location.is-footer {
    margin-left: 2.6em;
    display: flex;
    left: -4.575em;
  }

  .nav_links {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    margin-right: auto;
  }

  .nav_language {
    grid-column-gap: .3em;
    grid-row-gap: .3em;
  }

  .nav_link, .link-language {
    font-size: .75em;
  }

  .pp-font.text-color-neutral-700.is-footer {
    font-size: 2em;
  }

  .contact-modal_card {
    width: 100%;
    padding: 1em;
  }

  .contact-modal_close {
    top: 3.613em;
  }

  .form_row {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
  }

  .about-modal_card {
    width: 100%;
  }

  .about-modal_image {
    height: 20em;
  }

  .cases_sidebar {
    padding-top: 7em;
  }

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

  .cases_content {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    padding-top: 2em;
  }

  .cases_header {
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .cases_list {
    grid-row-gap: 2em;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .case_meta {
    max-width: 15.4em;
  }

  .case_details {
    grid-column-gap: 0em;
    grid-row-gap: 0em;
    max-width: 11.7em;
  }

  .case_services_list {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .collection-services {
    display: none;
  }

  .component_footer {
    height: 60%;
  }

  .footer_grid-toggle.is-rel {
    left: auto;
  }

  .footer-left {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    height: 100%;
  }

  .footer_bar {
    width: 100%;
  }

  .footer_navigation {
    flex-flow: row;
    justify-content: space-between;
    width: 100%;
  }

  .footer_menu {
    grid-column-gap: 0em;
    grid-row-gap: 0em;
    width: auto;
    height: 100%;
  }

  .footer_menu.is-right {
    position: relative;
    left: -4.875em;
  }

  .body-large {
    font-size: 16px;
  }

  .line-section.is-relative {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
  }

  .case_card_media {
    height: 30em;
  }

  .footer_embed-wrap {
    height: 40%;
  }

  .container.is--full-height {
    padding-left: 1em;
    padding-right: 1em;
  }

  .nav_right-row {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
  }
}


@font-face {
  font-family: 'Helveticanowdisplay';
  src: url('../fonts/HelveticaNowDisplay-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helveticanowdisplay';
  src: url('../fonts/HelveticaNowDisplay-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Ppeditorialnew';
  src: url('../fonts/PPEditorialNew-Ultralight-BF644b21500d0c0.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}