@charset "UTF-8";
/************************************************

Stylesheet: Main Stylesheet

*************************************************/
/*********************
GENERAL STYLES
*********************/
body, .off-canvas-content {
  background: #efefef; }
  body, p {
    font-size:14px;
    font-family: 'Lato', sans-serif!important; }
.home #main {    
	float: none; }
.blog #main, .archive #main, .single #main {    
	float: right; 
	padding:1rem 2rem; 
	margin: 0 auto; }
body:not(.home):not(.single):not(.blog):not(.archive) #main {
	float: none;
	padding:1rem 2rem; 
	margin: 0 auto;
	}
@media screen and (min-width: 64em) {
	body.home #main {
		padding:1rem; }
}
dl, ol, ul {
    list-style-position: inside; }
.blue {
	background: rgb(59,163,249); /* Old browsers */
	background: -moz-linear-gradient(left,  rgba(59,163,249,1) 50%, rgba(102,255,204,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(59,163,249,1) 50%,rgba(102,255,204,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(59,163,249,1) 50%,rgba(102,255,204,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ 
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3ba3f9', endColorstr='#66ffcc',GradientType=1 ); /* IE6-9 */ }
.white {
	background-color:white; }

.intro h3 { 
	font-size:1.2rem; 
	font-weight:700;
	margin:8px 0 4px; }
	.intro p {
	margin-bottom: 5px;
	line-height:1.5;}
	.intro img { 
		float:right; }
	
.news ul {
	list-style-type:none;
	margin:0;
	padding-top:5px;	}
	.news li { margin:5px 0; }
	.news h4, .news h4:after {
    font-size: 13px; 
	display:inline;
	}
	.news h4:after {
	  content:' › ';
	}
	.news p {
	display:inline; }
	.post-date {
	display:inline-block;
    font-size: 12px; 
	color:#999;
	}
	
.travaux {
	text-align:center;
	background-size: contain!important;
    background: url(../images/travaux.png) transparent 50% 50% no-repeat; }
	.travaux h3 {
	font-size:1.2rem;
	line-height: 1;
	font-weight:700;
	margin:0; }
	.travaux a {
	color:#000; }
table, .tablepress { 
	margin:2rem 0; }
	table thead th:not(:first-child),
	table tr td:not(:first-child) { 
		text-align:center; }

.visualizer-front-375, .visualizer-front-421, .visualizer-front-428,
.visualizer-front-376, .visualizer-front-422, .visualizer-front-431,
.visualizer-front-584, .visualizer-front-588, .visualizer-front-591,
.visualizer-front-594, .visualizer-front-596, .visualizer-front-597,
.visualizer-front-681, .visualizer-front-682, .visualizer-front-686,
.visualizer-front-687,.visualizer-front-690,.visualizer-front-691{
	display: inline-block;
    width:33%; }

.visualizer-front-770,.visualizer-front-778,
.visualizer-front-774,.visualizer-front-780{
	display: inline-block;
    width:49%; 
}

@media only screen and (min-width: 64.063em) { 
	.intro, .news ul, .travaux {
		min-height:200px; }
	.travaux {
		padding-top:60px; }
}
@media only screen and (orientation: landscape) and (min-width: 63.063em) and (max-width: 64em) { 
	.intro, .news ul {
		min-height:180px; }
	.intro img {
		min-height:180px;
		width:auto; }
	.intro p , .news p {
		font-size:12px; }
	.travaux {
		height:180px;
		padding-top:45px; }
}
@media only screen and (min-width: 40.063em) and (max-width: 63em) { 
	.intro, .news ul {
		min-height:125px;
		/*margin-bottom:1rem;*/ }
	.intro img {
		max-height:125px;
		width:auto; }
	.intro p , .news p {
		font-size:12px; }
	.travaux {
		margin-top:1rem;
		margin-bottom:1rem;
		padding-left:70px;
		text-align:left;
		background-size: auto 100%!important;
		background-position: 1rem 0 !important; }
}
@media only screen and (max-width: 40em) { 
	.intro, .news ul {
		/*margin-bottom:1rem;*/ } 
	.intro p , .news p {
		font-size:12px; }
	.travaux {
		margin-top:1rem;
		margin-bottom:1rem;
		padding-left:100px;
		text-align:left;
		background-size: auto 100%!important;
		background-position: 1rem 0 !important; }
}
@media screen and (min-width: 64em) {
	.royalSlider { margin-top:1rem; }
}
.rsDefaultInv .rsBullets {
    position: absolute;
	bottom:1rem;
	right:0;
	width:200px }
	.rsDefaultInv .rsBullet span {
		width: 10px;
		height: 10px;
		background: #fff;	}
	.rsDefaultInv .rsBullet.rsNavSelected span {
    background-color: #ea6d00; }


.rsDefaultInv .rsArrowLeft .rsArrowIcn  {
	background: url(../images/arrow_l.png) transparent 50% 50% no-repeat!important; }
.rsDefaultInv .rsArrowRight .rsArrowIcn  {
	background: url(../images/arrow_r.png) transparent 50% 50% no-repeat!important; }
	
/*********************
LINK STYLES
*********************/
a:hover { text-decoration:underline; }

a:link, a:visited:link {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3); }

.intro a { color: #fff; }

/*********************
H1, H2, H3, H4, H5 P STYLES
*********************/
h1, h2, h3, h4, h5, h6 {
  font-family: 'Lato', sans-serif!important; }
h1 a, .h1 a, h2 a, .h2 a, h3 a, .h3 a, h4 a, .h4 a, h5 a, .h5 a {
  text-decoration: none; }
@media screen and (min-width: 40em) {
	h1 {
		font-size: 2rem;
		font-weight:700; }
	h2 {
		font-size: 1.25rem; }
	h3{
		font-size: 1rem; }
}
body:not(.home) h1,
body:not(.home) h2,
body:not(.home) h3,
body:not(.home) h4,
body:not(.home) h5,
body:not(.home) h6 {
	color:#2199e8; }

/*********************
HEADER STYLES
*********************/
.header ul.off-canvas-list li {
  list-style: none; }
  
.header { 
	border-bottom: 1px solid #ccc; 
	background:#fff; }

/*********************
NAVIGATION STYLES
*********************/

.is-dropdown-submenu {
    z-index: 1000000;
}
/*.top-bar .menu .active.menu_icon_1>a,
.top-bar .menu_icon_1 .submenu .active>a {
	background-color:#fccb78; }*/
	.top-bar .menu .active.menu_icon_1 > a:before {
		background: url(../images/menu_icon_1_w.png) 50% 0 no-repeat; }
.top-bar .menu .active.menu_icon_2>a,
.top-bar .menu_icon_2 .submenu .active>a {
	background-color:#fccb78; }
	.top-bar .menu .active.menu_icon_2 > a:before {
		background: url(../images/menu_icon_2_w.png) 50% 0 no-repeat; }
/*.top-bar .menu .active.menu_icon_3>a,
.top-bar .menu_icon_3 .submenu .active>a {
	background-color:#fccb78; }*/
	.top-bar .menu .active.menu_icon_3 > a:before {
		background: url(../images/menu_icon_3_w.png) 50% 0 no-repeat; }
.top-bar .menu .active.menu_icon_4>a,
.top-bar .menu_icon_4 .submenu .active>a {
	background-color:#d2e091; }
	.top-bar .menu .active.menu_icon_4 > a:before {
		background: url(../images/menu_icon_4_w.png) 50% 0 no-repeat; }
/*.top-bar .menu .active.menu_icon_5>a,
.top-bar .menu_icon_5 .submenu .active>a {
	background-color:#fccb78; }*/
	.top-bar .menu .active.menu_icon_5 > a:before {
		background: url(../images/menu_icon_5_w.png) 50% 0 no-repeat; }

.top-bar .title-area {
  z-index: 1; }

.off-canvas-list ul {
  margin-left: 0; }
  .off-canvas-list ul li a {
    border-bottom: 0px; }
  .off-canvas-list ul .dropdown {
    margin-left: 20px; }
	
.top-bar, .top-bar ul {
  background-color: transparent; }
  .top-bar {
	padding:0;
	background: rgb(59,163,249); /* Old browsers */
	background: -moz-linear-gradient(left,  rgba(59,163,249,1) 0, rgba(59,163,249,1) 60px, rgba(102,255,204,0.2) 270px, rgba(102,255,204,0) 360px); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(59,163,249,1) 0, rgba(59,163,249,1) 60px, rgba(102,255,204,0.2) 270px,rgba(102,255,204,0) 360px); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(59,163,249,1) 0, rgba(59,163,249,1) 60px, rgba(102,255,204,0.2) 270px,rgba(102,255,204,0) 360px); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3ba3f9', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 */ }
	
@media only screen and (min-width: 64.063em) { 
	.header { padding-top:1rem; }
	.top-bar .menu_icon > a {
	  min-width: 160px; }
}
@media only screen and (min-width: 40.063em) and (max-width: 64em) { 
	.top-bar .menu_icon > a {
	  min-width: 133px; }
}

@media only screen and (max-width: 40em) { 
	.top-bar .top-bar-left, .top-bar .top-bar-right {
		width: inherit; }
	.top-bar .top-bar-right .menu>li {
		height: 100px; 
		width:50px; }
}

.top-bar .top-bar-left .menu li a {
    display:block;
    height:100px;
	width:240px;
    text-indent: -9999px;
    overflow: hidden;
    background: url(../images/logo.png) transparent 20px 50% no-repeat; }
	
.top-bar .top-bar-right  .menu>li:not(.lang-item):first-child>a { padding-top : 1.5rem; }
.top-bar .top-bar-right .menu>li:last-child>a{ padding-bottom : 1.5rem; }
.top-bar .top-bar-right .menu .active>a { color:#fff!important; }
.top-bar .top-bar-right .menu .lang-item.active>a,
.footer .menu .active>a { background:none; text-decoration:underline; }
.top-bar .top-bar-right .menu li.lang-item>a { padding:.5rem 0 0 1rem; }
.top-bar .top-bar-right .menu li.lang-item:last-child>a { padding:.5rem .5rem; }
.top-bar .top-bar-right .menu li.lang-item>a span { display:none; }
.top-bar .top-bar-right .menu .lang-item{ vertical-align:inherit; }
.top-bar .top-bar-right .menu li.lang-item.active>a { opacity:.7; }


.top-bar .menu_icon > a {
  text-align: center; 
  color:#000;
  font-weight:700;
  font-size:12px;
  text-transform:uppercase;
  height:100px;
  padding: 10px 5px!important;
  border-right: 1px solid #ccc; }
  .top-bar .menu_icon > a:after {
	display:none!important; }
  .top-bar .menu_icon > a:before {
	content: '';
	display: block;
	height: 65px;
	width: 100%; }
  .top-bar .menu_icon_1 > a:before {
	background: url(../images/menu_icon_1.png) 50% 0 no-repeat; }	
  .top-bar .menu_icon_2 > a:before {
	background: url(../images/menu_icon_2.png) 50% 0 no-repeat; }	
  .top-bar .menu_icon_3 > a:before {
    background: url(../images/menu_icon_3.png) 50% 0 no-repeat; }	
  .top-bar .menu_icon_4 > a:before {
    background: url(../images/menu_icon_4.png) 50% 0 no-repeat; }	
  .top-bar .menu_icon_5 > a:before {
    background: url(../images/menu_icon_5.png) 50% 0 no-repeat; }
	
.top-bar .is-submenu-item {
	background-color:#fff; 
	color:#333;
	font-size:12px; }

.menu-icon:after {
    background: #000;
    box-shadow: 0 7px 0 #000,0 14px 0 #000;
}

.sidebar .side-menu{
	margin-left: 0!important;}
.sidebar .side-menu li {
	list-style-type:none; }
.sidebar .side-menu li>a {
	font-size:16px; }
.sidebar .sub-menu li>a {
	font-size:12px;
    font-weight:normal; }
.sidebar .side-menu .sub-menu  {
	margin-left: 0.5rem;
	padding: .5rem 0; }
.sidebar .side-menu .sub-menu li:before {
    content: "+"; 
    padding-right: 10px;}
.sidebar .side-menu .active>a,
.sidebar .sub-menu li>a.active,
.sidebar .sub-menu .active>a {
	color:#000;
	background:inherit; }
	
.sidebar .side-menu>li:not(.active) .sub-menu {
	 display:none; }
	
.sidebar .post-date:before {
	content:' > '; }
	
/*********************
POSTS & CONTENT STYLES
*********************/

@media only screen and (min-width: 64.063em) {
	body:not(.home):not(.single):not(.blog):not(.archive) #content #inner-content {
	  margin: 1rem auto; 
	  padding:0;
	  background-size:cover; }
}
  
.page-title .vcard {
  border: 0px;
  padding: 0px; }

.byline {
  color: #999; }
  
body:not(.home) .entry-content img {
  margin-top: .5em;
  margin-bottom: .5em;
}
.entry-content img {
  max-width: 100%;
  height: auto; }

.entry-content .alignleft, .entry-content img.alignleft {
  margin-right: 1.5em;
  display: inline;
  float: left; }

.entry-content .alignright, .entry-content img.alignright {
  margin-left: 1.5em;
  display: inline;
  float: right; }

.entry-content .aligncenter, .entry-content img.aligncenter {
  margin-right: auto;
  margin-left: auto;
  display: block;
  clear: both; }

.entry-content video, .entry-content object {
  max-width: 100%;
  height: auto; }

.entry-content pre {
  background: #eee;
  border: 1px solid #cecece;
  padding: 10px; }

.wp-caption {
  max-width: 100%;
  background: #eee;
  padding: 5px; }
  .wp-caption img {
    max-width: 100%;
    margin-bottom: 0;
    width: 100%; }
  .wp-caption p.wp-caption-text {
    font-size: 0.85em;
    margin: 4px 0 7px;
    text-align: center; }
.post-password-form input[type="submit"] {
  display: inline-block;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  -webkit-appearance: none;
  transition: all 0.25s ease-out;
  vertical-align: middle;
  border: 1px solid transparent;
  border-radius: 0;
  padding: 0.85em 1em;
  margin: 0 1rem 1rem 0;
  font-size: 0.9rem;
  background: #2199e8;
  color: #fff; }
  [data-whatinput='mouse'] .post-password-form input[type="submit"] {
    outline: 0; }
  .post-password-form input[type="submit"]:hover, .post-password-form input[type="submit"]:focus {
    background: #1583cc;
    color: #fff; }

input[type="submit"] {   
	margin: 1rem 0; }
/*********************
IMAGE GALLERY STYLES
*********************/
/*********************
PAGE NAVI STYLES
*********************/
.page-navigation {
  margin-top: 1rem; }

/*********************
COMMENT STYLES
*********************/
#comments .commentlist {
  margin-left: 0px; }

#respond ul {
  margin-left: 0px; }

.commentlist li {
  position: relative;
  clear: both;
  overflow: hidden;
  list-style-type: none;
  margin-bottom: 1.5em;
  padding: 0.7335em 10px; }
  .commentlist li:last-child {
    margin-bottom: 0; }
  .commentlist li ul.children {
    margin: 0; }

.commentlist li[class*=depth-] {
  margin-top: 1.1em; }

.commentlist li.depth-1 {
  margin-left: 0;
  margin-top: 0; }

.commentlist li:not(.depth-1) {
  margin-left: 10px;
  margin-top: 0;
  padding-bottom: 0; }

.commentlist .vcard {
  margin-left: 50px; }
  .commentlist .vcard cite.fn {
    font-weight: 700;
    font-style: normal; }
  .commentlist .vcard time {
    float: right; }
    .commentlist .vcard time a {
      color: #999;
      text-decoration: none; }
      .commentlist .vcard time a:hover {
        text-decoration: underline; }
  .commentlist .vcard img.avatar {
    position: absolute;
    left: 10px;
    padding: 2px;
    border: 1px solid #cecece;
    background: #fff; }

.commentlist .comment_content p {
  margin: 0.7335em 0 1.5em;
  font-size: 1em;
  line-height: 1.5em; }

.commentlist .comment-reply-link {
  float: right; }

/*********************
COMMENT FORM STYLES
*********************/
.respond-form {
  margin: 1.5em 10px;
  padding-bottom: 2.2em; }
  .respond-form form {
    margin: 0.75em 0; }
    .respond-form form li {
      list-style-type: none;
      clear: both;
      margin-bottom: 0.7335em; }
      .respond-form form li label,
      .respond-form form li small {
        display: none; }
    .respond-form form input[type=text],
    .respond-form form input[type=email],
    .respond-form form input[type=url],
    .respond-form form textarea {
      padding: 3px 6px;
      background: #efefef;
      border: 2px solid #cecece;
      line-height: 1.5em; }
      .respond-form form input[type=text]:focus,
      .respond-form form input[type=email]:focus,
      .respond-form form input[type=url]:focus,
      .respond-form form textarea:focus {
        background: #fff; }
      .respond-form form input[type=text]:invalid,
      .respond-form form input[type=email]:invalid,
      .respond-form form input[type=url]:invalid,
      .respond-form form textarea:invalid {
        outline: none;
        border-color: #fbc2c4;
        background-color: #f6e7eb;
        -ms-box-shadow: none;
        box-shadow: none; }
    .respond-form form input[type=text],
    .respond-form form input[type=email],
    .respond-form form input[type=url] {
      max-width: 400px;
      min-width: 250px; }
    .respond-form form textarea {
      resize: none;
      width: 97.3%;
      height: 150px; }

#comment-form-title {
  margin: 0 0 1.1em; }

#allowed_tags {
  margin: 1.5em 10px 0.7335em 0; }

.nocomments {
  margin: 0 20px 1.1em; }

/*********************
SIDEBARS & ASIDES
*********************/
.sidebar {
margin-top:1rem;
margin-bottom:1rem; }

.widget ul {
  margin: 0; }
  .widget ul li {
    list-style: none; }
.widgettitle {
    font-size: .9rem;
	font-weight:700;
	text-transform:uppercase; }
	
/*********************
FOOTER STYLES
*********************/
.footer {
  clear: both; }
  #inner-footer a {
    color:#000;
	font-size:12px; }
@media only screen and (min-width: 64.063em) { 
	.footer {
	  margin-bottom:1rem; }
 }
/*********************
FOUNDATION STYLES
*********************/

/*********************
PLUGIN STYLES
*********************/
.gform_body ul {
  list-style: none outside none;
  margin: 0; }

/******************************************************************

Stylesheet: Retina Screens & Devices Stylesheet

When handling retina screens you need to make adjustments, especially
if you're not using font icons. Here you can add them in one neat
place.

******************************************************************/
/******************************************************************

Stylesheet: Print Stylesheet

This is the print stylesheet. There's probably not a lot
of reasons to edit this stylesheet. 

Remember to add things that won't make sense to print at 
the bottom. Things like nav, ads, and forms shouldbe set 
to display none.
******************************************************************/
@media print {
  * {
    background: transparent !important;
    color: black !important;
    text-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    -ms-filter: none !important; }
  a, a:visited {
    color: #444 !important;
    text-decoration: underline; }
    a:after, a:visited:after {
      content: " (" attr(href) ")"; }
    a abbr[title]:after, a:visited 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; }
  .sidebar,
  .page-navigation,
  .wp-prev-next,
  .respond-form,
  nav {
    display: none; } }

img.img-article{
  display: block;
  margin: auto;
}