@keyframes fadeout
{
    from
    {
    	opacity: 1;
    }

    to
    {
    	opacity: 0;
    }
}

.fade-out
{
	animation: 1000ms linear 1 forwards running fadeout;
}

.ecom-heading
{
	font-size: 16pt;
	font-weight: normal;
	font-style: italic;
	color: #666666;
	margin: 40px auto;
}

.required-marker
{
	color: #B30000;
	margin-right: 5px;
}

.button-cancel
{
	background-color: #6E6E6E;
	color: #ffffff !important;
}

.button-cancel .fa,
.button-cancel .fas,
.button-cancel .far
{
	margin-right: 3px;
}

.button-cancel:hover
{
	background-color: #7c7c7c;
}

.button-row
{
	display: flex;
	flex-flow: row wrap;
    justify-content: center;
    align-items: center;
	margin-top: 15px;
	margin-bottom: 15px;
	text-align: center;
}

.button-row [type="button"],
.button-row a
{
	margin-right: 20px;
}

.button-row button,
.button-row a
{
	margin-bottom: 10px;
}

.button-row [type="button"]:last-of-type,
.button-row a:last-of-type
{
	margin-right: 0;
}

.button-row a.right-margin
{
	margin-right: 20px !important;
}

.button-row input[type="submit"]
{
	margin-right: 0;
}

button,
input[type="button"]
{
	border: none;
}

button span
{
	font-size: 12pt;
	margin-right: 5px;
}

.star-container
{
	color: #414141;
}

.error-container
{
	width: 100%;
	max-width: 400px;
	text-align: center;
	border: 1px solid #dedede;
	border-radius: 5px;
	background-color: #f7f7f7;
	padding: 10px;
	margin: 15px auto;
	color: #da1c04;
}

.error-container ul li::before
{
	color: #da1c04;
}

.error-container ul li
{
	margin-bottom: 10px;
}

.small-icon
{
	font-size: 10pt;
}

.name-value-row
{
	margin-bottom: 20px;
}

#ajax_save_icon
{
	position: absolute;
	z-index: 1000;
	bottom: 10px;
	right: 10px;
	font-size: 12pt;
	color: #333333;
}

.primary-section
{
	margin-bottom: 60px;
}

.secondary-section
{
	margin-bottom: 30px;
}

.icon-button-link-container
{
	display: flex;
	flex-flow: row wrap;
	align-items: center;
}

.icon-button-link-container a
{
	font-weight: normal;
	text-decoration: none;
}

.icon-button-link
{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	padding: 15px;
    border: 1px solid #dedede;
    border-radius: 5px;
	color: #414141;
	font-size: 13pt;
	margin-bottom: 5px;
	transition: background-color 200ms;
}

.icon-button-link:hover
{
	color: #414141;
	background-color: #f7f7f7;
}

.icon-button-link > span
{
	margin-right: 3px;
}

.icon-button-link-container .icon-button-link
{
	margin-right: 15px;
}

.icon-button-link-container .icon-button-link:last-of-type
{
	margin-right: 0;
}

.quantity-alert-container
{
	display: flex;
	align-items: flex-start;
	border: 1px solid #5a5a5a;
	border-radius: 5px;
	padding: 15px;
	margin: 7px 0;
	background-color: #ffffff;
}

.quantity-alert-container > span
{
	font-size: 20pt;
	margin-right: 10px;
}

.quantity-alert-container > div > p
{
	font-size: 12pt;
}

.quantity-alert-container > div > p a
{
	white-space: nowrap;
}

.quantity-alert-container > div > p a > span
{
	font-size: 10pt;
}

.quantity-alert-container > div > .alert-heading
{
	font-size: 16pt;
	font-weight: bold;
	line-height: 26px;
}

.container-max-width
{
	max-width: 1440px;
}

#ecom_breadcrumb_container
{
	margin-top: 45px;
}

#ecom_breadcrumb_container ol
{
	overflow: auto;
	white-space: nowrap;
	background-color: #ffffff;
	padding: 0;
	margin: 0;
}

#ecom_breadcrumb_container.lunchbuilder ol
{
	margin-bottom: 10px;
}

.breadcrumb > li+li:before
{
	content: "\f054";
	font-family: "font_awesome";
	font-size: 9pt;
	color: #000000;
	padding: 0 8px;
}

#ecom_breadcrumb_container,
#ecom_breadcrumb_container a:link,
#ecom_breadcrumb_container a:active,
#ecom_breadcrumb_container a:visited
{
	font-size: 11pt;
	font-weight: normal !important;
	color: #000000;
	text-transform: uppercase;
	transition: color 200ms;
}

#ecom_breadcrumb_container > a:hover
{
	color: #B6272F;
}

/*********************************************************************************************************************************************
 /$$$$$$$  /$$$$$$$   /$$$$$$  /$$$$$$$  /$$   /$$  /$$$$$$  /$$$$$$$$       /$$       /$$$$$$  /$$$$$$  /$$$$$$$$ /$$$$$$ /$$   /$$  /$$$$$$
| $$__  $$| $$__  $$ /$$__  $$| $$__  $$| $$  | $$ /$$__  $$|__  $$__/      | $$      |_  $$_/ /$$__  $$|__  $$__/|_  $$_/| $$$ | $$ /$$__  $$
| $$  \ $$| $$  \ $$| $$  \ $$| $$  \ $$| $$  | $$| $$  \__/   | $$         | $$        | $$  | $$  \__/   | $$     | $$  | $$$$| $$| $$  \__/
| $$$$$$$/| $$$$$$$/| $$  | $$| $$  | $$| $$  | $$| $$         | $$         | $$        | $$  |  $$$$$$    | $$     | $$  | $$ $$ $$| $$ /$$$$
| $$____/ | $$__  $$| $$  | $$| $$  | $$| $$  | $$| $$         | $$         | $$        | $$   \____  $$   | $$     | $$  | $$  $$$$| $$|_  $$
| $$      | $$  \ $$| $$  | $$| $$  | $$| $$  | $$| $$    $$   | $$         | $$        | $$   /$$  \ $$   | $$     | $$  | $$\  $$$| $$  \ $$
| $$      | $$  | $$|  $$$$$$/| $$$$$$$/|  $$$$$$/|  $$$$$$/   | $$         | $$$$$$$$ /$$$$$$|  $$$$$$/   | $$    /$$$$$$| $$ \  $$|  $$$$$$/
|__/      |__/  |__/ \______/ |_______/  \______/  \______/    |__/         |________/|______/ \______/    |__/   |______/|__/  \__/ \______/
********************************************************************************************************************************************/
#ecom_product_list_container
{
	min-height: 330px;
}

#ecom_product_list_container .product-container
{
	box-sizing: content-box;
	width: 100%;
	max-width: 330px;
	height: 280px;
	margin: 0 auto;
}

#ecom_product_list_container h2
{
	font-size: 28pt;
    margin-bottom: 30px;
    border-bottom: 2px solid #000000;
    padding-bottom: 15px;
}

@media screen and (max-width:992px)
{
	#ecom_product_list_container .product-container
	{
		height: 520px;
	}
}

@media screen and (max-width:727px)
{
	#ecom_product_list_container .product-container
	{
		height: 72vw;
	}
}

#ecom_product_list_container .product-container a
{
	text-decoration: none;
}

#ecom_product_list_container.grocery .product-container a
{
	cursor: default;
}

#ecom_product_list_container .product-container .product-image-container
{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	background-color: #ffffff;
	box-shadow: 0 0 15px rgba(0,0,0,0.20);
	border-radius: 2px;
	padding-top: 100%;
	max-height: 330px;
	transition: all 200ms;
}

#ecom_product_list_container:not(.grocery) .product-container a:hover .product-image-container
{
	transform: scale(1.02) translateY(-3px);
	box-shadow: 0 0 15px rgba(0,0,0,0.15);
}

#ecom_product_list_container:not(.grocery) .product-container a .product-image-container .flag-container,
#ecom_product_list_container:not(.grocery) .product-container.lunch .product-image-container .flag-container
{
	top: 2px;
	left: 2px;
	transition: all 200ms;
}

#ecom_product_list_container:not(.grocery) .product-container a:hover .product-image-container .flag-container
{
	top: 0;
	left: 0;
}

#ecom_product_list_container .product-container .product-image-container img
{
	position: absolute;
	top: 0;
	left: 0;
	height: 100% !important;
	width: 100% !important;
	object-fit: contain;
	transition: all 200ms;
}

#ecom_product_list_container .product-container .top-detail-block
{
	margin-top: 15px;
}

#ecom_product_list_container .product-container .product-name
{
	font-family: "Source Sans 3", sans-serif;
	font-weight: normal;
    font-size: 16px;
    color: #212121;
    text-align: center;
	margin-bottom: 5px;
    transition: color 200ms;
}

#ecom_product_list_container .product-container .additional-styles-text
{
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: center;
	text-align: center;
}

#ecom_product_list_container .product-container .additional-styles-text > div
{
	position: relative;
	display: inline-block;
	font-family: "Source Sans 3", sans-serif;
	font-size: 13pt;
	font-weight: normal;
	color: #860038;
	text-align: center;
}

#ecom_product_list_container .product-container .additional-styles-text > div::after
{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #860038;
	transition: transform 200ms;
}

#ecom_product_list_container .product-container a:hover .additional-styles-text > div::after
{
	transform: scaleX(1.10);
}

.datetime-container
{
	display: flex;
	align-items: center;
}

.datetime-container.lunch
{
	margin-top: 0;
}

.datetime-container > span
{
	font-weight: normal;
	margin: 0 5px;
}

.datetime-container .input-icon-container
{
	position: relative;
}

.datetime-container .input-icon-container > span
{
	position: absolute;
	left: 7px;
	top: 50%;
	transform: translateY(-50%);
}

.datetime-container .input-icon-container input[type="text"].date-input
{
	max-width: 130px;
    padding: 3px 3px 3px 28px !important;
}

.datetime-container .input-icon-container input[type="text"].time-input
{
	max-width: 115px;
    padding: 3px 3px 3px 28px !important;
}

.blackout-date-container
{
	display: block;
	margin: 15px 0;
	padding: 20px;
	border: 1px solid #000000;
	border-radius: 5px;
}

.blackout-date-container h3
{
	margin-bottom: 15px !important;
}

.blackout-date-container > div
{
	display: flex;
	font-size: 11pt;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #efefef;
}

.blackout-date-container > div:last-of-type
{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: 0;
}

.blackout-date-container > div > span
{
	display: flex;
	align-items: center;
	font-size: 18pt;
	margin-right: 15px;
}

.blackout-date-container > div > img
{
	height: 35px;
    margin-top: 3px;
    margin-right: 10px;
}

.next-available-date-container
{
	margin-top: 20px;
	padding-top: 15px;
	border-top: 1px solid #000000;
}

.next-available-date-container > div
{
	margin-top: 3px;
}

/***********************************************************************************************************************
  /$$$$$$              /$$                                                             /$$       /$$             /$$
 /$$__  $$            | $$                                                            | $$      |__/            | $$
| $$  \__/  /$$$$$$  /$$$$$$    /$$$$$$   /$$$$$$   /$$$$$$   /$$$$$$  /$$   /$$      | $$       /$$  /$$$$$$$ /$$$$$$
| $$       |____  $$|_  $$_/   /$$__  $$ /$$__  $$ /$$__  $$ /$$__  $$| $$  | $$      | $$      | $$ /$$_____/|_  $$_/
| $$        /$$$$$$$  | $$    | $$$$$$$$| $$  \ $$| $$  \ $$| $$  \__/| $$  | $$      | $$      | $$|  $$$$$$   | $$
| $$    $$ /$$__  $$  | $$ /$$| $$_____/| $$  | $$| $$  | $$| $$      | $$  | $$      | $$      | $$ \____  $$  | $$ /$$
|  $$$$$$/|  $$$$$$$  |  $$$$/|  $$$$$$$|  $$$$$$$|  $$$$$$/| $$      |  $$$$$$$      | $$$$$$$$| $$ /$$$$$$$/  |  $$$$/
 \______/  \_______/   \___/   \_______/ \____  $$ \______/ |__/       \____  $$      |________/|__/|_______/    \___/
                                         /$$  \ $$                     /$$  | $$
                                        |  $$$$$$/                    |  $$$$$$/
                                         \______/                      \______/
***********************************************************************************************************************/
#ecom_category_description_container
{
	margin-top: 45px;
	margin-bottom: 45px;
}

#ecom_category_description_container h1
{
	position: relative;
	padding-top: 20px;
}

#ecom_category_description_container h1::before
{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 31px;
	height: 1px;
	background-color: #000000;
}

#ecom_category_list_container h2
{
	font-size: 28pt;
    margin-bottom: 30px;
    border-bottom: 2px solid #000000;
    padding-bottom: 15px;
}

#ecom_category_list_container .category-container
{
	height: 300px;
}

@media screen and (max-width:1200px)
{
	#ecom_category_list_container .category-container
	{
		margin: 0 auto;
	}
}

#ecom_category_list_container .category-container.sub
{
	height: 285px;
}

@media screen and (max-width:768px)
{
	#ecom_category_list_container .category-container,
	#ecom_category_list_container .category-container.sub
	{
		height: 57vw;
	}
}

@media screen and (max-width:480px)
{
	#ecom_category_list_container .category-container,
	#ecom_category_list_container .category-container.sub
	{
		height: 64vw;
	}
}

#ecom_category_list_container .category-container a
{
	display: flex;
	flex-flow: column wrap;
	justify-content: flex-start;
	box-sizing: content-box;
	width: 100%;
	max-width: 330px;
	margin: 0 auto;
	text-decoration: none;
}

#ecom_category_list_container .category-container a .category-image-container
{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	background-color: #ffffff;
	padding-top: 100%;
	max-height: 330px;
	box-shadow: 0 0 15px rgba(0,0,0,0.20);
	transition: transform 200ms, box-shadow 200ms;
}

#ecom_category_list_container .category-container .category-image-container img
{
	position: absolute;
	top: 0;
	left: 0;
	height: 100% !important;
	width: 100% !important;
	object-fit: contain;
	transition: all 200ms;
}

#ecom_category_list_container .category-container a:hover .category-image-container
{
	transform: 	scale(1.02)
				translateY(-3px);
	box-shadow: 0 0 15px rgba(0,0,0,0.15);
}

#ecom_category_list_container .category-container a .category-name
{
	font-family: "Source Sans 3", sans-serif;
	font-weight: bold;
	font-size: 17pt;
	text-align: center;
	margin-top: 15px;
	color: #212121;
	transition: color 200ms;
}

@media screen and (max-width:628px)
{
	#ecom_category_list_container .category-container a .category-name
	{
		font-size: 13pt;
		margin-top: 5px;
	}
}

#ecom_category_list_container .category-container.sub a .category-name
{
	font-size: 13pt;
}

#ecom_category_list_container.root .category-container:hover .category-name
{
	color: #860038;
}

#ecom_category_list_container .category-container .category-teaser
{
	font-family: "proxima_nova";
	font-weight: normal;
	font-size: 13pt;
	color: #55575A;
	text-align: center;
}

/***************************************************************************************************************************************
  /$$$$$$                                                      /$$                 /$$       /$$                           /$$
 /$$__  $$                                                    | $$                /$$/      | $$                          |__/
| $$  \ $$  /$$$$$$$  /$$$$$$$  /$$$$$$  /$$   /$$ /$$$$$$$  /$$$$$$             /$$/       | $$        /$$$$$$   /$$$$$$  /$$ /$$$$$$$
| $$$$$$$$ /$$_____/ /$$_____/ /$$__  $$| $$  | $$| $$__  $$|_  $$_/            /$$/        | $$       /$$__  $$ /$$__  $$| $$| $$__  $$
| $$__  $$| $$      | $$      | $$  \ $$| $$  | $$| $$  \ $$  | $$             /$$/         | $$      | $$  \ $$| $$  \ $$| $$| $$  \ $$
| $$  | $$| $$      | $$      | $$  | $$| $$  | $$| $$  | $$  | $$ /$$        /$$/          | $$      | $$  | $$| $$  | $$| $$| $$  | $$
| $$  | $$|  $$$$$$$|  $$$$$$$|  $$$$$$/|  $$$$$$/| $$  | $$  |  $$$$/       /$$/           | $$$$$$$$|  $$$$$$/|  $$$$$$$| $$| $$  | $$
|__/  |__/ \_______/ \_______/ \______/  \______/ |__/  |__/   \___/        |__/            |________/ \______/  \____  $$|__/|__/  |__/
                                                                                                                 /$$  \ $$
                                                                                                                |  $$$$$$/
                                                                                                                 \______/
***************************************************************************************************************************************/
.ecom-account-login-container form
{
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 650px;
	margin: 20px auto;
    padding: 40px;
    border: 1px solid #dedede;
	border-radius: 5px;
}

.ecom-account-login-container form .description-container
{
	width: 100%;
	text-align: center;
	margin-bottom: 20px;
}

.ecom-account-login-container form .description-container h1
{
	font-size: 34pt;
}

@media screen and (max-width:991px)
{
	.ecom-account-login-container form .description-container
	{
		margin-bottom: 10px;
	}
}

.ecom-account-login-container form.create-account
{
	max-width: 100%;
	margin-top: 0;
	padding: 20px 40px;
}

@media screen and (max-width:991px)
{
	.ecom-account-login-container form
	{
		padding: 20px 10px;
	}
}

.ecom-account-login-container form .row
{
	padding-top: 15px;
	padding-bottom: 15px;
	width: 100%;
}

.ecom-account-login-container form .billing-details-toggle-label
{
	margin-top: 5px;
	margin-bottom: 15px;
}

.ecom-account-login-container form div input[type="text"],
.ecom-account-login-container form div input[type="password"]
{
	font-size: 12pt;
	padding: 5px;
	width: 100%;
	border: 1px solid #d1d1d1;
	border-radius: 3px;
	transition: background-color 200ms;
}

.ecom-account-login-container form div input[type="text"]:hover,
.ecom-account-login-container form div input[type="password"]:hover
{
	background-color: #F7F7F7;
}

.ecom-account-login-container form  .additional-link-container
{
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin: 20px auto 0 auto;
	border-top: 1px solid #E2E2E2;
}

@media screen and (max-width:400px)
{
	.ecom-account-login-container form  .additional-link-container
	{
		flex-flow: column nowrap;
		align-items: center;
	}
}

.ecom-account-login-container form div.additional-link-container a:link,
.ecom-account-login-container form div.additional-link-container a:active,
.ecom-account-login-container form div.additional-link-container a:visited
{
	text-decoration: none;
	transition: color 200ms;
}


@media screen and (max-width:991px)
{
	.ecom-account-login-container form div.additional-link-container a:link,
	.ecom-account-login-container form div.additional-link-container a:active,
	.ecom-account-login-container form div.additional-link-container a:visited,
	.ecom-account-login-container form div.additional-link-container a:hover
	{
		margin: 10px 0;
	}
}



/************************************************************************************************************************************************
 /$$$$$$$$                                        /$$           /$$$$$$$                                                                      /$$
| $$_____/                                       | $$          | $$__  $$                                                                    | $$
| $$     /$$$$$$   /$$$$$$   /$$$$$$   /$$$$$$  /$$$$$$        | $$  \ $$ /$$$$$$   /$$$$$$$ /$$$$$$$ /$$  /$$  /$$  /$$$$$$   /$$$$$$   /$$$$$$$
| $$$$$ /$$__  $$ /$$__  $$ /$$__  $$ /$$__  $$|_  $$_/        | $$$$$$$/|____  $$ /$$_____//$$_____/| $$ | $$ | $$ /$$__  $$ /$$__  $$ /$$__  $$
| $$__/| $$  \ $$| $$  \__/| $$  \ $$| $$  \ $$  | $$          | $$____/  /$$$$$$$|  $$$$$$|  $$$$$$ | $$ | $$ | $$| $$  \ $$| $$  \__/| $$  | $$
| $$   | $$  | $$| $$      | $$  | $$| $$  | $$  | $$ /$$      | $$      /$$__  $$ \____  $$\____  $$| $$ | $$ | $$| $$  | $$| $$      | $$  | $$
| $$   |  $$$$$$/| $$      |  $$$$$$$|  $$$$$$/  |  $$$$/      | $$     |  $$$$$$$ /$$$$$$$//$$$$$$$/|  $$$$$/$$$$/|  $$$$$$/| $$      |  $$$$$$$
|__/    \______/ |__/       \____  $$ \______/    \___/        |__/      \_______/|_______/|_______/  \_____/\___/  \______/ |__/       \_______/
                            /$$  \ $$
                           |  $$$$$$/
                            \______/
************************************************************************************************************************************************/
#ecom_forgot_password_container
{
	width: 100%;
	max-width: 650px;
    margin: 20px auto;
    padding: 40px;
    border: 1px solid #dedede;
	border-radius: 5px;
}

#ecom_forgot_password_container > .description
{
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	margin-bottom: 30px;
}

#ecom_forgot_password_container > .description h1
{
	font-size: 34pt;
}

#ecom_forgot_password_container .forgot_password_form
{
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
}

#ecom_forgot_password_container .error,
#delivery_destination_error_message.error
{
	text-align: center;
	border: 1px solid #CECECEFF;
	background-color: #fbfbfb;
	padding: 10px;
	color: #e2260e;
}

#delivery_destination_error_message
{
	margin: 30px auto;
}

#ecom_forgot_password_container .forgot_password_form > div
{
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	padding: 10px 0;
	width: 100%;
	max-width: 600px;
}


#ecom_forgot_password_container .forgot_password_form > div.submit
{
	flex-flow: row nowrap;
	justify-content: center;
}

#ecom_forgot_password_container .forgot_password_form > div.submit *
{
	margin: 0 10px;
}

@media screen and (max-width:992px)
{
	#ecom_forgot_password_container .forgot_password_form > div
	{
		flex-flow: column nowrap;
	}
}

#ecom_forgot_password_container .forgot_password_form > div input[type="text"],
#ecom_forgot_password_container .forgot_password_form > div input[type="password"]
{
	font-size: 12pt;
	padding: 5px;
	width: 95%;
	max-width: 300px;
	border: 1px solid #d1d1d1;
	transition: background-color 200ms;
}

#ecom_forgot_password_container .forgot_password_form > div input[type="text"]:hover,
#ecom_forgot_password_container .forgot_password_form > div input[type="password"]:hover
{
	background-color: #F7F7F7;
}

#ecom_forgot_password_container .forgot_password_form > div.extra-links
{
	justify-content: space-between;
	width: 100%;
	max-width: 385px;
	margin-top: 20px;
	border-top: 1px solid #E2E2E2;
}

#ecom_forgot_password_container .forgot_password_form > div.extra-links a:link,
#ecom_forgot_password_container .forgot_password_form > div.extra-links a:active,
#ecom_forgot_password_container .forgot_password_form > div.extra-links a:visited
{
	text-decoration: none;
	transition: color 200ms;
}

@media screen and (max-width:992px)
{
	#ecom_forgot_password_container .forgot_password_form > div.extra-links a:link,
	#ecom_forgot_password_container .forgot_password_form > div.extra-links a:active,
	#ecom_forgot_password_container .forgot_password_form > div.extra-links a:visited,
	#ecom_forgot_password_container .forgot_password_form > div.extra-links a:hover
	{
		margin: 5px 0;
	}
}


/*****************************************************************************************
 /$$$$$$$                      /$$       /$$                                           /$$
| $$__  $$                    | $$      | $$                                          | $$
| $$  \ $$  /$$$$$$   /$$$$$$$| $$$$$$$ | $$$$$$$   /$$$$$$   /$$$$$$   /$$$$$$   /$$$$$$$
| $$  | $$ |____  $$ /$$_____/| $$__  $$| $$__  $$ /$$__  $$ |____  $$ /$$__  $$ /$$__  $$
| $$  | $$  /$$$$$$$|  $$$$$$ | $$  \ $$| $$  \ $$| $$  \ $$  /$$$$$$$| $$  \__/| $$  | $$
| $$  | $$ /$$__  $$ \____  $$| $$  | $$| $$  | $$| $$  | $$ /$$__  $$| $$      | $$  | $$
| $$$$$$$/|  $$$$$$$ /$$$$$$$/| $$  | $$| $$$$$$$/|  $$$$$$/|  $$$$$$$| $$      |  $$$$$$$
|_______/  \_______/|_______/ |__/  |__/|_______/  \______/  \_______/|__/       \_______/
*****************************************************************************************/
.dashboard.description
{
	border-bottom: 1px solid #e5e5e5;
	padding-bottom: 15px;
	margin-bottom: 30px;
}

.dashboard h1
{
	font-size: 32pt;
}

@media screen and (max-width:991px)
{
	.dashboard h1
	{
		font-size: 22pt;
	}
}

.dashboard.breadcrumb-container
{
	margin-top: 15px;
	margin-bottom: 40px;
}

.dashboard.breadcrumb-container ol
{
	overflow: auto;
	white-space: nowrap;
	background-color: transparent;
	padding-left: 0;
	padding-right: 0;
}

.dashboard.breadcrumb-container ol.breadcrumb > li+li:before
{
	content: "\f054";
	font-family: "font_awesome";
	font-size: 9pt;
	color: #333333;
	padding: 0 8px;
}

.dashboard.breadcrumb-container,
.dashboard.breadcrumb-container a:link,
.dashboard.breadcrumb-container a:active,
.dashboard.breadcrumb-container a:visited
{
	font-size: 12pt;
	font-weight: normal;
	transition: color 200ms;
}

.dashboard.dashboard-items-container a:link,
.dashboard.dashboard-items-container a:visited
{
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	margin: 0 auto 30px auto;
	font-size: 15pt;
	font-weight: normal;
	width: 200px;
	height: 200px;
	color: #414141;
	border: 1px solid #dedede;
	border-radius: 5px;
	text-decoration: none;
	text-align: center;
	transition: all 200ms;
}

.dashboard.dashboard-items-container a:hover
{
	background-color: #f7f7f7;
}

.dashboard.dashboard-items-container a:link > span,
.dashboard.dashboard-items-container a:visited > span
{
	font-size: 60pt;
	padding-bottom: 15px;
	transition: transform 200ms;
}

.dashboard.dashboard-items-container a:hover > span
{
	transform: translateY(-3px);
}

.dashboard.dashboard-items-container a > span > span
{
	display: none;
}

.dashboard.dashboard-items-container > a:link img,
.dashboard.dashboard-items-container > a:visited img,
.dashboard.dashboard-items-container > a:hover img,
.dashboard.dashboard-items-container > a:active img
{
	margin-bottom: 10px;
	transition: all 200ms;
}

@media screen and (max-width:1200px)
{
	.dashboard.table-wrapper
	{
		width: 100%;
		overflow-x: scroll;
	}
}

#previous_orders_table
{
	border-radius: 5px;
	margin-bottom: 30px;
	overflow: hidden;
}

#previous_orders_table a
{
	font-weight: normal;
}

@media screen and (max-width:1199px)
{
	#previous_orders_table
	{
		overflow: visible;
		border: 1px solid #efefef;
	}
}

#previous_orders_table tr th
{
	font-size: 14pt;
	padding: 15px;
	background-color: #efefef;
	border: none;
	color: #414141;
}

#previous_orders_table tr th:first-of-type
{
	border-left: 1px solid #f7f7f7;
}

#previous_orders_table tr th:last-of-type
{
	border-right: 1px solid #f7f7f7;
}

#previous_orders_table tr th,
#previous_orders_table tr td
{
	padding: 15px;
}

@media screen and (max-width:1199px)
{
	#previous_orders_table tr td
	{
		text-align: left !important;
	}
}

@media screen and (max-width:1199px)
{
	#previous_orders_table tr td
	{
		border-top: none;
	}
}

#previous_orders_table tr td a:link,
#previous_orders_table tr td a:active,
#previous_orders_table tr td a:visited,
#previous_orders_table tr td a:hover
{
	font-size: 12pt;
}


@media screen and (max-width:1199px)
{
	#previous_orders_table.rem-responsive-table tr td
	{
		padding-top: 0;
		padding-bottom: 5px;
	}

	#previous_orders_table.rem-responsive-table tr td:first-of-type
	{
		padding-top: 30px;
	}

	#previous_orders_table.rem-responsive-table tr td:last-of-type
	{
		padding-bottom: 30px;
	}
}

@media screen and (max-width:992px)
{
	#ecom_dashboard_container .dashboard-items-container > a:link,
	#ecom_dashboard_container .dashboard-items-container > a:visited,
	#ecom_dashboard_container .dashboard-items-container > a:hover,
	#ecom_dashboard_container .dashboard-items-container > a:active
	{
		margin: 25px 0;
	}
}

@media screen and (max-width:450px)
{
	#ecom_dashboard_container .dashboard-items-container
	{
		height: 100%;
	}
}


/*******************************************************************************
  /$$$$$$  /$$                           /$$                             /$$
 /$$__  $$| $$                          | $$                            | $$
| $$  \__/| $$$$$$$   /$$$$$$   /$$$$$$$| $$   /$$  /$$$$$$  /$$   /$$ /$$$$$$
| $$      | $$__  $$ /$$__  $$ /$$_____/| $$  /$$/ /$$__  $$| $$  | $$|_  $$_/
| $$      | $$  \ $$| $$$$$$$$| $$      | $$$$$$/ | $$  \ $$| $$  | $$  | $$
| $$    $$| $$  | $$| $$_____/| $$      | $$_  $$ | $$  | $$| $$  | $$  | $$ /$$
|  $$$$$$/| $$  | $$|  $$$$$$$|  $$$$$$$| $$ \  $$|  $$$$$$/|  $$$$$$/  |  $$$$/
 \______/ |__/  |__/ \_______/ \_______/|__/  \__/ \______/  \______/    \___/
*******************************************************************************/
.checkout.breadcrumb-container
{
	margin-top: 15px;
	margin-bottom: 40px;
}

.checkout.breadcrumb-container ol
{
	display: flex;
    justify-content: space-around;
	overflow: auto;
	white-space: nowrap;
	background-color: transparent;
	border-bottom: 1px solid #e5e5e5;
	padding: 15px 5px;
}

@media screen and (max-width:992px)
{
	.checkout.breadcrumb-container ol
	{
		display: block;
	}
}

.checkout.breadcrumb-container ol.breadcrumb > li+li:before
{
	content: "";
	padding: 0 25px;
}

.checkout.breadcrumb-container li
{
	font-size: 12pt;
	font-weight: normal;
	color: #737373;
}

.checkout.breadcrumb-container li.active
{
	font-weight: bold;
	color: #333333;
}

.checkout.breadcrumb-container li span.number
{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 11pt;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background-color: #f3f3f3;
	color: #6f6f6f;
}

.checkout.breadcrumb-container li.active span.number
{
	background-color: #333333;
	color: #ffffff;
}

#checkout_container h2,
.checkout-container h2
{
	font-size: 24pt;
	margin-bottom: 10px;
}

#checkout_container h3,
.checkout-container h3
{
	font-size: 18pt;
	margin-bottom: 10px;
}

.vertically-centered-flex-container
{
	display: flex;
	align-items: center;
}

#checkout_container .email,
.checkout-container .email
{
	word-break: break-all;
}

#checkout_container legend,
.checkout-container legend
{
	padding-bottom: 5px;
}

#checkout_container fieldset label,
.checkout-container fieldset label
{
	margin-bottom: 10px;
}

#cart_container > table
{
	border-radius: 5px;
	overflow: hidden;
}

@media screen and (max-width:992px)
{
	#cart_container > table
	{
		overflow: visible;
		border: 1px solid #efefef;
	}
}

#cart_container > table tr > th
{
	font-size: 14pt;
	padding: 15px;
	background-color: #efefef;
	border: none;
	color: #414141;
}

#cart_container > table tr > th:first-of-type
{
	border-left: 1px solid #f7f7f7;
}

#cart_container > table tr > th:last-of-type
{
	border-right: 1px solid #f7f7f7;
}

#cart_container > table tr > td
{
    padding: 15px;
}

#cart_container > table tr > td li
{
	margin-bottom: 10px;
}

@media screen and (max-width:992px)
{
	#cart_container > table tr > td
	{
		border-top: none;
	}
}

#cart_container > table tr > td em
{
	font-size: 10pt;
}

#cart_container > table tr > td li em
{
	font-size: 13pt;
}

#cart_container > table tr > td .product-details-container
{
	display: flex;
}

@media screen and (max-width:991px)
{
	#cart_container > table tr > td .product-details-container
	{
		flex-flow: 	column nowrap;
		align-items: center;
	}
}

#cart_container > table tr > td .product-details-container > div
{
	width: 100%;
}

#cart_container > table tr > td .product-details-container > div > div
{
	margin-bottom: 8px;
}

#cart_container > table tr > td .product-details-container > .product-image-container
{
	width: 100%;
	max-width: 210px;
	height: 210px;
	margin-right: 15px;
	border-radius: 3px;
	overflow: hidden;
}

@media screen and (max-width:991px)
{
	#cart_container > table tr > td .product-details-container > .product-image-container
	{
		margin-right: 0;
		margin-bottom: 15px;
	}
}

#cart_container > table tr > td .product-details-container > .product-image-container > img
{
	width: 100% !important;
	height: 100% !important;
	object-fit: contain;
}

#cart_container .related-products-container
{
	margin-bottom: 20px;
    background-color: #fff;
    padding: 15px 15px 5px 15px;
	border: 1px solid #efefef;
    border-radius: 3px;
}

#cart_container .related-products-container ul li
{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	margin-bottom: 20px;
}

#cart_container .related-products-container ul li .img-container
{
	width: 100px;
	margin-right: 10px;
}

#cart_container .related-products-container ul li .img-container img
{
	object-fit: contain;
}

#cart_container > table tr td .quantity
{
	font-size: 10pt;
}

#cart_container > table tr td .action-links
{
	margin-top: 10px;
}

#cart_container > table tr td .action-links a:link,
#cart_container > table tr td .action-links a:active,
#cart_container > table tr td .action-links a:visited
{
	margin-right: 25px;
	text-decoration: none;
	transition: color 200ms;
}

#cart_container > table tr td .action-links a:hover
{
	color: #B7272F;
}

#cart_container > table tr td .action-links a:last-of-type
{
	margin-right: 0;
}

@media screen and (min-width:992px)
{
	#cart_container .mobile-only
	{
		display: none !important;
	}
}

@media screen and (max-width:991px)
{
	#cart_container table tr td
	{
		padding: 10px;
		width: 100% !important;
		float: left;
		clear: both;
	}

	#cart_container table tbody tr td:first-of-type
	{
		padding-top: 30px;
	}

	#cart_container table tbody tr td:last-of-type
	{
		padding-bottom: 30px;
	}

	#cart_container table tr:nth-of-type(odd) td
	{
		display: block;
		margin: 0 auto;
	}

	#cart_container table tr td:nth-of-type(odd)
	{
		padding-top: 10px;
		padding-bottom: 5px;
	}

	#cart_container table tr td.tax-code
	{
		text-align: right;
	}

	#cart_container > table tr > td.action-links
	{
		text-align: center;
		padding-bottom: 10px;
		border-bottom: 1px solid #dedede;
	}

	#cart_container > table tr > td.action-links a:link,
	#cart_container > table tr > td.action-links a:active,
	#cart_container > table tr > td.action-links a:visited,
	#cart_container > table tr > td.action-links a:hover
	{
		font-size: 20pt;
	}

	#cart_container > table tr > td.action-links a:link:nth-of-type(2),
	#cart_container > table tr > td.action-links a:active:nth-of-type(2),
	#cart_container > table tr > td.action-links a:visited:nth-of-type(2),
	#cart_container > table tr > td.action-links a:hover:nth-of-type(2)
	{
		margin-left: 15px;
	}

	#cart_container .desktop-only
	{
		display: none !important;
	}

	#cart_container table tbody tr.totals-row td:first-of-type
	{
		padding: 20px 10px;
	}
}

@media screen and (max-width:400px)
{
	.cart.button-row
	{
		flex-flow: column nowrap;
		align-items: center;
		width: 100%;
		justify-content: space-between;
	}

	.cart.button-row a
	{
		margin: 0;
	}

	.cart.button-row a:first-of-type
	{
		margin: 0 0 10px 0;
	}
}

fieldset label.big
{
	font-weight: normal;
	padding: 15px 20px;
	border: 1px solid #e5e5e5;
	border-radius: 5px;
	width: 100%;
	margin-bottom: 10px;
	cursor: pointer;
	transition: background-color 200ms;
}

fieldset label.big:hover,
fieldset label.big.selected
{
	background-color: #f5f5f5;
}

fieldset label.big.selected
{
	outline: 2px solid #000000;
}

fieldset label.big.shipping img
{
	height: 30px;
}

div.ww_ecom_form_error_div.shipping_error
{
	border: solid 1px red;
	border-radius: 5px;
	padding: 15px;
}

#receipt_container ul li::before
{
	display: none;
}