/*
Theme Name: Grimaldi's 2022
Theme URI: http://wearedreambox.com
Author: DreamBoxCreations.com
Author URI: http://wearedreambox.com
Description: Custom responsive WordPress theme.
Version: 1.0
*/
 
@import url("//hello.myfonts.net/count/4cf346");

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote::before, blockquote::after,
q::before, q::after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* ===================== General ===================== */

@font-face {
  font-family: 'Norwester';
  src: url('fonts/Norwester-Regular.eot?#iefix') format('embedded-opentype'),  
  url('fonts/Norwester-Regular.otf')  format('opentype'),
  url('fonts/Norwester-Regular.woff') format('woff'), 
  url('fonts/Norwester-Regular.ttf')  format('truetype'), 
  url('fonts/Norwester-Regular.svg#Norwester-Regular') format('svg');
  font-weight: normal;
  font-style: normal;
}


@font-face {
  font-family: "nexa";
  src: url('fonts/NexaBook/font.woff2') format('woff2'), url('fonts/NexaBook/font.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "nexa";
  src: url('fonts/NexaExtraBold/font.woff2') format('woff2'), url('fonts/NexaExtraBold/font.woff') format('woff');
  font-weight: 800;
  font-style: normal;
}

:root {
	--norwester: 'Norwester', sans-serif;
	--nexa: "nexa", sans-serif;
	--g_red: #f23e0a;
	--g_dark_red: #d2390f;
	--g_manila: #fff7e2;
}

html{
	overflow-y: scroll;
}

body{
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
	font-family: var(--nexa);
	color: #000000;
	background-color: #ffffff;
}

.container{
    width: 1440px;
    margin: auto;
    max-width: 100%;
}

@media (max-width: 1480px){

	.container{
		padding-left: 20px;
		padding-right: 20px;
	}

	.container.nopad{
		padding: 0;
	}
}

/* fonts */
.nor{
	font-family: var(--norwester);
	text-transform: uppercase;
}

a{
	background-color: inherit;
	color: inherit;
	text-decoration: underline;
	cursor: pointer;

	transition: border-color .3s ease-in-out, color .3s ease-in-out, opacity .3s ease-in-out;
}

*{
	box-sizing: border-box;
}

img{
	max-width: 100%;
	display: block;
}

.gm-style img {
	background-color: rgba(255,255,255,0.01) !important;
}

#map div {
	background-color: rgba(255,255,255,0.01) !important;
}

textarea {
  white-space: revert;
}

svg{
    max-width: 100%;
    max-height: 100%;

    -webkit-transition: fill .3s ease-in-out;
            transition: fill .3s ease-in-out;
			background-color: rgba(255,255,255,0.01);
}

/* ===================== Lazy ===================== */
.lazy{
	background-image: none !important;
}

/* ===================== Dropdown ===================== */

.dropdown_wrap {
	display: inline-block;
	position: relative;
		z-index: 1;
}

.dropdown_wrap button{
	overflow: hidden;
	-webkit-appearance: none;
	background-color: transparent;
	border: none;
	cursor: pointer;
}

.dropdown_wrap ul,
.dropdown_wrap .drop_content{
    display: none;
    position: absolute;
        top: 100%;
        left: 0;
        z-index: 1;
    width: 100%;
    margin: 0;
    background-color: #FFF;
    list-style: none;
}

.dropdown_wrap ul a{
    display: inline-block;
    width: 100%;
    padding: 1em 1em;
}

.dropdown_wrap .dropselector_toggle{
	padding: .8em 2em;
	padding-right: 3em;
	background-color: #d2390f;
	background-repeat: no-repeat;
	background-position: right 15px center;
	background-size: 20px;
	border-radius: 2em;
	font-family: var(--norwester);
	font-size: 1.3rem;
	color: #ffffff;
	text-transform: uppercase;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMTguNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCAzMiAxOC40IiBmaWxsPSIjZmZmIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAzMiAxOC40IiB4bWw6c3BhY2U9InByZXNlcnZlIj4gPGc+IDxwYXRoIGQ9Ik0xNiwxOC40Yy0wLjYsMC0xLjItMC4yLTEuNy0wLjdMMC43LDQuMWMtMC45LTAuOS0wLjktMi40LDAtMy40YzAuOS0wLjksMi40LTAuOSwzLjQsMEwxNiwxMi42TDI3LjksMC43IGMwLjktMC45LDIuNC0wLjksMy40LDBjMC45LDAuOSwwLjksMi40LDAsMy40TDE3LjcsMTcuN0MxNy4yLDE4LjIsMTYuNiwxOC40LDE2LDE4LjR6Ii8+IDwvZz4gPC9zdmc+");
}

.dropdown_wrap .dropselect {
	margin-top: 10px;
	border: 1px solid;
}

.dropdown_wrap .dropselect .drop_btn{
	padding: 0.5em 0;
	font-size: 1.5rem;
	font-family: var(--nexa);
}


/* ===================== Utilities ===================== */

@media (min-width: 768px){
	.flex_desk{
		display: flex;
	}
}

.flex_cent{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px;
}

.gfield_html.tc,
.tc{
	text-align: center;
}

.tl{
	text-align: left;
}

.tr{
	text-align: right;
}

.upp{
	text-transform: uppercase;
}


/* loader spinner */
.dbcloader{
	position: absolute;
}

.radar_circles circle{
	transform-origin: center;
	stroke: var(--g_red);
}

.radar_circles .circ_1{
	animation: 2s linear infinite circ_outward;
}

.radar_circles .circ_2{
	animation: 2s linear infinite circ_outward;
	animation-delay: 1s;
}

.radar_circles .circ_3{
	animation: 2s linear infinite circ_outward;
	animation-delay: 2s;
}

@keyframes circ_outward { from { r: 1; opacity: 1 } to { r: 10; opacity: 0 }  }

/* ===================== Tabs ===================== */

.tabpanels .tabpanel{
	display: none;
}

/* ===================== A11y ===================== */

body :focus:not(:focus-visible) {
  outline-color: transparent;
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	clip: rect(0, 0, 0, 0);
	overflow: hidden;
	padding: 0;
	margin: -1px;
	border: 0;
	color: #000000 !important;
	background-color: #FFFFFF !important;
}

.screen-reader-text{
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
}


.screen-reader-shortcut{
	position: absolute;
		top: -1000em;
		left: 6px;
	width: auto;
	height: auto;
	padding: 15px 23px 14px;
	background-color: #fff;
	font-size: 1em;
	color: #000;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
	text-transform: uppercase;
	outline: 1px solid #000;
	-webkit-box-shadow: 0 0 2px 2px rgba(0,0,0,.6);
		box-shadow:     0 0 2px 2px rgba(0,0,0,.6);
}

.screen-reader-shortcut:focus {
	top: 6px;
	display: block;
	z-index: 100000;
}
.adobe-download-text.hidden{
	display: none;
}

.adobe-download-text {
    margin: 20px 0;
    font-size: .9em;
    text-align: center;
}

.adobe-download-text a{
    color: #c01b15; /* red */
}

.legal_small{
	font-size: .9rem !important;
	font-weight: bold;
	line-height: 1.3;
}

.legal_small_norm{
	font-size: .9rem;
	line-height: 1.3;
}

.promo_call{
	font-weight: bold;
	text-transform: uppercase;
	color: var(--g_red);
	margin-bottom: .5em;
}

/* ===================== Forms ===================== */

input,
select,
textarea{
	width: 100%;
	padding: .5em 1em;
	background-color: #ffffff;
	border-radius: 2em;
	border: 1px solid #000;
	font-family: inherit;
	font-size: 1em;
	line-height: normal;
}

input,
select{
	width: 100%;
	appearance: none;
	-webkit-appearance: none;
	box-sizing: border-box;
}

input[type=checkbox]{
	width: 1.5em;
    height: 1.5em;
	appearance: checkbox;
	-webkit-appearance: checkbox;
}

input[type=radio]{
	width: auto;
	appearance: radio;
	-webkit-appearance: radio;
}

input[type=file]::file-selector-button{
	color: inherit;
}

button{
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: none;
    background-color: transparent;
    cursor: pointer;
}

select{
	line-height: 1.55;
    background-repeat: no-repeat;
    background-position: right 15px center;
	background-size: 20px;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMTguNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCAzMiAxOC40IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAzMiAxOC40IiB4bWw6c3BhY2U9InByZXNlcnZlIj4gPGc+IDxwYXRoIGQ9Ik0xNiwxOC40Yy0wLjYsMC0xLjItMC4yLTEuNy0wLjdMMC43LDQuMWMtMC45LTAuOS0wLjktMi40LDAtMy40YzAuOS0wLjksMi40LTAuOSwzLjQsMEwxNiwxMi42TDI3LjksMC43IGMwLjktMC45LDIuNC0wLjksMy40LDBjMC45LDAuOSwwLjksMi40LDAsMy40TDE3LjcsMTcuN0MxNy4yLDE4LjIsMTYuNiwxOC40LDE2LDE4LjR6Ii8+IDwvZz4gPC9zdmc+");
	color: inherit;
}

.form_page {
	padding: 10px 0;
}

.form_page .container{
	width: 890px;
}

.form_page h1{
	margin: 1em 0;
}

/* ===================== Gravity Forms ===================== */

.gform_wrapper{
    margin-top: 30px;
}

@media (min-width: 768px){
	.gform_fields,
	.ginput_complex{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
}

.gform_required_legend{
	text-align: right;
    padding: 0.5em 0;
}

.gform_validation_container {
	display: none;
}

.ginput_complex span,
.gfield{
	display: flex;
	flex-direction: column;
	width: 100%;
	margin-bottom: 20px;
	text-align: left;
}

.gfield .group{
	display: flex;
	flex-direction: column;
}

.ginput_complex span{
	flex: 0 0 48%;
}

.gf_clear_complex{
	display: none;
}

.gfield_html{
	display: block;
	line-height: 1.3;
}

.legal_small.gfield_html{
	max-width: 800px;
	margin: auto;
	text-align: center;
}

.gfield .ginput_container {
	order: 1;
}

.gfield .instruction{
	margin-top: 0.4em;
}

.gfield .ginput_container_radio{
	margin-top: .5em;
}

.gfield label{
	line-height: 1.3;
}

.gfield label,
.gfield_description{
	order: 2;
	margin: 0.5em 0 0 1em;
}

.gfield_description{
	order: 3;
	font-size: .9em;
    font-weight: bold;
}

.gfield.label_top{
	display: block;
}

.gfield.label_top label,
.gfield.label_top .gfield_description{
	margin: 0 0 .5em;
}

.gfield.label_top {
	margin-bottom: 1em;
}

.gfield.half,
.gfield--width-half{
	flex: 0 0 48%;
}

.gform_title{
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
}

.gform_validation_container,
.gform_hidden{
    display: none;
}

.gform_wrapper .validation_error,
.gfield_description.validation_message{
	padding: .2em;
	margin-top: 2px;
	background-color: #FF0000;
	font-family: Arial,Helvetica,sans-serif;
	font-size: 1.05em;
	color: #ffffff;
	text-transform: uppercase;
}

.gform_confirmation_message{
	text-align: center;
    padding: 40px 0;
    font-size: 25px;
}

.form_submitted .hide_on_submit{
    display: none;
}

.ginput_container_fileupload input{
	background-color: transparent;
	border: none;
}

.gform_footer {
	text-align: center;
	padding: 50px 0;
}

.gform_footer input[type=submit]{
	width: auto;
}

/* calendar icon */
.ui-datepicker-trigger{
    position: absolute;
    top: 16px;
    right: 12px;
    width: 1em;
    height: 1em;
    font-size: 1.05em;
}

/* stylized checkmark */
.gfield_checkbox input:checked,
.gfield_checkbox input:not(checked){
    position: absolute;
    left: -99999px;
}

.gfield_checkbox {
	padding-top: 20px;
}

.gfield_checkbox .gchoice{
	height: 2em;
}

.gfield_checkbox label{
    position: relative;
    width: auto;
    clip: auto;
    overflow: visible;
    padding-left: 52px;
}

.gfield_checkbox input:not(checked) + label::before,
.gfield_checkbox input:checked + label::before{
	background-color: #ffffff;
    display: inline-block;
    position: absolute;
	    top: 0;
	    left: 0;
    width: 1em;
    height: 1em;
    border: 1px solid #000;
    font-size: 1.5em;
    content:'';
    cursor: pointer;
}

.gfield_checkbox input:focus-visible + label::before{
	outline: 3px solid #000000;
}

.gfield_checkbox input:checked + label::after{
    position: absolute;
	    top: .1em;
	    left: .1em;
    font-size: 1.8em;
    color: #000;
    line-height: 0.8;
    content:  "\2713"; /* thin check */
    transition: all .2s;
    cursor: pointer;
}

.gfield_visibility_hidden{
    display: none;
}

form[id^=gform].floating_labels .no_float_label label,
form[id^=gform].floating_labels .no_float_label legend{
	position: static; width: auto; height: auto; margin: 0;
	clip: unset;
	color: #FFFFFF;
}

form[id^=gform].floating_labels .unfloat label{
	top: -1em;
	left: 0;
	color: #FFFFFF;
}

form.floating_labels .ginput_complex span[id$=container]{
	position: relative;
}

.floating_label,
.floating_labels .gfield {
	position: relative;
}

.floating_labels label,
.floating_label label{
	position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	padding-left: .5em;
	transition: top .3s ease-in-out;
}

.floating_label.unfloat label{
	top: -1.7em;
}

form[id^=gform].floating_labels label{
	top: 0.8em;
	left: 1em;
	width: auto; 
	height: auto; 
	clip: unset;
	margin: 0;
	color: #000;
	transition: all .3s ease-in-out;
}

form[id^=gform].floating_labels .field_description_above label{
	top: 1.5em;
}

form[id^=gform].floating_labels .sr_label label,
form[id^=gform].floating_labels input[type=checkbox] + label{
	position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
}

form[id^=gform].floating_labels.center_labels label{
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
}

form[id^=gform].floating_labels .no_float_label label,
form[id^=gform].floating_labels .no_float_label legend{
	position: static; width: auto; height: auto; margin: 0;
	clip: unset;
	color: #FFFFFF;
}

form[id^=gform].floating_labels .unfloat label,
form[id^=gform].floating_labels .unfloat.gfield_error label{
	top: -.7em;
	font-size: 1.4em;
	color: #FFFFFF;
	background-color: transparent;
}

.gsection_title{
	padding: 0.2em 0;
	margin-top: 1em;
	border-bottom: 2px solid;
	font-size: 2rem;
	font-weight: bold;
	text-transform: uppercase;
}

.std_title{
	margin: 1em 0;
}

.std_copy strong{
	font-weight: bold;
}

.std_copy .cta{
	margin-bottom: 1em;
}

.std_copy h1,
.std_copy h2,
.std_copy h3,
.std_copy h4,
.std_copy h5,
.std_copy h6{
	font-weight: 800;
    margin-bottom: 1em;
}

.gform_description,
.std_copy p,
.std_copy li{
	margin-bottom: 1.5em;
	line-height: 1.3;
}

.std_copy li{
	margin-bottom: 0.5em;
    font-weight: bold;
}

.std_copy h1{
	font-size: 3em;
    margin: 1em 0;
}

.std_copy h2{
    font-size: 1.5em;
}
.std_copy h3{
    font-size: 1.17em;
}
.std_copy h4{
}
.std_copy h5{
    font-size: 0.83em;
}
.std_copy h6{
    font-size: 0.67em;
}
.std_copy ol,
.std_copy ul{
    margin: 0 0 1.5em;
    list-style-type: disc;
    list-style-position: outside;
	padding-left: 1em;
}
.std_copy ol{
    list-style-type: decimal;
}

.std_copy .lg_txt{
	margin-bottom: 1em;
	font-size: 1.5em;
}

.std_copy ul ul,
.std_copy ol ul,
.std_copy ol ol,
.std_copy ul ol{
    margin-top: 10px;
    margin-left: 15px;
    list-style-type: circle;
    list-style-position: outside;
}

.std_copy ol ol,
.std_copy ul ol{
    list-style-type: decimal;
}

.std_copy a:hover{
	text-decoration: none;
}

/* ===================== Slider General ===================== */

.resp_slider{
    opacity: 0;
    -webkit-transition: opacity .3s ease-in-out;
            transition: opacity .3s ease-in-out;
}

.resp_slider.show{
    opacity: 1;
}

.slider_wrap{
    position: relative;
}

.slick-arrow{
    position: absolute;
	    top: 50%;
	    z-index: 10;
    width: 1em;
    height: 1.66229em;
    padding: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: none;
    font-size: 1.6rem;
    overflow: hidden;
    cursor: pointer;

    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}

.slick-arrow svg{
	width: 100%;
	height: 100%;
}

.slick-arrow .arrow_path{
	fill: #000000;
}

.white_arrows .slick-arrow .arrow_path{
	fill: #ffffff;
}

.slick-dotted.slick-slider{
	margin-bottom: 0;
}

.slick-slide{
    position: relative;
}

.lt_arrow {
	left: 50px;
    background-color: transparent;
}

.rt_arrow {
	right: 50px;
    background-color: transparent;
}

.slick-dots {
	display: flex;
	bottom: 25px;
	left: 50px;
	justify-content: center;
	width: auto;
}

.slick-dots > div{
	flex: 0 0 auto;
}

.slick-dots button{
	width: 2em;
	height: 2em;
	margin: 0 0.3em;
	opacity: 1;
	background-color: #fff;
	border-radius: 100%;
	font-size: 1.2rem;
	text-indent: -9999em;
	border: 1px solid #fff;
}

.slick-dots .slick-active button{
	/* background-color: #ef5122; */
	background-color: #d2390f;
	color:#fff;
}

@media (max-width: 767px){
	
	.slick-dots button{
		font-size: .6rem;
		margin: 0 0.5em;
	}
}

.blk_bknd{
	background-color: #000000;
}

/* ===================== Decorative ===================== */

.cta,
.cta_style a,
input[type=submit],
#top_section .home_hero .copy a{
	text-align: center;
	display: inline-block;
	padding: .8em 1em;
	background-image: linear-gradient(to right, #d2390f  0%, var(--g_red)  51%, #d2390f 100%);
	background-color: var(--g_red);
	background-size: 200% auto;
	border-radius: 2em;
	border: none;
	font-family: var(--norwester);
	font-size: 1.3rem;
	color: #ffffff;
	font-weight: normal;
	text-decoration: none;
	text-transform: uppercase;
	cursor: pointer;
	transition: all .3s ease-in-out;
	border: 2px solid transparent;
}

@media (max-width: 450px){

	.cta,
	.cta_style a,
	input[type=submit],
	#top_section .home_hero .copy a{
		padding: 0.5em 1.5em;
		font-size: 1.2rem;
	}
}

.cta.whitecta{
	background-color: #ffffff;
    background-image: none;
	color: #000000;
    border: 1px solid;
}

.cta.cta_outline{
	color: #000000;
	background-color: transparent;
	background-image: none;
	border-color: var(--g_red);
}

.cta_style a:hover,
.cta:hover,
input[type=submit]:hover,
#top_section .home_hero .copy a:hover{
    background-position: right center;
}

.cta_row{
	display: inline-grid;
    grid-gap: 0.5em;
	grid-template-columns: auto auto;
	justify-items: center;
	align-items: center;
}

.cta_row br{
	display: none;
}

.bold{
	font-weight: bold;
}

.hdr{
    background-color: transparent;
	font-size: 3.5rem;
    color: #000000;
	font-weight: bold;
}


@media (max-width: 767px){
	.hdr{
		font-size: 2.5rem;
	}
}

.icon{
	padding-left: 1.5em;
	background-size: auto 100%;
	background-position: left center;
	background-repeat: no-repeat;
}

.icon.pizza{
	background-image: url(images/icons/icon-menu.svg);
}

.icon.map_pin{
	background-image: url(images/icons/icon-location.svg);
}

.icon.star{
	background-image: url(images/icons/icon-rewards.svg);
}

.circle_arrow{
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB3aWR0aD0iNjMuNyIgaGVpZ2h0PSI2My43IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDYzLjcgNjMuNyIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgNjMuNyA2My43IiB4bWw6c3BhY2U9InByZXNlcnZlIj4gPGc+IDxjaXJjbGUgY3g9IjMxLjgiIGN5PSIzMS44IiByPSIzMS44Ii8+IDxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik00MS4zLDMwLjVsLTYuMS02LjFjLTAuNy0wLjctMS45LTAuNy0yLjYsMGMtMC43LDAuNy0wLjcsMS45LDAsMi42bDIuOSwyLjlIMjMuN2MtMSwwLTEuOSwwLjgtMS45LDEuOSBjMCwxLDAuOCwxLjksMS45LDEuOWgxMS44bC0yLjksMi45Yy0wLjcsMC43LTAuNywxLjksMCwyLjZjMC40LDAuNCwwLjgsMC41LDEuMywwLjVjMC41LDAsMS0wLjIsMS4zLTAuNWw2LjEtNi4xIGMwLjQtMC40LDAuNS0wLjgsMC41LTEuM1M0MS42LDMwLjksNDEuMywzMC41eiIvPiA8L2c+IDwvc3ZnPg==");
	width: 1em;
	height: 1em;
	font-size: 3rem;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

.cta.arrow{
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB3aWR0aD0iNjMuNyIgaGVpZ2h0PSI2My43IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDYzLjcgNjMuNyIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgNjMuNyA2My43IiB4bWw6c3BhY2U9InByZXNlcnZlIj4gPGc+IDxjaXJjbGUgY3g9IjMxLjgiIGN5PSIzMS44IiByPSIzMS44Ii8+IDxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik00MS4zLDMwLjVsLTYuMS02LjFjLTAuNy0wLjctMS45LTAuNy0yLjYsMGMtMC43LDAuNy0wLjcsMS45LDAsMi42bDIuOSwyLjlIMjMuN2MtMSwwLTEuOSwwLjgtMS45LDEuOSBjMCwxLDAuOCwxLjksMS45LDEuOWgxMS44bC0yLjksMi45Yy0wLjcsMC43LTAuNywxLjksMCwyLjZjMC40LDAuNCwwLjgsMC41LDEuMywwLjVjMC41LDAsMS0wLjIsMS4zLTAuNWw2LjEtNi4xIGMwLjQtMC40LDAuNS0wLjgsMC41LTEuM1M0MS42LDMwLjksNDEuMywzMC41eiIvPiA8L2c+IDwvc3ZnPg==");
	background-size: contain;
	background-position: right;
	background-repeat: no-repeat;
}

.cta.arrow.short{
	padding: 0.6em 2em 0.6em 1em;
}

.cta.arrow.blk{
	background-color: #000000;
}

/* menus */
.nav_menu li > a,
.nav_menu li > button{
	line-height: normal;
	font-family: var(--norwester);
    display: inline-block;
    padding: .5em .4em;
    font-size: 1.3em;
	border-bottom: 3px solid transparent;
    color: #000000;
    text-decoration: none;
    text-transform: uppercase;
}

.nav_menu li > button{
	transition: border-color .3s ease-in-out, color .3s ease-in-out, opacity .3s ease-in-out;
}

@media (min-width: 768px){

	.nav_menu > li.current-menu-item a,
	.nav_menu > li.current-menu-item button,
	.nav_menu > li > a:hover,
	.nav_menu > li > button:hover,
	.nav_menu > li > button[aria-expanded=true]{
		border-color: var(--g_red);
	}

	.nav_menu > li > a:focus-visible,
	.nav_menu > li > button:focus-visible{
		border-color: var(--g_red);
	}
}

.marble{
	background-image: url(images/backgrounds/marble-texture.jpg);
	background-position: center top;
}

.marble_black{
	background-color: #000000;
	background-image: url(images/backgrounds/black-marble.jpg);
	background-position: center top;
	color: #ffffff;
}

/* ===================== Social ===================== */

.social_row {
	display: grid;
	grid-gap: 10px;
	grid-template-columns: repeat(auto-fill, minmax(3em, 1fr));
	justify-items: center;
}

.social_row a{
	display: inline-flex;
	position: relative;
	justify-content: center;
	align-items: center;
	width: 1em;
	height: 1em;
	background-color: #000000;
	border-radius: 100%;
	border: 2px solid #000000;
	font-size: 3em;
	color: #ffffff;
	text-decoration: none;
}

.social_row a svg{
	width: 50%;
	height: 50%;
	fill: #fff;
}

.social_row a:hover{
    background-color: #fff;
}

.social_row a:hover svg{
    fill: #000000;
}

/* ===================== Layout ===================== */

.flx{
	display: flex;
}


.align_mid{
	align-items: center;
}

.flx_cent{
	display: flex;
	justify-content: center;
	align-items: center;
}

.flx_cent .inner{
	padding: 20px;;
}

.flx_wrap{
	flex-wrap: wrap;
}

.flx_end{
	justify-content: flex-end;
}

.flx_btwn{
	justify-content: space-between;
}

.flx_half{
	flex: 0 0 50%;
}

@media (min-width: 768px){
	.mobile_only{
		display: none !important;
	}

	.flx_desk{
		display: flex;
	}

	.flx_desk_inl{
		display: inline-flex;
	}

	.flx_desk.cent{
		justify-content: center;
	}
}

@media (min-width: 1001px){

	.tablet_only{
		display: none !important;
	}

	.flx_tablet{
		display: flex;
		justify-content: space-between;
	}

	.flx_tablet.cent{
		justify-content: center;
	}
}

@media (max-width: 1000px){
	
	.flx_tab_col{
		flex-direction: column;
	}
}

@media (max-width: 767px){ 
    .desk_only,
    .desktop_only{
        display: none !important;
    }

	.flx_mob_col{
		flex-direction: column;
	}
}

.no_dec{
    text-decoration: none;
}

.image_copy{
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

/* ===================== animation ===================== */

img.parallax{
	--y_adjust: 0;
	transform: translateY(var(--y_adjust));
}

/* ===================== Loader ===================== */

.loader.hide{
    display: none;
}

.loader {
    position: absolute;
        top: 12%;
	    left: 47%;
    width: 1em;
    height: 1em;
    margin: 100px auto;
    border-radius: 50%;
    font-size: 1.3em;
    color: #000;
    text-indent: -9999em;
    -webkit-animation: load4 1.3s infinite linear;
    animation: load4 1.3s infinite linear;

    -webkit-transform: translateZ(0);
        -ms-transform: translateZ(0);
            transform: translateZ(0);
}
@-webkit-keyframes load4 { 0%, 100% { box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0; } 12.5% { box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; } 25% { box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; } 37.5% { box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em; } 50% { box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em; } 62.5% { box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em; } 75% { box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0; } 87.5% { box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em; } }
@keyframes load4 { 0%, 100% { box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0; } 12.5% { box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; } 25% { box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em; } 37.5% { box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em; } 50% { box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em; } 62.5% { box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em; } 75% { box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0; } 87.5% { box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em; } }


/* ===================== Mobile Header ===================== */

#mobile_header{
    display: none;
    position: relative;
    text-align: center;
}

#mobile_header .top_links{
	display: flex;
	position: relative;
		z-index: 100;
	justify-content: center;
	padding: .5em 0;
	background-color: #f5f5f5;
	font-size: 1.2rem;
}

#mobile_header .top_links a{
	margin: 0 .4em;
	padding-top: .1em;
	padding-bottom: .1em;
}

#mobile_header .logo_wrap{
	position: relative;
	padding: 10px 0;
}

#mobile_header .mobile_header_bknd{
	position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
	width: 100%;
	height: 100%;
	background-color: #ffffff;
}

#mobile_header .toggle_wrap{
	position: absolute;
		top: 50%;
		right: 20px;
		z-index: 30;

	-webkit-transform: translate(0%,-50%);
	        transform: translate(0%,-50%);
}

.toggle_icon{
	width: 2em;
	height: 2em;
	padding: 0;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 95%;
	font-size: 1.3em;
}

#toggle_menu{
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB3aWR0aD0iNDYuNSIgaGVpZ2h0PSI0Ni41IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQ2LjUgNDYuNSIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgNDYuNSA0Ni41IiB4bWw6c3BhY2U9InByZXNlcnZlIj4gPHBhdGggZD0iTTI4LDIzLjNMNDUuNSw1LjdjMS4zLTEuMywxLjMtMy40LDAtNC43bDAsMGMtMS4zLTEuMy0zLjQtMS4zLTQuNywwTDIzLjMsMTguNUw1LjcsMUM0LjQtMC4zLDIuMy0wLjMsMSwxaDAgYy0xLjMsMS4zLTEuMywzLjQsMCw0LjdsMTcuNSwxNy41TDEsNDAuOGMtMS4zLDEuMy0xLjMsMy40LDAsNC43aDBjMS4zLDEuMywzLjQsMS4zLDQuNywwTDIzLjMsMjhsMTcuNSwxNy41YzEuMywxLjMsMy40LDEuMyw0LjcsMCBsMCwwYzEuMy0xLjMsMS4zLTMuNCwwLTQuN0wyOCwyMy4zeiIvPiA8L3N2Zz4=");
}

#toggle_menu.show{
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB3aWR0aD0iNjMiIGhlaWdodD0iNDQuOSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA2MyA0NC45IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA2MyA0NC45IiB4bWw6c3BhY2U9InByZXNlcnZlIj4gPGc+IDxwYXRoIGQ9Ik0zLjQsNi43aDU2LjNjMS45LDAsMy4zLTEuNSwzLjMtMy4zUzYxLjUsMCw1OS43LDBIMy40QzEuNSwwLDAsMS41LDAsMy4zUzEuNSw2LjcsMy40LDYuN3oiLz4gPHBhdGggZD0iTTU5LjcsMTkuMUgzLjRjLTEuOSwwLTMuNCwxLjUtMy40LDMuM2MwLDEuOSwxLjUsMy4zLDMuNCwzLjNoNTYuM2MxLjksMCwzLjMtMS41LDMuMy0zLjNDNjMsMjAuNiw2MS41LDE5LjEsNTkuNywxOS4xeiIvPiA8cGF0aCBkPSJNNTkuNywzOC4ySDMuNGMtMS45LDAtMy40LDEuNS0zLjQsMy4zdjBjMCwxLjksMS41LDMuMywzLjQsMy4zaDU2LjNjMS45LDAsMy4zLTEuNSwzLjMtMy4zdjBDNjMsMzkuNyw2MS41LDM4LjIsNTkuNywzOC4yIHoiLz4gPC9nPiA8L3N2Zz4=");
    display: block;
}

#mobile_header .order_banner{
	display: block;
	position: relative;
		z-index: 100;
	padding: .5em 10px;
	background-color: var(--g_red);
	font-size: 2rem;
	color: #ffffff;
	text-align: center;
}

#mobile_header .order_banner:focus-visible{
	outline: 3px solid #000000;
}

#mobile_menu{
	display: none;
	position: absolute;
		z-index: 15;
	width: 100%;
	padding: 25px 7%;
	opacity: 0;
	background-color: #FFF;
	box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.4);
	font-size: 1.4rem;
	text-align: left;

	-webkit-transition: opacity .3s ease-in-out;
	        transition: opacity .3s ease-in-out;
}

.mobile_social .social_row{
	width: 233px;
	max-width: 100%;
	margin: auto;
}

.mobile_social .social_row a{
	font-size: 2.7rem;
}

#mobile_menu.display{
	display: block;
}

#mobile_menu.show{
    opacity: 1;
}

#mobile_menu li > a,
#mobile_menu li > button{
	padding: .2em 0;
}

#mobile_menu .sub-menu{
	margin-left: 1em;
    font-size: .8em;
}

.mobile_logo{
	display: inline-block;
	position: relative;
		z-index: 30;
	width: 60%;
	height: 100%;
	background-color: transparent;
}

.slide_down #mobile_menu{
    opacity: 1;

     -webkit-transform: translate(0%,-100%);
             transform: translate(0%,-100%);
    -webkit-transition: transform .3s ease-in-out;
    transition:         transform .3s ease-in-out;
}

.slide_down #mobile_menu.show{
-webkit-transform: translate(0%,0%);
        transform: translate(0%,0%);
}

#mobile_menu .social_row{
    padding-top: 20px;
}

@media (max-width: 430px){
	
	#mobile_header .top_links{
		font-size: .9rem;
	}
}

/* ===================== Header ===================== */

header{
	position: -webkit-sticky;
	position: sticky;
	    top: 0;
	    z-index: 100;
    width: 100%;
    background-color: #FFF;
	box-shadow: 0 0 29px 17px rgb(0 0 0 / 10%);
}

#header_top{
    height: 57px;
    overflow: hidden;
    padding-top: 10px;
    padding-bottom: 10px;

    -webkit-transition: height .3s ease-in-out, padding .3s ease-in-out;
            transition: height .3s ease-in-out, padding .3s ease-in-out;
}

#desktop_menu{
	font-size: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
	padding: 0 40px;
}

#desktop_menu #main_logo {
	display: inline-block;
	position: relative;
	flex: 1 1 16%;
	margin-right: 5%;
	text-align: center;
}

#desktop_menu nav{
	display: flex;
	flex: 1 1 auto;
	justify-content: space-between;
	align-items: center;
}

#desktop_menu .primary_menu {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 0.7em;
}

#desktop_menu .cta{
	padding: 0.9em;
	font-size: 1.3em;
}

@media (max-width: 1440px){
	#desktop_menu	{
		font-size: .8rem;
	}
}

@media (max-width: 1150px){
	#desktop_menu	{
		font-size: .7rem;
	}
}

@media (max-width: 1015px){
	#desktop_menu	{
		font-size: .6rem;
	}

	#desktop_menu #main_logo{
		margin-left: 0;
		flex: 1 1 10%;
	}
}

@media (max-width: 840px){
	#desktop_menu	{
		font-size: .5rem;
	}
}

@media (max-width: 767px){ 
    header{
        position: static;
        height: auto;
        box-shadow: none;
    }

    #header_top{
        display: none;
    }

    #desktop_menu{
        display: none;
    }

    #mobile_header{
        display: block;
    }

    #header_top {
        height: auto;
        padding: 7px 0 16px;
        background: #000;
        filter: none;
    }
}



/* ===================== Footer ===================== */

#footer_menu{
	padding: 50px 20px;
}


#footer_middle {
	padding-bottom: 50px;
}

#footer_middle h2{
	text-transform: uppercase;
	margin-bottom: 1.5em;
}

@media (max-width: 1400px){
	#footer_middle .container{
		justify-content: center;
		flex-wrap: wrap;
		gap: 50px;
	}
}

#foot_signup_form{
	display: grid;
	grid-gap: 10px;
	grid-template-columns: auto auto auto;
	justify-items: center;
}

#foot_signup_form input,
#foot_signup_form select{
	background-color: #ffffff;
	width: 200px;
	height: 3em;
	margin-bottom: .5em;
}


#foot_signup_form label{
	display: block;
}

#footer_bottom{
	color: #ffffff;
	background-color: #000000;
	text-transform: uppercase;
	padding: 30px 0;
}

#footer_bottom #foot_logo{
	flex: 0 0 230px;
}

#footer_bottom .st0_logo{
	fill: #ffffff;
}

#footer_bottom .logo_sub_head path{
	fill: #ffffff;
}

footer .foot_legal li{
	position: relative;
	align-items: center;
	padding: 0 0.7em;
	margin-bottom: .8em;
}

footer .social_row{
	grid-template-columns: 1fr 1fr 1fr;
}


footer .dough_logo{
	margin-top: -0.5em;
	margin-right: 0.5em;
}

footer .dough_logo img{
	margin-left: auto;
	margin-right: auto;
}

@media (min-width: 768px){

	footer .foot_legal {
		padding-left: 50px;
		display: inline-block;
		flex: 1 1 auto;
		padding: 0;
	}

	footer .foot_legal ul {
		display: flex;
		position: relative;
		flex-wrap: wrap;
		justify-content: flex-end;
		margin: 0 -.7em;
	}

	footer .foot_legal ul::before{
		display: inline-block;
		position: absolute;
		top: 0;
		right: -0.3em;
		z-index: 10;
		width: 1em;
		height: 100%;
		background-color: #000000;
		font-size: 1rem;
		content:'';
	}

	footer .foot_legal li:first-child{
		margin-left: 0.1em;
	}

	footer .foot_legal li::before{
		display: inline-block;
		position: absolute;
		top: 50%;
		right: 0;
		z-index: 1;
		width: 1px;
		height: 1em;
		background-color: currentColor;
		content:'';

		-webkit-transform: translate(0%,-50%);
		transform: translate(0%,-50%);
	}

	footer .foot_legal li:last-child::before{
		content: none;
	}
}

@media (min-width: 1201px){

	#foot_signup_form button span{
		position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
	}
}

@media (max-width: 1200px){
	
	#footer_menu .nav_menu{
		flex-wrap: wrap;
		justify-content: center;
	}

	#foot_signup_form{
		grid-template-columns: 1fr;
	}

	#foot_signup_form label{
		text-align: left;
	}

	#foot_signup_form button{
		background-color: #000000;
		background-image: none;
		border-radius: 2em;
		border: none;
		font-family: var(--norwester);
		font-size: 1.3rem;
		color: #ffffff;
		width: auto;
		height: auto;
		font-weight: normal;
		text-transform: uppercase;
		padding: .7em 2em;
	}

	#foot_signup_form input, 
	#foot_signup_form select{
		width: 255px;
	}

	#footer_social .soc_row_wrap{
		text-align: center;
	}
}

@media (max-width: 1001px){

	.foot_block	{
		text-align: center;
		margin-bottom: 40px;
	}

	#footer_social .social_row{
		display: inline-grid;
	}
}

@media (max-width: 767px){
	
	#footer_menu .nav_menu{
		display: block;
		width: 415px;
		max-width: 100%;
		margin: auto;
		text-align: left;
		column-count: 2;
	}
	
	footer .dough_logo{
		margin-bottom: 1em;
	}

	#footer_bottom{
		text-align: center;
	}

	footer .foot_legal {
		margin-top: 40px;
		text-align: center;
	}
}

#copyright{
    margin-top: 20px;
}

#dbc_logo {
    text-align: center;
    padding: 60px 0 20px;
}

#dbc_logo svg{
    width: 25px;
    fill: #ffffff;
    fill-opacity: .5;
}

/* ===================== General Page ===================== */

@media (max-width: 767px){
	#page > main{
		position: relative;
			z-index: 1;
	}

	.popup_on #page > main{
		z-index: 110;
	}
}

#content:focus-visible{
	outline-style: initial;
}

@media (max-width: 767px){
    #content{
        margin-top: 0;
    }
}

.hdr.reg_title{
	padding: 1em 0;
	text-align: center;
}

.section_copy h2,
.section_copy h3{
	margin-bottom: 0.2em;
	font-size: 3.5rem;
	font-weight: 800;
	line-height: 1.2;
}

.section_copy,
.section_copy p{
	font-size: 1.3rem;
	line-height: 1.3;
}

.section_copy p{
	margin-bottom: 1em;
}

.section_copy .small_print{
	font-size: .7em;
}

@media (max-width: 767px){

	.section_copy h2,
	.section_copy h3{
		font-size: 2.5rem;
	}
}

/* ===================== Partials ===================== */

.app_links{
	display: inline-grid;
	margin-bottom: 20px;
	grid-gap: 10px;
	grid-template-columns: auto auto;
	justify-items: center;
}

.app_links a{
	display: inline-block;
	height: 54px;
	max-width: 175px;
	overflow: hidden;
	margin-bottom: 10px;
	background-color: #000000;
	border-radius: 6px;
	border: 2px solid #000000;
	color: #ffffff;
}

.app_links svg{
	width: auto;
}

.app_links .app_st0,
.app_links .app_st1{
	transition: all .3s ease-in-out;
}

.app_links .app_st0{
	fill: transparent;
}

.app_links .app_st1{
	fill: #ffffff;
}

@media (min-width: 768px){

	.app_links a:hover {
		background-color: #ffffff;
	}

	.app_links a:hover .app_st0{
		fill: #ffffff;
	}

	.app_links a:hover .app_st1{
		fill: #000000;
	}
}

@media (max-width: 500px){
	
	.app_links{
		flex-direction: column;
		align-items: center;
	}

	.app_links a:first-child{
		margin-right: 0;
	}
}

/* Rewards Partial */
#get_the_app {
	background-color: #ffffff;
	background-image: url(images/misc/rewards-phones.png?v=2);
	background-position: calc(50% - 465px) top;
	background-repeat: no-repeat;
}

#get_the_app .app_inner{
	min-height: 545px;
}

#get_the_app .app_inner .copy_half{
	flex: 0 0 52%;
	padding: 20px 0;
}

#get_the_app h2{
	font-size: 3rem;
}

@media (min-width: 768px){

	#get_the_app .copy .inner{
		padding: 50px 90px;
	}
}

@media (min-width: 768px) and (max-width: 1300px){

	#get_the_app {
		background-size: 90%;
	}

	#get_the_app h2{
		font-size: 2.5rem;
	}
}

@media (min-width: 768px) and (max-width: 1000px){

	#get_the_app .app_inner .copy_half{
		flex: 0 0 60%;
	}
}

@media (max-width: 767px){

	#get_the_app {
		background-image: url(images/misc/phone-mobile-2.png?v=2);
	}

	#get_the_app .app_inner{
		padding-top: 30px;
	}

	#get_the_app{
		height: 915px;
		background-position: center top 370px;
	}
}

@media (max-width: 600px){
	
	#get_the_app{
		height: 1010px;
		background-position: center bottom;
		background-size: 106%;
	}
}

/* ===================== Front Page ===================== */

#top_section {
	position: relative;
	overflow: hidden;
}

#top_section .home_hero .inner_img{
	position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

@media (min-width: 768px){

	#top_section .home_hero{
		height: 41vw;
	}

	#top_section .home_hero .inner_flex{
		position: absolute;
			top: 0;
			left: 0;
			z-index: 10;
		width: 100%;
		height: 100%;
	}
}

@media (max-width: 767px){
	
	#top_section .home_hero video{
		height: 116vw;
	}
}

#top_section .home_hero .copy{
	display: flex;
	flex: 0 0 50%;
	justify-content: center;
	align-items: center;
	padding: 20px 50px;
	margin: 0 0 0 auto;
}

#top_section .home_hero .copy p{
	margin-bottom: 0.5em;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.2;
	background-color: rgba(0,0,0,0.01);
}

#top_section .home_hero.dark_mode .copy{
	color: #ffffff;
}

#top_section .home_hero video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}


@media (min-width: 768px){

	#top_section .home_hero .copy .inner{
		width: 100%;
		padding: 140px 0;
		background-image: url(images/backgrounds/background-shadow-gradient.svg);
		background-size: 100% 100%;
	}
}

@media (min-width: 768px) and (max-width: 1000px){

	#top_section .home_hero .copy p{
		font-size: 2.5rem;
	}

	#top_section .home_hero .copy a{
		font-size: 1rem;
	}

}

@media (max-width: 767px){
	
	#top_section .video_buttons{
		bottom: auto;
		top: 100vw;
	}

	#top_section .home_hero .inner_flex{
		flex-direction: column;
		justify-content: flex-end;
	}

	#top_section .home_hero .copy{
		flex: 0 0 auto;
		width: 100%;
		padding: 50px 20px;
		background-color: #000000;
	}
}

#rewards_offer{
	font-size: 2rem;
}

#rewards_offer .cta{
	font-size: .65em;
}

#rewards_offer .container{
	width: 1210px;
}

#rewards_offer .phone_img {
	flex: 0 0 auto;
}

#rewards_offer .phone_img img{
    object-fit: contain;
	object-position: center bottom;
}

#rewards_offer .copy{
	display: flex;
	flex: 0 1 47%;
	justify-content: center;
	align-items: center;
	padding: 10px 25px;
	font-weight: bold;
	line-height: 1.3;
	text-align: center;
}

#rewards_offer .ctas{
	display: flex;
	flex: 1 0 370px;
	align-items: center;
}

@media (min-width: 768px){
	
	#rewards_offer .phone_img {
		height: 100%;
	}

	#rewards_offer .phone_img img{
		height: 146px;
	}

	#rewards_offer .phone_img {
		order: 1;
	}

	#rewards_offer .copy{
		order: 2;
	}

	#rewards_offer .ctas{
		order: 3;
	}
}

@media (min-width: 768px) and (max-width: 1000px){

	#rewards_offer {
		font-size: 1.5rem;
	}

	#rewards_offer .ctas {
		flex: 0 0 auto;
	}

	#rewards_offer .ctas .cta_row{
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px){
	#rewards_offer .ctas{
		flex: 1 0 auto;
		justify-content: center;
		padding: 20px 0;
	}

	#rewards_offer .copy{
		padding: 80px 25px 15px;
		font-weight: bold;
	}
}

#general_links .top_image {
	padding: 50px 0;
	justify-content: center;
}

#general_links .top_image .copy{
	max-width: 900px;
	flex: 0 1 58%;
}

#general_links .top_image .image{
	flex: 0 1 auto;
}

@media (min-width: 768px){

	#general_links .top_image img{
		height: 466px;
		object-fit: cover;
		object-position: left;
	}
}

#general_links h2{
	margin-bottom: .3em;
	font-size: 3rem;
	font-weight: bold;
}

#general_links p{
	font-size: 1.6rem;
	margin-bottom: 1em;
}

#general_links .card{
	position: relative;
	min-height: 550px;
	padding: 0;
}

#general_links .card .copy{
	padding: 60px 10px;
}

#general_links .card .copy p{
	margin-bottom: .5em;
}

#general_links .card.white_copy {
	background-color: #000000;
}

#general_links .card.white_copy .copy{
	color: #ffffff;
	background-image: url(images/backgrounds/black-gradient-vert.png);
	background-position: left top;
	background-repeat: repeat-x;
	background-size: auto 100%;
}

@media (max-width: 767px){
	
	#general_links .card{
		flex-direction: column;
		display: flex;
		height: 600px;
	}

	#general_links .card .copy{
		flex: 0 0 50%;
	}
}

@media (max-width: 500px){
	
	#general_links .card{

	}
}

/* ===================== FAQ Template ===================== */

.faq_template h1{
	margin: 1em;
}

.contact_faqs #faqs {
    flex: 2 4 auto;
}

.contact_faqs #faq_filter button{
	width: 100%;
	margin-bottom: 1em;
}

@media (min-width: 768px){

	.contact_faqs #faqs {
		margin-left: 50px;
	}
}

/* ===================== Rewards ===================== */

.rewards_page #rewards_intro{
	background-repeat: no-repeat;
	background-position: calc(50% - 465px) top;
	min-height: 550px;
}

@media (min-width: 768px){

	.rewards_page #rewards_intro{
		background-image: url(images/misc/rewards-phones.png?v=2);
	}
}

@media (max-width: 767px){

	.rewards_page #rewards_intro img{
		transform: translateX(-5%);
	}
}

.rewards_page #rewards_intro .app_inner .copy_half{
	flex: 0 0 52%;
}

.rewards_page .mid_block_copy,
.rewards_page .mid_block_image {
	flex: 0 0 50%;
}

.rewards_page .mid_block_copy .inner{
	max-width: 675px;
}

.rewards_page .mid_block_image img{
	object-fit: cover;
}


.rewards_page #perks {
	background-color: #000000;
	padding: 63px 20px;
	margin-bottom: 50px;
}

.rewards_page #perks .inner{
	width: 1360px;
	max-width: 100%;
	margin: auto;
	grid-gap: 6%;
	grid-template-columns: 1fr 1fr 1fr;
	justify-items: center;
}

.rewards_page #perks .perk{
	text-align: center;
	color: #ffffff;
}

.rewards_page #perks .perk h3{

}

.rewards_page #perks .perk:nth-child(2)::before,
.rewards_page #perks .perk:nth-child(2)::after{
	display: inline-block;
	position: absolute;
	top: 50%;
	z-index: 1;
	width: 1em;
	height: 1.5012106em;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	font-size: 2rem;
	content:'';

	-webkit-transform: translate(0%,-50%);
	transform: translate(0%,-50%);
}

.rewards_page #perks .perk:nth-child(2){
	position: relative;
}

@media (min-width: 1001px){
	
	.rewards_page #perks .inner{
		display: grid;
	}

	.rewards_page #perks .perk:nth-child(2)::before{
		left: -2em;
		background-image: url(images/icons/checker_vignette_1.svg);
	}

	.rewards_page #perks .perk:nth-child(2)::after{
		right: -2em;
		background-image: url(images/icons/checker_vignette_2.svg);
	}
}

@media (max-width: 1000px){
	
	.rewards_page #perks {
		padding: 65px 12%;
	}

	.rewards_page #perks .perk + .perk{
		margin-top: 100px;
	}

	.rewards_page #perks .perk:nth-child(2)::before,
	.rewards_page #perks .perk:nth-child(2)::after{
		left: 50%;
		-webkit-transform: translate(-50%,0%);
		        transform: translate(-50%,0%);
	}

	.rewards_page #perks .perk:nth-child(2)::before{
		background-image: url(images/icons/checker_vignette_4.svg);
		top: -75px;
	}

	.rewards_page #perks .perk:nth-child(2)::after{
		background-image: url(images/icons/checker_vignette_3.svg);
		bottom: -75px;
		top: auto;
	}
}

/* ===================== FAQ general ===================== */

#faqs_section .container{
	width: 1170px;
}

.faq_top {
	margin-bottom: 15px;
}

.faq_top .input_wrap{
	width: 525px;
	height: 45px;
	max-width: 100%;
	margin: auto;
	background-image: url(images/icons/search-icon.svg);
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 20px;
}

.faq_top #search_label{
	font-weight: bold;
    top: 0.8em;
    left: 1em;
}

.faq_top #faq_search{
	background-color: transparent;
}

.faq_top #clear_search{
	position: absolute;
		top: 48%;
		right: 0.3em;
		z-index: 1;
	width: 1em;
	height: 1em;
	display: none;
	background-image: url(images/icons/close-icon.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	font-size: 2rem;

	-webkit-transform: translate(0%,-50%);
	        transform: translate(0%,-50%);
}

.faq_top .unfloat #search_label{
	top: -1.7em;
}

.faq_top .hdr{
	margin-bottom: 30px;
}

.faq{
	padding: 1em 2em 0;
	margin-bottom: 30px;
	border-radius: 15px;
	border: 1px solid #000;
	font-size: 1rem;
}

.faq .question{
	margin-bottom: 1em;
	font-size: 1.5em;
	font-weight: bold;
}

#faqs_section #no_results{
	display: none;
	padding: 2em 0;
	font-size: 2rem;
	text-transform: uppercase;
}



/* ===================== 404 ===================== */

.fourohfour{
	text-align: center;
	padding: 100px 0;
}

.fourohfour h1{
	margin: 0 0 1rem;
	font-family: var(--norwester);
	font-size: 3rem;
}

/* ===================== Hero ===================== */

.hero_wrap{
	position: relative;
}

.hero img{
	margin: auto;
	width: 100%;
}

.hero_wrap .header_text{
	position: absolute;
		top: 23vw;
		left: 50%;
		z-index: 1;
	width: 100%;
	font-size: 3rem;
	color: #ffffff;
	font-weight: bold;
	text-align: center;

	-webkit-transform: translate(-50%,0%);
	        transform: translate(-50%,0%);
}

@media (min-width: 768px){
	
	.hero_wrap .header_text{
		top: 50%;
		left: calc(20.74vw - 159px);
		width: 538px;
		max-width: 40%;

		-webkit-transform: translate(0%,-50%);
		        transform: translate(0%,-50%);
	}
}

@media (max-width: 1040px){
	
	.hero_wrap .header_text{
		font-size: 2rem;
	}
}

@media (max-width: 550px){
	.hero_wrap .header_text{
		top: 14vw;
		width: 90%;
		font-size: 2.2rem;
	}
}

.hero_wrap .header_text p{
	margin-bottom: 1em;
	line-height: 1.3;
}

/* ===================== Cards ===================== */

.cards .card {
	padding: 80px 0;
}

.cards .card h2,
.cards .card h3{
	font-size: 3rem;
}

@media (min-width: 768px){

	.cards .card .container{
		display: flex;
	}

	.cards .card img{
		object-fit: cover;
	}

	.cards .card .image,
	.cards .card .copy{
		flex: 0 1 50%;
	}

	.cards .card .copy .inner{
		padding: 0 4%;
	}

	.cards .card:nth-child(odd) .copy{
		order: 1;
	}

	.cards .card:nth-child(odd) .image{
		order: 2;
	}

	.cards.reverse .card:nth-child(even) .image,
	.cards.reverse .card:nth-child(odd) .copy{
		order: 2;
	}

	.cards.reverse .card:nth-child(even) .copy,
	.cards.reverse .card:nth-child(odd) .image{
		order: 1;
	}
}

/* ===================== Video ===================== */

video{
	max-width: 100%;
}

.video_wrap{
	position: relative;
	background-color: #000000;
}

.video_wrap .overlay{
	display: flex;
	position: absolute;
		top: 0;
		left: 0;
		z-index: 60;	
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	text-align: center;
	transition: opacity .3s ease-in-out;
}

.video_wrap .overlay.fade{
	opacity: 0;
}

.video_wrap .overlay.hide{
	display: none;
}

.video_wrap .video_heading{
	margin-bottom: 25px;
	font-size: 3rem;
	color: #ffffff;
	font-weight: bold;
	line-height: 1.3;
}

.video_wrap .video_play{
	display: inline-flex;
	align-items: center;
	overflow: hidden;
	padding: 0;
	-webkit-appearance: none;
	background-color: transparent;
	border: none;
	font-family: var(--nexa);
	font-size: 2rem;
	font-size: 1.5rem;
	color: #ffffff;
	font-weight: bold;
	cursor: pointer;
	transform: translateX(30px);
}

.video_wrap .video_play img{
	width: 1em;
	height: 1em;
	font-size: 6rem;
	margin-right: 10px;
}

.video_buttons{
	display: flex;
	position: absolute;
		right: .2em;
		bottom: .2em;
		z-index: 50;
	justify-content: space-between;
	font-size: 5rem;
	transition: opacity .3s ease-in-out;
}

.video_buttons button{
	width: 1em;
	height: 1em;
	overflow: hidden;
	padding: 0;
	-webkit-appearance: none;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 90%;
	border: none;
	font-size: 3rem;
	cursor: pointer;
}

@media (max-width: 767px){
	
	.video_buttons button{
		font-size: 3rem;
	}
}

.video_buttons button + button{
	margin-left: 10px;
}

.play_btn{
	background-image: url(images/icons/play-video.svg);
}

.play_btn.pause{
	background-image: url(images/icons/pause-video.svg);
}

.mute_btn{
	background-image: url(images/icons/mute-video.svg);
	right: 2em;
}

.mute_btn.unmuted{
	background-image: url(images/icons/unmute-video.svg);
}

.cc_btn{
	background-image: url(images/icons/cc-video-enabled.svg);
}

.cc_btn.nocc{
	background-image: url(images/icons/cc-video-disabled.svg);
}

.video_buttons button:focus{
	outline: 3px dotted #FFFFFF;
}

/* ===================== Our Story ===================== */

.our_story .top_card,
.our_story .full_card_copy{
	font-size: 1.4rem;
}

.our_story .video_buttons{
	opacity: 0;
}

.our_story .video_buttons.show{
	opacity: 1;
}

.our_story .video_wrap .overlay .inner{
	width: 500px;
	max-width: 100%;
}

.our_story .top_card .card{
	padding: 40px 0 0;
}

.our_story .top_card .copy {
	order: 1;
}

.our_story .top_card .image{
	order: 2;
}

.our_story .top_card .copy .inner{
	padding: 0 20%;
}

.our_story .full_card_copy{
	width: 1015px;
	max-width: 95%;
	padding: 70px 0 30px;
	margin: auto;
}

.our_story .cards .card:nth-child(even){
	background-image: url(images/backgrounds/marble-texture.jpg);
	background-position: center top;
}

.our_story .bottom_copy h2{
	font-size: 3rem;
}

/* ===================== Careers ===================== */


.careers .career_content {
	width: 1000px;
	padding: 40px 20px;
	font-size: 1.2rem;
}

.careers .career_content h2{
	font-size: 3rem;
	margin-bottom: 0;
}

.careers .cards .card{
	padding: 0;
}

.careers .cards .card .inner{
	padding: 60px;
}

.careers .cards .card .image{
	background-image: url(images/backgrounds/marble-texture.jpg);
}

.careers .cards .card img{
	width: 100%;
	height: 100%;
}

.careers .cards .card:nth-child(odd) .copy{
	order: 2;
}

.careers .cards .card:nth-child(odd) .image{
	order: 1;
}

.careers .cards .card:nth-child(even) .copy{
	order: 1;
}

.careers .cards .card:nth-child(even) .image{
	order: 2;
}

@media (max-width: 767px){
	
	.careers .cards .container{
		padding: 0;
	}

	.careers .cards .card .inner{
		padding: 30px 20px;
	}
}

/* ===================== Specials ===================== */
.specials .white_arrows .slick-arrow .arrow_path{
	fill: #000000;
}

.specials .std_copy{
	font-size: 1.4rem;
}

.specials .hero_wrap {
	margin-bottom: 30px;
}

.specials .hero_wrap .header_text{
	font-size: 1rem;
	font-weight: normal;
}

@media (min-width: 768px){
	
	.specials .hero_wrap .header_text{
		width: 423px;
		left: calc(17.47vw - 124px);
	}
}

@media (max-width: 767px){
	
	.specials .hero_wrap{
		margin-bottom: 10px;
	}
}

.specials .hero_wrap .header_text h2{
	font-size: 3rem;
	font-weight: bold;
	margin-bottom: .5em;
}

@media (min-width: 768px){

	.specials #seasonal{
		display: flex;
	}
}

.specials #seasonal {
	background-color: #ffffff;
}

.specials #seasonal .slider_half .slick-dots button{
	font-size: .8rem;
	margin: 0 0.5em;
}

.specials #seasonal .slider_half .lt_arrow{
	left: 20px;
}

.specials #seasonal .slider_half .rt_arrow{
	right: 20px;
}

.specials #seasonal .slider_half img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.specials #seasonal .slider_half{
	overflow: hidden;
}

.specials #seasonal .slider_half,
.specials #seasonal .seasonal_copy{
	flex: 0 0 50%;
}

.specials #seasonal .seasonal_copy{
	padding: 60px;
}

.specials #seasonal .seasonal_copy h2,
.specials #seasonal .seasonal_copy h3{
	font-size: 3rem;
	margin-bottom: 0.5em;
}

.specials #seasonal .seasonal_copy li{
	font-weight: normal;
	margin: 0;
}

@media (max-width: 767px){
	
	.specials #seasonal .slick-dots{
		left: 25px;
	}

	.specials #seasonal .seasonal_copy{
		padding: 30px 20px;
	}
}

.specials #promos {
	max-width: 1500px;
	padding: 50px;
	margin: auto;
}

.specials #promos .rt_arrow{
	right: -25px;
}

.specials #promos .lt_arrow{
	left: -25px;
}

.specials #promos .slick-list{
	padding: 10px 10px 30px;
}

.specials #promos .slick-slide{
	margin: 0 30px;
}

.specials #promos .promo {
	display: flex;
	flex-direction: column;
	max-width: 610px;
	margin: 0 auto 50px;
	box-shadow: 0 7px 12px 9px rgb(0 0 0 / 14%);
}

.specials #promos .promo img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.specials #promos .promo .copy{
	padding: 20px;
	text-align: center;
	background-color: #ffffff;
}

.specials #promos .slick-dots{
	bottom: -30px;
	left: 50%;
	-webkit-transform: translate(-50%,0%);
	        transform: translate(-50%,0%);
}

.specials #promos .slick-dots button{
	border: 1px solid #000;
}

@media (max-width: 767px){
	
	.specials #promos .promo{
		margin-bottom: 50px;
	}
}

/* ===================== Gift Cards ===================== */

.gift_cards .hero_wrap h1{
	position: absolute;
		z-index: 1;
	color: #ffffff;
}

.gift_cards .top_card .copy strong{
	font-size: 1.1em;
}

.gift_cards .cards .card{
	padding: 0;
}

.gift_cards .legal_small{
	width: 1000px;
	max-width: 95%;
	margin: 50px auto;
	font-weight: normal;
}

@media (min-width: 768px){
	
	.gift_cards .hero_wrap h1{		
		top: 50%;
		left: 1em;

		-webkit-transform: translate(0%,-50%);
		        transform: translate(0%,-50%);
	}
}

@media (max-width: 767px){
	
	.gift_cards .hero_wrap h1{
		/*display: none;*/
		top: 16vw;
		left: 50%;
		font-size: 3rem;

		-webkit-transform: translate(-50%,0%);
		        transform: translate(-50%,0%);
	}
	
	.gift_cards .mobile_only img {
		/*display: none;*/
	}

	.gift_cards .std_copy .cta{
		width: 100%;
	}
}

/* ===================== Contact ===================== */

/* .contact .hero img{ */
/* 	width: auto; */
/* } */

.contact #contact_form{
	padding: 20px;
	margin-top: 30px;
}

.contact .form_half{
	flex: 1 1 auto;
	order: 2;
	min-width: 50vw;
	padding-bottom: 40px;
}

.contact .content_half{
	flex: 0 0 440px;
	order: 1;
	padding-bottom: 40px;
}

.contact #misc_links{
	background-color: #ffffff;
	padding: 35px 0;
}

.contact .link_row{
	font-size: 2rem;
	text-align: center;
	width: 1515px;
}

.contact .link_row a{
	display: inline-block;
	margin-top: 0.5em;
	border-bottom: 2px solid;
	font-size: 3.5rem;
	font-weight: bold;
	text-decoration: none;
}

.contact .story_disclaim{
	line-height: 1.3;
}

@media (min-width: 768px){

	.contact .content_half{
		padding-right: 45px;
	}

	.contact .link_row{
		justify-content: space-between;
	}

	.contact .link_row .image_link{
		flex: 0 0 32%;
	}

}

@media (min-width: 1001px) {

	.contact .story_disclaim{
		margin-top: 260px;
	}
}

@media (min-width: 1001px) and (max-width: 1200px){

	.contact .story_disclaim{
		margin-top: 530px;
	}
}

@media (max-width: 1200px){
	
	#contact_form .gform_fields{
		display: block;
	} 

	.contact .content_half{
		flex: 1 1 auto;
	}

	.contact .link_row a{
		font-size: 2.3rem;
	}

}

@media (max-width: 767px){
	
	.contact .link_row{
		width: 400px;
	}

	.contact .link_row .image_link{
		margin-bottom: 30px;
	}
}

/* faqs */
.contact_faqs {
}

.contact_faqs #faq_filter_mobile{
	margin-bottom: 50px;
}

/* ===================== Location Finder ===================== */

.location_finder {
	position: relative;
}

.location_finder .location_finder_wrap{
	display: none;
	opacity: 0;
	transition: opacity .3s ease-in-out;
}

.location_finder.hold .location_finder_wrap,
.location_finder.show .location_finder_wrap{
	display: block;
}

.location_finder.hold .location_finder_wrap,
.location_finder.fade .location_finder_wrap{
	opacity: 1;
}

header .location_finder_wrap,
#desktop_menu .sub-menu{
	position: absolute;
		top: 100%;
		left: 0;
		z-index: 1;
	width: 375px;
	max-width: 95vw;
	padding: 20px 30px;
	box-shadow: 4px 8px 11px -2px rgb(0 0 0 / 33%);
	font-family: var(--nexa);
    background-image: url(images/backgrounds/marble-texture.jpg);
    background-position: center top;
}

.location_finder_wrap button{
	overflow: hidden;
	padding: 0;
	-webkit-appearance: none;
	background-color: transparent;
	border: none;
	font-family: inherit;
	text-transform: none;
	cursor: pointer;
}

.location_finder_wrap .find_loc{
	width: 1em;
	height: 1em;
	background-image: url(images/icons/icon-submit-arrow.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	font-size: 1rem;
}

.location_finder_wrap .finder_near_me{
	color: #000000;
	padding-right: 30px;
	background-image: url(images/icons/icon-near-me.svg);
	background-repeat: no-repeat;
	background-position: right center;
}

.location_finder_wrap .dismiss_finder,
.location_finder_wrap .dismiss_results{
	position: absolute;
		top: 1em;
		right: 1em;
		z-index: 1;
	width: 1em;
	height: 1em;
	background-repeat: no-repeat;
	background-size: 98% 98%;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4yLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMjkuNSAyOS4yIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOS41IDI5LjI7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxzdHlsZT4gcmVjdHtmaWxsOiAjMDAwfTwvc3R5bGU+DQo8cmVjdCB4PSItMy4yIiB5PSIxMiIgdHJhbnNmb3JtPSJtYXRyaXgoMC43MDcxIDAuNzA3MSAtMC43MDcxIDAuNzA3MSAxNC42MzIxIC02LjE1ODUpIiB3aWR0aD0iMzUuOCIgaGVpZ2h0PSI1LjIiLz4NCjxyZWN0IHg9Ii0zLjIiIHk9IjEyIiB0cmFuc2Zvcm09Im1hdHJpeCgtMC43MDcxIDAuNzA3MSAtMC43MDcxIC0wLjcwNzEgMzUuNDkxOCAxNC40NjU1KSIgd2lkdGg9IjM1LjgiIGhlaWdodD0iNS4yIi8+DQo8L3N2Zz4NCg==");
}

.location_finder_wrap .hdr{
	font-size: 1.7em;
    margin-bottom: 0.5em;
}

.location_finder_wrap input{
	padding: 0 1em;
	border: none;
}

.location_finder_wrap #no_geo{
	padding-top: 10px;
}

.location_finder .input_row{
	margin-bottom: 0.5em;
	align-items: flex-end;
}

.location_finder_wrap .input_wrap{
	position: relative;
	flex: 1 1 auto;
	margin: 20px 20px 0 0;
	border-bottom: 1px solid #000;
}

.location_finder_wrap .input_wrap input{
	background-color: transparent;
}

.location_finder_wrap .lower{
	margin-top: 20px;
}

.location_finder_wrap .cta{
	color: #ffffff;
}

.location_finder .finder_results{
	display: none;
	position: absolute;
		top: calc(100% + 5px);
	width: 100%;
	padding: 1em;
	background-color: #ffffff;
	box-shadow: 4px 8px 11px -2px rgb(0 0 0 / 33%);
}

.location_finder_wrap a.drop_listing{
	display: inline-block;
	padding: 0.3em;
	font-family: var(--nexa);
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.3;
	text-transform: uppercase;
}

.location_finder .location_finder_wrap .dbcloader{
	top: 35px;
	left: 50%;

	-webkit-transform: translate(-50%,0%);
	        transform: translate(-50%,0%);
}

@media (max-width: 767px){
	
	.location_finder_wrap{
		position: relative;
		width: 480px;
		max-width: 100%;
		margin: auto;
	}

	.location_finder_wrap .finder_address_label{
		text-align: left;
	}
}

@media (max-width: 600px){
	
	.location_finder_wrap{
		font-size: 1rem;
	}
}

@media (max-width: 400px){
	
	.location_finder .input_row{
		flex-direction: column;
		justify-content: center;
		align-items: center;
		margin-top: 2em;
	}

	.location_finder_wrap .input_wrap{
		order: 2;
		width: 100%;
		margin: 10px 0 0 0;
	}

	.location_finder_wrap .finder_address_label{
		text-align: center;
	}
}

.drop_listing .dist{
	font-size: .8em;
}

#desktop_menu .menu-item-has-children{
	position: relative;
}

#desktop_menu .menu-item-has-children:hover .sub-menu{
	display: block;
}

#desktop_menu .sub-menu{
	width: auto;
	padding: 1.3em 1.2em;
	display: none;
}

#desktop_menu .sub-menu a{
	padding: 0;
	font-family: var(--nexa);
	font-weight: bold;
	text-decoration: underline;
	text-transform: none;
}

/* ===================== Locations ===================== */

.loc_event{
	display: none;
	align-items: flex-start;
	gap: 5px;
}

.single-location .loc_event{
	margin: -30px 0 20px;
}

.loc_event .text{
	font-size: .9rem;
	line-height: 1.3;
}

.loc_event .header{
	font-family: var(--norwester);
	letter-spacing: .02em;
	text-transform: uppercase;
	font-size: 1rem;
}

.loc_event img{
	width: 30px;
}

.loc_block .loc_event {
	margin-top: 10px;
}

.loc_block .loc_event .text{
	padding-top: 2px;
}

.loc_block .loc_event img{
	width: 22px;
}

.loc_event.show{
	display: flex
}

.locations {
	--inner_pad: 68px;
}

@media (min-width: 1101px){

	.locations .locations_row {
		display: flex;
		height: 1000px;
	}

	.locations .locations_row .loc_col_one{
		padding-left: var(--inner_pad);
	}
}

.locations .locations_row .loc_col_one{
	flex: 0 0 700px;
}

.locations .locations_row .loc_col_two{
	position: relative;
	flex: 1 1 auto;
}

.locations .locations_row #map{
	height: 100%;
	min-height: 500px;
}

.locations  #map_controls{
    position: absolute;
	    right: 20px;
	    bottom: 20px;
	    z-index: 1;
}

.locations  #map_controls button{
	position: relative;
	width: 1em;
	height: 1em;
	overflow: hidden;
	padding: 0;
	-webkit-appearance: none;
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 25px;
	border: none;
	font-size: 2.5rem;
	color: #000000;
	line-height: 1;
	outline-color: #000;
	cursor: pointer;
}

.locations #map_zoom_in{
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGNsYXNzPSJpY29uIGljb24tdGFibGVyIGljb24tdGFibGVyLXBsdXMiIHdpZHRoPSI0NCIgaGVpZ2h0PSI0NCIgdmlld0JveD0iMCAwIDI0IDI0IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZT0iIzAwMDAwMCIgZmlsbD0ibm9uZSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj4KICA8cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz4KICA8bGluZSB4MT0iMTIiIHkxPSI1IiB4Mj0iMTIiIHkyPSIxOSIgLz4KICA8bGluZSB4MT0iNSIgeTE9IjEyIiB4Mj0iMTkiIHkyPSIxMiIgLz4KPC9zdmc+Cg==");
}

.locations #map_zoom_out{
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGNsYXNzPSJpY29uIGljb24tdGFibGVyIGljb24tdGFibGVyLW1pbnVzIiB3aWR0aD0iNDQiIGhlaWdodD0iNDQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3Ryb2tlLXdpZHRoPSIzIiBzdHJva2U9IiMwMDAwMDAiIGZpbGw9Im5vbmUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgPHBhdGggc3Ryb2tlPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+CiAgPGxpbmUgeDE9IjUiIHkxPSIxMiIgeDI9IjE5IiB5Mj0iMTIiIC8+Cjwvc3ZnPgo=");
}

.locations .cluster_img{
	position: relative;
}

.locations .cluster_count{
	position: absolute;
		top: 50%;
		left: 50%;
		z-index: 1;
	font-size: 1rem;
	color: #ffffff;
	font-weight: bold;
	transform: translate(-50%,-50%);
}

.locations #loc_search_box {
	margin-bottom: 40px;
}


.locations #loc_search_box h1{
	font-size: 2.1rem;
	max-width: 95%;
    font-weight: bold;
    width: 420px;
    margin: 1em auto;
    line-height: 1.3;
}

.locations #loc_search_box .search_box{
	position: relative;
	width: 390px;
	max-width: 87%;
	margin-left: 20px;
}

.locations #loc_search_box .dbc_loader{
	position: absolute;
		top: 0;
		right: -4em;
}

.locations #loc_search_box .search_box .inner{
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #000;
	margin-bottom: .4em;
}


.locations #loc_search_box .search_box input{
	padding: 0.1em 1em;
	background-color: transparent;
	border: none;
	font-weight: bold;
}

.locations #loc_search_box #search{
	width: 1em;
	height: 1em;
	overflow: hidden;
	padding: 0;
	-webkit-appearance: none;
	background-color: transparent;
	background-image: url(images/icons/arrow.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border: none;
	font-size: 2rem;
	cursor: pointer;
}

.locations .has_results .tablist,
.locations .has_results .tabpanels{
	display: none;
}

#search_results .no_loc{
	padding: 2em 0;
	font-size: 1.2rem;
	line-height: 1.3;
}

.locations #state_filter {
	margin-bottom: 40px;
}

.locations #state_filter .state_tabs{
	text-align: center;
}

@media (max-width: 500px){
	
	.locations #state_filter .state_tabs{
		width: 315px;
		max-width: 100%;
		margin: auto;
	}
}

.locations #state_filter button{
	padding: 0 3px;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
	font-family: var(--norwester);
	font-size: 2rem;
	color: #000000;
	text-transform: uppercase;
}

.locations #state_filter button.active{
	border-color: var(--g_red);
}

.locations .loc_heading{
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: .5em;
}

@media (min-width: 1101px){

	.locations #locations_list_top{
		max-height: 66%;
		overflow-y: auto;
		padding-right: var(--inner_pad);
	}

	.locations #loc_search_box,
	.locations #state_filter {
		margin-right: var(--inner_pad);
	}
}

@media (max-width: 1100px){
	
	.locations .locations_row .loc_col_two{
		margin-top: 20px;
	}

	.locations #loc_search_box{
		padding-top: 10px;
	}

	.locations #loc_search_box .search_box{
		margin: 0 auto;
	}

	#locations_list_top{
		width: 700px;
		height: 785px;
		max-width: 90%;
		overflow: auto;
		margin: auto;
	}
}

/* location blocks */
.loc_block{
	display: flex;
	position: relative;
	justify-content: space-between;
	align-items: flex-start;
	padding: 20px;
	margin-bottom: 20px;
	background-color: #ffffff;
	border-radius: 12px;
	border: 1px solid #000;
}


.loc_block.is_ku{
	background-image: url(images/icons/ku-combo.png);
	background-position: left 20px bottom 20px;
	background-repeat: no-repeat;
	padding-bottom: 80px;
}

.loc_block .info .top{
	display: flex;
	align-items: center;
	margin-bottom: .75em;
}

.loc_block .info .loc_name{
	max-width: 230px;
	padding-bottom: 0.2em;
	border-bottom: 4px solid var(--g_red);
	font-size: 1.5rem;
	font-weight: bold;
}

.loc_block .info .distance{
	flex: 0 0 7em;
	padding-left: 1em;
	font-weight: bold;
}

.loc_block .info .full_add{
	margin-bottom: 0.7em;
	font-weight: bold;
	line-height: 1.3;
}

.loc_block .info .today_hours{
	margin-top: 1em;
}

.loc_block .info .loc_block_oo_status{
	margin-top: 0.3em;
	line-height: 1.3;
}

.loc_block .info .loc_block_oo_status h4{
	font-weight: bold;
}

.loc_block .ctas{
	display: grid;
	flex: 0 0 auto;
	grid-gap: 7px;
	grid-template-columns: 1fr;
	justify-items: center;
}

.loc_block .cta{
	width: 100%;
	max-height: 2.55em;
	padding: 0.7em 2em;
	font-size: 1.6rem;
}

@media (max-width: 565px){
	
	.loc_block{
		flex-direction: column;
	}

	.loc_block .info{
		margin-bottom: 40px;
	}

	.loc_block .cta{
		font-size: 1.2rem;
	}

}

/* ===================== Sauce Locator ===================== */
body.page-template-page-locations-sauce-php {
	background-image: url(images/backgrounds/marble-texture.jpg);
	background-position: center top;
}

body.page-template-page-locations-sauce-php .locations .locations_row .loc_col_one{
	flex: 0 0 100%;
}

body.page-template-page-locations-sauce-php .locations #loc_search_box .search_box{
	margin-left: auto;
	margin-right: auto;
	margin-top: 30px;
}

body.page-template-page-locations-sauce-php .locations #locations_list_top{
	overflow-y: unset;
	max-height: unset;
	height: auto;
}

/* ===================== Group Dining ===================== */

.group_dining .form_container{
	width: 890px;
}

.form_submitted .group_dining .page-content{
	display: none;
}

#gform_confirmation_message_4{
	padding: 2em 0;
}

/* ===================== Single Location ===================== */

.single_location .loc_hero{
	flex: 1 1 auto;
}

.single_location .loc_hero img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.single_location .loc_hero img[alt*='To Go']{
	object-position: left top;
}

@media (min-width: 768px) and (max-width: 1120px){

	.single_location .loc_hero img[alt*='To Go']{
		object-fit: none;
	}
}

.single_location .loc_info{
	flex: 0 0 50%;
}

.single_location .loc_info .inner{
	padding: 50px;
}

.single_location .loc_info .title_bar{
	margin-bottom: 50px;
}

.single_location .loc_info .title_bar h1{
	margin-bottom: 0.1em;
}

@media (min-width: 768px){

	.single_location .loc_info .info_col{
		margin-right: 50px;
	}
}

.single_location .loc_info .add{
	margin-bottom: 1em;
}

.single_location .loc_info .today_hours{
	color: var(--g_red);
	font-weight: bold;
	font-size: 1.2rem;
}

.single_location .loc_info .special_hrs{
	max-width: 300px;
}

.single_location .loc_info .info_block{
	margin-bottom: 20px;
}

.single_location .loc_info .accolades{
	display: flex;
}

.single_location .loc_info .accolades .accolade{
	max-width: 200px;
}

.single_location .loc_info .gen_manager a{
	line-height: 1.3;
}

.single_location .loc_info .info_block.hrs tr{
	line-height: 1.3;
}

.single_location .loc_info .info_block.hrs tbody td:first-child{
	padding-right: 1em;
}

.single_location .loc_info .info_block.services li{
	font-weight: normal;
}

.single_location .loc_info .info_block h2{
	font-weight: bold;
	margin-bottom: 0.3em;
}

.single_location .cta_col{
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	align-items: center;
}

.single_location .cta_col .cta{
	margin-bottom: 10px;
}

.oo_status{
	color: var(--g_red);
}

.single_location #oo_avail_status{
	margin-top: 1em;
    line-height: 1.3;
}

.single_location #oo_avail_status h2{
	font-weight: bold;
}

.single_location #oo_avail_status p{
	margin-bottom: 1em;
}

.dir_apple{
	display: none;
}

@media (max-width: 767px){

	.single_location .cta_col{
		width: 325px;
		max-width: 100%;
		margin: 50px auto 0;
	}

	.single_location .cta_col .cta{
		width: 100%;
	}
}

.single_location #location_about .container{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1200px;
	padding: 60px 20px;
}

.single_location #location_about .inner{
	color: #ffffff;
	text-align: center;
	line-height: 1.7;
}

@media (max-width: 767px){

	.single_location #loc_group_dining .inner{
		text-align: center;
		margin: 20px 0;
	}

	.single_location #loc_group_dining .cards .card{
		padding-bottom: 0;
	}
}

/* loc menu */
.single_location .location_menu .container{
	width: 1200px;
}

.single_location .location_menu h3{
	/*padding-bottom: .5em;
	margin-bottom: .5em;
	border-bottom: 3px solid #000;
	font-size: 3rem;
	*/
}

.single_location .location_menu .loc_menu_sect{
	margin-bottom: 50px;
}

.single_location .location_menu .loc_menu_item{
	margin-bottom: 1em;
}

.single_location .location_menu .top{
	display: flex;
	margin-bottom: 1em;
	font-size: 1.3rem;
}

.single_location .location_menu .top .price{
	/* color: var(--g_red); */
	color: #DC3709;
	background-color: rgba(255,255,255,0.1);
}

.single_location .location_menu h4{
	font-weight: bold;
}

.single_location .location_menu .sect_text{
	margin-top: 2em;
}

@media (max-width: 767px){

	.single_location .wl_el{
		width: 100%;
	}
}

.single_location .waitlist_msg{
    text-align: center;
    padding: 0.5em 0 1em;
    max-width: 200px;
}

.beer_table {
	width: 100%;
	margin: 50px auto;
}

.beer_table tr.spacer {
	height: 25px;
}

.beer_table tr.header_row {
	border-bottom: 2px solid #000;
}

.beer_table tr.header_row th{
	font-family: var(--nexa);
    padding-bottom: 25px;
	font-size: 1.375rem;
	text-align: left;
}

.beer_table tr.header_row th:first-of-type {
    font-size: 2.3rem;
	font-weight: bold;
}

.beer_table .content_row:first-child td{
	padding-top: 1em;
}

.beer_table .name_heading {
	width: 65%;
}

.beer_table .source_heading {
	width: 28%;
}

.beer_table .abv_heading {
	width: 7%;
}

.beer_table td,
.beer_table th {
	padding: 5px 5px 5px 0;
}

.beer_table tbody tr th,
.beer_table tbody tr td{
	font-size: 1.375rem;
	font-weight: bold;
}

/* ===================== Popup Modal ===================== */


#popup{
    display: none;
    position: fixed;
	    top: 0;
	    left: 0;
	    z-index: 150;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.5);
    opacity: 0;

    -webkit-transition: opacity .3s ease-in-out;
            transition: opacity .3s ease-in-out;
}

#popup_wrap{
	display: none;
	position: fixed;
		top: 50%;
		left: 50%;
		z-index: 100;
	width: 1em;
	height: 1em;
	max-width: 90%;
	overflow: hidden;
	padding: 30px;
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border-radius: 10px;
	font-size: 33rem;

	-webkit-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
}


#popup_wrap #popup_dismiss{
	position: absolute;
		top: 0;
		right: 0;
		z-index: 1;
	width: 1em;
	height: 1em;
	margin-top: 0;
	font-size: 4rem;
}

#popup_wrap #popup_header{
    text-align: center;  
    font-size: 1.6rem;
    margin-bottom: 1em;
    font-weight: bold;
}

#popup_wrap.nooutline a:focus,
#popup_wrap.nooutline button:focus{
	outline: none;
}

#popup_wrap .inner{
	font-size: 1rem;
}

#popup_overlay{
    position: absolute;
	    top: 0;
	    left: 0;
	    z-index: 70;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.5);
}

/* ===================== Brand Book ===================== */
@media (min-width: 768px){
	.flex_halves{
		display: flex;
		justify-content: space-between;
	}

	.flex_halves > div{
		flex: 1 1 50%;
	}

	.flex_1_2 > div{
		flex: 1 1 50%;
	}
}

@media (min-width: 1001px){

	.flex_1_2{
		display: flex;
	}

	.flex_1_2 .col{
		flex: 0 0 33%;
	}

	.flex_1_2 .col:first-child {
		padding-right: 40px;
	}

	.flex_1_2 .col:last-child {
		padding-left: 40px;
	}
}

@media (max-width: 1000px){
	.flex_1_2 .col {
		padding: 20px 0;
	}
}

.flex_1_2 .full_img img{
	height: 100%;
    width: 100%;
    object-fit: cover;
}

.brandbook #nav_wrap {
	padding: 50px 0 0;
}

.nav_title{
	text-transform: uppercase;
	font-size: 1.3rem;
    margin-bottom: 1em;
}


.brandbook #bb_nav ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 900px;
	max-width: 100%;
	margin: auto;
}

.brandbook #bb_nav ul li{
	margin-bottom: 1.5em;
}

.brandbook #bb_nav ul a{
	text-decoration: none;
	padding: 6px 0;
	padding: 0 .4em;
	border-top: 4px solid;
	border-bottom: 4px solid;
	border-color: transparent;
	font-family: var(--norwester);
	font-size: 1.2em;
	color: #000000;
	text-transform: uppercase;
}

.brandbook #bb_nav ul a:hover{
	color: var(--g_red);
    border-color: var(--g_red);
}

.brandbook #bb_9 img{
	margin: auto;
}

#primary.brandbook .container{
	width: 1210px;
}

.brandbook .page-content {
	position: relative;
}

#primary.brandbook .page-content ul{
	list-style-position: outside;
	list-style-type: square;
	margin-left: 2em;
}

#primary.brandbook .page-content ul.dot_list{
	list-style-type: disc;
}

#primary.brandbook .page-content ul.no_style{
	list-style: none;
	margin-bottom: 0;
}

#primary.brandbook .page-content ul li{
	margin-bottom: .3em;
}

@media (max-width: 767px){
	
	#primary.brandbook .page-content ul.no_style,
	#primary.brandbook .page-content ul {
		margin-left: 1em;
		margin-bottom: 1em;
	}

}

.brandbook .hero_bknd,
.brandbook section{
	margin-bottom: 10px;
}

.brandbook section{
	color: #ffffff;
	background-color: #000000;
	padding: 50px;
}

.brandbook section.nopad{
	padding: 0;
}

.brandbook section.white{
	color: #000000;
	background-color: #ffffff;
}

.brandbook section.charcoal{
	background-color: #231f20;
}

.brandbook section .inner{
	line-height: 1.3;
	padding: 50px;
}

.brandbook section.brook_bridge{
	background-image: url(images/brandbook/brooklyn-bridge.jpg);
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
}

.brandbook section.oven_glow{
	background-image: url(images/brandbook/glowing-oven-bknd.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.brandbook section .outer{
	padding: 50px;
	display: flex;
}


.brandbook section h2,
.brandbook section h3{
	font-size: 1.7rem;
	font-weight: normal;
	margin-bottom: .5em;
}

.bb_border{
	background-repeat: no-repeat;
	background-position: left top, right top, left bottom, right bottom, center top, center bottom -1px, left center, right -1px center;
	background-size: auto, auto, auto, auto, calc( 100% - 40px ) 3px, calc( 100% - 40px ) 3px, 3px calc( 100% - 40px ), 3px calc( 100% - 40px );
	background-image: 
	url(images/brandbook/up_left_corner_white.svg), 
	url(images/brandbook/up_right_corner_white.svg), 
	url(images/brandbook/bottom_left_corner_white.svg), 
	url(images/brandbook/bottom_right_corner_white.svg), 
	url(images/brandbook/border_horiz_white.svg),
	url(images/brandbook/border_horiz_white.svg),
	url(images/brandbook/border_vert_white.svg),
	url(images/brandbook/border_vert_white.svg);
}

.bb_border.black{
	background-image: 
	url(images/brandbook/up_left_corner.svg), 
	url(images/brandbook/up_right_corner.svg), 
	url(images/brandbook/bottom_left_corner.svg), 
	url(images/brandbook/bottom_right_corner.svg), 
	url(images/brandbook/border_horiz.svg),
	url(images/brandbook/border_horiz.svg),
	url(images/brandbook/border_vert.svg),
	url(images/brandbook/border_vert.svg);
}


.brandbook .flexcolcenter{
	display: flex;
    flex-direction: column;
    justify-content: center;
}


.brandbook section .culture_slices img{
	width: 270px;
}

.brandbook section .culture_list{
	flex: 0 0 auto;
}

.brandbook .franch_opp_table table {
	margin-bottom: 100px;
}

.brandbook .franch_opp_table thead .t_head_main {
	font-size: 2.4rem;
	width: 27%;
}

.brandbook .franch_opp_table thead .t_head_main .underline{
	font-size: 1em;
    text-align: left;
    line-height: .9;
	border-width: 10px;
}

.brandbook .franch_opp_table thead .t_head_main .smaller{
	font-size: .6em;
}

.brandbook .franch_opp_table thead .t_head_copy{
	font-weight: bold;
}

.brandbook .franch_opp_table thead .t_head_copy.upp{
	text-transform: uppercase;
}

.brandbook .franch_opp_table tbody td{
	font-size: 1.6rem;
	vertical-align: top;
}

.brandbook #table_thirds{
	width: 1000px;
    margin-left: auto;
    margin-right: auto;
	max-width: 100%;
}

.brandbook #table_thirds .t_head_main{
	width: 33%;
}

.brandbook .badges{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.brandbook .badges img{
	margin: 0 0 10px;
	width: 200px;
}


.brandbook .hero_bknd{
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 585px;
}


@media (max-width: 767px){

	.brandbook .hero_bknd{
		display: none;
	}
}

#bb_4 .flex_halves div{
	flex: 0 0 49%;
}

#bb_9 img{
	margin: auto;
}

#bb_9 ul{
	list-style: none;
}

#bb_9 ul li{
	margin-bottom: 0;
}

.gallery{
	display: grid;
	grid-gap: 5px;
	grid-template-columns: 1fr 1.5fr;
}

.gallery + .gallery{
	padding-top: 5px;
}

section.has_gallery,
section.gallery{
	background-color: #FFFFFF;
	padding: 0;
}

.one_two {
	grid-template-columns: 1fr 1.2fr;
}

.one_two div:first-child{
	grid-column: 1 / 2;
    grid-row: 1 / 3;
}

.two_one {
	grid-template-columns: 1.2fr 1fr;
}

.two_one div:last-child{
	grid-column: 1 / 3;
    grid-row: 2 / 3;
}

.gallery img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.brandbook .logo_bottom{
	margin-bottom: 50px;
}

.brandbook .disclaim{
	margin-top: 50px;
}


.brandbook .footer_copy{
	padding: 0 2em;
}

@media (max-width: 1120px){
	#bb_4 .inner .flex_halves	{
		display: block;
	}

	#bb_4 .inner .flex_halves .culture_slices {
		text-align: center;
		margin-bottom: 20px;
	}
}

@media (max-width: 800px){
	
	.gallery{
		grid-template-columns: 1fr;
	}

}

@media (max-width: 767px){
	
	#bb_4 .collage{
		margin-bottom: 50px;
	}

	.brandbook .franch_opp_table tbody td{
		font-size: 1.2rem;
	}
}

@media (min-width: 501px){

	#bb_3 .inner{
		padding: 120px 50px;
	}

	#bb_1 .inner,
	#bb_8 .inner{
		padding: 100px 50px;
	}
}

@media (max-width: 500px){

	#bb_7{
		padding: 50px 0;
	}

	.brandbook section .inner{
		padding: 35px;
	}

	.brandbook .franch_opp_table tbody td{
		font-size: .8rem;
		line-height: 1.1;
	}
}

.franch_opp_table table.mobile_adjust .tbl_hdr{
	display: none;
	text-transform: none;
	font-size: 1rem;
	padding-bottom: .4em;
}

@media (max-width: 767px){
	
	.franch_opp_table table.mobile_adjust th{
		position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
	}

	.franch_opp_table table.mobile_adjust .tbl_hdr{
		display: block;
	}

}



.back_to_top.scroll_top{
	position: fixed;
		right: 50px;
		bottom: 30px;
	overflow: hidden;
	padding: 1em;
	margin-top: 0;
	opacity: 0;
	-webkit-appearance: none;
	background-color: var(--g_red);
	border: 1px solid #000;
	font-family: var(--norwester);
	color: #fff7e2;
	letter-spacing: 1px;
	text-transform: uppercase;
	cursor: pointer;
	transition: opacity .3s ease-in-out;
}

.back_to_top.scroll_top.reveal{
    opacity: 1;
}

.back_to_top.scroll_top.foot_stuck{
    position: absolute;
    bottom: 500px;
}


@media (max-width: 1360px){
    .back_to_top.scroll_top{
		right: 100px;
		transform: translateX(0%);
    }
}

@media (max-width: 767px){

    .back_to_top.scroll_top{
		right: auto;
		left: 50%;
		width: 252px;
		text-align: center;
		transform: translateX(-50%);
    }

    .back_to_top.scroll_top.foot_stuck{
        bottom: 450px;
    }

}


@media (min-width: 768px){
	.contact .content_half {
		padding-right: 45px;
	}
}

.franch_domestic .content_half {
    flex: 0 0 440px;
    order: 1;
    padding-bottom: 40px;
}

.franch_domestic #contact_form{
	padding: 20px;
	margin-top: 30px;
}

.franch_domestic .form_half{
	flex: 1 1 auto;
	order: 2;
	min-width: 50vw;
	padding-bottom: 40px;
}

.franch_domestic .content_half{
	flex: 0 0 440px;
	order: 1;
	padding-bottom: 40px;
	padding-top:40px;
}

.franch_domestic .content_half{
	font-size:1rem;
}


.franch_domestic .wysiwyg{
    padding: 60px 0;
}

.franch_opp_table .inner{
    width: 100%;
    max-width: 1045px;
    margin: auto;
}

.franch_opp_table{
    margin-top: 40px;
}

.franch_opp_table.copy{
    font-size: 1.5rem;
}

.franch_opp_table table{
	font-family: var(--norwester);
    table-layout: fixed;
    width: 100%;
}

.franch_opp_table .t_head_copy{
	font-family: var(--nexa);
}

.franch_opp_table thead th{
    padding: 20px;
    font-size: 2rem;
}

.franch_opp_table thead .t_head_main{
    font-size: 1.8rem;
}

.franch_opp_table thead .underline{
	display: inline-block;
	padding-bottom: .4em;
	border-bottom: 5px solid #c4982c;
	font-size: 1.5rem;
	color: #a44e23;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;
}

@media (max-width: 767px){
    .franch_opp_table thead .underline{
        font-size: 2.2vw;
    }

}

.franch_opp_table thead th .t_head_copy{
    font-size: 1rem;
    text-transform: none;
    margin-top: 5px;
}

.franch_opp_table thead th,
.franch_opp_table tbody td{
    padding: 16px 12px;
    border: 1px solid #FFF;
    text-transform: uppercase;
    vertical-align: bottom;
}

.franch_opp_table tbody td{
    width: 1%;
    background-color: #a44e23;
    border-bottom-width: 8px;
    font-family: 'Oswald', sans-serif;
    color: #FFFFFF;
    vertical-align: middle;
}

.franch_opp_table tbody tr:nth-child(even) td{
    background-color: #c4982c;
	color: #000000;
}

.franch_opp_table .disc{
    font-size: .9rem;
    margin-top: 20px;
}

@media (min-width: 768px) and (max-width: 1055px){

    .franch_opp_table thead .underline{
        font-size: 2.6vw;
    }
}

@media (max-width: 767px){
    
    .franch_opp_table thead .t_head_main{
        font-size: 4vw;
    }

    .franch_opp_table thead .t_head_title{
        font-size: 1.2rem;
    }

    .franch_opp_table thead th{
        vertical-align: bottom;
    }

    .franch_opp_table thead th, 
    .franch_opp_table tbody td{
        font-size: 1rem;
    }

    .franch_opp_table tbody td{
        width: auto;
    }

}

@media (max-width: 500px){
    
    .franch_opp_table thead th, .franch_opp_table tbody td{
        font-size: .7rem;
    }

}

/* ===================== Franchising ===================== */

.franchising .hero_wrap .header_text {
	width: 423px;
	right: calc(17.47vw - 19px);
	left: unset;
	top: 23vw;
}

.franchising .std_copy h2{
	font-size: 0.4em;
	margin-bottom: 2.1em;
}

.franchising .std_copy h3{
	margin-bottom: 0.1em;
}

.franchising .hero_wrap .header_text p {
	margin-bottom: 1.5em;
}


@media (max-width: 767px){
	.franchising .hero_wrap .header_text{
		top: 6vw;
		width: 100%;
		left: 50%;
		right: unset;
	}

	.franchising .std_copy h2{
		font-size: 0.6em;
		margin-bottom: 1.1em;
	}

	.franchising .std_copy h3{
		font-size: 0.8em;
		margin-bottom: 0.1em;
	}

	.franchising .hero_wrap .header_text p {
		margin-bottom: 0.5em;
		line-height: 1.3;
	}
}

/* ===================== Franch Domestic ===================== */

.page-template-page-franchising-domestic #email_signup{
    display: none;
}

.franch_domestic .page-content{
    font-size: 1.3rem;
}

.franch_domestic p{
    font-size: inherit;
}

#domestic_nav{
    padding: 40px 0;
	background-image: url(images/backgrounds/marble-texture.jpg);
    font-size: 1rem;
    text-align: center;
}

@media (max-width: 767px){
	#domestic_nav .jump_to{
		margin: 1em 0;
	}
}

#domestic_nav .nav_hdr{
	font-family: var(--norwester);
    font-size: 2.6em;
    color: var(--g_red);
    font-weight: normal;
    text-transform: uppercase;
}

#domestic_nav .nav_item{
    padding: 0 .4em;
	font-family: var(--norwester);
    font-size: 1.8em;
    text-transform: uppercase;
}

#domestic_nav .nav_item a{
    padding: 6px 0;
	border-bottom: 3px solid transparent;
	display: inline-block;
    color: #000000;
	text-decoration: none;
}


@media (min-width: 768px){

	#domestic_nav .nav_hdr{
		margin-right: 1.2em;
	}

	#domestic_nav .nav_item a:hover{
		border-color: var(--g_red);
	}

	#domestic_nav .inner,
	#domestic_nav .inner nav ul{
		display: flex;
		justify-content: center;
		align-items: center;
	}

    .franch_domestic .flex_half{
        display: flex;
    }

    .franch_domestic .flex_half > div{
        flex: 0 1 50%;
        max-width: 50%;
    }
}

@media (min-width: 768px) and (max-width: 1760px){
    
    .franch_domestic #domestic_nav{
        font-size: .8rem;
    }
}

@media (min-width: 768px) and (max-width: 1600px){
    
    .franch_domestic #domestic_nav{
        font-size: .7rem;
    }
}

@media (min-width: 768px) and (max-width: 1010px){
    
    .franch_domestic #domestic_nav{
		font-size: .45rem;
    }
}

.franch_domestic .block_img{
    background-repeat: no-repeat;
    background-size: cover;
}

.franch_domestic .block_copy{
    text-align: center;
    padding: 68px 6%;
}

.franch_domestic .block_copy p{
    text-align: left;
	line-height: 1.3;
}

.franch_domestic .block_copy .inner{
    text-align: left;
	line-height: 1.3;
}

.franch_domestic .block_header{
	margin-bottom: 20px;
	font-size: 2rem;
	font-weight: bold;
}

.header_image_text .block_full_hdr{
    margin-top: 70px;
}

.franch_domestic .block_video{
    position: relative;
}

@media (max-width: 767px){
	
	.franch_domestic .block_video{
		height: 270px;
	}
}

.franch_domestic .block_video > a{
	display: inline-block;
	width: 100%;
	height: 100%;
}

.franch_domestic .block_video > a:focus{
	outline: 3px dotted #000000;
}


.franch_domestic .block_video iframe{
    height: 100%;
    width: 100%;
    position: relative;
    z-index: 1;
}

.franch_domestic .block_video.playing iframe{
    z-index: 100;
}

.franch_domestic .video_overlay,
.franch_domestic .play_btn{
    -webkit-transition: all .3s ease-in-out;
    transition:         all .3s ease-in-out;
}

.franch_domestic .video_overlay{
    position: absolute;
	    top: 0;
	    left: 0;
	    z-index: 1;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.franch_domestic .block_video.playing .fancybox .video_overlay, .franch_domestic .block_video.playing .fancybox .play_btn {
	opacity: 1;
}

.franch_domestic .play_btn{
    position: absolute;
	    top: 50%;
	    left: 50%;
	    z-index: 10;
    width: 1em;
    height: 1.5em;
    font-size: 5.8rem;
    cursor: pointer;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(images/icons/play-btn.png);

    -webkit-transform: translate(-50%,-50%);
            transform: translate(-50%,-50%);
}

.franch_domestic .block_video.playing .video_overlay,
.franch_domestic .block_video.playing .play_btn{
    opacity: 0;
}

.franch_domestic .image_text h3{
    font-weight: bold;
}


.franch_domestic .header_image_text .full_header{
    width: 800px;
    max-width: 95%;
    margin: 45px auto 0;
	font-family: var(--norwester);
    text-transform: uppercase;
}

.franch_domestic .header_image_text .full_header p{
    font-size: 3rem;
    line-height: 1.1;
	font-family: var(--norwester);
}

.franch_domestic .header_image_text .block_img{
    background-size: 67%;
    background-position: right center;
}

.franch_domestic .header_image_text .block_copy h3{
    margin-top: 40px;
}

/* badge row  ijd 05-08-19  */

.franch_domestic .badge_row {
    padding: 75px 0;
    text-align: center;
}

.franch_domestic .badge_row h2{
    font-size: 2.8rem;
    letter-spacing: .02em;
}

.franch_domestic .badge_row .badge_flex{
    display: flex;
    justify-content: center;
    margin-top: 50px;
    flex-wrap: wrap;
}

.franch_domestic .badge_row .badge{
    flex: 0 1 180px;
}


@media (max-width: 767px){
    .franch_domestic .badge_row .badge{
        flex: 0 1 40%;
    }
}

.franch_domestic h3.nice_h3{
    display: inline-block;
    position: relative;
    padding-bottom: 37px;
    margin-bottom: 40px;
	font-family: var(--norwester);
    font-size: 2.6rem;
    color: var(--g_red); /* brick red */ 
    font-weight: normal;
    text-transform: uppercase;
}

.franch_domestic h3.nice_h3:after{
    display: inline-block;
    position: absolute;
	    bottom: 0;
	    left: 13px;
    width: 300px;
    max-width: 100%;
    height: 6px;
    background-color: var(--g_red);
    content: '';
}

#primary.franch_domestic .block_copy ul{
    padding-left: 1.5em;
}

#primary.franch_domestic .block_copy ul li{
    margin-bottom: 0;
}

.franch_domestic .hero_image_text{
    margin-top: 4px;
}

.franch_domestic .hero_image_text .block_img.hero_img{
    position: relative;
    height: 375px;
    background-size: cover;
}

.franch_domestic .hero_image_text .dom_num_loc{
    position: absolute;
	    bottom: 0;
	    left: 50%;
	    z-index: 1;
    width: 2.2em;
    height: 2.2em;
    padding: .5em 0;
    background-color: #fff7e2; /* beige */
    border-radius: 100%;
    border: 5px solid #FFF;
	font-family: var(--norwester);
    font-size: 6rem;
	color: var(--g_red);
    line-height: .45;
    text-align: center;

    -webkit-transform: translate(-50%,50%);
            transform: translate(-50%,50%);
}

.franch_domestic .hero_image_text .dom_num_loc span{
    font-size: .35em;
    color: var(--g_red); /* brick red */ /* accessibility changed #c4960c; gold - 5/2/19 - rgm*/ 
    text-transform: uppercase;
}

.franch_domestic .hero_image_text .block_img{
    background-size: contain;
    background-color: #BCE3FF;
    background-position: center;
}

.franch_domestic .hero_image_text .block_copy{
    padding: 50px 4%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.franch_domestic .hero_image_text .block_copy .block_header{
    text-transform: uppercase;
    color: var(--g_red); /* gold */
    font-size: 2rem;
    text-align: left;
    font-weight: bold;
}

.franch_domestic .hero_image_text .flex_half{
    min-height: 595px;
}


.franch_domestic .hero_image_text + .image_text{
    margin-top: 5px;
}

.franch_domestic .hero_image_text + .image_text .block_img{
    order: 2;
}

.franch_domestic .hero_image_text + .image_text .block_copy{
    order: 1;
}

.franch_domestic #partner_cta{
	width: 800px;
	max-width: 100%;
	padding: 60px 20px;
	margin: auto;
}

#disclaimer{
    font-weight: bold;
    text-align: center;
    padding: 30px;
}

.franch_domestic #contact_form{
    padding-bottom: 50px;
}

.franch_domestic #contact_form .container{
    width: 1440px;
    margin: auto;
    max-width: 100%;
}

.franch_domestic #contact_form #field_2_10,
.franch_domestic #contact_form #field_2_11{
    display: none;
}

.franch_domestic #contact_form #field_2_12{
    float: right;
}

.franch_domestic #contact_form h2{
    padding: 30px 0;
    font-size: 2rem;
	font-weight: bold;
    text-align: center;
}

.form_submitted .franch_domestic #contact_form h2{
    display: none;
}

.franch_domestic #contact_form .form_copy{
    text-align: center;
}

@media (min-width: 768px){

    .franch_domestic #contact_form #input_2_12 > div{
        margin-right: 0;
        margin-left: auto;
    }

    .franch_domestic #contact_form .gform_footer{
        /* display: inline-block;
        -webkit-transform: translate(0%,-200%);
        transform: translate(0%,-200%); */
    }
}

@media (max-width: 767px){
	
	.franch_domestic .hero_image_text .dom_num_loc{
		font-size: 4rem;
		bottom: 30px;
	}
}

/* ===================== International ===================== */

.international h1{
	margin: 1em 0;
}

.international .col_row::after { visibility: hidden; display: block; content: ""; clear: both; height: 0; }

.international .col_left,
.international .col_right{
    float: left;
    width: 48%;
}

.international .col_right{
    float: right;
}

.international .page-hero{
    height: 300px;
}

.international .page-content{
    margin-top: 70px;
}

.international .page-content:after { visibility: hidden; display: block; content: ""; clear: both; height: 0; }

.international .col_left,
.international .col_right{
    width: 46%;
}

.international #intl_slider .slick-arrow{
	top: 50%;
	width: 45px;
	height: 45px;
}

.international #intl_slider .slick-slide img{
	width: 100%;
	height: 515px;
	object-fit: cover;
}

.international #intl_mid_section{
    margin: 75px 0;
    padding: 60px 14%;
    color: #a44c0e; /* brick red */ 
    border-color: #a44c0e; /* brick red */ 
    border-top: 2px solid; 
    border-bottom: 2px solid; 
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.5;
}

#partner_cta {
    text-align: center;
}

#partner_cta .cta_header{
    margin: 0 auto 30px;
    width: 500px;
    max-width: 100%;
    font-size: 1.5625rem;
    text-align: center;
    text-transform: uppercase;
    line-height: 1.2;
}


@media (max-width: 767px) {
    .international .content_body,
    .international .slider_wrap{
        float: none;
        width: 100%;
    }

    .international #intl_mid_section{
        margin: 55px 0;
        padding: 46px 16%;
    }

}

/* ===================== Qualification Process ===================== */

.qual_process .page_header{
	padding: 2em 0;
}

.qual_process .section_hero{
    height: 330px;
}

.qual_process .qual_process_content{
    padding-top: 75px;
    padding-bottom: 75px;
}

#primary.qual_process .qual_process_content ul{
    width: 700px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 25px;
}

#primary.qual_process .qual_process_content ul li{
    position: relative;
}

#primary.qual_process .qual_process_content ul strong{
    font-weight: normal;
    color: #000000;
}

.qual_process #section_2 .qual_process_content,
.qual_process #section_3 .qual_process_content{
    width: 900px;
    margin: auto;
}

.qual_process .cta_bottom_row{
    text-align: center; 
}

/* ===================== Menu ===================== */

.menu_page h1.hdr{
	font-size: 2.5rem;
}

.menu_page .top_content{
	font-size: 1.3rem;
}

.menu_page .container{
	width: 1100px;
}

.menu_page .menu_nav{
	text-align: center;
	margin-bottom: 50px;
}

.menu_page .menu_nav a{
	margin: 0 0.5em 1em;
}

.menu_page .menu_items{
	padding-bottom: 100px;
}

.menu_page .menu_section + .menu_section{
	margin-top: 50px;
}

.menu_page .menu_section .items_wrap{
	display: flex;
	justify-content: space-between;
}

.menu_page .menu_section .sizes{
	flex: 0 0 200px;
	text-align: center;
	padding: 0 20px;
}

.menu_page .menu_section .sizes img{
	display: inline-block;
}

.menu_page .menu_section .sizes h3{
	text-align: center;
	font-size: 1.5rem;
	margin-bottom: .5em;
}

.menu_page .menu_section .desc {
	margin-top: 10px;
}

.menu_page .menu_section .desc h3{
	color: #000000;
    font-weight: bold;
}

.menu_page .menu_section .menu_item_grid{
	flex: 1 1 auto;
	display: grid;
	grid-gap: 52px;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	justify-items: center;
}

.menu_page .menu_section.byo_layout,
.menu_page .menu_section.pizza_layout{
}

.menu_page .menu_section.byo_layout .menu_item_grid{
	display: block;
}

.menu_page .menu_section.byo_layout .menu_item_grid ul{
	-webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
    line-height: 1.5;
}

.menu_page .menu_section h2{
	font-size: 2rem;
	margin-bottom: 1em;
}

.menu_page .menu_section .title_sub_text{
	font-size: .9rem;
    margin: -1em 0 40px;
}

.menu_page .menu_section .title_sub_text p{
	margin-bottom: 0;
}

.menu_page .menu_section .menu_item{
	background-color: #ffffff;
	box-shadow: 0 7px 12px 9px rgb(0 0 0 / 7%);
	border-radius: 10px;
	overflow: hidden;
}

.menu_page .menu_section .menu_item img{
	width: 100%;
	height: 100%;
}

.menu_page .menu_section .menu_item .copy{
	padding: 20px;
}

.menu_page .menu_section .menu_item h3{
	font-size: 1.7rem;
}

.menu_page .menu_section .menu_item .content{
	margin-bottom: 20px;
	line-height: 1.3;
}

.menu_page .menu_section .menu_item .cta_grid{
	display: grid;
	align-items: center;
	grid-template-columns: 1fr 2.5fr 1fr;
	justify-items: center;
	grid-gap: 10px;
}

.menu_page .menu_section .menu_item .cta_grid .cta{
	padding: 0.8em 1.1em;
	margin: 0;
	font-size: 1rem;
}

.menu_page .menu_section .menu_item .cta_grid .details{
	text-decoration: none;
	font-weight: bold;
	padding-top: 13px;
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB3aWR0aD0iMzQiIGhlaWdodD0iOS41IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDM0IDkuNSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzQgOS41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+IDxnPiA8cGF0aCBkPSJNNC44LDBDMi4xLDAsMCwyLjEsMCw0LjhzMi4xLDQuOCw0LjgsNC44YzIuNiwwLDQuOC0yLjEsNC44LTQuOFM3LjQsMCw0LjgsMHoiLz4gPHBhdGggZD0iTTE3LDBjLTIuNiwwLTQuOCwyLjEtNC44LDQuOHMyLjEsNC44LDQuOCw0LjhjMi42LDAsNC44LTIuMSw0LjgtNC44UzE5LjYsMCwxNywweiIvPiA8Y2lyY2xlIGN4PSIyOS4yIiBjeT0iNC44IiByPSI0LjgiLz4gPC9nPiA8L3N2Zz4K");
	background-size: 22px auto;
	background-position: center top;
	background-repeat: no-repeat;
}

.menu_page .menu_section .menu_item .cta_grid .details:hover{
	text-decoration: underline;
}

#menu_mobile_drop{
	margin-bottom: 50px;
}

.menu_page .nut_link{
	margin-top: 3em;
}

.menu_item.toppings .cta_grid{
	display: none;
}

@media (max-width: 767px){
	.menu_page .menu_section .items_wrap{
		flex-wrap: wrap;
	}

	.menu_page .menu_section .sizes h3{
		text-align: left;
	}

	.menu_page .menu_section .sizes{
		flex: 0 0 100%;
		text-align: left;
	}

	.menu_page .menu_section .all_sizes{
		width: 300px;
	}
}

/* ===================== Menu Item Detail ===================== */

.breadcrumbs {
	width: 90%;
    max-width: 550px;
    margin: 30px auto 0;
}

.breadcrumbs a{
	text-decoration: none;
}


.breadcrumbs a:hover{
	text-decoration: underline;
}

.single_menu_item .item_image,
.single_menu_item .content_half{
	flex: 1 0 50%;
}

.single_menu_item .content_half {
	flex-direction: column;
	display: flex;
}

.single_menu_item .content_half .item_copy{
	flex: 1 1 auto;
}

.single_menu_item .content_half .inner{
	width: 90%;
	max-width: 550px;
}

.single_menu_item .item_image img{
	width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ===================== mille gradi ===================== */

#primary.mille_gradi img.resp_img{
	width: 100%;
}
.mille_gradi #primary .page-content:after { visibility: hidden; display: block; content: ""; clear: both; height: 0; }

.mille_gradi .slick-track{
    height: 270px;
}

.mille_gradi .slick-dots{
    text-align: left;
    padding-left: 30px;
}

.mille_gradi .slick-dots button{
	border-color: #ef5122;
}

@media (max-width: 767px) {
    .mille_gradi .slick-track,
    .mille_gradi .slide-inside{
        height: 400px;
    }
}

/* ijd 10-28-20 mille gradi° updates */

.mg_orange{
	color: #c48b18; /* mg orange */
}

.mille_gradi h1.hdr{
	padding: 1em 0;
}

.mille_gradi #mg_sliders{
	width: 1780px;
}

.mille_gradi .mg_block{
	display: flex;
	border-bottom: 6px solid #FFF;
}

.mille_gradi .mg_block .mg_half{
	flex: 0 0 50%;
}

.mille_gradi .mg_block .mg_half.image{
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.mille_gradi .mg_block .mg_half.slider{
	overflow: hidden;
	padding: 10px 70px;
}

.mille_gradi .mg_block:nth-child(even) .mg_half.slider{
	padding: 10px 50px;
}

.mille_gradi .slick-track{
	min-height: 300px;
	height: auto;
}


.mille_gradi .mg_block .mg_slide {
	padding: 20px 10px 50px;
}

#primary.mille_gradi .mg_block .mg_slide ul{
	margin-left: 1.3em;
}

#primary.mille_gradi .mg_block .mg_slide ul.noliststyle{
	list-style: none;
	margin-left: 0;
}

#primary.mille_gradi .mg_block .mg_slide ul li{
	margin-bottom: 0;
}

.mille_gradi .mg_block .mg_slide,
.mille_gradi .mg_block .mg_slide li,
.mille_gradi .mg_block .mg_slide p{
	font-size: 1.2rem;
}

.mille_gradi .red{
	color: #a44c0e; /* brick red */ 
	font-size: 1.3em;
}

.mille_gradi .mg_block .mg_slide h2{
	margin-bottom: 1em;
	line-height: 1;
	font-family: var(--norwester);
	font-size: 2rem;
	color: #a44c0e; /* brick red */ 
	font-weight: normal;
	text-transform: uppercase;
}

.mille_gradi .mg_block .mg_slide .subhead{
	margin-top: -1em;
	margin-bottom: 1em;
	font-family: var(--nexa);
	font-size: 2rem;
	color: #a44c0e; /* brick red */ 
}

.mille_gradi .mg_block .mg_slide .red{
	margin-bottom: .3em;
}

.mille_gradi .slick-arrow{
	width: 1em;
	height: 1em;
	background-color: transparent;
	background-size: .4em;
	font-size: 2.5rem;
}

.mille_gradi .lt_arrow{
	left: -40px;
}

.mille_gradi .rt_arrow{
	right: -40px;
}

.mille_gradi .slick-dots{
	padding: 0;
}

.mille_gradi .slick-dots li button:focus{
	outline: 3px dotted #000000;
}

.mille_gradi .slick-dots li button{
	border-radius: 100%;
	border: 1px solid #c48b18; /* mg orange */
	width: 1em;
	height: 1em;
	font-size: 1rem;
}

.mille_gradi .slick-dots li.slick-active button{
    background-color: #c48b18; /* mg orange */
}

.mille_gradi .slick-dots li.slick-active button:before{
	content: none;
}

@media (min-width: 1101px){

	.mille_gradi .mg_block:nth-child(even) .mg_half.image{
		order: 1;
	}

	.mille_gradi .mg_block:nth-child(even) .mg_half.slider{
		order: 2;
	}
}

@media (max-width: 1100px){

	.mille_gradi .mg_block{
		display: block;
	}

	.mille_gradi .mg_block .mg_half.image{
		height: 400px;
	}

	.mille_gradi .mg_block .slick-dots{
		text-align: center;
	}

}

/* menu table */

 .menu_table, .wine_table, .cocktail_table {
    width: 100%;
}

.menu_table th.name_heading,
.wine_table_container h2.section_title,
.cocktail_table_container h2.section_title {
	width: 100%;
	padding-bottom: 25px;
	font-size: 2.5rem;
	color: var(--g_red);
	font-weight: normal;
	text-transform: uppercase;
}

 .menu_table th.name_heading .h2_style{
	position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
}


 .menu_table tr.subheader_row td {
    color: #a44c0e;
    font-size: 1rem;
	padding-bottom: 2em;
}

.menu_table .name{
	text-transform: capitalize;
}

 .menu_table tr.content_row.column {
    width: 50%;
    display: inline-block;
	vertical-align: top;
}

.menu_table td,
.menu_table th {
    padding: 5px 5px 5px 0;
}

 .menu_table td {
    font-size: 1.375rem;
    font-weight: bold;
}

 .menu_table td span {
	font-weight: normal;
	font-size: 1.15rem;
}

 .menu_table td span.price {
	font-weight: bold;
	color: var(--g_red); /* brick red */ 
	font-size: 1.35rem;
} 

 .menu_table tr.disclaimer td {
	font-size: 1rem;
    font-weight: normal;
    padding-top: 15px;
}
 .menu_table tr{
	-webkit-column-break-inside: avoid; 
	column-break-inside:avoid;
}
 .menu_table tr.content_row.column {
    width: 100%;
    display: block !Important;
    /*vertical-align: top;*/
	-webkit-column-break-inside: avoid; 
	column-break-inside:avoid;
}

 .menu_table tbody.column{
	display:block !important;
	-webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
}

.menu_table .content_row.limited-time-only {
    border: 2px solid #f5e5cc;
	padding:15px;
	margin-bottom:5px;
}
.menu_table td span.limited-time-only-tag{
	font-family: 'Norwester-Regular';
    letter-spacing: 2px;
    color: #a44c0d;
    padding: 1px 5px;
    padding-top: 3px;
    text-align: center;
    text-transform: uppercase !important;
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 5px;
    display: inline-block;
}

.cocktail_table tbody.column {
    display: block !important;
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
}

.cocktail_table tbody tr{
	-webkit-column-break-inside:avoid;
	column-break-inside:avoid;
	page-break-inside: avoid;           /* Theoretically FF 20+ */
	break-inside: avoid-column;         /* IE 11 */
	display:table;                      /* Actually FF 20+ */
}

@media (max-width: 767px){
	.menu_table tbody.column{
		display:block !important;
		-webkit-column-count: 1;
		-moz-column-count: 1;
		column-count: 1;
	}
}
/* ===================== QR menu ===================== */

.qr_menu .qr_sub{
	font-size: 1.5rem;
}

.qr_menu .qr_section {
	padding-bottom: 50px;
}

.qr_menu .qr_section .sect_desc{
	margin-bottom: 1em;
}

.qr_menu .qr_section > h2{
	margin-bottom: .5em;
	padding-bottom: .5em;
	border-bottom: 2px solid #000;
}

@media (min-width: 768px){
	
	.qr_menu .qr_items{
		display: block;

		-webkit-column-count: 2;
		        column-count: 2;
	}

	.qr_menu .qr_item{
		-webkit-column-break-inside: avoid;
					   break-inside: avoid-column;
	}
}

.qr_menu .qr_items{
	justify-content: space-between;
	flex-wrap: wrap;
}

.qr_menu .qr_item{
	flex: 0 0 48%;
	margin-bottom: 1em;
	padding: 10px;
}

.qr_menu .qr_item.lto{
	border: 1px solid var(--g_red);
}

.qr_menu .title_line{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	margin-bottom: .3em;
}

.qr_menu .title_line h3{
	flex: 0 0 100%;
	margin-bottom: 0.4em;
	font-size: 1.6rem;
	font-weight: bold;
	text-transform: uppercase;
}

.qr_menu .title_line .cal{
	margin: 0 .2em;
}

.qr_menu .title_line .qr_price{
	font-weight: 800;
	color: #BA2E08;
	background-color: rgba(255,255,255,0.01);
}

.qr_menu .title_line .lto_txt{
	text-transform: uppercase;
	color: var(--g_red);
}

/* ===================== Blog ===================== */

.link{
    text-decoration: none;
}

.blog_index .container,
.single_post .container{
    width: 1130px;
}

@media (min-width: 768px){
    .blog_index .page-content{
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .blog_index .page-content > article{
        flex: 0 1 48%;
    }
}

.blog_index .page-content{
    padding-top: 55px;
}

.blog_index .post_thumb{
    height: 350px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.blog_index .article_date{
	line-height: 1.25rem;
}

.blog_index .post_copy{
    margin: 24px;
}

.blog_index .post_copy .entry-header{
	position: static;
	padding-left: 2px;
	box-shadow: none;
}

.blog_index h2.entry-title{
    margin-bottom: 5px;
}

.blog_index h2.entry-title a{
	font-family: var(--norwester);
    font-size: 2rem;
	color: var(--g_red);
	background-color: #FFFFFF;
    font-weight: normal;
    text-transform: uppercase;
}

.blog_index .excerpt{
    font-size: 1.1rem;
    line-height: 1.3;
}

.blog_index .navigation.pagination{
	margin-bottom: 50px;
	font-size: 2rem;
	text-align: center;
}

.blog_index .post_thumb{
    position: relative;
}

.blog_index .post_thumb a{
    position: absolute;
	    top: 0;
	    left: 0;
	    z-index: 1;
    width: 100%;
    height: 100%;
}

/* =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */

.single_post {
	padding: 50px 0;
}

.single_post .page_hero{
    height: 410px;
	background-size: cover;
	background-size: auto;
	background-position: center top;
	background-repeat: no-repeat;
}

.single_post .page_hero .container{
    display: flex;
    height: 100%;
}

#primary.single_post .page_hero.has_img h1{
    align-self: flex-end;
    margin-bottom: -.1em;
    color: #FFF;
	background-color: rgba(0,0,0,0.0001);
}

#primary.single_post h1{
    font-size: 2.7rem;
}

#primary.single_post.big_title .page_hero.has_img h1{
    margin-bottom: -.2em;
}

#primary.single_post .no_hero h1{
    text-align: center;    
    margin-bottom: 30px;
	text-transform:uppercase;
}

.single_post .post-content{
    padding-top: 67px;
    font-size: 1.3rem;
    line-height: 1.4;
}

.single_post .post-content img{
	display: inline;
}

.single_post .post-content p{
    /* clear: both; */
}

.single_post .video_wrap{
    position: relative;
    height: 500px;
    margin-bottom: 20px;
}

.single_post .video_overlay{
    position: absolute;
	    top: 0;
	    left: 0;
	    z-index: 1;
    width: 100%;
    height: 100%;

}

.single_post .video_overlay .play_btn{
    position: absolute;
	    top: 50%;
	    left: 50%;
	    z-index: 1;
    width: 90px;
    height: 124px;
    background-color: transparent;
    background-image: url(images/icons/play-btn.png);
    background-repeat: no-repeat;
    background-size: contain;
    border: none;
    cursor: pointer;

    -webkit-transform: translate(-50%,-50%);
            transform: translate(-50%,-50%);
}

.single_post .video_overlay{ 
    pointer-events: none;
    opacity: 0;

    -webkit-transition: all .3s ease-in-out;
            transition: all .3s ease-in-out;
}

.single_post .video_overlay.show{ 
    pointer-events: auto;
    opacity: 1;
}

.single_post blockquote{
    padding: .7rem 0 .1rem 1.5rem;
    margin-bottom: 23px;
    margin-left: 7rem;
    border-left: 10px solid #c4960c;
    font-size: 1.6rem;
    color: #a44c0e; /* accessibility - replaced #c4960c gold - 5/3/19 - rgm */ 
    line-height: 1.3;
}

.single_post .image_block img {
}

.single_post .content_block_half {
    width: 50%;
}

.single_post .content_block_half blockquote{
    margin-left: 0;
}

.float_left{
    float: left;
}

.float_right{
    float: right;
}

.float_left img{
	margin: 0.4em 1.6em 1.6em 0;
}

h2.search_heading{
    margin-top: 20px;
    font-size: 2rem;
    font-weight: normal;
    text-align: center;
}

h2.search_heading span{
    font-weight: bold;
}

@media (min-width: 768px) and (max-width: 1160px){
    .single_post .image_block img {
        width: 44vw;
        height: auto;
        max-width: 50vw;
        font-size: 1.5vw;
    }
}

@media (max-width: 767px){

    .single_post .content_block_half {
        width: 100%;
    }

    .single_post .image_block{
        text-align: center;
    }

    .float_right,
    .float_left{
        float: none;
    }

    .float_left img{
        margin: 0.4em 0 1.6em 0;
    }

    .single_post blockquote{
        margin-left: 0;
    }

}

@media (max-width: 900px){
    
    .single_post .hdr_style,
    #primary.blog_index h1{
        font-size: 6vw;
    }

    .blog_index .cta_button .g_cta{
        padding: .9em;
        font-size: 1rem;
    }

}

/* ===================== Nutrition Allergens ===================== */
/**** nutritional and allegens page added CA 9/9/20 *****/
.reg_page.nutritional_allergen h2{
	font-size: 2rem;
}

.reg_page.nutritional_allergen .table_overflow {overflow-x:auto;}
.reg_page.nutritional_allergen .container {
    width: 1100px;
}
.reg_page.nutritional_allergen .nut_table_container.row{
	margin:60px 0;
}
.reg_page.nutritional_allergen .page-content h2.section_title{text-align:center;margin-bottom:40px; 
	font-weight: bold;
	font-size: 1.7rem;
}
.reg_page.nutritional_allergen h3{
	text-align:center;
	color:#a44c0e;
	color: var(--g_red);
	font-weight: bold;
	margin-bottom: 1em;
	font-size: 1.4rem;
}
.reg_page.nutritional_allergen table{width:100%;overflow-x:auto;}
.reg_page.nutritional_allergen .table-category{
	background:#F3F3F3;
}
.reg_page.nutritional_allergen .content_row.table-category .recipe_name{
	text-align:left;
	font-weight:700;
	font-size:1.3rem;
}

.reg_page.nutritional_allergen tr.table-category{border-right:1px solid #000;border-left:1px solid #000;}

.reg_page.nutritional_allergen tr.table-category td{
	padding: .5em;
	font-weight: bold;
}

.reg_page.nutritional_allergen .table-category td.recipe_data{
	border-left:0;
	border-right:0;
}

.reg_page.nutritional_allergen .table-category td.recipe_item,
.reg_page.nutritional_allergen .table-category td.recipe_data{
	border-left:0;
	border-right:0;
}
.reg_page.nutritional_allergen tr.table-category td.recipe_item .recipe_name{margin-left:0;}
.reg_page.nutritional_allergen td.recipe_item .recipe_name{margin-left:20px;}

.reg_page.nutritional_allergen th.recipe_header{    
    font-size: 0.8rem;
    width: auto;
	font-family: var(--nexa);
    font-weight: 600;
    padding: 3px 2px;
    border: 1px solid #000;
	text-align:center;
	padding:4px;
}
.reg_page.nutritional_allergen td.recipe_item{
	width: auto;
    padding:4px;
	border: 1px solid #000;
	font-size: 0.9rem;
}
.reg_page.nutritional_allergen td.recipe_data{
	width: auto;
	padding:4px;
	border: 1px solid #000;
	font-size: 0.9rem;
	text-align: left;
	text-align:center;
}
.reg_page.nutritional_allergen #allergens{
	text-align: center;
    width: 67%;
    float: right;
    border: 1px solid #000;
    border-bottom: none;
	font-weight:700;
	overflow-x:hidden;
}
.reg_page.nutritional_allergen table{
	margin-bottom:100px;
}

.reg_page.nutritional_allergen .nut_table_container.row{
	text-align: center;
}

.reg_page.nutritional_allergen h3.table_name{
	position: relative;
	display: inline-block;
}

.reg_page.nutritional_allergen h3.table_name::before,
.reg_page.nutritional_allergen h3.table_name::after{
	display: inline-block;
	position: absolute;
	top: 50%;
	z-index: 1;
	width: .4em;
    height: 3px;
	background-color: #a44c0e;
	font-size: inherit;
	content:'';

	-webkit-transform: translate(0%,-50%);
	        transform: translate(0%,-50%);
}

.reg_page.nutritional_allergen h3.table_name::before{
	left: -1em;
}

.reg_page.nutritional_allergen h3.table_name::after{
	right: -1em;
}


@media (max-width: 768px){
	.reg_page.nutritional_allergen table{
		overflow-x: scroll;
	}
	.reg_page.nutritional_allergen#primary .page-content h2 {
		font-size:2rem;
	}
	.reg_page.nutritional_allergen h3.table_name{
		font-size:1.4rem;
	}
	.reg_page.nutritional_allergen .content_row.table-category .recipe_name{
		font-size:0.9rem;
	}
}

/* ===================== datepicker ===================== */

.gform-theme-datepicker:not(.gform-legacy-datepicker) {
    background: #fff;
    border: 1px solid #d0d1d3;
    border-radius: 3px;
    box-shadow: 0 1px 4px rgba(0,0,0,.11),0 0 4px rgba(18,25,97,.0405344);
    color: #607382;
    font-size: 13px;
    font-weight: 500;
    margin-top: 5px;
    padding: 18px 15px;
    width: auto
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) table,.gform-theme-datepicker:not(.gform-legacy-datepicker) td,.gform-theme-datepicker:not(.gform-legacy-datepicker) th,.gform-theme-datepicker:not(.gform-legacy-datepicker) thead,.gform-theme-datepicker:not(.gform-legacy-datepicker) tr {
    background: 0 0;
    border: 0;
    margin: 0
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) td,.gform-theme-datepicker:not(.gform-legacy-datepicker) th {
    padding: 5px;
    text-shadow: none;
    text-transform: none
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header {
    border: 0;
    display: flex;
    flex-direction: row;
    justify-content: center;
    margin: 0 0 5px;
    padding: 0;
    position: relative;
    width: 100%
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next,.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev {
    align-items: center;
    background: 0 0;
    border: 0;
    color: #607382;
    cursor: pointer;
    display: flex;
    font-family: gform-icons-theme!important;
    font-size: 24px;
    height: 30px;
    justify-content: center;
    line-height: 1;
    position: absolute;
    speak: never;
    top: -2px;
    text-decoration: none;
    transition: color .3s ease-in-out,background-color .3s ease-in-out,border-color .3s ease-in-out;
    width: 30px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next:focus,.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next:hover,.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev:focus,.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev:hover {
    color: #2f4054
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next .ui-icon,.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev .ui-icon {
    display: none
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next:before,.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev:before {
    border: 0;
    height: auto;
    position: static;
    transform: none;
    width: auto
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev {
	left: 0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 50%;
	border-radius: 100%;
}

/* .gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev:before { */
/*     content: "" */
/* } */

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next {
	right: 0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 50%;
	border-radius: 100%;
}

/* .gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next:before { */
/*     content: ""; */
/* } */

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header select {
    background-color: transparent;
    background-position: 100% 50%;
    background-repeat: no-repeat;
    background-size: 24px 24px;
    border-radius: 0;
    border: 0;
    box-shadow: none;
    color: #585e6a;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    height: auto;
    min-height: 0;
    padding: 0 22px 0 0;
    -webkit-appearance: none;
    width: auto
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header select.ui-datepicker-month {
    margin-right: 20px;
    -moz-text-align-last: right;
    text-align-last: right
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar a,.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar span {
    font-weight: 400
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar th span {
    align-items: center;
    color: #2f4054;
    display: flex;
    font-size: 13px;
    font-weight: 500;
    height: 40px;
    justify-content: center;
    width: 40px
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar td {
    font-size: 13px;
    height: 50px;
    width: 50px
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-default {
    align-items: center;
    background: 0 0;
    border: 1px solid transparent;
    border-radius: 100%;
    box-shadow: none;
    color: #2f4054;
    display: flex;
    height: 40px;
    justify-content: center;
    transition: color .3s ease-in-out,background-color .3s ease-in-out,border-color .3s ease-in-out;
    text-decoration: none;
    width: 40px
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-default:focus,.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-default:hover {
    background: 0 0;
    border-color: #607382;
    outline: 0
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-default:active {
    background: #f2f3f5;
    border-color: #607382
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-datepicker-current-day .ui-state-default {
    background: #607382;
    border-color: #607382;
    box-shadow: 0 2px 2px rgba(58,58,87,.0596411);
    color: #fff
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-datepicker-current-day .ui-state-default:focus,.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-datepicker-current-day .ui-state-default:hover {
    border-color: #607382
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-disabled {
    background: 0 0
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-disabled .ui-state-default {
    align-items: center;
    background: #f2f3f5;
    border: 1px solid rgba(32,32,46,.079);
    border-radius: 100%;
    box-shadow: 0 2px 2px rgba(58,58,87,.0596411);
    color: #686e77;
    cursor: text;
    display: flex;
    height: 40px;
    justify-content: center;
    text-decoration: none;
    width: 40px
}

/* ===================== Waitlist ===================== */

#primary.waitlist {
	padding-top: 35px;
}

#primary.waitlist .container{
	width: 500px;
	text-align: center;
}

.waitlist .subhead{
	width: 390px;
	max-width: 100%;
	margin: 35px auto 0;
	font-size: 2rem;
}

.waitlist .page-content .dropdown_wrap {
	width: 350px;
	max-width: 100%;
	margin-top: 50px;
}

.waitlist .page-content .dropdown_wrap ul{
	height: 500px;
	overflow-y: scroll;
}

.waitlist .page-content .dropdown_wrap ul li:first-child{
	padding-top: 20px;
}

.waitlist .page-content .dropdown_wrap ul .nearest_waitlist {
	background-color: #f7e8d5; /* gp sand */
}

.waitlist .page-content .dropdown_wrap ul .nearest_waitlist.last{
	padding-bottom: .6em;
}

.waitlist .page-content .dropdown_wrap ul .nearest_waitlist.last + li a{
	padding-top: .6em;
}

.waitlist .page-content .dropdown_wrap ul .nearest_hdr{
	padding: .6em .9em;
	font-family: 'Norwester-Regular';
	font-size: 1rem;
	color: #a44c0e; /* brick red */ 
	text-align: left;
	text-transform: uppercase;
}

.waitlist .page-content .dropdown_wrap ul .distance{
	margin-left: .2em;
	font-family: 'Norwester-Regular';
	font-size: .7em;
}

.waitlist #waitlist_phone{
	height: 575px;
	margin-top: 50px;
	background-repeat: no-repeat;
	background-position: left calc(50% + 142px) top;
	background-size: 800px;
}

.waitlist .dropdown_wrap #waitlist_stores a{
	padding: 0.4em 1em;
    font-weight: bold;
}

.waitlist .location_finder_wrap{
	width: 420px;
	max-width: 100%;
	margin: 60px auto;
}

.waitlist .location_finder_wrap .finder_address_label{
	text-align: left;
}

@media (max-width: 767px){

	.page-template-page-waitlist #page > header{
		display: none;
	}
	
	.waitlist #waitlist_phone{
		background-position: left calc(50% + 34px) top;
		background-size: 100%;
	}


	/* reduced header */
	body.waitlist #mobile_nav .sign_in_link,
	body.waitlist #mobile_top_line .social_row{
		display: none;
	}

	body.waitlist #mobile_top_line {
		position: absolute;
			top: 15px;
			left: 0;
			z-index: 100;
	}

}

/* ===================== extra menu ===================== */
.wine_table .section_subheading{
	color: var(--g_red);
}

.wine_table .wine_name span{
	margin-left: .4em;

}

.wine_table div.wine_name strong, .cocktail_table div.cocktail_name strong {
	font-size: 1.375rem;
    font-weight: bold;
}

.wine_table div.wine_name strong, .cocktail_table div.cocktail_name p{
	padding-bottom: .5em;
}

.wine_table div.wine_name span, .cocktail_table div.cocktail_name span {
	font-size: 1.15rem;
}

.wine_table td {
	padding: 5px 5px 5px 0;
}

.wine_table td.wine_price {
	font-weight: bold;
	color: var(--g_red);
    font-size: 1.35rem;
}

.wine_table .th_name .h3_style{
	text-align: left;
	margin: 3em 0 1em;
	font-family: var(--gotham);
	font-weight: bold;
	color: var(--g_red);
	background: rgba(255,255,255,0.1);
}

.wine_table .th_name,
.wine_table .wine_item{
	width: 17%;
	text-align: left;
}

.wine_table .th_price,
.wine_table .wine_price{
	width: 3%;
	text-align: left;
}

.cocktail_table .h3_style{
	margin: 1.5em 0 0.2em;
	font-size: 1.4rem;
	color: var(--g_red);
	font-weight: bold;
	text-align: left;
}

.cocktail_table .cocktail_item{
	padding-bottom: 1em;
}

.qr_section_footer{
	line-height: 1.3;
}

.menu_page .menu_section .menu_item.toppings .cta_grid{
	display: none;
}

.menu_page .menu_section .menu_item{
	flex-direction: column;
	display: flex;
	width: 100%;
}

.menu_item .copy{
	flex: 1 1 auto;
	flex-direction: column;
	display: flex;
}

.menu_item .copy .cta_grid{
	margin: auto 0 0 0;
}


.cocktail_table .content_row.seasonal,
.qr_menu .qr_item.seasonal{
	border: 1px solid var(--g_red);
}

.cocktail_table .content_row.seasonal {
	margin-bottom: 1em;
}

.cocktail_table .content_row.seasonal .seasonal-tag{
	margin-top: 1em;
    display: inline-block;
}

.cocktail_table .content_row.seasonal td{
	padding: 1em;
}

.menu_page .menu_section .menu_item .content .pairs{
	margin: 1em 0 0.2em;
	color: #d2390f;
	font-weight: bold;
	text-transform: uppercase;
}

.menu_page .menu_section .menu_item .content .lto{
	margin-top: 1em;
	font-size: .8rem;
	color: var(--g_red);
	font-weight: bold;
	text-transform: uppercase;
}


/* wine layout */
.wine_wrap,
.menu_cat_white_area{
	background-color: #ffffff;
    box-shadow: 0 7px 12px 9px rgb(0 0 0 / 7%);
    border-radius: 10px;
	padding: 20px;
}

.wine_wrap .wine_cat_wrap{
	page-break-inside: avoid;

	-webkit-column-break-inside: avoid;
	               break-inside: avoid-column;
}

.wine_wrap .item_wrap{
	display: table;
	margin-bottom: 10px;
}

.wine_wrap .menu_left_col {
	font-size: .9rem;
	flex: 0 0 180px;
}

.wine_wrap .sub_category{
	color: var(--g_red);
	border-bottom: 1px solid #000;
	font-weight: 800;
	margin-bottom: .5em;
	font-size: 1.3rem;
}

.wine_wrap .item_title{
	font-size: 1.3rem;
	font-weight: 800;
}

@media (min-width: 768px){
	
	.wine_wrap .menu_right_col {
		-webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
	}

	.wine_wrap{
		display: flex;
	}
}
.menu_section .items_wrap .section_copy{
	width: 100%;
}

.wine_wrap.cocktails .item_wrap{
	margin-bottom: 1em;
	-webkit-column-break-inside: avoid; 
	column-break-inside:avoid;
}

.wine_wrap.cocktails .cocktail_foot{
	font-size: .9rem;
	margin-top: 3em;
}

/* CA added for homepage video text */


.wine_table .section_subheading{
	color: var(--g_red);
}

.wine_table .wine_name span{
	margin-left: .4em;

}

.wine_table div.wine_name strong, .cocktail_table div.cocktail_name strong {
	font-size: 1.375rem;
    font-weight: bold;
}

.wine_table div.wine_name strong, .cocktail_table div.cocktail_name p{
	text-transform: uppercase;
	padding-bottom: .5em;
}

.wine_table div.wine_name span, .cocktail_table div.cocktail_name span {
	font-size: 1.15rem;
}

.wine_table div.wine_name span, .cocktail_table div.cocktail_name span.special-price{
	color: #BA2E08;
	background: rgba(255,255,255,0.1);
}

.wine_table td {
	padding: 5px 5px 5px 0;
}

.wine_table td.wine_price {
	font-weight: bold;
	color: #BA2E08;
    font-size: 1.35rem;
}

.menu_table td span.beer-type,
.wine_table .th_name .h3_style{
	margin: 3em 0 1em;
	color: #ba2e08;
	font-weight: bold;
	text-align: left;
	text-transform: uppercase;
}

.wine_table .th_name,
.wine_table .wine_item{
	width: 17%;
	text-align: left;
}

.wine_table .th_price,
.wine_table .wine_price{
	width: 3%;
	text-align: left;
}

.cocktail_table .h3_style{
	margin: 1.5em 0 0.2em;
	font-size: 1.4rem;
	color: #BA2E08;
	font-weight: bold;
	text-align: left;
}

.cocktail_table .h3_style span{
	display: inline-block;
	margin: .5em;
}

.cocktail_table .cocktail_item{
	padding-bottom: 1em;
}

.cocktail_table .cocktail_item p{
	line-height: 1.3;
}

.cta, .cta_style a, input[type=submit], #top_section .home_hero .copy a {
    padding: 0.8em 1em;
}

.st0_logo{fill:#A54C0E;}
.st1_logo{fill:none;}
.st2_logo{fill:#C4960C;}

#top_section .home_hero, .hero_wrap {
	background-color: #000;
}

#top_section .home_hero .copy p.v-txt {
	text-shadow: -2px -1px 11px rgb(0 0 0 / 99%);
}

@media (min-width: 768px){
	#top_section .home_hero .copy .inner {
		width: 100%;
		padding: 140px 0;
		background-image: none; 
		background-size: 100% 100%;
	}
}

.pizza-size-disclaimer {padding-top:20px;font-size:0.7rem; text-align:left;}

.gt-disclaimer {
	max-width: 960px;
	padding: 0 30px;
	margin: 50px auto 0;
	font-size: 1rem;
	font-weight: 100;
}

.gt-disclaimer  p{
	line-height: 1.3;
}

.gt-disclaimer .title{
text-transform:uppercase;font-size:1.1rem; font-weight:bold;
margin-bottom: .5em;
 }

/* ===================== Sitemap ===================== */

.sitemap {
	padding-bottom: 50px;
}

.sitemap .map_block{
	margin-top: 50px;
}

.sitemap ul{
	margin-bottom: 0;
}

.sitemap li{
	margin-bottom: .3em;
}


/* ======= what is stoking page ========= */
#stoking-content{padding:60px;text-align:center;}


/* rewards page */

.rewards-signup-menu {
	padding: 260px 0 100px; 
    background-color: black;
	background-image: url(images/rewards/signup-view-menu-desktop-1920.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
@media (min-width: 768px){

	.rewards-signup-menu #rw_blocks{
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
}

.rewards-signup-menu .container{
	width: 1320px;
}



.rewards-signup-menu #rw_blocks .rw_block{
	flex: 0 0 47%;
	padding: 116px 15px 32px;
	position: relative;
	margin: 0 10px 100px;
	background-color: #FFFFFF;
	border-radius: 13px;
	font-size: 3rem;
	

	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.5)  ; 
	-webkit-box-shadow: 0 6px 20px rgba(0, 0, 0, 0.5)  ; 
	-moz-box-shadow: 0 6px 20px rgba(0, 0, 0, 0.5)  ; 
}

.rewards-signup-menu #rw_blocks .rw_block .icon{
	position: absolute;
		top: 0;
		left: 50%;
		z-index: 1;
	width: 165px;
	padding:0;

	-webkit-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
}

.rewards-signup-menu #rw_blocks .rw_block p{
	width: 336px;
	max-width: 100%;
	margin: auto;
	font-size: 1.1rem;
	line-height: 1.1;
}
.rewards-signup-menu #rw_blocks .rw_block p.disclaimer{	
		font-size: 0.8rem;
		line-height: 1.1;
		padding:20px 0;
	}
.rewards-signup-menu #rw_blocks .rw_block .bigger{
	font-size: 1.2em;
}

.rewards-signup-menu #rw_blocks .rw_block h2{
	margin-bottom: 0.2em;
    font-size: 2.5rem;
    font-weight: 800;
    line-height: 1.2;
}

.rewards-signup-menu #rw_blocks .rw_block .cta_button{
	width: 286px;
	max-width: 100%;
	margin-top: 20px;
	margin:30px auto;
}

.rewards-signup-menu #rw_blocks .rw_block .cta_button a{
	width: 100%;
	font-size: 1.5rem;
}
@media (max-width: 767px){

	.rewards-signup-menu {
		background-image: url(images/rewards/signup-view-menu-mobile-768.jpg);
	}
	.rewards-signup-menu #rw_blocks .rw_block h2{
		margin-bottom: 0.2em;
		font-size: 2rem;
		font-weight: 800;
		line-height: 1;
	}
	.rewards-signup-menu #rw_blocks .rw_block p{	
		font-size: 1rem;
		line-height: 1.1;
		text-transform: uppercase;
	}
	
	footer .foot_legal li.opt_out_icon{
	padding-right: 0em !important;
	background-position-x: calc(100% - 150px)!important;
	}
}

@media (max-width: 400px){
	.rewards-signup-menu #rw_blocks .rw_block{
		font-size: 1rem;
	}
}


/* tripleseat */
.tripleseat_page .container{
	width: 750px;
}

.tripleseat_page #tripleseat_embed_form > table,
.tripleseat_page #tripleseat_embed_form > table > tbody,
.tripleseat_page #tripleseat_embed_form > table > tbody > tr > td{
	display: block;
}

.tripleseat_page #tripleseat_embed_form > table > tbody > tr{
	display: flex;
	justify-content: space-between;
	margin-top: 10px;
}

.tripleseat_page #tripleseat_embed_form > table > tbody > tr > td{
	flex: 1 0 50%;
}

.tripleseat_page #tripleseat_embed_form > table > tbody > tr.row_phone_number,
.tripleseat_page #tripleseat_embed_form > table > tbody > tr.row_time{
	justify-content: flex-start;
}

.tripleseat_page #tripleseat_embed_form > table > tbody > tr.row_phone_number > td,
.tripleseat_page #tripleseat_embed_form > table > tbody > tr.row_time > td{
	flex: 0 0 auto;
}

.tripleseat_page #tripleseat_embed_form > table{
	margin: auto;
	width: 100%;
}

.tripleseat_page #tripleseat_embed_form input.hasDatepicker,
.tripleseat_page #tripleseat_embed_form input.timeselect_input{
	width: 155px;
	max-width: 100%;
	padding-left: 2em;
	background-position: 11px center;
}

.tripleseat_page #tripleseat_embed_form #lead_phone_number_extension{
	width: 5em;
	max-width: 100%;
}

.tripleseat_page #tripleseat_embed_form #lead_phone_number{
	width: 11em;
}

#lead_offsite_address_attributes_state{
	width: 4em;
}

#lead_offsite_address_attributes_zip_code{
	width: 7em;
}

#tripleseat_embed_form label{
	margin-bottom: 0.3em;
}

.tripleseat_page #tripleseat_embed_form #lead_submit{
	width: auto;
	margin-bottom: 20px;
	font-size: 1.3rem;
}

.tripleseat_page #tripleseat_embed_form #lead_form_submit{
	position: relative;
}

.tripleseat_page #tripleseat_embed_form #submit_spinner{
	position: absolute;
		top: 1em;
		left: 7em;
		z-index: 1;
}

.tripleseat_page #tripleseat_embed_form .button{
	border: none;
}

.tripleseat_page #tripleseat_embed_form h2, .tripleseat_page #tripleseat_embed_form th{
	margin: 1em 0 0;
}

.tripleseat_page #tripleseat_embed_form th{
	font-size: 1.5em; 
	font-weight: 800;
}

.tripleseat_page #tripleseat_embed_form select{
	background-size: 8px;
}

.tripleseat_page #tripleseat_embed_form select.ui-datepicker-month,
.tripleseat_page #tripleseat_embed_form select.ui-datepicker-year{
	padding: 0.3em;
	border-radius: 0;
}

#tripleseat_embed_form_inline .fa-exclamation-triangle, 
#tripleseat_embed_form .fa-exclamation-triangle{
	margin-bottom: .5em;
}

.tripleseat_page .errorExplanation h2{
	color: #c13333;
	border-color: #c13333;
}

.tripleseat_page #tripleseat_embed_form label span.required,
.tripleseat_page #tripleseat_embed_form .danger{
	color: #c13333;
}

@media (max-width: 500px){
	
	.tripleseat_page #tripleseat_embed_form #submit_spinner{
		top: 2em;
		left: 12em;
	}

	#tripleseat_embed_form #lead_form_submit a{
		width: 100%;
		text-align: center;
	}
	
	footer .foot_legal li.opt_out_icon{
	padding-right: 0em !important;
	background-position-x: calc(100% - 75px)!important;
	}
}

#tsLeadSuccessMessage{
	text-align: center;
}

/* ===================== Do Not sell ===================== */

#cmplz-datarequest-form > div{
	margin-bottom: 20px;
}

footer .foot_legal li.opt_out_icon{
	padding-right: 3.5em;
	background-image: url(images/icons/opt_out_check.svg);
	background-repeat: no-repeat;
	background-position-x: calc(100% - 16px);
	background-size: auto 1em;
}

footer .foot_legal li.opt_out_icon a{
    padding-right: 0em !important;
    margin: 0 0.2em;
}

/* ===================== Merch Store ===================== */

header .top_banner{
	padding: 6px 0;
	background-color: var(--g_red);
	font-size: 1.4rem;
	color: #ffffff;
}

header .top_banner strong{
	font-weight: bold;
}

#mid_banner {
	--bknd_desk: none;
	--bknd_mobile: none;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

#mid_banner .container{
	position: relative;
	max-width: calc(100% - 40px);
	width: 1620px;
}

#mid_banner .copy{
	display: flex;
	position: relative;
		z-index: 15;
	flex: 0 0 48%;
	justify-content: center;
	align-items: center;
	padding: 50px 8%;
}

#mid_banner .copy strong{
	font-weight: bold;
}

#mid_banner .image{
	flex: 1 1 auto;
}

#mid_banner .container::before{
	display: inline-block;
	position: absolute;
		top: 50%;
		left: 50%;
		z-index: 10;
	width: 100%;
	height: calc(100% - 40px);
	border: 2px solid var(--g_dark_red);
	font-size: 1rem;
	content:'';

	-webkit-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
}


#mid_banner .red_title{
	margin-bottom: 0;
	font-family: var(--norwester);
	font-size: 3rem;
	color: var(--g_red);
	text-transform: uppercase;
}

#mid_banner .big_copy{
	font-size: 3.3rem;
	margin-bottom: 1rem;
	line-height: 1.2;
}

#mid_banner .small_caps{
	text-transform: uppercase;
	font-size: 1.7rem;
}

@media (min-width: 1001px){

	#mid_banner .image .mobile{
		display: none;
	}

	#mid_banner{
		background-image: var(--bknd_desk);
	}

	#mid_banner .container{
		display: flex;
	}
}

@media (max-width: 1000px){

	#mid_banner .big_copy{
		font-size: 2.3rem;
	}

	#mid_banner .image .desk{
		display: none;
	}

	#mid_banner{
		background-image: var(--bknd_mobile);
	}
}

.page-template-page-franchising-ad-form .gform_wrapper{
	margin-top: 0px;
	margin-left: 10px;
	margin-right: 10px;
	height: 410px;
	height: 500px;
}

.page-template-page-franchising-ad-form .gform_body{
	/* height: 340px;*/
	max-height: 420px;
	overflow-y: auto;
	scrollbar-color: #a1a1a1 #c5c5c5;
    scrollbar-width: thin;
}

.page-template-page-franchising-ad-form .gform_wrapper.gform_validation_error .gform_body{
	height: 300px;
	height: 380px;
	height: 340px;
}

.page-template-page-franchising-ad-form .gform_footer{
	height: 40px;
	height: 145px;
	padding: 0px;
	position: relative;
}

.page-template-page-franchising-ad-form .gfield{
	margin-bottom: 5px;
}

.page-template-page-franchising-ad-form .gform_required_legend, .page-template-page-franchising-ad-form .gfield label, .page-template-page-franchising-ad-form .gfield.gfield_html{
	font-size: 0.8rem;
}

.page-template-page-franchising-ad-form .gfield label{
	margin-top: 2px;
	margin: 0.25em 0 0 1em;
}

.page-template-page-franchising-ad-form input{
	padding: 0.25em 1em;
	font-size: 0.9em;
}

.page-template-page-franchising-ad-form select{
	padding: 0.25em 1em;
	font-size: 0.9em;
	color: #000000;
}

.page-template-page-franchising-ad-form textarea{
	padding: 0.25em 1em;
	font-size: 0.9em;
	border-radius: 1em;
}

.page-template-page-franchising-ad-form #field_10_1{
	width: 47%;
	margin-right: 3%;
	float: left;
}

.page-template-page-franchising-ad-form #field_10_2{
	width: 47%;
	margin-left: 3%;
	float: right;
}

.page-template-page-franchising-ad-form legend{
	font-size: 0.8rem;
	margin-left: 12px;
    margin-right: 12px;
    line-height: 1.05rem;
}

.page-template-page-franchising-ad-form #input_10_8{
	height: 100px;
}

.page-template-page-franchising-ad-form .validation_error,
.page-template-page-franchising-ad-form .gfield_description.validation_message{
	font-size: 0.7em;
}

.page-template-page-franchising-ad-form #gform_submit_button_10{
	color: #ffffff;
    background: #A44E23;
	border-radius: 5px;
	margin-top: 5px;
}

.page-template-page-franchising-ad-form #gform_submit_button_10:hover{
    background: #000000;
}

.page-template-page-franchising-ad-form .gform_ajax_spinner{
	position: relative;
	/* top: -20px; */
	top: 0;
	left: 0;
	margin-left: auto;
	margin-right: auto;
	margin-top: 10px;
	display: inline-block;
	height: 0px;
	width: 0px;
	display: none;
}

.page-template-page-franchising-ad-form .gform_footer .loader{
	position: relative;
	left: 0;
	font-size: 0.4em;
	margin: 20px auto;
}

.page-template-page-franchising-ad-form .gform_confirmation_message{
	padding: 40px 20px;
    font-size: 24px;
}

/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */

.careers_v2 .allloc_cta,
.careers_v2 .find_title,
.careers_v2 .dismiss_finder{
	display: none;
}

.careers_v2 .container{
	width: 1700px;
	padding: 0;
}

.careers_v2 .search_jobs h2{
	font-size: 3.3rem;
	text-align: center;
	font-weight: bold;
	margin-bottom: 35px;
}

.careers_v2 .career_content{
	font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.2;
}

.careers_v2 .career_content p{
	margin-bottom: 14px;
}

.careers_v2 .career_hero img{
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

.careers_v2 .search_jobs{
	flex: 0 0 630px;
	padding: 75px 100px;
	background-image: url(images/backgrounds/careers_bridge_bknd.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100% auto;
}

.careers_v2 .location_finder {
	z-index: 10;
	margin-bottom: 70px;
}

.careers_v2 .location_finder .location_finder_wrap{
	transition: none;
	display: block;
	opacity: 1;
	position: relative;
}

.careers_v2 .location_finder .location_finder_wrap .dbcloader{
	top: auto;
	bottom: -19px;
}

@media (min-width: 1215px){
	.careers_v2 .flex_content{
		height: 845px;
	}
}

@media (min-width: 768px) and (max-width: 1214px){

	.careers_v2 .search_jobs{
		flex: 0 0 510px;
		background-position: center bottom -80px;
	}
}

@media (max-width: 767px){

	.careers_v2 .search_jobs{
		padding: 75px 45px 305px;
		background-position: center bottom;
	}
}


#gform_fields_9{
	justify-content: center;
}

.gform_ajax_spinner{
	display: none;
}

.gform_footer{
	position: relative;
}

.gform_footer .loader{
	top: 10px;
	position: relative;
	left: 0;
	font-size: 0.4em;
	margin: 20px auto;
}

/* ===================== Recipes ===================== */

.recipes .hero{
	position: relative;
		z-index: 1;
}

.serving_text {
	display: inline-block;
	padding: .5em 1.5em;
	margin-bottom: 30px;
	background-color: #000000;
	border-radius: 5px;
	font-family: var(--norwester);
	font-size: 1.4rem;
	color: #ffffff;
	text-transform: uppercase;
}

.rec_post{
	flex: 0 0 33%;
	margin-bottom: 30px;
	box-shadow: 0px 10px 45px 10px rgb(0 0 0 / 15%);
}

.rec_title{
	position: relative;
	padding: 20px 20px 44px;
	background-color: var(--g_red);
	color: #ffffff;
	text-align: center;
}

.rec_title h3{
    font-size: 1.5rem;
    font-weight: bold;
}

.rec_post .serving_text{
	position: absolute;
		bottom: 0;
		left: 50%;
		z-index: 20;
	margin: 0;
	white-space: nowrap;
	transform: translateX(-50%);
}

.rec_post .rec_thumb{
	position: relative;
		z-index: 10;
	width: 100%;
	height: 380px;
	margin-top: -25px;
	border-radius: 30px;
	object-fit: cover;
}

.rec_post .sauce_name{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 30px 25px;
	font-size: 1.2rem;
	gap: 20px;
}

.rec_post .sauce_name .sauce_link {
	flex: 1 0 auto;
}

.rec_post .sauce_name .sauce_link img{
	height: 50px;
	border-radius: 100%;
	box-shadow: 0px 10px 30px -7px rgb(0 0 0 / 60%);
	aspect-ratio: 1 / 1;
}

.recipes .hero,
.single_recipe .hero {
	padding: 15px;
}

.recipes .hero img,
.single_recipe .hero img{
    object-fit: cover;
	border-radius: 45px;
}

.action_icon{
	display: inline-block;
	position: relative;
	padding: .5em;
	-webkit-appearance: none;
	background-color: transparent;
	border: none;
	border-bottom: 3px solid var(--g_red);
	font-size: 1.3rem;
	color: #000;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
}

.action_icon::after{
	display: inline-block;
	position: absolute;
		top: 50%;
		right: -1.2em;
		z-index: 1;
	width: 1em;
	height: 1em;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100%;
	font-size: 2rem;
	content:'';
	transform: translateY(-50%);
}

.action_icon.printer::after{
	background-image: url(images/icons/printer-icon.svg);
}

.action_icon.envelope::after{
	background-image: url(images/icons/email-icon.svg);
}

.action_icon.arrow_right::after{
	top: auto;
	bottom: 0;
	background-image: url(images/icons/circle_arrow_right.svg);
	font-size: 3rem;
	transform: none;
}

.action_icon.arrow_down::after{
	top: auto;
	bottom: 0;
	background-image: url(images/icons/circle_arrow_down.svg);
	font-size: 3rem;
	transform: none;
}

/* landing */

.recipes .hero_wrap {
	position: relative;
	background-color: #000000;
}

.recipes .hero_wrap::before{
	display: inline-block;
	position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	width: 100%;
	height: 100%;
	background-color: #fff;
	content:'';
}

.recipes .hero_wrap .container{
	display: flex;
	position: absolute;
		top: 0;
		left: 50%;
		z-index: 10;
	justify-content: center;
	align-items: flex-end;
	width: 100%;
	width: 1410px;
	height: 100%;
	padding-bottom: 80px;
	transform: translateX(-50%);
}

@media (max-width: 1050px){
	
	.recipes .hero_wrap .container{
		padding-bottom: 130px;
	}
}

.recipes .hero_wrap .scroll_down{
	position: absolute;
		bottom: 60px;
		left: 50%;
		z-index: 1;
	color: #ffffff;
	transform: translateX(calc(-50% - 18px));
}

@media (min-width: 1051px){
	
	.recipes .hero_wrap .scroll_down{
		right: 0;
		bottom: 80px;
		left: auto;
		transform: translateX(-90px);
	}
}

.recipes .hero_wrap img{
	height: 79vh;
    min-height: 575px;
}

.recipes .hero_wrap .heading_text{
	width: 760px;
	max-width: 100%;
	padding: 30px 80px;
	background-image: url(images/backgrounds/background-shadow-gradient.svg);
	background-size: 100% 100%;
	font-size: 2.5rem;
	color: #ffffff;
	font-weight: bold;
	text-align: center;
}

@media (max-width: 767px){
	
	.recipes .hero_wrap img{
		height: calc(100vh - 260px);
	}

	.has_top_banner .recipes .hero_wrap img{
		height: calc(100vh - 300px);
		min-height: 515px;
	}

	.recipes .hero_wrap .heading_text{
		width: 570px;
		padding: 30px 0;
		font-size: 1.5rem;
	}
}

@media (max-width: 450px){
	
	.recipes .hero_wrap .heading_text{
		font-size: 1.1rem;
	}
}

.recipes .hero_wrap .heading_text span{
	font-size: 2em;
}

.recipes .featured{
	position: relative;
	padding: 50px 0;
	background-color: var(--g_red);
	color: #ffffff;
}

.recipes .featured .feat_img {
	flex: 1 1 auto;
}

.recipes .featured .feat_img .feat_hero{
	width: 100%;
	height: 100%;
	border-radius: 15px;
	object-fit: cover;
	object-position: center;
}

.recipes .featured .serving_text{
	padding: .4em 1.3em;
    font-size: 1.3rem;
}

.recipes .featured .feat_copy{
	flex: 0 0 39%;
}

.recipes .featured .feat_copy .copy{
	margin: 1em 0 2em;
	font-size: 1.17rem;
	font-weight: bold;
}

.recipes .featured .feat_copy .action_icon{
	border-color: #000000;
	color: #ffffff;
	font-weight: bold;
}

.recipes .featured .feat_copy h3{
	font-size: 2.5rem;
	font-weight: bold;
}

.recipes .featured .sauce_jar{
	position: absolute;
}

@media (min-width: 768px){
	.recipes .featured .container{
		display: flex;
		gap: 100px;
	}

	.recipes .featured .sauce_jar{
		top: 0;
		left: -120px;
		z-index: 1;
		width: 466px;
		transform: translateY(-74%);
	}
}

@media (min-width: 1740px){
	
	.recipes .featured .sauce_jar{
		left: calc(50% - 930px);
	}
}

@media (max-width: 1250px){

	.recipes .featured .sauce_jar{
		width: 34vw;
	}
}

@media (min-width: 768px) and (max-width: 1050px){

	.recipes .featured .sauce_jar{
		opacity: 0;
	}
}

@media (max-width: 767px){
	
	.recipes .featured .container{
		padding-left: 50px;
		padding-right: 50px;
	}

	.recipes .featured .feat_img{
		position: relative;
		margin-bottom: 50px;
		height: 70vw;
	}

	.recipes .featured .sauce_jar{
		right: 0;
		bottom: 0;
		width: 230px;
		transform: translateY(40%);
	}
}

@media (max-width: 500px){
	
	.recipes .featured .sauce_jar{
		width: 45vw;
	}
}

@media (max-width: 450px){
	
	.recipes .featured .container{
		padding-left: 20px;
		padding-right: 20px;
	}
}

.recipes .grid_container{
	width: 1560px;
	padding: 0 30px 100px;
    width: 1620px;
}

.recipes .grid_wrap .hdr{
	margin: 40px 0;
    font-size: 2.6rem;
}


@media (min-width: 768px){

	.recipes .recipes_grid{
		display: grid;
		grid-column-gap: 30px;
		grid-template-columns: repeat(auto-fill, minmax(370px, 1fr));
		justify-items: center;
		grid-template-rows: auto auto auto;
	}

	.recipes .recipes_grid .rec_post{
		display: grid;
		width: 100%;
		grid-template-rows: subgrid;
		grid-row: span 3;
		margin-bottom: 30px;
	}

	.recipes .recipes_grid .rec_title{
		font-size: 1.9rem;
	}
}

@media (max-width: 767px){
	
	.recipes .grid_container{
		padding-left: 0;
		padding-right: 0;
	}

	.recipes .scroll_wrap{
		padding: 40px 0 80px;
		overflow-y: auto;
	}

	.recipes .grid_wrap .hdr{
		padding: 0 20px;
	}

	.recipes .recipes_grid {
		display: flex;
		max-width: 470px;
		padding: 0 20px;
		margin: auto;
		gap: 30px;
	}

	.recipes .recipes_grid .rec_post{
		flex: 0 0 75vw;
	}
}

/* single */
.single_recipe .hero img{
	height: 390px;
}

.single_recipe .top_content{
	padding-bottom: 120px;
	position: relative;
}

@media (min-width: 901px){
	.single_recipe .top_content{
		display: flex;
	}
}

.single_recipe .prod_image{
	flex: 1 1 auto;
}

.single_recipe .prod_image img{
	position: absolute;
		top: -150px;
		left: -170px;
	width: 500px;
	max-width: none;
}

.single_recipe h1.hdr{
	padding: 0;
	font-weight: bold;
	text-align: left;
	margin-bottom: .4em;
}

.single_recipe .top_content .copy{
	padding: 42px 50px 0;
    flex: 0 0 75%;
}

.single_recipe .link_row{
	display: flex;
	align-items: center;
	gap: 50px;
}

.single_recipe .link_row .action_icon{
	margin-right: 20px;
}

.single_recipe .recipe_content{
	padding: 70px 10px;
	background-image: url(images/backgrounds/marble-texture.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	font-family: var(--nexa);
}

.single_recipe .recipe_content h2{
	font-size: 3rem;
	margin-bottom: 1em;
	font-weight: bold;
}

@media (min-width: 901px) and (max-width: 1275px){
	
	.single_recipe .prod_image img{
		width: 39vw;
		transform: translateX(50px);
	}
}

@media (max-width: 900px){

	.single_recipe .prod_image img{
		top: 0;
		right: 0;
		left: auto;
		width: 50vw;
		transform: translateY(-75%);
	}
}

@media (max-width: 767px){

	.single_recipe .recipe_content{
		padding: 40px 10px;
	}

	.single_recipe .recipe_content h2{
		margin-bottom: .5em;
	}

	.single_recipe .recipe_content .ingredients{
		margin-bottom: 40px;
	}

	.single_recipe .recipe_content .ingredients h2{
		margin-left: 30px;
	}

	.single_recipe .recipe_content .directions h2{
		margin-left: 53px;
	}

	.single_recipe .recipe_content .directions ol li{
		margin-left: 0;
	}

	.single_recipe .hero img{
		height: 93vw;
	}

	.single_recipe .top_content {
		padding-bottom: 60px;
	}

	.single_recipe .top_content .copy{
		padding-left: 10px;
		padding-right: 10px;
	}

	.single_recipe .link_row{
		flex-direction: column;
		align-items: flex-start;
		gap: 30px;
	}
}

.single_recipe .recipe_content .ingredients {
	flex: 1 1 auto;
}

.single_recipe .recipe_content .ingredients ul{
	background-color: #ffffff;
	padding: 30px;
	border-radius: 20px;
}

.single_recipe .recipe_content .ingredients ul li{
	padding: 1em 0;
}

.single_recipe .recipe_content .ingredients ul li + li{
	border-top: 1px solid #000;
}

.single_recipe .recipe_content .directions {
	flex: 0 0 58%;
}

@media (min-width: 768px){

	.single_recipe .recipe_content .directions {
		padding-left: 40px;
	}

	.single_recipe .recipe_content .ingredients {
		padding-right: 40px;
	}
}

.single_recipe .recipe_content .directions h2{
	margin-left: 68px;
}

.single_recipe .recipe_content .directions ol li{
	position: relative;
	padding-top: .3em;
	padding-left: 3.5em;
	margin: 0 0 1.5em 1em;
	counter-increment: the-counter;
	line-height: 1.3;
}

.single_recipe .recipe_content .directions ol li::before{
	display: inline-block;
	position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	width: 1em;
	height: 1em;
	padding: .4em .5em .6em;
	background-color: var(--g_red);
	border-radius: 100%;
	font-size: 1.3rem;
	color: #ffffff;
	font-weight: bold;
	text-align: center;
	content: counter(the-counter);
}

@media (min-width: 768px){
	
	.single_recipe .recipe_content .container{
		display: flex;
	}
}

/* recommended */
.single_recipe .recommended {
	padding-bottom: 50px;
}

.single_recipe .recommended .inner {
	margin-bottom: 50px;
}

@media (min-width: 1201px){
	.single_recipe .recommended .inner {
		display: flex;
		justify-content: center;
		gap: 20px;
	}
}

@media (max-width: 1200px){
	.single_recipe .recommended .inner {
		max-width: 470px;
		margin: auto;
	}
}

.single_recipe .recommended h2{
	font-size: 3rem;
    margin: 50px 0;
}

@media (max-width: 767px){
	
	.single_recipe .recommended h2{
		font-size: 2rem;
	}
}

@media print{
	
	.single-recipe header,
	.single-recipe .hero,
	.single-recipe .prod_image,
	.single-recipe .link_row,
	.single-recipe .recommended,
	.single-recipe footer{
		display: none;
	}

	.single_recipe h1.hdr{
		margin-bottom: 30px;
		font-size: 1.5rem;
		text-align: center;
	}

	.single_recipe .top_content{
		padding-bottom: 0;
	}

	.single_recipe .recipe_content{
		padding-top: 10px;
	}

	.single_recipe .recipe_content h2{
		font-size: 1.5rem;
		margin-bottom: .5em;
	}

	.single_recipe .recipe_content .ingredients ul{
		padding: 0;
	}

	.single_recipe .recipe_content .directions h2{
		margin-left: 0;
	}

	.single_recipe .recipe_content .directions{
		padding-left: 30px;
	}

	.single_recipe .recipe_content .directions ol{
		list-style: auto;
	}

	.single_recipe .recipe_content .directions ol li{
		padding-left: 0;
	}

	.single_recipe .recipe_content .directions ol li::before{
		content: none;
	}

	.single_recipe .serving_text{
		display: none;
		padding: 0;
		margin-bottom: 20px;
		background-color: #ffffff;
		font-family: inherit;
		color: #000000;
		text-transform: none;
	}

	.single_recipe .recipe_content {
		background-image: none; 
	}

	.single_recipe .recipe_content .container{
		display: flex;
	}

}

/* datepicker a11y */
.dbc_datepicker {
  margin-top: 1em;
  position: relative;
  --text_color: #fff;
  --bezel_color: var(--g_red);
}

main#content .dbc_datepicker_field button.dbc_calendar_icon:focus-visible,
main#content .dbc_datepicker-dialog table.dates td:focus-visible,
main#content .dbc_datepicker button:focus-visible{
	outline: 2px #fff solid;
	outline-offset: 0;
	box-shadow: 0 0 0 4px #000;
}

.gform_wrapper.gravity-theme .dbc_datepicker_field .ginput_container_date input{
	width: 100%;
}

.dbc_datepicker-dialog table.dates td:focus-visible,
.dbc_datepicker button:focus-visible{
	position: relative;
}

.dbc_datepicker .group {
	display: inline-block;
	position: relative;
	width: 13em;
}

.dbc_datepicker button.icon {
	position: relative;
	top: 0.25em;
	margin: 0;
	padding: 4px;
	border: 0 solid #005a9c;
	background-color: #fff;
	border-radius: 5px;
}

.dbc_datepicker .desc {
	position: absolute;
	left: 0;
	top: 2em;
}

.dbc_datepicker button.icon:focus {
	outline: none;
	padding: 2px;
	border-width: 2px;
	background-color: #def;
}

.dbc_datepicker-dialog {
	display: none;
	position: absolute;
	width: 320px;
	clear: both;
	padding: 0;
	margin-top: 0.15em;
	background-color: #fff;
	border-radius: 5px;
	border: 3px solid var(--bezel_color);
}

.dbc_datepicker-dialog .header {
	cursor: default;
	background-color: var(--bezel_color);
	padding: 7px;
	font-weight: bold;
	text-transform: uppercase;
	color: var(--text_color);
	display: flex;
	justify-content: space-around;
}

.dbc_datepicker-dialog h2 {
	margin: 0;
	padding: 0;
	display: inline-block;
	font-size: 1em;
	color: var(--text_color);
	text-transform: none;
	font-weight: bold;
	border: none;
}

.dbc_datepicker-dialog button {
	border-style: none;
	background: transparent;
}

.dbc_datepicker-dialog button::-moz-focus-inner {
	border: 0;
}

.dbc_datepicker-dialog .dates {
	width: 320px;
}

.dbc_datepicker-dialog .cal_btn svg{
	width: 100%;
	height: 100%;
}

.dbc_datepicker-dialog .prev-year,
.dbc_datepicker-dialog .prev-month,
.dbc_datepicker-dialog .next-month,
.dbc_datepicker-dialog .next-year {
	width: 24px;
	height: 24px;
	padding: 0;
	color: var(--text_color);
}

.dbc_datepicker-dialog .prev-year:focus,
.dbc_datepicker-dialog .prev-month:focus,
.dbc_datepicker-dialog .next-month:focus,
.dbc_datepicker-dialog .next-year:focus {
	border-radius: 4px;
}

.dbc_datepicker-dialog .prev-year:hover,
.dbc_datepicker-dialog .prev-month:hover,
.dbc_datepicker-dialog .next-month:hover,
.dbc_datepicker-dialog .next-year:hover {
	border: 1px solid var(--text-color);
	border-radius: 4px;
}

.dbc_datepicker-dialog .dialog-ok-cancel-group {
	text-align: right;
	margin-top: 1em;
	margin-bottom: 1em;
	margin-right: 1em;
}

.dbc_datepicker-dialog .dialog-ok-cancel-group button {
	width: 5em;
	padding: 6px;
	margin-left: 1em;
	background-color: var(--bezel_color);
	border-radius: 5px;
	font-family: inherit;
	font-size: 0.85em;
	color: #ffffff;
}

.dbc_datepicker-dialog .dialog-button:hover {
	padding: 5px;
	border: 1px solid black;
}

.dbc_datepicker-dialog .fa-calendar-alt {
	color: var(--bezel_color);
}

.dbc_datepicker-dialog .month-year {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 12em;
	margin: 0;
	font-size: 1.1rem;
	text-align: center;
}

.dbc_datepicker-dialog table.dates {
	padding-left: 1em;
	padding-right: 1em;
	padding-top: 1em;
	border: none;
	border-collapse: separate;
}

.dbc_datepicker-dialog table.dates th,
.dbc_datepicker-dialog table.dates td {
	text-align: center;
	background: white;
	color: black;
	border: none;
}

.dbc_datepicker-dialog table.dates tr {
	border: 1px solid black;
}

.dbc_datepicker-dialog table.dates td {
	width: 40px;
	height: 40px;
	padding: 3px;
	margin: 0;
	background: #eee;
	font-size: 15px;
	line-height: inherit;
	vertical-align: middle;
}

.dbc_datepicker-dialog table.dates td.disabled {
	padding: 2px;
	border: none;
	height: 41px;
	width: 41px;
}

.dbc_datepicker-dialog table.dates td:focus,
.dbc_datepicker-dialog table.dates td:hover {
	padding: 0;
	background-color: var(--bezel_color);
	color: black;
}

.dbc_datepicker-dialog table.dates td:focus {
	/* padding: 1px; */
	/* border: 2px solid rgb(100 100 100); */
	/* outline: 0; */
}

.dbc_datepicker-dialog table.dates td.noselect{
	opacity: .6;
	pointer-events: none;
	text-decoration: line-through;
}

.dbc_datepicker-dialog table.dates td:not(.noselect):focus,
.dbc_datepicker-dialog table.dates td:not(.noselect):hover {
	padding: 0;
	background-color: var(--bezel_color);
	color: var(--text_color);
}

.dbc_datepicker-dialog table.dates td:not(.disabled):hover {
	padding: 2px;
	border: 1px solid rgb(100 100 100);
}

.dbc_datepicker-dialog table.dates td[aria-selected] {
	padding: 1px;
	border: 2px dotted rgb(100 100 100);
}

.dbc_datepicker-dialog table.dates td[aria-selected]:focus {
	padding: 1px;
}

.dbc_datepicker-dialog table.dates td[tabindex="0"] {
	background-color: var(--bezel_color);
	color: var(--text_color);
}

.dbc_datepicker-dialog .dialog-message {
	padding: 0.25em;
	padding-left: 1em;
	background-color: var(--bezel_color);
	color: var(--text_color);
}

.dbc_datepicker_field{
	position: relative;
	margin-bottom: 10px;
}

.dbc_datepicker_field .group{
	position: relative;
}

.dbc_datepicker_field [id*=gforms_calendar_icon]{
	display: none;
}

.floating_labels .dbc_datepicker_field:not(.unfloat) label{
	background-color: #ffffff;
}

button.dbc_calendar_icon{
	position: absolute;
		top: 30%;
		right: 2em;
		z-index: 1;
	width: 2em;
	height: 2em;
	overflow: hidden;
	padding: 0;
	-webkit-appearance: none;
	background-color: transparent;
	background-image: url(images/icons/datepicker/icon-calendar.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border: none;
	font-size: .8rem;
	color: #000;
	cursor: pointer;
	transform: translateY(-50%);
}

.gfield.gfield_error button.dbc_calendar_icon{
	top: 4.3em;
}

.gfield.no_float_label button.dbc_calendar_icon{
	top: 68%;
}

.dbc_datepicker_field .desc{
	position: absolute;
		bottom: -.2em;
		left: 1em;
	font-size: .9em;
}

/* 02-13-25 waitlist */
.waitlist.locations {
	padding-bottom: 100px;
}

.waitlist.locations #loc_search_box .search_box{
	margin: auto;
}

.waitlist.locations .loc_block.temp_closed,
.waitlist.locations .loc_block.coming_soon,
.waitlist.locations .loc_block.no_waitlist{
	display: none;
}

.waitlist.locations .locations_row{
	display: block;
	height: auto;
}

.waitlist.locations .loc_heading{
	margin-bottom: 2rem;
}

@media (min-width: 768px){
	
	.waitlist.locations .loc_heading{
		text-align: center;
	}
}

.waitlist.locations .block_listing .inner{
	display: grid;
	grid-gap: 20px;
	grid-template-columns: 1fr 1fr;
	justify-items: center;
}

.waitlist.locations #locations_list_top{
	width: 1130px;
	height: auto;
	max-width: 90%;
	max-height: none;
	margin: auto;
}

@media (max-width: 1170px){
	
	.waitlist.locations #locations_list_top{
		width: 720px;
	}

	.waitlist.locations .block_listing .inner{
		grid-template-columns: 1fr;
	}
}

.waitlist.locations .loc_block{
	flex-wrap: wrap;
	width: 100%;
	background-color: transparent;
	gap: 20px;
}

.waitlist.locations .loc_block .info{
	flex: 1 1 0;
}

.waitlist.locations .loc_block .rt_half{
	flex: 0 0 40%;
}

.waitlist.locations .loc_block .today_hours{
	flex: 0 0 100%;
}

.waitlist.locations .loc_block .cta{
	font-size: 1.3rem;
	padding: .7em 1em;
}

.waitlist.locations .loc_block .info .today_hours{
	line-height: 1.2;
}

@media (max-width: 767px){

	.waitlist.locations .loc_block{
		flex-direction: row;
	}

	.waitlist.locations .loc_block .info{
		margin-bottom: 0;
	}

	.waitlist.locations .loc_block .cta{
		font-size: 1rem;
	}

	.waitlist.locations .loc_block .cta span{
		position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
	}

	.waitlist.locations .loc_block .info .loc_name{
		max-width: none;
	}

}

.waitlist.locations .dbcloader{
	top: -6px;
	right: -50px;
}

.waitlist.locations #showall{
	display: none;
	margin: 0 auto 30px;
}

.waitlist.locations .has_results #showall{
	display: block;
}

/* ===================== Loader ===================== */

.loader_circles .circle_inner{
	animation: 3s linear reverse infinite c_inner_rotate;
	transform-origin: center;
}

.loader_circles .circle_outer{
	animation: 3s linear infinite c_outer_rotate;
	transform-origin: center;
}

@keyframes c_inner_rotate { from { transform: rotate(0); } to { transform: rotate(360deg); }  }
@keyframes c_outer_rotate { from { transform: rotate(0); } to { transform: rotate(360deg); }  }

/* redirect cpt */
.dbc_redirect {
	padding: 100px 20px 50px;
}

.dbc_redirect h1{
	font-family: var(--title_font);
	color: var(--primary);
	font-size: 3rem;
}

.dbc_redirect .loader_wrap{
	text-align: center;
    padding: 50px 0;
}

.dbc_redirect .loader_wrap .loader_circles{
	fill: var(--primary);
	width: 80px;
}

.dbc_redirect .redirect_content{
	margin-bottom: 50px;
}

@media (max-width: 600px){
	
	.dbc_redirect h1{
		font-size: 2rem;
	}
}

@media (max-width: 350px){
	
	.dbc_redirect h1{
		font-size: 1.5rem;
	}
}
