@charset "UTF-8";
/* CSS Document */

@font-face {
    font-family: 'DavidLibre';
    src: url('../fonts/DavidLibre-Regular.ttf') format('truetype');
    font-weight: 400;
	font-display: swap; /* Inserisce font default in attesa del caricamento */
}

@font-face {
    font-family: 'DavidLibre';
    src: url('../fonts/DavidLibre-Bold.ttf') format('truetype');
    font-weight: 700;
	font-display: swap;
}

@font-face {
    font-family: 'OpenSans';
    src: url('../fonts/OpenSans-Regular.ttf') format('truetype');
    font-weight: 400;
	font-display: swap;
}

@font-face {
    font-family: 'OpenSans';
    src: url('../fonts/OpenSans-Italic.ttf') format('truetype');
    font-weight: 400;
	font-style: italic;
	font-display: swap;
}

@font-face {
    font-family: 'OpenSans';
    src: url('../fonts/OpenSans-Bold.ttf') format('truetype');
    font-weight: 700;
	font-display: swap;
}

@font-face {
    font-family: 'OpenSans';
    src: url('../fonts/OpenSans-BoldItalic.ttf') format('truetype');
    font-weight: 700;
	font-style: italic;
	font-display: swap;
}

html {
	font-size: 16px;
}

body {
	font-family: 'OpenSans', sans-serif;
	color: #000;
	overflow-x: hidden;
}

body a {
	color: #000;
	text-decoration: underline;
}

body a:hover {
	color: #000;
}

@media (max-width: 1200px) {
	html {
		font-size: 14px;
	}
}


/************STRUTTURA************/

section {
	width: 100%;
	height: auto;
	position: relative;
}

.section_vh_padding_top {
	padding-top: 15vh;
}

.section_vh_padding_bottom {
	padding-bottom: 15vh;
}

.boxContainer {
	width: 90%;
	max-width: 1650px;
	height: 100%;
	margin: 0 auto;
}

.testo_2_colonne {
    column-count: 2;
    column-gap: 90px;
}

.testo_3_colonne {
    column-count: 3;
    column-gap: 90px;
}

.section-title-straddling {
	width: 100%;
	font-family: 'DavidLibre', sans-serif;
	font-weight: 700;
	font-size: 3rem;
	line-height: 3.75rem;
	text-align: left;
	background: linear-gradient(to top, var(--PrimaryColor) 50%, #ffffff 50%);
}

.section-title-straddling span {
	display: block;
	width: 50%;
}

.breadcrumbs {
	top: 0;
	height: auto;
	min-height: 50px;
	display: flex;
	align-items: center;
	font-size: 0.9rem;
	z-index: 15;
}

.breadcrumbs .boxContainer {
	height: auto;
}

@media (max-width: 992px) {
	.testo_2_colonne {
		column-count: 2;
		column-gap: 70px;
	}
	
	.section-title-straddling span {
		width: 70%;
	}
}

@media (max-width: 768px) {
	.testo_2_colonne {
		column-count: 1;
		column-gap: 0px;
	}
	
	.section-title-straddling span {
		width: 100%;
	}
}

/************COLORI************/

.primaryColor {
	background-color: var(--PrimaryColor);
}

.secondaryColor {
	background-color: var(--SecondaryColor);
}

/************INTESTAZIONI************/

h1 {
}

h2 {
}

h3 {
}

/************BOTTONI************/

button:focus { /* Per stilizzare il bordo blu del browser che compare attorno ai bottoni */
  outline: 0px solid var(--SecondaryColor);
}

.btn-language {
	position: relative;
	border: 0;
	padding-right: 20px;
	background: none;
	cursor: pointer;
}

.btn-language:after {
    position: absolute;
    content: '';
    top: 7px;
    right: 0px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    border-color: #000 transparent transparent transparent;
}

.btn-language--mobile {
	padding-right: 22px;
    width: 78px;
    padding-left: 0;
	color: #000 !important;
}

.btn-language--mobile img {
	width: 20px;
	height: unset !important;
} 

.btn_white_outline {
	font-family: 'OpenSans', sans-serif;
	font-size: 1rem;
	background: none;
	padding: 22px 30px 18px 30px;
	border: 2px solid #FFF;
	color: #FFF;
	text-transform: uppercase;
	cursor: pointer;
	transition: all 0.6s cubic-bezier(.215, .61, .355, 1);
}

.btn_white_outline:hover {
	background: #FFF;
	color: #000;
}

.btn_white_outline--video-home {
	font-size: 1.3rem;
	margin-top: 80px;
}

.btn_black {
	font-family: 'OpenSans', sans-serif;
	font-size: 1rem;
	background: #000;
	padding: 20px 30px 20px 30px;
	border: 2px solid #FFF;
	color: #FFF;
	text-transform: uppercase;
	cursor: pointer;
	transition: all 0.6s cubic-bezier(.215, .61, .355, 1);
}
	
.btn_black:hover {
	background: #FFF;
	color: #000;
}

.btn_black--intro-home:hover {
	background: rgba(0,0,0,0);
	color: #000;
	border: 2px solid #000;
}

.btn_black--cta-shop {
	font-size: 1.2rem;
}

.btn_black--cta-blog-home {
	font-size: 1.2rem;
}

.btn_black--cta-blog-home:hover {
	border: 2px solid #000;
}

.btn_black_outline {
	font-family: 'OpenSans', sans-serif;
	font-size: 1.1rem;
	background: none;
	padding: 18px 30px 18px 30px;
	border: 2px solid #000;
	color: #000;
	text-transform: uppercase;
	cursor: pointer;
	transition: all 0.6s cubic-bezier(.215, .61, .355, 1);
}

.btn_black_outline:hover {
	background: #000;
	color: #FFF;
	border: 2px solid #000;
}

.btn_black_outline--shop-page {
    width: 87%;
    margin: 40px 0 15px 0;
}

.btn_black--form-contatti:hover {
	border: 2px solid #000;
}

/*********************************************************************************************** 
HEADER 
************************************************************************************************/

.social-label {
	position: fixed;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 120px;
	background: var(--SecondaryColor);
	z-index: 20;
	display: flex;
	justify-content: center;
	align-items: center;
	-webkit-flex-direction: column ;
	-moz-flex-direction: column ;
	-ms-flex-direction: column ;
	-o-flex-direction: column ;
	flex-direction: column ;
	gap: 15px;
	transition: all 0.8s cubic-bezier(.215, .61, .355, 1);
}

header {
	position: fixed;
	width: 100%;
    height: auto;
	z-index: 2000;
}

.header-space {
	height: 250px;
}

.header__preheader, .header__main, .header__menu {
	width: 100%;
}


.header__preheader {
	height: 46px;
	border-bottom: 1px solid #000;
	background: var(--PrimaryColor);
	font-style: italic;
	transition: all 0.5s cubic-bezier(.215, .61, .355, 1)
}

.header__preheader>.boxContainer {
	display: flex;
	justify-content: center;
    align-items: center;
}

.header__preheader a { font-weight: 700; }

.preheader-divider {
	padding: 0 12px;
}

.header__main {
	height: 160px;
	background: linear-gradient(to bottom, var(--PrimaryColor), #FFF );
	transition: all 0.8s cubic-bezier(.215, .61, .355, 1);
}

.header__main-contacts {
	display: flex;
	justify-content: space-between;
	font-size: 0.95rem;
	padding-top: 12px;
}

.header__main-contacts a {
	text-decoration: none;
}

.language {
	position: relative;
	width: 120px;
}

.btn-language img,
.language-dropdown img {
	margin-right: 10px;
	margin-top: -3px;
}

.language-dropdown {
	position: absolute;
	max-height: 0;
	overflow: hidden;
	width: 140px;
	background: #FFF;
    padding: 0 20px !important;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.15);
    z-index: 35;
    right: 0;
	transition: all 0.6s cubic-bezier(.215, .61, .355, 1);
}

.language-dropdown--mobile {
    background: #FFF;
    top: 50px;
	right: 0;
	width: 140px;
    border-left: none !important;
    padding: 0 20px !important;
	box-shadow: 0 10px 15px rgba(0,0,0,0.15);
}

.language-dropdown--mobile img {
	width: 20px;
	height: unset !important;
}

.language-dropdown--mobile ul {
	padding-top: 12px !important;
    padding-bottom: 12px !important;
}

.language-dropdown--mobile li {
	padding: 5px 0 !important;
}

.language-dropdown--mobile a {
	text-decoration: none;
}

.language-dropdown--open {
	max-height: 143px;
}

.language-dropdown ul {
    list-style-type: none;
    padding-inline-start: 6px;
	padding-top: 12px;
	padding-bottom: 12px;
	margin-bottom: 0;
}

.language-dropdown li {
    padding: 2px 0;
}

.header__main-logo {
	display: flex;
	justify-content: center;
	transition: all 0.8s cubic-bezier(.215, .61, .355, 1);
}

.header__main-logo img {
	width: 400px;
	transition: all 0.8s cubic-bezier(.215, .61, .355, 1);
}

.header__cart-flag-mobile {
	display: none;
}

.header__hambmenu-searchbar-mobile {
	display: none;
}

.header__menu {
	height: 46px;
	background: var(--SecondaryColor);
}

.header__menu>.boxContainer {
	display: flex;
	justify-content: space-between;
}

.mobile-menu {
	position: fixed;
	width: 0%;
	height: auto;
	min-height: 100vh;
	left: 0;
	padding-top: 21px;
	background: #FFF;
	color: #000;
	z-index: 2100;
	overflow: hidden;
	transition: all 1s cubic-bezier(.215, .61, .355, 1);
}

.mobile-menu a {
	text-decoration: none;
}

.mobile-menu--open {
	width: 90%;
}

.mobile-menu__container {
	margin-left: 5%;
	width: 90%;
}

.mobile-menu__container__header {
	font-family: 'DavidLibre', sans-serif;
	font-weight: bold;
	font-size: 2.5rem;
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
	border-bottom: 1px solid #000;
}

.mobile-menu-close img {
	width: 40px;
	height: 40px;
}

.mobile-menu-link {
	list-style-type: none;
	padding: 0;
	font-size: 1.3rem;
	min-width: 300px;
}

.mobile-menu-link li{
	padding: 2px 0;
}


/*********************************************************************************************** 
HEADER RESPONSIVE 
************************************************************************************************/

@media (max-width: 768px) {
	
	.header__preheader {
		height: 75px;
	}
	
	.header__preheader a {
		font-weight: 700;
		display: block;
		margin-top: 5px;
	}
	
	.header__preheader>.boxContainer {
		display: block;
		text-align: center;
		justify-content: none;
		align-items: center;
		padding-top: 11px;
		line-height: 1.6rem;
	}
	
	.preheader-divider {
		display: none;
	}
	
	.header__main {
		position: relative;
		height: 180px;
		padding: 15px 0;
		z-index: 15;
	}
	
	.header-space {
		height: 300px;
	}
	
	.header__main .boxContainer {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap; /* Così il div hambmenu-searchbar va a capo */
		grid-row-gap: 10px;
	}
	
	.header__main-contacts {
		display: none;
	}
	
	.header__main-logo {
		width: 60%;
	}
	
	.header__main-logo img {
		width: 100%;
	}
	
	.header__cart-flag-mobile {
		position: relative;
		display: flex;
		width: 35%;
		justify-content: flex-end;
		
	}
	
	.header__cart-flag-mobile>div {
		display: flex;
		align-items: center;
		padding: 0 25px;
	}
	
	.header__cart-flag-mobile img {
		height: 35px;
	}
	
	.header__hambmenu-searchbar-mobile {
		display: flex;
		width: 100%;
		height: 50px;
	}
	
	.searchbar {
		flex-grow: 1;
   		margin-left: 30px;
	}
	
	.hamb-menu {
		width: 40px;
		height: 50px;
	}
	
	.hamb-menu span {
	    display: block;
		position: relative;
		width: 40px;
		height: 2px;
		background: #000;
		margin: 9px 0;
		opacity: 1;
		left: 0px;
		transition: all 0.5s cubic-bezier(.215, .61, .355, 1);
	}
	
	.hamb-menu--open span:nth-child(1) {
		transform: rotate(45deg);
		top: 11px;
	}

	.hamb-menu--open span:nth-child(2) {
		opacity: 0;
		left: 30px;
	}

	.hamb-menu--open span:nth-child(3) {
		transform: rotate(-45deg);
		bottom: 11px;
	}
	
}

@media (max-width: 1200px) {
	
	.social-label {
		width: 40px;
		height: 100px;
	}
	
}

@media (max-width: 768px) {
	
	.social-label {
		left: -44px;
	}
	
}

@media (max-width: 576px) {
	
	.header__main-logo {
		width: 50%;
	}
	
	.header__cart-flag-mobile>div {
		padding: 0 15px;
	} 
	
	.header__preheader a {
		display: inline;
	}
}




/*********************************************************************************************** 
BARRA DI NAVIGAZIONE 
************************************************************************************************/

.header__menu-link {
	display: flex;
	align-items: center;
	margin-left: -1rem;
}

.header__menu-link .container-fluid {
	padding-left: 0;
	padding-right: 0;
}

.header__menu-link .navbar {
	padding: 0;
	height: 100%;
}

.header-menu li a {
	color: #FFF;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 1.1rem;
	padding-left: 1rem !important;
	padding-right: 1rem !important;
}

/* Dropdown */

.header-menu .arrow {
	display: none;	
}

.dropdown::after {
    display: inline-block;
    position: absolute;
    width: 0;
    height: 0;
    top: 11px;
    right: 0;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.35em solid #FFF;
    border-right: 0.35em solid transparent;
    border-bottom: 0;
    border-left: 0.35em solid transparent;
}

.dropdown-menu {
	padding: 10px 0;
	left: -9px;
}

.dropdown-menu--open {
	display: block;
}

.header__menu-link .dropdown-menu {
	min-width: 300px;
	background: #000;
}

.header-menu .dropdown-menu li a {
	color: #FFF;
	text-decoration: none;
	text-transform: none;
	font-size: 1.1rem;
	padding-left: 0rem !important;
	padding-right: 0rem !important;
}

.header__menu-link .dropdown-menu li {
	padding: 0.5rem 1.5rem;
	color: #FFF;
	text-decoration: none;
}

.header__menu-link .dropdown-menu li:hover {
	background: var(--PrimaryColor);
}

.header__menu-link .dropdown-menu li:hover a {
	color: #000 !important;
}


/* Cart */

.header__menu-cart {
	width: 120px;
	display: flex;
    justify-content: right;
    align-items: center;
	position: relative;
}

.search-form {
	display: flex;
}

.search-form input {
	flex-grow: 1;
	border: 0;
	height: 42px;
	padding: 15px;
	box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.2);
}

.search-form button {
	width: 50px;
	height: 42px;
	border: 0;
	background: var(--SecondaryColor);
	border-radius: 0;
	cursor: pointer;
}

.header-search {
	position: relative;
	width: 50px;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

.header-search .search-form {
	position: absolute;
	top: 6px;
    right: -1px;
	width: 0px;
	overflow: hidden;
	transition: all 0.6s cubic-bezier(.215, .61, .355, 1);
}

.search-form--open {
	width: 258px !important;
}

.header-search .search-form input {
	height: 36px;
}

.header-search .search-form button {
	height: 36px;
}

.header-search .search-form:before {
	position: absolute;
	content: ' ';
	width: 10px;
	height: 10px;
	left: -10px;
}


/*********************************************************************************************** 
BARRA DI NAVIGAZIONE RESPONSIVE
************************************************************************************************/

@media (max-width: 768px) {
	
	.header__menu>.boxContainer {
		overflow-x: scroll;
	}
	
	.header__menu-cart {
		display: none;
	}
	
	.header-menu .dropdown::after {
		display: none;
	}
	
	.header-menu .dropdown-menu {
		display: none;
	}

}

@media (max-width: 576px) {
	
	.header__main {
		height: 170px;
	}
	
	.header-space {
		height: 290px;
	}
}


/*********************************************************************************************** 
HEADER SCROLL
************************************************************************************************/

.header-fixed-scroll .header__preheader {
    height: 0;
    overflow: hidden;
}

.header-fixed-scroll .header__main-logo img {
    width: 280px;
	margin-top: -15px;
}

.header-fixed-scroll .header__main-logo {
    padding-bottom: 15px;
}

.header-fixed-scroll .header__main {
    height: auto;
}

@media (max-width: 900px) {
	.header-fixed-scroll .header__main-logo img {
		margin-top: 0px;
	}
}


@media (max-width: 768px) {
	.header-fixed-scroll .header__main-logo {
		padding-bottom: 0px;
	}
	
	.header__main-logo {
		justify-content: left;
	}
	
	.header-fixed-scroll .header__main-logo img {
		width: 100%;
	}
}



/*********************************************************************************************** 
VIDEO HOME 
************************************************************************************************/

.section-video-home {
	height: 850px;
	background: #3C3C3C;
	display: flex;
	overflow: hidden;
}

.section-video-home__text {
	position: absolute;
	right: 50%;
	top: 50%;
	transform: translateY(-70%);
	width: 45%;
	max-width: 825px;
	font-family: 'DavidLibre', sans-serif;
	font-size: 3rem;
	color: #FFF;
	font-weight: 300;
	z-index: 15;
}

.section-video-home__text h1 {
	margin-bottom: 0;
}

.section-video__logo {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -50px;
	z-index: 10;
	mix-blend-mode: overlay;
    opacity: 0.4;
	width: 900px;
	height: 900px;
}

.section-video__logo svg {
	width: 100%;
}

.section-video__overlay {
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.2);
	width: 100%;
	height: 100%;
	z-index: 5;
}

@media (min-width: 2300px) {
	
	.section-video-home {
		height: 950px;
	}
	
	.section-video__logo {
		width: 1000px;
		height: 1000px;
	}
}

@media (max-width: 1200px) {
	
	.section-video-home {
		height: 650px;
	}
	
	.section-video-home__text {
		transform: translateY(-60%);
	}
	
	.btn_white_outline--video-home {
		margin-top: 40px;
	}
	
	.section-video__logo {
		width: 700px;
		height: 700px;
	}
	
}

@media (max-width: 992px) {
	
	.section-video-home {
		display: flex;
		justify-content: center;
	}
	
	.section-video-home__text {
		right: unset;
		width: 90%;
		max-width: unset;
		font-size: 2.2rem;
		text-align: center;
		top: 10%;
		transform: none;
	}
	
	.section-video-home__text h1 {
		margin: 0;
	}
	
	.section-video__logo {
		width: 250px;
    	height: 250px;
		top: unset;
		bottom: 0%;
		right: 50%;
		transform: translate(50%, 30px);
	}
	
}

@media (max-width: 576px) {
	.section-video-home__text span {
		font-size: 4rem;
	}  
}



/*********************************************************************************************** 
INTRO HOME 
************************************************************************************************/

.section-intro-home {
	position: relative;
	padding: 15vh 0;
	height: auto;
}

.section-intro-home .boxContainer {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	z-index: 5;
}

.section-intro-home__title {
	font-family: 'DavidLibre', sans-serif;
	border: 8px solid #D0D0D0;
	width: 35%;
	aspect-ratio: 1/1;
	padding-right: 7%;
	padding-left: 50px;
	font-size: 4rem;
	line-height: 5rem;
	display: flex;
	align-items: center;
}

.section-intro-home__title br {
	display: none;
}

.section-intro-home__text {
	position: absolute;
	width: 68%;
	right: 0;
	height: auto;
	background: rgba(241,240,234, 0.9);
	padding: 5% 9%;
	font-size: 1.2rem;
	line-height: 1.8rem;
}

.section-intro-home__text blockquote {
	padding-left: 30px;
	padding-top: 20px;
}

.section-intro-home__background {
	position: absolute;
	right: 0;
	top: 0;
	width: 33%;
	height: 115%;
	background-image: url("../img/cornice-dorata.jpg");
	background-size: cover;
	background-position-y: bottom;
	transition: all 1s cubic-bezier(.215, .61, .355, 1);
}

@media (min-width: 1600px) {
	.section-intro-home__background {
		width: 25%;
	}
}

@media (max-width: 1500px) {
	.section-intro-home__title {
		font-size: 2.8rem;
		line-height: 3.5rem;
	}
}


@media (max-width: 1200px) {
	.section-intro-home .boxContainer {
		display: block;
		height: auto;
	}
	
	.section-intro-home__title {
		position: relative;
		width: 60%;
		border: 6px solid #D0D0D0;
		aspect-ratio: auto;
		padding: 30px;
		z-index: 10;
		margin-left: 6%;
	}
	
	.section-intro-home__text {
		position: relative;
		width: 100%;
		padding-top: calc(120px + 7%);
		padding-left: 6%;
		padding-bottom: 7%;
		padding-right:  6%;
    	margin-top: -120px;
	}
	
	.section-intro-home__title .btn_black {
		margin-top: 25px;
	}
}

@media (max-width: 768px) {
  	.section-intro-home__title {
		width: 80%;
	}
	
	.section-intro-home__background {
		display: none;
	}
}




/*********************************************************************************************** 
COLLEZIONI HOME 
************************************************************************************************/

.section-collections-home {
	background: rgba(241,240,234, 0.9);
	padding: 80px 0 110px 0;
	text-align: center;
}

.main--home .section-title-straddling {
	font-size: 4rem;
	line-height: 5rem;
}

.section-title-straddling--home {
	position: relative;
	background: linear-gradient(to top, rgba(241,240,234, 0.9) 50%, rgba(255,255,255, 0) 50%);
	z-index: 5;
}

.section-collections-home .boxContainer {
	width: calc(90% + 40px);
	max-width: 1690px;
}

.section-collections-home h2 {
	font-size: 1.2rem;
	text-transform: uppercase;
	font-weight: 700;
	padding: 10px 0;
	border-top: 2px solid #000;
	border-bottom: 2px solid #000;
	margin: 35px 0;
}

.section-collections-home a {
	font-weight: 700;
}

.section-collections-home .carousel_categories {
	display: flex;
	flex-wrap: wrap;
	column-gap: 4%;
	justify-content: flex-start;
}

.carousel_categories .custom-prev-arrow,
.carousel_categories .custom-next-arrow {
	position: absolute;
	width: 30px;
	height: 30px;
	top: -30px;
	border: 0;
	cursor: pointer;	
}

.carousel_categories .custom-prev-arrow {
	background: url("../img/slick-prev-arrow.svg") no-repeat center center var(--SecondaryColor);
	background-size: 18px 18px;
	right: 60px;
}

.carousel_categories .custom-next-arrow {
	background: url("../img/slick-next-arrow.svg") no-repeat center center var(--SecondaryColor);
	background-size: 18px 18px;
	right: 20px;
}

.collections-card-home {
	width: 22%;
	padding: 20px;
}

.collections-card-home a {
	width: 100%;
}

.collections-card-home__image {
	max-height: 380px;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
}

.collections-card-home__image img {
	width: 100%;
}

.cta-shop {
	height: auto;
	background: linear-gradient(to bottom, var(--PrimaryColor) 50%, #ffffff 50%);
}

.cta-shop--home {
	height: auto;
	background: linear-gradient(to bottom, rgba(241,240,234, 0.9) 50%, #ffffff 50%);
}

.cta-shop__container {
	height: auto;
	background: var(--SecondaryColor);
	padding: 50px;
	font-size: 1.2rem;
	color: #FFF;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.cta-shop__container p {
	margin-bottom: 0 !important;
}

.cta-shop__text {
	height: auto;
	flex: 0.9;
}

.cta-shop__botton {
	height: auto;
	text-align: right;
	flex: 0 0 auto;
}

.cta-shop__botton a {
	text-decoration: none !important;
}

.cta-shop__text span {
	font-family: 'DavidLibre', sans-serif;
	font-size: 2.1rem;
}

.cta-shop__text p {
	margin: 0;
}

@media (max-width: 992px) {
	
	.section-collections-home {
		padding: 80px 0 25px 0;
	}
	
	.collections-card-home {
		margin-bottom: 60px;
	}
	
	.cta-shop__container {
		flex-direction: column;
	}
	
	.cta-shop__text, .cta-shop__botton {
		width: 100%;
		text-align: center;
	}

	.cta-shop__botton {
		margin: 60px 0 25px 0px;
	}
}

@media (max-width: 576px) {
	.cta-shop__container {
		padding: 40px 20px;
	}  
}




/*********************************************************************************************** 
BLOG HOME 
************************************************************************************************/

.section-blog-home {
	height: auto;
	padding: 15vh 0;
}

.section-blog-home__title {
	font-family: 'DavidLibre', sans-serif;
	font-weight: 700;
	font-size: 4rem;
	line-height: normal;
}

.section-blog-home .row:nth-child(2) {
	margin-top: 80px;
	justify-content: flex-start;
	gap: 5%;
	padding: 0 15px;
}

.blog-card {
	width: 30%;
	margin: 0 0 120px;
}

.blog-card span {
	display: block;
	width: 100%;
	padding-left: 30px;
	padding-right: 30px;
	padding-bottom: 5px;
}

.blog-card__image {
	position: relative;
	margin-bottom: 40px;
	height: 480px;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}

.blog-card__date {
	position: absolute;
	top: 30px;
	left: 30px;
	padding: 4px 12px;
	text-align: center;
	line-height: 1.25rem;
	border: 1px solid #000;
}

.blog-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.blog-card__title {
	font-size: 1.3rem;
	line-height: 1.62rem;
    font-weight: 700;
	margin-bottom: 20px;
	min-height: 52px;
	height: auto;
}

.blog-card__category a {
	display: block;
	font-style: italic;
	color: #B3B3AD;
	text-decoration: none;
}

.blog-card__text {
	border-top: 1px solid #000;
	padding-top: 25px;
}

.blog-card__link {
	font-weight: 700;
	padding-top: 25px;
}

@media (max-width: 1400px) {
	.blog-card__image {
		height: 380px;
	}
}

@media (max-width: 1200px) {
	.blog-card__image {
		height: 320px;
	}
}

@media (max-width: 992px) {
	.blog-card__image {
		height: 250px;
	}
}

@media (max-width: 768px) {
	.blog-card {
		width: 100%;
	} 
	
	.blog-card__image {
		height: 490px;
	}
}

@media (max-width: 576px) {
	.blog-card__image {
		height: 380px;
	}
}



/*********************************************************************************************** 
Reviews card footer 
************************************************************************************************/

.section-reviews {
	background: rgba(241,240,234, 0.9);
	padding: 50px 0 100px 0;
	text-align: center;
}

.section-reviews .boxContainer {
	width: calc(90% + 40px);
	max-width: 1690px;
}

.section-reviews .carousel-reviews {
	display: flex;
	flex-wrap: wrap;
	column-gap: 4%;
	justify-content: flex-start;
}

.carousel-reviews .custom-prev-arrow,
.carousel-reviews .custom-next-arrow {
	position: absolute;
	width: 30px;
	height: 30px;
	top: -30px;
	border: 0;
	cursor: pointer;	
}

.carousel-reviews .custom-prev-arrow {
	background: url("../img/slick-prev-arrow.svg") no-repeat center center var(--SecondaryColor);
	background-size: 18px 18px;
	right: 60px;
}

.carousel-reviews .custom-next-arrow {
	background: url("../img/slick-next-arrow.svg") no-repeat center center var(--SecondaryColor);
	background-size: 18px 18px;
	right: 20px;
}

.reviews-card {
	width: 23.5%;
	padding: 20px;
	margin: 20px;
/*	border: 1px solid #6E6E6E;*/
	background: rgba(255,255,255,0.6);
}

.reviews-card__date {
	font-size: 0.8rem;
	color: rgba(0,0,0,0.5);
}

@media (max-width: 992px) {
	
	.section-reviews {
		padding: 50px 0 110px 0;
	}
}	


/*********************************************************************************************** 
FOOTER 
************************************************************************************************/

footer {
	position: relative;
	z-index: 15;
	font-weight: normal;
}

.footer__newsletter {
	position: relative;
	padding: 50px 5%;
	background: #272727;
}

.footer__newsletter a {
	color: #FFF;
}

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

.footer__newsletter-container {
	margin: 0 auto;
	width: auto;
	max-width: 900px;
	color: #FFF;
	text-align: center;
}

.footer__newsletter .input-newsletter {
	width: 100%;
	max-width: 500px;
	height: 50px;
	margin: 30px auto;
	display: flex;
}

.footer__newsletter .input-email {
	flex: 1;
}

.footer__newsletter .input-email input{
	margin: 0;
	bottom: 0;
	padding: 0 15px;
}

.footer__newsletter .input-submit {
}

.footer__newsletter .input-submit input {
	background: #000;
    border: 0;
    color: #FFF;
    height: 50px;
    padding: 0 25px;
    cursor: pointer;
	white-space: nowrap;
}

.screen-reader-response {
	display: none;
}

.screen-reader-response ul {
	display: none;
}

.footer__newsletter .screen-reader-response p {
	margin: 0;
}

.footer__newsletter .wpcf7-not-valid-tip {
	display: none;
}

.footer__newsletter .wpcf7-response-output {
	color: #FFF;
	background: #000;
	padding: 0 15px;
}

.footer__newsletter input[type=checkbox] {
	margin-right: 8px;
	width: 15px;
	height: 15px;
}


.footer__newsletter-container>span {
	display: block;
	width: 100%;
	font-size: 1.5rem;
	font-weight: 400;
}

.footer__newsletter__photo-left,
.footer__newsletter__photo-right {
	position: absolute;
}

.footer__newsletter__photo-left {
	width: 370px;
	height: 370px;
	left: 4%;
	top: 50%;
	transform: translateY(-50%);
	background: url("../img/armchair.png") center center no-repeat;
	background-size: cover;
	transition: all 1s cubic-bezier(.215, .61, .355, 1);
}

.footer__newsletter__photo-right {
	width: 430px;
	height: 370px;
	right: 0;
	bottom: 0;
	background: url("../img/cornice.png") top left no-repeat;
	background-size: cover;
	transition: all 1s cubic-bezier(.215, .61, .355, 1);
}

.footer__link {
	padding: 150px 0;
	background: var(--PrimaryColor);
}

.footer__link a {
	text-decoration: none;
}

.footer-logo {
}

.footer-logo img {
	width: 100%;
	max-width: 365px !important;
	margin-bottom: 60px;
}

.footer-title {
	display: block;
	width: 100%;
	font-weight: 700;
	margin-bottom: 20px;
}

.footer-column-1,
.footer-column-2,
.footer-column-3 {
	margin-bottom: 50px;
}

.footer-column-1 img {
	margin-right: 10px;
}

.footer-column-3 a,
.footer-column-4 a {
	display: table;
	text-decoration: none;
	margin-bottom: 8px;
}

.footer-menu {
    list-style-type: none;
    padding: 0;
}

.footer__credits {
	height: auto;
	padding: 18px 0;
	background: var(--SecondaryColor);
	color: #FFF;
	font-size: 0.8rem;
}

.footer__credits .boxContainer {
	display: flex;
	justify-content: space-between;
}

.footer__credits a {
	color: #C3C3C3;
	text-decoration: none;
}

.footer__credits a:hover {
	color: #C3C3C3;
}

@media (max-width: 1800px) {
	.footer__newsletter__photo-left {
		left: -2%;
	} 
	.footer__newsletter__photo-right {
		width: 300px;
	}  
}

@media (max-width: 1600px) {
	.footer__newsletter__photo-left {
		left: -8%;
	} 
	.footer__newsletter__photo-right {
		width: 255px;
	}  
}

@media (max-width: 1400px) {
	.footer__newsletter__photo-left {
		left: -18%;
	} 
	.footer__newsletter__photo-right {
		width: 150px;
	}  
}

@media (max-width: 1200px) {
	.footer__newsletter {
		justify-content: right;
		display: flex;
	}
	
	.footer__newsletter-container {
		margin: 0;
		width: 70%;
		text-align: left;
	}	
	
	.footer__newsletter__photo-left {
		left: -2%;
		transform: translateY(-50%) scale(0.6);
	}
	
	.footer__newsletter__photo-right {
		display: none;
	}
	
	.footer__newsletter .input-newsletter {
		margin: 30px 0;
	}
}

@media (max-width: 992px) {
	.footer__newsletter {
		justify-content: center;
		display: flex;
	}
	
	.footer__newsletter-container {
		margin: 0;
		width: 100%;
		text-align: left;
	}	
	
	.footer__newsletter__photo-left {
		width: 111px;
		height: 111px;
		top: 0;
		left: 5%;
		transform: translateY(-80%);
	}
	
	.footer__newsletter__photo-right {
		display: none;
	} 
}

@media (max-width: 768px) {
	.footer__newsletter br {
		display: none;
	}  
}

@media (max-width: 576px) {
	.footer__credits .boxContainer {
		flex-direction: column;
	}
	
	.footer__credits span:first-child {
		margin-bottom: 6px;
	}
}

/*********************************************************************************************** 
PAGINA BLOG 
************************************************************************************************/

.section-last-post {
	padding: 60px 0 100px 0;
	background: linear-gradient(to top, var(--PrimaryColor) 53%, #ffffff 50%);
}

.section-last-post .boxContainer {
	max-width: 1400px;
	display: flex;
	justify-content: space-between;
}

.section-last-post__image,
.section-last-post__text {
	width: 45%;
}

.section-last-post__image {
	display: flex;
	aspect-ratio: 1 / 2;
	height: 500px;
	justify-content: center;
}

.section-last-post__image img {
	width: 80%;
	height: 100%;
	object-fit: cover;
	border: 5px solid var(--PrimaryColor);
	transition: all 1s cubic-bezier(.215, .61, .355, 1);
	background: #fff;
}

.section-last-post__text {
	position: relative;
}

.section-last-post__text h1 {
	font-family: 'DavidLibre', sans-serif;
	font-weight: 700;
	font-size: 2.2rem;
	margin: 20px 0 10px 0;
}

.section-last-post__text .category-link {
	font-size: 1.2rem;
	font-style: italic;
    color: #B3B3AD;
    text-decoration: none;
}

.section-last-post__text>div {
	position:absolute; 
	top: 50%; 
	padding-top: 30px;
}

.section-last-post__text .category-link:hover {
    color: #000;
}

.section-last-post__text .permalink {
	display: block;
    font-weight: 700;
	margin-top: 30px;
}

.section-blog .row {
	margin-top: 200px;
	margin-bottom: 180px;
	justify-content: flex-start;
	gap: 2%;
	padding: 0 15px;
}

.section-blog .blog-card {
    width: 23.5%;
    margin: 0 0 120px;
}

.main--template-post-page {
	position: relative;
}

.main--template-post-page .blog-card__image {
	height: 380px;
}

.main--template-post-page .blog-card__image img {
	width: 100%;
    height: 100%;
	object-fit: cover;
}

.cta-shop--blog h1 {
	font-family: 'DavidLibre', sans-serif;
	font-size: 4rem;
    margin: 0 !important;
}

.cta-shop--blog .cta-shop__container {
    padding: 50px 5%;
}

.cta-shop--blog .boxContainer div:first-of-type {
	width: 10%;
}

.cta-shop--blog .boxContainer div:last-of-type {
	width: 84%;
}

.boxContainer--post_loop_empty {
	margin-top: 130px;
	margin-bottom: 250px;
}

.post_loop_empty {
	border: 6px solid var(--PrimaryColor);
    width: 100%;
	padding: 20px;
}

@media (max-width: 1400px) {
	.section-last-post__image img {
		width: 100%;
	}  
}


@media (max-width: 1200px) {
		
	.section-blog .row {
		margin-top: 110px;
    	margin-bottom: 50px;
		gap: 5%;
	}

	.section-blog .blog-card {
		width: 30%;
	}
}

@media (max-width: 992px) {
	
	.section-last-post__image,
	.section-last-post__text {
		width: 48%;
	}
	
	.section-blog .row {
		gap: 4%;
	}

	.section-blog .blog-card {
		width: 48%;
	}
	
	.cta-shop--blog .boxContainer div:first-of-type {
		width: 100%;
		margin-bottom: 15px;
	}

	.cta-shop--blog .boxContainer div:last-of-type {
		width: 100%;
	}
	
}

@media (max-width: 768px) {
	
	.section-last-post {
		padding: 30px 0 60px 0;
		background: linear-gradient(to top, var(--PrimaryColor) 70%, #ffffff 50%);
	}

	.section-last-post .boxContainer {
		justify-content: center;
		flex-direction: column;
	}
	
	.section-last-post__image,
	.section-last-post__text {
		width: 100%;
	}
	
	.section-last-post__image {
		margin-bottom: 60px;
	}
	
	.section-last-post__text>div {
		position: relative;
		padding-top: 30px;
	}
	
	.section-blog .row {
		gap: 0%;
	}

	.section-blog .blog-card {
		width: 100%;
	}
	
	.boxContainer--post_loop_empty {
		margin-top: 80px;
		margin-bottom: 200px;
	}
}

@media (max-width: 576px) {
	
	.section-last-post {
		background: linear-gradient(to top, var(--PrimaryColor) 75%, #ffffff 50%);
	}
	
	.section-last-post__image {
		height: 350px;
	}  
}


/*********************************************************************************************** 
PAGINA CATEGORY POST 
************************************************************************************************/

.category-post-top {
	height: 250px;
	display: flex;
	justify-content: center;
}

.category-post-top .breadcrumbs {
	position: absolute;
}

.category-post-top__text {
	position: absolute;
	bottom: 0;
	text-align: center;
}

.category-post-top__text span {
	font-family: 'DavidLibre', sans-serif;
	font-weight: 700;
    font-size: 2.5rem;
}

.category-post-top__text h1 {
	margin: 0;
}

.category-post-top__text a {
	color: #CCCBC6;
	text-decoration: none;
	font-style: italic;
}

.category .section-blog .row:nth-child(1) {
	margin-top: 170px;
	margin-bottom: 0px;
}

.category .section-blog .row:nth-child(2) {
	margin-top: 0px;
	margin-bottom: 220px;
}



/*********************************************************************************************** 
PAGINA SINGLE POST 
************************************************************************************************/

.single-post__image .breadcrumbs {
	position: absolute;
}

.single-post__image {
	position: relative;
	height: auto;
	min-height: 50vh;
	background: #D4D4D4;
	display: flex;
	padding: 50px 0;
}

.single-post__overlay {
	position: absolute;
    top: 0;
	left: 0;
    width: 70%;
    height: 100%;
    z-index: 10;
	background: linear-gradient(to right, rgba(255,255,255,0.95) 20%, rgba(255,255,255,0));
}

.single-post__image img {
	position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 5;
}

.single-post__image__text {
    position: absolute;
    right: 50%;
    top: 50%;
    transform: translateY(-50%);
    width: 45%;
    max-width: 825px;
    color: #000;
    font-weight: 300;
	z-index: 15;
}

.single-post__image__text span {
	display: inline-block;
}

.single-post__image__text h1 {
	font-family: 'DavidLibre', sans-serif;
	font-size: 3rem;
	font-weight: 700;
	margin: 20px 0 0 0;
}

.single-post__date {
	border: 1px solid #000;
	padding: 5px 10px;
	font-size: 1.1rem;
}

.single-post__category a {
	font-style: italic;
	color: #CCCBC6;
	font-size: 1.5rem;
	text-decoration: none;
}

.single-post__description {
	font-style: italic;
	font-weight: 500;
	margin-top: 20px;
	font-size: 1.1rem;
}

.single-post__content {
	padding: 120px 0;
}

.single-post__content--extra {
	background: var(--PrimaryColor);
	padding-top: 40px;
	margin-bottom: 80px;
}

.single-post__content--last {
	padding-top: 0;
}

.cta-shop--single-post {
	background: none;
}

.single-post .section-blog .row:nth-child(1) {
	margin-top: 170px;
	margin-bottom: 70px;
}

.single-post .section-blog .row:nth-child(1) .col-12 {
	padding: 0;
}

.single-post .section-blog .row:nth-child(2) {
	margin-top: 0px;
	margin-bottom: 0px;
}

.single-post .section-blog .row:nth-child(3) {
	margin-top: 0px;
	margin-bottom: 220px;
}

@media (max-width: 992px) {
	
	.single-post__image {
		justify-content: center;
	}
	
	.single-post__image__text {
		position: relative;
		top: unset;
		right: unset;
		transform: translateY(0%);
		width: 90%;
		max-width: unset;
		text-align: center;
	}
	
	.single-post__overlay {
		width: 100%;
		background: linear-gradient(to right, rgba(255,255,255,0.75), rgba(255,255,255,0.75));
	}
}



/*********************************************************************************************** 
TEMPLATE PAGINA 404 
************************************************************************************************/

.main--404-page {
	text-align: center;
	padding: 200px 0 300px 0;
}

.main--404-page h1 {
	font-weight: 700;
}

/*********************************************************************************************** 
TEMPLATE PAGINA INDEX 
************************************************************************************************/

.main--template-index {
	text-align: center;
	padding: 200px 0 300px 0;
}

.main--template-index h1{
	font-weight: 700;
}

/*********************************************************************************************** 
TEMPLATE PAGINA SEARCH 
************************************************************************************************/

.main--template-search {
	padding: 80px 0;
}

.main--template-search h1 {
	padding-bottom: 80px;
}

.main--template-search h2 {
    width: 100%;
    background: var(--PrimaryColor);
    font-size: 1.3rem;
    padding: 7px 12px;
    margin-bottom: 50px;
}

.main--template-search .section-blog .row {
	margin-top: 0;
	margin-bottom: 80px;
}

.main--template-search .section-products .row {
	margin-top: 0;
	margin-bottom: 80px;
	justify-content: flex-start;
    gap: 2%;
    padding: 0 15px;
}

.search-result-item {
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding-bottom: 50px;
	border-bottom: 1px solid #000;
	margin-bottom: 50px;
	min-height: 161px;
}

.search-result-item .blog-card__category a {
    display: unset;
	font-style: normal;
    color: var(--SecondaryColor);
    text-decoration: underline;
}

.search-result-item__img {
	width: 10%;
}

.search-result-item__img img {
	width: 100%;
	object-fit: cover;
}

.search-result-item__text {
	width: 88%;
}

.search-result-item__text span:not(.blog-card__category) {
	display: block;
}

.search-result-item__text .blog-card__category {
	margin-bottom: 8px;
}

.search-result-item__text .blog-card__title {
    font-size: 1.3rem;
    line-height: 1.62rem;
    font-weight: 700;
    margin-bottom: 0;
	min-height: unset;
    height: auto;
	margin-top: 5px;
}

.search-result-item__text .blog-card__text {
    border-top: none;
    padding-top: 5px;
}

.search-result-item__text .blog-card__link {
    font-weight: 700;
    padding-top: 20px;
}

.no-search-result {
	display: block;
	border: 4px solid var(--PrimaryColor);
	padding: 30px;
	margin-bottom: 80px;
}

@media (max-width: 992px) {
	
	.search-result-item__img {
		width: 20%;
	}

	.search-result-item__img img {
		width: 100%;
		object-fit: cover;
	}

	.search-result-item__text {
		width: 78%;
	}
  
}

@media (max-width: 576px) {
	.search-result-item {
		flex-direction: column;
	} 
	
	.search-result-item__img {
		width: 100%;
		max-width: 180px;
		margin-bottom: 18px;
	}
	
	.search-result-item__text {
		width: 100%;
	}
}

/*********************************************************************************************** 
TEMPLATE PAGINA BIOGRAFIA 
************************************************************************************************/

.main--template-biography {
	padding: 130px 0 200px 0;
	line-height: 2rem;
	text-align: justify;
}

.main--template-biography h1 {
	font-family: 'DavidLibre', sans-serif;
    font-weight: 700;
    font-size: 4rem;
    margin-top: 0;
}

.section-intro-biography {
	text-align: center;
	padding-bottom: 150px;
}

.section-intro-biography .boxContainer {
	max-width: 1400px;
}

.section-first-biography {
	height: auto;
	display: flex;
	align-items: center;
	padding: 200px 0;
	background: #515151;
}

.section-first-biography .boxContainer {
	z-index: 15;
}

.section-first-biography__text {
    width: 50%;
    max-width: 825px;
	float: right;
	color: #fff;
}

.section-first-biography .img-overlay {
	position: absolute;
	top: 0;
	right: 0;
	width: 80%;
	height: 100%;
	background: linear-gradient(to left, rgba(0,0,0,0.6) 40%, rgba(255,255,255,0));
	z-index: 10;
}

.section-first-biography__img {
	position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 5;
}

.section-second-biography {
	display: flex;
	margin-top: 80px;
}

.section-second-biography__text {
    width: 50%;
	padding-left: 5%;
}

.section-second-biography__text div {
	width: 100%;
	max-width: 825px;
	float: right;
	padding: 150px 100px 150px 0;
}

.section-second-biography__photo {
	width: 50%;
    background: bisque;
}

.section-second-biography__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cta-shop--biography {
	background: #FFF;
    padding: 180px 0 60px 0;
} 

.cta-shop--biography .cta-shop__container {
	background: #FFF;
	border: 6px solid var(--PrimaryColor);
	color: #000;
}

@media (max-width: 1200px) {
	.section-second-biography__text div {
		padding: 150px 50px 150px 0;
	}
}

@media (max-width: 992px) {
	
	.main--template-biography {
		text-align: left;
		padding: 100px 0 130px 0;
	}

	.section-second-biography {
		flex-direction: column;
	}
	
	.section-intro-biography {
		text-align: left;
		padding-bottom: 100px;
	}
	
	.section-first-biography__text {
		width: 100%;
		max-width: none;
	}
	
	.section-first-biography {
		padding: 100px 0;
	}
	
	.section-first-biography .img-overlay {
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.6);
	}
	
	.section-second-biography__text div {
		max-width: none;
		float: none;
		padding: 20px 0 100px 0;
	}
	
	.section-second-biography__text {
		width: 90%;
		margin: 0 auto;
		padding-left: 0;
	}
	
	.section-second-biography__photo {
		width: 100%;
	}
	
	.cta-shop--biography {
		padding: 100px 0 60px 0;
	}
		
}




/*********************************************************************************************** 
TEMPLATE PAGINA LEGAL 
************************************************************************************************/

.main--template-legal {
	padding: 100px 0;
}


/*********************************************************************************************** 
TEMPLATE PAGINA CONTATTI 
************************************************************************************************/

.main--template-contatti {
	padding-bottom: 200px;
}

.section-page-photo {
	position: relative;
	height: 300px;
	background: #989898;
	margin-bottom: 180px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.section-page-photo .boxContainer {
	display: flex;
	align-content: center;
	flex-wrap: wrap;
	justify-content: center;
	z-index: 20;
}

.section-page-photo h1 {
	font-family: 'DavidLibre', sans-serif;
	color: #FFF;
	font-size: 4rem;
	font-weight: 700;
	margin: 0;
}

.section-page-photo img {
	position: absolute;
	z-index: 10;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.9;
}

.content-contatti__sx {
	background: var(--PrimaryColor);
	padding: 5%;
}

.content-contatti__dx {
	padding-top: 4%;
	padding-bottom: 5%;
}

.contact-form-title {
	font-family: 'DavidLibre', sans-serif;
	color: #000;
	font-size: 2.2rem;
	line-height: 2.8rem;
	font-weight: 700;
	margin-bottom: 10px;
}

.form__campi {
    position: relative;
    font-weight: 300;
    display: block;
    width: 100%;
    height: 45px;
    border: none !important;
    border-bottom: 1px solid #000 !important;
    border-radius: 0 !important;
    padding-left: 0;
    text-decoration: none;
    background: rgba(255,255,255,0);
}

.form__campi::placeholder {
	color: #B3B3AD;
}

.form__campi--textarea {
    padding-top: 12px;
    resize: none;
}

.content-contatti__dx label {
	margin-top: 40px;
	font-weight: 700;
}

.content-contatti__dx input[type=checkbox] {
    box-sizing: border-box;
    padding: 0;
    width: 15px;
    height: 15px;
    margin-right: 8px;
    transform: translateY(2px);
}

.form__text {
	padding: 30px 15px 50px 15px;
}

.form__text p {
	margin: 0;
}

.content-contatti__dx .wpcf7-not-valid-tip,
.content-contatti__dx .wpcf7-response-output {
	color: #D20003;
}

@media (max-width: 992px) {
	.content-contatti__sx {
		padding: 5% 15px;
		margin-bottom: 30px;
	}
	
	.section-page-photo {
		margin-bottom: 80px;
	}
}


/*********************************************************************************************** 
WOOCOMMERCE
************************************************************************************************/

.main--woocommerce-page,
.main--template-page {
	padding: 80px 0 !important;
}

.main--woocommerce-page .boxContainer {
	display: flex;
	flex-direction: column;
}

.main--woocommerce-page h1 {
	font-family: 'DavidLibre', sans-serif !important;
	font-weight: 700 !important;
	font-size: 4rem !important;
	text-align: center !important;
	margin-top: 0 !important;
}

.main--woocommerce-page .term-description,
.main--woocommerce-page .page-description {
	max-width: 1000px !important;
    text-align: center !important;
    margin: 0 auto !important;
	margin-bottom: 80px !important;
}

.main--woocommerce-page .woocommerce-result-count {
	display: none !important;
}

.woocommerce-ordering select {
	border: 1px solid var(--SecondaryColor);
	padding: 4px;
}



.single-post__content--category-text { /* Box di testo alla fine delle pagine categoria */
    background: var(--PrimaryColor) !important;
    padding: 60px 0 80px 0 !important;
    margin-bottom: 200px !important;
}

.breadcrumbs--woocommerce {
	position: relative;
	padding-top: 15px;
}

.woocommerce-breadcrumb,
.woocommerce-breadcrumb a {
	font-size: 0.9rem !important;
	color: #000 !important;
}


/* Minicart */
.nav-wrap .grid{position: relative;}

.minicart { list-style-type : none; margin : 0px; width : 350px; max-height : 0px; overflow : hidden; position : absolute; z-index : 2; top : 50px; right : 0px; background : #ffffff; box-shadow : 0 10px 15px rgba(0,0,0,0.15);}
.minicart__inside { padding : 20px; position: relative;}
.minicart .widget { margin-bottom : 0; }
.minicart .widget li { position : relative; margin-top : 5px!important; }
.minicart .widget a { border : none; padding : 0px 0 0 0; color:#000 }
.minicart .widget a.button { padding : 10px; }
.minicart .widget_shopping_cart .total{ border-top : 1px solid #dddddd; margin-top : 10px; padding-top : 20px; }
.minicart .woocommerce-mini-cart__buttons { margin-bottom : 0; }

.cart-icon { 
	display: block; 
	width: 50px; 
	height: 50px; 
	z-index: 30;
	margin-left: 10px;
}

.cart-icon .cart-contents {
	line-height: 40px; 
	text-align: center; 
	cursor: pointer; 
	width: 50px; 
	height: 50px; 
	font-size: 22px; 
	position: relative; 
}

.cart-icon .cart-contents__number { position : absolute; height : 19px; width : 19px; line-height : 19px; border-radius : 20px; text-align : center; font-size : 12px; right : -5px; top : 6px; font-weight : 400; background : #FFF; color : #000; }

.cart--open { min-height : 50px; max-height : 600px; overflow-y: scroll; }
.woocommerce-mini-cart__buttons { margin-bottom : 0; }

.woocommerce-mini-cart__buttons a.button:first-of-type,
.woocommerce-mini-cart__buttons a.button:last-of-type {
    border-radius: 0 !important;
    left: auto !important;
    color: #000 !important;
    background-color: #FFF !important;
    border: 2px solid #000 !important;
}

.woocommerce-mini-cart__buttons a.button:first-of-type:hover {
	color: #000 !important;
    background-color: #FFF !important;
}

.woocommerce-mini-cart__buttons a.button:last-of-type {
    color: #FFF !important;
    background-color: #000 !important;
}

.woocommerce-mini-cart__buttons a.button:last-of-type:hover {
    color: #FFF !important;
    background-color: #000 !important;
}

/* Minicart mobile */
.cart--mobile .cart-contents,
.cart--mobile .cart-icon {
	padding: 0;	
}

.cart-contents svg {
	width: 28px;
	height: 28px;
	margin-right: 10px;
}

.cart-contents svg path {
	stroke: #FFF !important;
}

.cart--mobile .cart-contents svg {
	width: 35px;
	height: 35px;
	margin-right: 10px;
}

.cart--mobile .cart-contents svg path {
	stroke: #000 !important;
}

.cart--mobile .cart-contents__number {
	background: #000;
	color: #FFF;
}

.cart--mobile .minicart {
    width: 280px;
}

.woocommerce ul.products li.product .onsale {
    top: 28px !important;
    right: -5px !important;
}

.woocommerce span.onsale {
    border-radius: 0 !important; 
    background-color: #000 !important;
    color: #fff !important;
    padding: 0 20px !important;
}

@media (max-width: 768px) {
	.main--woocommerce-page,
	.main--template-page {
		padding-top: 35px !important;
	}
	
	.main--woocommerce-page .term-description {
		margin-bottom: 50px !important;	
	}
}


/******************* 
Pagina pagamento 
*******************/


/* Stili generali */

.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
	float: none !important;
	width: 80% !important;
	max-width: none !important;
}

form.woocommerce-checkout {
	display: flex !important;
	flex-wrap: wrap !important;
	margin-top: 80px !important;
	margin-bottom: 100px !important;
	justify-content: space-between !important;
}

.woocommerce-NoticeGroup-checkout {
	width: 100% !important;
}

.woocommerce-checkout .col2-set {
	width: 50% !important;
}

.woocommerce-checkout h3 {
	font-weight: 700 !important;
	margin-bottom: 1rem !important;
}

.order_review {
	display: flex !important;
    flex-direction: column !important;
}

.woocommerce form .form-row label {
    line-height: 2 !important;
    width: 80% !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
	left: 98% !important;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
    padding: 1em 2em 1em 3.5em !important;
    margin: 0 0 5em !important;
    background-color: #FFF !important;
    color: #000 !important;
    border-top: none !important;
    border-top-color: none !important;
    border: 5px solid var(--PrimaryColor) !important;
}

.woocommerce-error {
	width: 100% !important;
}

.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before {
    color: #000 !important;
}


.wc-block-components-notice-banner.is-info {
	border-radius: 0 !important;
    background-color: #FFF !important;
    border: 4px solid var(--PrimaryColor) !important;
}

.wc-block-components-notice-banner.is-info>svg {
    background-color: #000 !important;
}

.woocommerce-shipping-totals>th {
	display: none;
}

.woocommerce-shipping-totals>td {
	width: 100%;
	border-top: none !important;
}

.cart-subtotal>th,
.cart-subtotal>td {
	border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.woocommerce button.button {
    border-radius: 0 !important;
    color: #fff !important;
    background-color: var(--SecondaryColor) !important;
}

#payment div.payment_box {
    background-color: #cdccc7 !important;
}

.woocommerce-checkout #payment div.payment_box::before {
    border: 1em solid #cdccc7 !important;
	border-right-color: transparent !important;
    border-left-color: transparent !important;
    border-top-color: transparent !important;
}

@media (max-width: 1200px) {
	.woocommerce-checkout .col2-set .col-1,
	.woocommerce-checkout .col2-set .col-2 {
		width: 90% !important;
	}  
}

@media (max-width: 768px) {
	
	.woocommerce-checkout {
		flex-direction: column !important;
	}
	
	.woocommerce-checkout .col2-set {
		width: 100% !important;
	}
	
	.woocommerce-checkout .col2-set .col-1,
	.woocommerce-checkout .col2-set .col-2 {
		width: 100% !important;
	}
	
	.woocommerce-shipping-totals>td::before {
		display: none !important;
	}
	
}

/* Sezione COUPON */


.woocommerce-info {
	background: #FFF !important;
	margin: 0 !important;
	border: 4px solid var(--PrimaryColor) !important;
}

.woocommerce-info::before {
    color: var(--SecondaryColor) !important;
}

.woocommerce form.checkout_coupon {
    margin: 0 0 3em 0 !important;
	border: 0px !important;
	background: var(--PrimaryColor) !important;
	border-radius: 0 !important;
}

.woocommerce-form-coupon .button {
	height: 45px !important;
    background: var(--SecondaryColor) !important;
    color: #FFF !important;
    font-weight: 500 !important;
    border-radius: 0 !important;
	padding: 9px 25px !important;
    border: 0 !important;
}

.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea {
   height: 45px !important;
}


/* Sezione DETTAGLI DI FATTURAZIONE */

.woocommerce-checkout .col-1,
.woocommerce-checkout .col-2 {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.woocommerce form .form-row {
    margin: 0 0 20px !important;
}

.woocommerce form label{
    margin: 0 !important;
}

.woocommerce-shipping-fields span,
.woocommerce-additional-fields span,
.woocommerce-billing-fields__field-wrapper span {
	width: 100% !important;
}

.woocommerce-shipping-fields .optional,
.woocommerce-additional-fields .optional,
.woocommerce-billing-fields__field-wrapper .optional {
	display: inline !important;
}

.woocommerce-shipping-fields input,
.woocommerce-additional-fields input,
.woocommerce-additional-fields textarea,
.woocommerce-billing-fields__field-wrapper input {
	border: 1px solid #C0C0C0 !important;
}

#ship-to-different-address-checkbox {
	margin-right: 10px !important;
}


/* Sezione INFORMAZIONI AGGIUNTIVE */

.woocommerce-shipping-fields,
.woocommerce-additional-fields {
	margin-top: 30px !important;	
}

/* Sezione IL TUO ORDINE */

.woocommerce-checkout-review-order {
	width: 50% !important;
	max-width: 750px !important;
}

.woocommerce-checkout-review-order-table {
    border-radius: 0 !important; 
	border: 4px solid var(--PrimaryColor) !important;
	padding: 20px !important;
	border-spacing: 0 !important;
}

.woocommerce-checkout-payment {
	background: var(--PrimaryColor) !important;
	border-radius: 0 !important;
}

.woocommerce-checkout-payment .woocommerce-info {
	background: var(--PrimaryColor) !important;
	margin: 0 !important;
	border: 0 !important;
	list-style: none !important;
	line-height: 1.5 !important;
}

.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: 1px solid #000 !important;
	padding: 20px !important;
}

.place-order {
	padding: 35px !important;
}

.place-order .button {
	height: 60px !important;
    background: var(--SecondaryColor) !important;
    color: #FFF !important;
    border-radius: 0 !important;
	width: 100% !important;
	margin-top: 30px !important;
}

@media (max-width: 768px) {
	.woocommerce-checkout-review-order {
		margin-top: 60px !important;
		width: 100% !important;
	}
}

/******************* 
Pagina shop 
*******************/

.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
	margin: 0 0 80px 0 !important; 
}

.woocommerce ul.products::before, .woocommerce-page ul.products::before {
    content: " ";
    display: none !important;
}

ul.products li.product-category {
	position: relative !important;
	width: 23% !important;
	box-sizing: border-box !important; /* Include il padding e il bordo nella larghezza */
	margin-bottom: 80px !important;
	background: var(--PrimaryColor) !important;
    padding: 30px !important;
    text-align: center !important;
	display: flex !important;
    justify-content: center !important;
	flex-direction: column !important;
	padding-top: 110px !important;
}

ul.products li.product-category h2 {
	position: absolute !important;
    top: 28px !important;
    width: 90% !important;
    margin: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    padding: 14px 0 !important;
    border-top: 1px solid #000 !important;
    border-bottom: 1px solid #000 !important;
}

ul.products li.product-category a {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	width: 90% !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 350px !important;
    border: 4px solid var(--PrimaryColor) !important;
	margin: 0 auto !important;
	overflow: hidden !important;
}

ul.products li.product-category img {
	transition: all 0.3s cubic-bezier(.215, .61, .355, 1) !important;
}

ul.products li.product-category:hover img {
	transform: scale(1.1) !important;
}

h2.woocommerce-loop-category__title mark {
	display: none !important;
}

.product-category__button a{
    width: 100% !important;
}

.woocommerce nav.woocommerce-pagination {
    padding-bottom: 80px !important;
}

.woocommerce nav.woocommerce-pagination ul {
    border: 1px solid #000 !important;
}

.woocommerce nav.woocommerce-pagination ul li {
    border-right: 1px solid #000 !important;
}

.woocommerce nav.woocommerce-pagination ul li:last-of-type {
    border-right: 0 !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
    background: #000 !important;
    color: #fff !important;
	font-size: 1.2em !important;
}

.woocommerce nav.woocommerce-pagination ul li a {
	font-size: 1.2em !important;
}

@media (max-width: 1400px) {
	li.product-category {
		width: 31.45% !important;
	}
}

@media (max-width: 1200px) {
	li.product-category {
		width: 48.6% !important;
	}
}

@media (max-width: 576px) {
	li.product-category {
		width: 100% !important;
	}
}



/******************* 
Pagina categoria prodotti 
*******************/


ul.products {
	padding: 40px 0 0 0 !important;
    list-style-type: none !important;
	display: flex !important;
	flex-wrap: wrap !important; /* Per posizionare gli elementi su più righe */
	column-gap: 2.8% !important;
} 

ul.products li.product {
	width: 22.9% !important;
	box-sizing: border-box !important; /* Include il padding e il bordo nella larghezza */
	margin-bottom: 80px !important;
}

ul.products li.product a {
	text-decoration: none !important;
}

.woocommerce-LoopProduct-link img {
	width: 100% !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 350px !important; /* Imposta l'altezza massima a 300 pixel */
	margin-bottom: 0 !important;
	object-fit: cover;
}

.woocommerce-LoopProduct-link h2 {
	display: block !important;
    background: var(--SecondaryColor) !important;
    color: #FFF !important;
    text-decoration: none !important;
    font-size: 1.2rem !important;
	line-height: 1.5rem !important;
    padding: 15px 25px !important;
    min-height: 78px !important;
	height: auto !important;
	margin-bottom: 0 !important;
}

.woocommerce-LoopProduct-link .price,
.woocommerce-LoopProduct-link .short-description {
	display: block !important;
    padding: 15px 25px !important;
    background: var(--PrimaryColor) !important;
}

.woocommerce-LoopProduct-link .price {
	padding-top: 20px !important;
	padding-bottom: 25px !important;
	font-weight: 700 !important;
	font-size: 1.2rem !important;
	color: #000 !important;

}

.woocommerce-LoopProduct-link .short-description {
	padding-bottom: 0 !important;
}

li.product .add_to_cart_button {
	display: none !important;
} 

.product_type_simple {
	display: block !important;
    padding: 15px !important;
    background: var(--PrimaryColor) !important;
}

li.product .button {
	display: none !important;
}

@media (max-width: 992px) {
	ul.products li.product {
		width: 31.45% !important;
	}  
}

@media (max-width: 768px) {
	ul.products li.product {
		width: 48.6% !important;
	}  
}

@media (max-width: 576px) {
	ul.products {
		column-gap: 0% !important;
	} 

	ul.products li.product{
		width: 100% !important;
	}  
}


/******************* 
Pagina singolo prodotto 
*******************/

.main--woocommerce-page .summary p {
	margin-bottom: 2rem;
}

.main--woocommerce-page .button {
	padding: 1em 1em !important;
    font-weight: 400 !important;
    color: #FFF !important;
    background-color: #000 !important;
    border-radius: 0 !important;
}

.main--woocommerce-page .quantity input {
	line-height: 43px !important;
	border-radius: 0 !important;
	border: 1px solid !important;
	margin-right: 10px !important;
}

.woocommerce div.product .product_title {
    text-align: left !important;
	font-size: 2.7rem !important;
}

.woocommerce div.product form.cart {
    border-bottom: 1px solid #000 !important;
    padding-bottom: 40px !important;
}

.woocommerce div.product p.price {
	color: #000 !important;
    font-size: 1.5em !important;
	font-weight: 700 !important;
}

.product_meta .sku_wrapper,
.product_meta .posted_in {
	display: block;
}

.product_meta .sku {
	font-weight: 700;
}


section.related {
	clear: both;
	padding-top: 100px;
}

.woocommerce-Tabs-panel h2 {
	margin-bottom: 20px !important;
}



.woocommerce div.product .woocommerce-tabs,
.woocommerce-page div.product .woocommerce-tabs {
    padding-top: 50px !important;
}

@media (min-width: 768px) {
	.woocommerce div.product div.images,
	.woocommerce-page div.product div.images {
		width: 40% !important;
	}

	.woocommerce div.product div.summary,
	.woocommerce-page div.product div.summary {
		width: 52% !important;
	}
}


/**** Prodotto variabile ****/

.woocommerce div.product form.cart .variations {
    margin-bottom: 2em !important;
}

div.product form.cart .variations th {
    vertical-align: middle !important;
}

.woocommerce div.product form.cart .variations td {
    line-height: 3em !important;
}

.woocommerce div.product form.cart .variations select {
    min-width: 50% !important;
    height: 40px !important;
	border-radius: 0px !important;
}

.woocommerce-variation-price {
	padding-bottom: 20px !important;
}

.woocommerce-variation-price .price {
	color: #000 !important;
}


.wc-block-components-notice-banner.is-success {
    background-color: #FFF;
	border: 4px solid var(--PrimaryColor);
	border-radius: 0 !important;
}

.wc-block-components-notice-banner.is-success>svg {
    background-color: #000 !important;
}


/******************* 
Pagina carrello 
*******************/

.woocommerce {
	display: flex !important;
	flex-direction: column !important;
}

.check-out-title {
	font-family: 'DavidLibre', sans-serif;
	order: -1;
	font-weight: 700;
	font-size: 2.5rem;
	text-align: center;
	margin-bottom: 100px;
	display: flex;
    justify-content: center;
}

.check-out-title a {
	text-decoration: none;
}

.check-out-title__step {
	position: relative;
	opacity: 0.2;
	padding-left: 35px;
	margin-left: 15px;
	display: block;
    width: fit-content;
}

.check-out-title__step:before {
	position: absolute;
	content: ' ';
	background: url(../img/check-out-arrow.svg) no-repeat center center;
	background-size: cover;
	top: 16px;
	left: 5px;
	width: 15px;
	height: 25px;
}

.check-out-title__step--100 {
	opacity: 1;
}

.check-out-title .check-out-title__step:nth-child(1):before  {
	display: none;
}

.check-out-title .check-out-title__step:nth-child(1)  {
	padding-left: 0;
    margin-left: 0;
}

.woocommerce-cart-form table.shop_table {
	border: 0 !important;
}

tr.woocommerce-cart-form__cart-item td {
	padding-top: 18px !important;
	padding-bottom: 18px !important;
}

.woocommerce-cart-form .actions {
	border: 4px solid var(--PrimaryColor) !important;
	padding-top: 18px !important;
	padding-bottom: 18px !important;
}

.woocommerce-cart-form__contents .actions .button {
	border: 1px solid #000 !important;
	border-radius: 0 !important;
	font-weight: 400 !important;
	color: #000 !important;
	background: #FFF !important;
	opacity: 2 !important;
	padding: 9px 25px !important;
}

.woocommerce-cart-form__contents .actions .coupon .button {
	background: #000 !important;
	color: #FFF !important;
	padding: 9px 25px !important;
}

.woocommerce-cart-form__contents .actions .coupon input {
	height: 38px !important;
}

.woocommerce table.cart td.actions .input-text {
	width: 180px !important;
}

.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals {
    margin-top: 30px !important;
}

.woocommerce-cart .cart-collaterals .cart_totals table {
	background: var(--PrimaryColor) !important;
    border: 4px solid var(--PrimaryColor) !important;
	border-radius: 0 !important;
	padding: 20px !important;
}

.order-total th, .order-total td {
	border-top: 1px solid #000 !important;
}

.checkout-button {
	background: #000 !important;
	border-radius: 0 !important;
	color: #FFF !important;
    text-decoration: none !important;
}

.woocommerce .cart-collaterals, .woocommerce-page .cart-collaterals {
    margin-bottom: 120px !important;
}

.woocommerce-cart table.cart img {
	width: 60px !important;
}

@media (max-width: 992px) {
  	.check-out-title {
		font-size: 1.5rem;
	}
	
	.check-out-title__step {
		padding-left: 29px;
		margin-left: 12px;
	}
	
	.check-out-title__step:before {
		top: 7px;
		width: 9px;
		height: 16px;
	}
}


@media (max-width: 768px) {
	
	.check-out-title {
		flex-direction: column;
	}
	
	.check-out-title .check-out-title__step:nth-child(1):before  {
		display: block;
	}

	.check-out-title .check-out-title__step:nth-child(1)  {
		padding-left: 29px;
		margin-left: 12px;
	}
		
	table.woocommerce-cart-form__contents tr {
		border-top: 1px solid rgba(0,0,0,0.2) !important;
	}
	
	table.woocommerce-cart-form__contents tr:last-of-type {
		border-top: 0 !important;
	} 
	
	table.woocommerce-cart-form__contents td {
		border-top: 0 !important;
		border-bottom: 0 !important;
	}
	
	tr.woocommerce-cart-form__cart-item td {
		padding-top: 9px !important;
		padding-bottom: 9px !important;
	}
	
	.woocommerce table.shop_table_responsive tr:last-child td, .woocommerce-page table.shop_table_responsive tr:last-child td {
		background-color: rgba(0,0,0,0) !important;
	}
	
	.woocommerce-cart-form__contents .actions .coupon {
		display: flex;
		flex-direction: column;
	}
	
	.woocommerce table.cart td.actions .input-text {
		width: 100% !important;
	}
	
	.woocommerce-page table.cart td.actions .coupon .button {
		width: 100% !important;
		margin-top: 18px !important;
		margin-bottom: 10px !important;

	}
	
	.woocommerce-cart-form__contents .actions .button {
		height: 38px !important;
	}
}

/******************* 
Pagina ordine inviato 
*******************/

.woocommerce .woocommerce-notice {
    font-size: 20px !important;
    margin-bottom: 40px !important;
    border: 4px solid var(--PrimaryColor) !important;
    padding: 15px !important;
}

.woocommerce .woocommerce-order-details {
    margin-bottom: 8em !important;
}

.woocommerce ul.order_details li {
    margin-bottom: 10px !important;
    margin-top: 10px !important;
}

.woocommerce .woocommerce-bacs-bank-details {
    padding-top: 15px !important;
    border-top: 4px solid #f0f0f0;
}

.payment-method-title {
    margin-top: 40px !important;
    font-size: 1.6em !important;
}

/*Padding incluso nella misura del box*/
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}      