/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */

html,
button,
input,
select,
textarea {
    color: #222;
}

html {
    font-size: 1em;
    line-height: 1.4;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
img,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}


/* ===== Initializr Styles ==================================================
   Author: Jérémy Maas - Graphisterie Générale
   ========================================================================== */

b, strong{
    font-weight: 400;
}

html { font-size: 62.5%; }

body {
    font-family: din-condensed, sans-serif;
    font-size: 2rem;
    line-height: 2.6rem;
    font-weight: 300;
    color: black;
    background: white;
}

.rel { position: relative; }

img { max-width: 100%; height: auto; }
#mapmap img { max-width: none; }

img.aligncenter { display: block; margin: 0 auto; }
img.alignleft { float: left; margin: 0 5px 0 0; }
img.alignright { float: right; margin: 0 0 0 5px; }

h1 { font-size: 3.2rem; line-height: 3.8rem; }
h2 { font-size: 2.6rem; line-height: 3.2rem; }
h3 { font-size: 2.4rem; line-height: 2.9rem; }
h4 { font-size: 2.2rem; line-height: 2.6rem; }
h5 { font-size: 2rem; line-height: 2.4rem; }
h6 { font-size: 1.8rem; line-height: 2.2rem; }

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

h1 .fa { color: #219d9a; }

h3 .fa-2x { padding: 0 12px 0 0; }

.fancy-title { text-align: center; overflow: hidden; }

a { color: #219d9a; text-decoration: none; -webkit-transition: opacity 0.3s; -moz-transition: opacity 0.3s; transition: opacity 0.3s; }
a:hover { opacity: 0.6; }

.bt-1 { font-size: 1.8rem; line-height: 1.8rem; padding: 9px 17px 7px 17px; text-decoration: none; border: 3px solid #219d9a; display: inline-block; position: relative; outline: none; background: none; overflow: hidden; color: #219d9a; -webkit-transition: color 0.3s; -moz-transition: color 0.3s; transition: color 0.3s; margin: 10px 0 0 0; opacity: 1; }
.bt-1:after { content: ''; position: absolute; z-index: -1; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; width: 100%; height: 0; top: 0; left: 0; background: #219d9a; opacity: 0; }
.bt-1:hover:after, .bt-1.selected:after { height: 102%; opacity: 1; }
.bt-1:hover, .bt-1.selected { color: white; text-decoration: none; opacity: 1; }
.bt-2 { font-size: 1.8rem; line-height: 1.8rem; padding: 9px 17px 7px 17px; text-decoration: none; border: 3px solid #219d9a; display: inline-block; position: relative; outline: none; background: none; overflow: hidden; color: white; -webkit-transition: color 0.3s; -moz-transition: color 0.3s; transition: color 0.3s; margin: 10px 0 0 0; opacity: 1; }
.bt-2:after { content: ''; position: absolute; z-index: -1; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; width: 102%; height: 102%; top: 0; left: 0; background: #219d9a; opacity: 1; }
.bt-2:hover:after, .bt-2.selected:after { height: 0; opacity: 1; }
.bt-2:hover, .bt-2.selected { color: #219d9a; text-decoration: none; opacity: 1; }

input[type="text"], textarea, input[type="email"] { width: 100%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; border: 1px solid #eeeeee; }
input[type="submit"] { font-size: 14px; line-height: 14px; font-size: 1.4rem; line-height: 1.4rem; padding: 9px 17px 7px 17px; text-decoration: none; border: 3px solid #219d9a; display: inline-block; position: relative; outline: none; background: none; overflow: hidden; color: #219d9a; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; margin: 10px 0 0 0; }
input[type="submit"]:hover { color: white; background: #219d9a; }
span.wpcf7-form-control-wrap { width: 100%; }

article { padding-bottom: 20px; }

blockquote { font-size: 20px; line-height: 28px; font-size: 2.0rem; line-height: 2.8rem; text-align: center; font-style: italic; }

#mobile-wrapper { position: relative; -webkit-transition: left 0.3s ease; -moz-transition: left 0.3s ease; -o-transition: left 0.3s ease; -ms-transition: left 0.3s ease; transition: left 0.3s ease; }
.sitebox { max-width: 432px; margin: 0 auto; }
.wrapper { width: 90%; margin: 0 5%; position: relative; }

header { border-bottom: 3px solid #219d9a; position: relative; z-index: 100; }
header .top { padding: 20px 0; }

#logo { width: 100%; }

#menu-icon { padding: 0 0 10px 0; display: inline-block; }
#mobilenav { position: fixed; left: -80%; width: 80%; top: 0; -webkit-transition: left 0.3s ease; -moz-transition: left 0.3s ease; -o-transition: left 0.3s ease; -ms-transition: left 0.3s ease; transition: left 0.3s ease; z-index: 100; overflow: scroll; z-index: 1000; background: #219d9a; padding: 22px 0; }
#mobilenav .close { position: absolute; top: 0; right: 0; cursor: pointer; z-index: 1000; padding: 20px; color: white; text-decoration: none; font-size: 20px; font-size: 2rem; }
#mobilenav ul { display: block !important; margin: 0; padding: 0; height: auto !important; }
#mobilenav ul li { margin: 0; padding: 0; }
#mobilenav > ul > li a { color: white; text-decoration: none; text-transform: uppercase; font-size: 2rem; line-height: 2.4rem; display: block; display: block; padding: 10px 20px 10px 20px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-transition: background 0.3s; -moz-transition: background 0.3s; transition: background 0.3s; }
#mobilenav > ul > li a:hover { background: #088481; text-decoration: none; opacity: 1; }
#mobilenav > ul > li > ul > li > a { font-size: 12px; font-size: 2rem; line-height: 2.4rem; padding: 6px 20px 6px 30px; }
#mobilenav > ul > li > ul > li > ul > li > a { font-size: 11px;  font-size: 1.1rem; text-transform: none; padding: 2px 20px 2px 40px; }
#mobilenav > ul > li > ul, #mobilenav > ul > li > ul > li > ul { padding-top: 0; }

#nav-social { list-style: none; float: right; padding: 0; margin: 0; font-size: 10px; line-height: 10px; font-size: 1rem; line-height: 1rem; }
#nav-social li { float: left; margin: 0; padding: 10px 0 0 2px; }
#nav-social li a { text-decoration: none; }
#nav-social li a .fa-stack-2x { color: #219d9a; }
#nav-social li a .fa-stack-1x { color: white; padding: 1px 0 0 0; }

#contenthead { position: relative; }
.rslides_nav { position: absolute; top: 50%; z-index: 2; margin-top: -20px; display: none; -webkit-transition: opacity 0.3s; -moz-transition: opacity 0.3s; transition: opacity 0.3s; opacity: 0.6; }
.rslides_nav:hover { opacity: 1; }
.rslides_nav .fa-stack-2x { color: white; text-shadow: 3px 0 0 #219d9a, -3px 0 0 #219d9a, 0 3px 0 #219d9a, 0 -3px 0 #219d9a, 2px 2px #219d9a, -2px -2px 0 #219d9a, 2px -2px 0 #219d9a, -2px 2px 0 #219d9a; }
.rslides_nav .fa-chevron-left:before, .jcarousel-control-prev .fa-chevron-left:before { padding-right: 3px; }
.rslides_nav .fa-chevron-right:before, .jcarousel-control-next .fa-chevron-right:before { padding-left: 3px; }
.rslides .caption { background: #000000; width: 100%; color: white; padding: 20px 0 15px 0; }
.rslides .caption h3:first-child { margin-top: 0; padding-top: 0; }
.rslides .caption * {  color: white; }

.wrapper-content { padding: 20px 0; position: relative; z-index: 0; }
.wrapper-content:last-child { padding: 20px 0 0 0;}
.wrapper-content .header { margin: 0 0 20px 0; }

.breadcrumb { font-size: 13px; line-height: 13px; font-size: 1.3rem; line-height: 1.3rem; }

.news-img { width: 100%; margin: 0 0 10px 0; }
.news-date, .mod-news-date, .mod-one-news-date { color: white; background: #219d9a; text-align: center; display: block; height: 78px; padding: 14px 0; line-height: 14px; line-height: 1.4rem; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
.news-title, .news-category-links, .mod-news-title, .mod-news-category-links { padding: 0; margin: 0; }
.mod-news-img { width: 100%; margin: 0 0 10px 0; }
.news-day { font-size: 35px; line-height: 35px; font-size: 3.5rem; line-height: 3.5rem; }
.mod-one-news-img { width: 100%; margin: 0 0 10px 0; }
.mod-one-news { margin: 20px 0; }

.container_togs { margin: 3px 0 0 0; }
.trigger { padding: 10px 0; margin: -3px 0 0 0; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; cursor: pointer; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; border: 3px solid #219d9a; }
.trigger a { text-decoration: none; }
.trigger span.fa { padding: 0 20px; }
.trigger.active, .trigger:hover { background: #219d9a; }
.trigger.active a, .trigger.active .fa, .trigger:hover a, .trigger:hover .fa { color: white; }
.trigger.active .fa { filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg); }
.trigger_tabs { margin-bottom: 0; line-height: 0; }
.trigger_tabs .bt-1 { border: 3px solid #219d9a; border-right: none; }
.trigger_tabs .bt-1:last-child { border-right: 3px solid #219d9a; }
.toggle_container, .tab_container, .highlight_container { padding: 10px 20px; background: #eeeeee; }

#mapmap { height: 250px; }

.team-plus { text-align: center; font-weight: bold; font-size: 32px; font-size: 3.2rem; height: 78px; line-height: 78px; }
.team-plus a { display: block; color: white; text-decoration: none; background: #219d9a; }
.team-social-links { padding: 0; margin: 0; }
.team-social-links .fa-stack { font-size: 12px; font-size: 2rem; }
.team-excerpt { position: relative; margin: 0 0 10px 0; }
.team-excerpt .mod-news-img { margin: 0; }
.team-excerpt div { position: absolute; top:0; left: 0; width: 100%; height: 100%; background: #219d9a; color: white; padding: 0 20px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; display: none; }

.portfolio-liste-filtres { padding: 0 0 20px 0; }
.portfolio-liste-filtres ul { margin: 0; padding: 0; }
.portfolio-liste-filtres ul li { margin: 0; padding: 0 10px 0 0; float: left; }
.portfolio-link { color: white; display: block; position: relative; margin: 0 0 10px 0; }
.portfolio-link:hover { opacity: 1; }
.portfolio-link .mod-news-img { margin: 0; }
.portfolio-link span { font-size: 60px; font-size: 6rem; line-height: 282px; position: absolute; top:0; left: 0; width: 100%; height: 100%; display: none; background: #219d9a; height: 100%; text-align: center; }
/*.news-link span { line-height: 252px; }*/

.widget-title { font-size: 2.4rem; line-height: 3rem; font-weight: bold; margin-bottom: 0; }

.jcarousel { position: relative; overflow: hidden; width: 100%; padding: 20px 0; }
.jcarousel ul { width: 20000em; position: relative; list-style: none; margin: 0; padding: 0; }
.jcarousel li { width: 432px; float: left; padding: 0 20px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
.jcarousel-control-prev, .jcarousel-control-next { position: absolute; top: 40%; margin-top: -10px; text-align: center; color: #219d9a; text-decoration: none; -webkit-transition: opacity 0.3s; -moz-transition: opacity 0.3s; transition: opacity 0.3s; opacity: 0.6; }
.jcarousel-control-prev:hover, .jcarousel-control-next:hover { opacity: 1; }
.jcarousel-control-prev .fa-stack-2x, .jcarousel-control-next .fa-stack-2x { color: white; text-shadow: 3px 0 0 #219d9a, -3px 0 0 #219d9a, 0 3px 0 #219d9a, 0 -3px 0 #219d9a, 2px 2px #219d9a, -2px -2px 0 #219d9a, 2px -2px 0 #219d9a, -2px 2px 0 #219d9a; }
.jcarousel-control-prev { left: 3px; }
.jcarousel-control-next { right: 3px; }
.jcarousel article { padding: 0; }

.widget_nav_menu ul, .widget_recent_entries ul, .widget_rc_widget ul { list-style:none; margin-left: 0; padding-left: 0; }
.widget_nav_menu ul li, .widget_recent_entries ul li, .widget_rc_widget ul li { margin: 0; padding: 0; }
.widget_nav_menu ul li:before, .widget_recent_entries ul li:before, .widget_rc_widget ul li:before { display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale; content:"\f105"; padding: 0 10px 0 0; }
.widget_rc_widget ul li:before { content:"\f003"; }
.widget_rc_widget ul .org { font-weight: bold; }
.widget_rc_widget ul .org:before { display: none; }
.widget_rc_widget ul .adr { display: inline; }
.widget_rc_widget ul .tel:before { content:"\f095"; }
.widget_rc_widget ul .email:before { content:"\f1d9"; }

footer .bottom { padding: 20px 0; background: #373736; border-top: 3px solid #219d9a; color: white; font-size: 12px; line-height: 12px; font-size: 2rem; line-height: 2.4rem; }
footer .top { padding: 20px 0; }
#footerlogo { max-width: 100%; }

/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 480px) {
    .wrapper { width: 432px; margin: 0 auto; }
}

@media screen and (max-width: 767px) {
    .mobile-aligncenter { text-align: center; }
    .mobile-alignright { text-align: right; }

    .wrapper-content.bg { background-attachment: scroll !important; }

    .nivo-caption, .nivo-directionNav { display: none !important; }
}

@media screen and (min-width: 768px) and (max-width: 1139px) {
    .tablet-aligncenter { text-align: center; }
    .tablet-alignright { text-align: right; }

    .wrapper-content.bg { background-attachment: scroll !important; }
}

@media screen and (min-width: 768px) {
    .sitebox { max-width: 691px; }
    .wrapper { width: 691px; }

    #logo { width: auto; }

    #nav-main { background: #373736; }
    #menu-main, #menu-top, #nav-main .menu, #nav-top .menu { padding: 0; margin: 0; }
    #menu-main > li, #nav-main .menu > li { padding: 0; margin: 0; float: left; position: relative; z-index: 1; line-height: 0; }
    #menu-main > li > a, #nav-main .menu > li > a { padding: 10px 15px; font-size: 1.3rem; line-height: 1.3rem; color: white; text-decoration: none; overflow: hidden; display: inline-block; position: relative; outline: none; background: none; }
    #menu-main > li > a:hover, #nav-main .menu > li > a:hover { opacity: 1; }
    #menu-main > li > a:after, #nav-main .menu > li > a:after { content: ''; position: absolute; z-index: -1; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; width: 100%; height: 0; top: 0; left: 0; background: #219d9a; opacity: 0; }
    #menu-main > li:hover > a:after, #nav-main .menu > li:hover > a:after { height: 100%; opacity: 1; }
    #menu-main > li.current-menu-item > a, #nav-main > ul > li.current-menu-ancestor > a, #nav-main .menu > li.current-menu-item > a { background: #219d9a; }
    #menu-main > li > ul, #nav-main .menu > li > ul { position: absolute; top: 33px; left: 0; border-top: 3px solid #219d9a; padding: 0; margin: 0; display: none; }
    /*#nav-main ul > li:hover > ul { display: block; }*/
    #menu-main > li > ul > li, #nav-main .menu > li > ul > li { width: 220px; float: none; }
    #menu-main > li > ul > li > a, #nav-main .menu > li > ul > li > a { background: #219d9a; padding: 10px 15px; display: block; font-size: 1.3rem; line-height: 1.3rem; color: white; text-decoration: none; -webkit-transition: background 0.3s; -moz-transition: background 0.3s; transition: background 0.3s; }
    #menu-main > li > ul > li > a:hover, #nav-main .menu > li > ul > li > a:hover { background: #088481; opacity: 1; }
    #nav-top { background: #eeeeee; position: absolute; top: 0; left: 0; width: 100%; border-bottom: 3px solid #dddddd; }
    #menu-top, #nav-top .menu { float: right; }
    #menu-top > li, #nav-top .menu > li { padding: 0; margin: 0;  float: left; }
    #menu-top > li > a, #nav-top .menu > li > a { display: block; padding: 5px 0 5px 10px; font-size: 1.3rem; line-height: 1.3rem; color: black; -webkit-transition: color 0.3s; -moz-transition: color 0.3s; transition: color 0.3s; }
    #menu-top > li > a:hover, #menu-top > li.current-menu-item > a, #nav-top .menu > li > a:hover, #nav-top .menu > li.current-menu-item > a { text-decoration: none; color: #219d9a; opacity: 1; }

    #nav-social li { padding: 3px 0 0 3px; }
    #nav-social li a .fa-stack-2x { color: white; }
    #nav-social li a .fa-stack-1x { color: #373736; }

    header .top { padding: 55px 0 30px 0; }

    .rslides_nav { display: block; }
    .rslides_nav.prev { left: 50px; }
    .rslides_nav.next { right: 50px; }

    .wrapper-content { padding: 30px 0; }
    .wrapper-content:last-child { padding: 30px 0 0 0;}

    .rslides .caption { position: absolute; bottom: 0; left: 0; }

    .news-date { height: 65px; padding: 7px 0; }
    .mod-news-date { height: 61px; padding: 6px 0; }
    .mod-one-news-date { height: 98px; padding: 20px 0; }

    #mapmap { height: 350px; }

    .team-plus { height: 61px; line-height: 61px; }

    .portfolio-link span { line-height: 222px; }
    /*.news-link span { line-height: 187px; }*/
}

@media only screen and (min-width: 1140px) {
    .aligncenter { text-align: center; }
    .alignright { text-align: right; }

    header .top { padding: 76px 0 40px 0; }
    .wrapper-content { padding: 40px 0; }
    .wrapper-content:last-child { padding: 40px 0 0 0;}

    .sitebox { max-width: 1026px; }
    .wrapper { width: 1026px; }

    #menu-main > li > a, #nav-main .menu > li > a { padding: 15px 20px; font-size: 2rem; line-height: 2.4rem; }
    #menu-main > li > ul > li > a, #nav-main .menu > li > ul > li > a { padding: 15px 20px; font-size: 2rem; line-height: 2.4rem; }
    #menu-main > li > ul, #nav-main .menu > li > ul { top: 44px; }
    #menu-top > li > a, #nav-top .menu > li > a { padding: 10px 0 10px 20px; font-size: 2rem; line-height: 2.4rem; }

    #nav-social { font-size: 12px; line-height: 12px; font-size: 1.2rem; line-height: 1.2rem; }
    #nav-social li { padding: 6px 0 0 5px; }

    .news-date { height: 64px; padding: 7px 0; }
    .mod-news-date { height: 60px; padding: 5px 0; }
    .mod-one-news-date { height: 98px; padding: 21px 0; }
    .mod-one-news-info { padding: 20px 20px 0 20px; }
    .mod-one-border { border: 3px solid #219d9a; }
    .mod-one-news-img { width: 100%; margin: 0; }

    #mapmap { height: 450px; }

    .team-plus { height: 60px; line-height: 60px; }

    .portfolio-link span { line-height: 220px; }
    /*.news-link span { line-height: 185px; }*/
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}

.fancybox-nav {
    height: calc(100% - 130px);
    width: 25%;
    top: 65px;
}

/*embed responsive from bootstrap */
.embed-responsive {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
}

.embed-responsive::before {
    display: block;
    content: "";
}

.embed-responsive-16by9::before {
    padding-top: 56.25%;
}

.embed-responsive .embed-responsive-item, .embed-responsive embed, .embed-responsive iframe, .embed-responsive object, .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.wrapper-content h1 {
    display: inline;
    background-color: #ffdd00;
    box-decoration-break: clone;
    padding: 10px 8px 6px 8px;
    text-transform: uppercase;
}

.wrapper-content h2 {
    text-transform: uppercase;
}


.title::after {
    display: none!important;
}

.sitebox {
    background-color: unset!important;
}

.wrapper-content {
    background-color: #FEFEFE;
}

#menu-icon {
    color: #020202;
}

h1{
    color: #020202!important;
}

.fancybox-title {
    color: #020202;
    font-size: 2rem;
    line-height: 1.2;
    font-family: din-condensed, sans-serif;
}