@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@100;300;400&display=swap');

/* GLOBAL
----------------------------------------------------------------------------- */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    }

html{
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
	}

body {
    line-height: 1.3;
	font-weight: 400;
	font-size: 16px;
	font-family: 'Cormorant', serif;
	background: #FFF;
	color: #424244;
	}

fieldset{
    border: 0;
    }

.clearfix::after {
	content: "";
	clear: both;
	display: table;
	}

a{
	text-decoration: none;
	}

a[href="#"],
a[href=""]{
    cursor: default;
    }

:focus,
:active {
    outline: none;
	}

.img_fluid{
    width: 100%;
    height: auto;
    display: block;
    }

.no_list,
.top_menu,
.site_footer .menu{
    padding: 0;
    }

.no_list li {
    list-style: none;
    display: inline-block;
    }

.top_menu li,
.site_footer .menu li {
	list-style: none;
    display: block;
	}

.float_sx {
	float: left;
	}

.float_dx {
	float: right;
	}

.align_center {
	text-align: center;
	}

.align_sx {
	text-align: left;
	}

.align_dx {
	text-align: right;
	}

.clr_white,
.clr_white a{
	color: #FFF;
	}

.clr_black,
.clr_black a{
	color: #424244;
	}

.clr_grey,
.clr_grey a{
	color: #878080;
	}

.bg_grey{
	background-color: #c7c6c2;
	color: #757575;
	}

.bg_darkgrey{
	background-color: #696768;
	color: #FFF;
	}

.apply_dark_layer_half{
    box-shadow: inset 0 0 0 1000px rgba(0,0,0,.25);
	}

.apply_dark_layer{
    box-shadow: inset 0 0 0 1000px rgba(0,0,0,.5);
	}

.dark_img{
	background: #000;
	}

	.dark_img img{
		opacity: 0.3;
		}


.upp{
	text-transform: uppercase;
	}

.low{
	text-transform: lowercase;
	}

.serif{
	font-family: 'Cormorant', serif;
	}

.sans_serif{
	font-family: 'Lato', sans-serif;
	}


/* Responsive */
.show_from_desktop_small,
.show_from_tablet_landscape,
.show_from_tablet_portrait,
.show_from_smartphone_landscape,
.show_from_smartphone_portrait,
.show_from_smartphone_small{
	display: none;
	}


/* TYPOGRAPHY
----------------------------------------------------------------------------- */

@font-face {
	font-family: 'Cormorant';
	src: url(../fonts/Cormorant/Cormorant-Light.ttf);
	font-weight: 300;
}
@font-face {
	font-family: 'Cormorant';
	src: url(../fonts/Cormorant/Cormorant-Medium.ttf);
	font-weight: 500;
}
@font-face {
	font-family: 'Cormorant';
	src: url(../fonts/Cormorant/Cormorant-Bold.ttf);
	font-weight: 700;
}



.focus_content,
.contact_col,
.pre_footer_col,
p{
	font-size: 22px;
	font-weight: 300;
	}

	.focus_content p{
		margin-bottom: 24px;
		}

.big_text p{
	font-size: 26px;
	font-weight: 300;
	}

.fancybox_paragraph{
    margin: 20px 0 30px 0;
	font-size: 14px;
	}

h1,h2,h3,h4,h5,h6{
	line-height: 1.2;
	}

h1 > a,h2 > a,h3 > a,h4 > a,h5 > a,h6 > a{
	color: inherit;
	}

h1{

}

	h1.slide_title,
	h1.page_title,
	h1.focus_title,
	.fake_h1,
	h1.prod_title{
		font-family: 'Lato', sans-serif;
		font-weight: 300;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		text-transform: uppercase;
		line-height: 1.2;
		font-size: 40px;
		}

		h1.focus_title,
		.fake_h1{
			margin-bottom: 30px;
			}

		h1.prod_title{
			font-size: 30px;
			}

	h1.item_category_title{
		font-family: 'Cormorant', serif;
		font-size: 44px;
	    font-weight: 300;
		}

	h1.page_title_404{
		font-size: 120px;
		}



h2{

}

	h2.page_subtitle{
		font-family: 'Cormorant', serif;
		font-size: 24px;
	    font-weight: 300;
		}

h3{

}

	h3.mosaic_item_title{
		font-family: 'Cormorant', serif;
		font-size: 44px;
	    font-weight: 300;
		}

	h3.post_title{
		font-family: 'Cormorant', serif;
		font-size: 24px;
	    font-weight: 300;
		margin-bottom: 10px;
		}

	h3.releted_prod_title{
		font-family: 'Lato', sans-serif;
		text-transform: uppercase;
		font-weight: 300;
	    font-size: 22px;
		margin: 20px 0;
		}

h5{

}

	h5.mosaic_item_sub{
		font-family: 'Lato', sans-serif;
		text-transform: uppercase;
		font-weight: 300;
		margin: 12px 0;
		font-size: 18px;
		}

h6{

}

	h6.post_subtitle{
		font-family: 'Lato', sans-serif;
		text-transform: uppercase;
		letter-spacing: 0.3px;
		font-weight: 300;
		font-size: 14px;
		line-height: 1.4;
		}

		.post_subtitle span{
			display: block;
			text-transform: none;
		    margin-top: 4px;
			}

	.about_quote h6{
		position: relative;
		display: inline-block;
	    letter-spacing: 0.3px;
	    font-weight: 200;
	    font-size: 28px;
		}

/* Breadcrumbs */
.breadcrumbs{
	font-family: 'Lato', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.3px;
	font-size: 12px;
	font-weight: 300;
	}

.breadcrumbs a{
	color: #FFF;
	text-decoration: none;
	}

.breadcrumbs .bullet_dx:after,
.breadcrumbs .bullet_sx:before{
	margin: 0 3px;
	position: relative;
	top: -2px;

	}


/* Bullets */
.bullet_sx,
.bullet_dx,
.top_menu li.menu-item a,
.wpml-ls li:first-child{
	position: relative;
	}

.bullet_sx:before,
.bullet_dx:after,
.top_menu li.menu-item a:before,
.top_menu li.menu-item a:after{
	content: "•";
    display: inline-block;
    position: static;
    margin: 0 6px;
    font-weight: 100;
    font-size: 60%;
	}


/* Buttons */
.btn{
	font-family: 'Lato', sans-serif;
	letter-spacing: 0.3px;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 300;
	transition: all ease-in-out 0.15s;
	padding: 12px 16px;
	display: inline-block;
	}

.btn_dark{
	background-color: #696768;
	color: #FFF;
	}

	.btn_dark:hover{
		background-color: #424244;
		}

.readmore{
	font-family: 'Lato', sans-serif;
	letter-spacing: 0.3px;
	text-decoration: none;
	font-weight: 300;
	text-transform: uppercase;
	font-size: 14px;
	}

.readmore:before{
	margin: 20px auto 10px auto;
	content: "";
	height: 1px;
	width: 34px;
	border-top: 1px solid;
	display: block;
	}


.align_sx .readmore:before{
	text-align: left;
	margin: 20px 0;
	}

/* Readmore Blog */
.readmore_post{
	margin-top: 16px;
	display: inline-block;
	letter-spacing: 1px;
	}

.readmore_post:before{
	display: none;
	}

.readmore_post:after{
	content: "›";
    display: inline;
    font-size: 21px;
    position: relative;
    font-weight: 300;
    top: 1px;
    margin-left: 6px;
	}


/* FORM
----------------------------------------------------------------------------- */
.input_wr{
	margin-bottom: 12px;
	position: relative;
	width: 100%;
	float: left;
	}

.input_wr.float_sx{
	float: left;
	width: 47.5%;
	}

.input_wr.float_dx{
	float: right;
	width: 47.5%;
	}

.mosaic_item_hp .input_wr.float_sx,
.mosaic_item_hp .input_wr.float_dx{
	float: left;
	width: 100%;
	}

input[type="text"],
input[type="email"],
textarea{
	font-family: 'Cormorant', serif;
	font-size: 44px;
	font-weight: 300;
	border: 1px solid rgba(255,255,255,0.4);
    width: 100%;
    padding: 12px 24px;
    transition: all ease-in-out 0.15s;
    -webkit-appearance: none;
	-moz-appearance: none;
    appearance: none;
	background-color: rgba(105,103,104,0);
	color: #FFF;
	font-size: 22px;
	letter-spacing: 0.3px;
	border-radius: 0;
    }

textarea{
	height: 220px;
	width: 100%;
	min-width: 100%;
	resize: none;
	max-width: 100%;
	}

.mosaic_item_hp textarea{
	height: 130px;
	}

.input_wr_required:after{
	transform: translateY(-50%);
    display: block;
    position: absolute;
    content: '*';
    right: -18px;
    font-weight: 100;
    font-size: 24px;
    top: 28px;
    line-height: 1;
    height: 18px;
	}



input:focus,
textarea:focus{

	}

.ua_mobile input[type="text"],
.ua_mobile input[type="email"],
.ua_mobile input[type="tel"],
.ua_mobile textarea{
    font-size: 16px;
    }

.acceptance{
	font-family: "Lato", sans-serif;
    font-weight: 300;
    font-size: 12px;
    line-height: 1.5;
    margin: 20px auto 0 auto;
    display: block;
	}

	.page-template-contacts .acceptance{
		max-width: 80%;
		}

.acceptance a{
	font-weight: 500;
	color: #FFF;
	}


/* Placeholders */
::-webkit-input-placeholder {
	letter-spacing: 0.3px;
	color: #FFF;
	opacity: 1;
    font-weight: 100;
	}

::-moz-placeholder {
	letter-spacing: 0.3px;
	color: #FFF;
	opacity: 1;
	font-weight: 100;
	}

:-ms-input-placeholder {
	letter-spacing: 0.3px;
	color: #FFF;
	opacity: 1;
	font-weight: 100;
	}

:-moz-placeholder {
	letter-spacing: 0.3px;
	color: #FFF;
	opacity: 1;
	font-weight: 100;
	}



/* Form Mailchimp */
#mc_embed_signup form {
    padding: 0;
    max-width: 540px;
    margin: 40px auto 0 auto;
	}


#mc_embed_signup .mc-field-group {
    float: left;
    max-width: calc(100% - 134px);
    width: 100% !important;
	}

	#mc_embed_signup .mc-field-group input{
		border: 1px solid #696768;
		border-radius: 0;
		padding: 12px 24px;
		text-indent: 0;
	    color: #424244;
	    height: 52px;
		}

#mc_embed_signup .button{
	margin: 0;
    border-radius: 0;
    background: #696768;
    padding: 0 16px;
    height: 52px;
    line-height: 52px;
    font-weight: 300;
    letter-spacing: 0.3px;
    font-size: 16px;
    float: right;
    clear: none;
    text-align: center;
    width: 128px;
	}

#mc_embed_signup .button:hover,
#mc_embed_signup .button:focus{
	background: #424244;
	}

#mc_embed_signup .acceptance{
	display: block;
	float: left;
	width: 100%;
	margin: 0;
	cursor: pointer;
	}

#mc_embed_signup .acceptance input{
	margin-right: 10px;
	}

#mc_embed_signup .acceptance a{
	color: #424244;
	font-weight: 400;
	text-decoration: none;
	}

#mc_embed_signup .acceptance a:hover{
	text-decoration: underline;
	}

#mc_embed_signup ::-webkit-input-placeholder{ color: #424244; }
#mc_embed_signup ::-moz-placeholder{ color: #424244; }
#mc_embed_signup :-ms-input-placeholder{ color: #424244; }
#mc_embed_signup :-moz-placeholder{ color: #424244; }





/* Validation */
div.wpcf7-response-output {
	margin: 0px 0 20px 0;
    padding: 14px 20px;
    border: 0 !important;
    color: #FFF;
    font-weight: 400;
    border-radius: 4px;
    font-size: 22px;
	}

div.wpcf7-mail-sent-ok,
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing{
    background: #424244;
	}

#js-form-info div.wpcf7-mail-sent-ok,
#js-form-info div.wpcf7-validation-errors,
#js-form-info div.wpcf7-acceptance-missing{
	background: #9e9e9e;
	}

span.wpcf7-not-valid-tip,
.input-wr span.wpcf7-not-valid-tip{
    display: none;
    }

input[type="text"].wpcf7-not-valid,
input[type="email"].wpcf7-not-valid,
textarea.wpcf7-not-valid{
	background: #424244;
    }




form.sent fieldset,
form.sent p,
form.sent .privacy,
form.sent .g-recaptcha{
    display: none;
    }


/* Focus */
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus{
    outline: 0;
    }

input[type="submit"],
input[type="submit"]:hover,
input[type="submit"]:focus{
	outline: 0;
    display: block;
    width: 100%;
    background: none;
    border: 2px solid rgba(255,255,255,1);
    text-transform: uppercase;
    color: #FFF;
	padding: 14px 20px;
	font-family: "Lato", sans-serif;
	font-weight: 300;
	font-size: 20px;
	transition: all ease-in-out 0.3s;
	cursor: pointer;
	border-radius: 0;
	-webkit-appearance: none;
	}


input[type="submit"]:hover,
input[type="submit"]:focus{
	background: #FFF;
	color: #000;
	}


/* Customize Checkbox */
.checkbox_container {
	display: block;
	position: relative;
	padding-left: 24px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	}

.checkbox_container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
	}

.checkmark {
	position: absolute;
    top: 0;
    left: 0;
    height: 15px;
    width: 15px;
    background: #FFF;
    border: 1px solid #696768;
	}

.checkbox_container input:checked ~ .checkmark {
	background-color: #696768;
	}

.checkbox_container:after {
	content: "";
	position: absolute;
	display: none;
	}

.checkbox_container input:checked ~ .checkmark:after {
	display: block;
	}

.checkbox_container .checkmark:after {
	left: 3px;
    top: 0px;
    width: 5px;
    height: 8px;
    border: solid white;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
    position: absolute;
	}



/* Form Info Prodotto */
#js-form-info form{
	}

#js-form-info .row{
	position: relative;
    height: 100%;
	}

#js-form-info .mCSB_container{
	height: 100%;
	}

div.wpcf7 .ajax-loader{
	display: none;
	}

/*
input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 30px white inset;
	}
*/


/* HOVER EFFECT
----------------------------------------------------------------------------- */
.hover_effect{
	background: rgba(0,0,0,0);
	transition: all linear 0.3s;
	}

.hover_effect:hover{
	background: rgba(0,0,0,0.6);
	color: #FFF;
	}


/* GLOBAL LAYOUT
----------------------------------------------------------------------------- */
.site_container {
	margin: auto;
    max-width: 1230px;
    width: 100%;
    padding: 0 30px;
	}

/* Elements Margins & Paddings */
.set_margin_bottom{ margin-bottom: 35px; }
.set_margin_top{ margin-top: 35px; }
.set_double_margin_bottom{ margin-bottom: 70px; }
.set_double_margin_top{ margin-top: 70px; }
.set_padding_bottom{ padding-bottom: 35px; }
.set_padding_top{ padding-top: 35px; }
.set_double_padding_bottom{ padding-bottom: 70px; }
.set_double_padding_top{ padding-top: 70px; }


/* Asymmetric Banner */
.asymmetric_banner_wrapper,
.asymmetric_banner_wrapper_2{
	-ms-box-orient: horizontal;
	display: flex;
    overflow: hidden;
	}

.asymmetric_banner{
    display: flex;
    flex-direction: column;
    justify-content: center;
	position: relative;
	background-size: cover;
	}

.asymmetric_banner:first-child{
	width: 100%;
	max-width: 72%;
	}

.asymmetric_banner:last-child{
	width: 100%;
	max-width: 28%;
	}


/* Asymmetric Banner 2*/
/* Asymmetric Banner 2*/
.asymmetric_banner_wrapper_2 .asymmetric_banner:first-child{
	width: 100%;
	max-width: 40%;
	margin-right: 24px;
	}

	.asymmetric_banner_wrapper_2.inverted .asymmetric_banner:first-child{
		max-width: calc(60% - 24px);
		}

.asymmetric_banner_wrapper_2 .asymmetric_banner:last-child{
	width: 100%;
	max-width: calc(60% - 24px);
	}

	.asymmetric_banner_wrapper_2.inverted .asymmetric_banner:last-child{
		max-width: 40%;
		}

/* Asymmetric Blocks */
.asymmetric_blocks_wrapper{
	-ms-box-orient: horizontal;
	display: flex;
	}

.asymmetric_block{
    display: flex;
    flex-direction: column;
    justify-content: center;
	position: relative;
	background-size: cover;
	width: 100%;
	}

.asymmetric_block_content{
	position: absolute;
	width: 100%;
	height: 100%;
	}

.asymmetric_blocks_wrapper:nth-child(odd){
	flex-direction: row-reverse;
	}

	.asymmetric_block:first-child{
		max-width: 40%;
		}

	.asymmetric_block:last-child{
		max-width: 60%;
	    margin-left: 24px;
		}

	.asymmetric_blocks_wrapper:nth-child(odd) .asymmetric_block:last-child{
		margin-right: 24px;
		margin-left: 0;
		}


/* Page Header */
.page_hero{
    background: #000;
    color: #FFF;
	position: relative;
	}

	.page_hero img{
		opacity: 0.8;
		}

	.page_header{
		margin-bottom: 36px;
		}

.page_hero_content{
	display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    width: 100%;
    flex-direction: column;
    bottom: 24px;
    z-index: 2;
	}


/* Masonry Grid (Blog) */
.masonry{
	width: calc(100% + 30px);
	margin-left: -15px;
    margin-top: -15px;
	}

.masonry-sizer,
.masonry-item {
	width: 33.333%;
	}

.masonry-item {
	float: left;
	border: 15px solid #FFF;
    margin-bottom: 30px;
	font-weight: 300;
	}




/* Set Box Padding */
.set_padding{
	padding: 60px 70px;

    padding: 60px 40px;
	}

.set_padding_double{
	padding: 90px 130px;
	}

.set_padding_large{
	padding: 100px 70px;
	}



/* MOSAICS
----------------------------------------------------------------------------- */
.mosaic {
	margin: 0 auto;
	display: grid;
	grid-gap: 12px;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: auto;
	width: 100%;
	}

.mosaic_item {
	grid-column: span 1;
	grid-row: span 1;
	list-style: none;
	border:0;
	position: relative;
	padding-bottom: 100%;
	background-repeat: no-repeat;
	background-size: 100% auto;
	display: flex;
	}


/* Layout 1 */
.layout_1 .mosaic_item:nth-child(4n+2){
	grid-column: span 1;
    grid-row: span 2;
	}

.layout_1 .mosaic_item:nth-child(4n+1){
	grid-column: span 2;
	grid-row: span 2;
	}

.layout_1 .mosaic_item:nth-child(4n+4){
	padding-bottom: calc(50% - 6px);
	grid-column: span 2;
	grid-row: span 1;
	}




/* Layout 2 */
.layout_2 .mosaic_item:nth-child(5n+2){
	grid-column: span 1;
    grid-row: span 2;
	}

.layout_2 .mosaic_item:nth-child(5n+1),
.layout_2 .mosaic_item:nth-child(5n+3){
	padding-bottom: calc(50% - 6px);
	grid-column: span 2;
	grid-row: span 1;
	}

.layout_2 .mosaic_item:nth-child(5n+5){
	padding-bottom: calc(50% - 12px);
	grid-column: span 2;
	grid-row: span 1;
	}

/* Layout 3 */
.layout_3 .mosaic_item:nth-child(5n+1){
	grid-column: span 2;
	grid-row: span 2;
	}

.layout_3 .mosaic_item:nth-child(5n+5){
	grid-column: span 2;
	grid-row: span 1;
	padding-bottom: calc(50% - 12px);
	}

/* Layout 4 */
.layout_4 .mosaic_item:nth-child(7n+3){
	grid-column: span 1;
	grid-row: span 2;
	}

.layout_4 .mosaic_item:nth-child(7n+4){
	grid-column: span 2;
	grid-row: span 1;
    padding-bottom: calc(50% - 12px);
	}

/* Layout 5 */
.layout_5.mosaic{
	grid-template-columns: repeat(1, 1fr);
	}

.layout_5 .mosaic_item{
	padding-bottom: calc(50% - 6px);
	grid-column: span 1;
	grid-row: span 1;
	}


/* Mosaic Item Content */
.mosaic_item_content{
	display: flex;
    flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	position: absolute;
    width: 100%;
    height: 100%;
    text-align: center;
	text-decoration: none;
	}



/* HOME LAYOUTS MOSAICS (Da valutare se utilizzare o meno) */
.mosaic_item_hp{
	position: relative;
	}

/* Layout HP 1 */
.layout_hp_1{
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 24px;
	}

.layout_hp_1 .mosaic_item_hp{
	grid-column: span 1;
	grid-row: span 1;
	}

.layout_hp_1 .mosaic_item_hp:nth-child(1),
.layout_hp_1 .mosaic_item_hp:nth-child(2){
	grid-column: span 1;
	grid-row: span 1;
	padding-bottom: 0;
	}

.layout_hp_1 .mosaic_item_hp:nth-child(3){
	grid-column: span 2;
	grid-row: span 1;
	padding-bottom: 0;
	}

/* Layout HP 2 */
.layout_hp_2{
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 24px;
	}

.layout_hp_2 .mosaic_item{
	grid-column: span 1;
	grid-row: span 1;
	}

.layout_hp_2 .mosaic_item:nth-child(1),
.layout_hp_2 .mosaic_item:nth-child(2){
	grid-column: span 1;
	grid-row: span 1;
    padding-bottom: 0;
	}



/* HEADER
----------------------------------------------------------------------------- */
.site_header{
	position: absolute;
    width: 100%;
    z-index: 999;
    height: 130px;
	color: #FFF;
	}

.site_header .logo{
	transform: translateX(-50%);
	position: absolute;
	display: block;
	left: 50%;
	top: 30px;
	}


/* Menu Panel */
.js_menu_toggle{
    position: absolute;
	right: 40px;
	top: 40px;
	}

.js_menu_close{
	position: absolute;
	right: 20px;
	top: 20px;
	}

.js_menu_toggle span,
.js_menu_close span{
	font-family: "Lato", sans-serif;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 11px;
    letter-spacing: 0.4px;
    text-align: center;
    color: #FFF;
	position: absolute;
    top: 38px;
	}

.js_menu_toggle i,
.js_menu_close i{
	display: block;
	width: 34px;
	height: 34px;
	background-size: 100% auto;
	background-position: center;
	background-repeat: no-repeat;
	cursor: pointer;
	}

	.js_menu_toggle i{
		background-image: url('../img/ico_burger.png');
		}

	.js_menu_close i{
		background-image: url('../img/ico_close.png');
		}


.js_menu_panel {
    background: #424244;
    text-align: center;
    margin: 0;
    position: fixed;
    top: 20px;
    bottom: 20px;
    left: 20px;
    z-index: 9999;
    right: 20px;
	}

.js_menu_panel a{
	transition: all 0.3s ease 0s;
	text-shadow: none !important;
	color: #878080;
	}

.js_menu_panel a:hover{
	color: #FFF;
	}


/* Menu Panel Content (Navigation) */
.menu_panel_content{
	font-size: 22px;
    color: #FFF;
    text-transform: lowercase;
    font-weight: 100;
	overflow: auto;
	padding: 50px 28px 50px 28px;
	height: 100%;
	}

.mCSB_draggerContainer{
    top: 40px !important;
	}

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
    width: 2px;
	}

.mCSB_inside>.mCSB_container{
	margin-right: 0;
	}

@media only screen and (min-height: 780px) {

	div#mCSB_1 {
		display: flex;
		justify-content: center;
		align-items: center;
		}

}

.menu_title{
    font-weight: 200;
	margin-top: 54px;
	}

.menu_title:first-of-type{
	margin-top: 0;
	}

.menu_title::after{
	margin: 20px auto 10px auto;
    content: "";
    height: 1px;
    width: 34px;
    border-top: 1px solid;
    display: block;
	}

.top_menu ul{
    max-width: 180px;
    text-align: left;
    transform: translateX(52px);
	margin: 10px auto;
	font-size: 18px;
	}

.top_menu li{
    padding: 3px 0;
	}

.top_menu li li{
	padding: 1px 0;
	}

.top_menu > li > a{
	padding: 0 18px;
	}

.has-sub > a{
	cursor: pointer;
	}

.has-sub:before{
	background-image: url('../img/ico_chevron_down.png');
	display: inline-block;
    content: '';
    background-size: 100% auto;
    width: 12px;
    height: 7px;
    position: relative;
    left: 14px;
	}

.has-sub.open:before{
	background-image: url('../img/ico_chevron_up.png');
	}

.social_wr .social{
	display: inline-block;
	margin: 12px 5px 0 5px;
	float: none;
	}

/* Wpml Language Selector */
.wpml-ls {
    position: absolute;
    padding: 0;
    border: 0;
    top: 20px;
    left: 20px;
    text-transform: uppercase;
    font-family: "Lato",sans-serif;
	font-size: 13px;
	}

.wpml-ls-item{
	position: relative;
	}

.wpml-ls-item + .wpml-ls-item::after {
	content: "•";
    left: -2px;
    position: absolute;
    top: 8px;
    width: 2px;
    color: #FFF;
    font-size: 6px;
	}

.wpml-ls-current-language a{
	color: #FFF;
	position: relative;
	}

.wpml-ls-current-language a:after{
	border-bottom: 1px solid #FFF;
    position: static;
    width: 100%;
    content: "";
    height: 1px;
    display: block;
    padding-top: 10px;
	}

/* Sticky Header */
.site_header.sticky{
	background: rgba(51, 51, 51, 0.9);
    position: fixed;
	height: 90px;
    top: 0;
	}

.site_header.sticky .logo{
	max-width: 60px;
	top: 20px;
	}

	.site_header.sticky .logo img{
		display: block;
		width: 100%;
		height: auto;
		}


.site_header.sticky .js_menu_toggle{
	top: 27px;
	}

.site_header.sticky .js_menu_toggle span{
	display: none;
	}



/* SLIDER
----------------------------------------------------------------------------- */

/* JS hp slider */
.js_hp_slider,
.js_slider {
	width: 100%;
	height: 100%;
	}

.swiper-slide {
	text-align: center;
	font-size: 18px;
	min-height: 100vh;
	min-width: 100% !important;
	position: relative;
	}

.swiper-slide .slide_img{
	height: 100%;
	width: 100%;
	position: absolute;
	background-size: cover;
	-webkit-transform-origin: 0 0;
	transform-origin: 0 0;
	-webkit-animation: zoom 10s linear infinite alternate;
	animation: zoom 10s linear infinite alternate;
	}

.slide_content{
	transform: translate(-50%, -50%);
	position: absolute;
	z-index: 9999;
	top: 50%;
	left: 50%;
	opacity: 0;
	}

	.swiper-slide-active .slide_content{
		-webkit-backface-visibility: hidden;
		animation-name: fade;
		animation-timing-function: ease-in-out;
		animation-duration: 7s;
		}

	.swiper-slide.swiper-slide-active:first-child .slide_content{
		animation-duration: 5s;
		}

@keyframes fade {
	0% {
      opacity: 0;
    }

    33% {
      opacity: 1;
    }

	66%{
		opacity: 1;
	}

	100%{
		opacity: 0;
	}
}
@keyframes zoom {
	0% {
		transform: scale(1.0);
	}
	100% {
		transform: scale(1.2);
	}
}


.slide_content a{
	text-decoration: none;
	color: #FFF;
	}

.force_br{
	display: none;
	}

/* JS about slider */
.js_slider {
	width: 100%;
	height: 100%;
	}

.js_slider .swiper-slide {
	min-height: 600px;
	}

.js_slider .slide_content {
    transform: translateY(-50%);
    text-align: left;
    width: calc(50% - 160px);
    right: 160px;
    top: 50%;
    left: auto;
	}

/* Slider Pagination */
.js_hp_slider_pagination.swiper-pagination-bullets{
	position: absolute;
	transform: translateY(-50%);
    width: auto;
    left: auto;
    right: 40px;
	bottom: auto;
    top: 50%;
	}

.js_hp_slider_pagination .swiper-pagination-bullet {
	text-align: left;
    color: #fff;
    opacity: 0.4;
    position: relative;
    display: block;
    margin: 20px 0 !important;
    background: none;
    line-height: 1;
    width: auto;
    height: auto;
    font-size: 20px;
	padding-right: 70px;
    min-width: 120px;
	}

.js_hp_slider_pagination .swiper-pagination-bullet:after{
	display: block;
    width: calc(100% - 40px);
    height: 1px;
    background: #FFF;
    content: "";
    position: absolute;
    top: 50%;
    right: 0px;
	}

.js_hp_slider_pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	opacity: 1;
	}






/* HOME PAGE
----------------------------------------------------------------------------- */

/* Background Video */
.hp_box_video_text{
	position: absolute;
    z-index: 1;
    top: 0;
    color: #FFF;
    height: 100%;
    width: 100%;
	display: flex;
	align-content: center;
	align-items: center;
	background: rgba(0,0,0,0.3);
	}

.bg-video__content {
    background-size: cover;
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
	}

.stripe_video .asymmetric_banner:last-child{
	background-position: bottom;
	}


/* Box About e Form */
.form_wrapper{
	margin-top: 24px;
	}


/* HUB CATEGORIE & HUB COLLEZIONI
----------------------------------------------------------------------------- */

/* Hub Categorie */
.item_category{
	position: relative;
	margin-bottom: 24px;
	}

.item_category:last-child{
	margin-bottom: 0;
	}

.item_category_content{
	position: absolute;
	width: 100%;
	height: 100%;
	text-decoration: none;
	display: block;
	}



/* Hub Collezioni */
.item_collection{
	margin-bottom: 24px;
	}

.item_collection:last-child{
	margin-bottom: 0;
	}

.item_collection .asymmetric_block.bg_darkgrey > div{
	height: auto;
	}

.item_collection:first-child .asymmetric_block:first-child,
.item_collection .asymmetric_block:last-child .big_text{
	display: none;
	}

.item_collection:first-child .asymmetric_block:last-child{
	margin-left: 0;
    margin-right: 0;
    max-width: 100%;
	}

.item_collection:first-child .asymmetric_block:last-child .big_text{
	display: block;
	margin: 30px auto;
	width: 70%;
	max-width: 720px;
	}


/* SINGLE GIOIELLI
----------------------------------------------------------------------------- */

/* Prod Meta */
.prod_meta{
	margin: 14px 0 35px 0;
	font-size: 14px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	}

.prod_meta .bullet_dx:after{
	margin: 0 3px;
    position: relative;
    top: -2px;
	}

.prod_meta_label{
	margin-left: 14px;
	}

.prod_meta_label:first-of-type{
	margin-left: 0;
	}

/* Prod Info */
.prod_info_label{
	font-size: 20px;
    font-weight: 300;
    margin-top: 70px;
	display: block;
	}


.prod_info .btn_box{
	margin: 40px 0;
	}

.prod_info .btn_box .btn{
	font-size: 20px;
	text-align: center;
	}

.prod_share .social{
    margin: 18px 14px 0 0 ;
	}

.prod_share .social.facebook{ 	background-image: url('../img/ico_facebook_dark.png'); }
.prod_share .social.instagram{ 	background-image: url('../img/ico_instagram_dark.png'); }
.prod_share .social.whatsapp{ 	background-image: url('../img/ico_whatsapp_dark.png'); }


.variants {
    padding-left: 180px;
    position: relative;
    margin-top: 20px;
	}

.variants::before{
	position: absolute;
	top: 0; left: 0;
	}


/* Gallery */
.fancybox-slide>div#js-form-info{
	background-color: #424244;
    margin: 0;
    bottom: 20px;
    top: 20px;
    left: 20px;
    right: 20px;
    color: #FFF;
    position: absolute;
	}

.prod_gallery_item{
	margin-bottom: 12px;
	}

.prod_gallery_item:last-child{
	margin-bottom: 0;
	}





/* PAGE ABOUT
----------------------------------------------------------------------------- */
.item_about{
	margin-bottom: 24px;
	}

.about_focus_img_1{
	position: absolute;
    bottom: 0;
    max-width: 840px;
    right: 0;
	}

.about_focus_img_2{
	position: absolute;
    left: 0;
	}


.focus_3_img_1,
.focus_3_img_2{
	background-size: cover;
	background-repeat: no-repeat;
	}

.focus_3_img_1{
	height: calc(38% - 24px);
	background-position: bottom;
	margin-bottom: 24px;
	}

.focus_3_img_2{
	background-position: top;
	height: 62%;
	}


/* About Quote */
.about_quote{
	position: relative;
	}

.about_quote_content{
	transform: translate(-50%,-50%);
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 10;
	width: 100%;
	}

.about_quote h6 i{
	position: relative;
    z-index: 10;
    font-style: normal;
	}

.about_quote h6::before,
.about_quote h6::after{
	background-size: 100% auto;
	position: absolute;
	width: 64px;
	height: 65px;
	content: "";
	z-index: 5;
	}

	.about_quote h6::before{
		background-image: url('../img/ico_quote_open_dark.png');
	    left: -40px;
	    bottom: 0;
		}

	.about_quote h6::after{
		background-image: url('../img/ico_quote_close_dark.png');
		right: -40px;
		top: 0;
		}

.about_quote span{
	display: block;
	font-size: 22px;
	font-weight: 300;
	margin-top: 20px;
	}


/* BLOG
----------------------------------------------------------------------------- */
.post_header{
	margin: 20px 0;
	position: relative;
	}

.post_header:after{
	margin: 20px auto 10px auto;
	content: "";
	height: 1px;
	width: 34px;
	border-top: 1px solid;
	display: block;
	}



/* PAGE CONTACTS
----------------------------------------------------------------------------- */
.contacts_area{
	justify-content: space-around;
	display: flex;
	}

.page-template-contacts .pre_footer{
	display: none;
	}

.page-template-contacts .contact_col{
	margin-top: 24px;
	min-width: 20%;
	}

.contact_col i{
	display: block;
	margin: auto;
	width: 24px;
	height: 24px;
	background-repeat: no-repeat;
	background-size: 100% auto;
	}

	.contact_col i.ico_marker{ 		background-image: url('../img/ico_marker_dark.png'); 	}
	.contact_col i.ico_mail{ 		background-image: url('../img/ico_email_dark.png'); 	}
	.contact_col i.ico_phone{ 		background-image: url('../img/ico_phone_dark.png'); 	}
	.contact_col i.ico_instagram{ 	background-image: url('../img/ico_instagram_dark.png'); }
	.contact_col i.ico_facebook{ 	background-image: url('../img/ico_facebook_dark.png'); 	}

.pre_footer_col a,
.pre_footer_col span,
.contact_col a,
.contact_col span{
	color: inherit;
	color: #878080;
	}

.map{
	position: relative;
	overflow: hidden;
	height: 100%;
	width: 100%;
	}

.page-template-contacts .form_wr{

	}



/* QUOTES
----------------------------------------------------------------------------- */
.quote{
	background: url('../img/ico_quote_open.png') 40px 40px no-repeat,
				url('../img/ico_quote_close.png') calc(100% - 40px) calc(100% - 40px) no-repeat;
	background-size: 64px auto;
	background-color: #c8c6c2;
	}

.quote p{
	text-transform: uppercase;
	font-family: "Lato",sans-serif;

	font-weight: 300;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

	font-size: 26px;
	line-height: 1.2;
	margin: auto;
    display: block;
    max-width: 80%;
	}

.quote span{
	font-size: 22px;
	margin-top: 20px;
	display: block;
	}





/* PRIVACY & COOKIE POLICY
----------------------------------------------------------------------------- */
.page-template-privacy .pre_footer{
	display: none;
	}

.wysiwyg_editor a{
	color: inherit;
	border-bottom: 1px solid;
	}

.wysiwyg_editor p,
.wysiwyg_editor ul{
	font-size: 22px;
	font-weight: 300;
	margin-bottom: 24px;
	}

.wysiwyg_editor li{
	margin: 2px 0;
	margin-left: 24px;
	}

.wysiwyg_editor h1,
.wysiwyg_editor h2,
.wysiwyg_editor h3{
	font-family: "Lato", sans-serif;
    font-weight: 300;
    text-transform: uppercase;
    line-height: 1.2;
	}

.wysiwyg_editor h1{

	}

.wysiwyg_editor h2{
	margin: 50px 0 20px 0;
    font-size: 28px
	}

.wysiwyg_editor h3{
    margin: 40px 0 20px 0;
	}

	.wysiwyg_editor li h3{
		font-family: "Cormorant", serif;
	    text-transform: none;
	    font-size: 22px;
	    margin: 20px 0 0 0;
	    font-weight: 600;
		}

.wysiwyg_editor h4{
	font-size: 22px;
    font-weight: 600;
    margin: 24px 0 6px 0;
	}

.wysiwyg_editor h5{

	}

.wysiwyg_editor h6{

	}







/* FOOTER
----------------------------------------------------------------------------- */

/* Pre Footer */
.pre_footer_title{
	font-family: "Lato", sans-serif;
	font-size: 22px;
	text-transform: uppercase;
	font-weight: 300;
	margin: 16px 0;
	}




/* Footer */
.site_footer{
	background: #424244;
	color: #FFF;
	padding: 60px 0;
	}

.site_footer a{
	text-decoration: none;
	color: inherit;
	}




.site_footer_info{
	color: #9d9898;
	margin-top: 30px;
	line-height: 1.4;
	}


.site_footer_info p{
	font-size: 14px;
	}

.site_footer .menu{
	text-transform: lowercase;
	font-size: 22px;
	}

.site_footer .menu a{
	margin: 18px 0 10px 0;
	font-weight: 300;
	display: block;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transition: all 0.3s ease 0s;
	}

.site_footer .menu a:hover{
	color: #878080;
	}

.social{
	background-repeat: no-repeat;
	background-size: 18px 18px;
	background-position: center;
	float: left;
	display: block;
	height: 24px;
	width: 24px;
	text-indent: -9999px;
	margin: 18px 0 0 14px;
	}

.social.facebook{
	background-image: url('../img/ico_facebook.png');
	}

.social.instagram{
	background-image: url('../img/ico_instagram.png');
	}


/* Back 2 Top */
.js_back_2_top{
	background-image: url('../img/ico_back_2_top_dark.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100% auto;
    position: fixed;
	bottom: 40px;
	right: 40px;
	width: 20px;
	height: 18px;
	display: block;
	z-index: 8888;
	cursor: pointer !important;
	display: none;
	text-indent: -9999px;
	}

.js_back_2_top.white{
	background-image: url('../img/ico_back_2_top.png');
	}

.js_back_2_top.show{
	display: block;
	}





.wpml-ls-last-item{
	display: none;
	}

.logged-in .wpml-ls-last-item{
	display: inline-block;
	}

.grecaptcha-badge {
  display: none !important;
}
