/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 */

details a {
	text-decoration: underline;
}

.woocommerce-shop .woocommerce-pagination {
	display: none;
}

.countdown {
	position: absolute;
	display: flex;
	justify-content: center;
	width: 100%;
	top: 15px;
	color: var(--color-accent);
	column-gap: 5px;
	row-gap: 3px;
	font-size: 1.8rem;
	
	& .num-card {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
		
		& .card-value {
			color: var(--color-accent);
			background-color: var(--color-secondary);
			border-radius: 10px;
			padding: 3px;
			min-width: var(--l-spacing);
			text-align: center;
		}
		
		& .card-unit {
			background-color: white;
			color: var(--color-accent);
			font-size: 10px;
		}
	}
}

.my-account.woocommerce-account .page-title {
	padding-top: var(--s-spacing);
}

.my-account.woocommerce-account .woocommerce-MyAccount-content {
	width: 100%;
}

.woocommerce-MyAccount-content .woocommerce-notices-wrapper {
	max-width: calc( 97% - 230px );
	
	@media (max-width: 1200px) {
		max-width: none;
	}
}

.common-actions {
	display: grid;
	grid-template-columns: repeat(2, 48%);
	column-gap: 4%;
	row-gap: var(--s-spacing);
	max-width: calc( 97% - 230px );
}

.woocommerce-MyAccount-content .common-actions .button,
.woocommerce-MyAccount-content .options-container .button {
	text-align: center;
	font-size: var(--fontsize-base);
	border-radius: var(--l-spacing);
	color: var(--color-accent);
}

.common-actions .button.red-button {
	color: white;
	background-color: red;
	border-color: red;
	grid-column: 1/3;
}

.common-actions .button.red-button:hover {
	background-color: var(--color-secondary);
	border-color: var(--color-secondary);
	color: var(--color-accent);
}

.minor-text {
	font-size: 0.8rem;
	
	& a:link, a:visited {
		color: white;
	}
}

.welcome-header {
	background-color: var(--color-accent);
	color: white;
	padding: 3px 15px;
	max-width: calc( 97% - 230px );
	border-radius: var(--s-spacing);
}

.digital-wallet {
	margin-top: var(--m-spacing);
	padding: var(--m-spacing);
	background-color: var(--color-accent);
	max-width: 815px;
	border-radius: var(--s-spacing);
	
	& h2, p {
		color: white;	
	}
	
	& p:last-child {
		margin-bottom: 0;
	}
}

@media (max-width: 500px) {
	.common-actions {
		grid-template-columns: 100%;
		row-gap: calc(var(--s-spacing) / 2);
	}
	
	.common-actions .button.red-button {
		grid-column: 1/2;
	}
}

@media (max-width: 1100px) {
	.common-actions,
	.welcome-header {
		max-width: 100%;
	}
}

/* Style Create Meal Plan Layout */
.meal-subscriptions .meal-plan-name {
	text-align: center;
	text-transform: uppercase;
	padding: calc( var(--s-spacing) / 2 );
	background-color: var(--color-accent);
	color: white;
	border-radius: var(--m-spacing);
}

.woocommerce-MyAccount-content .meal-plan-wrapper {
	list-style-type: none;
	padding-left: 0;
	display: grid;
	grid-template-columns: 60% calc(40% - var(--l-spacing));
	gap: var(--l-spacing);
	margin-top: 0;
}

.woocommerce-MyAccount-content .meal-plan-wrapper li:last-child {
	padding: var(--m-spacing);
	background-color: var(--color-secondary);
	margin-top: 0;
	border-radius: calc( var(--s-spacing) / 2 );
}
.woocommerce-MyAccount-content .meal-plan-wrapper li:last-child h3 {
	color: var(--color-accent);
	text-align: center;
	text-transform: uppercase;
}

.woocommerce-MyAccount-content .meal-plan-wrapper .meal-plan-summary {
	width: 100%;
	border-collapse: collapse;
}

.woocommerce-MyAccount-content .meal-plan-wrapper .meal-plan-summary th {
	text-align: right;
	width: 60%;
}
.woocommerce-MyAccount-content .meal-plan-wrapper .meal-plan-summary td {
	width: 40%;
}

.woocommerce-MyAccount-content .meal-plan-wrapper .meal-plan-summary th,
.woocommerce-MyAccount-content .meal-plan-wrapper .meal-plan-summary td {
	padding-top: var(--s-spacing);
	border-bottom: 1px dotted var(--color-accent);
	color: var(--color-accent);
	font-size: 0.8rem;
	text-transform: capitalize;
}

.woocommerce-MyAccount-content .meal-plan-wrapper .meal-plan-summary .plan {
	-visibility: hidden;
}

@media (max-width: 1100px) {
	.woocommerce-MyAccount-content .meal-plan-wrapper {
		grid-template-columns: 60% calc(40% - var(--s-spacing));
		gap: var(--s-spacing);
	}
	.woocommerce-MyAccount-content .meal-plan-wrapper li:last-child {
		padding: calc(var(--s-spacing) / 2);
	}
	.woocommerce-MyAccount-content .meal-plan-wrapper li:last-child h3 {
		font-size: 1rem;
	}
	.woocommerce-MyAccount-content .meal-plan-wrapper .meal-plan-summary th,
	.woocommerce-MyAccount-content .meal-plan-wrapper .meal-plan-summary td {
		width: 50%;
		line-height: normal;
		padding-top: calc( var(--m-spacing) / 2 );
	}
	.woocommerce-MyAccount-content .meal-plan-wrapper .meal-plan-summary th {
		-color: var(--color-secondary);
	}
}

@media (max-width: 650px) {
	.woocommerce-MyAccount-content .meal-plan-wrapper {
		grid-template-columns: 100%;
	}
	.woocommerce-MyAccount-content .meal-plan-wrapper li:last-child {
		position: fixed;
    	left: 0;
    	bottom: 0;
    	z-index: 99;
    	width: 100%;
    	border-top: 1px solid white;
    	height: 150px;
    	overflow: auto;
	}
}

/* End Style Create Meal Plan Layout */

/* Create A Meal Plan Form */
.gform_heading {
	display: none;
}

.gform_fields .has-radio .gfield_radio {
	display: grid;
	grid-template-columns: 100%;
	grid-auto-rows: 1fr;
	justify-content: center;
	align-items: center;
}

.gform_fields .has-radio#field_1_15 .gfield_radio {
	grid-template-columns: repeat(2, 50%);
}

.gform_fields .has-radio .gfield_radio .gchoice {
	position: relative;
	text-align: center;
}

.gform_fields .has-radio .gfield_radio .gchoice {
	transition: background .25s ease-in;
	cursor: pointer;
	height: 100%;
}

.gform_fields .has-radio .gfield_radio .gchoice label {
	padding: var(--m-spacing);
	line-height: 1.5rem;
	width: 100%;
	height: 100%;
	max-width: 100%;
	letter-spacing: 5px;
}

.gform_fields .has-checkbox .gfield_checkbox .gchoice label {
	padding: var(--m-spacing) 0;
	padding-left: var(--m-spacing);
	font-size: 1.2rem;
	width: 100%;
}

.gform_fields .has-checkbox.allergens .gfield_checkbox .gchoice label {
	padding-top: 10px;
	padding-bottom: 10px;
}

.gform_fields .has-radio .gfield_radio .gchoice:first-child,
.gform_fields .has-radio .gfield_radio .gchoice:last-child {
	border: 1px solid var(--color-primary);
}

.gform_fields .has-radio .gfield_radio .gchoice:last-child {
	border-left: 0;
	border-top: 0;
}

.gform_fields .has-radio .gfield_radio .gchoice:nth-of-type(2) {
	border-right: 1px solid var(--color-primary);
	border-left: 1px solid var(--color-primary);
}
	
.gform_fields .has-radio#field_1_15 .gfield_radio .gchoice:nth-of-type(2) {
	border-top: 1px solid var(--color-primary);
	border-left: 0;
}

.gform_fields .has-radio .gfield_radio .gchoice:nth-of-type(3) {
	border: 1px solid var(--color-primary);
}

.gform_fields .has-checkbox .gfield_checkbox .gchoice label {
	position: relative;
	border-top: 1px solid var(--color-primary);
	border-right: 1px solid var(--color-primary);
	border-left: 1px solid var(--color-primary);
}
	
.gform_fields .has-checkbox .gfield_checkbox#input_1_19 {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	
	& .gchoice {
		flex-basis: 50%;
	
		& label {
			max-width: 100%;
			padding: 5px 0 6px var(--m-spacing);
			border: 0;
		}
			
		&:nth-of-type(odd) {
			border-color: var(--color-primary);
			border-width: 1px 1px 0 1px;
			border-style: solid;
		}
			
		&:nth-of-type(even) {
			border-color: var(--color-primary);
			border-width: 1px 1px 0 0;
			border-style: solid;
		}
			
		&:last-child {
			border-bottom-width: 1px;
		}
			
		&:nth-last-child(2) {
			border-bottom-width: 1px;
		}
	}
}

.gform_fields .has-checkbox .gfield_checkbox .gchoice:last-child label {
	border-bottom: 1px solid var(--color-primary);
}

.meal-plan-wrapper .gform_fields .has-checkbox .gfield_checkbox .gchoice label:before {
	content: '';
	position: absolute;
	top: inherit;
	left: inherit;
	right: var(--m-spacing);
	width: var(--m-spacing);
	height: var(--m-spacing);
	border: 2px solid var(--color-accent);
	border-radius: var(--s-spacing);
}

.gform_fields .has-radio .gfield_radio .gchoice input,
.gform_fields .has-checkbox .gfield_checkbox .gchoice input {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	visibility: hidden;
}

.gform_fields .has-radio .gfield_radio .gchoice input + label:hover,
.gform_fields .has-radio .gfield_radio .gchoice input:checked + label {
	background-color: var(--color-primary);
	color: white;
}

.gform_fields .has-checkbox .gfield_checkbox .gchoice input:checked + label:before {
	background-color: var(--color-accent);
}

.gform_fields .has-checkbox .gfield_checkbox .gchoice input:checked + label:after {
	content: '';
	position: absolute;
	top: calc( var(--m-spacing) + 3px );
	right: calc( var(--m-spacing) + 10px );
	left: inherit;
	width: calc( var(--s-spacing) / 2 );
	height: calc( var(--l-spacing) / 2.7 );
	border-right: 2px solid var(--color-white);
	border-bottom: 2px solid var(--color-white);
	transform: rotate(35deg);
}

.gform_fields .has-checkbox.allergens .gfield_checkbox .gchoice input:checked + label:after {
	top: calc( var(--m-spacing) - 15px );
}

.gform_fields .gfield .instruction {
	display: none;
}

.gform_wrapper .gform_page_footer {
	position: relative;
	display: grid;
	justify-content: flex-start;
	gap: var(--s-spacing);
}

.gform_wrapper.gravity-theme .gform_page_footer .gform_previous_button.button,
.gform_wrapper .gform_page_footer .gform_next_button.button {
	max-width: 150px;
	grid-row: 1/2;
	margin-left: 0;
	color: var(--color-accent);
	border-radius: var(--m-spacing);
	
	&:hover {
		color: white;
	}
}

.gform_wrapper.gravity-theme .gform_page_footer  .gform_previous_button.button {
	background-color: var(--color-primary);
	color: var(--color-accent);
}

.gform_wrapper.gravity-theme .gform_page_footer  .gform_previous_button.button:hover {
	background-color: var(--color-accent);
	color: white;
}

.gform_wrapper .gform_page_footer .gform_button.button {
	position: absolute;
	right: 0;
	top: 14px;
	width: 100%;
	max-width: 150px;
	border-radius: var(--m-spacing);
	color: var(--color-accent);
	
	&:hover {
		color: white;
	}
}

.gform_fields .delivery-start-date.has-radio .gfield_radio,
.gform_fields .pause-dates.has-checkbox .gfield_checkbox {
	display: grid;
	grid-template-columns: repeat( 6, 15% );
	gap: 2%;
}

.gform_fields .delivery-start-date.has-radio .gfield_radio .gchoice label,
.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice label {
	padding: calc( var(--s-spacing) / 2 );
	letter-spacing: normal;
	border: 1px solid var(--color-primary);
	border-top-width: 5px;
	text-align: center;
}

.gform_fields .delivery-start-date.has-radio .gfield_radio .gchoice label span,
.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice label span {
	display: block;
}

.gform_fields .delivery-start-date.has-radio .gfield_radio .gchoice label .month,
.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice label .month {
	text-transform: uppercase;
	color: #707070;
	font-weight: bold;
}

.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice label.disabled {
	opacity: 0.5;
	pointer-events: none;
	border-color: gray;
	background-color: white !important;
}

.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice label.disabled .month {
	color: #707070;
}

.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice label.disabled .date {
	color: #ccc;
}

.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice input:checked + label.muted {
	background-color: #fbd395;
}

.gform_fields .resume-date.gfield.field_description_above .gfield_description {
	font-size: 0.8rem;
	padding-bottom: 0;
}

.pause-form .confirmation {
	color: white;
    background-color: var(--color-accent);
    padding: 5px 10px;
}

.gform_fields .pause-dates.has-checkbox .gfield_description:not(.show) {
	display: none;
}

.gform_fields .gfield.active-subscriptions {
	display: grid;
	grid-template-columns: repeat(2, 48%);
	gap: 4%;
}

.gform_fields .gfield.active-subscriptions .active-orders {
	padding: var(--s-spacing) var(--m-spacing);
	border: 1px solid black;
	border-radius: calc( var(--s-spacing) / 2 );	
}

.gform_fields .gfield.active-subscriptions .active-orders .delivery-week {
	line-height: 1.2;
	margin-bottom: var(--s-spacing);
}

.gform_fields .gfield.active-subscriptions .active-orders .no-orders {
	line-height: 1.2;
}

.gform_fields .gfield.active-subscriptions .active-orders .meal-plan {
	margin-bottom: 2px;
	padding: 0 15px;
	background-color: var(--color-accent);
	border-radius: var(--s-spacing);	
	text-align: center;
	color: white;
}

.gform_fields .pause-dates.has-checkbox .gfield_description,
.gform_fields .pause-dates.has-checkbox .gfield_description a {
	line-height: normal;
	font-size: 0.8rem;
	color: var(--color-secondary);
}

.gform_fields .delivery-start-date.has-radio .gfield_radio .gchoice label .date,
.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice label .date {
	font-size: 1.7rem;
	font-weight: bold;
	color: #ccc;
}

.gform_fields .delivery-start-date.has-radio .gfield_radio .gchoice input + label:hover span,
.gform_fields .delivery-start-date.has-radio .gfield_radio .gchoice input:checked + label span,
.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice input + label:hover span,
.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice input:checked + label span {
	color: white;
}

.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice input + label:hover,
.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice input:checked + label {
	background-color: var(--color-primary);
	cursor: pointer;
}

.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice .gfield-choice-input + label:before,
.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice .gfield-choice-input + label:after {
	display: none;
}

.gform_fields .pause-dates.has-checkbox .gfield_checkbox .gchoice input:checked + label:after {
	content: 'Pause';
	position: absolute;
    left: -25%;
    width: fit-content;
    height: 30px;
    display: block;
    border: 0;
    top: 25%;
    transform: rotate(-45deg);
    background-color: rgba(255,255,255,0.7);
    padding: 2px 32px;
}

@media (max-width: 1100px) {
	.meal-plan-wrapper .gform_wrapper.gravity-theme .gf_step {
		margin-right: calc(var(--s-spacing) / 2);
	}
	.meal-plan-wrapper .gform_fields .has-radio .gfield_radio .gchoice label {
		padding: var(--s-spacing);
		letter-spacing: 2px;
	}
	.meal-plan-wrapper .gform_fields .has-radio.delivery-start-date .gfield_radio .gchoice label {
		padding: 0 calc( var(--s-spacing) / 2 );
	}
	#gform_page_1_5 .gform_page_footer {
		justify-content: flex-start;
	}
	.gform_fields .has-checkbox.allergens .gfield_checkbox .gchoice label {
		padding-top: calc(var(--s-spacing) / 4);
		padding-bottom: calc(var(--s-spacing) / 4);
		max-width: 100%;
	}
	.gform_fields .has-checkbox.allergens .gfield_checkbox .gchoice input:checked + label:after {
		top: calc( var(--m-spacing) - 21px );
	}
}

@media (max-width: 650px) {
	.improvise .gform_fields .has-checkbox:not(.allergens) .gfield_checkbox .gchoice label {
		max-width: 100%;
		padding: var(--s-spacing) 0;
		padding-left: var(--s-spacing);
	}
	.gform_fields .has-checkbox .gfield_checkbox .gchoice input:checked + label:after {
		top: calc( var(--m-spacing) + -6px );
	}
	.improvise .gform_wrapper .has-radio.delivery-start-date .ginput_container span:not(.ginput_price) {
		margin-bottom: 0;
	}
	.improvise .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
		line-height: normal;
	}
}

/* End Create A Meal Plan Form */

/* Update A Meal Plan Form */
.meal-subscriptions {
	gap: var(--l-spacing);
	flex-wrap: wrap !important;
}

.meal-subscriptions .meal-plan-summary {
	border-collapse: collapse;
	margin-bottom: var(--m-spacing);
	width: 100%;
}

.meal-subscriptions.wp-block-columns .wp-block-column {
	padding: var(--s-spacing);
	border: 1px solid var(--color-accent);	
	flex-basis: calc(50% - var(--l-spacing));
	flex-grow: 1;
	margin-bottom: 0;
	border-radius: calc( var(--s-spacing) / 2 );
}

.meal-subscriptions .meal-plan-summary th {
	text-align: right;
	color: var(--color-accent);
}

.meal-subscriptions .meal-plan-summary th,
.meal-subscriptions .meal-plan-summary td {
	border-bottom: 1px dotted ;
	padding-top: 5px;
}

.meal-subscriptions .actions-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: var(--s-spacing);
}
	
.meal-subscriptions .actions-wrapper a,
.meal-subscriptions .actions-wrapper button {
	color: var(--color-accent);
	border-radius: var(--m-spacing);
	cursor: pointer !important;
}

.meal-subscriptions .actions-wrapper a:first-child {
	flex-basis: 100%;
	text-align: center;
}

.meal-subscriptions .actions-wrapper button.delete-plan {
	color: white;
	background-color: red;
	border-color: red;
}

.update-meal-plan-form {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 9999999;
	background-color: white;
	border: 1px solid var(--color-primary);
	padding: var(--s-spacing) var(--s-spacing) var(--s-spacing);
	width: max-content;
	max-width: 94vw;
	
	& .gform_wrapper.gravity-theme .gfield-choice-input+label {
		white-space: nowrap;
	}
}

.update-meal-plan-form.show {
	display: block;
	overflow: auto;
	max-height: 90vh;
	
	& h4 {
		color: var(--color-secondary);
	}
	
	& ul {
		padding-left: 15px;
		
		& li {
			font-size: 1.2rem;
			font-weight: bold;
			color: var(--color-primary) !important;
		}
	}
	
	& p:last-of-type {
		margin-bottom: 0;
		font-size: 0.8rem;
		color: var(--color-accent);
		
		& strong {
			color: black;
			font-weight: bolder;
		}
	}
}

.update-meal-plan-form .gfield_checkbox {
	display: flex;
	flex-wrap: wrap;
	gap: var(--s-spacing);
}
	
.meal-plan-note {
	max-width: 740px;
    font-size: 0.8rem;
    line-height: 1.2;
}

.update-meal-plan-form .gfield_checkbox .gchoice input {
	width: auto !important;
}

.update-meal-plan-form .close-form {
	position: absolute;
	color: var(--color-secondary);
	font-size: 2rem;
	text-decoration: none;
	top: var(--s-spacing);
	right: var(--s-spacing);
}

body.improvise .update-meal-plan-form .gform_wrapper .gform_footer {
	justify-content: center;
	margin-top: var(--s-spacing);
}

body.improvise .update-meal-plan-form .gform_wrapper .gform_footer .gform_button {
	max-width: 100%;
}

.woocommerce .edit-account fieldset {
	margin-bottom: var(--m-spacing);
}

.woocommerce-notices-wrapper {
	background-image: url('../../../../uploads/2025/06/five-eggs-meals-egg-only-logo.jpg');
	background-size: contain;
	background-position: 0 60px;
	background-repeat: no-repeat;
}

.woocommerce form.woocommerce-form-register .form-row label {
	line-height: normal;
}

@media (max-width: 1100px) {
	.meal-subscriptions {
		gap: var(--s-spacing);
	}
	.meal-subscriptions .meal-plan-summary th,
	.meal-subscriptions .meal-plan-summary td {
		line-height: normal;
		width: 50%;
	}
	.meal-subscriptions .actions-wrapper {
		gap: calc( var(--s-spacing) / 4 );
	}
	.meal-subscriptions .actions-wrapper button.button {
		flex-basis: calc( 33% - calc( var(--s-spacing) / 4 ) );
		white-space: nowrap;
		padding: calc(var(--s-spacing) / 2 )
	}
}
/* End Update A Meal Plan Form */

/* Start Woocommerce My Account Navigation Styling */
.woocommerce-account.my-account article {
	padding: 0 calc( var(--s-spacing) / 2 ) var(--xl-spacing);
}

.woocommerce-account.my-account main > .row {
	max-width: none;
}

.woocommerce-account .woocommerce {
	display: grid;
	grid-template-columns: clamp( 300px, 21%, 300px) 1fr;
	grid-column-gap: 3%;
	grid-row-gap: var(--m-spacing);
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce .selection-side-content {
	grid-column: 1/2;
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
	float: none;
	width: 100%;
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
	float: none;
	grid-row: 1/3;
	grid-column: 2/3;
}

.woocommerce-account .woocommerce::after,
.woocommerce-account .woocommerce::before {
	display: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	padding-left: 0;
	margin: 0;
	padding: var(--s-spacing);
	background-color: var(--color-accent);
	max-width: 100%;
	border-radius: calc( var(--s-spacing) / 2 );
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	list-style-type: none;
	margin: 0 0 10px;
}

.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
	margin-bottom: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: inline-block;
	padding: calc(var(--s-spacing) / 2 ) var(--s-spacing);
	width: 100%;
	background-color: var(--color-secondary);
	color: var(--color-accent);
	text-align: center;
	line-height: normal;
	border-radius: var(--m-spacing);
}

.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
	background-color: var(--color-primary);
}

.woocommerce-MyAccount-navigation li {
    font-size: 1.2rem;
}

.woocommerce-MyAccount-navigation li a {
	text-decoration: none;
}

@media (max-width: 1200px) {
	.woocommerce-account .woocommerce {
		grid-template-columns: clamp( 255px, 21%, 300px) 1fr;
		grid-column-gap: var(--s-spacing);
	}
}

@media (max-width: 885px) {
	.my-account.woocommerce-account .page-title {
		font-size: 1.5rem;
		margin-bottom: var(--s-spacing);
	}
	.woocommerce-account .woocommerce {
		grid-template-columns: 100%;
	}
	
	.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
		grid-row: 2/3;
		grid-column: 1/2;
	}
	
	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		display: grid;
		grid-template-columns: repeat(3, 32%);
		grid-column-gap: 2%;
		grid-row-gap: calc(var(--s-spacing) / 2 );
		padding: calc(var(--s-spacing) / 2 );
	}
	
	.woocommerce-account .woocommerce-MyAccount-navigation li {
		margin-bottom: 0;
	}
	
	.woocommerce-account .woocommerce-MyAccount-navigation li a {
		padding: calc(var(--s-spacing) / 4 );
	}
}

@media (max-width: 500px) {
	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		grid-template-columns: 100%;
	}
	
	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		position: relative;
		height: var(--m-spacing);
		overflow: clip;
		interpolate-size: allow-keywords;
		transition: all 0.5s ease;
		
		&.active {
			height: fit-content;
			
			&:before {
				content: 'My Account Menu';
			}
			
			&:after {
				content: '—';
			}
		}
		
		&:before {
			content: 'My Account Menu';
			position: relative;
			top: -7px;
    		color: white;
    		text-align: center;
			cursor: pointer;
		}
		
		&:after {
			content: '+';
			position: absolute;
            right: 10px;
            top: 2px;
            color: white;
			cursor: pointer;
		}
	}
}
/* End Woocommerce My Account Navigation Styling */

/* Start Meal Selection Area Styling */
.woocommerce-MyAccount-content .meal-plans-container {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: var(--s-spacing);
}

.woocommerce-MyAccount-content .meal-plans-container .button {
	white-space: nowrap;
	width: 250px;
	text-align: center;
	border-radius: var(--m-spacing);
	color: var(--color-accent);
}

.meal-selection-area .week-choices {
	margin-bottom: var(--m-spacing);
	display: flex;
	justify-content: space-between;
}

.meal-selection-area .week-choices button {
	width: 100%;
	max-width: 200px;
	white-space: nowrap;
	border-radius: var(--m-spacing);
	color: var(--color-accent);
}

.meal-selection-area .week-choices button.delivery-week:hover, 
.meal-selection-area .week-choices button.active {
	background-color: var(--color-secondary);
	border-color: var(--color-secondary);
	color: var(--color-accent);
}

.meal-selection-area .meals-for {
	font-size: 0.8rem;
}

.meal-selection-area .week-choices button:not(:last-of-type) {
	margin-right: var(--s-spacing);
}

.meal-selection-area .recipes p {
	width: 100%;
}

.meal-selection-area {
    display: flex;
    flex-direction: row-reverse;
	gap: 3%;
}

.meal-selection-area .meal-selections {
	flex-basis: calc( 97% - 230px );
}

.meal-selection-area .meal-selections h2.section-title {
	text-align: center;
	background-color: var(--color-accent);
	color: white;
	padding: calc( var(--s-spacing) / 2 );
	border-radius: var(--m-spacing);
}

.meal-selection-area .nutrient-calculator {
	flex-basis: 230px;
}

.recipes .recipe-accordions {
	position: relative;
}

.recipes .recipe-accordions .panel {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	justify-content: space-evenly;
	overflow: hidden;
	max-height: 0;
	transition: 0.5s;
	margin-top: calc( var(--s-spacing) / 2 );
	gap: calc(var(--s-spacing) / 2)
}

.recipes .recipe-accordions .accordion {
	background-color: var(--color-accent);
	padding: calc( var(--s-spacing) / 2 ) calc( var(--m-spacing) / 2 );
	color: white;
	text-align: left;
	text-transform: capitalize;
	font-size: 1rem;
	font-weight: bold;
	cursor: pointer;
	transition: 0.4s;
	width: 100%;
	border: 0;
	border-radius: var(--s-spacing);
	outline: 0;
	margin: calc( var(--s-spacing) / 2 ) 0 0;
}

.recipes .recipe-accordions .accordion:first-of-type {
	margin-top: 0;
}

.recipes .recipe-accordions .accordion:last-of-type {
	margin-bottom: 0;
}

.recipes .recipe-accordions .accordion.active,
.recipes .recipe-accordions .accordion:hover {
	background-color: var(--color-primary);
	color: var(--color-accent);
}

.recipes .recipe-accordions .accordion:after {
	content: '\002B';
	font-weight: bold;
	float: right;
	margin-left: 5px;
}

.recipes .recipe-accordions .accordion.active:after {
	content: "\2212";
}

.recipes .image-container {
	width: 100%;
	aspect-ratio: 16/9;
	overflow: hidden;
	position: relative;
	border-radius: calc( var(--s-spacing) /  2 );
}

.recipes .image-container .recipe-image {
	min-width: 100%;
	min-height: 100%;
	object-fit: cover;
	position: absolute;
	transform: translate(-50%, -50%);
	top: 50%;
	left: 50%;
}

.recipes .recipe {
	flex-basis: calc(50% - calc(var(--s-spacing) / 4));
	padding: calc(var(--s-spacing) / 2);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	background-color: #efefef;
	border-radius: calc( var(--s-spacing) /  2 );
}

.recipes .recipe.selected {
	background-color: #ffe9b8;
}

.recipes .recipe.selected::before {
	content: "";
	background-image: url("../images/egg-icon.png");
	transform: rotate(20deg);
	background-size: 100%;
	width: 3rem;
	height: 3rem;
	display: block;
	right: 0;
	top: 5.5rem;
	position: absolute;
	z-index: 10;
}

.recipes .recipe h3 {
	display: flex;
	column-gap: 20px;
	justify-content: space-between;
	min-height: 72px;
}

.recipes .recipe h3 .recipe-price {
	color: green;
	font-size: 1rem;
	align-self: top;
	margin-left: calc( var(--s-spacing) / 4 );
	white-space: nowrap;
}

.nutrient-info {
	display: flex; 
	text-align: left; 
	position: relative; 
	flex-wrap: wrap;
	gap: 4%;
}

.nutrient-info .nutrient {
	flex-basis: 48%;
	flex-grow: 1;
}

.nutrient-info .nutrient.calories {
	flex-basis: 100%;
}

.recipe-bottom-container {
	display: flex; 
	align-content: center;
}
.recipe-bottom-container .categories-container {
	flex-basis: 50%; 
	display: flex; 
	align-items: center;
}

.recipe-bottom-container .quantity-container {
	flex-basis: 50%; 
	display: flex; 
	align-items: center;
}

.recipe-bottom-container .categories-container i {
	margin: 0 .25rem;
}

.more-info-button-container {
	width: 100%;
	text-align: center;
	margin-top: .75rem;
	margin-bottom: .75rem;
}

a.button.more-info {
	/* height: 1.5rem; */
	margin-top: .5rem;
	text-align: center;
	padding-top: .5rem !important;
	padding-bottom: .5rem !important;
	min-width: 75% !important;
	border-radius: var(--m-spacing) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	color: var(--color-accent);
}

.quantity-container {
	height: 2.25rem;
	display: flex;
	align-items: center;
}

.quantity-container form,
.ajax-already-in-cart .recipe {
	pointer-events: none;
}

.recipe.selected .quantity-container form {
	pointer-events: auto;
}

.recipe.hidden {
	display: none !important;
}

.post-content p {
	margin-bottom: 0;
}

form.meal-quantity-selector {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: -5px;
}

label.meal-quantity-selector {
	font-weight: bold;
	margin-right: .5rem;
}

input.meal-quantity-selector {
	max-width: 3rem;
}

@media (max-width: 1200px) {
	.meal-selection-area {
		gap: var(--s-spacing);
	}
	.meal-selection-area .meal-selections {
		flex-basis: calc( 100% - calc( 230px + var(--s-spacing) ) );
	}
	.recipes .recipe h3 {
		font-size: 1rem;
	}
	.recipes .recipe h3 .recipe-price {
		font-size: 0.8rem;
	}
	.meal-selection-area .meal-selections h2.section-title {
		font-size: 1.2rem;
	}
	.woocommerce-MyAccount-navigation li {
		font-size: 1rem;
	}
	.recipes .recipe-accordions .panel {
		
	}
}

@media (max-width: 1100px) {
	.recipes .recipe {
		flex-basis: 100%;
		max-width: 400px;
	}
	
	.woocommerce .meal-selection-area .week-choices button.button {
		padding-left: calc(var(--s-spacing) / 4 );
		padding-right: calc(var(--s-spacing) / 4 );
	}
}

@media (max-width: 620px) {
	.meal-selection-area .meal-selections {
		flex-basis: 100%;
	}
	.recipes .recipe h3 {
		margin-bottom: calc( var(--s-spacing) / 2 );
	}
/*	.recipes .recipe {
		max-width: 100%;
		flex-direction: row;
		flex-wrap: wrap;
		gap: 2%;
	}
	.recipes .recipe h3 {
		flex-basis: 100%;
		flex-grow: 1;
		flex-direction: row;
		margin-bottom: calc( var(--s-spacing) / 2 );
	}
	.recipes .recipe .image-container,
	.recipes .recipe .more-info-button-container {
		flex-basis: 30%;
	}
	.recipes .recipe .post-content {
		flex-basis: 70%;
	}
	.recipes .recipe .allergen-info {
		flex-basis: 20%;
	}
	.recipes .recipe .allergen-info strong{
		width: 100%;
		display: block;
	}
	.recipes .recipe .nutrient-info {
		flex-basis: 46%;
	}
	.recipes .recipe .recipe-bottom-container {
		flex-basis: 100%;
	}
	.recipes.order-window-closed .recipe .meal-quantity-selector {
		margin-right: 0;
		} */
	.meal-selection-area .nutrient-calculator {
		position: fixed;    
		width: 100%;
		bottom: 0;
    	height: 150px;
    	z-index: 99;
    	background-color: white;
	}
	.woocommerce-account .woocommerce .selection-side-content {
		position: fixed;
    	top: auto;
    	bottom: 0;
    	height: 150px;
    	padding-top: 62px;
    	max-width: 100%;
    	z-index: 99;
		margin-left: 9px;
	}
	.woocommerce-account .woocommerce .selection-side-content .side-section {
		padding: 0 var(--s-spacing);
	}
	.woocommerce-account .woocommerce .selection-side-content .select-container {
		position: fixed;
		background-color: white;
    	padding-top: 2px;
    	bottom: 110px;
	}
	.woocommerce .select-container a.button.select-meals, .woocommerce .select-container a.button.select-meals.disabled {
		margin-bottom: 0;
		border: 1px solid var(--color-black);
		min-width: calc(100% - (var(--s-spacing) * 2));
    	box-shadow: 0px 5px 5px 0 rgba(0, 0, 0, 0.3);
	}
}

@media (max-width: 500px) {
	.woocommerce-MyAccount-content .meal-plans-container {
		justify-content: center;
	}
}

/* Development:  */
pre.xdebug-var-dump{
	margin-top: 10rem;
}
/* End Meal Selection Area Styling */

/* Start Recipe Details Modal Area Styling */
.recipe-details-modal-overlay,
.go-to-checkout-overlay,
.subscription-overlay,
.pause-cancel-overlay {
	display: none;
}

.recipe-details-modal-overlay.show,
.go-to-checkout-overlay.show,
.subscription-overlay.show,
.pause-cancel-overlay.show  {
	display: block;
	background-color: rgba(0,0,0,.8);
	position: fixed;
	width: 100vw;
	height: 100%;
	z-index: 100000;
	top: 0;
	left: 0;
}

.message-pop {
	display: none;
}

.message-pop.show {
	position: fixed;
	display: block;
	flex-direction: column;
	transform: translate(-50%, -50%);
	top: 50%;
	left: 50%;
	z-index: 101000;
	background-color: white;
	padding: var(--m-spacing);
	width: 90vw;
	max-width: 90vw;
	max-height: 80vh;
	overflow: auto;
	border-radius: calc( var(--s-spacing) /  2 );
}

.recipe-details-modal.show .content-container {
	display: flex;
}

.modal-close-icon {
	position: absolute;
	right: calc(var(--s-spacing) / 2 );
	top: calc(var(--s-spacing) / 4 );
	font-weight: bold;
	cursor: pointer;
}

.message-pop.dashboard .modal-close-icon {
	right: 8px;
	top: 5px;
	text-decoration: none;
	font-size: 1.3rem;
	padding: 0;
}

.recipe-details-modal .details-modal-left {
	flex-basis: 30%;
	
	@media(max-width: 992px) and (min-width: 481px) {
		flex-basis: 40%;
	}
}	

.recipe-details-modal .details-modal-right {
	flex-basis: 70%;
	padding-left: var(--l-spacing);
	align-self: center;
	
	@media(max-width: 992px) and (min-width: 481px) {
		flex-basis: 60%;
	}
}

.recipe-details-modal .details-modal-left img {
	display: block;
	max-height: 350px;
	border-radius: calc( var(--s-spacing) / 2 );
}

.recipe-details-modal.h2 {
	text-align: center;
}

.go-to-checkout-modal {
	display: none;
	position: fixed;
	background-color: white;
	transform: translate(-50%, -50%);
	top: 50%;
	width: 90vw;
	max-width: 36rem;
	left: 50%;
	padding: 2rem;
	text-align: center;
	z-index: 101000;
}

.go-to-checkout-modal .select-additional-buttons-container,
.go-to-checkout-modal .unordered-plans {
	margin-top: var(--m-spacing);
	display: flex;
	align-items: center;
	justify-content: space-evenly;
}

.select-additional-buttons-container a.select-additional-meals-button {
	color: white;
	background-color: #f5a800;
	padding: .5rem 2rem;
	font-weight: bold;
	text-decoration: none;
}

.select-additional-buttons-container a.select-additional-meals-button:hover {
	background-color: var(--color-secondary);
}

.go-to-checkout-modal.show {
	display: block !important;
}

.meal-type-icon {
	text-align: center;
	display: block;
	background-color: black;
	color: white;
	line-height: 1rem;
	min-width: 1.6rem;
	padding: .3rem;
	border-radius: 50%;
	font-weight: bold;
	margin-right: 5px;
	cursor: help;
}
.meal-type-icon.mindful-meals{ background-color: var(--color-secondary);border-radius: 26px;color:var(--color-accent); }
.meal-type-icon.breakfast{ background-color: #ff8400; color: black; }
.meal-type-icon.dessert{ background-color:#7e00af; }
.meal-type-icon.mild{ background-color: green; }
.meal-type-icon.medium{ background-color: orange; }
.meal-type-icon.hot{ background-color: red; }
.meal-type-icon.premium-recipe{ background-color: blue; }

@media (max-width: 650px) {
	.recipe-details-modal h2 {
		margin-bottom: calc( var(--s-spacing) / 2 );
		font-size: 1.2rem;
	}
	.recipe-details-modal.show {
		padding: var(--s-spacing);
	}
	.recipe-details-modal.show .content-container {
		flex-wrap: wrap;
	}
	.recipe-details-modal .details-modal-left,
	.recipe-details-modal .details-modal-right {
		flex-basis: 100%;
	}
	.recipe-details-modal .details-modal-right {
		padding-left: 0;
		padding-top: var(--s-spacing);
		position: relative;
	}
	.recipe-details-modal .details-modal-left img {
		height: 200px;
		width: 100%;
		object-fit: cover;
		max-width: none;
	}
	.recipe-details-modal .details-modal-right p:last-child {
		margin-bottom: 0;
	}
}
/* End Recipe Details Modal Area Styling */

/* Start Meal Selection Button Styling */
.select-container {
	width: 100%;
	text-align: center;
}

.woocommerce a.button.select-meals,
.woocommerce a.button.select-meals.disabled {
	background-color: var(--color-primary);
	color: var(--color-accent);
	padding: calc( var(--s-spacing) / 2 ) 0;
	margin-top: 0;
	margin-bottom: var(--s-spacing);
	min-width: 100%;
	border: 0;
	border-radius: var(--m-spacing);
	white-space: nowrap;
}

.woocommerce a.button.select-meals.disabled,
.recipes.before-start-date .recipe .meal-quantity-selector,
.recipes.order-window-closed .recipe .meal-quantity-selector {
	opacity: 0.7;
	pointer-events: none;
}

/* End Meal Selection Button Styling */

/* Start Add Meals to Cart Message Modal Styling */
h2.pop-up-title  {
	background-color: var(--color-accent);
	padding: calc( var(--s-spacing) / 2 ) calc( var(--s-spacing) / 2 );
	color: white;
	text-align: center;
	text-transform: capitalize;
	border-radius: var(--m-spacing);
}

.add-to-cart-message .bolded {
	font-weight: bold;
}
	
.add-to-cart-message table + h2 {
	margin-top: var(--s-spacing);
}

.add-to-cart-message table {
	width: clamp(45%, 390px, 100%);
    margin: 0;
	border-collapse: collapse;
}
	
.add-to-cart-message table td {
	border-top: 1px solid black;
    border-bottom: 1px solid black;
    padding: 5px 0 0;
	
	&:first-child {
		border-left: 1px solid black;
		padding-left: 5px;
		height: 40px;
	}
	
	&:last-child {
		border-right: 1px solid black;
	}
	
	& img {
		object-fit: cover;
    	object-position: center;
		max-height: 100%;
	}
}

.add-to-cart-message table td:not(:first-child) {
	padding: 0 15px;
}

.add-to-cart-message table td:first-child { width: 50px; }
.add-to-cart-message table td:nth-child(2) { width: calc(100% - 100px); }
.add-to-cart-message table td:last-child { width: 50px; text-align: center; }

.options-container,
.select-additional-buttons-container,
.go-to-checkout-modal .unordered-plans {
	margin-top: var(--s-spacing);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: calc(var(--s-spacing) / 2) var(--s-spacing);
}

.options-container button,
.select-additional-buttons-container .select-additional-meals-button,
.go-to-checkout-modal .unordered-plans a.button {
	flex-grow: 1;
}
	
.select-additional-buttons-container a.select-additional-meals-button {
	border-radius: var(--l-spacing);
	color: var(--color-accent);
	
	&:hover {
		color: white;
		background-color: var(--color-accent);
	}
}

.options-container a.button {
	border-radius: var(--m-spacing);
	color: var(--color-accent);
}
	
.button.continue-meal-selection {
	top: 0;
	right: 0;
}

.options-container button.modal-close-icon {
	top: 0;
	right: 0;
}

.options-container .button.add-meals-to-cart,
.options-container .button.randomly-select-meals {
	display: none;
}

.options-container .add-meals-to-cart.show,
.options-container .randomly-select-meals.show {
	display: inline-block;
}

@media (max-width: 768px) {
	.message-pop.show {
		padding: var(--s-spacing);
	}
	h2.pop-up-title {
		font-size: 1.2rem;
	}
	.add-to-cart-message table {
		margin: 0;
		width: 100%;
	}
}
/* Start Add Meals to Cart Message Modal Styling */

/* Start Nutrition Calculator Area Styling */
body.improvise.page-id-21 {
	overflow-x: visible;
}

.selection-side-content {
	position: sticky;
	top: calc(var(--xl-spacing) + var(--s-spacing));
	height: 85vh;
    z-index: 9;
    background: white;
    overflow: auto;
	
	& .tip {
		margin-bottom: calc(var(--s-spacing) / 4);
		font-size: 0.7rem;
		flex-basis: 100%;
		font-style: italic;
        color: var(--color-primary);
        font-weight: bold;
	}
}

.selection-side-content h3 {
	font-size: 1rem;
	margin-bottom: 0;/*calc(var(--s-spacing) / 4);*/
	
	&[title] {
		cursor: help;
	}
}

.selection-side-content .note-area {
	-min-height: 1rem;
	-margin-bottom: 1rem;
}

.selection-side-content .side-section {
	margin-bottom: calc(var(--s-spacing) / 2);
}
.selection-side-content .selection-counter {
	font-size: 0.8rem;
}

.ingredient-calculations-container {
	width: 100%;
}

.ingredient-calculations-container .counter .progress-bar {
	width: 100%;
	height: .5rem;
	background-color: lightgray;
	z-index: 5;
	border-radius: .25rem;
	margin-bottom: calc(var(--s-spacing) / 4);
}

.ingredient-calculations-container .counter .progress-bar .progress{
	height: .5rem;
	border-radius: .25rem;
	width: 0%;
	transition-duration: 200ms;
	transition-property: width;
}

.meal-selection-counter.hidden,
.breakfast-selection-counter.hidden {
	display: none !important;
}

.meal-counter {
	width: 100%;
}

.meal-counter .selection-bar {
	width: 100%;
	height: .5rem;
	background-color: lightgray;
	border-radius: .25rem;
}

.meal-counter .selection-bar .progress {
	transition-duration: 200ms;
	transition-property: width;
	background-color: #20B2AA;
	width: 0%;
	height: .5rem;
	border-radius: .25rem;
}

.too-many-meals-warning,
.already-selected {
	display: none;
	font-size: 0.8rem;
	line-height: normal;
	max-width: 200px;
}

.already-selected {
	display: block;
}

.too-many-meals-warning strong,
.already-selected strong {
	color: red;
}

.nutrient-label {
	font-size: 0.8rem;
}

.macro-counter {
	float: right;
}

.ingredient-calculations-container .counter.calories .progress-bar .progress{background-color: rgb(255, 136, 0)}
.ingredient-calculations-container .counter.fat .progress-bar .progress{background-color: rgb(0, 153, 204)}
.ingredient-calculations-container .counter.carbs .progress-bar .progress{background-color: rgb(201, 64, 255)}
.ingredient-calculations-container .counter.fiber .progress-bar .progress{background-color: rgb(239, 135, 194)}
.ingredient-calculations-container .counter.protein .progress-bar .progress{background-color: rgb(0, 200, 81)}

@media (max-width: 885px) {
	.selection-side-content {
		position: -webkit-sticky;
		position: sticky;
		height: 80vh;
		padding: 0;
	}
}
/* End Nutrition Calculator Area Styling */

/* Start Meal Filter Area Styling */
.filter-container {
	width: 100%;
	max-width: fit-content;
	display: flex;
	justify-content: space-between;
	flex-direction: column;
}

.filter-container .selection-header {
	width: 100%;
	flex-basis: 100%;	
}

.filter-container .filter {
	display: flex;
	flex-wrap: wrap;
}

.filter-container .input-container {
	flex-basis: 30%;
	display: flex;
    line-height: 1;
    align-items: center;
    margin-bottom: calc(var(--s-spacing) / 4);
}

.filter-container .filter input, 
.filter-container .filter label {
	display: inline-block;
	font-size: 0.8rem;
	white-space: nowrap;
} 
/* End Meal Filter Area Styling */

/* Start Mini Cart Styling */
.improvise .primary-nav.tab-underline .woocommerce-mini-cart-item.mini_cart_item {
	padding-top: calc( var(--s-spacing) / 4 );
	padding-bottom: calc( var(--s-spacing) / 4 );
}

.improvise .woocommerce-mini-cart-item.mini_cart_item a.remove {
	display: none; /* Prevent removing items from cart in mini-cart */
	top: calc( var(--s-spacing) / 4 );
	font-size: 0.8rem;
}

.woocommerce-mini-cart .woocommerce-mini-cart-item.mini_cart_item a:not(.remove) {
	
}

.woocommerce-mini-cart .woocommerce-mini-cart-item.mini_cart_item a:not(.remove) img {
	max-width: 50px;
	-padding-bottom: calc( var(--s-spacing) /  );
}

.woocommerce-mini-cart .woocommerce-mini-cart-item.mini_cart_item .variation {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.woocommerce-mini-cart .woocommerce-mini-cart-item.mini_cart_item .variation,
.woocommerce-mini-cart .woocommerce-mini-cart-item.mini_cart_item .variation p {
	font-size: 0.7rem;
	line-height: normal;
	margin: 0;
}

.woocommerce-mini-cart .woocommerce-mini-cart-item.mini_cart_item .quantity {
	display: flex;
	justify-content: space-between;
	margin: 0;
	margin-left: calc( var(--l-spacing) + calc( var(--s-spacing) / 2 ) );
}

.woocommerce-mini-cart .woocommerce-mini-cart-item.mini_cart_item .quantity .amount {
	margin-top: 0;
	font-size: 0.7rem;
}
/* End Mini Cart Styling */

/* Start General Gravity Form Style Updates */
body.improvise .gravity-theme.ui-datepicker {
	z-index: 999999 !important;
}
body.improvise .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
body.improvise .gform_wrapper textarea,
body.improvise .gform_wrapper select {
	padding: 8px 16px !important;
}

body.improvise .gform_wrapper .ginput_container_select:after {
	height: 12px;
	right: 8px;
	top: 14px;
}

body.improvise .gform_wrapper.gravity-theme .gfield_label {
	margin-bottom: 0;
}

.gfield_checkbox .gchoice {
	position: relative;
}

.gfield_checkbox .gchoice .gfield-choice-input {
	visibility: hidden;
}

.gfield_checkbox .gchoice .gfield-choice-input + label:before {
	content: '';
	position: absolute;
	top: 4px;
	left: 0;
	height: var(--s-spacing);
	width: var(--s-spacing);
	border: 2px solid var(--color-primary);
}

.gfield_checkbox .gchoice .gfield-choice-input:checked + label:after {
	content: '';
	position: absolute;
	top: 7px;
	left: 7px;
	width: 6px;
	height: 12px;
	border-right: 2px solid var(--color-primary);
	border-bottom: 2px solid var(--color-primary);
	transform: rotate(35deg);
}

body.improvise .gform_wrapper .gform_footer .gform_button {
	color: var(--color-accent);
	border-color: var(--color-primary);
	background-color: var(--color-primary);
	border-radius: var(--m-spacing);
}

body.improvise .gform_wrapper .gform_footer .gform_button:hover {
	color: white;
	border-color: var(--color-accent);
	background-color: var(--color-accent);
}
	
body img.gform_ajax_spinner {
    display: none!important;
}
/* End General Gravity Form Style Updates */

/* Start Custom Shop Page Styling */
.woocommerce-shop.recipe main .row {
	padding-bottom: var(--l-spacing);
}
@media (min-width: 1201px) {
	.woocommerce-shop.recipe main .row {
		padding: 0 var(--l-spacing) var(--l-spacing);
	}
}

.meal-selection-a-la-carte {
	position: relative;
	display: flex;
	gap: 3%;
	width: 100%;
}

.meal-selection-a-la-carte .recipes.products,
.woocommerce-shop.recipe .woocommerce-notices-wrapper {
	width: calc( 97% - 230px );
}

@media (max-width: 1050px) {
	.woocommerce-shop.recipe .woocommerce-notices-wrapper {
		width: auto;
	}
}

@media (max-width: 790px) {
	.woocommerce-shop.recipe .woocommerce-notices-wrapper {
		
		& .woocommerce-info {
			display: grid;
    		grid-template-columns: repeat(2, 48%);
			gap: 4%;
			padding: 0.5em 0.5em 0.5em 2em;
			
			&:before {
				top: 0.5em;
				left: 0.5em;
			}
			
			& .message {
				grid-column: 1/3;
			}
			
			& a {
				white-space: nowrap;
                padding-left: 5px;
                padding-right: 5px;
                text-align: center;
			}
		}
	}
}
	
.alacart-delivery {
	font-weight: normal;
	font-size: 0.8rem;
}

/* .recipes.columns-2 .recipe {
	flex-basis: calc(50% - 0.5rem);
}

.recipes.columns-3 .recipe {
	flex-basis: calc(33.3% - 0.5rem);
}

.recipes.columns-4 .recipe {
	flex-basis: calc(25% - 0.5rem);
} */

body.improvise.woocommerce.post-type-archive-product {
	overflow-x: visible;
}

.improvise.woocommerce.post-type-archive-product .woocommerce-breadcrumb {
	margin: 0;
}

.improvise.post-type-archive-product main.shop .page-title {
	margin: var(--s-spacing) 0;
	padding-top: 0;
}

.meal-selection-a-la-carte .selection-side-content {
	display: block !important;
	margin-top: 36px;
	padding: 0;
    max-width: 230px;
	position: -webkit-sticky;
	position: sticky;
	--min-height: 40vh;
	max-height: 50vh;
	
}

.woocommerce-shop.recipe .button.a-la-carte-selections {
	margin-top: 0;
	margin-bottom: var(--s-spacing);
	min-width: 100%;
	border-radius: var(--m-spacing);
	color: var(--color-accent);
	
	&:hover {
		color: white;
	}
}

.woocommerce-shop.recipe .cart-btn {
	margin-right: var(--s-spacing);
}

@media (max-width: 1100px) and (min-width: 850px) {
	.meal-selection-a-la-carte .recipes .recipe {
		flex-basis: calc(50% - calc(var(--s-spacing) / 4));
	}
}

@media (max-width: 600px) {
	.meal-selection-a-la-carte .recipes.products {
		flex-basis: 100%;
	}
	.meal-selection-a-la-carte .selection-side-content {
		position: fixed;
		top: auto;
		bottom: 0;
		height: 142px;
		padding-top: 42px;
		max-width: 100%;
		margin-left: calc(var(--s-spacing) * -1 );
		z-index: 99;
	}
	.meal-selection-a-la-carte .selection-side-content .side-section {
		padding: calc(var(--s-spacing) / 4 );
	}
	.woocommerce-shop.recipe {
		
		& .select-container {
			background: white;
			padding-top: 2px;
			position: fixed;
			bottom: 100px;
		}
	
		& .button.a-la-carte-selections {
			margin-bottom: 0;
			border-color: black;
    		min-width: calc(100% - (var(--s-spacing) * 2));
			box-shadow: 0px 5px 5px 0 rgba(0, 0, 0, 0.3);
		}
	}
}
/* End Custom Shop Page Styling */
	
/* Start Custom Checkout Styling */
.woocommerce .coupon-gift-card-wrapper {
	display: grid;
    grid-template-columns: repeat(2, 48%);
    column-gap: 4%;
	
	& .woocommerce-form-coupon-toggle {
		grid-column: 1 / 3;
		
		& .woocommerce-info {
			border-top-color: var(--color-accent);
			background-color: var(--color-secondary);
    		color: white;
			
			&::before {
				color: var(--color-accent);
			}
			
			& a:link, a:visited {
				color: white;
			}
		}
	}
	
	& form.checkout_coupon {
		margin-top: 0;
		padding: 10px !important;
	}
	
	& .woocommerce-notices-wrapper {
		grid-column: 1 / 3;
    	grid-row: 3 / 4;
	}
	
	& .woocommerce-form-login-toggle {
		grid-column: 1 / 3;
		
		& .woocommerce-info {
			border-top-color: var(--color-accent);
			background-color: var(--color-secondary);
    		color: white;
			
			&::before {
				color: var(--color-accent);
			}
			
			& a:link, a:visited {
				color: white;
			}
		}
		
		& + .woocommerce-form-login {
			grid-column: 1 / 3;
		}
	}
}
	
.woocommerce .blockUI.blockOverlay::before {
	top: auto !important;
	bottom: 59px;
}
	
.woocommerce-checkout article {
	margin-bottom: var(--l-spacing);
}

.woocommerce-checkout-review-order-table {
	border-collapse: collapse !important;
    background-color: #efefef;
	
	& thead {
		background-color: var(--color-accent);
    	color: white;
	}
	
	& td.product-name dl.variation:last-child {
		margin-top: 0;	
	}
	
	& tfoot, tbody {
		& td, th {
			padding: 3px 12px !important;
		}
	}
}

.woocommerce table.shop_table.delivery-charges-table {
	border-collapse: collapse;
    background-color: #f5a8004d;
	
	& thead {
		background-color: var(--color-primary);
    	color: black;
		
		& .product-total {
			text-transform: uppercase;
		}
	}
		
	& td, th {
		padding: 3px 12px;
		border: 1px solid var(--color-accent) !important;
	}
		
	& td:last-child, th:last-child {
		text-align: right;
	}
	
	& tfoot {
		
		& .order-total {
			background-color: var(--color-secondary);
			color: white;
		}
	}
}
/* End Custom Checkout Styling */