@font-face {
    font-family: dalby;
    src: url(/fonts/dalbyna.woff) format("woff");
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: Noyh;
    src: local("Noyh Light"), local("Noyh-Light"),
    url(/fonts/Noyh-Light.6d996f74.woff2) format("woff2"),
    url(/fonts/Noyh-Light.6d8e90d1.woff) format("woff");
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: Noyh;
    src: local("Noyh Heavy"), local("Noyh-Heavy"),
    url(/fonts/Noyh-Heavy.f2425439.woff2) format("woff2"),
    url(/fonts/Noyh-Heavy.1da369e1.woff) format("woff");
    font-weight: 900;
    font-style: normal;
}
.h1, h1 {
    color: #fff;
    font-family: noyh,sans-serif;
    font-size: 6rem;
    text-transform: uppercase;
    text-align: right;
    font-weight: 300;
    max-width: 1000px;
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-wrap: balance;
}
.home .actus-home h2 {
    color: #fff;
    font-weight: 300;
}
.h2, .h3, h2, h3 {
    font-family: "Open Sans",sans-serif;
    margin-bottom: 20px;
}
.h2, h2 {
    font-size: 3rem;
    font-weight: 800;
    color: #1d1d1b;
}
a {
    color: #e8dfe2;
    transition: all .25s ease;
}
p {
    color: #2b2b2b;
}
b, strong {
    font-weight: 700;
}
button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: 0;
    cursor: pointer;
    border-radius: 0;
}
.btn {
    font-size: 1.2rem;
    text-transform: uppercase;
    padding: 15px 20px;
    border-radius: 3px;
    text-align: center;
    border-color: transparent;
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.btn.btn-primary {
    background-color: #ff4b5c;
    color: #fff;
    text-align: center;
    text-decoration: none;
    text-wrap: balance;
}
.btn.btn-primary:hover {
    background-color: #f24757;
}
.btn.btn-tertiary {
    background-color: #fff;
    color: #274394;
    text-decoration: none;
}
.btn.btn-tertiary:hover {
    background-color: #25408d;
    color: #fff;
}
.btn.btn-dark {
    background-color: #121212;
    color: #ff4b5c;
    font-weight: 700;
}
.btn.btn-dark:hover {
    background-color: #191919;
    color: #fff;
}
.space-bottom {
    margin-bottom: 50px!important;
}
.hide {
    display: none;
}
.picto-font,
[class*=" icon-"],
[class^="icon-"] {
    font-weight: 400;
    font-style: normal;
    line-height: 1;
    font-family: dalby !important;
    speak: none;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.cols {
    display: flex;
    justify-content: space-between;
}
.wrap {
    margin: 0 auto;
    width: 100%;
    max-width: 1200px;
    position: relative;
    padding: 0 20px;
}
body {
    background-color: #fff;
    font-size: 1.4rem;
    line-height: 1.4;
    letter-spacing: .07rem;
    font-family: "Open Sans",sans-serif;
    color: #2b2b2b;
    min-height: 100vh;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    /*justify-content: space-between;*/
}
body .main-content {
    flex-grow: 1;
    position: relative;
}
a {
    color: #e8dfe2;
    text-decoration: none;
    transition: all .25s ease;
}
/* ========================= */
/* HEADER STYLES       */
/* ========================= */
.top-header {
    background-color: #202A44;
    padding: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
}
.choose-lang {
    margin-right: 20px;
}
.button-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
}
.button-header .btn {
    margin-right: 10px;
    font-weight: 700;
}
.main-header {
    height: 110px;
    background-color: #202A44;
    justify-content: space-between;
}
.logo, .main-header {
     display: flex;
     flex-direction: row;
     align-items: center;
 }
.logo {
    padding: 0 50px;
    justify-content: center;
}
.logo img {
    max-width: 400px;
}
.main-nav {
    height: 100%;
    flex-grow: 1;
}
.cols-header-mobile {
    margin: 0 10px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.toggle-nav {
    display: none;
    cursor: pointer;
    position: relative;
    width: 60px;
    height: 55px;
    background-color: transparent;
}
.toggle-nav.menu-open {
    position: fixed;
    top: 10px;
    right: 10px;
}
.menu-open.toggle-nav span, .menu-open.toggle-nav span span {
    background-color: transparent;
}
.menu-open.toggle-nav span::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.menu-open.toggle-nav span::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: 24px -4px 0;
    transform-origin: 24px -4px 0;
}
.toggle-nav span, .toggle-nav span:after, .toggle-nav span:before {
    position: absolute;
    display: block;
    height: 3px;
    background-color: #fff;
    top: 30px; /* added */
    right: 5px; /* added */
}
.toggle-nav span::after, .toggle-nav span::before {
    content: "";
    top: 0;
    right: 0;
    width: 25px;
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
    transition: all .25s ease;
}
.toggle-nav span::after {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    top: 10px;
}
.toggle-nav span {
    /*top: 50%;*/
    /*left: 50%;*/
    /*margin-left: -10px;*/
    width: 35px;
    /*-webkit-transform: rotate(0);*/
    /*transform: rotate(0);*/
}
.menu {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding:0;
}
.menu.showing-nav {
    right: 0;
}
.menu li {
    font-size: 1.6rem;
    width: 19%;
    height: 100%;
    position: relative;
    margin: 0 10px;
}
.menu li:before {
    content: "";
    height: 2px;
    width: 0;
    position: absolute;
    left: 0;
    bottom: 0;
    background-color: #383838;
    transition: .5s linear;
}
.menu li:after {
    content: "";
    width: 2px;
    height: 55px;
    position: absolute;
    right: 0;
    top: 25%;
    background-color: #383838;
    transition: all 0.25s ease;
}
.menu li:hover:before {
    width: 100%;
}
.menu li:hover:after {
    height: 100%;
    top: 0;
    background-color: #383838;
}
.menu li a:after {
    height: 2px;
    width: 0;
    right: 0;
    transition: .5s linear;
}
.menu li:hover {
    background-color: #202A44;
}
.menu li a {
    color: #c0c0c0;
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.menu li a:after, .menu li a:before {
    content: "";
    position: absolute;
    top: 0;
    background-color: #383838;
}
.menu li a:before {
    width: 2px;
    height: 0;
    left: 0;
    transition: all .25s ease;
}
.menu li:hover a,.menu li.active a {
    color: #fff;
}
.menu > li:hover > a:before {
    height: 100%;
}
.menu > li:hover > a:after {
    width: 100%;
}
.menu li:hover a:hover {
    text-decoration: none;
}
.menu li i {
    font-size: 4rem;
    margin-bottom: 15px;
    color: #fff;
}
.menu li:hover i,.menu li.active i {
    color: #ff4b5c;
}
.menu .materiels-mobile, .menu .partenaires-mobile {
    display: none;
}
.picto-font, [class*=" icon-"], [class^=icon-] {
    font-weight: 400;
    font-style: normal;
    line-height: 1;
    font-family: dalby!important;
    speak: none;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon-products:before {
    content: "\e916";
}
.icon-application:before {
    content: "\e904";
}
.icon-networks:before {
    content: "\e908";
}
.icon-dalby-group:before {
    content: "\e918";
}
.icon-contact:before {
    content: "\e917";
}
/*@media (pointer: coarse){*/
/*    .menu .with-sub:first-child > a {*/
/*        pointer-events: none;*/
/*    }*/
/*    .menu .with-sub:first-child > a:focus {*/
/*        pointer-events: auto;*/
/*    }*/
/*}*/
.with-sub .submenu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 290px;
    z-index: 999;
}
.with-sub:hover .submenu {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}
.with-sub .submenu a {
    text-align: left;
    padding: 10px 20px;
    display: block;
    color: #fff;
    width: 100%;
    background-color: #ff4b5c;
    font-family: noyh,sans-serif;
    font-size: 1.6rem;
    text-transform: uppercase;
    font-weight: 400;
    transition: all .25s ease;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
}
.with-sub .submenu a:hover,.with-sub .submenu a.active {
    font-weight: 700;
    background-color: #ff5d6c;
}
/* ========================= */
/* HOME SECTION STYLES       */
/* ========================= */
.home .slider-banner {
  height: 800px;
  width: 100%;
  position: relative;
}
.home .slider-banner .slider {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: 50%;
}
.home .slider-banner .slider .content {
    width: 100%;
    height: 100%;
    padding: 100px 0;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}
.home .slider-banner .slider .content:before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #1d1d1b;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    opacity: .25;
    z-index: 50;
}
.home .slider-banner .slider h1 {
    max-width: 1000px;
    color: #fff;
    text-align: center;
    margin-bottom: 30px;
    z-index: 100;
    padding: 0 15px;
    text-wrap: balance;
}
.h1 span, h1 span {
    font-size: 4.8rem;
    font-weight: 700;
}
.home .slider-banner .slider .btn {
    z-index: 100;
}
.home .text-intro {
    max-width: 700px;
    line-height: 30px;
    margin: 50px auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.home .text-intro h2 {
    font-size: 3rem;
    font-weight: 700;
    text-align: center;
    color: #000;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-wrap-style: balance;
    line-height: 3.8rem;
}
.home .text-intro h2:after {
    content: "";
    width: 3px;
    height: 45px;
    margin: 20px 0;
    background-color: #ff4b5c;
}
.home .text-intro p {
    font-size: 1.6rem;
    font-weight: 300;
}
.slider-product {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
/*.slick-list, .slick-slider {*/
/*    position: relative;*/
/*    display: block;*/
/*}*/
/*.slick-slider {*/
/*    box-sizing: border-box;*/
/*    -webkit-touch-callout: none;*/
/*    -webkit-user-select: none;*/
/*    -moz-user-select: none;*/
/*    -ms-user-select: none;*/
/*    user-select: none;*/
/*    touch-action: pan-y;*/
/*    -webkit-tap-highlight-color: transparent;*/
/*}*/
/*.slider-product button i {*/
/*    font-size: 5rem;*/
/*    color: #d4c7cc;*/
/*}*/
/*.icon-fleche-gauche:before {*/
/*    content: "\e915";*/
/*}*/
/*.slick-slider .slick-list, .slick-slider .slick-track {*/
/*    -webkit-transform: translateZ(0);*/
/*    transform: translateZ(0);*/
/*}*/
/*.slick-list {*/
/*    width: 100%;*/
/*}*/
/*.slick-list {*/
/*    overflow: hidden;*/
/*    margin: 0;*/
/*    padding: 0;*/
/*}*/
/*.slick-list, .slick-slider {*/
/*    position: relative;*/
/*    display: block;*/
/*}*/
/*.slick-track {*/
/*    position: relative;*/
/*    left: 0;*/
/*    top: 0;*/
/*    display: block;*/
/*    margin-left: auto;*/
/*    margin-right: auto;*/
/*}*/
/*.slick-initialized .slick-slide {*/
/*    display: block;*/
/*}*/
/*.slick-slide {*/
/*    float: left;*/
/*    height: 100%;*/
/*    min-height: 1px;*/
/*    display: none;*/
/*}*/
.slider-product .owl-stage-outer {
    padding: 15px 0;
}
.owl-carousel .owl-item {
    text-align: center;
}
.item-product {
    border: 1px solid #e8dfe2;
    padding: 10px;
    width: 285px;
    /*height: 380px;*/
    margin: 0;
    transition: all .25s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    display: inline-block;
    text-align: left;
}
.item-product:hover {
    -webkit-box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.15);
}
/*.slick-slide img {*/
/*    display: block;*/
/*}*/
.item-product .image {
    height: 235px;
    background-size: cover;
}
.item-product h4 {
    color: #1d1d1b;
    font-size: 16px;
    font-weight: 700;
    width: 100%;
    line-height: 24px;
    margin-top: 5px;
    margin-bottom: 1px;
}
.item-product p {
    font-size: 1.4rem;
    width: 100%;
}
.item-product a {
    font-weight: 500;
    font-size: 1.6rem;
    color: #2b2b2b;
    display: grid;
    margin: 5px auto;
    align-items: center;
    justify-content: flex-start;
    width: fit-content;
}
/*.item-product a:before {*/
/*    content: "\e913";*/
/*    font-family: dalby;*/
/*    font-size: 2rem;*/
/*}*/
.item-product a:hover {
    text-decoration: none;
}
.home .toggle-container {
    overflow: hidden;
    height: 30vw;
    max-height: 672px;
    min-height: 546px;
}
.cols-with-image {
    width: 100%;
    height: 100%;
    background-color: #f7f7f7;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
}
.home .toggle-container .content {
    justify-content: flex-start;
    padding-top: 7%;
    max-width: 50%;
}
.cols-with-image .content {
    width: 100%;
    flex-grow: 1;
    min-width: 50%;
    padding: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.cols-with-image .content.small-container * {
    max-width: 600px;
}
.home .toggle-container h2 {
    text-align: center;
    margin-bottom: 30px;
    color: #2b2b2b;
    font-size: 4.6rem;
    font-weight: 300;
}
.home .toggle-container .nav-toggle {
    margin-bottom: 50px;
    flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: center;
}
.cols-with-image .content.small-container * {
    max-width: 600px;
}
.home .toggle-container .nav-toggle li {
    cursor: pointer;
    margin: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}
.home .toggle-container .nav-toggle li i {
    font-size: 3rem;
    margin-bottom: 10px;
}
.home .toggle-container .nav-toggle li.active,.home .toggle-container .nav-toggle li:hover {
    color: #ff4b5c;
}
.icon-environment:before {
    content: "\e911";
}
.icon-construction:before {
    content: "\e910";
}
.icon-agriculture:before {
    content: "\e90e";
}
.icon-logistics:before {
    content: "\e90f";
}
.icon-utilities:before {
    content: "\e90d";
}
.home .toggle-container .toggle-content {
    display: none;
}
.home .toggle-container .toggle-content.show {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.home .toggle-container .toggle-image-container {
    position: relative;
    max-width: 50%;
    width: 100%;
}
.home .toggle-container .toggle-image-container figure.show {
    right: 0;
}
.home .toggle-container .toggle-image-container figure {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: 50%;
    top: 0;
    right: -100%;
    transition: .5s ease-in;
    display: block;
}
.home .toggle-container .toggle-image-container img {
    opacity: 0;
    max-width: 100%;
}
/*.slider-product button {*/
/*    outline: transparent;*/
/*}*/
/*.slider-product button i {*/
/*    font-size: 5rem;*/
/*    color: #d4c7cc;*/
/*}*/
/*.icon-fleche-gauche:before {*/
/*    content: "\e915";*/
/*}*/
.hero-dark {
    background-color: #202A44;
    color: #fff;
}
.hero-dark, .hero-pink {
    padding: 50px 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.home .actus-home h2 {
    color: #fff;
    font-weight: 300;
}
.home .actus-container, .home .btn-actus {
    flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    align-items: center;
}
.home .actus-container {
    max-width: 1400px;
    margin-bottom: 20px;
    justify-content: space-around;
}
.item-actu {
    max-width: 600px;
    width: 100%;
    padding: 20px;
    background-color: #fff;
    height: 470px;
    margin: 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
}
.item-actu figure {
    width: 100%;
    height: 270px;
    background-size: cover;
    background-position: 50%;
}
.item-actu h3 {
    color: #1d1d1b;
    font-weight: 700;
    font-size: 2.1rem;
    padding-top: 10px;
    margin-bottom: 10px;
}
.item-actu p {
    margin-bottom: 20px;
}
.item-actu a {
    font-weight: 700;
    color: #2b2b2b;
    font-size: 1.6rem;
}
.home .btn-actus {
    justify-content: center;
}
.home .actus-container, .home .btn-actus {
    flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    align-items: center;
}
.home .btn-actus a {
    width: 250px;
    margin: 10px;
}
/* ========================= */
/* PRODUCTS STYLES       */
/* ========================= */
.hooklifts .banner {
    margin-bottom: 0;
}
.hooklifts .main-content {
    padding: 50px 10px;
    background-color: #f7f7f7;
}
#products-list {
    max-width: 1160px;
    margin: 20px auto;
    display: flex;
    flex-wrap: wrap; /* Permet de passer sur plusieurs lignes */
    justify-content: center; /* Centre les lignes incomplètes horizontalement */
    gap: 20px; /* Espacement entre les produits */
}
#products-list .product-container {
    flex: 0 0 calc(33.33% - 20px);
    box-sizing: border-box;
    padding: 20px;
    text-align: left;
    background-color: #fff;
    position: relative;
    padding-bottom: 100px;
}
#products-list .product-container .image {
    height: 320px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
#products-list .product-container h3 {
    text-align: left;
    width: 100%;
    color: #1d1d1b;
    font-weight: 700;
    font-size: 2.1rem;
    margin: 10px 0 5px 0;
}
#products-list .product-container .btn.btn-primary {
    display: grid;
    width: max-content;
    margin: 20px auto;
    font-size: 1.6rem;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
}
#products-list .product-container .sectors  {
    display: none;
}
#products-list .product-container .list-with-icons {
    margin-top: 30px;
    margin-bottom: 0;
}
#products-list .product-container .list-with-icons li {
    flex: 0 0 calc(50% - 20px);
    justify-content: space-evenly;
}
.hooklift .banner {
    /*background-image: url('/assets/images/products/header-bras-levage.jpg');*/
}
.banner {
    width: 100%;
    height: 450px;
    background-size: cover;
    position: relative;
    background-position: 50%;
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.banner:before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #1d1d1b;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    opacity: .25;
    z-index: 50;
}
.banner .content {
    max-width: 90%;
    width: 100%;
    z-index: 60;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
}
.banner h1 {
    text-align: right;
    display: block;
    line-height: normal;
}
.navbar-fixed {
    position: absolute;
    z-index: 8888;
    top: 50px;
    left: 20px;
    transition: all .25s ease;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}
.navbar-fixed a {
    margin-bottom: 20px;
    position: relative;
    transition: all .25s ease;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}
.navbar-fixed a:before {
    content: "";
    height: 100%;
    width: 4px;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 10px;
    background-color: #ffdbde;
    z-index: 101;
    transition: all .25s ease;
}
.navbar-fixed a span {
    background-color: #ff4b5c;
    color: #fff;
    padding: 10px 20px 10px 10px;
    opacity: 0;
    z-index: 100;
    transition: all .25s ease;
}
.navbar-fixed a span strong {
    margin-right: 10px;
}
.intro {
    max-width: 900px;
    margin: 80px auto;
    line-height: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.hooklifts .intro {
    margin: 40px auto;
}
.intro .title {
    margin-bottom: 20px;
}
.title-with-line {
    font-size: 3rem;
    font-weight: 700;
    text-align: center;
    color: #000;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.title-with-line:after {
    content: "";
    width: 3px;
    height: 45px;
    margin: 20px 0;
    background-color: #ff4b5c;
}
.intro h2 {
    font-size: 3rem;
    font-weight: 700;
    text-align: center;
    color: #000;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-wrap: balance;
    line-height: initial;
}
.intro p {
    font-size: 1.6rem;
    font-weight: 300;
    width: 100%;
    text-align: left;
}
.head-cols-half {
    width: 100%;
    padding: 50px 20px;
    background-color: #202020;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.head-cols-half p {
    font-size: 1.5rem;
    text-align: center;
    margin-bottom: 10px;
    color: #aaaaaa;
}
.head-cols-half h3 {
    font-size: 2.4rem;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.video-background {
    position: relative;
    background-color: transparent;
}
.video-container {
    background-color: #1d1d1b;
    height: 700px;
    width: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.video-background:before {
    content: "";
    background-color: #202020;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
.loader {
    width: 45px;
    aspect-ratio: .75;
    --c: no-repeat linear-gradient(#ffffff 0 0);
    background:
            var(--c) 0%   50%,
            var(--c) 50%  50%,
            var(--c) 100% 50%;
    animation: l7 1s infinite linear alternate;
}
@keyframes l7 {
    0%  {background-size: 20% 50% ,20% 50% ,20% 50% }
    20% {background-size: 20% 20% ,20% 50% ,20% 50% }
    40% {background-size: 20% 100%,20% 20% ,20% 50% }
    60% {background-size: 20% 50% ,20% 100%,20% 20% }
    80% {background-size: 20% 50% ,20% 50% ,20% 100%}
    100%{background-size: 20% 50% ,20% 50% ,20% 50% }
}
/*.loading, .loading:before {*/
/*    position: absolute;*/
/*    top: 0;*/
/*    left: 0;*/
/*    width: 100%;*/
/*    height: 100%;*/
/*}*/
/*.loading {*/
/*    z-index: 888;*/
/*    overflow: visible;*/
/*    margin: auto;*/
/*    bottom: 0;*/
/*    right: 0;*/
/*    display: flex;*/
/*    flex-direction: row;*/
/*    align-items: center;*/
/*    justify-content: center;*/
/*}*/
/*.loading:before {*/
/*    content: "";*/
/*    display: block;*/
/*    background-color: #202020;*/
/*}*/
/*.loading, .loading:before {*/
/*    position: absolute;*/
/*    top: 0;*/
/*    left: 0;*/
/*    width: 100%;*/
/*    height: 100%;*/
/*}*/
/*.loading:after {*/
/*    content: "";*/
/*    display: block;*/
/*    font-size: 10px;*/
/*    width: 1em;*/
/*    height: 1em;*/
/*    margin-top: -.5em;*/
/*    -webkit-animation: spinner 3s linear infinite;*/
/*    animation: spinner 3s linear infinite;*/
/*    border-radius: .5em;*/
/*    box-shadow: 1.5em 0 0 0 #fff,1.1em 1.1em 0 0 #fff,0 1.5em 0 0 #fff,-1.1em 1.1em 0 0 #fff,-1.5em 0 0 0 #fff,-1.1em -1.1em 0 0 #fff,0 -1.5em 0 0 #fff,1.1em -1.1em 0 0 #fff;*/
/*}*/
.video-background .vimeo-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: hidden;
}
.video-background .vimeo-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: hidden;
}
.video-background .vimeo-wrapper iframe {
    width: 100vw;
    height: 56.25vw;
    min-height: 100vh;
    min-width: 177.77vh;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 999;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
.video-wrapper {
    max-width: 1366px;
    display: flex;
    margin: auto;
}
.videodetector {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}
.videodetector iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
.cols-half {
    min-height: 700px;
    max-height: 1000px;
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
}
.cols-half figure {
    background-size: cover;
    background-position: 50%;
    width: 50%;
}
.cols-half .content {
    width: 50%;
    height: 100%;
    padding: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    /*justify-content: space-between;*/
}
.cols-half .content .points {
    width: 100%;
    padding: 50px 30px;
    background-color: #f7f7f7;
    position: relative;
    margin-bottom: 50px;
}
.cols-half .content .points:before {
    content: "";
    width: 3px;
    height: 160px;
    background-color: #ff4b5c;
    position: absolute;
    top: -110px;
    left: calc(50% - 2px);
}
.cols-half .content .points .title {
    margin-bottom: 50px;
    font-size: 3.6rem;
    font-weight: 300;
    text-align: center;
    color: #bd1622;
}
.ck {
    /*text-align: justify;*/
    position: relative;
    margin-bottom: 20px;
}
.ck p {
    font-family: "Open Sans",sans-serif!important;
    font-size: 1.4rem;
    color: #2b2b2b;
}
.list-arrows {
    padding-top: 10px;
}
.cols-half .content .points .ck ul li {
    margin: 20px 0;
    padding-left: 30px;
    position: relative;
}
.cols-half .content .points .ck ul li:before {
    content: "\e90a";
    font-family: dalby;
    color: #bd1622;
    font-size: 2rem;
    margin-right: 10px;
    position: absolute;
    top: -3px;
    left: 0;
}
.cols-half .description {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}
.applications {
    width: 100%;
    /*padding-top: 20px;*/
    display: flex;
    flex-direction: column;
    align-items: center;
    /*justify-content: center;*/
}
.applications h4 {
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 20px;
    color: #ff4b5c;
}
.list-with-icons {
    margin-bottom: 30px;
    flex-wrap: wrap;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.list-with-icons a, .list-with-icons li {
    margin: 10px;
    color: #2b2b2b;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}
.list-with-icons a, .list-with-icons li {
    margin: 10px;
    color: #2b2b2b;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    justify-content: flex-start;
}
.list-with-icons a i, .list-with-icons li i {
    margin-bottom: 10px;
    color: #ff4b5c;
    font-size: 2.7rem;
}
.list-with-icons a span, .list-with-icons li span {
    font-size: 1.2rem;
}
.list-with-icons a:hover span, .list-with-icons li:hover span {
    color: #ff4b5c;
}
.product .head-cols-half {
    background-color: #fff;
    padding-top: 25px;
}
.product h1 {
    font-size: 3.5rem;
    font-weight: 700;
    text-align: center;
    color: #ff4b5c;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: initial;
}
.details-produits .youtube-container {
    width: 100%;
    padding: 50px;
    background-color: #202A44;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.youtube-container {
    width: 100%;
    padding: 50px;
    background-color: #202020;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.details-produits .youtube-container h2 {
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 30px;
    font-size: 1.8rem;
    text-align: center;
    font-weight: 700;
}
.details-produits .youtube-container iframe {
    max-width: 900px;
    width: 100%;
    min-height: 500px;
}
.details-produits .cols-details-alternate .cols-carou:nth-child(odd) {
    flex-direction: row-reverse;
}
.details-produits .cols-carou {
    width: 100%;
    max-height: 500px;
    height: 100vh;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
}
.details-produits .images {
    width: 50%;
    height: 100%;
}
.details-produits .images figure {
    background-size: cover;
    background-position: 50%;
    width: 100%;
    height: 100%;
}
.details-produits .details {
    padding: 50px;
    width: 50%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.details-produits .details .arrow {
    font-size: 3rem;
    text-decoration: none;
}
.icon-arrow-left:before {
    content: "\e909";
}
.icon-arrow-right:before {
    content: "\e90a";
}
.details-produits .details-content {
    max-width: 500px;
    margin: 0 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.details-produits .cols-carou h2 {
    font-weight: 300;
    font-size: 3.6rem;
    text-align: center;
    margin-bottom: 30px;
    text-transform: uppercase;
}
.details-produits .cols-carou .pager {
    flex-wrap: wrap;
    margin-bottom: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
/*.details-produits .cols-carou .pager a:last-child {*/
/*    display: none;*/
/*}*/
.details-produits .cols-carou .pager a {
    width: 45px;
    height: 45px;
    margin: 10px;
    background-color: #e8dfe2;
    color: #2b2b2b;
    border-radius: 50%;
    font-size: 2rem;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.details-produits .cols-carou .pager a:hover {
    text-decoration: none;
    background-color: #ded7db;
}
.details-produits .cols-carou .pager a.cycle-pager-active {
    background-color: #ff4b5c;
    color: #fff;
}
.details-produits .cols-carou .description {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.details-produits .cols-carou .description .cycle-slide {
    width: 100%;
}
.details-produits .cols-carou .description h3 {
    color: #ff4b5c;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    width: 100%;
}
.details-produits .cols-carou .pager a.cycle-pager-active {
    background-color: #ff4b5c;
    color: #fff;
}
.details-produits .cols-carou .description {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
/* ========================= */
/* APLICATIONS STYLES       */
/* ========================= */
.applications .sous-cat-nav {
    background-color: #f7f7f7;
    padding: 50px 20px;
    margin-bottom: 50px;
    flex-wrap: wrap;
    max-width: 1600px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.applications .sous-cat-nav a {
    margin: 20px;
    color: #2b2b2b;
    border-color: transparent;
    transition: all .25s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}
.applications .sous-cat-nav a:hover {
    color: #ff4b5c;
    font-weight: 700;
    text-decoration: none;
}
.nav-onglet a {
    min-height: 50px;
    min-width: 180px;
    color: #000;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin-bottom: 20px;
    justify-content: center;
}
.nav-onglet a:only-child, .onglet-content {
    display: none;
}
.onglet-content.open {
    display: block;
}
.applications .sous-cat-nav a.actif {
    color: #ff4b5c;
    position: relative;
    font-weight: 700;
}
.applications .sous-cat-nav a img {
    margin-bottom: 20px;
    border-radius: 50%;
}
.cols-half .carou-photos {
    background-color: #e8dfe2;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.applications .applications-container:nth-child(2n) .cols-half {
    flex-direction: row-reverse;
}
.cols-half .col {
    width: 100%;
    max-width: 50%;
}
.cols-half .carou-photos .carousel {
    max-width: 80%;
}
.cols-half .carou-photos .carousel img {
    border: 10px solid #fff;
    max-width: 100%;
}
.cols-half .col {
    width: 100%;
    max-width: 50%;
}
.list-arrows li {
    margin: 10px 0;
    position: relative;
    padding-left: 20px;
}
.list-arrows li:before {
    content: "\e90a";
    font-family: dalby;
    color: #bd1622;
    font-size: 2rem;
    position: absolute;
    top: 0;
    left: -10px;
}
.list-buttons-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.list-buttons-link a:hover {
    background-color: #ff4b5c;
    color: #fff;
    text-decoration: none;
}
.list-buttons-link a {
    margin-bottom: 20px;
    border: 1px solid #ff4b5c;
    width: 300px;
    padding: 10px;
    color: #ff4b5c;
    text-align: center;
    transition: all .25s ease;
}
.applications-slider {
    /*height: 350px;*/
    background-size: cover;
    max-width: 1160px;
    margin: 0 auto;
    margin-bottom: 50px;
}
.group .applications-slider {
    margin-bottom: 15px;
    /*height: 360px!important;*/
}
.group .applications-slider .owl-prev, .group .applications-slider .owl-next {
    background-color: #ff4b5c !important;
    font-size: 40px !important;
    width: 40px;
    height: 40px;
    border-radius: 40px;
    color: #fff;
    display: grid;
    align-content: center;
    align-items: center;
    text-align: center;
    justify-content: center;
    line-height: 40px !important;
    grid-template-columns: 1fr;
    position: absolute;
    left: -40px;
    top: 40%;
}
.group .applications-slider .owl-next {
    right: -40px;
    left: unset;
}
.group .applications-slider .owl-prev span,.group .applications-slider .owl-next span {
    color: #fff;
    font-size: 40px;
    line-height: 0;
    height: 10px;
    display: block;
    line-height: 0px;
}
.applications-slider .application-image {
    /*height: 350px;*/
    background-size: cover;
    margin: 0 15px;
    cursor: pointer;
    aspect-ratio: 1;
}
.group .applications-slider .application-image {
    /*height: 290px;*/
    aspect-ratio: 1;
}
.group .applications-slider  h3 {
    text-align: left;
    margin-top: 10px;
    padding: 0 15px;
}
.applications .cols-half {
    min-height: 700px;
    max-height: 830px;
}
.applications .nav-applications {
    width: 100%;
    background-color: #202A44;
    padding: 50px;
}
.applications .nav-applications h2 {
    font-size: 2.5rem;
    font-weight: 700;
    text-align: center;
    color: #fff;
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-wrap: balance;
}
.applications .nav-applications h2:after
{
    content: "";
    height: 3px;
    width: 45px;
    margin: 20px 0;
    background-color: #ff4b5c;
}
.applications .nav-applications nav {
    max-width: 1300px;
    margin: 0 auto;
    display: grid;
    align-items: center;
    justify-content: center;
    grid-template-columns: max-content max-content;
}
.applications .nav-applications a {
    background-color: #fff;
    padding: 20px;
    margin: 20px;
    width: 380px;
    height: 360px;
    transition: all .25s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}
.applications .nav-applications a:hover {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
    text-decoration: none;
}
.applications .nav-applications a span {
    width: 100%;
    font-size: 2.1rem;
    font-weight: 700;
    flex-grow: 1;
    color: #1d1d1b;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.applications .nav-applications a span i {
    font-size: 3rem;
    font-weight: 400;
    color: #ff4b5c;
}
.icon-environnement:before {
    content: "\e911";
}
/* ========================= */
/* NETWORK AND SERVICES STYLES       */
/* ========================= */
.network .assistance {
    position: relative;
    padding: 50px 0;
    background-color: #f7f7f7;
}
.network .assistance h2 {
    font-weight: 300;
    color: #1d1d1b;
    font-size: 3.6rem;
    text-align: center;
}
.network .assistance .intro {
    font-size: 2rem;
    margin-bottom: 0;
}
.network .assistance p:last-child {
    font-weight: 700;
    font-size: 2.5rem;
}
.network .assistance p:last-child a {
    color:#2b2b2b;
    text-decoration: underline;
}
.network .assistance .intro {
    margin-top: 0px;
    align-items: start;
}
.network .assistance h3.intro {
    font-weight: 600;
    color: #ff4b5c;
    text-transform: uppercase;
    margin-top: 10px;
}
.network .network-details.pieces {
    background-color: #202A44;
    color: #fff;
}
.network .network-details {
    padding: 50px 0;
}
.network .network-details .cols {
    align-items: center;
}
.network .network-details img {
    max-width: 100%;
}
.network .network-details .content {
    margin: 20px;
    max-width: 320px;
    flex-grow: 1;
}
.network .network-details.pieces h2 {
    color: #fff;
}
.network .network-details .content p {
    margin-bottom: 20px;
    font-weight: 700;
}
.network .network-details.pieces p {
    color: #d5d5d5;
}
.network .network-details.formations .cols {
    flex-direction: row-reverse;
}
.item-check {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
}
.item-check:before {
    font-family: dalby;
    content: "\e903";
    color: #ff4b5c;
    margin-right: 10px;
    font-size: 3rem;
    line-height: 1;
}
.logo-page img {
    max-width: 300px;
    z-index: 100;
}
.group .intro {
    margin: 20px auto;
}
.group .intro .cols {
    margin-bottom: 20px;
    align-items: stretch;
}
.group .intro .cols .img {
    margin-right: 20px;
    max-width: 250px;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.dealers-map {
    background-color: #f7f7f7;
    text-align: center;
    padding-top: 0;
}
.dealers-map h2 {
    /*color: #fff;*/
    font-weight: 300;
    font-size: 3.6rem;
    text-align: center;
}
#dealers_map_canvas {
    width: 100%;
    height: 480px;
}
.gm-style .gm-style-iw-c {
    border-radius: 0;
    border: 2px solid #ff4b5c;
    padding: 18px 30px 20px 30px!important;
}
.gm-style .gm-style-iw-tc::after {
    background-color: #ff4b5c;
}
.gm-style-iw-chr {
    position: absolute;
    right: -10px;
    top: -10px;
}
.gm-style .gm-style-iw {
    font-size: 14px;
    font-family: "Open Sans", sans-serif;
    text-align: left;
    font-weight: 400;
}
.gm-style .gm-style-iw strong {
    font-size: 16px;
    font-family: "Open Sans", sans-serif;
    display: inline-block;
    margin-bottom: 3px;
    color:#ff4b5c;
    text-transform: uppercase;
}
.gm-style .gm-style-iw a {
    color:#ff4b5c;
}
.gm-style .gm-style-iw-d {
    overflow: auto!important;
}
/*.gm-style .gm-style-iw .contactName {*/
/*    margin-top: 3px;*/
/*}*/
/* ========================= */
/* DALBY GROUP STYLES       */
/* ========================= */
.logo-page {
    margin: 20px auto 0;
    z-index: 100;
}
.intro-groupe p, .logo-page {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.group .buttons {
    padding: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin-bottom: 50px;
    margin-top: 0;
}
.group .made-france {
    position: relative;
    padding: 50px 0;
    background-color: #f7f7f7;
}
.group .made-france:before {
    content: "";
    width: 86px;
    height: 110px;
    background-image: url(/assets/images/groupe-drapeau-france.png);
    position: absolute;
    left: 50px;
    top: 0;
    opacity: 0;
}
.group .made-france h2 {
    font-weight: 300;
    color: #1d1d1b;
    font-size: 3.6rem;
    text-align: center;
}
.group .made-france .intro {
    font-size: 2rem;
    margin-bottom: 0;
}
.group .made-france .items-container {
    margin: 20px auto;
    display: grid;
    align-items: center;
    justify-content: center;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
.group .made-france .items-container .item {
    max-width: 360px;
    background-color: #fff;
    padding: 20px;
    margin: 10px;
}
.group .made-france .items-container .item .vertical-center img, .group .made-france .items-container .item img {
    max-width: 100%;
}
.group .made-france .items-container .item h3 {
    text-align: left;
    width: 100%;
    color: #1d1d1b;
    font-weight: 700;
    font-size: 18px;
    margin: 3px 0;
    height: 55px;
}
.group .made-france .items-container .item p {
    margin: 10px 0;
}
.group .cols.logos {
    display: grid!important;
    grid-template-columns: max-content max-content;
    align-items: center;
}
/* ========================= */
/* CONTACT US STYLES       */
/* ========================= */
.contact .adresse-container, .contact .adresse-container .adresse {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.contact .adresse-container {
    background-color: #202A44;
    padding: 50px 20px;
}
.contact .intro {
    margin: 20px auto;
}
.contact .adresse-container .adresse {
    margin-bottom: 30px;
}
.contact .adresse-container .adresse a.title, .contact .adresse-container .adresse p.title {
    color: #ff4b5c;
    font-size: 1.8rem;
    margin-bottom: 20px;
    text-transform: uppercase;
}
.contact .adresse-container .adresse a, .contact .adresse-container .adresse p {
    color: #fff;
    font-weight: 700;
    text-align: center;
    padding-bottom: 0;
}
.contact .form-contact {
    padding-top: 50px;
}
.contact .form-contact h2 {
    color: #1d1d1b;
    font-weight: 300;
    margin-bottom: 30px;
    font-size: 3.6rem;
    text-align: center;
}
.contact .form-contact form {
    margin-bottom: 50px;
    padding-top: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.contact .form-contact form .cols {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
}
.contact .form-contact form .cols .col {
    width: 45%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.contact .form-contact form input[type=date],
.contact .form-contact form input[type=email],
.contact .form-contact form input[type=number],
.contact .form-contact form input[type=password],
.contact .form-contact form input[type=search],
.contact .form-contact form input[type=tel],
.contact .form-contact form input[type=text],
.contact .form-contact form input[type=url],
.contact .form-contact form textarea {
    margin-bottom: 20px;
    width: 100%;
    background-color: transparent;
    border-radius: 3px;
    color: #2b2b2b; /*#2b2b2b;*/
    border: 1px solid #d1c9cb;
}
input[type=date], input[type=email],
input[type=number], input[type=password],
input[type=search], input[type=tel], input[type=text], input[type=url], textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #2b2b2b;
    padding: 0 15px;
    height: 50px;
    font-size: 1.6rem;
    font-family: "Open Sans",sans-serif;
    border: 2px solid #eee;
    margin-bottom: 20px;
    letter-spacing: .1rem;
    background-color: #eee;
    border-radius: 0;
}
input::placeholder,textarea::placeholder {
    color:#d1c9cb;
}
.contact .form-contact form input[type=date]:focus,
.contact .form-contact form input[type=email]:focus,
.contact .form-contact form input[type=number]:focus,
.contact .form-contact form input[type=password]:focus,
.contact .form-contact form input[type=search]:focus,
.contact .form-contact form input[type=tel]:focus, .contact .form-contact form input[type=text]:focus,
.contact .form-contact form input[type=url]:focus, .contact .form-contact form textarea:focus {
    border-color: #ff4b5c;
}
.form-contact #da_field_12344 {
    height: 0;
    overflow: hidden;
    position: absolute;
    opacity: 0;
    left: -9999px;
}
textarea {
    resize: vertical;
    padding: 10px;
    min-height: 150px;
}
.contact .form-contact form .input-file {
    min-width: 100%;
    margin-bottom: 20px;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: flex-end;
}
.input-file {
    width: auto;
    max-width: 300px;
}
.input-file input {
    display: none;
}
.contact .form-contact form .input-file label {
    background-color: #d4c7cc;
    color: #fff;
    height: 50px;
    margin-left: -2px;
    outline: none;
    transition: all .25s ease;
}
.contact .form-contact form .input-file label:hover {
    background-color: #ff4b5c;
}
.input-file label {
    cursor: pointer;
    margin-bottom: 0;
    font-size: 1.3rem;
    font-weight: 400;
}
.input-file i {
    font-size: 1.8rem;
    margin-right: 5px;
    font-weight: 300;
}
.contact .form-contact form .input-file .file-selected {
    background-color: transparent;
    border-radius: 2px;
    border: 1px solid #d1c9cb;
    height: 50px;
    margin: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
    flex-grow: 1;
    color: #d1c9cb;
    font-weight: 400;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    max-width: 325px;
}
.contact .form-contact form .input-file .file-selected.selected {
    color:#2b2b2b;
}
.input-file .file-selected:not(:empty) {
    background-color: #bec7df;
    margin-bottom: 20px;
    padding: 10px;
}
.input-file .file-selected {
    font-weight: 700;
    font-size: 1.5rem;
    text-align: left;
    padding: 0;
    margin-bottom: 0;
    margin-top: 15px;
    position: relative;
}
.contact .form-contact form .input-file .file-selected:before {
    content: "";
    display: block;
    font-style: italic;
    font-weight: 300;
    color: #1d1d1b;
}
.input-file .file-selected:not(:empty):before {
    content: "Fichier sélectionné : ";
    display: block;
    font-style: italic;
    font-weight: 300;
    color: #1d1d1b;
}
.contact .form-contact form .rgpd {
    max-width: 550px;
    margin: 20px auto 0px auto;
}
.checkbox {
    position: relative;
    z-index: 1;
}
.contact .form-contact form .rgpd input {
    border: 0;
}
.checkbox input[type=checkbox] {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    border: 0;
    z-index: -1;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
}
.checkbox label {
    font-family: "Open Sans",sans-serif;
    text-transform: none;
    display: flex;
    position: relative;
    cursor: pointer;
}
.contact .form-contact form .rgpd label:before {
    margin-top: 0px;
}
.checkbox label:before {
    content: "";
    height: 20px;
    width: 20px;
    min-width: 20px;
    border: 1px solid #2b2b2b;
    margin-right: 10px;
    padding-right: 15px;
}
.contact .form-contact form .rgpd label:after {
    top: 5px;
}
.checkbox label:after {
    position: absolute;
    left: 2px;
    top: 30%;
    margin-top: -2px;
    color: transparent;
    font-size: 1.4rem;
    font-weight: 800;
    transition: all .25s ease;
    font-weight: 400;
    font-style: normal;
    line-height: 1;
    font-family: dalby!important;
    speak: none;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\e903";
}
.checkbox label.checked:after {
    color: #ff4b5c;
}
.contact .form-contact form .rgpd a {
    color: #ff4b5c;
}
.inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}
.inputfile-1 + label {
    background-color: #fff;
    padding: 10px 15px 10px 15px;
    margin: 0px 0px 0 0;
    font-size: 18px;
    width: auto;
    transition: all 0.5s ease;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    text-transform: uppercase;
}
.inputfile + label {
    max-width: 96%;
    font-size: 1.3rem;
    font-weight: 400;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    overflow: hidden;
    display: grid;
    padding: 15px 20px;
    grid-template-columns: min-content min-content;
    column-gap: 5px;
}
.inputfile + label * {
    /* pointer-events: none; */
}
.inputfile-1:focus + label, .inputfile-1.has-focus + label, .inputfile-1 + label:hover {
    background-color: #fff;
    color: var(--dark-turquoise);
    border: var(--dark-turquoise) 2px solid;
    border-left: var(--dark-turquoise) 10px solid;
}
.labelNote {
    font-weight: 300;
}
#sentMessage {
    margin-bottom: 60px;
    font-size: 2rem;
    line-height: 1.5;
    color: #ff4b5c;
}
/* ========================= */
/* NEWS STYLES       */
/* ========================= */
.news .main-content {
    padding: 50px 10px;
    background-color: #f7f7f7;
}
.news h1 {
    padding-top: 0px;
    max-width: 100%;
}
.news .main-content .items-content {
    flex-wrap: wrap;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.item-actu {
    max-width: 600px;
    width: 100%;
    padding: 20px;
    background-color: #fff;
    height: 470px;
    margin: 20px;
    display: block;
}
.item-actu figure {
    width: 100%;
    height: 270px;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    margin-bottom: 10px;
}
.item-actu h3 {
    color: #1d1d1b;
    font-weight: 700;
    font-size: 2.1rem;
    padding-top: 0px;
    margin-bottom: 10px;
}
.item-actu p {
    margin-bottom: 0;
}
.item-actu a {
    font-weight: 700;
    color: #2b2b2b;
    font-size: 1.6rem;
}
.news-open .main-content {
    background-color: #f7f7f7;
}
.news-open h1 {
    padding-top: 50px;
    max-width: 100%;
}
.news-open .content {
    display: block;
    position: relative;
    background-color: #fff;
    padding: 20px;
    min-height: 300px;
    float: right;
}
.news-open .center {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.news-open .center, .news-open .content {
    width: 100%;
    margin-bottom: 20px;
}
.news-open .content img {
    max-width: 40%;
    max-height: 500px;
    float: right;
    margin: 0 0 20px 20px;
}
.news-open .content p {
    margin-bottom: 20px;
}
/* ========================= */
/* LEGAL NOTICE STYLES       */
/* ========================= */
.legal-notice h1 {
    color: #1d1d1b;
    padding-top: 30px;
    max-width: unset;
}
.legal-notice h2 {
    margin-bottom: 10px;
    font-size: 2.4rem;
    margin-top: 20px;
}
.legal-notice p,.legal-notice li {
    line-height: 1.7;
}
/* ========================= */
/* FOOTER STYLES       */
/* ========================= */
.button-nav-footer {
    background-color: #bd1622;
    padding: 50px 0;
}
.button-nav-footer nav, .button-nav-footer nav a {
    display: flex;
    align-items: center;
    justify-content: center;
}
.button-nav-footer nav {
    flex-wrap: wrap;
    flex-direction: row;
}
.button-nav-footer nav a:first-child {
    background-color: #e8dfe2;
    color: #1d1d1b;
}
.button-nav-footer nav a:first-child:hover {
    background-color: #ebe4e6;
    text-decoration: none;
}
.button-nav-footer nav a:hover {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
    background-color: #ff6674;
}
.button-nav-footer nav a {
    margin: 20px;
    height: 80px;
    padding: 20px;
    color: #fff;
    font-size: 1.5rem;
    width: 250px;
    border-radius: 2px;
    background-color: #ff4b5c;
    transition: all .25s ease;
    flex-direction: column;
}
.button-nav-footer nav, .button-nav-footer nav a {
    display: flex;
    align-items: center;
    justify-content: center;
}
.button-nav-footer nav a span {
    text-transform: uppercase;
    font-weight: 700;
}
footer {
    background-color: #f7f7f7;
    padding-top: 30px;
}
footer .footer-content {
    margin-bottom: 20px;
    padding-bottom: 20px;
}
footer .logo-footer {
    width: 100%;
    margin-bottom: 50px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
footer .col {
    width: 20%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}
footer .adress {
    margin-bottom: 20px;
}
footer a {
    color: #2b2b2b;
    margin: 4px 0;
}
footer a.active {
    text-decoration: underline;
}
footer .btn {
    width: 100%;
    margin-bottom: 10px;
}
footer .nav-footer h3 {
    margin-bottom: 20px;
    font-size: 1.6rem;
}
footer .nav-footer h3, footer a.link-bold {
    text-transform: uppercase;
    font-weight: 700;
    color: #1d1d1b;
}
footer a.link-bold {
    margin-bottom: 40px;
}
.copyright {
    padding: 20px;
    width: 100%;
    background-color: #fff;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.copyright a, .copyright span {
    margin: 0 10px;
}
#return-to-top {
    position: fixed;
    bottom: 10px;
    right: 10px;
    background: #ff4b5c;
    width: 48px;
    height: 48px;
    text-decoration: none;
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px;
    border-radius: 35px;
    display: none;
    /*transition: all 0.5s ease;*/
    z-index: 2000;
    text-align: center;
}
#return-to-top:hover {
    background-color: #f24757;
}
#return-to-top i {
    color: #fff;
    margin: 0;
    position: relative;
    display: inline-block;
    left: 1px;
    top: 7px;
    font-size: 35px;
}
#error404wrapper {
    margin-bottom: 50px;
}
#error404wrapper a {
    color:#f24757;
}