/* VARIABLE DEFINITIONS */
:root {
  --primary: #0e4d25;
  --secondary: #6e0000;
  --tertiary: #FF3131;
  --dark: #000000;
  --light: #FFFFFF;
  --body-bg: #FFFFFF;
}
.light {
    color: var(--light);
}
.white-bg {
    background-color: white;
}

.dark-bg {
    background-color: var(--dark);
    color: var(--light);
    }

.light-bg {
    background-color: var(--light);
    color: var(--dark);
    }

.green-bg {
    background-color: #4cb182;
    color: white;
}

.red-bg {
    background-color: #db4e5c;
    color: white;
}
.rounded-angles {
    border-radius: 10px !important;
}

.slider-text {
    color: var(--dark);
}

.primary-bg {
    background-color: var(--primary) !important;
}
.secondary-bg {
    background-color: var(--secondary) !important;
}
.tertiary-bg {
    background-color: var(--tertiary) !important;
}

html,
body {
	position: relative;
	height: 100%;
	margin:0;
	padding:0;
	color: #FFF;
	background-color: var(--body-bg);
}
h1, .h1{
	font-size:25px;
	margin:0 0 10px;
	padding:0 0 10px
}
h2, .h2 {
	font-size:22px;
	margin:0 0 10px;
	padding:0 0 10px
}
h3, .h3 {
	font-size:20px;
	margin:0 0 10px;
	padding:0 0 10px
}
h4, .h4 {
	font-size:18px;
	margin:0 0 10px;
	padding:0 0 10px
}
h5, .h5 {
	font-size:17px;
	margin:0 0 10px;
	padding:0 0 10px
}
h6, .h6 {
	font-size:16px;
	margin:0 0 10px;
	padding:0 0 10px
}
.spaced {
    letter-spacing: 0.45em;
}
header {
    background-color: white;
}
/* MESSAGES & ERRORS */

ul.messagelist {
    padding: 0;
    margin: 0;
}

ul.messagelist li {
    display: block;
    font-weight: 400;
    font-size: 13px;
    padding: 10px 10px 10px 10px;
    margin: 0 0 10px 0;
    background: var(--message-success-bg) url(/static/admin/img/icon-yes.svg) 70px 12px no-repeat;
    background-size: 16px auto;
    color: var(--body-fg);
}

ul.messagelist li.warning {
    background: var(--message-warning-bg) url(/static/admin/img/icon-alert.svg) 70px 14px no-repeat;
    background-size: 14px auto;
}

ul.messagelist li.error {
    background: var(--message-error-bg) url(/static/admin/img/icon-no.svg) 70px 12px no-repeat;
    background-size: 16px auto;
}

.errornote {
    font-size: 14px;
    font-weight: 700;
    display: block;
    padding: 10px 12px;
    margin: 0 0 10px 0;
    color: var(--error-fg);
    border: 1px solid var(--error-fg);
    border-radius: 4px;
    background-color: var(--body-bg);
    background-position: 5px 12px;
    overflow-wrap: break-word;
}

ul.errorlist {
    margin: 0 0 4px;
    padding: 0;
    color: var(--error-fg);
    background: var(--body-bg);
}

ul.errorlist li {
    font-size: 13px;
    display: block;
    margin-bottom: 4px;
    overflow-wrap: break-word;
}

ul.errorlist li:first-child {
    margin-top: 0;
}

ul.errorlist li a {
    color: inherit;
    text-decoration: underline;
}

td ul.errorlist {
    margin: 0;
    padding: 0;
}

td ul.errorlist li {
    margin: 0;
}

.form-row.errors {
    margin: 0;
    border: none;
    border-bottom: 1px solid var(--hairline-color);
    background: none;
}

.form-row.errors ul.errorlist li {
    padding-left: 0;
}

.errors input, .errors select, .errors textarea,
td ul.errorlist + input, td ul.errorlist + select, td ul.errorlist + textarea {
    border: 1px solid var(--error-fg);
}

.login ul.messagelist {
    padding: 0;
    margin: 0;
}

.login ul.messagelist li {
    display: block;
    font-weight: 800;
    font-size: 15px;
    padding: 10px ;
    margin: 10px;
    background-size: 16px auto;
    color: #FFED00;
}

ul.messagelist li.error,
ul.messagelist li.warning,
ul.messagelist li.success {
	background: none;
}

.hide {
	display:none;
}
.page-object {
	filter: drop-shadow(2px 2px 5px rgb(0 0 0 / 25%));
}
.contact h1, .contact h2, .contact p, .contact a, .contact label, .contact strong, .contact button {
    filter: drop-shadow(2px 2px 4px rgb(255 255 255));
}

/* base slider */
.slider-container{
	position: absolute;
	top: 112px;
	height: calc( 100vh - 152px);
	width: 100%;
	z-index:200;
}
.slider{
	width: 100%;
	height: calc( 100vh - 152px);
	top: 39px;
}
.slide-prodotti{
	width: 100%;
	height: 100%;
	padding: 15px;
	background: red;
}
.top-list{
	width: 100%;
	height: 72px;
}
.sub-link{
	height: 40px;
}

.slider {
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: flex;
    height: 100%;
}
.swiper {
	width: 100%;
	height: 100%;
}
.swiper-slide {
	text-align: center;
	background: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	padding: 20px;
	border-radius: 20px;
	background:#fff;
	overflow: hidden;
}
.due-schede .row {
	width:100%;
	margin: 0;
}
.quattro-schede .row {
	width:100%;
	height: 50%;
	margin: 0 0 2%;
}
.quattro-schede .row:last-child {
	margin: 0;
}
.due-schede .swiper-slide {
	flex-direction: column;
	background: #fff;
	padding: 20px;
	border-radius: 20px;
	float: left;
	height: 100%;
}
.quattro-schede .swiper-slide {
	padding: 0 5px;
	border-radius: 20px;
	background:transparent;
	flex-direction: column;
}
.due-schede .swiper-slide .flex-box {
	background: #fff;
    padding: 20px;
    border-radius: 20px;
	width:49%;
	float:left;
	height:100%;
}
.due-schede .swiper-slide .flex-box:first-child {
	margin-right:1%;
}
.due-schede .swiper-slide .flex-box:last-child {
	margin-left:1%;
}
.quattro-schede .swiper-slide{
	background: #fff;
	padding: 20px;
	border-radius: 20px;
	position: relative;
	overflow: hidden;
	background: #fff;
	height: calc((100% - 40px) / 2) !important;
	border-radius: 20px;
	flex-direction: row;
}
.swiper-slide img {
	display: block;
	width: auto;
	height: 100%;
	object-fit: cover;
	margin: auto;
	max-width: 100%;
	border-radius: 10px;
}
/* */
.product-photo{
	width: 60%;
	text-align: left;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	display: flex;
	border: 1px solid #dfdfdf;
	border-radius: 10px;
	margin: 0 10px 0 0;
	position: relative;
}
.due-schede .product-photo{
	width: 100%;
	text-align: left;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	display: flex;
	border: 1px solid #dfdfdf;
	border-radius: 10px;
	margin: 0;
	position: relative;
	height: 60%;
}
.thumb-box{
	position: absolute;
    bottom: -32px;
	left: 0;
    height: 65px;
    width: 100%;
    text-align: left;
}
.quattro-schede .thumb-box{
	position: absolute;
    bottom: -18px;
	left: 0;
    height: 40px;
    width: 100%;
    text-align: left;
}
.due-schede .thumb-box{
    bottom: unset;
    height: 45px;
	top: 30px;
	right: -20px;
	left: unset;
	width: 45px;
}
.vista-lista .thumb-box{
	position: absolute;
    bottom: -18px;
	left: 5px;
    height: 40px;
    width: 100%;
    text-align: left;
}
.thumb-box img{
	float:left;
	background:#fff;
	border: 1px solid #dfdfdf;
	margin:0 6px;
}
.vista-lista .thumb-box img {
	display: block;
	width: auto;
	height: 100%;
	object-fit: cover;
	margin: auto;
	max-width: 100%;
	border-radius: 10px;
}
.due-schede .thumb-box img{
	margin: 6px 0;
}
.quattro-schede .thumb-box img{
	margin:0 4px;
}
.product-spec{
	width: 40%;
	padding: 0 20px;
	border-radius: 20px;
	text-align: left;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	overflow-y: auto;
}
.due-schede .product-spec{
	width: 100%;
	padding: 20px 0;
}
.quattro-schede .product-spec{
	padding: 0 10px;
}
.product-title{
	font-size: 20px;
	font-weight: bold;
	color: #d10101;
	padding: 0;
	margin: 0 0 10px;
}
.quattro-schede .product-title{
	font-size: 18px;
	margin: 0 0 10px;
}
.product-description{
	padding: 0 0 5px;
	margin:0;
}
.product-description p{
	padding: 0 0 5px;
	margin:0;
}
.product-features {
	margin-top: 10px
}
.product-features h3 {
	margin: 0;
	font-size:15px;
	font-weight:bold;
}
.product-features .data-sheet {
	display: -webkit-box;
	display: -moz-box;
	display: box;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: flex-start;
	-moz-align-items: flex-start;
	-ms-align-items: flex-start;
	align-items: flex-start;
}
.product-features .data-sheet .value, .product-features .data-sheet .name {
	-webkit-box-flex: 1 0 40%;
	-moz-box-flex: 1 0 40%;
	-webkit-flex: 1 0 40%;
	-ms-flex: 1 0 40%;
	flex: 1 0 40%;
	font-weight: 400;
	background: #ededed;
	padding: 5px;
	margin: 0 5px 2px 0;
	/* min-height: 4rem; */
	word-break: break-all;
	border-bottom:2px solid #fff;
	border-left:2px solid #fff;
}
.product-features .data-sheet value:nth-of-type(even), .product-features .data-sheet .name:nth-of-type(even) {
	background: #e7e7e7
}
.product-features .data-sheet .name {
	text-transform: capitalize;
}
.cart-tools{
	margin-top:auto;
	padding-bottom: 35px;
}
.quattro-schede .cart-tools{
	padding-bottom: 0;
}
.due-schede .cart-tools{
	padding-bottom: 0;
}
.product-price {
	font-size:22px;
	text-align: center;
	border-top:1px dashed #ccc;
	border-bottom:1px dashed #ccc;
	padding: 10px 0;
}
.product-price strong{
	color:#d10101
}
.quattro-schede .product-price {
	font-size: 20px;
}
.due-schede .product-price.col-12,
.due-schede .form-group
{
	float:left;
	width:50%!important;
}
.due-schede .form-group ,
.due-schede .form-group .col-md-12.margin-tb-20{
	margin-bottom:0px;
}
/* login */
.container.center-page{
	display:flex;
	margin:auto auto;
	align-items: center;
	justify-content: center;
	height: calc(100% - 20px);
	text-align: center;
	flex-direction: column;
}
/* ----  reset campi form ---- */
.form-box input, .form-box select, .form-box textarea {
	margin: 0;
	padding: 0;
	outline: none;
	font-family: inherit;
	box-sizing: border-box;
	color: #000;
	font-size: 13px;
	font-weight: 200;
}
.form-box select, .form-box textarea, .form-box input[type="text"], .form-box input[type="password"], .form-box input[type="file"], .form-box input[type="number"], .form-box input[type="date"], .form-box input[type="email"] {
	width: 100%;
	padding: 8px 20px;
	background: #fff;
	background-color: #fff;
	border: 1px solid #aaa;
	border-radius: 5px;
}
.section-form-checkmark, .section-form-checkbox-checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 21px;
	width: 21px;
	border: 1px solid #000;
}
.section-form-checkmark:after, .section-form-checkbox-checkmark:after {
	content: "";
	position: absolute;
	display: none;
}
/* ---- Input - textarea - select  generici ---- */
@media only screen and (max-width: 650px) {
	.view-filters {
		max-width: 80%;
		margin: auto auto;
	}
}
.form-box label {
	/*display: none;*/
	display: inline;
    font-weight: 200;
}
.form-box input::placeholder {
 color: #000;
}
.form-box .select2-container--default .select2-selection--multiple {
	border: solid 1px #016533;
	padding: 5px 20px;
	background: #222;
	cursor: text;
	border-radius: 20px;
	color: #fff;
	font-size: 12px;
}
.form-box .select2-container--default .select2-selection--multiple .select2-selection__rendered {
	padding: 0;
}
.form-box .select2-container--default.select2-container--focus .select2-selection--multiple {
	border: solid 1px #000;
}
.form-box .select2-container .select2-selection--multiple .select2-selection__rendered {
	padding-left: 0;
}
.form-box input[type="submit"] {
	cursor: pointer;
	background: #0877ae;
	border: none;
	color: #fff !important;
	float: none;
	padding: 5px 40px;
	text-decoration: none;
	font-size: 14px;
	line-height: 30px;
	cursor: pointer;
	margin: auto auto;
	display: inline-block;
	text-transform: uppercase;
	border-radius: 2em;
	box-shadow: 1px 1px 6px #880707, 0 0 6px #880707, 0 0 6px #880707;
}
.form-box input[type="button"] {
	padding: 4px 50px;
	cursor: pointer;
	border-radius: 20px;
	background: #fff;
	border: 1px solid #000;
	font-weight: bold;
	font-size: 12px;
	text-transform: uppercase;
	color: #000 !important;
}
.form-box input[type="reset"] {
	padding: 4px 50px;
	cursor: pointer;
	background: #fff;
	border: 1px solid #000;
	font-weight: bold;
	font-size: 12px;
	text-transform: uppercase;
	color: #000 !important;
}
.form-box .form-actions {
	margin: auto;
	clear: both;
	float: none;
	padding: 30px 0 20px;
}
.form-box.login-form .js-form-item {
	display: block;
	padding: 5px 8px;
	float: none;
}
.form-box.login-form .input-group input[type="password"]{
	border-top-right-radius: 0!important;
	border-bottom-right-radius: 0!important;
}

.language-box .form-box .js-form-item {
	display: inline-block;
	padding: 0;
	float: none;
	margin-left: 0px;
}
::-webkit-input-placeholder {
 color: #000;
}

::-moz-placeholder {
 color: #000;
}

:-ms-input-placeholder {
 color: #000;
}

:-moz-placeholder {
 color: #000;
}
.input__full-width {
	width: 100%;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	border: none;
	border-bottom: 2px solid #000;
}
/* radio button */
.section-form-label {
	display: block;
	position: relative;
	padding-left: 35px;
	cursor: pointer;
	user-select: none;
	color: #000;
	text-align: left;
	margin-right: 10px;
}
.section-form-label input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
}
.section-form-label .section-form-checkmark:after {
	top: 3px;
	left: 3px;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: #000;
}
.section-form-label .section-form-checkbox-checkmark:after {
	left: 6px;
	top: 0;
	width: 5px;
	height: 10px;
	border: solid #000;
	border-width: 0 3px 3px 0;
	transform: rotate(45deg);
}
.section-form-label input:checked ~ .section-form-checkmark {
	background-color: #fff;
}
.section-form-label input:checked ~ .section-form-checkmark:after {
	display: block;
}
.section-form-label input:checked ~ .section-form-checkbox-checkmark:after {
	display: block;
}
.section-form-label:hover input ~ .section-form-checkmark {
	border: 1px solid #8e8e8e;
}
.section-form-checkmark {
	border-radius: 50%;
}
.label-float {
	float: left;
	margin: 0 10px;
}
/* checkbox */
.checkbox-label {
	display: block!important;
	position: relative;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	text-align: left;
	font-size: 13px;
	font-weight: 600;
	line-height: 36px;
	background: red;
	background: rgba(0,0,0,0.3);
	padding: 0 5px;
}
.checkbox-label input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.checkmark {
	position: absolute;
	right: 6px;
	height: 36px;
	width: 36px;
	background-color: #000;
	margin-left: 10px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	border: 1px solid #6f6f6f;
}
.checkbox-label:after {
	content: "";
	position: absolute;
	display: none;
}
.checkbox-label input:checked ~ .checkmark:after {
	display: block;
}

/*--------------------*/
/* MENU */
/*--------------------*/
.nav-link {
    letter-spacing: -1px;
}


/* sidebar*/
.bottone-sidebar{
    position: fixed;
    z-index: 100000;
    /* margin-left: -62px; */
    width: 50px;
    top: 10px;
    margin-left: 0;
    background: #910000;
    border-radius: 0 10px 10px 0;
	-webkit-box-shadow: 5px 0px 9px -2px rgba(0,0,0,0.7);
	box-shadow: 5px 0px 9px -2px rgba(0,0,0,0.7);
		-webkit-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
.home.close-sidebar .bottone-sidebar{
    margin-left: 280px;
}
.bottone-sidebar a{
    width:100%;
    display:block;
    text-align:center;
    text-decoration: none;
}
.bottone-sidebar a:after{
    content:"\F0C9";
	font-family:FontAwesome;
	font-size:25px;
	color:#fff;
}
.home.close-sidebar .bottone-sidebar a:after{
    content:"\F00D";
}
.home .sidebar {
	bottom: 0;
	overflow: hidden;
	position: fixed;
	top: 0px;
	-webkit-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
	width: 1px;
	z-index: 6000;
	left: 0;
	border-right: 2px solid #910000;
	padding: 10px 0px 10px 0px;
	background: #d10101;
	overflow-y: auto;
	-webkit-box-shadow: 5px 0px 9px -2px rgba(0,0,0,0.7);
	box-shadow: 5px 0px 9px -2px rgba(0,0,0,0.7);
}
.home.close-sidebar .sidebar {
	width: 280px;
}

.home .sidebar {
    padding-left:0;
}
.home.close-sidebar .sidebar-inner{
	display:block;
	overflow: auto;
	position: relative;
	height: 100%;
	overflow-x: hidden;
}
.home .sidebar-inner{
	display:none;
}
.add-button:after{
    content:"\F067";
    font-family:FontAwesome;
    font-size: 15px;
    padding-left: 5px;
}
.list-client{
	padding:10px 0;
	border-bottom:1px dashed #ccc;
}

.input-spinner {
	width: auto;
	vertical-align:middle;
	display: inline-flex;
	flex-wrap: nowrap;
}
.input-spinner input.form-control {
	border-color: rgb(228, 228, 228);
	text-align: center;
	font-weight: bold;
	max-width: 50px;
	flex-grow: 0;
	flex-basis: 50px;
	height: 43px;
}
.input-spinner .btn {
	width: 42px;
	text-align: center;
	padding-right: 0.5rem;
	padding-left: 0.5rem;
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
	color: #333;
	font-size: 20px;
	font-weight: bold;
	background: #efefef;
}
.fift-col{
	float:left;
	width:50%;
	text-align: center;
}
.select2-container--open {
    /* position: fixed !important; */
    z-index: 9999;
}
.select2-container--focus {
    position: relative !important
}
.catalog-filters{
	padding:10px 15px;
	border-top: 1px solid #fff;
	color:#fff;
}
.catalog-filters h3{
	padding: 0 0 10px;
	font-size:18px;
	color:#fff;
	margin: 0;
}
.catalog-filters h4{
	padding: 0 0 5px;
	font-size:16px;
	color:#fff;
	margin: 0;
}

.catalog-filters h3 a,
.catalog-filters h4 a,
.catalog-filters h3 a:hover,
.catalog-filters h4 a:hover,
.catalog-filters h3 a:visited,
.catalog-filters h4 a:visited {
	color:#ffffff;
	text-decoration: none;
	cursor: pointer;
}

.catalog-filters .form-element-item{
	padding: 5px 0;
	border-bottom: 1px dashed #fff;
}
.catalog-filters .form-element-item .form-group{
	margin:0;
}
.catalog-filters .form-element-item p{
	padding:0;
	margin:0;
}
.catalog-filters .form-element-item label{
	color:#fff;
	text-align:center;
	display:block;
	padding: 0;
	margin: 0;
	font-size: 11px;
}
.input-group-append {
	margin-left: -1px;
	display: flex;
}
.catalog-filters .search-button{
	flex: 1 1 auto;
	width: 85%!important;
}

.form-element-item button {
   border: none;
   border-radius: 5px;
   padding: 5px 14px;
   font-size: 15px;
   color: #fff;
}
.input-group-append button {
   border-radius: 0 5px 5px 0;
	   font-size: 13px;
padding: 5px 11px;}

.form-element-item.alt {
   background: #0084ff;
   color: #fff;
   margin-top: 40px;
   width: 200px;
}

.form-element-item.alt button {
   background: #fff;
   color: #000;
}



/* cart box */
/* sidebar*/
.bottone-cart-box{
    /* position: absolute; */
    z-index: 100000;
    /* margin-left: -62px; */
    width: 70px;
    bottom: 10px;
    right:20px;
    background: #910000;
    border-radius: 10px 10px 0 0;
    -webkit-box-shadow: 0px 5px 9px -2px rgba(0,0,0,0.7);
    box-shadow: 0px -5px 9px -2px rgba(0,0,0,0.7);
    -webkit-transition: all .2s ease;
    -o-transition: all .2s ease;
    transition: all .2s ease;
    z-index: 5000;
    float: right;
    margin-top: -61px;
}
.home.open-cart-box .bottone-sidebar{
}
.bottone-cart-box button{
    width:100%;
    display:block;
    text-align:center;
    text-decoration: none;
}
.bottone-cart-box button:after{
    content:"\F062";
	font-family:FontAwesome;
	font-size:24px;
	color:#fff;
	padding:0 5px;
}
.bottone-cart-box button i:after{
	content: "\F07A";
    font-family: FontAwesome;
    font-size: 28px;
    color: #fff;
	padding:0 5px;
}

.home.open-cart-box .bottone-cart-box button:after{
    content:"\F00D";
}


.home .cart-box {
	bottom: 0;
	/* overflow: hidden; */
	position: fixed;
	bottom: 0px;
	right: 15px;
	-webkit-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
	width: 220px;
	z-index: 9999;
	border-top: 2px solid #910000;
	padding: 23px 0px 10px 0px;
	background: #fff;
	/* overflow-y: auto; */
	-webkit-box-shadow: 0px -5px 9px -2px rgba(0,0,0,0.7);
	box-shadow: 0px -5px 9px -2px rgba(0,0,0,0.7);
	height: 1px;
	border-radius: 10px 0 0 0;
}
.home.open-cart-box .cart-box {
	height: calc(100vh - 40px);
	width: 98%;
}
.home.open-cart-box .cart-box-overlay {
	position:absolute;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	z-index:8000;
	background: rgba(0, 0, 0, 0.6)
}
.home .cart-box .sidebar-inner{
	display: none;
	overflow: auto;
	position: relative;
	height: 100%;
	overflow-x: hidden;
}
.home.open-cart-box .sidebar-inner{
	display:block;
}
.cart-total{
	position:absolute;
	top: 0;
	color:#fff;
	text-align:right;
	width:100%;
	padding: 0 15px 3px;
	background: red;
	border-radius: 10px 0 0 0;
}
.cart-total strong{
	font-size:20px;
	color:#fff;
}
.carrello .cart-total strong{
	color:#444;
}
.product-in-cart{
	margin-top: 10px;
	border-top: 1px solid var(--light);
	/* color:#fff; */
}
.product-in-cart ul {
    padding: 0 0 15px;
	margin:0;
}
.product-in-cart ul li{
	border-bottom: 1px dashed var(--light);
	padding: 10px 0;
	margin: 0;
	list-style: none;
}

#prodotti_carrello .product-item {
    padding-bottom: 1em;
	border-bottom: 1px dashed var(--light);
}
.product-item p {
	padding:0;
	margin:0;
}
.cart-product-thumb-box{
	width: 70px;
	padding: 0;
}
.cart-product-thumb{
	width: 70px;
	height:100%;
	padding: 2px;
	border: 1px solid #ccc;
	border-radius: 5px;
}
.cart-product-thumb img{
	width: 100%;
	height:auto;
}
.cart-product-name {
	padding: 0 15px;
	width: 30%;
}
.cart-product-price{
	padding: 0 15px;
	width: 30%
}
.cart-product-totalprice{
	padding: 0 15px;
	font-weight:800;
	width: 150px;
	text-align:right;
	font-size: 16px;
}

.product-item .input-spinner .btn {
	width:22px;
	text-align: center;
	padding-right: 0.5rem;
	padding-left: 0.5rem;
	color: #333;
	font-size:11px;
	font-weight: bold;
	background: #efefef;
}
.product-item .input-spinner input.form-control {
	border-color: rgb(228, 228, 228);
	text-align: center;
	font-weight: bold;
	max-width: 70px;
	flex-grow: 0;
	flex-basis: 85px;
	height: 30px;
}
.pulsanti-prodotto-carrello div{
    padding: 0 8px;
    width:50%;
    text-align:center;
    float:left;
}
.quantity-button {
	padding: 0 15px;
	width: 30%;
}
.quantity-button .input-spinner {
	width: auto;
	vertical-align:middle;
	display: flex;
	flex-wrap: inherit;
}
.product-item.product-item-header *{
	font-size: 12px!important;
	font-weight:600!important;
	text-align:center!important;
}
.carrello .cart-client{
	line-height:30px;
}
.carrello .cart-total{
	position:relative;
	color:#444;
	text-align: right;
	width: 50%;
	padding: 0 25px 3px 15px;
	background: transparent;
	border-radius: 0;
}

.old-price {
    text-decoration:line-through red 3px;
    font-size: small;
    font-weight: 100;
}

.discounted-price {
    font-size: medium;

}

.orders-list,
.clients-results{
	padding: 0 0 30px;
}
.orders-list .form-element-item,
.clients-results .form-element-item{
	width:300px;
	padding: 0 0 10px 10px;
}
/*table tr{
	border-bottom:1px dashed #ccc;
}
table td{
	padding: 5px!important;
	border-left:1px dashed #ccc;
	border-right:1px dashed #ccc;
}
table.dataTable thead th {
    padding: 5px 18px 5px 5px!important;;
}
table th{
	background:#ccc;
	text-align:center;
	border-left:1px dashed #fff;
	border-right:1px dashed #fff;
}*/
.orders-tools{
	width:100px;
}
.zoomphoto img{
    width: 100%;
	margin:auto!important;
	height: auto;
	max-height: 100%;
	border-radius: 3px;
}
.zoomphoto .modal-body{
	display:flex;
	justify-content: center;
	align-items: center;
}
.zoomphoto-ico{
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
    height: 40px;
}
.zoomphoto-ico a{
	display:block;
	width:100%;
	height:100%;
	text-decoration:none;
}
.zoomphoto-ico a:after{
	content:"\F0B2";
	font-family:FontAwesome;
	font-size:25px;
	color:#ccc;
	background:#fff;
}
.form-control {
    height: 28px;
    padding: 2px 12px;
}
.input-group-addon {
    font-size: 12px;
}
.datepicker.datepicker-dropdown{
	max-width: 300px;
}
.fixed-col{
	width: 20px!important;
}
.alert{
	color:red;
}
.crea-pdf-ico span:after{
	content:"\F1C1";
	font-family:FontAwesome;
	font-size: 18px;
	color:#fff;
	padding-left: 10px;
}
.invia-ordine-ico span:after{
	content:"\F1D8";
	font-family:FontAwesome;
	font-size: 18px;
	color:#fff;
	padding-left: 10px;
}
.continua-acquisti-ico span:after{
	content:"\F0E2";
	font-family:FontAwesome;
	font-size: 18px;
	color:#fff;
	padding-left: 10px;
}

.flex-box{
	display:flex;
}
.due-schede .flex-box{
	height: 100%;
	flex-direction: column;
}
.modal-title {
	font-size: 22px;
	font-weight: bold;
	padding: 0;
	margin: 0;
}
.modal-header .close{
	position: absolute;
    right: -10px;
    top: -10px;
    opacity: 1;
    padding: 2px 4px;
    border-radius: 4px;
    color: #fff;
}
.dataTables_wrapper{
	margin: 20px 0;
}
.vista-lista{
	background: red;
    width:100%;
	padding: 15px;
}
.vista-lista .list-item{
	background: #fff;
    display: flex;
    flex-direction: row;
    height: 220px;
    padding: 10px;
    border-radius: 15px;
	position:relative;
	margin: 0 0 10px;
	overflow: hidden;
}
.vista-lista .product-photo {
    width: 200px;
}
.vista-lista .product-photo img {
    /*width: auto;*/
    /*height: 96%;*/
	margin: 0 2px;
}
.vista-lista .product-spec {
    border-radius: 20px;
    text-align: left;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    height: 100%;
    float: left;
    width: calc(100% - 200px);
    padding: 0 10px;
}
.vista-lista .product-title {
    font-size: 18px;
}
.vista-lista .cart-tools {
    margin: 0;
    padding: 0;
    position: absolute;
    bottom: 10px;
}
.vista-lista .product-price {
    text-align: center;
    border-top: 1px dashed #ccc;
    border-bottom: 1px dashed #ccc;
    padding: 10px 0;
    font-size: 16px;
    width: 50%;
    float: left;
}
.vista-lista .form-group {
    width: 50%;
    float: left;
    margin: 0;
}
.vista-lista .form-group .margin-tb-20 {
    margin: 5px 0!important;
}
.icone-viste{}
.icone-viste p{
	width: 20px;
    margin: 0 10px;
    display: inline-block;
}
.icone-viste p img{
	width:100%;
	height:auto;
}
.thumb-col img{
	width:100px;
	height:auto;
}
.icona-alert {
  position: relative;
}
.icona-alert span {
  visibility: hidden;
  min-width: 80px;
  background-color: #eee;
  color: #000;
  text-align: center;
  border-radius: 3px;
  padding: 5px;
  position: absolute;
  z-index: 1;
  bottom:30%;
  left:50%;
}
.icona-alert:hover span {
  visibility: visible;
}
.icona-alert.regular:hover span {
  visibility: hidden;
}
.icona-alert:before{
	content:" ";
	border-radius:50%;
	width:15px;
	height:15px;
	line-height:40px;
	display:block;
	margin:auto
}
.fattura-scaduta:before{
	background-color:red;
}
.fattura-in-scadenza:before{
	background-color: #ff9d00;
}
.ordine-aperto:before{
	background-color: #0087ff;
}
.no-ordini:before{
	background-color: #959595;
}
.white-text{
	color:#fff !important;
}
.white-text a{
	color:#fff;
}
.flag {
	position: absolute;
	margin-left:auto;
	top: 25px;
	left: -35px;
	background:orange;
	width:150px;
	height:25px;
	transform: rotate(-45deg);
	text-align:center;
	font-size:15px;
	text-transform:uppercase;
	font-weight:bold;
}
.lista-home{
	background: red;
    width:100%;
	padding: 15px;
}
/*.lista-home .list-item{
	background: #fff;
    display: flex;
    flex-direction: row;
	width:100%;
    height: 100%;
    padding: 10px;
    border-radius: 15px;
	position:relative;
	margin: 0 0 10px;
	overflow: hidden;
}
.lista-home .list-item a{
    display: block;
	width:100%;
    height: 100%;
}
.lista-home .list-item img{
	width:100%;
    height: auto;
}
*/
.lista-home .list-item{
	margin: 0 0 10px;
}
.row.display-flex {
  display: flex;
  flex-wrap: wrap;
}
.thumbnail {
  height: 100%;
  padding: 10px;
  border-radius: 15px;
  position: relative;
  margin: 0;
  border: none;
  display: flex;
  flex-direction: column;
}
.thumbnail .caption {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  padding: 0;
}

.thumbnail .caption h1 {
	font-size: 3vw;
	text-align: center;
}

.thumbnail .caption p {
	font-size: 1.5vw;
	text-align: center;
}

.thumbnail a {
	display: flex;
	height: 100%;
}

.thumbnail a:hover,
.thumbnail a:link,
.thumbnail a:visited {
	text-decoration: none !important;
}

.thumbnail .caption a.btn{
	display: flex;
	height: auto;
	align-self: center;
}

a.item-body {
	display: inline-block;
	height: 100%;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


/* sidebar cart */
.bottone-carrello{
    position: fixed;
    z-index: 100000;
    right: 647px;
    width: 50px;
    height: 50px;
    bottom: 20px;
    background:var(--primary);
    border-radius:10px 0 0 10px;
    text-align: -webkit-center;
    vertical-align: middle;
	-webkit-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
	border-color: var(--tertiary);
	border-style: solid;
	border-width: 2px 0px 2px 2px;
}
.cart.is-collapsed .bottone-carrello{
    right: 0px;
}
.shopping-bag {
    width:30px;
    display:block;
    text-decoration: none;
    filter: invert(56%) sepia(99%) saturate(3859%) hue-rotate(12deg) brightness(108%) contrast(96%); /* https://codepen.io/sosuke/pen/Pjoqqp per cambiare il colore all'SVG */
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
    position: absolute;
}
.colored-svg {
    filter: invert(56%) sepia(99%) saturate(3859%) hue-rotate(12deg) brightness(108%) contrast(96%);
}

.container-wide {
	padding-right: 280px;
	-webkit-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
@media screen and (max-width:991px) {
	.cart.is-collapsed{
		overflow-x: hidden;
	}

	.container-wide {
		min-width: 100%;
	}
}
.is-collapsed .container-wide {
	padding-right: 1px;
}
.cart .sidebar {
	bottom: 0;
	overflow: hidden;
	position: fixed;
	top: 0;
	-webkit-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
	width: 650px;
	z-index: 9999;
	right: 0;
	overflow: auto;
	border-left: 2px solid var(--tertiary);
	padding:10px 0px 10px 10px;
	background: var(--primary);
	color: var(--tertiary);
}
.cart.is-collapsed .sidebar {
	width: 1px;
}
.cart.is-collapsed .sidebar {
    padding-left:0;
}
.cart .sidebar-inner{
	display:block;
	overflow: auto;
	position: relative;
	height: 100%;
	scrollbar-width: none;
}
.cart .sidebar-inner::-webkit-scrollbar {
    display: none;
}
.sidebar {
    scrollbar-width: none;
}

.sidebar::-webkit-scrollbar {
    display: none;
}
.cart.is-collapsed .sidebar-inner{
	display:none;
}
.product-price span,
.product-copies span{
	font-size:20px;
}
.table-cart{
	font-size: 14px;
	/* background:#fff; */
}
.table-cart td, .table-cart th{
	padding:4px;
}
.table-cart tr{
	background:#fff;
}
.table-cart tr:nth-child(2n+2){
	background: none!important;
}
.table-cart td{
	border-bottom:none;
	border-top: 1px solid #a1a1a1;
	background: none;
}
.table-cart h3 {
	font-size: 16px;
	padding: 0 0 5px;
}
.table-cart h4 {
	padding: 0 0 5px;
}
.table-cart .btn {
    padding: 5px;
}
.table-cart .pulsanti-prodotto-carrello div{
    padding: 5px;
	width:50%;
	text-align:center;
	float:left;
}
.item-prodotto{
	margin-bottom:20px;
}
.input-spinner {
	width: 125px;
	vertical-align:middle;
	display: inline-flex;
	flex-wrap: nowrap;
}
.input-spinner input.form-control {
	border-color: rgb(228, 228, 228);
	text-align: center;
	font-weight: bold;
	max-width: 46px;
	flex-grow: 0;
	flex-basis: 46px;
}
.input-spinner .btn {
	width: 42px;
	text-align: center;
	padding-right: 0.5rem;
	padding-left: 0.5rem;
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
	color: #333;
	font-size: 20px;
	font-weight: bold;
	background: #efefef;
}
.light-border {
    border-color: var(--light) !important;
}
.dark-border {
    border-color: var(--dark) !important;
}
.grey-border {
    border-color: var(--body-bg) !important;
}
.primary-border {
    border-color: var(--primary) !important;
}
.secondary-border {
    border-color: var(--secondary) !important;
}
.tertiary-border {
    border-color: var(--tertiary) !important;
}
.primary-color {
    color: var(--primary);
}
.secondary-color {
    color: var(--secondary);
}
.tertiary-color {
    color: var(--tertiary);
}
.black-color {
    color: black;
}

.pagebreak {
    border-style: solid;
    border-width: 1px 0px 0px 0px !important;
}
.offcanvas {
    width: 500px !important;
}

.bottone-acquista{
	border-left:1px solid #ccc;
}
@media (max-width: 576px){
	.bottone-acquista{
		border-left:none;
		border-top:1px solid #ccc;
	}
}

.totale-carrello span{
    font-weight: 600;
    font-size: 18px;
    background: red;
    color: #fff;
    padding: 6px;
    display: inline-block;
    border-radius: 8px;
}

.show-badge {
    -webkit-animation: show 5s forwards;
    animation: show 5s forwards;
}
@keyframes show {
    0%   {opacity: 1;}
    90%  {opacity: 1;}
    100% {opacity: 0;}
}
@-webkit-keyframes show {
    0%   {opacity: 1;}
    90%  {opacity: 1;}
    100% {opacity: 0;}
}

.modal {
    top:80px;
}

.overlay {
    z-index: 2000;
    position: fixed;
}

.page-image {
    height: 15vw;
    width: auto;
}

.accordion-button:not(.collapsed) {
    background-color: var(--body-bg);
    color: var(--dark);
}

.accordion-button:focus {
    border-color: var(--dark);
    box-shadow: none;
}

.accordion-button:not(.collapsed)::after {
    background-image: var(--bs-accordion-btn-icon);
}

.page-link {
    color: var(--light);
    background-color: var(--dark);
}

.active>.page-link, .page-link.active {
    color: var(--dark);
    background-color: var(--light);
    border-color: var(--light);
}

.disabled>.page-link, .page-link.disabled {
    background-color: rgb(157 139 139);
}

.full-screen-modal {
    height: 90%;
    width: 100%;
    z-index: 1000;
    transition: 1s;
    padding: 1rem;
}

.full-screen-modal-inner {
    height: 100%;
    width: 100%;
    background-color: white;

}

.loading-spinner {
    height: 0px;
    width: 100%;
    z-index:10000;
    left: 0;
    top: 0;
    background-color: rgb(255, 255, 255); /* fallback color */
    background-color: rgba(255, 255, 255, 0.9); /* w/opacity */
    overflow-x: hidden; /* Disable horizontal scroll */
    transition: 0.5s; /* 0.5 second transition effect to slide in or slide down the overlay (height or width, depending on reveal) */
    position: fixed;
}
.loading-spinner img {
    position: relative;
    top: calc(50vh - 75px);
    left: calc(50vw - 75px);
    animation-name: rotate;
    animation-duration: 2.0s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}
@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.productpage #goto-products-btn {
    display: none;
}


.top-right-icon {
    position: relative;
    top: -10%;
    left: 90%;
    z-index: 1;
}
.top-right-icon i {
    margin-right: 0.25em;
}

.tooltip-icon {
    position: relative;
    align-self: center;
}

.tooltip-icon .tooltip-content {
    min-height: max-content;
    width: 250px;
    background-color: var(--primary);
    display: none;
    position: absolute;
    padding: 1em;
    line-height: 1.3em;
    top: 100%;
    translate: -50%;
    border: 1px black solid;
    border-radius: 5px;
    z-index: 1000;
}

.tooltip-icon:hover .tooltip-content {
    display: block;
}
.quantity-btn-group input, .quantity-btn-group button {
    width: 40px;
    height: 40px;
    text-align: center;
    font-size: 25px;
    vertical-align: middle;
}
.nowrap {
    white-space: nowrap;
}
img.select-border:hover {
    box-shadow: 0 0 0 4px #a78bfa !important;
}
#is-not-human {
    opacity: 0;
    cursor: default;
    width: 10px;
    height: 0px;
    padding: 0px !important;
}
#sidebar-toggle {
    width: 100%;
    height: 100%;
    background-color: transparent;
    border: none;
}
.underline {
    text-decoration-line: underline;
}
.cursor-pointer {
    cursor: pointer;
}

label:empty {
    display: none;
}


.toast-messages-box {
    width: min(450px, 80dvw);
    max-width: 80dvw;
    position: fixed;
    bottom: 2em;
    right: 2em;
    background-color: white;
    padding: 0.5em;
    border: 1px solid;
    border-radius: 0.5em;
    z-index: 100000000;
}

.toast-messages-box.hidden {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s 0.25s, opacity 0.25s linear;
}
.toast-messages-box .btn-close {
    top: 0.6em;
    right: 0.6em;
    color: rgba(var(--primary), 1);
}
.toast-messages-box .title {
    margin: 0;
    width: 100%;
    border-radius: 0.25em;
    background-color: rgba(var(--primary), 1);
    color: rgba(var(--secondary), 1);
    padding: 0.5em;
    font-weight: 600;
}
.toast-messages-box .messages-box {
    /* padding-inline: 0.5em; */
}
.toast-messages-box .messages-box p {
    padding: 0.5em;
    border-radius: 0.25em;
    margin-top: 0.5em;
    margin-bottom: 0;
}

.toast-messages-box .messages-box .success {
    background-color: rgba(94, 116, 68, 1);
    color: white;
}
.toast-messages-box .messages-box .error {
    background-color: rgba(217, 30, 54, 1);
    color: white;
}
.toast-messages-box .messages-box .warning {
    background-color: var(--tertiary);
    color: rgba(var(--secondary), 1);
}
.toast-messages-box .messages-box :is(.success, .error) a {
    color: rgba(var(--primary), 1);
}
.toast-messages-box .messages-box .warning a {
    color: rgba(var(--secondary), 1);
}



/* festadellazucca E NON HALLOWEEN ;) */

.festadellazucca-navbar-picture{
    width:100px;
    height:auto;
    margin-left:20px;
}
    .festadellazucca-icon{
    width:20px;
    }
    .festadellazucca-title-text{
    color: #A64215;
    }
    .festadellazucca-text{
    color: #d37245 !important;
    }

	.festadellazucca-btn {
		width: 100% !important;
		background-color: #A64215 !important;
		color: white;
		padding: 15px; /* Aumentiamo il padding per un aspetto più "spazioso" */
		font-size: 2rem; /* Impostiamo una dimensione base più grande */
		text-align: center;
		border: none;
		border-radius: 5px;
		cursor: pointer;
		transition: background-color 0.3s ease;
		text-transform: none; /* Manteniamo il testo in formato normale (senza maiuscole forzate) */
	}
	
	/* Aumentiamo leggermente la dimensione del testo quando la card è in hover */
	.festadellazucca-btn:hover {
		background-color: #8B3712; /* Scuro il colore del pulsante al passaggio del mouse */
	}
	
	/* Rende il testo del pulsante responsive */
	@media (max-width: 768px) {
		.festadellazucca-btn {
			font-size: 1.2rem; /* Riduciamo la dimensione del testo su dispositivi mobile */
		}
	}
	
	@media (max-width: 480px) {
		.festadellazucca-btn {
			font-size: 1rem; /* Ulteriore riduzione della dimensione su schermi molto piccoli */
		}
	}
	
	.festadellazucca-btn:hover {
		background-color: #8B3712; /* Scuro il colore del pulsante al passaggio del mouse */
	}