@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,700');
body{
    /*margin-top: 60px;*/
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
    color: #595959;
    margin-top: 80px;
    /*test*/
    overflow-x: hidden;
}
.noPnoM{
    margin: 0;
    padding: 0;
}
a{
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
}
a:hover{
    text-decoration: none;
}
.imagesShow{

}
.imgMain{
    float:left;
    margin-right: 40px;
    margin-bottom: 30px;
}
.imgMainCenter{
    clear:both;
    margin-bottom: 30px!important;
}
.imgMainRight{
    float:right;
    margin-left:40px;
    margin-bottom: 30px!important;
}
.blockTextuel{
    margin-bottom: 30px;
}
a.previewGalerie{
    display: block;
    width: 100%;
    padding-top: 100%; /* 1:1 Aspect Ratio */
    position: relative; /* If you want text inside of it */
    /*z-index:+1;*/
    background-repeat: no-repeat;
    position: center center;
    -webkit-background-size:cover;
    background-size:cover;
}
.pdfsShow{
    margin-top: 30px;
}
.pdfsShow ul{
    list-style-type:none;
    padding-left: 0;
}
#homeSlider{
    width: 100%;
    height:450px;
    margin: 0;
    margin-top: -20px;
    padding: 0;
}
#carousel-example-generic > div > div.item{
    width:100%;height:450px;
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
    -webkit-background-size:cover;
}
.carousel-control {
    position: absolute;
    top: 0px;
    /* bottom: 0; */
    height: 450px;
    left: 0;
    width: 7%;
    font-size: 20px;
    color: #fff;
    text-align: center !important;
    line-height: 450px;
    text-shadow: 0 1px 2px rgba(0,0,0,.6);
    background-color: rgba(0,0,0,0);
    filter: alpha(opacity=50);
    opacity: .5;
}

/* ------------------------------------------- *\

    RESPONSIVE IFRAME, VIDEO, MAPS ETC

\* ------------------------------------------- */


.iframe-responsive-wrapper {
    position: relative;
}

.iframe-responsive-wrapper .iframe-ratio {
    display: block;
    width: 100%;
    /*height: auto;*/
    height: 425px;
}

.iframe-responsive-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /*height: 100%;*/
    height: 400px;
}


/* burger nav */
.navbar-toggle {
    margin-right: 5px;
}
.navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 0;
}

.navbar-default .navbar-toggle:focus,
.navbar-default .navbar-toggle:hover {
    background-color: transparent;
}

.navbar-default .navbar-toggle {
    border: none;
}

.navbar-toggle span.icon-bar {
    transition: all 0.15s;
}

.navbar-toggle span:nth-child(2) {
    transform: rotate(45deg);
    transform-origin: 20% 20%;
}

.navbar-toggle span:nth-child(3) {
    opacity: 0;
}

.navbar-toggle span:nth-child(4) {
    transform: rotate(-45deg);
    transform-origin: 0% 40%;
}

.navbar-toggle.collapsed span:nth-child(2) ,
.navbar-toggle.collapsed span:nth-child(4) {
    transform: rotate(0);
}

.navbar-toggle.collapsed span:nth-child(3) {
    opacity: 1;
}

.mainContent{
    min-height:28vh;
    padding-top: 30px;
    padding-bottom: 30px;
}

/* CAROUSEL ANIMATIONS */
.carousel-control.left, .carousel-control.right {
    background-image: none;
    background-color: rgba(0,0,0,0.1);
}
.carousel-caption {
    right: 20%;
    left: 20%;
    padding-bottom: 30px;
    top: 135px;
}
.carousel-caption h2 {
    text-transform: uppercase;
}
.carousel-caption h2:first-child {
    animation-delay: .6s;
}

.carousel-caption h2:nth-child(2) {
    animation-delay: 1.4s;
}
.carousel-caption h3:first-child {
    animation-delay: .6s;
}

.carousel-caption h3:nth-child(2) {
    animation-delay: 1.4s;
}

.carousel-caption button {
    animation-delay: 2s;
}
.carousel-indicators li {
    border-radius: 0;
    margin-left: 2px;
    margin-right: 2px;
}
/* news homepage */
.blocNew{
    background-color: #78909B;
    color:#FFF;
    min-height:170px;
    padding: 15px;
    margin-bottom: 15px;
}
.padL{
    margin-left: 10px;
}
.padR{
    margin-right: 10px;
}
.blocNew h3{
    font-size: 18px;
    font-weight: 400;
    text-transform: uppercase;
}
.blocNew a{
    color:#FFF;
}
.blocNew a:hover{
    color:#FABB2D;
}
.blocNew .date{
    font-size: 16px;
    text-transform: uppercase;
}
.blocNew .contentNew{
    font-size: 12px;
}

/* nav footer */
#navFoot{
    list-style-type: none;
    margin: 0;
    padding: 0;
}
#navFoot li{
    display: inline-block;
    margin-right: 15px;
    line-height:60px;
}


/* buttons */
.btn {
    font-weight: 300;
    -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
    padding: 0.84rem 2.14rem;
    /*font-size: 0.81rem;*/
    -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    -o-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
    margin: 0.375rem;
    border: 0;
    -webkit-border-radius: 0.125rem;
    border-radius: 0.125rem;
    cursor: pointer;
    /*text-transform: uppercase;*/
    white-space: normal;
    word-wrap: break-word;
    color: #fff; }
.btn:hover, .btn:active, .btn:focus {
    -webkit-box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
    outline: 0; }
.btn:not([disabled]):not(.disabled):active, .btn:not([disabled]):not(.disabled).active {
    -webkit-box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15); }


.btn-primary {
    border-color: #4688F1;
    background-color: #4688F1;
}
.btn-primary:hover, .btn-primary:active, .btn-primary.active, .btn-primary.disabled, .btn-primary[disabled] {
    /*border-color: #2c3e50;*/
    /*background-color: #2c3e50;*/
}
.btn-info {
    border-color: #3CB6E3;
    background-color: #3CB6E3;
}
.btn-info:hover, .btn-info:active, .btn-info.active, .btn-info.disabled, .btn-info[disabled] {
    /*border-color: #2c3e50;*/
    /*background-color: #2c3e50;*/
}
.btn-warning {
    border-color: #FDBA43;
    background-color: #FDBA43;
}
.btn-warning:hover, .btn-warning:active, .btn-warning.active, .btn-warning.disabled, .btn-warning[disabled] {
    /*border-color: #2c3e50;*/
    /*background-color: #2c3e50;*/
}
.btn-danger {
    border-color: #FC464A;
    background-color: #FC464A;
}
.btn-danger:hover, .btn-danger:active, .btn-danger.active, .btn-danger.disabled, .btn-danger[disabled] {
    /*border-color: #2c3e50;*/
    /*background-color: #2c3e50;*/
}
.btn-success {
    border-color: #1FC657;
    background-color: #1FC657;
}
.btn-success:hover, .btn-success:active, .btn-success.active, .btn-success.disabled, .btn-success[disabled] {
    /*border-color: #2c3e50;*/
    /*background-color: #2c3e50;*/
}

/* FORMULAIRES */
.form-control {
    display: block;
    width: 100%;
    height: 34px;
    padding: 6px 12px;
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 0;
/*    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);*/
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}


/* PORTFOLIO STYLES */
.project__image{
    width: 100%;
    height:auto;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
}
.project__image:hover{
    transform: scale(1.05);
    -webkit-transform: scale(1.05);
}
.project{
    cursor: pointer;
    margin-bottom: 20px;
    /*height:auto;*/
    /*min-height:450px;*/
    background-color: #F5F5F5;
    overflow:hidden;
}
.project::after{
    display: none;
    content: "";
    position: relative;
    bottom: -14px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    border-width: 14px 14px 0px;
    border-style: solid;
    border-color: #F5F5F5 transparent;
    width: 0;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
}
/*.project:hover::after{*/
    /*border-color: #F5F5F5 transparent;*/
/*}*/
.project__name{
    font-size: 16px;
    font-weight: 400;
    margin: 10px 0 0 0;
    padding: 0 10px;
}
.project__description{
    font-size: 12px;
    font-weight: 300;
    padding: 10px;
}
.dateA {
    font-weight: 700;
}
.project__body{
    overflow: hidden;
}
.pb__Content{
    background-color: #F5F5F5;
    padding: 20px;
    margin: 0 0 20px 0;

}
.project .project__body{
    display: none;
    clear:float;
}
.portfolio{
    /*margin-left: -15px;*/
    /*margin-right: -15px;*/

    /*display: flex;*/
    /*flex-wrap: wrap;*/

    display:grid;
    grid-template-columns: 1fr;
    grid-column-gap: 20px;
    grid-auto-flow: row dense;
    -ms-display:grid;
    -ms-grid-template-columns: 1fr;
    -ms-grid-column-gap: 20px;
    -ms-grid-auto-flow: row dense;

}

@media screen and (min-width: 768px){
    .portfolio{
        grid-template-columns: repeat(4, 1fr);
        -ms-grid-template-columns: repeat(4, 1fr);
    }
    .portfolio .project{
        width: 100%;
    }
    .project__body{
        grid-column: span 4;
        -ms-grid-column: span 4;
    }
}
/* END PORTFOLIO STYLES */

/* MOBILES */


@media (max-width: 640px) {
    * {
        box-sizing: border-box;
    }

    /* passer body (et tous les éléments de largeur fixe) en largeur automatique */

    body {
        width: auto;
        margin: 0;
        padding: 0;
    }

    /* fixer une largeur maximale de 100% aux éléments potentiellement problématiques */

    img,
    table,
    td,
    blockquote,
    code,
    pre,
    textarea,
    input,
    iframe,
    object,
    embed,
    video {
        max-width: 100%;
    }

    /* conserver le ratio des images */

    img {
        height: auto;
    }

    /* gestion des mots longs */

    textarea,
    table,
    td,
    th,
    code,
    pre,
    samp {
        -webkit-hyphens: auto; /* césure propre */
        -moz-hyphens: auto;
        hyphens: auto;
        word-wrap: break-word; /* passage à la ligne forcé */
    }

    code,
    pre,
    samp {
        white-space: pre-wrap; /* passage à la ligne spécifique pour les éléments à châsse fixe */
    }

    /*  navbar */
    .container-fluid>.navbar-collapse, .container-fluid>.navbar-header, .container>.navbar-collapse, .container>.navbar-header {
        margin-right: -15px;
        margin-left: 0px;
    }

    /* footer */
    .footer{
        position: relative;
        height:auto;
        padding-top: 15px;
        padding-bottom: 15px;
    }
    #navFoot li{
        display: block;
        margin: auto;
        line-height:40px;
    }

}


/* ------------------------------------------- *\

    MOBILES DEVICES PHONES MAX 736PX

\* ------------------------------------------- */

@media only screen and (max-device-height: 736px) and (orientation : portrait){
    /* Styles */


}

@media only screen and (max-device-height: 736px) and (orientation : landscape){
    /* Styles */


}



/* iPads (portrait) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {

    /* Styles */


}

/* iPads (landscape) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {

    /* Styles */


}

/* iPads PRO (portrait) ----------- */
@media only screen
and (min-device-width : 1024px)
and (max-device-width : 1366px)
and (orientation : portrait)
and (-webkit-min-device-pixel-ratio : 2)  {
    /* Styles */



}

/* iPads PRO (landscape) ----------- */
@media only screen
and (min-device-width : 1024px)
and (max-device-width : 1366px)
and (orientation : landscape)
and (-webkit-min-device-pixel-ratio : 2) {
    /* Styles */



}


@media (max-device-width:768px) and (orientation: landscape) {
    html {

        -webkit-text-size-adjust: 100%;
        -ms-text-size-adjust: 100%;
    }

}


/* TEST FLOATING NAVIGATION */
/*#floatingNav{*/
    /*width: 50vw;*/
    /*height:100vh;*/
    /*background-color: rgba(0,0,0,0.85);*/
    /*color:#FFF;*/


    /*-webkit-transition: all 0.35s ease-in-out;*/
    /*-moz-transition: all 0.35s ease-in-out;*/
    /*-ms-transition: all 0.35s ease-in-out;*/
    /*-o-transition: all 0.35s ease-in-out;*/
    /*transition: all 0.35s ease-in-out;*/
/*}*/
/*#floatingNav.out{*/
    /*position: absolute;*/
    /*left: 0;*/
    /*top: 0;*/
    /*right: 0;*/
    /*bottom: 0;*/
    /*z-index: 1000000;*/
    /*transform:translateX(100vw);*/
    /*-webkit-transform:translateX(100vw);*/
/*}*/
/*#floatingNav.in{*/
    /*position: absolute;*/
    /*left: 0;*/
    /*top: 0;*/
    /*right: 0;*/
    /*bottom: 0;*/
    /*z-index: 1000000;*/
    /*transform:translateX(50vw);*/
    /*-webkit-transform:translateX(50vw);*/
/*}*/
/*#floatingNav ul{*/
    /*position: relative;*/
    /*width: 100%;*/
    /*text-align: center;*/
    /*left: 50%;*/
    /*top: 50%;*/
    /*list-style-type: none;*/
    /*margin: 0;*/
    /*padding: 0;*/
    /*transform: translate(-50%,-50%);*/
    /*-webkit-transform: translate(-50%,-50%);*/
/*}*/
/*#floatingNav ul li a{*/
    /*font-size: 3em;*/
    /*font-weight: 300;*/
    /*line-height: 2.5em;*/
    /*color:#FFF;*/
    /*text-transform: uppercase;*/
/*}*/
/*#floatingNav ul li a:hover{*/
    /*transform: scale(2);*/
    /*-webkit-transform: scale(2);*/
    /*color:#ff0000;*/
/*}*/
/*#navHide{*/
    /*position: absolute;*/
    /*top: 20px;*/
    /*right: 30px;*/
    /*font-size: 30px;*/
    /*color:#FFF;*/
/*}*/

/* menuToggle */
body{
    /*margin-top: 0!important;*/
}
#menuToggle
{
    display: block;
    position: relative;
    top: 50px;
    left: 50px;

    z-index: 1;

    -webkit-user-select: none;
    user-select: none;
}

#menuToggle input
{
    display: block;
    width: 40px;
    height: 32px;
    position: absolute;
    top: -7px;
    left: -5px;

    cursor: pointer;

    opacity: 0; /* hide this */
    z-index: 2; /* and place it over the hamburger */

    -webkit-touch-callout: none;
}

/*
 * Just a quick hamburger
 */
#menuToggle span
{
    display: block;
    width: 33px;
    height: 4px;
    margin-bottom: 5px;
    position: relative;

    background: #cdcdcd;
    border-radius: 3px;

    z-index: 1;

    transform-origin: 4px 0px;

    transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
    background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
    opacity 0.55s ease;
}

#menuToggle span:first-child
{
    transform-origin: 0% 0%;
}

#menuToggle span:nth-last-child(2)
{
    transform-origin: 0% 100%;
}

/*
 * Transform all the slices of hamburger
 * into a crossmark.
 */
#menuToggle input:checked ~ span
{
    opacity: 1;
    transform: rotate(45deg) translate(-2px, -1px);
    /*background: #232323;*/
    background: #FFF;
}

/*
 * But let's hide the middle one.
 */
#menuToggle input:checked ~ span:nth-last-child(3)
{
    opacity: 0;
    transform: rotate(0deg) scale(0.2, 0.2);
}

/*
 * Ohyeah and the last one should go the other direction
 */
#menuToggle input:checked ~ span:nth-last-child(2)
{
    transform: rotate(-45deg) translate(0, -1px);
}

/*
 * Make this absolute positioned
 * at the top left of the screen
 */
#menu
{
    box-sizing: border-box;
    position: absolute;
    /*z-index:+1;*/
    width: 50vw;
    height:auto;
    min-height: 100vh;
    margin: -100px 0 0 -50px;
    padding: 50px;
    padding-top: 125px;

    /*background: #ededed;*/
    background: rgba(238,76,91, .9);
    list-style-type: none;
    -webkit-font-smoothing: antialiased;
    /* to stop flickering of text in safari */

    transform-origin: 0% 0%;
    transform: translate(-100%, 0);

    transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
}

#menu li
{
    padding: 10px 0;
    font-size: 30px;
}
#menu li a
{
    color:#FFFFFF;
}
.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 50vw;
    padding: 5px 0;
    margin: 2px 0 0;
    font-size: 14px;
    text-align: left;
    list-style: none;
    background: rgba(238,76,91, .9);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 0px solid #ccc;
    border: 0px solid rgba(0,0,0,.15);
    border-radius: 0px;
    -webkit-box-shadow: none;
    box-shadow: none;
}

/*
 * And let's slide it in from the left
 */
#menuToggle input:checked ~ ul
{
    transform: none;
}

@media only screen and (max-device-height: 736px) and (orientation : portrait){
    /* Styles */

    #menu
    {
        width: 100vw;
    }
    .dropdown-menu {
        width: 100%;
        max-width: 450px;
    }

}