/* .woocommerce-loop-product__buttons,
    li.product .price,
    .cc-compass,
    .elementor-add-to-cart,
    .menu-item-53 {
        display: none !important;
    }
        */
/* I've edited your css to show add to cart on addons since they are not part of the subscription*/
.woocommerce-loop-product__buttons,
li.product .price,
.cc-compass,
.elementor-add-to-cart,
.menu-item-53,
.woocommerce-form-coupon-toggle {
	display: none !important;
}

/* don't know why you set this rule but i had to commment it because of the shop page  */
/* .woocommerce-shop {
	overflow: hidden;
} */

.menu-item-4596 a {
	background-color: #dc1f26;
	color: white !important;
	padding: 12px 40px !important;
	border-radius: 4px;
	text-transform: uppercase;
	font-weight: 600;
	display: inline-block;
	transition: 0.2s ease;
}

.elementor-editor-active .woocommerce-loop-product__buttons,
.elementor-editor-active li.product .price,
.elementor-editor-active .cc-compass,
.elementor-editor-active .elementor-add-to-cart,
.elementor-editor-active .menu-item-53,
.product_cat-add-ons .woocommerce-loop-product__buttons,
.product_cat-add-ons li.product .price,
.product_cat-add-ons .cc-compass,
.product_cat-add-ons .elementor-add-to-cart {
	display: revert !important;
}

.ahhmaa-meal-selection {
	font-family: Poppins, sans-serif;
	margin: 0px auto;
	max-width: 1060px;
	padding: 20px 0px;
}

.ahhmaa-meal-selection h2 {
	font-size: 30px;
	font-weight: 600;
	text-transform: uppercase;
}

.ams-delivery-date {
	align-items: center;
	display: flex;
	gap: 30px;
	justify-content: center;
}

.ams-delivery-date > span {
	cursor: pointer;
}

.ams-delivery-date h2 {
	font-size: 22px;
	text-align: center;
}

.ams-container {
	display: flex;
	justify-content: space-between;
}

.ams-container > div {
	width: 33%;
}

.ams-left {
	padding-top: 0px !important;
}

.ams-left-row {
	margin-bottom: 20px;
}

.ams-left-row label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.ams-left-row div span {
	border: 1px solid #000000;
	border-radius: 6px;
	cursor: pointer;
	display: inline-block;
	font-weight: 600;
	padding: 5px 10px;
}

.ams-left-row span.active {
	background: #dc1f26;
	color: #ffffff;
}

.ams-tnc {
	font-size: 14px;
	line-height: 25px;
}

.ams-right {
	width: 300px;
}

.ams-order-summary {
	background: #f8f8f8;
	border-radius: 8px;
	font-size: 16px;
	padding: 20px;
}

.ams-order-summary h3 {
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
}

.ams-order-summary p {
	font-size: 14px;
}

.ams-order-product {
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: space-between;
	margin-bottom: 10px;
}

.ams-order-product label {
	flex-grow: 1;
	line-height: 20px;
}

.ams-order-product span:first-child {
	cursor: pointer;
}

.ams-order-product > div {
	text-align: right;
	width: 150px;
}

.ams-order-product > div span:first-child {
	cursor: auto;
	font-weight: 600;
	text-decoration: line-through;
}

.ams-order-product span:last-child {
	color: #dc1f26;
	font-size: 17px;
	font-weight: 600;
}

.ams-order-product-remove svg {
	line-height: 0px;
	width: 18px;
}

.ams-order-box-price {
	align-items: center;
	/* border-top: 1px solid #ddd; */
	display: none;
	justify-content: space-between;
	/* padding-top: 10px; */
}

.ams-order-box-price span:first-child {
	text-decoration: line-through;
}

.ams-order-box-price span:last-child {
	color: #dc1f26;
	font-size: 17px;
	font-weight: 600;
}

.ams-order-addons {
	align-items: center;
	display: none;
	justify-content: space-between;
}

.ams-order-addons span:first-child {
	text-decoration: line-through;
}

.ams-order-addons span:last-child {
	font-size: 17px;
	font-weight: 600;
}

.ams-order-subtotal {
	align-items: center;
	display: none;
	justify-content: space-between;
}

.ams-order-subtotal span:first-child {
	display: none;
	text-decoration: line-through;
}

.ams-order-subtotal span:last-child {
	font-size: 17px;
	font-weight: 600;
}

.ams-order-additional-fees {
	border-bottom: 2px solid #000;
	display: none;
	margin: 5px 0px 25px 0px;
	padding-bottom: 10px;
}

.ams-order-additional-fee {
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: space-between;
	line-height: 20px;
	margin-bottom: 10px;
}

.ams-order-additional-fee:last-child {
	margin-bottom: 0px;
}

.ams-order-additional-fee span:first-child {
	text-decoration: line-through;
}

.ams-order-additional-fee span:last-child {
	color: #dc1f26;
	font-size: 17px;
	font-weight: 600;
}

.ams-order-total {
	align-items: center;
	display: none;
	gap: 10px;
	justify-content: space-between;
	line-height: 20px;
}

.ams-order-total label {
	font-size: 16px;
	font-weight: 600;
}

.ams-order-total span {
	font-size: 20px;
	font-weight: 600;
}

.ams-order-subscribe {
	background: #dc1f26;
	border-radius: 6px;
	color: #ffffff !important;
	display: none;
	font-size: 18px;
	font-weight: 600;
	margin: 45px auto 0px auto;
	max-width: 500px;
	padding: 10px;
	text-align: center;
	text-transform: uppercase;
	width: 100%;
}

.ams-order-continue {
	background: #dc1f26;
	border-radius: 6px;
	color: #ffffff !important;
	display: none;
	font-size: 18px;
	font-weight: 600;
	margin: 45px auto 0px auto;
	max-width: 500px;
	padding: 10px;
	text-align: center;
	text-transform: uppercase;
	width: 100%;
}

#ams-extra-meals,
#ams-insufficient-meals {
	display: none;
}

.ams-delivery {
	font-size: 13px;
	margin: 0px auto 20px auto;
	width: 300px;
}

.ams-delivery label {
	display: block;
	font-weight: 600;
	margin-bottom: 10px;
	text-align: center;
	text-transform: uppercase;
}

.ams-delivery-days {
	display: none;
	margin-top: 10px;
	text-align: center;
}

.ams-discount {
	font-size: 13px;
	margin: 0px auto;
	width: 300px;
}

.ams-discount label {
	display: block;
	font-weight: 600;
	margin-bottom: 10px;
	text-align: center;
	text-transform: uppercase;
}

.ams-discount-input-wrapper {
	background: #f4f4f4;
	display: flex;
}

.ams-discount-input-wrapper input {
	background: none;
	border: none;
	color: #555555;
	font-size: 13px;
	outline: none;
	padding: 10px 15px;
}

.ams-discount-input-wrapper button {
	background: #dc1f26;
	color: #ffffff;
	font-size: 13px;
	font-weight: 600;
	padding: 5px 15px;
	text-transform: uppercase;
}

.ams-notes {
	font-size: 13px;
	margin: 15px auto 0px auto;
	width: 260px;
}

.ams-notes label {
	display: block;
	font-weight: 600;
	margin-bottom: 10px;
	text-align: center;
	text-transform: uppercase;
}

#ams-order-additional-fee-coupon {
	display: none;
}

.ams-order-servings {
	display: none;
	font-size: 17px;
	margin-bottom: 20px;
}

.ams-order-servings span {
	display: block;
	line-height: 20px;
}
#ams-extra-meals,
#ams-insufficient-meals {
	color: #dc1f26;
}
.ams-quantity-wrapper {
	background: #dc1f26;
	border-radius: 30px;
	color: #ffffff;
	display: inline-block;
	font-weight: 600;
	font-family: Oswald;
}

@media screen and (max-width: 1024px) {
	.ams-container {
		display: block;
	}

	.ams-container > div {
		margin: 0px auto;
		width: 320px;
	}
}
/* --- Toast Notification CSS --- */

/* 1. The notification container */
.ams-toast-notification {
	position: fixed;
	bottom: 20px;
	right: 20px;
	background-color: #28a745; /* A success green */
	color: #ffffff;
	padding: 16px 24px;
	border-radius: 8px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
	z-index: 99999;
	/* Start hidden and off-screen */
	opacity: 0;
	transform: translateY(20px);
	/* Smooth transition for fade and slide */
	transition: opacity 0.4s ease-out, transform 0.4s ease-out;
}

/* 2. The visible state */
.ams-toast-notification.show {
	opacity: 1;
	transform: translateY(0);
}
.in-cart > div {
	border: 6px solid #dc1f26 !important;
	border-radius: 30px 30px 50px 50px;
}
@media (max-width: 767px) {
	.ams-toast-notification {
		right: auto;
		left: 50%;
		width: calc(100% - 40px);
		text-align: center;
		transform: translateX(-50%) translateY(20px);
	}

	.ams-toast-notification.show {
		transform: translateX(-50%) translateY(0);
	}
}
.ams-quantity-btn {
	padding: 0px 5px !important;
	cursor: pointer;
}
.ams-quantity-wrapper {
	padding: 10px 15px !important;
}
.ams-quantity-buttons-shortcode .ams-product-count {
	background: #dc1f26;
	border-radius: 50%;
	color: #ffffff;
	font-weight: 600;
	padding: 5px 7px;
	font-family: Oswald;
}
.in-cart .ams-quantity-btn {
	display: inline-block;
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	.ahhmaa-meal-selection .ams-container {
		display: flex;
		justify-content: start;
		align-items: center;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.ams-container .ams-left,
	.ams-container .ams-center,
	.ams-container .ams-right {
		flex-basis: 50%;
		width: 50%;
		padding: 10px;
		min-height: 310px !important;
		justify-content: start;
	}
	.ams-left {
		padding-top: 10px !important;
	}
	.ams-left label {
		margin-right: 10px;
	}
	#meals-per-week > span,
	#servings-per-meal > span {
		width: 45px;
		height: 45px;
		font-size: 25.88px;
		line-height: 30px;
		margin-right: 5px;
	}
	.ams-center input {
		height: 45px;
	}
	.ahhmaa-meal-selection h2 {
		font-size: 28px;
		text-align: left;
	}
	.ams-left-row,
	.ams-center {
		display: flex;
		flex-direction: column;
		justify-content: start;
		align-items: start;
	}
	.ams-left-row label {
		text-align: left;
	}
	#ams-insufficient-meals,
	#ams-extra-meals {
		margin-bottom: 0px;
		text-align: center;
	}
	.ams-choose-your-meals-mobile {
		display: block !important;
	}
}
