.sidebar-main {
	position: fixed;
	top: 20px;
	right: 20px;
	bottom: 20px;
	width: 400px;
	height: calc(100vh - 40px);
	overflow: hidden;
	transition: width 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);
	box-shadow: 0 0 30px rgba(0,0,0,0.2);
	border-radius: 15px;
	background: white;
	z-index: 9999;
	left: auto;
	padding: 35px 0 0;
	color:#444343;
	text-align:center;
	font-family: 'Lato', sans-serif;
	transition: width 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);
	display:none;

	a {
		color:#444343;
	}
	a:hover {
		color:var(--secondary-color);
	}

	&.active {
		display:block;
	}
	&.no-transition {
		transition:none;

		.sidebar-content {
			transition:none !important;
		}
	}

	.close-button {
		position: absolute;
		top: 22px;
		right: 20px;
	}

	.back-button {
		position: absolute;
		left: -40px;
		top: 25px;
		margin-top: 0px;
		transform: scale(1);
		background: transparent;
		border: medium;
		color: rgb(68, 67, 67);
		padding: 0px;
		width: 32px;
		height: 32px;
		align-items: center;
		justify-content: center;
		transition: left 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);
		z-index: 100;
		opacity: 0;

		.material-icons {
			font-size: 18px;
			font-weight: 300;
		}

		&.active {
			opacity: 1;
			left: 10px;
		}

		&:hover {
			transform: scale(1.1);
		}
	}

	.header {
		display: block;

		.logo {
			width:100%;
			display:flex;
			justify-content: center;

			.sidebar-logo-header {
				height:32px;
				width:auto;

				svg {
					height:100%;

					.cls-1 {
						color:var(--secondary-color);
						fill: var(--secondary-color) !important;
						stroke: var(--secondary-color) !important;
					}
				}
			}
		}
	}

	.titolo {
		width:100%;
		text-transform: uppercase;
		font-size: 16px;
		font-weight: 800;
		color: #ffaeae;
		font-weight: 800;
		margin-bottom: 18px;

		&.principale {
			margin-bottom: 29px;
			margin-top: 10px;
		}
	}

	.content-wrapper {
		position: relative;
        display: block;
        width: 100%;
        height: calc(100% - 180px);
        overflow: auto;
        scrollbar-width: none;
	}

	.sidebar-content {
		color: #000000;
		position: absolute;
		top: 0;
		left: 0;
		right: auto;
		width: 100%;
		transform: translateX(100%);
		opacity: 0;
		visibility: hidden;
		transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s;
		padding: 0 35px 35px 35px;
		scrollbar-width: none;

		&.main {
			transform: translateX(-100%);
		}

		&.active {
			transform: none;
			visibility: visible;
			opacity: 1;
		}

		&.remove {
			transform: translateX(100%);
			visibility: visible;
			opacity: 1;
		}

		.titolo-content {
			display:none;
		}

		.menu {
			list-style:none;
			margin:0;
			padding:0;
			font-weight: 400;

			li {
				list-style:none;
				margin:0;
				padding:0;

				a {
					color: #000000;
					transition: all 0.3s ease;
				}

				a:hover {
					color:var(--secondary-color);
				}

				margin-bottom: 2px;
			}
		}

		.divider {
			width:100%;
			height:40px;
		}

		label {
			padding: 5px 20px;
			font-size: 14px;
			line-height: 18px;
			color: #333;
		}

		input[type="password"],
		input[type="text"] {
			font-weight: 700;
			width: 100%;
			margin: 0;
			margin-bottom: 8px;
			padding: 10px 10px 10px 10px;
			background-color: #f8f8f8 !important;
			border: none;
			border-radius: 10px;
			font-size: 16px;
			line-height: 16px;
			text-align: center;
		}

		.buttonrounded,
		input[type="submit"] {
			right: 0;
			bottom: 0;
			width: auto !important;
			margin: 10px 0 0 0;
			padding: 12px 35px 12px 35px;
			background-color: #ffc9c9;
			border: 0;
			border-radius: 20px;
			font-size: 16px;
			font-weight: 400;
			line-height: 16px;
			color: #ffffff;
			text-align: center;
			vertical-align: middle;
			cursor: pointer;
			-moz-osx-font-smoothing: grayscale;
			-ms-text-size-adjust: 100%;
			-webkit-font-smoothing: antialiased;
			-webkit-tap-highlight-color: transparent;
			-webkit-text-size-adjust: 100%;
			box-sizing: border-box;
			font-synthesis: none;
		}

		.buttonrounded:hover,
		input[type="submit"]:hover {
			transform: scale(0.98);
			transition-delay: 0s;
			transition-duration: 0.3s;
		}

		.accordion {
			.accordion-content {
				overflow: hidden;
				transition: max-height 0.3s ease;
				max-height:0px;
			}
		}


		.faq-wrapper {
			padding:35px;

			.faq-cate {
				padding-bottom:20px;
			}

			.faq-item {
				text-align:left;
				border-bottom: 1px solid #f0f0f0;
				margin-bottom: 15px;

				.title {
					display: flex;
					position: relative;
					margin: 0;
					margin-bottom: 5px;
					padding-top: 15px;
					padding-right: 30px;
					font-size: 16px;
					font-weight: 800;
					line-height: 1;
					color: #000000;
					text-decoration: none;
					transition: color 0.3s ease;
					-moz-osx-font-smoothing: grayscale;
					-ms-text-size-adjust: 100%;
					-webkit-font-smoothing: antialiased;
					-webkit-tap-highlight-color: transparent;
					-webkit-text-size-adjust: 100%;
					flex-direction: column;

					&::after {
						box-sizing: border-box;
						color: #999;
						content: '\e5cf';
						font-family: 'Material Icons';
						font-size: 20px;
						position: absolute;
						right: 0;
						top: 50%;
						transform: translateY(-50%);
						transition: transform 0.3s ease;
					}
				}
				.title:hover {
					color:#ffaeae;
				}

				.subtitle {
					margin-top: 2px;
					margin-bottom: 8px;
					font-size: 16px;
					font-weight: 400;
					color: #262626;
				}
			}

		}

		.sidebar-cart {
			.cart-recap {
				padding-top:40px;
				width:100%;
				font-size: 20px;
				margin-bottom: 6px;
				text-align:left;
				line-height:1;

				.amount {
					color:#ffb2b2;
				}
			}

			.titolo-items {
				margin-bottom: 8px;
			}

			.description {
				line-height:1;
				text-align:left;
			}

			.checkout-wrapper {
				display:block;
				overflow:hidden;
				width:100%;
				text-align:right;
				padding-bottom:30px;
			}

			.product {
				padding-bottom:40px;

				.product-preview {
					display: flex;
					height: 110px;
					margin: 0;
					padding: 0;
					background-position: left top;
					background-repeat: no-repeat;
					background-size: 600px;
					border: 0;
					border-radius: 10px;
					align-items: center;
					flex-direction: row;
					justify-content: flex-end;
					background-color: #f7f7f7;

					.box {
						display: inline-block;
						text-align: center;
						margin: 0 20px 0 0;

						.label {
							font-size: 10px;
							font-weight: 700;
							color: #999;
							text-transform: uppercase;
							letter-spacing: 0.5px;
							margin: 0 0 2px 0;
							padding-bottom: 2px;
						}

						.wrapper {
							display: flex;
							align-items: center;
							justify-content: space-between;
							margin: 0;
							padding: 12px 24px 12px 24px;
							position: relative;
							right: 0;
							bottom: 0;
							background-color: #ffffff;
							border: 0;
							border-radius: 20px;
							font-size: 16px;
							font-weight: 400;
							line-height: 16px;
							color: #404040;

							button {
								position: absolute;
								top: 50%;
								transform: translateY(-50%);
								border: none;
								background: none;
								width: 24px;
								height: 24px;
								border-radius: 50%;
								display: flex;
								align-items: center;
								justify-content: center;
								cursor: pointer;
								transition: all 0.2s cubic-bezier(0.4, 0.0, 0.2, 1);
								padding: 0;
								font-size: 16px;
								line-height: 1;
								color: #666;
								user-select: none;
							}

							button.btn-minus {
								left: 10px;
							}
							button.btn-plus {
								right: 10px;
							}
							button.disabled {
								opacity: 0.3;
								cursor: not-allowed;
								pointer-events: none;
							}
						}
					}

					.box.box-qty {
						.wrapper {
							padding: 12px 35px 12px 35px;
						}
					}

					.box:hover {
						transform: scale(0.98);
						transition-delay: 0s;
						transition-duration: 0.3s;
					}
				}

				.product-details {
					padding: 20px 20px 0 20px;
					width: 100%;
                    overflow: hidden;
                    color: #333;
                    font-weight: 700;

					.name {
						font-size: 18px;
						text-align: left;
						float:left;
					}
					.price {
						font-size: 16px;
						font-weight: 700;
						text-align: right;
						float:right;
					}
				}

				.product-actions {
					padding: 0 20px;
					font-size: 16px;
					font-weight: 400 ;
					color: #ffaeae;
					text-align: left;

					a {
						color: #ffaeae;
					}
				}
			}

			.cart-details {
				padding: 25px 20px 25px 25px;

				.item {
					width:100%;
					overflow:hidden;

					.label {
						float:left;
						font-size: 16px;
						font-weight: 700;
						color: #333;
					}
					.value {
						float:right;
					}
					.bold {
						font-size: 16px;
						font-weight: 700;
					}
				}
			}

			.cart_totals {
				padding: 25px 20px 0 25px;
				h2 {
					display:none;
				}

				table {
					width:100%;

					th {
						text-align:left;
					}
					td {
						text-align:right;
					}

					.woocommerce-shipping-methods {
						list-style:none;
						padding:0;
						margin:0;
					}
					label {
						padding:0;
						font-size: 16px;
						line-height: 1;
						color: #333;
					}
				}
			}

		}

	}



}


