/* FIXES */
html { margin:0; padding:0;}
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.clearfix { display: block; }

/* FONTS */
@font-face {
    font-family: 'FontAwesome';
    src: url('/assets/fonts/fontawesome-webfont.eot');
    src: url('/assets/fonts/fontawesome-webfont.eot?#iefix') format('embedded-opentype'),
         url('/assets/fonts/fontawesome-webfont.woff') format('woff'),
         url('/assets/fonts/fontawesome-webfont.ttf') format('truetype'),
         url('/assets/fonts/fontawesome-webfont.svg#fontawesomeregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

/* BASE */
body, input, textarea {
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
}
body {
    font-family: "Open Sans", Helvetica, Verdana, Sans-serif;
    font-size: 14px;
    color: #7c7b7b;
    margin: 0;
    padding: 0;
}
h1, h2, h3, h4 { font-family: "Julius Sans One", Helvetica, Verdana, Sans-serif; }
h1 { margin: 0.35em 0; }
.container { background-size: 100% auto; }
a:hover { text-decoration: none; }
.img-responsive { width: 100%; }
.col-md-6 .img-responsive { max-width: 553px; height: auto; }

/* ===== HEADER ===== */
.main-wrapper { height: 100%; }
.main-container header { width: 100%; }
#header .navbar-header {
    padding: 10px 0;
    position: fixed;
    text-align: center;
    width: 100%;
    z-index: 102;
    background-color: #fff;
}
#header .navbar-nav { float: none; text-align: center; width: 100%; z-index: 101; }
#header .navbar-nav > li {
    display: inline-block;
    float: none;
    padding: 0 25px 5px 25px;
}
#header .navbar-nav > li > a {
    font-size: 12px;
    text-align: center;
    color: #00365d;
    text-transform: uppercase;
    padding: 0;
    background-color: transparent !important;
    line-height: 0.875em;
}
#header .navbar-nav > li > a:focus { outline: none; }
#header .navbar-nav > li.current {
    background-image: url("/assets/images/menu-decoration.gif");
    background-repeat: no-repeat;
    background-position: center bottom;
}
#header .navbar-nav > li > a > strong { display: block; font-size: 15px; }
ul.navigation li a { font-family: "Julius Sans One", Helvetica, Verdana, Sans-serif; }

.main-container {
    background-image: url("/assets/images/footer.png");
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 100% auto;
    height: 100%;
}
.main-container header nav {
    bottom: 10px;
    position: absolute;
    width: 100%;
    z-index: 101;
}
.info_menu {
    position: absolute;
    top: 20px;
    right: 20px;
    text-align: right;
}
.info_menu a { display: block; }
.info_menu span { display: block; }

.nav-fixe {
    -webkit-transition: background 0.5s ease;
    -o-transition: background 0.5s ease;
    transition: background 0.5s ease;
}
.nav-fixe.floatable {
    background-color: #fff;
    bottom: inherit;
    height: 110px !important;
    padding-top: 70px;
    position: fixed;
    top: 0;
    border-bottom: 1px solid #0E72B5;
}
.main-container header #logo {
    width: 266px;
    -webkit-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
.resize_logo { width: 130px !important; height: auto; }
.logo { margin: 0 auto; }
.navbar-header { float: none; text-align: center; }
section { min-height: 720px; }

/* ===== SECTIONS ===== */
.section {
    display: block;
    position: relative;
    background-color: rgba(255,255,255,1);
    padding: 175px 0;
}
.section > .container { padding-top: 55px; }
.section h1 {
    background-image: url("/assets/images/tire-blue.gif");
    background-repeat: no-repeat;
    padding-top: 23px;
    background-position: 4px 0;
    font-weight: 100;
    padding-right: 50px;
}
.text-content h1 {
    color: #0e72b5;
    font-size: 40px;
    line-height: 50px;
    text-transform: uppercase;
    text-align: left;
}
.text-content h3 { color: #0e72b5; text-transform: uppercase; }
.text-content p { font-size: 14px; }
.content-pl, .text-content { padding-left: 50px; }
a.btn-custom {
    border: solid 2px #0e72b5;
    margin-top: 35px;
    padding: 14px 35px;
    background-color: #FFF;
    text-transform: uppercase;
}
.content { margin-bottom: 30px; text-align: left; }

/* Section spécifiques */
.home-section { padding-bottom: 0 !important; padding-top: 0 !important; }
#home .container { left: 10%; position: absolute; top: 20%; }
.horizontal-gradient {
    background: linear-gradient(to right, rgba(255,255,255,0.6) 0%, rgba(255,255,255,0) 100%);
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    pointer-events: none;
}

.textes-section {
    background-image: url("/assets/images/illustration-referencement-de-realisation.png");
    background-repeat: no-repeat;
}
.textes-section h1 { font-size: 35px !important; line-height: 45px; }
.textes-section h3 { font-size: 25px !important; font-weight: 300; }

.formulaire-section {
    padding-top: 160px;
    background-color: transparent;
    padding-bottom: 0;
}
.formulaire-section h1 { padding-right: 50px; }
.formulaire-section form h2 { margin: 0; }
.formulaire-section p strong { text-transform: uppercase; color: #7c7b7b; }
.formulaire-section p, .formulaire-section p a { color: #7c7b7b; }

/* ===== FORMULAIRE ===== */
.form-group { margin: 0; }
.form-group label { color: #7c7b7b; font-size: 11px; padding: 0 5px; background-color: #fff; }
.form-control {
    border-radius: 0;
    height: 43px;
    border: 2px solid #CCC;
    box-shadow: none;
    padding: 0;
    text-indent: 7px;
    width: 100%;
}
.wpcf7-form { padding: 1% 0 3%; position: relative; width: 100%; }
.wpcf7-form h1, .wpcf7-form h2, .wpcf7-form h3,
.wpcf7-form h4, .wpcf7-form h5, .wpcf7-form h6 { color: #0E72B5; margin: 0 0 25px; }
.wpcf7-form p { margin: 10px 0 0; }
.wpcf7-form input[type="submit"] {
    background-color: #0E72B5;
    border: 0 none;
    color: #fff;
    display: inline-block;
    outline: 0 none;
    padding: 3% 10%;
    text-transform: uppercase;
    cursor: pointer;
}
.wpcf7-form input[type="submit"]:hover,
.wpcf7-form input[type="submit"]:focus { background-color: #00365D; }
.wpcf7-form textarea,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"] {
    border: 1px solid #ddd;
    color: #757474;
    margin: 0;
    padding: 1% 2%;
    width: 96%;
    font-style: italic;
}
.wpcf7-form textarea { height: 150px; }
.wpcf7-form textarea:focus,
.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus { background-color: #efefef; color: #0E72B5; }
.wpcf7-validation-errors {
    background-color: #b2351c;
    border: none !important;
    color: #fff !important;
    margin: 2% 0 !important;
    padding: 2% !important;
    text-align: center !important;
    width: 96%;
}
.wpcf7-mail-sent-ok {
    background-color: #93bc51;
    border: none !important;
    color: #fff !important;
    margin: 2% 0 !important;
    padding: 2% !important;
    text-align: center !important;
    width: 96%;
}

/* ===== CAROUSEL ===== */
.this-carousel .owl-pagination { display: none; }
.this-carousel.owl-theme .owl-controls .owl-nav div {
    text-transform: uppercase;
    color: #0e72b5;
    font-size: 15px;
    background-color: transparent;
    background-repeat: no-repeat;
    padding: 0;
    margin-top: 20px;
    display: inline-block;
}
.this-carousel.owl-theme .owl-controls .owl-nav div.owl-prev {
    background-image: url("/assets/images/fleche-precedent.png");
    background-position: 0 center;
    padding-left: 48px;
    margin-right: 165px;
}
.this-carousel.owl-theme .owl-controls .owl-nav div.owl-next {
    background-image: url("/assets/images/fleche-suivant.png");
    background-position: 100% center;
    padding-right: 48px;
}
.this-carousel.owl-theme .owl-controls { text-align: left; }
.owl-carousel { overflow: hidden; }
.carousel-gradient {
    background-repeat: repeat-y;
    background-position: right center;
    background-image: url("/assets/images/carousel-gradient.png");
    width: 159px;
    z-index: 101;
    position: absolute;
    right: -125px;
}
.this-carousel .item {
    background-image: url("/assets/images/carousel-bottom-icone.jpg");
    background-position: 90% bottom;
    background-repeat: no-repeat;
    background-color: #00365d;
    border-bottom: 5px solid #0e72b5;
    color: #fff;
    width: 401px;
    height: 547px;
}
.this-carousel .item .description { padding: 25px; }
.this-carousel .item h4 { font-size: 25px; }
.this-carousel .item ul { padding-left: 20px; }
.this-carousel .item ul li { color: #d3d3d3; }
.this-carousel .description ul li { padding-bottom: 10px; }
.this-carousel .description h4 { padding-bottom: 13px; font-size: 25px; font-weight: 300; }

/* ===== FOOTER ===== */
.copyright {
    background-color: #fff;
    position: relative;
    padding: 9px 15px 15px 0;
    text-align: right;
    color: #b7b4b4;
    font-size: 10px;
    height: 115px;
}
footer#footer { margin-left: 60%; width: 240px; margin-top: -3%; }
footer#footer a { color: #b7b4b4; }
.copyright img { margin-top: 4px; }

/* ===== UTILS ===== */
.div640 { display: none; }
.navbar-toggle { padding: 4px 5px; }
.cols_wrapper { display: block; position: relative; float: none; clear: both; width: 100%; margin: 0 auto; }
.cols_wrapper > .col { position: relative; float: left; margin: 0 1%; }
img.alignleft, div.alignleft { float: left; margin: 10px; }
img.alignright, div.alignright { float: right; margin: 10px; }
img.aligncenter, div.aligncenter { text-align: center; margin: 0 auto; display: block; }
.liste_pdfs { padding-left: 20px; }
.liste_pdfs .pdf { padding-bottom: 8px; }
.liste_pdfs .pdf a { color: #0e72b5; }
.liste_pdfs .pdf a:hover { text-decoration: underline; }
a[href^=tel] { color: inherit; text-decoration: none; }
input { border-radius: 0; }

/* ===== MENU MOBILE ===== */
#menu-toggle { display: none; font-size: 1.5em; cursor: pointer; position: absolute; left: 20px; top: 22px; color: #00365d; }

/* ===== RESPONSIVE ===== */
@media only screen and (max-width: 1100px) {
    .text-content h1 { font-size: 30px; }
    .section h1 { padding: 10px 0 0; }
    .nav-fixe > .container { padding: 0; width: 100%; }
}
@media only screen and (max-width: 980px) {
    #header .navbar-nav > li { padding-left: 10px; padding-right: 10px; }
    .content { padding-right: 0; }
    .content-pl { padding-left: 0; }
    .text-content { padding: 0 5%; width: 50%; }
}
@media only screen and (max-width: 800px) {
    .navbar-collapse .container { width: auto; }
    .text-content h1 { font-size: 35px; line-height: 42px; }
    section#textes h1 { font-size: 28px !important; line-height: 35px; }
    section#textes h3 { font-size: 17px !important; }
}
@media only screen and (max-width: 780px) {
    #header .navbar-nav > li { padding-left: 5px; padding-right: 5px; }
    .nav.navbar-nav.navigation { margin: 0; }
    .container { width: 100%; }
    .text-content { width: 100%; margin-bottom: 5%; float: left; }
    .carousel-gradient, .div640 { display: none; }
    .owl-carousel { width: 100%; }
    .img-responsive { float: left; }
    .col-sm-offset-6 { margin-left: 0; }
    .textes-section {
        background-image: url("/assets/images/illustration-referencement-de-realisation.png");
        background-position: left bottom;
        background-repeat: no-repeat;
        padding: 0 0 550px;
        width: 100%;
    }
}
@media only screen and (max-width: 640px) {
    .col-md-6, .col-sm-6 { margin-right: 0; }
    .referencements-section { background-image: none; }
    .div640 { display: block; }
    .content-pl { padding-left: 0; }
    footer#footer { margin-left: 0; }
    .main-container header { background-color: #fff; position: relative; z-index: 102; }
    .main-container header #logo { width: 130px; height: auto; }
    #menu-toggle { display: block; }
    #header .navbar-header { text-align: center; }
    .logo { margin: 5px auto; }
    #header .navbar-nav > li { display: block; }
    .section { padding-bottom: 20px; padding-top: 20px; }
    .formulaire-section .content { padding-bottom: 30px; }
    section { min-height: 200px; }
    .nav-fixe.floatable { position: relative !important; height: auto !important; top: inherit; padding-top: 0; }
    #header .navbar-header { text-align: left; }
    .navbar-collapse { display: none; }
    .navbar-collapse.open { display: block; }
}
@media only screen and (max-width: 553px) {
    .this-carousel .item { width: 300px; }
    .textes-section { background-image: none; }
}
@media only screen and (max-width: 360px) {
    .carousel-gradient { display: none; }
    .this-carousel.owl-theme .owl-controls .owl-nav div { text-align: center; }
    .this-carousel.owl-theme .owl-controls .owl-nav div.owl-next { float: right; }
    .this-carousel.owl-theme .owl-controls .owl-nav div.owl-prev { margin-right: 0; float: left; }
    .row > div { padding: 0 15px; margin-bottom: 20px; }
    .info_menu { font-size: 0.688em; }
}
