@charset "UTF-8";
html, body {
  height: 100%; }

html {
  font-family: sans-serif;
  box-sizing: border-box;
  -webkit-background-clip: padding-box;
  /* for Safari */
  background-clip: padding-box;
  /* for IE9+, Firefox 4+, Opera, Chrome */
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-text-stroke: rgba(255, 255, 255, 0.01) 0.1px;
  -webkit-font-smoothing: antialiased;
  -webkit-text-shadow: rgba(255, 255, 255, 0.01) 0 0 1px;
  -moz-osx-font-smoothing: grayscale; }

div {
  line-height: initial; }

* {
  box-sizing: inherit;
  margin: 0;
  padding: 0;
  max-height: 100000px;
  border: 0;
  background: none;
  background-repeat: no-repeat !important;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

*::before, *::after {
  margin: 0;
  padding: 0;
  background-repeat: no-repeat !important;
  box-sizing: inherit; }

/* HTML5 display definitions
   ========================================================================== */
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu,
nav, section, summary {
  display: block; }

audio, canvas, progress, video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden], template {
  display: none; }

/* Links
   ========================================================================== */
a {
  background-color: transparent; }

a:active, a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
abbr[title] {
  border-bottom: 1px dotted; }

b, strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
figure {
  margin: 1em 40px; }

hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
button, input, optgroup, select, textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */ }

button {
  overflow: visible; }

button, select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

button[disabled], html input[disabled] {
  cursor: default; }

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  outline: 0;
  text-indent: 2px;
  line-height: normal;
  -webkit-border-radius: 0px;
  border-radius: 0; }

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

input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="checkbox"], input[type="radio"] {
  box-sizing: border-box;
  /* 1 */ }

input:focus, select:focus, textarea, div {
  outline: none !important; }

input:required {
  box-shadow: none; }

input::-ms-clear, textarea::-ms-clear {
  display: none; }

input::placeholder, textarea::placeholder {
  opacity: 1; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
table {
  border-collapse: collapse;
  border-spacing: 0; }

/* BODY HEIGHT = min VIEW PORT HEIGHT 
   http://community.sitepoint.com/t/100-min-height-viewport/6449/2 
   ========================================================================== */
body:before {
  content: "";
  height: 100%;
  float: left;
  width: 0;
  margin-top: -32767px; }

#body_wrapper::after {
  clear: both;
  content: "";
  display: block;
  height: 1%;
  /*fix IE8*/
  font-size: 0; }

* html #body_wrapper {
  height: 100%; }

/* A RANGER 
   ========================================================================== */
p, li, h1, h2, h3, h4, h5, h6 {
  cursor: default; }

a {
  text-decoration: none;
  display: inline-block; }
  a p, a h1, a h2, a h3, a h4, a h5, a h6 {
    cursor: inherit; }

button p, button h1, button h2, button h3, button h4, button h5, button h6 {
  cursor: inherit; }

a, button {
  outline: 0; }

ul {
  list-style-type: none; }

/* ANIMATION DEFAULT 
   ========================================================================== */
img {
  user-select: none; }

a {
  -webkit-text-stroke: blue; }

nav {
  user-select: none; }

div {
  line-height: 1; }

ul {
  display: inline-block; }

a.no-href {
  cursor: default; }

/* ================================================================================
    VARIABLES  
==================================================================================*/
div, time, div, a, p, input, li, h1, h2, h3, h4, h5, h6 {
  font-family: "Poppins", sans-serif;
  color: #2B2B2B; }

p, h1, h2, h3, h4, h5, h6 {
  line-height: 1.65;
  font-weight: 400;
  letter-spacing: 0.3px;
  word-spacing: 0.5px; }

h1, h2, h3, h4, h5, h6 {
  line-height: 1.2; }

p, h1, h2, h3, h4, h5, h6 {
  user-select: text; }

a, p {
  font-size: 15px; }

.format p, .format li, .format a, .format h1, .format h2, .format h3, .format h4, .format h5, .format h6 {
  color: #b3b3b3; }

.format p {
  font-size: 15px;
  font-weight: 400;
  font-family: "Poppins", sans-serif;
  line-height: 1.75;
  color: #656565;
  letter-spacing: 0px;
  word-spacing: 0px;
  margin: 0;
  margin-top: 0px;
  margin-bottom: 15px; }
  @media (max-width: 1024px) {
    .format p {
      font-size: 15px; } }
  @media (max-width: 639px) {
    .format p {
      font-size: 11px;
      line-height: 1.8;
      margin-bottom: 10px; } }
  .format p span {
    -webkit-text-stroke: #656565; }

.format blockquote {
  padding: 25px 0 25px 20px;
  margin: 0; }
  .format blockquote p {
    font-size: 25px;
    font-weight: 700;
    color: #A30C1A;
    text-align: left;
    margin-bottom: 0;
    line-height: 1.20; }
    .format blockquote p::before {
      content: '“'; }
    .format blockquote p::after {
      content: '„'; }
    @media (max-width: 639px) {
      .format blockquote p {
        font-size: 18px; } }

.format a {
  font-size: 17.5px;
  font-weight: 400;
  font-family: "Poppins", sans-serif;
  color: #A30C1A;
  line-height: 1.75;
  letter-spacing: 0px;
  word-spacing: 0px;
  text-decoration: underline;
  margin-left: 2px;
  margin-right: 2px;
  position: relative; }
  .format a:hover {
    color: #313030; }
  @media (max-width: 1024px) {
    .format a {
      font-size: 16px; } }
  @media (max-width: 639px) {
    .format a {
      font-size: 15px;
      text-align: left !important;
      line-height: 1.65; } }

.format h1 {
  font-size: 42px; }

.format h2 {
  font-size: 36px;
  padding-top: 35px !important;
  margin-bottom: 25px !important; }
  @media (max-width: 639px) {
    .format h2 {
      font-size: 24px;
      margin-bottom: 20px !important; } }

.format h3 {
  font-size: 24px; }
  @media (max-width: 639px) {
    .format h3 {
      font-size: 20px; } }

.format h4 {
  font-size: 18px; }
  @media (max-width: 639px) {
    .format h4 {
      font-size: 16px; } }

.format h5 {
  font-size: 14px; }

.format h6 {
  font-size: 13px; }

.format h1, .format h2, .format h3, .format h4, .format h5, .format h6 {
  font-weight: 700;
  font-family: "Poppins", sans-serif;
  color: #202020;
  line-height: 1.1;
  padding-top: 10px;
  margin-bottom: 25px;
  letter-spacing: 0.5px;
  text-transform: none; }
  .format h1 a, .format h2 a, .format h3 a, .format h4 a, .format h5 a, .format h6 a {
    font-size: inherit; }

.format h5, .format h6 {
  font-weight: 700;
  text-transform: uppercase; }

.format li {
  font-size: 15px;
  font-weight: 400;
  color: #656565;
  line-height: 1.75;
  list-style-type: none;
  text-align: left;
  margin-bottom: 10px;
  vertical-align: top;
  padding-left: 15px;
  position: relative;
  letter-spacing: 0px;
  word-spacing: 0px; }
  @media (max-width: 639px) {
    .format li {
      font-size: 11px;
      line-height: 1.65; } }

.format ul, .format ol {
  padding: 0px 0px 10px 0px;
  display: table; }

.format ul {
  margin-bottom: 6px; }
  .format ul li::before {
    content: '›';
    color: #656565;
    font-weight: 700;
    position: absolute;
    left: 0px;
    top: 0px; }

.format ol {
  margin-left: 0px;
  counter-reset: foo; }
  .format ol li {
    padding-left: 25px;
    counter-increment: foo; }
    .format ol li::before {
      content: counter(foo) ".";
      color: #656565;
      position: absolute;
      left: 0px;
      top: 0px; }

.format hr {
  border-top: 0.5px inset rgba(85, 85, 85, 0.2);
  margin-top: 15px;
  margin-bottom: 25px;
  border-left: none;
  border-bottom: none;
  border-right: none;
  display: inline-block;
  width: 100%;
  height: 1px; }

.format iframe {
  width: 100%;
  height: auto; }

.format p img {
  width: 100%;
  height: auto; }

.format .wp-caption {
  background: #f1f1f1;
  max-width: 100%;
  margin: 10px 0 15px 0px; }
  .format .wp-caption img {
    width: 100%;
    height: auto; }
  .format .wp-caption p {
    font-size: 11px;
    font-style: italic;
    text-align: center;
    margin-bottom: 0;
    color: rgba(0, 0, 0, 0.5);
    line-height: 1;
    padding: 10px 0;
    margin-top: -5px; }
  .format .wp-caption.alignleft {
    float: left;
    width: auto;
    margin: 10px 30px 15px 0; }
  .format .wp-caption.alignright {
    float: right;
    width: auto;
    margin: 10px 0 15px 30px; }
  .format .wp-caption.aligncenter {
    margin: 20px auto 30px;
    display: block; }

.format img.aligncenter {
  display: block;
  margin: 0 auto; }

.format .embed-container {
  margin-bottom: 25px; }

.noscroll {
  overflow: hidden; }
  .noscroll header#header {
    animation-duration: 5s !important; }

.no-href, .no-href * {
  cursor: default !important; }

.flexible .flex {
  display: inline-block;
  width: 100%; }

.bloc-container {
  height: 100%;
  display: flex;
  align-items: center; }

.frame {
  display: flex;
  justify-content: center;
  align-items: center; }
  .frame img {
    width: 100%; }

.image-container, .logo-container, .icon-container {
  position: relative;
  height: 100%; }
  .image-container img, .logo-container img, .icon-container img {
    width: 100%;
    height: auto; }

.image {
  background-position: 50% 50%;
  background-size: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }

.contain {
  background-size: contain;
  background-position: 50% 50%; }

.overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }

.icon {
  display: inline-block;
  width: 100%;
  height: 100%; }

svg {
  height: 100%;
  width: 100%; }

.abs {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%; }

.preload {
  display: none !important; }

.break-word {
  overflow-wrap: break-word;
  display: block; }

.clearfix::before,
.clearfix::after {
  content: "";
  display: block; }

.clearfix::after {
  clear: both; }

*[back-img] {
  opacity: 0; }

*[my-parallax] {
  opacity: 0; }

.cache-left {
  position: relative; }
  .cache-left::before {
    content: "";
    display: inline-block;
    height: 100%;
    width: 2000%;
    position: absolute;
    right: 100%;
    top: 0;
    background: inherit; }

.cache-right, #lightbox_container.calcul, #lightbox_container.contact, #lightbox_container.devis-part, #lightbox_container.devis-pro {
  position: relative; }
  .cache-right::before, #lightbox_container.calcul::before, #lightbox_container.contact::before, #lightbox_container.devis-part::before, #lightbox_container.devis-pro::before {
    content: "";
    display: inline-block;
    height: 100%;
    width: 2000%;
    position: absolute;
    left: 100%;
    top: 0;
    background: inherit; }

.cache-bottom-left, .cache-left-bottom {
  position: relative; }
  .cache-bottom-left::after, .cache-left-bottom::after {
    content: "";
    display: inline-block;
    height: 10000%;
    width: 2000%;
    position: absolute;
    right: 0;
    top: 100%;
    background: inherit; }

.cache-bottom-and-left, .cache-left-and-bottom {
  position: relative; }
  .cache-bottom-and-left::before, .cache-left-and-bottom::before {
    content: "";
    display: inline-block;
    height: 10000%;
    width: 2000%;
    position: absolute;
    right: 0;
    top: 0%;
    background: inherit; }

.cache-bottom {
  position: relative; }
  .cache-bottom::after {
    content: "";
    display: inline-block;
    height: 10000%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 100%;
    background: inherit; }

.cache-bottom-right, .cache-right-bottom {
  position: relative; }
  .cache-bottom-right::after, .cache-right-bottom::after {
    content: "";
    display: inline-block;
    height: 10000%;
    width: 2000%;
    position: absolute;
    left: 0%;
    top: 100%;
    background: inherit; }

.block {
  display: block !important; }

.laptop-on, .l-on {
  display: none !important; }
  @media (max-width: 1367px) {
    .laptop-on, .l-on {
      display: inline-block !important; } }

@media (max-width: 1367px) {
  .laptop-off, .l-off {
    display: none !important; } }

.tablet-on, .t-on {
  display: none !important; }
  @media (max-width: 1226px) {
    .tablet-on, .t-on {
      display: inline-block !important; } }

@media (max-width: 1226px) {
  .tablet-off, .t-off {
    display: none !important; } }

.td-on {
  display: none !important; }
  @media (max-width: 1024px) {
    .td-on {
      display: inline-block !important; } }

@media (max-width: 1024px) {
  .td-off {
    display: none !important; } }

.tp-on {
  display: none !important; }
  @media (max-width: 768px) {
    .tp-on {
      display: inline-block !important; } }

@media (max-width: 768px) {
  .tp-off {
    display: none !important; } }

.mobile-on, .m-on {
  display: none !important; }
  @media (max-width: 639px) {
    .mobile-on, .m-on {
      display: inline-block !important; } }

@media (max-width: 639px) {
  .mobile-off, .m-off {
    display: none !important; } }

.sm-on {
  display: none !important; }
  @media (max-width: 374px) {
    .sm-on {
      display: inline-block !important; } }

@media (max-width: 374px) {
  .sm-off {
    display: none !important; } }

@media (max-width: 1226px) {
  .tablet-paddings {
    padding-left: 8% !important;
    padding-right: 8% !important; } }

@media (max-width: 639px) {
  .tablet-paddings {
    padding-left: 8% !important;
    padding-right: 8% !important; } }

@media (max-width: 639px) {
  .mobile-paddings {
    padding-left: 8% !important;
    padding-right: 8% !important; } }

@media (max-width: 1226px) {
  .tablet-paddings-off {
    padding-left: 0;
    padding-right: 0; } }

.paddings {
  padding: 0 70px; }
  @media (max-width: 1226px) {
    .paddings {
      padding-left: 8%;
      padding-right: 8%; } }
  @media (max-width: 639px) {
    .paddings {
      padding-left: 8%;
      padding-right: 8%; } }

* [outFade].go {
  transition: opacity 0.5s, transform 0.5s;
  opacity: 0;
  transform: translate3d(0, 5px, 0); }

* [outLeft].go {
  transition: opacity 0.5s, transform 0.5s;
  opacity: 0;
  transform: translate3d(-10px, 0px, 0); }

* [outRight].go {
  transition: opacity 0.5s, transform 0.5s;
  opacity: 0;
  transform: translate3d(10px, 0px, 0); }

html {
  overflow-x: hidden;
  overflow-y: scroll;
  position: relative;
  background: #F0F0F0; }

#body_wrapper {
  background: #F0F0F0;
  width: 100%;
  min-height: 100%;
  overflow: hidden;
  position: relative; }

#main {
  position: relative;
  overflow: hidden;
  z-index: 10;
  margin-top: -3px; }

.page-overlay {
  position: fixed;
  top: 148px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 200;
  height: 100%;
  text-indent: -9999px;
  overflow: hidden;
  display: none;
  background: #000;
  opacity: 0;
  transition: opacity 0.3s;
  will-change: opacity;
  animation-fill-mode: both !important; }
  .page-overlay.active {
    display: block;
    animation: fade_80 0.3s; }
  .page-overlay.remove-active {
    display: block;
    animation: fadeOut_80_hide 0.3s; }

.banner {
  display: inline-block;
  width: 100%;
  clear: both;
  position: relative; }

.banner-content {
  max-width: 1224px;
  padding: 0 70px;
  margin: 0 auto;
  height: 100%;
  transition: max-width 1s;
  position: relative; }
  @media (max-width: 1024px) {
    .banner-content {
      padding-left: 8%;
      padding-right: 8%; } }
  @media (max-width: 639px) {
    .banner-content {
      padding-left: 8%;
      padding-right: 8%; } }

.content {
  width: 100%;
  height: 100%;
  position: relative;
  display: inline-block; }

.inside {
  width: 100%;
  height: 100%;
  position: relative;
  display: inline-block; }

.col {
  width: 50%;
  float: left; }
  .col.left {
    float: left; }
  .col.right {
    float: right; }

.col-left {
  display: inline-block;
  width: 36.5%;
  float: left; }

.col-right {
  display: inline-block;
  width: 63.5%;
  float: right; }

@keyframes fade_left_menu_l1 {
  0% {
    opacity: 0;
    letter-spacing: 2px; }
  10% {
    opacity: 0; }
  10% {
    transform: translate3d(50px, 0px, 0px); }
  20% {
    opacity: 0; }
  55% {
    transform: translate3d(0px, 0px, 0px); }
  80% {
    letter-spacing: 1px; }
  100% {
    opacity: 1; } }

@keyframes fade_left_menu_l2_p {
  0% {
    opacity: 0; }
  10% {
    transform: translate3d(50px, 0px, 0px); }
  55% {
    transform: translate3d(0px, 0px, 0px); }
  100% {
    opacity: 1; } }

@keyframes fade_left_menu_l3_p {
  0% {
    opacity: 0; }
  10% {
    transform: translate3d(50px, 0px, 0px); }
  55% {
    transform: translate3d(0px, 0px, 0px); }
  100% {
    opacity: 1; } }

@keyframes fade_scale {
  0% {
    opacity: 0;
    transform: scale(0); }
  10% {
    opacity: 0; }
  50% {
    transform: scale(1); }
  100% {
    opacity: 1; } }

@keyframes fade_scale_80 {
  0% {
    opacity: 0;
    transform: scale(0.8); }
  10% {
    opacity: 0; }
  70% {
    transform: scale(1); }
  100% {
    opacity: 1; } }

@keyframes fade_scale_90 {
  0% {
    opacity: 0;
    transform: scale(0.9); }
  10% {
    opacity: 0; }
  70% {
    transform: scale(1); }
  100% {
    opacity: 1; } }

@keyframes fade_scale_95 {
  0% {
    opacity: 0;
    transform: scale(0.95); }
  10% {
    opacity: 0; }
  70% {
    transform: scale(1); }
  100% {
    opacity: 1; } }

@keyframes fade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fade_95 {
  0% {
    opacity: 0; }
  100% {
    opacity: 0.95; } }

@keyframes fade_90 {
  0% {
    opacity: 0; }
  100% {
    opacity: 0.9; } }

@keyframes fade_80 {
  0% {
    opacity: 0; }
  100% {
    opacity: 0.8; } }

@keyframes fade_70 {
  0% {
    opacity: 0; }
  100% {
    opacity: 0.7; } }

@keyframes fade_60 {
  0% {
    opacity: 0; }
  100% {
    opacity: 0.6; } }

@keyframes fade_50 {
  0% {
    opacity: 0; }
  100% {
    opacity: 0.5; } }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes fadeOut_hide {
  0% {
    opacity: 1; }
  99% {
    opacity: 0;
    height: 100%; }
  100% {
    height: 0; } }

@keyframes fadeOut_50_hide {
  0% {
    opacity: 0.5; }
  99% {
    opacity: 0;
    height: 100%; }
  100% {
    height: 0; } }

@keyframes fadeOut_60_hide {
  0% {
    opacity: 0.6; }
  99% {
    opacity: 0;
    height: 100%; }
  100% {
    height: 0; } }

@keyframes fadeOut_70_hide {
  0% {
    opacity: 0.7; }
  99% {
    opacity: 0;
    height: 100%; }
  100% {
    height: 0; } }

@keyframes fadeOut_80_hide {
  0% {
    opacity: 0.8; }
  99% {
    opacity: 0;
    height: 100%; }
  100% {
    height: 0; } }

@keyframes fadeOut_90_hide {
  0% {
    opacity: 0.9; }
  99% {
    opacity: 0;
    height: 100%; }
  100% {
    height: 0; } }

@keyframes fadeOut_95_hide {
  0% {
    opacity: 0.95; }
  99% {
    opacity: 0;
    height: 100%; }
  100% {
    height: 0; } }

@keyframes grow {
  0% {
    height: 0; }
  100% {
    height: 100%; } }

@keyframes scale {
  0% {
    transform: scale(0);
    opacity: 0; }
  100% {
    transform: scale(1);
    opacity: 1; } }

@keyframes scale_50 {
  0% {
    transform: scale(0.5);
    opacity: 0; }
  100% {
    transform: scale(1);
    opacity: 1; } }

@keyframes scale_80 {
  0% {
    transform: scale(0.8);
    opacity: 0; }
  100% {
    transform: scale(1);
    opacity: 1; } }

@keyframes scale_90 {
  0% {
    transform: scale(0.9);
    opacity: 0; }
  100% {
    transform: scale(1);
    opacity: 1; } }

@keyframes scale_95 {
  0% {
    transform: scale(0.95);
    opacity: 0; }
  100% {
    transform: scale(1);
    opacity: 1; } }

@keyframes move_left {
  0% {
    transform: translate3d(100px, 0px, 0px); }
  100% {
    transform: translate3d(0px, 0px, 0px); } }

@keyframes move_up_15 {
  0% {
    transform: translateY(15px); }
  100% {
    transform: translateY(0px); } }

@keyframes move_up_10 {
  0% {
    transform: translateY(10px); }
  100% {
    transform: translateY(0px); } }

@keyframes move_up_5 {
  0% {
    transform: translateY(5px); }
  100% {
    transform: translateY(0px); } }

@keyframes fade_move {
  0% {
    opacity: 0;
    transform: translateY(15px); }
  100% {
    opacity: 1;
    transform: translateY(0px); } }

*[when-visible="fade"],
*[when-visible="fade_late"],
*[when-visible="scale"],
*[when-visible="up"],
*[when-visible="down"],
*[when-visible="left"],
*[when-visible="right"],
*[when-visible="width"],
*[when-visible="discover"],
*[when-visible="custom"] {
  opacity: 0;
  animation-fill-mode: both; }

.not-visible {
  opacity: 0; }

.fade-in-when-visible {
  transition: opacity 1s;
  opacity: 1; }

@keyframes wv_scale {
  0% {
    transform: scale(0.75); }
  100% {
    transform: scale(1); } }

.scale-in-when-visible {
  animation-duration: 0.9s;
  animation-name: wv_scale;
  transition: opacity 1s;
  opacity: 1; }

@keyframes wv_up {
  0% {
    transform: translate3d(0, 10px, 0); }
  100% {
    transform: translate3d(0, 0px, 0) scale(0.999); } }

.up-when-visible {
  animation-duration: 2s;
  animation-name: wv_up;
  transition: opacity 1s;
  opacity: 1; }

@keyframes wv_down {
  0% {
    transform: translate3d(0, -10px, 0); }
  100% {
    transform: translate3d(0, 0px, 0) scale(0.999); } }

.down-when-visible {
  animation-duration: 2s;
  animation-name: wv_down;
  transition: opacity 1s;
  opacity: 1; }

@keyframes wv_left {
  0% {
    transform: translate3d(10px, 0px, 0); }
  100% {
    transform: translate3d(0, 0px, 0) scale(0.999); } }

.left-when-visible {
  animation-duration: 2s;
  animation-name: wv_left;
  transition: opacity 1s;
  opacity: 1; }

@keyframes wv_right {
  0% {
    transform: translate3d(-10px, 0px, 0); }
  100% {
    transform: translate3d(0, 0px, 0) scale(0.999); } }

.right-when-visible {
  animation-duration: 2s;
  animation-name: wv_right;
  transition: opacity 1s;
  opacity: 1; }

@keyframes wv_width {
  0% {
    width: 0; }
  100% {
    width: 100%; } }

.width-when-visible {
  animation-duration: 1s;
  animation-name: wv_width;
  transition: opacity 1s;
  opacity: 1; }

@keyframes wv_discover {
  0% {
    transform: translate3d(-100%, 0, 0);
    opacity: 1; }
  100% {
    transform: translate3d(0%, 0, 0);
    opacity: 1; } }

.discover-when-visible {
  animation-duration: 1s;
  animation-name: wv_discover; }

#loading_bar {
  height: 3px;
  width: 0%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10000;
  transition: width 2s;
  background: rgba(163, 12, 26, 0.9); }
  @media (max-width: 1226px) {
    #loading_bar {
      background: rgba(255, 255, 255, 0.7); } }

.loader {
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  text-align: center;
  height: 100%; }
  .loader .loader-content {
    height: 100%;
    width: 100%;
    animation: fade 2s; }

@keyframes loader_rotate {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
  .loader .loader-circle, .loader .loader-line-mask {
    position: absolute;
    left: calc(50% - 60px);
    height: 120px; }
    @media (max-width: 639px) {
      .loader .loader-circle, .loader .loader-line-mask {
        left: calc(50% - 50px);
        height: 100px; } }
  .loader .loader-circle {
    width: 120px;
    border-radius: 50%; }
    @media (max-width: 639px) {
      .loader .loader-circle {
        width: 100px; } }
  .loader .loader-line-mask {
    width: 60px;
    overflow: hidden;
    transform-origin: 60px 60px;
    animation: loader_rotate 1.2s infinite linear; }
    @media (max-width: 639px) {
      .loader .loader-line-mask {
        width: 50px;
        transform-origin: 50px 50px; } }
  .loader .loader-line-mask .loader-line {
    width: 120px;
    height: 120px;
    border-radius: 50%; }
    @media (max-width: 639px) {
      .loader .loader-line-mask .loader-line {
        width: 100px;
        height: 100px; } }

.loader-white .loader-circle, .loader-white .loader-line-mask {
  top: calc(50% - 60px); }
  @media (max-width: 639px) {
    .loader-white .loader-circle, .loader-white .loader-line-mask {
      top: calc(50% - 50px); } }

.loader-white .loader-circle {
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08); }

.loader-white .loader-line-mask {
  mask-image: -webkit-linear-gradient(top, #000000, rgba(255, 255, 255, 0.08)); }

.loader-white .loader-line-mask .loader-line {
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.16); }

.loader-grey .loader-circle, .loader-grey .loader-line-mask {
  top: calc(50% - 60px); }
  @media (max-width: 639px) {
    .loader-grey .loader-circle, .loader-grey .loader-line-mask {
      top: calc(50% - 50px); } }

.loader-grey .loader-circle {
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.05); }

.loader-grey .loader-line-mask {
  mask-image: -webkit-linear-gradient(top, #000000, rgba(0, 0, 0, 0.05)); }

.loader-grey .loader-line-mask .loader-line {
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1); }

.spinner {
  width: 20px;
  height: 20px;
  top: 50%;
  transform: translate(0, -50%);
  right: 25px;
  position: absolute;
  display: inline-block;
  overflow: visible; }

.double-bounce1, .double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #fff;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
  animation: sk-bounce 2.0s infinite ease-in-out; }

.double-bounce2 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s; }

@-webkit-keyframes sk-bounce {
  0%, 100% {
    -webkit-transform: scale(0); }
  50% {
    -webkit-transform: scale(1); } }

@keyframes sk-bounce {
  0%, 100% {
    transform: scale(0);
    -webkit-transform: scale(0); }
  50% {
    transform: scale(1);
    -webkit-transform: scale(1); } }

#wpadminbar {
  background: rgba(35, 40, 45, 0.95) !important;
  width: auto !important;
  min-width: 0px !important;
  padding-right: 10px;
  border-bottom-right-radius: 13px; }
  #wpadminbar:hover {
    background: rgba(35, 40, 45, 0.95) !important; }
  #wpadminbar #wp-admin-bar-root-default > li a::before {
    transition: none !important; }
  #wpadminbar #wp-admin-bar-root-default > li.hover a {
    color: #eee !important; }
  #wpadminbar #wp-admin-bar-root-default > li.hover a::before {
    color: rgba(240, 245, 250, 0.6) !important; }
  #wpadminbar #wp-admin-bar-root-default > li a:hover, #wpadminbar #wp-admin-bar-root-default > li a:hover::before {
    color: #00b9eb !important; }
  #wpadminbar #wp-toolbar, #wpadminbar #wp-admin-bar-root-default {
    height: 100%; }
  #wpadminbar .ab-sub-wrapper,
  #wpadminbar #wp-admin-bar-new_draft,
  #wpadminbar #wp-admin-bar-top-secondary {
    display: none !important; }
  #wpadminbar .ab-sub-wrapper,
  #wpadminbar #wp-admin-bar-all-in-one-seo-pack,
  #wpadminbar #wp-admin-bar-search {
    display: none; }
  #wpadminbar #wp-admin-bar-site-name a::before {
    top: 3px !important; }
    @media (max-width: 639px) {
      #wpadminbar #wp-admin-bar-site-name a::before {
        top: 7px !important; } }
  #wpadminbar #wp-admin-bar-my-log-out {
    margin-left: 7px; }
    #wpadminbar #wp-admin-bar-my-log-out a.ab-item {
      position: relative; }
      #wpadminbar #wp-admin-bar-my-log-out a.ab-item img {
        display: none;
        height: 16px;
        position: absolute;
        top: 8px;
        right: 0px; }
      #wpadminbar #wp-admin-bar-my-log-out a.ab-item::before {
        top: 3px;
        left: 2px;
        content: "\f242" !important;
        transform: scale(0.9); }

#date-picker.ng-untouched,
#date_picker.ng-untouched {
  color: transparent !important; }

.date.container .clearfix {
  *zoom: 1; }

.date.container .clearfix:before,
.date.container .clearfix:after {
  display: table;
  content: "";
  line-height: 0; }

.date.container .clearfix:after {
  clear: both; }

.date.container .hide-text {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.date.container .input-block-level {
  display: block;
  width: 100%;
  min-height: 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.date.container .date-picker-date-time {
  position: absolute; }

.date.container .date-range .date-picker-date-time {
  position: inherit; }

.date.container [date-picker-wrapper] {
  position: absolute;
  min-width: 220px;
  z-index: 10;
  display: block;
  font-size: 14px; }

.date.container [date-time-append] [date-picker-wrapper] [date-picker] {
  margin-top: -30px; }

.date.container [date-time-append] [date-picker] {
  position: relative;
  margin-right: -1000px;
  margin-bottom: -1000px; }

.date.container [date-range] [date-picker] .after.before {
  color: #ffffff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  background-color: #499dcd;
  background-image: -moz-linear-gradient(top, #5bc0de, #2f6ab4);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f6ab4));
  background-image: -webkit-linear-gradient(top, #5bc0de, #2f6ab4);
  background-image: -o-linear-gradient(top, #5bc0de, #2f6ab4);
  background-image: linear-gradient(to bottom, #5bc0de, #2f6ab4);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2f6ab4', GradientType=0);
  border-color: #2f6ab4 #2f6ab4 #1f4677;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  *background-color: #2f6ab4;
  /* Darken IE7 buttons by default so they stand out more given they won't have borders */
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); }

.date.container [date-range] [date-picker] .after.before:hover,
.date.container [date-range] [date-picker] .after.before:active,
.date.container [date-range] [date-picker] .after.before.active,
.date.container [date-range] [date-picker] .after.before.disabled,
.date.container [date-range] [date-picker] .after.before[disabled] {
  color: #ffffff;
  background-color: #2f6ab4;
  *background-color: #2a5ea0; }

.date.container [date-range] [date-picker] .after.before:active,
.date.container [date-range] [date-picker] .after.before.active {
  background-color: #24528c \9; }

.date.container [date-picker].hidden {
  display: none; }

.date.container [date-picker] {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background-color: #fff;
  /* GENERAL */
  padding: 4px;
  /* SPECIFIC */ }

.date.container [date-picker] table {
  margin: 0; }

.date.container [date-picker] td,
.date.container [date-picker] th {
  padding: 4px 5px;
  text-align: center;
  width: 20px;
  height: 20px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  border: none; }

.date.container [date-picker] .switch {
  width: 145px; }

.date.container [date-picker] span {
  display: block;
  width: 23%;
  height: 26px;
  line-height: 25px;
  float: left;
  margin: 1%;
  cursor: pointer;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

.date.container [date-picker] span:hover {
  background: #eeeeee; }

.date.container [date-picker] span.disabled,
.date.container [date-picker] span.disabled:hover {
  background: none;
  color: #999999;
  cursor: default; }

.date.container [date-picker] .active,
.date.container [date-picker] .now {
  color: #ffffff;
  background-color: #006dcc;
  background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
  background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
  background-image: -o-linear-gradient(top, #0088cc, #0044cc);
  background-image: linear-gradient(to bottom, #0088cc, #0044cc);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0);
  border-color: #0044cc #0044cc #002a80;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  *background-color: #0044cc;
  /* Darken IE7 buttons by default so they stand out more given they won't have borders */
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); }

.date.container [date-picker] .active:hover,
.date.container [date-picker] .now:hover,
.date.container [date-picker] .active:active,
.date.container [date-picker] .now:active,
.date.container [date-picker] .active.active,
.date.container [date-picker] .now.active,
.date.container [date-picker] .active.disabled,
.date.container [date-picker] .now.disabled,
.date.container [date-picker] .active[disabled],
.date.container [date-picker] .now[disabled] {
  color: #ffffff;
  background-color: #0044cc;
  *background-color: #003bb3; }

.date.container [date-picker] .active:active,
.date.container [date-picker] .now:active,
.date.container [date-picker] .active.active,
.date.container [date-picker] .now.active {
  background-color: #003399 \9; }

.date.container [date-picker] .now {
  color: #ffffff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  background-color: #ee735b;
  background-image: -moz-linear-gradient(top, #ee5f5b, #ee905b);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#ee905b));
  background-image: -webkit-linear-gradient(top, #ee5f5b, #ee905b);
  background-image: -o-linear-gradient(top, #ee5f5b, #ee905b);
  background-image: linear-gradient(to bottom, #ee5f5b, #ee905b);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffee905b', GradientType=0);
  border-color: #ee905b #ee905b #e56218;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  *background-color: #ee905b;
  /* Darken IE7 buttons by default so they stand out more given they won't have borders */
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); }

.date.container [date-picker] .now:hover,
.date.container [date-picker] .now:active,
.date.container [date-picker] .now.active,
.date.container [date-picker] .now.disabled,
.date.container [date-picker] .now[disabled] {
  color: #ffffff;
  background-color: #ee905b;
  *background-color: #ec8044; }

.date.container [date-picker] .now:active,
.date.container [date-picker] .now.active {
  background-color: #e9712d \9; }

.date.container [date-picker] .disabled {
  background: none;
  color: #999999 !important;
  cursor: default; }

.date.container [date-picker] [ng-switch-when="year"] span,
.date.container [date-picker] [ng-switch-when="month"] span,
.date.container [date-picker] [ng-switch-when="minutes"] span {
  height: 54px;
  line-height: 54px; }

.date.container [date-picker] [ng-switch-when="date"] td {
  padding: 0; }

.date.container [date-picker] [ng-switch-when="date"] span {
  width: 100%;
  height: 26px;
  line-height: 26px; }

.date.container [date-picker] th:hover,
.date.container [date-picker] [ng-switch-when="date"] td span:hover {
  background: #eeeeee;
  cursor: pointer; }

.ps {
  position: relative;
  -ms-touch-action: none; }

.ps__rail-y {
  left: auto !important;
  right: 0px !important;
  width: 8px !important; }
  .ps__rail-y:hover {
    cursor: pointer; }
  .ps__rail-y .ps__thumb-y {
    right: 0px !important;
    width: 8px !important;
    background-color: rgba(255, 255, 255, 0.6) !important; }

.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
  background-color: rgba(255, 255, 255, 0.2) !important; }

/*
 * Container style
 */
.ps {
  overflow: hidden !important;
  overflow-anchor: none;
  -ms-overflow-style: none;
  touch-action: auto;
  -ms-touch-action: auto; }

/*
 * Scrollbar rail styles
 */
.ps__rail-x {
  display: none;
  opacity: 0;
  transition: background-color .2s linear, opacity .2s linear;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  height: 15px;
  /* there must be 'bottom' or 'top' for ps__rail-x */
  bottom: 0px;
  /* please don't change 'position' */
  position: absolute; }

.ps__rail-y {
  display: none;
  opacity: 0;
  transition: background-color .2s linear, opacity .2s linear;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  width: 15px;
  /* there must be 'right' or 'left' for ps__rail-y */
  right: 0;
  /* please don't change 'position' */
  position: absolute; }

.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
  display: block;
  background-color: transparent; }

.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.6; }

.ps .ps__rail-x:hover,
.ps .ps__rail-y:hover,
.ps .ps__rail-x:focus,
.ps .ps__rail-y:focus,
.ps .ps__rail-x.ps--clicking,
.ps .ps__rail-y.ps--clicking {
  background-color: #eee;
  opacity: 0.9; }

/*
 * Scrollbar thumb styles
 */
.ps__thumb-x {
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color .2s linear, height .2s ease-in-out;
  -webkit-transition: background-color .2s linear, height .2s ease-in-out;
  height: 6px;
  /* there must be 'bottom' for ps__thumb-x */
  bottom: 2px;
  /* please don't change 'position' */
  position: absolute; }

.ps__thumb-y {
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color .2s linear, width .2s ease-in-out;
  -webkit-transition: background-color .2s linear, width .2s ease-in-out;
  width: 6px;
  /* there must be 'right' for ps__thumb-y */
  right: 2px;
  /* please don't change 'position' */
  position: absolute; }

.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x,
.ps__rail-x.ps--clicking .ps__thumb-x {
  background-color: #999;
  height: 11px; }

.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
  background-color: #999;
  width: 11px; }

/* MS supports */
@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important; } }

.selectize-angular-container {
  position: relative; }
  @media (max-width: 639px) {
    .selectize-angular-container .selectize-control {
      float: none;
      width: 100%; } }
  .selectize-angular-container .selectize-control .selectize-input {
    height: auto;
    min-height: 54px;
    background: #4f009d !important;
    padding: 0 !important;
    position: relative;
    border-radius: 0px; }
    .selectize-angular-container .selectize-control .selectize-input.focus + .selectize-dropdown {
      z-index: 100; }
    .selectize-angular-container .selectize-control .selectize-input .item {
      height: 100%;
      width: 100%;
      display: inline-block;
      user-select: none;
      padding: 18px 50px 18px 21px;
      display: flex;
      align-items: center;
      color: #fff;
      cursor: pointer;
      font-size: 15px;
      line-height: 1.2; }
      @media (max-width: 639px) {
        .selectize-angular-container .selectize-control .selectize-input .item {
          font-size: 13px; } }
      .selectize-angular-container .selectize-control .selectize-input .item:hover {
        background: #35006a; }
    .selectize-angular-container .selectize-control .selectize-input input {
      background: none !important;
      border: none !important;
      color: #fff;
      color: transparent !important;
      width: 100% !important;
      cursor: pointer;
      padding-right: 50px !important; }
      .selectize-angular-container .selectize-control .selectize-input input::placeholder {
        transition: color 0.3s;
        color: rgba(255, 255, 255, 0.9) !important; }
      .selectize-angular-container .selectize-control .selectize-input input:hover::placeholder {
        color: white !important; }
      .selectize-angular-container .selectize-control .selectize-input input:focus::placeholder {
        opacity: 0.35 !important; }
    .selectize-angular-container .selectize-control .selectize-input.has-items input {
      display: none !important; }
    .selectize-angular-container .selectize-control .selectize-input::after {
      content: "";
      height: 22px;
      width: 22px;
      border: none;
      top: 18px;
      right: 30px;
      margin-top: 0;
      display: inline-block;
      position: absolute;
      top: 50%;
      transform: translate(0, -50%);
      right: 10px;
      background-position: 50% 50% !important;
      background: url("../assets/images/select-dropdown.svg");
      background: url("../assets/images/select-dropdown-small.svg"); }
  .selectize-angular-container .selectize-control .selectize-dropdown {
    overflow: hidden;
    border-radius: 0px;
    margin-top: 0;
    position: absolute;
    border: none !important;
    top: 0;
    left: 0;
    box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1); }
    .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content {
      padding: 0px 0px;
      background: #4f009d;
      max-height: 240px; }
      .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .create {
        display: none; }
      .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option {
        color: #fff !important;
        cursor: pointer;
        font-size: 15px;
        padding: 14px 40px 14px 21px;
        animation-fill-mode: both !important; }
        @media (max-width: 639px) {
          .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option {
            font-size: 13px;
            padding: 9px 40px 9px 21px; } }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:first-child {
          padding-top: 18px; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:last-child {
          padding-bottom: 18px; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option.selected, .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:hover {
          background: #35006a; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(1) {
          animation-delay: 0s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(2) {
          animation-delay: 0.02s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(3) {
          animation-delay: 0.04s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(4) {
          animation-delay: 0.06s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(5) {
          animation-delay: 0.08s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(6) {
          animation-delay: 0.1s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(7) {
          animation-delay: 0.12s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(8) {
          animation-delay: 0.14s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(9) {
          animation-delay: 0.16s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(10) {
          animation-delay: 0.18s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(11) {
          animation-delay: 0.2s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(12) {
          animation-delay: 0.22s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(13) {
          animation-delay: 0.24s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(14) {
          animation-delay: 0.26s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(15) {
          animation-delay: 0.28s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(16) {
          animation-delay: 0.3s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(17) {
          animation-delay: 0.32s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(18) {
          animation-delay: 0.34s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(19) {
          animation-delay: 0.36s;
          animation-duration: 0.3s;
          animation-name: fade; }
        .selectize-angular-container .selectize-control .selectize-dropdown .selectize-dropdown-content .option:nth-child(20) {
          animation-delay: 0.38s;
          animation-duration: 0.3s;
          animation-name: fade; }

#lightbox.devis-part .selectize-input {
  background: #900b17 !important; }
  #lightbox.devis-part .selectize-input input:hover {
    background: #7d0914 !important; }
  #lightbox.devis-part .selectize-input .item:hover {
    background: #7d0914; }

#lightbox.devis-part .selectize-dropdown .selectize-dropdown-content {
  background: #7d0914; }
  #lightbox.devis-part .selectize-dropdown .selectize-dropdown-content .option.selected, #lightbox.devis-part .selectize-dropdown .selectize-dropdown-content .option:hover {
    background: #5c070f; }

#lightbox.devis-pro .selectize-input {
  background: #191919 !important; }
  #lightbox.devis-pro .selectize-input input:hover {
    background: #515151 !important; }
  #lightbox.devis-pro .selectize-input .item:hover {
    background: #515151; }

#lightbox.devis-pro .selectize-dropdown .selectize-dropdown-content {
  background: #515151; }
  #lightbox.devis-pro .selectize-dropdown .selectize-dropdown-content .option.selected, #lightbox.devis-pro .selectize-dropdown .selectize-dropdown-content .option:hover {
    background: #383838; }

.global.sur-titre {
  color: #A30C1A;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  line-height: 1;
  margin-bottom: 30px; }
  @media (max-width: 639px) {
    .global.sur-titre {
      font-size: 9px;
      margin-bottom: 20px; } }

.global.top-title {
  margin-bottom: 40px; }
  .global.top-title, .global.top-title * {
    font-size: 68px;
    font-weight: 300;
    font-family: "Poppins", sans-serif;
    color: white;
    line-height: 1.25;
    letter-spacing: 0px; }
    @media (max-width: 1024px) {
      .global.top-title, .global.top-title * {
        font-size: 56px; } }
    @media (max-width: 768px) {
      .global.top-title, .global.top-title * {
        font-size: 50px; } }
    @media (max-width: 639px) {
      .global.top-title, .global.top-title * {
        font-size: 30px;
        line-height: 1.2; } }
    .global.top-title b, .global.top-title strong, .global.top-title span, .global.top-title * b, .global.top-title * strong, .global.top-title * span {
      font-weight: 700; }
  @media (max-width: 768px) {
    .global.top-title {
      margin-bottom: 30px; } }
  @media (max-width: 639px) {
    .global.top-title {
      line-height: 1.2;
      margin-bottom: 20px; } }

.global.top-chapeau {
  font-size: 20px;
  color: #fff; }
  @media (max-width: 768px) {
    .global.top-chapeau {
      font-size: 18px; } }
  @media (max-width: 639px) {
    .global.top-chapeau {
      font-size: 10px; } }

.global.titre, .global.titre * {
  padding-top: 0;
  font-size: 50px;
  letter-spacing: 0;
  line-height: 1.2;
  color: #2B2B2B; }
  @media (max-width: 1367px) {
    .global.titre, .global.titre * {
      font-size: 45px; } }
  @media (max-width: 1024px) {
    .global.titre, .global.titre * {
      font-size: 42px; } }
  @media (max-width: 768px) {
    .global.titre, .global.titre * {
      font-size: 35px; } }
  @media (max-width: 639px) {
    .global.titre, .global.titre * {
      font-size: 21px;
      line-height: 1.4; } }

.global.small-title, .global.small-title * {
  padding-top: 0;
  font-weight: 700;
  font-size: 27px;
  margin-bottom: 20px;
  letter-spacing: 0;
  line-height: 1.2;
  color: #2B2B2B; }
  @media (max-width: 768px) {
    .global.small-title, .global.small-title * {
      font-size: 18px; } }
  @media (max-width: 639px) {
    .global.small-title, .global.small-title * {
      font-size: 16px; } }

.banner.call-to-action-medium {
  padding-bottom: 85px; }
  @media (max-width: 639px) {
    .banner.call-to-action-medium {
      background: #fff;
      padding: 40px 0 50px; } }
  .banner.call-to-action-medium .background-grey {
    position: absolute;
    width: 100%;
    display: inline-block;
    left: 0;
    top: 100px;
    height: 200px;
    background: #EAEAEA; }
    @media (max-width: 639px) {
      .banner.call-to-action-medium .background-grey {
        display: none; } }
  .banner.call-to-action-medium .content {
    background: #fff;
    padding: 50px 55px;
    z-index: 10;
    box-shadow: 0px 3px 30px 0px rgba(0, 0, 0, 0.15); }
    @media (max-width: 768px) {
      .banner.call-to-action-medium .content {
        text-align: center;
        padding: 40px 55px; } }
    @media (max-width: 639px) {
      .banner.call-to-action-medium .content {
        box-shadow: none;
        padding: 0; } }
  .banner.call-to-action-medium .titre {
    display: inline-block;
    float: left;
    padding-top: 15px; }
    @media (max-width: 768px) {
      .banner.call-to-action-medium .titre {
        width: 100%;
        padding-top: 0;
        margin-bottom: 30px; } }
    .banner.call-to-action-medium .titre p {
      font-size: 30px;
      font-weight: 300; }
      @media (max-width: 1024px) {
        .banner.call-to-action-medium .titre p {
          font-size: 26px; } }
      @media (max-width: 768px) {
        .banner.call-to-action-medium .titre p {
          font-size: 23px; } }
      @media (max-width: 639px) {
        .banner.call-to-action-medium .titre p {
          font-size: 16px; } }
      .banner.call-to-action-medium .titre p b, .banner.call-to-action-medium .titre p strong {
        font-weight: 700; }
  .banner.call-to-action-medium a {
    float: right;
    background: #A30C1A;
    color: #fff;
    padding: 33px 120px 40px 40px;
    position: relative;
    font-size: 20px;
    font-weight: 700;
    height: 85px; }
    @media (max-width: 1024px) {
      .banner.call-to-action-medium a {
        font-size: 18px;
        height: 70px;
        padding-top: 27px; } }
    @media (max-width: 768px) {
      .banner.call-to-action-medium a {
        float: none;
        font-size: 12px;
        height: 53px;
        padding-top: 25px;
        padding-right: 100px; } }
    @media (max-width: 639px) {
      .banner.call-to-action-medium a {
        width: 100%;
        text-align: left; } }
    .banner.call-to-action-medium a .icon-container {
      background: #710C16;
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
      width: 85px; }
      @media (max-width: 1024px) {
        .banner.call-to-action-medium a .icon-container {
          width: 70px; } }
      @media (max-width: 768px) {
        .banner.call-to-action-medium a .icon-container {
          width: 53px; } }
      .banner.call-to-action-medium a .icon-container .icon {
        width: 15px;
        height: 10px;
        position: absolute;
        left: 50%;
        top: 43%;
        transition: left 0.3s;
        transform: translate(-50%, -50%); }
        @media (max-width: 768px) {
          .banner.call-to-action-medium a .icon-container .icon {
            top: 48%; } }
    .banner.call-to-action-medium a:hover {
      background: #710c16; }
      .banner.call-to-action-medium a:hover .icon {
        left: 55%; }

.banner.call-to-action-footer {
  padding: 120px 0 200px;
  background: #383838;
  position: relative;
  margin-top: -6px; }
  @media (max-width: 768px) {
    .banner.call-to-action-footer {
      padding: 100px 0 150px; } }
  @media (max-width: 639px) {
    .banner.call-to-action-footer {
      padding: 110px 0 35px; } }
  .banner.call-to-action-footer .image-container {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%; }
  .banner.call-to-action-footer .textes-container {
    width: 100%;
    text-align: left;
    position: relative; }
    .banner.call-to-action-footer .textes-container .titre {
      margin-bottom: 40px; }
      @media (max-width: 1226px) {
        .banner.call-to-action-footer .textes-container .titre {
          margin-bottom: 40px; } }
      @media (max-width: 639px) {
        .banner.call-to-action-footer .textes-container .titre {
          margin-bottom: 30px;
          padding-right: 10%; }
          .banner.call-to-action-footer .textes-container .titre br {
            display: none; } }
      .banner.call-to-action-footer .textes-container .titre p {
        font-family: "Poppins", sans-serif;
        font-size: 40px;
        letter-spacing: 0px;
        position: relative;
        color: #fff;
        line-height: 1.4; }
        .banner.call-to-action-footer .textes-container .titre p b, .banner.call-to-action-footer .textes-container .titre p strong {
          font-weight: 700; }
        @media (max-width: 768px) {
          .banner.call-to-action-footer .textes-container .titre p {
            font-size: 27px; } }
        @media (max-width: 639px) {
          .banner.call-to-action-footer .textes-container .titre p {
            font-size: 22px;
            line-height: 1.5; } }
    .banner.call-to-action-footer .textes-container .btn {
      font-size: 13px;
      font-weight: 700;
      color: #fff;
      text-transform: uppercase;
      letter-spacing: 2.2px;
      line-height: 1;
      position: relative;
      padding: 19px 0px; }
      @media (max-width: 768px) {
        .banner.call-to-action-footer .textes-container .btn {
          font-size: 11px; } }
      @media (max-width: 639px) {
        .banner.call-to-action-footer .textes-container .btn {
          font-size: 9px; } }
      .banner.call-to-action-footer .textes-container .btn .petit-trait {
        width: 63px;
        height: 7px;
        position: absolute;
        bottom: 0;
        left: 0;
        overflow: hidden;
        transition: width 0.5s, height 0.3s; }
        @media (max-width: 768px) {
          .banner.call-to-action-footer .textes-container .btn .petit-trait {
            width: 25px;
            height: 4px; } }
        .banner.call-to-action-footer .textes-container .btn .petit-trait span {
          display: inline-block;
          background: #A30C1A;
          transition: background 0.3s; }
      .banner.call-to-action-footer .textes-container .btn:hover .petit-trait {
        width: 100%;
        height: 3px; }
        .banner.call-to-action-footer .textes-container .btn:hover .petit-trait span {
          background: #fff; }

@media (max-width: 639px) {
  .fm-on {
    display: inline-block !important; } }

@media (max-width: 639px) {
  .fm-off {
    display: none !important; } }

footer {
  background: #A30C1A;
  z-index: 10; }
  footer #footer_top {
    background: #A30C1A;
    border-top: 1px solid rgba(0, 0, 0, 0.1); }
    footer #footer_top .content {
      padding: 185px 0 100px; }
      @media (max-width: 1226px) {
        footer #footer_top .content {
          padding: 180px 0 80px; } }
      @media (max-width: 639px) {
        footer #footer_top .content {
          padding: 0px 0 10px; } }
  footer #footer_bottom {
    background: #EAEAEA; }
    footer #footer_bottom .content {
      padding: 10px 0 6px;
      border-top: 1px solid rgba(255, 255, 255, 0.1); }
      @media (max-width: 639px) {
        footer #footer_bottom .content {
          padding: 18px 0 18px; } }
  @media (max-width: 1226px) {
    footer .banner-content {
      padding: 0 6%; } }
  @media (max-width: 639px) {
    footer .banner-content {
      padding: 0 6%; } }
  footer .section-title {
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0px;
    margin-bottom: 32px;
    user-select: none; }

footer .very-top-container {
  height: 166px;
  margin-bottom: 50px;
  background: #fff;
  position: absolute;
  left: 0;
  top: -83px;
  width: 100%;
  box-shadow: 0px 3px 40px 0px rgba(0, 0, 0, 0.15); }
  @media (max-width: 1226px) {
    footer .very-top-container {
      height: 150px;
      top: -75px;
      width: 114%;
      margin-left: -7%;
      padding: 0 2%; } }
  @media (max-width: 639px) {
    footer .very-top-container {
      height: auto;
      position: relative;
      top: auto;
      left: auto;
      display: inline-block;
      width: 114%;
      margin-left: -7%;
      margin-top: -2px; } }
  footer .very-top-container .col {
    width: 33.333%;
    height: 100%;
    padding: 44px;
    position: relative;
    cursor: pointer;
    display: inline-block;
    float: left; }
    @media (max-width: 639px) {
      footer .very-top-container .col {
        width: 100%;
        padding: 30px 6%; } }
    footer .very-top-container .col p {
      color: #A30C1A;
      font-size: 24px; }
      @media (max-width: 1226px) {
        footer .very-top-container .col p {
          font-size: 21px; } }
      @media (max-width: 768px) {
        footer .very-top-container .col p {
          font-size: 16px; } }
      @media (max-width: 639px) {
        footer .very-top-container .col p {
          font-size: 14px;
          display: inline; }
          footer .very-top-container .col p br {
            display: none; } }
    footer .very-top-container .col .icon {
      position: absolute;
      width: 15px;
      height: 10px;
      top: 50px;
      right: 40px; }
      footer .very-top-container .col .icon * {
        stroke: #464646 !important; }
      @media (max-width: 639px) {
        footer .very-top-container .col .icon {
          top: 35px;
          right: 30px; } }
    footer .very-top-container .col.col1, footer .very-top-container .col.col2 {
      border-right: 1px solid rgba(0, 0, 0, 0.1); }
      @media (max-width: 639px) {
        footer .very-top-container .col.col1, footer .very-top-container .col.col2 {
          border-right: none;
          border-bottom: 1px solid rgba(0, 0, 0, 0.1); } }
    footer .very-top-container .col.col3 {
      float: right; }
    @media (min-width: 768px) {
      footer .very-top-container .col:hover {
        background: #A30C1A; }
        footer .very-top-container .col:hover * {
          color: #fff; }
        footer .very-top-container .col:hover * {
          stroke: #fff !important; } }

footer .background-logo {
  position: absolute;
  left: -33%;
  top: 0px;
  height: calc(100% + 10px);
  width: 460px;
  opacity: 0.11; }
  @media (max-width: 1024px) {
    footer .background-logo {
      left: -12%; } }
  @media (max-width: 768px) {
    footer .background-logo {
      left: -15%; } }
  @media (max-width: 639px) {
    footer .background-logo {
      top: auto;
      bottom: -25%;
      width: 900px;
      height: 800px;
      left: -95%; } }

footer .logo-container {
  height: 100px;
  width: 28%;
  float: left; }
  @media (max-width: 1226px) {
    footer .logo-container {
      display: none; } }
  @media (max-width: 639px) {
    footer .logo-container {
      display: none; } }
  footer .logo-container .logo-image {
    height: 61px;
    width: 184px;
    background-size: contain; }
    footer .logo-container .logo-image .st0 {
      fill: #fff; }
    footer .logo-container .logo-image .st1 {
      fill: #fff; }

footer .menu-footer {
  float: left;
  width: 25%; }
  @media (max-width: 1226px) {
    footer .menu-footer {
      width: 33.33%; } }
  @media (max-width: 639px) {
    footer .menu-footer {
      display: none; } }
  footer .menu-footer .titre-section span {
    color: #313030; }
  footer .menu-footer > ul {
    transform: translate(0, -4px); }
  footer .menu-footer > ul > li:nth-child(1) {
    animation-delay: 0.01s;
    animation-duration: 0.6s;
    animation-name: fade; }
  footer .menu-footer > ul > li:nth-child(2) {
    animation-delay: 0.07s;
    animation-duration: 0.7s;
    animation-name: fade; }
  footer .menu-footer > ul > li:nth-child(3) {
    animation-delay: 0.13s;
    animation-duration: 0.8s;
    animation-name: fade; }
  footer .menu-footer > ul > li:nth-child(4) {
    animation-delay: 0.19s;
    animation-duration: 0.9s;
    animation-name: fade; }
  footer .menu-footer > ul > li:nth-child(5) {
    animation-delay: 0.25s;
    animation-duration: 1s;
    animation-name: fade; }
  footer .menu-footer > ul > li:nth-child(6) {
    animation-delay: 0.31s;
    animation-duration: 1.1s;
    animation-name: fade; }
  footer .menu-footer > ul > li:nth-child(7) {
    animation-delay: 0.37s;
    animation-duration: 1.2s;
    animation-name: fade; }
  footer .menu-footer > ul > li:nth-child(8) {
    animation-delay: 0.43s;
    animation-duration: 1.3s;
    animation-name: fade; }
  footer .menu-footer > ul > li:nth-child(9) {
    animation-delay: 0.49s;
    animation-duration: 1.4s;
    animation-name: fade; }
  footer .menu-footer > ul > li:nth-child(10) {
    animation-delay: 0.55s;
    animation-duration: 1.5s;
    animation-name: fade; }
  footer .menu-footer > ul > li:last-child a {
    border-bottom: none; }
  footer .menu-footer > ul > li.current-menu-item a, footer .menu-footer > ul > li.current-menu-ancestor a, footer .menu-footer > ul > li a:hover, footer .menu-footer > ul > li a:focus {
    transition: color 0s;
    color: white; }
  footer .menu-footer > ul > li > a {
    font-size: 15px;
    font-weight: 500;
    padding: 12px 0px;
    width: 200px;
    transition: color 0.8s;
    color: rgba(255, 255, 255, 0.7); }
    footer .menu-footer > ul > li > a::before {
      content: "›";
      margin-right: 5px;
      color: rgba(255, 255, 255, 0.7); }
    @media (max-width: 639px) {
      footer .menu-footer > ul > li > a {
        width: 100%; } }
  footer .menu-footer > ul > li > ul {
    display: none; }

footer .bloc-coordonnees {
  width: 25%;
  float: left; }
  @media (max-width: 1226px) {
    footer .bloc-coordonnees {
      width: 33.33%; } }
  @media (max-width: 639px) {
    footer .bloc-coordonnees {
      width: 100%;
      margin-bottom: 24px; } }
  footer .bloc-coordonnees p, footer .bloc-coordonnees a {
    font-size: 15px;
    color: rgba(255, 255, 255, 0.7);
    line-height: 2;
    font-weight: 500;
    font-family: "Poppins", sans-serif;
    user-select: text;
    letter-spacing: 0.6px; }
    footer .bloc-coordonnees p span, footer .bloc-coordonnees a span {
      font-weight: 700; }
    @media (max-width: 639px) {
      footer .bloc-coordonnees p, footer .bloc-coordonnees a {
        font-size: 13.5px;
        letter-spacing: 0; } }
  footer .bloc-coordonnees span {
    display: block;
    color: #fff; }
    footer .bloc-coordonnees span a {
      padding-left: 5px; }
  footer .bloc-coordonnees span[itemprop="address"] {
    margin-bottom: 15px; }
    footer .bloc-coordonnees span[itemprop="address"] p {
      color: rgba(255, 255, 255, 0.7); }
      footer .bloc-coordonnees span[itemprop="address"] p:nth-child(1) {
        transition-delay: 0s; }
      footer .bloc-coordonnees span[itemprop="address"] p:nth-child(2) {
        transition-delay: 0.05s; }
      footer .bloc-coordonnees span[itemprop="address"] p:nth-child(3) {
        transition-delay: 0.1s; }
      footer .bloc-coordonnees span[itemprop="address"] p:nth-child(4) {
        transition-delay: 0.15s; }
      footer .bloc-coordonnees span[itemprop="address"] p:nth-child(5) {
        transition-delay: 0.2s; }
      footer .bloc-coordonnees span[itemprop="address"] p:nth-child(6) {
        transition-delay: 0.25s; }
      footer .bloc-coordonnees span[itemprop="address"] p:nth-child(7) {
        transition-delay: 0.3s; }
      footer .bloc-coordonnees span[itemprop="address"] p:nth-child(8) {
        transition-delay: 0.35s; }
      footer .bloc-coordonnees span[itemprop="address"] p:nth-child(9) {
        transition-delay: 0.4s; }
      footer .bloc-coordonnees span[itemprop="address"] p:nth-child(10) {
        transition-delay: 0.45s; }

footer .bloc-contact {
  width: 20%;
  float: right; }
  @media (max-width: 1226px) {
    footer .bloc-contact {
      width: 33.33%; } }
  @media (max-width: 639px) {
    footer .bloc-contact {
      width: 100%;
      margin-bottom: 24px; } }
  footer .bloc-contact p, footer .bloc-contact a {
    font-size: 17px;
    color: #fff;
    line-height: 2;
    font-weight: 700;
    font-family: "Poppins", sans-serif;
    user-select: text;
    letter-spacing: 0.6px; }
    footer .bloc-contact p span, footer .bloc-contact a span {
      font-weight: 700; }
    @media (max-width: 639px) {
      footer .bloc-contact p, footer .bloc-contact a {
        font-size: 13.5px;
        letter-spacing: 0; } }
  footer .bloc-contact span {
    display: block;
    color: #fff;
    margin-bottom: 10px; }
    footer .bloc-contact span a {
      padding-left: 5px; }
  footer .bloc-contact span[itemprop="address"] {
    margin-bottom: 20px; }
    footer .bloc-contact span[itemprop="address"] p {
      color: #fff; }
      footer .bloc-contact span[itemprop="address"] p:nth-child(1) {
        transition-delay: 0s; }
      footer .bloc-contact span[itemprop="address"] p:nth-child(2) {
        transition-delay: 0.05s; }
      footer .bloc-contact span[itemprop="address"] p:nth-child(3) {
        transition-delay: 0.1s; }
      footer .bloc-contact span[itemprop="address"] p:nth-child(4) {
        transition-delay: 0.15s; }
      footer .bloc-contact span[itemprop="address"] p:nth-child(5) {
        transition-delay: 0.2s; }
      footer .bloc-contact span[itemprop="address"] p:nth-child(6) {
        transition-delay: 0.25s; }
      footer .bloc-contact span[itemprop="address"] p:nth-child(7) {
        transition-delay: 0.3s; }
      footer .bloc-contact span[itemprop="address"] p:nth-child(8) {
        transition-delay: 0.35s; }
      footer .bloc-contact span[itemprop="address"] p:nth-child(9) {
        transition-delay: 0.4s; }
      footer .bloc-contact span[itemprop="address"] p:nth-child(10) {
        transition-delay: 0.45s; }
  footer .bloc-contact .tel-fax-email-container {
    margin-bottom: 25px;
    margin-top: -2px; }
    footer .bloc-contact .tel-fax-email-container span:nth-child(1) {
      transition-delay: 0s; }
    footer .bloc-contact .tel-fax-email-container span:nth-child(2) {
      transition-delay: 0.05s; }
    footer .bloc-contact .tel-fax-email-container span:nth-child(3) {
      transition-delay: 0.1s; }
    footer .bloc-contact .tel-fax-email-container span:nth-child(4) {
      transition-delay: 0.15s; }
    footer .bloc-contact .tel-fax-email-container span:nth-child(5) {
      transition-delay: 0.2s; }
    footer .bloc-contact .tel-fax-email-container span:nth-child(6) {
      transition-delay: 0.25s; }
    footer .bloc-contact .tel-fax-email-container span:nth-child(7) {
      transition-delay: 0.3s; }
    footer .bloc-contact .tel-fax-email-container span:nth-child(8) {
      transition-delay: 0.35s; }
    footer .bloc-contact .tel-fax-email-container span:nth-child(9) {
      transition-delay: 0.4s; }
    footer .bloc-contact .tel-fax-email-container span:nth-child(10) {
      transition-delay: 0.45s; }
    footer .bloc-contact .tel-fax-email-container .icon {
      width: 16px;
      height: 16px;
      margin-right: 11px;
      transform: translate(0, 2px); }
      footer .bloc-contact .tel-fax-email-container .icon * {
        fill: #fff; }
  footer .bloc-contact a {
    transition: color 1s;
    position: relative; }
  footer .bloc-contact a:hover, footer .bloc-contact:focus {
    text-decoration: underline; }
  @media (max-width: 639px) {
    footer .bloc-contact .section-title {
      display: none; } }

footer .social-icons {
  user-select: none;
  margin-top: 10px;
  display: inline-block; }
  @media (max-width: 1226px) {
    footer .social-icons {
      right: 0%; } }
  @media (max-width: 639px) {
    footer .social-icons {
      float: none;
      clear: both;
      position: relative;
      right: auto; } }
  footer .social-icons ul {
    user-select: none; }
    footer .social-icons ul li {
      display: inline-block; }
      footer .social-icons ul li:nth-child(1) {
        animation-delay: 0.01s;
        animation-duration: 0.6s; }
      footer .social-icons ul li:nth-child(2) {
        animation-delay: 0.07s;
        animation-duration: 0.7s; }
      footer .social-icons ul li:nth-child(3) {
        animation-delay: 0.13s;
        animation-duration: 0.8s; }
      footer .social-icons ul li:nth-child(4) {
        animation-delay: 0.19s;
        animation-duration: 0.9s; }
      footer .social-icons ul li:nth-child(5) {
        animation-delay: 0.25s;
        animation-duration: 1s; }
      footer .social-icons ul li:nth-child(6) {
        animation-delay: 0.31s;
        animation-duration: 1.1s; }
      footer .social-icons ul li:nth-child(7) {
        animation-delay: 0.37s;
        animation-duration: 1.2s; }
      footer .social-icons ul li:nth-child(8) {
        animation-delay: 0.43s;
        animation-duration: 1.3s; }
      footer .social-icons ul li:nth-child(9) {
        animation-delay: 0.49s;
        animation-duration: 1.4s; }
      footer .social-icons ul li:nth-child(10) {
        animation-delay: 0.55s;
        animation-duration: 1.5s; }
      footer .social-icons ul li a.icon-container {
        margin-right: 13px; }
        footer .social-icons ul li a.icon-container .icon {
          width: 48px;
          height: 48px;
          border-radius: 50%;
          border: 1px solid rgba(255, 255, 255, 0.3); }
          footer .social-icons ul li a.icon-container .icon.facebook svg {
            transform: scale(1); }
          footer .social-icons ul li a.icon-container .icon.youtube svg {
            transform: scale(0.95) translate3d(-0.5px, 1px, 0); }
          footer .social-icons ul li a.icon-container .icon.vimeo svg {
            transform: scale(1.2) translate3d(-0.5px, 1px, 0); }
          footer .social-icons ul li a.icon-container .icon.linkedin svg {
            transform: scale(0.7) translate3d(-1px, 1px, 0); }
          footer .social-icons ul li a.icon-container .icon.twitter svg {
            transform: scale(1.4) translate3d(0px, 0px, 0); }
        footer .social-icons ul li a.icon-container .st0 {
          fill: #fff; }
        footer .social-icons ul li a.icon-container .st1 {
          fill: #fff;
          transition: fill 0.3s; }
        footer .social-icons ul li a.icon-container:hover .icon, footer .social-icons ul li a.icon-container:focus .icon {
          background: white; }
        footer .social-icons ul li a.icon-container:hover .st0, footer .social-icons ul li a.icon-container:focus .st0 {
          fill: #a30c1a; }
        footer .social-icons ul li a.icon-container .title {
          display: none; }

footer .copyright-line {
  display: inline-block;
  margin-left: -7px;
  width: 100%;
  user-select: none; }
  @media (max-width: 639px) {
    footer .copyright-line {
      position: absolute;
      right: 0;
      top: 0;
      padding-top: 7px; } }
  footer .copyright-line p, footer .copyright-line a, footer .copyright-line span {
    font-size: 11px;
    font-weight: 400;
    color: rgba(43, 43, 43, 0.9);
    letter-spacing: 0.6px;
    transition: color 0.6s; }
    @media (max-width: 639px) {
      footer .copyright-line p, footer .copyright-line a, footer .copyright-line span {
        font-size: 7px; } }
  footer .copyright-line a {
    padding: 10px 10px;
    text-decoration: none;
    position: relative;
    cursor: pointer; }
    @media (max-width: 1226px) {
      footer .copyright-line a {
        padding: 15px 10px; } }
    @media (max-width: 639px) {
      footer .copyright-line a {
        padding: 8px 5px; } }
    footer .copyright-line a:hover, footer .copyright-line a:focus {
      color: #2b2b2b; }
      footer .copyright-line a:hover::after, footer .copyright-line a:focus::after {
        width: 100%;
        opacity: 0.3; }
    footer .copyright-line a:first-child {
      border-bottom: none; }
      footer .copyright-line a:first-child:before {
        display: none; }
    @media (max-width: 639px) {
      footer .copyright-line a:nth-last-child(1):before {
        display: none; } }
    footer .copyright-line a::after {
      content: "";
      display: inline-block;
      position: absolute;
      bottom: 5px;
      left: 0;
      height: 2px;
      width: 0;
      opacity: 0;
      transition: opacity 0.5s, width 0.2s;
      background: #fff; }
      @media (max-width: 1024px) {
        footer .copyright-line a::after {
          display: none !important; } }
    footer .copyright-line a::before {
      content: "";
      display: inline-block;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: -4px;
      width: 1px;
      background: rgba(255, 255, 255, 0.15); }
      @media (max-width: 639px) {
        footer .copyright-line a::before {
          display: none; } }
  footer .copyright-line p {
    display: inline; }

#signature_SFD {
  float: right;
  padding: 15px 15px;
  margin-right: 11px;
  position: relative; }
  @media (max-width: 639px) {
    #signature_SFD {
      margin-right: 0px;
      padding: 3px 15px; } }
  #signature_SFD:hover p, #signature_SFD:focus p {
    color: black; }
  #signature_SFD:hover .icon path, #signature_SFD:hover .icon rect, #signature_SFD:focus .icon path, #signature_SFD:focus .icon rect {
    fill: black; }
  #signature_SFD .icon {
    position: absolute;
    top: 2px;
    right: -12px;
    height: 25px;
    width: 25px; }
    #signature_SFD .icon path, #signature_SFD .icon rect {
      fill: rgba(0, 0, 0, 0.3);
      transition: fill 0.5s; }
    @media (max-width: 639px) {
      #signature_SFD .icon {
        top: -1px; } }
  #signature_SFD::after {
    display: none !important; }
  #signature_SFD::before {
    display: none; }

#hamburger_title {
  display: none;
  position: absolute;
  top: 0;
  right: -8px;
  height: 148px;
  align-items: center;
  margin-right: 128px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  line-height: 1;
  padding-top: 2px;
  transition: opacity 0.5s;
  width: 45px;
  display: none !important; }
  #hamburger_title.page {
    color: #fff; }
  @media (max-width: 1226px) {
    #hamburger_title {
      display: flex;
      height: 133px;
      margin-right: 108px; } }
  @media (max-width: 639px) {
    #hamburger_title {
      display: flex;
      display: none;
      height: 70px;
      margin-right: 70px; } }
  #hamburger_title span {
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.5px; }

#hamburger_container {
  position: fixed;
  background: #fff;
  animation: fade 1s;
  width: 148px;
  height: 148px;
  z-index: 1010;
  right: 0;
  top: 0;
  cursor: pointer;
  display: none; }
  @media (max-width: 1226px) {
    #hamburger_container {
      display: inline-block;
      margin-right: 0;
      width: 133px;
      height: 133px; } }
  @media (max-width: 639px) {
    #hamburger_container {
      width: 70px;
      height: 70px; } }
  #hamburger_container.is-active #hamburger_title {
    opacity: 0; }
  #hamburger_container button {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transition: transform 0.4s;
    border: none;
    outline: none;
    display: flex;
    align-items: center;
    justify-content: center; }
    #hamburger_container button svg path {
      fill: #111; }
  #hamburger_container button svg {
    display: inline-block;
    width: 20px;
    height: 20px;
    position: relative; }
    @media (max-width: 639px) {
      #hamburger_container button svg {
        width: 16px;
        height: 16px; } }
    #hamburger_container button svg .path-container {
      transition: transform 0.65s ease, opacity 0.25s ease;
      transform: translate3d(0, 0, 0); }
      @media (max-width: 639px) {
        #hamburger_container button svg .path-container {
          transition: transform 0.5s ease, opacity 0.25s ease; } }
      #hamburger_container button svg .path-container.top {
        transform-origin: 16% 32%; }
        #hamburger_container button svg .path-container.top.edge {
          transform-origin: 12% 90%; }
      #hamburger_container button svg .path-container.middle {
        transform-origin: 25% 60%; }
      #hamburger_container button svg .path-container.bottom {
        transform-origin: 14% 92%; }
        #hamburger_container button svg .path-container.bottom.edge {
          transform-origin: 15% 50%; }
  #hamburger_container.is-active button svg .path-container.top {
    transform: rotate(45deg) scale(1.25, 1); }
  #hamburger_container.is-active button svg .path-container.middle {
    opacity: 0;
    transform: scale(0.5); }
  #hamburger_container.is-active button svg .path-container.bottom {
    transform: rotate(-45deg) scale(1.25, 1); }
  #hamburger_container.back-arrow button svg {
    transform: rotate(180deg) translate3d(5px, 0, 0); }
    #hamburger_container.back-arrow button svg .path-container {
      transition: transform 0.2s ease, opacity 0.25s ease; }
      #hamburger_container.back-arrow button svg .path-container.top {
        transform: rotate(45deg) scale(0.6, 1); }
      #hamburger_container.back-arrow button svg .path-container.bottom {
        transform: rotate(-45deg) scale(0.6, 1); }

#header_behind {
  height: 148px;
  position: relative; }
  @media (max-width: 1226px) {
    #header_behind {
      height: 133px; } }
  @media (max-width: 639px) {
    #header_behind {
      height: 70px; } }

#header {
  height: 148px;
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 99;
  transition: transform 0.6s;
  background: linear-gradient(to bottom, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
  background: rgba(255, 255, 255, 0.95);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0px 3px 40px 0px rgba(0, 0, 0, 0.35); }
  @media (max-width: 1226px) {
    #header {
      height: 133px; } }
  @media (max-width: 639px) {
    #header {
      height: 70px;
      box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.25); } }
  #header .background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    display: inline-block;
    height: 148px;
    opacity: 0; }
    @media (max-width: 1226px) {
      #header .background {
        height: 133px; } }
    @media (max-width: 639px) {
      #header .background {
        height: 70px; } }
  #header .banner-content {
    height: 148px;
    margin: 0 auto; }
    @media (max-width: 1270px) {
      #header .banner-content {
        margin: 0;
        padding: 0 40px;
        transition: 0.5s; } }
    @media (max-width: 1226px) {
      #header .banner-content {
        height: 133px;
        padding: 0 0 0 6%; } }
    @media (max-width: 639px) {
      #header .banner-content {
        height: 70px; } }

#header .logo-container {
  float: left;
  width: 206px;
  height: 148px;
  position: relative;
  transition: box-shadow 0.3s;
  display: inline-block; }
  @media (max-width: 1226px) {
    #header .logo-container {
      height: 133px;
      width: 183px; } }
  @media (max-width: 639px) {
    #header .logo-container {
      height: 37px;
      width: 112px; } }
  #header .logo-container .logo-image {
    height: 100%;
    width: 100%;
    transition: transform 0.3s, opacity 0.4s;
    opacity: 1;
    user-select: none;
    display: inline-block;
    position: absolute;
    top: 0px;
    left: 0px; }
    #header .logo-container .logo-image .st0 {
      fill: #B3101D; }
    #header .logo-container .logo-image .st1 {
      fill: #414042; }
    @media (max-width: 639px) {
      #header .logo-container .logo-image {
        top: 18px; } }

#header .logo-container-small {
  position: absolute;
  top: 50%;
  left: 0;
  width: 38px;
  height: 38px;
  opacity: 0;
  transition: transform 0.6s, opacity 0.3s;
  transform: translate(0, -120px); }

#header .btn-container {
  display: inline-block;
  float: left; }
  #header .btn-container:hover a, #header .btn-container:hover button {
    background: rgba(0, 0, 0, 0.2) !important; }
  #header .btn-container a, #header .btn-container button {
    height: 45px;
    text-transform: uppercase;
    color: #fff;
    font-size: 16px;
    position: relative; }
    #header .btn-container a.tel, #header .btn-container button.tel {
      background: #2B2B2B;
      float: left;
      font-weight: 700;
      padding: 15px 35px 10px 60px; }
      #header .btn-container a.tel:hover, #header .btn-container button.tel:hover {
        background: #A30C1A !important; }
      #header .btn-container a.tel .icon, #header .btn-container button.tel .icon {
        width: 16px;
        height: 16px;
        position: absolute;
        top: 13px;
        left: 23px; }
        #header .btn-container a.tel .icon *, #header .btn-container button.tel .icon * {
          fill: #fff; }
    #header .btn-container a.commande-pro, #header .btn-container button.commande-pro {
      background: #A30C1A;
      float: right;
      padding: 15px 30px; }
      #header .btn-container a.commande-pro:hover, #header .btn-container button.commande-pro:hover {
        background: #2B2B2B !important; }
  #header .btn-container.hidden {
    z-index: -1;
    transition: transform 0.6s, opacity 0.2s;
    opacity: 0;
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0; }

#nav_desktop {
  display: inline-block;
  height: 100%;
  float: right;
  padding-top: 48px; }
  @media (max-width: 1226px) {
    #nav_desktop {
      display: none; } }
  #nav_desktop > ul {
    list-style-type: none;
    height: 100%; }
  #nav_desktop > ul > li {
    display: inline-block;
    height: 100%;
    margin-left: -5px;
    position: relative; }
    #nav_desktop > ul > li:hover > a, #nav_desktop > ul > li.current-menu-item > a, #nav_desktop > ul > li.current-menu-ancestor > a, #nav_desktop > ul > li.current_page_ancestor > a, #nav_desktop > ul > li.selected > a {
      color: #2b2b2b; }
  #nav_desktop > ul > li > a {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 0px 16px 0px;
    font-size: 17px;
    font-weight: 700;
    font-family: "Poppins", sans-serif;
    letter-spacing: 0px;
    color: rgba(43, 43, 43, 0.9); }
    #nav_desktop > ul > li > a:hover {
      color: #2b2b2b; }
    #nav_desktop > ul > li > a span {
      transition: transform 0.6s;
      display: inline-block;
      position: relative;
      display: inline-block;
      width: 100%; }
  #nav_desktop > ul > li:not(.btn) > a::before {
    content: "";
    width: 0px;
    opacity: 0;
    transition: width 0.2s, opacity 0.5s, background 0.3s, transform 0.6s, height 0.6s;
    height: 5px;
    position: absolute;
    display: inline-block;
    background: #A30C1A;
    left: 18px;
    bottom: -1px; }
  #nav_desktop > ul > li:not(.btn):hover > a::before,
  #nav_desktop > ul > li:not(.btn).current-menu-ancestor > a::before,
  #nav_desktop > ul > li:not(.btn).current-menu-parent > a::before,
  #nav_desktop > ul > li:not(.btn).current-menu-item > a::before,
  #nav_desktop > ul > li.selected > a::before {
    opacity: 1;
    width: calc(100% - 35px); }
  #nav_desktop > ul > li.btn {
    margin-top: 18px;
    height: 50px;
    transition: transform 0.6s;
    transform: translate3d(0, 0, 0);
    float: right;
    margin-left: 20px;
    margin-right: 10px;
    background: #A30C1A; }
    @media (max-width: 1226px) {
      #nav_desktop > ul > li.btn {
        display: none; } }
    #nav_desktop > ul > li.btn:hover {
      background: #313030; }
    #nav_desktop > ul > li.btn::after {
      content: "›";
      color: #fff;
      font-size: 30px;
      position: absolute;
      padding-left: 15px;
      line-height: 1.1;
      top: 7px;
      right: 0;
      height: 35px;
      width: 45px;
      border-left: 1px solid rgba(255, 255, 255, 0.2); }
      #nav_desktop > ul > li.btn::after svg {
        margin-top: 1px;
        transform: scale(0.35); }
        #nav_desktop > ul > li.btn::after svg * {
          fill: #fff; }
    #nav_desktop > ul > li.btn a {
      font-size: 12px;
      font-weight: 700;
      font-family: "Poppins", sans-serif;
      color: #fff;
      line-height: 1;
      padding: 20px 70px 25px 28px;
      letter-spacing: 1px;
      text-transform: uppercase; }

#nav_desktop > ul > li:hover ul {
  display: block; }

#nav_desktop > ul > li > ul {
  position: absolute;
  left: 0px;
  top: 96px;
  margin-left: -22px;
  margin-top: 0px;
  display: none;
  z-index: 10;
  padding: 0 60px 60px 40px; }

#nav_desktop > ul > li > ul > li {
  background: #fff;
  display: inline-block;
  float: left;
  line-height: 1;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  transition: border 1s;
  box-shadow: 2px 4px 14px 0px rgba(0, 0, 0, 0.09); }
  #nav_desktop > ul > li > ul > li:first-child {
    border: none !important; }
    #nav_desktop > ul > li > ul > li:first-child a {
      border-top: 4px solid #a30c1a !important; }
  #nav_desktop > ul > li > ul > li.current-menu-item, #nav_desktop > ul > li > ul > li:hover {
    background: #f2f2f2; }
    #nav_desktop > ul > li > ul > li.current-menu-item, #nav_desktop > ul > li > ul > li.current-menu-item + li, #nav_desktop > ul > li > ul > li:hover, #nav_desktop > ul > li > ul > li:hover + li {
      transition: border 0.5s;
      border-top: 1px solid rgba(0, 0, 0, 0); }
  #nav_desktop > ul > li > ul > li.current-menu-item > a {
    color: #313030;
    font-weight: 700; }
    #nav_desktop > ul > li > ul > li.current-menu-item > a::after {
      display: none; }
  #nav_desktop > ul > li > ul > li > a {
    line-height: 1;
    font-size: 15px;
    font-weight: 700;
    color: #2B2B2B;
    width: 290px;
    padding: 26px 30px;
    letter-spacing: 0px;
    position: relative; }
    #nav_desktop > ul > li > ul > li > a::after {
      content: "›";
      font-weight: 400;
      font-size: 23px;
      position: absolute;
      display: inline-block;
      transition: transform 0.15s;
      top: 23px;
      right: 25px;
      opacity: 0; }
    #nav_desktop > ul > li > ul > li > a:hover::after {
      opacity: 1;
      transform: translate3d(1px, 0, 0); }

#nav_desktop > ul > li > ul > li.menu-item-has-children.current-menu-item ul {
  display: block; }

#nav_desktop > ul > li > ul > li > ul {
  display: block;
  position: absolute;
  top: 100px;
  left: 0px;
  height: 100px;
  display: none !important;
  background: #e2e2e2;
  width: 40000px; }
  #nav_desktop > ul > li > ul > li > ul > li {
    display: inline-block;
    float: left;
    height: 100%; }
    #nav_desktop > ul > li > ul > li > ul > li:first-child a {
      padding-left: 0; }
    #nav_desktop > ul > li > ul > li > ul > li a {
      padding-top: 42px;
      display: inline-block;
      font-size: 13px;
      font-weight: 700;
      color: #333333; }
      #nav_desktop > ul > li > ul > li > ul > li a:hover {
        color: #2d2d2d; }

#nav_desktop_2 {
  display: inline-block;
  height: 35px;
  position: absolute;
  top: 0;
  right: 0; }
  @media (max-width: 1226px) {
    #nav_desktop_2 {
      display: none; } }
  #nav_desktop_2 > ul {
    list-style-type: none;
    height: 100%;
    user-select: none;
    display: inline-block;
    float: left;
    margin-right: 10px; }
  #nav_desktop_2 > ul > li {
    display: inline-block;
    height: 100%;
    margin-left: -5px;
    user-select: none;
    position: relative; }
    #nav_desktop_2 > ul > li:hover > a, #nav_desktop_2 > ul > li.current-menu-item > a, #nav_desktop_2 > ul > li.current_page_ancestor > a {
      color: #6d6d6d; }
  #nav_desktop_2 > ul > li > a {
    display: inline-block;
    padding: 18px 31px 20px 30px;
    font-size: 15px;
    letter-spacing: 0px;
    color: rgba(109, 109, 109, 0.9);
    font-weight: 400;
    height: 100%;
    user-select: none;
    text-transform: uppercase; }
    #nav_desktop_2 > ul > li > a:hover {
      color: #a30c1a; }
  #nav_desktop_2 > ul > li > ul {
    display: none; }
  #nav_desktop_2 > ul > li::before {
    content: "";
    width: 1px;
    height: 20px;
    position: absolute;
    display: inline-block;
    background: rgba(34, 45, 98, 0.2);
    top: 16px;
    left: -2px; }
  #nav_desktop_2 > ul > li:first-child::before {
    display: none; }

header#header > .background {
  background: #fff; }

header#header.page > .background {
  background: none; }

header#header.headroom {
  will-change: transform; }
  header#header.headroom .background {
    transition: opacity 1s; }
  header#header.headroom.headroom--top .background {
    opacity: 0 !important;
    transition: opacity 1s; }
  header#header.headroom.headroom--pinned .background {
    transition: opacity 1s;
    opacity: 0.96; }
  header#header.headroom.headroom--pinned:not(.headroom--top), header#header.headroom.headroom--unpinned:not(.stop-animation) {
    transform: translateY(-70px); }
    @media (max-width: 1226px) {
      header#header.headroom.headroom--pinned:not(.headroom--top), header#header.headroom.headroom--unpinned:not(.stop-animation) {
        transform: translateY(-135px); } }
    @media (max-width: 639px) {
      header#header.headroom.headroom--pinned:not(.headroom--top), header#header.headroom.headroom--unpinned:not(.stop-animation) {
        transform: translateY(-75px); } }
    header#header.headroom.headroom--pinned:not(.headroom--top) .background, header#header.headroom.headroom--unpinned:not(.stop-animation) .background {
      opacity: 0.96; }
    @media (min-width: 1226px) {
      header#header.headroom.headroom--pinned:not(.headroom--top) .logo-container-small, header#header.headroom.headroom--unpinned:not(.stop-animation) .logo-container-small {
        transform: translate3d(0px, 18px, 0);
        opacity: 1; }
      header#header.headroom.headroom--pinned:not(.headroom--top) .logo-container .logo-image, header#header.headroom.headroom--unpinned:not(.stop-animation) .logo-container .logo-image {
        transform: translate3d(0px, -40px, 0) scale(1);
        opacity: 0; }
      header#header.headroom.headroom--pinned:not(.headroom--top) .btn-container.hidden, header#header.headroom.headroom--unpinned:not(.stop-animation) .btn-container.hidden {
        transition: transform 0.6s ease 0.1s, opacity 0.3s ease 0.4s !important;
        transform: translate3d(0px, 147px, 0) scale(1);
        opacity: 1; }
      header#header.headroom.headroom--pinned:not(.headroom--top) .icon-search-container .icon, header#header.headroom.headroom--unpinned:not(.stop-animation) .icon-search-container .icon {
        transform: translate3d(0, 35px, 0); }
      header#header.headroom.headroom--pinned:not(.headroom--top) #nav_desktop > ul > li:not(.btn) > a > span, header#header.headroom.headroom--unpinned:not(.stop-animation) #nav_desktop > ul > li:not(.btn) > a > span {
        transform: translate3d(0, 14px, 0); }
      header#header.headroom.headroom--pinned:not(.headroom--top) #nav_desktop > ul > li:not(.btn) > a::before, header#header.headroom.headroom--unpinned:not(.stop-animation) #nav_desktop > ul > li:not(.btn) > a::before {
        transform: translate3d(0, 0px, 0);
        height: 4px; }
      header#header.headroom.headroom--pinned:not(.headroom--top) #nav_desktop > ul > li.btn, header#header.headroom.headroom--unpinned:not(.stop-animation) #nav_desktop > ul > li.btn {
        transform: translate3d(0, 24px, 0); } }

#calling_button.headroom.headroom--pinned:not(.headroom--top), #calling_button.headroom.headroom--unpinned:not(.stop-animation) {
  transition: transform 0.6s ease 0s;
  transform: translate3d(0, -150%, 0); }

.nav_side.headroom {
  will-change: position; }
  .nav_side.headroom.headroom--not-top {
    position: fixed;
    top: 150px; }

@keyframes open_menu {
  0% {
    transform: translate3d(100%, 0px, 0px); }
  100% {
    transform: translate3d(0, 0px, 0px); } }

#nav_mobile_container {
  transform: translate3d(0px, 0px, 0px);
  transition: transform 0.3s, opacity 0.3s, width 1s;
  z-index: 990;
  height: 100%;
  top: 0px;
  right: -1px;
  overflow: hidden;
  position: fixed;
  display: none;
  user-select: none; }
  #nav_mobile_container.opened {
    display: block;
    animation: open_menu 0.3s; }
  @media (max-width: 1226px) {
    #nav_mobile_container {
      width: 320px; } }
  @media (max-width: 639px) {
    #nav_mobile_container {
      width: 100%; } }

#nav_mobile {
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
  width: calc(100% + 20px);
  background: white; }
  #nav_mobile > ul {
    width: 100%;
    margin-top: 148px; }
    @media (max-width: 1226px) {
      #nav_mobile > ul {
        margin-top: 133px; } }
    @media (max-width: 639px) {
      #nav_mobile > ul {
        margin-top: 70px; } }
  #nav_mobile > ul img {
    display: none; }
  #nav_mobile > ul li:first-child {
    padding-top: 5px; }
    #nav_mobile > ul li:first-child > a {
      border: none !important; }
  #nav_mobile > ul li:nth-child(1) a {
    animation-delay: 0.01s;
    animation-duration: 0.6s;
    animation-name: fade_scale_95; }
  #nav_mobile > ul li:nth-child(2) a {
    animation-delay: 0.07s;
    animation-duration: 0.7s;
    animation-name: fade_scale_95; }
  #nav_mobile > ul li:nth-child(3) a {
    animation-delay: 0.13s;
    animation-duration: 0.8s;
    animation-name: fade_scale_95; }
  #nav_mobile > ul li:nth-child(4) a {
    animation-delay: 0.19s;
    animation-duration: 0.9s;
    animation-name: fade_scale_95; }
  #nav_mobile > ul li:nth-child(5) a {
    animation-delay: 0.25s;
    animation-duration: 1s;
    animation-name: fade_scale_95; }
  #nav_mobile > ul li:nth-child(6) a {
    animation-delay: 0.31s;
    animation-duration: 1.1s;
    animation-name: fade_scale_95; }
  #nav_mobile > ul li:nth-child(7) a {
    animation-delay: 0.37s;
    animation-duration: 1.2s;
    animation-name: fade_scale_95; }
  #nav_mobile > ul li:nth-child(8) a {
    animation-delay: 0.43s;
    animation-duration: 1.3s;
    animation-name: fade_scale_95; }
  #nav_mobile > ul li:nth-child(9) a {
    animation-delay: 0.49s;
    animation-duration: 1.4s;
    animation-name: fade_scale_95; }
  #nav_mobile > ul li:nth-child(10) a {
    animation-delay: 0.55s;
    animation-duration: 1.5s;
    animation-name: fade_scale_95; }
  #nav_mobile > ul li a {
    font-size: 13px;
    font-weight: 700;
    font-family: "Poppins", sans-serif;
    line-height: 1.5;
    position: relative;
    padding: 20px 0 20px 30px;
    letter-spacing: 1px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    transition: border 0.6s;
    animation-fill-mode: both; }
  #nav_mobile > ul > li {
    background: #fff; }
  #nav_mobile > ul > li:hover, #nav_mobile > ul > li.current-menu-item, #nav_mobile > ul > li.current-menu-ancestor, #nav_mobile > ul > li.current-menu-parent {
    background: #f0f0f0; }
    #nav_mobile > ul > li:hover > a, #nav_mobile > ul > li:hover + li > a, #nav_mobile > ul > li.current-menu-item > a, #nav_mobile > ul > li.current-menu-item + li > a, #nav_mobile > ul > li.current-menu-ancestor > a, #nav_mobile > ul > li.current-menu-ancestor + li > a, #nav_mobile > ul > li.current-menu-parent > a, #nav_mobile > ul > li.current-menu-parent + li > a {
      border-top: 1px solid rgba(0, 0, 0, 0); }
  #nav_mobile > ul > li > a {
    display: inline-block;
    position: relative;
    width: 100%;
    color: #2b2b2b; }
  #nav_mobile > ul > li > a > a::before {
    content: "";
    display: inline-block;
    height: 100%;
    width: 5px;
    position: absolute;
    left: 0;
    top: 0;
    background: #A30C1A; }
  #nav_mobile > ul > li > a:nth-child(2n) > a::before {
    background: rgba(163, 12, 26, 0.7); }
  #nav_mobile > ul li.menu-item-has-children > a::after {
    content: "›";
    position: absolute;
    font-size: 18px;
    font-weight: 400;
    height: 100%;
    box-sizing: inherit;
    color: #A30C1A;
    width: 40px;
    top: 0px;
    right: 21px;
    padding-left: 25px;
    padding-top: 14px; }
  #nav_mobile > ul > li.menu-item-object-custom > a[target="_blank"]::after {
    content: "››";
    position: absolute;
    letter-spacing: 0;
    font-size: 28px;
    font-weight: 300;
    height: 100%;
    box-sizing: inherit;
    color: #aaa;
    width: 62px;
    top: -5px;
    right: 0px;
    padding-left: 25px;
    padding-top: 4px; }
  #nav_mobile > ul > li.btn {
    margin-top: 18px;
    height: 50px;
    transform: translate3d(0, 0, 0);
    float: right;
    margin-left: 20px;
    margin-right: 10px;
    background: #A30C1A; }
    #nav_mobile > ul > li.btn:hover {
      background: #313030; }
    #nav_mobile > ul > li.btn::after {
      content: "›";
      color: #fff;
      font-size: 30px;
      position: absolute;
      padding-left: 15px;
      line-height: 1.1;
      top: 7px;
      right: 0;
      height: 35px;
      width: 45px;
      border-left: 1px solid rgba(255, 255, 255, 0.2); }
      #nav_mobile > ul > li.btn::after svg {
        margin-top: 1px;
        transform: scale(0.35); }
        #nav_mobile > ul > li.btn::after svg * {
          fill: #fff; }
    #nav_mobile > ul > li.btn a {
      font-size: 12px;
      font-weight: 700;
      font-family: "Poppins", sans-serif;
      color: #fff;
      line-height: 1;
      padding: 20px 70px 25px 28px;
      letter-spacing: 1px;
      text-transform: uppercase; }

#nav_mobile > ul > li ul {
  z-index: 1012;
  top: 148px; }
  @media (max-width: 1226px) {
    #nav_mobile > ul > li ul {
      top: 133px; } }
  @media (max-width: 639px) {
    #nav_mobile > ul > li ul {
      top: 70px; } }
  #nav_mobile > ul > li ul li > a {
    color: #fff;
    display: none; }
  #nav_mobile > ul > li ul.opened {
    transform: translate3d(7.4%, 0px, 0px); }
    #nav_mobile > ul > li ul.opened > li > a {
      display: block; }

#nav_mobile > ul > li > ul > li {
  background: #313030; }

#nav_mobile > ul > li > ul {
  background: #171717;
  overflow-y: scroll;
  overflow-x: hidden;
  height: 100%;
  width: 108.1%;
  position: absolute;
  right: 1px;
  transform: translate3d(108%, 0px, 0px);
  transition: transform 0.3s; }

#nav_mobile > ul > li > ul > li.current-menu-item, #nav_mobile > ul > li > ul > li.current-menu-ancestor, #nav_mobile > ul > li > ul > li:hover {
  background: #222121; }
  #nav_mobile > ul > li > ul > li.current-menu-item > a, #nav_mobile > ul > li > ul > li.current-menu-item + li > a, #nav_mobile > ul > li > ul > li.current-menu-ancestor > a, #nav_mobile > ul > li > ul > li.current-menu-ancestor + li > a, #nav_mobile > ul > li > ul > li:hover > a, #nav_mobile > ul > li > ul > li:hover + li > a {
    border-top: 1px solid rgba(255, 255, 255, 0); }

#nav_mobile > ul > li > ul li.menu-item-has-children > a::after {
  color: #fff;
  right: 30px; }

#menu_2 {
  background: #f3f3f3;
  padding: 10px 30px; }
  #menu_2 > ul > li {
    display: inline-block;
    width: 100%; }
  #menu_2 > ul > li > a {
    font-size: 14px;
    color: #6d6d6d;
    display: inline-block;
    padding: 12px 0px 13px 10px;
    position: relative; }
    #menu_2 > ul > li > a:before {
      content: "›";
      position: absolute;
      top: 11px;
      left: 0px;
      display: inline-block;
      font-weight: 400;
      color: #6d6d6d; }
  #menu_2 > ul > li > ul {
    display: none; }

#nav_mobile_container .logo-container {
  height: 133px;
  width: 133px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3000; }
  #nav_mobile_container .logo-container .image {
    transform-origin: 65% 50%;
    transform: scale(0.4); }
  @media (max-width: 639px) {
    #nav_mobile_container .logo-container {
      height: 70px;
      width: 70px; } }

.btn-home {
  z-index: 1012;
  position: absolute;
  display: inline-block;
  top: 0;
  left: 0;
  height: 70px;
  width: 70px;
  background: white;
  animation: fade 1.5s; }
  .btn-home .icon {
    height: 20px;
    width: 20px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1);
    background-image: url("../assets/images/icon-home0.svg");
    background-position: 50% 50%; }
  @media (max-width: 1226px) {
    .btn-home {
      height: 133px; } }
  @media (max-width: 639px) {
    .btn-home {
      height: 70px; } }

.bar-top {
  display: flex;
  align-items: center;
  height: 133px;
  position: absolute;
  transform: translate3d(0px, 0px, 0px);
  transition: transform 0.3s;
  top: 0px;
  right: 0px;
  width: 100%;
  padding-right: 133px; }
  .bar-top p {
    animation: fade 1s;
    font-size: 9px;
    font-weight: 700;
    color: white;
    padding-left: 30px;
    text-transform: uppercase;
    letter-spacing: 2px; }
  .bar-top::after {
    content: none; }
  .bar-top.l1 {
    background: #fff;
    z-index: 1011; }
  .bar-top.l2 {
    background: #171717;
    z-index: 1013; }
  .bar-top.l3 {
    background: #118888;
    z-index: 1015; }
  .bar-top.l2, .bar-top.l3 {
    display: none;
    transform: translate3d(100%, 0px, 0px); }
    .bar-top.l2.opened, .bar-top.l3.opened {
      display: flex;
      transform: translate3d(0px, 0px, 0px); }
  @media (max-width: 639px) {
    .bar-top {
      height: 70px;
      padding-right: 70px; } }

#calling_button {
  height: 133px;
  width: 133px;
  right: 138px;
  position: fixed;
  top: 0;
  z-index: 1000;
  transition: transform 0.6s ease 0.1s;
  animation: fade 1s;
  display: none; }
  #calling_button .icon-container {
    height: 50px;
    width: 50px;
    position: absolute;
    top: calc(50% - 25px);
    left: calc(50% - 0px); }
    @media (max-width: 639px) {
      #calling_button .icon-container {
        top: 25%;
        height: 50%;
        width: 50%; } }
  #calling_button .back-icon {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(163, 12, 26, 0.6);
    top: 0px;
    left: 0;
    border-radius: 50%;
    animation: pumpIt_calling_back_icon 3s ease 0.5s infinite both; }

@keyframes pumpIt_calling_back_icon {
  0% {
    opacity: 0;
    transform: scale(1.1); }
  50% {
    opacity: 0.15; }
  100% {
    opacity: 0;
    transform: scale(1.5); } }
  #calling_button .icon {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(163, 12, 26, 0.1);
    top: 0;
    left: 0;
    border-radius: 50%; }
  #calling_button svg {
    transform: scale(0.4); }
    #calling_button svg path {
      fill: #A30C1A; }
  @media (max-width: 1226px) {
    #calling_button {
      display: inline-block; } }
  @media (max-width: 639px) {
    #calling_button {
      height: 70px;
      width: 70px;
      right: 80px; } }

.lightbox-calcul-all-container {
  display: none; }
  .lightbox-calcul-all-container.active {
    display: block; }

.page-overlay.calcul {
  position: fixed;
  display: block;
  background: #000 !important;
  opacity: 0.7;
  z-index: 1000; }
  .page-overlay.calcul.ng-enter {
    opacity: 0;
    transition: opacity 0.2s; }
    .page-overlay.calcul.ng-enter.ng-enter-active {
      opacity: 0.7; }
  .page-overlay.calcul.ng-leave {
    opacity: 0.7;
    transition: opacity 0.35s; }
    .page-overlay.calcul.ng-leave.ng-leave-active {
      opacity: 0; }

#lightbox_container.calcul {
  z-index: 1100;
  height: 100%;
  top: 0px;
  right: -1px;
  overflow: hidden;
  position: fixed;
  transform: translate3d(0, 0, 0);
  user-select: none;
  width: 586px;
  background: #A30C1A;
  box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3); }
  #lightbox_container.calcul.ng-enter {
    transition: transform 0.5s, opacity 0.3s;
    transform: translate3d(100%, 0, 0);
    opacity: 0; }
  #lightbox_container.calcul.ng-enter-active {
    transform: translate3d(0, 0, 0);
    opacity: 1; }
  @media (max-width: 768px) {
    #lightbox_container.calcul {
      width: calc(100% - 200px); } }
  @media (max-width: 639px) {
    #lightbox_container.calcul {
      width: 100%; } }

#lightbox.calcul {
  height: 100%;
  width: calc(100% + 20px);
  overflow-x: hidden;
  overflow-y: scroll;
  z-index: 2000;
  display: inline-block;
  background: #A30C1A;
  cursor: default; }
  #lightbox.calcul > .inside {
    padding: 40px 50px 40px 52px;
    padding-right: 20%; }
    @media (max-width: 768px) {
      #lightbox.calcul > .inside {
        padding: 35px 20% 35px 40px; } }
    @media (max-width: 639px) {
      #lightbox.calcul > .inside {
        padding: 35px 15% 35px 9%; } }
  #lightbox.calcul .title-section-container {
    position: relative;
    margin-bottom: 0px;
    display: inline-block;
    width: 100%; }
    @media (max-width: 639px) {
      #lightbox.calcul .title-section-container {
        margin-bottom: 0px; } }
    #lightbox.calcul .title-section-container .title-section {
      color: #fff;
      font-size: 30px;
      font-weight: 300;
      margin-bottom: 20px;
      line-height: 1.3;
      user-select: none; }
      @media (max-width: 639px) {
        #lightbox.calcul .title-section-container .title-section {
          font-size: 18px; } }
      #lightbox.calcul .title-section-container .title-section b {
        display: block; }
    #lightbox.calcul .title-section-container .tel-container {
      user-select: none;
      display: inline-block;
      width: 100%;
      margin-bottom: 30px;
      animation: fade 1.5s; }
      #lightbox.calcul .title-section-container .tel-container, #lightbox.calcul .title-section-container .tel-container a {
        line-height: 1.4;
        color: #fff;
        font-size: 20px;
        font-weight: 700;
        letter-spacing: 0.5px; }
        @media (max-width: 740px) {
          #lightbox.calcul .title-section-container .tel-container, #lightbox.calcul .title-section-container .tel-container a {
            font-size: 14px; } }
      #lightbox.calcul .title-section-container .tel-container a {
        margin-left: 20px;
        padding: 10px; }
        @media (max-width: 639px) {
          #lightbox.calcul .title-section-container .tel-container a {
            margin-left: 0px; } }
        #lightbox.calcul .title-section-container .tel-container a:hover {
          text-decoration: underline; }
    #lightbox.calcul .title-section-container .petit-trait {
      width: 61px;
      height: 1px;
      position: relative;
      overflow: hidden;
      margin-bottom: 50px; }
      @media (max-width: 1024px) {
        #lightbox.calcul .title-section-container .petit-trait {
          margin-bottom: 30px; } }
      @media (max-width: 639px) {
        #lightbox.calcul .title-section-container .petit-trait {
          margin-bottom: 20px; } }
      #lightbox.calcul .title-section-container .petit-trait span {
        display: inline-block;
        background: #fff; }

#lightbox.calcul .close-btn {
  display: inline-block;
  width: 80px;
  height: 80px;
  position: absolute;
  z-index: 2000;
  top: 0px;
  right: 0px;
  cursor: pointer;
  background: #8b0a16; }
  #lightbox.calcul .close-btn .icon {
    display: block;
    width: 20px;
    height: 20px;
    margin: 0 auto;
    margin-top: 29px; }
    #lightbox.calcul .close-btn .icon .st0 {
      stroke: #fff;
      fill: none;
      stroke-width: 3;
      stroke-miterlimit: 10; }
  @media (max-width: 639px) {
    #lightbox.calcul .close-btn {
      top: -1px;
      right: -1px;
      border-radius: 0%; } }
  #lightbox.calcul .close-btn:hover {
    background: black; }
    #lightbox.calcul .close-btn:hover .st0 {
      fill: none;
      stroke-width: 4;
      stroke-miterlimit: 10; }

#lightbox.calcul .form-container .title {
  font-size: 30px;
  margin-bottom: 40px;
  color: #fff;
  font-weight: 100;
  user-select: none; }
  @media (max-width: 639px) {
    #lightbox.calcul .form-container .title {
      font-size: 18px;
      margin-bottom: 30px; } }

#lightbox.calcul .form-container form {
  width: 100%;
  margin-bottom: 150px;
  animation: fade 1.5s;
  /**************  PLACEHOLDER   ***************/ }
  @media (max-width: 1226px) {
    #lightbox.calcul .form-container form {
      margin-top: 30px;
      max-width: 100%; } }
  @media (max-width: 639px) {
    #lightbox.calcul .form-container form {
      margin-top: 20px; } }
  #lightbox.calcul .form-container form .container {
    display: inline-block;
    width: 100%;
    margin-bottom: 7px;
    position: relative; }
    #lightbox.calcul .form-container form .container .input-container {
      position: relative; }
    #lightbox.calcul .form-container form .container label {
      display: none !important;
      font-size: 17px;
      margin-bottom: 15px;
      letter-spacing: 0px;
      color: white; }
      @media (max-width: 639px) {
        #lightbox.calcul .form-container form .container label {
          font-size: 12px;
          letter-spacing: 0px; } }
    #lightbox.calcul .form-container form .container input, #lightbox.calcul .form-container form .container textarea {
      position: relative;
      user-select: text; }
    #lightbox.calcul .form-container form .container input, #lightbox.calcul .form-container form .container textarea, #lightbox.calcul .form-container form .container select,
    #lightbox.calcul .form-container form .container .selectize-input .item, #lightbox.calcul .form-container form .container .selectize-dropdown .option, #lightbox.calcul .form-container form .container .attacher-vos-docs {
      font-weight: 400;
      color: white;
      letter-spacing: 0px; }
    #lightbox.calcul .form-container form .container input, #lightbox.calcul .form-container form .container textarea, #lightbox.calcul .form-container form .container select, #lightbox.calcul .form-container form .container .selectize-input {
      width: 100%;
      padding: 0;
      z-index: 0;
      padding: 0 20px;
      transition: border 0.5s, padding-left 0.3s;
      border: none;
      background: rgba(0, 0, 0, 0.1); }
    #lightbox.calcul .form-container form .container input, #lightbox.calcul .form-container form .container select, #lightbox.calcul .form-container form .container .selectize-input, #lightbox.calcul .form-container form .container .attacher-vos-docs {
      height: 63px; }
    #lightbox.calcul .form-container form .container input {
      font-size: 15px;
      will-change: box-shadow, background, padding-left;
      background-position: 90% 50% !important;
      background-image: none !important;
      text-align: right; }
      @media (max-width: 1024px) {
        #lightbox.calcul .form-container form .container input {
          font-size: 15px; } }
      @media (max-width: 639px) {
        #lightbox.calcul .form-container form .container input {
          font-size: 13px; } }
    #lightbox.calcul .form-container form .container input:-webkit-autofill {
      -webkit-box-shadow: 0 0 0px 1000px #131313 inset;
      -webkit-text-fill-color: #fff !important; }
    #lightbox.calcul .form-container form .container.left {
      width: 48%;
      float: left; }
    #lightbox.calcul .form-container form .container.right {
      width: 48%;
      float: right; }
    #lightbox.calcul .form-container form .container.full {
      width: 100%;
      float: left; }
    #lightbox.calcul .form-container form .container.clear {
      clear: both; }
    #lightbox.calcul .form-container form .container.label-left {
      margin-bottom: 13px; }
      #lightbox.calcul .form-container form .container.label-left label {
        display: inline-block !important;
        float: left;
        width: 120px;
        padding-top: 20px; }
        @media (max-width: 639px) {
          #lightbox.calcul .form-container form .container.label-left label {
            width: 85px; } }
      #lightbox.calcul .form-container form .container.label-left .input-container {
        display: inline-block;
        float: left;
        width: calc(100% - 232px); }
        @media (max-width: 639px) {
          #lightbox.calcul .form-container form .container.label-left .input-container {
            width: calc(100% - 187px); } }
    #lightbox.calcul .form-container form .container.select {
      width: 102px;
      float: right;
      background: rgba(0, 0, 0, 0.1) !important;
      margin-bottom: 0; }
      #lightbox.calcul .form-container form .container.select .selectize-input, #lightbox.calcul .form-container form .container.select .selectize-input .item:hover {
        background: none !important; }
      #lightbox.calcul .form-container form .container.select .selectize-dropdown-content {
        background: #A30C1A !important; }
      #lightbox.calcul .form-container form .container.select .selectize-dropdown .option.selected, #lightbox.calcul .form-container form .container.select .selectize-dropdown .option:hover {
        background: rgba(0, 0, 0, 0.1) !important; }
      @media (max-width: 639px) {
        #lightbox.calcul .form-container form .container.select {
          width: 92px; } }
  #lightbox.calcul .form-container form .input-note {
    color: #fff;
    font-size: 14px;
    padding-top: 5px;
    margin-bottom: 35px; }
    @media (max-width: 639px) {
      #lightbox.calcul .form-container form .input-note {
        font-size: 10px; } }
  #lightbox.calcul .form-container form textarea {
    resize: none !important;
    padding-top: 20px !important;
    box-shadow: none;
    min-height: 140px;
    height: auto;
    line-height: 1.5;
    transition: border 0.5s, height 1s !important;
    max-height: 500px; }
  #lightbox.calcul .form-container form input::placeholder, #lightbox.calcul .form-container form textarea::placeholder {
    font-size: 15px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.8) !important;
    text-align: left;
    letter-spacing: 0.5px; }
    @media (max-width: 1024px) {
      #lightbox.calcul .form-container form input::placeholder, #lightbox.calcul .form-container form textarea::placeholder {
        font-size: 15px; } }
    @media (max-width: 639px) {
      #lightbox.calcul .form-container form input::placeholder, #lightbox.calcul .form-container form textarea::placeholder {
        font-size: 13px; } }
  #lightbox.calcul .form-container form input:focus::placeholder, #lightbox.calcul .form-container form textarea:focus::placeholder {
    opacity: 0.35 !important; }
  #lightbox.calcul .form-container form .champs-requis {
    text-align: right;
    margin-bottom: 0px;
    float: right; }
    #lightbox.calcul .form-container form .champs-requis p {
      font-size: 12px;
      font-weight: 300;
      font-style: italic;
      color: #fff;
      user-select: none;
      margin-top: 5px; }
      @media (max-width: 639px) {
        #lightbox.calcul .form-container form .champs-requis p {
          font-size: 11px; } }
  #lightbox.calcul .form-container form button[type="submit"] {
    width: 280px;
    height: 73px;
    line-height: 45px;
    padding: 0 0 0 0px;
    background: #fff;
    text-align: left;
    margin-top: 30px;
    overflow: hidden;
    position: relative; }
    @media (max-width: 639px) {
      #lightbox.calcul .form-container form button[type="submit"] {
        width: 100%;
        float: none;
        height: 50px; } }
    #lightbox.calcul .form-container form button[type="submit"] p {
      font-size: 18px;
      font-weight: 700;
      font-family: "Poppins", sans-serif;
      padding: 1px 40px 0px 37px;
      user-select: none;
      color: #464646;
      letter-spacing: 0px;
      text-align: left;
      display: inline-block; }
      @media (max-width: 639px) {
        #lightbox.calcul .form-container form button[type="submit"] p {
          font-size: 13px; } }
    #lightbox.calcul .form-container form button[type="submit"] .icon {
      width: 15px;
      height: 10px;
      user-select: none;
      position: absolute;
      top: calc(50% - 9px);
      right: 30px;
      transition: transform 0.3s; }
      #lightbox.calcul .form-container form button[type="submit"] .icon svg * {
        stroke: #464646; }
    #lightbox.calcul .form-container form button[type="submit"]:not(.sent):hover, #lightbox.calcul .form-container form button[type="submit"]:not(.sent):focus {
      background: #730912; }
      #lightbox.calcul .form-container form button[type="submit"]:not(.sent):hover p, #lightbox.calcul .form-container form button[type="submit"]:not(.sent):focus p {
        color: #fff; }
      #lightbox.calcul .form-container form button[type="submit"]:not(.sent):hover .icon svg *, #lightbox.calcul .form-container form button[type="submit"]:not(.sent):focus .icon svg * {
        stroke: #fff; }
      #lightbox.calcul .form-container form button[type="submit"]:not(.sent):hover .icon, #lightbox.calcul .form-container form button[type="submit"]:not(.sent):focus .icon {
        transform: translateX(3px); }
    #lightbox.calcul .form-container form button[type="submit"].wait {
      transition: background 0.2s;
      background: #4d4d4d; }
      #lightbox.calcul .form-container form button[type="submit"].wait p {
        color: #fff; }
      #lightbox.calcul .form-container form button[type="submit"].wait .icon {
        display: none; }
      #lightbox.calcul .form-container form button[type="submit"].wait .icon.envoyer,
      #lightbox.calcul .form-container form button[type="submit"].wait p.envoyer {
        display: none; }
      #lightbox.calcul .form-container form button[type="submit"].wait p.wait {
        animation: fade 1s; }
    #lightbox.calcul .form-container form button[type="submit"].sent {
      transition: background 0.2s;
      background: #730912 !important; }
      #lightbox.calcul .form-container form button[type="submit"].sent p {
        color: #fff; }
      #lightbox.calcul .form-container form button[type="submit"].sent .icon {
        display: none; }
      #lightbox.calcul .form-container form button[type="submit"].sent p.wait {
        display: none; }
      #lightbox.calcul .form-container form button[type="submit"].sent p.sent {
        animation: fade 1s; }

#lightbox.calcul .result-container {
  padding-top: 40px;
  margin-bottom: 20px; }
  @media (max-width: 639px) {
    #lightbox.calcul .result-container {
      padding-top: 25px; } }
  #lightbox.calcul .result-container, #lightbox.calcul .result-container * {
    color: #fff;
    font-weight: 700;
    font-size: 20px; }
    @media (max-width: 639px) {
      #lightbox.calcul .result-container, #lightbox.calcul .result-container * {
        font-size: 14px; } }
  #lightbox.calcul .result-container label {
    width: 120px;
    display: inline-block; }
    @media (max-width: 639px) {
      #lightbox.calcul .result-container label {
        width: 85px; } }
  #lightbox.calcul .result-container .result {
    display: inline-block; }

#lightbox.calcul a.calcul {
  height: 73px;
  border: 1px solid white;
  display: inline-block;
  float: left;
  clear: both;
  background: #fff;
  color: #A30C1A;
  font-weight: 700;
  padding: 37px;
  padding-top: 27px;
  padding-right: 80px;
  position: relative;
  font-size: 18px;
  margin-top: 40px; }
  @media (max-width: 639px) {
    #lightbox.calcul a.calcul {
      margin-top: 20px;
      font-size: 14px;
      height: 40px;
      padding-top: 24px;
      padding-right: 50px;
      padding-left: 30px; } }
  #lightbox.calcul a.calcul .arrow {
    position: absolute;
    right: 35px;
    top: 44%;
    transform: translate(0, -50%);
    width: 15px;
    height: 10px;
    transition: transform 0.3s; }
    #lightbox.calcul a.calcul .arrow svg * {
      stroke: #A30C1A; }
    @media (max-width: 639px) {
      #lightbox.calcul a.calcul .arrow {
        right: 20px;
        width: 10px;
        height: 6px;
        top: 43%; } }
  #lightbox.calcul a.calcul:hover {
    background: #A30C1A;
    border: 1px solid white;
    color: #fff; }
    #lightbox.calcul a.calcul:hover .arrow {
      transform: translate(2px, -50%); }
      #lightbox.calcul a.calcul:hover .arrow svg * {
        stroke: #fff; }
    #lightbox.calcul a.calcul:hover::after {
      opacity: 1;
      width: 100%; }

.lightbox-contact-all-container {
  display: none; }
  .lightbox-contact-all-container.active {
    display: block; }

.page-overlay.contact {
  position: fixed;
  display: block;
  background: #000 !important;
  opacity: 0.7;
  z-index: 1000; }
  .page-overlay.contact.ng-enter {
    opacity: 0;
    transition: opacity 0.2s; }
    .page-overlay.contact.ng-enter.ng-enter-active {
      opacity: 0.7; }
  .page-overlay.contact.ng-leave {
    opacity: 0.7;
    transition: opacity 0.35s; }
    .page-overlay.contact.ng-leave.ng-leave-active {
      opacity: 0; }

#lightbox_container.contact {
  z-index: 1100;
  height: 100%;
  top: 0px;
  right: -1px;
  overflow: hidden;
  position: fixed;
  transform: translate3d(0, 0, 0);
  user-select: none;
  width: 586px;
  background: #A30C1A;
  box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3); }
  #lightbox_container.contact.ng-enter {
    transition: transform 0.5s, opacity 0.3s;
    transform: translate3d(100%, 0, 0);
    opacity: 0; }
  #lightbox_container.contact.ng-enter-active {
    transform: translate3d(0, 0, 0);
    opacity: 1; }
  @media (max-width: 768px) {
    #lightbox_container.contact {
      width: calc(100% - 200px); } }
  @media (max-width: 639px) {
    #lightbox_container.contact {
      width: 100%; } }

#lightbox.contact {
  height: 100%;
  width: calc(100% + 20px);
  overflow-x: hidden;
  overflow-y: scroll;
  z-index: 2000;
  display: inline-block;
  background: #A30C1A;
  cursor: default; }
  #lightbox.contact > .inside {
    padding: 40px 50px 40px 52px;
    padding-right: 20%; }
    @media (max-width: 768px) {
      #lightbox.contact > .inside {
        padding: 35px 20% 35px 40px; } }
    @media (max-width: 639px) {
      #lightbox.contact > .inside {
        padding: 35px 15% 35px 9%; } }
  #lightbox.contact .title-section-container {
    position: relative;
    margin-bottom: 50px;
    display: inline-block;
    width: 100%; }
    @media (max-width: 768px) {
      #lightbox.contact .title-section-container {
        margin-bottom: 30px; } }
    #lightbox.contact .title-section-container .title-section {
      color: #fff;
      font-size: 27px;
      font-weight: 300;
      margin-bottom: 25px;
      line-height: 1.4;
      user-select: none; }
      @media (max-width: 639px) {
        #lightbox.contact .title-section-container .title-section {
          font-size: 18px; } }
      #lightbox.contact .title-section-container .title-section b {
        display: block; }
    #lightbox.contact .title-section-container .petit-trait {
      width: 61px;
      height: 1px;
      position: relative;
      overflow: hidden; }
      #lightbox.contact .title-section-container .petit-trait span {
        display: inline-block;
        background: #fff; }
  #lightbox.contact .addresses-container {
    margin-bottom: 60px; }
    #lightbox.contact .addresses-container ul {
      display: inline-block;
      width: 100%; }
      #lightbox.contact .addresses-container ul li {
        position: relative;
        padding-left: 40px; }
        #lightbox.contact .addresses-container ul li:nth-child(1) {
          transition-delay: 0.01s;
          transition-duration: 0.6s; }
        #lightbox.contact .addresses-container ul li:nth-child(2) {
          transition-delay: 0.07s;
          transition-duration: 0.7s; }
        #lightbox.contact .addresses-container ul li:nth-child(3) {
          transition-delay: 0.13s;
          transition-duration: 0.8s; }
        #lightbox.contact .addresses-container ul li:nth-child(4) {
          transition-delay: 0.19s;
          transition-duration: 0.9s; }
        #lightbox.contact .addresses-container ul li:nth-child(5) {
          transition-delay: 0.25s;
          transition-duration: 1s; }
        #lightbox.contact .addresses-container ul li:nth-child(6) {
          transition-delay: 0.31s;
          transition-duration: 1.1s; }
        #lightbox.contact .addresses-container ul li:nth-child(7) {
          transition-delay: 0.37s;
          transition-duration: 1.2s; }
        #lightbox.contact .addresses-container ul li:nth-child(8) {
          transition-delay: 0.43s;
          transition-duration: 1.3s; }
        #lightbox.contact .addresses-container ul li:nth-child(9) {
          transition-delay: 0.49s;
          transition-duration: 1.4s; }
        #lightbox.contact .addresses-container ul li:nth-child(10) {
          transition-delay: 0.55s;
          transition-duration: 1.5s; }
        #lightbox.contact .addresses-container ul li:nth-child(11) {
          transition-delay: 0.61s;
          transition-duration: 1.6s; }
        #lightbox.contact .addresses-container ul li:nth-child(12) {
          transition-delay: 0.67s;
          transition-duration: 1.7s; }
        #lightbox.contact .addresses-container ul li:nth-child(13) {
          transition-delay: 0.73s;
          transition-duration: 1.8s; }
        #lightbox.contact .addresses-container ul li:nth-child(14) {
          transition-delay: 0.79s;
          transition-duration: 1.9s; }
        #lightbox.contact .addresses-container ul li:nth-child(15) {
          transition-delay: 0.85s;
          transition-duration: 2s; }
        #lightbox.contact .addresses-container ul li:nth-child(16) {
          transition-delay: 0.91s;
          transition-duration: 2.1s; }
        #lightbox.contact .addresses-container ul li:nth-child(17) {
          transition-delay: 0.97s;
          transition-duration: 2.2s; }
        #lightbox.contact .addresses-container ul li:nth-child(18) {
          transition-delay: 1.03s;
          transition-duration: 2.3s; }
        #lightbox.contact .addresses-container ul li:nth-child(19) {
          transition-delay: 1.09s;
          transition-duration: 2.4s; }
        #lightbox.contact .addresses-container ul li:nth-child(20) {
          transition-delay: 1.15s;
          transition-duration: 2.5s; }
        #lightbox.contact .addresses-container ul li .icon {
          width: 14px;
          height: 14px;
          position: absolute;
          top: 21px;
          left: 0; }
          @media (max-width: 1024px) {
            #lightbox.contact .addresses-container ul li .icon {
              top: 19px; } }
          @media (max-width: 639px) {
            #lightbox.contact .addresses-container ul li .icon {
              top: 18px; } }
          #lightbox.contact .addresses-container ul li .icon svg * {
            fill: #fff; }
          #lightbox.contact .addresses-container ul li .icon.googlemap {
            width: 15px;
            height: 20px;
            top: 18px;
            left: 0px; }
            @media (max-width: 1024px) {
              #lightbox.contact .addresses-container ul li .icon.googlemap {
                top: 16px; } }
            @media (max-width: 639px) {
              #lightbox.contact .addresses-container ul li .icon.googlemap {
                top: 15px; } }
        #lightbox.contact .addresses-container ul li * {
          font-weight: 500;
          font-size: 15px;
          color: #fff; }
          @media (max-width: 639px) {
            #lightbox.contact .addresses-container ul li * {
              font-size: 13px; } }
        #lightbox.contact .addresses-container ul li a {
          display: inline-block;
          width: 100%;
          padding: 14px 0 14px 0px;
          line-height: 1.8;
          border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
          #lightbox.contact .addresses-container ul li a:hover {
            text-decoration: underline; }
          @media (max-width: 639px) {
            #lightbox.contact .addresses-container ul li a span {
              display: block; } }
        #lightbox.contact .addresses-container ul li:last-child a {
          border-bottom: none; }

#lightbox.contact .close-btn {
  display: inline-block;
  width: 80px;
  height: 80px;
  position: absolute;
  z-index: 2000;
  top: 0px;
  right: 0px;
  cursor: pointer;
  background: #8b0a16; }
  #lightbox.contact .close-btn .icon {
    display: block;
    width: 20px;
    height: 20px;
    margin: 0 auto;
    margin-top: 29px; }
    #lightbox.contact .close-btn .icon .st0 {
      stroke: #fff;
      fill: none;
      stroke-width: 3;
      stroke-miterlimit: 10; }
  @media (max-width: 639px) {
    #lightbox.contact .close-btn {
      top: -1px;
      right: -1px;
      border-radius: 0%; } }
  #lightbox.contact .close-btn:hover {
    background: black; }
    #lightbox.contact .close-btn:hover .st0 {
      fill: none;
      stroke-width: 4;
      stroke-miterlimit: 10; }

#lightbox.contact .form-container .title {
  font-size: 30px;
  margin-bottom: 40px;
  color: #fff;
  font-weight: 100;
  user-select: none; }
  @media (max-width: 639px) {
    #lightbox.contact .form-container .title {
      font-size: 18px;
      margin-bottom: 30px; } }

#lightbox.contact .form-container form {
  width: 100%;
  margin-bottom: 150px;
  animation: fade 1.5s;
  /**************  PLACEHOLDER   ***************/ }
  @media (max-width: 1226px) {
    #lightbox.contact .form-container form {
      margin-top: 30px;
      max-width: 100%; } }
  @media (max-width: 639px) {
    #lightbox.contact .form-container form {
      margin-top: 20px; } }
  #lightbox.contact .form-container form .container {
    display: inline-block;
    width: 100%;
    margin-bottom: 7px;
    position: relative; }
    #lightbox.contact .form-container form .container label {
      display: none !important;
      font-size: 15px;
      margin-bottom: 15px;
      letter-spacing: 1px;
      color: rgba(255, 255, 255, 0.9); }
    #lightbox.contact .form-container form .container input, #lightbox.contact .form-container form .container textarea {
      position: relative;
      user-select: text; }
    #lightbox.contact .form-container form .container input, #lightbox.contact .form-container form .container textarea, #lightbox.contact .form-container form .container select,
    #lightbox.contact .form-container form .container .selectize-input .item, #lightbox.contact .form-container form .container .selectize-dropdown .option, #lightbox.contact .form-container form .container .attacher-vos-docs {
      font-weight: 400;
      color: white;
      letter-spacing: 0px; }
    #lightbox.contact .form-container form .container input, #lightbox.contact .form-container form .container textarea, #lightbox.contact .form-container form .container select, #lightbox.contact .form-container form .container .selectize-input {
      width: 100%;
      padding: 0;
      z-index: 0;
      padding: 0 20px;
      transition: border 0.5s, padding-left 0.3s;
      border: none;
      background: rgba(0, 0, 0, 0.1); }
    #lightbox.contact .form-container form .container input, #lightbox.contact .form-container form .container select, #lightbox.contact .form-container form .container .selectize-input, #lightbox.contact .form-container form .container .attacher-vos-docs {
      height: 63px;
      line-height: 63px; }
      @media (max-width: 639px) {
        #lightbox.contact .form-container form .container input, #lightbox.contact .form-container form .container select, #lightbox.contact .form-container form .container .selectize-input, #lightbox.contact .form-container form .container .attacher-vos-docs {
          height: 50px;
          line-height: 50px; } }
    #lightbox.contact .form-container form .container input {
      font-size: 15px;
      will-change: box-shadow, background, padding-left; }
      @media (max-width: 1024px) {
        #lightbox.contact .form-container form .container input {
          font-size: 15px; } }
      @media (max-width: 639px) {
        #lightbox.contact .form-container form .container input {
          font-size: 13px; } }
    #lightbox.contact .form-container form .container input:-webkit-autofill {
      -webkit-box-shadow: 0 0 0px 1000px #131313 inset;
      -webkit-text-fill-color: #fff !important; }
    #lightbox.contact .form-container form .container.left {
      width: 48%;
      float: left; }
    #lightbox.contact .form-container form .container.right {
      width: 48%;
      float: right; }
    #lightbox.contact .form-container form .container.full {
      width: 100%;
      float: left; }
    #lightbox.contact .form-container form .container.clear {
      clear: both; }
    @media (max-width: 768px) {
      #lightbox.contact .form-container form .container {
        width: 100% !important;
        float: none !important;
        clear: both; } }
  #lightbox.contact .form-container form textarea {
    resize: none !important;
    padding-top: 20px !important;
    box-shadow: none;
    min-height: 140px;
    height: auto;
    line-height: 1.5;
    transition: border 0.5s, height 1s !important;
    max-height: 500px; }
  #lightbox.contact .form-container form input::placeholder, #lightbox.contact .form-container form textarea::placeholder {
    font-size: 15px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.8) !important;
    text-align: left;
    letter-spacing: 0.5px; }
    @media (max-width: 1024px) {
      #lightbox.contact .form-container form input::placeholder, #lightbox.contact .form-container form textarea::placeholder {
        font-size: 15px; } }
    @media (max-width: 639px) {
      #lightbox.contact .form-container form input::placeholder, #lightbox.contact .form-container form textarea::placeholder {
        font-size: 13px; } }
  #lightbox.contact .form-container form input:focus::placeholder, #lightbox.contact .form-container form textarea:focus::placeholder {
    opacity: 0.35 !important; }
  #lightbox.contact .form-container form .champs-requis {
    text-align: right;
    margin-bottom: 0px;
    float: right; }
    #lightbox.contact .form-container form .champs-requis p {
      font-size: 12px;
      font-weight: 300;
      font-style: italic;
      color: #fff;
      user-select: none;
      margin-top: 5px; }
      @media (max-width: 639px) {
        #lightbox.contact .form-container form .champs-requis p {
          font-size: 11px; } }
  #lightbox.contact .form-container form button[type="submit"] {
    width: 280px;
    height: 73px;
    line-height: 45px;
    padding: 0 0 0 0px;
    background: #fff;
    text-align: left;
    margin-top: 30px;
    overflow: hidden;
    position: relative; }
    @media (max-width: 639px) {
      #lightbox.contact .form-container form button[type="submit"] {
        width: 100%;
        float: none;
        height: 50px; } }
    #lightbox.contact .form-container form button[type="submit"] p {
      font-size: 18px;
      font-weight: 700;
      font-family: "Poppins", sans-serif;
      padding: 1px 40px 0px 37px;
      user-select: none;
      color: #464646;
      letter-spacing: 0px;
      text-align: left;
      display: inline-block; }
      @media (max-width: 639px) {
        #lightbox.contact .form-container form button[type="submit"] p {
          font-size: 13px; } }
    #lightbox.contact .form-container form button[type="submit"] .icon {
      width: 15px;
      height: 10px;
      user-select: none;
      position: absolute;
      top: calc(50% - 9px);
      right: 30px;
      transition: transform 0.3s; }
      #lightbox.contact .form-container form button[type="submit"] .icon svg * {
        stroke: #464646; }
    #lightbox.contact .form-container form button[type="submit"]:not(.sent):hover, #lightbox.contact .form-container form button[type="submit"]:not(.sent):focus {
      background: #730912; }
      #lightbox.contact .form-container form button[type="submit"]:not(.sent):hover p, #lightbox.contact .form-container form button[type="submit"]:not(.sent):focus p {
        color: #fff; }
      #lightbox.contact .form-container form button[type="submit"]:not(.sent):hover .icon svg *, #lightbox.contact .form-container form button[type="submit"]:not(.sent):focus .icon svg * {
        stroke: #fff; }
      #lightbox.contact .form-container form button[type="submit"]:not(.sent):hover .icon, #lightbox.contact .form-container form button[type="submit"]:not(.sent):focus .icon {
        transform: translateX(3px); }
    #lightbox.contact .form-container form button[type="submit"].wait {
      transition: background 0.2s;
      background: #4d4d4d; }
      #lightbox.contact .form-container form button[type="submit"].wait p {
        color: #fff; }
      #lightbox.contact .form-container form button[type="submit"].wait .icon {
        display: none; }
      #lightbox.contact .form-container form button[type="submit"].wait .icon.envoyer,
      #lightbox.contact .form-container form button[type="submit"].wait p.envoyer {
        display: none; }
      #lightbox.contact .form-container form button[type="submit"].wait p.wait {
        animation: fade 1s; }
    #lightbox.contact .form-container form button[type="submit"].sent {
      transition: background 0.2s;
      background: #730912 !important; }
      #lightbox.contact .form-container form button[type="submit"].sent p {
        color: #fff; }
      #lightbox.contact .form-container form button[type="submit"].sent .icon {
        display: none; }
      #lightbox.contact .form-container form button[type="submit"].sent p.wait {
        display: none; }
      #lightbox.contact .form-container form button[type="submit"].sent p.sent {
        animation: fade 1s; }

#lightbox.contact .response_box-container {
  position: relative;
  height: 50px;
  padding-top: 50px; }
  #lightbox.contact .response_box-container.ng-enter {
    transition: opacity 1.5s, height 1s;
    height: 0;
    opacity: 0; }
    #lightbox.contact .response_box-container.ng-enter.ng-enter-active {
      opacity: 1;
      height: 50px; }
  #lightbox.contact .response_box-container.ng-leave {
    transition: opacity 2.5s, height 2.5s;
    height: 50px;
    opacity: 1; }
    #lightbox.contact .response_box-container.ng-leave.ng-leave-active {
      opacity: 0;
      height: 0px; }
  #lightbox.contact .response_box-container .response_box {
    text-align: center;
    display: inline-block;
    position: absolute;
    top: 40px;
    left: 0;
    font-size: 14px;
    width: 100%;
    letter-spacing: 0px;
    font-style: italic; }
    #lightbox.contact .response_box-container .response_box.please-wait {
      color: #fff; }
    #lightbox.contact .response_box-container .response_box.success {
      color: #fff; }
    #lightbox.contact .response_box-container .response_box.error {
      color: #fff; }

@keyframes show_tooltip {
  0% {
    z-index: 1;
    transform: translateY(30px); }
  50% {
    z-index: 1;
    transform: translateY(-1px); }
  51% {
    z-index: 20; }
  100% {
    z-index: 20;
    transform: translateY(0px); } }

@keyframes show_tooltip_triangle {
  0% {
    transform: translateY(-20px); }
  20% {
    transform: translateY(-20px); }
  100% {
    transform: translateY(0px); } }

#lightbox.contact form.ng-submitted input.focus-submitted + .tooltip,
#lightbox.contact form.ng-submitted div.container.select.focus-submitted .tooltip,
#lightbox.contact form.ng-submitted div.radio-container.focus-submitted .tooltip,
#lightbox.contact form.ng-submitted div#gdpr_container.focus-submitted .tooltip,
#lightbox.contact form.ng-submitted textarea.focus-submitted + .tooltip {
  display: inline-block; }

#lightbox.contact form .tooltip {
  position: absolute;
  top: -38px;
  left: 19px;
  will-change: transform;
  box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.09) !important;
  transform: translate3d(0, 0, 0);
  display: none;
  animation-fill-mode: both;
  animation: show_tooltip 0.25s; }
  #lightbox.contact form .tooltip span {
    padding: 15px 19px;
    display: inline-block;
    color: #fff;
    font-size: 12px;
    animation: fade 0.2s;
    cursor: default; }
    #lightbox.contact form .tooltip span::first-letter {
      text-transform: uppercase; }
  #lightbox.contact form .tooltip > div::after {
    content: "";
    transform: translate3d(0, 0, 0);
    animation: show_tooltip_triangle 0.3s;
    position: absolute;
    left: 0;
    bottom: -9px;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid green; }
  #lightbox.contact form .tooltip .files-missing,
  #lightbox.contact form .tooltip .email-verif-error,
  #lightbox.contact form .tooltip [ng-message="required"] {
    background: #c94e4d; }
    #lightbox.contact form .tooltip .files-missing::after,
    #lightbox.contact form .tooltip .email-verif-error::after,
    #lightbox.contact form .tooltip [ng-message="required"]::after {
      border-left-color: #c94e4d; }
  #lightbox.contact form .tooltip [ng-message="pattern"], #lightbox.contact form .tooltip [ng-message="email"] {
    background: #e8ae47; }
    #lightbox.contact form .tooltip [ng-message="pattern"]::after, #lightbox.contact form .tooltip [ng-message="email"]::after {
      border-left-color: #e8ae47; }

#lightbox.contact form .container.input .icon {
  height: 100%; }

#lightbox.contact form .container .icon {
  position: absolute;
  z-index: 20;
  top: 0.5px;
  will-change: opacity, transform; }
  #lightbox.contact form .container .icon.ng-enter {
    opacity: 0;
    transform: scale(0);
    transition: opacity 0.25s 0.05s, transform 0.2s 0.05s; }
    #lightbox.contact form .container .icon.ng-enter.ng-enter-active {
      transform: scale(1);
      opacity: 1; }

#lightbox.contact form .container .icon-checked {
  width: 14px;
  left: 17px; }
  #lightbox.contact form .container .icon-checked path {
    fill: green; }

#lightbox.contact form .container .icon-circle {
  width: 9px;
  left: 18px; }
  #lightbox.contact form .container .icon-circle .st0 {
    fill: #fda607; }

#lightbox.contact form .container .icon-cross {
  width: 10px;
  left: 17px; }
  #lightbox.contact form .container .icon-cross .st0 {
    fill: none;
    stroke: #e91f1f;
    stroke-width: 9;
    stroke-miterlimit: 10; }

#lightbox.contact form .container.textarea .icon {
  height: 23px; }

#lightbox.contact form .container.textarea .icon-checked {
  top: 18.5px; }

#lightbox.contact form .container.textarea .icon-circle, #lightbox.contact form .container.textarea .icon-cross {
  top: 17.5px; }

#lightbox.contact form input.prefill, #lightbox.contact form input.ng-invalid.cross-has-shown, #lightbox.contact form input.ng-invalid-pattern.ng-dirty.blured, #lightbox.contact form input.ng-invalid-pattern.ng-dirty.blured, #lightbox.contact form input.ng-valid.blured.ng-dirty, #lightbox.contact form input[disabled="disabled"] {
  padding-left: 44px !important; }

#lightbox.contact form textarea.ng-valid:not(.ng-empty), #lightbox.contact form textarea.cross-has-shown {
  padding-left: 44px !important; }

#lightbox.contact form .not-required-textarea textarea[ng-required="false"] {
  padding-left: 0 !important; }

#lightbox.contact form .not-required-textarea .icon-checked {
  display: none !important; }

#lightbox.contact form.ng-submitted input.ng-invalid-pattern, #lightbox.contact form.ng-submitted textarea.ng-invalid-pattern {
  padding-left: 44px !important; }

#lightbox.contact form.ng-submitted input[type="tel"].ng-valid, #lightbox.contact form.ng-submitted input[type="email"].ng-valid, #lightbox.contact form.ng-submitted textarea[type="tel"].ng-valid, #lightbox.contact form.ng-submitted textarea[type="email"].ng-valid {
  padding-left: 44px !important; }

#lightbox.contact div.gdpr-container {
  width: 100%;
  display: inline-block;
  margin: 30px auto 10px !important;
  position: relative; }
  @media (max-width: 1024px) {
    #lightbox.contact div.gdpr-container {
      width: 70%; } }
  @media (max-width: 768px) {
    #lightbox.contact div.gdpr-container {
      width: 100%; } }
  #lightbox.contact div.gdpr-container .tooltip.gdpr {
    left: 35px;
    top: -55px; }
  #lightbox.contact div.gdpr-container p.note {
    padding-left: 40px;
    user-select: none;
    z-index: 11;
    font-family: "Poppins", sans-serif; }
    @media (max-width: 639px) {
      #lightbox.contact div.gdpr-container p.note {
        padding-left: 40px; } }
    #lightbox.contact div.gdpr-container p.note a {
      -webkit-text-stroke: #fff;
      text-decoration: underline; }
    #lightbox.contact div.gdpr-container p.note, #lightbox.contact div.gdpr-container p.note a {
      font-size: 13px;
      color: #fff; }
      @media (max-width: 639px) {
        #lightbox.contact div.gdpr-container p.note, #lightbox.contact div.gdpr-container p.note a {
          font-size: 11px; } }
  #lightbox.contact div.gdpr-container a:hover {
    color: #A30C1A; }
  #lightbox.contact div.gdpr-container input[type="checkbox"] {
    display: none; }
    #lightbox.contact div.gdpr-container input[type="checkbox"] + label .case {
      cursor: pointer;
      width: 26px;
      height: 26px;
      border-radius: 50%;
      text-align: center;
      position: absolute;
      z-index: 11;
      left: 0px;
      top: -3px;
      border: 1px solid rgba(0, 0, 0, 0.15);
      padding: 7px;
      background: #fff; }
      @media (max-width: 639px) {
        #lightbox.contact div.gdpr-container input[type="checkbox"] + label .case {
          top: -4px; } }
      #lightbox.contact div.gdpr-container input[type="checkbox"] + label .case:hover {
        border: 1px solid transparent; }
        #lightbox.contact div.gdpr-container input[type="checkbox"] + label .case:hover span {
          background: #a30c1a;
          transition: transform 0.15s;
          transform: scale(1); }
    #lightbox.contact div.gdpr-container input[type="checkbox"] + label .case span {
      background: #A30C1A;
      display: block;
      height: 100%;
      border-radius: 50%;
      transition: transform 0.2s;
      transform: scale(0); }
    #lightbox.contact div.gdpr-container input[type="checkbox"]:checked + label .case span {
      transition: transform 0.15s;
      transform: scale(1); }

.lightbox-devis-particulier-all-container {
  display: none; }
  .lightbox-devis-particulier-all-container.active {
    display: block; }

.page-overlay.devis-part {
  position: fixed;
  display: block;
  background: #000 !important;
  opacity: 0.7;
  z-index: 1000; }
  .page-overlay.devis-part.ng-enter {
    opacity: 0;
    transition: opacity 0.2s; }
    .page-overlay.devis-part.ng-enter.ng-enter-active {
      opacity: 0.7; }
  .page-overlay.devis-part.ng-leave {
    opacity: 0.7;
    transition: opacity 0.35s; }
    .page-overlay.devis-part.ng-leave.ng-leave-active {
      opacity: 0; }

#lightbox_container.devis-part {
  z-index: 1100;
  height: 100%;
  top: 0px;
  right: -1px;
  overflow: hidden;
  position: fixed;
  transform: translate3d(0, 0, 0);
  user-select: none;
  width: 586px;
  background: #A30C1A;
  box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3); }
  #lightbox_container.devis-part.ng-enter {
    transition: transform 0.5s, opacity 0.3s;
    transform: translate3d(100%, 0, 0);
    opacity: 0; }
  #lightbox_container.devis-part.ng-enter-active {
    transform: translate3d(0, 0, 0);
    opacity: 1; }
  @media (max-width: 768px) {
    #lightbox_container.devis-part {
      width: calc(100% - 200px); } }
  @media (max-width: 639px) {
    #lightbox_container.devis-part {
      width: 100%; } }

#lightbox.devis-part {
  height: 100%;
  width: calc(100% + 20px);
  overflow-x: hidden;
  overflow-y: scroll;
  z-index: 2000;
  display: inline-block;
  background: #A30C1A;
  cursor: default; }
  #lightbox.devis-part > .inside {
    padding: 40px 50px 40px 52px;
    padding-right: 20%; }
    @media (max-width: 768px) {
      #lightbox.devis-part > .inside {
        padding: 35px 20% 35px 40px; } }
    @media (max-width: 639px) {
      #lightbox.devis-part > .inside {
        padding: 35px 15% 35px 9%; } }
  #lightbox.devis-part .title-section-container {
    position: relative;
    margin-bottom: 30px;
    display: inline-block;
    width: 100%; }
    @media (max-width: 639px) {
      #lightbox.devis-part .title-section-container {
        margin-bottom: 20px; } }
    #lightbox.devis-part .title-section-container .title-section {
      color: #fff;
      font-size: 27px;
      font-weight: 300;
      margin-bottom: 20px;
      line-height: 1.3;
      user-select: none; }
      @media (max-width: 639px) {
        #lightbox.devis-part .title-section-container .title-section {
          font-size: 18px; } }
      #lightbox.devis-part .title-section-container .title-section b {
        display: block; }
    #lightbox.devis-part .title-section-container .tel-container {
      user-select: none;
      display: inline-block;
      width: 100%;
      margin-bottom: 30px;
      animation: fade 1.5s; }
      #lightbox.devis-part .title-section-container .tel-container, #lightbox.devis-part .title-section-container .tel-container a {
        line-height: 1.4;
        color: #fff;
        font-size: 20px;
        font-weight: 700;
        letter-spacing: 0.5px; }
        @media (max-width: 740px) {
          #lightbox.devis-part .title-section-container .tel-container, #lightbox.devis-part .title-section-container .tel-container a {
            font-size: 14px; } }
      #lightbox.devis-part .title-section-container .tel-container a {
        margin-left: 20px;
        padding: 10px; }
        @media (max-width: 639px) {
          #lightbox.devis-part .title-section-container .tel-container a {
            margin-left: 0px; } }
        #lightbox.devis-part .title-section-container .tel-container a:hover {
          text-decoration: underline; }
    #lightbox.devis-part .title-section-container .petit-trait {
      width: 61px;
      height: 1px;
      position: relative;
      overflow: hidden;
      margin-bottom: 50px; }
      @media (max-width: 768px) {
        #lightbox.devis-part .title-section-container .petit-trait {
          margin-bottom: 0px; } }
      #lightbox.devis-part .title-section-container .petit-trait span {
        display: inline-block;
        background: #fff; }

#lightbox.devis-part .close-btn {
  display: inline-block;
  width: 80px;
  height: 80px;
  position: absolute;
  z-index: 2000;
  top: 0px;
  right: 0px;
  cursor: pointer;
  background: #8b0a16; }
  #lightbox.devis-part .close-btn .icon {
    display: block;
    width: 20px;
    height: 20px;
    margin: 0 auto;
    margin-top: 29px; }
    #lightbox.devis-part .close-btn .icon .st0 {
      stroke: #fff;
      fill: none;
      stroke-width: 3;
      stroke-miterlimit: 10; }
  @media (max-width: 639px) {
    #lightbox.devis-part .close-btn {
      top: -1px;
      right: -1px;
      border-radius: 0%; } }
  #lightbox.devis-part .close-btn:hover {
    background: black; }
    #lightbox.devis-part .close-btn:hover .st0 {
      fill: none;
      stroke-width: 4;
      stroke-miterlimit: 10; }

#lightbox.devis-part .form-container .title {
  font-size: 30px;
  margin-bottom: 40px;
  color: #fff;
  font-weight: 100;
  user-select: none; }
  @media (max-width: 639px) {
    #lightbox.devis-part .form-container .title {
      font-size: 18px;
      margin-bottom: 30px; } }

#lightbox.devis-part .form-container form {
  width: 100%;
  margin-bottom: 150px;
  animation: fade 1.5s;
  /**************  PLACEHOLDER   ***************/ }
  @media (max-width: 1226px) {
    #lightbox.devis-part .form-container form {
      margin-top: 30px;
      max-width: 100%; } }
  @media (max-width: 639px) {
    #lightbox.devis-part .form-container form {
      margin-top: 20px; } }
  #lightbox.devis-part .form-container form .container {
    display: inline-block;
    width: 100%;
    margin-bottom: 7px;
    position: relative; }
    #lightbox.devis-part .form-container form .container .input-container {
      position: relative; }
    #lightbox.devis-part .form-container form .container label {
      display: none !important;
      font-size: 16px;
      margin-bottom: 15px;
      letter-spacing: 0px;
      color: white; }
      @media (max-width: 639px) {
        #lightbox.devis-part .form-container form .container label {
          font-size: 12px;
          letter-spacing: 0px; } }
    #lightbox.devis-part .form-container form .container input, #lightbox.devis-part .form-container form .container textarea {
      position: relative;
      user-select: text; }
    #lightbox.devis-part .form-container form .container input, #lightbox.devis-part .form-container form .container textarea, #lightbox.devis-part .form-container form .container select,
    #lightbox.devis-part .form-container form .container .selectize-input .item, #lightbox.devis-part .form-container form .container .selectize-dropdown .option, #lightbox.devis-part .form-container form .container .attacher-vos-docs {
      font-weight: 400;
      color: white;
      letter-spacing: 0px; }
    #lightbox.devis-part .form-container form .container input, #lightbox.devis-part .form-container form .container textarea, #lightbox.devis-part .form-container form .container select, #lightbox.devis-part .form-container form .container .selectize-input {
      width: 100%;
      padding: 0;
      z-index: 0;
      padding: 0 20px;
      transition: border 0.5s, padding-left 0.3s;
      border: none;
      background: rgba(0, 0, 0, 0.1); }
    #lightbox.devis-part .form-container form .container input, #lightbox.devis-part .form-container form .container select, #lightbox.devis-part .form-container form .container .selectize-input, #lightbox.devis-part .form-container form .container .attacher-vos-docs {
      height: 63px; }
      @media (max-width: 639px) {
        #lightbox.devis-part .form-container form .container input, #lightbox.devis-part .form-container form .container select, #lightbox.devis-part .form-container form .container .selectize-input, #lightbox.devis-part .form-container form .container .attacher-vos-docs {
          height: 50px; } }
    #lightbox.devis-part .form-container form .container input {
      font-size: 15px;
      will-change: box-shadow, background, padding-left;
      background-position: 90% 50% !important; }
      @media (max-width: 1024px) {
        #lightbox.devis-part .form-container form .container input {
          font-size: 15px; } }
      @media (max-width: 639px) {
        #lightbox.devis-part .form-container form .container input {
          font-size: 13px; } }
    #lightbox.devis-part .form-container form .container input:-webkit-autofill {
      -webkit-box-shadow: 0 0 0px 1000px #131313 inset;
      -webkit-text-fill-color: #fff !important; }
    #lightbox.devis-part .form-container form .container.left {
      width: 48%;
      float: left; }
    #lightbox.devis-part .form-container form .container.right {
      width: 48%;
      float: right; }
    #lightbox.devis-part .form-container form .container.full {
      width: 100%;
      float: left; }
    #lightbox.devis-part .form-container form .container.clear {
      clear: both; }
    @media (max-width: 768px) {
      #lightbox.devis-part .form-container form .container {
        width: 100% !important;
        float: none !important;
        clear: both; } }
    #lightbox.devis-part .form-container form .container.label-left {
      margin-bottom: 13px; }
      #lightbox.devis-part .form-container form .container.label-left label {
        display: flex !important;
        align-items: center;
        float: left;
        width: 38%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        line-height: 1.3; }
      #lightbox.devis-part .form-container form .container.label-left .input-container {
        display: inline-block;
        float: right;
        width: 56%; }
  #lightbox.devis-part .form-container form .input-note {
    color: #fff;
    font-size: 14px;
    padding-top: 5px;
    margin-bottom: 35px; }
    @media (max-width: 639px) {
      #lightbox.devis-part .form-container form .input-note {
        font-size: 10px; } }
  #lightbox.devis-part .form-container form textarea {
    resize: none !important;
    padding-top: 20px !important;
    box-shadow: none;
    min-height: 140px;
    height: auto;
    line-height: 1.5;
    transition: border 0.5s, height 1s !important;
    max-height: 500px; }
  #lightbox.devis-part .form-container form input::placeholder, #lightbox.devis-part .form-container form textarea::placeholder {
    font-size: 15px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.8) !important;
    text-align: left;
    letter-spacing: 0.5px; }
    @media (max-width: 1024px) {
      #lightbox.devis-part .form-container form input::placeholder, #lightbox.devis-part .form-container form textarea::placeholder {
        font-size: 15px; } }
    @media (max-width: 639px) {
      #lightbox.devis-part .form-container form input::placeholder, #lightbox.devis-part .form-container form textarea::placeholder {
        font-size: 13px; } }
  #lightbox.devis-part .form-container form input:focus::placeholder, #lightbox.devis-part .form-container form textarea:focus::placeholder {
    opacity: 0.35 !important; }
  #lightbox.devis-part .form-container form .champs-requis {
    text-align: right;
    margin-bottom: 0px;
    float: right; }
    #lightbox.devis-part .form-container form .champs-requis p {
      font-size: 12px;
      font-weight: 300;
      font-style: italic;
      color: #fff;
      user-select: none;
      margin-top: 5px; }
      @media (max-width: 639px) {
        #lightbox.devis-part .form-container form .champs-requis p {
          font-size: 11px; } }
  #lightbox.devis-part .form-container form button[type="submit"] {
    width: 280px;
    height: 73px;
    line-height: 45px;
    padding: 0 0 0 0px;
    background: #fff;
    text-align: left;
    margin-top: 30px;
    overflow: hidden;
    position: relative; }
    @media (max-width: 639px) {
      #lightbox.devis-part .form-container form button[type="submit"] {
        width: 100%;
        float: none;
        height: 50px; } }
    #lightbox.devis-part .form-container form button[type="submit"] p {
      font-size: 18px;
      font-weight: 700;
      font-family: "Poppins", sans-serif;
      padding: 1px 40px 0px 37px;
      user-select: none;
      color: #464646;
      letter-spacing: 0px;
      text-align: left;
      display: inline-block; }
      @media (max-width: 639px) {
        #lightbox.devis-part .form-container form button[type="submit"] p {
          font-size: 13px; } }
    #lightbox.devis-part .form-container form button[type="submit"] .icon {
      width: 15px;
      height: 10px;
      user-select: none;
      position: absolute;
      top: calc(50% - 9px);
      right: 30px;
      transition: transform 0.3s; }
      #lightbox.devis-part .form-container form button[type="submit"] .icon svg * {
        stroke: #464646; }
    #lightbox.devis-part .form-container form button[type="submit"]:not(.sent):hover, #lightbox.devis-part .form-container form button[type="submit"]:not(.sent):focus {
      background: #730912; }
      #lightbox.devis-part .form-container form button[type="submit"]:not(.sent):hover p, #lightbox.devis-part .form-container form button[type="submit"]:not(.sent):focus p {
        color: #fff; }
      #lightbox.devis-part .form-container form button[type="submit"]:not(.sent):hover .icon svg *, #lightbox.devis-part .form-container form button[type="submit"]:not(.sent):focus .icon svg * {
        stroke: #fff; }
      #lightbox.devis-part .form-container form button[type="submit"]:not(.sent):hover .icon, #lightbox.devis-part .form-container form button[type="submit"]:not(.sent):focus .icon {
        transform: translateX(3px); }
    #lightbox.devis-part .form-container form button[type="submit"].wait {
      transition: background 0.2s;
      background: #4d4d4d; }
      #lightbox.devis-part .form-container form button[type="submit"].wait p {
        color: #fff; }
      #lightbox.devis-part .form-container form button[type="submit"].wait .icon {
        display: none; }
      #lightbox.devis-part .form-container form button[type="submit"].wait .icon.envoyer,
      #lightbox.devis-part .form-container form button[type="submit"].wait p.envoyer {
        display: none; }
      #lightbox.devis-part .form-container form button[type="submit"].wait p.wait {
        animation: fade 1s; }
    #lightbox.devis-part .form-container form button[type="submit"].sent {
      transition: background 0.2s;
      background: #730912 !important; }
      #lightbox.devis-part .form-container form button[type="submit"].sent p {
        color: #fff; }
      #lightbox.devis-part .form-container form button[type="submit"].sent .icon {
        display: none; }
      #lightbox.devis-part .form-container form button[type="submit"].sent p.wait {
        display: none; }
      #lightbox.devis-part .form-container form button[type="submit"].sent p.sent {
        animation: fade 1s; }

#lightbox.devis-part .radio-container {
  display: inline-block;
  width: 100%;
  position: relative;
  margin-bottom: 60px; }
  @media (max-width: 1024px) {
    #lightbox.devis-part .radio-container {
      width: 70%; } }
  @media (max-width: 768px) {
    #lightbox.devis-part .radio-container {
      width: 100%;
      margin-bottom: 40px; } }
  #lightbox.devis-part .radio-container p {
    line-height: 1.4;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.5px;
    margin-bottom: 30px; }
    @media (max-width: 639px) {
      #lightbox.devis-part .radio-container p {
        font-size: 14px; } }
  #lightbox.devis-part .radio-container ul {
    width: 100%;
    display: inline-block; }
    #lightbox.devis-part .radio-container ul li {
      width: 48%;
      display: inline-block;
      color: #fff;
      position: relative; }
      #lightbox.devis-part .radio-container ul li:nth-child(1) {
        animation-delay: 0s; }
      #lightbox.devis-part .radio-container ul li:nth-child(2) {
        animation-delay: 0.04s; }
      #lightbox.devis-part .radio-container ul li:nth-child(3) {
        animation-delay: 0.08s; }
      #lightbox.devis-part .radio-container ul li:nth-child(4) {
        animation-delay: 0.12s; }
      #lightbox.devis-part .radio-container ul li:nth-child(5) {
        animation-delay: 0.16s; }
      #lightbox.devis-part .radio-container ul li:nth-child(6) {
        animation-delay: 0.2s; }
      #lightbox.devis-part .radio-container ul li:nth-child(7) {
        animation-delay: 0.24s; }
      #lightbox.devis-part .radio-container ul li:nth-child(8) {
        animation-delay: 0.28s; }
      #lightbox.devis-part .radio-container ul li:nth-child(9) {
        animation-delay: 0.32s; }
      #lightbox.devis-part .radio-container ul li:nth-child(10) {
        animation-delay: 0.36s; }
      @media (max-width: 639px) {
        #lightbox.devis-part .radio-container ul li {
          width: 100%;
          margin-bottom: 10px; } }
  #lightbox.devis-part .radio-container label {
    padding: 8px 0px;
    padding-left: 40px;
    display: inline-block;
    position: relative;
    width: 100%;
    user-select: none;
    font-size: 17px; }
    @media (max-width: 639px) {
      #lightbox.devis-part .radio-container label {
        font-size: 12px; } }
  #lightbox.devis-part .radio-container li:hover input:not([disabled=disabled]) + label {
    -webkit-text-stroke: white;
    text-decoration: underline;
    transition: color 0s; }
  #lightbox.devis-part .radio-container input:not([disabled=disabled]) + label {
    cursor: pointer; }
  #lightbox.devis-part .radio-container input[type="radio"],
  #lightbox.devis-part .radio-container input[type="checkbox"] {
    display: none; }
    #lightbox.devis-part .radio-container input[type="radio"] + label .case,
    #lightbox.devis-part .radio-container input[type="checkbox"] + label .case {
      cursor: pointer;
      width: 26px;
      height: 26px;
      border-radius: 50%;
      text-align: center;
      position: absolute;
      z-index: 11;
      left: 0px;
      top: 15px;
      transform: translateY(-50%);
      padding: 7px;
      background: #fff; }
      #lightbox.devis-part .radio-container input[type="radio"] + label .case:hover span,
      #lightbox.devis-part .radio-container input[type="checkbox"] + label .case:hover span {
        background: #a30c1a;
        transition: transform 0.15s;
        transform: scale(1); }
    #lightbox.devis-part .radio-container input[type="radio"] + label .case span,
    #lightbox.devis-part .radio-container input[type="checkbox"] + label .case span {
      background: #A30C1A;
      display: block;
      height: 100%;
      border-radius: 50%;
      transition: transform 0.2s;
      transform: scale(0); }
    #lightbox.devis-part .radio-container input[type="radio"]:checked + label .case span,
    #lightbox.devis-part .radio-container input[type="checkbox"]:checked + label .case span {
      transition: transform 0.15s;
      transform: scale(1); }

#lightbox.devis-part .response_box-container {
  position: relative;
  height: 50px;
  padding-top: 50px; }
  #lightbox.devis-part .response_box-container.ng-enter {
    transition: opacity 1.5s, height 1s;
    height: 0;
    opacity: 0; }
    #lightbox.devis-part .response_box-container.ng-enter.ng-enter-active {
      opacity: 1;
      height: 50px; }
  #lightbox.devis-part .response_box-container.ng-leave {
    transition: opacity 2.5s, height 2.5s;
    height: 50px;
    opacity: 1; }
    #lightbox.devis-part .response_box-container.ng-leave.ng-leave-active {
      opacity: 0;
      height: 0px; }
  #lightbox.devis-part .response_box-container .response_box {
    text-align: center;
    display: inline-block;
    position: absolute;
    top: 40px;
    left: 0;
    font-size: 14px;
    width: 100%;
    letter-spacing: 0px;
    font-style: italic; }
    #lightbox.devis-part .response_box-container .response_box.please-wait {
      color: #fff; }
    #lightbox.devis-part .response_box-container .response_box.success {
      color: #fff; }
    #lightbox.devis-part .response_box-container .response_box.error {
      color: #fff; }

@keyframes show_tooltip {
  0% {
    z-index: 1;
    transform: translateY(30px); }
  50% {
    z-index: 1;
    transform: translateY(-1px); }
  51% {
    z-index: 20; }
  100% {
    z-index: 20;
    transform: translateY(0px); } }

@keyframes show_tooltip_triangle {
  0% {
    transform: translateY(-20px); }
  20% {
    transform: translateY(-20px); }
  100% {
    transform: translateY(0px); } }

#lightbox.devis-part form.ng-submitted input.focus-submitted + .tooltip,
#lightbox.devis-part form.ng-submitted div.container.select.focus-submitted .tooltip,
#lightbox.devis-part form.ng-submitted div.radio-container.focus-submitted .tooltip,
#lightbox.devis-part form.ng-submitted div#gdpr_container.focus-submitted .tooltip,
#lightbox.devis-part form.ng-submitted textarea.focus-submitted + .tooltip {
  display: inline-block; }

#lightbox.devis-part form .tooltip {
  position: absolute;
  top: -38px;
  left: 19px;
  will-change: transform;
  box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.09) !important;
  transform: translate3d(0, 0, 0);
  display: none;
  animation-fill-mode: both;
  animation: show_tooltip 0.25s; }
  #lightbox.devis-part form .tooltip span {
    padding: 15px 19px;
    display: inline-block;
    color: #fff;
    font-size: 12px;
    animation: fade 0.2s;
    cursor: default; }
    #lightbox.devis-part form .tooltip span::first-letter {
      text-transform: uppercase; }
  #lightbox.devis-part form .tooltip > div::after {
    content: "";
    transform: translate3d(0, 0, 0);
    animation: show_tooltip_triangle 0.3s;
    position: absolute;
    left: 0;
    bottom: -9px;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid green; }
  #lightbox.devis-part form .tooltip .files-missing,
  #lightbox.devis-part form .tooltip .email-verif-error,
  #lightbox.devis-part form .tooltip [ng-message="required"] {
    background: #c94e4d; }
    #lightbox.devis-part form .tooltip .files-missing::after,
    #lightbox.devis-part form .tooltip .email-verif-error::after,
    #lightbox.devis-part form .tooltip [ng-message="required"]::after {
      border-left-color: #c94e4d; }
  #lightbox.devis-part form .tooltip [ng-message="pattern"], #lightbox.devis-part form .tooltip [ng-message="email"] {
    background: #e8ae47; }
    #lightbox.devis-part form .tooltip [ng-message="pattern"]::after, #lightbox.devis-part form .tooltip [ng-message="email"]::after {
      border-left-color: #e8ae47; }

#lightbox.devis-part form .container.input .icon {
  height: 100%; }

#lightbox.devis-part form .container .icon {
  position: absolute;
  z-index: 20;
  top: 0.5px;
  will-change: opacity, transform; }
  #lightbox.devis-part form .container .icon.ng-enter {
    opacity: 0;
    transform: scale(0);
    transition: opacity 0.25s 0.05s, transform 0.2s 0.05s; }
    #lightbox.devis-part form .container .icon.ng-enter.ng-enter-active {
      transform: scale(1);
      opacity: 1; }

#lightbox.devis-part form .container .icon-checked {
  width: 14px;
  left: 17px; }
  #lightbox.devis-part form .container .icon-checked path {
    fill: green; }

#lightbox.devis-part form .container .icon-circle {
  width: 9px;
  left: 18px; }
  #lightbox.devis-part form .container .icon-circle .st0 {
    fill: #fda607; }

#lightbox.devis-part form .container .icon-cross {
  width: 10px;
  left: 17px; }
  #lightbox.devis-part form .container .icon-cross .st0 {
    fill: none;
    stroke: #e91f1f;
    stroke-width: 9;
    stroke-miterlimit: 10; }

#lightbox.devis-part form .container.textarea .icon {
  height: 23px; }

#lightbox.devis-part form .container.textarea .icon-checked {
  top: 18.5px; }

#lightbox.devis-part form .container.textarea .icon-circle, #lightbox.devis-part form .container.textarea .icon-cross {
  top: 17.5px; }

#lightbox.devis-part form input.prefill, #lightbox.devis-part form input.ng-invalid.cross-has-shown, #lightbox.devis-part form input.ng-invalid-pattern.ng-dirty.blured, #lightbox.devis-part form input.ng-invalid-pattern.ng-dirty.blured, #lightbox.devis-part form input.ng-invalid-number.ng-dirty.blured, #lightbox.devis-part form input.ng-valid.blured.ng-dirty, #lightbox.devis-part form input[disabled="disabled"] {
  padding-left: 44px !important; }

#lightbox.devis-part form textarea.ng-valid:not(.ng-empty), #lightbox.devis-part form textarea.cross-has-shown {
  padding-left: 44px !important; }

#lightbox.devis-part form .not-required-textarea textarea[ng-required="false"] {
  padding-left: 0 !important; }

#lightbox.devis-part form .not-required-textarea .icon-checked {
  display: none !important; }

#lightbox.devis-part form.ng-submitted input.ng-invalid-pattern, #lightbox.devis-part form.ng-submitted textarea.ng-invalid-pattern {
  padding-left: 44px !important; }

#lightbox.devis-part form.ng-submitted input[type="tel"].ng-valid, #lightbox.devis-part form.ng-submitted input[type="email"].ng-valid, #lightbox.devis-part form.ng-submitted textarea[type="tel"].ng-valid, #lightbox.devis-part form.ng-submitted textarea[type="email"].ng-valid {
  padding-left: 44px !important; }

#lightbox.devis-part div.gdpr-container {
  width: 100%;
  display: inline-block;
  margin: 30px auto 10px !important;
  position: relative; }
  @media (max-width: 1024px) {
    #lightbox.devis-part div.gdpr-container {
      width: 70%; } }
  @media (max-width: 768px) {
    #lightbox.devis-part div.gdpr-container {
      width: 100%; } }
  #lightbox.devis-part div.gdpr-container .tooltip.gdpr {
    left: 35px;
    top: -55px; }
  #lightbox.devis-part div.gdpr-container p.note {
    padding-left: 40px;
    user-select: none;
    z-index: 11;
    line-height: 1.9;
    font-family: "Poppins", sans-serif; }
    @media (max-width: 639px) {
      #lightbox.devis-part div.gdpr-container p.note {
        padding-left: 40px; } }
    #lightbox.devis-part div.gdpr-container p.note a {
      -webkit-text-stroke: #fff;
      text-decoration: underline; }
    #lightbox.devis-part div.gdpr-container p.note, #lightbox.devis-part div.gdpr-container p.note a {
      font-size: 13px;
      color: #fff; }
      @media (max-width: 639px) {
        #lightbox.devis-part div.gdpr-container p.note, #lightbox.devis-part div.gdpr-container p.note a {
          font-size: 11px; } }
  #lightbox.devis-part div.gdpr-container a:hover {
    color: #A30C1A; }
  #lightbox.devis-part div.gdpr-container input[type="checkbox"] {
    display: none; }
    #lightbox.devis-part div.gdpr-container input[type="checkbox"] + label .case {
      cursor: pointer;
      width: 26px;
      height: 26px;
      border-radius: 50%;
      text-align: center;
      position: absolute;
      z-index: 11;
      left: 0px;
      top: 0;
      border: 1px solid rgba(0, 0, 0, 0.15);
      padding: 7px;
      background: #fff; }
      #lightbox.devis-part div.gdpr-container input[type="checkbox"] + label .case:hover {
        border: 1px solid transparent; }
        #lightbox.devis-part div.gdpr-container input[type="checkbox"] + label .case:hover span {
          background: #a30c1a;
          transition: transform 0.15s;
          transform: scale(1); }
    #lightbox.devis-part div.gdpr-container input[type="checkbox"] + label .case span {
      background: #A30C1A;
      display: block;
      height: 100%;
      border-radius: 50%;
      transition: transform 0.2s;
      transform: scale(0); }
    #lightbox.devis-part div.gdpr-container input[type="checkbox"]:checked + label .case span {
      transition: transform 0.15s;
      transform: scale(1); }

.lightbox-devis-pro-all-container {
  display: none; }
  .lightbox-devis-pro-all-container.active {
    display: block; }

.page-overlay.devis-pro {
  position: fixed;
  display: block;
  background: #000 !important;
  opacity: 0.7;
  z-index: 1000; }
  .page-overlay.devis-pro.ng-enter {
    opacity: 0;
    transition: opacity 0.2s; }
    .page-overlay.devis-pro.ng-enter.ng-enter-active {
      opacity: 0.7; }
  .page-overlay.devis-pro.ng-leave {
    opacity: 0.7;
    transition: opacity 0.35s; }
    .page-overlay.devis-pro.ng-leave.ng-leave-active {
      opacity: 0; }

#lightbox_container.devis-pro {
  z-index: 1100;
  height: 100%;
  top: 0px;
  right: -1px;
  overflow: hidden;
  position: fixed;
  transform: translate3d(0, 0, 0);
  user-select: none;
  width: 586px;
  background: #2B2B2B;
  box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3); }
  #lightbox_container.devis-pro.ng-enter {
    transition: transform 0.5s, opacity 0.3s;
    transform: translate3d(100%, 0, 0);
    opacity: 0; }
  #lightbox_container.devis-pro.ng-enter-active {
    transform: translate3d(0, 0, 0);
    opacity: 1; }
  @media (max-width: 768px) {
    #lightbox_container.devis-pro {
      width: calc(100% - 200px); } }
  @media (max-width: 639px) {
    #lightbox_container.devis-pro {
      width: 100%; } }

#lightbox.devis-pro {
  height: 100%;
  width: calc(100% + 20px);
  overflow-x: hidden;
  overflow-y: scroll;
  z-index: 2000;
  display: inline-block;
  background: #2B2B2B;
  cursor: default; }
  #lightbox.devis-pro > .inside {
    padding: 40px 50px 40px 52px;
    padding-right: 20%; }
    @media (max-width: 768px) {
      #lightbox.devis-pro > .inside {
        padding: 35px 20% 35px 40px; } }
    @media (max-width: 639px) {
      #lightbox.devis-pro > .inside {
        padding: 35px 15% 35px 9%; } }
  #lightbox.devis-pro .title-section-container {
    position: relative;
    margin-bottom: 30px;
    display: inline-block;
    width: 100%; }
    @media (max-width: 639px) {
      #lightbox.devis-pro .title-section-container {
        margin-bottom: 20px; } }
    #lightbox.devis-pro .title-section-container .title-section {
      color: #fff;
      font-size: 27px;
      font-weight: 300;
      margin-bottom: 20px;
      line-height: 1.3;
      user-select: none; }
      @media (max-width: 639px) {
        #lightbox.devis-pro .title-section-container .title-section {
          font-size: 18px; } }
      #lightbox.devis-pro .title-section-container .title-section b {
        display: block; }
    #lightbox.devis-pro .title-section-container .tel-container {
      user-select: none;
      display: inline-block;
      width: 100%;
      margin-bottom: 30px;
      animation: fade 1.5s; }
      #lightbox.devis-pro .title-section-container .tel-container, #lightbox.devis-pro .title-section-container .tel-container a {
        line-height: 1.4;
        color: #fff;
        font-size: 20px;
        font-weight: 700;
        letter-spacing: 0.5px; }
        @media (max-width: 740px) {
          #lightbox.devis-pro .title-section-container .tel-container, #lightbox.devis-pro .title-section-container .tel-container a {
            font-size: 14px; } }
      #lightbox.devis-pro .title-section-container .tel-container a {
        margin-left: 20px;
        padding: 10px; }
        @media (max-width: 639px) {
          #lightbox.devis-pro .title-section-container .tel-container a {
            margin-left: 0px; } }
        #lightbox.devis-pro .title-section-container .tel-container a:hover {
          text-decoration: underline; }
    #lightbox.devis-pro .title-section-container .petit-trait {
      width: 61px;
      height: 1px;
      position: relative;
      overflow: hidden;
      margin-bottom: 50px; }
      @media (max-width: 768px) {
        #lightbox.devis-pro .title-section-container .petit-trait {
          margin-bottom: 0; } }
      #lightbox.devis-pro .title-section-container .petit-trait span {
        display: inline-block;
        background: #fff; }

#lightbox.devis-pro .close-btn {
  display: inline-block;
  width: 80px;
  height: 80px;
  position: absolute;
  z-index: 2000;
  top: 0px;
  right: 0px;
  cursor: pointer;
  background: #909090; }
  #lightbox.devis-pro .close-btn .icon {
    display: block;
    width: 20px;
    height: 20px;
    margin: 0 auto;
    margin-top: 29px; }
    #lightbox.devis-pro .close-btn .icon .st0 {
      stroke: #fff;
      fill: none;
      stroke-width: 3;
      stroke-miterlimit: 10; }
  @media (max-width: 639px) {
    #lightbox.devis-pro .close-btn {
      top: -1px;
      right: -1px;
      border-radius: 0%; } }
  #lightbox.devis-pro .close-btn:hover {
    background: black; }
    #lightbox.devis-pro .close-btn:hover .st0 {
      fill: none;
      stroke-width: 4;
      stroke-miterlimit: 10; }

#lightbox.devis-pro .form-container .title {
  font-size: 30px;
  margin-bottom: 40px;
  color: #fff;
  font-weight: 100;
  user-select: none; }
  @media (max-width: 639px) {
    #lightbox.devis-pro .form-container .title {
      font-size: 18px;
      margin-bottom: 30px; } }

#lightbox.devis-pro .form-container form {
  width: 100%;
  margin-bottom: 150px;
  animation: fade 1.5s;
  /**************  PLACEHOLDER   ***************/ }
  @media (max-width: 1226px) {
    #lightbox.devis-pro .form-container form {
      margin-top: 30px;
      max-width: 100%; } }
  @media (max-width: 639px) {
    #lightbox.devis-pro .form-container form {
      margin-top: 20px; } }
  #lightbox.devis-pro .form-container form .container {
    display: inline-block;
    width: 100%;
    margin-bottom: 7px;
    position: relative; }
    #lightbox.devis-pro .form-container form .container .input-container {
      position: relative; }
    #lightbox.devis-pro .form-container form .container.email {
      margin-top: 20px; }
    #lightbox.devis-pro .form-container form .container label {
      display: none !important;
      font-size: 16px;
      margin-bottom: 15px;
      letter-spacing: 0px;
      color: white; }
      @media (max-width: 639px) {
        #lightbox.devis-pro .form-container form .container label {
          font-size: 12px;
          letter-spacing: 0px; } }
    #lightbox.devis-pro .form-container form .container input, #lightbox.devis-pro .form-container form .container textarea {
      position: relative;
      user-select: text; }
    #lightbox.devis-pro .form-container form .container input, #lightbox.devis-pro .form-container form .container textarea, #lightbox.devis-pro .form-container form .container select,
    #lightbox.devis-pro .form-container form .container .selectize-input .item, #lightbox.devis-pro .form-container form .container .selectize-dropdown .option, #lightbox.devis-pro .form-container form .container .attacher-vos-docs {
      font-weight: 400;
      color: white;
      letter-spacing: 0px; }
    #lightbox.devis-pro .form-container form .container input, #lightbox.devis-pro .form-container form .container textarea, #lightbox.devis-pro .form-container form .container select, #lightbox.devis-pro .form-container form .container .selectize-input {
      width: 100%;
      padding: 0;
      z-index: 0;
      padding: 0 20px;
      transition: border 0.5s, padding-left 0.3s;
      border: none;
      background: #191919; }
    #lightbox.devis-pro .form-container form .container input, #lightbox.devis-pro .form-container form .container select, #lightbox.devis-pro .form-container form .container .selectize-input, #lightbox.devis-pro .form-container form .container .attacher-vos-docs {
      height: 63px; }
      @media (max-width: 639px) {
        #lightbox.devis-pro .form-container form .container input, #lightbox.devis-pro .form-container form .container select, #lightbox.devis-pro .form-container form .container .selectize-input, #lightbox.devis-pro .form-container form .container .attacher-vos-docs {
          height: 50px; } }
    #lightbox.devis-pro .form-container form .container input {
      font-size: 15px;
      will-change: box-shadow, background, padding-left;
      background-position: 91% 50% !important; }
      @media (max-width: 1024px) {
        #lightbox.devis-pro .form-container form .container input {
          font-size: 15px; } }
      @media (max-width: 639px) {
        #lightbox.devis-pro .form-container form .container input {
          font-size: 13px; } }
    #lightbox.devis-pro .form-container form .container input:-webkit-autofill {
      -webkit-box-shadow: 0 0 0px 1000px #131313 inset;
      -webkit-text-fill-color: #fff !important; }
    #lightbox.devis-pro .form-container form .container.left {
      width: 48%;
      float: left; }
    #lightbox.devis-pro .form-container form .container.right {
      width: 48%;
      float: right; }
    #lightbox.devis-pro .form-container form .container.full {
      width: 100%;
      float: left; }
    #lightbox.devis-pro .form-container form .container.clear {
      clear: both; }
    @media (max-width: 768px) {
      #lightbox.devis-pro .form-container form .container {
        width: 100% !important;
        float: none !important;
        clear: both; } }
    #lightbox.devis-pro .form-container form .container.label-left {
      margin-bottom: 13px; }
      #lightbox.devis-pro .form-container form .container.label-left label {
        display: flex !important;
        align-items: center;
        float: left;
        width: 38%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        line-height: 1.3; }
      #lightbox.devis-pro .form-container form .container.label-left .input-container {
        display: inline-block;
        float: right;
        width: 60%; }
  #lightbox.devis-pro .form-container form .input-note {
    color: #fff;
    font-size: 14px;
    padding-top: 5px;
    margin-bottom: 35px; }
    @media (max-width: 639px) {
      #lightbox.devis-pro .form-container form .input-note {
        font-size: 10px; } }
  #lightbox.devis-pro .form-container form textarea {
    resize: none !important;
    padding-top: 20px !important;
    box-shadow: none;
    min-height: 140px;
    height: auto;
    line-height: 1.5;
    transition: border 0.5s, height 1s !important;
    max-height: 500px; }
  #lightbox.devis-pro .form-container form input::placeholder, #lightbox.devis-pro .form-container form textarea::placeholder {
    font-size: 15px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.8) !important;
    text-align: left;
    letter-spacing: 0.5px; }
    @media (max-width: 1024px) {
      #lightbox.devis-pro .form-container form input::placeholder, #lightbox.devis-pro .form-container form textarea::placeholder {
        font-size: 15px; } }
    @media (max-width: 639px) {
      #lightbox.devis-pro .form-container form input::placeholder, #lightbox.devis-pro .form-container form textarea::placeholder {
        font-size: 13px; } }
  #lightbox.devis-pro .form-container form input:focus::placeholder, #lightbox.devis-pro .form-container form textarea:focus::placeholder {
    opacity: 0.35 !important; }
  #lightbox.devis-pro .form-container form .champs-requis {
    text-align: right;
    margin-bottom: 0px;
    float: right; }
    #lightbox.devis-pro .form-container form .champs-requis p {
      font-size: 12px;
      font-weight: 300;
      font-style: italic;
      color: #fff;
      user-select: none;
      margin-top: 5px; }
      @media (max-width: 639px) {
        #lightbox.devis-pro .form-container form .champs-requis p {
          font-size: 11px; } }
  #lightbox.devis-pro .form-container form button[type="submit"] {
    width: 280px;
    height: 73px;
    line-height: 45px;
    padding: 0 0 0 0px;
    background: #fff;
    text-align: left;
    margin-top: 30px;
    overflow: hidden;
    position: relative; }
    @media (max-width: 639px) {
      #lightbox.devis-pro .form-container form button[type="submit"] {
        width: 100%;
        float: none;
        height: 50px; } }
    #lightbox.devis-pro .form-container form button[type="submit"] p {
      font-size: 18px;
      font-weight: 700;
      font-family: "Poppins", sans-serif;
      padding: 1px 40px 0px 37px;
      user-select: none;
      color: #464646;
      letter-spacing: 0px;
      text-align: left;
      display: inline-block; }
      @media (max-width: 639px) {
        #lightbox.devis-pro .form-container form button[type="submit"] p {
          font-size: 13px; } }
    #lightbox.devis-pro .form-container form button[type="submit"] .icon {
      width: 15px;
      height: 10px;
      user-select: none;
      position: absolute;
      top: calc(50% - 9px);
      right: 30px;
      transition: transform 0.3s; }
      #lightbox.devis-pro .form-container form button[type="submit"] .icon svg * {
        stroke: #464646; }
    #lightbox.devis-pro .form-container form button[type="submit"]:not(.sent):hover, #lightbox.devis-pro .form-container form button[type="submit"]:not(.sent):focus {
      background: #1a1a1a; }
      #lightbox.devis-pro .form-container form button[type="submit"]:not(.sent):hover p, #lightbox.devis-pro .form-container form button[type="submit"]:not(.sent):focus p {
        color: #fff; }
      #lightbox.devis-pro .form-container form button[type="submit"]:not(.sent):hover .icon svg *, #lightbox.devis-pro .form-container form button[type="submit"]:not(.sent):focus .icon svg * {
        stroke: #fff; }
      #lightbox.devis-pro .form-container form button[type="submit"]:not(.sent):hover .icon, #lightbox.devis-pro .form-container form button[type="submit"]:not(.sent):focus .icon {
        transform: translateX(3px); }
    #lightbox.devis-pro .form-container form button[type="submit"].wait {
      transition: background 0.2s;
      background: #4d4d4d; }
      #lightbox.devis-pro .form-container form button[type="submit"].wait p {
        color: #fff; }
      #lightbox.devis-pro .form-container form button[type="submit"].wait .icon {
        display: none; }
      #lightbox.devis-pro .form-container form button[type="submit"].wait .icon.envoyer,
      #lightbox.devis-pro .form-container form button[type="submit"].wait p.envoyer {
        display: none; }
      #lightbox.devis-pro .form-container form button[type="submit"].wait p.wait {
        animation: fade 1s; }
    #lightbox.devis-pro .form-container form button[type="submit"].sent {
      transition: background 0.2s;
      background: #004d00 !important; }
      #lightbox.devis-pro .form-container form button[type="submit"].sent p {
        color: #fff; }
      #lightbox.devis-pro .form-container form button[type="submit"].sent .icon {
        display: none; }
      #lightbox.devis-pro .form-container form button[type="submit"].sent p.wait {
        display: none; }
      #lightbox.devis-pro .form-container form button[type="submit"].sent p.sent {
        animation: fade 1s; }

#lightbox.devis-pro .radio-container {
  display: inline-block;
  width: 100%;
  position: relative;
  margin-bottom: 60px; }
  @media (max-width: 1024px) {
    #lightbox.devis-pro .radio-container {
      width: 70%; } }
  @media (max-width: 768px) {
    #lightbox.devis-pro .radio-container {
      width: 100%;
      margin-bottom: 40px; } }
  #lightbox.devis-pro .radio-container p {
    line-height: 1.4;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.5px;
    margin-bottom: 30px; }
    @media (max-width: 639px) {
      #lightbox.devis-pro .radio-container p {
        font-size: 14px; } }
  #lightbox.devis-pro .radio-container ul {
    width: 100%;
    display: inline-block; }
    #lightbox.devis-pro .radio-container ul li {
      width: 48%;
      display: inline-block;
      color: #fff;
      position: relative; }
      #lightbox.devis-pro .radio-container ul li:nth-child(1) {
        animation-delay: 0s; }
      #lightbox.devis-pro .radio-container ul li:nth-child(2) {
        animation-delay: 0.04s; }
      #lightbox.devis-pro .radio-container ul li:nth-child(3) {
        animation-delay: 0.08s; }
      #lightbox.devis-pro .radio-container ul li:nth-child(4) {
        animation-delay: 0.12s; }
      #lightbox.devis-pro .radio-container ul li:nth-child(5) {
        animation-delay: 0.16s; }
      #lightbox.devis-pro .radio-container ul li:nth-child(6) {
        animation-delay: 0.2s; }
      #lightbox.devis-pro .radio-container ul li:nth-child(7) {
        animation-delay: 0.24s; }
      #lightbox.devis-pro .radio-container ul li:nth-child(8) {
        animation-delay: 0.28s; }
      #lightbox.devis-pro .radio-container ul li:nth-child(9) {
        animation-delay: 0.32s; }
      #lightbox.devis-pro .radio-container ul li:nth-child(10) {
        animation-delay: 0.36s; }
      @media (max-width: 639px) {
        #lightbox.devis-pro .radio-container ul li {
          width: 100%;
          margin-bottom: 10px; } }
  #lightbox.devis-pro .radio-container label {
    padding: 8px 0px;
    padding-left: 40px;
    display: inline-block;
    position: relative;
    width: 100%;
    user-select: none;
    font-size: 17px; }
    @media (max-width: 639px) {
      #lightbox.devis-pro .radio-container label {
        font-size: 12px; } }
  #lightbox.devis-pro .radio-container li:hover input:not([disabled=disabled]) + label {
    -webkit-text-stroke: white;
    text-decoration: underline;
    transition: color 0s; }
  #lightbox.devis-pro .radio-container input:not([disabled=disabled]) + label {
    cursor: pointer; }
  #lightbox.devis-pro .radio-container input[type="radio"],
  #lightbox.devis-pro .radio-container input[type="checkbox"] {
    display: none; }
    #lightbox.devis-pro .radio-container input[type="radio"] + label .case,
    #lightbox.devis-pro .radio-container input[type="checkbox"] + label .case {
      cursor: pointer;
      width: 26px;
      height: 26px;
      border-radius: 50%;
      text-align: center;
      position: absolute;
      z-index: 11;
      left: 0px;
      top: 15px;
      transform: translateY(-50%);
      padding: 7px;
      background: #fff; }
      #lightbox.devis-pro .radio-container input[type="radio"] + label .case:hover span,
      #lightbox.devis-pro .radio-container input[type="checkbox"] + label .case:hover span {
        background: #a30c1a;
        transition: transform 0.15s;
        transform: scale(1); }
    #lightbox.devis-pro .radio-container input[type="radio"] + label .case span,
    #lightbox.devis-pro .radio-container input[type="checkbox"] + label .case span {
      background: #A30C1A;
      display: block;
      height: 100%;
      border-radius: 50%;
      transition: transform 0.2s;
      transform: scale(0); }
    #lightbox.devis-pro .radio-container input[type="radio"]:checked + label .case span,
    #lightbox.devis-pro .radio-container input[type="checkbox"]:checked + label .case span {
      transition: transform 0.15s;
      transform: scale(1); }

#lightbox.devis-pro .response_box-container {
  position: relative;
  height: 50px;
  padding-top: 50px; }
  #lightbox.devis-pro .response_box-container.ng-enter {
    transition: opacity 1.5s, height 1s;
    height: 0;
    opacity: 0; }
    #lightbox.devis-pro .response_box-container.ng-enter.ng-enter-active {
      opacity: 1;
      height: 50px; }
  #lightbox.devis-pro .response_box-container.ng-leave {
    transition: opacity 2.5s, height 2.5s;
    height: 50px;
    opacity: 1; }
    #lightbox.devis-pro .response_box-container.ng-leave.ng-leave-active {
      opacity: 0;
      height: 0px; }
  #lightbox.devis-pro .response_box-container .response_box {
    text-align: center;
    display: inline-block;
    position: absolute;
    top: 40px;
    left: 0;
    font-size: 14px;
    width: 100%;
    letter-spacing: 0px;
    font-style: italic; }
    #lightbox.devis-pro .response_box-container .response_box.please-wait {
      color: #fff; }
    #lightbox.devis-pro .response_box-container .response_box.success {
      color: #fff; }
    #lightbox.devis-pro .response_box-container .response_box.error {
      color: #fff; }

@keyframes show_tooltip {
  0% {
    z-index: 1;
    transform: translateY(30px); }
  50% {
    z-index: 1;
    transform: translateY(-1px); }
  51% {
    z-index: 20; }
  100% {
    z-index: 20;
    transform: translateY(0px); } }

@keyframes show_tooltip_triangle {
  0% {
    transform: translateY(-20px); }
  20% {
    transform: translateY(-20px); }
  100% {
    transform: translateY(0px); } }

#lightbox.devis-pro form.ng-submitted input.focus-submitted + .tooltip,
#lightbox.devis-pro form.ng-submitted div.container.select.focus-submitted .tooltip,
#lightbox.devis-pro form.ng-submitted div.radio-container.focus-submitted .tooltip,
#lightbox.devis-pro form.ng-submitted div#gdpr_container.focus-submitted .tooltip,
#lightbox.devis-pro form.ng-submitted textarea.focus-submitted + .tooltip {
  display: inline-block; }

#lightbox.devis-pro form .tooltip {
  position: absolute;
  top: -38px;
  left: 19px;
  will-change: transform;
  box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.09) !important;
  transform: translate3d(0, 0, 0);
  display: none;
  animation-fill-mode: both;
  animation: show_tooltip 0.25s; }
  #lightbox.devis-pro form .tooltip span {
    padding: 15px 19px;
    display: inline-block;
    color: #fff;
    font-size: 12px;
    animation: fade 0.2s;
    cursor: default; }
    #lightbox.devis-pro form .tooltip span::first-letter {
      text-transform: uppercase; }
  #lightbox.devis-pro form .tooltip > div::after {
    content: "";
    transform: translate3d(0, 0, 0);
    animation: show_tooltip_triangle 0.3s;
    position: absolute;
    left: 0;
    bottom: -9px;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid green; }
  #lightbox.devis-pro form .tooltip .files-missing,
  #lightbox.devis-pro form .tooltip .email-verif-error,
  #lightbox.devis-pro form .tooltip [ng-message="required"] {
    background: #c94e4d; }
    #lightbox.devis-pro form .tooltip .files-missing::after,
    #lightbox.devis-pro form .tooltip .email-verif-error::after,
    #lightbox.devis-pro form .tooltip [ng-message="required"]::after {
      border-left-color: #c94e4d; }
  #lightbox.devis-pro form .tooltip [ng-message="pattern"], #lightbox.devis-pro form .tooltip [ng-message="email"] {
    background: #e8ae47; }
    #lightbox.devis-pro form .tooltip [ng-message="pattern"]::after, #lightbox.devis-pro form .tooltip [ng-message="email"]::after {
      border-left-color: #e8ae47; }

#lightbox.devis-pro form .container.input .icon {
  height: 100%; }

#lightbox.devis-pro form .container .icon {
  position: absolute;
  z-index: 20;
  top: 0.5px;
  will-change: opacity, transform; }
  #lightbox.devis-pro form .container .icon.ng-enter {
    opacity: 0;
    transform: scale(0);
    transition: opacity 0.25s 0.05s, transform 0.2s 0.05s; }
    #lightbox.devis-pro form .container .icon.ng-enter.ng-enter-active {
      transform: scale(1);
      opacity: 1; }

#lightbox.devis-pro form .container .icon-checked {
  width: 14px;
  left: 17px; }
  #lightbox.devis-pro form .container .icon-checked path {
    fill: green; }

#lightbox.devis-pro form .container .icon-circle {
  width: 9px;
  left: 18px; }
  #lightbox.devis-pro form .container .icon-circle .st0 {
    fill: #fda607; }

#lightbox.devis-pro form .container .icon-cross {
  width: 10px;
  left: 17px; }
  #lightbox.devis-pro form .container .icon-cross .st0 {
    fill: none;
    stroke: #e91f1f;
    stroke-width: 9;
    stroke-miterlimit: 10; }

#lightbox.devis-pro form .container.textarea .icon {
  height: 23px; }

#lightbox.devis-pro form .container.textarea .icon-checked {
  top: 18.5px; }

#lightbox.devis-pro form .container.textarea .icon-circle, #lightbox.devis-pro form .container.textarea .icon-cross {
  top: 17.5px; }

#lightbox.devis-pro form input.prefill, #lightbox.devis-pro form input.ng-invalid.cross-has-shown, #lightbox.devis-pro form input.ng-invalid-pattern.ng-dirty.blured, #lightbox.devis-pro form input.ng-invalid-pattern.ng-dirty.blured, #lightbox.devis-pro form input.ng-valid.blured.ng-dirty, #lightbox.devis-pro form input[disabled="disabled"] {
  padding-left: 44px !important; }

#lightbox.devis-pro form textarea.ng-valid:not(.ng-empty), #lightbox.devis-pro form textarea.cross-has-shown {
  padding-left: 44px !important; }

#lightbox.devis-pro form .not-required-textarea textarea[ng-required="false"] {
  padding-left: 0 !important; }

#lightbox.devis-pro form .not-required-textarea .icon-checked {
  display: none !important; }

#lightbox.devis-pro form.ng-submitted input.ng-invalid-pattern, #lightbox.devis-pro form.ng-submitted textarea.ng-invalid-pattern {
  padding-left: 44px !important; }

#lightbox.devis-pro form.ng-submitted input[type="tel"].ng-valid, #lightbox.devis-pro form.ng-submitted input[type="email"].ng-valid, #lightbox.devis-pro form.ng-submitted textarea[type="tel"].ng-valid, #lightbox.devis-pro form.ng-submitted textarea[type="email"].ng-valid {
  padding-left: 44px !important; }

#lightbox.devis-pro div.gdpr-container {
  width: 100%;
  display: inline-block;
  margin: 30px auto 10px !important;
  position: relative; }
  @media (max-width: 1024px) {
    #lightbox.devis-pro div.gdpr-container {
      width: 70%; } }
  @media (max-width: 768px) {
    #lightbox.devis-pro div.gdpr-container {
      width: 100%; } }
  #lightbox.devis-pro div.gdpr-container .tooltip.gdpr {
    left: 35px;
    top: -55px; }
  #lightbox.devis-pro div.gdpr-container p.note {
    padding-left: 40px;
    user-select: none;
    z-index: 11;
    line-height: 1.9;
    font-family: "Poppins", sans-serif; }
    @media (max-width: 639px) {
      #lightbox.devis-pro div.gdpr-container p.note {
        padding-left: 40px; } }
    #lightbox.devis-pro div.gdpr-container p.note a {
      -webkit-text-stroke: #fff;
      text-decoration: underline; }
    #lightbox.devis-pro div.gdpr-container p.note, #lightbox.devis-pro div.gdpr-container p.note a {
      font-size: 13px;
      color: #fff; }
      @media (max-width: 639px) {
        #lightbox.devis-pro div.gdpr-container p.note, #lightbox.devis-pro div.gdpr-container p.note a {
          font-size: 11px; } }
  #lightbox.devis-pro div.gdpr-container a:hover {
    color: #A30C1A; }
  #lightbox.devis-pro div.gdpr-container input[type="checkbox"] {
    display: none; }
    #lightbox.devis-pro div.gdpr-container input[type="checkbox"] + label .case {
      cursor: pointer;
      width: 26px;
      height: 26px;
      border-radius: 50%;
      text-align: center;
      position: absolute;
      z-index: 11;
      left: 0px;
      top: 0;
      border: 1px solid rgba(0, 0, 0, 0.15);
      padding: 7px;
      background: #fff; }
      #lightbox.devis-pro div.gdpr-container input[type="checkbox"] + label .case:hover {
        border: 1px solid transparent; }
        #lightbox.devis-pro div.gdpr-container input[type="checkbox"] + label .case:hover span {
          background: #a30c1a;
          transition: transform 0.15s;
          transform: scale(1); }
    #lightbox.devis-pro div.gdpr-container input[type="checkbox"] + label .case span {
      background: #A30C1A;
      display: block;
      height: 100%;
      border-radius: 50%;
      transition: transform 0.2s;
      transform: scale(0); }
    #lightbox.devis-pro div.gdpr-container input[type="checkbox"]:checked + label .case span {
      transition: transform 0.15s;
      transform: scale(1); }

.lightbox-video-all-container {
  display: none; }
  .lightbox-video-all-container.active {
    display: block; }

.page-overlay.video {
  position: fixed;
  display: block;
  background: #000;
  will-change: opacity;
  opacity: 0.8;
  z-index: 1999; }
  .page-overlay.video.ng-enter {
    opacity: 0;
    transition: opacity 0.3s; }
    .page-overlay.video.ng-enter.ng-enter-active {
      opacity: 0.8; }
  .page-overlay.video.ng-leave {
    opacity: 0.8;
    transition: opacity 0.35s; }
    .page-overlay.video.ng-leave.ng-leave-active {
      opacity: 0; }

.lightbox-container.video {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2000;
  overflow-y: scroll;
  width: calc(100%);
  cursor: pointer; }
  .lightbox-container.video .video-controller-container {
    position: relative; }
    .lightbox-container.video .video-controller-container .loader-white .loader-circle, .lightbox-container.video .video-controller-container .loader-white .loader-line-mask {
      top: calc(50% - 60px); }
    .lightbox-container.video .video-controller-container iframe {
      position: relative; }

.lightbox.video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 900px;
  z-index: 2000;
  display: inline-block;
  min-height: 220px;
  cursor: default;
  will-change: transform; }
  .lightbox.video.ng-enter {
    transition: transform 0.5s, opacity 0.3s;
    transform: translate(-50%, -50%) scale(0.85);
    opacity: 0; }
  .lightbox.video.ng-enter-active {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1; }
  @media (max-width: 1226px) {
    .lightbox.video {
      max-width: 720px; } }
  @media (max-width: 768px) {
    .lightbox.video {
      max-width: 640px; } }
  @media (max-width: 740px) {
    .lightbox.video {
      max-width: 480px; } }
  @media (max-width: 639px) {
    .lightbox.video {
      max-width: 320px; } }
  @media (max-width: 374px) {
    .lightbox.video {
      max-width: 300px; } }
  .lightbox.video > .inside {
    display: block; }
  .lightbox.video .titre {
    font-size: 23px;
    color: #fff;
    font-family: "Poppins", sans-serif;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 30px;
    animation: fade 2s; }
    @media (max-width: 740px) {
      .lightbox.video .titre {
        font-size: 15px;
        margin-bottom: 20px;
        padding-right: 40px;
        letter-spacing: 1.5px; } }
    @media (max-width: 639px) {
      .lightbox.video .titre {
        font-size: 13px;
        letter-spacing: 1px; } }
  .lightbox.video .video-container {
    height: 509px;
    width: 100%;
    background: #000;
    position: relative; }
    @media (max-width: 1226px) {
      .lightbox.video .video-container {
        height: 403px; } }
    @media (max-width: 740px) {
      .lightbox.video .video-container {
        max-height: 250px; } }
    @media (max-width: 639px) {
      .lightbox.video .video-container {
        height: 176px; } }
    .lightbox.video .video-container #vimeo_video > div {
      color: #bbb;
      width: 100%;
      text-align: center;
      position: absolute;
      left: 0;
      top: 48%;
      font-size: 13px;
      letter-spacing: 0.8px;
      animation: fade 2s;
      font-family: "Poppins", sans-serif; }
    .lightbox.video .video-container iframe {
      width: 100%;
      height: 100%;
      top: 0;
      bottom: 0;
      animation: fade 3s; }
  .lightbox.video .close-btn {
    display: inline-block;
    width: 60px;
    height: 60px;
    position: absolute;
    z-index: 1100;
    top: 13px;
    right: 10px;
    transform: translate(50%, -50%);
    cursor: pointer;
    animation: fade 2.5s; }
    .lightbox.video .close-btn .icon {
      display: block;
      width: 20px;
      height: 20px;
      margin: 0 auto;
      margin-top: 22px; }
      @media (max-width: 740px) {
        .lightbox.video .close-btn .icon {
          width: 13px;
          height: 13px; } }
      .lightbox.video .close-btn .icon .st0 {
        transition: stroke 0.1s;
        stroke: rgba(255, 255, 255, 0.8);
        stroke-width: 2.5;
        stroke-miterlimit: 10; }
    @media (max-width: 740px) {
      .lightbox.video .close-btn {
        top: 10px; } }
    .lightbox.video .close-btn:hover {
      transition: background 1.8s; }
      .lightbox.video .close-btn:hover .st0 {
        stroke: #fff;
        fill: none;
        stroke-width: 4.5;
        stroke-miterlimit: 10; }

.front-page .banner.top {
  background: #A30C1A;
  background: radial-gradient(circle, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.6) 20%, rgba(0, 0, 0, 0.8) 100%);
  height: 800px;
  transition: height 1s; }
  @media (max-width: 1367px) {
    .front-page .banner.top {
      height: 780px; } }
  @media (max-width: 1226px) {
    .front-page .banner.top {
      height: 780px; } }
  @media (max-width: 768px) {
    .front-page .banner.top {
      height: 714px; } }
  @media (max-width: 639px) {
    .front-page .banner.top {
      height: 416px; } }

.front-page .banner.top {
  background: #313030;
  z-index: 10; }
  @media (max-width: 1024px) {
    .front-page .banner.top {
      height: auto !important; } }
  .front-page .banner.top .left-container {
    position: relative;
    height: 100%; }
    @media (max-width: 1024px) {
      .front-page .banner.top .left-container {
        height: auto; } }
    .front-page .banner.top .left-container > .image {
      background-position: 50% 50%;
      filter: brightness(85%);
      width: calc(50% + 200px); }
      @media (max-width: 1024px) {
        .front-page .banner.top .left-container > .image {
          width: 100%;
          filter: brightness(75%); } }
    @media (max-width: 1024px) {
      .front-page .banner.top .left-container > .banner-content {
        height: auto; } }
  .front-page .banner.top .content .bloc {
    padding: 0px 0% 0;
    display: flex;
    align-items: center;
    height: 100%; }
    @media (max-width: 1226px) {
      .front-page .banner.top .content .bloc {
        width: 100%;
        padding: 80px 0% 0; } }
    @media (max-width: 1024px) {
      .front-page .banner.top .content .bloc {
        width: 100%;
        padding: 80px 0% 90px; } }
    @media (max-width: 639px) {
      .front-page .banner.top .content .bloc {
        padding: 40px 0% 50px; } }
    .front-page .banner.top .content .bloc .texts .top-title {
      clear: both;
      display: block;
      position: relative;
      user-select: none;
      transform: translate3d(0, 5px, 0);
      transition: opacity 0.3s, transform 0.3s;
      animation: fade 1.5s; }
      @media (max-width: 1024px) {
        .front-page .banner.top .content .bloc .texts .top-title br {
          display: none; } }
    .front-page .banner.top .content .bloc .texts ul {
      padding-top: 10px;
      display: inline-block;
      float: left;
      clear: both;
      margin-bottom: 65px; }
      @media (max-width: 1024px) {
        .front-page .banner.top .content .bloc .texts ul {
          padding-top: 10px;
          margin-bottom: 50px; } }
      @media (max-width: 639px) {
        .front-page .banner.top .content .bloc .texts ul {
          margin-bottom: 30px; } }
      .front-page .banner.top .content .bloc .texts ul li {
        color: #fff;
        line-height: 1.8;
        font-size: 24px;
        padding-left: 50px;
        position: relative;
        animation-fill-mode: both;
        letter-spacing: 0.6px; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(1) {
          animation-delay: 0.07s;
          animation-duration: 0.6s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(2) {
          animation-delay: 0.17s;
          animation-duration: 0.7s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(3) {
          animation-delay: 0.27s;
          animation-duration: 0.8s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(4) {
          animation-delay: 0.37s;
          animation-duration: 0.9s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(5) {
          animation-delay: 0.47s;
          animation-duration: 1s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(6) {
          animation-delay: 0.57s;
          animation-duration: 1.1s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(7) {
          animation-delay: 0.67s;
          animation-duration: 1.2s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(8) {
          animation-delay: 0.77s;
          animation-duration: 1.3s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(9) {
          animation-delay: 0.87s;
          animation-duration: 1.4s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(10) {
          animation-delay: 0.97s;
          animation-duration: 1.5s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(1) .icon {
          animation-delay: 0.26s;
          animation-duration: 0.6s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(2) .icon {
          animation-delay: 0.32s;
          animation-duration: 0.7s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(3) .icon {
          animation-delay: 0.38s;
          animation-duration: 0.8s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(4) .icon {
          animation-delay: 0.44s;
          animation-duration: 0.9s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(5) .icon {
          animation-delay: 0.5s;
          animation-duration: 1s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(6) .icon {
          animation-delay: 0.56s;
          animation-duration: 1.1s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(7) .icon {
          animation-delay: 0.62s;
          animation-duration: 1.2s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(8) .icon {
          animation-delay: 0.68s;
          animation-duration: 1.3s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(9) .icon {
          animation-delay: 0.74s;
          animation-duration: 1.4s;
          animation-name: fade; }
        .front-page .banner.top .content .bloc .texts ul li:nth-child(10) .icon {
          animation-delay: 0.8s;
          animation-duration: 1.5s;
          animation-name: fade; }
        @media (max-width: 1024px) {
          .front-page .banner.top .content .bloc .texts ul li {
            padding-left: 40px; } }
        @media (max-width: 768px) {
          .front-page .banner.top .content .bloc .texts ul li {
            font-size: 22px; } }
        @media (max-width: 639px) {
          .front-page .banner.top .content .bloc .texts ul li {
            font-size: 12px;
            padding-left: 25px; } }
        .front-page .banner.top .content .bloc .texts ul li .icon {
          width: 16px;
          height: 12px;
          position: absolute;
          left: 5px;
          top: 38%;
          transform: translate(0, -50%);
          animation-fill-mode: both; }
          .front-page .banner.top .content .bloc .texts ul li .icon * {
            fill: #fff; }
          @media (max-width: 1024px) {
            .front-page .banner.top .content .bloc .texts ul li .icon {
              left: 0; } }
          @media (max-width: 639px) {
            .front-page .banner.top .content .bloc .texts ul li .icon {
              width: 11px;
              height: 8px;
              top: 42%; } }
    .front-page .banner.top .content .bloc .texts a {
      height: 92px;
      border: 1px solid white;
      display: inline-block;
      float: left;
      clear: both;
      color: #fff;
      font-weight: 700;
      padding: 25px;
      padding-top: 36px;
      padding-right: 100px;
      position: relative;
      font-size: 20px; }
      @media (max-width: 639px) {
        .front-page .banner.top .content .bloc .texts a {
          margin-top: 0px;
          font-size: 10px;
          height: 40px;
          padding-top: 17px;
          padding-right: 50px; } }
      .front-page .banner.top .content .bloc .texts a .arrow {
        position: absolute;
        right: 40px;
        top: 44%;
        transform: translate(0, -50%);
        width: 15px;
        height: 10px;
        transition: transform 0.3s; }
        .front-page .banner.top .content .bloc .texts a .arrow svg * {
          stroke: #fff; }
        @media (max-width: 639px) {
          .front-page .banner.top .content .bloc .texts a .arrow {
            right: 20px;
            width: 6px;
            height: 4px; } }
      .front-page .banner.top .content .bloc .texts a:hover {
        background: #A30C1A;
        border: 1px solid #a30c1a; }
        .front-page .banner.top .content .bloc .texts a:hover .arrow {
          transform: translate(2px, -50%); }
        .front-page .banner.top .content .bloc .texts a:hover::after {
          opacity: 1;
          width: 100%; }
  .front-page .banner.top a.devis {
    position: absolute;
    right: 0;
    bottom: -42.5px;
    background: #A30C1A;
    color: #fff;
    padding: 33px 120px 40px 40px;
    font-size: 20px;
    font-weight: 700;
    height: 85px; }
    @media (max-width: 1024px) {
      .front-page .banner.top a.devis {
        bottom: -35px;
        font-size: 18px;
        height: 70px;
        padding-top: 27px; } }
    @media (max-width: 768px) {
      .front-page .banner.top a.devis {
        display: none; } }
    .front-page .banner.top a.devis .icon-container {
      background: #710C16;
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
      width: 85px; }
      @media (max-width: 1024px) {
        .front-page .banner.top a.devis .icon-container {
          width: 70px; } }
      @media (max-width: 768px) {
        .front-page .banner.top a.devis .icon-container {
          width: 53px; } }
      .front-page .banner.top a.devis .icon-container .icon {
        width: 15px;
        height: 10px;
        position: absolute;
        left: 50%;
        top: 43%;
        transition: left 0.3s;
        transform: translate(-50%, -50%); }
        @media (max-width: 768px) {
          .front-page .banner.top a.devis .icon-container .icon {
            top: 48%; } }
    .front-page .banner.top a.devis:hover, .front-page .banner.top a.devis:hover .icon-container {
      background: #2b2b2b; }
    .front-page .banner.top a.devis:hover .icon {
      left: 55%; }
  .front-page .banner.top .beton-a-emporter-container {
    position: absolute;
    height: 100%;
    width: calc(50% - 200px);
    top: 0;
    right: 0; }
    @media (max-width: 1024px) {
      .front-page .banner.top .beton-a-emporter-container {
        width: 100%;
        position: relative;
        top: auto;
        right: auto;
        height: 500px; } }
    @media (max-width: 639px) {
      .front-page .banner.top .beton-a-emporter-container {
        height: auto;
        display: inline-block; } }
    .front-page .banner.top .beton-a-emporter-container .image-container {
      height: 275px;
      filter: brightness(95%); }
      @media (max-width: 1024px) {
        .front-page .banner.top .beton-a-emporter-container .image-container {
          width: 33%;
          display: inline-block;
          float: right;
          height: 100%; } }
      @media (max-width: 639px) {
        .front-page .banner.top .beton-a-emporter-container .image-container {
          width: 100%;
          height: 210px; } }
    .front-page .banner.top .beton-a-emporter-container .texts-container {
      background: #A30C1A;
      height: calc(100% - 275px);
      position: relative; }
      @media (max-width: 1024px) {
        .front-page .banner.top .beton-a-emporter-container .texts-container {
          width: 67%;
          display: inline-block;
          float: left;
          height: 100%; } }
      @media (max-width: 639px) {
        .front-page .banner.top .beton-a-emporter-container .texts-container {
          width: 100%;
          height: auto; } }
      .front-page .banner.top .beton-a-emporter-container .texts-container * {
        color: #fff; }
      .front-page .banner.top .beton-a-emporter-container .texts-container > .inside {
        overflow: hidden;
        padding: 65px 60px 40px; }
        @media (max-width: 1367px) {
          .front-page .banner.top .beton-a-emporter-container .texts-container > .inside {
            padding: 50px 60px 40px; } }
        @media (max-width: 639px) {
          .front-page .banner.top .beton-a-emporter-container .texts-container > .inside {
            padding: 50px 8% 40px; } }
      .front-page .banner.top .beton-a-emporter-container .texts-container .background-logo {
        width: 850px;
        height: 150%;
        position: absolute;
        top: -15%;
        left: 10%; }
        .front-page .banner.top .beton-a-emporter-container .texts-container .background-logo svg * {
          fill: rgba(0, 0, 0, 0.05); }
      .front-page .banner.top .beton-a-emporter-container .texts-container .title {
        font-size: 42px;
        font-weight: 300;
        margin-bottom: 37px;
        animation: fade 1s; }
        .front-page .banner.top .beton-a-emporter-container .texts-container .title b {
          display: block; }
        @media (max-width: 1367px) {
          .front-page .banner.top .beton-a-emporter-container .texts-container .title {
            font-size: 35px; } }
        @media (max-width: 639px) {
          .front-page .banner.top .beton-a-emporter-container .texts-container .title {
            font-size: 29px;
            text-shadow: 4px 4px 15px rgba(0, 0, 0, 0.2); }
            .front-page .banner.top .beton-a-emporter-container .texts-container .title b {
              display: inline-block; } }
      .front-page .banner.top .beton-a-emporter-container .texts-container .pastille {
        position: absolute;
        top: -33px;
        left: 200px;
        width: 126px;
        height: 126px;
        z-index: 10;
        animation-fill-mode: both !important;
        animation-delay: 0.5s;
        transition-delay: 0.5s; }
        @media (max-width: 1367px) {
          .front-page .banner.top .beton-a-emporter-container .texts-container .pastille {
            width: 110px;
            height: 110px;
            left: auto;
            right: 60px; } }
        @media (max-width: 639px) {
          .front-page .banner.top .beton-a-emporter-container .texts-container .pastille {
            width: 76px;
            height: 76px;
            right: 8%; } }
      .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container {
        margin-bottom: 12px;
        display: inline-block;
        width: 100%; }
        .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .inside {
          display: none;
          animation-fill-mode: both !important;
          animation: fade 1s ease 0s; }
          .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .inside.ready {
            display: block; }
        .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .icon-container {
          width: 40px;
          display: inline-block;
          float: left; }
          .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .icon-container .icon {
            width: 34px;
            height: 34px;
            background: #fff;
            border-radius: 50%; }
            @media (max-width: 639px) {
              .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .icon-container .icon {
                width: 25px;
                height: 25px; } }
            .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .icon-container .icon svg {
              transform: scale(0.5); }
            .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .icon-container .icon svg * {
              fill: #A30C1A; }
            .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .icon-container .icon.is-open svg * {
              fill: green; }
        .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .title-days-container {
          display: inline-block;
          float: left;
          padding-left: 10px;
          padding-top: 5px;
          width: calc(100% - 40px); }
          .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .title-days-container .small-title {
            font-size: 20px;
            font-weight: 700;
            margin-bottom: 10px; }
            @media (max-width: 1367px) {
              .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .title-days-container .small-title {
                font-size: 18px; } }
            @media (max-width: 639px) {
              .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .title-days-container .small-title {
                font-size: 12px; } }
          .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .title-days-container .opening-hours {
            font-size: 20px;
            font-weight: 300;
            line-height: 1.3; }
            @media (max-width: 1367px) {
              .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .title-days-container .opening-hours {
                font-size: 18px;
                width: 64%; } }
            @media (max-width: 639px) {
              .front-page .banner.top .beton-a-emporter-container .texts-container .opening-hours-container .title-days-container .opening-hours {
                font-size: 12px; } }
      .front-page .banner.top .beton-a-emporter-container .texts-container .plan-acces {
        display: inline-block;
        width: 100%;
        position: relative;
        animation-fill-mode: both !important;
        animation: fade 1s ease 0.5s;
        margin-bottom: 25px; }
        .front-page .banner.top .beton-a-emporter-container .texts-container .plan-acces .icon {
          position: absolute;
          top: 18px;
          left: 6px;
          width: 23px;
          height: 26px; }
          .front-page .banner.top .beton-a-emporter-container .texts-container .plan-acces .icon * {
            fill: #fff; }
        .front-page .banner.top .beton-a-emporter-container .texts-container .plan-acces p {
          padding-left: 50px;
          padding-top: 15px;
          padding-bottom: 15px;
          font-size: 20px;
          font-weight: 700; }
          @media (max-width: 1367px) {
            .front-page .banner.top .beton-a-emporter-container .texts-container .plan-acces p {
              font-size: 18px; } }
          @media (max-width: 639px) {
            .front-page .banner.top .beton-a-emporter-container .texts-container .plan-acces p {
              font-size: 12px; } }
        .front-page .banner.top .beton-a-emporter-container .texts-container .plan-acces:hover p, .front-page .banner.top .beton-a-emporter-container .texts-container .plan-acces:focus p {
          text-decoration: underline; }
      .front-page .banner.top .beton-a-emporter-container .texts-container a.en-savoir-plus {
        height: 76px;
        display: inline-block;
        background: #6C0D16;
        float: left;
        clear: both;
        color: #fff;
        font-weight: 700;
        padding: 35px;
        padding-top: 31px;
        padding-right: 80px;
        position: relative;
        font-size: 15px;
        letter-spacing: 0px; }
        @media (max-width: 639px) {
          .front-page .banner.top .beton-a-emporter-container .texts-container a.en-savoir-plus {
            margin-top: 0px;
            font-size: 10px;
            height: 40px;
            padding-left: 25px;
            padding-top: 15px;
            padding-bottom: 0;
            padding-right: 50px; } }
        .front-page .banner.top .beton-a-emporter-container .texts-container a.en-savoir-plus .arrow {
          position: absolute;
          right: 30px;
          top: 46%;
          transform: translate(0, -50%);
          transition: transform 0.3s;
          width: 12px;
          height: 8px; }
          .front-page .banner.top .beton-a-emporter-container .texts-container a.en-savoir-plus .arrow svg * {
            stroke: #fff; }
          @media (max-width: 639px) {
            .front-page .banner.top .beton-a-emporter-container .texts-container a.en-savoir-plus .arrow {
              right: 20px;
              width: 6px;
              height: 4px;
              top: 42%; } }
        .front-page .banner.top .beton-a-emporter-container .texts-container a.en-savoir-plus:hover {
          background: #fff;
          color: #A30C1A; }
          .front-page .banner.top .beton-a-emporter-container .texts-container a.en-savoir-plus:hover .arrow {
            transform: translate(2px, -50%); }
            .front-page .banner.top .beton-a-emporter-container .texts-container a.en-savoir-plus:hover .arrow svg * {
              stroke: #A30C1A; }
          .front-page .banner.top .beton-a-emporter-container .texts-container a.en-savoir-plus:hover::after {
            opacity: 1;
            width: 100%; }

.front-page .banner.avantages {
  padding: 210px 0 120px;
  margin-top: -5px;
  z-index: 10;
  background: #F0F0F0; }
  @media (max-width: 1024px) {
    .front-page .banner.avantages {
      padding: 150px 0 120px; } }
  @media (max-width: 768px) {
    .front-page .banner.avantages {
      padding: 140px 0 80px; } }
  @media (max-width: 639px) {
    .front-page .banner.avantages {
      padding: 75px 0 80px; } }
  .front-page .banner.avantages .background-logo {
    width: 850px;
    height: 850px;
    position: absolute;
    top: -2px;
    left: -10%; }
    @media (max-width: 768px) {
      .front-page .banner.avantages .background-logo {
        width: 595px;
        height: 536px;
        left: -30%;
        top: 50px; } }
    @media (max-width: 639px) {
      .front-page .banner.avantages .background-logo {
        height: 237px;
        width: 263px;
        left: auto;
        right: 50%;
        top: 30px; } }
  .front-page .banner.avantages .col-image {
    padding-right: 7%; }
    @media (max-width: 768px) {
      .front-page .banner.avantages .col-image {
        width: 100%;
        padding-right: 0; } }
    .front-page .banner.avantages .col-image .image-container {
      height: 420px; }
      @media (max-width: 768px) {
        .front-page .banner.avantages .col-image .image-container {
          height: 343px; } }
      @media (max-width: 639px) {
        .front-page .banner.avantages .col-image .image-container {
          height: 163px; } }
      .front-page .banner.avantages .col-image .image-container .icon-container {
        width: 92px;
        height: 92px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); }
        @media (max-width: 768px) {
          .front-page .banner.avantages .col-image .image-container .icon-container {
            height: 75px;
            width: 75px; } }
        @media (max-width: 639px) {
          .front-page .banner.avantages .col-image .image-container .icon-container {
            width: 39px;
            height: 39px; } }
        .front-page .banner.avantages .col-image .image-container .icon-container .back-icon {
          content: "";
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          transform: translate3d(-20px, -20px, 0);
          background: #fff;
          border-radius: 50%;
          opacity: 0;
          position: absolute;
          z-index: -1; }

@keyframes pumpItSmall {
  0% {
    opacity: 0;
    transform: scale(1); }
  50% {
    opacity: 0.15; }
  100% {
    opacity: 0;
    transform: scale(1.5); } }
          .front-page .banner.avantages .col-image .image-container .icon-container .back-icon.small {
            animation: pumpItSmall 3s ease 0.5s infinite both; }

@keyframes pumpItLarge {
  0% {
    opacity: 0;
    transform: scale(1); }
  50% {
    opacity: 0.15; }
  100% {
    opacity: 0;
    transform: scale(2); } }
          .front-page .banner.avantages .col-image .image-container .icon-container .back-icon.large {
            animation: pumpItLarge 3s ease 2s infinite both; }
        .front-page .banner.avantages .col-image .image-container .icon-container .icon {
          width: 100%;
          height: 100%;
          background: #fff;
          border-radius: 50%; }
          .front-page .banner.avantages .col-image .image-container .icon-container .icon svg {
            transform: scale(0.2); }
      .front-page .banner.avantages .col-image .image-container.has-video * {
        cursor: pointer; }
      .front-page .banner.avantages .col-image .image-container:hover .icon {
        background: #a30c1a; }
        .front-page .banner.avantages .col-image .image-container:hover .icon svg * {
          fill: #fff; }
  .front-page .banner.avantages .col-texte {
    float: right;
    width: 50%;
    padding-right: 5%;
    border-right: 1px solid rgba(255, 255, 255, 0.5); }
    @media (max-width: 1226px) {
      .front-page .banner.avantages .col-texte {
        border-right: none; } }
    @media (max-width: 768px) {
      .front-page .banner.avantages .col-texte {
        width: 100%;
        padding-top: 60px;
        padding-left: 0%; } }
    .front-page .banner.avantages .col-texte .titre {
      margin-bottom: 25px;
      padding-top: 0 !important; }
    .front-page .banner.avantages .col-texte .texte {
      margin-bottom: 35px; }
      .front-page .banner.avantages .col-texte .texte p {
        font-size: 14px;
        font-weight: 400;
        line-height: 2; }
        @media (max-width: 639px) {
          .front-page .banner.avantages .col-texte .texte p {
            font-size: 11px; } }
    .front-page .banner.avantages .col-texte ul {
      width: 50%;
      float: left; }
      @media (max-width: 639px) {
        .front-page .banner.avantages .col-texte ul {
          width: 100%;
          margin-bottom: 0;
          padding-bottom: 0; } }
      .front-page .banner.avantages .col-texte ul li {
        color: #A30C1A;
        font-weight: 500;
        padding-left: 30px;
        font-size: 16px; }
        .front-page .banner.avantages .col-texte ul li::before {
          color: #A30C1A; }
        @media (max-width: 639px) {
          .front-page .banner.avantages .col-texte ul li {
            font-size: 12px;
            margin-bottom: 7px !important; } }

.front-page .banner.votre-commande {
  margin-top: -6px;
  z-index: 11; }
  @media (max-width: 1226px) {
    .front-page .banner.votre-commande {
      height: auto;
      padding-bottom: 40px; } }
  @media (max-width: 768px) {
    .front-page .banner.votre-commande {
      padding-bottom: 20px; } }
  .front-page .banner.votre-commande .banner-content {
    max-width: 1500px; }
  .front-page .banner.votre-commande .content {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
    @media (max-width: 768px) {
      .front-page .banner.votre-commande .content {
        border-bottom: none; } }
    @media (max-width: 639px) {
      .front-page .banner.votre-commande .content {
        padding-bottom: 0px; } }
  .front-page .banner.votre-commande .bloc-titre-section {
    padding: 120px 0 50px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 80px; }
    .front-page .banner.votre-commande .bloc-titre-section .titre {
      color: #003359;
      font-size: 19px;
      font-weight: 700; }
      @media (max-width: 1226px) {
        .front-page .banner.votre-commande .bloc-titre-section .titre {
          font-size: 32.5px; } }
    @media (max-width: 1226px) {
      .front-page .banner.votre-commande .bloc-titre-section {
        padding: 100px 0 50px; } }
    @media (max-width: 768px) {
      .front-page .banner.votre-commande .bloc-titre-section {
        padding: 20px 0 40px; } }
    @media (max-width: 639px) {
      .front-page .banner.votre-commande .bloc-titre-section {
        padding: 0px 0 20px;
        margin-bottom: 30px; } }
  .front-page .banner.votre-commande .lien {
    margin-top: 50px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 15px 0;
    position: absolute;
    top: 100px;
    right: 0;
    display: none !important; }
    @media (max-width: 768px) {
      .front-page .banner.votre-commande .lien {
        margin-top: 10px;
        font-size: 10px;
        position: relative;
        top: auto; } }
    .front-page .banner.votre-commande .lien::after {
      content: "";
      display: inline-block;
      width: 63px;
      height: 7px;
      background: #A30C1A;
      position: absolute;
      bottom: -8px;
      left: 0;
      transition: width 0.3s; }
      @media (max-width: 768px) {
        .front-page .banner.votre-commande .lien::after {
          width: 25px;
          height: 4px;
          bottom: -6px; } }
    .front-page .banner.votre-commande .lien:hover::after, .front-page .banner.votre-commande .lien:focus::after {
      width: 100%; }
  .front-page .banner.votre-commande ul {
    position: relative;
    width: calc(100% + 30px);
    padding-bottom: 20px; }
    @media (max-width: 639px) {
      .front-page .banner.votre-commande ul {
        width: 100%;
        padding-bottom: 0; } }
    .front-page .banner.votre-commande ul li {
      z-index: 10;
      width: 20%;
      display: inline-block;
      padding-right: 30px;
      float: left; }
      .front-page .banner.votre-commande ul li:nth-child(1) {
        animation-delay: 0s;
        animation-duration: 0.66s;
        animation-name: move_vignettes_up; }
      .front-page .banner.votre-commande ul li:nth-child(2) {
        animation-delay: 0.05s;
        animation-duration: 0.82s;
        animation-name: move_vignettes_up; }
      .front-page .banner.votre-commande ul li:nth-child(3) {
        animation-delay: 0.1s;
        animation-duration: 0.98s;
        animation-name: move_vignettes_up; }
      .front-page .banner.votre-commande ul li:nth-child(4) {
        animation-delay: 0.15s;
        animation-duration: 1.14s;
        animation-name: move_vignettes_up; }
      .front-page .banner.votre-commande ul li:nth-child(5) {
        animation-delay: 0.2s;
        animation-duration: 1.3s;
        animation-name: move_vignettes_up; }
      .front-page .banner.votre-commande ul li:nth-child(6) {
        animation-delay: 0.25s;
        animation-duration: 1.46s;
        animation-name: move_vignettes_up; }
      .front-page .banner.votre-commande ul li:nth-child(7) {
        animation-delay: 0.3s;
        animation-duration: 1.62s;
        animation-name: move_vignettes_up; }
      .front-page .banner.votre-commande ul li:nth-child(8) {
        animation-delay: 0.35s;
        animation-duration: 1.78s;
        animation-name: move_vignettes_up; }
      .front-page .banner.votre-commande ul li:nth-child(9) {
        animation-delay: 0.4s;
        animation-duration: 1.94s;
        animation-name: move_vignettes_up; }
      .front-page .banner.votre-commande ul li:nth-child(10) {
        animation-delay: 0.45s;
        animation-duration: 2.1s;
        animation-name: move_vignettes_up; }
      @media (max-width: 1226px) {
        .front-page .banner.votre-commande ul li {
          position: relative;
          height: auto;
          width: calc(50%);
          top: auto;
          text-align: left; } }
      @media (max-width: 1024px) {
        .front-page .banner.votre-commande ul li {
          width: 100%;
          left: 0% !important;
          text-align: left;
          padding-right: 0px;
          margin-bottom: 20px; } }
      @media (max-width: 639px) {
        .front-page .banner.votre-commande ul li {
          margin-bottom: 0px; } }
      .front-page .banner.votre-commande ul li a {
        padding: 0px 8% 50px;
        position: relative;
        height: 100%;
        transition: transform 0.3s;
        cursor: default;
        text-align: center; }
        @media (max-width: 1226px) {
          .front-page .banner.votre-commande ul li a {
            background-color: rgba(255, 255, 255, 0);
            padding: 10px 15% 50px 8%; } }
        @media (max-width: 1024px) {
          .front-page .banner.votre-commande ul li a {
            text-align: left;
            padding: 10px 14% 40px 0%; } }
        @media (max-width: 639px) {
          .front-page .banner.votre-commande ul li a {
            text-align: left;
            padding: 10px 0% 30px; } }
        .front-page .banner.votre-commande ul li a:not(.no-href):hover .titre {
          text-decoration: underline; }
      .front-page .banner.votre-commande ul li .image-container {
        width: 177px;
        height: 177px;
        display: block;
        margin: 0 auto 55px;
        transition: transform 0.5s;
        position: relative;
        animation: scale 1s;
        border-radius: 50%;
        background: #fff; }
        @media (max-width: 1367px) {
          .front-page .banner.votre-commande ul li .image-container {
            width: 150px;
            height: 150px; } }
        @media (max-width: 1024px) {
          .front-page .banner.votre-commande ul li .image-container {
            width: 124px;
            height: 124px;
            margin: 0;
            float: left;
            display: inline-block; } }
        @media (max-width: 639px) {
          .front-page .banner.votre-commande ul li .image-container {
            height: 60px;
            width: 60px;
            margin-bottom: 25px; } }
        .front-page .banner.votre-commande ul li .image-container .back-icon {
          content: "";
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          transform: translate3d(-20px, -20px, 0);
          background: #464646;
          border-radius: 50%;
          opacity: 0;
          position: absolute;
          z-index: -1;
          animation-fill-mode: both;
          animation-iteration-count: infinite; }
        .front-page .banner.votre-commande ul li .image-container .image {
          overflow: hidden;
          width: 100%;
          height: 100%;
          transform: scale(0.35); }
        .front-page .banner.votre-commande ul li .image-container .icon-checked-container {
          position: absolute;
          width: 52px;
          height: 52px;
          top: -6px;
          right: -6px; }
          @media (max-width: 1367px) {
            .front-page .banner.votre-commande ul li .image-container .icon-checked-container {
              width: 42px;
              height: 42px; } }
          @media (max-width: 1024px) {
            .front-page .banner.votre-commande ul li .image-container .icon-checked-container {
              width: 40px;
              height: 40px; } }
          @media (max-width: 768px) {
            .front-page .banner.votre-commande ul li .image-container .icon-checked-container {
              width: 36px;
              height: 36px; } }
          @media (max-width: 639px) {
            .front-page .banner.votre-commande ul li .image-container .icon-checked-container {
              width: 22px;
              height: 22px; } }

@keyframes pumpItChecked {
  0% {
    opacity: 0;
    transform: scale(1); }
  50% {
    opacity: 0.2; }
  100% {
    opacity: 0;
    transform: scale(1.5); } }
          .front-page .banner.votre-commande ul li .image-container .icon-checked-container .back-icon-checked {
            content: "";
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            transform: translate3d(-20px, -20px, 0);
            background: #6CBE61;
            border-radius: 50%;
            opacity: 0;
            position: absolute;
            z-index: -1;
            animation-fill-mode: both;
            animation-iteration-count: infinite;
            animation-duration: 3s;
            animation-name: pumpItChecked; }
          .front-page .banner.votre-commande ul li .image-container .icon-checked-container .icon-checked {
            background: #6CBE61;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            border-radius: 50%; }
            .front-page .banner.votre-commande ul li .image-container .icon-checked-container .icon-checked svg {
              transform: scale(0.45); }
              .front-page .banner.votre-commande ul li .image-container .icon-checked-container .icon-checked svg * {
                fill: #fff; }

@keyframes pumpItVignettes {
  0% {
    opacity: 0;
    transform: scale(1); }
  50% {
    opacity: 0.05; }
  100% {
    opacity: 0;
    transform: scale(1.4); } }
      .front-page .banner.votre-commande ul li:nth-child(1) .back-icon {
        animation-delay: 0.35s;
        animation-duration: 3s;
        animation-name: pumpItVignettes; }
      .front-page .banner.votre-commande ul li:nth-child(2) .back-icon {
        animation-delay: 0.75s;
        animation-duration: 3s;
        animation-name: pumpItVignettes; }
      .front-page .banner.votre-commande ul li:nth-child(3) .back-icon {
        animation-delay: 1.15s;
        animation-duration: 3s;
        animation-name: pumpItVignettes; }
      .front-page .banner.votre-commande ul li:nth-child(4) .back-icon {
        animation-delay: 1.55s;
        animation-duration: 3s;
        animation-name: pumpItVignettes; }
      .front-page .banner.votre-commande ul li:nth-child(5) .back-icon {
        animation-delay: 1.95s;
        animation-duration: 3s;
        animation-name: pumpItVignettes; }
      .front-page .banner.votre-commande ul li:nth-child(6) .back-icon {
        animation-delay: 2.35s;
        animation-duration: 3s;
        animation-name: pumpItVignettes; }
      .front-page .banner.votre-commande ul li:nth-child(7) .back-icon {
        animation-delay: 2.75s;
        animation-duration: 3s;
        animation-name: pumpItVignettes; }
      .front-page .banner.votre-commande ul li:nth-child(8) .back-icon {
        animation-delay: 3.15s;
        animation-duration: 3s;
        animation-name: pumpItVignettes; }
      .front-page .banner.votre-commande ul li:nth-child(9) .back-icon {
        animation-delay: 3.55s;
        animation-duration: 3s;
        animation-name: pumpItVignettes; }
      .front-page .banner.votre-commande ul li:nth-child(10) .back-icon {
        animation-delay: 3.95s;
        animation-duration: 3s;
        animation-name: pumpItVignettes; }
      .front-page .banner.votre-commande ul li:nth-child(4) .image {
        transform: translate(0, 3px) scale(0.55) !important; }
      .front-page .banner.votre-commande ul li:nth-child(5) .image {
        transform: scale(0.4) !important; }
      @media (max-width: 1024px) {
        .front-page .banner.votre-commande ul li .texts-container {
          float: left;
          width: calc(100% - 124px);
          padding-left: 50px;
          display: flex;
          align-items: center;
          height: 100%;
          margin: auto; } }
      @media (max-width: 639px) {
        .front-page .banner.votre-commande ul li .texts-container {
          display: inline-block;
          width: calc(100% - 60px);
          padding-left: 30px;
          height: auto; } }
      .front-page .banner.votre-commande ul li .bloc-titre {
        display: inline-block;
        text-align: center; }
        @media (max-width: 1024px) {
          .front-page .banner.votre-commande ul li .bloc-titre {
            text-align: left;
            width: 100%; }
            .front-page .banner.votre-commande ul li .bloc-titre br {
              display: none; } }
        .front-page .banner.votre-commande ul li .bloc-titre .titre {
          font-size: 22px;
          font-weight: 700;
          font-family: "Poppins", sans-serif;
          color: #A30C1A;
          line-height: 1.2;
          position: relative;
          display: inline-block;
          padding-bottom: 30px; }
          @media (max-width: 1226px) {
            .front-page .banner.votre-commande ul li .bloc-titre .titre {
              padding-top: 10px;
              padding-bottom: 10px; } }
          @media (max-width: 1024px) {
            .front-page .banner.votre-commande ul li .bloc-titre .titre {
              padding-top: 0px; } }
          @media (max-width: 639px) {
            .front-page .banner.votre-commande ul li .bloc-titre .titre {
              padding-top: 0px;
              padding-bottom: 15px;
              font-size: 16px; } }
      @media (max-width: 768px) {
        .front-page .banner.votre-commande ul li .texte {
          display: inline-block;
          clear: both; } }
      .front-page .banner.votre-commande ul li .texte p {
        font-size: 14px;
        position: relative;
        line-height: 1.6;
        color: #727272;
        font-weight: 400;
        letter-spacing: 0px; }
        @media (max-width: 639px) {
          .front-page .banner.votre-commande ul li .texte p {
            font-size: 11px; } }
      .front-page .banner.votre-commande ul li .btn-container {
        position: absolute;
        width: 100%;
        left: 0;
        bottom: 40px;
        animation: fade 2.5s;
        display: none; }
        .front-page .banner.votre-commande ul li .btn-container button {
          background-color: #c8c8c8;
          padding: 10px 20px;
          border-radius: 7px;
          display: inline-block;
          width: 158px;
          transition: background 0.5s, width 0.4s, border-radius 0.4s; }
          .front-page .banner.votre-commande ul li .btn-container button p {
            color: #fff !important;
            font-size: 14px;
            font-weight: 400; }
          .front-page .banner.votre-commande ul li .btn-container button .icon {
            position: absolute;
            width: 20px;
            height: 20px;
            bottom: 12px;
            left: calc(50% - 60px); }
            .front-page .banner.votre-commande ul li .btn-container button .icon .st0 {
              fill: #FFFFFF; }
      .front-page .banner.votre-commande ul li a:hover {
        cursor: pointer; }
        .front-page .banner.votre-commande ul li a:hover button {
          width: 165px;
          border-radius: 0px;
          background: #fff; }
          .front-page .banner.votre-commande ul li a:hover button .st0 {
            fill: inherit !important; }
          .front-page .banner.votre-commande ul li a:hover button p {
            color: inherit !important; }
      .front-page .banner.votre-commande ul li:last-child .titre::before {
        content: "OU";
        font-weight: 700;
        color: #2B2B2B;
        font-size: 15px;
        position: absolute;
        top: 4px;
        left: -70%; }
        @media (max-width: 1367px) {
          .front-page .banner.votre-commande ul li:last-child .titre::before {
            left: -60%; } }
        @media (max-width: 1024px) {
          .front-page .banner.votre-commande ul li:last-child .titre::before {
            display: none; } }
      .front-page .banner.votre-commande ul li:last-child .image-container::before {
        content: "OU";
        font-weight: 700;
        color: #2B2B2B;
        font-size: 15px;
        position: absolute;
        top: -41px;
        left: calc(50% - 15px);
        display: none; }
        @media (max-width: 1024px) {
          .front-page .banner.votre-commande ul li:last-child .image-container::before {
            display: inline-block; } }
        @media (max-width: 639px) {
          .front-page .banner.votre-commande ul li:last-child .image-container::before {
            font-size: 12px;
            left: calc(50% - 10px); } }

.front-page .banner.votre-projet {
  padding: 140px 0 250px; }
  @media (max-width: 1024px) {
    .front-page .banner.votre-projet {
      padding: 90px 0 200px; } }
  @media (max-width: 768px) {
    .front-page .banner.votre-projet {
      padding: 40px 0 100px; } }
  @media (max-width: 639px) {
    .front-page .banner.votre-projet {
      padding: 40px 0 0px; } }
  .front-page .banner.votre-projet #slider_home_bottom,
  .front-page .banner.votre-projet #slider_home_bottom_tp {
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%; }
    .front-page .banner.votre-projet #slider_home_bottom li,
    .front-page .banner.votre-projet #slider_home_bottom_tp li {
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%; }
      .front-page .banner.votre-projet #slider_home_bottom li .image-container,
      .front-page .banner.votre-projet #slider_home_bottom_tp li .image-container {
        opacity: 0;
        transition: opacity 1s; }
      .front-page .banner.votre-projet #slider_home_bottom li.active,
      .front-page .banner.votre-projet #slider_home_bottom_tp li.active {
        z-index: 10; }
        .front-page .banner.votre-projet #slider_home_bottom li.active .image-container,
        .front-page .banner.votre-projet #slider_home_bottom_tp li.active .image-container {
          opacity: 1; }
  .front-page .banner.votre-projet .col-image {
    z-index: 9;
    position: absolute;
    top: 150px;
    right: 0;
    height: 634px;
    width: calc(50% + 100px); }
    @media (max-width: 1024px) {
      .front-page .banner.votre-projet .col-image {
        top: 100px; } }
    @media (max-width: 768px) {
      .front-page .banner.votre-projet .col-image {
        position: relative;
        top: auto;
        right: auto;
        width: 100%;
        height: 376px;
        margin-bottom: 40px; } }
    @media (max-width: 639px) {
      .front-page .banner.votre-projet .col-image {
        height: 186px;
        width: 120%;
        margin-left: -10%; } }
    .front-page .banner.votre-projet .col-image ul {
      padding-bottom: 0;
      margin-bottom: 0; }
    .front-page .banner.votre-projet .col-image .slider-control-prev-next {
      height: 85px;
      width: 171px;
      position: absolute;
      left: 160px;
      bottom: 0px;
      z-index: 10;
      animation-fill-mode: both !important;
      animation: fade 2s;
      animation-delay: 0.5s;
      display: none; }
      .front-page .banner.votre-projet .col-image .slider-control-prev-next.active {
        display: inline-block; }
      @media (max-width: 768px) {
        .front-page .banner.votre-projet .col-image .slider-control-prev-next {
          left: auto;
          right: 0; } }
      @media (max-width: 639px) {
        .front-page .banner.votre-projet .col-image .slider-control-prev-next {
          top: auto;
          bottom: 0;
          height: 53px;
          width: 107px; } }
      .front-page .banner.votre-projet .col-image .slider-control-prev-next .control {
        width: 85px;
        height: 85px;
        display: inline-block;
        text-align: center;
        float: left;
        background: #A30C1A;
        position: relative; }
        @media (max-width: 639px) {
          .front-page .banner.votre-projet .col-image .slider-control-prev-next .control {
            width: 53px;
            height: 53px; } }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:nth-child(1) {
          animation-delay: 0.25s; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:nth-child(2) {
          animation-delay: 0.6s; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:nth-child(3) {
          animation-delay: 0.95s; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:nth-child(4) {
          animation-delay: 1.3s; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:nth-child(5) {
          animation-delay: 1.65s; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:nth-child(6) {
          animation-delay: 2s; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:nth-child(7) {
          animation-delay: 2.35s; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:nth-child(8) {
          animation-delay: 2.7s; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:nth-child(9) {
          animation-delay: 3.05s; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:nth-child(10) {
          animation-delay: 3.4s; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:hover {
          background: #fff; }
          .front-page .banner.votre-projet .col-image .slider-control-prev-next .control:hover .arrow * {
            stroke: #A30C1A; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control .arrow {
          height: 10px;
          width: 15px;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
          @media (max-width: 639px) {
            .front-page .banner.votre-projet .col-image .slider-control-prev-next .control .arrow {
              width: 9px;
              height: 6px;
              top: 59%; } }
          .front-page .banner.votre-projet .col-image .slider-control-prev-next .control .arrow svg {
            transition: transform 0.3s; }
            .front-page .banner.votre-projet .col-image .slider-control-prev-next .control .arrow svg polygon {
              fill: #313030; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control.prev .arrow {
          transform: rotate(180deg);
          left: 43%; }
        .front-page .banner.votre-projet .col-image .slider-control-prev-next .control.next {
          margin-left: 1px; }
          .front-page .banner.votre-projet .col-image .slider-control-prev-next .control.next .arrow {
            top: 48%; }
            @media (max-width: 639px) {
              .front-page .banner.votre-projet .col-image .slider-control-prev-next .control.next .arrow {
                top: 37%; } }
  .front-page .banner.votre-projet .col-texte {
    float: left;
    width: calc(50% + 60px);
    z-index: 10;
    position: relative; }
    @media (max-width: 1226px) {
      .front-page .banner.votre-projet .col-texte {
        margin-top: 100px;
        border-right: none; } }
    @media (max-width: 768px) {
      .front-page .banner.votre-projet .col-texte {
        padding-left: 0%;
        width: 100%;
        margin-top: 30px; } }
    @media (max-width: 639px) {
      .front-page .banner.votre-projet .col-texte {
        margin-top: 0px;
        padding-left: 0%; } }
    .front-page .banner.votre-projet .col-texte .sur-titre .span-sur-titre {
      float: left;
      display: inline-block;
      margin-right: 15px; }
    .front-page .banner.votre-projet .col-texte .sur-titre .petit-trait {
      width: 62px;
      height: 1px;
      float: left;
      transform: translate(0, 5px);
      position: relative;
      display: inline-block;
      overflow: hidden; }
      @media (max-width: 768px) {
        .front-page .banner.votre-projet .col-texte .sur-titre .petit-trait {
          margin-bottom: 40px; } }
      @media (max-width: 639px) {
        .front-page .banner.votre-projet .col-texte .sur-titre .petit-trait {
          margin-bottom: 30px; } }
      .front-page .banner.votre-projet .col-texte .sur-titre .petit-trait span {
        display: inline-block;
        background: #A30C1A; }
    .front-page .banner.votre-projet .col-texte .titre {
      margin-bottom: 20px !important;
      padding-top: 0 !important;
      text-align: left !important;
      float: none;
      clear: both; }
    .front-page .banner.votre-projet .col-texte .texts-container {
      background: #F0F0F0;
      padding-top: 40px;
      padding-right: 10%;
      padding-bottom: 80px; }
      @media (max-width: 639px) {
        .front-page .banner.votre-projet .col-texte .texts-container {
          padding-right: 0; } }
    .front-page .banner.votre-projet .col-texte .chapeau {
      font-size: 14px;
      font-weight: 700;
      color: #a30c1a;
      line-height: 1.7;
      letter-spacing: 0;
      text-transform: none;
      margin-bottom: 20px;
      line-height: 1.8;
      padding-right: 10%; }
      @media (max-width: 768px) {
        .front-page .banner.votre-projet .col-texte .chapeau {
          margin-bottom: 35px; } }
      @media (max-width: 639px) {
        .front-page .banner.votre-projet .col-texte .chapeau {
          font-size: 11px;
          margin-bottom: 35px; } }
    .front-page .banner.votre-projet .col-texte .texte p {
      font-size: 14px;
      font-weight: 400;
      line-height: 2; }
      @media (max-width: 639px) {
        .front-page .banner.votre-projet .col-texte .texte p {
          font-size: 11px; } }
    .front-page .banner.votre-projet .col-texte a.lien {
      text-decoration: none;
      margin-top: 10px;
      display: inline-block;
      padding-left: 60px;
      width: 94%; }
      @media (max-width: 768px) {
        .front-page .banner.votre-projet .col-texte a.lien {
          width: 60%; } }
      @media (max-width: 639px) {
        .front-page .banner.votre-projet .col-texte a.lien {
          width: 90%; } }
      .front-page .banner.votre-projet .col-texte a.lien .icon {
        position: absolute;
        top: 50%;
        transform: translate(0, -50%);
        left: 0;
        width: 26px;
        height: 26px; }
      .front-page .banner.votre-projet .col-texte a.lien .arrow {
        position: absolute;
        top: 48%;
        right: 0;
        transform: translate(0, -50%);
        width: 15px;
        height: 10px; }
        .front-page .banner.votre-projet .col-texte a.lien .arrow * {
          stroke: rgba(0, 0, 0, 0.5); }
      .front-page .banner.votre-projet .col-texte a.lien p {
        padding-top: 15px;
        padding-bottom: 10px;
        font-size: 17px;
        font-weight: 700;
        color: #2B2B2B;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        margin-bottom: 0; }
        @media (max-width: 639px) {
          .front-page .banner.votre-projet .col-texte a.lien p {
            font-size: 12px; } }
      .front-page .banner.votre-projet .col-texte a.lien:hover p {
        color: #A30C1A; }
      .front-page .banner.votre-projet .col-texte a.lien:hover .arrow * {
        stroke: rgba(163, 12, 26, 0.5); }

@media (max-width: 1226px) {
  .page-404 .banner.top {
    height: 600px !important; } }

@media (max-width: 1024px) {
  .page-404 .banner.top {
    height: 500px !important; } }

@media (max-width: 639px) {
  .page-404 .banner.top {
    height: 200px !important; } }

@media (max-width: 639px) {
  .page-404 .banner.top .top-title {
    margin-bottom: 0; } }

.page.applications .banner.top {
  background: #313030;
  transition: height 1s;
  height: 587px; }
  @media (max-width: 1367px) {
    .page.applications .banner.top {
      height: 550px; } }
  @media (max-width: 1226px) {
    .page.applications .banner.top {
      height: 500px; } }
  @media (max-width: 768px) {
    .page.applications .banner.top {
      height: 400px; } }
  @media (max-width: 639px) {
    .page.applications .banner.top {
      height: 230px; } }

.page.applications .banner.top {
  position: relative; }
  @media (max-width: 639px) {
    .page.applications .banner.top {
      margin-bottom: 125px; } }
  .page.applications .banner.top .image {
    background-position: 50% 50%;
    filter: brightness(80%); }
    @media (max-width: 639px) {
      .page.applications .banner.top .image {
        background-position: 50% 50%; } }
  .page.applications .banner.top .bloc {
    padding: 0px 0 0 0;
    height: 100%;
    display: flex;
    align-items: center; }
    @media (max-width: 1226px) {
      .page.applications .banner.top .bloc {
        padding: 0px 0 0 0; } }
    @media (max-width: 639px) {
      .page.applications .banner.top .bloc {
        padding: 50px 0 0 0; } }
  .page.applications .banner.top .global.top-title {
    font-weight: 700;
    animation: fade 2s; }
  .page.applications .banner.top .bottom-links-container {
    position: absolute;
    bottom: 0;
    left: 0;
    display: inline-block;
    width: 100%;
    height: 63px; }
    @media (max-width: 639px) {
      .page.applications .banner.top .bottom-links-container {
        bottom: auto;
        top: 100%;
        width: 120%;
        left: -10%; }
        .page.applications .banner.top .bottom-links-container::before {
          content: "";
          width: 100%;
          display: inline-block;
          height: 6px;
          background: #A30C1A;
          position: absolute;
          bottom: 100%;
          left: 0; } }
    .page.applications .banner.top .bottom-links-container a {
      color: #2B2B2B;
      background: #ECEEEF;
      font-size: 13px;
      text-transform: uppercase;
      font-weight: 700;
      letter-spacing: 1px;
      width: calc(50% - 10px);
      float: left;
      padding: 23px 20px;
      text-align: center;
      height: 57px;
      position: relative;
      transition: transform 0.3s; }
      .page.applications .banner.top .bottom-links-container a span {
        display: inline-block; }
      @media (max-width: 639px) {
        .page.applications .banner.top .bottom-links-container a {
          width: 100%;
          color: rgba(43, 43, 43, 0.5); } }
      .page.applications .banner.top .bottom-links-container a:last-child {
        float: right; }
      .page.applications .banner.top .bottom-links-container a.active, .page.applications .banner.top .bottom-links-container a:hover, .page.applications .banner.top .bottom-links-container a:focus {
        color: #2b2b2b;
        transform: translate(0, 3px); }
        .page.applications .banner.top .bottom-links-container a.active::before, .page.applications .banner.top .bottom-links-container a:hover::before, .page.applications .banner.top .bottom-links-container a:focus::before {
          content: "";
          width: 100%;
          display: inline-block;
          height: 6px;
          background: #A30C1A;
          position: absolute;
          bottom: 100%;
          left: 0; }
          @media (max-width: 639px) {
            .page.applications .banner.top .bottom-links-container a.active::before, .page.applications .banner.top .bottom-links-container a:hover::before, .page.applications .banner.top .bottom-links-container a:focus::before {
              display: none; } }
        .page.applications .banner.top .bottom-links-container a.active::after, .page.applications .banner.top .bottom-links-container a:hover::after, .page.applications .banner.top .bottom-links-container a:focus::after {
          content: "";
          width: 100%;
          display: inline-block;
          height: 6px;
          background: #ECEEEF;
          position: absolute;
          top: 100%;
          left: 0; }

.page.applications .banner.applications {
  padding: 100px 0 40px; }
  @media (max-width: 639px) {
    .page.applications .banner.applications {
      padding: 0px 0 40px; } }
  .page.applications .banner.applications ul li {
    display: inline-block;
    width: 100%;
    margin-bottom: 50px; }
    @media (max-width: 639px) {
      .page.applications .banner.applications ul li {
        margin-bottom: 35px; } }
    .page.applications .banner.applications ul li .col-image {
      width: 50%;
      display: inline-block;
      float: left;
      padding-right: 10px;
      height: 431px; }
      @media (max-width: 768px) {
        .page.applications .banner.applications ul li .col-image {
          width: 100%;
          padding-right: 0;
          height: 326px;
          margin-bottom: 30px; } }
      @media (max-width: 639px) {
        .page.applications .banner.applications ul li .col-image {
          height: 200px;
          width: 120%;
          margin-left: -10%;
          margin-bottom: 20px; } }
    .page.applications .banner.applications ul li .col-texts {
      width: 50%;
      display: inline-block;
      float: right;
      padding-left: 6%;
      padding-top: 15px; }
      @media (max-width: 768px) {
        .page.applications .banner.applications ul li .col-texts {
          width: 100%;
          padding-left: 0; } }
      .page.applications .banner.applications ul li .col-texts .title-container {
        margin-bottom: 20px;
        display: inline-block;
        width: 100%; }
        .page.applications .banner.applications ul li .col-texts .title-container .icon-container {
          width: 40px;
          height: 40px;
          display: inline-block;
          margin-right: 30px;
          float: left; }
          @media (max-width: 639px) {
            .page.applications .banner.applications ul li .col-texts .title-container .icon-container {
              width: 32px;
              height: 32px;
              margin-right: 20px; } }
        .page.applications .banner.applications ul li .col-texts .title-container .small-title {
          padding-top: 8px;
          margin-bottom: 0;
          display: inline-block;
          float: left; }
      .page.applications .banner.applications ul li .col-texts .chapeau {
        color: #A30C1A;
        margin-bottom: 30px;
        line-height: 1.7;
        font-size: 14px;
        font-weight: 700; }
        @media (max-width: 639px) {
          .page.applications .banner.applications ul li .col-texts .chapeau {
            font-size: 11px;
            margin-bottom: 20px; } }
      .page.applications .banner.applications ul li .col-texts .texte {
        padding-left: 70px;
        position: relative; }
        @media (max-width: 639px) {
          .page.applications .banner.applications ul li .col-texts .texte {
            padding-left: 0; } }
        .page.applications .banner.applications ul li .col-texts .texte::before {
          content: "";
          display: inline-block;
          width: 36px;
          height: 2px;
          background: #A30C1A;
          position: absolute;
          left: 0;
          top: 10px; }
          @media (max-width: 639px) {
            .page.applications .banner.applications ul li .col-texts .texte::before {
              display: none; } }

.page.avantages .banner.top {
  background: #313030;
  transition: height 1s;
  height: 695px; }
  @media (max-width: 1367px) {
    .page.avantages .banner.top {
      height: 650px; } }
  @media (max-width: 1226px) {
    .page.avantages .banner.top {
      height: 500px; } }
  @media (max-width: 768px) {
    .page.avantages .banner.top {
      height: 414px; } }
  @media (max-width: 639px) {
    .page.avantages .banner.top {
      height: 230px; } }

.page.avantages .banner.top {
  position: relative; }
  .page.avantages .banner.top .image {
    background-position: 50% 50%;
    filter: brightness(80%); }
    @media (max-width: 639px) {
      .page.avantages .banner.top .image {
        background-position: 50% 50%; } }
  .page.avantages .banner.top .bloc {
    padding: 60px 0 0 0;
    height: 100%;
    display: flex;
    align-items: center; }
    @media (max-width: 1226px) {
      .page.avantages .banner.top .bloc {
        padding: 50px 0 0 0; } }
    @media (max-width: 639px) {
      .page.avantages .banner.top .bloc {
        padding: 50px 0 0 0; } }
  .page.avantages .banner.top .global.top-title {
    font-weight: 700;
    animation: fade 2s; }
  .page.avantages .banner.top a.devis {
    position: absolute;
    right: 0;
    bottom: -42.5px;
    background: #A30C1A;
    color: #fff;
    padding: 33px 120px 40px 40px;
    font-size: 20px;
    font-weight: 700;
    height: 85px;
    z-index: 10; }
    @media (max-width: 1024px) {
      .page.avantages .banner.top a.devis {
        bottom: -35px;
        font-size: 18px;
        height: 70px;
        padding-top: 27px; } }
    @media (max-width: 768px) {
      .page.avantages .banner.top a.devis {
        display: none; } }
    .page.avantages .banner.top a.devis .icon-container {
      background: #710C16;
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
      width: 85px; }
      @media (max-width: 1024px) {
        .page.avantages .banner.top a.devis .icon-container {
          width: 70px; } }
      @media (max-width: 768px) {
        .page.avantages .banner.top a.devis .icon-container {
          width: 53px; } }
      .page.avantages .banner.top a.devis .icon-container .icon {
        width: 15px;
        height: 10px;
        position: absolute;
        left: 50%;
        top: 43%;
        transition: left 0.3s;
        transform: translate(-50%, -50%); }
        @media (max-width: 768px) {
          .page.avantages .banner.top a.devis .icon-container .icon {
            top: 48%; } }
    .page.avantages .banner.top a.devis:hover {
      background: #710c16; }
      .page.avantages .banner.top a.devis:hover .icon {
        left: 55%; }

.page.avantages .banner.avantages {
  padding: 90px 0 50px; }
  @media (max-width: 1226px) {
    .page.avantages .banner.avantages {
      padding: 50px 0 40px; } }
  @media (max-width: 639px) {
    .page.avantages .banner.avantages {
      padding: 50px 0 0px; } }
  .page.avantages .banner.avantages .section-title {
    margin-bottom: 80px; }
    @media (max-width: 768px) {
      .page.avantages .banner.avantages .section-title br {
        display: none; } }
  .page.avantages .banner.avantages ul {
    width: calc(100% + 60px); }
    @media (max-width: 768px) {
      .page.avantages .banner.avantages ul {
        width: 100%; } }
    .page.avantages .banner.avantages ul li {
      width: 33.33%;
      padding-right: 60px;
      display: inline-block;
      float: left;
      margin-bottom: 100px; }
      @media (max-width: 768px) {
        .page.avantages .banner.avantages ul li {
          width: 100%;
          padding-right: 0;
          margin-bottom: 70px; } }
      @media (max-width: 639px) {
        .page.avantages .banner.avantages ul li {
          margin-bottom: 35px; } }
      .page.avantages .banner.avantages ul li .image-container {
        height: 80px;
        width: 80px;
        margin-bottom: 40px; }
        @media (max-width: 639px) {
          .page.avantages .banner.avantages ul li .image-container {
            width: 42px;
            height: 42px;
            margin-bottom: 25px; } }
      .page.avantages .banner.avantages ul li .small-title {
        color: #A30C1A;
        margin-bottom: 50px; }
        @media (max-width: 768px) {
          .page.avantages .banner.avantages ul li .small-title {
            margin-bottom: 30px; } }
        @media (max-width: 639px) {
          .page.avantages .banner.avantages ul li .small-title {
            margin-bottom: 25px; } }
      .page.avantages .banner.avantages ul li .text {
        padding-right: 20%; }
        @media (max-width: 768px) {
          .page.avantages .banner.avantages ul li .text {
            padding-right: 0; } }

.page.avantages .banner.experience {
  padding: 50px 0 150px;
  background: #fff; }
  @media (max-width: 1226px) {
    .page.avantages .banner.experience {
      padding: 50px 0 100px; } }
  @media (max-width: 639px) {
    .page.avantages .banner.experience {
      background: #F0F0F0; } }
  .page.avantages .banner.experience .grey-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 320px;
    background: #F0F0F0; }
    @media (max-width: 768px) {
      .page.avantages .banner.experience .grey-background {
        display: none; } }
  .page.avantages .banner.experience .col-image {
    width: 50%;
    float: left; }
    @media (max-width: 768px) {
      .page.avantages .banner.experience .col-image {
        width: 120%;
        margin-left: -10%; } }
    .page.avantages .banner.experience .col-image .image-container {
      height: 370px; }
      @media (max-width: 639px) {
        .page.avantages .banner.experience .col-image .image-container {
          height: 208px; } }
  .page.avantages .banner.experience .col-title {
    width: 50%;
    display: inline-block;
    float: right;
    padding-left: 8%; }
    @media (max-width: 768px) {
      .page.avantages .banner.experience .col-title {
        width: 100%;
        padding-left: 0;
        padding-top: 70px; } }
    @media (max-width: 639px) {
      .page.avantages .banner.experience .col-title {
        padding-top: 50px; } }
  .page.avantages .banner.experience .texts-container {
    display: inline-block;
    width: 100%;
    padding-top: 100px;
    padding-left: 10%; }
    @media (max-width: 768px) {
      .page.avantages .banner.experience .texts-container {
        padding-left: 0;
        padding-top: 60px; } }
    @media (max-width: 639px) {
      .page.avantages .banner.experience .texts-container {
        padding-top: 30px; } }
    .page.avantages .banner.experience .texts-container .col {
      width: 45%; }
      @media (max-width: 768px) {
        .page.avantages .banner.experience .texts-container .col {
          width: 100%;
          margin-bottom: 20px; } }
    .page.avantages .banner.experience .texts-container .col2 {
      float: right; }
    .page.avantages .banner.experience .texts-container .lien {
      margin-top: 50px;
      font-size: 13px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 2px;
      position: relative;
      padding: 15px 0; }
      @media (max-width: 639px) {
        .page.avantages .banner.experience .texts-container .lien {
          margin-top: 10px;
          font-size: 10px; } }
      .page.avantages .banner.experience .texts-container .lien::after {
        content: "";
        display: inline-block;
        width: 63px;
        height: 7px;
        background: #A30C1A;
        position: absolute;
        bottom: -8px;
        left: 0;
        transition: width 0.3s; }
        @media (max-width: 768px) {
          .page.avantages .banner.experience .texts-container .lien::after {
            width: 25px;
            height: 4px;
            bottom: -6px; } }
      .page.avantages .banner.experience .texts-container .lien:hover::after, .page.avantages .banner.experience .texts-container .lien:focus::after {
        width: 100%; }

.page.avantages .banner.call-to-action-medium {
  background: #fff; }

.page-confirmation .banner.top {
  height: 800px; }
  @media (max-width: 1226px) {
    .page-confirmation .banner.top {
      height: 700px !important; } }
  @media (max-width: 1024px) {
    .page-confirmation .banner.top {
      height: 700px !important; } }
  @media (max-width: 639px) {
    .page-confirmation .banner.top {
      height: 400px !important; } }
  .page-confirmation .banner.top .bloc {
    width: 60%;
    margin-bottom: 8%; }
    @media (max-width: 768px) {
      .page-confirmation .banner.top .bloc {
        width: 75%; } }
    @media (max-width: 639px) {
      .page-confirmation .banner.top .bloc {
        width: 94%;
        margin-bottom: 0; } }
    .page-confirmation .banner.top .bloc .top-title, .page-confirmation .banner.top .bloc .top-title * {
      color: #2B2B2B;
      font-size: 40px; }
      @media (max-width: 768px) {
        .page-confirmation .banner.top .bloc .top-title, .page-confirmation .banner.top .bloc .top-title * {
          font-size: 34px; } }
      @media (max-width: 639px) {
        .page-confirmation .banner.top .bloc .top-title, .page-confirmation .banner.top .bloc .top-title * {
          font-size: 20px; } }
    .page-confirmation .banner.top .bloc .lien {
      margin-top: 50px;
      font-size: 13px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 2px;
      position: relative;
      padding: 15px 0; }
      @media (max-width: 639px) {
        .page-confirmation .banner.top .bloc .lien {
          margin-top: 10px;
          font-size: 10px; } }
      .page-confirmation .banner.top .bloc .lien::after {
        content: "";
        display: inline-block;
        width: 63px;
        height: 7px;
        background: #A30C1A;
        position: absolute;
        bottom: -8px;
        left: 0;
        transition: width 0.3s; }
        @media (max-width: 768px) {
          .page-confirmation .banner.top .bloc .lien::after {
            width: 25px;
            height: 4px;
            bottom: -6px; } }
      .page-confirmation .banner.top .bloc .lien:hover::after, .page-confirmation .banner.top .bloc .lien:focus::after {
        width: 100%; }

.page.faqs .banner.top {
  background: #313030;
  transition: height 1s;
  height: 695px; }
  @media (max-width: 1367px) {
    .page.faqs .banner.top {
      height: 650px; } }
  @media (max-width: 1226px) {
    .page.faqs .banner.top {
      height: 500px; } }
  @media (max-width: 768px) {
    .page.faqs .banner.top {
      height: 438px; } }
  @media (max-width: 639px) {
    .page.faqs .banner.top {
      height: 230px; } }

.page.faqs .banner.top {
  position: relative; }
  .page.faqs .banner.top .image {
    background-position: 50% 50%;
    filter: brightness(80%); }
    @media (max-width: 639px) {
      .page.faqs .banner.top .image {
        background-position: 50% 50%; } }
  .page.faqs .banner.top .bloc {
    padding: 60px 0 0 0;
    height: 100%;
    display: flex;
    align-items: center; }
    @media (max-width: 1226px) {
      .page.faqs .banner.top .bloc {
        padding: 50px 0 0 0; } }
    @media (max-width: 639px) {
      .page.faqs .banner.top .bloc {
        padding: 50px 0 0 0; } }
  .page.faqs .banner.top .global.top-title {
    animation: fade 2s; }
  .page.faqs .banner.top a.devis {
    position: absolute;
    right: 0;
    bottom: -42.5px;
    background: #A30C1A;
    color: #fff;
    padding: 33px 120px 40px 40px;
    font-size: 20px;
    font-weight: 700;
    height: 85px;
    z-index: 10; }
    @media (max-width: 1024px) {
      .page.faqs .banner.top a.devis {
        bottom: -35px;
        font-size: 18px;
        height: 70px;
        padding-top: 27px; } }
    @media (max-width: 768px) {
      .page.faqs .banner.top a.devis {
        display: none; } }
    .page.faqs .banner.top a.devis .icon-container {
      background: #710C16;
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
      width: 85px; }
      @media (max-width: 1024px) {
        .page.faqs .banner.top a.devis .icon-container {
          width: 70px; } }
      @media (max-width: 768px) {
        .page.faqs .banner.top a.devis .icon-container {
          width: 53px; } }
      .page.faqs .banner.top a.devis .icon-container .icon {
        width: 15px;
        height: 10px;
        position: absolute;
        left: 50%;
        top: 43%;
        transition: left 0.3s;
        transform: translate(-50%, -50%); }
        @media (max-width: 768px) {
          .page.faqs .banner.top a.devis .icon-container .icon {
            top: 48%; } }
    .page.faqs .banner.top a.devis:hover {
      background: #710c16; }
      .page.faqs .banner.top a.devis:hover .icon {
        left: 55%; }

.page.faqs .banner.faqs {
  padding: 0px 0 200px;
  background: #EAEAEA; }
  @media (max-width: 768px) {
    .page.faqs .banner.faqs {
      padding: 0px 0 65px; } }
  @media (max-width: 639px) {
    .page.faqs .banner.faqs {
      padding: 0px 0 0px; } }
  .page.faqs .banner.faqs .background-logo {
    width: 700px;
    height: 700px;
    position: absolute;
    top: 0px;
    left: -10%; }
    @media (max-width: 768px) {
      .page.faqs .banner.faqs .background-logo {
        display: none; } }
  .page.faqs .banner.faqs .content {
    padding-top: 140px; }
    @media (max-width: 1024px) {
      .page.faqs .banner.faqs .content {
        padding-top: 80px; } }
    @media (max-width: 768px) {
      .page.faqs .banner.faqs .content {
        padding-top: 60px; } }
    @media (max-width: 639px) {
      .page.faqs .banner.faqs .content {
        padding-top: 40px; } }
  .page.faqs .banner.faqs .col-title {
    display: inline-block;
    width: 20%;
    float: left;
    padding-top: 10px;
    margin-bottom: 50px; }
    @media (max-width: 768px) {
      .page.faqs .banner.faqs .col-title {
        width: 100%;
        padding-top: 0; } }
    .page.faqs .banner.faqs .col-title .titre {
      margin-bottom: 30px; }
      @media (max-width: 768px) {
        .page.faqs .banner.faqs .col-title .titre br {
          display: none; } }
      @media (max-width: 639px) {
        .page.faqs .banner.faqs .col-title .titre * {
          font-weight: 700; } }
    .page.faqs .banner.faqs .col-title .sous-titre {
      line-height: 2;
      font-size: 14px; }
      @media (max-width: 639px) {
        .page.faqs .banner.faqs .col-title .sous-titre {
          font-size: 11px; } }
  .page.faqs .banner.faqs .col-accordeon {
    width: 70%;
    display: inline-block;
    float: right; }
    @media (max-width: 768px) {
      .page.faqs .banner.faqs .col-accordeon {
        width: 100%; } }
    .page.faqs .banner.faqs .col-accordeon ul.flexible {
      width: 100%; }
    .page.faqs .banner.faqs .col-accordeon .ul-accordeon {
      width: 100%;
      margin-bottom: 70px; }
  .page.faqs .banner.faqs .ul-accordeon > li {
    position: relative;
    display: inline-block;
    display: inline-block;
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 15px;
    padding: 0px 0px 0px; }
    .page.faqs .banner.faqs .ul-accordeon > li .titre-container {
      cursor: pointer;
      padding-right: 45px;
      display: inline-block;
      width: 100%;
      position: relative; }
      .page.faqs .banner.faqs .ul-accordeon > li .titre-container .bloc-titre {
        padding: 17px 0 23px; }
        @media (max-width: 639px) {
          .page.faqs .banner.faqs .ul-accordeon > li .titre-container .bloc-titre {
            padding: 17px 0 13px; } }
      .page.faqs .banner.faqs .ul-accordeon > li .titre-container:hover .icon-container {
        background: #A30C1A; }
      .page.faqs .banner.faqs .ul-accordeon > li .titre-container:hover .st0 {
        stroke: #fff !important; }
      .page.faqs .banner.faqs .ul-accordeon > li .titre-container .titre {
        cursor: pointer;
        display: inline-block;
        font-size: 16px;
        font-family: "Poppins", sans-serif;
        padding-right: 60px;
        line-height: 1.7;
        padding-top: 0;
        font-weight: 500;
        user-select: none;
        letter-spacing: 0px;
        margin-bottom: 10px; }
        @media (max-width: 639px) {
          .page.faqs .banner.faqs .ul-accordeon > li .titre-container .titre {
            font-size: 13px; } }
      .page.faqs .banner.faqs .ul-accordeon > li .titre-container .icon-container {
        display: inline-block;
        width: 51px;
        height: 51px;
        background: #BCBCBC;
        border-radius: 50%;
        position: absolute;
        right: 0px;
        top: 13px;
        text-align: center;
        cursor: pointer;
        transition: transform 0.3s; }
        @media (max-width: 768px) {
          .page.faqs .banner.faqs .ul-accordeon > li .titre-container .icon-container {
            width: 30px;
            height: 30px; } }
        .page.faqs .banner.faqs .ul-accordeon > li .titre-container .icon-container .icon {
          width: 13px;
          height: 13px;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          transition: transform 0.2s; }
          @media (max-width: 768px) {
            .page.faqs .banner.faqs .ul-accordeon > li .titre-container .icon-container .icon {
              width: 7.5px;
              height: 7.5px; } }
        .page.faqs .banner.faqs .ul-accordeon > li .titre-container .icon-container svg {
          transition: transform 0.3s;
          transform: scale(1);
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0; }
        .page.faqs .banner.faqs .ul-accordeon > li .titre-container .icon-container .st0 {
          fill: none;
          stroke: #fff;
          stroke-width: 8;
          stroke-miterlimit: 10; }
        .page.faqs .banner.faqs .ul-accordeon > li .titre-container .icon-container .hor {
          transition: opacity 0.2s; }
    .page.faqs .banner.faqs .ul-accordeon > li .contenu-container {
      padding-top: 10px;
      padding-bottom: 50px;
      display: none;
      overflow: hidden; }
      .page.faqs .banner.faqs .ul-accordeon > li .contenu-container .texte {
        transition: opacity 0.3s;
        opacity: 0; }
    .page.faqs .banner.faqs .ul-accordeon > li.opened .texte {
      opacity: 1;
      transition: opacity 0.8s; }
    .page.faqs .banner.faqs .ul-accordeon > li.opened .bloc-titre:hover .icon-container {
      background: #383838; }
    .page.faqs .banner.faqs .ul-accordeon > li.opened .icon-container .vert {
      opacity: 0; }
  .page.faqs .banner.faqs .faqs-cta-container {
    display: inline-block;
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding-top: 40px;
    padding-bottom: 34px; }
    @media (max-width: 1024px) {
      .page.faqs .banner.faqs .faqs-cta-container {
        padding-top: 10px;
        padding-bottom: 0; } }
    @media (max-width: 639px) {
      .page.faqs .banner.faqs .faqs-cta-container {
        text-align: center;
        margin-bottom: 50px;
        border-bottom: none; } }
    .page.faqs .banner.faqs .faqs-cta-container .faqs-cta-titre {
      display: inline-block;
      padding-top: 15px;
      padding-bottom: 40px; }
      .page.faqs .banner.faqs .faqs-cta-container .faqs-cta-titre p {
        font-size: 30px;
        font-weight: 300; }
        @media (max-width: 1024px) {
          .page.faqs .banner.faqs .faqs-cta-container .faqs-cta-titre p {
            font-size: 25px; } }
        @media (max-width: 768px) {
          .page.faqs .banner.faqs .faqs-cta-container .faqs-cta-titre p {
            font-size: 23px; } }
        @media (max-width: 639px) {
          .page.faqs .banner.faqs .faqs-cta-container .faqs-cta-titre p {
            font-size: 16px; } }
      @media (max-width: 639px) {
        .page.faqs .banner.faqs .faqs-cta-container .faqs-cta-titre {
          padding-top: 0;
          display: block;
          padding-bottom: 20px;
          margin-bottom: 30px;
          border-bottom: 1px solid rgba(0, 0, 0, 0.1); } }
    .page.faqs .banner.faqs .faqs-cta-container a {
      float: right;
      background: #A30C1A;
      color: #fff;
      padding: 33px 120px 40px 40px;
      position: relative;
      font-size: 20px;
      font-weight: 700;
      height: 85px; }
      @media (max-width: 1024px) {
        .page.faqs .banner.faqs .faqs-cta-container a {
          font-size: 14px;
          height: 60px;
          padding: 16px 80px 14px 30px;
          margin-top: 10px; } }
      @media (max-width: 768px) {
        .page.faqs .banner.faqs .faqs-cta-container a {
          font-size: 12px;
          height: 46px;
          padding: 16px 80px 16px 30px;
          margin-top: 10px; } }
      @media (max-width: 639px) {
        .page.faqs .banner.faqs .faqs-cta-container a {
          margin-top: 0;
          float: none;
          clear: both; } }
      .page.faqs .banner.faqs .faqs-cta-container a .icon-container {
        background: #710C16;
        position: absolute;
        top: 0;
        right: 0;
        height: 100%;
        width: 85px; }
        @media (max-width: 1024px) {
          .page.faqs .banner.faqs .faqs-cta-container a .icon-container {
            width: 60px; } }
        @media (max-width: 768px) {
          .page.faqs .banner.faqs .faqs-cta-container a .icon-container {
            width: 46px; } }
        .page.faqs .banner.faqs .faqs-cta-container a .icon-container .icon {
          width: 15px;
          height: 10px;
          position: absolute;
          left: 50%;
          top: 43%;
          transition: left 0.3s;
          transform: translate(-50%, -50%); }
          @media (max-width: 1024px) {
            .page.faqs .banner.faqs .faqs-cta-container a .icon-container .icon {
              width: 12px;
              height: 7px;
              top: 43%; } }
          @media (max-width: 768px) {
            .page.faqs .banner.faqs .faqs-cta-container a .icon-container .icon {
              width: 9px;
              height: 5px;
              top: 40%; } }
      .page.faqs .banner.faqs .faqs-cta-container a:hover {
        background: #710c16; }
        .page.faqs .banner.faqs .faqs-cta-container a:hover .icon {
          left: 55%; }

.page.gdpr .banner.top {
  background: #313030;
  transition: height 1s;
  height: 500px; }
  @media (max-width: 1367px) {
    .page.gdpr .banner.top {
      height: 450px; } }
  @media (max-width: 1226px) {
    .page.gdpr .banner.top {
      height: 350px; } }
  @media (max-width: 768px) {
    .page.gdpr .banner.top {
      height: 300px; } }
  @media (max-width: 639px) {
    .page.gdpr .banner.top {
      height: 250px; } }

.page.gdpr .banner.top {
  position: relative; }
  .page.gdpr .banner.top .image {
    background-position: 50% 50%;
    filter: brightness(80%); }
    @media (max-width: 639px) {
      .page.gdpr .banner.top .image {
        background-position: 50% 50%; } }
  .page.gdpr .banner.top .bloc {
    padding: 60px 20% 0 0; }
    @media (max-width: 1226px) {
      .page.gdpr .banner.top .bloc {
        padding: 60px 20% 0 0; } }
    @media (max-width: 639px) {
      .page.gdpr .banner.top .bloc {
        padding: 30px 20% 0 0; } }
  .page.gdpr .banner.top .top-title {
    animation: fade 2s; }
  .page.gdpr .banner.top .sous-titre {
    font-size: 11px;
    color: #fff;
    letter-spacing: 2px;
    animation-delay: 0.2s;
    text-transform: uppercase; }
  .page.gdpr .banner.top .scroll-btn {
    left: auto !important;
    right: 0 !important; }
    @media (max-width: 768px) {
      .page.gdpr .banner.top .scroll-btn {
        display: none; } }

.page.gdpr .banner.medium {
  padding: 100px 0 150px;
  background: #fff; }
  @media (max-width: 1367px) {
    .page.gdpr .banner.medium {
      padding: 90px 0 120px; } }
  @media (max-width: 1024px) {
    .page.gdpr .banner.medium {
      padding: 70px 0 100px; } }
  @media (max-width: 768px) {
    .page.gdpr .banner.medium {
      padding: 60px 0 80px; } }
  @media (max-width: 639px) {
    .page.gdpr .banner.medium {
      padding: 30px 0 70px; } }
  .page.gdpr .banner.medium .content {
    animation: fade 2s; }
    .page.gdpr .banner.medium .content h2 {
      font-size: 24px;
      line-height: 1.4; }
      @media (max-width: 639px) {
        .page.gdpr .banner.medium .content h2 {
          font-size: 18px; } }
    .page.gdpr .banner.medium .content h3 {
      font-size: 16px;
      line-height: 1.4; }
      @media (max-width: 639px) {
        .page.gdpr .banner.medium .content h3 {
          font-size: 12px; } }

.banner.gdpr {
  background: #A30C1A;
  background: rgba(0, 0, 0, 0.9);
  position: fixed;
  bottom: -0.5px;
  left: 0;
  right: 0;
  z-index: 1000;
  opacity: 0;
  transform: translateY(60px);
  transition: opacity 1s, transform 0.5s;
  transition-delay: 0.1s; }
  .banner.gdpr.visible {
    opacity: 1;
    transition: opacity 1.5s, transform 1.9s;
    transform: translateY(0px);
    transition-delay: 0s; }
    .banner.gdpr.visible a, .banner.gdpr.visible p, .banner.gdpr.visible button {
      opacity: 1 !important; }
    .banner.gdpr.visible p {
      transition-duration: 1s !important;
      transition-delay: 0.6s !important; }
    .banner.gdpr.visible a {
      transition-duration: 1s !important;
      transition-delay: 0.8s !important; }
    .banner.gdpr.visible button {
      transition-duration: 1s !important;
      transition-delay: 0.8s !important;
      transform: scale(1) !important; }
  .banner.gdpr p, .banner.gdpr a, .banner.gdpr button {
    font-size: 12px; }
    @media (max-width: 768px) {
      .banner.gdpr p, .banner.gdpr a, .banner.gdpr button {
        font-size: 11px; } }
    @media (max-width: 639px) {
      .banner.gdpr p, .banner.gdpr a, .banner.gdpr button {
        font-size: 10px; } }
  @media (max-width: 639px) {
    .banner.gdpr .banner-content {
      padding-right: 5px; } }
  .banner.gdpr .content {
    text-align: right;
    margin-bottom: 1px; }
    .banner.gdpr .content .text-container {
      display: inline-block;
      height: 42px;
      text-align: right; }
      @media (max-width: 639px) {
        .banner.gdpr .content .text-container {
          text-align: left;
          max-width: 240px;
          float: left; } }
      .banner.gdpr .content .text-container .bloc {
        height: 100%;
        align-items: center;
        display: flex; }
        .banner.gdpr .content .text-container .bloc p, .banner.gdpr .content .text-container .bloc a {
          display: inline-block;
          font-family: "Poppins", sans-serif;
          font-weight: 300;
          line-height: 1.15;
          opacity: 0;
          user-select: none;
          letter-spacing: 0;
          color: white; }
        .banner.gdpr .content .text-container .bloc p {
          transition-property: opacity;
          transition-duration: 0.2s;
          transition-delay: 0.1s; }
        .banner.gdpr .content .text-container .bloc a {
          transition: opacity 0.2s;
          margin-left: 4px;
          transition-duration: 0.3s;
          transition-delay: 0.05s;
          transition: opacity 0.2s, color 0.1s;
          -webkit-text-stroke: #fff;
          text-decoration: underline; }
          .banner.gdpr .content .text-container .bloc a:hover, .banner.gdpr .content .text-container .bloc a:focus {
            transition: color 0s !important;
            color: #A30C1A; }
    .banner.gdpr .content .button-container {
      height: 42px;
      line-height: 42px;
      margin-left: 30px;
      display: flex;
      align-items: center;
      float: right; }
      @media (max-width: 639px) {
        .banner.gdpr .content .button-container {
          margin-left: 0px; } }
      .banner.gdpr .content .button-container button {
        height: 33px;
        border: 0;
        cursor: pointer;
        font-weight: 700;
        font-family: "Poppins", sans-serif;
        transition: transform, opacity;
        opacity: 0;
        line-height: 1.5;
        transform: scale(0);
        transition-duration: 0.3s;
        transition-delay: 0s;
        letter-spacing: 0.5px;
        background: #A30C1A;
        color: #fff;
        padding: 1px 13px 0; }
        .banner.gdpr .content .button-container button:hover, .banner.gdpr .content .button-container button:focus {
          background: #A30C1A; }
        @media (max-width: 768px) {
          .banner.gdpr .content .button-container button {
            padding: 2px 11px 0px; } }

.page.services .banner.top {
  background: #313030;
  transition: height 1s;
  height: 695px; }
  @media (max-width: 1367px) {
    .page.services .banner.top {
      height: 650px; } }
  @media (max-width: 1226px) {
    .page.services .banner.top {
      height: 500px; } }
  @media (max-width: 768px) {
    .page.services .banner.top {
      height: 438px; } }
  @media (max-width: 639px) {
    .page.services .banner.top {
      height: 230px; } }

.page.services .banner.top {
  position: relative; }
  .page.services .banner.top .image {
    background-position: 50% 50%;
    filter: brightness(80%); }
    @media (max-width: 639px) {
      .page.services .banner.top .image {
        background-position: 50% 50%; } }
  .page.services .banner.top .bloc {
    padding: 60px 0 0 0;
    height: 100%;
    display: flex;
    align-items: center; }
    @media (max-width: 1226px) {
      .page.services .banner.top .bloc {
        padding: 50px 0 0 0; } }
    @media (max-width: 639px) {
      .page.services .banner.top .bloc {
        padding: 50px 0 0 0; } }
  .page.services .banner.top .global.top-title {
    animation: fade 2s; }
  .page.services .banner.top a.devis {
    position: absolute;
    right: 0;
    bottom: -42.5px;
    background: #A30C1A;
    color: #fff;
    padding: 33px 120px 40px 40px;
    font-size: 20px;
    font-weight: 700;
    height: 85px;
    z-index: 10; }
    @media (max-width: 1024px) {
      .page.services .banner.top a.devis {
        bottom: -35px;
        font-size: 18px;
        height: 70px;
        padding-top: 27px; } }
    @media (max-width: 768px) {
      .page.services .banner.top a.devis {
        display: none; } }
    .page.services .banner.top a.devis .icon-container {
      background: #710C16;
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
      width: 85px; }
      @media (max-width: 1024px) {
        .page.services .banner.top a.devis .icon-container {
          width: 70px; } }
      @media (max-width: 768px) {
        .page.services .banner.top a.devis .icon-container {
          width: 53px; } }
      .page.services .banner.top a.devis .icon-container .icon {
        width: 15px;
        height: 10px;
        position: absolute;
        left: 50%;
        top: 43%;
        transition: left 0.3s;
        transform: translate(-50%, -50%); }
        @media (max-width: 768px) {
          .page.services .banner.top a.devis .icon-container .icon {
            top: 48%; } }
    .page.services .banner.top a.devis:hover {
      background: #710c16; }
      .page.services .banner.top a.devis:hover .icon {
        left: 55%; }

.page.services .banner.etapes {
  padding: 90px 0 80px; }
  @media (max-width: 1226px) {
    .page.services .banner.etapes {
      padding: 50px 0 50px; } }
  .page.services .banner.etapes .section-title {
    margin-bottom: 120px; }
    @media (max-width: 639px) {
      .page.services .banner.etapes .section-title {
        margin-bottom: 60px; }
        .page.services .banner.etapes .section-title br {
          display: none; } }
  .page.services .banner.etapes ul.etapes {
    width: 100%; }
    .page.services .banner.etapes ul.etapes li {
      width: 100%;
      display: inline-block;
      margin-bottom: 100px; }
      @media (max-width: 768px) {
        .page.services .banner.etapes ul.etapes li {
          margin-bottom: 50px; } }
      @media (max-width: 639px) {
        .page.services .banner.etapes ul.etapes li {
          margin-bottom: 30px; } }

@keyframes scroll_anim {
  0% {
    opacity: 0;
    transform: translate3d(0, 40px, 0); }
  40% {
    opacity: 1; }
  100% {
    transform: translate3d(0, 0px, 0); } }
      .page.services .banner.etapes ul.etapes li .col-texts {
        width: 50%;
        display: inline-block;
        float: left;
        padding-left: 20px; }
        @media (max-width: 768px) {
          .page.services .banner.etapes ul.etapes li .col-texts {
            width: calc(100% - 100px); } }
        @media (max-width: 639px) {
          .page.services .banner.etapes ul.etapes li .col-texts {
            width: 100%;
            padding-left: 0; } }
        .page.services .banner.etapes ul.etapes li .col-texts .icon-container {
          width: 60px;
          height: 60px;
          margin-right: 40px;
          display: inline-block;
          float: left;
          transform: translate(0, -10px); }
          @media (max-width: 768px) {
            .page.services .banner.etapes ul.etapes li .col-texts .icon-container {
              height: 45px;
              width: 45px; } }
          @media (max-width: 639px) {
            .page.services .banner.etapes ul.etapes li .col-texts .icon-container {
              width: 32px;
              height: 32px;
              margin-bottom: 15px;
              margin-left: 5px; } }
          .page.services .banner.etapes ul.etapes li .col-texts .icon-container .back-icon {
            content: "";
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            transform: translate3d(-20px, -20px, 0);
            background: #A30C1A;
            border-radius: 50%;
            opacity: 0;
            position: absolute;
            z-index: -1;
            animation: pumpIt 3s ease 0.5s infinite both; }

@keyframes pumpIt {
  0% {
    opacity: 0;
    transform: scale(1); }
  50% {
    opacity: 0.15; }
  100% {
    opacity: 0;
    transform: scale(1.8); } }
          .page.services .banner.etapes ul.etapes li .col-texts .icon-container .icon {
            background: #A30C1A;
            width: 100%;
            height: 100%;
            border-radius: 50%;
            transition: transform 0.5s, background 0s;
            text-align: center;
            color: #fff;
            font-size: 28px;
            padding-top: 16px;
            font-weight: 700; }
            @media (max-width: 768px) {
              .page.services .banner.etapes ul.etapes li .col-texts .icon-container .icon {
                font-size: 14px; } }
            @media (max-width: 639px) {
              .page.services .banner.etapes ul.etapes li .col-texts .icon-container .icon {
                font-size: 12px;
                padding-top: 10px; } }
        .page.services .banner.etapes ul.etapes li .col-texts .texts-container {
          padding-left: 110px; }
          @media (max-width: 768px) {
            .page.services .banner.etapes ul.etapes li .col-texts .texts-container {
              padding-left: 80px; } }
          @media (max-width: 639px) {
            .page.services .banner.etapes ul.etapes li .col-texts .texts-container {
              clear: both;
              padding-left: 0px; } }
          .page.services .banner.etapes ul.etapes li .col-texts .texts-container .small-title {
            color: #A30C1A; }
      .page.services .banner.etapes ul.etapes li .col-image {
        width: 50%;
        display: inline-block;
        float: right;
        position: relative;
        height: 286px;
        padding-left: 8%; }
        @media (max-width: 768px) {
          .page.services .banner.etapes ul.etapes li .col-image {
            margin-top: 20px;
            width: calc(100% - 100px);
            padding-left: 0;
            margin-bottom: 40px;
            height: 312px; } }
        @media (max-width: 639px) {
          .page.services .banner.etapes ul.etapes li .col-image {
            width: 100%;
            height: 158px; } }
  .page.services .banner.etapes .derniere-etape .icon-container {
    width: 60px;
    height: 60px;
    margin-right: 25px;
    display: inline-block;
    float: left;
    margin-left: 25px; }
    @media (max-width: 768px) {
      .page.services .banner.etapes .derniere-etape .icon-container {
        height: 45px;
        width: 45px; } }
    @media (max-width: 639px) {
      .page.services .banner.etapes .derniere-etape .icon-container {
        width: 32px;
        height: 32px;
        margin-bottom: 15px;
        margin-left: 5px; } }
    .page.services .banner.etapes .derniere-etape .icon-container .back-icon {
      content: "";
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      transform: translate3d(-20px, -20px, 0);
      background: #6CBE61;
      border-radius: 50%;
      opacity: 0;
      position: absolute;
      z-index: -1;
      animation: pumpIt 3s ease 0.5s infinite both; }

@keyframes pumpIt {
  0% {
    opacity: 0;
    transform: scale(1); }
  50% {
    opacity: 0.15; }
  100% {
    opacity: 0;
    transform: scale(1.8); } }
    .page.services .banner.etapes .derniere-etape .icon-container .icon {
      background: #6CBE61;
      width: 100%;
      height: 100%;
      border-radius: 50%;
      transition: transform 0.5s, background 0s; }
      .page.services .banner.etapes .derniere-etape .icon-container .icon svg {
        transform: scale(0.5); }
      .page.services .banner.etapes .derniere-etape .icon-container .icon * {
        fill: #fff; }
  .page.services .banner.etapes .derniere-etape .small-title {
    color: #6CBE61;
    padding-left: 20px;
    padding-top: 13px;
    display: inline-block; }
  .page.services .banner.etapes .derniere-etape .very-small-title {
    font-size: 23px; }
    .page.services .banner.etapes .derniere-etape .very-small-title::before {
      content: "";
      display: inline-block;
      height: 1px;
      width: 17px;
      background: #707070;
      margin-right: 20px;
      transform: translate(0, -7px); }
  .page.services .banner.etapes .derniere-etape ul.etapes {
    padding-top: 30px; }
    .page.services .banner.etapes .derniere-etape ul.etapes .col-texts {
      padding-left: 130px; }
      @media (max-width: 768px) {
        .page.services .banner.etapes .derniere-etape ul.etapes .col-texts {
          padding-left: 100px; } }

.page.services .banner.faqs {
  padding: 50px 0 200px;
  background: #EAEAEA; }
  @media (max-width: 768px) {
    .page.services .banner.faqs {
      padding: 0px 0 65px; } }
  @media (max-width: 639px) {
    .page.services .banner.faqs {
      padding: 0px 0 0px; } }
  .page.services .banner.faqs .background-logo {
    width: 700px;
    height: 700px;
    position: absolute;
    top: 80px;
    left: -10%; }
    @media (max-width: 768px) {
      .page.services .banner.faqs .background-logo {
        display: none; } }
  .page.services .banner.faqs .content {
    padding-top: 100px; }
    @media (max-width: 1024px) {
      .page.services .banner.faqs .content {
        padding-top: 80px; } }
    @media (max-width: 768px) {
      .page.services .banner.faqs .content {
        padding-top: 60px; } }
    @media (max-width: 639px) {
      .page.services .banner.faqs .content {
        padding-top: 40px; } }
  .page.services .banner.faqs .col-title {
    display: inline-block;
    width: 30%;
    float: left;
    padding-top: 10px;
    margin-bottom: 50px; }
    @media (max-width: 768px) {
      .page.services .banner.faqs .col-title {
        width: 100%;
        padding-top: 0; } }
    .page.services .banner.faqs .col-title .titre {
      margin-bottom: 30px; }
      @media (max-width: 768px) {
        .page.services .banner.faqs .col-title .titre br {
          display: none; } }
      @media (max-width: 639px) {
        .page.services .banner.faqs .col-title .titre * {
          font-weight: 700; } }
    .page.services .banner.faqs .col-title .sous-titre {
      line-height: 2;
      font-size: 14px; }
      @media (max-width: 639px) {
        .page.services .banner.faqs .col-title .sous-titre {
          font-size: 11px; } }
  .page.services .banner.faqs .col-accordeon {
    width: 60%;
    display: inline-block;
    float: right; }
    @media (max-width: 768px) {
      .page.services .banner.faqs .col-accordeon {
        width: 100%; } }
  .page.services .banner.faqs .ul-accordeon > li {
    position: relative;
    display: inline-block;
    display: inline-block;
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 15px;
    padding: 0px 0px 0px; }
    .page.services .banner.faqs .ul-accordeon > li .titre-container {
      cursor: pointer;
      padding-right: 45px;
      display: inline-block;
      width: 100%;
      position: relative; }
      .page.services .banner.faqs .ul-accordeon > li .titre-container .bloc-titre {
        padding: 17px 0 23px; }
        @media (max-width: 639px) {
          .page.services .banner.faqs .ul-accordeon > li .titre-container .bloc-titre {
            padding: 17px 0 13px; } }
      .page.services .banner.faqs .ul-accordeon > li .titre-container:hover .icon-container {
        background: #A30C1A; }
      .page.services .banner.faqs .ul-accordeon > li .titre-container:hover .st0 {
        stroke: #fff !important; }
      .page.services .banner.faqs .ul-accordeon > li .titre-container .titre {
        cursor: pointer;
        display: inline-block;
        font-size: 16px;
        font-family: "Poppins", sans-serif;
        padding-right: 60px;
        line-height: 1.7;
        padding-top: 0;
        font-weight: 500;
        user-select: none;
        letter-spacing: 0px;
        margin-bottom: 10px; }
        @media (max-width: 639px) {
          .page.services .banner.faqs .ul-accordeon > li .titre-container .titre {
            font-size: 13px; } }
      .page.services .banner.faqs .ul-accordeon > li .titre-container .icon-container {
        display: inline-block;
        width: 51px;
        height: 51px;
        background: #BCBCBC;
        border-radius: 50%;
        position: absolute;
        right: 0px;
        top: 13px;
        text-align: center;
        cursor: pointer;
        transition: transform 0.3s; }
        @media (max-width: 768px) {
          .page.services .banner.faqs .ul-accordeon > li .titre-container .icon-container {
            width: 30px;
            height: 30px; } }
        .page.services .banner.faqs .ul-accordeon > li .titre-container .icon-container .icon {
          width: 13px;
          height: 13px;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          transition: transform 0.2s; }
          @media (max-width: 768px) {
            .page.services .banner.faqs .ul-accordeon > li .titre-container .icon-container .icon {
              width: 7.5px;
              height: 7.5px; } }
        .page.services .banner.faqs .ul-accordeon > li .titre-container .icon-container svg {
          transition: transform 0.3s;
          transform: scale(1);
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0; }
        .page.services .banner.faqs .ul-accordeon > li .titre-container .icon-container .st0 {
          fill: none;
          stroke: #fff;
          stroke-width: 8;
          stroke-miterlimit: 10; }
        .page.services .banner.faqs .ul-accordeon > li .titre-container .icon-container .hor {
          transition: opacity 0.2s; }
    .page.services .banner.faqs .ul-accordeon > li .contenu-container {
      padding-top: 10px;
      padding-bottom: 50px;
      display: none;
      overflow: hidden; }
      .page.services .banner.faqs .ul-accordeon > li .contenu-container .texte {
        transition: opacity 0.3s;
        opacity: 0; }
    .page.services .banner.faqs .ul-accordeon > li.opened .texte {
      opacity: 1;
      transition: opacity 0.8s; }
    .page.services .banner.faqs .ul-accordeon > li.opened .bloc-titre:hover .icon-container {
      background: #383838; }
    .page.services .banner.faqs .ul-accordeon > li.opened .icon-container .vert {
      opacity: 0; }
  .page.services .banner.faqs .faqs-cta-container {
    display: inline-block;
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding-top: 40px;
    padding-bottom: 34px; }
    @media (max-width: 1024px) {
      .page.services .banner.faqs .faqs-cta-container {
        padding-top: 10px;
        padding-bottom: 0; } }
    @media (max-width: 639px) {
      .page.services .banner.faqs .faqs-cta-container {
        text-align: center;
        margin-bottom: 50px;
        border-bottom: none; } }
    .page.services .banner.faqs .faqs-cta-container .faqs-cta-titre {
      display: inline-block;
      padding-top: 15px;
      padding-bottom: 40px; }
      .page.services .banner.faqs .faqs-cta-container .faqs-cta-titre p {
        font-size: 30px;
        font-weight: 300; }
        @media (max-width: 1024px) {
          .page.services .banner.faqs .faqs-cta-container .faqs-cta-titre p {
            font-size: 25px; } }
        @media (max-width: 768px) {
          .page.services .banner.faqs .faqs-cta-container .faqs-cta-titre p {
            font-size: 23px; } }
        @media (max-width: 639px) {
          .page.services .banner.faqs .faqs-cta-container .faqs-cta-titre p {
            font-size: 16px; } }
      @media (max-width: 639px) {
        .page.services .banner.faqs .faqs-cta-container .faqs-cta-titre {
          padding-top: 0;
          display: block;
          padding-bottom: 20px;
          margin-bottom: 30px;
          border-bottom: 1px solid rgba(0, 0, 0, 0.1); } }
    .page.services .banner.faqs .faqs-cta-container a {
      float: right;
      background: #A30C1A;
      color: #fff;
      padding: 33px 120px 40px 40px;
      position: relative;
      font-size: 20px;
      font-weight: 700;
      height: 85px; }
      @media (max-width: 1024px) {
        .page.services .banner.faqs .faqs-cta-container a {
          font-size: 14px;
          height: 60px;
          padding: 16px 80px 14px 30px;
          margin-top: 10px; } }
      @media (max-width: 768px) {
        .page.services .banner.faqs .faqs-cta-container a {
          font-size: 12px;
          height: 46px;
          padding: 16px 80px 16px 30px;
          margin-top: 10px; } }
      @media (max-width: 639px) {
        .page.services .banner.faqs .faqs-cta-container a {
          margin-top: 0;
          float: none;
          clear: both; } }
      .page.services .banner.faqs .faqs-cta-container a .icon-container {
        background: #710C16;
        position: absolute;
        top: 0;
        right: 0;
        height: 100%;
        width: 85px; }
        @media (max-width: 1024px) {
          .page.services .banner.faqs .faqs-cta-container a .icon-container {
            width: 60px; } }
        @media (max-width: 768px) {
          .page.services .banner.faqs .faqs-cta-container a .icon-container {
            width: 46px; } }
        .page.services .banner.faqs .faqs-cta-container a .icon-container .icon {
          width: 15px;
          height: 10px;
          position: absolute;
          left: 50%;
          top: 43%;
          transition: left 0.3s;
          transform: translate(-50%, -50%); }
          @media (max-width: 1024px) {
            .page.services .banner.faqs .faqs-cta-container a .icon-container .icon {
              width: 12px;
              height: 7px;
              top: 43%; } }
          @media (max-width: 768px) {
            .page.services .banner.faqs .faqs-cta-container a .icon-container .icon {
              width: 9px;
              height: 5px;
              top: 40%; } }
      .page.services .banner.faqs .faqs-cta-container a:hover {
        background: #710c16; }
        .page.services .banner.faqs .faqs-cta-container a:hover .icon {
          left: 55%; }

/*# sourceMappingURL=application.css.map */
