/**
*
*		Media queries
*
**/


body {
-webkit-text-size-adjust: none;
}


.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;
	clear:none;
    float: none;
    margin:0;
    padding:0;
    width: auto !important;
    height:auto;
    z-index: 10;
	}
	
	.drop-down ul {
	background-color: transparent;
    border : none;
    display : none;
    width: 400px;
    position: absolute;
    top: 0;
    left:3%;
    max-width: 94%;
    padding:20px 0 100px 0;
    z-index: 1337;
 	}
 	
 	.drop-down:target > ul {
     display : block;
	}
	
	.drop-down span.title_menu {
	display: block;
	float:right;
	position: relative;
	margin:19px 25px 10px 10px;
	line-height: 1;
	font-weight: normal;
	}
	
	.drop-down span.title_menu a {	
	display: block;
	font-size: 20px;
	margin : 0 auto;
	width:100px;
	padding: 6px 0px;
	color: #fff;
	background: #333;
	border-radius: 8px;
	-moz-box-shadow: 1px 1px 3px #aaa inset;
	-webkit-box-shadow: 1px 1px 3px #aaa inset;
	box-shadow : 1px 1px 3px #aaa inset;
	}
	
	.icon-menu {
	display : inline-block;
	padding: 0 10px 0 0;
	background-position: 0 0;
	line-height:inherit;
	height:auto;
	width:auto;
	vertical-align:middle;
	margin:0;
	}
	
	.drop-down span.title_menu a:hover, .drop-down span.title_menu a:focus {
	background: #000;
	text-decoration: none;
	}
	
	.drop-down:target span.title_menu {
	display: none;
	}
	
	.drop-down:target:before {
	content: "";
	position: fixed;
	z-index: -1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(80,80,80,.8);
	}
	
    .drop-down li {
    position: relative;
    display : block ;
    float: none;
    height:auto;
    width:auto;
    line-height: inherit;
    padding: 0 ;
    margin:0 0 4px 0;
    background-image : none;
    }
    
    .drop-down li, .drop-down li:first-child {
    border : none;
    }
    
    .drop-down li.parent a:after, .drop-down li.parent span:after {
    color: #fff;
    font-size: 100%;
    right: 12px;
    top: 15px;
    -moz-transform:rotate(90deg);
	-webkit-transform:rotate(90deg);
	-o-transform:rotate(90deg);
	-ms-transform:rotate(90deg);
	transform:rotate(90deg);
	}
	
	.drop-down li.parent li.parent a::after , .drop-down li.parent li.parent span::after,
	.drop-down li.parent li.parent li.parent a::after , .drop-down li.parent li.parent li.parent span::after {
    color: #000;
    font-size: 100%;
    right: 12px;
    top: 15px;
    -moz-transform:rotate(90deg);
	-webkit-transform:rotate(90deg);
	-o-transform:rotate(90deg);
	-ms-transform:rotate(90deg);
	transform:rotate(90deg);
	}
	
	.drop-down li.parent li.parent:hover a::after , .drop-down li.parent li.parent:hover span::after,
	.drop-down li.parent li.parent li.parent:hover a::after , .drop-down li.parent li.parent li.parent:hover span::after {
	color:#000;
	}		
	
	.drop-down li ul {
	display : block ;
	position: relative;
	top: 0;
	left: 0;
	z-index: 1;
	opacity:1;
	width: auto;
	max-width: none;
	/**	change	**/
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	-o-border-radius: 0;
	border-radius:0;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	padding: 0;
	margin:0;
	background-color: transparent;
	}

	.drop-down li ul ul {
	top: 0;
	left: 0;
	margin:0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	-o-border-radius: 0;
	border-radius:0;
	}

	.drop-down li ul:hover {
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	}
	
	.drop-down li li ul:hover {
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	}
	
	.drop-down li li {
	float:none;
	width:auto;
	background-image : none;
	padding:0;
	margin:0;
	}
	
	.drop-down li a, .drop-down li span.separator {
	display : block;
	width:auto;
	height : auto;
	padding: 14px 15px 14px 25px;
	margin:0;
	text-align : left;
	text-transform: none;
	font-weight: normal;
	line-height:100%;
	font-size:150%;
	background-image:none;
	background-color : #000;
	color : #fff;
	-moz-border-radius: 8px 8px 0 0;
	-webkit-border-radius: 8px 8px 0 0;
	-o-border-radius: 8px 8px 0 0;
	border-radius: 8px 8px 0 0;
	border : none;
	-webkit-transition : none;
	-moz-transition : none;
	-ms-transition : none;
	-o-transition : none;
	transition : none;
	}
	
	.drop-down > ul > li > a:only-child {
	border-radius: 8px;
	}
	
	.drop-down li li a, .drop-down li li span.separator {
	display : block;
	width:auto;
	color : #222;
	letter-spacing: 0px;
	font-size:140%;
	line-height:inherit;
	padding: 14px 15px 14px 25px;
	margin:0 ;
	background-image:none;
	background-color : #fff;
	border: 1px solid #aaa;
	border-top: 0;
	-moz-border-radius:  0;
	-webkit-border-radius:  0;
	-o-border-radius:  0;
	border-radius:  0;
	}
	
	.drop-down li ul, .drop-down ul ul li:last-child > a {
    border-radius: 0 0 8px 8px;
	}

	.drop-down li li li a, .drop-down li li li span.separator {
	font-size:125%;
	padding: 14px 15px 14px 40px;
	background-color : #e8e8e8;
	}
	
	.drop-down ul ul ul li:last-child > a {
    border-radius: 0 ;
	}
	
	.drop-down li li li li a, .drop-down li li li li span.separator {
	font-size:120%;
	padding: 14px 15px 14px 60px;
	background-color : #d8d8d8;
	}	
	
	.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 li li:first-child > a, .drop-down li li li:first-child > span {
	border-top-right-radius: 0;
	border-top-left-radius: 0;
	}
	
	.drop-down li li:last-child > a, .drop-down li li:first-child > span {
	border-bottom-left-radius:  0;
	border-bottom-right-radius:  0;
	}
	
	.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 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.active > a, .drop-down li.active > span, .drop-down li:hover > a, .drop-down li:hover > span {
	color: #fff ;
	background-color : #000;
	background-image: none;
	border: none;
	-moz-box-shadow: none;
	-webkit-box-shadow:none;
	box-shadow: none;
	}	
	
	.drop-down li li:hover > a, .drop-down li li:hover > span, .drop-down li li.active > a, .drop-down li li.active > span {
	color: #000 ;
	background-color : #fff;
	background-image: none;
	-moz-box-shadow: none ;
	-webkit-box-shadow: none ;
	box-shadow: none ;
	border: 1px solid #aaa;
	border-top: 0;
	}
	

	.drop-down li li li:hover > a, .drop-down li li li:hover > span, .drop-down li li li.active > a, .drop-down li li li.active > span {
	background-color : #e8e8e8;
	}

	.drop-down li li li li:hover > a, .drop-down li li li li:hover > span, .drop-down li li li li.active > a, .drop-down li li li li.active > span {
	background-color : #d8d8d8;
	}
	
	.drop-down li.current > a {
	color: #fff !important;
	text-decoration : none !important;
	background-color : #6699cc !important;
	}
	
	/* others + Disable position fixed for header */
	
	.drop-down li li:first-child a, .drop-down li li:first-child span.separator {
	border: 1px solid #aaa;
	border-top: 0;
	}
	
	#website-middle {
	margin-top:0 !important;
	}


}

@media screen and (max-width: 979px) {
  
	body {
	min-width : 0;
	}
	
	.wrapper-site {
	width:98%;
	}
	
	.module-image {
	width:98%;
	}

	
	/** 	remove the fixed width of Google map 		**/
	
	div[id*="googlemap"] {
	width:auto !important;
	}
	
	/** 	header  	**/
	
	.top_menu {
	float:left;
	padding : 0 0 0 0;
	}
	
	.bottom_menu li a, .bottom_menu li span.separator {
	padding: 5px 7px 4px 7px;
	}
	
	#social-links li a img {
	width:20px;
	}
	
	.logo-header .wrapper-site {
	width:auto;
	margin:0;
	}
	
	.logo {
	margin:10px;
	padding:0;
	background-image:none;
	float:left;
	text-align:center;
	}
	
	.logo span {
	font-size:30px;
	line-height:47px;
	}
	
	.logo span span {
	font-size:20px;
	line-height:22px;
	}
	
	.rainbow-bg-top {
	height:4px;
	clear:both;
	background : transparent url(../images/rainbow.png) 50% 0 no-repeat;
	background-size: 100% 2px; 		/** 	CSS3 property to set the width to 100% and height 2px 		**/
	}
	
	/** to prevent a problem when position users-image loading 		**/
	.image-position {
	min-height:100px;
	}

	/** 	CONTENT 	**/
	
	.users_image {
    margin: -15px auto 20px auto;
    width: 97%;
	}
	
	.left_column, .right-module-position, .without-image .left_column, .without-image .right-module-position,
	.with-top .left_column, .with-top .right-module-position, .with-users-image .left_column, .with-users-image .right-module-position {
	margin: 0;
	padding:0;
	min-height:0;
	}
	
	.left_column > div, .right-module-position > div, .without-image .left_column > div, .without-image .right-module-position > div,
	.with-top .left_column > div, .with-top .right-module-position > div, .with-users-image .left_column > div, .with-users-image .right-module-position > div {
	background-image : none;
	margin: 0;
	padding:0;	
	min-height:0;
	}
	
	.left_column > div > div, .right-module-position > div > div, .without-image .left_column > div > div, .without-image .right-module-position > div > div,
	.with-top .left_column > div > div, .with-top .right-module-position > div > div, .with-users-image .left_column > div > div, .with-users-image .right-module-position > div > div {
	background-image : none;
	background-color : transparent;
	}



	.left_column, .right-module-position, .top-module-position, .bottom-module-position {
	float:none;
	padding: 12px 0 12px 0;
	margin:0;
	background-image:none;
	min-height:auto;
	border:none;
	width : auto ;
	clear:both;
	}
	
	.left_column > div, .right-module-position > div {
	background-image:none;
	padding:0;
	}
		
	.right_column {
	overflow:visible;
	}
	
	.main_content {
	padding: 15px 20px 0 20px;
	}
	
	/** 	FOOTER 		**/
	
	.bottom_menu {
	display:block;
	float:none;
	padding:0;
	text-align:center;
	margin: 8px auto 6px auto;
	}
	
	.bottom_menu li {
	display:inline;
	float:none;
	padding:0;
	margin:0;
	width:auto;
	}
	
	.bottom_menu li a {
	display:inline-block;
	*display:inline;
	*zoom:1;
	}
	
	.address {
	clear: both;
	float:none;
	padding: 4px 0 0;
	text-align: center;
	}
	
	.social-links {
	clear: both;
	float:none;
	margin:35px 0 0 0;
	padding: 0;
	text-align: center;
	}
	
	.social-links ul {
	display:inline-block;
	}

}




/* Phone and little tablet */
@media screen and (max-width: 767px) {

	.logo {
	float:none;
	text-align:center;
	}
	
	.drop-down span.title_menu {
	float:none;
	margin:15px 3px 10px 3px;
	}
	
	.image-position {
	min-height: 0;
	}
	
	.top_menu li {
	padding: 4px 2px 0 2px;
	}
	
	.user1, .user2, .user3, .user4, .user5, .user6, .user7, .user8, .user9, .right-module-position, .user_image1, .user_image2, .user_image3 {
	float:none;
	padding:12px 0;
	margin:0;
	width : 100% !important;
	clear:both;
	}
	
	.user1, .user2, .user3, .user4, .user5, .user6, .user7, .user8, .user9, .user_image1, .user_image2, .user_image3 {
	margin : 8px 0 0 0;
	}
	
	.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, .user_image1 .border > div, .user_image2 .border > div, .user_image3 .border > div {
	margin-bottom:8px;
	}
	
	.moduletable.shadow > div {
	margin-bottom:0 !important;
	}
	
	.users_image, .without-image .users_image {
	margin: 10px 0;
	width:auto;
	}
	
	.user_image1, .user_image2, .user_image3 {
	min-height:0;
	background-image : none;
	padding: 0;
	z-index:1;
	}
	
	.user_image1 > div, .user_image2 > div, .user_image3 > div {
	background-image : none;
	padding:0;
	margin: 0;
	}
	
	.user_image1 > div > div, .user_image2 > div > div, .user_image3 > div > div {
	background-image : none;
	background-color:transparent;
	}	
	
	
	/* ++++++++++++++  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;
	}

}

@media (max-width: 600px) {

	textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"],
	input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"],
	input[type="search"], input[type="tel"], input[type="color"], .uneditable-input {
	max-width:280px;
	}
	
	fieldset dt {
    float: none;
    margin: 0;
    padding:15px 20px 0 0;
}

}


@media (max-width: 450px) {

	textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"],
	input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"],
	input[type="search"], input[type="tel"], input[type="color"], .uneditable-input {
	max-width:200px;
	}

}

@media (max-width: 350px) {

	textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"],
	input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"],
	input[type="search"], input[type="tel"], input[type="color"], .uneditable-input {
	max-width:150px;
	}

}

@media (max-width: 769px) {

	textarea, table, td, th, code, pre, samp {
	word-wrap: break-word; 
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	hyphens: auto;
	}
	
	code, pre, samp {
	white-space: pre-wrap;
	}

}