/*
 * (C)opyright Solocal Group 2015-2016
 *
 * This is Solocal Group proprietary source code.
 * Any reproduction modification or use without prior written
 * approval from Solocal Group is strictly forbidden.
 *
 */

@font-face {
	font-family: 'icomoon-ecommerce';
	src:url('../fonts/icomoon-ecommerce.eot?jccwo0');
	src:url('../fonts/icomoon-ecommerce.eot?#iefixjccwo0') format('embedded-opentype'),
		url('../fonts/icomoon-ecommerce.woff?jccwo0') format('woff'),
		url('../fonts/icomoon-ecommerce.ttf?jccwo0') format('truetype'),
		url('../fonts/icomoon-ecommerce.svg?jccwo0#icomoon-ecommerce') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* Wow, should we do that ? */
[class^="icon-"], [class*=" icon-"] {
	/*font-family: 'icomoon-ecommerce';*/
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/*********************************/
/*common*/
/*********************************/
html{height:100%}
body{min-height:100%;position:relative;line-height:1.31;/*background-color: #7A578F;*/color:#464645;background-attachment: fixed;}
body.overlay{overflow: hidden}
.component.background.default_view.no_background{background:#f7f8fa}
.page-size {/*max-width: 960px;*/margin: 0 auto;padding:20px 10px 20px;/*background: white;*/position: relative}

.catalog-page-content.page-size,
.presentation-page-content.page-size,
.activity-page-content.page-size,
.photos-page-content.page-size,
.video-page-content.page-size,
.contact-page-content,
.legal-notice-page-content.page-size{padding:140px 10%;/*background:#f7f8fa;*/}

.catalog-page-content.page-size .item-container,
.presentation-page-content.page-size .item-container,
.activity-page-content.page-size .item-container,
.photos-page-content.page-size .item-container,
.video-page-content.page-size .item-container,
.point_of_sale {background:white;padding-bottom:20px}

.component.vertical_layout.page-size > .item-container > .item {margin-top: 10px;}
.component.vertical_layout.page-size > .item-container > .item-first {margin-top: 0;}

@media screen and (min-width: 769px) {
    /* TODO: split the badge component into sub-views and use the column-width class */
    .component.content_badges .title,
    .component.content_badges .content-badges-text,
    .component.point_of_sale_selector,  /* due to the point_of_sale_selector component not taking class */
    .column-width {padding-left: 10%; padding-right: 10%;}
}

#page{position: relative;/*background:white*/}

/* clear floats in richtext */
.richtext .clear {
    clear: both;
}

.richtext table,
.richtext table td,
.richtext table th {
    border-color: #ccc;
}

/*********************************/
/*header*/
/********************************/
#page > header {height: 120px;position: fixed;z-index: 200;width: 100%;}
#page > header .header-content {width: 100%;display: table; height: 120px;margin: 0 auto;text-align: center;position: fixed;box-shadow: 2px 2px 10px #50276B}
.component.background.header_view.default
{ background :rgba(255,255,255,0.9)}

/*********************************/
/*Link*/
/*********************************/
/* link with chevron on the right */
.component.presentation.short_view.using-link-with-chevron-on-right .more-info,
.component.news.short_view.using-link-with-chevron-on-right .link,
.component.mba.default_view.using-link-with-chevron-on-right .more-info,
.component.activity.short_view.using-link-with-chevron-on-right .more-info,
.component.content_badges.default_view.using-link-with-chevron-on-right .content-badge-wrapper-link .content-badge-label,
.component.point_of_sale.more_info_link_view.using-link-with-chevron-on-right .more-info,
.component.point_of_sale.point-of-sale-block .using-link-with-chevron-on-right .link,
.component.contact.list_view.using-link-with-chevron-on-right .link,
.footer-layout .component.point_of_sale .using-link-with-chevron-on-right .link,
.footer-layout .component.brochures.using-link-with-chevron-on-right .link,
.footer-layout .component.links.using-link-with-chevron-on-right .link,
.footer-layout .component.point_of_sale .using-link-with-chevron-on-right .link,
.footer-layout .component.point_of_sale .using-link-with-chevron-on-right .more-info{
   /* color: #7A578F;
    text-decoration: none;*/
}
.component.presentation.short_view.using-link-with-chevron-on-right .more-info:after,
.component.news.short_view.using-link-with-chevron-on-right .link:after,
.component.mba.default_view.using-link-with-chevron-on-right .more-info:after,
.component.activity.short_view.using-link-with-chevron-on-right .more-info:after,
.component.content_badges.default_view.using-link-with-chevron-on-right .content-badge-wrapper-link .content-badge-label:after,
.component.point_of_sale.more_info_link_view.using-link-with-chevron-on-right .more-info:after,
.component.point_of_sale.point-of-sale-block .using-link-with-chevron-on-right .link:after,
.component.contact.list_view.using-link-with-chevron-on-right .link:after,
.footer-layout .component.brochures.using-link-with-chevron-on-right .link:after,
.footer-layout .component.links.using-link-with-chevron-on-right .link:after,
.footer-layout .component.point_of_sale .using-link-with-chevron-on-right .link:after,
.footer-layout .component.point_of_sale .using-link-with-chevron-on-right .more-info:after{
    content:"";
    display: inline-block;
    background: url(../img/link_generated_secondary.png);
    width: 6px;
    height: 10px;
    margin-left: 8px
}

.component.news.using-link-with-chevron-on-right .link:hover,
.component.content_badges.default_view.using-link-with-chevron-on-right .content-badge-wrapper-link .content-badge-label:hover,
.component.point_of_sale.point-of-sale-block .using-link-with-chevron-on-right .link:hover,
.component.contact.list_view.using-link-with-chevron-on-right .link:hover,
.footer-layout .component.brochures.using-link-with-chevron-on-right .link:hover,
.footer-layout .component.links.using-link-with-chevron-on-right .link:hover,
.footer-layout .component.point_of_sale .using-link-with-chevron-on-right .link:hover{

    text-decoration: underline
}
.component.presentation.short_view.using-link-with-chevron-on-right .more-info:hover,
.component.mba.default_view.using-link-with-chevron-on-right .more-info:hover,
.component.activity.short_view.using-link-with-chevron-on-right .more-info:hover,
.component.point_of_sale.more_info_link_view.using-link-with-chevron-on-right .more-info:hover,
.footer-layout .component.point_of_sale .using-link-with-chevron-on-right .more-info:hover{
	text-decoration: none
}

/* pdf link*/
.component.catalog_terms_of_sale .brochure.link,
.component.catalog_product.brochure_view .link{
    color: #7A578F;
    text-decoration: none;
    display: inline-block;
    background: url("../img/pdf.png") no-repeat scroll 0 0 rgba(0, 0, 0, 0);
    line-height: 16px;
    margin-bottom: 5px;
    min-height: 16px;
    padding-left: 20px;
}
.component.catalog_terms_of_sale .brochure.link:after,
.component.catalog_product.brochure_view .link:after{
    content: "";
    display: inline-block;
    background: url("../img/link_generated_secondary.png");
    width: 6px;
    height: 10px;
    margin-left: 8px;
}
.component.catalog_terms_of_sale .brochure.link:hover,
.component.catalog_product.brochure_view .link:hover{
    text-decoration: underline
}

/* simple link (without chevron) */
.bottom-footer .last_updated.using-simple-link .localch-logo,
.bottom-footer .last_updated.using-simple-link .link,
.bottom-footer .legal_notice.using-simple-link .legal-notice-link,
.bottom-footer .privacy_policy.using-simple-link .privacy-policy-link,
.component.presentation.default_view.using-simple-link a,
.component.activity.default_view.using-simple-link a,
.component.spoken_languages.default_view.using-simple-link a,
.component.means_of_payment.default_view.using-simple-link a,
.component.news.short_view.using-link-with-chevron-on-right .richtext a,
.component.privacy_policy.notice_link_view a,
.component.privacy_policy.notice_view a,
.component.privacy_policy.default_view a,
.component.cookies_policy.default_view a{
    color: #7A578F;
    text-decoration: none;
}
.bottom-footer .last_updated.using-simple-link .localch-logo:hover,
.bottom-footer .last_updated.using-simple-link .link:hover,
.bottom-footer .legal_notice.using-simple-link .legal-notice-link:hover,
.bottom-footer .privacy_policy.using-simple-link .privacy-policy-link:hover,
.component.presentation.default_view.using-simple-link a:hover,
.component.activity.default_view.using-simple-link a:hover,
.component.spoken_languages.default_view.using-simple-link a:hover,
.component.means_of_payment.default_view.using-simple-link a:hover,
.component.news.short_view.using-link-with-chevron-on-right .richtext a:hover,
.component.privacy_policy.notice_link_view a:hover,
.component.privacy_policy.notice_view a:hover,
.component.privacy_policy.default_view a:hover,
.component.cookies_policy.default_view a:hover{
    text-decoration: underline
}
.component.activity.short_view.column-width.with-h1-like.with-biggertext.using-link-with-chevron-on-right {
    padding: 0 0 70px 0;
}

/* link with specific chevrons for catalog */
.component.catalog_product.separated_pagination_view .nav-previous,
.component.catalog_product.separated_pagination_view .nav-next{
    color: #7A578F;
    text-decoration: none
}
.component.catalog_product.separated_pagination_view .nav-previous:before{
    content:"";
    background: url(../img/mini-left_generated_secondary.png) no-repeat;
    padding-left: 8px;
    display: inline-block;
    width: 9px;
    height: 17px;
    vertical-align: middle
}
.component.catalog_product.separated_pagination_view .nav-next:after{
    content:"";
    background: url(../img/mini-right_generated_secondary.png) no-repeat scroll 8px center;
    padding-right: 8px;
    display: inline-block;
    width: 9px;
    height: 17px;
    vertical-align: middle
}
.component.catalog_product.separated_pagination_view .nav-previous:hover,
.component.catalog_product.separated_pagination_view .nav-next:hover{
    text-decoration: underline;
}
.component.catalog.back_view .nav-previous,
.component.catalog_product.back_view .nav-previous{
    color:#50276B;
    text-decoration: none;
}
.component.catalog.back_view .nav-previous:hover,
.component.catalog_product.back_view .nav-previous:hover{
    text-decoration: underline
}
.component.catalog.back_view .nav-previous:before,
.component.catalog_product.back_view .nav-previous:before {
    content:"";
    margin-right:9px;
    background: url(../img/mini-left_generated_primary.png);
    display: inline-block;
    width: 9px;
    height: 17px;
    vertical-align: middle
}

/* Back link for cart */
.component.cart .prev-step {
    color: #7A578F;
    text-decoration:none;
}

.component.cart .prev-step:before {
    content:"";
    background: url(../img/mini-left_generated_secondary.png);
    display: inline-block;
    width: 9px;
    height: 17px;
    vertical-align: middle;
    margin-right: 10px;
}
.component.cart .prev-step:hover {
    text-decoration: underline;
}

/******************************************************/
/*Button*/
/* general rules 
- see specific rules (padding, width) in each section */
/******************************************************/
.component.booking .booking-button,
.reservation_bar .reservation-content .component.contact_page.contact_link_view .contact-link,
.home-page .component.catalog.short_view .link-button,
.component.contact .send_button,
.component.catalog_product.ecommerce_view .add-to-basket,
.component.cart .next-step,
.component.cart .cart-item .shopping-info .actions .delete,
.component.cart .order-recap .promo-code-input .redeem,
.component.social_sharing.share_by_email_form_view .button,
.component.map.share_form_view .button {
    font-weight: bold;
    border: 0 none;
    cursor: pointer;
    text-align: center;
    position: relative;
}
/*override the default component styles*/
.component.booking .booking-button:hover {
    background-color: #7A578F;
}

.component.booking .booking-button:hover:after,
.reservation_bar .reservation-content .component.contact_page.contact_link_view .contact-link:hover:after,
.home-page .component.catalog.short_view .link-button:hover:after,
.component.contact .send_button:hover:after,
.component.catalog_product.ecommerce_view .add-to-basket:hover:after,
.component.cart .next-step:hover:after,
.component.cart .cart-item .shopping-info .actions .delete:hover:after,
.component.cart .order-recap .promo-code-input .redeem:hover:before,
.component.social_sharing.share_by_email_form_view .button:hover:before,
.component.map.share_form_view .button:hover:before {
    content: "";
    background: rgba(0,0,0,0.2);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

/* Same selection without delete's cart buttons 
   which follow baseCart.css color rules */
.component.booking .booking-button,
.reservation_bar .reservation-content .reservation-button .component.contact_page.contact_link_view .contact-link,
.home-page .component.catalog.short_view .link-button,
.component.contact .send_button,
.component.catalog_product.ecommerce_view .add-to-basket,
.component.cart .next-step,
.component.cart .order-recap .promo-code-input .redeem,
.component.social_sharing.share_by_email_form_view .button:hover,
.component.map.share_form_view .button:hover {
    background-color: #7A578F;
    color: #FFFFFF;
}

/* cart buttons : general rules in baseCart.css - specific rules here 
TODO : should be refactored on baseCart.css ? */
.component.cart .cart-item .shopping-info .actions .delete,
.component.cart .order-recap .promo-code-input .redeem {
    padding: 9px;
    width: auto;
    min-width:80px;
}


/*********************************/
/*List*/
/*********************************/
.richtext ul, .referential-module-items, .means-of-payment-items {padding-left: 0; list-style: none outside; }
.richtext ul li, .referential-module-items > .item:not(.no-bullet), .means-of-payment-items > .item, .spoken-languages-items > .item {list-style-type: disc; padding-left: 17px; margin-left: 17px;}
.richtext li, .referential-module-items > .item:not(.no-bullet), .means-of-payment-items > .item, .spoken-languages-items > .item { display: list-item;}/* due to SPT-20160316*/

/*********************************/
/*spoken languages*/
/*********************************/
.spoken_languages .spoken-languages-item:before{display: none}




/*********************************/
/*error field*/
/*********************************/
.nagare-error-message {display: none;}
form .field.error label {color: red}
.nagare-error-field .nagare-error-input input,
.nagare-error-field .nagare-error-input select,
.nagare-error-field .nagare-error-input textarea,
.contact_form.default_view .nagare-error-input input[type="text"],/* needs to be specified*/
.contact_form.default_view .nagare-error-input textarea,/* needs to be specified*/
.field.error .custom-select,
.custom-select.error {border-color: red}

/*********************************/
/*Title*/
/*********************************/
.title, .subtitle, h1, h2, h3, .contact-element .label{color:#50276B}
.with-h1-like .title, .richtext h1{text-align: center;font-weight: bold/*100*/;/*padding-top:45px;*/margin-bottom:25px}
.with-h2-like .title, .subtitle, .richtext h2{font-weight: bold/*100*/;text-align: center;margin-bottom:20px;font-size: 2.8rem;}
.with-h3-like .title, .subsubtitle, .richtext h3{font-weight: bold/*100*/;text-align: left;margin:50px 0 25px 0}
.with-h4-like .title, .richtext h4{font-weight: bold/*100*/;padding-top: 0}

.contact-element .label{font-size:22px;margin-bottom:15px;font-weight:100}

.site_title.with_link_view .title {
    float: none;
    /*margin-top: -150px;*/
    margin-left: 10%;
    width: auto;
    text-align: left;
	position: absolute;
	background: rgba(0,0,0,0.7);
	z-index:1;
	max-width: 370px;
	top:150px;
	padding: 20px;
	display: table;
	box-shadow: 2px 10px 20px black;
}
	
}
/*********************************/
/*header*/
/*********************************/
.component.background.header_view {background: #FFF; color: #50276B}
.component.background.header_view.secondary {color: #50276B}
.component.background.header_view.no-background {
    /* background: none; */
}
.header-buttons {
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -20px;
    white-space: nowrap;
	
}

.header-buttons > * {
    display: none;/*inline-block*/
    vertical-align: middle;
    margin-left: 10px;
}
/**************Menu Responsive***********/

#menu-toggle {
    cursor: pointer;
    min-width: 35px;
    padding-bottom: 19px;  /* reserved-space, height of the icon/background image */
    background: url(../img/menu-toggle_generated_primary.png) bottom left repeat-x;
}

#menu-toggle .component.menu.title_view .menu-title{
    font-size: 13px;
    line-height: 16px;
    color: #50276B;
    text-transform: uppercase;
}

.component.menu.default_view{display: table;width: 100%;height: 100%}
#main-menu{background: rgba(0,0,0,0.8);text-align: center;position: fixed;top:0;left: 0;right: 0;bottom: 0;z-index: 9999;color:white;font-size: 24px/* default font-size because not specify by LCH at the moment*/;display: none;overflow: auto}
#main-menu.open{display: block}
#main-menu .item-container{list-style: none;padding: 0;display: block;text-align: center;vertical-align: middle}
#main-menu .item-container .item{text-transform: uppercase;padding:0 0 10px 0}
#main-menu .item-container .item .item-container .item{text-transform: none}
#main-menu .menu-link{
    text-decoration: none;
    color: inherit;
    position:relative}
#main-menu .menu-link:not(:only-child):after{
    content:"";
    display: inline-block;
    background: url(../img/menu-right.png) no-repeat center center;
    height: 14px;
    width: 14px;
    position: absolute;
    top: 50%;
    margin-top: -7px;
    margin-left: 13px}
#main-menu .menu-link.open:not(:only-child):after{background: url(../img/menu-down.png) no-repeat center center}
#main-menu .menu-link:not(:only-child)+ul{display:none}
#main-menu .menu-link.open:not(:only-child)+ul{display:block;margin-top: 10px;}
#main-menu .menu-link:hover{
color: #cccccc;}
#main-menu .menu-item-tab{height:auto !important;padding: 0 0 10px 0 !important;}
#main-menu .close{display: block;height: 27px;width: 27px;background: url(../img/close.png);position: absolute;right:5%;top:45px;cursor: pointer}
#main-menu .menu-items-pages{margin-top:10px !important}
.component.menu.default_view {
    display: block;
    width: 100%;
    height: auto;
}
/*********Menu Desktop*******/

 #main-menu-desktop {
    padding: 2.6em 0 ;
	width: 80%;
	float: right;
	line-height: 18px;
}
#main-menu-desktop .item-container {
    list-style: none;
    padding: 0;
text-align: center;}

#main-menu-desktop .item-container .item {
    padding: 5px 0;
    display: table-cell;
    width: 1%;
    vertical-align: middle;
    position: relative;
    font-weight: bold;
	height:47px;
}
#main-menu-desktop .item-container .item{border: 1px solid transparent;border-bottom:0;}

/*.item-first:not(.menu-item-page){margin:0 !important}*/

/*#main-menu-desktop .item-container .active.item {color:#50276B;background:#7A578F;border-top-left-radius:3px;border-top-right-radius:3px;border : 1px solid #50276B;border-bottom:0;}
*/
#main-menu-desktop .active .menu-link.menu-link-tab {
    color: #50276B;
}


#main-menu-desktop .item-container .active.item  {background:/*grey*/ #f7f8fa;border-radius:3px;}
/*#main-menu-desktop .item-container .menu-item-tab .active.item .menu-link-tab  {color:#50276B}
#main-menu-desktop .item-container .active.item .item {color:black}*/

#main-menu-desktop .item-container .item:hover{background:/*grey*/ #f7f8fa;border-radius:3px;}
#main-menu-desktop .item-container .item-container .item:hover {border-radius:0; border:none;}
#main-menu-desktop .item-container .item:hover .item-container{display:block}
#main-menu-desktop .item-container .item:hover{/*cursor:pointer;*/}
#main-menu-desktop .item-container .item:hover .active.item .menu-link {color: #50276B;}
#main-menu-desktop .item-container .item:hover  > .menu-link{color: #50276B;}
#main-menu-desktop .item-container .item:hover .menu-link .item-container .item .menu-link{color: black;}

#main-menu-desktop .menu-link{text-decoration:none;}
/*#main-menu-desktop .item-container .item  .item-container .item  .menu-link{color:black;}*/
#main-menu-desktop .item-container .item  .item-container .item  .menu-link:hover{color:#50276B;}
#main-menu-desktop .item-container .item:hover ~ .item-container .item-first .menu-link{color: #50276B}
/*#main-menu-desktop .menu-link:hover ~ .item-container .item-first .menu-link{color: #50276B}
#main-menu-desktop .active .menu-link:hover ~ .item-container .item-first{color: #50276B}*/
#main-menu-desktop .menu-link:not(:only-child):after{
    content:"";
    display: inline-block;
    /*background: url(../img/menu-right.png) no-repeat center center;*/
    height: 14px;
    width: 14px;
    position: absolute;
    top: 50%;
    margin-top: -7px;
    margin-left: 13px}
#main-menu-desktop .menu-link.open:not(:only-child):after{/*background: url(../img/menu-down.png) no-repeat center center*/}
#main-menu-desktop .menu-link:not(:only-child)+ul{
	display: none;
	top: 0;
	padding: 0px 0 0 0;
	margin-top: 43px;
	position: absolute;
	background: none;
	transition: max-height 1.5s linear;
	
	z-index: 500;
	width: 100%;
	height: auto;
}
#main-menu-desktop .menu-link:not(:only-child)+ul:before{
    content: "";
    display: block;
    width: 100%;
    height: 47px;    
}
#main-menu-desktop .menu-link:hover:not(:only-child)+ul,#main-menu-desktop .menu-link:not(:only-child)+ul:hover{display:block;margin-left: 0;border-radius: 3px;}	
/*#main-menu-desktop .menu-link.open:not(:only-child)+ul{display:block}*/

#main-menu-desktop .item-container .item-container .item :hover{display:block}
#main-menu-desktop .item-container .item-container .item {
    display: block;
    width: 100%;
    border: none;
    text-align: center;
    padding: 5px 0;
	background: rgba(255,255,255,0.9);
}
#main-menu-desktop .item-container .item-container .item-last,#main-menu-desktop .item-container .item-container .item-last:hover{
border-bottom-right-radius: 3px;
border-bottom-left-radius: 3px;
border-bottom: 2px solid #50276B;}


.component.languages.dropdown_view{color:#50276B;text-transform: uppercase;position: absolute;left: 10px;top:50%;margin-top:-9px;cursor: pointer;text-align: left;z-index: 210}
.component.languages.dropdown_view .available-languages{box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);position: relative;left: -20px;margin-top: 0;padding:0;}
.component.languages.dropdown_view .available-languages .item{padding-left: 17px;}
.component.languages.dropdown_view .active .flag,
.component.languages.dropdown_view .available-languages .flag{color:#50276B;text-decoration: none;padding-right: 13px;}
.component.languages.dropdown_view .active .flag:after{content:"";background: url(../img/lang-down_generated_primary.png);width: 9px;height: 5px}

.component.logo{display: block;height: 120px;vertical-align: middle;text-align: center;position:absolute;line-height:100px;width:20%;padding:10px;}
.logo_image {max-height: 100px;}

.reservation_bar{border-bottom: 1px solid #7A578F;border-top: 1px solid #7A578F;background:white;}
.is-sticky .reservation_bar{z-index: 200;}
.reservation_bar .reservation-content{width: 960px;min-height: 50px;margin: 0 auto;padding: 0 0 0 10px}
.reservation_bar .reservation-content .item-container{padding: 0; list-style: none}
.reservation_bar .reservation-content .item-container > .item{padding: 0;}
.component.booking.default_view:before{display: none}
.component.booking .booking-button{border-radius: 0;/*padding: 0 57px;*/height: 50px;line-height: 50px;width:100%;}
.component.booking.phone_view{color:#7A578F;line-height: 50px}
.component.booking.phone_view .label{display: inline;margin-right: 7px}
.component.booking.phone_view a{color:inherit;text-decoration: none}
.component.booking.phone_view a:hover{color:inherit;background: rgba(0,0,0,0.2)}

.component.cart.basket_button_view a{background: url(../img/cart_generated_primary.png) no-repeat;height: 39px;width: 42px;display: block;overflow: hidden;text-indent: -5000px}

/**reservation bar button**/
.component.booking.default_view,
.reservation_bar .reservation-content .component.contact_page.contact_link_view{
    margin: 0;
    padding: 0;
    width:100%;
    position : relative;
}
.reservation_bar .reservation-content .reservation-button .contact-link {
    display : inline-block;
    text-decoration: none;
    height: 50px;
    line-height: 50px;
    padding : 0 57px 0 57px;
}
@media screen and (max-width: 480px) {
    .reservation_free_text{
        padding: 0 15px;
        text-align: center
    }
    .component.booking.default_view,
    .reservation_bar .reservation-content .component.contact_page.contact_link_view {
        float: none
    }
    .component.booking .booking-button,
    .reservation_bar .reservation-content .component.contact_page.contact_link_view .contact-link{
        width: 100%;
        text-align: center
    }
    .component.booking.phone_view{
        text-align:center;
    }
}

/*********************************/
/*home */
/*********************************/
.home-page #page > header{position: fixed;z-index: 200;width: 100%}
.home-page #page > footer:before{display: none}
.home-page #page > footer:after{display: none}

.first-home-blocks > .item-container > .item:not(.item-first) {margin-top: 20px;}

.home-page .component.catalog.short_view {text-align: center}
.home-page .component.catalog.short_view .description{text-align: left}
.home-page .component.catalog.short_view .link-button{display: inline-block;text-decoration: none;margin: 0 auto;padding:15px 25px}

.home-page .component.catalog_carousel.main-slider{padding-top: 25px}

.home-page .component.catalog_highlights .title{padding-top:55px}
.home-page .component.catalog_highlights .highlights-content{width: 210px;height: 330px;margin: auto}
.home-page .component.catalog_highlights .highlights-content .internal_component.catalog_product.short_view{height: 330px}
.home-page .component.catalog_highlights.default_view .product-slider .arrow.next{right:-60px}
.home-page .component.catalog_highlights.default_view .product-slider .arrow.prev{left:-60px}

.home-page .component.point_of_sale.more_info_link_view{text-align: center;padding-bottom: 30px}

.home-page .multimedia-block .with-h1-like .title {margin-bottom: 15px;} 
.home-page .component.photos.first_photo_view .photo .img{width: 100%}
.home-page .page-size { padding:0px 0px}
.home-page .map_separator{
    border-top : 1px solid #50276B;
}

.home-page .point-of-sale-map-block .item-container{
    padding-left : 0px;
}
.news-display{display:block;clear: right;}
.clear{clear:both;}
.Col-left {
    width: 30%;
    float: left;
    padding: 20px;
	
	background:white;
}
.Col-right {
    width: 69%;
    float: left;
    
	margin:-20px 0 0 1%;
	
}
.Col-right .title{text-align:left;}
.Col-center {
	clear:both;
	display:none;
	background:white;
}
.right1, .right2{background:white;}
.right1{float:right;box-shadow: 0px 3px 0 #f0f1f3;padding:20px;}
.right2{margin-top: 10px;
width: 100%;
float: right;}
.component.news{box-shadow: 0px 3px 0 #f0f1f3;padding:20px;}
/*********************************/
/*badge */
/*********************************/
.component.content_badges .content-badge-items{padding: 55px 0 0}
.component.content_badges .icomoon{width: 130px; height: 130px;margin: 0 auto;padding-top: 25px;}
.component.content_badges .content-badge-image-placeholder { height: 130px;}
.component.content_badges .content-badge-img {
    display: block;
    height: 200px;
    width: 200px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 0;
}
.component.content_badges {padding: 40px 10%;}
.content-badges{background:white;padding: 20px 0;}
/*********************************/
/*referential-module */
/*********************************/
.referential-module{padding:20px 0}
.referential-module .referential-module-title{margin-bottom:0}

/*********************************/
/*localina popin*/
/*********************************/
#localina-modal-overlay{opacity: 0.8!important;z-index: 9999!important}


/*********************************/
/*popins*/
/*********************************/
.component.popin {background: rgba(0, 0, 0, 0.8);}
.component.popin .title{text-align: left}
.component.popin .subtitle{margin-bottom: 0;text-align: left}
.component.popin .field .captcha-label{border: 0}


/*********************************/
/*photos*/
/*********************************/

.component.photos .gallery-photos {
margin-left: 0px;
margin-right:20px;}
.component.photos.gallery_light_view .photos-title { margin-bottom: 60px; }
.component.photos.gallery_short_view .gallery-photos .photo .image .img{width:100%}
/*@media screen and (min-width: 1120px) {
    .component.photos.slideshow_light_view .previous {
        left: -80px;
    }

    .component.photos.slideshow_light_view .next,
    .component.photos.slideshow_light_view .close {
        right: -80px;
    }
}*/

/* Mobile version */
@media screen and (max-width: 480px) {
    .component.photos.slideshow_light_view .previous {
        left: 0;
    }

    .component.photos.slideshow_light_view .next,
    .component.photos.slideshow_light_view .close {
        right: 0;
    }
}
.multimedia-block .component ,.multimedia-block .component .title {
    background: white;
}
.home-page-content{
	/*background: /*grey #f7f8fa;*/
	padding: 20px 0 0;
}
.multimedia-block .title{background:/*grey*/ #f7f8fa;}
.multimedia-block .item-first{padding: 20px 10% 0px}
.gallery-block .item-first{padding:20px 0}
.multimedia-block { padding-bottom: 60px;}
/*********************************/
/*360 & video*/
/*********************************/

/* players on the home page */
.threesixty-block .component.threesixties.current_player_view,
.video-block .component.videos.current_player_view {
    margin: 0;
}

.threesixty-block .component.threesixties .threesixty_player {
    height: 450px;
}

/* fixed height mode in desktop only */
@media screen and (min-width: 769px) {
    .video-block .component.videos .video_player_wrapper {
        padding: 0;  /* disable height ratio */
        height: 700px;  /* fixed height instead */
    }
}

/* 360/video pages */
@media screen and (min-width: 769px) {
    .threesixty-page-content,
    .video-page-content{
        padding: 0 10px 20px;
    }
}

.component.threesixties.current_title_view,
.component.threesixties.current_description_view,
.component.videos.current_title_view,
.component.videos.current_description_view {
    margin-top: 20px;
}

.component.threesixties.current_title_view,
.component.videos.current_title_view {
    text-align: center;
}

.component.threesixties.current_description_view,
.component.videos.current_description_view {
    text-align: justify;
}

.component.threesixties.current_title_view .title,
.component.videos.current_title_view .title {
    padding-top: 0;
}

.component.threesixties.current_player_view,
.component.videos.current_player_view {
    margin-bottom: 50px;
}

.component.videos .video_player_wrapper {
    padding-bottom: 56.25%; /* 16:9 ratio */
}

.component.threesixties .threesixties_items,
.component.videos .videos_items {
    margin-top: 50px;
}

.component.threesixties .threesixties_items .item,
.component.videos .videos_items .item {
    width: calc(100% / 3);
}


@media screen and (max-width: 768px) {
    .component.threesixties.current_title_view,
    .component.threesixties.current_description_view,
    .component.videos.current_title_view,
    .component.videos.current_description_view {
        padding: 0 30px;
    }

    .component.threesixties .threesixties_items .item,
    .component.videos .videos_items .item {
        width: calc(100% / 2);
    }
}

@media screen and (max-width: 480px) {
    .component.threesixties.current_title_view,
    .component.threesixties.current_description_view,
    .component.videos.current_title_view,
    .component.videos.current_description_view {
        padding: 0;
    }

    .component.threesixties.current_player_view,
    .component.videos.current_player_view {
        margin-left: -15px;
        margin-right: -15px;
    }

    .component.threesixties .threesixties_items .item,
    .component.videos .videos_items .item {
        width: 100%;
    }
    

}


/*********************************/
/*contact*/
/*********************************/
.component.point_of_sale .item-container{list-style: none}
.component.point_of_sale .selector {width: 100%}
.component.point_of_sale_selector{text-align: center;padding-bottom: 35px}
.component.point_of_sale_selector p{margin-bottom: 15px}

.component.address.default_view,
.component.address.long_view{padding:0; margin-bottom: 0;}
.component.address.default_view::before,
.component.address.long_view::before{display: none}

.address-block{width:80%;margin: 0 auto;overflow:hidden;}
.address-block .col1{width:47%;display: inline-block;vertical-align: top}
.address-block .col1 .title{padding-top: 0;text-align: left;margin-bottom: 15px}
.address-block .col2{width:46%;display: inline-block;vertical-align: top;float: right}

.component.contact.list_view .item-container .item{margin-bottom:15px}
.component.contact.list_view .label{color:#50276B}
.component.contact.list_view .item-container .item-1 .contact-element .label {display: none}
.component.contact.email_view .email{padding: 0}
.component.contact.email_view .email::before{display: none}


.contact-page .address-block, .contact-page .address-block .title{text-align:center}
.contact-page .address-block {margin-bottom:30px}
/* Disabled temporarily, due to #1916
.component.map .map_contents{height: 700px}
*/

.component.accesses .accesses-with-icons .access:before{background-color:#7A578F}
.component.accesses .accesses-with-icons.accesses-inverse .access:before{background-color:#7A578F}
.component.accesses .item{display:inline-block;width:49%;vertical-align:top;}
.component.accesses .access .type{color:#7A578F}
/*.component.accesses {
    text-align: center;
}*/
/*********************************/
/*schedule*/
/*********************************/
.component.schedule .richtext{padding-left:0px}
.component.schedule .title{padding-top: 0;text-align: left;margin-bottom: 15px}
.contact-page .component.schedule .title{text-align:center}
.component.schedule .opening_hours::before{display: none}
.component.schedule .opening_hours{padding: 0}
.component.schedule li{padding-left: 0}
.component.schedule .opening_hours .appointment {display: block;}


/*********************************/
/*footer*/
/*********************************/
footer {background: white;}
#page > footer{position: relative;border-top:1px solid #50276B}
.home-page #page > footer{
    border-top : 0px none;
}
.social-buttons {
    padding: 20px 0;
    border-top: 2px solid #7A578F;
	border-bottom: 2px solid #7A578F;
    text-align: center;
}
#page > footer .social-buttons{border-top:1px solid #50276B;border-bottom:1px solid #50276B;background: white; height: 70px;text-align: center}
#page > footer .social-buttons:empty{display: none}
#page > footer .title{text-align: center;padding:0 0 15px 0;margin: 0}

footer .footer-layout>.item-container.slots-1,
footer .footer-layout>.item-container.slots-2{max-width: 600px;margin: 0 auto}


.component.footer-layout{padding:20px 10px 20px 10px}
.component.footer-layout .item-container .item{margin-bottom: 3px}

/*#page > footer .component.social_sharing {padding-top: 21px}*/
.component.social_sharing .badge-button-label{display: inline-block;overflow: hidden;text-indent: -5000px;vertical-align: middle;margin:0 30px}
.component.social_sharing .fb-badge-button-label{background: url(../img/social-fb_generated_primary.png) no-repeat center center;width: 29px;height: 29px}
.component.social_sharing .tw-badge-button-label{background: url(../img/social-twitter_generated_primary.png) no-repeat center center;width: 29px;height: 29px}
.component.social_sharing .in-badge-button-label{background: url(../img/social-linkedin_generated_primary.png) no-repeat center center;width: 29px;height: 29px}
.component.social_sharing .gp-badge-button-label{background: url(../img/social-google_generated_primary.png) no-repeat center center;width: 29px;height: 29px}
.component.social_sharing .share-by-email{background: url(../img/social-mail_generated_primary.png) no-repeat center center;width: 29px;height: 29px;    display: inline-block;margin: 0 30px;overflow: hidden;text-indent: -5000px;vertical-align: middle}
.component.social_sharing .share-by-sms{background: url(../img/social-sms_generated_primary.png) no-repeat center center;width: 29px;height: 29px;    display: inline-block;margin: 0 30px;overflow: hidden;text-indent: -5000px;vertical-align: middle}
.component.social_sharing .badge-popin{top:auto;bottom: 40px;border:1px solid #7A578F;padding: 10px;width: 386px;left:-152px}
.component.social_sharing .badge-popin:after, .component.social_sharing .badge-popin:before {top: 100%;left: 50%;border: solid transparent;content: " ";height: 0;width: 0;position: absolute;pointer-events: none}
.component.social_sharing .badge-popin:after {border-color: rgba(136, 183, 213, 0);border-top-color: white;border-width: 10px;margin-left: -10px}
.component.social_sharing .badge-popin:before {border-color: rgba(194, 225, 245, 0);border-top-color: #7A578F;border-width: 11px;margin-left: -11px}
.component.social_sharing a{border-radius:100px}
.contact-box ul {padding: 0;list-style: none}
.contact-box li {display: inline-block}

#page > footer .with-h3-like .title{padding-bottom:15px;display: inline-block}

footer .horizontal_layout > .item-container > .item {
	
float: left;
vertical-align: top;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
min-height: 1px;
text-align: center;
}
/*********************************/
/*mogs*/
/*********************************/
.component.mogs.default_view {
    text-align: center;
}
.mogs-items {
    padding: 15px;
}
/*********************************/
/*form*/
/*********************************/
form{margin: 0 auto}
.field label{display: block}
.field.send-copy label{display: inline-block}
.field .captcha-label{display: inline-block;border-radius:3px;height: 44px;border: 1px solid #cbcbcb;margin-top: 0;float: left}
.captcha .captcha-image{width: 168px}
.captcha.mandatory{margin-top: 15px;overflow: auto;padding-bottom: 10px}
.captcha .captcha-text{padding-bottom:10px}
.contact_form.default_view .field .captcha-input{display: inline-block;width: calc(100% - 181px);float: right}
.contact_form .mandatory.field label::after, .contact_form .mandatory-message::before,.captcha.mandatory .captcha-text::after{color:#bf051d}
.contact_form.default_view input[type="text"],
.contact_form.default_view select,
select.selector,
.contact_form.default_view textarea{background-color: #ffffff;color: #666666;border: 1px solid #cbcbcb;line-height: 15px;padding:10px;margin:0 0 10px 0;border-radius:3px;height: 44px}
.contact_form.default_view textarea {height: 105px; overflow: auto; resize:none}
.contact_form.default_view input[type="text"],
.contact_form.default_view select,
.contact_form.default_view textarea {display: inline-block; width: 100%}

.component.contact_form_view form{max-width: 380px}

.button.send_button{width: 168px;padding: 11px;}


/*********************************/
/*catalog menu*/
/*********************************/
.component.catalog_page.sub_menu_view{padding: 20px 0 0;}
.component.catalog_page.sub_menu_view .item-container{list-style: none;color:#999b9e;padding: 0; margin-left: 0px; overflow: hidden;}
.component.catalog_page.sub_menu_view .menu-item-page{float: left}
.component.catalog_page.sub_menu_view .menu-item-page .menu-link-page{display: block; margin: 0 0 20px 20px; border:1px solid #50276B;color:#50276B;width: 170px; height:44px;line-height:44px;overflow: hidden;text-decoration: none;text-align: center}
.component.catalog_page.sub_menu_view .menu-item-page.active .menu-link-page{border:1px solid #7A578F;color:#7A578F}


/*********************************/
/*slider*/
/*********************************/
b.site-title{
	margin:0 0 0.67em;
	display:block
}
.component.site_title.default_view{
	position:absolute;
	opacity:0;
	z-index:-100000000000000;
}
.component.slider.with_site_title_view > .item-container > .item .content{
    text-align: center
}
/*baseline*/
.component.slider > .item-container > .item .content .site-title{
    font-weight: 100;
    line-height: 1.1em;
	font-size: 3rem;
}
/*content title*/
.component.slider > .item-container > .item .content .title{
   font-weight: 100;
   line-height: 1em;
   font-size: 2.5rem;
}
/*nav with buttons*/
.component.slider.with_site_title_view .slider-buttons{
    width: 100%;
    text-align: center;
    bottom:20px;
}
.component.slider .slider-buttons .slider-button{
    opacity: 1
}
.component.slider .slider-buttons .slider-button.active,
.component.slider .slider-buttons .slider-button:hover{
    background: #50276B
}
.component.slider.with_site_title_view > .item-container > .item .content {
    background-color: #000;
    position: absolute;
    width: auto;
    left: 10%;
	right: 66%;
	bottom: -20px;
	margin: 0 20px;
	max-height: 100%;
}
/*.component.slider > .item-container > .item .content {
	right: 0;
	top: 30%;
	bottom:auto;
	width: 25%;
}*/
/*tablet and desktop version*/
@media screen and (min-width: 481px) {
    .component.slider{
        height: 700px;
        background-color:white
    }
    .component.slider .item-container .item .visual .visual-item{
        height: 700px;
        visibility: hidden
    }
    /*.component.slider.with_site_title_view > .item-container > .item .content{
        border:0;
        background-color: transparent;
        top:230px;
        bottom: 45px;
        text-shadow: 1px 1px 13px rgba(0, 0, 0, 1);
        overflow: hidden;
    }*/
}
/*tablet version*/
@media screen and (max-width: 768px) {
    .component.slider.with_site_title_view > .item-container > .item .content{
        width:100%;
        padding: 0 30px;
        left:0px;
		top: 0px;
		bottom: auto;
    }
	
}
/*mobile version*/
@media screen and (max-width: 480px) {
    .component.slider .visual{
        height:350px;
        max-height: 350px
    }
    .component.slider .slider-buttons{
        top:310px;
    }
    .component.slider.with_site_title_view > .item-container > .item .content .site-title {
        color:white;
    }
    .component.slider > .item-container > .item .content .title{
        line-height: 1.1em
    }
}

/*********************************/
/*spoken languages*/
/*********************************/
.spoken_languages .spoken-languages-items{padding-left: 17px;list-style: disc}
.spoken_languages .spoken-languages-item::before{display: none}

/*********************************/
/*catalog icons*/
/*********************************/
.icon_on_nav .nav-element:hover{text-decoration: none}
.icon_on_nav .nav-element:focus{outline:0}
.icon_on_nav .product-slider .nav-element.nav-previous{background: url(../img/slider-left_generated_primary.png);display: inline-block;width: 29px;height: 56px}
.icon_on_nav .product-slider .nav-element.nav-next{background: url(../img/slider-right_generated_primary.png);display: inline-block;width: 29px;height: 56px}

/*********************************/
/*catalog products*/
/*********************************/
.component.catalog.back_view,
.component.catalog_product.back_view {position:absolute;left: 0;bottom: 10px}
.component.catalog_product form{max-width: inherit}

 

@media screen and (min-width: 769px) {
    .component.catalog.form_wrapper_view{padding: 0 70px}
}

.title-area { position: relative; }

.catalog-controls {display: block;padding-bottom: 5px;display:table;width:100%;margin-bottom:40px}
.catalog-controls .control-item {display:table-cell}
.catalog-controls .control-item .title{color: inherit;display:inline-block;font-size: 15px/* default font-size because not specify by LCH at the moment*/;margin: 0;padding: 11px 9px 11px 0;width: auto;text-transform:none;font-weight: normal;}
.catalog-controls .control-item.component.catalog.sort_view{padding-right: 30px}
.catalog-controls .control-item.component.catalog.filter_view{padding-right: 25px}
.catalog-controls .control-item.component.catalog.display_mode_view{padding-right:0;text-align:right;}
.catalog-controls .control-item .custom-select {vertical-align: middle}

.catalog-controls .control-item .sorting-form,
.catalog-controls .control-item .filter-form {display: inline-block;}

.component.catalog.display_mode_view .buttons-grp{display: inline-block;white-space: nowrap; vertical-align: middle}

.component.catalog.display_mode_view a.display-grid,
.component.catalog.display_mode_view a.display-list {display: inline-block;width: 44px;height: 44px;padding: 0;margin: 0;border: 1px solid #ececec;outline: 0;background-color: #FFF;vertical-align:middle;border-radius: 3px}
.component.catalog.display_mode_view a.display-grid.active,
.component.catalog.display_mode_view a.display-list.active {background-color: #d0d0d0}
.component.catalog.display_mode_view a.display-list {background-image: url(../img/list.png);background-position: center center;background-repeat: no-repeat}
.component.catalog.display_mode_view a.display-grid {background-image: url(../img/grid.png);background-position: center center;background-repeat: no-repeat;margin-right: 9px}

.component.catalog > .description {padding:0px 0 20px}
.component.catalog > .description p {margin: 0}

.component.catalog .products_list  {padding:0;margin:0;list-style-type:none;}
.component.catalog .products_list.grid-view {margin-right:-80px}
.component.catalog .products_list.grid-view .product_item{padding: 0; display:inline-block;margin:0 80px 80px 0;width: 210px;height: 330px;max-height: 330px;overflow: hidden;vertical-align:top}

.component.catalog .products_list.list-view .product_item{display:block;margin:0 0 8px 0;width: 100%;height: 120px;padding: 0}

.component.catalog .products_list.list-view .product_item:last-child{margin-bottom:0px;}

.component.catalog_product.title_view{display:table-cell;width:100%}
.component.catalog_product.title_view .title{margin:0;color:black;font-weight: 100}

.component.catalog.description_view{padding-bottom: 30px}

/*product item view*/
.component.catalog_product.separated_pagination_view {display:table;white-space:nowrap;width: 100%;}
.component.catalog_product.separated_pagination_view .nav-previous{display:table-cell;text-align:left; }
.component.catalog_product.separated_pagination_view .nav-next{display:table-cell;text-align:right; }


/* BEWARE: this view is not for a Socrea component but an internal component */
.internal_component.catalog_product.short_view {border: 1px solid #ececec;cursor: pointer; width:100%;height:100%;background-color: white;text-align: left;position:relative;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box; padding-bottom: 37px; }
.list-view .internal_component.catalog_product.short_view {padding-bottom: 0;}  /* no need to reserve space for the prices anymore */
.internal_component.catalog_product.short_view .product_visual_link {display: inline;}
.internal_component.catalog_product.short_view .product_visual {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;padding: 3px; margin: 0;width: 100%}
.list-view .internal_component.catalog_product.short_view .product_visual {margin: 0;padding: 10px;width: auto;height: 100%;max-height: 100%;float: left}

/* The product label should take as much space as possible, with a minimum of 2
 * lines when the space is constrained (i.e. in the catalog_highlights) */
.internal_component.catalog_product.short_view .product-label {margin: 5px 10px 0;line-height: 1.4;padding: 0;overflow:hidden;text-align: center;}
.list-view .internal_component.catalog_product.short_view .product-label {margin: 20px 10px 5px 120px;position: relative; height:calc(100% - 55px);}
.internal_component.catalog_product.short_view .product-label {min-height: 2.8em;}
@media  screen and (min-width:768px){
    .component.catalog_highlights .internal_component.catalog_product.short_view .product-label {max-height: 2.8em;}
}

/* The prices should take at most 1 line and be placed at the bottom of the item.
 * A space is reserved somewhere at the bottom via a bottom padding, either in the
 * parent or in the product-label depending on the display (grid vs list)
 */
.internal_component.catalog_product.short_view .prices {
    position: absolute;
    bottom: 0;
    display: block;
    margin: 10px;
    width: calc(100% - 20px);  /* minus margins */
    height: 1em;  /* 1-line height */
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: center;
}



.internal_component.catalog_product.short_view .flag {position: absolute;top:3px;right:3px;height:90px;width:90px;overflow:hidden;}
.internal_component.catalog_product.short_view .flag .flag-label {position: absolute; bottom:0; width:100%; padding:0; color: white; font-weight: bold; font-size: 12px/* default font-size because not specify by LCH at the moment*/; text-transform: uppercase; margin:0;}
.internal_component.catalog_product.short_view .flag .promo,
.internal_component.catalog_product.short_view .percent {background: #f53547;height: 90px;width: 90px;left: 45px;top: -45px;position: absolute;text-align: center;-ms-transform: rotate(45deg);-moz-transform: rotate(45deg);-webkit-transform: rotate(45deg);-o-transform: rotate(45deg);}
.internal_component.catalog_product.short_view .flag .sale {background: #a02b9d; height:90px; width:90px; left: 45px; top: -45px; position: absolute; text-align: center; -ms-transform: rotate(45deg); -moz-transform: rotate(45deg); -webkit-transform: rotate(45deg); -o-transform: rotate(45deg);}
.internal_component.catalog_product.short_view .flag .new {background: #691567;height:90px;width:90px; left: 45px;top: -45px;position: absolute;text-align: center;-ms-transform: rotate(45deg);-moz-transform: rotate(45deg);-webkit-transform: rotate(45deg);-o-transform: rotate(45deg);}
.internal_component.catalog_product.short_view .flag .promo-campaign {background: #8AB860;height:90px;width:90px; left: 45px;top: -45px;position: absolute;text-align: center;-ms-transform: rotate(45deg);-moz-transform: rotate(45deg);-webkit-transform: rotate(45deg);-o-transform: rotate(45deg);}

.component.product-detail .flag {position: absolute;top:3px;right:3px;height:90px;width:90px;overflow:hidden;}
.component.product-detail .flag .flag-label {position: absolute; bottom:0; width:100%; padding:0; color: white; font-weight: bold; font-size: 12px/* default font-size because not specify by LCH at the moment*/; text-transform: uppercase; margin:0;}
.component.product-detail .flag .promo,
.component.product-detail .percent {background: #f53547;height: 90px;width: 90px;left: 45px;top: -45px;position: absolute;text-align: center;-ms-transform: rotate(45deg);-moz-transform: rotate(45deg);-webkit-transform: rotate(45deg);-o-transform: rotate(45deg);}
.component.product-detail .flag .sale {background: #a02b9d; height:90px; width:90px; left: 45px; top: -45px; position: absolute; text-align: center; -ms-transform: rotate(45deg); -moz-transform: rotate(45deg); -webkit-transform: rotate(45deg); -o-transform: rotate(45deg);}
.component.product-detail .flag .new {background: #691567;height:90px;width:90px; left: 45px;top: -45px;position: absolute;text-align: center;-ms-transform: rotate(45deg);-moz-transform: rotate(45deg);-webkit-transform: rotate(45deg);-o-transform: rotate(45deg);}
.component.product-detail .flag .promo-campaign {background: #8AB860;height:90px;width:90px; left: 45px;top: -45px;position: absolute;text-align: center;-ms-transform: rotate(45deg);-moz-transform: rotate(45deg);-webkit-transform: rotate(45deg);-o-transform: rotate(45deg);}


/*product detail view*/
.component.product-detail{padding-top:20px;max-width: 715px;margin: 20px auto 0 auto}
.component.product-detail  h2.title{text-align: left;padding: 0}
.component.product-detail .custom-select{float: right}
.component.product-detail .component.vertical_layout > .item-container > .item { 
        margin-bottom: 20px; 
    }

/* specific design for product detail in T009 */
.component.product-detail.horizontal_layout > .item-container.slots-2 > .item.item-1 {
    width: 45%;
}
.component.product-detail.horizontal_layout > .item-container.slots-2 > .item.item-2 {
    width: 55%;
}



/* FIXME: Not really responsive */
/*.horizontal_layout.product-detail {display: table; width:100%;}*/
.horizontal_layout.product-detail > .item-container > .item {padding-right: 0px}
.horizontal_layout.product-detail > .item-container > .item-last {padding-left:8%}

@media screen and (max-width: 768px) {
    .horizontal_layout.product-detail > .item-container > .item {padding-right: 0px}
}

.horizontal_layout.product-detail .title {margin: 15px 0 10px 0;padding: 0; text-align:left;}
.component.catalog_product.price_view .prices .price-item .title{color:black;margin: 0}


.component.catalog_product .product-detail-thumb {max-width: 100%;}
.component.catalog_product .product-detail-thumb .main-image {display:inline-block;max-width: 100%; border: 1px solid #ececec;padding: 3px;margin-bottom: 3%;position:relative;}
.component.catalog_product .product-detail-thumb .product-image {max-width: 100%;}
.component.catalog_product .product-detail-thumb .thumb-box {max-width: calc(100% + 5px);/*display:inline-block;*/margin-left:-5px; overflow:hidden;}

.component.catalog_product .product-detail-thumb .thumb {width: 25%;float:left;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;padding-left: 5px}
.thumb-zoom {background-color: #FFF;border-radius: 10px;box-shadow: 0 3px 5px rgba(0, 0, 0, 0.5);padding: 10px;width: 560px;height: 560px;position: absolute;margin-bottom: 5px;max-width: none;max-height: none;z-index: 9999;}
/*
.component.catalog_product .product-detail-thumb .thumb {width: 22%;margin-right: 3%;margin-bottom: 25px}
.component.catalog_product .product-detail-thumb .thumb:nth-of-type(4n) {margin-right: 0}
*/

.component.catalog_product.brochure_view .terms{margin-bottom:20px}
.component.catalog_product.brochure_view .terms.uploaded_pdf_box {border-top: 1px solid #ececec;border-bottom: 1px solid #ececec;padding-top: 20px}

.component.catalog_product.options_view .listing_options .label {padding-right: 9px;margin: 12px 0 0 0;width: auto;display: inline-block;min-width: 120px}
.component.catalog_product.options_view .field {margin-bottom: 15px;}
.component.catalog_product.options_view .field:after {clear:both; display:block; content:"";}

.horizontal_layout.product-share-links-desktop {list-style-type:none;padding:0;font-size:0 /* ??? */}
.horizontal_layout.product-share-links-desktop .item-container > .item {width:auto;margin: 2px 5px 0px 0px !important}
.horizontal_layout.product-share-links-desktop li a {display: inline-block;margin:0 10px;height: 29px;width: 29px; text-indent: -9999px;position:relative;text-decoration: none;border-radius:50px}
.horizontal_layout.product-share-links-desktop .fb {background:url("../img/social-fb_generated_primary.png") no-repeat scroll }
.horizontal_layout.product-share-links-desktop .tweet {background:url("../img/social-twitter_generated_primary.png") no-repeat scroll }
.horizontal_layout.product-share-links-desktop .share-by-email {background:url("../img/social-mail_generated_primary.png") no-repeat scroll ;margin:0 10px}
.horizontal_layout.product-share-links-desktop .print:before {color: #666666;content: "";font-family: "icomoon_catalog";font-size: 16px;line-height: 1;margin: 0;position:absolute;left:0;top:0;text-indent:0;height: 29px;width: 29px;text-align: center;vertical-align: middle;line-height: 29px;}

.component.catalog_product.promotion_view .promotion {color: #7A578F;font-weight: bold;}
.component.catalog_product.price_view .prices .regular-price {color: #999;text-decoration: line-through; background-color: white;font-weight: normal;}
.component.catalog_product.price_view .prices {border-top: 1px solid #ececec;border-bottom: 1px solid #ececec;padding: 13px 0;width: 100%}
.component.catalog_product.price_view .prices .price {position: relative;float:right;line-height: 23px;}
.component.catalog_product.price_view .prices .price-item {margin-bottom: 10px}
.component.catalog_product.price_view .price {font-weight: bold;float:right;}

/* A REVOIR */
.component .short.prices {font-size: 17px/* default font-size because not specify by LCH at the moment*/; line-height: 1em;}
.component .short.prices .regular-price {color: #999;text-decoration: line-through; background-color: white;font-weight: normal;}
.component .short.prices .price-item {display: inline;}
.component.catalog .prices.short .price.regular-price {margin-right:10px;}
.list-view .internal_component.catalog_product.short_view .prices.short {left: 108px;}

.component.catalog_product.ecommerce_view .add-to-basket {display: inline-block;padding: 10px;line-height: 22px;color: #000000;width:100%;}

/* pagination */
.component.catalog.pagination_view {border-top: 1px solid #ececec;margin-top: 30px;text-align: center;}
.component.catalog.pagination_view .pagination-elements {position: relative;margin-top: 30px;text-align: center;display: inline-block;padding: 0 1.2em}
.component.catalog.pagination_view .pagination-elements .pagination-items {display: inline-block;margin: 0 auto;padding:0 25px}
.component.catalog.pagination_view .pagination-elements .pagination-items .pagination-item{list-style: none;padding: 0;display: inline-block;vertical-align: middle;margin: 0 .5em;}
.component.catalog.pagination_view .pagination-elements .pagination-btn.prev {position: absolute;top: 3px;left: 0;}
.component.catalog.pagination_view .pagination-elements .pagination-btn.next {position: absolute;top: 3px;right: 0;}
.component.catalog.pagination_view .pagination-elements .pagination-item .number {font-weight: bold;font-size: 12px/* default font-size because not specify by LCH at the moment*/;}
.component.catalog.pagination_view .pagination-elements .pagination-item .number{color: #000;}
.component.catalog.pagination_view .pagination-elements .pagination-item .number.active {font-size: 16px/* default font-size because not specify by LCH at the moment*/;color: #cccccc;}

/* terms of sales block */
.component.catalog_terms_of_sale.terms_pdf_view, .component.catalog_terms_of_sale.brochure_pdf_view{text-align: center}
.component.catalog_terms_of_sale.title_view .title {word-wrap: break-word;text-align: center;margin: 0 0 25px 0; padding-top:20px}
.component.catalog_terms_of_sale.description_view .description{padding: 10px 0 30px 0}
.component.catalog_terms_of_sale .brochure.pdf {margin-bottom: 15px;}

/*********************************/
/*dropdown*/
/*********************************/
.custom-select,
.custom-select ul {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;width: 165px;background: #fff;border: 1px solid #cbcbcb}
.custom-select {position: relative;display: inline-block;padding: 11px 25px 11px 8px;cursor: pointer;outline: none;border-radius: 3px;height: 44px}
.custom-select ul {position: absolute;top: 100%;left: -1px;list-style: none;border-top: 0;margin: 0;padding: 0 8px 11px 8px;z-index: 999;overflow: auto;}
.custom-select .sorting-title {font-size: 14px/* default font-size because not specify by LCH at the moment*/;font-weight: normal;margin: 0;padding: 0;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;display: block;max-width: 100%;color:#666666}
.custom-select .sorting-title:after {background:url(../img/dropdown.png);width: 16px;height: 8px;content: "";display: block;position: absolute;right: 8px;top: 18px}
.custom-select .option-list {display: none;}
.custom-select .option-list .grouptitle {border-top: 1px solid #CCCCCC; color: #000000; font-weight: bold; margin-top: 5px; padding-top: 5px;}
.custom-select.unfolded .option-list{display: block;z-index: 1;color:#666666}


/************************
        CAROUSEL
************************/

.component.catalog_carousel.default_view .product-slider .item-container-wrapper{margin-right: 13px;}
.main-visual .component.catalog_carousel.default_view .product-slider .item-container .item .internal_component.catalog_product.short_view {margin: 0 13px 0 0; height:330px}
.component.catalog_carousel.default_view .product-slider .item-container .item .internal_component.catalog_product.short_view {margin: 0 80px 0 0; height:330px}
.component.catalog_highlights.default_view .product-slider .arrow,
.component.catalog_carousel.default_view .product-slider .arrow{position: absolute; top: 50%; z-index: 5;}
.component.catalog_highlights.default_view .product-slider .arrow.prev,
.component.catalog_carousel.default_view .product-slider .arrow.prev{left: 0;}
.component.catalog_highlights.default_view .product-slider .arrow.next ,
.component.catalog_carousel.default_view .product-slider .arrow.next{right: 0;}
.component.catalog_highlights.default_view .product-slider .arrow.hidden,
.component.catalog_carousel.default_view .product-slider .arrow.hidden {display: none;}

.component.catalog_carousel.default_view .product-slider {margin: 0 auto;}
.component.catalog_carousel.default_view .product-slider .item-container .item .internal_component.catalog_product.short_view {width: 210px}

.main-visual .component.catalog_carousel.main-slider {padding: 48px 20px}
.main-visual .component.catalog_carousel.main-slider .product-slider .arrow.prev{left: 5px;}
.main-visual .component.catalog_carousel.main-slider .product-slider .arrow.next{right: 5px;}
.main-visual .component.catalog_carousel.main-slider {background-color: #F6F6F6;}

/************************
        MAP ROUTE
************************/
.component.map .map-content div.way .way_start{width:72%}
.component.map .map-content div.way .way_end{width:72%}
.component.map .map-content div.way input[type="text"]{width:65%}

/************************
        terms of sale
************************/
.terms-of-sale-block-content{
    padding-top:30px;
}
.terms-of-sale-block-content > *{
    width:80%;
    margin:0 auto;
}

/*********************************/
/*responsive*/
/*********************************/

@media screen and (max-width: 960px) {
    #page{background: white}
    #page > header .header-content{width: 100%}
    .reservation_bar .reservation-content{width: 100%}

    .component.footer-layout{width: 100%}
	.component.slider > .item-container > .item .content .site-title{
    font-weight: 100;
    line-height: 1.1em;
	font-size: 2.5rem;}
}

@media screen and (max-width: 768px) {
    .page-size{width: 100%;padding:20px 30px 20px;}
	/*.home-page .page-size {
    padding: 20px 10px;}*/
    #page > header{height: 120px}
    #page > header .header-content{height: 120px}
    .component.logo{height: 120px;width:50%;}
	
    .component.languages.dropdown_view{left: 30px}
    .header-buttons{right:30px}
	#main-menu-desktop {display: none}
	.header-buttons > * {display:inline-block}
    .reservation_bar .reservation-content{padding:0 0 0 30px}
    .site_title.with_link_view .title {
		position:absolute;
		top: 120px;
		margin: 0;
		max-width: 100%;
		text-align: center;
		}
		.Col-left{width:50%}
		
		.Col-right{width:48%;margin:0 0 0 2%}
		 
		
		.Col-center{display:block}
		.Col-center .news{margin-top: 30px;}
		.news-display{display:none}
		.home-page-content {padding: 0 ;}
		.home-page .page-size {padding: 10px ;}
		.component.slider.with_site_title_view > .item-container > .item .content {margin: 0 ;}
		.short_title_view{padding:0 !important;}
		/*.component.slider > .item-container > .item .content {
    right: 0;
    top: 50%;
    bottom: 0;
    width: auto;
	}*/
    .component.catalog .products_list.grid-view{margin-right:-30px}
    .component.catalog .products_list.grid-view .product_item{margin:0 30px 30px 0}
	
    #page > footer{text-align: center}
    
    #page > footer .component.footer-layout .title{text-align: center;padding: 0 0 25px;}
    .component.footer-layout{padding:20px 30px 10px 30px}
    /*spacing between each footer block */
    .component.footer-layout > .item-container > .item{
        margin-top: 20px;
        margin-bottom: 0px;
    }
    /*spacing between each list item of footer block */
    .component.footer-layout .component.brochures.default_view .brochures-content .brochures-items .brochures-item,
    .component.footer-layout .component.point_of_sale.default_view .location-block .item-container .item,
    .component.footer-layout .component.point_of_sale.default_view .schedules-block .item-container .item,
    .component.footer-layout .component.point_of_sale.default_view .component.contact_page.more_info_link_view,
    .component.footer-layout .component.links.default_view .links-content .links-items .links-item{
        margin-bottom: 30px
    }
	.component.social_sharing .share-by-email, .component.social_sharing .badge-button-label,.component.social_sharing .share-by-sms{margin:0 20px}
    
}

@media screen and (max-width: 600px) {
    .catalog-controls {display: table;}
    .catalog-controls .control-item{display:table-row}
    .catalog-controls .control-item .title{display:table-cell;float:inherit;vertical-align:middle}
    .catalog-controls .control-item.component.catalog.display_mode_view{float:inherit;vertical-align:middle;text-align:inherit;}
    .component.catalog.display_mode_view .buttons-grp{display: table-cell;text-align: right;padding-top: 13px}
    .catalog-controls .control-item .custom-select{max-width: 150px;margin-top:13px;float:right; }
}

@media  screen and (max-width:480px) {
	.component.cookies_policy.banner_view button {
    color: black !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background: grey !important;
	}
    /*.page-size{padding:95px 15px 20px;}*/
    .with-h1-like .title, .richtext h1{padding-top:0px;margin-bottom:25px}
    #page > header{height: 75px !important}
    #page > header .header-content{height: 75px!important}
    .component.logo{height: 75px !important;padding:0;text-align: center;line-height: 72px !important;}
    .component.logo img{max-height: 75px !important}
    .component.languages.dropdown_view{left: 10px}
    .header-buttons{right:10px;margin-top: -12px;}
    .header-buttons > * {margin-left: 4px;}
    .component.cart.basket_button_view a{width: 26px; height: 24px; background-size: 100% 100%}
    #menu-toggle{background-size: 100% 12px; padding-bottom: 12px; min-width: 24px;}
    #menu-toggle .component.menu.title_view .menu-title{font-size: 9px; line-height: 12px;}
	.site_title.with_link_view .title {
		position:absolute;
		top: 75px;
		margin: 0;
		font-size: 100%;
		max-width: 100%;
		text-align: center;
		background: none;
		box-shadow:none;
		}
		.Col-left{width:100%}
		.Col-right{width:100%;margin: 10px 10px 0 0 !important;}
	.component.slider.with_site_title_view > .item-container > .item .content {width: 100%;background:none;}
	
    .reservation_bar .reservation-content{padding: 0}

    #main-menu{
        font-size: 18px;
    }

    .component.catalog.back_view,
    .component.catalog_product.back_view {position: static; margin: 20px 0 -20px}

    .component.product-detail.horizontal_layout.product-detail > .item-container > .item-last{
    padding-left:0px
    }
    /* specific design for product detail in T009 */
    .component.product-detail.horizontal_layout > .item-container.slots-2 > .item.item-1,
    .component.product-detail.horizontal_layout > .item-container.slots-2 > .item.item-2{
        width: 100%;
    }

    .component.catalog .products_list.grid-view{margin-right:-10px}
    .component.catalog .products_list.grid-view .product_item{margin:0 10px 10px 0}
    
    .component.product-detail.horizontal_layout > .item-container > .item:nth-child(n+2){
        padding-top:20px;
        padding-left:0px;
    }

    .thumb-zoom {width: 100%;height: auto;position: absolute;left: 0!important}

    .address-block{width: 100%}
    .address-block .col1{width: 100%;text-align: center}
    .address-block .col1 .title{text-align: center}

    .address-block .col2{text-align: center;width: 100%;float: none}
    .address-block .col2 .title{text-align: center;margin-top: 25px}

    .component.accesses .accesses-with-icons .item{display: block;width: 100%}
    .component.accesses .access .type{display: inline-block}
    .component.accesses .access .text{display: inline-block}

    .contact_form.default_view .field .captcha-input{display: block;margin: 10px auto 0 auto;width: 168px;float: none}
    .field .captcha-label{float: none;width: 168px;margin: 0 auto;display: block}
    .captcha .captcha-text{text-align: center}
    .button.send_button{width: 100%}

    .component.footer-layout{padding:20px 15px 10px 15px}
    #page > footer .social-buttons{height: 50px}
    /*#page > footer .component.social_sharing{padding-top: 11px}
    .component.social_sharing .badge-button-label{margin:0 20px;}*/
    
    .terms-of-sale-block-content > *{
        width:100%;
    }
	.social-buttons {
    padding: 10px 0;}
	
	.component.slider.with_site_title_view > .item-container > .item .content .site-title,
	.component.slider.with_site_title_view > .item-container > .item .content .title,
	.component.slider.with_site_title_view > .item-container > .item .content .text {
    color: #FFF;}
	.component.slider.with_site_title_view > .item-container > .item .content .title{
		font-size:2rem;
	}
	.component.slider {margin-bottom: 0px;}
	.component.social_sharing .share-by-email, .component.social_sharing .badge-button-label,.component.social_sharing .share-by-sms{margin:0 1%}
}
