@font-face {
  font-family: Suisseintl;
  src: url('../fonts/SuisseIntl-LightItalic.woff2') format("woff2");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

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

@font-face {
  font-family: Suisseintl;
  src: url('../fonts/SuisseIntl-MediumItalic.woff2') format("woff2");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Suisseintl;
  src: url('../fonts/SuisseIntl-SemiBoldItalic.woff2') format("woff2");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Suisseintl;
  src: url('../fonts/SuisseIntl-SemiBold.woff2') format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

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

@font-face {
  font-family: Suisseintl;
  src: url('../fonts/SuisseIntl-RegularItalic.woff2') format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Suisseintl;
  src: url('../fonts/SuisseIntl-Light.woff2') format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

:root {
  --_colors---color--background: var(--_colors---dark--background);
  --_colors---color--text: var(--_colors---dark--text);
  --_size---font-size--21: 1.09em;
  --_size---120: 6.25em;
  --_size---100: 100%;
  --_size---30: 1.56em;
  --_size---15: .78em;
  --_size---60: 3.13em;
  --_size---font-size--28: 1.46em;
  --_colors---swatch--white: white;
  --_size---font-size--18: .94em;
  --_size---240: 12.5em;
  --_size---font-size--89: 4.64em;
  --_colors---swatch--dark-blue: #021538;
  --_size---font-size--34: 1.77em;
  --_colors---swatch--blue: #132a54;
  --_colors---light--background: var(--_colors---swatch--white);
  --_colors---light--text: var(--_colors---swatch--blue);
  --_colors---dark--background: var(--_colors---swatch--blue);
  --_colors---dark--text: white;
}

.w-checkbox {
  margin-bottom: 5px;
  padding-left: 20px;
  display: block;
}

.w-checkbox:before {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox:after {
  content: " ";
  clear: both;
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox-input {
  float: left;
  margin: 4px 0 0 -20px;
  line-height: normal;
}

.w-checkbox-input--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.w-checkbox-input--inputType-custom.w--redirected-checked {
  background-color: #3898ec;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: #3898ec;
}

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

body {
  background-color: var(--_colors---color--background);
  color: var(--_colors---color--text);
  font-family: Suisseintl, Arial, sans-serif;
  font-size: 1vw;
  line-height: 1;
}

h1 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 4.64em;
  font-weight: 600;
  line-height: 1;
}

h2 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2.86em;
  font-weight: 600;
  line-height: 1;
}

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

p {
  font-size: var(--_size---font-size--21);
  margin-bottom: 0;
  font-weight: 300;
  line-height: 1.4;
}

a {
  color: var(--_colors---color--text);
  text-decoration: underline;
}

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

.page {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.page.is-styleguide {
  padding: 6.25em 1.56%;
}

.styleguide {
  width: 100%;
  margin-top: var(--_size---120);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding-top: 3.13em;
  padding-bottom: 3.13em;
  display: flex;
}

.h-big {
  text-transform: uppercase;
  font-size: 3.65em;
  font-weight: 600;
  line-height: .93;
}

.h-medium {
  text-transform: uppercase;
  font-size: 1.25em;
  font-weight: 600;
  line-height: .93;
}

.h-small {
  font-size: 1.09em;
  font-weight: 600;
  line-height: .93;
}

.global {
  width: var(--_size---100);
}

.nav {
  z-index: 1000;
  width: var(--_size---100);
  height: 4em;
  padding-top: var(--_size---30);
  opacity: 0;
  background-image: none;
  justify-content: space-between;
  align-items: flex-start;
  padding-left: 1.56%;
  animation: 2s 2.8s forwards fadeIn;
  display: flex;
  position: fixed;
  inset: 0% 0% auto;
}

.logo {
  opacity: 1;
  flex: none;
  text-decoration: none;
}

.logo_text {
  opacity: 1;
  font-size: var(--_size---font-size--21);
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1;
  position: relative;
  top: 3px;
}

.menu {
  flex: none;
  justify-content: space-between;
  align-items: flex-start;
  width: 25%;
  padding-right: 1.56%;
  display: flex;
  position: relative;
}

.menu_wrapper {
  grid-column-gap: .26em;
  grid-row-gap: .26em;
  flex-flow: column;
  flex: none;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  overflow: hidden;
}

.menu_button {
  opacity: 0;
  font-size: var(--_size---font-size--21);
  font-weight: 400;
  text-decoration: none;
  transition: color .3s, background-color .3s;
}

.menu_button:hover {
  background-color: var(--_colors---color--text);
  color: var(--_colors---color--background);
}

.lang {
  grid-column-gap: .3em;
  grid-row-gap: .3em;
  flex: none;
  margin-left: auto;
  font-weight: 300;
  display: flex;
}

.lang_link {
  padding-top: 2px;
  padding-left: 5px;
  padding-right: 5px;
  font-size: 1.09em;
  font-weight: 400;
  text-decoration: none;
  transition: color .3s cubic-bezier(.455, .03, .515, .955), background-color .3s cubic-bezier(.455, .03, .515, .955);
}

.lang_link:hover {
  background-color: var(--_colors---color--text);
  color: var(--_colors---color--background);
}

.approche {
  z-index: -1;
  width: 100%;
  position: absolute;
}

.approche_sticky {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 75%;
  max-width: 1920px;
  height: 100vh;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: sticky;
  top: 0;
}

.approche_text {
  text-align: center;
  font-size: 2.86em;
  font-weight: 400;
  line-height: 1.2;
}

.image-collection_item-eee {
  width: var(--_size---100);
  object-fit: cover;
  height: 22.7vw;
  -webkit-mask-image: url('../images/square_001.png');
  mask-image: url('../images/square_001.png');
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.image-collection_item-eee.is-one {
  margin-top: var(--_size---120);
  order: -1;
}

.image-collection_item-eee.is-rect {
  height: 15.1333vw;
  -webkit-mask-image: url('../images/shape-rect_001.png');
  mask-image: url('../images/shape-rect_001.png');
}

.button {
  width: 18.75em;
  height: var(--_size---120);
  position: relative;
}

.button_text {
  color: var(--_colors---swatch--white);
  font-size: var(--_size---font-size--18);
  text-transform: uppercase;
  font-weight: 500;
  transition: transform .5s;
  position: absolute;
  inset: .52em auto auto .52em;
}

.button_arrow--2 {
  width: 2.34em;
  color: var(--_colors---swatch--white);
  transition: transform .5s;
  position: absolute;
  inset: auto .6em .5em auto;
  transform: translate(0%);
}

.button_arrow--1 {
  width: 2.34em;
  color: var(--_colors---swatch--white);
  transition: transform .5s;
  position: absolute;
  inset: 5% auto auto 0%;
  transform: translate(-100%, -100%)rotate(45deg);
}

.home {
  width: var(--_size---100);
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  min-height: 200vh;
  display: flex;
  position: relative;
}

.home_wrapper {
  width: var(--_size---100);
  height: var(--_size---100);
  grid-column-gap: 3.13vw;
  grid-row-gap: 3.13vw;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  max-width: 100%;
  max-height: 100vh;
  padding: 3.13vw;
  display: flex;
}

.home_line {
  width: var(--_size---100);
  grid-column-gap: 1.56vw;
  grid-row-gap: 1.56vw;
  justify-content: flex-start;
  align-items: flex-end;
  height: 13.18vw;
  max-height: 22vh;
  display: flex;
  position: relative;
}

.home_line.is-line-3 {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  color: var(--_colors---swatch--white);
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
  position: relative;
}

.home_line.is-line-2 {
  justify-content: center;
  align-items: center;
}

.home_p {
  opacity: 0;
  margin-left: 1vw;
  font-weight: 300;
  animation: 1s 2.6s forwards fadeIn;
}

.home_p.is-tab {
  display: none;
}

.home_p.is-desk {
  opacity: 0;
  width: 52.8em;
  font-size: var(--_size---font-size--18);
  animation: 1s 2.6s forwards fadeIn;
}

.projets {
  width: var(--_size---100);
  position: relative;
}

.projets_list {
  z-index: 5;
  grid-column-gap: 1.56vw;
  grid-row-gap: 1.56vw;
  width: 100%;
  height: 36.5vw;
  padding-left: 1.56vw;
  padding-right: 1.56vw;
  display: flex;
  position: relative;
}

.projets_list.is-2, .projets_list.is-3 {
  z-index: 4;
}

.projets_list.is-3 {
  z-index: 3;
}

.projets_mask {
  object-fit: cover;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 23vw;
  transition-property: all;
  transition-duration: .2s;
  transition-timing-function: ease;
  display: flex;
  -webkit-mask-image: url('../images/square_002.png');
  mask-image: url('../images/square_002.png');
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.projets_mask.is-ida {
  background-color: #e6e5e3;
}

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

.projets_line {
  background-color: var(--_colors---color--text);
  flex: none;
  width: 15px;
  height: 1px;
  margin-top: .7em;
  margin-right: .78vw;
}

.projets_line.is-projets {
  margin-top: .55em;
}

.projets_item {
  width: 23.8%;
  height: var(--_size---100);
  transform-origin: 0 0;
  flex-flow: column;
  flex: none;
  text-decoration: none;
  display: flex;
  position: relative;
  transform: scale(1);
}

.projets_item.is-one {
  text-decoration: none;
  top: 6.25em;
}

.projets_item.is-three {
  top: 12.5em;
}

.projets_item.is-four {
  top: 18.75em;
}

.t-21 {
  font-size: var(--_size---font-size--21);
  line-height: 1.4;
}

.t-21.is-partenaires {
  font-style: italic;
  position: relative;
  bottom: -.4em;
}

.projets_content {
  width: var(--_size---100);
  padding-top: 1.1vw;
  padding-left: 1.1vw;
  padding-right: 1.1vw;
}

.projets_title {
  z-index: 0;
  opacity: 1;
  color: var(--_colors---color--text);
  padding-left: 1vw;
  font-size: 15.8em;
  font-weight: 600;
  position: absolute;
  top: -1em;
}

.studio {
  z-index: 10;
  width: var(--_size---100);
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: relative;
}

.faq_trigger {
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  padding-right: 12.5em;
  display: flex;
  position: relative;
}

.contact_content {
  width: var(--_size---100);
  grid-column-gap: 1.56vw;
  grid-row-gap: 1.56vw;
  flex-flow: row;
  justify-content: flex-start;
  align-items: flex-start;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.contact_content_wrapper {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 23.05vw;
  display: flex;
}

.contact_content_wrapper.is-big {
  width: 34%;
}

.contact_content_wrapper.is-last {
  margin-left: auto;
}

.contact_privacy {
  top: auto;
  left: auto;
  right: var(--_size---30);
  bottom: var(--_size---30);
  opacity: .5;
  font-size: var(--_size---font-size--18);
  font-weight: 300;
  text-decoration: none;
  position: absolute;
}

.projet_header {
  justify-content: flex-start;
  align-items: flex-end;
  width: 100%;
  height: 40vh;
  padding-bottom: 3.9em;
  padding-left: 1.56%;
  padding-right: 1.56%;
  display: flex;
  overflow: hidden;
}

.project_title {
  font-size: var(--_size---font-size--89);
  text-transform: uppercase;
  position: relative;
  top: .1em;
}

.project_header_wrapper {
  opacity: 1;
  text-align: right;
  width: 25em;
  margin-top: 2.8em;
  margin-left: auto;
}

.project_header_wrapper.is-date {
  width: auto;
  margin-left: auto;
  margin-right: 1vw;
}

.projet_title_wrapper {
  width: 56.25em;
  margin-right: var(--_size---120);
  opacity: 1;
  transform: translate(0);
}

.paragraph {
  font-weight: 300;
}

.projet_image_wrapper {
  width: var(--_size---100);
  height: 150vh;
  padding-left: 1.56%;
  padding-right: 1.56%;
  position: relative;
}

.projet_image {
  width: var(--_size---100);
  height: var(--_size---100);
  object-fit: cover;
  max-width: none;
  transform: scale(1);
}

.projet_content {
  padding-top: var(--_size---240);
  padding-bottom: var(--_size---240);
  grid-column-gap: var(--_size---60);
  grid-row-gap: var(--_size---60);
  flex-flow: column;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.t-18 {
  font-size: var(--_size---font-size--18);
}

.projet_other_link {
  font-size: var(--_size---font-size--21);
  padding-left: 5px;
  padding-right: 5px;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
  transition: color .5s, background-color .5s;
  position: relative;
  left: -5px;
}

.projet_other_link:hover {
  background-color: var(--_colors---swatch--dark-blue);
  color: var(--_colors---swatch--white);
}

.projet_other_wrapper {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: inline-flex;
  position: relative;
}

.projet_other_image {
  z-index: 10;
  width: var(--_size---240);
  height: var(--_size---240);
  opacity: 0;
  pointer-events: none;
  object-fit: cover;
  max-width: none;
  transition-property: opacity;
  transition-duration: .3s;
  transition-timing-function: ease;
  position: absolute;
  top: 1.4em;
  left: 100%;
  -webkit-mask-image: url('../images/square_002.png');
  mask-image: url('../images/square_002.png');
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.div-block-4 {
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.progression {
  width: 100%;
  height: 1em;
  padding: 1px var(--_size---30);
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.progression_bar {
  background-color: var(--_colors---color--text);
  width: 50%;
  height: 1px;
}

.link {
  overflow: hidden;
}

.link.is-dark {
  margin-top: var(--_size---60);
  color: var(--_colors---swatch--dark-blue);
}

.prestations_content {
  width: var(--_size---100);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  height: 25em;
  display: flex;
  overflow: hidden;
}

.t-34 {
  font-size: var(--_size---font-size--34);
}

.motion_wrapper {
  z-index: 10;
  width: 100%;
  height: var(--_size---100);
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.motion {
  z-index: 1;
  width: var(--_size---100);
  pointer-events: none;
  height: 150vh;
  position: relative;
}

.projets_trigger {
  background-color: #2b37c3;
  width: 0%;
  height: 5px;
  position: absolute;
  inset: 0% auto auto 0%;
}

.menu_trigger {
  font-size: var(--_size---font-size--21);
  padding-left: 5px;
  padding-right: 5px;
  font-weight: 400;
  text-decoration: none;
  position: absolute;
  inset: 0% auto auto -5px;
}

.menu_buton_text {
  padding-top: 2px;
  padding-left: 5px;
  padding-right: 5px;
  transition: background-color .3s, color .3s;
  position: relative;
  left: -5px;
}

.approche_wrapper {
  width: var(--_size---100);
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  height: 200vh;
  display: flex;
}

.noise {
  z-index: 9999;
  width: var(--_size---100);
  opacity: 0;
  pointer-events: none;
  background-image: url('../images/noise_001.png');
  background-position: 0 0;
  background-size: auto;
  height: 100vh;
  animation: .2s .5s forwards fadeIn;
  position: fixed;
  inset: 0%;
}

.home_sticky {
  z-index: 10;
  width: var(--_size---100);
  background-color: var(--_colors---swatch--blue);
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
}

.studio_bg {
  width: var(--_size---100);
  height: var(--_size---100);
  opacity: 1;
  object-fit: cover;
  background-image: url('../images/portrait_4.avif');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  -webkit-mask-image: url('../images/');
  mask-image: url('../images/');
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: 75%;
  mask-size: 75%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.studio_sticky {
  z-index: 10;
  flex-flow: column;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  height: 100vh;
  display: flex;
  position: sticky;
  inset: 0% 0% auto;
  overflow: hidden;
}

.approche_id {
  position: absolute;
  inset: 60vh 0% auto;
}

.is-hide {
  display: none;
}

.studio_text {
  opacity: 1;
  text-align: center;
  font-size: 2.86em;
  font-weight: 400;
  line-height: 1.2;
  position: relative;
}

.motion_sticky {
  width: var(--_size---100);
  padding-right: 1.56%;
  padding-bottom: var(--_size---30);
  height: calc(100vh - 6.25em);
  padding-left: 1.56%;
  display: flex;
  position: sticky;
  top: 6.25em;
}

.projets_wrapper {
  transition: opacity .3s;
}

.projets_clw {
  width: var(--_size---100);
  position: relative;
}

.partenaires {
  grid-column-gap: 1.56vw;
  grid-row-gap: 1.56vw;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding-top: 15vw;
  padding-left: 1.56%;
  padding-right: 1.56%;
  display: flex;
}

.partenaire_logo {
  object-fit: contain;
  max-height: 100%;
}

.prestations_img {
  object-fit: cover;
  width: 23vw;
  height: 23vw;
  position: relative;
}

.partenaires_item {
  width: 11.08%;
  height: 10.7vw;
  padding-top: var(--_size---30);
  padding-right: 2em;
  padding-bottom: var(--_size---30);
  background-color: var(--_colors---swatch--dark-blue);
  opacity: 1;
  object-fit: cover;
  flex: none;
  justify-content: center;
  align-items: center;
  padding-left: 2em;
  transition-property: all;
  transition-duration: .2s;
  transition-timing-function: ease;
  display: flex;
  -webkit-mask-image: url('../images/square_001.png');
  mask-image: url('../images/square_001.png');
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.partenaires_item.is-first {
  background-color: #02153800;
  justify-content: flex-end;
  align-items: flex-end;
  width: calc(22.16% + 1.56vw);
  padding: 0;
  position: relative;
}

.partenaires_item.is-small {
  padding-left: 3em;
  padding-right: 3em;
}

.partenaires_item.is-big {
  padding-left: 1.5em;
  padding-right: 1.5em;
}

.studio_text_wrapper {
  width: 75%;
  color: var(--_colors---color--text);
  flex-flow: column;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
}

.image-5 {
  width: var(--_size---100);
  height: var(--_size---100);
  object-fit: cover;
}

.angle {
  z-index: 20;
  width: 1.2vw;
  height: 1.2vw;
  color: var(--_colors---color--background);
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
  position: absolute;
  inset: auto -1px -1px auto;
}

.angle.is-top {
  inset: -1px -1px auto auto;
  transform: rotate(-90deg);
}

.angle.is-left {
  inset: auto auto -1px -1px;
  transform: rotate(90deg);
}

.studio_img {
  z-index: 10;
  width: var(--_size---100);
  height: var(--_size---100);
  opacity: 0;
  object-fit: cover;
  background-image: url('../images/portrait_4.avif');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.contact {
  width: var(--_size---100);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 100vh;
  padding-left: 1.56vw;
  padding-right: 1.56vw;
  display: flex;
  position: relative;
}

.contact.is-sticky {
  justify-content: center;
  align-items: center;
  min-height: 750px;
  padding-top: 0;
  position: sticky;
  top: 0;
}

.projets-other_item {
  object-fit: cover;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 23.05vw;
  display: flex;
  position: relative;
  left: -5px;
}

.image-collection_item {
  opacity: 1;
  transform-origin: 0 0;
  object-fit: cover;
  width: 49.19%;
  height: 31.7vw;
  display: flex;
  -webkit-mask-image: url('../images/shape-rect_001.png');
  mask-image: url('../images/shape-rect_001.png');
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.image-collection_item.is-push {
  margin-top: 15.5vw;
}

.projets-other {
  width: 100%;
  margin-bottom: var(--_size---60);
  grid-column-gap: 1.56vw;
  grid-row-gap: 1.56vw;
  padding-left: 1.56vw;
  padding-right: 1.56vw;
  display: flex;
  position: relative;
}

.heading {
  color: var(--_colors---swatch--blue);
  margin-right: auto;
  font-size: 15.6em;
  font-weight: 600;
  position: relative;
  left: -.7vw;
}

.projets-other_container {
  grid-column-gap: 1.56vw;
  grid-row-gap: 1.56vw;
  display: flex;
}

.loader {
  z-index: 1200;
  width: var(--_size---100);
  background-color: var(--_colors---color--background);
  opacity: 1;
  pointer-events: none;
  justify-content: center;
  align-items: center;
  height: 100vh;
  animation: 1s .5s both loader;
  display: flex;
  position: fixed;
  inset: 0%;
}

.confidentialite {
  width: 75em;
  margin-top: var(--_size---120);
  padding-top: 3.13em;
  padding-bottom: var(--_size---120);
  grid-column-gap: var(--_size---30);
  grid-row-gap: var(--_size---30);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.projets_medias {
  width: var(--_size---100);
  height: var(--_size---100);
  object-fit: cover;
  justify-content: center;
  align-items: center;
  transition: transform .3s cubic-bezier(.645, .045, .355, 1);
  display: flex;
}

.is-rect {
  height: 15.1333vw;
  -webkit-mask-image: url('../images/shape-rect_001.png');
  mask-image: url('../images/shape-rect_001.png');
}

.prestations_text {
  font-weight: 400;
}

.prestations_title {
  font-size: var(--_size---font-size--34);
}

.prestations_list {
  opacity: .5;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.prestations_title_wrapper {
  width: var(--_size---100);
  flex: none;
  justify-content: flex-start;
  align-items: center;
  height: 6vh;
  display: flex;
}

.pres {
  width: var(--_size---100);
  justify-content: flex-start;
  align-items: flex-start;
  height: 300vh;
  display: flex;
  position: relative;
}

.pres_sticky {
  top: var(--_size---120);
  justify-content: flex-end;
  align-items: flex-start;
  width: 49.13%;
  height: calc(100vh - 6.25em);
  padding-bottom: 1.56%;
  padding-left: 1.56%;
  display: flex;
  position: sticky;
}

.pres_sticky_content {
  top: var(--_size---120);
  width: 50%;
  padding-right: var(--_size---120);
  padding-left: var(--_size---120);
  margin-top: 25vh;
  position: sticky;
}

.prestation_wrapper {
  grid-column-gap: var(--_size---30);
  grid-row-gap: var(--_size---30);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 720px;
  display: flex;
}

.motion_medias {
  justify-content: center;
  align-items: center;
  width: 50%;
  height: 50%;
  display: flex;
  position: relative;
  overflow: hidden;
}

.studio_wrapper {
  width: var(--_size---100);
  height: 200vh;
  margin-right: auto;
  margin-bottom: var(--_size---240);
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  margin-left: auto;
  display: flex;
}

.studio_img_wrapper {
  z-index: 10;
  width: var(--_size---100);
  height: var(--_size---100);
  position: relative;
}

.home_media {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.home_media_wrapper {
  height: var(--_size---100);
  aspect-ratio: 3 / 2;
  opacity: 0;
  transform-origin: 0 0;
  object-fit: cover;
  flex: none;
  transition-property: transform;
  transition-duration: 2s;
  transition-timing-function: cubic-bezier(.165, .84, .44, 1);
  animation: 1s 2.6s forwards scaleIn;
  transform: scale(1);
  -webkit-mask-image: url('../images/shape-rect_001.png');
  mask-image: url('../images/shape-rect_001.png');
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.home_media_wrapper.is-video {
  transform-origin: 0 0;
}

.text--fade {
  opacity: .1;
  text-align: center;
  font-size: 2.86em;
  font-weight: 400;
  line-height: 1.2;
  position: absolute;
}

.prestations_arrow {
  width: 1.7em;
  margin-right: var(--_size---30);
  position: relative;
  top: -.2em;
}

.letter {
  -webkit-text-stroke-width: 1px;
  flex: none;
  height: 100%;
}

.letter.is-bleu {
  opacity: 0;
  animation: 2s 1.4s forwards fadeIn;
}

.letter.is-travail {
  opacity: 0;
  animation: 2s 1.6s forwards fadeIn;
}

.home_arrows {
  height: 44.5%;
  animation: 3s ease-in-out infinite arrowMove;
}

.home_link {
  height: var(--_size---100);
  grid-column-gap: 2.5vw;
  grid-row-gap: 2.5vw;
  opacity: 0;
  justify-content: flex-start;
  align-items: flex-end;
  animation: 2s 1.8s forwards fadeIn;
  display: flex;
}

.menu_arrow {
  height: 44.5%;
  display: none;
}

.projet_image_container {
  width: var(--_size---100);
  height: calc(100vh - 2.5em - 3.13vw);
  position: sticky;
  top: calc(1.56vw + 2.5em);
  overflow: hidden;
}

.credits {
  width: 23.05vw;
}

.projet_list {
  z-index: 5;
  grid-column-gap: 1.56vw;
  grid-row-gap: 1.56vw;
  flex-flow: wrap;
  width: 100%;
  padding-left: 1.56vw;
  padding-right: 1.56vw;
  display: flex;
  position: relative;
}

.projet_list.is-second {
  height: auto;
  margin-bottom: calc(6.25em + 6vw);
  display: flex;
}

.projet_list.is-grutli {
  height: auto;
  margin-top: var(--_size---120);
  margin-bottom: calc(6.25em + 6vw);
  display: flex;
}

.motion_container {
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
}

.prestations_h1 {
  font-size: 5.8em;
  font-weight: 600;
}

.blur {
  z-index: 500;
  width: var(--_size---100);
  opacity: 0;
  -webkit-backdrop-filter: blur(80px);
  backdrop-filter: blur(80px);
  pointer-events: none;
  background-color: #02153880;
  height: 100vh;
  position: fixed;
  inset: 0%;
}

.shape-vertical {
  height: 66.7vw;
  -webkit-mask-image: url('../images/');
  mask-image: url('../images/');
}

.shape-carre {
  height: 48vw;
  -webkit-mask-image: url('../images/');
  mask-image: url('../images/');
}

.form_container {
  grid-column-gap: var(--_size---15);
  grid-row-gap: var(--_size---15);
  display: flex;
}

.form_wrapper {
  width: var(--_size---100);
  grid-column-gap: var(--_size---15);
  grid-row-gap: var(--_size---15);
  flex-flow: column;
  display: flex;
}

.form {
  width: var(--_size---100);
  margin-top: var(--_size---15);
}

.text_field {
  width: var(--_size---100);
  height: var(--_size---60);
  border-style: none none solid;
  border-width: 1px;
  border-color: black black var(--_colors---color--text);
  font-size: var(--_size---font-size--18);
  background-color: #fff0;
  margin-bottom: 0;
  padding: 0 0 1.7em;
}

.text_field.is-area {
  height: var(--_size---120);
  padding-bottom: 0;
}

.form_button {
  width: 9.4em;
  height: var(--_size---60);
  background-color: var(--_colors---color--text);
  color: var(--_colors---color--background);
  margin-top: auto;
  margin-left: auto;
  transition-property: background-color;
  transition-duration: .3s;
  transition-timing-function: ease;
  -webkit-mask-image: url('../images/button-shape_001.png');
  mask-image: url('../images/button-shape_001.png');
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.form_button:hover {
  background-color: var(--_colors---swatch--dark-blue);
}

.checkbox_wrapper {
  height: var(--_size---100);
  flex: 1;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 0;
  padding-top: 5px;
  font-weight: 300;
  display: flex;
}

.checkbox_label {
  font-size: var(--_size---font-size--18);
  margin-bottom: 0;
  font-weight: 300;
}

.checkbox {
  margin-top: 0;
  margin-right: 15px;
}

.form_msg {
  font-size: var(--_size---font-size--18);
  text-align: left;
  background-color: #ddd0;
  padding: 0;
  font-weight: 300;
}

.button-3 {
  width: 13.8em;
  height: 4.69em;
  margin-top: var(--_size---30);
  background-color: var(--_colors---color--text);
  color: var(--_colors---color--background);
  justify-content: center;
  align-items: center;
  font-weight: 500;
  text-decoration: none;
  transition-property: background-color;
  transition-duration: .3s;
  transition-timing-function: ease;
  display: flex;
  -webkit-mask-image: url('../images/button-shape_001.png');
  mask-image: url('../images/button-shape_001.png');
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.button-3:hover {
  background-color: var(--_colors---swatch--dark-blue);
}

.text-block {
  font-size: var(--_size---font-size--18);
}

.contact_link {
  font-size: var(--_size---font-size--21);
  padding-left: 5px;
  padding-right: 5px;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
  transition: color .5s, background-color .5s;
  position: relative;
  left: -5px;
}

.contact_link:hover {
  background-color: var(--_colors---swatch--dark-blue);
  color: var(--_colors---swatch--white);
}

.credits_label {
  margin-bottom: var(--_size---15);
  font-size: var(--_size---font-size--21);
  font-weight: 300;
}

.code-embed {
  width: 1000%;
  height: var(--_size---100);
  padding-bottom: 56%;
  position: absolute;
}

.iframe {
  width: var(--_size---100);
  height: var(--_size---100);
  position: absolute;
  inset: 0%;
}

.t-28 {
  font-size: var(--_size---font-size--21);
}

.credits_container {
  display: flex;
}

.fs-cc-prefs2_buttons-wrapper {
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-end;
  margin-top: 1rem;
  display: flex;
}

.fs-cc-prefs2_option {
  border-top: 1px solid #c0c0c04d;
  border-bottom: 1px solid #c0c0c04d;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.fs-cc-prefs2_option.is-hide {
  display: none;
}

.fs-cc-prefs2_button {
  text-align: center;
  text-transform: uppercase;
  background-color: #000;
  border: 1px solid #000;
  padding: .75rem 1.25rem;
  font-size: 1.09em;
  font-weight: 700;
}

.fs-cc-prefs2_button.fs-cc-button-alt {
  color: #000;
  background-color: #fff;
  border-color: #000;
  margin-bottom: .75rem;
}

.text {
  font-size: 1.09em;
  font-weight: 300;
  line-height: 1.4;
}

.text.is-preferences {
  color: #fff;
}

.text.is-cookies {
  max-width: 50em;
}

.cookies {
  height: 0;
}

.cookies_preference {
  z-index: 9999999;
  opacity: 1;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
  padding: 2rem;
  display: none;
  position: fixed;
  inset: 0%;
}

.fs-cc-prefs2_space-small {
  margin-bottom: .75rem;
}

.fs-cc-prefs2_form {
  color: #fff;
  background-color: #333;
  width: 100%;
  max-width: 30rem;
  max-height: 85vh;
  margin-bottom: 0;
  position: relative;
}

.cookies-banner {
  z-index: 100;
  grid-column-gap: 1.56em;
  grid-row-gap: 1.56em;
  color: #fff;
  background-color: #000;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 12.5em;
  padding-left: 6.25em;
  padding-right: 6.25em;
  display: none;
  position: fixed;
  inset: auto 0% 0% auto;
}

.fs-cc-preferences2_close-icon {
  color: #fff;
  width: 1.5rem;
  height: 1.5rem;
}

.fs-cc-prefs2_checkbox-label {
  display: none;
}

.cookies_title {
  text-transform: uppercase;
  margin-bottom: .78em;
  font-weight: 600;
}

.fs-cc-prefs2_form-wrapper {
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
  padding: 1.5rem;
  display: flex;
  position: absolute;
  inset: 0%;
}

.fs-cc-prefs2_checkbox-field {
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  margin-bottom: 0;
  padding: .125rem;
  display: flex;
  position: relative;
}

.fs-cc-prefs2_submit {
  text-align: center;
  text-transform: uppercase;
  background-color: #005f03;
  margin-top: .75rem;
  padding: .75rem 1.25rem;
  font-size: 1.09em;
  font-weight: 700;
}

.fs-cc-prefs2_submit.is-hide {
  display: none;
}

.fs-cc-prefs2_content {
  color: #000;
  background-color: #fff;
  height: 100%;
  padding: 2.5rem 2rem;
}

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

.button-2 {
  color: #fff;
  text-transform: uppercase;
  background-color: #000;
  border: 5px solid #000;
  justify-content: center;
  align-items: center;
  height: 3.13em;
  padding-left: 1.56em;
  padding-right: 1.56em;
  font-size: 1.09em;
  font-weight: 600;
  text-decoration: none;
  transition: background-color .2s;
  display: flex;
}

.button-2:hover {
  color: #000;
  background-color: #fff;
}

.button-2.is-cookies {
  color: #000;
  background-color: #fff;
  border-color: #fff;
  flex: none;
  width: 12.5em;
}

.fs-cc-prefs2_toggle-wrapper {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.fs-cc-prefs2_close {
  color: #fff;
  cursor: pointer;
  background-color: #000;
  padding: .75rem;
  font-size: 1.25rem;
  text-decoration: none;
  position: absolute;
  inset: 0 0 auto auto;
  box-shadow: -1px 1px 4px #3333331a;
}

.fs-cc-prefs2_overlay {
  z-index: -1;
  background-color: #0006;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.cookies_link {
  color: #fff;
  flex: none;
}

.fs-cc-prefs2_label {
  color: #000;
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 2rem;
  font-size: 1.09em;
  font-weight: 700;
}

.fs-cc-prefs2_checkbox {
  z-index: 1;
  cursor: pointer;
  background-color: #fff;
  border-width: 2px;
  border-color: #000;
  width: 100%;
  height: 100%;
  margin-top: 0;
  margin-left: 0;
  position: absolute;
  inset: 0%;
}

.fs-cc-prefs2_checkbox.w--redirected-checked {
  background-color: #0540f2;
  background-size: auto;
  border-color: #0540f2;
}

@media screen and (max-width: 991px) {
  body {
    --_size---font-size--21: 2.12em;
    --_size---120: 12.11em;
    --_size---100: 100%;
    --_size---30: 3.03em;
    --_size---15: 1.51em;
    --_size---60: 6.05em;
    --_size---font-size--28: 2.83em;
    --_size---font-size--18: 1.82em;
    --_size---240: 24.22em;
    --_size---font-size--89: 8.98em;
    --_size---font-size--34: 3.43em;
  }

  .page.is-styleguide {
    padding-left: 3.13%;
    padding-right: 3.13%;
  }

  .nav {
    justify-content: flex-start;
    align-items: flex-start;
    height: auto;
    padding-top: 0;
    padding-left: 0%;
  }

  .logo {
    margin: 3.13%;
  }

  .menu {
    justify-content: flex-end;
    align-items: flex-start;
    width: 15%;
    height: 100%;
    padding-right: 0%;
    position: absolute;
    inset: 0% 0% auto auto;
  }

  .menu_wrapper {
    justify-content: flex-start;
    align-items: flex-end;
    width: 0%;
    height: 0;
    margin-top: 3.13em;
    margin-right: 3.13em;
    padding-top: 3.13em;
    padding-right: 3.13em;
    -webkit-mask-image: url('../images/square-reverse_001.png');
    mask-image: url('../images/square-reverse_001.png');
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: cover;
    mask-size: cover;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }

  .menu_button {
    opacity: 0;
  }

  .menu_button:hover {
    color: var(--_colors---color--text);
    background-color: #132a5400;
  }

  .lang {
    display: none;
  }

  .approche_text {
    font-size: var(--_size---font-size--28);
  }

  .image-collection_item-eee {
    width: 100%;
    height: 47vw;
  }

  .button {
    width: 36.33em;
  }

  .button_arrow--2 {
    width: 4.9em;
    bottom: .9em;
    right: .9em;
  }

  .home_wrapper {
    padding-right: var(--_size---15);
    padding-left: var(--_size---15);
    justify-content: flex-start;
    align-items: center;
  }

  .home_line {
    justify-content: flex-start;
    align-items: flex-end;
    width: auto;
    height: 14em;
    max-height: 8vh;
    margin-right: auto;
  }

  .home_line.is-line-3 {
    grid-column-gap: var(--_size---60);
    grid-row-gap: var(--_size---60);
    flex-flow: column;
    width: 100%;
    height: auto;
    max-height: none;
  }

  .home_line.is-line-2 {
    flex: none;
  }

  .home_p.is-tab {
    width: var(--_size---100);
    margin-left: 0;
    margin-right: auto;
    padding-left: 4vw;
    padding-right: 4vw;
    display: flex;
  }

  .home_p.is-desk {
    display: none;
  }

  .projets {
    margin-top: 0;
  }

  .projets_list {
    flex-flow: wrap;
    height: auto;
  }

  .projets_list.is-2 {
    margin-top: 1em;
  }

  .projets_list.is-3 {
    margin-top: 1em;
    margin-bottom: 0;
  }

  .projets_mask {
    height: 48vw;
  }

  .projets_line {
    margin-top: 1.9em;
    margin-right: var(--_size---15);
  }

  .projets_line.is-projets {
    margin-top: 1em;
  }

  .projets_item {
    width: 49.1%;
  }

  .projets_item.is-one {
    top: 24vw;
  }

  .projets_item.is-three {
    top: 24em;
  }

  .projets_item.is-four {
    top: 1em;
  }

  .projets_content {
    height: 24vw;
    padding-top: 2.2vw;
    padding-left: 2.2em;
  }

  .projets_title {
    padding-left: .3%;
    font-size: 21.8em;
    top: -5.8vw;
  }

  .studio {
    height: auto;
    margin-bottom: 0;
  }

  .contact_content {
    grid-column-gap: var(--_size---120);
    grid-row-gap: var(--_size---120);
    flex-flow: column;
  }

  .contact_content_wrapper {
    width: 100%;
  }

  .contact_content_wrapper.is-big {
    width: 100%;
    margin-top: var(--_size---60);
    grid-column-gap: var(--_size---30);
    grid-row-gap: var(--_size---30);
  }

  .contact_content_wrapper.is-first {
    display: none;
  }

  .projet_header {
    height: auto;
    padding-top: var(--_size---240);
    padding-right: var(--_size---120);
    padding-left: var(--_size---120);
    flex-flow: column;
    justify-content: flex-end;
    align-items: flex-start;
    position: relative;
  }

  .project_title {
    top: auto;
  }

  .project_header_wrapper {
    text-align: left;
    width: 100%;
  }

  .project_header_wrapper.is-date {
    margin-left: 0;
    position: relative;
  }

  .projet_title_wrapper {
    width: 100%;
    margin-right: 0;
  }

  .projet_image_wrapper {
    height: auto;
    padding-left: 3.13%;
    padding-right: 3.13%;
  }

  .projet_content {
    width: var(--_size---100);
    padding-top: var(--_size---120);
    padding-bottom: var(--_size---120);
  }

  .projet_other_link, .projet_other_link.is-website {
    font-size: var(--_size---font-size--28);
  }

  .projet_other_image {
    display: none;
  }

  .progression {
    width: 57%;
    height: 2em;
    margin-top: 3.13%;
  }

  .prestations_content {
    height: auto;
    margin-bottom: var(--_size---60);
  }

  .motion_wrapper {
    width: 100%;
  }

  .motion {
    margin-bottom: var(--_size---120);
  }

  .menu_trigger {
    flex: 1;
    inset: 1.5em 1.5em auto auto;
  }

  .menu_buton_text {
    color: var(--_colors---swatch--white);
  }

  .menu_buton_text:hover {
    color: var(--_colors---color--text);
  }

  .studio_bg {
    background-image: url('../images/insta-photo_1.avif');
    -webkit-mask-position: center;
    mask-position: center;
  }

  .studio_text {
    width: auto;
    font-size: var(--_size---font-size--28);
    margin-left: 0;
    bottom: auto;
    left: auto;
  }

  .motion_sticky {
    top: var(--_size---120);
    height: calc(100vh - 12.11em);
    padding-bottom: 3.13em;
    padding-left: 3.13%;
    padding-right: 3.13%;
  }

  .projets_clw {
    position: relative;
  }

  .partenaires {
    width: 100%;
    margin-top: 24em;
    padding-top: 0;
    padding-left: 3.13%;
    padding-right: 3.13%;
  }

  .prestations_img {
    width: 49.1%;
    height: 47vw;
  }

  .partenaires_item {
    width: 23.7%;
    height: 22.1em;
    padding-left: 3em;
    padding-right: 3em;
  }

  .partenaires_item.is-first {
    width: 46vw;
  }

  .partenaires_item.is-small {
    padding-left: 5em;
    padding-right: 5em;
  }

  .studio_text_wrapper {
    width: 75.8%;
    position: relative;
  }

  .angle {
    width: 2vw;
    height: 2vw;
  }

  .studio_img {
    background-image: url('../images/insta-photo_1.avif');
  }

  .contact {
    padding-right: var(--_size---120);
    padding-left: var(--_size---120);
    color: var(--_colors---color--text);
    position: relative;
  }

  .projets-other_item {
    width: 100%;
    left: 0;
  }

  .projets-other_item.is-label {
    width: 49.1%;
  }

  .image-collection_item {
    width: 49.1%;
    height: 31vw;
  }

  .image-collection_item.is-one, .image-collection_item.is-three {
    margin-top: var(--_size---60);
  }

  .projets-other {
    padding-right: var(--_size---120);
    padding-left: var(--_size---120);
    grid-column-gap: 0vw;
    grid-row-gap: 0vw;
    flex-flow: column;
  }

  .heading {
    margin-right: 0;
    font-size: 16.2em;
  }

  .projets-other_container {
    grid-column-gap: 0vw;
    grid-row-gap: 0vw;
    flex-flow: column;
    width: 100%;
  }

  .prestations_title {
    font-size: 5.55em;
  }

  .pres {
    height: auto;
    margin-bottom: var(--_size---240);
    flex-flow: column;
  }

  .pres_sticky {
    width: 100%;
    height: auto;
    padding-right: 1.56%;
    display: none;
    position: relative;
    top: auto;
  }

  .pres_sticky_content {
    width: 100%;
    margin-top: var(--_size---240);
    position: relative;
    top: auto;
  }

  .home_media {
    display: none;
  }

  .home_media.is-video {
    width: 97vw;
    display: flex;
  }

  .home_media_wrapper {
    width: var(--_size---100);
    height: 63em;
  }

  .home_media_wrapper.is-video {
    display: flex;
    position: absolute;
    top: 34.4em;
    left: 0;
  }

  .text--fade {
    width: auto;
    font-size: var(--_size---font-size--28);
    margin-left: 0;
    bottom: auto;
    left: auto;
  }

  .prestations_arrow {
    width: 5.2em;
    top: -.9em;
  }

  .letter {
    margin-right: auto;
  }

  .letter.is-bleu {
    width: 42vw;
  }

  .letter.is-travail {
    width: 69vw;
  }

  .home_link {
    order: -1;
    justify-content: flex-start;
    align-items: flex-end;
    width: 68vw;
    height: 14vw;
    max-height: 8vh;
    margin-left: auto;
    display: flex;
  }

  .menu_arrow {
    opacity: 0;
    width: 3em;
    height: 3em;
    font-size: 3.2em;
    display: block;
    position: absolute;
    inset: auto auto 3.13vw 3.13vw;
    transform: rotate(-90deg);
  }

  .projet_image_container {
    height: auto;
  }

  .credits {
    width: 100%;
  }

  .credits.is-1 {
    display: none;
  }

  .projet_list {
    flex-flow: wrap;
    height: auto;
  }

  .projet_list.is-second, .projet_list.is-grutli {
    margin-top: var(--_size---60);
    margin-bottom: var(--_size---60);
    padding-right: var(--_size---120);
    padding-left: var(--_size---120);
    flex-flow: row;
    display: flex;
  }

  .prestations_h1 {
    font-size: 11.3em;
  }

  .shape-vertical {
    height: 65vw;
  }

  .shape-carre {
    height: 46vw;
  }

  .form_container {
    height: 6.06vw;
  }

  .text_field {
    border-radius: 0;
    height: 6.06vw;
  }

  .text_field.is-area {
    height: 12.12vw;
  }

  .form_button {
    width: 17.9vw;
    height: 6.06vw;
    font-size: var(--_size---font-size--18);
  }

  .button-3 {
    width: 25.3em;
    height: 8.6em;
  }

  .contact_link {
    font-size: var(--_size---font-size--28);
  }

  .credits_label {
    font-size: var(--_size---font-size--28);
    margin-bottom: .78em;
  }

  .t-28 {
    font-size: var(--_size---font-size--28);
    font-weight: 300;
  }

  .fs-cc-prefs2_button {
    font-size: 2.12em;
  }

  .text {
    font-size: 2.16em;
  }

  .cookies-banner {
    grid-column-gap: 3.13em;
    grid-row-gap: 3.13em;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    height: 37.5em;
    padding-left: 12.5em;
    padding-right: 12.5em;
  }

  .fs-cc-prefs2_submit {
    font-size: 2.12vw;
  }

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

  .button-2 {
    height: 6.25em;
    padding-left: 3.13em;
    padding-right: 3.13em;
  }

  .button-2.is-cookies {
    border-color: #fff;
    width: 25em;
  }

  .button_text-2 {
    font-size: 2.16em;
  }
}

@media screen and (max-width: 767px) {
  body {
    --_size---font-size--21: 2.73em;
    --_size---120: 15.6em;
    --_size---100: 100%;
    --_size---30: 3.9em;
    --_size---15: 1.95em;
    --_size---60: 7.8em;
    --_size---font-size--28: 3.64em;
    --_size---font-size--18: 2.34em;
    --_size---240: 31.21em;
    --_size---font-size--89: 9.1em;
    --_size---font-size--34: 4.42em;
  }

  .menu {
    width: 18%;
  }

  .approche_sticky {
    top: var(--_size---60);
  }

  .button {
    width: 46.8em;
  }

  .button_arrow--2 {
    width: 5.8em;
    bottom: 1.5em;
    right: 1.7em;
  }

  .home_p.is-tab {
    display: none;
  }

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

  .projets_line {
    margin-top: 2.3em;
  }

  .projets_line.is-projets {
    margin-top: 1.4em;
  }

  .projets_content {
    padding-top: 2.3vw;
    padding-left: 2.3em;
  }

  .contact_privacy {
    right: var(--_size---60);
  }

  .project_header_wrapper {
    opacity: .5;
  }

  .progression {
    margin-top: 0%;
    display: none;
  }

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

  .noise {
    background-size: 90px 90px;
  }

  .partenaires {
    width: 100%;
  }

  .partenaires_item.is-big {
    padding-left: 2em;
    padding-right: 2em;
  }

  .contact {
    height: auto;
    padding-top: var(--_size---60);
    padding-bottom: var(--_size---240);
  }

  .projets-other_item.is-label {
    width: 100%;
  }

  .heading {
    font-size: 14.6em;
  }

  .projets-other_container {
    grid-column-gap: 0vw;
    grid-row-gap: 0vw;
  }

  .home_media.is-video {
    width: 96vw;
  }

  .home_media_wrapper.is-video {
    top: 38.9em;
  }

  .letter.is-bleu {
    width: 46vw;
  }

  .letter.is-travail {
    width: 76vw;
  }

  .home_link {
    width: 75vw;
  }

  .credits {
    width: 100%;
  }

  .credits.is-1 {
    display: none;
  }

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

  .projet_list.is-second, .projet_list.is-grutli {
    margin-top: var(--_size---120);
    margin-bottom: var(--_size---120);
  }

  .prestations_h1 {
    font-size: 10.3em;
  }

  .button-3 {
    width: 32.9em;
    height: 11.1em;
  }
}

@media screen and (max-width: 479px) {
  body {
    --_size---font-size--21: 3.76em;
    --_size---120: 25.05em;
    --_size---100: 100%;
    --_size---30: 6.26em;
    --_size---15: 3.13em;
    --_size---60: 12.53em;
    --_size---font-size--28: 5.85em;
    --_size---font-size--18: 3.76em;
    --_size---240: 50.1em;
    --_size---font-size--89: 9.1em;
    --_size---font-size--34: 5.01em;
  }

  .nav {
    padding-left: 0%;
  }

  .logo {
    margin-top: 4.9em;
    margin-left: var(--_size---15);
  }

  .logo_text {
    opacity: .2;
    font-size: 5.01em;
  }

  .menu {
    width: 24%;
  }

  .menu_wrapper {
    grid-column-gap: 2.26em;
    grid-row-gap: 2.26em;
    margin-top: 4.9em;
    padding-top: 4.9em;
  }

  .menu_button {
    font-size: 5.01em;
    position: relative;
    right: -5px;
  }

  .approche_sticky {
    width: 100%;
    top: 0;
  }

  .approche_text {
    text-align: left;
    font-size: 6.5em;
  }

  .image-collection_item-eee {
    width: 100%;
    height: 94vw;
  }

  .button {
    width: 75.15em;
  }

  .button_arrow--2 {
    width: 8.9em;
    bottom: 2.1em;
    right: 2.3em;
  }

  .home_wrapper {
    max-width: none;
    max-height: none;
    padding-top: 4.9em;
    padding-right: var(--_size---15);
    padding-left: var(--_size---15);
    grid-column-gap: var(--_size---15);
    grid-row-gap: var(--_size---15);
    overflow: hidden;
  }

  .home_line {
    width: auto;
    margin-right: auto;
  }

  .home_p.is-tab {
    display: flex;
  }

  .projets_list {
    padding-right: var(--_size---15);
    padding-left: var(--_size---15);
    grid-column-gap: 0vw;
    grid-row-gap: 0vw;
  }

  .projets_list.is-2, .projets_list.is-3 {
    margin-top: 0;
  }

  .projets_mask {
    height: 93vw;
  }

  .projets_line {
    margin-top: 3.8em;
  }

  .projets_line.is-projets {
    margin-top: 1.9em;
  }

  .projets_item {
    width: 100%;
  }

  .projets_item.is-one, .projets_item.is-three, .projets_item.is-four {
    top: auto;
  }

  .projets_content {
    margin-bottom: var(--_size---30);
    padding-top: 4.2em;
    padding-left: 4.2em;
    padding-right: 4.2em;
  }

  .projets_title {
    padding-left: 2.5%;
    font-size: 20.9em;
    top: -27.4vw;
  }

  .contact_content {
    grid-column-gap: 1.3em;
    grid-row-gap: 1.3em;
    flex-flow: column;
  }

  .contact_content_wrapper.is-big {
    margin-top: var(--_size---60);
    margin-bottom: var(--_size---60);
    padding-left: 0;
    padding-right: 0;
  }

  .contact_privacy {
    bottom: 1.04em;
    right: 1.04em;
  }

  .projet_header {
    padding-top: var(--_size---120);
    padding-right: var(--_size---15);
    padding-left: var(--_size---15);
  }

  .project_title {
    font-size: 12em;
  }

  .projet_image_wrapper {
    padding-right: 3.13%;
  }

  .projet_content {
    padding-top: var(--_size---60);
  }

  .progression {
    width: var(--_size---100);
    height: 5px;
    padding: 0 0;
    display: flex;
    position: absolute;
    inset: 0% 0% auto;
  }

  .progression_bar {
    opacity: 100;
    height: 5px;
  }

  .link.is-dark {
    margin-top: var(--_size---30);
  }

  .menu_trigger {
    padding-left: 5px;
    padding-right: 5px;
    font-size: 5.01em;
    top: 4.9vw;
    right: calc(3.13vw - 5px);
  }

  .approche_wrapper {
    height: 200vh;
    margin-bottom: var(--_size---120);
    padding-right: var(--_size---60);
    padding-left: var(--_size---60);
  }

  .home_sticky {
    display: flex;
  }

  .studio_bg {
    -webkit-mask-size: 93.74%;
    mask-size: 93.74%;
  }

  .studio_text {
    text-align: left;
    font-size: 6.5em;
  }

  .motion_sticky {
    top: var(--_size---120);
    padding-right: var(--_size---15);
    padding-bottom: var(--_size---120);
    padding-left: var(--_size---15);
    height: calc(100vh - 50.1em);
  }

  .partenaires {
    padding-right: var(--_size---15);
    padding-left: var(--_size---15);
    grid-column-gap: var(--_size---15);
    grid-row-gap: var(--_size---15);
  }

  .prestations_img {
    width: 100%;
    height: 94vw;
  }

  .partenaires_item {
    width: 48.3%;
    height: 45.4em;
    padding-left: 5em;
    padding-right: 5em;
  }

  .partenaires_item.is-first {
    width: 45vw;
    padding-right: 0;
    position: relative;
    bottom: -.1em;
  }

  .partenaires_item.is-small {
    padding-left: 8em;
    padding-right: 8em;
  }

  .partenaires_item.is-big {
    padding-left: 3em;
    padding-right: 3em;
  }

  .studio_text_wrapper {
    width: calc(100% - 25.6em);
  }

  .angle {
    width: 5vw;
    height: 5vw;
  }

  .contact {
    padding-right: var(--_size---15);
    padding-left: var(--_size---15);
  }

  .contact.is-sticky {
    min-height: auto;
  }

  .projets-other_item, .projets-other_item.is-label {
    left: 0;
  }

  .image-collection_item {
    width: 100%;
    height: 62vw;
  }

  .image-collection_item.is-one, .image-collection_item.is-three {
    margin-top: 0;
  }

  .image-collection_item.is-push {
    margin-top: 0;
  }

  .projets-other {
    padding-right: var(--_size---15);
    padding-left: var(--_size---15);
  }

  .heading {
    font-size: 20.2em;
  }

  .prestations_title {
    font-size: 7.1em;
  }

  .pres {
    margin-bottom: var(--_size---120);
  }

  .pres_sticky {
    padding-right: var(--_size---15);
    padding-bottom: 0%;
    padding-left: var(--_size---15);
    display: none;
  }

  .pres_sticky_content {
    margin-top: var(--_size---120);
    padding-right: var(--_size---15);
    padding-left: var(--_size---15);
  }

  .studio_wrapper {
    margin-bottom: var(--_size---120);
  }

  .home_media.is-video {
    width: 93.6vw;
  }

  .home_media_wrapper.is-video {
    top: 43.5em;
  }

  .text--fade {
    text-align: left;
    font-size: 6.5em;
  }

  .prestations_arrow {
    width: 6em;
  }

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

  .letter.is-travail {
    width: 75.1vw;
  }

  .home_link {
    margin-left: auto;
  }

  .projet_list {
    padding-right: var(--_size---15);
    padding-left: var(--_size---15);
    grid-column-gap: 3.13em;
    grid-row-gap: 3.13em;
  }

  .projet_list.is-second, .projet_list.is-grutli {
    margin-top: var(--_size---120);
    padding-right: var(--_size---15);
    padding-left: var(--_size---15);
  }

  .prestations_h1 {
    font-size: 13.9em;
  }

  .shape-vertical {
    height: 132vw;
  }

  .shape-carre {
    height: 93vw;
  }

  .form_container {
    grid-column-gap: var(--_size---60);
    grid-row-gap: var(--_size---60);
    flex-flow: column;
    height: auto;
  }

  .text_field {
    height: 12.12vw;
  }

  .text_field.is-area {
    height: 24.24vw;
  }

  .form_button {
    width: 36vw;
    height: 12.12vw;
    margin-left: 0;
  }

  .checkbox_wrapper {
    flex: 0 auto;
  }

  .button-3 {
    width: 52.9em;
    height: 17.7em;
  }

  .credits_container {
    flex-flow: column;
  }

  .fs-cc-prefs2_button {
    font-size: 4.19em;
  }

  .fs-cc-prefs2_button.fs-cc-button-alt {
    margin-bottom: .5rem;
  }

  .text {
    font-size: 4.19em;
  }

  .cookies_preference {
    padding: 1.5rem;
  }

  .cookies-banner {
    grid-column-gap: 12.5em;
    grid-row-gap: 12.5em;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    height: 100em;
  }

  .fs-cc-prefs2_submit {
    text-transform: uppercase;
    margin-top: 8px;
    font-size: 4.19vw;
  }

  .fs-cc-prefs2_content {
    padding: 1.5rem;
  }

  .button_wrapper {
    flex-flow: wrap;
    width: 100%;
  }

  .button-2 {
    height: 12.5em;
    padding-left: 6.25em;
    padding-right: 6.25em;
  }

  .button-2.is-cookies {
    flex: 1;
  }

  .fs-cc-prefs2_close {
    padding: .5rem;
  }

  .fs-cc-prefs2_label {
    font-size: .875rem;
  }

  .button_text-2 {
    font-size: 4.19em;
  }
}


@font-face {
  font-family: 'Suisseintl';
  src: url('../fonts/SuisseIntl-LightItalic.woff2') format('woff2');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Suisseintl';
  src: url('../fonts/SuisseIntl-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Suisseintl';
  src: url('../fonts/SuisseIntl-MediumItalic.woff2') format('woff2');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Suisseintl';
  src: url('../fonts/SuisseIntl-SemiBoldItalic.woff2') format('woff2');
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Suisseintl';
  src: url('../fonts/SuisseIntl-SemiBold.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Suisseintl';
  src: url('../fonts/SuisseIntl-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Suisseintl';
  src: url('../fonts/SuisseIntl-RegularItalic.woff2') format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Suisseintl';
  src: url('../fonts/SuisseIntl-Light.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}