/********************************************************************
 /$$$$$$$$ /$$$$$$$$ /$$$$$$$$ /$$$$$$$$  /$$$$$$  /$$$$$$$$ /$$$$$$
| $$_____/| $$_____/| $$_____/| $$_____/ /$$__  $$|__  $$__//$$__  $$
| $$      | $$      | $$      | $$      | $$  \__/   | $$  | $$  \__/
| $$$$$   | $$$$$   | $$$$$   | $$$$$   | $$         | $$  |  $$$$$$
| $$__/   | $$__/   | $$__/   | $$__/   | $$         | $$   \____  $$
| $$      | $$      | $$      | $$      | $$    $$   | $$   /$$  \ $$
| $$$$$$$$| $$      | $$      | $$$$$$$$|  $$$$$$/   | $$  |  $$$$$$/
|________/|__/      |__/      |________/ \______/    |__/   \______/
********************************************************************/
@keyframes fadein
{
    from
    {
    	opacity: 0;
    }

    to
    {
    	opacity: 1;
    }
}

@keyframes bg-fade-in
{
	0%
	{
		background-color: transparent;
	}

	70%
	{
		background-color: transparent;
	}

	100%
	{
		background-color: rgba(11,13,15,0.8);
	}
}

@keyframes pulse-size
{
	0%
	{
		transform: scale(1);
	}

	49%, 50%
	{
		transform: scale(1.2);
	}

	100%
	{
		transform: scale(1);
	}
}

@keyframes background-fade-in-out
{
	0%
	{
		background-color:#ffffff;
	}

	49%, 50%
	{
		background-color:#e6e6e6;
	}

	100%
	{
		background-color:#ffffff;
	}
}

.swiper-lazy-preloader
{
	top: 0 !important;
	left: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	background-color: #ffffff;
	transform: translateZ(0) !important;
	animation: background-fade-in-out 1s infinite ease !important;
}

/* Hide the swiper spinner gif */
.swiper-lazy-preloader::after
{
	display: none !important;
}

.raise-on-hover
{
	transition: transform 0.2s;
}

.raise-on-hover:hover
{
	transform: translate(0, -3px);
}

.img-raise-on-hover img
{
	transition: transform 0.2s;
}

.img-raise-on-hover:hover img
{
	transform: translate(0, -3px);
}

.lower-on-hover
{
	transition: transform 0.2s;
}

.lower-on-hover:hover
{
	transform: translate(0, 3px);
}

.decrease-opacity-on-hover
{
	transition: opacity 0.2s;
}

.decrease-opacity-on-hover:hover
{
	opacity: 0.8;
}

@media screen and (min-width: 1201px)
{
	.fade-in
	{
		opacity: 0;
		animation: fadein ease-in 1;
		animation-fill-mode: forwards;
		animation-duration: 1s;
	}
}

.fade-in.fade-first
{
	animation-delay: 0.3s;
}

.fade-in.fade-second
{
	animation-delay: 0.6s;
}

.fade-in.fade-third
{
	animation-delay: 0.9s;
}

.fade-in.fade-fourth
{
	animation-delay: 1.2s;
}

.fade-in.fade-fifth
{
	animation-delay: 1.5s;
}

.fade-in.fade-sixth
{
	animation-delay: 1.8s;
}

@media screen and (min-width:1024px)
{
	.middle-out-underline-on-hover:link,
	.middle-out-underline-on-hover:active,
	.middle-out-underline-on-hover:visited
	{
		position: relative;
	}

	.middle-out-underline-on-hover::before
	{
		content: '';
		position: absolute;
		width: 100%;
		height: 3px;
		bottom: -2px;
		left: 0;
		background: #8bde23;
		visibility: hidden;
		transform: scaleX(0);
		transition: all 0.2s;
	}

	.middle-out-underline-on-hover:hover::before,
	.middle-out-underline-on-hover:focus::before
	{
		visibility: visible;
		transform: scaleX(1);
	}
}

.image-grow-on-hover-container
{
	overflow: hidden;
	height: 300px;
	width: 300px;
}

.image-grow-on-hover-container > img:first-of-type
{
	transition: transform 0.2s;
	height: 100%;
	width: 100%;
}

.image-grow-on-hover-container > img:first-of-type:hover
{
	transform: scale(1.2);
}

/*************************************************
 /$$$$$$$$  /$$$$$$  /$$   /$$ /$$$$$$$$  /$$$$$$
| $$_____/ /$$__  $$| $$$ | $$|__  $$__/ /$$__  $$
| $$      | $$  \ $$| $$$$| $$   | $$   | $$  \__/
| $$$$$   | $$  | $$| $$ $$ $$   | $$   |  $$$$$$
| $$__/   | $$  | $$| $$  $$$$   | $$    \____  $$
| $$      | $$  | $$| $$\  $$$   | $$    /$$  \ $$
| $$      |  $$$$$$/| $$ \  $$   | $$   |  $$$$$$/
|__/       \______/ |__/  \__/   |__/    \______/
**************************************************/
@font-face
{
	font-family: 'REMGlyph';
	src:url('/fonts/REMGlyph.eot?xa5ysv');
	src:url('/fonts/REMGlyph.eot?#iefixxa5ysv') format('embedded-opentype'),
		url('/fonts/REMGlyph.woff?xa5ysv') format('woff'),
		url('/fonts/REMGlyph.ttf?xa5ysv') format('truetype'),
		url('/fonts/REMGlyph.svg?xa5ysv#REMGlyph') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face
{
	font-family: 'font_awesome';
	font-style: normal;
	font-weight: 900;
	src:url('/fonts/fa-solid-900.eot');
	src:url('/fonts/fa-solid-900.eot?#iefix') format('embedded-opentype'),
		url('/fonts/fa-solid-900.woff') format('woff'),
		url('/fonts/fa-solid-900.ttf') format('truetype'),
		url('/fonts/fa-solid-900.svg#fontawesome') format('svg');
	font-display: swap;
}

@font-face
{
    font-family: 'work_sans';
    src: url('/fonts/WorkSans-Bold.eot');
    src: url('/fonts/WorkSans-Bold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/WorkSans-Bold.woff') format('woff'),
        url('/fonts/WorkSans-Bold.ttf') format('truetype'),
        url('/fonts/WorkSans-Bold.svg#WorkSans-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'work_sans_extra_bold';
    src: url('/fonts/WorkSans-ExtraBold.eot');
    src: url('/fonts/WorkSans-ExtraBold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/WorkSans-ExtraBold.woff') format('woff'),
        url('/fonts/WorkSans-ExtraBold.ttf') format('truetype'),
        url('/fonts/WorkSans-ExtraBold.svg#WorkSans-ExtraBold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'work_sans';
    src: url('/fonts/WorkSans-Regular.eot');
    src: url('/fonts/WorkSans-Regular.eot?#iefix') format('embedded-opentype'),
        url('/fonts/WorkSans-Regular.woff') format('woff'),
        url('/fonts/WorkSans-Regular.ttf') format('truetype'),
        url('/fonts/WorkSans-Regular.svg#WorkSans-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'work_sans_semibold';
    src: url('/fonts/WorkSans-SemiBold.eot');
    src: url('/fonts/WorkSans-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/WorkSans-SemiBold.woff') format('woff'),
        url('/fonts/WorkSans-SemiBold.ttf') format('truetype'),
        url('/fonts/WorkSans-SemiBold.svg#WorkSans-SemiBold') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'montserrat';
    src: url('/fonts/Montserrat-Bold.eot');
    src: url('/fonts/Montserrat-Bold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Montserrat-Bold.woff') format('woff'),
        url('/fonts/Montserrat-Bold.ttf') format('truetype'),
        url('/fonts/Montserrat-Bold.svg#Montserrat-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'montserrat_medium';
    src: url('/fonts/Montserrat-Medium.eot');
    src: url('/fonts/Montserrat-Medium.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Montserrat-Medium.woff') format('woff'),
        url('/fonts/Montserrat-Medium.ttf') format('truetype'),
        url('/fonts/Montserrat-Medium.svg#Montserrat-Medium') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'montserrat_semibold';
    src: url('/fonts/Montserrat-SemiBold.eot');
    src: url('/fonts/Montserrat-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Montserrat-SemiBold.woff') format('woff'),
        url('/fonts/Montserrat-SemiBold.ttf') format('truetype'),
        url('/fonts/Montserrat-SemiBold.svg#Montserrat-SemiBold') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'montserrat_extrabold';
    src: url('/fonts/Montserrat-ExtraBold.eot');
    src: url('/fonts/Montserrat-ExtraBold.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Montserrat-ExtraBold.woff') format('woff'),
        url('/fonts/Montserrat-ExtraBold.ttf') format('truetype'),
        url('/fonts/Montserrat-ExtraBold.svg#Montserrat-ExtraBold') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'dm_serif_display';
    src: url('/fonts/DMSerifDisplay-Regular.eot');
    src: url('/fonts/DMSerifDisplay-Regular.eot?#iefix') format('embedded-opentype'),
        url('/fonts/DMSerifDisplay-Regular.woff') format('woff'),
        url('/fonts/DMSerifDisplay-Regular.ttf') format('truetype'),
        url('/fonts/DMSerifDisplay-Regular.svg#DMSerifDisplay-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face
{
    font-family: 'lato';
    src: url('/fonts/Lato-Regular.eot');
    src: url('/fonts/Lato-Regular.eot?#iefix') format('embedded-opentype'),
        url('/fonts/Lato-Regular.woff') format('woff'),
        url('/fonts/Lato-Regular.ttf') format('truetype'),
        url('/fonts/Lato-Regular.svg#Lato-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


/******************************************************************************************************************************
  /$$$$$$  /$$        /$$$$$$  /$$$$$$$   /$$$$$$  /$$              /$$$$$$  /$$$$$$$$ /$$     /$$ /$$       /$$$$$$$$  /$$$$$$
 /$$__  $$| $$       /$$__  $$| $$__  $$ /$$__  $$| $$             /$$__  $$|__  $$__/|  $$   /$$/| $$      | $$_____/ /$$__  $$
| $$  \__/| $$      | $$  \ $$| $$  \ $$| $$  \ $$| $$            | $$  \__/   | $$    \  $$ /$$/ | $$      | $$      | $$  \__/
| $$ /$$$$| $$      | $$  | $$| $$$$$$$ | $$$$$$$$| $$            |  $$$$$$    | $$     \  $$$$/  | $$      | $$$$$   |  $$$$$$
| $$|_  $$| $$      | $$  | $$| $$__  $$| $$__  $$| $$             \____  $$   | $$      \  $$/   | $$      | $$__/    \____  $$
| $$  \ $$| $$      | $$  | $$| $$  \ $$| $$  | $$| $$             /$$  \ $$   | $$       | $$    | $$      | $$       /$$  \ $$
|  $$$$$$/| $$$$$$$$|  $$$$$$/| $$$$$$$/| $$  | $$| $$$$$$$$      |  $$$$$$/   | $$       | $$    | $$$$$$$$| $$$$$$$$|  $$$$$$/
 \______/ |________/ \______/ |_______/ |__/  |__/|________/       \______/    |__/       |__/    |________/|________/ \______/
*******************************************************************************************************************************/
html
{
	margin: 0;
	padding: 0;
	width: 100%;
}

body
{
	margin: 0;
	padding: 0 !important;
	width: 100%;
	font-family: "work_sans", sans-serif;
	font-size: 13pt;
	color: #000000;
	background-color: transparent !important;
}

body.locked
{
	overflow: hidden !important;
}

.container img:not(.img-non-responsive),
.container-fluid img:not(.img-non-responsive)
{
	display: inline-block !important;
	max-width: 100%;
	height: auto !important;
	border: none;
}

@media screen and (max-width:480px)
{
	.col-full-width-mobile
	{
		padding-left: 0;
		padding-right: 0;
	}
}

/* Hide outline on mouse click issue introduced in Chromium in 2026 */
a:focus:not(:focus-visible)
{
    outline: none;
}

a:focus-visible
{
	position: relative;
    outline: 2px solid #B7272F;
    outline-offset: 2px;
}

a:focus-visible::before
{
	content: "";
	position: absolute;
	top: -4px;
	left: -4px;
	width: calc(100% + 8px);
	height: calc(100% + 8px);
	border: 1px solid #000;
}

a:link,
a:visited,
a:active
{
	color: #000000;
	font-weight: bold;
}

input:focus,
textarea:focus,
select:focus
{
	outline: 1px solid #B7272F;
}

input[type="submit"]
{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	font-family: "work_sans_semibold";
	font-size: 13pt;
	font-weight: normal;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #B7272F;
	padding: 8px 15px;
	border: none;
	cursor: pointer;
	text-align: center;
	transition: all 0.2s;
	-webkit-tap-highlight-color: transparent;

	/*iPad Overrides*/
	border: none;
	-webkit-appearance: none;
}

input[type="submit"]:hover
{
	background-color: #9a1a09;
}

input[type="submit"]:active
{
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}

input[type="text"],
input[type="password"],
select,
option,
textarea
{
	font-family: "work_sans", sans-serif;
	font-size: 13pt;
	color: #000000;
}

hr
{
	height: 1px;
	background-color: #000000;
	border: 0;
}

.button-small,
.button-small:link,
.button-small:active,
.button-small:visited,
.button-small:hover
{
	font-size: 14px !important;
	padding: 3px 8px !important;
}

.button-small span
{
	font-size: 10pt;
}

.button-cancel
{
	background-color: #6E6E6E !important;
}

.button-cancel:hover
{
	background-color: #7c7c7c !important;
}

/* Responsive Tables */
table.rem-responsive-table
{
	width: 100%;
}

table.rem-responsive-table td img
{
	display: inline-block;
    max-width: 100%;
    height: auto;
}

div.container-max-width
{
	max-width: 1200px;
}

div.container-max-width-extended
{
	max-width: 1600px;
}

div.container-max-width-1920
{
	max-width: 1920px;
}

.rem-responsive-16x9-video
{
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.rem-responsive-16x9-video iframe,
.rem-responsive-16x9-video object,
.rem-responsive-16x9-video embed
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.container ul
{
	padding-left: 20px;
}

.container ul li
{
	position: relative;
	list-style: none;
}

.container ul li::before
{
	content: '\2022';
	position: absolute;
    display: block;
    left: -20px;
    color: #000000;
    font-size: 13pt;
    top: 0;
}

.vertical-padding-h1
{
	padding-top: 120px;
    padding-bottom: 40px;
}

.vertical-padding-h1.lunchbuilder
{
	padding-top: 80px;
    padding-bottom: 40px;
}

.vertical-padding-xl
{
	padding-top: 120px;
	padding-bottom: 120px;
}

.vertical-padding-xl-top
{
	padding-top: 130px;
}

.vertical-padding-xl-bottom
{
	padding-bottom: 130px;
}

.vertical-padding-large
{
	padding-top: 80px;
	padding-bottom: 80px;
}

.vertical-padding-large-top
{
	padding-top: 80px;
}

.vertical-padding-large-bottom
{
	padding-bottom: 80px;
}

.vertical-padding-medium
{
	padding-top: 60px;
	padding-bottom: 60px;
}

.vertical-padding-medium-top
{
	padding-top: 60px;
}

.vertical-padding-125-top
{
	padding-top: 125px;
}

.vertical-padding-small
{
	padding-top: 30px;
	padding-bottom: 30px;
}

@media screen and (max-width:992px)
{
	.vertical-padding-h1
	{
		padding-top: 70px;
		padding-bottom: 20px;
	}

	.vertical-padding-h1.lunchbuilder
	{
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.vertical-padding-xl
	{
		padding-top: 70px;
		padding-bottom: 70px;
	}

	.vertical-padding-xl-top
	{
		padding-top: 80px;
	}

	.vertical-padding-xl-bottom
	{
		padding-bottom: 80px;
	}

	.vertical-padding-large
	{
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.vertical-padding-large-top
	{
		padding-top: 40px;
	}

	.vertical-padding-large-bottom
	{
		padding-bottom: 40px;
	}

	.vertical-padding-medium
	{
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.vertical-padding-medium-top
	{
		padding-top: 30px;
	}
}

/* col-lg and below */
@media screen and (max-width:1200px)
{
	table.rem-responsive-table td
	{
		padding-left: 15px;
		padding-right: 15px;
		padding-bottom: 40px;
	}

	table.rem-responsive-table tr td
	{
		width: 100% !important;
		float: left;
		clear: both;
	}

	.mobile-left
	{
		float: none !important;
		clear: both;
		display: block !important;
		margin: 0 auto 0 0;
		text-align: center;
	}

	.mobile-centered
	{
		float: none !important;
		clear: both !important;
		display: block !important;
		margin-left: auto !important;
		margin-right: auto !important;
		text-align: center !important;
	}

	.mobile-right
	{
		float: none !important;
		clear: both;
		display: block !important;
		margin: 0 0 0 auto;
		text-align: center;
	}

	.mobile-left-flex
	{
		float: none !important;
		clear: both;
		display: flex !important;
		margin: 0 auto 0 0;
		text-align: center;
	}

	.mobile-centered-flex
	{
		float: none !important;
		clear: both;
		display: flex !important;
		margin: 0 auto;
		text-align: center;
	}

	.mobile-right-flex
	{
		float: none !important;
		clear: both;
		display: flex !important;
		margin: 0 0 0 auto;
		text-align: center;
	}
}

@media screen and (min-width: 1200px)
{
	div#desktop-content-container
	{
		padding-top: 181px;
	}
}

@media screen and (min-width: 1940px)
{
	div#desktop-content-container
	{
		padding-top: 225px;
	}
}

@media screen and (min-width: 1201px)
{
	.hide-on-desktop
	{
		display: none !important;
	}

	#header-desktop
	{
		display: block;
	}

	#header-mobile-only
	{
		display: none;
	}

	#search_form
	{
		display: none;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		bottom: 20px;
		width: 1170px;
		height: 0;
	    z-index: 100;
	}

	body.fully-loaded #search_form
	{
		display: block;
	}

	#search_form.open
	{
		height: auto;
		opacity: 1 !important;
	}

	body.not-at-top #search_form
	{
		bottom: 10px;
	}

	#search_form #search_field
	{
		width: 1170px;
		max-width: 100vw;
		height: 0;
		opacity: 0;
		padding: 0;
		border: none;
		outline: none;
		background-color: #ffffff;
        font-size: 14pt;
        color: #000000;
		box-shadow: -1px 2px 5px rgb(0 0 0 / 31%);
		border-bottom: 2px solid #000000;
        transition: opacity 200ms;
	}

	#search_form #search_field::placeholder
	{
		font-family: "dm_serif_display";
		color: #5a5a5a;
	}

	#search_form.open #search_field
	{
		width: 1170px;
		opacity: 1;
		padding: 15px;
		height: auto;
	}

	body.not-at-top #search_form.open #search_field
	{
		font-size: 13pt;
		padding: 7px 15px;
	}

	#search_form.closed #search_field
	{
		width: 0;
		opacity: 0;
		padding: 0;
	}

	#search_form #search_field:focus
	{
		background-color: #ffffff;
	}

    #search_form #search_field:hover
    {
        background-color: #f4f4f4;
    }
}

@media screen and (max-width: 1200px)
{
	.hide-on-mobile
	{
		display: none !important;
	}

	#mobile-content-container
	{
		display: block;
	}

	div#header-desktop-only
	{
		display: none;
	}

	div#desktop-content-container
	{
		margin-top: 60px;
	}

	div#header-mobile-only
	{
		position: relative;
		display: block !important;
	    position: fixed;
	    top: 0;
	    height: 60px;
	    width: 100%;
		box-shadow: 0 -2px 15px #000000;
		background: url("/userContent/images/optimized-images/subway-tile-header.webp") top center no-repeat;
	    z-index: 1000;
	}

	div#header-mobile-only #mobile-header-logo
	{
		position: absolute;
		left: 9px;
		top: 8px;
		display: block;
		height: 46px;
		width: 100%;
		max-width: calc(100vw - 180px);
	}

	div#header-mobile-only #mobile-header-logo img
	{
		width: 100% !important;
		max-width: 220px;
		height: 100% !important;
		object-fit: contain;
		filter: drop-shadow(3px 3px 2px rgba(0,0,0,0.2));
	}

	div#header-mobile-only::after
	{
	    clear: both;
	    content: "\00a0";
	    display: block;
	    height: 0;
	    font: 0px/0 serif;
	    overflow: hidden;
	}

	#mobile_search_button
	{
		cursor: pointer;
		position: absolute;
		top: 18px;
		right: 66px;
		text-decoration: none;
	}

	#mobile_search_button img.open
	{
		display: block;
	}

	#mobile_search_button.open img.open
	{
		display: none;
	}

	#mobile_search_button img.closed
	{
		display: none;
	}

	#mobile_search_button.open img.closed
	{
		display: block;
	}

    #search_form
    {
        position: fixed;
        top: 0;
        left: 15px;
		right: 15px;
		height: 0;
        z-index: 999;
		opacity: 0;
		height: 0;
		width: 100%;
		max-width: calc(100% - 30px);
		transition: all 200ms;
    }

    #search_form #search_field
    {
		width: 100%;
		height: 100%;
		background-color: #ffffff;
		padding: 15px;
		border: none;
		outline: none;
		border-radius: 0;
		font-size: 12pt;
		box-shadow: 0 0 8px 0 rgba(0,0,0,0.5);
		border-bottom: 2px solid #000000;
    }

	#search_form #search_field::placeholder
	{
		font-family: "dm_serif_display";
		color: #5a5a5a;
	}

    #search_form.open
	{
		transform: translateY(70px);
		height: auto;
		opacity: 1 !important;
	}

	#search_form.closed
	{
		transform: translateY(0);
		width: 0;
		opacity: 0;
	}

    #search_form #search_field:focus
    {
        background-color: #ffffff;
    }
}

#ui-datepicker-div,
#ui-timepicker-div
{
	z-index: 99999 !important;
}

#ui-timepicker-div *
{
	box-sizing: content-box;
}

@media screen and (max-width:480px)
{
	#ui-timepicker-div
	{
		left: 0 !important;
		padding: 0 !important;
	}

	.ui-timepicker-hours,
	.ui-timepicker-minutes
	{
		padding: 2px !important;
	}
}

#desktop-content-container
{
	background: url("/userContent/images/optimized-images/subway-tile-header.webp") top center no-repeat;
	background-position-y: -882px;;
}

body.home #desktop-content-container
{
	background-position-y: 0;
}

.wwcpanel-block-title-container
{
    border: solid 1px #EEEEEE;
    background-color: #EFEFEF;
    border-radius: 5px;
    margin-bottom: 15px;
    padding: 15px;
}

.content-container
{
	padding-top: 30px;
	padding-bottom: 30px;
}

/**********************************************************
 /$$   /$$ /$$$$$$$$  /$$$$$$  /$$$$$$$  /$$$$$$$$ /$$$$$$$
| $$  | $$| $$_____/ /$$__  $$| $$__  $$| $$_____/| $$__  $$
| $$  | $$| $$      | $$  \ $$| $$  \ $$| $$      | $$  \ $$
| $$$$$$$$| $$$$$   | $$$$$$$$| $$  | $$| $$$$$   | $$$$$$$/
| $$__  $$| $$__/   | $$__  $$| $$  | $$| $$__/   | $$__  $$
| $$  | $$| $$      | $$  | $$| $$  | $$| $$      | $$  \ $$
| $$  | $$| $$$$$$$$| $$  | $$| $$$$$$$/| $$$$$$$$| $$  | $$
|__/  |__/|________/|__/  |__/|_______/ |________/|__/  |__/
***********************************************************/
@media screen and (max-width: 1200px)
{
	#header-desktop #menu-builder-header-nav
	{
		position: fixed;
		top: 60px;
		z-index: 1000;
		left: 0;
		width: 100%;
		max-height: calc(100% - 60px);
		box-shadow: 0px 20px 20px 0px rgb(0 0 0 / 10%);
		overflow-y: auto;
		background-color: #ffffff;
	}
}

@media screen and (min-width:1201px)
{
	#header-desktop
	{
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 1000;
		width: 100%;
		max-width: 2000px;
		margin: 0 auto;
		padding-bottom: 40px;
		background: url("/images/subway-tile-header.jpg") top center no-repeat;
	}
}

@media screen and (min-width:1940px)
{
	body.not-at-top #header-desktop
	{
		padding-bottom: 20px;
	}
}

#pre_header_container
{
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	background-color: #000000;
}

@media screen and (max-width:1200px)
{
	#header-mobile-only .header-cart-link
	{
		cursor: pointer;
		position: absolute;
		top: 20px;
		right: 120px;
		display: block;
	}

	#header-mobile-only .cart-total
	{
		position: absolute;
		top: -9px;
		right: -6px;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		width: 20px;
		height: 20px;
		border-radius: 50%;
		background-color: #000000;
		font-family: "lato";
		font-weight: normal;
		font-size: 10pt;
		color: #ffffff;
	}

	#header-mobile-only .cart-total.updated
	{
		animation-name: pulse-size;
		animation-duration: 1000ms;
		animation-iteration-count: 1;
	}
}

@media screen and (min-width:1201px)
{
	#pre_header_container .container-fluid
	{
		width: calc(100% - 35px);
	}

	#pre_header_container .container-fluid div
	{
		margin: 0;
		padding: 0;
	}

	#pre_header_container a,
	#pre_header_container p
	{
		color: #B3B3B3;
		font-weight: normal;
	}

	#header-desktop > div:last-of-type
	{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: calc(100% - 80px);
		max-width: 1920px;
		margin: 0 auto;
		height: 90px;
	}

	body.fully-loaded #header-desktop > div:last-of-type
	{
		transition: height 300ms;
	}

	#header-desktop > div:last-of-type > div
	{
		width: 25%;
	}

	#header-desktop > div:last-of-type > div.center-column
	{
		width: 50%;
	}

	#header-desktop > div:last-of-type > div.center-column .logo
	{
		display: block;
		width: 300px;
		height: auto;
		margin: 0 auto;
	}

	body.fully-loaded #header-desktop > div:last-of-type > div.center-column .logo
	{
		transition: all 300ms;
	}

	#header-desktop > div:last-of-type > div.center-column .logo img
	{
		display: block !important;
		width: 100%;
		height: 100%;
		filter: drop-shadow(4px 2px 2px rgba(0,0,0,0.4));
	}

	#header-desktop > div:last-of-type > div.right-column
	{
		display: flex;
		justify-content: flex-end;
		align-items: center;
	}

	#header-desktop > div:last-of-type > div.right-column .search-button
	{
		position: relative;
		display: block;
		width: 17px;
		height: 26px;
	}

	body.fully-loaded #header-desktop > div:last-of-type > div.right-column .search-button
	{
		transition: all 300ms;
	}

	#header-desktop > div:last-of-type > div.right-column .search-button:not(.open):hover
	{
		transform: scale(1.2);
	}

	#header-desktop > div:last-of-type > div.right-column .search-button.open
	{
		display: none;
	}

	#header-desktop > div:last-of-type > div.right-column #search_form .search-button
	{
		display: none;
		width: 19px;
	}

	body.not-at-top #header-desktop > div:last-of-type > div.right-column #search_form .search-button
	{
		width: 15px;
	}

	#header-desktop > div:last-of-type > div.right-column #search_form .search-button.open
	{
		display: block;
		position: absolute;
		top: 50%;
		right: 14px;
		transform: translateY(-50%);
	}

	#header-desktop > div:last-of-type > div.right-column .search-button img
	{
		width: 100%;
		height: 100%;
	}

	#header-desktop > div:last-of-type > div.right-column .header-cart-link
	{
		position: relative;
		display: block;
		transition: transform 300ms;
		cursor: pointer;
	}

	#header-desktop > div:last-of-type > div.right-column .header-cart-link img
	{
		display: block !important;
	}

	#header-desktop > div:last-of-type > div.right-column .header-cart-link:hover
	{
		transform: scale(1.2);
	}

	#header-desktop > div:last-of-type > div.right-column .header-cart-link .cart-total
	{
		position: absolute;
		top: -3px;
		right: -3px;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		width: 21px;
		height: 21px;
		line-height: 21px;
		border-radius: 50%;
		background-color: #000000;
		font-family: "lato";
		font-weight: normal;
		font-size: 10pt;
		color: #ffffff;
		transform-origin: center;
	}

	#header-desktop > div:last-of-type > div.right-column .header-cart-link.updated .cart-total
	{
		animation-name: pulse-size;
		animation-duration: 1000ms;
		animation-iteration-count: 1;
	}

	#header-desktop #menu-builder-header-nav
	{
		position: relative;
		z-index: 10;
	}
}

@media screen and (min-width:1940px)
{
	#header-desktop > div:last-of-type
	{
		height: 130px;
	}

	body.not-at-top #header-desktop > div:last-of-type
	{
		height: 90px;
	}

	#header-desktop > div:last-of-type > div.center-column .logo
	{
		width: 376px;
	}

	body.not-at-top #header-desktop > div:last-of-type > div.center-column .logo
	{
		width: 300px;
	}

	#header-desktop > div:last-of-type > div.right-column .search-button
	{
		cursor: pointer;
		width: 29px;
		height: 27px;
	}

	body.not-at-top #header-desktop > div:last-of-type > div.right-column .search-button
	{
		width: 17px;
		height: 26px;
	}

	body.not-at-top #header-desktop > div:last-of-type > div.right-column #search_form .search-button
	{
		width: 15px;
	}
}
/**********************************************************
 /$$$$$$$$ /$$$$$$   /$$$$$$  /$$$$$$$$ /$$$$$$$$ /$$$$$$$
| $$_____//$$__  $$ /$$__  $$|__  $$__/| $$_____/| $$__  $$
| $$     | $$  \ $$| $$  \ $$   | $$   | $$      | $$  \ $$
| $$$$$  | $$  | $$| $$  | $$   | $$   | $$$$$   | $$$$$$$/
| $$__/  | $$  | $$| $$  | $$   | $$   | $$__/   | $$__  $$
| $$     | $$  | $$| $$  | $$   | $$   | $$      | $$  \ $$
| $$     |  $$$$$$/|  $$$$$$/   | $$   | $$$$$$$$| $$  | $$
|__/      \______/  \______/    |__/   |________/|__/  |__/
**********************************************************/
#footer
{
	background: url("/userContent/images/optimized-images/subway-tile-footer.webp") top center no-repeat;
	padding-top: 115px;
	padding-bottom: 100px;
}

#footer .container-fluid
{
	max-width: 2000px;
	padding-left: 40px;
	padding-right: 40px;
}

#footer .container-fluid > .row
{
	margin-left: -40px;
	margin-right: -40px;
}

#footer .container-fluid > .row > [class^="col-"]
{
	padding-left: 40px;
	padding-right: 40px;
}

#footer .container-fluid > .row:first-of-type
{
	margin-bottom: 100px;
}

#footer .container-fluid a.logo
{
	display: inline-block;
	margin-bottom: 55px;
}

#footer .container-fluid a.logo img
{
	display: inline-block !important;
}

@media screen and (max-width:1440px)
{
	#footer .container-fluid a.logo
	{
		display: block;
		width: 210px;
		margin: 0 auto 55px auto;
	}

	#footer .container-fluid .social-media-container
	{
		text-align: center;
	}
}

#footer .container-fluid .ecom
{
	margin-bottom: 35px;
	text-align: center;
}

#footer .container-fluid .ecom a
{
	font-family: "montserrat_semibold", sans-serif;
	text-decoration: none;
}

#footer .container-fluid .ecom a:hover
{
	color: #B7272F;
}

#footer .container-fluid .social-media-container > div
{
	font-family: "montserrat_semibold";
	font-size: 12pt;
	font-weight: normal;
	color: #000000;
	margin-bottom: 10px;
}

#footer .container-fluid .copyright-container
{
	border-top: 1px solid #000000;
	padding-top: 45px;
	text-align: center;
}

#footer .container-fluid .copyright-container,
#footer .container-fluid .copyright-container a
{
	font-family: "work_sans";
	font-weight: normal;
	color: #000000;
	font-size: 12pt;
	text-decoration: none;
	transition: color 200ms;
}

#footer .container-fluid .copyright-container a:hover
{
	color: #B7272F;
}

@media screen and (max-width:1440px)
{
	.location-and-hours-container
	{
		text-align: center;
		padding-bottom: 55px;
	}
}

.location-and-hours-container p,
.location-and-hours-container a
{
	font-family: "montserrat_semibold";
	font-weight: normal;
	font-size: 12pt;
	color: #000000;
	text-decoration: none;
}

.location-and-hours-container a:hover
{
	color: #B7272F;
}

.location-and-hours-container a.location-link
{
	display: inline-block;
	margin-bottom: 50px;
}

.location-and-hours-container span.spacer
{
	display: inline-block;
	margin: 0 12px;
}

@media screen and (max-width:768px)
{
	.location-and-hours-container span.spacer
	{
		display: block;
		margin: 0 auto;
		transform: rotate(90deg);
		width: 0px;
		height: auto;
		line-height: 1;
	}
}

/*********************************************************************************************
 /$$      /$$ /$$      /$$        /$$$$$$  /$$$$$$$$ /$$     /$$ /$$       /$$$$$$$$  /$$$$$$
| $$  /$ | $$| $$  /$ | $$       /$$__  $$|__  $$__/|  $$   /$$/| $$      | $$_____/ /$$__  $$
| $$ /$$$| $$| $$ /$$$| $$      | $$  \__/   | $$    \  $$ /$$/ | $$      | $$      | $$  \__/
| $$/$$ $$ $$| $$/$$ $$ $$      |  $$$$$$    | $$     \  $$$$/  | $$      | $$$$$   |  $$$$$$
| $$$$_  $$$$| $$$$_  $$$$       \____  $$   | $$      \  $$/   | $$      | $$__/    \____  $$
| $$$/ \  $$$| $$$/ \  $$$       /$$  \ $$   | $$       | $$    | $$      | $$       /$$  \ $$
| $$/   \  $$| $$/   \  $$      |  $$$$$$/   | $$       | $$    | $$$$$$$$| $$$$$$$$|  $$$$$$/
|__/     \__/|__/     \__/       \______/    |__/       |__/    |________/|________/ \______/
*********************************************************************************************/
p,
.ww_p
{
	font-family: "work_sans", sans-serif;
	font-size: 13pt;
	color: #000000;
	line-height: 21pt;
	font-weight: normal;
	margin: 0;
	padding: 0;
}

.ww_p_double_space
{
	font-family: "work_sans", sans-serif;
	font-size: 13pt;
	color: #000000;
	line-height: 28pt;
	font-weight: normal;
	margin: 0;
	padding: 0;
}

.ww_p_alternate
{
	font-family: "work_sans", sans-serif;
	font-size: 17pt;
	color: #000000;
	line-height: 24pt;
	font-weight: normal;
	margin: 0;
	padding: 0;
}

.ww_p_call_out
{
	font-family: "montserrat_medium", sans-serif;
	font-size: 20pt;
	color: #000000;
	font-weight: normal;
	margin: 0;
	padding: 0;
}

h1,
.ww_h1
{
	position: relative;
	font-family: "dm_serif_display", serif;
	font-size: 40pt;
	font-weight: normal;
	color: #2D2D2B;
	margin: 0 0 10px 0;
	padding: 0;
}

@media screen and (max-width:992px)
{
	h1,
	.ww_h1
	{
		font-size: 30pt;
	}
}

@media screen and (max-width:480px)
{
	h1,
	.ww_h1
	{
		font-size: 26pt;
	}
}

h2,
.ww_h2
{
	position: relative;
	font-family: "dm_serif_display", serif;
	font-size: 35pt;
	font-weight: normal;
	color: #2D2D2B;
	margin: 0 0 10px 0;
	padding: 0;
}

@media screen and (max-width:992px)
{
	h2,
	.ww_h2
	{
		font-size: 25pt;
	}
}

@media screen and (max-width:480px)
{
	h2,
	.ww_h2
	{
		font-size: 23pt;
	}
}

h3,
.ww_h3
{
	position: relative;
	font-family: "dm_serif_display", serif;
	font-size: 30pt;
	font-weight: normal;
	color: #2D2D2B;
	margin: 0 0 5px 0;
	padding: 0;
}

@media screen and (max-width:992px)
{
	h3,
	.ww_h3
	{
		font-size: 20pt;
	}
}

h4,
.ww_h4
{
	font-family: "dm_serif_display", serif;
	font-size: 25pt;
	font-weight: normal;
	color: #2D2D2B;
	margin: 0;
	padding: 0;
}

@media screen and (max-width:992px)
{
	h4,
	.ww_h4
	{
		font-size: 15pt;
	}
}

h5,
.ww_h5
{
	font-family: "dm_serif_display", serif;
	font-size: 20pt;
	font-weight: normal;
	color: #2D2D2B;
	margin: 0;
	padding: 0;
}

@media screen and (max-width:992px)
{
	h5,
	.ww_h5
	{
		font-size: 14pt;
	}
}

h6,
.ww_h6
{
	font-family: "dm_serif_display", serif;
	font-size: 18pt;
	font-weight: normal;
	color: #2D2D2B;
	margin: 0;
	padding: 0;
}

@media screen and (max-width:992px)
{
	h6,
	.ww_h6
	{
		font-size: 12pt;
	}
}

.ww_emphasis
{
	font-family: "work_sans_semibold", sans-serif;
	font-weight: normal;
	font-style: normal;
}

.ww_strong_emphasis
{
	font-family: "work_sans", sans-serif;
	font-weight: bold;
	font-style: normal;
}

.ww_action_button1
{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	font-family: "work_sans_semibold", sans-serif;
	font-size: 13pt;
	font-weight: normal !important;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #B7272F;
	padding: 8px 15px;
	border: none;
	cursor: pointer;
	text-align: center;
	transition: background-color 0.2s;
	-webkit-tap-highlight-color: transparent;
}

.ww_action_button1.jumbo
{
	display: flex;
    font-size: 24pt;
    padding: 40px 0;
    margin-bottom: 15px;
}

a .ww_action_button1,
a .ww_action_button1:link,
a .ww_action_button1:visited,
.ww_action_button1 a:link,
.ww_action_button1 a:visited
{
	font-weight: normal;
	color: #ffffff;
	text-decoration: none !important;
}

.ww_action_button1:hover
{
	background-color: #cc2c34;
}

.ww_action_button1:active
{
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}

.ww_action_button2
{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	font-family: "montserrat_medium", sans-serif;
	font-size: 17.4pt;
	font-weight: normal !important;
	font-style: normal !important;
	color: #2D2D2B !important;
	text-decoration: none !important;
	background-color: #ffffff;
	padding: 20px 25px;
	border: none;
	cursor: pointer;
	text-align: center;
	transition: background-color 0.2s;
	-webkit-tap-highlight-color: transparent;
}

a .ww_action_button2,
a .ww_action_button2:link,
a .ww_action_button2:visited,
.ww_action_button2 a:link,
.ww_action_button2 a:visited
{
	font-weight: normal;
	color: #2D2D2B;
	text-decoration: none !important;
}

.ww_action_button2:hover
{
	background-color: #ececec;
}

.ww_action_button2:active
{
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}

.ww_action_button3
{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	font-family: "work_sans_semibold", sans-serif;
	font-size: 13pt;
	font-weight: normal !important;
	font-style: normal !important;
	color: #ffffff !important;
	text-decoration: none !important;
	background-color: #2D2D2B;
	padding: 8px 15px;
	border: none;
	cursor: pointer;
	text-align: center;
	transition: background-color 0.2s;
	-webkit-tap-highlight-color: transparent;
}

a .ww_action_button3,
a .ww_action_button3:link,
a .ww_action_button3:visited,
.ww_action_button3 a:link,
.ww_action_button3 a:visited
{
	font-weight: normal;
	color: #ffffff;
	text-decoration: none !important;
}

.ww_action_button3:hover
{
	background-color: #3a3a38;
}

.ww_action_button3:active
{
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}

[class^="ww_action_"] span.fas,
[class^="ww_action_"] span.far
{
	margin-right: 5px;
}

.ww_editor_body
{
	background-color: #FFFFFF;
}

div.common_vertical_well
{
	margin-top: 15px;
	margin-bottom: 15px;
}


/*********************************************************************
  /$$$$$$   /$$$$$$  /$$   /$$ /$$$$$$$$ /$$$$$$$$ /$$   /$$ /$$$$$$$$
 /$$__  $$ /$$__  $$| $$$ | $$|__  $$__/| $$_____/| $$$ | $$|__  $$__/
| $$  \__/| $$  \ $$| $$$$| $$   | $$   | $$      | $$$$| $$   | $$
| $$      | $$  | $$| $$ $$ $$   | $$   | $$$$$   | $$ $$ $$   | $$
| $$      | $$  | $$| $$  $$$$   | $$   | $$__/   | $$  $$$$   | $$
| $$    $$| $$  | $$| $$\  $$$   | $$   | $$      | $$\  $$$   | $$
|  $$$$$$/|  $$$$$$/| $$ \  $$   | $$   | $$$$$$$$| $$ \  $$   | $$
 \______/  \______/ |__/  \__/   |__/   |________/|__/  \__/   |__/
*********************************************************************/
.black-background
{
	background-color: #000000;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
}

.forced-gray-text *
{
	color: #B3B3B3 !important;
}

.overflow-wrapper
{
	overflow: hidden;
}

.light-gray-ingredients-background
{
	background: url("/userContent/images/optimized-images/light-gray-ingredients-background.webp") top center no-repeat;
	background-size: cover;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
}

#white_box_image_overlay_container
{
	padding: 60px 0 80px 0;
}

#image_under_floating_white_container
{
	margin-left: -220px;
	max-width: none !important;
}

@media screen and (max-width:1440px)
{
	#image_under_floating_white_container
	{
		display: block;
		width: 903px;
		max-width: 100% !important;
		margin: 0 auto;
	}
}

#floating_padded_white_container
{
	position: relative;
	padding: 100px 170px 60px 130px;
	background-color: #ffffff;
	width: 780px;
	max-width: none;
	margin-top: 70px;
}

@media screen and (max-width:1440px)
{
	#floating_padded_white_container
	{
		margin: -27vw 0 0 auto;
		max-width: calc(100% - 30px);
	}
}

@media screen and (max-width:992px)
{
	#floating_padded_white_container
	{
		padding: 50px;
	}
}

@media screen and (max-width:480px)
{
	#floating_padded_white_container
	{
		padding: 20px;
		max-width: calc(100% - 15px);
	}
}

#floating_padded_white_container h2::before
{
	content: "";
	position: absolute;
	left: -106px;
	top: 134px;
	width: 200px;
	display: block;
	height: 1px;
	background-color: #000000;
}

#floating_padded_white_container div.signature-container
{
	position: relative;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: center;
	text-align: center;
	width: 100%;
	max-width: 249px;
	margin-top: 25px;
	font-size: 11pt;
	padding-left: 35px;
}

#floating_padded_white_container div.signature-container::before
{
	content: "";
	position: absolute;
	left: 0;
	top: 14px;
	width: 30px;
	display: block;
	height: 1px;
	background-color: #000000;
}

#floating_padded_white_container img.logo-badge
{
	position: absolute;
	bottom: -80px;
    right: 30px;
}

@media screen and (max-width:768px)
{
	#floating_padded_white_container img.logo-badge
	{
		width: 100px !important;
		bottom: -20px;
	}
}

@media screen and (max-width:480px)
{
	#floating_padded_white_container img.logo-badge
	{
		bottom: -70px !important;
		right: 5px;
	}
}

.flank-lines
{
	position: relative;
}

.flank-lines::before,
.flank-lines::after
{
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 70px;
	height: 1px;
	background-color: #000000;
}

@media screen and (max-width:992px)
{
	.flank-lines::before,
	.flank-lines::after
	{
		width: 30px;
	}
}

@media screen and (max-width:768px)
{
	.flank-lines::before,
	.flank-lines::after
	{
		display: none;
	}
}

.flank-lines::before
{
	left: -90px;
}

@media screen and (max-width:992px)
{
	.flank-lines::before
	{
		left: -40px;
	}
}

.flank-lines::after
{
	right: -90px;
}

@media screen and (max-width:992px)
{
	.flank-lines::after
	{
		right: -40px;
	}
}

@media screen and (min-width:1441px)
{
	#shop_your_way_container .container,
	#shop_your_way_container .row,
	#shop_your_way_container [class^="col-"]
	{
		margin: 0;
		padding: 0;
	}
}

.large-image-background-link
{
	position: relative;
	display: block;
	width: 100%;
	max-width: 400px;
	height: 270px;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	transition: all 200ms;
	margin: 0 0 -10px auto;
}

@media screen and (max-width:1440px)
{
	#shop_your_way_container .row [class^="col-"]:nth-of-type(odd) .large-image-background-link
	{
		margin-left: auto;
		margin-right: -10px;
	}

	#shop_your_way_container .row [class^="col-"]:nth-of-type(even) .large-image-background-link
	{
		margin-right: auto;
		margin-left: -10px;
	}
}

@media screen and (max-width:768px)
{
	.large-image-background-link
	{
		margin: 0 auto !important;
		border: none;
		margin-bottom: 15px;
	}
}

.large-image-background-link::before
{
	content: "";
	position: absolute;
	z-index: 0;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	box-shadow: 0 0 15px 15px rgba(0,0,0,0.12);
}

.large-image-background-link:hover
{
	border-top: 0 solid transparent;
	border-bottom: 0 solid transparent;
}

.large-image-background-link .image-container
{
	display: block;
	height: 100%;
	position: relative;
	overflow: hidden;
}

.large-image-background-link img
{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 400px !important;
	height: 270px !important;
}

.large-image-background-link .text-container
{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	display: block;
	padding: 25px 0;
	text-align: center;
	width: calc(100% - 30px);
	background-color: #ffffff;
	font-family: "montserrat_medium";
	font-weight: normal;
	font-size: 17pt;
	color: #2D2D2B;
	white-space: nowrap;
}

@media screen and (max-width:480px)
{
	.large-image-background-link .text-container
	{
		font-size: 16pt;
	}
}

.out-of-focus-window-frame-background
{
	background: url("/images/out-of-focus-window-frame-background.jpg") top center no-repeat;
	background-size: cover;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
}

#delivery_callout_container
{
	padding-top: 125px;
	padding-bottom: 125px;
}

#delivery_callout_container .ww_p_call_out
{
	position: relative;
	z-index: 1;
	font-family: "montserrat_extrabold";
	font-size: calc(30px + (60 - 30) * ((100vw - 300px) / (2000 - 300)));
	color: #B7272F;
	line-height: 1.2;
}

@media screen and (min-width:2000px)
{
	#delivery_callout_container .ww_p_call_out
	{
		font-size: 60px;
		letter-spacing: 4px;
	}
}

#delivery_callout_container img.service-available-text
{
	position: relative;
	z-index: 2;
	display: block !important;
	width: 412px;
	margin: -25px auto 40px auto;
}

@media screen and (max-width:768px)
{
	#delivery_callout_container img.service-available-text
	{
		margin-top: -3px;
	}
}

.white-table-with-green-leaves-background
{
	background: url("/userContent/images/optimized-images/white-table-with-green-leaves-background.webp") top center no-repeat;
	background-size: cover;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
}

.family-feast-background
{
	width: 100%;
	max-width: 1530px;
	margin: 0 auto;
	background: url("/images/family-feast-background.jpg") top center no-repeat;
	padding: 30px;
}

@media screen and (max-width:1200px)
{
	.family-feast-background
	{
		background-size: cover;
	}
}

#gift_basket_callout_container
{
	position: relative;
	width: 100%;
	max-width: 1530px;
	margin: 0 auto;
	background: url("/images/gift-basket-background.jpg") top center no-repeat;
	padding-top: 120px;
	padding-bottom: 50px;
	margin-top: 130px;
	height: 498px;
}

@media screen and (max-width:1200px)
{
	#gift_basket_callout_container
	{
		background: url("/images/monochrome-people-eating-background.jpg") top center no-repeat;
		background-size: cover;
		padding-top: 80px;
		height: auto;
	}
}

#gift_basket_callout_container .container,
#gift_basket_callout_container .container .row,
#gift_basket_callout_container .container .row [class^="col-"]
{
	position: static;
}

#gift_basket_callout_container .logo-badge
{
	position: absolute;
	top: -80px;
	left: 15px;
}

@media screen and (max-width:1200px)
{
	#gift_basket_callout_container .logo-badge
	{
		width: 128px !important;
	}
}

.red-leaf-background
{
	position: relative;
}

.red-leaf-background::before
{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: block;
	height: 143px;
	width: 178px;
	background: url("/images/red-leaf.png") no-repeat;
}

.vincenzos-storefront-text-vertical-align-container
{
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	text-align: center;
	height: 444px;
}

@media screen and (max-width:1200px)
{
	.vincenzos-storefront-text-vertical-align-container
	{
		height: 354px;
	}
}

@media screen and (max-width:992px)
{
	.vincenzos-storefront-text-vertical-align-container
	{
		height: auto;
		margin: 0 auto 30px auto;
	}
}

#snazzy_map_container
{
	margin-top: 55px;
	margin-bottom: 125px;
}

#snazzy_map_container .logo-badge
{
	position: absolute;
	z-index: 2;
	bottom: -100px;
	left: -20px;
}

@media screen and (max-width:2000px)
{
	#snazzy_map_container .logo-badge
	{
		left: 30px;
	}
}

@media screen and (max-width:1200px)
{
	#snazzy_map_container .logo-badge
	{
		width: 128px !important;
		bottom: -60px;
	}
}

.holiday-hours-container
{
	margin-top: 30px;
}

@media screen and (max-width:1200px)
{
	.holiday-hours-container
	{
		margin-top: 0;
		margin-bottom: 30px;
	}
}

@media screen and (min-width:768px)
{
	.no-well,
	.no-well > div
	{
		padding: 0;
	}
}

.mobile-centered-list
{
	margin: 0;
	padding: 0 !important;
}

@media screen and (max-width:1200px)
{
	.mobile-centered-list
	{
		display: flex;
		flex-flow: column nowrap;
		align-items: center;
	}
}

@media screen and (min-width:1200px)
{
	.vertically-centered-columns.lg > .row
	{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
}

@media screen and (min-width:992px)
{
	.vertically-centered-columns.md > .row
	{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
}

@media screen and (max-width:1200px)
{
	.lg-bottom-padding-10
	{
		padding-bottom: 10px;
	}
}

@media screen and (max-width:992px)
{
	.md-bottom-padding-10
	{
		padding-bottom: 10px;
	}
}

.img-background-link:link,
.img-background-link:visited
{
	position: relative;
	display: flex;
	flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin-bottom: 15px;
    text-decoration: none !important;
	height: 130px;
	padding: 0 15px;
	overflow: hidden;
    background-color: #000000;
    text-decoration: none;
    transition: all 150ms;
    -webkit-tap-highlight-color: transparent;
}

.img-background-link .caption
{
	position: relative;
	z-index: 2;
	font-family: "work_sans_semibold";
	font-size: 24pt;
	font-weight: normal;
    font-style: normal;
    color: #ffffff;
}

@media screen and (max-width:768px)
{
	.img-background-link .caption
	{
		font-size: 14pt;
	}

	.img-background-link .caption .fas
	{
		display: block;
	}
}

.img-background-link img
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    opacity: 0.65;
    transition: all 400ms;
}

.img-background-link:hover img
{
	transform: scale(1.05);
	transform-origin: center;
	opacity: 0.4;
}

.black-out-date-message-outer-container
{
	border: 2px solid #000000;
    border-radius: 5px;
    padding: 15px;
    margin: 30px auto;
}

body.ww_editor_body .black-out-date-message-inner-container
{
	border: 2px solid #000000;
    border-radius: 5px;
    padding: 15px;
    margin: 15px auto;
}

.black-out-date-message-inner-container > .heading-container
{
	display: flex;
    margin-bottom: 10px;
	border-bottom: 1px solid #000000;
	padding-bottom: 10px;
}

.black-out-date-message-inner-container > .heading-container span
{
    font-size: 20pt;
    margin-right: 10px;
    margin-top: 3px;
}

.black-out-date-message-inner-container > .heading-container h2
{
    font-size: 24pt;
    margin-bottom: 0 !important;
}

.black-out-date-message-inner-container > .heading-container span p
{
	font-size: 12pt;
}

.black-out-date-message-outer-container ul
{
	margin-top: 15px;
	margin-bottom: 0;
}

.black-out-date-message-outer-container ul li
{
	font-size: 11pt;
	color: #000000;
	margin-bottom: 20px;
}

.black-out-date-message-outer-container ul li:last-of-type
{
	margin-bottom: 0;
}

.black-out-date-message-outer-container ul li > div
{
	margin-top: 3px;
}

.black-out-date-message-outer-container ul li > div,
.black-out-date-message-outer-container ul li > div a
{
	color: #575757;
}

.inline-datetime-container > span
{
	padding-right: 4px;
}

.padded-black-border-container
{
	padding: 20px;
	border: 2px solid #000000;
	border-radius: 5px;
}