/* ------------------------- VARIABLES ------------------------- */
:root {

	--primary-font: "Titillium Web";
	--secondary-font: "Ubuntu";
	--backup-font: sans-serif;

	--line-height: calc(1em + 8px);

	--display1-size: 80px;
	--display1-weight: 900;
	--display1-letter-spacing: normal;

	--display2-size: 40px;
	--display2-weight: 900;
	--display2-letter-spacing: normal;

	--h1-size: 64px;
	--h1-weight: 700;
	--h1-letter-spacing: normal;

	--h2-size: 48px;
	--h2-weight: 900;
	--h2-letter-spacing: normal;

	--h3-size: 37px;
	--h3-weight: 600;
	--h3-letter-spacing: normal;

	--h4-size: 24px;
	--h4-weight: 700;
	--h4-letter-spacing: normal;

	--h5-size: 20px;
	--h5-weight: 700;
	--h5-letter-spacing: normal;

	--h6-size: 18px;
	--h6-weight: 700;
	--h6-letter-spacing: normal;

	--text-size: 16px;
	--text-weight: 400;
	--text-letter-spacing: normal;

	--text-small-size: 14px;
	--text-small-weight: 400;
	--text-small-letter-spacing: normal;

	--text-btn-size: 16px;
	--text-btn-weight: 500;
	--text-btn-letter-spacing: normal;

	--text-header-size: 16px;
	--text-header-weight: 700;
	--text-header-letter-spacing: normal;

	--text-footer-copyright-size: 13px;
	--text-footer-copyright-weight: 300;
	--text-footer-copyright-letter-spacing: normal;

	--colore-primario: #ff8219;
	--colore-primario-10: #ffe9d5;
	--colore-secondario: #232323;
	--colore-secondario-20: #ececec;
	--colore-secondario-30: #d3d3d3;
	--colore-secondario-80: #575858;
	--colore-alternativo: #ffc107;
	--grey: #484848;
	--white: #ffffff;
	--black: #000000;
  --light-grey: #eeeeee;
	--green-success: #b8dab8;
	--yellow-alert: #fed4a2;
	--whatsapp-green: #26c13f;
	--gradiente-default: linear-gradient(135deg, var(--colore-primario), var(--colore-alternativo));
	
	--searchbar-bg: #ececec;
	--searchbar-color: #757575;
	
	/* --- font size --- */
	--font-size-generic: 14px;
	--font-size-h1: 40px;
	--font-size-h2: 38px;
	--font-size-h3: 18px;
	--font-size-h4: 18px;
	--font-size-h5: 14px;
	--font-size-h6: 12px;
	
	/* --- other --- */
	--border-radius: 12px;
	--width-nav: 1155px;
	--topbar-h: 40px;
	--topbar2-h: 80px;
	--header-h: 80px;
	--col-d: 20px;
	
}


/* ------------------------- TEXT ------------------------- */

/* ----- text - line-height ----- */
html, body, footer, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, span, li, a, [class*="btn"], label, input, select, textarea {
	line-height: var(--line-height) !important;
}

/* ----- text - font-style ----- */
html, body, footer, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, span, li, a, [class*="btn"], label, input, select, textarea {
	font-style: normal;
}

/* ----- text - font-family ----- */
h1, .h1, h2, .h2, h3, .h3, .text-display1, .text-display2 {
	font-family: var(--primary-font), var(--backup-font) !important;
}
html, body, footer, h4, .h4, h5, .h5, h6, .h6, p, span, li, a, [class*="btn"], label, input, select, textarea {
	font-family: var(--secondary-font), var(--backup-font) !important;
}

/* ----- text - font-weight ----- */
.text-light { font-weight: 300; }
.text-regular { font-weight: 400; }
.text-semibold { font-weight: 600; }
.text-bold { font-weight: 700; }

/* ----- text - font-size ----- */
html {
	font-size: var(--text-size);
	font-weight: var(--text-weight);
	letter-spacing: normal;
}
.text-display1 {
	font-size: var(--display1-size) !important;
	font-weight: var(--display1-weight) !important;
	letter-spacing: var(--display1-letter-spacing);
}
.text-display2 {
	font-size: var(--display2-size);
	font-weight: var(--display2-weight);
	letter-spacing: var(--display2-letter-spacing);
}
h1, .h1 {
	font-size: var(--h1-size) !important;
	font-weight: var(--h1-weight) !important;
	letter-spacing: var(--h1-letter-spacing);
}
h2, .h2 {
	font-size: var(--h2-size);
	font-weight: var(--h2-weight);
	letter-spacing: var(--h2-letter-spacing);
}
h3, .h3 {
	font-size: var(--h3-size);
	font-weight: var(--h3-weight);
	letter-spacing: var(--h3-letter-spacing);
}
h4, .h4 {
	font-size: var(--h4-size) !important;
	font-weight: var(--h4-weight) !important;
	letter-spacing: var(--h4-letter-spacing);
}
h5, .h5 {
	font-size: var(--h5-size);
	font-weight: var(--h5-weight);
	letter-spacing: var(--h5-letter-spacing);
}
h6, .h6 {
	font-size: var(--h6-size);
	font-weight: var(--h6-weight);
	letter-spacing: var(--h6-letter-spacing);
}
p, span, li, a, #topbar p, #topbar a {
	font-size: var(--text-size);
	font-weight: var(--text-weight);
	letter-spacing: var(--text-letter-spacing);
}
[class*="btn"] {
	font-size: var(--text-btn-size);
	font-weight: var(--text-btn-weight);
	letter-spacing: var(--text-btn-letter-spacing);
}
input, input.form-control, select, select.form-control, .small, .small * {
	font-size: var(--text-small-size) !important;
	font-weight: var(--text-small-weight);
	letter-spacing: var(--text-small-letter-spacing);
}
#mainMenu nav > ul > li a,
#mainMenu nav > ul > li a > p,
#mainMenu nav > ul > li a > span {
	font-size: var(--text-header-size) !important;
	font-weight: var(--text-header-weight) !important;
	letter-spacing: var(--text-header-letter-spacing) !important;
	text-transform: uppercase;
}
footer [class*="copyright"] p, footer [class*="copyright"] p a,
footer [class*="copyright"] span, footer [class*="copyright"] span a {
	font-size: var(--text-footer-copyright-size) !important;
	font-weight: var(--text-footer-copyright-weight) !important;
	letter-spacing: var(--text-footer-copyright-letter-spacing);
}

/* ----- text - color ----- */
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	color: black;
}
html, body, footer, p, span, li, a, label, input, select, textarea {
	color: var(--colore-secondario);
}
#page-title .breadcrumb.text-white span,
#page-title .breadcrumb.text-white :before,
footer .copyright span,
footer .copyright span > a {
	color: white !important;
}
a {
	color: black;
}
a:hover,
a:active,
a:focus {
	color: var(--colore-primario) !important;
}
#mainMenu.menu-lines nav > ul > li > a:not(.btn-header):hover,
#mainMenu.menu-lines nav > ul > li > a:not(.btn-header):active,
#mainMenu.menu-lines nav > ul > li > a:not(.btn-header):focus {
	color: white !important; /*var(--colore-primario) !important;*/
}
.form-control:not(#searchHeader) {
	color: black !important;
}
.text-primario { color: var(--colore-primario) !important; }
.text-primario-10 { color: var(--colore-primario-10) !important; }
.text-secondario { color: var(--colore-secondario) !important; }

/* ----- text - other ----- */
footer .copyright a:hover {
	text-decoration: underline !important;
}
.lazy {
	transition: opacity 0.6s ease-in;
}
.mousehand {
	cursor: pointer;
}
:not(nav):not(.breadcrumb) > ol,
:not(nav):not(.breadcrumb) > ul {
	padding-left: 40px;
}
:not(nav):not(.breadcrumb) > ol:not(.flickity-page-dots) li:not(:last-child),
:not(nav):not(.breadcrumb) > ul:not(.flickity-page-dots) li:not(:last-child) {
	margin-bottom: 10px !important;
}


/* ------------------------- BACKGROUND ------------------------- */
.bg-norepeat { background-repeat: no-repeat; }
.bg-contain { background-size: contain; }
.bg-cover { background-size: cover; }
.bg-10 { background-size: 10%; }
.bg-20 { background-size: 20%; }
.bg-30 { background-size: 30%; }
.bg-35 { background-size: 35%; }
.bg-40 { background-size: 40%; }
.bg-50 { background-size: 50%; }
.bg-60 { background-size: 60%; }
.bg-70 { background-size: 70%; }
.bg-80 { background-size: 80%; }
.bg-90 { background-size: 90%; }
.bg-center { background-position: center; }
.bg-center-top { background-position: center top; }
.bg-center-bottom { background-position: center bottom; }
.bg-left-center { background-position: left center; }
.bg-left-top { background-position: left top; }
.bg-left-bottom { background-position: left bottom; }
.bg-right-center { background-position: right center; }
.bg-right-top { background-position: right top; }
.bg-right-bottom { background-position: right bottom; }
.bg-primary { background-color: var(--colore-primario) !important; }
.bg-primary-half-top { background: linear-gradient(to top, transparent 50%, var(--colore-primario) 50%); }
.bg-primary-half-right { background: linear-gradient(to right, transparent 50%, var(--colore-primario) 50%); }
.bg-primary-half-bottom { background: linear-gradient(to bottom, transparent 50%, var(--colore-primario) 50%); }
.bg-primary-half-left { background: linear-gradient(to left, transparent 50%, var(--colore-primario) 50%); }
.bg-secondario { background-color: var(--colore-secondario) !important; }
.bg-secondario-20 { background-color: var(--colore-secondario-20) !important; }
.bg-secondario-half-top { background: linear-gradient(to top, transparent 50%, var(--colore-secondario) 50%); }
/*.bg-secondario-half-right { background: linear-gradient(to right, transparent 50%, var(--colore-secondario) 50%); }*/
.bg-secondario-half-right { background: linear-gradient(to right, transparent 50%, var(--colore-primario-10) 50%); }
.bg-secondario-half-bottom { background: linear-gradient(to bottom, transparent 50%, var(--colore-secondario) 50%); }
.bg-secondario-half-left { background: linear-gradient(to left, transparent 50%, var(--colore-secondario) 50%); }
.bg-white { background-color: white !important; }
.bg-black { background-color: black !important; }

/* --- background - sez gradiente con bordi bianchi --- */
.sez-bg-gradiente {
	position: relative;
	padding: calc(100px + var(--col-d)) var(--col-d);
}
.sez-bg-gradiente:before {
	content: '';
	position: absolute;
	top: var(--col-d);
	left: var(--col-d);
	display: block;
	width: calc(100% - var(--col-d) * 2);
	height: calc(100% - var(--col-d) * 2);
	background: var(--gradiente-default);
	border-radius: var(--border-radius);
	/*animation: sfondoAnimato 3s linear 1s infinite running;*/
	z-index: 0;
}
.fullscreen.sez-bg-gradiente:before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 0;
}
.invert {
  filter: grayscale(1) invert(1) !important;
}
/*
@keyframes sfondoAnimato {
	from {
		background: linear-gradient(90deg, var(--colore-primario), var(--colore-alternativo));
	}
	to {
		background: linear-gradient(450deg, var(--colore-primario), var(--colore-alternativo));
	}
}
*/
/* --- end: background - sez gradiente con bordi bianchi --- */


/* ------------------------- DIVIDER ------------------------- */

/* ----- divider - general ----- */
[class*="divider-"] {
	position: relative;
}
[class*="divider-"]:before {
	content: '';
	position: absolute;
	display: block;
	background-color: var(--colore-primario);
}
.divider-primary-color:before {
	background-color: var(--colore-primario);
}
.divider-secondary-color:before {
	background-color: var(--colore-secondario);
}
.divider-white:before {
	background-color: white;
}

/* ----- divider - vertical ----- */
[class*="divider-vertical"]:before {
	width: 1px;
	height: 100%;
}
/* ----- divider - vertical - x = center ----- */
.divider-vertical-center:before { left: calc(50% - 0.5px); }

/* ----- divider - horizontal ----- */
[class*="divider-horizontal"]:before {
	width: 100%;
	height: 1px;
}
/* ----- divider - horizontal - width ----- */
[class*="divider-horizontal"][class*="divider-10"]:before { width: 10%; }
[class*="divider-horizontal"][class*="divider-20"]:before { width: 20%; }
[class*="divider-horizontal"][class*="divider-30"]:before { width: 30%; }
[class*="divider-horizontal"][class*="divider-40"]:before { width: 40%; }
[class*="divider-horizontal"][class*="divider-50"]:before { width: 50%; }
[class*="divider-horizontal"][class*="divider-60"]:before { width: 60%; }
[class*="divider-horizontal"][class*="divider-70"]:before { width: 70%; }
[class*="divider-horizontal"][class*="divider-80"]:before { width: 80%; }
[class*="divider-horizontal"][class*="divider-90"]:before { width: 90%; }
/* ----- divider - horizontal - fullwidth - width ----- */
[class*="divider-horizontal"][class*="divider-fullwidth-50"]:before { width: 50vw; }
[class*="divider-horizontal"][class*="divider-fullwidth-75"]:before { width: 75vw; }
/* ----- divider - horizontal - y = unset ----- */
.divider-horizontal:before { top: unset; }
/* ----- divider - horizontal - y = top ----- */
.divider-horizontal-top:before { top: -0.5px; }
/* ----- divider - horizontal - y = center ----- */
.divider-horizontal-center:before { top: calc(50% - 0.5px); }
/* ----- divider - horizontal - y = bottom ----- */
.divider-horizontal-bottom:before { top: calc(100% - 0.5px); }
/* ----- divider - horizontal - y = top/center/bottom, x = center ----- */
[class*="divider-horizontal"].divider-10-center:before { left: 45%; }
[class*="divider-horizontal"].divider-20-center:before { left: 40%; }
[class*="divider-horizontal"].divider-30-center:before { left: 35%; }
[class*="divider-horizontal"].divider-40-center:before { left: 30%; }
[class*="divider-horizontal"].divider-50-center:before { left: 25%; }
/* ----- divider - horizontal - fullwidth - y = unset, x = right ----- */
.divider-horizontal.divider-fullwidth-50-right:before,
.divider-horizontal.divider-fullwidth-75-right:before { right: calc(((100vw - 100%) / 2) * -1); }
/* ----- divider - horizontal - fullwidth - y = unset, x = center ----- */
.divider-horizontal.divider-fullwidth-50-center:before { left: calc(((100vw - 100%) / 2) * -1 + 25vw); }
.divider-horizontal.divider-fullwidth-75-center:before { left: calc(((100vw - 100%) / 2) * -1 + 12.5vw); }
/* ----- divider - horizontal - fullwidth - y = unset, x = left ----- */
.divider-horizontal.divider-fullwidth-50-left:before,
.divider-horizontal.divider-fullwidth-75-left:before { left: calc(((100vw - 100%) / 2) * -1); }
/* ----- divider - horizontal - fullwidth - y = top, x = right ----- */
.divider-horizontal-top.divider-fullwidth-50-right:before,
.divider-horizontal-top.divider-fullwidth-75-right:before { right: calc(((100vw - 100%) / 2) * -1); }
/* ----- divider - horizontal - fullwidth - y = top, x = center ----- */
.divider-horizontal-top.divider-fullwidth-50-center:before { left: calc(((100vw - 100%) / 2) * -1 + 25vw); }
.divider-horizontal-top.divider-fullwidth-75-center:before { left: calc(((100vw - 100%) / 2) * -1 + 12.5vw); }
/* ----- divider - horizontal - fullwidth - y = top, x = left ----- */
.divider-horizontal-top.divider-fullwidth-50-left:before,
.divider-horizontal-top.divider-fullwidth-75-left:before { left: calc(((100vw - 100%) / 2) * -1); }
/* ----- divider - horizontal - fullwidth - y = center, x = right ----- */
.divider-horizontal-center.divider-fullwidth-50-right:before,
.divider-horizontal-center.divider-fullwidth-75-right:before { right: calc(((100vw - 100%) / 2) * -1); }
/* ----- divider - horizontal - fullwidth - y = center, x = center ----- */
.divider-horizontal-center.divider-fullwidth-50-center:before { left: calc(((100vw - 100%) / 2) * -1 + 25vw); }
.divider-horizontal-center.divider-fullwidth-75-center:before { left: calc(((100vw - 100%) / 2) * -1 + 12.5vw); }
/* ----- divider - horizontal - fullwidth - y = center, x = left ----- */
.divider-horizontal-center.divider-fullwidth-50-left:before,
.divider-horizontal-center.divider-fullwidth-75-left:before { left: calc(((100vw - 100%) / 2) * -1); }
/* ----- divider - horizontal - fullwidth - y = bottom, x = right ----- */
.divider-horizontal-bottom.divider-fullwidth-50-right:before,
.divider-horizontal-bottom.divider-fullwidth-75-right:before { right: calc(((100vw - 100%) / 2) * -1); }
/* ----- divider - horizontal - fullwidth - y = bottom, x = center ----- */
.divider-horizontal-bottom.divider-fullwidth-50-center:before { left: calc(((100vw - 100%) / 2) * -1 + 25vw); }
.divider-horizontal-bottom.divider-fullwidth-75-center:before { left: calc(((100vw - 100%) / 2) * -1 + 12.5vw); }
/* ----- divider - horizontal - fullwidth - y = bottom, x = left ----- */
.divider-horizontal-bottom.divider-fullwidth-50-left:before,
.divider-horizontal-bottom.divider-fullwidth-75-left:before { left: calc(((100vw - 100%) / 2) * -1); }


/* ------------------------- BTN ------------------------- */
[class*="btn"] {
	--border-width: 1px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
	text-align: unset !important;
  text-decoration: none;
	border-radius: 50px !important;
  padding: 7px 22px;
	transition: all .3s ease-in-out;
	text-transform: uppercase;
}
[class*="btn"][disabled] {
	filter: grayscale(1);
}
[class*="btn"] span {
	transition: all 0.3s ease-in-out;
}
[class*="btn"]:focus {
	box-shadow: none !important;
}

/* --- btn - icona animato --- */
.btn-icona-animato {
	gap: 0;
	padding: 15px;
	border-radius: var(--border-radius) !important;
	overflow: hidden;
}
.btn-icona-animato > i {
	--d: 30px;
	flex: 0 0 var(--d);
	display: flex;
	justify-content: center;
	align-items: center;
	width: var(--d);
	height: var(--d);
}
.btn-icona-animato > span {
	flex: 1 1 auto;
	max-width: 0;
	height: var(--line-height) !important;
	opacity: 0;
	white-space: nowrap;
	overflow: hidden;
	transition: .3s max-width ease-in-out, .15s opacity ease-in-out !important;
}

/* --- btn - icona animato - hover/focus --- */
.btn-icona-animato:hover {
	gap: 5px;
}
.btn-icona-animato:hover > span {
	max-width: 350px;
	opacity: 1;
}


/* --- btn - primary --- */
.btn-primario {
	color: white !important;
	border: var(--border-width) solid var(--colore-primario) !important;
	background-color: var(--colore-primario) !important;
}
.btn-primario span { color: white !important; }

/* --- btn - primary - hover/focus --- */
.btn-primario:hover, .btn-primario:not(.btn-icona-animato):focus {
	color: var(--colore-primario) !important;
	background-color: transparent !important;
}
.btn-primario:hover span, .btn-primario:not(.btn-icona-animato):focus span { color: var(--colore-primario) !important; }

/* --- btn - secondary --- */
.btn-secondary {
	color: var(--colore-primario) !important;
	border: var(--border-width) solid var(--colore-secondario) !important;
	background-color: var(--colore-secondario) !important;
}

/* --- btn - secondary - hover/focus --- */
.btn-secondary:hover, .btn-secondary:not(.btn-icona-animato):focus {
	color: var(--colore-secondario) !important;
	background-color: transparent !important;
}

/* --- btn - grigio --- */
.btn-grigio {
	color: var(--colore-secondario) !important;
	border: var(--border-width) solid var(--colore-secondario-20) !important;
	background-color: var(--colore-secondario-20) !important;
}

/* --- btn - grigio - hover/focus --- */
.btn-grigio:hover, .btn-grigio:not(.btn-icona-animato):focus {
	color: var(--colore-secondario) !important;
	background-color: var(--colore-secondario-30) !important;
	border-color: var(--colore-secondario-30) !important;
}

/* --- btn - grigio scuro --- */
.btn-grigio-scuro {
	color: var(--colore-secondario) !important;
	border: var(--border-width) solid var(--colore-secondario-30) !important;
	background-color: var(--colore-secondario-30) !important;
}

/* --- btn - grigio scuro - hover/focus --- */
.btn-grigio-scuro:hover, .btn-grigio-scuro:not(.btn-icona-animato):focus {
	color: var(--colore-secondario) !important;
	background-color: transparent !important;
}

/* --- btn - white --- */
.btn-white {
	color: var(--colore-secondario) !important;
	border: var(--border-width) solid white !important;
	background-color: white !important;
	min-width: 170px;
}
.btn-white span { color: var(--colore-secondario) !important; }

/* --- btn - white - hover/focus --- */
.btn-white:hover, .btn-white:not(.btn-icona-animato):focus {
	color: white !important;
	background-color: transparent !important;
}
.btn-white:hover span, .btn-white:not(.btn-icona-animato):focus span { color: white !important; }

/* --- btn - black --- */
.btn-black {
	color: white !important;
	border: var(--border-width) solid black !important;
	background-color: black !important;
}

/* --- btn - black - hover/focus --- */
.btn-black:hover, .btn-black:not(.btn-icona-animato):focus {
	color: black !important;
	background-color: transparent !important;
}

/* --- btn - header not sticky --- */
#header:not(.header-sticky) nav > ul > li > a.btn-header {
	color: var(--colore-primario) !important;
	border: var(--border-width) solid white !important;
	background-color: white !important;
}

/* --- btn - header not sticky - hover/focus --- */
#header:not(.header-sticky) nav > ul > li > a.btn-header:hover,
#header:not(.header-sticky) nav > ul > li > a.btn-header:not(.btn-icona-animato):focus {
	color: white !important;
	background-color: transparent !important;
}

/* --- btn - header sticky --- */
#header.header-sticky a.btn-header,
#header nav > ul > li > ul.dropdown-menu > li a.btn-header {
	color: white !important;
	border: var(--border-width) solid var(--colore-primario) !important;
	background-color: var(--colore-primario) !important;
}

/* --- btn - header sticky - hover/focus --- */
#header.header-sticky a.btn-header:hover,
#header.header-sticky a.btn-header:not(.btn-icona-animato):focus,
#header nav > ul > li > ul.dropdown-menu > li a.btn-header:hover,
#header nav > ul > li > ul.dropdown-menu > li a.btn-header:not(.btn-icona-animato):focus {
	color: var(--colore-primario) !important;
	background-color: transparent !important;
}

/* --- btn - footer --- */
.btn-footer {
	color: white !important;
	border: var(--border-width) solid white !important;
	background-color: transparent !important;
}
.btn-footer i, .btn-footer span { color: white !important; }

/* --- btn - footer - hover/focus --- */
.btn-footer:hover, .btn-footer:not(.btn-icona-animato):focus {
	color: var(--colore-secondario) !important;
	background-color: white !important;
}
.btn-footer:hover i, .btn-footer:hover span,
.btn-footer:not(.btn-icona-animato):focus i, .btn-footer:not(.btn-icona-animato):focus span { color: var(--colore-secondario) !important; }


/* ------------------------- OBJECT ------------------------- */
.g-col-d { gap: var(--col-d) !important; }

.p-col-d { padding: var(--col-d) !important; }
.pt-col-d { padding-top: var(--col-d) !important; }
.pb-col-d { padding-bottom: var(--col-d) !important; }
.pr-col-d { padding-right: var(--col-d) !important; }
.pl-col-d { padding-left: var(--col-d) !important; }

section	{
	padding-top: var(--col-d);
	padding-bottom: var(--col-d);
}
.container, .container-fluid {
	padding-right: var(--col-d);
	padding-left: var(--col-d);
}
.row {
	margin-right: calc(-1 * var(--col-d));
	margin-left: calc(-1 * var(--col-d));
}
.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto,
.col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto,
.col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto,
.col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto,
.col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
	padding-right: var(--col-d);
	padding-left: var(--col-d);
}

.text-white-modal-stripe p {
	color: #ffffff !important;
}

/* ----- object - general ----- */
.border-round {
	border-radius: var(--border-radius) !important;
}
.list-style-none {
	list-style: none;
}
.img-prod-bg-color {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--light-grey);
	border-radius: var(--border-radius);
}
.img-prod-bg-color img {
	width: auto;
	max-height: 300px;
}

/* ----- object - recaptcha ----- */
.grecaptcha-badge { 
    visibility: hidden;
}

/* ----- object - scroll top ----- */
#scrollTop {
  bottom: 80px !important;
  right: 20px !important;
}
#scrollTop:after {
  background-color: var(--colore-secondario) !important;
}

/* ----- object - whatsapp contact ----- */
.include-wa-icon {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 99999;
}
.include-wa-icon a:before {
	content: '';
  position: absolute;
  top: -7.5px;
  left: -7.5px;
  display: block;
  width: 55px;
  height: 55px;
  z-index: -1;
  border-radius: 50%;
	background-color: var(--whatsapp-green);
	transform-origin: center;
	transform: scale(0);
	transition: transform 0.2s ease-in-out;
}
.include-wa-icon a:hover:before {
	transform: scale(1);
}
.include-wa-icon a > img {
	max-width: 40px;
	max-height: 40px;
	transform: scale(1);
	transition: transform 0.3s ease-in-out;
}
.include-wa-icon a:hover > img {
	transform: scale(0.8);
}

/* ----- object - news filter ----- */
.news-filter {
	position: relative;
	display: flex;
  align-items: center;
  justify-content: center;
}
.news-filter ul {
	position: relative;
	height: auto;
	list-style: none;
	padding: 0;
	margin: 0;
}
.news-filter li {
	position: relative;
	display: inline-block;
	border: 0;
	margin-bottom: 0;
}
.news-filter li:not(:last-child) {
	margin-right: 10px;
}
.news-filter li a {
	display: block;
	position: relative;
	font-size: 0.9rem !important;
	line-height: 1em !important;
	color: var(--colore-primario) !important;
	background-color: transparent;
	padding: 7px 15px;
	border-radius: var(--border-radius);
	border-width: 2px;
	border-style: solid;
	border-color: var(--colore-primario);
	transition: all .3s ease;
}
.news-filter li.active a,
.news-filter li:hover a {
	color: var(--colore-secondario) !important;
	background-color: var(--colore-primario);
}

/* ----- object - accordion ----- */
.accordion .ac-item {
  min-height: 32px;
  background-color: var(--light-grey);
  padding: 5px 10px;
  border: none;
  border-radius: 0;
  margin-bottom: 15px;
}
.accordion .ac-item:last-child {
  margin-bottom: 0;
}
.accordion .ac-item .ac-title {
  display: flex;
  align-items: center;
}
.accordion .ac-item .ac-title:before {
  content: '\f078' !important;
  font-family: 'Font Awesome 6 Pro';
  font-size: 12px;
  font-weight: 100;
  transition: all 0.3s ease-out;
}
.accordion .ac-item.ac-active .ac-title:before {
  transform: rotate(180deg);
}
.accordion .ac-item .ac-title i {
  line-height: 22px;
}


/* ------------------------- FORM ------------------------- */

/* ----- form-floating ----- */
.form-floating {
	position: relative;
}
.form-floating > textarea,
.form-floating > input {
	height: 44px;
	padding: 20px 20px 10px !important;
	border-radius: var(--border-radius) !important;
	font-size: 14px !important;
}
.form-floating > textarea::placeholder,
.form-floating > input::placeholder {
	color: transparent !important;
}
.form-floating > label {
	position: absolute;
	top: 15px;
	left: 20px;
	line-height: 12px;
	font-size: 12px;
	font-weight: normal;
	margin-bottom: 0px;
	z-index: 100;
	transition: 0.3s;
}
.form-floating > textarea:focus ~ label,
.form-floating > textarea:not(:placeholder-shown) ~ label,
.form-floating > input:focus ~ label,
.form-floating > input:not(:placeholder-shown) ~ label {
	font-size: 10px;
	top: 3px;
	transition: 0.3s;
}

/* ----- object - group input ----- */
#topbar2 .input-group .form-control:focus,
#topbar2 .input-group .form-control:focus-visible {
  outline: none !important;
  border-color: var(--colore-primario) !important;
	box-shadow: none !important;
}

/* ----- object - group input submit ----- */
.group-input-submit {
  display: flex;
}
.group-input-submit .input-group {
  border: 1px solid white;
  border-radius: var(--border-radius);
}
.bg-secondary .group-input-submit .input-group,
#popup .input-cta .form-control {
  border: 1px solid white;
}
.group-input-submit .input-group:focus-visible,
#popup .input-cta .form-control:focus,
#popup .input-cta .form-control:focus-visible {
  outline: none !important;
  border-color: var(--colore-primario) !important;
	box-shadow: none !important;
}
.group-input-submit .input-group {
	border-right: none !important;
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}
.group-input-submit [class*="btn"] {
	border-width: 1px !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
	margin-bottom: 0 !important;
}
.bg-secondary .group-input-submit [class*="btn"]:hover {
	background-color: white !important;
}

/* ----- object - checkbox privacy ----- */
.checkbox-form {
  display: flex;
  position: relative;
}
.checkbox-form > input {
	position: relative;
	z-index: 10;
	opacity: 0 !important;
	margin-right: 10px;
}
.checkbox-form .privacyContatti {
	display: block;
	position: absolute;
	z-index: 5;
	top: 2px;
	width: 16px;
	height: 16px;
	background-color: transparent;
	border: 1px solid black;
	border-radius: var(--border-radius);
}
.checkbox-form .privacyContatti:after {
	content: ' ';
	display: none;
	position: relative;
	top: 2px;
	left: 5px;
	width: 4px;
	height: 8px;
	border: solid black;
	border-width: 0 1.5px 1.5px 0;
	transform: rotate(45deg);
}
.checkbox-form > input:checked ~ .privacyContatti {
	background-color: transparent;
}
.checkbox-form > input:checked ~ .privacyContatti:after {
	display: block;
}
.checkbox-form label,
.checkbox-form label > a {
  font-size: 12px !important;
	line-height: var(--line-height);
	color: black;
}
.checkbox-form label > a:hover {
	color: var(--colore-primario) !important;
	text-decoration: underline !important;
}
.checkbox-form.checkbox-center {
  justify-content: center;
  align-items: center;
}
.checkbox-form.checkbox-center > input {
  position: relative;
  margin-right: 0;
  right: -14px;
}
.checkbox-form.checkbox-center .privacyContatti {
  position: relative;
  top: -1px;
  margin-right: 8px;
}

/* ----- object - box collection ----- */
.box-collection .box-collection-container {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 650px;
  overflow: hidden;
}
.box-collection .box-collection-container:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.05);
	z-index: 20;
}
.box-collection .box-collection-container > * {
	z-index: 30;
}
.box-collection .box-collection-container .collection-img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  transition: transform 1.5s ease-in-out;
	z-index: 10;
}
.box-collection .box-collection-container:hover .collection-img {
	transform: scale(1.15);
	transform-origin: center;
}
.box-collection .collection-divider {
	width: 50px;
	height: 3px;
	background-color: var(--colore-primario);
}

/* ----- object - carousel ----- */
.carousel {
	--carousel-arrow-d: 70px;
	--carousel-arrow-icon-d: 30px;
}
.titolo-carousel-famiglie {
	display: flex;
	align-items: center;
	height: 300px;
	background-color: var(--colore-primario);
	padding: var(--col-d);
	border-radius: var(--border-radius);
}
.carousel.carousel-famiglie-home .img-prod-bg-color {
  height: 300px;
}
.carousel.carousel-famiglie-home .img-prod-bg-color img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* ----- object - carousel - prev next button ----- */
.carousel .flickity-prev-next-button {
	top: 225px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: var(--carousel-arrow-d);
	height: var(--carousel-arrow-d);
  color: white;
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
  margin-top: calc(var(--carousel-arrow-d) / -2) !important;
	opacity: 1 !important;
	transition: all 0.5s ease-in-out;
}
.carousel.carousel-look .flickity-prev-next-button {
	top: 50%;
}
.carousel .flickity-prev-next-button:hover {
  background-color: rgba(0, 0, 0, 1);
}
.carousel .flickity-prev-next-button svg {
	width: var(--carousel-arrow-icon-d);
	height: var(--carousel-arrow-icon-d);
}
.carousel .flickity-prev-next-button.previous {
	left: 15px !important;
}
.carousel .flickity-prev-next-button.next {
	left: auto !important;
	right: 30px !important;
}

/* ----- object - include el testo - collezione ----- */
.carousel-single-arrow .carousel .flickity-prev-next-button {
	top: 200px;
}
.carousel-single-arrow .carousel .flickity-prev-next-button.previous {
  display: none !important;
}

/* ----- object - include el testo - collezione ----- */
.text-collezione {
  margin-bottom: 60px;
}
.text-collezione p {
  margin-bottom: 20px;
}
.text-collezione ul {
  margin-bottom: 20px;
	margin-left: 15px;
}

/* ----- object - recensioni ----- */
.carousel-item-commenti {
	padding: 20px;
	border: 1px solid var(--light-grey);
	border-radius: 25px;
	margin: 0;
	background-color: white;
	box-shadow: 0 0 10px -7.5px var(--black);
}
.carousel-item-commenti .prodotto-commenti {
	font-size: 12px !important;
	display: inline-block;
	color: var(--white) !important;
	background-color: var(--colore-primario);
	padding: 3px 12px;
	border-radius: 50px;
	margin: 5px 0 10px 0;
}
.carousel-item-commenti .title-commenti {
	min-height: var(--line-height);
}
.carousel-item-commenti .text-commenti:not(.firma) {
	min-height: calc(var(--line-height) * 8);
}

/* ----- object - recensioni - star ----- */
[class*="star-group-commenti"] {
	display: flex;
}
[class*="star-group-commenti"] .star-commenti {
	--colore-stelle-default: #c9c9c9;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 20px;
	height: 20px;
	color: var(--colore-stelle-default) !important;
	margin: 0 2.5px 10px 2.5px;
}
[class*="star-group-commenti"] .star-commenti:first-child {
	margin-left: 0 !important;
}
[class*="star-group-commenti"] .star-commenti:last-child {
	margin-right: 0 !important;
}
[class*="star-group-commenti"].star-group-commenti-xl .star-commenti {
	width: 40px;
	height: 40px;
}
[class*="star-group-commenti"].star-group-commenti-xl .star-commenti i {
	font-size: 2em;
}

/* --- recensione - stelle: 0.n --- */
[class*="star-group-commenti-0"]:not(.star-group-commenti-0-0) .star-commenti:first-child i {
	-webkit-background-clip: text;
	color: transparent !important;
}
.star-group-commenti-0-1 .star-commenti:first-child i { background: linear-gradient(to right, var(--colore-alternativo) 10%, var(--colore-stelle-default) 10%); }
.star-group-commenti-0-2 .star-commenti:first-child i { background: linear-gradient(to right, var(--colore-alternativo) 20%, var(--colore-stelle-default) 20%); }
.star-group-commenti-0-3 .star-commenti:first-child i { background: linear-gradient(to right, var(--colore-alternativo) 30%, var(--colore-stelle-default) 30%); }
.star-group-commenti-0-4 .star-commenti:first-child i { background: linear-gradient(to right, var(--colore-alternativo) 40%, var(--colore-stelle-default) 40%); }
.star-group-commenti-0-5 .star-commenti:first-child i { background: linear-gradient(to right, var(--colore-alternativo) 50%, var(--colore-stelle-default) 50%); }
.star-group-commenti-0-6 .star-commenti:first-child i { background: linear-gradient(to right, var(--colore-alternativo) 60%, var(--colore-stelle-default) 60%); }
.star-group-commenti-0-7 .star-commenti:first-child i { background: linear-gradient(to right, var(--colore-alternativo) 70%, var(--colore-stelle-default) 70%); }
.star-group-commenti-0-8 .star-commenti:first-child i { background: linear-gradient(to right, var(--colore-alternativo) 80%, var(--colore-stelle-default) 80%); }
.star-group-commenti-0-9 .star-commenti:first-child i { background: linear-gradient(to right, var(--colore-alternativo) 90%, var(--colore-stelle-default) 90%); }

/* --- recensione - stelle: 1.n --- */
[class*="star-group-commenti-1"] .star-commenti:first-child i { color: var(--colore-alternativo) !important; }
[class*="star-group-commenti-1"]:not(.star-group-commenti-1-0) .star-commenti:nth-child(2) i {
	-webkit-background-clip: text;
	color: transparent !important;
}
.star-group-commenti-1-1 .star-commenti:nth-child(2) i { background: linear-gradient(to right, var(--colore-alternativo) 10%, var(--colore-stelle-default) 10%); }
.star-group-commenti-1-2 .star-commenti:nth-child(2) i { background: linear-gradient(to right, var(--colore-alternativo) 20%, var(--colore-stelle-default) 20%); }
.star-group-commenti-1-3 .star-commenti:nth-child(2) i { background: linear-gradient(to right, var(--colore-alternativo) 30%, var(--colore-stelle-default) 30%); }
.star-group-commenti-1-4 .star-commenti:nth-child(2) i { background: linear-gradient(to right, var(--colore-alternativo) 40%, var(--colore-stelle-default) 40%); }
.star-group-commenti-1-5 .star-commenti:nth-child(2) i { background: linear-gradient(to right, var(--colore-alternativo) 50%, var(--colore-stelle-default) 50%); }
.star-group-commenti-1-6 .star-commenti:nth-child(2) i { background: linear-gradient(to right, var(--colore-alternativo) 60%, var(--colore-stelle-default) 60%); }
.star-group-commenti-1-7 .star-commenti:nth-child(2) i { background: linear-gradient(to right, var(--colore-alternativo) 70%, var(--colore-stelle-default) 70%); }
.star-group-commenti-1-8 .star-commenti:nth-child(2) i { background: linear-gradient(to right, var(--colore-alternativo) 80%, var(--colore-stelle-default) 80%); }
.star-group-commenti-1-9 .star-commenti:nth-child(2) i { background: linear-gradient(to right, var(--colore-alternativo) 90%, var(--colore-stelle-default) 90%); }

/* --- recensione - stelle: 2.n --- */
[class*="star-group-commenti-2"] .star-commenti:nth-child(-n+2) i { color: var(--colore-alternativo) !important; }
[class*="star-group-commenti-2"]:not(.star-group-commenti-2-0) .star-commenti:nth-child(3) i {
	-webkit-background-clip: text;
	color: transparent !important;
}
.star-group-commenti-2-1 .star-commenti:nth-child(3) i { background: linear-gradient(to right, var(--colore-alternativo) 10%, var(--colore-stelle-default) 10%); }
.star-group-commenti-2-2 .star-commenti:nth-child(3) i { background: linear-gradient(to right, var(--colore-alternativo) 20%, var(--colore-stelle-default) 20%); }
.star-group-commenti-2-3 .star-commenti:nth-child(3) i { background: linear-gradient(to right, var(--colore-alternativo) 30%, var(--colore-stelle-default) 30%); }
.star-group-commenti-2-4 .star-commenti:nth-child(3) i { background: linear-gradient(to right, var(--colore-alternativo) 40%, var(--colore-stelle-default) 40%); }
.star-group-commenti-2-5 .star-commenti:nth-child(3) i { background: linear-gradient(to right, var(--colore-alternativo) 50%, var(--colore-stelle-default) 50%); }
.star-group-commenti-2-6 .star-commenti:nth-child(3) i { background: linear-gradient(to right, var(--colore-alternativo) 60%, var(--colore-stelle-default) 60%); }
.star-group-commenti-2-7 .star-commenti:nth-child(3) i { background: linear-gradient(to right, var(--colore-alternativo) 70%, var(--colore-stelle-default) 70%); }
.star-group-commenti-2-8 .star-commenti:nth-child(3) i { background: linear-gradient(to right, var(--colore-alternativo) 80%, var(--colore-stelle-default) 80%); }
.star-group-commenti-2-9 .star-commenti:nth-child(3) i { background: linear-gradient(to right, var(--colore-alternativo) 90%, var(--colore-stelle-default) 90%); }

/* --- recensione - stelle: 3.n --- */
[class*="star-group-commenti-3"] .star-commenti:nth-child(-n+3) i { color: var(--colore-alternativo) !important; }
[class*="star-group-commenti-3"]:not(.star-group-commenti-3-0) .star-commenti:nth-child(4) i {
	-webkit-background-clip: text;
	color: transparent !important;
}
.star-group-commenti-3-1 .star-commenti:nth-child(4) i { background: linear-gradient(to right, var(--colore-alternativo) 10%, var(--colore-stelle-default) 10%); }
.star-group-commenti-3-2 .star-commenti:nth-child(4) i { background: linear-gradient(to right, var(--colore-alternativo) 20%, var(--colore-stelle-default) 20%); }
.star-group-commenti-3-3 .star-commenti:nth-child(4) i { background: linear-gradient(to right, var(--colore-alternativo) 30%, var(--colore-stelle-default) 30%); }
.star-group-commenti-3-4 .star-commenti:nth-child(4) i { background: linear-gradient(to right, var(--colore-alternativo) 40%, var(--colore-stelle-default) 40%); }
.star-group-commenti-3-5 .star-commenti:nth-child(4) i { background: linear-gradient(to right, var(--colore-alternativo) 50%, var(--colore-stelle-default) 50%); }
.star-group-commenti-3-6 .star-commenti:nth-child(4) i { background: linear-gradient(to right, var(--colore-alternativo) 60%, var(--colore-stelle-default) 60%); }
.star-group-commenti-3-7 .star-commenti:nth-child(4) i { background: linear-gradient(to right, var(--colore-alternativo) 70%, var(--colore-stelle-default) 70%); }
.star-group-commenti-3-8 .star-commenti:nth-child(4) i { background: linear-gradient(to right, var(--colore-alternativo) 80%, var(--colore-stelle-default) 80%); }
.star-group-commenti-3-9 .star-commenti:nth-child(4) i { background: linear-gradient(to right, var(--colore-alternativo) 90%, var(--colore-stelle-default) 90%); }

/* --- recensione - stelle: 4.n --- */
[class*="star-group-commenti-4"] .star-commenti:nth-child(-n+4) i { color: var(--colore-alternativo) !important; }
[class*="star-group-commenti-4"]:not(.star-group-commenti-4-0) .star-commenti:nth-child(5) i {
	-webkit-background-clip: text;
	color: transparent !important;
}
.star-group-commenti-4-1 .star-commenti:nth-child(5) i { background: linear-gradient(to right, var(--colore-alternativo) 10%, var(--colore-stelle-default) 10%); }
.star-group-commenti-4-2 .star-commenti:nth-child(5) i { background: linear-gradient(to right, var(--colore-alternativo) 20%, var(--colore-stelle-default) 20%); }
.star-group-commenti-4-3 .star-commenti:nth-child(5) i { background: linear-gradient(to right, var(--colore-alternativo) 30%, var(--colore-stelle-default) 30%); }
.star-group-commenti-4-4 .star-commenti:nth-child(5) i { background: linear-gradient(to right, var(--colore-alternativo) 40%, var(--colore-stelle-default) 40%); }
.star-group-commenti-4-5 .star-commenti:nth-child(5) i { background: linear-gradient(to right, var(--colore-alternativo) 50%, var(--colore-stelle-default) 50%); }
.star-group-commenti-4-6 .star-commenti:nth-child(5) i { background: linear-gradient(to right, var(--colore-alternativo) 60%, var(--colore-stelle-default) 60%); }
.star-group-commenti-4-7 .star-commenti:nth-child(5) i { background: linear-gradient(to right, var(--colore-alternativo) 70%, var(--colore-stelle-default) 70%); }
.star-group-commenti-4-8 .star-commenti:nth-child(5) i { background: linear-gradient(to right, var(--colore-alternativo) 80%, var(--colore-stelle-default) 80%); }
.star-group-commenti-4-9 .star-commenti:nth-child(5) i { background: linear-gradient(to right, var(--colore-alternativo) 90%, var(--colore-stelle-default) 90%); }

/* --- recensione - stelle: 5 --- */
.star-group-commenti-5-0 .star-commenti { color: var(--colore-alternativo) !important; }


/* ------------------------- INCLUDE ------------------------- */


/* ------------------------- TOPBAR ------------------------- */
#topbar {
	display: flex !important;
	align-items: center;
	height: var(--topbar-h);
	background-color: var(--colore-secondario) !important;
	border-bottom: none;
}
#topbar a {
	color: white !important;
}
#topbar a:hover {
	text-decoration: underline;
}

/* ------------------------- HEADER ------------------------- */
.overlay-menu {
	background: linear-gradient(to top, rgba(0,0,0,0) 0, rgba(0,0,0,.3) 35%, rgba(0,0,0,.65) 60%, #000 100%);
	position: absolute;
	top: 0;
	height: 190px;
	width: 100%;
	z-index: 3;
}
#topbar2 {
	position: relative;
	display: flex;
	align-items: center;
	height: var(--topbar2-h);
	z-index: 210;
}
#header {
	height: var(--header-h);
	line-height: var(--header-h);
  z-index: 200 !important;
}
#topbar2 #searchHeader {
	background-color: transparent;
	color: white;
	border-radius: var(--border-radius);
}
#topbar2 #searchHeader::placeholder {
  color: white;
  opacity: 1; /* Firefox */
}
#topbar2 .input-group .input-group-btn {
	padding: 0;
	position: absolute;
  right: 0;
}
#topbar2 .btn-search-header {
	background-color: transparent;
	border: 0;
	color: white;
	width: 50px;
  height: 38px;
}
#formSearchHeaderMobile {
	width: 100%;
}
#formSearchHeaderMobile .input-group #searchHeaderMobile {
  background-color: var(--searchbar-bg) !important;
	padding-left: 13px;
  border: none;
}
#formSearchHeaderMobile .input-group #searchHeaderMobile::placeholder {
  color: var(--searchbar-color) !important;
}
#formSearchHeaderMobile .input-group #searchHeaderMobile:focus {
  box-shadow: none !important;
}
#formSearchHeaderMobile .input-group .input-group-btn {
  display: flex;
  align-items: center;
  background-color: var(--searchbar-bg) !important;
  border: none;
  border-radius: 0 5px 5px 0 !important;
  margin: 0;
}
#formSearchHeaderMobile .input-group .input-group-btn .btn-search-header {
	color: var(--searchbar-color) !important;
  background-color: transparent!important;
  padding: 0 !important;
  border: none !important;
  margin-bottom: 0;
}
#formSearchHeaderMobile .input-group .input-group-btn:hover .btn-search-header {
  color: var(--colore-primario) !important;
}
#topbar2 .p-dropdown {
  display: inline-block;
	float: none;
}
.icon-account i,
.icon-preferiti i,
.icon-carrello i {
	font-size: 20px;
	color: white;
}
.badge-cart-header {
  color: var(--colore-primario) !important;
  background-color: white !important;
  border-radius: 50%;
  position: absolute;
  top: -9px;
  left: 16px;
  font-size: 12px !important;
  line-height: 10px !important;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  padding: 0;
}
.sticky-active .badge-cart-header,
.header-dark .badge-cart-header {
  color: white !important;
  background-color: var(--colore-primario) !important;
}
.dark:not(.submenu-light) #mainMenu.menu-lines nav > ul > li:hover > a {
	color: white;
}
.dark:not(.submenu-light) #mainMenu.menu-lines nav > ul > li:hover > a:after {
	background-color: white;/*var(--colore-primario);*/
}
#header .header-inner {
  position: relative;
}
#header .header-icon-mobile {
  display: none;
}
#logo #logo,
.header-inner #logoSticky.d-none #logo,
.header-inner #logoMobile.d-none #logo {
  max-width: 200px !important;
}
.logo-furney-svg {
  height: 80px;
  padding: 10px 0;
}
#mainMenu [class*="btn-"] {
  padding: 0px 10px !important;
}
#mainMenu .icon-account,
#mainMenu .icon-preferiti,
#mainMenu .menu-cart {
	display: none;
}
#mainMenu [class*="btn-"]:after {
	content: none !important;
}
#mainMenu nav > ul {
	display: flex;
	align-items: center;
	margin-right: 20px !important;
}
#header:not(.sticky-active):not(.dark)  a:not(.btn-header):active, > ul > li > a:not(.btn-header):hover,
#header:not(.sticky-active):not(.dark) #mainMenu.menu-lines nav > ul > li > a:not(.btn-header):focus,
#header:not(.sticky-active):not(.dark) #mainMenu.menu-lines nav > ul > li > a:not(.btn-header).active {
	color: white !important;
}
#mainMenu.menu-lines nav > ul > li.active > a:after {
	width: 100% !important;
	left: 0 !important;
	background-color: white;
}

/* ----- header - sticky ----- */
.sticky-active .header-inner {
  background-color: white !important;
}
.sticky-active .header-inner #logoSticky.d-none {
  position: absolute;
  display: block !important;
}
.sticky-active .header-inner #logoSticky.d-none svg {
  padding: 10px 0;
}
.sticky-active .header-inner #mainMenu nav > ul > li,
.sticky-active .header-inner #mainMenu .icon-account,
.sticky-active .header-inner #mainMenu .icon-preferiti,
.sticky-active .header-inner #mainMenu .icon-carrello {
  line-height: 80px !important;
}
.sticky-active .header-inner #mainMenu nav > ul > li > a:not([class*="btn-"]) {
  color: black !important;
}
.sticky-active .header-inner #mainMenu nav > ul > li.border-r-1-white,
.sticky-active .header-inner #mainMenu nav > ul > li.border-l-1-white {
  border-color: black !important;
	margin: 24px 0px;
  line-height: 32px !important;
}
.sticky-active .header-inner .searchHeaderMobile {
	line-height: 32px !important;
	padding-left: 30px;
	border-left: 1px solid black !important;
	margin: 24px 0 24px 30px;
}
.sticky-active .header-inner .searchHeaderMobile i {
	font-size: 20px !important;
}
.sticky-active #mainMenu .icon-account,
.sticky-active #mainMenu .icon-preferiti,
.sticky-active #mainMenu .menu-cart,
.sticky-active #mainMenu .searchHeaderMobile {
	display: block !important;
}
.sticky-active .icon-account i,
.sticky-active .icon-preferiti i,
.sticky-active .icon-carrello i {
	color: black !important;
	position: relative;
}
.sticky-active .p-dropdown.p-dropdown-invert .p-dropdown-content {
  left: auto !important;
  right: 0 !important;
}
.sticky-active #mainMenu nav {
  display: flex;
}
.sticky-active #mainMenu.menu-lines nav > ul > li.btn-header > .btn-primario {
  border-color: var(--colore-primario) !important;
}

/* ----- header - dark ----- */
.header-dark #topbar2 #searchHeader,
.header-dark .border-r-1-white,
.header-dark .border-l-1-white {
  border-color: black !important;
}
.header-dark #topbar .border-r-1-white {
  border-color: white !important;
}
.header-dark #topbar2 #searchHeader,
.header-dark #topbar2 #searchHeader::placeholder,
.header-dark #topbar2 .btn-search-header,
.header-dark .icon-account i,
.header-dark .icon-preferiti i,
.header-dark .icon-carrello i,
.header-dark .dark #mainMenu nav > ul > li > a,
.header-dark #mainMenu.dark nav > ul > li > a,
.header-dark #mainMenu.menu-lines nav > ul > li > a:hover {
  color: black !important;
}
.header-dark .btn-header > .btn-primario {
  border-color: var(--colore-primario) !important;
}
.header-dark #mainMenu.menu-lines nav > ul > li.btn-header > .btn-primario {
  color: white !important;
  border-color: var(--colore-primario) !important;
}
.header-dark #mainMenu.menu-lines nav > ul > li.btn-header > .btn-primario:hover {
  color: var(--colore-primario) !important;
}

/* ----- header - submenu ----- */
#mainMenu nav > ul > li > a:after {
  bottom: 4px !important;
}
#mainMenu nav > ul > li ul.dropdown-menu {
  background: linear-gradient(to bottom, transparent 30px, white 30px);
  background-color: transparent !important;
  border: none;
  border-radius: 0;
	border-bottom-left-radius: 25px;
  padding: 30px 0 0 0;
	width: var(--width-nav) !important;
  right: -15px !important;
}
#mainMenu nav > ul > li:not(.mega-menu-item) ul.dropdown-menu {
	right: unset !important;
	width: max-content !important;
	border-bottom-right-radius: 25px;
}
.sticky-active #mainMenu nav > ul > li ul.dropdown-menu {
  background: linear-gradient(to bottom, transparent 0, white 0);
  padding-top: 0;
}
.sticky-active #mainMenu nav > ul > li.mega-menu-item > .dropdown-menu {
  width: 1300px;
}
#mainMenu nav > ul > li.mega-menu-item ul.dropdown-menu > li {
  background: linear-gradient(to right, transparent 30%, var(--light-grey) 30%);
}
#mainMenu nav > ul > li ul.dropdown-menu .row-tipo .link-menu-cat.active {
	background-color: var(--light-grey); /*var(--colore-primario-10);*/
}
#mainMenu nav > ul > li ul.dropdown-menu .row-tipo .link-menu-cat:hover {
  color: black !important;
}
#mainMenu nav > ul > li ul.dropdown-menu .row-tipo .link-menu-cat,
#mainMenu nav > ul > li ul.dropdown-menu .row-tipo .link-menu-prod {
  display: block;
  padding: 10px 0;
}
.col-text-prodCat {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
#mainMenu nav > ul > li ul.dropdown-menu .row-tipo .link-menu-prod.active {
	color: var(--colore-primario);
}
#mainMenu nav > ul > li ul.dropdown-menu .img-prod-menu {
	max-width: 350px;
}
.row-prodCat {
	height: 100%;
}
.row-prodCat .group-link-subheader {
	margin-top: 15px;
}
#mainMenu nav > ul > li .group-link-subheader > a {
	font-size: 13px !important;
	font-weight: 400 !important;
}

/* ----- header - menu user ----- */
.p-dropdown-user ul {
	padding: 15px 20px !important;
	border-radius: var(--border-radius);
}
.p-dropdown-user ul > li:not(:last-child) {
	margin-bottom: 10px;
}
.p-dropdown-user ul > li.dropdown-user-intro {
	padding-bottom: 10px !important;
	padding-left: 10px !important;
	border-bottom: 1px solid var(--light-grey);
}
.p-dropdown-user ul > li > a {
  display: grid !important;
  grid-template-columns: 20px auto;
  grid-column-gap: 10px;
  align-items: center;
}
.p-dropdown-user ul > li > a > i {
	text-align: center;
	margin-right: 0 !important;
}

/* ----- header - cart ----- */
.menu-cart {
	display: inline;
}
.menu-cart .icon-carrello {
	position: relative;
}
.menu-cart-container {
  position: absolute;
  z-index: 1000;
	transition: all 0.3s ease-in-out;
}
.menu-cart-container.hide-menu {
	opacity: 0;
	visibility: hidden;
}
.menu-cart-container.show-menu {
	opacity: 1;
	visibility: visible;
}
.menu-cart-container .menu-cart-close {
  content: '';
  position: fixed;
  top: 0;
  right: 0;
	display: block;
  width: 100vw;
  height: 100vh;
  background-color: black;
	opacity: 0.5;
  z-index: 0;
}
.menu-cart-container .menu-cart-content {
  position: fixed;
  top: 0;
  right: 0;
	display: block;
  width: 30vw;
  height: 100vh;
	text-align: left;
  background-color: var(--colore-primario-10);
	padding: 0 15px 20px 15px;
  overflow-y: scroll;
  z-index: 100;
	transition: all 0.3s ease-in-out;
}
.menu-cart-container.hide-menu .menu-cart-content {
  transform: translateX(30vw);
	opacity: 0;
}
.menu-cart-container.show-menu .menu-cart-content {
  transform: translateX(0);
	opacity: 1;
}
.menu-cart-container .menu-cart-content .menu-cart-header {
  position: sticky;
  top: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
  background-color: var(--colore-primario-10);
	padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--colore-primario);
  margin-bottom: 30px;
	z-index: 150;
}
.menu-cart-container .menu-cart-content .menu-cart-header a i {
  transform: rotate(0deg);
  transition: all 0.25s ease-in-out;
}
.menu-cart-container .menu-cart-content .menu-cart-header a:hover i {
  transform: rotate(90deg);
}
.menu-cart-container .menu-cart-content .menu-cart-body {
	display: flex;
  flex-direction: column-reverse;
}
.menu-cart-container .menu-cart-content .menu-cart-body .menu-cart-spedizione {
  position: sticky;
  top: calc(var(--font-size-h4) + 49px);
  background-color: var(--colore-primario-10);
	padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--colore-primario);
  margin-top: -30px;
  margin-bottom: 30px;
	z-index: 150;
}
.menu-cart-container .menu-cart-content .menu-cart-body .menu-cart-total {
	display: flex;
	justify-content: space-between;
	align-items: center;
  padding-top: 20px;
  border-top: 1px solid var(--colore-primario);
  margin-top: -20px;
  margin-bottom: 20px;
}
.menu-cart-container .menu-cart-content h4,
.menu-cart-container .menu-cart-content h5,
.menu-cart-container .menu-cart-content p,
.menu-cart-container .menu-cart-content input {
	color: black !important;
}
#brand .grid-menu-brand {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 20px;
}
#brand .grid-menu-brand img {
	border-radius: var(--border-radius);
}


/* ------------------------- SUBHEADER ------------------------- */
#subheader {
	top: calc(-1 * (var(--topbar2-h) + var(--header-h))) !important;
	background: var(--gradiente-default);
	padding-top: calc(var(--topbar2-h) + var(--header-h));
	padding-bottom: 60px;
	margin-bottom: calc(-1 * (var(--topbar2-h) + var(--header-h))) !important;
}

/* ----- subheader - breadcrumb ----- */
#subheader .breadcrumb {
  position: absolute;
  bottom: var(--col-d);
  left: var(--col-d);
	padding: 0;
	margin: 0;
}
#subheader .breadcrumb ul .breadcrumb-item + li:before,
#subheader .breadcrumb ul li + li:before {
  content: '\2f';
  font-family: 'Font Awesome 7 Pro';
}
#subheader .breadcrumb ul > li,
#subheader .breadcrumb ul > li a,
#subheader .breadcrumb ul > li a span {
	color: white;
}
#subheader .breadcrumb ul > li a:hover span {
	text-decoration: underline;
}


/* ------------------------- SUBMENU ------------------------- */
#pageSubmenuAreaUtente ul {
	list-style: none;
	display: flex;
	justify-content: center;
	align-items: center;
}
#pageSubmenuAreaUtente ul li {
	position: relative;
	padding: 0 15px;
	margin-bottom: 0 !important;
}
#pageSubmenuAreaUtente ul li a {
	font-size: var(--text-btn-size) !important;
	display: block;
	color: var(--colore-primario) !important;
	border: 1px solid var(--colore-primario);
	border-radius: 50px;
	padding: 7px 13px;
	transition: .3s all ease-in-out;
}
#pageSubmenuAreaUtente ul li a:hover,
#pageSubmenuAreaUtente ul li.active a {
	color: white !important;
	background-color: var(--colore-primario) !important;
}


/* ------------------------- FOOTER ------------------------- */
#footer .social-footer {
  display: flex;
  align-items: center;
}
#footer .social-footer a {
	color: white !important;
}
#footer .social-footer a:hover {
	opacity: 0.75;
}
#footer .sez-pagamento-footer-container {
  display: grid;
  grid-template-columns: repeat(7, auto);
  grid-gap: 20px;
  justify-content: space-between;
  justify-items: center;
  align-items: center;
}
#footer .sez-pagamento-footer-container  .sez-pagamento-footer-gruppo-bonifico span {
	font-size: 0.8rem !important;
	line-height: 1rem !important;
  width: 70px;
}
#footer .col-footer-certificazioni {
	display: flex;
	justify-content: space-between;
	background-color: var(--colore-secondario-80);
	padding: 50px var(--col-d);
	border-radius: var(--border-radius);
}
#footer .col-footer-certificazioni .certificazioni-link {
	display: flex;
	flex-direction: column;
}
#footer .col-footer-certificazioni .certificazioni-link a {
	color: white;
}
#footer .col-footer-certificazioni .certificazioni-link a:hover {
	color: var(--colore-alternativo);
}
#footer .col-footer-certificazioni .certificazioni-loghi {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-column-gap: 50px;
}
#footer .col-footer-certificazioni .certificazioni-loghi img {
	filter: grayscale(1);
}


/* ------------------------- SLIDER - INSPIRO ------------------------- */
#topbar~#topbar2~#header[data-transparent=true]+#slider {
	/*
	top: calc(-1 * (var(--topbar-h) + var(--topbar2-h) + var(--header-h)));
	margin-bottom: calc(-1 * (var(--topbar-h) + var(--topbar2-h) + var(--header-h)));
	*/
	top: calc(-1 * (var(--topbar2-h) + var(--header-h)));
	margin-bottom: calc(-1 * (var(--topbar2-h) + var(--header-h)));
}
#slider .slide .container-fluid {
	position: relative;
	padding-top: calc(var(--topbar-h) + var(--topbar2-h) + var(--header-h));
	padding-bottom: 80px;
}
#slider .slide .container-fluid:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.2);
	z-index: 0;
}
#slider .slide .container-fluid > * {
	position: relative;
	z-index: 10;
}
#slider.inspiro-slider .flickity-prev-next-button {
  line-height: 20px;
  width: 20px;
  height: 20px;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 15px;
	border-radius: 50%;
  opacity: 1;
}
#slider.inspiro-slider .flickity-prev-next-button:hover {
  background-color: black;
}
#slider.inspiro-slider .flickity-prev-next-button.previous {
	left: 10px;
}
#slider.inspiro-slider .flickity-prev-next-button.next {
	right: 10px;
}

/* ------------------------- MODAL ------------------------- */
#modalOk h2,
#modalErr h2 {
	font-size: 34px !important;
}
#popup {
	max-width: 1140px;
}
#popup .modal-close {
	position: absolute;
	top: 20px;
	right: 20px;
}
#popup .modal-close i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 20px;
	height: 20px;
	transition: 0.5s all ease-in-out;
}
#popup .modal-close:hover i {
	transform: rotate(90deg);
}
#popup button.mfp-close {
	display: none !important;
}


/* ------------------------- HOME ------------------------- */
.img-best-sell img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	object-position: center;
}
.grid-best-sell-home {
	display: flex;
	flex-wrap: wrap;
	gap: var(--col-d);
}
.grid-best-sell-home > div {
	flex: 1 1 calc(50% - var(--col-d) / 2);
}
.grid-best-sell-home > div > .product-box {
	margin-bottom: 0 !important;
}
.grid-best-sell-home > div > .product-box .product-title .badge-prodotti {
	opacity: 0;
	visibility: hidden;
}
.grid-best-sell-home > div > .product-box .product-desc {
	padding: var(--col-d);
	padding-bottom: 0;
}
.grid-best-sell-home > div > .product-box .product-desc .brand-material-container,
.grid-best-sell-home > div > .product-box .product-desc .brand-material-empty {
	display: none;
}


/* ------------------------- BRAND ------------------------- */
.grid-brand-nav ul {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.grid-brand-nav ul li a {
	color: black !important;
	background-color: transparent !important;
	transition: .2s all ease-in-out;
}
.grid-brand-nav ul li.active a,
.grid-brand-nav ul li a:hover {
	color: var(--colore-primario) !important;
	text-decoration: underline !important;
}
.grid-brand-elenco .grid-brand-logo .portfolio-item-brand {
	border-radius: var(--border-radius);
	overflow: hidden;
}

/* ------------------------- PRODOTTI ------------------------- */

/* ----- prodotti - famiglie ----- */

/* ----- prodotti - look ----- */
.look-group-dettaglio {
	position: relative;
}
.look-group-dettaglio .over-el-container {
	position: absolute;
	top: calc(var(--look-prod-pos-y) - 30px);
  left: calc(var(--look-prod-pos-x) - 30px);
  padding: 10px;
}
.look-group-dettaglio .over-el-container .over-el-hover {
	--el-hover-d: 40px;
	position: relative;
  display: block;
  width: var(--el-hover-d);
  height: var(--el-hover-d);
  background-color: transparent;
  border-radius: 50%;
	transition: background-color 0.25s ease-in-out;
	z-index: 10;
}
.look-group-dettaglio .over-el-container:hover .over-el-hover {
  background-color: rgba(0, 0, 0, 0.5);
}
.look-group-dettaglio .over-el-container .over-el-hover:before {
	content: '';
	position: absolute;
	top: 30%;
	left: 30%;
  display: block;
  width: 40%;
  height: 40%;
  border-radius: 50%;
  background-color: white;
	animation: pulse-look 3.5s infinite ease-out;
}
.look-group-dettaglio .over-el-container:hover .over-el-hover:before {
	box-shadow: none !important;
}
@keyframes pulse-look {
	0% {
		box-shadow: 0 0 0 0 rgba(200, 200, 200, 0.5);
	}
	100% {
		box-shadow: 0 0 0 calc((var(--el-hover-d) - (var(--el-hover-d) * 0.4)) / 2) rgba(0, 0, 0, 0);
	}
}
.look-group-dettaglio .over-el-container .over-el-content {
  position: absolute;
  top: -50%;
  display: block;
  width: 200px;
  height: auto;
  background-color: white;
  border-radius: var(--border-radius);
  padding: 20px;
	visibility: hidden;
	opacity: 0;
	transition: all 0.15s ease-in-out;
	z-index: 20;
}
.look-group-dettaglio .over-el-container .over-el-content.over-el-content-right {
  left: 100%;
}
.look-group-dettaglio .over-el-container .over-el-content.over-el-content-left {
  right: 100%;
}
.look-group-dettaglio .over-el-container:hover .over-el-content {
	visibility: visible;
	opacity: 1;
}
.look-group-dettaglio .over-el-container .over-el-content a > * {
	color: black !important;
}
.look-group-dettaglio .over-el-container .over-el-content a:hover > i {
	color: var(--colore-primario) !important;
}

/* ----- prodotti - sidebar ----- */
.sidebar {
  padding-left: 15px;
}
.switch-filter {
  display: flex;
}
.switch-label {
  position: relative;
  display: inline-block;
  width: 40px;
  min-width: 40px;
  height: 22px;
}
.switch-text {
	vertical-align: top;
	display: inline-block;
	margin-left: 10px;
}
.switch-input {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--light-grey);
  -webkit-transition: .4s;
  transition: .4s;
}
input:checked + .switch-input {
  background-color: var(--colore-primario);
}
.switch-input:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 2px;
  bottom: 2px;
  background-color: #fff;
  -webkit-transition: .4s;
  transition: .4s;
}
input:disabled + .switch-input {
  background-color: #e6e6e6;
}
input:focus + .switch-input {
  box-shadow: 0 0 1px #0073b2;
}
input:checked + .switch-input:before {
  -webkit-transform: translateX(18px);
  -ms-transform: translateX(18px);
  transform: translateX(18px);
}
.sidebar .input-slider {
	padding: 0 10px 30px 10px;
}
.sidebar .input-slider .slider {
  height: 20px;
}
.sidebar .input-slider .slider .slider-track {
  left: 0;
  height: 2px;
  margin-top: -1px;
}
.sidebar .input-slider .slider .slider-track .slider-selection,
.sidebar .input-slider .slider .slider-track .slider-track-high,
.sidebar .input-slider .slider .slider-track .slider-track-low {
  height: 0px;
  top: 0;
  bottom: unset;
}
.sidebar .input-slider .slider .slider-track .slider-selection {
  height: 2px;
  background-color: black;
}
.sidebar .input-slider .slider .tooltip {
	opacity: 1;
  margin-top: 25px;
}
.sidebar .input-slider .slider .tooltip .tooltip-inner {
	color: black;
	border: 1px solid black;
  border-radius: var(--border-radius);
  background-color: white;
}
.sidebar .input-slider .slider .slider-handle {
  top: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: black;
}

/* ----- prodotti - griglia ----- */
.carousel .product-box {
	margin-bottom: 0 !important;
}
.product-box {
  position: relative;
	margin-bottom: 40px;
}
.product-box .product-title {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: var(--col-d);
	z-index: 100;
}
.badge-prodotti,
.product-box .product-title .badge-prodotti {
  font-size: 0.9rem !important;
  text-transform: uppercase;
  color: white !important;
  background-color: var(--colore-primario);
  border-radius: calc(var(--border-radius) / 2);
  padding: 2px 10px;
}
.product-box .product-title .product-fav a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 35px;
	height: 35px;
  color: var(--colore-primario) !important;
  background-color: white;
  border-radius: calc(var(--border-radius) / 2);
}
.product-box .product-title .product-fav a > span {
	color: var(--colore-primario) !important;
}
.product-box .product-content .product-img {
  position: relative;
  border: 1px solid var(--light-grey);
	border-radius: var(--border-radius);
  overflow: hidden;
}
.product-box .product-content .product-img .img-prodotto-grid {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.product-box .product-content .product-img .link-cart {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 0;
  color: white !important;
  background-color: rgba(0, 0, 0, 0.7);
  opacity: 0;
	transition: all 0.5s;
}
.product-box .product-content:hover .product-img .link-cart {
  height: 50px;
  opacity: 1;
}
.product-box .product-content:hover .product-img .link-cart:hover {
  background-color: black;
}
.product-box .product-content .product-desc {
	padding: 20px;
}
.product-box .product-content .product-desc p {
	margin-bottom: 10px;
}
.product-box .product-content .product-desc .product-prezzo {
	margin-bottom: 5px;
}
.product-box .product-content .product-desc .brand-material-empty {
	min-height: 50px;
}

/* ----- prodotti - prezzo ----- */
.product-prezzo {
  position: relative;
  display: flex;
  align-items: center;
}
.product-prezzo .prezzo-barrato {
  font-size: 0.8rem;
  text-decoration: line-through;
	margin-left: 15px;
  color: black !important;
	opacity: 0.6;
}
.product-prezzo .prezzo-sconto {
  position: absolute;
  right: 0;
  font-size: 0.8rem;
  color: black !important;
  background-color: var(--light-grey);
  border-radius: calc(var(--border-radius) / 2);
  padding: 5px 10px;
}
.product-prezzo .prezzo-definitivo {
		color: var(--colore-primario);
	  font-size: 24px !important;
}
[id^="lookProd"] .product-prezzo {
  display: grid !important;
	grid-template-areas: "b s"
											 "d i";
  grid-template-columns: repeat(2, auto);
  grid-row-gap: 10px;
}
[id^="lookProd"] .product-prezzo .prezzo-definitivo {
	grid-area: d;
  font-size: 20px !important;
}
[id^="lookProd"] .product-prezzo .prezzo-barrato {
	grid-area: b;
  margin-left: 0;
}
[id^="lookProd"] .product-prezzo .prezzo-sconto {
	grid-area: s;
  position: relative;
  font-size: 11px !important;
}
[id^="lookProd"] .product-prezzo i {
	grid-area: i;
  text-align: right;
}

/* ----- prodotti - dettaglio ----- */
.product-title h1 {
	font-size: var(--font-size-h4);
}
#prodDettaglio .product-page {
	overflow: visible;
}
#prodDettaglio .product-page .product-desc {
	position: relative;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info {
  position: sticky;
  top: 100px;
  display: block;
  height: 100%;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .product-desc-col-info-intro .product-sku {
  opacity: 0.4;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .product-desc-col-info-intro #productShare.active,
#prodDettaglio .product-page .product-desc .product-desc-col-info .product-desc-col-info-intro #productShare:hover {
	color: var(--colore-primario);
	cursor: pointer;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .product-desc-col-info-intro #productShare .group-icon-condividi {
  position: absolute;
  top: 35px;
  right: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: auto;
  padding: 5px 10px;
  background-color: var(--colore-secondario);
	z-index: 100;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .product-desc-col-info-intro #productShare .group-icon-condividi:before {
	content: '';
  position: absolute;
	top: -11px;
	right: calc(50% - 4.5px);
	display: block;
	width: 9px;
	height: 12px;
  background-color: var(--colore-secondario);
	clip-path: polygon(0 100%, 50% 0, 100% 100%);
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .product-desc-col-info-intro #productShare .group-icon-condividi > a {
	line-height: 1rem !important;
	margin-top: 5px;
	margin-bottom: 5px;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .dimensioni-prod-grid {
	display: grid;
  grid-template-columns: repeat(4, 1fr);
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .dimensioni-prod-grid [class*="dim-prod"] {
  display: grid;
  grid-template-columns: 40px auto;
  grid-column-gap: 20px;
  align-items: center;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .dimensioni-prod-grid [class*="dim-prod"] i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40;
	height: 40px;
	background-color: var(--light-grey);
	border-radius: 50%;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .prezzo-definitivo {
	font-size: 42px !important;
}
#prodDettaglio .product-page .product-desc .row-descrizione-prodotto ul {
	list-style: none;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .cart-product-quantity {
  display: flex;
  align-items: center;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .cart-product-quantity .quantity {
  background-color: var(--light-grey);
  margin-right: 20px;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .cart-product-quantity .price {
	display: flex;
  justify-content: center;
  align-items: center;
	width: 100px;
  height: 40px;
  background-color: var(--light-grey);
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .cart-product-quantity .quantity input {
	width: 40px;
  background-color: var(--light-grey);
	padding: 10px 5px;
  border: none;
	margin: 0;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info .cart-product-quantity .quantity input:focus-visible {
  outline: black solid 1px;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info i[class*="icon-instock"] {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 20px;
  height: 20px;
  border-radius: 50%;
  margin-right: 5px;
}
#prodDettaglio .product-page .product-desc .product-desc-col-info i.icon-instock-yes {
	background-color: var(--green-success);
}
#prodDettaglio .product-page .product-desc .product-desc-col-info i.icon-instock-no {
	background-color: var(--yellow-alert);
}
#prodDettaglio .product-page .product-desc .product-desc-col-foto .product-image {
  position: sticky;
  top: 0;
}
#prodDettaglio .product-page .product-desc .product-desc-col-foto .product-image .single-image img {
	width: 100%
}
#prodDettaglio .row-dettagli-prodotti .tabs-folder .tab-content {
  border: none;
  border-top: solid 3px var(--light-grey);
  border-radius: 0;
  margin-top: -3px;
}
#prodDettaglio .row-dettagli-prodotti .tabs-folder ul.nav-tabs li.nav-item a.nav-link {
  border: none;
  border-bottom: solid 3px var(--light-grey);
  border-radius: 0;
}
#prodDettaglio .row-dettagli-prodotti .tabs-folder ul.nav-tabs li.nav-item a.nav-link.active {
  color: black !important;
  border-color: black !important;
}
.brand-material-container .brand-material-content {
	display: flex;
	align-items: center;
}
.brand-material-container .brand-material-content .brand-material {
	position: relative;
  display: flex;
  justify-content: center;
	width: 40px;
	height: 40px;
	background-image: var(--material-img);
	background-color: var(--material-color);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
	border-radius: 50%;
	margin: 10px;
  box-shadow: 0 0 6px -3px black;
	z-index: 100;
	transition: all 0.25s ease-in-out;
	cursor: pointer;
}
.brand-material-container .brand-material-content .brand-material.no-hover {
	width: 30px;
	height: 30px;
}
.brand-material-container .brand-material-content .brand-material.no-hover:first-child {
	margin-left: 0;
}
.brand-material-container .brand-material-content .brand-material:not(.no-hover):hover,
.brand-material-container .brand-material-content .brand-material.selected {
  transform: scale(0.8);
}
.brand-material-container .brand-material-content .brand-material:not(.no-hover):before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 40px;
	border: 1px solid var(--material-color);
	border-radius: 50%;
  box-shadow: 0 0 6px -3px black;
	opacity: 0;
	z-index: 0;
  transform: scale(0);
	transition: transform 0.25s ease-in-out, opacity 0.1s ease-in-out;
}
.brand-material-container .brand-material-content .brand-material:not(.no-hover):hover:before,
.brand-material-container .brand-material-content .brand-material.selected:before {
	opacity: 1;
  transform: scale(1.25);
}
.brand-material-container .brand-material-content .brand-material .brand-material-label {
	position: absolute;
	bottom: -35px;
	font-size: 1rem;
	line-height: var(--line-height);
	background-color: white;
	padding: 0 5px;
	border-radius: calc(var(--border-radius) / 2);
  box-shadow: 0 0 6px -3px black;
	opacity: 0;
	z-index: 150;
	transform: translateY(10px) scale(0.8);
	transition: all 0.25s ease-in-out;
}
.brand-material-container .brand-material-content .brand-material.selected .brand-material-label {
	transform: translateY(25px) scale(1);
}
.brand-material-container .brand-material-content .brand-material:hover .brand-material-label {
	opacity: 1;
	transform: translateY(0) scale(1);
}


/* ------------------------- NEWS ------------------------- */
.news-data p,
.news-categoria p {
  font-size: 0.9rem !important;
	color: black !important;
}
.news-data p {
	min-height: 22px !important;
}
.news-title h5 {
  min-height: calc(1em + 16px);
	color: black !important;
}
.news-text p {
  min-height: calc(4em + 32px);
	color: black !important;
}
.news-link a,
.news-icon a {
	color: var(--colore-primario) !important;
	transition: all 0.15s ease-in-out;
}
.news-icon a:hover,
.news-link a:hover {
	color: var(--colore-secondario) !important;
}
.news-badge {
	position: absolute;
	top: 10px;
	right: 10px;
	background-color: var(--colore-primario);
	color: white !important;
	padding: 3px 10px;
	border-radius: var(--border-radius);
}
.news-badge a {
	color: white !important;
	font-size: 14px !important;
}


/* ------------------------- NEWS - DETTAGLIO ------------------------- */

/* ----- news - dettaglio - content ----- */
.badge-categoria {
	color: var(--colore-primario) !important;
}
.social-share-blog .icon-social {
  padding-right: 10px;
  padding-left: 10px;
}

/* ----- news - dettaglio - sidebar ----- */
.sidebarBlog [class*="sidebar-el"] .sidebar-title-el {
	color: var(--colore-primario) !important;
}
.sidebarBlog .sidebar-el-correlati .sidebar-title-news {
	color: var(--colore-primario) !important;
}
.sidebarBlog .sidebar-el-correlati .sidebar-link-news {
	color: var(--colore-primario) !important;
}
.sidebarBlog .sidebar-el-correlati .sidebar-link-news:hover {
	color: var(--colore-secondario) !important;
}
.sidebarBlog .sidebar-el-cerca .input-group input {
  border: 2px solid var(--light-grey);
}
.sidebarBlog .sidebar-el-cerca .input-group .input-group-append {
	margin-left: 0 !important;
}
.sidebarBlog .sidebar-el-cerca .input-group .input-group-append button {
  display: flex;
  justify-content: center;
  align-items: center;
}
.sidebarBlog .sidebar-el-cerca .input-group button:hover {
  color: var(--colore-primario) !important;
}

/* ----- news - dettaglio - btn ----- */
.btn.btn-blog {
	border-width: 2px !important;
}
.btn.btn-blog.btn-dark {
	color: white !important;
	border-color: var(--colore-primario) !important;
	background-color: var(--colore-primario) !important;
}
.btn.btn-blog.btn-dark:hover {
	color: var(--colore-primario) !important;
	background-color: transparent !important;
}
.btn.btn-blog.btn-light {
	color: var(--colore-primario) !important;
	border-color: white !important;
	background-color: white !important;
}
.btn.btn-blog.btn-light:hover {
	color: white !important;
	background-color: transparent!important;
}

/* ----- news - dettaglio - btn - btn-outline ----- */
.btn.btn-blog.btn-outline {
	background-color: transparent !important;
}
.btn.btn-blog.btn-outline.btn-dark {
	color: var(--grey) !important;
	border-color: var(--colore-primario) !important;
}
.btn.btn-blog.btn-outline.btn-dark:hover {
	color: var(--colore-primario) !important;
}
.btn.btn-blog.btn-outline.btn-light {
	color: white !important;
	border-color: white !important;
}
.btn.btn-blog.btn-outline.btn-light:hover {
	color: var(--grey) !important;
	background-color: white !important;
}

/* ----- news - dettaglio - elenchi ----- */
[id^="blogRow"] ul,
[id^="blogRow"] ol {
  padding-left: 20px;
}

/* ----- news - dettaglio - img ----- */
[id^="blogRow"] img {
	border-radius: var(--border-radius);
}

/* ----- news - dettaglio - cta ----- */
[id^="blogRow"].row-cta {
	border-radius: var(--border-radius);
}

/* ----- news - dettaglio - icon-box ----- */
[id^="blogRow"] .icon-box-blog {
	display: flex;
	align-items: center;
  background-color: var(--colore-secondario);
  border-radius: var(--border-radius);
  padding: 20px;
}
[id^="blogRow"] .icon-box-blog:before {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 100%;
	color: black !important;
  font-size: 32px;
  margin-right: 20px;
}
[id^="blogRow"] .icon-box-blog > p {
	color: black !important;
	margin-bottom: 0;
}


/* ------------------------- FAQ ------------------------- */
.faq-container .faq-list .accordion .ac-item {
  margin-top: calc(((var(--font-size-h2) + 8px) - 32px) / 2);
}
.faq-container .faq-list .accordion .ac-item .ac-content ul {
  margin-left: 15px;
}


/* -------------------------- CONTATTI -------------------------- */
#mapContatti .icon-contatti {
	display: grid;
	align-items: center;
	grid-template-columns: 30px auto;
	grid-column-gap: 10px;
}
#mapContatti .icon-contatti > i {
	text-align: center;
}
#mapContatti .col-info-contatti {
	border-radius: 15px;
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}
#mapContatti .col-mappa-contatti {
	border-radius: 15px;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	overflow: hidden;
}
#mapContatti .col-mappa-contatti iframe {
	height: 100% !important;
}


/* ------------------------- AREA UTENTE ------------------------- */

/* ----- area utente - general ----- */
.form-area-utente #pswd_info {
  position: absolute;
  top: 0;
  right: -310px;
  max-width: 300px;
  background-color: white;
  padding: 15px;
}
.form-area-utente #pswd_info.pswd_info_absolute_change {
  right: -325px;
}
.form-area-utente #pswd_info ul {
	list-style: none;
}
#pswd_info .invalid {
	background: url(../images/icons-password/invalid.png) 0 50% no-repeat;
	padding-left: 22px;
	line-height: 24px;
	color: #ec3f41;
}

#pswd_info .valid {
	background: url(../images/icons-password/valid.png) 0 50% no-repeat;
	padding-left: 22px;
	line-height: 24px;
	color: #3a7d34;
}

/* ----- area utente - login ----- */
.form-area-utente .input-group input {
  border: 1px solid var(--light-grey);
}
.form-area-utente .input-group .input-group-append {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  border: 1px solid var(--light-grey);
  border-left: none;
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
  margin-left: 0;
}

/* --- form check verification code --- */
#formLogin2,
#formLostPass .codeContainer {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-column-gap: 10px;
}
#formLostPass {
	justify-content: center;
}
#formLostPass .codeContainer {
	margin-bottom: 20px;
}
#formLogin2 .form-group input[id^="code"],
#formLostPass .form-group input[id^="code"] {
  padding-top: 40px;
  padding-bottom: 40px;
  height: auto;
}
#formLostPass .codeContainer .form-group input[id^="code"] {
  width: 100% !important;
  padding: 30px 10px !important;
}
#formLogin2 div:last-child,
#formLostPass .input-full-col {
  grid-column: 1 / 7;
}
/* Chrome, Safari, Edge, Opera */
input[id^="code"]::-webkit-outer-spin-button,
input[id^="code"]::-webkit-inner-spin-button {
	display: none;
}
/* Firefox */
input[id^="code"][type=number] {
	appearance: textfield;
}


/* ----- area utente - index ----- */
svg.img-circle {
  fill: var(--colore-primario);
}

/* ----- area utente - index - griglia ----- */
.grid-tab-ac-intro {
	display: grid;
	grid-template-areas:
		'dati newsletter newsletter'
		'dati preventivi preventivi'
		'ordini preferiti indirizzi';
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 30px;
}
.grid-tab-ac-intro > .tab-ac-dati { grid-area: dati; }
.grid-tab-ac-intro > .tab-ac-newsletter { grid-area: newsletter; }
.grid-tab-ac-intro > .tab-ac-preventivi { grid-area: preventivi; }
.grid-tab-ac-intro > .tab-ac-ordini { grid-area: ordini; }
.grid-tab-ac-intro > .tab-ac-preferiti { grid-area: preferiti; }
.grid-tab-ac-intro > .tab-ac-indirizzi { grid-area: indirizzi; }

/* ----- area utente - index - style el generico ----- */
.grid-tab-ac-intro > [class*="tab-ac"] {
	position: relative;
	background-color: var(--light-grey);
	padding: 30px;
	border-radius: 25px;
}
.grid-tab-ac-intro > [class*="tab-ac"] > * {
	z-index: 10;
}

/* ----- area utente - index - style el link ----- */
.tab-link {
	position: relative;
	display: block;
	overflow: hidden;
}
:not(.link-faq-contatti) .tab-link:hover,
.link-faq-contatti:hover .tab-link {

}
.tab-link:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--colore-primario);
	clip-path: circle(0% at calc(100% - 42.5px) 42.5px);
	z-index: 0;
	transition: 0.4s all ease-in-out !important;
}
/*
.tab-link:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1000;
}
*/
:not(.link-faq-contatti) .tab-link:hover:before,
.link-faq-contatti:hover .tab-link:before {
	clip-path: circle(150% at calc(100% - 42.5px) 42.5px);
}
.tab-link h3,
.tab-link h4,
.tab-link p,
.tab-link i,
.tab-link img {
	z-index: 10;
	transition: 0.2s all ease-in-out 0.15s !important;
}
:not(.link-faq-contatti) .tab-link:hover h3,
:not(.link-faq-contatti) .tab-link:hover h4,
:not(.link-faq-contatti) .tab-link:hover p,
:not(.link-faq-contatti) .tab-link:hover i,
.link-faq-contatti:hover .tab-link h3,
.link-faq-contatti:hover .tab-link h4,
.link-faq-contatti:hover .tab-link p,
.link-faq-contatti:hover .tab-link i {
	color: white !important;
}
:not(.link-faq-contatti) .tab-link:hover img,
.link-faq-contatti:hover .tab-link img {
	filter: brightness(0) invert(1);
}

/* ----- area utente - index - style el titolo ----- */
.grid-tab-ac-intro > [class*="tab-ac"] .tab-ac-title-big {
	font-size: 60px !important;
	line-height: calc(1em + 10px) !important;
	position: relative;
}

/* ----- area utente - index - style el icona ----- */
.grid-tab-ac-intro > [class*="tab-ac"] .tab-link-dettaglio,
.grid-tab-ac-intro > [class*="tab-ac"] .tab-icon {
	position: absolute;
	top: 30px;
	right: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 35px;
	height: 35px;
	color: black;
	border-radius: 50%;
	z-index: 10;
	transition: 0.3s all ease-in-out;
}
.grid-tab-ac-intro > [class*="tab-ac"]:not(.tab-link) .tab-link-dettaglio:hover {
	color: white !important;
	background-color: var(--colore-primario);
}

/* ----- area utente - indirizzi ----- */
.indirizzi-sped-square {
	display: flex;
	justify-content: center;
	align-items: center;
  height: 100%;
	min-height: 200px;
  background-color: var(--colore-primario-10);
  padding: 20px;
  border-radius: var(--border-radius);
}
#badgeDefault {
  position: absolute;
  top: -3px;
  right: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 38px;
  color: white;
  background-color: var(--colore-primario);
  z-index: 99;
}
#badgeDefault:before,
#badgeDefault:after {
  content: '';
  position: absolute;
  bottom: -4.9px;
  display: block;
  width: 12px;
  height: 5px;
  background-color: var(--colore-primario);
}
#badgeDefault:before {
  left: 0;
  clip-path: polygon(0 0, 100% 0, 0 100%);
}
#badgeDefault:after {
  right: 0;
  clip-path: polygon(0 0, 100% 0, 100% 100%);
}

/* ----- area utente - carrello ----- */
.header-cart {
  border-bottom: 1px solid black;
}
.header-cart img {
  padding: 10px 0;
  height: 80px;
}
.shop-cart .indirizzi-spezidione-elenco {
	border-bottom: 1px solid var(--light-grey);
  margin-bottom: 10px;
}
.shop-cart .indirizzi-spezidione-elenco .indirizzo-spezidione {
  padding-top: 10px;
  padding-bottom: 10px;
	border-top: 1px solid var(--light-grey);
}
.shop-cart .indirizzi-spezidione-elenco .indirizzo-spezidione > label {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}
.shop-cart .indirizzi-spezidione-elenco .indirizzo-spezidione > label > input {
  margin-right: 10px;
}
.cart-img-prod {
	position: relative;
}
.cart-img-prod > a.cart-img-prod-del {
	position: absolute;
  top: -10px;
  right: -10px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  color: white;
  background-color: var(--colore-primario);
	border-radius: 50%;
	transition: all 0.2s ease-in-out;
}
.cart-img-prod > a.cart-img-prod-del:hover {
  color: var(--colore-primario);
  background-color: white;
}
.quantity-cart-checkout {
  display: flex;
  align-items: center;
  justify-content: end;
}
.quantity-cart-checkout input,
.quantity-cart-checkout .quantity-totale {
  min-height: unset !important;
  background-color: white;
  padding: 5px 15px !important;
  border: 1px solid white;
	margin: 0;
}
.quantity-cart-checkout input:focus-visible {
  outline: none;
  border: 1px solid black;
}
.quantity-cart-checkout input.qty {
  text-align: center;
	max-width: 50px;
}
.text-data-spedizione-carrello {
	background-color: white;
	padding-top: 10px;
	padding-bottom: 10px;
  border-radius: var(--border-radius);
	/*border-top: 1px solid var(--colore-primario);
	border-bottom: 1px solid var(--colore-primario);*/
}
.table-cart-new-style {
  border: 1px solid var(--light-grey);
  border-radius: var(--border-radius);
  border-spacing: 0;
  border-collapse: separate;
}
.table-cart-new-style tr {
	height: 50px;
	min-height: 50px;
}
.table-cart-new-style tr.tr-active {
  background-color: var(--light-grey);
}
.table-cart-new-style tr td {
  border: 0;
}
.table-cart-new-style tr:not(:first-child) td {
  border-top: 1px solid var(--light-grey) !important;
}
.cart-logo-paypal {
	width: 80px;
}
.cart-icon-bonifico {
	font-size: 20px;
}

/* ----- area utente - riepilogo ordine ----- */
#dettaglioOrdine .table th {
	border-bottom-width: 1px !important;
}
#dettaglioOrdine .table tr.row-totale-ordine {
	background-color: transparent !important;
}
#dettaglioOrdine .table tr td {
  vertical-align: middle;
}
#dettaglioOrdine .table tr.row-totale-ordine td {
	padding-top: 15px;
	padding-bottom: 15px;
}
#dettaglioOrdine .table tr.row-totale-ordine td.no-border {
	border: none !important;
}


/* ------------------------- PAGINE DINAMICHE ------------------------- */
.tipologia-conf-container {
	display: flex;
	gap: var(--col-d);
}
.tipologia-conf-container .tipologia-conf-card {
	--card-w: calc(50% - var(--col-d) / 2);
	display: flex;
	flex-direction: column;
	gap: 50px;
	height: 100%;
	width: var(--card-w);
	flex: 1 1 var(--card-w);
	background-color: white;
	padding: var(--col-d);
	border-radius: var(--border-radius);
}
.tipologia-conf-container .tipologia-conf-card img {
	border: 1px solid var(--colore-secondario-30);
}
.tipologia-conf-container .tipologia-conf-card .conf-card-elenco-icone .conf-card-icona {
	display: grid;
	grid-template-columns: 30px auto;
	grid-column-gap: 15px;
	align-items: center;
}
.tipologia-conf-container .tipologia-conf-card .conf-card-elenco-icone .conf-card-icona:not(:last-child) {
	margin-bottom: 20px;
}


/* ------------------------- PAGINE DINAMICHE ------------------------- */
#pagineDinamiche .col-sidebar-pag-dinamiche a i {
	position: relative;
	top: 4px;
}
#pagineDinamiche .col-sidebar-pag-dinamiche a:hover i {
  color: black !important;
}
#pagineDinamiche .col-sidebar-pag-dinamiche a.link-pag-dinamiche-inactive {
  opacity: 0.5;
}


/* ------------------------- BORDER ------------------------- */
.border-r-1-white {
	border-right: 1px solid white !important;
}
.border-r-1-black {
  border-right: 1px solid black !important;
}

.border-l-1-white {
	border-left: 1px solid white !important;
}
.border-l-1-black {
  border-left: 1px solid black !important;
}

/* ------------------------- ICONE CARATTERISTICHE PRODOTTO ------------------------- */
/* *** MODIFICA CLAUDE 14/09/2026 ***
   La sezione del tab Caratteristiche e' a tutta larghezza: senza un limite le quattro
   icone si allargavano fino alla dimensione nativa dei PNG (281x293 px) e restavano
   distanti fra loro. Il max-width sulla riga riporta il gruppo alla larghezza del container boxed,
   il max-width sulle img e' cio' che ne riduce davvero l'ingombro: alzalo o abbassalo
   li' sotto per regolarle, il resto non va toccato. */

.icon-box-scheda-prodotto {
	max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
}

.icon-box-scheda-prodotto img {
	max-width: 150px;
	width: 100%;
	height: auto;
}

.icona-garanzia-prodotto img {
	max-width: 150px;
	height: auto;
}

@media (max-width: 767px) {
	.icon-box-scheda-prodotto img,
	.icona-garanzia-prodotto img {
		max-width: 120px;
	}
}

/* *** MODIFICA CLAUDE 15/09/2026 - TENDINA AUTOCOMPLETE INDIRIZZI ***
   Usata da /pages/_assets/nice/js/custom-maps-autocomplete.js. Prima la tendina
   la disegnava Google (widget legacy), ora e' nostra e va vestita a mano. */
.maps-suggest {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	z-index: 1050;
	margin: 2px 0 0;
	padding: 0;
	list-style: none;
	background: #fff;
	border: 1px solid #d8d8d8;
	border-radius: 4px;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .12);
	max-height: 260px;
	overflow-y: auto;
}
.maps-suggest-voce {
	padding: 10px 15px;
	cursor: pointer;
	font-size: 14px;
	line-height: 1.3;
	border-bottom: 1px solid #f0f0f0;
}
.maps-suggest-voce:last-child { border-bottom: 0; }
.maps-suggest-voce.attiva,
.maps-suggest-voce:hover { background: #f5f5f5; }


/* === MODIFICA CLAUDE 17/09/2026 - riquadro accesso rapido nel carrello === */
.cart-login-box {
	border: 1px solid #cfe2f7;
	border-left: 4px solid #013f83;
	background: #f2f8ff;
	border-radius: 4px;
	padding: 15px 18px;
}
.cart-login-box p { color: #4c4c4c; }
.cart-login-box .cart-login-btn {
	display: inline-block;
	padding: 8px 18px;
	font-size: 13px;
	line-height: 1.2;
	white-space: nowrap;
}
.cart-login-code {
	display: flex;
	gap: 8px;
	align-items: stretch;
}
.cart-login-code .form-control {
	max-width: 160px;
	letter-spacing: 3px;
	font-weight: 600;
	text-align: center;
}
.cart-login-box .color-error { color: #b00020; }
@media (max-width: 575px) {
	.cart-login-code { flex-direction: column; }
	.cart-login-code .form-control { max-width: 100%; }
	.cart-login-box .cart-login-btn { display: block; text-align: center; }
}


/* --- END CSS --- */