@media screen and (max-width: 1200px) {
	#site-wrapper {
		width: 100%;
		margin: 0;
	}
	#site-wrapper > header { height: 200px; }
	header > .component.menu {
		float: none;
		clear: both;
		height: 40px;
		width: 100%;
		padding-top: 30px;
		margin: 0;
		text-align: center;
	}
	header > .component.menu ul { padding: 0 50px; }
	header > .component.menu ul li {}
	.sidebar-container { top: 240px; }
	#slider-container { width: 100%; }
}

@media screen and (max-width: 980px) {
	/* Global */
	#site-wrapper > header { margin-bottom: 20px; }
	#site-wrapper > header .languages { float: left; }
	#site-wrapper > header h1 { padding-left: 20px; }
	.component.site_title {
		box-sizing: border-box;
		width: 100%;
		padding: 20px 20px 0;
		margin: 0;
	}
	.component.site_title .title:before,
	.component.site_title .title:after,
	.component.site_title .background:before,
	.component.site_title .background:after { display: none; }
	#useful-informations { padding: 30px; }
	#useful-informations .component.schedule.editus_view,
	#useful-informations .component.facilities.default_view,
	#useful-informations .useful-informations-column	{
		float: none;
		width: 100%;
		padding: 0;
	}
	#useful-informations .component.spoken_languages.editus_view,
	#useful-informations .component.links.default_view { padding: 0; }
	#map #map-informations {
		left: 0;
		width: 100%;
		padding: 20px;
	}
	.component.popin > .popin-content {
		box-sizing: border-box;
		width: 100%;
		padding: 20px;
		margin: 0;
	}
	#useful-informations:before { display: none; }
	body > nav.component.menu { display: none; }
	
	.component.menu {
		display: none;
	}
	
	#site-wrapper > header .logo {
		padding-left: 30px;
	}

	/* Home */
	#slider-container {
		margin-bottom: 30px;
	}
	#slider-container .component.site_title {
		position: absolute;
		top: -44px;
		padding: 0;
		background: #BCBCBC
	}
	#slider-container .component.site_title .title {
		box-sizing: border-box;
		width: 100%;
		padding: 0 15px;
		line-height: 44px;
	}
	#slick-slider:before,
	#slick-slider:after {
		display: none;
	}
	#slick-slider .slick-dots {
		bottom: 20px;
	}
	#slick-slider .slick-slider-slide img {
		width: 100%;
	}
	#slick-slider .content {
		padding: 20px 15px;
	}
	#slick-slider .content .title {
		padding: 15px;
		margin: 0;
		font-size: 20px;
		line-height: 24px;
	}
	#slick-slider .content .text {
		padding: 0 20px 20px;
		margin: 20px 0 0;
		font-size: 15px;
		line-height: 19px;
	}
	.component.presentation.short_view {
		padding: 0 20px;
	}
	.component.presentation.short_view .title,
	.component.catalog_highlights.editus_listing_view .title,
	#useful-informations > .title,
	.component.presentation.default_view .title,
	.component.catalog.title_view .title,
	.component.photos.gallery_view > .title,
	.component.videos.default_view .title,
	.component.videos.default_view .current_video  .title	,
	.component.contact.title_view .title,
	.news .component.menus .blocMenu .title {
		font-size: 20px;
		line-height: 24px;
	}
	.component.presentation.short_view .title { margin: 0; }
	#useful-informations .useful-informations-column { width: 50%; }
	.component.presentation.short_view .short-text {
		font-size: 14px;
		line-height: 24px;
	}
	
	/* Presentation */
	#main-wrapper > .slideshow,
    #main-wrapper > .slideshow .content_page,
	#main-wrapper > .slideshow .content_page .div_side,
	.slideshow.default_view .diaporama,
	.slideshow.default_view .diaporama .img { width: 100% !important; 	}
	.component.presentation.default_view .presentation-content {
		font-size: 15px;
		line-height: 19px;
	}
	
	/* Catalog homepage */
	#catalog_homepage {
		box-sizing: border-box;
		width: 100%;
		padding: 0 30px;
	}
	
	/* Catalog */
	.component.catalog_page.sub_menu_view { height: auto; }
	.component.catalog_page.sub_menu_view ul { height: auto; }
	.component.catalog_page.sub_menu_view ul li {
		display: block;
		margin: 0 30px 10px;
	}
	.component.catalog.sort_view {
		box-sizing: border-box;
		height: auto;
		width: 100%;
		padding: 10px 30px;
	}
	.component.catalog .products_list { text-align: center; }
	.component.catalog .products_list .product_item { margin: 0 auto 10px; }
	.component.catalog .products_list .product_item .catalog_product .product-label,
	.component.catalog .products_list .product_item .catalog_product .prices,
	.component.catalog .products_list .product_item .button-container { display: block; }
	
	/* Product */
	.component.catalog_product.separated_pagination_view {
		box-sizing: broder-box;
		position: relative;
		width: calc(100% - 56px);
		margin: 18px 28px;
	}
	#product-wrapper > .component.catalog_product.title_view .title.product-label {
		width: 100%;
		margin: 30px 0;
	}
	.component.catalog_product.images_view,
	#catalog_product_informations {
		box-sizing: border-box;
		clear: both;
		float: none;
		width: 100%;
		padding: 0 30px;
		margin: 0 0 20px;
	}
	.component.catalog_product.images_view  .thumb-box { height: 60px; }

	/* Activity */
	.component.activity img {
		height: auto !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}
	.component.activity section h4 { text-align: center; }
	.component.activity .richtext .title {
		box-sizing: border-box;
		padding: 0 30px;
		font-size: 20px;
		line-height: 24px;
	}
	.component.activity .richtext p {
		padding: 0 30px;
		font-size: 15px;
		line-height: 19px;
	}
	.component.activity .richtext:before { display: none; }
	.component.activity > .richtext img {
		height: auto;
		width: 100%;
		margin-top: 20px;
	}
	
	/* Galleries */
	.component.photos,
	.component.videos {
		box-sizing: border-box;
		width: 100%;
		padding: 0 30px;
	}
	
	/* Contact */
	.contact-form {
		width: 100%;
		padding: 0 30px;
		border: none;
	}
	.component.contact.contact_form_view .captcha {
		clear: both;
		width: 100%;
		margin: 10px 0 0;
		padding: 0;
	}
	.component.contact.contact_form_view .captcha .captcha-text { width: 100%; }
	.component.contact.editus_contact_form_view,
	.component.contact.editus_contact_form_view .sender_name_field, 
	.component.contact.editus_contact_form_view .sender_firstname_field, 
	.component.contact.editus_contact_form_view .sender_email_field, 
	.component.contact.editus_contact_form_view .sender_tel_field, 
	.component.contact.editus_contact_form_view .subject_field, 
	.component.contact.editus_contact_form_view .sender_message_field,
	.component.contact.editus_contact_form_view .contact_form_send .send_button { float: none; }
	.component.contact.editus_contact_form_view .subject_field,
	.component.contact.editus_contact_form_view .sender_message_field,
	.component.contact.contact_form_view .subject_field,
	.component.contact.contact_form_view .sender_message_field {
		clear: both;
		margin: 0 4px 8px;
		width: 100%;
		box-sizing: border-box;
	}	
	.component.contact.editus_contact_form_view form,
	.component.contact.contact_form_view form {
		width: 100% !important;
		box-sizing: border-box !important;
	}
	.component.contact.contact_form_view .sender_email .field label {
		padding: 0;
		margin: 0 0 10px;
		font-size: 15px;
		line-height: 19px;
	}
	.component.map.editus_view,
	.component.map.editus_directions_view {
		box-sizing: border-box;
		clear: both;
		float: none;
		width: 100%;
		margin: 0;
	}
	.component.map.editus_directions_view { height: auto; }
	.component.map.editus_directions_view .route {
		position: relative;
		padding: 0;
		margin: 0;
	}
	.component.map.editus_directions_view .route_start,
	.component.map.editus_directions_view .route_end {
		width: 100%;
		padding: 0;
		margin: 0 0 10px;
		border: none;
	}
	.component.map.editus_directions_view .route .submit {
		clear: both;
		float: none;
		width: 100%;
		padding: 0;
		margin: 0;
	}
	.component.map.editus_directions_view .route .submit input {
		position: relative;
		right: auto;
		bottom: auto;
		margin: 0 auto;
	}
	.component.contact.contact_form_view .field.send-copy label {
		padding: 0;
		line-height: 22px;
	}

	/* Navigation */
	body > #show-mobilemenu {
		display: block;
		position: absolute;
		top: 15px;
		right: 15px;
		height: 50px;
		width: 50px;
		background: #BCBCBC url('../img/mobile-menu-icon.png') no-repeat center center;
		background-size: 30px 30px;
		border: none;
		border-radius: 2px;
		z-index: 999996;
	}
	body > .component.menu #hide-mobilemenu {
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		background: transparent;
		-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
		z-index: 999998;
	}
	body > .component.menu {
		position: absolute;
		top: 0;
		right: -240px;
		height: 100%;
		width: 100%;
		padding-top: 0;
		z-index: 999997;
	}
	body > .component.menu > ul {
		position: absolute;
		top: 0;
		right: 0;
		height: 100%;
		width: 240px;
		background: #BCBCBC;
		box-shadow: 0 0 10px rgba(0, 0, 0, .25);
		z-index: 999999
	}
	body > .component.menu > ul > li {
		box-sizing: border-box;
		display: block;
		position: relative;
		width: 100%;
		background: #BCBCBC;
		border-bottom: 1px solid rgba(0, 0, 0, .25);
		line-height: 40px;
		text-align: left;
	}
	body > .component.menu > ul > li > a {
		box-sizing: border-box;
		display: block;
		width: 100%;
		padding: 0 20px;
		color: #000000;
		font-size: 15px;
		font-weight: 500;
		line-height: 40px;
		text-decoration: none;
		text-overflow: ellipsis;
		max-width: 250px;
		white-space: nowrap;
		transition: color .2s ease;
		overflow: hidden;
	}
	body > .component.menu > ul > li.active > a,
	body > .component.menu > ul > li > a:active {
		background-color: #585858;
		color: #000000;
	}
	body > .component.menu > ul > li.with-submenu .submenu-button {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		height: 40px;
		width: 40px;
		color: #fff;
		font-size: 20px;
		font-weight: 600;
		line-height: 40px;
		background: rgba(0, 0, 0, .15) url('../img/submenu-arrows-down.png') no-repeat 0 0;
		background-size: 40px 40px;
		text-align: center;
		cursor: pointer;
	}
	body > .component.menu > ul > li.with-submenu .submenu-button.opened {
		background: rgba(0, 0, 0, .1) url('../img/submenu-arrows-up.png') no-repeat 0 0;
		background-size: 40px 40px;
	}
	body > .component.menu > ul > li ul {
		display: none;
		box-sizing: border-box;
		width: 100%;
		background: rgba(0, 0, 0, .25);
		border-radius: 4px;
		z-index: 99999;
	}
	body > .component.menu > ul > li ul li {
		height: auto;
		min-height: 18px;
		width: 100%;
		margin: 0;
		border-bottom: 1px solid rgba(0, 0, 0, .25);
		text-align: left;
	}
	body > .component.menu > ul > li:last-child,
	body > .component.menu > ul > li ul li:last-child { border-bottom: none; }
	body > .component.menu > ul > li ul li a {
		box-sizing: border-box;
		display: block;
		width: 100%;
		padding: 10px 20px;
		color: #fff;
		font-size: 14px;
		font-weight: 600;
		line-height: 17px;
		text-decoration: none;
	}
	body > .component.menu > ul > li ul li.active > a,
	body > .component.menu > ul > li ul li > a:active	{
		background-color: #ffffff;
		color: #000000;
	}
	/* Contact */
	.news {
		box-sizing: border-box;
		width: 100%;
		padding: 0 30px;
	}
}

@media screen and (max-width: 560px) {
	.component.site_title .title {
		box-sizing: border-box;
		padding: 65px 35px 0 0;
		font-size: 18px;
		line-height: 22px;
		text-shadow: 2px 4px 3px rgba(0, 0, 0, .3);
	}
	.component.site_title.home .title { padding: 0 35px 0 0; }
	#useful-informations .useful-informations-column { width: 100%; }
	.component.contact.contact_form_view .sender_email .field label { width: 35%; }
	.component.contact.contact_form_view .sender_email .field input,
	.component.contact.contact_form_view .sender_email .field textarea { width: 60%; }
	.news .component.announcements { padding: 0; }
	.news  .component.announcements.editus_view .single_news {
		padding: 0;
		margin: 0;
	}
	.component.announcements.editus_short_view .legend,
	.component.announcements.editus_view .legend {
		height: 152px;
		padding: 0;
	}
	.component.announcements.editus_view .legend .ico_date {
		clear: both;
		float: left;
		margin: 0 0 10px 0;
	}
	.component.announcements.editus_view .legend .left { float: left; }
	.catalog_product.editus_pagination_view {
		width: 100%;
		margin: 5px 0 0;
		padding: 5px 0;
		border-top: 1px solid #BCBCBC;
		border-bottom: 1px solid #BCBCBC;
	}
	.catalog.editus_pagination_view { margin-right: 0; }
	.catalog_product.editus_pagination_view ul {
		float: none;
		width: 100%;
	}
	.catalog.editus_pagination_view li { margin: 0 8px; }
	.catalog_product.editus_pagination_view li.previous {
		float: left;
		margin-left: 0;
	}
	.catalog_product.editus_pagination_view li.next { float: right; }
	#useful-informations #view-all-links,
	#useful-informations #view-all-brochures,
	#useful-informations .component.brochures-title,
	#useful-informations .component.brochures	{ padding-left: 0; }
	#accouncements,
	.component.presentation.default_view { padding: 0 20px; }
	.component.slideshow.default_view { margin: 10px 0; }
	.component.slideshow.default_view .diaporama .img img {
		height: auto;
		width: 100%;
	}
}

@media screen and (max-width: 374px) {	
	/* Product */
	.component.catalog_product.separated_pagination_view { display: none; }
}