
/* ---------------------------------------------------------------------------- */
/* General */
/* ---------------------------------------------------------------------------- */

body {
    color: black;
    font: 15px/22px Arial, Helvetica;
    background: #FFF;
    -webkit-font-smoothing: antialiased;
    padding: 153px 0 0;
    margin: 0;
}
h2{
    font: 300 30px 'Raleway';
    text-transform: uppercase;
    color:#031b49;

}


::-webkit-input-placeholder {  color: #787878; }
:-moz-placeholder {  color: #787878; }
::-moz-placeholder {  color: #787878; }
:-ms-input-placeholder {  color: #787878; }

::selection { color: #fff; background: #dd2338; }
::-moz-selection { color: #fff; background: #dd2338; }

/* ---------- FONT-FACE ---------- */

@font-face{
    font-family:"Neuzeit";
    src:url("../font/4a572866-5605-49ea-ba15-94da930eb437.eot?#iefix");
    src:url("../font/4a572866-5605-49ea-ba15-94da930eb437.eot?#iefix") format("eot"),url("../font/f5e09b25-479c-4a4c-b681-5a6d440e5e38.woff") format("woff"),url("../font/5b005a1e-83eb-46ce-b33c-56b0d14d6168.ttf") format("truetype"),url("../font/85050462-ab1f-4478-a289-36eed1d3c53f.svg#85050462-ab1f-4478-a289-36eed1d3c53f") format("svg");
}

/* ---------- Links ---------- */

a { color: #e03d42; text-decoration: none; }
a:hover { color: #e03d42; text-decoration: none; }


/* ----- Clearfix ----- */

.clearfix,
.container {
    zoom: 1;
}
.clearfix:before,
.clearfix:after,
.container:before,
.container:after {
    content: "";
    display: table;
}
.clearfix:after,
.container:after {
    clear: both;
}


/* ---------- Layout ---------- */
.totop{
    background:url(../images/icon-nav-scroll-top.png);
    position:fixed;
    bottom:20px;
    right: 20px;
}

.container {
    max-width: 1000px;
    padding: 0 20px;
    margin: 0 auto;
    position: relative;
}
/* ---------- header ---------- */

.header {
    width: 100%;
    padding: 30px 0;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    background: #fff;
    -webkit-box-shadow: 0 0 5px rgba( 0, 0, 0, 0.15);
    -moz-box-shadow: 0 0 5px rgba( 0, 0, 0, 0.15);
    box-shadow: 0 0 5px rgba( 0, 0, 0, 0.15);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

/* ---------- Logo ---------- */

.header #logo {
    float: left;
    margin:0;
}

.header #logo img {
    margin:0;
    padding:0;
    width: 170px;
    max-width: 100%;
    max-height: 100%;
    border:none;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.header .main_menu {
    float: right;
    list-style: none;
    margin: 33px 0 0;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.header .main_menu li {
    float: left;
    padding: 0 25px 0 25px;
    border-right: 1px solid #cfcfcf;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.header .main_menu li:first-child {
    border-left: 1px solid #cfcfcf;
}

.header .main_menu li a {
    display: block;
    font: 400 15px/16px 'Neuzeit';
    color: #5d5b56;
    text-decoration: none;
    line-height: 35px;
    text-transform: uppercase;
    padding: 2px 0 0;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.header .main_menu li .ico {

    padding: 2px 0 0;
    font: 18px/22px 'FontAwesome';
    color:#22a27e;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.header .main_menu li a:hover {
    color: #031b49;
    cursor:pointer;
    text-decoration: none;
}
.header .main_menu li .ico:hover {
    color: #031b49;
    cursor:pointer;
    text-decoration: none;
}

/* Scrolled */
.header.scrolled { padding: 10px 0; }
.header.scrolled #logo img { width: 120px; }
.header.scrolled .main_menu { margin: 17px 0 0; }

/* Active */
.header .main_menu li.active { background: #f6c611; }
.header .main_menu li.active a { color: #fff; }


/* ---------- slider ---------- */

.slides{
    margin:0;
    padding:0;
}

.slides li{
    text-decoration: none;
    list-style:none;
    height: 510px;
    background: transparent no-repeat center center;
    border:none;
    background-size: cover;
}
.bx-prev,
.bx-next{
    width: 22px;
    height: 36px;
    background:#f6c611 url(../images/leftarrow.png) no-repeat;
    position: absolute;
    margin-left:70px;
    top: 50%;
    margin-top:-23px;
    padding:15px 10px;
    z-index: 99;
    background-position:center;
    text-indent: -9999px;
    overflow: hidden;

}
.bx-next{
    margin-right:70px;
    left:auto;
    right:0;
    padding:15px 10px;
    background:#f6c611 url(../images/rightarrow.png) no-repeat;
    background-position:center;

}
/* ---------- article ---------- */
.article {
    width:100%;
}
.article h2{
    float:left;
    text-transform: uppercase;
    font: 400 25px/28px 'Neuzeit';
    padding:140px 0 20px 0;
    width:100%;
    color:#a5a5a5;
    border-bottom:1px solid #a5a5a5;
    margin:0;
}
.article span{
    float:left;
    margin:30px 0 70px 0;
    font: 400 28px/37px 'Neuzeit';
    width:100%;
    color:#000;
}
.articlepartideux{
    width:100%;
}
.articlepartideux .col{
    width:51%;
    margin:0 50px 0 0;
    float:left;
}
.articlepartideux .coldroit{
    width:40%;
    float:left;
}
.articlepartideux .coldroit span{
    font: 400 20px/32px 'Neuzeit';

 }
.articlepartideux .col h2{
    font: 400 26px 'Neuzeit';
    color:#fff;
    width:auto;
    padding:20px;
    margin:0 0 3px 0;
    background-color:#f6c611;
    float:left;
    border:none !important;
}


/* ---------- realisation ---------- */

.realisation{
    padding: 140px 0 0;
    margin: 0;
}
.realisation h2 {
    color: #a5a5a5;
    font: 400 25px/28px 'Neuzeit';
    text-transform: uppercase;
    padding: 0 0 15px;
    margin: 0 0 45px;
    border-bottom: 1px solid #a5a5a5;
}
.article-slides {
    padding: 0;
    margin: 0;
}
.slide a {
    display: block;
    margin: 0 0 10px;
    background:#000;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.slide a img {
   border: none;
}
.slide a:hover img{
    opacity:0.7;
}


.realisation .bx-prev,
.realisation .bx-next{
    width: 40px;
    height: 66px;
    background: #f6c611 url(../images/leftarrow.png) no-repeat center center;
    top: 50%;
    left: -135px;
    padding: 0;
    background-position: center;
    text-indent: -9999px;
    overflow: hidden;
    margin-top: -33px;
}
.realisation .bx-next{
    left: auto;
    right: -135px;
    background: #f6c611 url(../images/rightarrow.png) no-repeat center center;
}
.realisation .bx-prev:hover,
.realisation .bx-next:hover {
    background-color: #000;
}

/* ---------- contact ---------- */

.contact h2{
    float:left;
    text-transform: uppercase;
    font: 400 25px/28px 'Neuzeit';
    padding:140px 0 20px 0;
    width:100%;
    color:#a5a5a5;
    border-bottom:1px solid #a5a5a5 ;
    margin:0;
}
#map_canvas{
margin:40px 0 0 0;
float:left;
padding-bottom:45px !important;
height: 375px;
width:100%;
}
.infocontact{
    padding:40px 0 40px 0;
    margin:40px 0 0 0 ;
    border-top:1px solid #a5a5a5;
    border-bottom:1px solid #a5a5a5;
    height:auto;
    width:auto;
}
.infocontact img{
    float:left;
    margin:0 90px 0 35px;
}
.infocontact .adress,
.infocontact .tel{
    float:left;
    font: 400 18px/32px 'Neuzeit';
}
.infocontact .tel{
   margin:0 0 0 100px;
}

/* ---------- copyright ---------- */

.copyright{
    width:100%;
    margin:40px 0 0 0;
}
.copyright span{
    float:left;
    left:0;
    color:#a5a5a5;
    font: 400 12px/32px 'Neuzeit';
}
.copyright span:last-child{
   float:right;
    left:auto;
    right:0;
}
/* ---------- Tablet portrait (Vertical) ---------- */
@media screen and (max-width: 1160px) {

    .realisation .bx-next,
    .realisation .bx-prev {
        width: 30px;
        height: 50px;
        right: 0;
        top: -105px;
        margin: 0 !important;
        background-size: 55% auto;
    }
    .realisation .bx-prev {
        left: auto;
        right: 45px;
    }

    .infocontact .adress, .infocontact .tel{
        font: 400 15px/22px 'Neuzeit';
        margin-top:30px;
    }
    .infocontact .tel{
        margin:30px 0 0 65px;
    }
    .infocontact img{
        margin:0 100px 0 40px;
    }
}

/* ---------- Mobile landscape (Horizontal) ---------- */
@media screen and (max-width: 767px) {



    .header #logo {
          margin:0 auto;

      }
    .header #logo img{
        margin:0 auto;
        display:block;

    }
    .header .main_menu{
        float:left;
        font: 400 15px/22px 'Neuzeit';
        margin: 35px 0 0;
    }
    .header .main_menu li{
        text-align: center;
        border-left:1px solid #a5a5a5;
        margin-bottom: 30px;
        margin-right: auto;
    }
    .header .main_menu li a{
        font: 400 15px/22px 'Neuzeit';
    }
    .infocontact  img{
        float:none;
        margin:0 auto 20px;
        display:block;
        position: static;
        width:auto;
        max-width:15%;
    }
    .infocontact .adress{
        font: 400 15px/22px 'Neuzeit';
        width:100%;
        margin:0;
        text-align: center;

    }
    .infocontact .adress span{
        float:none;
    }
    .infocontact .tel{
        font: 400 15px/22px 'Neuzeit';
        text-align: center;
        width:100%;
        margin:0;
    }
    .articlepartideux .col h2,
    .articlepartideux .coldroit span {
        font: 400 20px/25px 'Neuzeit';
    }
    .realisation{
        margin-top:0px;
    }
    .article span{
        font: 400 24px/28px 'Neuzeit';
    }
    /* ---------- title ---------- */

    .article h2, .realisation h2,  .contact h2{
        font: 400 30px/28px 'Neuzeit';
    }

}

/* ---------- Mobile portrait (Vertical) ---------- */
@media screen and (max-width: 715px) {
    .header{
        padding:10px 0;
    }
    .header #logo {
        margin: 0 auto;
        padding:0;
    }
    .header.scrolled #logo img,
    .header #logo img {
        width: 80px;
    }
    .header .main_menu{
        margin:10px 0 0;
        padding:0;
        float:none;
    }
    .header .main_menu li,
    .header .main_menu li:first-child{
        margin:0;
        padding:0;
        margin-bottom:5px;
        width:33%;
    border:none;

    }
    .header .main_menu li a{
        font: 400 13px/25px 'Neuzeit' !important;
    }
    .header #logo {
        float: none;
        position: static;

    }

    .articlepartideux .col  {
        margin:5px 0px;
        float:none;
        width:auto;
    }
    .articlepartideux .col h2,
    .articlepartideux .coldroit
    {
              float:none;
              width:auto;
          }
    .articlepartideux .coldroit{
        padding:20px 0 0 ;
    }
    .article h2,
    .realisation h2,
    .contact h2{
        font: 400 25px/28px 'Neuzeit';
    }
    .article span{
        font: 400 20px/28px 'Neuzeit';
        margin-bottom:40px;
    }
    .articlepartideux .col h2,
    .articlepartideux .coldroit span {
        font: 400 18px/25px 'Neuzeit';
    }
    .infocontact  img{
        float:none;
        margin:0 auto 20px;
        display:block;
        position: static;
        width:auto;
        max-width:15%;
    }
    .infocontact .adress{
        font: 400 15px/22px 'Neuzeit';
        width:100%;
        margin:0;
        text-align: center;

    }
    .infocontact .adress span{
    float:none;
    }
    .infocontact .tel{
        font: 400 15px/22px 'Neuzeit';
        text-align: center;
        width:100%;
        margin:0;
    }
    .copyright span:last-child,
    .copyright span{
        float:left;
        margin:0 20px 0;
    }
}
@media screen and (max-width : 435px) {

    /* Styles */
    .bx-prev,
    .bx-next{
        margin-left:20px !important;
        padding:10px 5px;
    }
    .bx-next{
        margin-right:20px !important;
        padding:10px 5px;
    }
    .header.scrolled .main_menu,
    .header .main_menu {
        margin: 0;
    }
    .header .main_menu li ,
    .header .main_menu li:first-child{
        width:100%;
    text-align: center;
        margin:5px 0 0;
    }
    .header .main_menu:hover ,
    .header .main_menu li:hover ,
    .header .main_menu li a:hover{
    background-color: #f6c611;
    }
    .header .main_menu li a{
        font: 400 14px/28px 'Neuzeit' !important;
    }
    .realisation h2{
        padding-top:40px;
    }
    .contact h2 {
        padding-top:180px;
    }
    #map_canvas {
        margin: 20px 0 0 0;
    }
    .infocontact {
        padding: 20px 0 20px 0;
        margin: 20px 0 0 0;
    }
    .copyright{
        margin: 20px 0 0 0;
    }

    .article h2 {
        padding:180px 0 0;
    }
    .articlepartideux .col h2{
        padding:10px;
    }
    .article h2,
    .realisation h2,
    .contact h2{
        font: 400 15px/28px 'Neuzeit';
    }
    .articlepartideux .col h2,
    .articlepartideux .coldroit span {
        font: 400 14px/25px 'Neuzeit';
    }
    .article span{
        font: 400 15px/28px 'Neuzeit';
        margin-bottom:20px;
    }
    .copyright span:last-child,
    .copyright span{
        text-align: center;
        font: 400 10px/18px 'Neuzeit';

    }
    .realisation{
        padding-top:160px;
    }
    .slide div,
    .slide div:nth-child(4n){
        width:48%;
        margin:0 4% 10px 0;
    }
    .slide div:nth-child(2n){
        margin-right:0;
    }
    .slides li{
        height: 300px;
    }
}