* {
  box-sizing: border-box;
}

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

ul, li {
  list-style: none;
}

@-ms-viewport {
  width: auto !important;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  ul, li {
    list-style-image: url(data:0);
  }
}
img {
  -moz-user-drag: none;
  -webkit-user-drag: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  outline: 0;
  cursor: pointer;
  -moz-user-select: none;
  -webkit-user-drag: none;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  color: inherit;
}

h1, h2, h3, h4 {
  font-size: 1em;
  font-weight: normal;
}

button {
  border: 0;
  margin: 0;
  padding: 0;
  outline: 0;
  background: transparent;
  cursor: pointer;
  font-size: inherit;
}

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

input, select {
  border: 0;
  outline: 0;
  padding: 0;
  vertical-align: middle;
  font-size: 1em;
}

textarea {
  resize: none;
  outline: 0;
}

table {
  font-size: 1em;
}

button::-moz-focus-inner {
  border: 0;
}

[disabled] {
  pointer-events: none;
}

/**
 * Sugar for typing directly a property in multiple MQ in one line
 */
@font-face {
  font-family: DosisWeb;
  src: url(./assets/fonts/Dosis-Light.otf);
  font-weight: 300;
}
@font-face {
  font-family: DosisWeb;
  src: url(./assets/fonts/Dosis-Regular.otf);
  font-weight: 400;
}
@font-face {
  font-family: DosisWeb;
  src: url(./assets/fonts/Dosis-Medium.otf);
  font-weight: 500;
}
@font-face {
  font-family: DosisWeb;
  src: url(./assets/fonts/Dosis-SemiBold.otf);
  font-weight: 600;
}
/**
 * Colors map.
 */
/**
 * Front-end function.
 */
/**
 * Scales
 */
/**
 * Weights
 */
/**
 * IMPL
 */
/**
 * Front-end mixin.
 * usage : @include typo($desktop: thin red, $tablet: bold underline)
 */
/* Fluid setup */
/* --------------------------------------------------------------------------------- */
/**
 *
 */
/**
 *
 */
/**
 * [$desktop description]
 * @type {Boolean}
 */
* {
  min-height: 1px;
}

html {
  font-family: DosisWeb;
  font-weight: 400;
  font-size: 23px;
  color: #414042;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: none;
      -ms-text-size-adjust: none;
          text-size-adjust: none;
}
@media (min-width: 64em) {
  html {
    text-rendering: geometricPrecision;
  }
}
html {
  font-size: 0.972vw;
}
@media (min-width: 90em) {
  html {
    font-size: 14px;
  }
}
@media (max-width: 63.99em) {
  html {
    font-size: 1vw;
  }
}
@media (max-width: 42.49em) {
  html {
    font-size: 2.4vw;
  }
}
html {
  position: relative;
  min-height: 100%;
  background-color: #FFFFFF;
}

body {
  width: 100%;
  height: 100%;
  overflow-x: hidden;
}
body.is-loading, body.noscroll {
  overflow-y: hidden;
}

main {
  display: block;
  margin-top: 80px;
}
@media (max-width: 63.99em) {
  main {
    margin-top: 60px;
  }
}

.inner, .ie10-inner, .spheres-item, .spheres-inner, .processus-item-inner, .hero-main, .footer-copyright, .footer-inner, .follow-inner, .header-inner, .waste-install, .waste-video-inner, .waste-presentation-inner, .waste-schema-inner, .waste-intro-inner, .urika-solutions-inner, .urika-install, .urika-video-inner, .urika-presentation-inner, .urika-intro, .xplab-contact-inner, .xplab-order-inner, .xplab-advantages-inner, .xplab-intro-inner, .project-info-inner, .project-problematic-title, .projects-list-inner, .method-coopeo-inner, .method-def, .method-skills-list, .method-team-inner, .method-lines, .home-news-inner, .home-fabriqueo-inner, .home-subnav-list, .home-values-list, .home-values-inner, .home-presentation-inner, .home-intro-inner, .formations-list, .fabriqueo-diagram-spheres, .contact-inner, .agence-legal-inner, .agence-clients-inner, .agence-family-list, .agence-team-list, .agence-presentation, .fabrique-order-inner, .fabrique-advantages-inner, .fabrique-intro-inner, .adn-contact-inner, .adn-order-inner, .adn-cases-inner, .adn-advantages-inner, .adn-intro-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1300px;
  width: 100%;
  padding-left: 2.9rem;
}
@media (max-width: 42.49em) {
  .inner, .ie10-inner, .spheres-item, .spheres-inner, .processus-item-inner, .hero-main, .footer-copyright, .footer-inner, .follow-inner, .header-inner, .waste-install, .waste-video-inner, .waste-presentation-inner, .waste-schema-inner, .waste-intro-inner, .urika-solutions-inner, .urika-install, .urika-video-inner, .urika-presentation-inner, .urika-intro, .xplab-contact-inner, .xplab-order-inner, .xplab-advantages-inner, .xplab-intro-inner, .project-info-inner, .project-problematic-title, .projects-list-inner, .method-coopeo-inner, .method-def, .method-skills-list, .method-team-inner, .method-lines, .home-news-inner, .home-fabriqueo-inner, .home-subnav-list, .home-values-list, .home-values-inner, .home-presentation-inner, .home-intro-inner, .formations-list, .fabriqueo-diagram-spheres, .contact-inner, .agence-legal-inner, .agence-clients-inner, .agence-family-list, .agence-team-list, .agence-presentation, .fabrique-order-inner, .fabrique-advantages-inner, .fabrique-intro-inner, .adn-contact-inner, .adn-order-inner, .adn-cases-inner, .adn-advantages-inner, .adn-intro-inner {
    padding-left: 1.4rem;
  }
}
.inner, .ie10-inner, .spheres-item, .spheres-inner, .processus-item-inner, .hero-main, .footer-copyright, .footer-inner, .follow-inner, .header-inner, .waste-install, .waste-video-inner, .waste-presentation-inner, .waste-schema-inner, .waste-intro-inner, .urika-solutions-inner, .urika-install, .urika-video-inner, .urika-presentation-inner, .urika-intro, .xplab-contact-inner, .xplab-order-inner, .xplab-advantages-inner, .xplab-intro-inner, .project-info-inner, .project-problematic-title, .projects-list-inner, .method-coopeo-inner, .method-def, .method-skills-list, .method-team-inner, .method-lines, .home-news-inner, .home-fabriqueo-inner, .home-subnav-list, .home-values-list, .home-values-inner, .home-presentation-inner, .home-intro-inner, .formations-list, .fabriqueo-diagram-spheres, .contact-inner, .agence-legal-inner, .agence-clients-inner, .agence-family-list, .agence-team-list, .agence-presentation, .fabrique-order-inner, .fabrique-advantages-inner, .fabrique-intro-inner, .adn-contact-inner, .adn-order-inner, .adn-cases-inner, .adn-advantages-inner, .adn-intro-inner {
  padding-right: 2.9rem;
}
@media (max-width: 42.49em) {
  .inner, .ie10-inner, .spheres-item, .spheres-inner, .processus-item-inner, .hero-main, .footer-copyright, .footer-inner, .follow-inner, .header-inner, .waste-install, .waste-video-inner, .waste-presentation-inner, .waste-schema-inner, .waste-intro-inner, .urika-solutions-inner, .urika-install, .urika-video-inner, .urika-presentation-inner, .urika-intro, .xplab-contact-inner, .xplab-order-inner, .xplab-advantages-inner, .xplab-intro-inner, .project-info-inner, .project-problematic-title, .projects-list-inner, .method-coopeo-inner, .method-def, .method-skills-list, .method-team-inner, .method-lines, .home-news-inner, .home-fabriqueo-inner, .home-subnav-list, .home-values-list, .home-values-inner, .home-presentation-inner, .home-intro-inner, .formations-list, .fabriqueo-diagram-spheres, .contact-inner, .agence-legal-inner, .agence-clients-inner, .agence-family-list, .agence-team-list, .agence-presentation, .fabrique-order-inner, .fabrique-advantages-inner, .fabrique-intro-inner, .adn-contact-inner, .adn-order-inner, .adn-cases-inner, .adn-advantages-inner, .adn-intro-inner {
    padding-right: 1.4rem;
  }
}

/* Common classes */
/* --------------------------------------------------------------------------------- */
[hidden],
.is-hidden {
  display: none;
}

[data-href] {
  cursor: pointer;
}

/**
 * Truncates text overflow.
 */
.background-grey, .projects-list {
  background-color: #FFFFFF;
  background: linear-gradient(to bottom, #f0f0f0 0%, #FFFFFF 100%);
}
.background-grey2, .home-presentation, .agence-team, .error {
  background-color: #FFFFFF;
  background: linear-gradient(to bottom, #f0f0f0 0%, #FFFFFF 50%, #f0f0f0 100%);
}
.background-cyan, .projects-passion {
  background-color: #054f63;
  background: linear-gradient(to right, #2b9fb2 0%, #054f63 100%);
}

.icon {
  width: 1em;
  height: 1em;
  vertical-align: middle;
  display: inline-block;
}

/** Applied on use and not svg because if not, it breaks..... IE!! WOOT! -_- */
svg use {
  pointer-events: none;
}

#svg-store {
  display: none;
}

.inlinesvg {
  width: 100%;
  display: block;
  height: auto;
  position: relative;
  padding-top: 100%;
}
.inlinesvg svg, .inlinesvg video {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.lightbox {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow-y: scroll;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 1000;
}
.lightbox.visible {
  display: block;
}
.lightbox-overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1010;
}
.lightbox-container {
  position: relative;
  left: 50%;
  top: 10%;
  transform: translate(-50%, 0%);
  width: 800px;
  max-width: 90%;
  z-index: 1011;
  border-top: 10px solid #e2645a;
  margin-bottom: 100px;
  box-shadow: 0 0 200px 0px #000;
}
.lightbox-bg {
  width: 100%;
}
.lightbox-bg .icon {
  width: 100%;
  height: auto;
}
.lightbox-close {
  position: absolute;
  cursor: pointer;
  z-index: 1;
  background-color: #a7a9ac;
  border-radius: 100%;
  padding: 8px;
  right: 0;
  top: -5px;
  transform: translate(50%, -50%);
}
.lightbox-close .icon {
  fill: #FFFFFF;
  width: 20px;
  height: 20px;
}
.lightbox-content {
  position: relative;
  background: #FFFFFF;
  padding: 4.3rem 2.9rem 7.1rem 2.9rem;
}
.lightbox-title {
  color: #e2645a;
  font-size: 32px;
  text-align: center;
  font-weight: 500;
  margin-bottom: 1.4rem;
}
.lightbox-description {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.lightbox-description h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.lightbox-description p {
  font-size: 23px;
  color: #3C3C3B;
  margin-bottom: 1.4rem;
}
.lightbox-description a {
  color: orange;
  text-decoration: underline;
}
.lightbox-description a:hover {
  color: #e2645a;
}
.lightbox-description ul, .lightbox-description ol {
  margin-bottom: 1.4rem;
}
.lightbox-description ul li, .lightbox-description ol li {
  font-size: 23px;
  color: #3C3C3B;
  margin-left: 1.4rem;
}
.lightbox-description ul li {
  list-style: disc outside;
}
.lightbox-description ol li {
  list-style: decimal outside;
}
.lightbox-description .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.lightbox-description .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.lightbox-description .gallery-item:hover {
  opacity: 0.7;
}
.lightbox-description .gallery-item a, .lightbox-description .gallery-item img {
  display: block;
}
.lightbox-description iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.lightbox-description .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.lightbox-description img {
  max-width: 100%;
  height: auto;
}
.lightbox-slider {
  margin: 0 -2.9rem;
}
.lightbox-slider-content {
  padding: 1.4rem;
  color: #414042;
  transition: opacity 0.2s linear;
  opacity: 0;
}
.lightbox-slider-content.visible {
  opacity: 1;
}
.lightbox-slider .slick-prev {
  background-image: url(./assets/images/larr-white.svg);
}
.lightbox-slider .slick-next {
  background-image: url(./assets/images/rarr-white.svg);
}
.lightbox-slide {
  position: relative;
  overflow: visible;
}
.lightbox-slide-visual {
  width: 100%;
}
.lightbox-slide-content {
  display: none;
}
.lightbox-cta {
  border-radius: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #FFFFFF;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  font-size: 25px;
  padding: 0.7rem 1.4rem;
}
.lightbox-cta .icon {
  margin-left: -30px;
  width: 30px;
  height: 30px;
  fill: #FFFFFF;
  opacity: 0;
  transform: translateX(200%);
  transition: all 0.2s ease-out;
}
@media (max-width: 42.49em) {
  .lightbox-cta .icon {
    display: none;
  }
}
.lightbox-cta:hover .icon {
  opacity: 1;
  transform: translateX(0);
  margin-left: 20px;
}
.lightbox-cta {
  background-color: #e2645a;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 50%);
}

[data-lightboxid] {
  display: none;
}

.form {
  position: relative;
}
.form-message {
  display: none;
  position: absolute;
  left: 50%;
  top: 10%;
  transform: translateX(-50%);
  width: 60%;
  width: 60%;
}
@media (max-width: 42.49em) {
  .form-message {
    width: 90%;
  }
}
.form-message {
  padding: 2.9rem 1.4rem 1.4rem 1.4rem;
}
@media (max-width: 63.99em) {
  .form-message {
    padding: 5.7rem 1.4rem 1.4rem 1.4rem;
  }
}
.form-message {
  border-radius: 10px;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.3);
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.form-message h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.form-message p {
  font-size: 23px;
  color: #3C3C3B;
  margin-bottom: 1.4rem;
}
.form-message a {
  color: orange;
  text-decoration: underline;
}
.form-message a:hover {
  color: #e2645a;
}
.form-message ul, .form-message ol {
  margin-bottom: 1.4rem;
}
.form-message ul li, .form-message ol li {
  font-size: 23px;
  color: #3C3C3B;
  margin-left: 1.4rem;
}
.form-message ul li {
  list-style: disc outside;
}
.form-message ol li {
  list-style: decimal outside;
}
.form-message .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.form-message .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.form-message .gallery-item:hover {
  opacity: 0.7;
}
.form-message .gallery-item a, .form-message .gallery-item img {
  display: block;
}
.form-message iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.form-message .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.form-message img {
  max-width: 100%;
  height: auto;
}
.form-message {
  z-index: 2;
  cursor: pointer;
}
.form.finished .form-message {
  display: block;
}
.form.has-errors .form-message {
  background-color: #f5c7c7;
  border: 1px solid #cc1e1e;
}
.form.is-success .form-message {
  background-color: #b3dab3;
  border: 1px solid #008000;
}
.form-message::before {
  content: "x";
  font-size: 32px;
  color: #3C3C3B;
  font-weight: 300;
  position: absolute;
  top: -5px;
  right: 5px;
  line-height: 32px;
}
.form-input, .form-textarea {
  margin-bottom: 1.4rem;
  padding: 1.1rem;
  border: 1px solid #a7a9ac;
  width: 100%;
}
.form.is-loading .form-input, .form.finished .form-input, .form.is-loading .form-textarea, .form.finished .form-textarea {
  opacity: 0.3;
}
.form-error {
  border-color: #cc1e1e;
}
.form-textarea {
  min-height: 14.3rem;
}
.form-button {
  border-radius: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #FFFFFF;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  font-size: 32px;
}
@media (max-width: 42.49em) {
  .form-button {
    font-size: 25px;
  }
}
.form-button {
  padding: 1.1rem 2.1rem;
}
@media (max-width: 42.49em) {
  .form-button {
    padding: 0.7rem 1.4rem;
  }
}
.form-button .icon {
  margin-left: -30px;
  width: 30px;
  height: 30px;
  fill: #FFFFFF;
  opacity: 0;
  transform: translateX(200%);
  transition: all 0.2s ease-out;
}
@media (max-width: 42.49em) {
  .form-button .icon {
    display: none;
  }
}
.form-button:hover .icon {
  opacity: 1;
  transform: translateX(0);
  margin-left: 20px;
}
.form-button {
  background-color: #e2645a;
  margin: 0 auto;
}

textarea, input, button {
  font-family: DosisWeb;
  font-size: 25px;
}

.fab-hero {
  height: auto;
  width: 100%;
  background-size: cover;
  background-position: center center;
  position: relative;
  overflow: hidden;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.fab-hero::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(./assets/images/bgvideo.png) repeat transparent;
}
.fab-hero::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.8) 100%);
}
.fab-hero-heading {
  display: -ms-flexbox;
  display: flex;
  z-index: 1;
  margin-top: 1.4rem;
  margin-bottom: 2.9rem;
}
@media (max-width: 42.49em) {
  .fab-hero-heading {
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-align: center;
        align-items: center;
  }
}
.fab-hero-logo {
  -ms-flex-positive: 1;
      flex-grow: 1;
  margin-left: 3.6rem;
}
@media (max-width: 42.49em) {
  .fab-hero-logo {
    margin-left: 0;
  }
}
.fab-hero-logo img {
  width: 21.4rem;
}
@media (max-width: 42.49em) {
  .fab-hero-logo img {
    width: 21.4rem;
  }
}
.fab-hero-logo img {
  height: auto;
}
.fab-hero-authors {
  margin-right: 3.6rem;
  margin-top: 1.4rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.fab-hero-author img {
  width: 14.3rem;
}
@media (max-width: 42.49em) {
  .fab-hero-author img {
    width: 14.3rem;
  }
}
.fab-hero-author img {
  height: auto;
}
.fab-hero-main {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  z-index: 1;
}
.fab-hero-icon {
  margin-bottom: 2.9rem;
  width: 21.4rem;
}
@media (max-width: 42.49em) {
  .fab-hero-icon {
    width: 21.4rem;
  }
}
.fab-hero-icon {
  height: auto;
}
.fab-hero-title {
  font-size: 50px;
  color: #FFFFFF;
  text-align: center;
  margin-bottom: 2.9rem;
}
.fab-hero-title.hide-title {
  opacity: 0;
}

.adn .footer {
  background-color: #13374b;
}
.adn-slugline {
  padding: 1.4rem;
}
@media (max-width: 42.49em) {
  .adn-slugline {
    padding: 1.4rem;
  }
}
.adn-slugline {
  background-color: #13374b;
}
.adn-slugline-inner {
  color: #FFFFFF;
  font-size: 25px;
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}
.adn-intro-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  padding-top: 3.6rem;
  padding-bottom: 7.1rem;
}
@media (max-width: 42.49em) {
  .adn-intro-inner {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.adn-intro-side {
  -ms-flex: 1;
      flex: 1;
  background-color: #FFFFFF;
  border: 2px solid #13374b;
  padding: 2.9rem;
}
@media (max-width: 42.49em) {
  .adn-intro-side {
    margin: 0 1.4rem 2.9rem 1.4rem;
  }
}
.adn-intro-side {
  font-size: 23px;
  font-weight: 400;
  position: relative;
}
.adn-intro-side::before, .adn-intro-side::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  width: 14.3rem;
  height: 14.3rem;
  background-color: #13374b;
}
.adn-intro-side::before {
  top: 0;
  left: 0;
  transform: translate(-10%, -10%);
}
.adn-intro-side::after {
  bottom: 0;
  right: 0;
  transform: translate(10%, 10%);
}
.adn-intro-main {
  -ms-flex: 2;
      flex: 2;
  margin-left: 7.1rem;
}
@media (max-width: 42.49em) {
  .adn-intro-main {
    margin-left: 0;
  }
}
.adn-intro-title {
  font-weight: 500;
  font-size: 32px;
  text-align: center;
  color: #13374b;
  margin-bottom: 1.4rem;
}
.adn-intro-description {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.adn-intro-description h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.adn-intro-description p {
  font-size: 23px;
  margin-bottom: 1.4rem;
}
.adn-intro-description a {
  color: orange;
  text-decoration: underline;
}
.adn-intro-description a:hover {
  color: #e2645a;
}
.adn-intro-description ul, .adn-intro-description ol {
  margin-bottom: 1.4rem;
}
.adn-intro-description ul li, .adn-intro-description ol li {
  font-size: 23px;
  margin-left: 1.4rem;
}
.adn-intro-description ul li {
  list-style: disc outside;
}
.adn-intro-description ol li {
  list-style: decimal outside;
}
.adn-intro-description .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.adn-intro-description .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.adn-intro-description .gallery-item:hover {
  opacity: 0.7;
}
.adn-intro-description .gallery-item a, .adn-intro-description .gallery-item img {
  display: block;
}
.adn-intro-description iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.adn-intro-description .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.adn-intro-description img {
  max-width: 100%;
  height: auto;
}
.adn-intro-description {
  text-align: justify;
  color: #13374b;
}
.adn-advantages {
  position: relative;
}
.adn-advantages::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background-image: radial-gradient(circle farthest-corner at 100% 100%, #b1b9bc 0%, #4b6071 100%);
}
.adn-advantages {
  background: url(./assets/images/adn/bg2.svg) no-repeat right center transparent;
  background-size: auto 100%;
}
@media (max-width: 42.49em) {
  .adn-advantages {
    background-image: none;
  }
}
.adn-advantages-inner {
  padding-top: 3.6rem;
  padding-bottom: 7.1rem;
}
.adn-advantages-title {
  font-size: 50px;
  color: #FFFFFF;
  text-align: center;
}
@media (max-width: 42.49em) {
  .adn-advantages-title {
    font-size: 32px;
  }
}
.adn-advantages-title {
  margin-bottom: 25rem;
}
@media (max-width: 42.49em) {
  .adn-advantages-title {
    margin-bottom: 17.9rem;
  }
}
.adn-advantages-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
.adn-advantages-item {
  background: url(./assets/images/adn/bg3.svg) no-repeat 0 0 transparent;
  background-size: cover;
  width: 28.6rem;
  height: 24.7rem;
}
@media (max-width: 42.49em) {
  .adn-advantages-item {
    background-image: none;
  }
}
.adn-advantages-item:nth-child(1) {
  transform: translateX(60%);
}
.adn-advantages-item:nth-child(2) {
  transform: translateY(-80%);
}
.adn-advantages-item:nth-child(3) {
  transform: translateX(-60%);
}
@media (max-width: 42.49em) {
  .adn-advantages-item:nth-child(1) {
    transform: translateX(30%);
  }
  .adn-advantages-item:nth-child(2) {
    transform: translateY(-80%);
  }
  .adn-advantages-item:nth-child(3) {
    transform: translateX(-30%);
  }
}
.adn-advantages-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.adn-advantages-subtitle {
  color: #FFFFFF;
  font-size: 32px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .adn-advantages-subtitle {
    font-size: 25px;
  }
}
.adn-advantages-description {
  color: #FFFFFF;
  font-size: 23px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .adn-advantages-description {
    font-size: 17px;
  }
}
.adn-cases {
  position: relative;
}
.adn-cases-inner {
  padding-top: 3.6rem;
  padding-bottom: 3.6rem;
}
.adn-cases-title {
  font-size: 50px;
  text-align: center;
  color: #13374b;
  margin-bottom: 2.9rem;
}
.adn-cases-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
@media (max-width: 42.49em) {
  .adn-cases-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.adn-cases-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  margin: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .adn-cases-item {
    margin: 0 1.4rem 2.9rem 1.4rem;
  }
}
.adn-cases-visual {
  width: 14.3rem;
  margin-bottom: 1.4rem;
}
.adn-cases-subtitle {
  font-size: 25px;
  text-align: center;
  color: #13374b;
}
.adn-cases-description {
  font-size: 17px;
  text-align: center;
  color: #13374b;
}
.adn-timeline {
  margin-bottom: 3.6rem;
}
.adn-timeline-title {
  background-color: #13374b;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  color: #FFFFFF;
  font-size: 50px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .adn-timeline-title {
    font-size: 32px;
  }
}
.adn-timeline-title {
  height: 7.1rem;
}
@media (max-width: 42.49em) {
  .adn-timeline-title {
    height: auto;
  }
}
.adn-timeline-title {
  margin-bottom: 3.6rem;
  padding: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .adn-timeline-title {
    padding: 1.4rem;
  }
}
.adn-timeline-item {
  display: -ms-flexbox;
  display: flex;
}
.adn-timeline-item-side {
  -ms-flex-positive: 1;
      flex-grow: 1;
  border-right: 2px solid #13374b;
  margin-right: 3.6rem;
}
@media (max-width: 42.49em) {
  .adn-timeline-item-side {
    margin-right: 3.6rem;
  }
}
.adn-timeline-item-side {
  padding-top: 1.1rem;
  padding-bottom: 3.6rem;
  min-height: 21.4rem;
}
.adn-timeline-item:last-child .adn-timeline-item-side {
  padding-bottom: 0;
}
@media (max-width: 42.49em) {
  .adn-timeline-item-side {
    -ms-flex: 0;
        flex: 0;
    margin-left: 2.9rem;
  }
}
.adn-timeline-item-visual {
  position: relative;
  background-size: cover;
  background-position: center;
  height: 100%;
}
@media (max-width: 42.49em) {
  .adn-timeline-item-visual {
    background-image: none !important;
  }
}
.adn-timeline-item-count {
  position: absolute;
  right: 0;
  top: 0;
  transform: translate(3.2rem, -50%);
  background: url(./assets/images/adn/count.svg) no-repeat left center transparent;
  color: #FFFFFF;
  font-size: 17px;
  text-transform: uppercase;
  font-weight: 500;
  width: 5.7rem;
  height: 3.9rem;
  text-indent: 1.8rem;
}
@media (max-width: 42.49em) {
  .adn-timeline-item-count {
    text-indent: 1.4rem;
  }
}
.adn-timeline-item-count {
  background-size: cover;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
.adn-timeline-item-main {
  -ms-flex-positive: 1;
      flex-grow: 1;
  padding-right: 2.1rem;
  padding-bottom: 3.6rem;
}
.adn-timeline-item-title {
  font-size: 25px;
  text-transform: uppercase;
  color: #13374b;
}
.adn-timeline-item-description {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.adn-timeline-item-description h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.adn-timeline-item-description p {
  font-size: 23px;
  margin-bottom: 1.4rem;
}
.adn-timeline-item-description a {
  color: orange;
  text-decoration: underline;
}
.adn-timeline-item-description a:hover {
  color: #e2645a;
}
.adn-timeline-item-description ul, .adn-timeline-item-description ol {
  margin-bottom: 1.4rem;
}
.adn-timeline-item-description ul li, .adn-timeline-item-description ol li {
  font-size: 23px;
  margin-left: 1.4rem;
}
.adn-timeline-item-description ul li {
  list-style: disc outside;
}
.adn-timeline-item-description ol li {
  list-style: decimal outside;
}
.adn-timeline-item-description .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.adn-timeline-item-description .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.adn-timeline-item-description .gallery-item:hover {
  opacity: 0.7;
}
.adn-timeline-item-description .gallery-item a, .adn-timeline-item-description .gallery-item img {
  display: block;
}
.adn-timeline-item-description iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.adn-timeline-item-description .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.adn-timeline-item-description img {
  max-width: 100%;
  height: auto;
}
.adn-timeline-item-description {
  padding: 0;
}
.adn-order {
  position: relative;
  background-color: #f0f0f0;
}
.adn-order-inner {
  padding-top: 3.6rem;
  padding-bottom: 3.6rem;
}
@media (max-width: 42.49em) {
  .adn-order-inner {
    padding-bottom: 7.1rem;
  }
}
.adn-order-title {
  font-size: 50px;
  text-align: center;
  font-weight: 500;
  color: #13374b;
  margin-bottom: 2.9rem;
}
.adn-order-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
@media (max-width: 42.49em) {
  .adn-order-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.adn-order-item {
  -ms-flex-positive: 1;
      flex-grow: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  margin: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .adn-order-item {
    margin: 0 1.4rem 2.9rem 1.4rem;
  }
}
.adn-order-price {
  width: 21.4rem;
  height: 18.5rem;
  background: url(./assets/images/adn/bg3.svg) no-repeat 0 0 transparent;
  background-size: cover;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  font-size: 50px;
  color: #FFFFFF;
  font-weight: 500;
  margin-bottom: 1.4rem;
}
.adn-order-subtitle {
  font-size: 32px;
  font-weight: 500;
  text-align: center;
}
.adn-order-description {
  font-size: 23px;
  text-align: center;
}
.adn-order-cta {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 50%);
  height: 5.7rem;
}
@media (max-width: 42.49em) {
  .adn-order-cta {
    height: auto;
  }
}
.adn-order-cta {
  padding: 0 2.9rem;
}
@media (max-width: 42.49em) {
  .adn-order-cta {
    padding: 1.4rem 2.9rem;
  }
}
.adn-order-cta {
  background-color: #13374b;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
.adn-order-cta:hover {
  opacity: 0.7;
}
.adn-order-cta {
  color: #FFFFFF;
  font-size: 25px;
  text-align: center;
  border-radius: 10px;
}
.adn-contact-inner {
  max-width: 700px;
  padding-top: 3.6rem;
  padding-bottom: 3.6rem;
}
@media (max-width: 42.49em) {
  .adn-contact-inner {
    padding-bottom: 7.1rem;
  }
}
.adn-contact-title {
  font-size: 50px;
  text-align: center;
  font-weight: 500;
  color: #13374b;
  margin-bottom: 2.9rem;
}
.adn-contact .form-button {
  background: #13374b;
}

.fabrique .footer {
  background-color: #d61b3c;
}
.fabrique-slugline {
  padding: 1.4rem;
}
@media (max-width: 42.49em) {
  .fabrique-slugline {
    padding: 1.4rem;
  }
}
.fabrique-slugline {
  background-color: #d61b3c;
}
.fabrique-slugline-inner {
  color: #FFFFFF;
  font-size: 25px;
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}
.fabrique-intro-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  padding-top: 3.6rem;
  padding-bottom: 7.1rem;
}
@media (max-width: 42.49em) {
  .fabrique-intro-inner {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.fabrique-intro-side {
  -ms-flex: 1;
      flex: 1;
  background-color: #FFFFFF;
  border: 2px solid #d61b3c;
  padding: 2.9rem;
}
@media (max-width: 42.49em) {
  .fabrique-intro-side {
    margin: 0 1.4rem 2.9rem 1.4rem;
  }
}
.fabrique-intro-side {
  font-size: 23px;
  font-weight: 400;
  position: relative;
}
.fabrique-intro-side::before, .fabrique-intro-side::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  width: 14.3rem;
  height: 14.3rem;
  background-color: #d61b3c;
}
.fabrique-intro-side::before {
  top: 0;
  left: 0;
  transform: translate(-10%, -10%);
}
.fabrique-intro-side::after {
  bottom: 0;
  right: 0;
  transform: translate(10%, 10%);
}
.fabrique-intro-main {
  -ms-flex: 2;
      flex: 2;
  margin-left: 7.1rem;
}
@media (max-width: 42.49em) {
  .fabrique-intro-main {
    margin-left: 0;
  }
}
.fabrique-intro-title {
  font-weight: 500;
  font-size: 32px;
  text-align: center;
  color: #d61b3c;
  margin-bottom: 1.4rem;
}
.fabrique-intro-description {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.fabrique-intro-description h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.fabrique-intro-description p {
  font-size: 23px;
  margin-bottom: 1.4rem;
}
.fabrique-intro-description a {
  color: orange;
  text-decoration: underline;
}
.fabrique-intro-description a:hover {
  color: #e2645a;
}
.fabrique-intro-description ul, .fabrique-intro-description ol {
  margin-bottom: 1.4rem;
}
.fabrique-intro-description ul li, .fabrique-intro-description ol li {
  font-size: 23px;
  margin-left: 1.4rem;
}
.fabrique-intro-description ul li {
  list-style: disc outside;
}
.fabrique-intro-description ol li {
  list-style: decimal outside;
}
.fabrique-intro-description .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.fabrique-intro-description .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.fabrique-intro-description .gallery-item:hover {
  opacity: 0.7;
}
.fabrique-intro-description .gallery-item a, .fabrique-intro-description .gallery-item img {
  display: block;
}
.fabrique-intro-description iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.fabrique-intro-description .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.fabrique-intro-description img {
  max-width: 100%;
  height: auto;
}
.fabrique-intro-description {
  text-align: justify;
  color: #d61b3c;
}
.fabrique-advantages {
  position: relative;
  background-color: #d61b3c;
  margin-bottom: 7.1rem;
}
.fabrique-advantages-inner {
  padding-bottom: 7.1rem;
}
.fabrique-advantages-title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .fabrique-advantages-title span {
    width: 100%;
  }
}
.fabrique-advantages-title span {
  background-color: semilight;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #FFFFFF;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .fabrique-advantages-title span {
    padding: 40px 20px 20px 20px;
  }
}
.fabrique-advantages-title span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .fabrique-advantages-title span {
    margin-top: 0;
  }
}
.fabrique-advantages-title {
  font-size: 50px;
  color: #FFFFFF;
  text-align: center;
  margin-bottom: 25rem;
}
@media (max-width: 42.49em) {
  .fabrique-advantages-title {
    margin-bottom: 14.3rem;
  }
}
.fabrique-advantages-title span {
  background-color: #d61b3c;
}
.fabrique-advantages-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
.fabrique-advantages-item {
  border: 1px solid #FFFFFF;
  border-radius: 100%;
  width: 21.4rem;
}
@media (max-width: 42.49em) {
  .fabrique-advantages-item {
    width: 14.3rem;
  }
}
.fabrique-advantages-item {
  height: 21.4rem;
}
@media (max-width: 42.49em) {
  .fabrique-advantages-item {
    height: 14.3rem;
  }
}
.fabrique-advantages-item:nth-child(1) {
  transform: translateX(55%);
}
.fabrique-advantages-item:nth-child(2) {
  transform: translateY(-80%);
}
.fabrique-advantages-item:nth-child(3) {
  transform: translateX(-55%);
}
@media (max-width: 42.49em) {
  .fabrique-advantages-item:nth-child(1) {
    transform: translateX(40%);
  }
  .fabrique-advantages-item:nth-child(2) {
    transform: translateY(-80%);
  }
  .fabrique-advantages-item:nth-child(3) {
    transform: translateX(-40%);
  }
}
.fabrique-advantages-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.fabrique-advantages-description {
  color: #FFFFFF;
  font-size: 25px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .fabrique-advantages-description {
    font-size: 15px;
  }
}
.fabrique-timeline {
  padding-bottom: 21.4rem;
}
@media (max-width: 42.49em) {
  .fabrique-timeline {
    padding-bottom: 0;
  }
}
.fabrique-timeline {
  background: url(./assets/images/fabrique/bg2.svg) no-repeat right bottom transparent;
  background-size: 70% auto;
  background-position: calc(100% + 20px) calc(100% + 20px);
}
.fabrique-timeline-heading {
  background-color: #d61b3c;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 1.4rem;
  margin-bottom: 5.7rem;
}
.fabrique-timeline-title {
  color: #FFFFFF;
  font-size: 50px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .fabrique-timeline-title {
    font-size: 32px;
  }
}
.fabrique-timeline-slugline {
  color: #FFFFFF;
  font-size: 25px;
  text-align: center;
}
.fabrique-timeline-item {
  display: -ms-flexbox;
  display: flex;
}
.fabrique-timeline-item-side {
  -ms-flex-positive: 1;
      flex-grow: 1;
  border-right: 2px solid #d61b3c;
  margin-right: 3.6rem;
  padding-top: 1.1rem;
  padding-bottom: 3.6rem;
  min-height: 21.4rem;
}
.fabrique-timeline-item:last-child .fabrique-timeline-item-side {
  padding-bottom: 0;
}
@media (max-width: 42.49em) {
  .fabrique-timeline-item-side {
    margin-left: 3.6rem;
    -ms-flex: 0;
        flex: 0;
  }
}
.fabrique-timeline-item-visual {
  position: relative;
  background-size: cover;
  background-position: center;
  height: 100%;
}
.fabrique-timeline-item-count {
  position: absolute;
  right: 0;
  top: 0;
  transform: translate(50%, -50%);
  color: #FFFFFF;
  font-size: 25px;
  text-transform: uppercase;
  font-weight: 500;
  width: 4.3rem;
  height: 4.3rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.fabrique-timeline-item-count::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: #d61b3c;
  transform: translate(-50%, -50%) rotate(-45deg);
  transform-origin: center center;
}
.fabrique-timeline-item-main {
  -ms-flex-positive: 1;
      flex-grow: 1;
  padding-right: 2.1rem;
  padding-bottom: 3.6rem;
}
.fabrique-timeline-item-title {
  font-size: 25px;
  text-transform: uppercase;
}
.fabrique-timeline-item-description {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.fabrique-timeline-item-description h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.fabrique-timeline-item-description p {
  font-size: 23px;
  margin-bottom: 1.4rem;
}
.fabrique-timeline-item-description a {
  color: orange;
  text-decoration: underline;
}
.fabrique-timeline-item-description a:hover {
  color: #e2645a;
}
.fabrique-timeline-item-description ul, .fabrique-timeline-item-description ol {
  margin-bottom: 1.4rem;
}
.fabrique-timeline-item-description ul li, .fabrique-timeline-item-description ol li {
  font-size: 23px;
  margin-left: 1.4rem;
}
.fabrique-timeline-item-description ul li {
  list-style: disc outside;
}
.fabrique-timeline-item-description ol li {
  list-style: decimal outside;
}
.fabrique-timeline-item-description .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.fabrique-timeline-item-description .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.fabrique-timeline-item-description .gallery-item:hover {
  opacity: 0.7;
}
.fabrique-timeline-item-description .gallery-item a, .fabrique-timeline-item-description .gallery-item img {
  display: block;
}
.fabrique-timeline-item-description iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.fabrique-timeline-item-description .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.fabrique-timeline-item-description img {
  max-width: 100%;
  height: auto;
}
.fabrique-order {
  position: relative;
  background-color: #d61b3c;
  margin-bottom: 14.3rem;
}
.fabrique-order-inner {
  padding-top: 3.6rem;
  padding-bottom: 7.1rem;
}
.fabrique-order-title {
  font-size: 50px;
  color: #FFFFFF;
  text-align: center;
  font-weight: 500;
}
@media (max-width: 42.49em) {
  .fabrique-order-title {
    font-size: 32px;
  }
}
.fabrique-order-title {
  margin-bottom: 2.9rem;
  padding: 0 1.4rem;
}
.fabrique-order-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
@media (max-width: 42.49em) {
  .fabrique-order-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.fabrique-order-item {
  -ms-flex-positive: 1;
      flex-grow: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  margin: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .fabrique-order-item {
    margin: 0 1.4rem 2.9rem 1.4rem;
  }
}
.fabrique-order-price {
  width: 21.4rem;
  height: 21.4rem;
  background-color: #FFFFFF;
  border-radius: 100%;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  font-size: 50px;
  font-weight: 500;
  color: #d61b3c;
  margin-bottom: 1.4rem;
}
.fabrique-order-price::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  border: 1px solid #FFFFFF;
  border-radius: 100%;
  transform: translate(-50%, -50%) scale(0.9);
  transition: transform 0.2s ease;
}
.fabrique-order-item:hover .fabrique-order-price::before {
  transform: translate(-50%, -50%) scale(1.1);
}
.fabrique-order-subtitle {
  color: #FFFFFF;
  font-size: 32px;
  font-weight: 500;
  text-align: center;
}
.fabrique-order-description {
  color: #FFFFFF;
  font-size: 23px;
  text-align: center;
}
.fabrique-order-cta {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 50%);
  height: 5.7rem;
}
@media (max-width: 42.49em) {
  .fabrique-order-cta {
    height: auto;
  }
}
.fabrique-order-cta {
  padding: 0 2.9rem;
}
@media (max-width: 42.49em) {
  .fabrique-order-cta {
    padding: 1.4rem 2.9rem;
  }
}
.fabrique-order-cta {
  background-color: #FFFFFF;
  border: 1px solid #d61b3c;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  font-size: 25px;
  text-align: center;
  color: #d61b3c;
  border-radius: 10px;
}
.fabrique-order-cta:hover {
  opacity: 0.7;
}
.fabrique .lightbox-container {
  border-top: 10px solid #d61b3c;
  top: 50%;
  transform: translate(-50%, -50%);
}
.fabrique .lightbox-container::before, .fabrique .lightbox-container::after {
  display: none;
}
.fabrique .lightbox-title {
  color: #d61b3c;
}
.fabrique .lightbox .form-button {
  background-color: #d61b3c;
}

.error {
  height: 80vh;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.error-heading {
  font-size: 79px;
  color: #e2645a;
  text-align: center;
  margin-bottom: 3.6rem;
}
.error-description {
  font-size: 50px;
  font-weight: 500;
  text-align: center;
  max-width: 1100px;
  padding: 0 20px;
}

.agence .hero-title {
  text-indent: -9999px;
  background: url(./assets/images/logo2.svg) no-repeat center center transparent;
  background-size: 100%;
  height: 9.3rem;
  width: 35.7rem;
}
@media (max-width: 42.49em) {
  .agence .hero-title {
    display: none;
  }
}
.agence-intro {
  width: 100%;
  padding: 20px 0;
  background-color: #e2645a;
  font-size: 32px;
  text-align: center;
  font-weight: 500;
  color: #FFFFFF;
}
.agence-presentation {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  padding: 2.9rem 0 2.9rem 0;
}
.agence-biographie {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.agence-biographie h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.agence-biographie p {
  font-size: 23px;
  color: #3C3C3B;
  margin-bottom: 1.4rem;
}
.agence-biographie a {
  color: orange;
  text-decoration: underline;
}
.agence-biographie a:hover {
  color: #e2645a;
}
.agence-biographie ul, .agence-biographie ol {
  margin-bottom: 1.4rem;
}
.agence-biographie ul li, .agence-biographie ol li {
  font-size: 23px;
  color: #3C3C3B;
  margin-left: 1.4rem;
}
.agence-biographie ul li {
  list-style: disc outside;
}
.agence-biographie ol li {
  list-style: decimal outside;
}
.agence-biographie .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.agence-biographie .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.agence-biographie .gallery-item:hover {
  opacity: 0.7;
}
.agence-biographie .gallery-item a, .agence-biographie .gallery-item img {
  display: block;
}
.agence-biographie iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.agence-biographie .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.agence-biographie img {
  max-width: 100%;
  height: auto;
}
.agence-team {
  border-bottom: 20px solid #e2645a;
}
.agence-team-list {
  display: -ms-flexbox;
  display: flex;
  padding-top: 7.1rem;
  padding-bottom: 7.1rem;
  position: relative;
  -ms-flex-align: stretch;
      align-items: stretch;
}
@media (max-width: 42.49em) {
  .agence-team-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.agence-team-list::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 225px;
  width: 60%;
  height: 2px;
  transform: translateX(-50%);
  background-color: #e2645a;
}
.agence-team-item {
  -ms-flex-positive: 1;
      flex-grow: 1;
  width: 100%;
  margin: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .agence-team-item {
    margin: 0 1.4rem 2.9rem 1.4rem;
  }
}
.agence-team-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
}
.agence-team-visual {
  margin-bottom: 1.4rem;
}
.agence-team-item:hover .agence-team-visual image {
  filter: none;
}
.agence-team hr {
  width: 100%;
  border-top: 2px solid #e2645a;
  margin: 1.4rem 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.agence-team-name {
  font-size: 25px;
  color: #e2645a;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.agence-team-title {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.agence-team-contact {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.agence-team-title, .agence-team-biographie, .agence-team-contact {
  font-size: 17px;
  text-align: center;
}
.agence-team-biographie {
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
.agence-family {
  border-bottom: 20px solid #16798f;
}
.agence-family-heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .agence-family-heading span {
    width: 100%;
  }
}
.agence-family-heading span {
  background-color: #FFFFFF;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #e2645a;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .agence-family-heading span {
    padding: 40px 20px 20px 20px;
  }
}
.agence-family-heading span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .agence-family-heading span {
    margin-top: 0;
  }
}
.agence-family-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 7.1rem;
  padding-bottom: 7.1rem;
  position: relative;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: stretch;
      align-items: stretch;
}
@media (min-width: 90em) {
  .agence-family-item {
    width: 17.9rem;
  }
}
.agence-family-item {
  width: 21.4rem;
}
@media (max-width: 63.99em) {
  .agence-family-item {
    width: 48%;
  }
}
@media (max-width: 42.49em) {
  .agence-family-item {
    width: 100%;
  }
}
.agence-family-item {
  margin: 0 1.4rem 1.4rem 1.4rem;
}
@media (max-width: 63.99em) {
  .agence-family-item {
    margin: 0 1% 1.4rem 1%;
  }
}
@media (max-width: 42.49em) {
  .agence-family-item {
    margin: 0 0 2.9rem 0;
  }
}
.agence-family-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
}
.agence-family-visual {
  margin-bottom: 0.7rem;
}
.agence-family-item:hover .agence-family-visual image {
  filter: none;
}
.agence-family-name {
  font-size: 25px;
  color: #e2645a;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  line-height: 32px;
}
.agence-family-title {
  font-size: 17px;
  text-align: center;
  line-height: 17px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.agence-family-enterprise {
  font-size: 17px;
  color: #e2645a;
  text-align: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.agence-clients {
  background-color: #f0f0f0;
  padding-top: 2.9rem;
  padding-bottom: 7.1rem;
}
@media (max-width: 42.49em) {
  .agence-clients {
    padding-bottom: 14.3rem;
  }
}
.agence-clients-title {
  font-size: 79px;
  color: #414042;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
}
.agence-clients-subtitle {
  font-size: 25px;
  color: #414042;
  font-weight: 500;
  text-align: center;
  margin-bottom: 2.9rem;
}
.agence-clients-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: center;
      justify-content: center;
}
.agence-clients .client {
  margin: 0 1.4rem 2.1rem 1.4rem;
}
.agence-legal {
  background-color: #2b9fb2;
  position: relative;
}
@media (min-width: 90em) {
  .agence-legal {
    padding-bottom: 3.6rem;
  }
}
.agence-legal {
  padding-bottom: 7.1rem;
}
.agence-legal-inner {
  position: relative;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
}
.agence-legal-icon {
  border-radius: 100%;
  padding: 30px;
  margin-top: -75px;
  position: relative;
  background-color: #2b9fb2;
}
.agence-legal-icon .icon {
  width: 100px;
  height: 100px;
  fill: #054f63;
}
.agence-legal-heading {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  color: #FFFFFF;
  text-transform: uppercase;
}
@media (max-width: 42.49em) {
  .agence-legal-heading {
    font-size: 25px;
  }
}
.agence-legal-heading {
  text-shadow: 0px 3px 0px #054f63;
  margin-bottom: 1.4rem;
}
.agence-legal-description {
  font-size: 25px;
  color: #FFFFFF;
  text-align: center;
  font-weight: 500;
}
@media (max-width: 42.49em) {
  .agence-legal-description {
    font-size: 25px;
  }
}
.agence-legal-description {
  margin-bottom: 1.4rem;
}
.agence-legal-logos {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  margin: 2.9rem 0;
}
@media (max-width: 42.49em) {
  .agence-legal-logos {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.agence-legal-logo {
  margin: 0 2.9rem;
}
.agence-legal-logo .icon {
  height: 5rem;
}
@media (max-width: 42.49em) {
  .agence-legal-logo .icon {
    height: auto;
  }
}
.agence-legal-logo .icon {
  width: auto;
}
@media (max-width: 42.49em) {
  .agence-legal-logo .icon {
    width: 100%;
  }
}
.agence-legal-logo .icon {
  fill: #054f63;
}
.agence-legal-logo:hover .icon {
  fill: #FFFFFF;
}

.contact-intro {
  color: #FFFFFF;
  font-size: 25px;
  font-weight: 300;
  font-style: italic;
  text-align: center;
  padding: 2.9rem 1.4rem;
  background-color: #e2645a;
}
.contact-inner {
  display: -ms-flexbox;
  display: flex;
  margin-top: 5.7rem;
  margin-bottom: 11.4rem;
}
@media (max-width: 42.49em) {
  .contact-inner {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.contact-main {
  -ms-flex: 4;
      flex: 4;
  margin: 0 2.9rem 0 0;
}
@media (max-width: 42.49em) {
  .contact-main {
    margin: 0 0 2.9rem 0;
  }
}
.contact-side {
  -ms-flex: 2;
      flex: 2;
  overflow: hidden;
}
.contact-address, .contact-email, .contact-facebook, .contact-twitter, .contact-youtube, .contact-linkedin {
  font-size: 17px;
  font-weight: 300;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  margin-bottom: 10px;
}
.contact-address a, .contact-email a, .contact-facebook a, .contact-twitter a, .contact-youtube a, .contact-linkedin a {
  color: #e2645a;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.contact-address .icon, .contact-email .icon, .contact-facebook .icon, .contact-twitter .icon, .contact-youtube .icon, .contact-linkedin .icon {
  fill: #e2645a;
  width: 15px;
  height: 15px;
  margin-right: 10px;
}
.contact-team {
  margin-top: 50px;
}
.contact-team-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  margin-bottom: 20px;
}
.contact-team-item-visual {
  border-radius: 100%;
  width: 20%;
  margin-right: 10px;
}
.contact-team-item-name {
  font-size: 21px;
  font-weight: 500;
}
.contact-team-item-email {
  font-size: 15px;
  font-weight: 300;
  color: #e2645a;
}
.contact-team-item-phone {
  font-size: 15px;
  font-weight: 300;
  color: #e2645a;
}

.fabriqueo-slugline {
  height: 7.1rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-slugline {
    height: auto;
  }
}
.fabriqueo-slugline {
  padding: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-slugline {
    padding: 1.4rem;
  }
}
.fabriqueo-slugline {
  background-color: #7a4392;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  color: #FFFFFF;
  font-size: 25px;
  text-align: center;
}
.fabriqueo-presentation {
  padding: 3.6rem 1.4rem;
  text-align: center;
  font-size: 23px;
  max-width: 1000px;
  margin: 0 auto;
}
.fabriqueo-diagram {
  padding: 3.6rem 0;
}
.fabriqueo-diagram-title {
  color: #7a4392;
  font-size: 79px;
  text-align: center;
  font-weight: 300;
}
@media (max-width: 42.49em) {
  .fabriqueo-diagram-title {
    margin-bottom: 7.1rem;
  }
}
@media (max-width: 42.49em) {
  .fabriqueo-diagram-title {
    padding: 0 1.4rem;
  }
}
.fabriqueo-diagram-spheres {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
.fabriqueo-diagram-sphere {
  border-radius: 100%;
  border: 1px solid #7a4392;
  width: 21.4rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-diagram-sphere {
    width: 15.7rem;
  }
}
.fabriqueo-diagram-sphere {
  height: 21.4rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-diagram-sphere {
    height: 15.7rem;
  }
}
.fabriqueo-diagram-sphere {
  text-align: center;
  font-size: 23px;
}
@media (max-width: 42.49em) {
  .fabriqueo-diagram-sphere {
    font-size: 15px;
  }
}
.fabriqueo-diagram-sphere {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  margin: 0 -2.1rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-diagram-sphere {
    margin: 0 -2.1rem;
  }
}
.fabriqueo-diagram-sphere:nth-child(1), .fabriqueo-diagram-sphere:nth-child(3) {
  margin-top: -7.1rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-diagram-sphere:nth-child(1), .fabriqueo-diagram-sphere:nth-child(3) {
    margin-top: -7.1rem;
  }
}
.fabriqueo-products {
  background-color: #f0f0f0;
  padding: 2.1rem 0;
}
.fabriqueo-products-title {
  color: #7a4392;
  text-align: center;
  font-size: 50px;
  text-transform: uppercase;
  font-weight: 300;
}
@media (max-width: 42.49em) {
  .fabriqueo-products-title {
    font-size: 32px;
  }
}
.fabriqueo-products-title {
  text-shadow: 3px 3px 0px #FFFFFF;
  padding: 0 20px;
  margin-bottom: 7.1rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-products-title {
    margin-bottom: 3.6rem;
  }
}
.fabriqueo-product {
  background-color: #FFFFFF;
  display: -ms-flexbox;
  display: flex;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.3);
  margin-bottom: 7.1rem;
  min-height: 25rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-product {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.fabriqueo-product#reservoir {
  color: #b51e23;
}
.fabriqueo-product#waste {
  color: #77aa54;
}
.fabriqueo-product#urika {
  color: #6f999e;
}
.fabriqueo-product#adn {
  color: #13374b;
}
.fabriqueo-product#xplab {
  color: #fbbf51;
}
.fabriqueo-product#fab {
  color: #d61b3c;
}
.fabriqueo-product-main {
  -ms-flex: 2;
      flex: 2;
  padding: 2.9rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-product-main {
    padding: 2.9rem 2.9rem 5.7rem 2.9rem;
  }
}
.fabriqueo-product-main {
  position: relative;
}
@media (min-width: 42.5em) {
  .fabriqueo-product:nth-child(2n+1) .fabriqueo-product-main {
    -ms-flex-order: 1;
        order: 1;
  }
}
@media (max-width: 42.49em) {
  .fabriqueo-product-main {
    -ms-flex-order: 2;
        order: 2;
  }
}
.fabriqueo-product-name {
  font-size: 50px;
  font-weight: 500;
}
@media (max-width: 42.49em) {
  .fabriqueo-product-name {
    line-height: 40px;
  }
}
@media (max-width: 42.49em) {
  .fabriqueo-product-name {
    margin-bottom: 1.4rem;
  }
}
@media (min-width: 42.5em) {
  .fabriqueo-product:nth-child(2n) .fabriqueo-product-name {
    text-align: right;
  }
}
.fabriqueo-product-subname {
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  font-style: italic;
  margin-bottom: 1.4rem;
}
@media (min-width: 42.5em) {
  .fabriqueo-product:nth-child(2n) .fabriqueo-product-subname {
    text-align: right;
  }
}
.fabriqueo-product-description {
  font-size: 21px;
  font-weight: 400;
  color: #414042;
}
@media (min-width: 42.5em) {
  .fabriqueo-product:nth-child(2n) .fabriqueo-product-description {
    text-align: right;
  }
}
.fabriqueo-product-more {
  position: absolute;
  bottom: 0;
  transform: translateY(50%);
}
@media (min-width: 42.5em) {
  .fabriqueo-product:nth-child(2n) .fabriqueo-product-more {
    left: 3.6rem;
  }
  .fabriqueo-product:nth-child(2n+1) .fabriqueo-product-more {
    right: 3.6rem;
  }
}
@media (max-width: 42.49em) {
  .fabriqueo-product-more {
    left: 50%;
    transform: translate(-50%, 50%);
  }
}
.fabriqueo-product-more {
  color: #FFFFFF;
  font-size: 25px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .fabriqueo-product-more {
    font-size: 21px;
  }
}
@media (max-width: 42.49em) {
  .fabriqueo-product-more {
    line-height: 20px;
  }
}
.fabriqueo-product-more {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  height: 4.3rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-product-more {
    height: auto;
  }
}
.fabriqueo-product-more {
  padding: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .fabriqueo-product-more {
    padding: 1.4rem;
  }
}
#reservoir .fabriqueo-product-more {
  background-color: #b51e23;
}
#waste .fabriqueo-product-more {
  background-color: #77aa54;
}
#urika .fabriqueo-product-more {
  background-color: #6f999e;
}
#adn .fabriqueo-product-more {
  background-color: #13374b;
}
#xplab .fabriqueo-product-more {
  background-color: #fbbf51;
}
#fab .fabriqueo-product-more {
  background-color: #d61b3c;
}
.fabriqueo-product-side {
  -ms-flex-positive: 1;
      flex-grow: 1;
  position: relative;
  background-position: center;
  background-size: cover;
}
@media (max-width: 42.49em) {
  .fabriqueo-product-side {
    -ms-flex-order: 1;
        order: 1;
    height: 35.7rem;
    margin-bottom: 2.9rem;
  }
}
.fabriqueo-product-logo {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14.3rem;
  height: auto;
  transform: translate(-50%, -50%);
}
.fabriqueo-product-metas {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 50%);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.fabriqueo-product-meta {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  margin: 0 1.4rem;
  position: relative;
}
.fabriqueo-product-meta .animIcon-icon {
  position: relative;
  z-index: 2;
  border-radius: 100%;
  transition: all ease 225ms;
  padding: 20px;
}
.fabriqueo-product-meta .animIcon-icon .icon {
  position: relative;
  z-index: 2;
  display: block;
  transition: fill ease 225ms;
  width: 40px;
  height: 40px;
}
.fabriqueo-product-meta .animIcon-icon::before {
  display: block;
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%) scale(0.9);
  border: 1px solid;
  opacity: 0;
  border-radius: 100%;
  transition-duration: 225ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
.fabriqueo-product-meta .animIcon-name {
  text-align: center;
  transition: all 0.2s ease;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
.fabriqueo-product-meta .animIcon-more {
  position: absolute;
  z-index: 3;
  right: 0;
  top: 0;
  padding: 5px;
  background-color: #FFFFFF;
  border-radius: 100%;
  border: 1px solid;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.fabriqueo-product-meta .animIcon-more .icon {
  width: 20px;
  height: 20px;
  display: block;
}
.fabriqueo-product-meta {
  /* INTERACTIONS */
  /* ------------ */
}
.fabriqueo-product-meta:hover .animIcon-icon::before, .fabriqueo-product-meta.is-active .animIcon-icon::before {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.15);
}
.fabriqueo-product-meta:hover .animIcon-name, .fabriqueo-product-meta.is-active .animIcon-name {
  transform: translateY(10px);
}
.fabriqueo-product-meta:hover:not(.is-active) .animIcon-more {
  opacity: 1;
}
#reservoir .fabriqueo-product-meta .animIcon-icon {
  background-color: #b51e23;
}
#reservoir .fabriqueo-product-meta .animIcon-icon::before {
  border-color: #b51e23;
}
#waste .fabriqueo-product-meta .animIcon-icon {
  background-color: #77aa54;
}
#waste .fabriqueo-product-meta .animIcon-icon::before {
  border-color: #77aa54;
}
#urika .fabriqueo-product-meta .animIcon-icon {
  background-color: #6f999e;
}
#urika .fabriqueo-product-meta .animIcon-icon::before {
  border-color: #6f999e;
}
#adn .fabriqueo-product-meta .animIcon-icon {
  background-color: #13374b;
}
#adn .fabriqueo-product-meta .animIcon-icon::before {
  border-color: #13374b;
}
#xplab .fabriqueo-product-meta .animIcon-icon {
  background-color: #fbbf51;
}
#xplab .fabriqueo-product-meta .animIcon-icon::before {
  border-color: #fbbf51;
}
#fab .fabriqueo-product-meta .animIcon-icon {
  background-color: #d61b3c;
}
#fab .fabriqueo-product-meta .animIcon-icon::before {
  border-color: #d61b3c;
}
.fabriqueo-product-meta .animIcon-icon .icon {
  fill: #FFFFFF;
}
.fabriqueo-product-meta .animIcon-name {
  opacity: 0;
}
.fabriqueo-product-meta:hover .animIcon-name {
  opacity: 1;
}

.formations .hero {
  border-bottom: 20px solid #e2645a;
}
.formations-heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .formations-heading span {
    width: 100%;
  }
}
.formations-heading span {
  background-color: #FFFFFF;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #e2645a;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .formations-heading span {
    padding: 40px 20px 20px 20px;
  }
}
.formations-heading span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .formations-heading span {
    margin-top: 0;
  }
}
.formations-heading {
  margin-bottom: 2.9rem;
}
.formations-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: stretch;
      align-items: stretch;
  margin-bottom: 7.1rem;
}
@media (max-width: 42.49em) {
  .formations-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.formations-item {
  width: 30%;
}
@media (max-width: 42.49em) {
  .formations-item {
    width: 100%;
  }
}
.formations-item {
  margin: 0 1.5% 4.3rem 1.5%;
}
@media (max-width: 42.49em) {
  .formations-item {
    margin: 0 0 4.3rem 0;
  }
}
.formations-item {
  border: 1px solid #e2645a;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  position: relative;
  transition: transform 0.2s linear;
}
.formations-item::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0px 5px 15px 8px rgba(0, 0, 0, 0.3);
  opacity: 0;
  transition: opacity 0.2s linear;
  z-index: -1;
}
.formations-item:hover {
  transform: translateY(-5px);
}
.formations-item:hover::before {
  opacity: 1;
}
.formations-item-link {
  background-color: #e2645a;
  height: 60.7rem;
}
@media (max-width: 42.49em) {
  .formations-item-link {
    height: 42.9rem;
  }
}
.formations-item-link {
  min-height: 100%;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  font-size: 32px;
  color: #FFFFFF;
  text-align: center;
  font-weight: 500;
}
.formations-item-link .icon {
  width: 5rem;
  height: 5rem;
  margin-bottom: 2.1rem;
  fill: #FFFFFF;
}
.formations-item-header {
  position: relative;
}
.formations-item-header::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 60%);
}
.formations-item-visual {
  width: 100%;
  height: auto;
  display: block;
}
.formations-item-name {
  position: absolute;
  left: 0;
  bottom: 1.4rem;
  width: 100%;
  text-shadow: 4px 5px 20px rgba(0, 0, 0, 0.65);
  padding: 0 1.4rem;
  line-height: 2.1rem;
}
@media (max-width: 42.49em) {
  .formations-item-name {
    line-height: 3.6rem;
  }
}
.formations-item-name {
  font-size: 32px;
  color: #FFFFFF;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
}
.formations-item-slugline {
  padding: 10px;
  width: 100%;
  color: #FFFFFF;
  font-weight: 500;
  font-size: 21px;
  text-align: center;
  background-color: #e2645a;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
@media (min-width: 90em) {
  .formations-item-slugline {
    height: 5.7rem;
  }
}
.formations-item-slugline {
  height: 7.1rem;
}
@media (max-width: 63.99em) {
  .formations-item-slugline {
    height: 11.4rem;
  }
}
@media (max-width: 42.49em) {
  .formations-item-slugline {
    height: auto;
  }
}
.formations-item-body {
  padding: 1.4rem 1.4rem 4.3rem 1.4rem;
  position: relative;
  -ms-flex-positive: 1;
      flex-grow: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.formations-item-description {
  color: #414042;
  font-size: 17px;
  text-align: justify;
  margin-bottom: 1.4rem;
}
.formations-item-metas {
  margin-left: 1.4rem;
  margin-bottom: 1.4rem;
}
.formations-item-meta {
  color: #414042;
  font-size: 17px;
  display: block;
  margin-bottom: 5px;
}
.formations-item-meta .icon {
  fill: #e2645a;
  margin-right: 10px;
  margin-top: -5px;
}
.formations-item-more {
  -ms-flex-positive: 1;
      flex-grow: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      align-self: center;
  -ms-flex-align: center;
      align-items: center;
  color: #e2645a;
  font-size: 21px;
  font-weight: 500;
}
.formations-item-more-icon {
  border-radius: 100%;
  border: 1px solid #e2645a;
  background-color: #FFFFFF;
  padding: 7px;
  margin-right: 10px;
  transition: all 0.2s linear;
}
.formations-item-more:hover .formations-item-more-icon {
  background-color: #e2645a;
}
.formations-item-more-icon .icon {
  fill: #e2645a;
  width: 20px;
  height: 20px;
  transition: all 0.2s linear;
  display: block;
}
.formations-item-more:hover .formations-item-more-icon .icon {
  fill: #FFFFFF;
}
.formations-item-contact {
  border-radius: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #FFFFFF;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  font-size: 25px;
  padding: 0.7rem 1.4rem;
}
.formations-item-contact .icon {
  margin-left: -30px;
  width: 30px;
  height: 30px;
  fill: #FFFFFF;
  opacity: 0;
  transform: translateX(200%);
  transition: all 0.2s ease-out;
}
@media (max-width: 42.49em) {
  .formations-item-contact .icon {
    display: none;
  }
}
.formations-item-contact:hover .icon {
  opacity: 1;
  transform: translateX(0);
  margin-left: 20px;
}
.formations-item-contact {
  background-color: #e2645a;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 50%);
}

.home-slider {
  position: relative;
}
.home-slider .slick {
  width: 100%;
  height: 60vh;
}
@media (max-width: 63.99em) {
  .home-slider .slick {
    height: 60vh;
  }
}
@media (max-width: 42.49em) {
  .home-slider .slick {
    height: calc(100vh - 60px);
  }
}
.home-slider .slick {
  min-height: 600px;
}
@media (max-width: 63.99em) {
  .home-slider .slick {
    min-height: auto;
  }
}
@media (max-width: 42.49em) {
  .home-slider .slick {
    min-height: auto;
  }
}
.home-slider .slick .slick-dots {
  bottom: 10px;
}
.home-slider .slick .slick-dots li button {
  border-color: #e2645a;
}
.home-slider .slick .slick-dots li button:hover:before, .home-slider .slick .slick-dots li button:focus:before {
  color: #e2645a;
}
.home-slider .slick .slick-dots li.slick-active button {
  background-color: #e2645a;
}
.home-slider-controls {
  position: absolute;
  left: 50%;
  bottom: 50px;
  transform: translateX(-50%);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
@media (max-width: 20.0525em) {
  .home-slider-controls {
    display: none;
  }
}
.home-slider-controls:before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 120px;
  height: 0;
  z-index: -1;
  box-shadow: 0 0 140px 45px rgba(0, 0, 0, 0.3);
}
.home-slider-controls .icon {
  width: 65px;
  height: 65px;
  fill: #FFFFFF;
  transition: all 0.1s linear;
}
.home-slider-controls-left, .home-slider-controls-right {
  -ms-flex-positive: 1;
      flex-grow: 1;
  cursor: pointer;
  transition: all 0.1s linear;
}
.home-slider-controls-left:hover .icon, .home-slider-controls-right:hover .icon {
  fill: #e2645a;
}
.home-slider-controls-left {
  -ms-flex-order: 1;
      order: 1;
}
.home-slider-controls-right {
  -ms-flex-order: 3;
      order: 3;
}
.home-slider-controls-sep {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-order: 2;
      order: 2;
  font-size: 80px;
  color: #FFFFFF;
  font-weight: 600;
  transition: all 0.1s linear;
  pointer-events: none;
}
.home-slider-controls-right:hover + .home-slider-controls-sep {
  transform: translateX(20px);
  color: #e2645a;
}
.home-slider-controls-left:hover + .home-slider-controls-right + .home-slider-controls-sep {
  transform: translateX(-20px);
  color: #e2645a;
}
.home .hero-main {
  padding-top: 0;
}
.home-intro {
  background-color: #e2645a;
  padding-bottom: 7.1rem;
  color: #FFFFFF;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.home-intro-title {
  font-size: 50px;
  font-weight: 500;
  text-align: center;
}
@media (max-width: 42.49em) {
  .home-intro-title {
    font-size: 32px;
  }
}
.home-intro-title {
  padding: 3.6rem 0;
}
.home-intro-description {
  font-size: 25px;
  color: #FFFFFF;
  font-weight: 400;
  text-align: center;
  margin: 0 auto;
  max-width: 71.4rem;
}
.home-agence {
  height: 28.6rem;
}
@media (max-width: 63.99em) {
  .home-agence {
    height: 42.9rem;
  }
}
@media (max-width: 42.49em) {
  .home-agence {
    height: 21.4rem;
  }
}
.home-agence {
  background-image: url(./assets/images/agence.jpg);
  background-size: cover;
  background-position: center;
}
.home-presentation {
  padding: 7.1rem 0;
}
.home-presentation-title {
  font-size: 50px;
  color: #e2645a;
  font-weight: 500;
  text-align: center;
}
@media (max-width: 42.49em) {
  .home-presentation-title {
    font-size: 32px;
  }
}
.home-presentation-title {
  margin-bottom: 2.9rem;
}
.home-presentation-description {
  font-size: 25px;
  color: #414042;
  font-weight: 400;
  text-align: center;
  margin: 0 auto 3.6rem auto;
  max-width: 71.4rem;
}
.home-values {
  background-color: #16798f;
  position: relative;
}
.home-values-print {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(./assets/images/bg_fingerprint.svg) 0 0 no-repeat transparent;
  background-size: auto 100%;
  background-position: left 300px;
  opacity: 0.1;
}
@media (max-width: 42.49em) {
  .home-values-print {
    display: none;
  }
}
.home-values-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
}
.home-values-heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .home-values-heading span {
    width: 100%;
  }
}
.home-values-heading span {
  background-color: #16798f;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #FFFFFF;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .home-values-heading span {
    padding: 40px 20px 20px 20px;
  }
}
.home-values-heading span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .home-values-heading span {
    margin-top: 0;
  }
}
.home-values-heading {
  margin-bottom: 3.6rem;
}
.home-values-list {
  max-width: 1400px;
  margin-bottom: 3.6rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  position: relative;
}
@media (max-width: 42.49em) {
  .home-values-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.home-values-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  width: 14.3rem;
}
@media (max-width: 63.99em) {
  .home-values-item {
    width: 10.7rem;
  }
}
@media (max-width: 42.49em) {
  .home-values-item {
    width: 40%;
  }
}
@media (max-width: 20.0525em) {
  .home-values-item {
    width: 100%;
  }
}
.home-values-item {
  margin: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .home-values-item {
    margin: 0 5% 1.4rem 5%;
  }
}
.home-values-item {
  cursor: pointer;
  position: relative;
}
.home-values-item .animIcon-icon {
  position: relative;
  z-index: 2;
  border-radius: 100%;
  transition: all ease 225ms;
  margin-bottom: 0.7rem;
  padding: 30px;
}
@media (max-width: 63.99em) {
  .home-values-item .animIcon-icon {
    padding: 20px;
  }
}
.home-values-item .animIcon-icon {
  margin-bottom: 0.7rem;
  padding: 30px;
}
@media (max-width: 63.99em) {
  .home-values-item .animIcon-icon {
    padding: 20px;
  }
}
.home-values-item .animIcon-icon .icon {
  position: relative;
  z-index: 2;
  display: block;
  transition: fill ease 225ms;
  width: 80px;
  height: 80px;
}
.home-values-item .animIcon-icon::before {
  display: block;
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%) scale(0.9);
  border: 1px solid;
  opacity: 0;
  border-radius: 100%;
  transition-duration: 225ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
.home-values-item .animIcon-name {
  text-align: center;
  transition: all 0.2s ease;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
.home-values-item .animIcon-more {
  position: absolute;
  z-index: 3;
  right: 0;
  top: 0;
  padding: 5px;
  background-color: #FFFFFF;
  border-radius: 100%;
  border: 1px solid;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.home-values-item .animIcon-more .icon {
  width: 20px;
  height: 20px;
  display: block;
}
.home-values-item {
  /* INTERACTIONS */
  /* ------------ */
}
.home-values-item:hover .animIcon-icon::before, .home-values-item.is-active .animIcon-icon::before {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.15);
}
.home-values-item:hover .animIcon-name, .home-values-item.is-active .animIcon-name {
  transform: translateY(10px);
}
.home-values-item:hover:not(.is-active) .animIcon-more {
  opacity: 1;
}
.home-values-item .animIcon-icon {
  background-color: #FFFFFF;
}
.home-values-item .animIcon-icon .icon {
  fill: #054f63;
}
.home-values-item .animIcon-icon::before {
  border-color: #054f63;
}
.home-values-item:hover .animIcon-icon {
  background-color: #054f63;
}
.home-values-item:hover .animIcon-icon .icon {
  fill: #FFFFFF;
}
.home-values-item .animIcon-more .icon {
  fill: #16798f !important;
}
.home-values-item .animIcon-name {
  color: #FFFFFF;
  font-size: 21px;
  font-weight: 500;
  text-align: center;
}
.home-values-cta {
  position: relative;
  border-radius: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #FFFFFF;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  font-size: 32px;
}
@media (max-width: 42.49em) {
  .home-values-cta {
    font-size: 25px;
  }
}
.home-values-cta {
  padding: 1.1rem 2.1rem;
}
@media (max-width: 42.49em) {
  .home-values-cta {
    padding: 0.7rem 1.4rem;
  }
}
.home-values-cta .icon {
  margin-left: -30px;
  width: 30px;
  height: 30px;
  fill: #FFFFFF;
  opacity: 0;
  transform: translateX(200%);
  transition: all 0.2s ease-out;
}
@media (max-width: 42.49em) {
  .home-values-cta .icon {
    display: none;
  }
}
.home-values-cta:hover .icon {
  opacity: 1;
  transform: translateX(0);
  margin-left: 20px;
}
.home-values-cta {
  background-color: #054f63;
  margin-bottom: 7.1rem;
}
.home-subnav-heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .home-subnav-heading span {
    width: 100%;
  }
}
.home-subnav-heading span {
  background-color: #FFFFFF;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #3C3C3B;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .home-subnav-heading span {
    padding: 40px 20px 20px 20px;
  }
}
.home-subnav-heading span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .home-subnav-heading span {
    margin-top: 0;
  }
}
.home-subnav-heading {
  margin-bottom: 2.9rem;
}
.home-subnav-list {
  max-width: 1200px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-bottom: 7.1rem;
}
@media (max-width: 42.49em) {
  .home-subnav-list {
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-align: center;
        align-items: center;
  }
}
.home-subnav-item {
  width: 21.4rem;
}
@media (max-width: 42.49em) {
  .home-subnav-item {
    margin-bottom: 2.9rem;
  }
}
.home-subnav-item-link {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
}
.home-subnav-item-link .animIcon-icon {
  position: relative;
  z-index: 2;
  border-radius: 100%;
  transition: all ease 225ms;
  margin-bottom: 0.7rem;
  padding: 30px;
}
@media (max-width: 63.99em) {
  .home-subnav-item-link .animIcon-icon {
    padding: 20px;
  }
}
.home-subnav-item-link .animIcon-icon {
  margin-bottom: 0.7rem;
  padding: 30px;
}
@media (max-width: 63.99em) {
  .home-subnav-item-link .animIcon-icon {
    padding: 20px;
  }
}
.home-subnav-item-link .animIcon-icon .icon {
  position: relative;
  z-index: 2;
  display: block;
  transition: fill ease 225ms;
  width: 80px;
  height: 80px;
}
.home-subnav-item-link .animIcon-icon::before {
  display: block;
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%) scale(0.9);
  border: 1px solid;
  opacity: 0;
  border-radius: 100%;
  transition-duration: 225ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
.home-subnav-item-link .animIcon-name {
  text-align: center;
  transition: all 0.2s ease;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
.home-subnav-item-link .animIcon-more {
  position: absolute;
  z-index: 3;
  right: 0;
  top: 0;
  padding: 5px;
  background-color: #FFFFFF;
  border-radius: 100%;
  border: 1px solid;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.home-subnav-item-link .animIcon-more .icon {
  width: 20px;
  height: 20px;
  display: block;
}
.home-subnav-item-link {
  /* INTERACTIONS */
  /* ------------ */
}
.home-subnav-item-link:hover .animIcon-icon::before, .home-subnav-item-link.is-active .animIcon-icon::before {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.15);
}
.home-subnav-item-link:hover .animIcon-name, .home-subnav-item-link.is-active .animIcon-name {
  transform: translateY(10px);
}
.home-subnav-item-link:hover:not(.is-active) .animIcon-more {
  opacity: 1;
}
.home-subnav-item-link .animIcon-icon {
  background-color: #a7a9ac;
}
.home-subnav-item-link .animIcon-icon .icon {
  fill: #414042;
}
.home-subnav-item-link .animIcon-icon::before {
  border-color: #e2645a;
}
.home-subnav-item-link:hover .animIcon-icon {
  background-color: #e2645a;
}
.home-subnav-item-link:hover .animIcon-icon .icon {
  fill: #8c3335;
}
.home-subnav-item-link .animIcon-more {
  border-color: #e2645a;
}
.home-subnav-item-link .animIcon-more .icon {
  fill: #e2645a !important;
}
.home-subnav-item-title {
  font-size: 25px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  transition: transform 0.2s ease;
}
.home-presentation-subnav-item:hover .home-subnav-item-title, .home-presentation-subnav-item.is-active .home-subnav-item-title {
  transform: translateY(10px);
}
.home-subnav-item-description {
  font-size: 17px;
  font-weight: 500;
  text-align: center;
  transition: transform 0.2s ease;
}
.home-presentation-subnav-item:hover .home-subnav-item-description, .home-presentation-subnav-item.is-active .home-subnav-item-description {
  transform: translateY(10px);
}
.home-fabriqueo {
  background-image: url(./assets/images/fabriqueo.jpg);
  background-size: cover;
  background-position: center;
  padding: 3.6rem 0;
}
@media (max-width: 42.49em) {
  .home-fabriqueo {
    padding: 7.1rem 0 14.3rem 0;
  }
}
.home-fabriqueo-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
}
.home-fabriqueo-icon {
  background-color: #7a4392;
  border-radius: 100%;
  box-sizing: content-box;
  padding: 40px;
  margin-bottom: 1.4rem;
}
.home-fabriqueo-icon .icon {
  fill: #FFFFFF;
  width: 100px;
  height: 100px;
}
.home-fabriqueo-heading {
  color: #FFFFFF;
  font-weight: 500;
  font-size: 79px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .home-fabriqueo-heading {
    font-size: 50px;
  }
}
.home-fabriqueo-heading {
  margin-bottom: 2.9rem;
}
.home-fabriqueo-description {
  color: #FFFFFF;
  font-size: 32px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .home-fabriqueo-description {
    font-size: 25px;
  }
}
.home-fabriqueo-description {
  max-width: 1000px;
  margin-bottom: 4.3rem;
}
.home-fabriqueo-cta {
  border-radius: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #FFFFFF;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  font-size: 32px;
}
@media (max-width: 42.49em) {
  .home-fabriqueo-cta {
    font-size: 25px;
  }
}
.home-fabriqueo-cta {
  padding: 1.1rem 2.1rem;
}
@media (max-width: 42.49em) {
  .home-fabriqueo-cta {
    padding: 0.7rem 1.4rem;
  }
}
.home-fabriqueo-cta .icon {
  margin-left: -30px;
  width: 30px;
  height: 30px;
  fill: #FFFFFF;
  opacity: 0;
  transform: translateX(200%);
  transition: all 0.2s ease-out;
}
@media (max-width: 42.49em) {
  .home-fabriqueo-cta .icon {
    display: none;
  }
}
.home-fabriqueo-cta:hover .icon {
  opacity: 1;
  transform: translateX(0);
  margin-left: 20px;
}
.home-fabriqueo-cta {
  background-color: #7a4392;
  margin-bottom: 4.3rem;
}
.home-news {
  background-color: #f0f0f0;
}
@media (max-width: 42.49em) {
  .home-news {
    display: none;
  }
}
.home-news-heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .home-news-heading span {
    width: 100%;
  }
}
.home-news-heading span {
  background-color: #f0f0f0;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #2b9fb2;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .home-news-heading span {
    padding: 40px 20px 20px 20px;
  }
}
.home-news-heading span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .home-news-heading span {
    margin-top: 0;
  }
}
.home-news-heading {
  margin-bottom: 3.6rem;
}
.home-news-inner {
  max-width: 1500px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}
@media (min-width: 90em) {
  .home-news-inner {
    height: 92.9rem;
  }
}
.home-news-inner {
  height: 107.1rem;
}
@media (max-width: 63.99em) {
  .home-news-inner {
    height: auto;
  }
}
@media (max-width: 63.99em) {
  .home-news-inner {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.home-news-subheading {
  color: #2b9fb2;
  font-size: 32px;
  font-weight: 500;
}
.home-news-description {
  color: #2b9fb2;
  font-size: 25px;
  font-weight: 500;
}
.home-news-side {
  width: 48%;
}
@media (max-width: 63.99em) {
  .home-news-side {
    width: 64.3rem;
  }
}
@media (max-width: 42.49em) {
  .home-news-side {
    width: 100%;
  }
}
.home-news-side {
  margin: 0 1%;
}
@media (max-width: 63.99em) {
  .home-news-side {
    margin: 0;
  }
}
@media (max-width: 42.49em) {
  .home-news-side {
    margin: 0 1.4rem;
  }
}
.home-news-side {
  height: 100%;
}
.home-news-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  border-bottom: 1px solid #16798f;
  padding-bottom: 10px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.home-news-header .icon {
  fill: #054f63;
  width: 3.6rem;
  height: 3.6rem;
  margin-right: 1.4rem;
}
.home-news-twitter, .home-news-facebook, .home-news-articles {
  background-color: #FFFFFF;
  padding: 0.7rem 1.4rem 0 1.4rem;
  width: 100%;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.home-news-twitter, .home-news-facebook {
  height: 49%;
}
.home-news-twitter {
  margin-bottom: 4%;
}
@media (max-width: 63.99em) {
  .home-news-twitter {
    margin-bottom: 1.4rem;
  }
}
@media (max-width: 63.99em) {
  .home-news-facebook {
    margin-bottom: 1.4rem;
  }
}
.home-news-articles {
  height: 100%;
}
.home-news-content {
  overflow: scroll;
  -ms-flex-positive: 1;
      flex-grow: 1;
}
@media (max-width: 63.99em) {
  .home-news-content {
    height: 57.1rem;
  }
}
@media (max-width: 63.99em) {
  .home-news-article .home-news-content {
    height: 50rem;
  }
}
.home-news-content iframe {
  width: 100%;
}

.method .hero {
  border-bottom: 20px solid #e2645a;
}
.method .hero::after {
  display: block;
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  width: 0;
  height: 0;
  transform: translate(-50%, 20px);
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 20px solid #e2645a;
  z-index: 1;
}
.method-lined {
  position: relative;
}
.method-lines {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%);
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}
@media (max-width: 42.49em) {
  .method-lines {
    display: none;
  }
}
.method-line {
  height: 100%;
  position: relative;
}
.method-line::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  border-left: 3px dashed #a7a9ac;
  height: 100%;
}
.method-team {
  position: relative;
  height: 1500px;
}
@media (max-width: 42.49em) {
  .method-team {
    height: auto;
  }
}
@media (max-width: 42.49em) {
  .method-team {
    margin-bottom: 2.9rem;
  }
}
.method-team-title {
  font-size: 50px;
  color: #e2645a;
  font-weight: 300;
  text-align: center;
}
@media (max-width: 42.49em) {
  .method-team-title {
    font-size: 32px;
  }
}
.method-team-title {
  padding-top: 2.9rem;
  background-color: #FFFFFF;
}
.method-team-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -ms-flex-align: stretch;
      align-items: stretch;
  background-color: #FFFFFF;
  padding-top: 2.9rem;
}
@media (max-width: 42.49em) {
  .method-team-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.method-team-item {
  -ms-flex-positive: 1;
      flex-grow: 1;
  width: 30%;
}
@media (max-width: 42.49em) {
  .method-team-item {
    width: 100%;
  }
}
.method-team-item {
  width: 30%;
  position: relative;
  margin: 0 1.4rem 2.9rem 1.4rem;
}
@media (max-width: 42.49em) {
  .method-team-item {
    margin: 0 0 2.9rem 0;
  }
}
.method-team-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  transition: transform 0.2s linear;
}
.method-team-item::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  height: 21.4rem;
  background: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
}
.is-reduced .method-team-item {
  transform: scale(0.7);
}
.is-reduced .method-team-item::before {
  display: none;
}
.method-team-item-visual {
  width: 150px;
  height: 150px;
  margin-bottom: 1.4rem;
}
.method-team-item-title {
  font-size: 32px;
  color: #e2645a;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
}
.method-team-item-description {
  font-size: 23px;
  color: #e2645a;
  font-weight: 500;
  text-align: center;
}
@media (max-width: 42.49em) {
  .method-team-item-description {
    font-size: 21px;
  }
}
.method-team-item-description .is-reduced {
  display: none;
}
.method-team-item-content {
  transition: opacity 0.5s linear, margin-top 0.1s linear;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
.is-reduced .method-team-item-content {
  transition: opacity 0.1s linear, margin-top 0.5s linear;
  margin-top: -200px;
  opacity: 0;
}
.method-skills {
  background-color: #16798f;
  padding-bottom: 3.6rem;
  position: relative;
}
.method-skills-print {
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(./assets/images/bg_fingerprint.svg) 0 0 no-repeat transparent;
  background-size: auto 70%;
  background-position: left 0px;
  transform: translateX(-20%);
  opacity: 0.1;
}
.method-skills-heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .method-skills-heading span {
    width: 100%;
  }
}
.method-skills-heading span {
  background-color: #16798f;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #FFFFFF;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .method-skills-heading span {
    padding: 40px 20px 20px 20px;
  }
}
.method-skills-heading span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .method-skills-heading span {
    margin-top: 0;
  }
}
.method-skills-description {
  margin: 2.9rem auto 2.9rem auto;
  max-width: 900px;
  text-align: center;
  font-size: 25px;
  font-weight: 500;
  color: #FFFFFF;
}
.method-skills-list {
  position: relative;
  z-index: 1;
  max-width: 1400px;
  padding-top: 3.6rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.method-skills-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
  width: 15%;
}
@media (max-width: 42.49em) {
  .method-skills-item {
    width: 45%;
  }
}
.method-skills-item {
  margin: 0 1.5% 5rem 1.5%;
}
.method-skills-item-visual {
  position: relative;
  width: 100%;
}
.method-skills-item-visual::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  transform-origin: center center;
  transform: translate(-50%, -50%) scale(0.9);
  transition: all 0.2s ease;
  border-radius: 100%;
  border: 1px solid #FFFFFF;
  opacity: 0;
}
.method-skills-item:hover .method-skills-item-visual::before {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.1);
}
.method-skills-item-visual img {
  display: block;
  width: 100%;
  border-radius: 100%;
}
.method-skills-item-title {
  color: #FFFFFF;
  font-size: 21px;
  text-align: center;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  opacity: 0;
  transition: all 0.2s ease;
}
.method-skills-item:hover .method-skills-item-title {
  opacity: 1;
  transform: translateY(10px);
}
@media (max-width: 42.49em) {
  .method-skills-item-title {
    opacity: 1;
    transform: translateY();
  }
}
.method-def {
  max-width: 1400px;
}
.method-def-title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .method-def-title span {
    width: 100%;
  }
}
.method-def-title span {
  background-color: #FFFFFF;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #e2645a;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .method-def-title span {
    padding: 40px 20px 20px 20px;
  }
}
.method-def-title span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .method-def-title span {
    margin-top: 0;
  }
}
.method-def-title {
  margin-bottom: 7.1rem;
}
.method-def-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  margin-bottom: 14.3rem;
}
@media (max-width: 42.49em) {
  .method-def-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.method-def-item {
  display: -ms-flexbox;
  display: flex;
  width: 48%;
}
@media (max-width: 42.49em) {
  .method-def-item {
    width: 100%;
  }
}
.method-def-item {
  margin: 0 2%;
}
@media (max-width: 42.49em) {
  .method-def-item {
    margin: 0 0 1.4rem 0;
  }
}
.method-def-item .icon {
  width: 60px;
  height: 60px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 10px;
}
.method-def-item-title {
  font-size: 23px;
  color: #e2645a;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  margin: 10px 0;
}
.method-def-item-description {
  font-size: 21px;
  color: #414042;
}
.method-coopeo {
  background-color: #5baece;
}
.method-coopeo-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
}
.method-coopeo-picto {
  margin-top: -90px;
  background-color: #5baece;
  border-radius: 100%;
  padding: 20px;
  box-sizing: content-box;
}
.method-coopeo-picto img {
  width: 150px;
  height: 150px;
  display: block;
}
.method-coopeo-logo {
  margin-top: -40px;
  margin-bottom: 2.9rem;
}
.method-coopeo-logo img {
  width: 400px;
  max-width: 100%;
  height: auto;
  display: block;
}
.method-coopeo-description {
  color: #FFFFFF;
  font-size: 25px;
  text-align: center;
  max-width: 1000px;
  margin-bottom: 2.9rem;
}
.method-coopeo-cta {
  border-radius: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #FFFFFF;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  font-size: 32px;
}
@media (max-width: 42.49em) {
  .method-coopeo-cta {
    font-size: 25px;
  }
}
.method-coopeo-cta {
  padding: 1.1rem 2.1rem;
}
@media (max-width: 42.49em) {
  .method-coopeo-cta {
    padding: 0.7rem 1.4rem;
  }
}
.method-coopeo-cta .icon {
  margin-left: -30px;
  width: 30px;
  height: 30px;
  fill: #FFFFFF;
  opacity: 0;
  transform: translateX(200%);
  transition: all 0.2s ease-out;
}
@media (max-width: 42.49em) {
  .method-coopeo-cta .icon {
    display: none;
  }
}
.method-coopeo-cta:hover .icon {
  opacity: 1;
  transform: translateX(0);
  margin-left: 20px;
}
.method-coopeo-cta {
  margin-bottom: 7.1rem;
  background-color: #312783;
}

.projects-title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .projects-title span {
    width: 100%;
  }
}
.projects-title span {
  background-color: #FFFFFF;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #e2645a;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .projects-title span {
    padding: 40px 20px 20px 20px;
  }
}
.projects-title span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .projects-title span {
    margin-top: 0;
  }
}
@media (max-width: 42.49em) {
  .projects-title {
    display: none;
  }
}
.projects-description {
  color: #414042;
  font-size: 25px;
  text-align: center;
}
@media (max-width: 63.99em) {
  .projects-description {
    margin-bottom: 2.9rem;
  }
}
@media (max-width: 42.49em) {
  .projects-description {
    display: none;
  }
}
.projects-list {
  padding: 3.6rem 0;
}
.projects-list-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: center;
      justify-content: center;
}
@media (min-width: 90em) {
  .projects .projectPreview {
    width: 26.4rem;
  }
}
.projects .projectPreview {
  width: 27.9rem;
}
@media (max-width: 63.99em) {
  .projects .projectPreview {
    width: 42.9rem;
  }
}
@media (max-width: 42.49em) {
  .projects .projectPreview {
    width: 42.9rem;
  }
}
@media (min-width: 90em) {
  .projects .projectPreview {
    height: 17.6rem;
  }
}
.projects .projectPreview {
  height: 18.6rem;
}
@media (max-width: 63.99em) {
  .projects .projectPreview {
    height: 28.6rem;
  }
}
@media (max-width: 42.49em) {
  .projects .projectPreview {
    height: 28.6rem;
  }
}
@media (min-width: 90em) {
  .projects .projectPreview {
    margin: 0.7rem;
  }
}
.projects .projectPreview {
  margin: 0.7rem;
}
@media (max-width: 63.99em) {
  .projects .projectPreview {
    margin: 0.7rem;
  }
}
@media (max-width: 42.49em) {
  .projects .projectPreview {
    margin: 0 0 0.7rem 0;
  }
}
.projects-passion {
  padding: 3.6rem 0;
}
.projects-passion-title {
  font-size: 32px;
  color: #FFFFFF;
  text-transform: uppercase;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  text-shadow: 4px 5px 20px rgba(0, 0, 0, 0.65);
}
.projects-passion-description {
  font-size: 25px;
  color: #FFFFFF;
  font-weight: 500;
  text-align: center;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 20px;
}

.project {
  background-color: #f0f0f0;
}
.project-hero {
  height: calc(100vh - 80px);
  width: 100%;
  background-size: cover;
  background-position: center center;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-direction: column;
      flex-direction: column;
}
.project-hero::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(./assets/images/bgvideo.png) repeat transparent;
}
.project-hero::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 20%);
}
.project-hero-title {
  color: #FFFFFF;
  font-weight: 500;
  font-size: 7.1rem;
  text-shadow: 4px 5px 20px rgba(0, 0, 0, 0.65);
}
.project-hero-subtitle {
  font-size: 32px;
  color: #FFFFFF;
  font-weight: 500;
  text-shadow: 4px 5px 20px rgba(0, 0, 0, 0.65);
}
.project-hero-nav {
  position: absolute;
  z-index: 1;
  left: 0;
  bottom: 0;
  transform: translateY(-100%);
  width: 100%;
  padding: 0 30px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
@media (max-width: 42.49em) {
  .project-hero-nav {
    display: none;
  }
}
.project-hero-nav-item {
  font-size: 25px;
  font-weight: 500;
  color: #FFFFFF;
  text-shadow: 4px 5px 20px rgba(0, 0, 0, 0.65);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
.project-hero-nav-item:hover {
  color: #f0f0f0;
}
.project-hero-nav-item {
  position: relative;
}
.project-hero-nav-item .animIcon-icon {
  position: relative;
  z-index: 2;
  border-radius: 100%;
  transition: all ease 225ms;
  padding: 20px;
}
.project-hero-nav-item .animIcon-icon .icon {
  position: relative;
  z-index: 2;
  display: block;
  transition: fill ease 225ms;
  width: 40px;
  height: 40px;
}
.project-hero-nav-item .animIcon-icon::before {
  display: block;
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%) scale(0.9);
  border: 1px solid;
  opacity: 0;
  border-radius: 100%;
  transition-duration: 225ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
.project-hero-nav-item .animIcon-name {
  text-align: center;
  transition: all 0.2s ease;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
.project-hero-nav-item .animIcon-more {
  position: absolute;
  z-index: 3;
  right: 0;
  top: 0;
  padding: 5px;
  background-color: #FFFFFF;
  border-radius: 100%;
  border: 1px solid;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.project-hero-nav-item .animIcon-more .icon {
  width: 20px;
  height: 20px;
  display: block;
}
.project-hero-nav-item {
  /* INTERACTIONS */
  /* ------------ */
}
.project-hero-nav-item:hover .animIcon-icon::before, .project-hero-nav-item.is-active .animIcon-icon::before {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.15);
}
.project-hero-nav-item:hover .animIcon-name, .project-hero-nav-item.is-active .animIcon-name {
  transform: translateY(10px);
}
.project-hero-nav-item:hover:not(.is-active) .animIcon-more {
  opacity: 1;
}
.project-hero-nav-item .animIcon-icon {
  background-color: #e2645a;
  margin: 0 1.4rem;
}
.project-hero-nav-item .animIcon-icon .icon {
  fill: #FFFFFF;
}
.project-problematic {
  background-color: #e2645a;
}
.project-problematic-title {
  padding-top: 2.1rem;
  padding-bottom: 2.1rem;
  font-size: 32px;
  color: #FFFFFF;
  text-align: center;
}
.project-info {
  background-color: #FFFFFF;
}
.project-info-inner {
  display: -ms-flexbox;
  display: flex;
  padding-top: 2.9rem;
}
@media (max-width: 42.49em) {
  .project-info-inner {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.project-info-main {
  -ms-flex: 5;
      flex: 5;
  padding-right: 1.4rem;
}
@media (max-width: 42.49em) {
  .project-info-main {
    margin-bottom: 2.9rem;
  }
}
.project-info-side {
  -ms-flex: 2;
      flex: 2;
  padding: 0 1.4rem;
}
.project-title {
  font-size: 50px;
  color: #e2645a;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
}
@media (max-width: 42.49em) {
  .project-title {
    line-height: 50px;
  }
}
.project-subtitle {
  font-size: 32px;
  font-weight: 300;
}
@media (max-width: 42.49em) {
  .project-subtitle {
    line-height: 30px;
  }
}
.project-subtitle {
  margin-bottom: 10px;
}
.project-meta {
  font-size: 21px;
  color: #a7a9ac;
  border-bottom: 1px solid #e2645a;
  margin-bottom: 10px;
  padding-bottom: 10px;
}
.project-meta a:hover {
  color: #e2645a;
}
.project-pitch {
  font-size: 23px;
  margin-bottom: 100px;
}
.project-collaborateurs {
  font-size: 17px;
}
.project-collaborateurs a:hover {
  color: #e2645a;
}
.project-subheading {
  margin-bottom: 20px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
.project-subheading.is-client {
  margin-bottom: 0;
}
.project-subheading .icon {
  width: 30px;
  height: 30px;
  fill: #e2645a;
  margin-right: 10px;
}
.project-subheading span {
  width: 100%;
  border-bottom: 1px solid #e2645a;
  font-size: 21px;
  color: #e2645a;
}
.project-list {
  margin-bottom: 40px;
}
.project-item {
  display: block;
  font-size: 17px;
}
.project-item:hover {
  color: #e2645a;
}
.project-item .icon {
  margin: 0 10px;
}
.project-clients {
  display: -ms-flexbox;
  display: flex;
}
.project-clients .client {
  -ms-flex-positive: 1;
      flex-grow: 1;
}
.project-clients .client::before {
  content: none;
}
.project-clients-description {
  font-size: 17px;
  margin-top: 1.4rem;
}
.project-main {
  background-color: #f0f0f0;
}

.xplab .footer {
  background-color: #502360;
}
.xplab-slugline {
  padding: 1.4rem;
}
@media (max-width: 42.49em) {
  .xplab-slugline {
    padding: 1.4rem;
  }
}
.xplab-slugline {
  background-color: #502360;
}
.xplab-slugline-inner {
  color: #fed27a;
  font-size: 25px;
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}
.xplab-intro-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  padding-top: 3.6rem;
  padding-bottom: 7.1rem;
}
@media (max-width: 42.49em) {
  .xplab-intro-inner {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.xplab-intro-side {
  -ms-flex: 1;
      flex: 1;
  background-color: #FFFFFF;
  border: 2px solid #502360;
  padding: 2.9rem;
}
@media (max-width: 42.49em) {
  .xplab-intro-side {
    margin: 0 1.4rem 2.9rem 1.4rem;
  }
}
.xplab-intro-side {
  font-size: 23px;
  font-weight: 400;
  position: relative;
}
.xplab-intro-side::before, .xplab-intro-side::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  width: 14.3rem;
  height: 14.3rem;
  background-color: #fed27a;
}
.xplab-intro-side::before {
  top: 0;
  left: 0;
  transform: translate(-10%, -10%);
}
.xplab-intro-side::after {
  bottom: 0;
  right: 0;
  transform: translate(10%, 10%);
}
.xplab-intro-main {
  -ms-flex: 2;
      flex: 2;
  margin-left: 7.1rem;
}
@media (max-width: 42.49em) {
  .xplab-intro-main {
    margin-left: 0;
  }
}
.xplab-intro-title {
  font-weight: 500;
  font-size: 32px;
  text-align: center;
  color: #502360;
  margin-bottom: 1.4rem;
}
.xplab-intro-description {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.xplab-intro-description h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.xplab-intro-description p {
  font-size: 23px;
  margin-bottom: 1.4rem;
}
.xplab-intro-description a {
  color: orange;
  text-decoration: underline;
}
.xplab-intro-description a:hover {
  color: #e2645a;
}
.xplab-intro-description ul, .xplab-intro-description ol {
  margin-bottom: 1.4rem;
}
.xplab-intro-description ul li, .xplab-intro-description ol li {
  font-size: 23px;
  margin-left: 1.4rem;
}
.xplab-intro-description ul li {
  list-style: disc outside;
}
.xplab-intro-description ol li {
  list-style: decimal outside;
}
.xplab-intro-description .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.xplab-intro-description .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.xplab-intro-description .gallery-item:hover {
  opacity: 0.7;
}
.xplab-intro-description .gallery-item a, .xplab-intro-description .gallery-item img {
  display: block;
}
.xplab-intro-description iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.xplab-intro-description .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.xplab-intro-description img {
  max-width: 100%;
  height: auto;
}
.xplab-intro-description {
  text-align: justify;
  color: #502360;
}
.xplab-advantages {
  position: relative;
  background-color: #502360;
}
.xplab-advantages-inner {
  padding-bottom: 7.1rem;
}
.xplab-advantages-title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .xplab-advantages-title span {
    width: 100%;
  }
}
.xplab-advantages-title span {
  background-color: semilight;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #FFFFFF;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .xplab-advantages-title span {
    padding: 40px 20px 20px 20px;
  }
}
.xplab-advantages-title span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .xplab-advantages-title span {
    margin-top: 0;
  }
}
.xplab-advantages-title {
  margin-bottom: 25rem;
}
@media (max-width: 42.49em) {
  .xplab-advantages-title {
    margin-bottom: 14.3rem;
  }
}
.xplab-advantages-title span {
  font-size: 32px;
}
@media (max-width: 42.49em) {
  .xplab-advantages-title span {
    font-size: 25px;
  }
}
.xplab-advantages-title span {
  background-color: #502360;
}
.xplab-advantages-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
.xplab-advantages-item {
  border: 1px solid #FFFFFF;
  border-radius: 100%;
  width: 21.4rem;
}
@media (max-width: 42.49em) {
  .xplab-advantages-item {
    width: 14.3rem;
  }
}
.xplab-advantages-item {
  height: 21.4rem;
}
@media (max-width: 42.49em) {
  .xplab-advantages-item {
    height: 14.3rem;
  }
}
.xplab-advantages-item:nth-child(1) {
  transform: translateX(55%);
}
.xplab-advantages-item:nth-child(2) {
  transform: translateY(-80%);
}
.xplab-advantages-item:nth-child(3) {
  transform: translateX(-55%);
}
.xplab-advantages-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.xplab-advantages-description {
  color: #FFFFFF;
  font-size: 25px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .xplab-advantages-description {
    font-size: 15px;
  }
}
.xplab-guide {
  background: url(./assets/images/xplab/4.jpg) no-repeat center top transparent;
  background-size: cover;
  height: 42.9rem;
  position: relative;
}
.xplab-guide::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.6) 100%);
}
.xplab-guide-link {
  border-radius: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #FFFFFF;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  font-size: 32px;
}
@media (max-width: 42.49em) {
  .xplab-guide-link {
    font-size: 25px;
  }
}
.xplab-guide-link {
  padding: 1.1rem 2.1rem;
}
@media (max-width: 42.49em) {
  .xplab-guide-link {
    padding: 0.7rem 1.4rem;
  }
}
.xplab-guide-link .icon {
  margin-left: -30px;
  width: 30px;
  height: 30px;
  fill: #FFFFFF;
  opacity: 0;
  transform: translateX(200%);
  transition: all 0.2s ease-out;
}
@media (max-width: 42.49em) {
  .xplab-guide-link .icon {
    display: none;
  }
}
.xplab-guide-link:hover .icon {
  opacity: 1;
  transform: translateX(0);
  margin-left: 20px;
}
.xplab-guide-link {
  background-color: #502360;
  position: absolute;
  left: 50%;
  bottom: 10%;
  transform: translateX(-50%);
}
.xplab-guide-link:hover {
  background-color: #502360;
}
.xplab-guide-link:hover::before {
  border-color: #502360;
}
.xplab-timeline-heading {
  background-color: #fed27a;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 1.4rem 0;
  margin-bottom: 5.7rem;
}
.xplab-timeline-title {
  font-size: 50px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .xplab-timeline-title {
    font-size: 32px;
  }
}
.xplab-timeline-title {
  color: #502360;
}
.xplab-timeline-slugline {
  font-size: 25px;
  text-align: center;
  color: #502360;
}
.xplab-timeline-item {
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 42.49em) {
  .xplab-timeline-item {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.xplab-timeline-item-side {
  width: 50%;
}
@media (max-width: 42.49em) {
  .xplab-timeline-item-side {
    width: 100%;
  }
}
.xplab-timeline-item-side {
  margin-right: 3.6rem;
}
@media (max-width: 42.49em) {
  .xplab-timeline-item-side {
    margin-right: 0;
  }
}
@media (max-width: 42.49em) {
  .xplab-timeline-item-side {
    -ms-flex-order: 2;
        order: 2;
  }
}
.xplab-timeline-item-visual img {
  width: 100%;
}
.xplab-timeline-item-main {
  -ms-flex-positive: 1;
      flex-grow: 1;
}
@media (max-width: 42.49em) {
  .xplab-timeline-item-main {
    -ms-flex-order: 1;
        order: 1;
  }
}
.xplab-timeline-item-main {
  padding-right: 2.1rem;
  padding-bottom: 3.6rem;
}
.xplab-timeline-item-title {
  font-size: 25px;
  text-transform: uppercase;
  color: #502360;
}
.xplab-timeline-item-description {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.xplab-timeline-item-description h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.xplab-timeline-item-description p {
  font-size: 23px;
  margin-bottom: 1.4rem;
}
.xplab-timeline-item-description a {
  color: orange;
  text-decoration: underline;
}
.xplab-timeline-item-description a:hover {
  color: #e2645a;
}
.xplab-timeline-item-description ul, .xplab-timeline-item-description ol {
  margin-bottom: 1.4rem;
}
.xplab-timeline-item-description ul li, .xplab-timeline-item-description ol li {
  font-size: 23px;
  margin-left: 1.4rem;
}
.xplab-timeline-item-description ul li {
  list-style: disc outside;
}
.xplab-timeline-item-description ol li {
  list-style: decimal outside;
}
.xplab-timeline-item-description .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.xplab-timeline-item-description .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.xplab-timeline-item-description .gallery-item:hover {
  opacity: 0.7;
}
.xplab-timeline-item-description .gallery-item a, .xplab-timeline-item-description .gallery-item img {
  display: block;
}
.xplab-timeline-item-description iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.xplab-timeline-item-description .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.xplab-timeline-item-description img {
  max-width: 100%;
  height: auto;
}
.xplab-timeline-item-description p, .xplab-timeline-item-description ul {
  margin-bottom: 2.1rem;
}
.xplab-order {
  position: relative;
  background-color: #fed27a;
}
.xplab-order-inner {
  padding-top: 3.6rem;
  padding-bottom: 7.1rem;
}
.xplab-order-title {
  font-size: 50px;
  text-align: center;
  font-weight: 500;
}
@media (max-width: 42.49em) {
  .xplab-order-title {
    font-size: 32px;
  }
}
.xplab-order-title {
  color: #502360;
  margin-bottom: 2.9rem;
}
.xplab-order-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
@media (max-width: 42.49em) {
  .xplab-order-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.xplab-order-item {
  -ms-flex-positive: 1;
      flex-grow: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  margin: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .xplab-order-item {
    margin: 0 1.4rem 2.9rem 1.4rem;
  }
}
.xplab-order-price {
  width: 17.9rem;
  height: 17.9rem;
  padding: 1.4rem;
  background-color: #FFFFFF;
  border-radius: 100%;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  margin-bottom: 1.4rem;
}
.xplab-order-price::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  border: 1px solid #FFFFFF;
  border-radius: 100%;
  transform: translate(-50%, -50%) scale(0.9);
  transition: transform 0.2s ease;
}
.xplab-order-item:hover .xplab-order-price::before {
  transform: translate(-50%, -50%) scale(1.1);
}
.xplab-order-price img {
  width: 100%;
  height: 100%;
}
.xplab-order-subtitle {
  font-size: 32px;
  font-weight: 500;
  text-align: center;
  color: #502360;
}
.xplab-order-description {
  font-size: 23px;
  text-align: center;
  color: #502360;
}
.xplab-order-cta {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 50%);
  height: 5.7rem;
}
@media (max-width: 42.49em) {
  .xplab-order-cta {
    height: auto;
  }
}
.xplab-order-cta {
  padding: 0 2.9rem;
  background-color: #502360;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .xplab-order-cta {
    padding: 1.4rem;
  }
}
.xplab-order-cta:hover {
  opacity: 0.7;
}
.xplab-order-cta {
  color: #FFFFFF;
  font-size: 25px;
  text-align: center;
  border-radius: 10px;
}
.xplab-contact-inner {
  max-width: 700px;
  padding-top: 3.6rem;
  padding-bottom: 3.6rem;
}
@media (max-width: 42.49em) {
  .xplab-contact-inner {
    padding-bottom: 7.1rem;
  }
}
.xplab-contact-title {
  font-size: 50px;
  text-align: center;
  font-weight: 500;
  color: #502360;
  margin-bottom: 2.9rem;
}
.xplab-contact .form-button {
  background: #502360;
}

.urika .footer {
  background-color: #94d2de;
}
.urika-slugline {
  padding: 1.4rem;
}
@media (max-width: 42.49em) {
  .urika-slugline {
    padding: 1.4rem;
  }
}
.urika-slugline {
  background-color: #94d2de;
}
.urika-slugline-inner {
  color: #ffffff;
  font-size: 25px;
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}
.urika-intro {
  padding-top: 7.1rem;
  padding-bottom: 7.1rem;
}
.urika-intro-text {
  font-size: 25px;
  text-align: center;
  margin: 0 auto 2.9rem auto;
  padding: 0 1.4rem;
  max-width: 900px;
}
.urika-intro img {
  width: 100%;
  margin-bottom: 1.4rem;
}
.urika-presentation {
  background-color: #94d2de;
}
.urika-presentation-title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .urika-presentation-title span {
    width: 100%;
  }
}
.urika-presentation-title span {
  background-color: semilight;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #FFFFFF;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .urika-presentation-title span {
    padding: 40px 20px 20px 20px;
  }
}
.urika-presentation-title span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .urika-presentation-title span {
    margin-top: 0;
  }
}
.urika-presentation-title {
  margin-bottom: 3.6rem;
}
.urika-presentation-title span {
  background-color: #94d2de;
}
.urika-presentation-description {
  color: #FFFFFF;
  text-align: center;
  font-size: 25px;
  margin: 0 auto 2.9rem auto;
  max-width: 900px;
}
.urika-presentation-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  padding-bottom: 7.1rem;
}
@media (max-width: 42.49em) {
  .urika-presentation-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.urika-presentation-item {
  margin: 0 2.9rem;
}
@media (max-width: 42.49em) {
  .urika-presentation-item {
    margin: 0 2.9rem 2.9rem 2.9rem;
  }
}
.urika-presentation-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
}
.urika-presentation-icon {
  width: 14.3rem;
  height: 14.3rem;
  margin-bottom: 1.4rem;
}
.urika-presentation-content {
  color: #FFFFFF;
  text-align: center;
  font-size: 21px;
}
.urika-video {
  border-bottom: 20px solid #ef784e;
}
.urika-video-title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  height: 7.1rem;
}
@media (max-width: 42.49em) {
  .urika-video-title {
    height: auto;
  }
}
.urika-video-title {
  padding: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .urika-video-title {
    padding: 1.4rem;
  }
}
.urika-video-title {
  color: #FFFFFF;
  font-size: 50px;
  text-align: center;
  background-color: #ef784e;
  position: relative;
}
.urika-video-title::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 100%;
  width: 0;
  height: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 20px solid #ef784e;
  z-index: 1;
}
.urika-video-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
.urika-video iframe {
  margin: 2.9rem 0;
}
.urika-install {
  padding-top: 7.1rem;
  padding-bottom: 7.1rem;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 42.49em) {
  .urika-install {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.urika-install-main {
  -ms-flex-positive: 1;
      flex-grow: 1;
  padding: 0 7.1rem 0 0;
}
@media (max-width: 42.49em) {
  .urika-install-main {
    padding: 0 0 2.9rem 0;
  }
}
.urika-install-title {
  font-size: 50px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
}
@media (max-width: 42.49em) {
  .urika-install-title {
    font-size: 25px;
  }
}
.urika-install-title {
  margin-bottom: 1.4rem;
  color: #94d2de;
}
.urika-install-description {
  font-size: 23px;
}
.urika-install-visual {
  -ms-flex-positive: 1;
      flex-grow: 1;
}
.urika-install-visual img {
  width: 100%;
}
.urika-solutions {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 20%);
}
.urika-solutions-inner {
  padding-top: 7.1rem;
  padding-bottom: 7.1rem;
}
.urika-solutions-title {
  font-size: 50px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .urika-solutions-title {
    font-size: 32px;
  }
}
.urika-solutions-title {
  color: #ef784e;
  margin-bottom: 1.4rem;
}
.urika-solutions-intro {
  font-size: 25px;
  text-align: center;
  color: #ef784e;
  margin-bottom: 1.4rem;
}
.urika-solutions-list {
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 42.49em) {
  .urika-solutions-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.urika-solutions-item {
  margin: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .urika-solutions-item {
    margin: 0 1.4rem 2.9rem 1.4rem;
  }
}
.urika-solutions-item img {
  width: 100%;
}
.urika-solutions-item p {
  font-size: 23px;
}
.urika .lightbox-container {
  border-top: 10px solid #94d2de;
  top: 50%;
  transform: translate(-50%, -50%);
}
.urika .lightbox-container::before, .urika .lightbox-container::after {
  display: none;
}
.urika .lightbox-title {
  color: #94d2de;
}
.urika .lightbox .form-button {
  background-color: #94d2de;
}

.waste .footer {
  background-color: #409636;
}
.waste-slugline {
  padding: 1.4rem;
}
@media (max-width: 42.49em) {
  .waste-slugline {
    padding: 1.4rem;
  }
}
.waste-slugline {
  background-color: #409636;
}
.waste-slugline-inner {
  color: #ffffff;
  font-size: 25px;
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}
.waste-support {
  padding: 40px 20px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  border-bottom: 2px solid #409636;
}
@media (max-width: 42.49em) {
  .waste-support {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.waste-support > p {
  font-size: 25px;
  color: #3C3C3B;
  font-style: italic;
  margin-right: 40px;
}
@media (max-width: 42.49em) {
  .waste-support > p {
    margin-bottom: 20px;
    margin-right: 0;
  }
}
.waste-support > a > img {
  width: 300px;
  max-width: 100%;
}
.waste-intro {
  position: relative;
}
.waste-intro::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100px;
  z-index: -1;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%);
}
.waste-intro-inner {
  padding-top: 7.1rem;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 42.49em) {
  .waste-intro-inner {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.waste-intro-text {
  width: 50%;
}
@media (max-width: 42.49em) {
  .waste-intro-text {
    width: 100%;
  }
}
.waste-intro-text {
  padding: 0 1.4rem 7.1rem 0;
}
.waste-intro-text h2 {
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  color: #409636;
}
.waste-intro-text p {
  font-size: 25px;
  margin-bottom: 3.6rem;
}
.waste-intro-visual {
  width: 50%;
  width: 50%;
}
@media (max-width: 42.49em) {
  .waste-intro-visual {
    width: 100%;
  }
}
.waste-intro-visual {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
      align-items: flex-end;
}
.waste-intro-visual img {
  max-width: 100%;
}
.waste-product {
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 42.49em) {
  .waste-product {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.waste-product-side {
  -ms-flex-positive: 2;
      flex-grow: 2;
  background-size: cover;
  background-position: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .waste-product-side {
    -ms-flex-order: 2;
        order: 2;
  }
}
.waste-product-more {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 50%);
  z-index: 1;
  background-color: #409636;
  padding: 20px 40px;
  color: #FFFFFF;
  font-size: 32px;
  font-weight: 500;
  text-align: center;
}
@media (max-width: 42.49em) {
  .waste-product-more {
    font-size: 23px;
  }
}
.waste-product-more {
  white-space: nowrap;
}
.waste-product-main {
  width: 500px;
}
@media (max-width: 42.49em) {
  .waste-product-main {
    width: 100%;
  }
}
.waste-product-main {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.waste-product-main h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.waste-product-main p {
  font-size: 23px;
  color: #3C3C3B;
  margin-bottom: 1.4rem;
}
.waste-product-main a {
  color: orange;
  text-decoration: underline;
}
.waste-product-main a:hover {
  color: #e2645a;
}
.waste-product-main ul, .waste-product-main ol {
  margin-bottom: 1.4rem;
}
.waste-product-main ul li, .waste-product-main ol li {
  font-size: 23px;
  color: #3C3C3B;
  margin-left: 1.4rem;
}
.waste-product-main ul li {
  list-style: disc outside;
}
.waste-product-main ol li {
  list-style: decimal outside;
}
.waste-product-main .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.waste-product-main .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.waste-product-main .gallery-item:hover {
  opacity: 0.7;
}
.waste-product-main .gallery-item a, .waste-product-main .gallery-item img {
  display: block;
}
.waste-product-main iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.waste-product-main .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.waste-product-main img {
  max-width: 100%;
  height: auto;
}
.waste-product-main {
  padding: 2.9rem;
}
@media (max-width: 42.49em) {
  .waste-product-main {
    padding: 2.9rem 2.9rem 10.7rem 2.9rem;
  }
}
.waste-product-main h2 {
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  color: #409636;
}
@media (max-width: 42.49em) {
  .waste-product-main {
    -ms-flex-order: 1;
        order: 1;
  }
}
.waste-schema {
  position: relative;
}
.waste-schema::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100px;
  z-index: -1;
  background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%);
}
.waste-schema-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  padding-top: 7.1rem;
}
@media (max-width: 42.49em) {
  .waste-schema-inner {
    padding-top: 14.3rem;
  }
}
.waste-schema-inner {
  padding-bottom: 7.1rem;
}
.waste-schema-logo {
  width: 28.6rem;
  margin-bottom: 3.6rem;
}
.waste-schema-schema {
  max-width: 100%;
}
.waste-presentation {
  background-color: #409636;
}
.waste-presentation-title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
}
@media (max-width: 42.49em) {
  .waste-presentation-title span {
    width: 100%;
  }
}
.waste-presentation-title span {
  background-color: semilight;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  color: #FFFFFF;
  text-align: center;
  padding: 10px 50px;
}
@media (max-width: 42.49em) {
  .waste-presentation-title span {
    padding: 40px 20px 20px 20px;
  }
}
.waste-presentation-title span {
  display: block;
  margin-top: -30px;
}
@media (max-width: 42.49em) {
  .waste-presentation-title span {
    margin-top: 0;
  }
}
.waste-presentation-title {
  margin-bottom: 3.6rem;
}
.waste-presentation-title span {
  background-color: #409636;
}
.waste-presentation-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  padding-bottom: 7.1rem;
}
@media (max-width: 42.49em) {
  .waste-presentation-list {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}
.waste-presentation-item {
  margin: 0 2.9rem;
}
@media (max-width: 42.49em) {
  .waste-presentation-item {
    margin: 0 2.9rem 2.9rem 2.9rem;
  }
}
.waste-presentation-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
}
.waste-presentation-icon {
  width: 14.3rem;
  height: 14.3rem;
  margin-bottom: 1.4rem;
}
.waste-presentation-content {
  color: #FFFFFF;
  text-align: center;
  font-size: 21px;
}
.waste-video {
  border-bottom: 20px solid #328229;
}
.waste-video-title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  height: 7.1rem;
}
@media (max-width: 42.49em) {
  .waste-video-title {
    height: auto;
  }
}
.waste-video-title {
  padding: 0 1.4rem;
}
@media (max-width: 42.49em) {
  .waste-video-title {
    padding: 1.4rem;
  }
}
.waste-video-title {
  color: #FFFFFF;
  font-size: 50px;
  text-align: center;
}
@media (max-width: 42.49em) {
  .waste-video-title {
    font-size: 32px;
  }
}
.waste-video-title {
  background-color: #328229;
  position: relative;
}
.waste-video-title::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 20px solid #328229;
  z-index: 1;
}
.waste-video-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
.waste-video iframe {
  margin: 2.9rem 0;
}
@media (max-width: 42.49em) {
  .waste-video iframe {
    margin: 7.1rem 0;
  }
}
.waste-install {
  padding-top: 7.1rem;
  padding-bottom: 7.1rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
}
.waste-install-title {
  font-size: 50px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
}
@media (max-width: 42.49em) {
  .waste-install-title {
    font-size: 32px;
  }
}
.waste-install-title {
  margin-bottom: 7.1rem;
  padding: 0 1.4rem;
  color: #409636;
}
.waste-install-visual {
  width: 100%;
}
.waste-order {
  background-size: cover;
  position: relative;
  height: 50rem;
}
.waste-order-link {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  color: #FFFFFF;
  font-size: 32px;
  font-weight: 500;
  text-align: center;
  background-color: #409636;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding: 0 2.9rem;
}
@media (max-width: 42.49em) {
  .waste-order-link {
    padding: 1.4rem 2.9rem;
  }
}
.waste-order-link {
  height: 7.1rem;
}
@media (max-width: 42.49em) {
  .waste-order-link {
    height: auto;
  }
}
.waste .lightbox-container {
  border-top: 10px solid #409636;
  top: 50%;
  transform: translate(-50%, -50%);
}
.waste .lightbox-container::before, .waste .lightbox-container::after {
  display: none;
}
.waste .lightbox-title {
  color: #409636;
}
.waste .lightbox .form-button {
  background-color: #409636;
}

.article {
  margin-top: 1.4rem;
  position: relative;
}
.article-cta {
  border-radius: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #FFFFFF;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  font-size: 25px;
  padding: 0.7rem 1.4rem;
}
.article-cta .icon {
  margin-left: -30px;
  width: 30px;
  height: 30px;
  fill: #FFFFFF;
  opacity: 0;
  transform: translateX(200%);
  transition: all 0.2s ease-out;
}
@media (max-width: 42.49em) {
  .article-cta .icon {
    display: none;
  }
}
.article-cta:hover .icon {
  opacity: 1;
  transform: translateX(0);
  margin-left: 20px;
}
.article-cta {
  position: absolute;
  left: 50%;
  top: 5.7rem;
  transform: translateX(-50%);
  background-color: #2b9fb2;
}
.article-meta {
  position: absolute;
  right: 20px;
  top: -10px;
  padding: 10px;
  font-size: 12px;
  background-color: #16798f;
  color: #FFFFFF;
  text-align: center;
  z-index: 1;
}
.article-meta::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  transform: translateX(-100%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 10px 5px;
  border-color: transparent transparent #054f63 transparent;
}
.article-visual {
  width: 100%;
  height: auto;
  display: block;
}
.article-main {
  background-color: #3C3C3B;
  padding: 1.4rem;
}
.article-title {
  color: #FFFFFF;
  text-transform: uppercase;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  font-size: 25px;
}
.article-description {
  color: #FFFFFF;
  font-size: 17px;
}

.client {
  position: relative;
  filter: grayscale(100%);
  transition: filter 0.2s linear;
}
.client:hover {
  filter: grayscale(0%);
}
.client:hover::before {
  transform: translate(-50%, -50%) scale(1.2);
}
.client::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  transform-origin: center center;
  transform: translate(-50%, -50%) scale(0.7);
  transition: transform 0.2s ease;
  border-radius: 100%;
  border: 2px solid #FFFFFF;
}
.client-visual {
  position: relative;
  border-radius: 100%;
  display: block;
  width: 12.1rem;
  height: 12.1rem;
}

@keyframes opacity {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.3;
  }
}
@keyframes circlearrows {
  0% {
    opacity: 0;
    transform: rotate(-50deg);
  }
  40% {
    opacity: 1;
    transform: rotate(-20deg);
  }
  80% {
    opacity: 0;
    transform: rotate(10deg);
  }
  100% {
    opacity: 0;
    transform: rotate(0deg);
  }
}
.homeDiagram {
  width: 47.9rem;
}
@media (max-width: 42.49em) {
  .homeDiagram {
    width: 100%;
  }
}
.homeDiagram {
  height: 67.9rem;
  margin: 0 auto 7.1rem auto;
}
@media (max-width: 42.49em) {
  .homeDiagram {
    margin: 0;
  }
}
.homeDiagram {
  position: relative;
}
.homeDiagram-central {
  position: absolute;
  left: 50%;
  top: 16.4rem;
  transform: translateX(-50%);
  z-index: 2;
  cursor: pointer;
}
.homeDiagram-central::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%) scale(0.7);
  transition: transform 0.2s cubic-bezier(0.68, -0.55, 0.27, 1.55);
  border: 1px solid #e2645a;
  border-radius: 100%;
}
.homeDiagram-central:hover::before {
  transform: translate(-50%, -50%) scale(1);
}
.homeDiagram-central-main .icon {
  width: 9.3rem;
  height: 9.3rem;
  transform: scale(0.9);
}
.homeDiagram-central-title {
  position: absolute;
  font-size: 17px;
  color: #e2645a;
  text-align: center;
  position: absolute;
  white-space: nowrap;
  left: 50%;
  top: 105%;
  transform: translateX(-50%);
  line-height: 1rem;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.homeDiagram-central:hover .homeDiagram-central-title {
  opacity: 1;
}
.homeDiagram-central-more {
  position: absolute;
  right: 0;
  bottom: 0;
  background: #3C3C3B;
  border-radius: 100%;
  padding: 0.6rem;
}
.homeDiagram-central-more .icon {
  width: 1.4rem;
  height: 1.4rem;
  transform: scale(0.9);
  fill: #FFFFFF;
}
.homeDiagram-circlearrows {
  position: absolute;
  left: 50%;
  top: 7.1rem;
  transform: translateX(-50%);
  z-index: 2;
  pointer-events: none;
  width: 28.6rem;
}
.homeDiagram-circlearrows svg {
  animation: circlearrows 2s linear infinite;
}
.homeDiagram-downarrows {
  position: absolute;
  left: 50%;
  top: 38.6rem;
  transform: translateX(-50%);
  z-index: 2;
  pointer-events: none;
  width: 10.7rem;
}
.homeDiagram-downarrows svg {
  animation: opacity 2s linear infinite;
}
.homeDiagram-sphere {
  width: 25rem;
  height: 25rem;
  position: absolute;
  cursor: pointer;
  transform-style: preserve-3d;
  perspective: 1000;
}
.homeDiagram-sphere#sphere1 {
  left: 0;
  top: 0;
}
.homeDiagram-sphere#sphere2 {
  right: 0;
  top: 0;
}
.homeDiagram-sphere#sphere3 {
  left: 50%;
  top: 20rem;
  transform: translateX(-50%);
}
.homeDiagram-sphere#sphere4 {
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.homeDiagram-sphere.active {
  z-index: 3;
}
.homeDiagram-sphere-front, .homeDiagram-sphere-back {
  transition: all 0.3s ease;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.homeDiagram-sphere-front {
  overflow: hidden;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.active .homeDiagram-sphere-front {
  transform: rotateY(180deg);
}
.homeDiagram-sphere-back {
  transform: rotateY(180deg);
  border-radius: 100%;
  background-size: cover;
}
.homeDiagram-sphere-back::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  bottom: 0;
  border-radius: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0) 100%);
}
.active .homeDiagram-sphere-back {
  transform: rotateY(0);
}
.homeDiagram-sphere-line {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.homeDiagram-sphere-line svg {
  width: 100%;
  height: 100%;
}
.homeDiagram-sphere-line #red {
  stroke-dasharray: 755;
  stroke-dashoffset: 755;
  transition: stroke-dashoffset 0.5s linear;
}
.homeDiagram-sphere:hover .homeDiagram-sphere-line #red {
  stroke-dashoffset: 0;
}
#sphere3 .homeDiagram-sphere-icon {
  margin-top: 2.9rem;
}
.homeDiagram-sphere-icon .icon {
  width: 7.1rem;
  height: 7.1rem;
  fill: #a7a9ac;
  transition: fill 0.5s linear;
}
.homeDiagram-sphere:hover .homeDiagram-sphere-icon .icon {
  fill: #e2645a;
}
.homeDiagram-sphere-title {
  color: #a7a9ac;
  font-size: 25px;
  text-transform: uppercase;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  transition: color 0.5s linear;
}
.homeDiagram-sphere:hover .homeDiagram-sphere-title {
  color: #e2645a;
}
.homeDiagram-sphere-bullets {
  position: absolute;
  height: 100%;
  width: 100%;
}
@media (max-width: 42.49em) {
  .homeDiagram-sphere-bullets {
    display: none;
  }
}
#sphere1 .homeDiagram-sphere-bullets svg {
  right: 0;
  left: auto;
  top: 0;
}
#sphere2 .homeDiagram-sphere-bullets svg {
  left: 0;
  top: 0;
}
#sphere1 .homeDiagram-sphere-bullets svg, #sphere2 .homeDiagram-sphere-bullets svg {
  height: 25rem;
  width: 41.3rem;
}
#sphere3 .homeDiagram-sphere-bullets svg, #sphere4 .homeDiagram-sphere-bullets svg {
  left: 50%;
  top: 0;
  transform: translate(-50%);
  height: 25rem;
  width: 51.7rem;
}
.homeDiagram-sphere-bullets #txt g {
  opacity: 0;
}
.homeDiagram-sphere.active .homeDiagram-sphere-bullets #txt g {
  transition: opacity 0.2s linear;
  opacity: 1;
}
.homeDiagram-sphere.active .homeDiagram-sphere-bullets #txt g:nth-child(1) {
  transition-delay: 0.5s;
}
.homeDiagram-sphere.active .homeDiagram-sphere-bullets #txt g:nth-child(2) {
  transition-delay: 0.7s;
}
.homeDiagram-sphere.active .homeDiagram-sphere-bullets #txt g:nth-child(3) {
  transition-delay: 0.9s;
}
.homeDiagram-sphere.active .homeDiagram-sphere-bullets #txt g:nth-child(4) {
  transition-delay: 1.1s;
}
.homeDiagram-sphere-description {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%);
  width: 100%;
  color: #FFFFFF;
  font-size: 17px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  font-size: 1.6rem;
}
.homeDiagram-sphere-more {
  position: absolute;
  left: 50%;
  bottom: 10%;
  transform: translateX(-50%);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  color: #FFFFFF;
  font-size: 1rem;
}
.homeDiagram-sphere-more:hover {
  color: #e2645a;
}
.homeDiagram-sphere-more:hover .icon {
  fill: #e2645a;
}
.homeDiagram-sphere-more .icon {
  display: block;
  fill: #FFFFFF;
  width: 2.1rem;
  height: 2.1rem;
}

.header {
  background: #e2645a;
  background: linear-gradient(to right, #e2645a 0%, #c2544f 100%);
  box-shadow: 0px 0px 50px 0px #3C3C3B;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  border-bottom: 3px solid #FFFFFF;
  transition: all ease 0.2s;
}
.scrolled .header {
  border-bottom-width: 2px;
  transform: translateY(-20px);
}
@media (max-width: 63.99em) {
  .header {
    border-bottom-width: 2px;
    transform: translateY(-20px);
  }
}
@media (max-width: 42.49em) {
  .header {
    -ms-flex-pack: center;
        justify-content: center;
  }
}
.header-inner {
  height: 100%;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: end;
      align-items: flex-end;
}
.header-logo {
  position: relative;
  display: block;
}
.header-logo img {
  transform: translateY(15px);
  transform-origin: left center;
  height: 100%;
  width: 300px;
  transition: all ease 0.2s;
}
.scrolled .header-logo img {
  transform: scale(0.7) translateY(33px);
}
@media (max-width: 63.99em) {
  .header-logo img {
    transform: scale(0.7) translateY(33px);
  }
}
.header-menuToggle {
  display: none;
}
@media (max-width: 42.49em) {
  .header-menuToggle {
    display: block;
  }
}
.header-menuToggle {
  position: absolute;
  top: 65%;
  right: 0;
  transform: translateY(-50%);
}
.header-menuToggle .icon {
  fill: #FFFFFF;
  height: 30px;
  width: 30px;
  padding: 10px;
  box-sizing: content-box;
}
.header-menuToggle .icon-close {
  display: none;
}
.header-menuToggle.is-active .icon-open {
  display: none;
}
.header-menuToggle.is-active .icon-close {
  display: block;
}
.header-menu {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: end;
      justify-content: flex-end;
  padding-right: 50px;
}
@media (max-width: 42.49em) {
  .header-menu {
    display: none;
  }
}
.header-menu .menu-item {
  font-size: 17px;
  font-weight: 500;
  color: #8c3335;
  white-space: nowrap;
  position: relative;
}
.header-menu .menu-item:hover, .header-menu .menu-item.current-menu-item, .header-menu .menu-item.current-page-ancestor, .single-projects .header-menu .menu-item.menu-projects {
  color: #FFFFFF;
}
.header-menu .menu-item.current-menu-item, .header-menu .menu-item.current-page-ancestor, .single-projects .header-menu .menu-item.menu-projects {
  font-weight: 500;
}
.header-menu .menu-item.current-menu-item::after, .header-menu .menu-item.current-page-ancestor::after, .single-projects .header-menu .menu-item.menu-projects::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 10px solid #FFFFFF;
}
.header-menu .menu-item a {
  padding: 18px 20px 18px 20px;
}
@media (max-width: 63.99em) {
  .header-menu .menu-item a {
    padding: 18px 10px 18px 10px;
  }
}
.header-menu .menu-item a {
  display: block;
}
.header-contact {
  position: absolute;
  bottom: 0;
  right: 20px;
  transform: translateY(50%);
  border-radius: 100%;
  background-color: #FFFFFF;
  padding: 10px;
}
@media (max-width: 42.49em) {
  .header-contact {
    display: none;
  }
}
.header-contact .icon {
  width: 20px;
  height: 20px;
  fill: #c2544f;
  transition: fill 0.2s linear;
}
.header-contact:hover .icon {
  fill: #8c3335;
}

.follow {
  background-color: #16798f;
  position: relative;
}
@media (min-width: 90em) {
  .follow {
    padding-bottom: 3.6rem;
  }
}
.follow {
  padding-bottom: 7.1rem;
}
.follow-inner {
  position: relative;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
}
.follow-icon {
  border-radius: 100%;
  padding: 30px;
  margin-top: -75px;
  position: relative;
  background-color: #16798f;
}
.follow-icon .icon {
  width: 100px;
  height: 100px;
  fill: #054f63;
}
.follow-heading {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  color: #FFFFFF;
  text-transform: uppercase;
}
@media (max-width: 42.49em) {
  .follow-heading {
    font-size: 25px;
  }
}
.follow-heading {
  text-shadow: 0px 3px 0px #054f63;
  margin-bottom: 1.4rem;
}
.follow-description {
  font-size: 25px;
  color: #FFFFFF;
  text-align: center;
  font-weight: 500;
}
@media (max-width: 42.49em) {
  .follow-description {
    font-size: 25px;
  }
}
.follow-description {
  margin-bottom: 1.4rem;
}
.follow-newsletter {
  margin: 0 auto;
}
.follow-newsletter input[type=email], .follow-newsletter input[type=submit] {
  height: 60px;
  padding: 0 20px;
}
@media (max-width: 42.49em) {
  .follow-newsletter input[type=email], .follow-newsletter input[type=submit] {
    border-radius: 6px;
  }
}
.follow-newsletter input[type=email] {
  padding-right: 50px;
  margin-bottom: 10px;
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}
.follow-newsletter input[type=submit] {
  cursor: pointer;
  background: #054f63;
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
  color: #FFFFFF;
  font-weight: 500;
  transition: all 0.2s linear;
}
.follow-newsletter input[type=submit]:hover {
  background: #2b9fb2;
}
.follow-fieldset {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
@media (max-width: 42.49em) {
  .follow-fieldset {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}

.footer {
  position: relative;
  bottom: 0;
  width: 100%;
  background: #3C3C3B;
  box-shadow: 0px -25px 50px 0px rgba(0, 0, 0, 0.3);
  padding: 2.9rem 0 1.4rem 0;
}
.footer-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-bottom: 1.4rem;
}
@media (max-width: 42.49em) {
  .footer-inner {
    -ms-flex-direction: column;
        flex-direction: column;
    padding: 2.9rem;
  }
}
.footer-item {
  margin: 0 1.4rem 0 0;
}
@media (max-width: 42.49em) {
  .footer-item {
    margin: 0 0 1.4rem 0;
  }
}
.footer-item:last-child {
  margin-right: 0;
}
.footer-item .icon {
  width: 30px;
  height: 30px;
  margin-right: 5px;
  fill: #FFFFFF;
}
.footer-heading {
  font-size: 25px;
  font-weight: 500;
  color: #FFFFFF;
  margin-bottom: 10px;
}
.footer-description {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
      align-items: flex-end;
  font-size: 17px;
  color: #FFFFFF;
  margin-bottom: 10px;
}
.footer-socials {
  display: -ms-flexbox;
  display: flex;
}
.footer-social {
  margin-right: 10px;
  opacity: 0.7;
}
.footer-social .icon {
  width: 30px;
  height: 30px;
  fill: #f0f0f0;
}
.footer-social:hover {
  opacity: 1;
}
.footer-social:hover .icon {
  fill: #FFFFFF;
}
.footer-copyright {
  padding: 0 1.4rem;
  color: #a7a9ac;
  font-style: italic;
  font-size: 17px;
  text-align: center;
}
.footer-authors {
  -ms-flex: 1 0 0%;
      flex: 1 0 0%;
  margin-bottom: 1.4rem;
}
.footer-authors-title {
  font-size: 23px;
  color: #FFFFFF;
  text-align: center;
  font-weight: 500;
  margin-bottom: 1.4rem;
}
.footer-authors-list {
  display: -ms-flexbox;
  display: flex;
}
.footer-author {
  -ms-flex: 1 0 0%;
      flex: 1 0 0%;
  margin: 0 0.7rem;
}
.footer-author img {
  width: 100%;
  height: auto;
}

.hero {
  height: 42.9rem;
}
@media (max-width: 63.99em) {
  .hero {
    height: 50rem;
  }
}
@media (max-width: 42.49em) {
  .hero {
    height: auto;
  }
}
.hero {
  overflow: hidden;
  width: 100%;
  background-size: cover;
  background-position: center center;
  position: relative;
}
.hero::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(./assets/images/bgvideo.png) repeat transparent;
}
.hero-logo {
  position: absolute;
  z-index: 1;
  width: 21.4rem;
}
@media (max-width: 42.49em) {
  .hero-logo {
    width: 14.3rem;
  }
}
.hero-logo {
  left: 3.6rem;
}
@media (max-width: 42.49em) {
  .hero-logo {
    left: 50%;
  }
}
@media (max-width: 42.49em) {
  .hero-logo {
    transform: translate(-50%, 0);
  }
}
.hero-logo .icon {
  width: 100%;
  height: auto;
}
.hero-main {
  height: 100%;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-direction: column;
      flex-direction: column;
  transition: all 0.4s linear;
  padding: 3.6rem 0;
}
@media (max-width: 63.99em) {
  .hero-main {
    padding: 3.6rem 10.7rem;
  }
}
@media (max-width: 42.49em) {
  .hero-main {
    padding: 3.6rem 1.4rem;
  }
}
.slide-finished .hero-main {
  opacity: 1;
  transform: translate(0, 0);
}
.hero-video {
  position: absolute;
  width: 100%;
  z-index: 0;
}
@media (max-width: 42.49em) {
  .hero-video {
    display: none;
  }
}
.hero-video-aligncenter {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.hero-video-alignbottom {
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.hero-video-aligntop {
  left: 50%;
  top: 0;
  transform: translateX(-50%);
}
.hero-title {
  color: #FFFFFF;
  font-size: 79px;
  font-weight: 500;
  text-align: center;
}
@media (max-width: 63.99em) {
  .hero-title {
    font-size: 50px;
  }
}
@media (max-width: 42.49em) {
  .hero-title {
    font-size: 32px;
  }
}
.hero-title {
  text-shadow: 4px 5px 20px rgba(0, 0, 0, 0.65);
  margin-bottom: 1.4rem;
}
.hero-subtitle {
  font-size: 50px;
  color: #FFFFFF;
  font-weight: 500;
  text-align: center;
}
@media (max-width: 42.49em) {
  .hero-subtitle {
    font-size: 25px;
  }
}
.hero-subtitle {
  text-shadow: 4px 5px 20px rgba(0, 0, 0, 0.65);
  margin-bottom: 1.4rem;
}
.hero-description {
  color: #FFFFFF;
  font-size: 25px;
  font-weight: 500;
  text-align: center;
}
@media (max-width: 63.99em) {
  .hero-description {
    font-size: 23px;
  }
}
@media (max-width: 42.49em) {
  .hero-description {
    font-size: 21px;
  }
}
.hero-description {
  text-shadow: 4px 5px 20px rgba(0, 0, 0, 0.65);
}
@media (min-width: 90em) {
  .hero-description {
    max-width: 800px;
  }
}
.hero-description {
  max-width: 800px;
  padding: 20px;
  background: rgba(0, 0, 0, 0.4);
}

.loading {
  position: fixed;
  z-index: 2000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s linear;
  background: #e2645a;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-direction: column;
      flex-direction: column;
}
.loading::before {
  position: fixed;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 999999;
  transition: opacity 0.5s linear;
  opacity: 0;
}
.is-loading .loading::before {
  opacity: 1;
}
.is-loading .loading {
  opacity: 1;
  pointer-events: initial;
}
.loading-visual {
  width: 200px;
}
@media (max-width: 42.49em) {
  .loading-visual {
    width: 100px;
  }
}
.loading.full .loading-visual {
  width: 300px;
}
@media (max-width: 42.49em) {
  .loading.full .loading-visual {
    width: 150px;
  }
}
.loading.full .loading-visual {
  margin-top: -50px;
}
.loading-logo, .loading-slug {
  display: none;
  opacity: 0;
  transition: all 1s ease-out;
  transform: translateY(100%);
  max-width: 100%;
  padding: 0 20px;
}
.loading.drawn .loading-logo, .loading.drawn .loading-slug {
  opacity: 1;
  transform: translateY(0);
}
.loading.full .loading-logo, .loading.full .loading-slug {
  display: block;
}
.loading-logo {
  width: 500px;
}
.loading-logo svg {
  width: 100%;
  height: auto;
}
.loading-slug {
  color: #FFFFFF;
  font-size: 32px;
  text-align: center;
  margin-top: -10px;
  transition-delay: 1s;
}

#loading-bg {
  fill: #c2544f;
}

#loading-draw-accent {
  stroke-dasharray: 55;
  stroke-dashoffset: 55;
}
.loading.drawing #loading-draw-accent {
  transition: stroke-dashoffset 0.3s linear;
  transition-delay: 0.7s;
}
#loading-draw-letter {
  stroke-dasharray: 1022;
  stroke-dashoffset: 1022;
}
.loading.drawing #loading-draw-letter {
  transition: stroke-dashoffset 0.7s linear;
}
.loading.drawn #loading-draw-accent, .loading.drawing #loading-draw-accent, .loading.full #loading-draw-accent, .loading.drawn #loading-draw-letter, .loading.drawing #loading-draw-letter, .loading.full #loading-draw-letter {
  stroke-dashoffset: 0;
}

.map {
  position: relative;
}
.map-info {
  background: #FFFFFF;
  border-radius: 10px;
  padding: 2.1rem;
  font-size: 32px;
  border: 1px solid purplelight;
  position: absolute;
  left: 50%;
  top: 10%;
  transform: translateX(-50%);
  z-index: 1;
}
.map-container {
  height: 500px;
  width: 100%;
}

.menuMobile {
  display: none;
}
@media (max-width: 42.49em) {
  .menuMobile {
    display: -ms-flexbox;
    display: flex;
  }
}
.menuMobile {
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 35.7rem;
  overflow-y: scroll;
  overflow-x: hidden;
  background: #3C3C3B;
  z-index: 1000;
  padding: 20px;
  transform: translateX(-100%);
  transition: transform 0.2s ease;
}
.menuMobile.is-visible {
  transform: translateX(0);
}
.menuMobile .menu-item {
  color: #FFFFFF;
  font-size: 10vw;
}
.menuMobile .sub-menu {
  padding-left: 20px;
  border-left: 1px solid #f0f0f0;
  margin: 10px 0;
}

.processus {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
  padding-bottom: 50rem;
}
@media (max-width: 42.49em) {
  .processus {
    padding-bottom: 0;
  }
}
.processus {
  margin-bottom: 7.1rem;
}
.processus:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 50rem;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
}
.processus-item {
  width: 100%;
  position: relative;
  margin-top: -40px;
}
@media (max-width: 42.49em) {
  .processus-item {
    margin-top: 0;
  }
}
.processus-item-inner {
  position: relative;
}
@media (min-width: 42.5em) {
  .processus-item-inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
  }
}
.processus-phase {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: start;
      align-items: flex-start;
}
@media (max-width: 42.49em) {
  .processus-phase {
    color: #e2645a;
    margin: 20px 0;
  }
  .processus-item:last-child .processus-phase {
    display: none;
  }
}
@media (min-width: 42.5em) {
  .processus-phase {
    position: absolute;
    opacity: 0;
    color: #a7a9ac;
    transition: all 0.3s ease-out;
  }
  .processus-item:nth-child(1) .processus-phase {
    right: 55%;
    top: 1%;
    transform: scale(3) translate(-100%, -0%);
  }
  .processus-item:nth-child(2) .processus-phase {
    left: 55%;
    top: -12%;
    transform: scale(3) translate(100%, -0%);
  }
  .processus-item:nth-child(3) .processus-phase {
    right: 52%;
    top: 5%;
    transform: scale(3) translate(-100%, 0%);
  }
  .processus-item:nth-child(4) .processus-phase {
    left: 55%;
    top: -12%;
    transform: scale(3) translate(100%, -0%);
  }
  .processus-item:nth-child(5) .processus-phase {
    left: 55%;
    top: -12%;
    transform: scale(3) translate(100%, -0%);
  }
  .is-active .processus-phase {
    opacity: 1;
    color: #e2645a;
    transform: scale(1) translate(0) !important;
    transition: all 0.8s ease-out;
  }
}
.processus-phase-number {
  font-size: 25px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
}
@media (max-width: 42.49em) {
  .processus-phase-number {
    font-size: 23px;
  }
}
.processus-phase-name {
  font-size: 79px;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
}
@media (max-width: 42.49em) {
  .processus-phase-name {
    font-size: 32px;
  }
}
.processus-phase-name {
  margin-top: -10px;
}
.processus-bg {
  width: 50%;
  position: absolute;
  z-index: -1;
}
@media (max-width: 42.49em) {
  .processus-bg {
    display: none;
  }
}
.processus-bg-visual {
  width: 100%;
  height: auto;
}
.processus-bg-left {
  left: 0;
  top: 0%;
  transform: translateX(-20%);
}
.processus-item:first-child .processus-bg-left {
  top: 10%;
  transform: translateX(-20%);
}
.processus-bg-right {
  right: 0;
  transform: translateX(20%);
}
.processus-item:nth-child(1) .processus-bg-right {
  bottom: 10%;
}
.processus-item:nth-child(2) .processus-bg-right {
  bottom: 0%;
}
.processus-item:nth-child(3) .processus-bg-right {
  bottom: 10%;
}
.processus-item:nth-child(4) .processus-bg-right {
  bottom: 0%;
}
.processus-schema {
  width: 70%;
}
@media (max-width: 42.49em) {
  .processus-schema {
    display: none;
  }
}
.processus-schema #sine_red {
  stroke-dasharray: 1715;
  stroke-dashoffset: 1715;
}
.processus-item:last-child .processus-schema #sine_red {
  stroke-dasharray: 1292;
  stroke-dashoffset: 1292;
}
.processus-schema #line_red {
  stroke-dasharray: 1063;
  stroke-dashoffset: 1063;
}
.processus-item:last-child .processus-schema #line_red {
  stroke-dasharray: 329;
  stroke-dashoffset: 329;
}
.processus-schema #circle_stroke {
  stroke: #a7a9ac;
  transition: all 0.2s ease-out;
}
.is-active .processus-schema #circle_stroke {
  stroke: #e2645a;
}
.processus-schema #arrow_red {
  opacity: 0;
  transition: opacity 0.2s linear;
}
.is-finished .processus-schema #arrow_red {
  opacity: 1;
}
.processus-schema #txt {
  cursor: pointer;
}
.processus-schema #txt_bg {
  fill: #a7a9ac;
  transition: fill 0.2s linear;
}
.is-finished .processus-schema #txt_bg {
  fill: #c2544f;
}
.processus-subitem {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
@media (max-width: 42.49em) {
  .processus-subitem {
    margin-bottom: 1.4rem;
  }
}
@media (min-width: 42.5em) {
  .processus-subitem {
    position: absolute;
    opacity: 0;
    transform: scale(0.7);
    transition: all 0.2s ease-out;
  }
  .processus-subitem.is-active {
    opacity: 1;
    transform: scale(1);
  }
  .processus-subitem:nth-child(1) {
    left: 60%;
    top: 8%;
  }
  .processus-subitem:nth-child(2) {
    left: 56%;
    top: 36%;
  }
  .processus-subitem:nth-child(3) {
    right: 57%;
    top: 50%;
  }
  .processus-subitem:nth-child(4) {
    right: 60%;
    top: 80%;
  }
}
.processus-subitem-visual {
  position: relative;
  border: 1px solid #e2645a;
  border-radius: 100%;
  box-sizing: content-box;
  padding: 10px;
  padding: 10px;
}
@media (max-width: 42.49em) {
  .processus-subitem-visual {
    padding: 0;
  }
}
.processus-subitem-visual {
  background-color: #FFFFFF;
}
@media (min-width: 42.5em) {
  .processus-subitem:nth-child(1) .processus-subitem-visual {
    -ms-flex-order: 1;
        order: 1;
  }
  .processus-subitem:nth-child(2) .processus-subitem-visual {
    -ms-flex-order: 1;
        order: 1;
  }
  .processus-subitem:nth-child(3) .processus-subitem-visual {
    -ms-flex-order: 2;
        order: 2;
  }
  .processus-subitem:nth-child(4) .processus-subitem-visual {
    -ms-flex-order: 2;
        order: 2;
  }
}
@media (max-width: 42.49em) {
  .processus-subitem-visual {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}
.processus-subitem-visual-img {
  width: 100px;
}
@media (max-width: 42.49em) {
  .processus-subitem-visual-img {
    width: 70px;
  }
}
.processus-subitem-visual-img {
  height: auto;
}
@media (min-width: 42.5em) {
  .processus-subitem:nth-child(1) .processus-subitem-main {
    -ms-flex-order: 2;
        order: 2;
    text-align: left;
  }
  .processus-subitem:nth-child(2) .processus-subitem-main {
    -ms-flex-order: 2;
        order: 2;
    text-align: left;
  }
  .processus-subitem:nth-child(3) .processus-subitem-main {
    -ms-flex-order: 1;
        order: 1;
    text-align: right;
  }
  .processus-subitem:nth-child(4) .processus-subitem-main {
    -ms-flex-order: 1;
        order: 1;
    text-align: right;
  }
}
@media (max-width: 42.49em) {
  .processus-subitem-main {
    text-align: left;
  }
}
.processus-subitem-title {
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  color: #e2645a;
  font-size: 23px;
}
@media (min-width: 42.5em) {
  .processus-subitem-title {
    white-space: nowrap;
  }
  .processus-subitem:nth-child(1) .processus-subitem-title {
    padding-left: 20px;
  }
  .processus-subitem:nth-child(2) .processus-subitem-title {
    padding-left: 20px;
  }
  .processus-subitem:nth-child(3) .processus-subitem-title {
    padding-right: 20px;
  }
  .processus-subitem:nth-child(4) .processus-subitem-title {
    padding-right: 20px;
  }
}
@media (max-width: 42.49em) {
  .processus-subitem-title {
    padding-left: 10px;
    line-height: 22px;
    margin-bottom: 5px;
  }
}
.processus-subitem-description {
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  color: #FFFFFF;
  font-size: 17px;
}
@media (max-width: 42.49em) {
  .processus-subitem-description {
    font-size: 15px;
  }
}
.processus-subitem-description {
  background-color: #e2645a;
}
@media (min-width: 42.5em) {
  .processus-subitem:nth-child(1) .processus-subitem-description {
    padding: 5px 20px 5px calc(20px + 40px);
    margin: 0 0 0 -40px;
  }
  .processus-subitem:nth-child(2) .processus-subitem-description {
    padding: 5px 20px 5px calc(20px + 40px);
    margin: 0 0 0 -40px;
  }
  .processus-subitem:nth-child(3) .processus-subitem-description {
    padding: 5px calc(20px + 40px) 5px 20px;
    margin: 0 -40px 0 0;
  }
  .processus-subitem:nth-child(4) .processus-subitem-description {
    padding: 5px calc(20px + 40px) 5px 20px;
    margin: 0 -40px 0 0;
  }
}
@media (max-width: 42.49em) {
  .processus-subitem-description {
    padding: 5px 20px 5px calc(10px + 40px);
    margin: 0 0 0 -40px;
  }
}

@media (max-width: 42.49em) {
  .processusv1 {
    display: none;
  }
}
.processusv1 {
  margin-bottom: 14.3rem;
}
.processusv1-inner {
  padding: 0 50px;
}
.processusv1-title {
  font-size: 32px;
  color: #e2645a;
  text-transform: uppercase;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
  margin-bottom: 3.6rem;
}
.processusv1-nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
  z-index: 1;
}
.processusv1-nav-item {
  position: relative;
  -ms-flex: 1;
      flex: 1;
  margin-left: -4%;
}
.processusv1-nav-item:first-child {
  margin-left: -7%;
}
.processusv1-nav-item:last-child {
  margin-right: -4%;
}
.processusv1-nav-item-title {
  font-size: 25px;
  color: #e2645a;
  position: absolute;
  left: 15%;
  bottom: 0;
  opacity: 0;
  transition: all 0.2s linear;
}
.processusv1-nav-item.active .processusv1-nav-item-title {
  opacity: 1;
}
.processusv1-nav-item svg {
  width: 100%;
  height: 100%;
}
.processusv1-nav-item #bgred #line {
  stroke-dasharray: 162;
  stroke-dashoffset: 162;
  transition: stroke-dashoffset 0.5s linear;
}
.processusv1-nav-item #bgred #path {
  stroke-dasharray: 309;
  stroke-dashoffset: 309;
  transition: stroke-dashoffset 0.5s linear;
}
.processusv1-nav-item #bgred #polygon {
  opacity: 0;
  transition: opacity 0.1s linear;
  transition-delay: 0;
}
.processusv1-nav-item #layout #circle {
  transform-origin: center center;
  transition: stroke 0.2s linear, transform 0.2s cubic-bezier(0, 0, 0.76, 1.51);
  stroke: #3C3C3B;
  stroke-width: 3;
  stroke-miterlimit: 10;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.processusv1-nav-item #layout #line {
  stroke-dasharray: 112;
  stroke-dashoffset: 112;
  stroke: #3C3C3B;
  transition: all 0.2s linear;
}
.processusv1-nav-item #layout #path1, .processusv1-nav-item #layout #path2 {
  stroke: #3C3C3B;
  transition: all 0.2s linear;
  stroke-miterlimit: 10;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.processusv1-nav-item #finalcircle #circle {
  transform-origin: center center;
  fill: #a7a9ac;
  transition: fill 0.3s ease, transform 0.3s cubic-bezier(0, 0, 0.76, 1.51);
}
.processusv1-nav-item #finalcircle #txt {
  opacity: 0;
  transition: opacity 0.05s linear;
}
.processusv1-nav-item #txt g {
  opacity: 0;
  transition: opacity 0.05s linear;
}
.processusv1-nav-item #txt g:nth-child(1) {
  transition-delay: 0.3s;
}
.processusv1-nav-item #txt g:nth-child(2) {
  transition-delay: 0.2s;
}
.processusv1-nav-item #txt g:nth-child(3) {
  transition-delay: 0.1s;
}
.processusv1-nav-item #txt g:nth-child(4) {
  transition-delay: 0s;
}
.processusv1-nav-item:hover {
  cursor: pointer;
}
.processusv1-nav-item:hover #layout #circle {
  stroke: #c2544f;
}
.processusv1-nav-item:hover #layout #path1, .processusv1-nav-item:hover #layout #path2 {
  stroke: #c2544f;
}
.processusv1-nav-item.active #bgred #path {
  stroke-dashoffset: 0;
}
.processusv1-nav-item.active #bgred #line {
  stroke-dashoffset: 0;
}
.processusv1-nav-item.active #bgred #polygon {
  opacity: 1;
  transition-delay: 0.4s;
}
.processusv1-nav-item.active #layout #circle {
  animation: scale 0.2s cubic-bezier(0, 0, 0.76, 1.51) forwards;
  stroke: #c2544f;
}
.processusv1-nav-item.active #layout #path1, .processusv1-nav-item.active #layout #path2 {
  stroke: #c2544f;
}
.processusv1-nav-item.active #finalcircle #circle {
  fill: #c2544f;
  transition-delay: 0.45s;
}
.processusv1-nav-item.active #finalcircle #txt {
  opacity: 1;
  transition-delay: 0.45s;
}
.processusv1-nav-item.active #txt g {
  opacity: 1;
}
.processusv1-nav-item.active #txt g:nth-child(1) {
  transition-delay: 0s;
}
.processusv1-nav-item.active #txt g:nth-child(2) {
  transition-delay: 0.1s;
}
.processusv1-nav-item.active #txt g:nth-child(3) {
  transition-delay: 0.2s;
}
.processusv1-nav-item.active #txt g:nth-child(4) {
  transition-delay: 0.3s;
}
.processusv1-nav-item.active #layout #line {
  stroke-dashoffset: 0;
  stroke: #c2544f;
}

.projectPreview {
  position: relative;
  overflow: hidden;
}
.projectPreview::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #4a4a4a;
  opacity: 0.45;
  transition: opacity 0.3s linear;
  z-index: 2;
}
.projectPreview:hover::before {
  opacity: 0.1;
}
.projectPreview-visual {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  transition: transform 0.1s linear;
  transform: matrix(1.005, 0, 0, 1.005, 0, 0);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}
.projectPreview:hover .projectPreview-visual-img {
  transform: matrix(1.1, 0, 0, 1.1, 0, 0);
}
.projectPreview-visual-img {
  height: 100%;
  transition: transform 0.3s ease-out;
}
.projectPreview-link {
  position: relative;
  z-index: 3;
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  padding: 1.4rem;
}
.projectPreview-external {
  position: absolute;
  right: 20px;
  top: 20px;
}
.projectPreview-external .icon {
  fill: #FFFFFF;
  width: 1.4rem;
  height: 1.4rem;
}
.projectPreview-title {
  font-size: 32px;
  color: #FFFFFF;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  text-align: center;
}
@media (max-width: 42.49em) {
  .projectPreview-title {
    line-height: 3.6rem;
  }
}
@media (max-width: 42.49em) {
  .projectPreview-title {
    margin-bottom: 1.4rem;
  }
}
.projectPreview-title {
  transition: opacity 0.1s ease-out;
}
.projectPreview:hover .projectPreview-title {
  opacity: 0;
}
.projectPreview-subtitle {
  font-size: 17px;
  color: #FFFFFF;
  text-align: center;
  transition: opacity 0.1s ease-out;
}
.projectPreview:hover .projectPreview-subtitle {
  opacity: 0;
}
.projectPreview-year {
  position: absolute;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  font-size: 17px;
  color: #FFFFFF;
  text-align: center;
  transition: opacity 0.1s ease-out;
}
.projectPreview:hover .projectPreview-year {
  opacity: 0;
}

.sphereLightbox {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.sphereLightbox-visual {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  width: 50%;
}
.sphereLightbox-visual img {
  max-width: 100%;
}
.sphereLightbox-title {
  color: #e2645a;
  font-size: 32px;
  font-weight: 500;
  text-align: center;
}
.sphereLightbox-subtitle {
  color: #a7a9ac;
  font-size: 25px;
  font-weight: 500;
  text-align: center;
  margin-bottom: 1.4rem;
}
.sphereLightbox-intro {
  font-size: 23px;
  font-weight: 500;
  text-align: center;
  margin-bottom: 1.4rem;
}
.sphereLightbox-content {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.4rem;
}
.sphereLightbox-content h2 {
  font-size: 25px;
  margin-bottom: 1.4rem;
}
.sphereLightbox-content p {
  font-size: 23px;
  color: #3C3C3B;
  margin-bottom: 1.4rem;
}
.sphereLightbox-content a {
  color: orange;
  text-decoration: underline;
}
.sphereLightbox-content a:hover {
  color: #e2645a;
}
.sphereLightbox-content ul, .sphereLightbox-content ol {
  margin-bottom: 1.4rem;
}
.sphereLightbox-content ul li, .sphereLightbox-content ol li {
  font-size: 23px;
  color: #3C3C3B;
  margin-left: 1.4rem;
}
.sphereLightbox-content ul li {
  list-style: disc outside;
}
.sphereLightbox-content ol li {
  list-style: decimal outside;
}
.sphereLightbox-content .gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.sphereLightbox-content .gallery-item {
  margin-right: 0.7rem;
  margin-bottom: 0.7rem;
}
.sphereLightbox-content .gallery-item:hover {
  opacity: 0.7;
}
.sphereLightbox-content .gallery-item a, .sphereLightbox-content .gallery-item img {
  display: block;
}
.sphereLightbox-content iframe {
  width: 100%;
  margin: 0.7rem 0;
}
.sphereLightbox-content .aligncenter {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.sphereLightbox-content img {
  max-width: 100%;
  height: auto;
}
.sphereLightbox-content {
  text-align: justify;
  padding: 0;
  margin-bottom: 1.4rem;
}
.sphereLightbox-clients-title {
  color: #e2645a;
  font-size: 25px;
  font-weight: 500;
  text-align: center;
}
.sphereLightbox-clients-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: center;
      justify-content: center;
}
.sphereLightbox-clients-list .client::before {
  content: none;
}

@media (max-width: 42.49em) {
  .spheres {
    display: none;
  }
}
.spheres-inner {
  position: relative;
}
.spheres-nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  position: relative;
  padding: 0 3.6rem;
}
@media (max-width: 63.99em) {
  .spheres-nav {
    margin-bottom: 2.9rem;
  }
}
.spheres-nav-item {
  cursor: pointer;
  -ms-flex: 1 0 0%;
      flex: 1 0 0%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  margin: 2.9rem 0 2.9rem 0;
}
@media (max-width: 63.99em) {
  .spheres-nav-item {
    margin: 0 1.4rem;
  }
}
.spheres-nav-item {
  position: relative;
}
.spheres-nav-item .animIcon-icon {
  position: relative;
  z-index: 2;
  border-radius: 100%;
  transition: all ease 225ms;
  margin-bottom: 0.7rem;
  padding: 30px;
}
@media (max-width: 63.99em) {
  .spheres-nav-item .animIcon-icon {
    padding: 20px;
  }
}
.spheres-nav-item .animIcon-icon .icon {
  position: relative;
  z-index: 2;
  display: block;
  transition: fill ease 225ms;
  width: 50px;
  height: 50px;
}
.spheres-nav-item .animIcon-icon::before {
  display: block;
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%) scale(0.9);
  border: 1px solid;
  opacity: 0;
  border-radius: 100%;
  transition-duration: 225ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
.spheres-nav-item .animIcon-name {
  text-align: center;
  transition: all 0.2s ease;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}
.spheres-nav-item .animIcon-more {
  position: absolute;
  z-index: 3;
  right: 0;
  top: 0;
  padding: 5px;
  background-color: #FFFFFF;
  border-radius: 100%;
  border: 1px solid;
  opacity: 0;
  transition: opacity 0.2s linear;
}
.spheres-nav-item .animIcon-more .icon {
  width: 20px;
  height: 20px;
  display: block;
}
.spheres-nav-item {
  /* INTERACTIONS */
  /* ------------ */
}
.spheres-nav-item:hover .animIcon-icon::before, .spheres-nav-item.is-active .animIcon-icon::before {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.15);
}
.spheres-nav-item:hover .animIcon-name, .spheres-nav-item.is-active .animIcon-name {
  transform: translateY(10px);
}
.spheres-nav-item:hover:not(.is-active) .animIcon-more {
  opacity: 1;
}
.spheres-nav-item .animIcon-icon {
  background-color: #a7a9ac;
}
.spheres-nav-item .animIcon-icon .icon {
  fill: #414042;
}
.spheres-nav-item .animIcon-icon::before {
  border-color: #e2645a;
}
.spheres-nav-item:hover .animIcon-icon, .spheres-nav-item.is-active .animIcon-icon {
  background-color: #e2645a;
}
.spheres-nav-item:hover .animIcon-icon .icon, .spheres-nav-item.is-active .animIcon-icon .icon {
  fill: #8c3335;
}
.spheres-nav-item .animIcon-name {
  color: #414042;
  font-weight: 300;
  font-size: 17px;
  line-height: 1.4rem;
}
.spheres-nav-item .animIcon-more {
  border-color: #e2645a;
}
.spheres-nav-item .animIcon-more .icon {
  fill: #e2645a !important;
}
.spheres-item {
  display: none;
}
.spheres-item-inner {
  display: -ms-flexbox;
  display: flex;
}
.spheres-item-visual {
  margin-right: 1.4rem;
  width: 30%;
  height: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.spheres-item-main {
  padding-right: 4.3rem;
}
.spheres-item-title {
  font-size: 32px;
  color: #e2645a;
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
}
.spheres-item-subtitle {
  font-size: 21px;
  font-weight: 500;
  color: #414042;
  margin-bottom: 0.7rem;
}
.spheres-item-description {
  font-size: 21px;
  font-weight: 500;
  color: #a7a9ac;
  margin-bottom: 1.4rem;
}
.spheres-item-more {
  font-size: 17px;
  font-weight: 500;
  color: #e2645a;
  cursor: pointer;
}
.spheres-item-clients {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.spheres-item-clients .client {
  margin: 0 0 0 0;
}
.spheres-item-clients .client::before {
  content: none;
}
.spheres-item-clients .client-visual {
  width: 7.1rem;
  height: 7.1rem;
}
.spheres-close {
  padding: 10px;
  background: #3C3C3B;
  border-radius: 100%;
  position: absolute;
  bottom: 0;
  right: 2.9rem;
  transform: translate(-50%, 50%);
}
.spheres-close .icon {
  width: 20px;
  height: 20px;
  fill: #FFFFFF;
}

.ie10 {
  width: 100%;
  height: 100%;
  z-index: 99999;
  margin: 0 auto;
  background-color: #e2645a;
  padding: 150px;
  position: fixed;
  top: 0;
  left: 0;
  display: none;
}
.browser-not-compatible .ie10 {
  display: block;
}
.ie10-heading {
  font-size: 50px;
  font-weight: 500;
  color: #FFFFFF;
  text-align: center;
  margin-bottom: 20px;
}
.ie10-description {
  font-size: 23px;
  color: #FFFFFF;
  margin-bottom: 40px;
}
.ie10-browsers {
  margin: 0 auto;
}
.ie10-browser {
  float: left;
  width: 25%;
  padding: 0 5%;
  text-align: center;
}
.ie10-browser-visual {
  width: 100%;
}
.ie10-browser-name {
  font-size: 23px;
  color: #FFFFFF;
  font-weight: 500;
  display: block;
}
.ie10-browser-version {
  font-size: 21px;
  color: #FFFFFF;
  display: block;
}
.ie10-clear {
  clear: both;
}