/*-----------------------------------------------------------------------------------------------------
    [Master Stylesheet]
		by : mr-rayures.com
    Version : 1.0

    Projet :

    Global namespace : BEM
    DOC : http://bradfrost.com/blog/post/css-architecture-for-design-systems/
-------------------------------------------------------------------------------------------------------*/
/*
* Let's import basic stuff
*/
/*-----------------------------------------------------------------------------------------------------
    [variables]
-------------------------------------------------------------------------------------------------------*/
/*
* Breackpoint
*/
/*$medium        : 960px;*/
/*
* Typo
*/
/*
* Layout
*/
/*-----------------------------------------------------------------------------------------------------
    [mixins]
-------------------------------------------------------------------------------------------------------*/
/*
* Media queries
* Doc : TODO
*/
/*-----------------------------------------------------------------------------------------------------
    [colors]
-------------------------------------------------------------------------------------------------------*/
/* Application colors */
/* Typography colors */
/* Shades of grey */
/* Alerts colors */
/* Social colors */
/*-----------------------------------------------------------------------------------------------------
    [carousel]
-------------------------------------------------------------------------------------------------------*/
.cs-m-carousel--hp
{
    max-width: 2400px;
    margin-right: auto;
    margin-left: auto;
}
@media (min-width: 1441px)
{
    .cs-m-carousel--hp .swiper-slide
    {
        /*max-height: 490px;*/
        overflow: hidden;
    }
}

.cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_content
{
    position: relative;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    width: 100%;
    /*ie11 bug*/
}
.cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_content img
{
    width: 100%;
}
/*@media (min-width: 1441px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_content
    {
        top: 50%;

        -webkit-transform: translate(0, -50%);

        -ms-transform: translate(0, -50%);

        transform: translate(0, -50%);
    }
}*/
@media (max-width: 980px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_content
    {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_part1
{
    position: relative;

    width: 21.8%;
}
@media (max-width: 980px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_part1
    {
        display: none;
    }
}

.cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_part2
{
    position: relative;

    width: 22.22%;
}
@media (max-width: 980px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_part2
    {
        position: relative;
        top: -1px;

        display: block;
        overflow: hidden;

        width: 100%;
        padding: 285px 0 0 0;
        /*pour eviter les demi pixel entre les visuels*/
    }
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_part2 picture
    {
        position: absolute;
        top: 50%;
        left: 50%;

        width: 100%;

        -webkit-transform: translate(-50%, -50%);

        -ms-transform: translate(-50%, -50%);

        transform: translate(-50%, -50%);
    }
}
@media (max-width: 768px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_part2
    {
        padding: 240px 0 0 0;
    }
}
@media (max-width: 450px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_part2
    {
        padding: 300px 0 0 0;
    }
}

.cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_part3
{
    position: relative;

    width: 55.97%;
}
@media (max-width: 980px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_part3
    {
        display: block;
        overflow: hidden;

        width: 100%;
        padding: 72% 0 0 0;

        -webkit-box-ordinal-group: 0;

        -webkit-order: -1;

        -ms-flex-order: -1;

        order: -1;
    }
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_part3 picture
    {
        position: absolute;
        top: 50%;
        left: 50%;

        width: 100%;

        -webkit-transform: translate(-50%, -50%);

        -ms-transform: translate(-50%, -50%);

        transform: translate(-50%, -50%);
    }
}

.cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_text
{
    position: absolute;
    z-index: 2;
    top: 47%;
    left: 50%;

    display: block;

    width: 100%;
    padding: 0 10px;

    -webkit-transform: translate(-50%, -50%);

    -ms-transform: translate(-50%, -50%);

    transform: translate(-50%, -50%);
    text-align: center;
}
.cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_text .cs-m-carousel_title
{
    font-size: 40px;
}
.cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_text p
{
    font-size: 16px;

    width: 100%;
    padding: 10px 0 30px 0;
}
@media (min-width: 981px) and (max-width: 1180px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_text p br
    {
        display: none;
    }
}

@media (max-width: 768px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_text .cs-m-carousel_title
    {
        font-size: 30px;
    }
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_text p
    {
        display: inline;
        /* espace au dessus du bt crÃ©Ã© par cs-m-carousel_desc en prod */
    }
    .cs-m-carousel--hp .cs-m-carousel_item--3part .cs-m-carousel_text br
    {
        display: none;
    }
}

.cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_visuel
{
    width: 100%;
}
.cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_visuel img
{
    width: 100%;
}
@media (max-width: 980px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_visuel
    {
        /*pour eviter les demi pixel entre les visuels*/
        position: relative;

        overflow: hidden;
        /*padding-top:calc(72% + 285px);*/

        padding-top: calc(
            72% + 284px);
    }
    .cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_visuel img
    {
        position: absolute;
        top: 50%;
        left: 50%;

        -webkit-transform: translate(-50%, -50%);

        -ms-transform: translate(-50%, -50%);

        transform: translate(-50%, -50%);
    }
}
@media (max-width: 768px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_visuel
    {
        /*padding-top:calc(72% + 240px);*/
        padding-top: calc(
            72% + 239px);
        /*pour eviter les demi pixel entre les visuels*/
    }
}

.cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_text
{
    position: absolute;
    z-index: 2;
    top: 47%;
    left: 50%;

    display: block;

    width: 90%;

    -webkit-transform: translate(-50%, -50%);

    -ms-transform: translate(-50%, -50%);

    transform: translate(-50%, -50%);
    text-align: center;
}
.cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_text .cs-m-carousel_title
{
    font-family: 'Muli', sans-serif;
    font-size: 50px;
    font-weight: normal;
    line-height: 1;
}
@media (max-width: 980px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_text .cs-m-carousel_title
    {
        font-size: 50px;

        margin: 0 0 10px 0;
    }
}
.cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_text p
{
    font-size: 16px;

    width: 100%;
    /*font-size:1.11vw;
			@include mq(0,2200px) {font-size: 24px}*/
    padding: 10px 0 30px 0;
}
@media (max-width: 1320px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_text p br
    {
        display: initial;
    }
}
@media (max-width: 980px)
{
    .cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_text p
    {
        width: 100%;
        max-width: 100%;
        margin: auto;
        padding: 0 20px 30px 20px;
    }
    .cs-m-carousel--hp .cs-m-carousel_item--full_width .cs-m-carousel_text p br
    {
        display: none;
    }
}

.cs-m-carousel--actualite .swiper-slide.cs-m-carousel_item
{
    height: initial;

    background: #fff;
}

.cs-m-carousel--actualite .cs-m-carousel_title
{
    font-size: 16px;

    min-height: 60px;
    padding: 15px;

    text-align: center;
}

.cs-m-carousel--actualite .cs-m-carousel_img
{
    width: 100%;
}

@media (min-width: 981px)
{
    .cs-m-carousel--actualite .swiper-container
    {
        overflow: visible;
    }
    .cs-m-carousel--actualite .swiper-wrapper
    {
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .cs-m-carousel--actualite .swiper-slide.cs-m-carousel_item
    {
        width: calc(33% - 12.5px);
    }
    .cs-m-carousel--actualite .swiper-slide.cs-m-carousel_item:hover
    {
        box-shadow: 0 4px 16px 0 rgba(0, 0, 0, .06);
    }
}

@media (max-width: 980px)
{
    .cs-m-carousel--actualite
    {
        margin: 0 -20px;
    }
    .cs-m-carousel--actualite .swiper-slide.cs-m-carousel_item
    {
        width: 33.6%;
        margin: 0 3.1% 10px 0;

        box-shadow: 0 4px 10px 0 rgba(0, 0, 0, .05);
    }
    .cs-m-carousel--actualite .swiper-slide.cs-m-carousel_item:first-child
    {
        margin-left: 13%;
    }
    .cs-m-carousel--actualite .swiper-slide.cs-m-carousel_item:last-child
    {
        margin-right: 13%;
    }
}

@media (max-width: 450px)
{
    .cs-m-carousel--actualite
    {
        margin: 0 -20px;
    }
    .cs-m-carousel--actualite .swiper-slide.cs-m-carousel_item
    {
        width: 71.6%;
        margin: 0 7% 10px 0;

        box-shadow: 0 4px 10px 0 rgba(0, 0, 0, .05);
    }
    .cs-m-carousel--actualite .swiper-slide.cs-m-carousel_item:first-child
    {
        margin-left: 7%;
    }
    .cs-m-carousel--actualite .swiper-slide.cs-m-carousel_item:last-child
    {
        margin-right: 7%;
    }
}

@media (min-width: 981px)
{
    .cs-m-carousel--instagram .swiper-container
    {
        overflow: visible;
    }
}

@media (max-width: 980px)
{
    .cs-m-carousel--instagram
    {
        margin: 0 -20px;
    }
    .cs-m-carousel--instagram .swiper-slide.cs-m-carousel_item:first-child
    {
        margin-left: 20px;
    }
    .cs-m-carousel--instagram .swiper-slide.cs-m-carousel_item:last-child
    {
        margin-right: 20px;
    }
}

/*-----------------------------------------------------------------------------------------------------
    [category]
-------------------------------------------------------------------------------------------------------*/
.cs-m-category
{
    width: calc(100% + 100px);
    max-width: 1280px;
    margin: 0 -50px 110px -50px;
}
@media (max-width: 1240px)
{
    .cs-m-category
    {
        width: 100%;
        margin: 0 auto 40px;
        padding: 20px 0;
    }
}

.cs-m-category_list
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;

    -webkit-align-items: center;

    -ms-flex-align: center;

    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}
@media (min-width: 769px)
{
    .cs-m-category_list
    {
        margin: 0 0 0 -20px;
    }
}
@media (max-width: 768px)
{
    .cs-m-category_list
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;

        width: auto;
    }
}

.cs-m-category_item
{
    position: relative;

    overflow: hidden;
}
@media (min-width: 769px)
{
    .cs-m-category_item
    {
        margin: 0 0 0 20px;
        /*width:calc(50% - 20px);*/

        -webkit-box-flex: 1;

        -webkit-flex-grow: 1;

        -ms-flex-positive: 1;

        flex-grow: 1;
    }
}
@media (max-width: 768px)
{
    .cs-m-category_item
    {
        overflow: hidden;

        width: 100%;
        max-width: 600px;
        margin: 0 0 20px 0;
        padding-top: 67%;
    }
}

.cs-m-category_img
{
    position: relative;

    width: 100%;

    -webkit-transition: all ease .5s;

    transition: all ease .5s;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
}
.cs-m-category_img img
{
    width: 100%;
}
@media (max-width: 768px)
{
    .cs-m-category_img
    {
        position: absolute;
        top: 50%;
        left: 50%;

        -webkit-transform: translate(-50%, -50%);

        -ms-transform: translate(-50%, -50%);

        transform: translate(-50%, -50%);
    }
}
.cs-m-category_item:hover .cs-m-category_img
{
    -webkit-transform: scale(1.2, 1.2);
    -ms-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
}
@media (max-width: 768px)
{
    .cs-m-category_item:hover .cs-m-category_img
    {
        -webkit-transform: scale(1.2, 1.2) translate(-40%, -40%);
        -ms-transform: scale(1.2, 1.2) translate(-40%, -40%);
        transform: scale(1.2, 1.2) translate(-40%, -40%);
    }
}

h2.cs-m-category_title
{
    font-family: 'Muli', sans-serif;
    font-size: 28px;
    font-weight: 500;
    line-height: 1.2;

    position: absolute;
    z-index: 1;
    bottom: 5px;
    left: 0;

    min-height: 80px;
    padding: 0 20px 0 40px;

    color: #fff;
}
h2.cs-m-category_title:before
{
    position: absolute;
    z-index: -1;
    top: 5px;
    left: 20px;

    display: block;

    width: 1px;
    height: 100%;

    content: '';
    -webkit-transition: all .5s ease;
    transition: all .5s ease;

    background-color: #fff;
}
.cs-m-category_item:hover h2.cs-m-category_title:before
{
    display: block;

    content: '';
    -webkit-transition: all 1s ease;
    transition: all 1s ease;

    opacity: .5;
}
@media (max-width: 980px)
{
    h2.cs-m-category_title
    {
        font-size: 19px;

        min-height: 70px;
    }
}
@media (max-width: 768px)
{
    h2.cs-m-category_title
    {
        font-size: 24px;

        min-height: 66px;
    }
}

.cs-m-video
{
    position: relative;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    width: calc(100% + 100px);
    max-width: 1280px;
    margin: 0 -50px 110px;
}
@media (max-width: 1240px)
{
    .cs-m-video
    {
        width: 100%;
        margin: 0 auto 80px;
    }
}
@media (max-width: 980px)
{
    .cs-m-video
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}
@media (max-width: 768px)
{
    .cs-m-video
    {
        width: 100vw;
        margin: 0 -20px 40px;
    }
}

.cs-m-video_text
{
    position: relative;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;

    width: 45%;
    padding: 0 40px;

    -webkit-box-pack: center;

    -webkit-justify-content: center;

    -ms-flex-pack: center;

    justify-content: center;
}
.cs-m-video_text p
{
    padding: 5px 0 30px;
}
@media (max-width: 980px)
{
    .cs-m-video_text
    {
        width: 100%;
        max-width: 610px;
        margin: auto;
        padding: 55px 40px;
    }
}
@media (max-width: 768px)
{
    .cs-m-video_text .cs-m-video_button
    {
        text-align: center;
    }
}

.cs-m-video_title
{
    font-size: 30px;
    line-height: 1;

    position: relative;

    color: #ab8523;
}
.cs-m-video_title:after
{
    position: absolute;
    z-index: 2;
    bottom: calc(100% - 27px);
    left: -20px;

    display: block;

    width: 1px;
    height: 120px;

    content: '';

    background-color: #ab8523;
}

.cs-m-video_video-wrapper
{
    width: 55%;
}
@media (max-width: 980px)
{
    .cs-m-video_video-wrapper
    {
        width: 100%;
        max-width: 610px;
        margin: auto;

        -webkit-box-ordinal-group: 0;

        -webkit-order: -1;

        -ms-flex-order: -1;

        order: -1;
    }
}

.cs-m-video_video
{
    position: relative;

    overflow: hidden;

    padding: 56% 0 0 0;
}

iframe
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 100%;
    height: 100%;

    -webkit-transform: translate(-50%, -50%);

    -ms-transform: translate(-50%, -50%);

    transform: translate(-50%, -50%);
}

.cs-m-video_fond
{
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;

    overflow: hidden;

    width: 50vw;
    max-height: 300px;
    padding: 23% 0 0 0;

    -webkit-transform: translate(-50vw, -50%);

    -ms-transform: translate(-50vw, -50%);

    transform: translate(-50vw, -50%);
}
.cs-m-video_fond img
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 100%;

    -webkit-transform: translate(-50%, -50%);

    -ms-transform: translate(-50%, -50%);

    transform: translate(-50%, -50%);
}
@media (max-width: 980px)
{
    .cs-m-video_fond
    {
        top: 20%;
        bottom: 0;

        width: 100vw;
        height: 80%;
        max-height: unset;

        -webkit-transform: translate(-50%, 0);

        -ms-transform: translate(-50%, 0);

        transform: translate(-50%, 0);
    }
}
@media (max-width: 768px)
{
    .cs-m-video_fond img
    {
        width: 100vw;
        max-width: unset;
        height: 100%;
    }
}

@media (min-width: 981px)
{
    .has-js .cs-m-video.to_animate .cs-m-video_title:after
    {
        -webkit-transform: scale(.01);
        -ms-transform: scale(.01);
        transform: scale(.01);
    }
    .has-js .cs-m-video.to_animate .cs-m-video_title span
    {
        -webkit-transition: 0s opacity ease;
        transition: 0s opacity ease;

        opacity: 0;
    }
    .has-js .cs-m-video.to_animate .cs-m-video_text p
    {
        -webkit-transform: translate(-30px, 0);
        -ms-transform: translate(-30px, 0);
        transform: translate(-30px, 0);

        opacity: 0;
    }
    .has-js .cs-m-video.to_animate .cs-m-video_text .cs-m-video_button
    {
        -webkit-transform: translate(-30px, 0);
        -ms-transform: translate(-30px, 0);
        transform: translate(-30px, 0);

        opacity: 0;
    }
    .has-js .cs-m-video:not(.to_animate) .cs-m-video_title:after
    {
        -webkit-transition: .4s transform ease;
        transition: .4s transform ease;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: top;
        -ms-transform-origin: top;
        transform-origin: top;
    }
    .has-js .cs-m-video:not(.to_animate) .cs-m-video_title span
    {
        -webkit-transition: .4s opacity .2s ease;
        transition: .4s opacity .2s ease;

        opacity: 1;
    }
    .has-js .cs-m-video:not(.to_animate) .cs-m-video_text p
    {
        -webkit-transition: .4s all .2s ease;
        transition: .4s all .2s ease;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);

        opacity: 1;
    }
    .has-js .cs-m-video:not(.to_animate) .cs-m-video_text .cs-m-video_button
    {
        -webkit-transition: .4s all .2s ease;
        transition: .4s all .2s ease;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);

        opacity: 1;
    }
}

/*textimgside*/
.cs-m-textimgside
{
    position: relative;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;

    margin: 0 0 110px;
}
@media (max-width: 980px)
{
    .cs-m-textimgside
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;

        width: 100vw;
        margin: 0 -20px 80px;
    }
}

.cs-m-textimgside_text
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;

    width: 55%;
    padding: 0 40px 0 40px;

    -webkit-box-pack: center;

    -webkit-justify-content: center;

    -ms-flex-pack: center;

    justify-content: center;
}
@media (max-width: 980px)
{
    .cs-m-textimgside_text
    {
        width: 100%;
        padding: 0 40px 0 0;
    }
}

.cs-m-textimgside_title
{
    font-size: 30px;
    line-height: 1;

    position: relative;

    color: #be8b20;
}
.cs-m-textimgside_title:after
{
    position: absolute;
    z-index: 2;
    bottom: calc(100% - 27px);
    left: -20px;

    display: block;

    width: 1px;
    height: 120px;

    content: '';

    background-color: #be8b20;
}

.cs-m-textimgside_button
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

    -ms-flex-pack: justify;

    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
@media (max-width: 768px)
{
    .cs-m-textimgside_button
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;

        -webkit-box-align: center;

        -webkit-align-items: center;

        -ms-flex-align: center;

        align-items: center;
    }
    .cs-m-textimgside_button a
    {
        margin: 0 0 20px 0;
    }
}

.cs-m-textimgside_textinner
{
    position: relative;

    max-width: 420px;
    padding: 64px 0 64px 40px;
}
@media (max-width: 980px)
{
    .cs-m-textimgside_textinner
    {
        position: initial;

        width: 100%;
        margin: auto;
        padding: 55px 0 55px 40px;
        /*pour le placement du after par rapport au parent*/
    }
}
.cs-m-textimgside_textinner p
{
    max-width: 420px;
    padding: 5px 0 30px;
}
.cs-m-textimgside_textinner:after
{
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: -40px;

    display: block;

    width: 70vw;

    content: '';

    background-color: #f7f4f2;
}
@media (max-width: 980px)
{
    .cs-m-textimgside_textinner:after
    {
        top: 25%;
        bottom: 0;
        left: 0;

        width: 100vw;
        max-height: initial;

        -webkit-transform: translate(0, 0);

        -ms-transform: translate(0, 0);

        transform: translate(0, 0);
    }
}

.cs-m-textimgside_image
{
    width: 45%;
}
@media (max-width: 980px)
{
    .cs-m-textimgside_image
    {
        width: 100%;
        max-width: 610px;
        margin: auto;

        -webkit-box-ordinal-group: 0;

        -webkit-order: -1;

        -ms-flex-order: -1;

        order: -1;
    }
    .cs-m-textimgside_image .cs-m-textimgside_imageinner
    {
        position: relative;

        overflow: hidden;

        padding-top: 56%;
    }
}
.cs-m-textimgside_image img
{
    width: 100%;
}
@media (max-width: 980px)
{
    .cs-m-textimgside_image img
    {
        position: absolute;
        top: 50%;
        left: 50%;

        -webkit-transform: translate(-50%, -50%);

        -ms-transform: translate(-50%, -50%);

        transform: translate(-50%, -50%);
    }
}

@media (min-width: 981px)
{
    .has-js .cs-m-textimgside.to_animate .cs-m-textimgside_title:after
    {
        -webkit-transform: scale(.01);
        -ms-transform: scale(.01);
        transform: scale(.01);
    }
    .has-js .cs-m-textimgside.to_animate .cs-m-textimgside_title span
    {
        -webkit-transition: 0s opacity ease;
        transition: 0s opacity ease;

        opacity: 0;
    }
    .has-js .cs-m-textimgside.to_animate .cs-m-textimgside_text p
    {
        -webkit-transform: translate(-30px, 0);
        -ms-transform: translate(-30px, 0);
        transform: translate(-30px, 0);

        opacity: 0;
    }
    .has-js .cs-m-textimgside.to_animate .cs-m-textimgside_text .cs-m-textimgside_button
    {
        -webkit-transform: translate(-30px, 0);
        -ms-transform: translate(-30px, 0);
        transform: translate(-30px, 0);

        opacity: 0;
    }
    .has-js .cs-m-textimgside:not(.to_animate) .cs-m-textimgside_title:after
    {
        -webkit-transition: .4s transform ease;
        transition: .4s transform ease;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: top;
        -ms-transform-origin: top;
        transform-origin: top;
    }
    .has-js .cs-m-textimgside:not(.to_animate) .cs-m-textimgside_title span
    {
        -webkit-transition: .4s opacity .2s ease;
        transition: .4s opacity .2s ease;

        opacity: 1;
    }
    .has-js .cs-m-textimgside:not(.to_animate) .cs-m-textimgside_text p
    {
        -webkit-transition: .4s all .2s ease;
        transition: .4s all .2s ease;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);

        opacity: 1;
    }
    .has-js .cs-m-textimgside:not(.to_animate) .cs-m-textimgside_text .cs-m-textimgside_button
    {
        -webkit-transition: .4s all .2s ease;
        transition: .4s all .2s ease;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);

        opacity: 1;
    }
}

/*-----------------------------------------------------------------------------------------------------
    [actualite]
-------------------------------------------------------------------------------------------------------*/
.cs-m-actualite
{
    position: relative;

    margin: 0 0 75px 0;
}
.cs-m-actualite:after
{
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 50%;

    width: 100vw;
    height: 50%;

    content: '';
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);

    background: #fbf7f6;
}
@media (max-width: 768px)
{
    .cs-m-actualite
    {
        margin: 0 0 30px 0;
    }
}

.cs-m-actualite_title
{
    font-family: 'Muli', sans-serif;
    font-size: 34px;

    padding: 0 0 40px 0;

    text-align: center;
}
@media (max-width: 450px)
{
    .cs-m-actualite_title
    {
        font-size: 26px;

        padding: 0 0 30px 0;
    }
}

.cs-m-actualite_button
{
    padding: 35px 0;

    text-align: center;
}

@media (min-width: 981px)
{
    .has-js .cs-m-actualite.to_animate .cs-m-carousel_item
    {
        -webkit-transition: 0s opacity ease;
        transition: 0s opacity ease;

        opacity: 0;
    }
    .has-js .cs-m-actualite:not(.to_animate) .cs-m-carousel_item:nth-child(1)
    {
        -webkit-transition: .5s opacity ease;
        transition: .5s opacity ease;

        opacity: 1;
    }
    .has-js .cs-m-actualite:not(.to_animate) .cs-m-carousel_item:nth-child(2)
    {
        -webkit-transition: .5s opacity .4s ease;
        transition: .5s opacity .4s ease;

        opacity: 1;
    }
    .has-js .cs-m-actualite:not(.to_animate) .cs-m-carousel_item:nth-child(3)
    {
        -webkit-transition: .5s opacity .8s ease;
        transition: .5s opacity .8s ease;

        opacity: 1;
    }
}

/*-----------------------------------------------------------------------------------------------------
    [instagram]
-------------------------------------------------------------------------------------------------------*/
.cs-m-instagram
{
    position: relative;

    display: block;

    width: 100%;
    margin: auto;
    padding: 0;
}
.cs-m-instagram + hr
{
    margin: 30px 20px;
}
@media (max-width: 980px)
{
    .cs-m-instagram
    {
        margin: 0 auto 55px auto;
    }
}
@media (max-width: 450px)
{
    .cs-m-instagram
    {
        margin: 0 auto 55px auto;
    }
}

.cs-m-instagram_title
{
    font-family: 'Muli', sans-serif;
    font-size: 26px;
    line-height: 1;

    display: -webkit-box;

    display: -webkit-flex;

    display: -ms-flexbox;

    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;

    margin: 0 0 10px 0;

    vertical-align: center;

    color: #222;

    -webkit-box-align: center;

    -webkit-align-items: center;

    -ms-flex-align: center;

    align-items: center;
}
.cs-m-instagram_title .icon
{
    font-size: 32px;

    position: relative;
    top: 0;

    margin: 5px;
}

.cs-m-instagram_baseline
{
    font-size: 16px;

    margin: 0 0 20px 0;

    text-align: center;

    color: #222;
}

.cs-m-instagram_item img
{
    width: 100%;
}

@media (min-width: 981px)
{
    .cs-m-instagram_list
    {
        position: relative;

        display: -webkit-box;

        display: -webkit-flex;

        display: -ms-flexbox;

        display: flex;

        width: calc(100% + 25px);
        margin-left: -25px;

        -webkit-flex-wrap: wrap;

        -ms-flex-wrap: wrap;

        flex-wrap: wrap;
    }
    .cs-m-instagram_item
    {
        position: relative;

        width: calc(25% - 25px);
        margin-left: 25px;
    }
    .cs-m-instagram_item a
    {
        position: relative;

        display: block;
    }
    .cs-m-instagram_item:nth-child(3)
    {
        width: calc(50% - 25px);
    }
    .cs-m-instagram_list .cs-m-instagram_item:nth-child(4)
    {
        position: absolute;
        bottom: 0;
        left: 0;
    }
    .cs-m-instagram_list .cs-m-instagram_item:nth-child(5)
    {
        position: absolute;
        bottom: 0;
        left: 25%;
    }
}

@media (max-width: 980px)
{
    .cs-m-instagram_list
    {
        position: relative;

        padding: 0;
    }
    .cs-m-instagram_item
    {
        position: relative;

        width: 25.3%;
        margin: 0 2.6% 0 0;
    }
}

@media (max-width: 450px)
{
    .cs-m-instagram_list
    {
        position: relative;

        padding: 0;
    }
    .cs-m-instagram_item
    {
        position: relative;

        width: 38.88%;
        margin: 0 4.4% 0 0;
    }
}

.cs-m-instagram_infos
{
    position: absolute;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;

    background-color: transparent;

    -webkit-box-align: center;

    -webkit-align-items: center;

    -ms-flex-align: center;

    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.cs-m-instagram_infos span
{
    font-size: 16px;

    margin: 0 10px;

    color: #fff;
}
.cs-m-instagram_infos .icon
{
    font-size: 18px;

    margin: 0 10px 0 0;

    vertical-align: middle;
}

.cs-m-instagram_item:hover .cs-m-instagram_infos
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.cs-m-seo
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;

    max-width: 1100px;
    margin: 40px 0;
    padding: 0 10% 0 10%;

    -webkit-box-pack: justify;

    -webkit-justify-content: space-between;

    -ms-flex-pack: justify;

    justify-content: space-between;
}
@media (max-width: 768px)
{
    .cs-m-seo
    {
        padding: 0 40px 0 40px;
    }
}
@media (max-width: 450px)
{
    .cs-m-seo
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;

        padding: 0;
    }
}

.cs-m-seo_item
{
    width: 42.3%;
}
@media (max-width: 450px)
{
    .cs-m-seo_item
    {
        width: 100%;
        margin: 0 0 35px 0;
    }
}
.cs-m-seo_item p
{
    font-size: 12px;

    text-align: left;
}

.cs-m-seo_title
{
    font-family: 'Muli', sans-serif;
    font-size: 18px;
    font-weight: normal;

    margin: 0 0 10px 0;
}


.cs-m-videohp
{
    margin: 0 auto 40px auto;

    background-position: center;
    background-size: cover;
}

.cs-m-videohp_container.iframe
{
    position: relative;
    overflow: hidden;
    padding: 40.5% 0 0 0;
}

.cs-m-videohp video
{
    position: absolute;
    top: 50%;
    /* Vertical and Horizontal center*/
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@media (max-width: 980px)
{
    .cs-m-videohp_container
    {
        height: 100vh;
        padding: 0;
    }
}

@media (max-width: 440px) {
    .cs-m-videohp_container video
    {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 95%;
    }

    .cs-m-videohp_container {
        height: 70vh;
        padding: 0;
    }

    iframe {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

}


