/**
*
*		Media queries
*
**/


body {
-webkit-text-size-adjust: none;
}

/**  Disable Minimum width of no responsive mode 		**/

#column-content {
min-width : 0;
}

.hidden {
display: none;
visibility: hidden;
}

.visible-phone {
display: none !important;
}

.visible-tablet {
display: none !important;
}

.hidden-desktop {
display: none !important;
}

.visible-desktop {
display: block !important;
}



/* Portrait tablet to landscape and desktop */
@media screen and (max-width: 979px) {


	.hidden-desktop {
	display: block !important;
	}
	.visible-desktop {
	display: none !important ;
	}
	.visible-tablet {
	display: block !important;
	}
	.hidden-tablet {
	display: none !important;
	}

}


/* Phone and little tablet */
@media screen and (max-width: 767px) {


	.hidden-desktop {
	display: block !important;
	}
	.visible-desktop {
	display: none !important;
	}
	.visible-tablet {
	display: none !important;
	}
	.hidden-tablet {
	display: block !important;
	}
	.visible-phone {
	display: block !important;
	}
	.hidden-phone {
	display: none !important;
	}
	
}


/** 			MAIN MENU 
**
**/

@media screen and (max-width: 979px) {

	.drop-down {
	position: relative;
    float: none;
    padding:0;
    width: auto !important;
    height:auto;
    z-index: 30;
	}

	.drop-down * {
	border-radius: 0 !important;
	}
	
	.drop-down ul {
    border : none;
    display : none;
    width: 500px;
    position: absolute;
    top: 0;
    left:0;
    max-width: 100%;
    padding: 0 15px 100px 15px;
    z-index: 1337;
 	}
 	
 	#js_navigation:target > ul {
    display : block;
	}
	
	.drop-down span.title_menu {
	display: block;
	position: relative;
	font-weight: normal;
	margin: 0 1px;
	}
	
	.drop-down span.title_menu a {	
	display: block;
	font-size: 19px;
	line-height: 19px;
	text-align:center;
	margin : 15px auto 0 auto;
	padding: 12px 20px 12px 20px;
	border-right:1px solid rgba(255,255,255,0.14);
	border-left:1px solid rgba(255,255,255,0.14);
	-webkit-transition : all 0.4s ease-in-out;
	-moz-transition : all 0.4s ease-in-out;
	-ms-transition : all 0.4s ease-in-out;
	-o-transition : all 0.4s ease-in-out;
	transition : all 0.4s ease-in-out ;
	box-shadow: 1px 4px 12px 0px rgba(0,0,0,0.30);
	}
	
	.drop-down span.title_menu a:hover {
	box-shadow : 1px 1px 5px rgba(0,0,0,0.40);
	}
	
	.drop-down span.title_menu a:active {
	box-shadow : 1px 1px 3px rgba(0,0,0,0.40) inset;
	}
	
	.icon-main-menu:before {
	display: inline-block;
	*display:inline;
	*zoom:1;
	font-family: FontAwesome;
	content: "\f0c9";
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	font-size:15px;
	margin-right:8px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	}
	
	#js_navigation:target span.title_menu {
	display: none;
	}
	
	#js_navigation:target:before {
	content: "";
	position: fixed;
	z-index: -1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(40,40,40,.9);
	}
	
    .drop-down li {
    position: relative;
    display : block ;
    float: none;
    height:auto;
    width:auto;
    line-height: inherit;
    border-top: 1px solid rgba(0,0,0,0.12);
	margin: 20px 0 0 0;
	padding: 20px 15px 0 15px;
    }
    
    .theme-dark  .drop-down li {
	border-color : rgba(255,255,255,0.2);
	}
	
	.drop-down li:first-child, .drop-down li a, .drop-down li span.separator,
	.drop-down li:last-child a, .drop-down li:last-child span.separator {
	border:none !important;
	}
    
	.drop-down li ul {
	display : block ;
	position: relative;
	top: 0;
	left: 0;
	z-index: 1;
	opacity:1;
	width: auto;
	max-width: none;
	border-radius:0;
	border:none;
	box-shadow: none;
	padding: 0;
	margin:0 0 0 20px;
	background: inherit;
	}
	
	.drop-down li ul:hover, .drop-down li li ul:hover {
	box-shadow:none;
	}
	
	.drop-down li ul ul {
	top: 0;
	left: 0;
	margin:0 0 0 20px;
	background:transparent;
	}
	
	.drop-down li li {
	float:none;
	width:auto;
	padding:0;
	margin:0;
	border:none;
	}
	
	.drop-down li a, .drop-down li span.separator {
	display : block;
	padding: 10px 0;
	margin:0;
	border:none;
	text-transform: uppercase;
	font-weight: bold;
	line-height:100%;
	text-align : left;
	text-shadow : none;
	-webkit-transition : none;
	-moz-transition : none;
	-ms-transition : none;
	-o-transition : none;
	transition : none;
	}

	.uppercase-none .drop-down li a, .uppercase-none .drop-down li span.separator {
	text-transform: none;
	}

	.drop-down li li a, .drop-down li li span.separator {
	display : block;
	padding: 10px 0;
	margin:0 ;
	text-transform: none;
	font-weight: normal;
	}

	.drop-down li a:hover, .drop-down li span.separator:hover {
	-webkit-transition : none;
	-moz-transition : none;
	-ms-transition : none;
	-o-transition : none;
	transition : none;
	}
	
	.drop-down li:hover > ul, .drop-down li:focus > ul {
	display : block ;
	z-index:10;
	opacity:1;
	-webkit-transition : none;
	-moz-transition : none;
	-ms-transition : none;
	-o-transition :none;
	transition : none;
	}
	
	.drop-down > ul > li:last-child > ul ul {
    left: inherit;
    right: inherit;
	}
	
	.drop-down a {
	text-decoration : underline !important;
	}
	
	.drop-down li:hover > a, .drop-down a[href="#js_navigation"] {
	text-decoration : none !important;
	}
	
	.drop-down a[href="#"] {
	text-decoration : none !important;
	cursor : default;
	}
	
	.drop-down li.current > a {
	text-decoration : none !important;
	}
	
	/* others  */
	
	.isStuck {
	position:relative !important;
	top:inherit !important;
	left:inherit !important;
	right:inherit !important;
	background: inherit;
	margin:0;
	border: none;
	box-shadow:none;
	}
	
	#js_navigation:before, #js_navigation:after {
	display:block;
	}
	
	.drop-down > ul > li.active > a, .drop-down > ul > li.active > span,
	.drop-down.shadow-yes > ul > li.active > a, .drop-down.shadow-yes > ul > li.active > span {
    background: transparent ;
    border: none;
    box-shadow: none;
    }
    
}


@media screen and (max-width: 979px) {
	
	.column-menu, .all-content, .website-footer {
	max-width:100%;
	}
	
	/** 	remove the fixed width of Google map 		**/
	
	div[id*="googlemap"] {
	width:auto !important;
	}
	
	/** 	Video and Google map 		**/

	.video_page .column-menu, .video_page .all-content, .video_page .website-footer,
	.google_map_page .column-menu, .google_map_page .all-content, .google_map_page .website-footer {
	width:100%;
	}
	
	.google_map_page .column-content, .video_page .column-content {
	margin-left:0;
	}
	
	.module_video {
	position:relative !important;
	height: 60% !important;
	min-height:400px !important;
	}
	
	.module_google_map {
	position:relative !important;
	height: 50% !important;
	min-height:50% !important;
	}
	
	.module_google_map, .module_video {
	padding-left: 0;
	}
	
	.google_map_page .column-content, .video_page .column-content {
	left: inherit;
	}
	
	.content_with_video .module_video {
	height: inherit;
	}
	
	.content_with_video .column-content, .google_map_page .column-content {
	top:0;
	}
	
	.content_with_video .all-content, .google_map_page .all-content {
	box-shadow : none !important;
	}
	
	/*****		Full screen button 		**/
	
	#close-button-all-js {
	display: block !important;
	}
	
	#close-button-js {
	display: none !important;
	}
	
	/**			Search 					**/
	
	.column-menu .search-module {
	margin : 6px 0 6px 0;
	}
	
	.column-menu .search-module .inputbox {
	border:0 none !important;
	border-radius: 0px !important;
	background-image:none !important;
	padding : 0 6px 0 20px !important;
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
	box-shadow : none !important;
	text-align:center;
	width:100%;
	}
	
	.column-menu .search-module .inputbox:focus {
	box-shadow : 1px 1px 2px rgba(0,0,0,0.3) inset !important;
	}
	
	.column-menu .search-module h3 {
	display:none;
	}
	
	.column-menu .search-module .button {
	display:none;
	}

	
  	/** 		Column menu 			**/
  	
	.column-menu {
	position:relative;
	top:inherit;
	bottom:inherit;
	padding: 21px 0 0 0;
	margin: -16px 0 0 0;
	min-height:0;
	text-align:center;
	}
	
	.content-position-centered .column-menu {
	margin: -16px auto 0 auto;
	}
	
	.content-position-right .column-menu {
	float:right;
	}

	/***		Same shadow for all settings 		**/
	
	.column-menu, .column-menu.shadow-inside, .column-menu.shadow-outside {
	box-shadow : -1px 17px 16px rgba(0,0,0,0.99) inset;
	}


	.logo-module {
	display:inline-block;
	*display:inline;
	*zoom:1;
	padding:0;
	margin: 0;
	}
	
	.logo-module img {
	max-width:90%;
	}
	
	.website-title span {
	font-size:90%;
	}
	
  
	/** 		Column content 		  	**/
	
	.column-content {
	position:relative;
	clear:both;
	top:inherit;
	left:inherit;
	height:auto;
	min-height : 0;
	margin: 0;
	clear:both;
	}
	
	.content-position-centered .column-content {
	padding:0;
	}
	
	/***		Same shadow for all settings 		**/

	.all-content, .all-content.shadow-outside, .all-content.shadow-inside,
	.content-position-left .all-content.shadow-inside {
	box-shadow : -1px -17px 16px rgba(0,0,0,0.99) inset;
	}
	
	
	.all-content {
	padding-top:35px;
	padding-bottom:50px;
	}

	/** 	CONTENT 	**/
	
	
	.left_column, .right_column {
	margin: 0;
	padding:0;
	min-height:0;
	}
	
	.left_column > div, .right_column > div {
	background-image : none;
	padding:0;	
	min-height:0;
	}
	
	.left_column > div > div, .right_column > div > div {
	background-image : none;
	background-color : transparent;
	}


	.left_column, .right_column, .top-module-position, .bottom-module-position {
	float:none;
	padding: 0 0;
	margin:0;
	background-image:none;
	min-height:auto;
	border:none;
	width : auto ;
	clear:both;
	}

	.right_column {
	overflow:visible;
	}
	
	div[class*="horizontal-menu"] li a {
	padding: 9px 10px 8px 10px;
	font-size: 90%;
	}
	
	div[class*="vertical-menu"] li a {
	padding: 10px 9px 8px 10px;
	font-size: 90%;
	}
	
	
	/**		Footer		**/
	
	.website-footer.footer-home-page {
	display:none !important;
	}
		
	.content-position-centered .website-footer {
    margin-left:auto;
    margin-right:auto;
	}
	
	.content-position-right .website-footer {
	float:right;
	}
	
	.content_with_video .website-footer, .google_map_page .website-footer {
	box-shadow : 0 -4px 7px rgba(0,0,0,0.2);
	}
	
}






/* Phone and little tablet */
@media screen and (max-width: 767px) {


	.column-menu, .all-content, .website-footer {
	width:100%;
	}
	
	/***		No shadow anymore 		**/
	
	.column-menu, .column-menu.shadow-inside, .column-menu.shadow-outside,
	.all-content, .all-content.shadow-outside, .all-content.shadow-inside,
	.content-position-left .all-content.shadow-inside {
	box-shadow : none;
	}
	
	.website-footer {
	box-shadow : 0 -4px 7px rgba(0,0,0,0.2);
	}
	
	/**		Header 			**/

	.logo-module img {
	max-width:80%;
	}
	
	.website-title span {
	font-size:80%;
	}
	
	/******			CONTENT 		**/
	
	.all-content {
    padding-left: 20px;
    padding-right: 20px;
    }
	
	/**********							**************/
	
	.user1, .user2, .user3, .user4, .user5, .user6, .user7, .user8, .user9 {
	float:none;
	padding:0;
	margin:0;
	width : 100% !important;
	clear:both;
	}
	
	.top-module-position .border > div, .bottom-module-position .border > div, .user1 .border > div, .user2 .border > div, .user3 .border > div, .user4 .border > div, .user5 .border > div,
	.user6 .border > div, .user7 .border > div, .user8 .border > div, .user9 .border > div {
	margin-bottom:8px;
	}
	
	.moduletable.shadow > div {
	margin-bottom:0 !important;
	}	
	
	
	/* ++++++++++++++  blog  ++++++++++++++ */
	
	.cols-2 .column-1 {
	width:auto;
	float:none;
	}
	
	.cols-2 .column-2 {
	width:auto;
	float:none;
	}
	
	.cols-3 .column-1 {
	float:none;
	width:auto;
	padding:0;
	margin-right:0;
	}
	
	.cols-3 .column-2 {
	float:none;
	width:auto;
	width:auto;
	padding:0;
	}
	
	.cols-3 .column-3 {
	float:none;
	width:auto;
	padding:0;
	}
	
	.column-1, .column-2, .column-3 {
	padding:10px 0px;
	}
	
	.column-2 {
	width:auto;
	margin-left:0;
	}
	
	.column-3 {
	width:auto;
	}
	
	.column-4 {
	width:auto;
	}

	.cols-4 .column-1, 
	.cols-4 .column-2, 
	.cols-4 .column-3, 
	.cols-4 .column-4 {
	float: none; 
	clear: none; 
	width:auto;
	margin-left:0;
	padding:20px 0;
	}

	/**********		Column layouts			*********/

	.one-half, .one-third, .two-third, .one-fourth, .two-fourth, .three-fourth, .one-fifth, .two-fifth, .three-fifth, .four-fifth {
	float: none;
	width:auto;
	margin : 10px 0;
	}
	
	/* ++++++++++++++  contact form  ++++++++++++++ */
	
	#slide-contact .thumbnail.pull-right {
	float:none !important;
	margin: 0 0 40px 0;
	box-shadow:none;
	border:none;
	}
	
	.contact-position, .contact-address, p > span.contact-emailto, p > span.contact-telephone, p > span.contact-fax, p > span.contact-mobile, p > span.contact-webpage {
	margin-left:30px;
	}
	
	dl.contact-position, dl.contact-address {
	margin-left:60px;
	}
	
	.contact-image {
	margin-left : 0;
	}
	
	.contact-form {
	margin:50px 6px 10px 6px;
	padding:30px 12px;
	}

	.contact-form dl {
	margin-right:0;
	max-width:none;
	}
	
	.contact .contact-form button,
	.contact .form-actions {
	margin-left: 0;
	}
	
	/**		sliders & Tabs		**/
	
	.pane-sliders .contact-position, .pane-sliders .contact-address, .pane-sliders .contact-emailto, .pane-sliders .contact-telephone, .pane-sliders .contact-fax, .pane-sliders .contact-mobile, .pane-sliders .contact-webpage,
	.tabs .contact-position, .tabs address, .tabs .contact-emailto, .tabs .contact-telephone, .tabs .contact-fax, .tabs .contact-mobile, .tabs .contact-webpage {
	margin-left:50px;
	}
	
	.pane-sliders .contact-image, .tabs .contact-image {
	margin-left : 20px;
	}
	
	dl.tabs dt {
	float: none;
	margin-right: 0;
	}
	
}


@media screen and (max-height: 340px) {

	/**			Prev / Next Slide 		**/
	
	#prevslide, #nextslide {
	bottom:100px;
	}
	
	.control-slideshow {
	bottom:20px;
	}

}