
/* --wp--preset--color--ut-red: #e04e39; */
/* --wp--preset--color--ut-yellow: #ffc845; */
/* --wp--preset--color--cream-1: #ffe2a1; */
/* --wp--preset--color--cream-2: #fff0cf; */
/* --wp--preset--color--linen-1: #fcf7f2; */
/* --wp--preset--color--linen-2: #fbf3e8; */
/* --wp--preset--color--copy-black: #171717; */
/* --wp--preset--color--shoji: #322f2f; */
/* --wp--preset--color--light-blue-1: #b6d7f1; */
/* --wp--preset--color--light-blue-2 */

@font-face{
	font-family: "futura-pt", sans-serif;
	font-weight: 400;
	font-style: normal;
}

@font-face{
	font-family: "futura-pt-bold", sans-serif;
	font-weight: 700;
	font-style: bold;
}

@font-face{
	font-family: "commuters-sans", sans-serif;
	font-weight: 700;
	font-style: normal;
}

@font-face {
    font-family: 'uncle_tetsu_handwrittenRg';
    src: url('../fonts/uncle_tetsu_handwritten-webfont.woff2') format('woff2'),
         url('../fonts/uncle_tetsu_handwritten-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

:root{
	--copy_font: "greycliff-cf", sans-serif;
	--heading_font: "uncle_tetsu_handwrittenRg", sans-serif;
	--small_heading_font: "commuters-sans", sans-serif;
	--container: 1280px;
	--small_font_size: 1.2rem;
	--medium_font_size: 3rem;
	--large_font_size: 4.5rem;
	--xlarge_font_size: 6rem;
}

@media (min-width: 768px) and (max-width: 1200px){

	:root{
		--large_font_size: 3rem;
	}
}

@media (max-width: 767px){

	:root{
		--small_font_size: 1.3rem;
		--medium_font_size: 3.5rem;
		--large_font_size: 3rem;
		--xlarge_font_size: 4rem;
	}
}

@media (max-width: 400px){
	
	:root{
		--medium_font_size: 3rem;
	}
}

/* ===================== utils ===================== */

@media (min-width: 768px){
	body:not(.wp-admin) .mobile_only	{
		display: none !important;
	}
}

@media (max-width: 767px){
	body:not(.wp-admin) .desk_only,
	body:not(.wp-admin) .desktop_only{
		display: none !important;
	}
}

.ut_red{
	color: var(--wp--preset--color--ut-red);)
}

.whiteoutline{
	text-shadow: rgb(255, 255, 255) 8px 0px 0px, rgb(255, 255, 255) 7.93758px 0.997398px 0px, rgb(255, 255, 255) 7.7513px 1.97923px 0px, rgb(255, 255, 255) 7.44406px 2.93018px 0px, rgb(255, 255, 255) 7.02066px 3.8354px 0px, rgb(255, 255, 255) 6.4877px 4.68078px 0px, rgb(255, 255, 255) 5.85351px 5.45311px 0px, rgb(255, 255, 255) 5.12797px 6.14035px 0px, rgb(255, 255, 255) 4.32242px 6.73177px 0px, rgb(255, 255, 255) 3.44941px 7.21814px 0px, rgb(255, 255, 255) 2.52258px 7.59188px 0px, rgb(255, 255, 255) 1.55638px 7.84714px 0px, rgb(255, 255, 255) 0.565898px 7.97996px 0px, rgb(255, 255, 255) -0.433417px 7.98825px 0px, rgb(255, 255, 255) -1.42597px 7.87189px 0px, rgb(255, 255, 255) -2.39627px 7.63269px 0px, rgb(255, 255, 255) -3.32917px 7.27438px 0px, rgb(255, 255, 255) -4.21013px 6.80256px 0px, rgb(255, 255, 255) -5.02539px 6.22459px 0px, rgb(255, 255, 255) -5.76223px 5.54948px 0px, rgb(255, 255, 255) -6.40915px 4.78778px 0px, rgb(255, 255, 255) -6.95606px 3.95136px 0px, rgb(255, 255, 255) -7.39442px 3.05329px 0px, rgb(255, 255, 255) -7.71739px 2.10757px 0px, rgb(255, 255, 255) -7.91994px 1.12896px 0px, rgb(255, 255, 255) -7.9989px 0.132735px 0px, rgb(255, 255, 255) -7.95304px -0.865561px 0px, rgb(255, 255, 255) -7.78307px -1.85035px 0px, rgb(255, 255, 255) -7.49165px -2.80627px 0px, rgb(255, 255, 255) -7.08333px -3.71839px 0px, rgb(255, 255, 255) -6.56448px -4.57249px 0px, rgb(255, 255, 255) -5.94318px -5.35524px 0px, rgb(255, 255, 255) -5.22915px -6.05442px 0px, rgb(255, 255, 255) -4.43352px -6.65912px 0px, rgb(255, 255, 255) -3.5687px -7.15991px 0px, rgb(255, 255, 255) -2.6482px -7.54898px 0px, rgb(255, 255, 255) -1.68637px -7.82024px 0px, rgb(255, 255, 255) -0.698222px -7.96947px 0px, rgb(255, 255, 255) 0.300817px -7.99434px 0px, rgb(255, 255, 255) 1.29516px -7.89446px 0px, rgb(255, 255, 255) 2.2693px -7.67139px 0px, rgb(255, 255, 255) 3.20802px -7.32862px 0px, rgb(255, 255, 255) 4.09668px -6.87148px 0px, rgb(255, 255, 255) 4.92142px -6.30711px 0px, rgb(255, 255, 255) 5.66936px -5.64432px 0px, rgb(255, 255, 255) 6.32883px -4.89346px 0px, rgb(255, 255, 255) 6.88954px -4.06623px 0px, rgb(255, 255, 255) 7.34274px -3.17555px 0px, rgb(255, 255, 255) 7.68136px -2.23532px 0px, rgb(255, 255, 255) 7.90012px -1.26021px 0px, rgb(255, 255, 255) 7.9956px -0.265434px 0px;
}

@media (max-width: 767px){

	.whiteoutline{
		text-shadow: rgb(255, 255, 255) 4px 0px 0px, rgb(255, 255, 255) 3.87565px 0.989616px 0px, rgb(255, 255, 255) 3.51033px 1.9177px 0px, rgb(255, 255, 255) 2.92676px 2.72656px 0px, rgb(255, 255, 255) 2.16121px 3.36588px 0px, rgb(255, 255, 255) 1.26129px 3.79594px 0px, rgb(255, 255, 255) 0.282949px 3.98998px 0px, rgb(255, 255, 255) -0.712984px 3.93594px 0px, rgb(255, 255, 255) -1.66459px 3.63719px 0px, rgb(255, 255, 255) -2.51269px 3.11229px 0px, rgb(255, 255, 255) -3.20457px 2.39389px 0px, rgb(255, 255, 255) -3.69721px 1.52664px 0px, rgb(255, 255, 255) -3.95997px 0.56448px 0px, rgb(255, 255, 255) -3.97652px -0.432781px 0px, rgb(255, 255, 255) -3.74583px -1.40313px 0px, rgb(255, 255, 255) -3.28224px -2.28625px 0px, rgb(255, 255, 255) -2.61457px -3.02721px 0px, rgb(255, 255, 255) -1.78435px -3.57996px 0px, rgb(255, 255, 255) -0.843183px -3.91012px 0px, rgb(255, 255, 255) 0.150409px -3.99717px 0px, rgb(255, 255, 255) 1.13465px -3.8357px 0px, rgb(255, 255, 255) 2.04834px -3.43574px 0px, rgb(255, 255, 255) 2.83468px -2.82216px 0px, rgb(255, 255, 255) 3.44477px -2.03312px 0px, rgb(255, 255, 255) 3.84068px -1.11766px 0px, rgb(255, 255, 255) 3.9978px -0.132717px 0px;
	}
}

.dbc_tabs .tabpanel{
    display: none;
}

.dbc_tabs .tabpanel.active{
	display: block;
}

.dbc_tabs .tablist_mobile{
    position: relative;
}

.dbc_tabs .dropselect{
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.dropdown_wrap {
	display: inline-block;
	position: relative;
		z-index: 10;
}

.dropdown_wrap button{
	background-color: transparent;
	border: none;
	cursor: pointer;
	padding: 0;
	-webkit-appearance: none;
	overflow: hidden;
}


.dropdown_wrap ul,
.dropdown_wrap .dropselect{
    display: none;
    position: absolute;
        top: 100%;
        left: 0;
        z-index: 1;
    width: 100%;
    margin: 0;
    background-color: #FFF;
    list-style: none;
}

.dropdown_wrap.expand ul{
	display: block;
}

.dropdown_wrap ul a{
	display: inline-block;
	width: 100%;
}

/* ===================== General ===================== */

main#content{
	margin-top: -40px;
	position: relative;
		z-index: 200;
}

.wp-block-group.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.container{
	width: var(--container);
	padding: 0 20px;
	max-width: 100%;
	margin: auto;
}

.wp-block-group.std_copy > p:where(:not(.alignleft):not(.alignright):not(.alignfull)),
.std_copy p{
	line-height: 1.3;
	margin-bottom: 1em;
}

.std_copy li{
	line-height: 1.3;
	margin-bottom: .5em;
}

.std_copy table {
	margin-bottom: 20px;
}

.std_copy table th,
.std_copy table td{
	padding: .5em;
	border: 1px solid;
}


.std_copy ul {
    margin-left: 1em;
    padding-left: 1em;
    list-style-type: disc;
    list-style-position: outside;
}

.wp-block-group.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)).wp-block-list{
	transform: translateX(1em);
}

.std_copy ol {
    list-style-type: decimal;
    list-style-position: inside;
}

.std_copy ul ul,
.std_copy ol ul {
    margin-left: 15px;
    list-style-type: circle;
    list-style-position: inside;
}

.std_copy ol ol,
.std_copy ul ol {
    list-style-type: lower-latin;
    list-style-position: inside;
    margin-left: 15px;
}

.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;
	box-shadow: 0 0 2px 2px rgba(0,0,0,.6);
}

.screen-reader-shortcut:focus {
	top: 6px;
	display: block;
	z-index: 100000;
}

img{
	display: block;
	height: auto;
}

img.aligncenter{
	margin: auto;
}

.sr-only,
.screen-reader-text,
.is-style-sr-only{
	position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
	color: inherit;
}

strong{
	font-family: "futura-pt-bold", sans-serif;
}

em{
	font-style: italic;
}

main > p:empty{
	display: none;
}

.is-style-title_style,
h1.is-style-title_style,
h2.is-style-title_style,
h3.is-style-title_style,
h4.is-style-title_style{
	font-family: var(--heading_font);
	line-height: 1;
	margin-bottom: .2em;
	text-transform: uppercase;
	font-weight: normal;
}

.wp-block-group > h1.is-style-title_style:last-child,
.wp-block-group > h2.is-style-title_style:last-child,
.wp-block-group > h3.is-style-title_style:last-child,
.wp-block-group > h4.is-style-title_style:last-child{
	margin: 0;
}

p{
	margin-bottom: 1em;
	line-height: 1.3;
}

a{
	color: inherit;
}

.reg_links a{
	text-decoration: underline;
}

@media (min-width: 768px){

	.std_links a{
		text-decoration: none;
		border-bottom: 2px solid transparent;
		transition: border-bottom .3s ease-in-out;
	}

	.std_links a:hover{
		border-color: inherit;
	}
}

.tc,
.has-text-align-center{
	text-align: center;
}

.tr,
.has-text-align-right{
	text-align: right;
}

.is-style-cloud,
.ut_card_full.is-style-cloud{
	background-color: var(--wp--preset--color--light-blue-1);
	padding: 80px;
}

.red_scallop .container,
.is-style-cloud .container{
	position: relative;
	overflow: visible;
}

.is-style-cloud .within{
	background-color: #ffffff;
	position: relative;
	z-index: 10;
}

.red_scallop .container::after,
.is-style-cloud .container::after{
	--r: 35px;
	display: inline-block;
	position: absolute;
		top: calc(var(--r) * -.75);
		left: -10px;
		z-index: 1;
	width: calc(100% - (2.5*var(--r)) );
	height: calc(100% - (1.5*var(--r)) );
	padding: calc(1.5*var(--r));
	background: #ffffff;
	content:'';
	aspect-ratio: 1;
	mask: linear-gradient(#000 0 0) no-repeat 50%/calc(100% - 2*var(--r)) calc(100% - 2*var(--r)), radial-gradient(farthest-side,#000 97%,#0000) 0 0/calc(2*var(--r)) calc(2*var(--r)) round;
	pointer-events: none;

}

.red_scallop .inner{
	position: relative;
	z-index: 10;
}

.red_scallop .container::after{
	background-color: var(--wp--preset--color--ut-red);
}

@media (max-width: 767px){

	.red_scallop .container::after{
		--r: 28px;
	}
}

.is-style-plaid{
	background-color: var(--wp--preset--color--cream-1);
	background-image: var(--bknd_yellow_plaid);
	background-size: 80px;
}

.is-style-plaid .wp-block-dbcblocks-full-card-copy{
	background-color: var(--wp--preset--color--cream-1);
}

.wp-block-group{
	padding: 40px 0;
}

@media (max-width: 767px){

	.is-style-cloud,
	.ut_card_full.is-style-cloud{
		padding: 50px 20px;
	}

	.is-style-cloud .container,
	.ut_card_full.is-style-cloud .container{
		padding: 0 40px;
	}
}

@media (max-width: 500px){

	.wp-block-group{
		padding: 40px 10px;
	}
}

.wp-block-group figure + p{
	margin-top: 40px;
}

.wp-block-group p:last-child,
.block-editor-block-list__block .wp-block-group p:nth-last-child(2){
	margin-bottom: 0;
}

.upp_bold,
p.is-style-upper_bold{
	font-family: var(--copy_font);
	text-transform: uppercase;
}

.upp{
	text-transform: uppercase;
}

.overlay{
	position: fixed;
		top: 0;
		left: 0;
		z-index: 550;
	width: 100%;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.5);
	display: flex;
	justify-content: center;
	align-items: center;
}


/* ===================== slider general  ===================== */

.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{position:relative;overflow:hidden;display:block;margin:0;padding:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{position:relative;left:0;top:0;display:block;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}

/* .resp_slider{ */
/*     opacity: 0; */
/*     -webkit-transition: opacity .3s ease-in-out; */
/*             transition: opacity .3s ease-in-out; */
/* } */

.slick-list{
	z-index: 10;
}

.resp_slider.show{
    opacity: 1;
}

.slider_wrap{
	position: relative;
	background-position: center;
}

.slider_wrap .loader{
	top: 50%;
	color: #ffffff;
}

.slick-dotted.slick-slider{
	margin-bottom: 0;
}

.slick-arrow{
	position: absolute;
		top: 50%;
		z-index: 20;
	width: 1em;
	height: 1em;
	overflow: hidden;
	padding: 0;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border: none;
	font-size: 2em;
	text-indent: -9999em;
	cursor: pointer;
	transform: translateY(-50%);
	-webkit-appearance: none;
}

.slick-arrow svg{
	width: 100%;
	height: 100%;
}

/* .slick-track, */
/* .slick-list, */
/* .slick-slider { */
/*     height: 100%; */
/* } */

.slick-slide{
    position: relative;
}

.slick-prev {
    left: 50px;
		background-image: var(--icon_arrow_l);
}

.slick-next{
    right: 50px;
		background-image: var(--icon_arrow_r);
}

.slick-dots {
	display: flex;
	justify-content: center;
	position: absolute;
		bottom: 25px;
		left: 50%;
		z-index: 1;
	width: auto;
	transform: translate(-50%,0%);
}

.slick-dots > div{
	flex: 0 0 auto;
}

.slick-dots li{
	display: inline-block;
}

.slick-dots button{
	width: 1em;
	height: 1em;
	overflow: hidden;
	padding: 0;
	margin: 0 0.3em;
	background-color: #fff;
	border-radius: 100%;
	border: 1px solid #000;
	font-size: 1.5rem;
	text-indent: -9999em;
	cursor: pointer;
	-webkit-appearance: none;
}

.slick-dots .slick-active button{
	background-color: var(--wp--preset--color--ut-red);
}


@media (max-width: 767px){
	
	.slick-dots button{
		font-size: 1.2rem;
	}
}

/* ===================== Menu Item Slider ===================== */

.menu_item_slider{
	position: relative;
	background-image: var(--bknd_dot_pattern);
	background-position: center;
	background-size: 130px;
	padding: 100px 0;
}

.menu_item_slider .slick-slider{
	width: 760px;
	max-width: 100%;
	margin: auto;
}

@media (min-width: 768px){

	.menu_item_slider .slick-slider{
		max-width: 88%;
	}
}

.menu_item_slider .menu_item_slide .copy{
	margin-bottom: 2em;
}

.menu_item_slider .slick-arrow{
	font-size: 3rem;
	top: 38%;
}

.menu_item_slider .slick-prev{
	left: -40px;
}

.menu_item_slider .slick-next{
	right: -40px;
}

.menu_item_slider .slick-list{
	z-index: 10;
}

.menu_item_slider .slick-dots{
	z-index: 20;
	bottom: -10px;
}

@media (max-width: 767px){

	.menu_item_slider .slick-arrow{
		top: calc(44.74vw - 43px);
		font-size: 1.5rem;
	}

	.menu_item_slider .slick-prev{
		left: -20px;
	}

	.menu_item_slider .slick-next{
		right: -20px;
	}

	.menu_item_slider{
		padding: 40px 30px;
	}
}

.menu_item_slider .menu_item_slide{
	position: relative;
}

.menu_item_slider .menu_item_slide .item_img{
	min-height: 620px;
}

@media (max-width: 900px){

	.menu_item_slider .menu_item_slide .item_img{
		min-height: 70vw;
	}
}

/* order widget */

.menu_item_slider .order_pop_btn{
	position: absolute;
		top: 530px;
		right: 60px;
		z-index: 1;
	width: 1em;
	height: 1em;
	overflow: hidden;
	padding: 0;
	background-color: transparent;
	background-image: var(--icon_plus);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border: none;
	font-size: 4rem;
	cursor: pointer;
	-webkit-appearance: none;
}

@media (max-width: 850px){
	
	.menu_item_slider .order_pop_btn{
		right: 10px;
		font-size: 8vw;
		top: calc(48px + 54.88vw);
	}
}

@media (max-width: 767px){
	.menu_item_slider .order_pop_btn{
		top: calc(69.35vw - 43px);
	}
}

.order_popup{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: absolute;
		top: 46%;
		left: 50%;
		z-index: 40;
	width: 600px;
	height: 330px;
	max-width: 100%;
	padding: 40px 20px;
	background-color: var(--wp--preset--color--linen-2);
	border-radius: 20px;
	border: 1px solid #000;
	text-align: center;
	transform: translate(-50%,-50%);
}

.order_popup .loader{
	top: 50%;
	right: 15%;
	color: var(--wp--preset--color--ut-red);
}

.order_popup h3{
	font-size: 3rem;
	color: var(--wp--preset--color--ut-red);
}

.order_popup input{
	width: 20em;
	max-width: 95%;
	padding: 0 .5em;
	box-shadow: none;
	font-size: 1rem;
	line-height: 2;
}

.order_popup .dismiss{
	position: absolute;
		top: 15px;
		right: 15px;
		z-index: 1;
	width: 1em;
	height: 1em;
	overflow: hidden;
	padding: 0;
	background-image: var(--icon_dismiss_red);
	background-size: contain;
	border: none;
	font-size: 2rem;
	cursor: pointer;
	-webkit-appearance: none;
}

.order_popup .dropdown_style.loc_results{
	top: 80%;
	width: auto;
	min-width: 14em;
	max-width: 100%;
	text-align: left;
}

@media (max-width: 767px){

	.order_popup{
		height: 400px;
	}

	.order_popup h3{
		font-size: 2rem;
	}
}

/* ===================== Gravity Forms ===================== */

input, select, textarea{
	width: 100%;
	box-sizing: border-box;
	appearance: none;
	-webkit-appearance: none;
	border: 2px solid var(--wp--preset--color--copy-black);
	box-shadow: 2px 1px 0px 0px var(--wp--preset--color--copy-black);
	border-radius: .5em;
}

textarea{
	padding: 1em;
	font-family: var(--copy_font);
	font-size: 1em;
}

select{
	color: #000000;
}

.gform_wrapper {
	width: 800px;
	max-width: 100%;
	padding-bottom: 50px;
	margin: auto;
}

.gform_wrapper .gform_heading,
.gform_wrapper form{
	width: 1240px;
	max-width: 100%;
	margin: auto;
	padding: 0 20px;
}

@media (min-width: 768px){
	.ginput_complex,
	.gform_fields {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
}

.gform_required_legend{
	text-align: right;
    padding: 0.5em 0;
}

@media (max-width: 767px){

	.gform_required_legend{
		font-size: 1rem;
	}
}

.gform_validation_container {
	display: none;
}

.gfield{
	position: relative;
	width: 100%;
	text-align: left;
}

@media (min-width: 768px){

	.gfield.half_w{
		width: 50%;
	}
}

.gfield,
.ginput_complex > span{
	margin-bottom: 40px;
}

.ginput_complex > span,
.gfield--width-half{
	flex: 0 0 48%;
}

.time .ginput_complex {
	justify-content: flex-start;
}

.time .hour_minute_colon{
	font-size: 2rem;
}

.gfield_time_ampm select{
	padding-right: 3em;
}

.gform_title{
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
}

.gform_hidden{
    display: none;
}

.gform_body input:not([type=submit]),
.gform_body select{
	width: 100%;
	height: auto;
	padding: 0 .5em;
	font-family: var(--copy_font);
	font-size: 1.4rem;
	line-height: 2;
	cursor: pointer;
}

.gform_body select{
	padding-right: 2em;
}

.gform_wrapper .validation_error,
.gfield_description.validation_message{
    margin-top: 2px;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 1.05em;
	color: #bd0000;
    text-transform: uppercase;
}

.gform_confirmation_message{
	text-align: center;
    padding: 40px 0;
    font-size: 25px;
}

.form_submitted .hide_on_submit{
    display: none;
}

.gform_footer{
	position: relative;
	text-align: center;
}

.gform_footer input[type=submit]{
	width: auto;
	opacity: .5;
	pointer-events: none;
}

.gform_footer input[type=submit].undisable{
	opacity: 1;
	pointer-events: auto;
}

form[id^=gform] label{
	font-size: 1.3rem;
}

.is-style-scales_bknd form[id^=gform] label,
.is-style-scales_bknd .gform_required_legend,
.is-style-scales_bknd form[id^=gform] .gform_confirmation_message,
.is-style-scales_bknd form[id^=gform] .screen-reader-text,
.is-style-scales_bknd form[id^=gform] .dbc_datepicker_field .desc,
.is-style-scales_bknd form[id^=gform] .valmsg{
	color: #ffffff;
}

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;
}

.floating_label.unfloat label,
form[id^=gform].floating_labels .unfloat label{
	top: -1em;
	left: 0;
}

form.floating_labels .ginput_complex span[id$=container]{
	position: relative;
}

.floating_label,
.floating_labels .gfield {
	position: relative;
}

.floating_label label,
.floating_labels .gfield:not(.no_float_label) label{
	position: absolute;
    top: .6em;
    left: .4em;
		z-index: 1;
	padding-left: .5em;
	transition: top .3s ease-in-out;
}

.floating_labels .gfield:not(.no_float_label).unfloat label{
	top: -1em;
}

select{
	background-image: var(--icon_dwn_arrow);
	background-repeat: no-repeat;
	background-position: right 1em center;
	background-size: .6em;
}

/* stylized checkmark */
.gfield_checkbox input:checked,
.gfield_checkbox input:not(checked){
    position: absolute;
    left: -99999px;
}

.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{
	display: inline-block;
	position: absolute;
		top: 0;
		left: 0;
	width: 1em;
	height: 1em;
	background-color: #ffffff;
	border: 1px solid #000;
	font-size: 1.5em;
	content:'';
	cursor: pointer;
}

.gfield_checkbox input:checked + label::after{
    position: absolute;
	    top: .1em;
	    left: .1em;
    font-size: 1.8em;
    color: #000;
    line-height: 0.8;
    content:  "\2714"; /* thick check */
    transition: all .2s;
    cursor: pointer;
}

@media (max-width: 767px){
	
	.gfield_checkbox input:checked + label::after{
	    top: -.1em;
	    left: 0em;
	}
}

.gfield_visibility_hidden{
    display: none;
}

.valmsg{
	padding: 1em 0;
	color: inherit;
	text-transform: uppercase;
}

.redblock_validation .valmsg{
	padding: .5em;
	background-color: var(--wp--preset--color--ut-red);
	color: #ffffff;
}

.dbc_datepicker + .valmsg{
	padding: 0;
}

@media (max-width: 767px){
	.valmsg{
		font-size: 1rem;
	}
}

/* ===================== Signup ===================== */

.signup_form_wrapper {
	width: auto;
}

.signup_form_wrapper .gform_required_legend{
	text-align: left;
}

.signup_form {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	max-width: 1260px;
	margin: 30px auto 0;
	--form_gap: 30px;
	gap: var(--form_gap);
}

.signup_form .inner{
	padding: 50px 50px 20px;
}

.signup_form .gform_wrapper{
	width: auto;
}

.signup_form .gform_body{
	flex: 1 1 auto;
}

.signup_form .gform_fields {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: var(--form_gap);
}

.signup_form .gform_fields .gfield{
	margin: 0 0 20px;
	flex: 1 1 auto;
	width: auto;
}

.signup_form .gform_fields .gfield .valmsg{
	position: absolute;
		bottom: -2.5em;
}

.signup_form .gform_footer{
    padding-top: 20px;
}

.signup_form input[type=submit]{
	width: auto;
	padding: .5em 2em;
	background-color: var(--wp--preset--color--light-blue-1);
	font-size: 1.5rem;
}

.signup_form input[type=submit]:hover{
	color: #000000;
}

@media (min-width: 768px){

	.signup_form .gform_fields .gfield{
		flex: 1 1 251px;
	}

	.signup_outer h2 br{
		display: none;
	}
}

.signup_outer {
	background-color: var(--wp--preset--color--cream-2);
	padding: 50px;
}

.signup_outer h2{
	margin: 0 2em;
	background-color: var(--wp--preset--color--ut-red);
	font-size: 3.2rem;
	color: var(--wp--preset--color--cream-1);
	text-align: center;
}

.signup_outer .signup_graphics{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 20px;
}

.signup_form .loader{
	display: inline-block;
	position: static;
	margin: 0 0 0 30px;
	font-size: .3em;
}

.signup_form .opt_in_legal{
	text-align: right;
}

@media (min-width: 768px){

	.signup_form .gform_footer{
			text-align: right;
	}

	.signup_outer .signup_graphics{
		display: grid;
		position: relative;
			z-index: 10;
		height: 60px;
		margin-top: 40px;
		transform: translateY(-221%);
		pointer-events: none;
		grid-template-columns: 1fr 1.8fr 1fr;
		grid-gap: 20px;
		justify-items: center;
	}

	.signup_outer .signup_graphics .fresh_pic{
		order: 1;
	}

	.signup_outer .signup_graphics .food_plate{
		order: 2;
		transform: translateY(-6%);
	}

	.signup_outer .signup_graphics .delicious_pic{
		order: 3;
	}
}

@media (min-width: 768px) and (max-width: 1260px){
	.signup_outer .signup_graphics{
		transform: translateY( calc(60px - 14.43vw) );
 }
}

/* @media (min-width: 768px) and (max-width: 1200px){ */

/* 	.signup_outer .signup_graphics{ */
/* 		scale: .8 */
/* 	} */
/* } */

/* @media (min-width: 768px) and (max-width: 900px){ */

/* 	.signup_outer .signup_graphics{ */
/* 		scale: .5 */
/* 	} */
/* } */

@media (max-width: 767px){
	
	.signup_outer {
		position: relative;
		overflow: hidden;
		padding: 20px;
	}

	.signup_outer::after{
		display: inline-block;
		position: absolute;
			bottom: -2px;
			left: 0;
			z-index: 1;
		width: 100%;
		height: 28vw;
		background-color: var(--wp--preset--color--shoji);
		background-size: 100%;
		content:'';
	}

	.signup_form .inner{
		padding-left: 0;
		padding-right: 0;
	}

	.signup_outer h2 {
		margin: 0 .5em;
		font-size: 2.5rem;
	}

	.signup_outer h2::before, 
	.signup_outer h2::after{
    top: -5%;
    right: calc(100% - 8.1vw);
		font-size: 13vw;
	}

	.signup_outer h2::after{
		right: auto;
    left: calc(100% - 8.1vw);
	}

	.gform_wrapper.signup_form_wrapper .gform_heading,
	.gform_wrapper form.signup_form{
		max-width: 86%;
	}

	.signup_form,
	.signup_form .gform_fields{
		flex-direction: column;
		align-items: normal;
	}

	.signup_outer .signup_graphics{
		position: relative;
			z-index: 10;
		margin-top: 30px;
	}

	.signup_outer .signup_graphics .food_plate{
		width: 150%;
		max-width: none;
	}

	.signup_form .gform_footer{
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.signup_form .opt_in_legal{
		padding: 0 20px;
		text-align: center;
	}

	.signup_form .loader{
		margin: 40px 0 0;
	}
}

@media (max-width: 500px){
	
	.signup_outer h2::before, 
	.signup_outer h2::after{
		top: 19%;
		right: 270px;
		font-size: 13vw;
	}

	.signup_outer h2::after{
		left: 270px;
	}
}

@media (max-width: 450px){
	
	.signup_outer h2::before, 
	.signup_outer h2::after{
		right: 240px;
	}

	.signup_outer h2::after{
		left: 240px;
	}
}

@media (max-width: 360px){
	.signup_outer h2::before, 
	.signup_outer h2::after{
		content: none;
	}
}

/* ===================== CTA ===================== */

button.cta{
	overflow: hidden;
	padding: 0;
	background-color: transparent;
	border: none;
	color: inherit;
	cursor: pointer;
	-webkit-appearance: none;
}

a.cta,
button.cta,
.cta a,
input[type=submit]{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	padding: .2em 1em .1em;
	background-color: var(--wp--preset--color--ut-red);
	border-radius: 12px;
	box-shadow: 2px 1px 0px 0px var(--wp--preset--color--copy-black);
	border: 2px solid var(--wp--preset--color--copy-black);
	font-size: 2.3rem;
	color: #000000;
	line-height: 1;
	letter-spacing: .04em;
	text-align: center;
	text-decoration: none;
	transition: all .3s ease-in-out;
	cursor: pointer;
}

a.cta,
button.cta,
.cta a{
	font-family: var(--heading_font);
	color: #ffffff;
}

a.cta:hover,
button.cta:hover,
.cta a:hover,
input[type=submit]:hover{
	background-color: #ffffff;
	color: var(--wp--preset--color--ut-red);
}

a.cta.style_2,
button.cta.style_2,
.cta a.style_2 {
	background-color: var(--wp--preset--color--cream-1);
	color: var(--wp--preset--color--ut-red);
}

a.cta.style_2:hover,
button.cta.style_2:hover,
.cta a.style_2:hover {
	color: var(--wp--preset--color--cream-1);
	background-color: var(--wp--preset--color--ut-red);
}


.cta_group{
	display: inline-flex;
	align-items: center;
	width: 100%;
	gap: 1em;
}

.tc > .cta_group,
.wp-block-dbcblocks-cta-group.tc .cta_group{
	justify-content: center;
}

.tr > .cta_group,
.wp-block-dbcblocks-cta-group.tr .cta_group{
	justify-content: flex-end;
}

@media (max-width: 767px){

	.cta_group{
		display: inline-flex;
		flex-direction: column;
		align-items: normal;
		width: 340px;
		max-width: 90vw;
	}
}

@media (max-width: 350px){

	a.cta,
	button.cta,
	.cta a,
	input[type=submit]{
		font-size: 1.8rem;
	}
}

/* ===================== Decor styles ===================== */

.red_ital{
	font-family: var(--small_heading_font);
	color: var(--wp--preset--color--ut-red);
	font-weight: bold;
	font-style: italic;
}

.dbl_border,
.dbl_border_2,
.double_border .container{
	position: relative;
}

.dbl_border,
.dbl_border_2{
	padding: 22px;
}

.dbl_border::before,
.dbl_border::after,
.dbl_border_2::before,
.dbl_border_2::after,
.double_border .container::before,
.double_border .container::after{
	display: inline-block;
	position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	width: 100%;
	height: 100%;
	border: 10px solid var(--wp--preset--color--ut-yellow);
	content:'';
	box-sizing: border-box;
	pointer-events: none;
}

.dbl_border::after,
.dbl_border_2::after,
.double_border .container::after{
	top: 15px;
	left: 15px;
	width: calc(100% - 30px);
	height: calc(100% - 30px);
	border: 10px solid var(--wp--preset--color--light-blue-1);
}

.dbl_border_2::before{
	border-color: var(--wp--preset--color--light-blue-1);
}

.dbl_border_2::after{
	border-color: var(--wp--preset--color--cream-1);
}

@media (max-width: 767px){

	.dbl_border::before,
	.dbl_border::after,
	.dbl_border_2::before,
	.dbl_border_2::after,
	.double_border .container::before,
	.double_border .container::after{
		border-width: 5px;
	}

	.dbl_border::after,
	.dbl_border_2::after,
	.double_border .container::after{
		top: 8px;
		left: 8px;
		width: calc(100% - 16px);
		height: calc(100% - 16px);
		border-width: 5px;
	}
}

.heading_stars{
	position: relative;
	display: inline-block;
}

.heading_stars::before,
.heading_stars::after{
	display: inline-block;
	position: absolute;
		top: 50%;
		right: calc(100% + .3em);
		z-index: 1;
	width: 1em;
	height: 1em;
	background-image: var(--dec_hdr_stars_l);
	background-repeat: no-repeat;
	background-size: contain;
	font-size: 1.6em;
	content:'';
	transform: translateY(-50%);
	pointer-events: none;
}

.heading_stars::after{
	background-image: var(--dec_hdr_stars_r);
	right: auto;
	left: calc(100% + .3em);
}

.yellow_checker{
	background-image: var(--bknd_yellow_checker);
	background-position: center;
	background-size: 90px;
}

.blue_checker{
	background-image: var(--bknd_blue_checker);
	background-position: center top;
	background-size: 90px;
}

.blue_stripes{
	background-image: var(--bknd_blue_stripes);
	background-position: center;
	background-size: 510px;
}

.blu_sky{
	background-image: var(--bknd_blu_sky);
	background-position: center;
}

.dots_pattern{
	background-image: var(--bknd_dot_pattern);
	background-position: center;
}

.dots_pattern_2{
	background-image: var(--bknd_dot_pattern_2);
	background-position: center;
	background-size: 140px;
}

@media (max-width: 767px){

	.dots_pattern_2{
		background-size: 100px;
	}
}

.star_bookends{
	display: inline-block;
	position: relative;
}

.star_bookends::before,
.star_bookends::after{
	display: inline-block;
	position: absolute;
		top: 0;
		left: 103%;
		z-index: 1;
	width: 1em;
	height: 1em;
	background-image: var(--dec_hdr_stars_2_r);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	font-size: 1.5em;
	content:'';
	transform: translateY(-40%);
}

.star_bookends::after{
	left: auto;
	right: 103%;
	background-image: var(--dec_hdr_stars_2_l);
}

.label_banner{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	max-width: 90%;
	padding: .4em 1.2em;
	background-image: var(--dec_label_banner);
	background-size: 100% 100%;
	font-family: var(--heading_font);
	font-size: 2.5rem;
	color: var(--wp--preset--color--ut-red);
	font-weight: normal;
	line-height: 1;
	transform: translateY(-58%);
}

.label_banner.lb_yellow{
	background-image: var(--dec_label_banner_yellow);
}

.label_banner.notrans{
	transform: none;
}

@media (max-width: 767px){

	.label_banner{
		font-size: 1.5rem;
	}
}

.plaid_light{
	background-image: var(--bknd_yellow_plaid_light);
	background-position: center;
	background-size: 105px;
}

/* ===================== Header ===================== */

header {
	position: -webkit-sticky;
	position: sticky;
		top: 0;
		z-index: 210;
	width: 100%;
	padding-bottom: 40px;
	background-color: transparent;
	background-image: var(--bknd_awning);
	background-repeat: repeat-x;
	background-position: center bottom;
}

header > .inner{
	background-color: var(--wp--preset--color--ut-red);
	height: 120px;
}

@media (min-width: 768px) and (max-width: 1000px){

	header {
		padding-bottom: 4vw;
	}
}

@media (max-width: 767px){

	header {
		padding-bottom: 7vw;
		background-size: 26vw;
	}
}

header .main_header{
	display: grid;
	align-items: center;
	padding: 15px 30px;
	color: #ffffff;
	grid-template-columns: 1fr 1.3fr 1fr;
}

header .main_header a{
	text-align: center;
}

header .logo {
	position: relative;
	z-index: 100;
}

header .logo img{
	width: 390px;
	display: inline-block;
}

header .main_header .left_nav,
header .main_header .right_nav{
	display: flex;
	align-items: center;
	padding: 0 6%;
	justify-content: space-between;
	gap: 20px;
}

header .main_header .left_nav{
	justify-content: flex-start;
}

@media (min-width: 1581px){
	
	header .main_header .left_nav{
		gap: 100px;
	}
}

@media (min-width: 768px) and (max-width: 1580px){
	header .main_header .left_nav{
		gap: calc(8.45vw - 33px);
	}
}
header .main_header .nav_link{
	font-family: var(--heading_font);
	font-size: 2rem;
	color: #ffffff;
	text-decoration: none;
	background-color: var(--wp--preset--color--ut-red);
}

#menu_toggle{
	position: relative;
		z-index: 100;
	width: 1em;
	height: 1em;
	overflow: hidden;
	padding: 0;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border: none;
	font-size: 3rem;
	cursor: pointer;
	background-image: var(--icon_hamburger);

	-webkit-appearance: none;
}

#menu_toggle.close{
	background-image: var(--icon_dismiss);
	background-size: 70%;
}

#menu_overlay{
	display: none;
	position: absolute;
		top: 120px;
		right: 0;
		z-index: 1;
	width: 300px;
	height: auto;
	padding: 20px;
	opacity: 0;
	background-color: var(--wp--preset--color--ut-red);
	transition: opacity .3s ease-in-out;
}

@media (min-width: 1700px){

	#menu_overlay{
		right: calc(50% - 840px);
	}
}

#menu_overlay::after{
	display: inline-block;
	position: absolute;
		bottom: -24px;
		left: 0;
	width: 100%;
	height: 50px;
	background-image: var(--bknd_awning);
	background-repeat: repeat-x;
	background-position: left bottom;
	background-size: 120px;
	font-size: 1rem;
	content:'';
}

#menu_overlay .inner{
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 100%;
}

#menu_overlay.show{
	display: block;
}

#menu_overlay.reveal{
	opacity: 1;
}

#primary_menu li{
	border-bottom: 2px solid #000;
}

#primary_menu li:last-child{
	border: none;
}

#primary_menu a{
	display: inline-block;
	padding: .5em 0;
	font-family: var(--copy_font);
	font-size: 1.5rem;
	color: #000;
	text-decoration: none;
}

#menu_overlay .social_row{
	margin-top: 20px;
}

#menu_overlay .social_icon{
	font-size: 3rem;
}

@media (min-width: 768px) and (max-width: 1300px){
	header .main_header a.cta{
		font-size: 1.5rem;
	}
}

@media (min-width: 768px) and (max-width: 950px){

	header .main_header .left_nav, header .main_header .right_nav{
		padding: 0 9%;
	}

	header .main_header a.cta{
		font-size: 1rem;
	}

	header .main_header .nav_link{
		font-size: 1.6rem;
	}
}

@media (max-width: 767px){

	#primary_menu a{
		font-size: 1.5rem;
	}

	header > .inner{
		height: auto;
	}

	header .main_header{
		grid-template-columns: 1fr auto 1fr;
		padding: 15px 0 0;
	}

	header .logo img{
		width: 61vw;
	}

	header .main_header .right_nav{
		padding: 0 12%;
		justify-content: center;
	}

	#menu_toggle{
		font-size: 9vw;
	}
}

@media (max-width: 767px) and (max-height: 790px){

	#menu_overlay .res_cta,
	#primary_menu a{
		font-size: 1.4rem;
	}
}

@media (max-width: 767px){
	
	#menu_overlay {
		top: 90px;
	}
}

/* ===================== Social ===================== */

.social_row{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px 0;
	gap: 20px;
}

.social_row br{
	display: none;
}

.social_icon{
	--fill_color: #fff;
	--bknd: #000;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1em;
	height: 1em;
	padding: .1em;
	background-color: var(--bknd);
	border: 2px solid var(--bknd);
	border-radius: 100%;
	font-size: 3rem;
}

/* .social_icon[href*=instagram]{ */
/*     padding: .1em .07em .1em .14em; */
/* } */

.social_icon svg{
	width: 100%;
	height: 100%;
}

.social_icon path,
.social_icon circle{
	fill: var(--fill_color);
}

@media (min-width: 768px){

	.social_icon {
		transition: background-color .3s ease-in-out;
	}

	.social_icon path,
	.social_icon circle{
		transition: fill .3s ease-in-out;
	}

	.social_icon:hover{
		background-color: var(--fill_color);
	}

	.social_icon:hover path,
	.social_icon:hover circle{
		fill: var(--bknd);
	}
}

/* ===================== Footer ===================== */

footer {
	padding: 120px 0 20px;
	background-color: var(--wp--preset--color--shoji);
	color: var(--wp--preset--color--light-blue-1);
}

@media (max-width: 767px){
	footer{
		padding: 40px 0 20px;
	}
}

footer .footer_nav ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

footer .footer_nav li{
	padding: 0 1em;
}

footer .footer_nav a{
	display: inline-block;
	border-bottom: 3px solid transparent;
	text-decoration: none;
	transition: border-color .3s ease-in-out;
	margin-bottom: .5em;
}

footer .footer_nav a:hover{
	border-color: currentColor;
}

footer .footer_nav.top a{
	font-size: 3rem;
	color: var(--wp--preset--color--cream-1);
	font-family: var(--heading_font);
}

footer .footer_nav.legal{
	text-align: center;
	font-size: .9rem;
	margin-bottom: 1em;
}

footer .footer_nav.legal li{
	padding: 0 .5em;
}

footer .social_icon {
	--fill_color: var(--wp--preset--color--shoji);
	--bknd: var(--wp--preset--color--light-blue-1);
}

footer .copyright{
	text-align: center;
  font-size: 1.2rem;
	margin-top: 50px;
}

footer .dbc{
	text-align: center;
	opacity: .5;
	padding-top: 100px;
}

footer .dbc a{
	display: inline-block;
}

@media (max-width: 767px){

	footer .footer_nav ul{
		flex-direction: column;
	}

	footer .footer_nav ul a{
		padding: 0 0 .5em;
		margin: 0;
		font-size: 1.2rem;
	}

	footer .footer_nav.legal a{
		padding: .5em 0;
		font-size: 1rem;
	}
}

/* ===================== Hero ===================== */

.wp-block-acf-hero img{
	width: 100%;
}

/* ===================== Simple Slider ===================== */

.simple_slider .slider_wrap{
	padding: 50px 60px 80px;
}

.simple_slider .single_img{
    display: flex;
    align-items: center;
}

.simple_slider .slick-dots{
	bottom: -40px;
	width: 100%;
	text-align: center;
}

.simple_slider .slick-arrow {
	padding: 0;
}

.simple_slider .slick-prev{
	left: -40px;
}

.simple_slider .slick-next{
	right: -40px;
}

.simple_slider .slick-arrow svg{
	fill: #fff;
}

.simple_slider .slide .slide_img{
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 100%;
}

.simple_slider.social_slider{
	padding: 30px;
}

.simple_slider.social_slider .social_row{
	padding: 0;
}

.simple_slider.social_slider .slick-slide {
	padding: 0 5px;
}

.simple_slider.social_slider .slick-slide img{
	margin: auto;
	border-radius: 12px;
}

.simple_slider.social_slider .top_copy{
	font-family: var(--heading_font);
	font-size: 2.4rem;
	color: var(--wp--preset--color--ut-red);
}

.simple_slider.social_slider .social_row,
.simple_slider.social_slider .top_copy p{
	margin-bottom: .2em;
}

.simple_slider.social_slider .social_row .social_icon{
	--fill_color: #fff;
	--bknd: var(--wp--preset--color--ut-red);
	flex: 0 0 auto;
}

@media (max-width: 767px){

	.simple_slider.social_slider{
		padding: 0;
	}

	.simple_slider .slider_wrap{
		padding: 50px 15px 80px;
	}

	.simple_slider.social_slider .slick-slider{
		left: 50%;
		z-index: 10;
		width: 100vw;
		margin-top: 30px;
		transform: translateX(-50%);
	}

	.simple_slider.social_slider .social_row {
		flex-wrap: wrap;
	}

	.simple_slider.social_slider .social_row{
		gap: 15px;
	}

	.simple_slider.social_slider .social_row .social_icon{
		font-size: 2.5rem;
	}

	.simple_slider.social_slider .social_row,
	.simple_slider.social_slider .top_copy p{
		line-height: 1;
	}

	.simple_slider.social_slider .slick-slide img{
		width: 75vw;
	}
}

@media (max-width: 400px){
	.simple_slider.social_slider .top_copy{
		font-size: 2rem;
	}
}

/* .simple_slider.social_slider .social_row .social_icon:hover{ */
/* 	--bknd: #fff; */
/* } */

/* ===================== Hero Slider ===================== */

/* .resp_slider:not(.slick-initialized) .slide{ */
/* 	position: absolute; */
/* 		top: 0; */
/* 		left: 0; */
/* 		z-index: 1; */
/* 	width: 100%; */
/* } */

.hero_slider .slide_img,
.hero_slider video{
	height: 925px;
}

.hero_slider .slide{
	display: block !important;
	position: relative;
}

.hero_slider .slick-slide{
	height: auto;
}

.hero_slider .slide_img{
	position: relative;
	width: 100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.hero_slider .hero_cta{
	position: absolute;
		bottom: 50px;
		left: 50%;
		z-index: 1;
	transform: translateX(-50%);
}


.hero_slider .slider_controls{
	display: flex;
	position: absolute;
		right: 50px;
		bottom: 50px;
		z-index: 1;
}

.hero_slider .slider_controls button {
	width:48px;
	height:48px;
	overflow: hidden;
	padding: 0;
	background-color: transparent;
	border: none;
	font-size: 2.5rem;
	cursor: pointer;
	-webkit-appearance: none;
}

.hero_slider .slider_controls button + button{
	margin-left: 12px;
}


.hero_slider .slick-arrow{
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: rgba(255, 255, 255, 0.2);
	border-radius: 100%;
	font-size: 2.5rem;
	transform: none;
	padding: 5px 3px 5px 8px;
}


.hero_slider .slider_controls .slider_btn {
	margin-left: 30px;

}

.hero_slider .hero_heading{
	text-transform: uppercase;
	font-size: 7.5rem;
	font-weight: 200;
	line-height: 1;
}

.hero_slider .hero_heading .sub{
	font-size: .4em;
}

@media (min-width: 1500px){
	
	.hero_slider .slide_img,
	.hero_slider video{
		height: calc(100vh - 200px);
	}
}

@media (max-width: 767px){
	
	.hero_slider .hero_heading{
		font-size: 4rem;
	}

	.hero_slider .slide_img,
	.hero_slider video{
		height: calc(100vh - 200px);
	}

	.hero_slider .lt_arrow{
		left: 20px
	}

	.hero_slider .rt_arrow{
		right: 20px
	}
}

@media (max-width: 400px){
	
	.hero_slider .hero_heading{
		font-size: 3rem;
	}
}

.hero_slider .slide video{
	display: block;
	width: 100%;
	object-fit: cover;
}

.video_buttons{
	position: absolute;
		bottom: 50px;
		right: 50px;
		z-index: 10;
	font-size: 2.5rem;
}

.video_buttons button{
	width: 1em;
	height: 1em;
	overflow: hidden;
	padding: 0;
	background-color: transparent;
	background-repeat: no-repeat;
	background-size: contain;
	border: none;
	font-size: 4rem;
	cursor: pointer;
	-webkit-appearance: none;
}

.video_buttons .play_btn,
.slider_controls button.slider_btn{
	background-image: var(--icon_play);
}

.video_buttons .play_btn.pause,
.slider_controls button.slider_btn.pause{
	background-image: var(--icon_pause);
}

@media (max-width: 767px){

	.video_buttons {
		bottom: 20px;
		right: 20px;
	}

	.video_buttons button{
		font-size: 9vw;
	}

	.hero_slider .video_buttons button{
		width: 1.3em;
		height: 1em;
		background-position: center;
		border: none;
		font-size: 2rem;
	}
}


/* ===================== Cards ===================== */

/* borders, bknds */

 .ut_card_full {
	padding: 20px 0;
}

@media (min-width: 768px){
	.ut_card_full .within{
		display: flex;
		align-items: center;
	}
 }

.ut_card_full .card-image {
	flex: 1 1 auto;
	padding: 20px;
}

.ut_card_full .content{
	display: flex;
	flex: 0 0 50%;
	justify-content: center;
	align-items: center;
	/* min-height: 500px; */
	padding: 20px;
	background-repeat: no-repeat;
	background-position: center;
	line-height: 1.3;
	align-self: stretch;
}

.ut_card_full .card-image {
    overflow: hidden
}

.ut_card_full .card-image .image_inner {
    position: relative
}

 .ut_card_full .card-image img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
		object-position: center;
    width: 100%
}

.ut_card_full_group .ut_card_full .mini_slider {
    background-color: transparent
}

.ut_card_full_group .ut_card_full .mini_slider .slick-arrow {
    align-items: center;
    border-radius: 100%;
    bottom: 0;
    display: flex;
    font-size: 3rem;
    justify-content: center;
    padding: 5px;
    top: auto
}

.ut_card_full_group .ut_card_full .mini_slider .lt_arrow {
    left: auto;
    padding: 8px 2px 8px 0;
    right: 1.6em
}

.ut_card_full_group .ut_card_full .mini_slider .rt_arrow {
    padding: 8px 0 8px 2px;
    right: .5em
}

.ut_card_full_group .ut_card_full .mini_slider .mini_slide .inner_img {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: var(--bord_rad);
    min-height: 430px;
    overflow: hidden
}

@media (max-width: 767px){

	.ut_card_full .content{
		padding: 20px 0;
		margin-top: 40px;
	}

	.ut_card_full .card-image {
		padding: 0;
	}
}

@media(min-width: 1000px) {

    .ut_card_full.frontend .within,
    .ut_card_full .within > .block-editor-inner-blocks > .block-editor-block-list__layout{
        display:flex;
        justify-content: flex-start;
    }

    .ut_card_full.center_content.frontend .within,
    .ut_card_full.center_content .within > .block-editor-inner-blocks > .block-editor-block-list__layout{
			justify-content: center;
		}

}

@media(max-width: 1250px) {
    .ut_card_full .cta_group {
        -ms-grid-columns:auto;
        grid-template-columns: auto
    }
}

@media(max-width: 1000px) {

    .ut_card_full .within{
			padding-bottom: 20px;
		}

    /* .ut_card_full .card-image { */
    /*     height:60vw */
    /* } */

    .ut_card_full .card-image .image_inner {
        height: 100%
    }

    /* .ut_card_full .mini_slider .mini_slide .inner_img { */
    /*     height: 60vw */
    /* } */
}

@media (max-width: 767px){

	.ut_card_full_group .ut_card_full.no_full_bknd:not(.center_content):not(.matte_style) .container{
		padding: 0;
	}

	.ut_card_full_group .ut_card_full .content h2{
		--large_font_size: 3rem;
	}
}

.ut_card_full.is-style-black_flowers{
	padding: 0;
	background-position: center;
}

.ut_card_full.is-style-black_flowers .container{
	padding: 0;
	background-color: var(--wp--preset--color--copy-black);
	background-image: var(--bkd_flower_pattern);
	background-position: center;
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
}

.ut_card_full.is-style-black_flowers .content{
	background-image: var(--bkd_black_texture);
	background-size: cover;
}

.ut_card_full.is-style-black_flowers .content p{
	color: #ffffff;
}

@media (min-width: 768px) and (max-width: 1200px){

	.ut_card_full.is-style-black_flowers .content{
		flex: 0 1 70%;
	}
}

@media (min-width: 768px){
	
	.ut_card_full.is-style-black_flowers .content{
		border-left: 2px solid #fff;
		border-right: 2px solid #fff;
	}
}

@media (max-width: 767px){

	.ut_card_full.is-style-black_flowers .container{
		background-size: 200px;
	}

	.ut_card_full.is-style-black_flowers .content{
		min-height: 0;
		padding: 60px 30px;
		margin: 150px 0;
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
	}
}


.ut_card_full_group .ut_card_full.is-style-about_style {
	padding-bottom: 0;
}

.ut_card_full_group .ut_card_full.is-style-about_style .container{
	background-image: var(--bkd_about_border);
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
}

.ut_card_full_group .ut_card_full.is-style-about_style .within{
    min-height: 1000px;
}

.ut_card_full_group .ut_card_full.is-style-about_style .content{
	padding: 20px 100px;
}

@media (max-width: 767px){

	.ut_card_full_group .ut_card_full.is-style-about_style .within{
		min-height: 880px;
		padding: 0 0 130px;
	}

	.ut_card_full_group .ut_card_full.is-style-about_style .container{
		background-image: var(--bkd_about_border_mobile);
	}

	.ut_card_full_group .ut_card_full.is-style-about_style .inner{
		max-width: 70%;
	}

	.ut_card_full_group .ut_card_full.is-style-about_style .content{
		padding: 20px 50px
	}
}

/* ===================== Video Hero ===================== */

.video_wrap {
	position: relative;
}

.video_wrap video{
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.video_wrap .video_overlay_play{
	position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	width: 100%;
	height: 100%;
	overflow: hidden;
	padding: 0;
	border: none;
	cursor: pointer;
	-webkit-appearance: none;
}

.video_wrap .video_overlay_play img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.video_wrap .video_overlay_play::after{
	display: inline-block;
	position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	width: 100%;
	height: 100%;
	background-image: var(--icon_video_hero_play);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 130px;
	font-size: 1rem;
	content:'';
}

@media (max-width: 767px){

	.video_wrap .video_overlay_play::after{
		background-size: 70px;
	}
}

.video_hero {
	overflow: hidden;
	position: relative;
}

/* front page ani */

.video_hero #storefront{
	position: absolute;
		bottom: 0;
		left: 0;
		z-index: 10;
	width: 100vw;
	height: 36vw;
	background-image: var(--dec_storefront_sign_flowers), var(--dec_storefront_flowers), var(--dec_storefront_brick_ground);
	background-repeat: no-repeat, no-repeat, repeat-x;
	background-position: left 2px bottom 56px, right 16px bottom 80px, center bottom;
	pointer-events: none;
}


@media (min-width: 768px){

	.video_hero.storefront {
		min-height: 63vw; 
	}
}

.video_hero.storefront .video_buttons{
	position: absolute;
		right: 13%;
		bottom: 140px;
		z-index: 1;
}

@media (min-width: 768px) and (max-width: 1000px){

	.video_hero.storefront .video_buttons{
		right: 6%;
		bottom: 120px;
	}
}

@media (max-width: 1150px){
	.video_buttons.storefront button{
		font-size: 3rem;
	}
}

.video_hero.storefront .stars{
	position: absolute;
		z-index: 10;
	width: 1em;
	height: 1em;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.video_hero.storefront .star_1{
	top: 15%;
	right: 10%;
	background-image: var(--dec_storefront_stars_r);
	font-size: 4rem;
}

.video_hero.storefront .star_2{
	bottom: 46%;
	left: 7%;
	background-image: var(--dec_storefront_stars_l);
	font-size: 3rem;
}

.video_hero .tetsu_figure{
	position: absolute;
		bottom: 40px;
		left: 0;
		transform: translateX(-350px);
		z-index: 1;
	width: 280px;
	background-image: var(--dec_tetsu_figure);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	aspect-ratio: 1/1.276816;
}

.video_hero .tetsu_figure.move{
	transform: translateX(260px);
	transition: transform 3s ease-in-out;
}

.video_hero .tetsu_figure.move.done{
	transition: none;
}

@media (max-width: 1000px){

	.video_hero #storefront{
		background-size: 29vw, 15vw, 35vw;
		background-position: left 1% bottom 19%, right 1% bottom 21%, center bottom;
	}

	.video_hero .tetsu_figure{
		width: 23vw;
	}

	.video_hero .tetsu_figure.move{
		transform: translateX(20vw);
	}
}

@media (max-width: 767px){

	/* .video_hero .video_wrap{ */
	/* 	padding-bottom: 19vw; */
	/* } */

	.video_hero #storefront{
		background-size: 31vw, 16vw, 42vw;
		background-position: left -10% bottom 23%, right 1% bottom 41%, center bottom;
	}

	.video_hero.storefront .star_1{
		font-size: 3rem;
	}

	.video_hero.storefront .star_2{
		font-size: 2rem;
	}

	.video_hero.storefront .video_buttons{
		bottom: 25vw;
		right: 3%;
	}

	.video_hero .tetsu_figure{
		width: 22vw;
		bottom: 20px;
	}

	.video_hero .tetsu_figure.move{
		transform: translateX(15vw);
	}
}

@media (prefers-reduced-motion: reduce){

	.video_hero .tetsu_figure{
		transform: translateX(260px);
		transition: none;
	}

	@media (max-width: 1000px){

		.video_hero .tetsu_figure{
			transform: translateX(20vw);
		}
	}

	@media (max-width: 767px){

		.video_hero .tetsu_figure{
			transform: translateX(15vw);
		}
	}
}

/* ===================== Locations Detail ===================== */

.location_detail {
}

.location_detail .loc_copy{
	width: 680px;
	max-width: 100%;
	margin: 0 auto 50px;
}

.location_detail .top_content{
	padding: 200px 20px 90px;
}

.location_detail .loc_info{
	max-width: 100%;
	width: 770px;
	margin: auto;
	background-color: #ffffff;
	border-radius: 30px;
	box-shadow: 5px 4px 0px 0px var(--wp--preset--color--copy-black);
	border: 2px solid var(--wp--preset--color--copy-black);
	padding: 50px;
}

.location_detail .mappin{
	margin: -170px auto 20px;
}

.location_detail .loc_info h1{
	text-align: center;
	font-size: 5rem;
}


.location_detail .add_etc{
	display: flex;
	flex-direction: column;
	gap: 1em;
}

.location_detail .today_hours{
	color: var(--wp--preset--color--ut-red);
	font-weight: bold;
}

@media (min-width: 768px){

	.location_detail .address,
	.location_detail .phone{
		color: var(--wp--preset--color--ut-red);
		font-weight: bold;
	}
}

.location_detail .hours{
	line-height: 1.3;
}

.location_detail .cta_group{
	display: flex;
	flex-direction: column;
	align-items: stretch;
	max-width: 100%;
}

.location_detail .address_ctas{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
}

@media (min-width: 768px){

	.location_detail .address_ctas{
		flex-direction: row;
		align-items: flex-start;
	}

	.location_detail .address_ctas > *{
		flex: 1 1 50%;
	}
}

@media (max-width: 767px){

	.location_detail .top_content{
		padding: 33vw 20px 90px;
	}

	.location_detail .mappin{
		margin: -90px auto 20px;
		width: 100px;
	}

	.location_detail .loc_info{
		padding: 30px;
	}

	.location_detail .loc_info h1{
		font-size: 3rem;
	}

	.location_detail .address_ctas{
		align-items: flex-start;
	}
}

.loc_catering {
	text-align: center;
	padding: 40px;
	background-color: var(--wp--preset--color--linen-2);
}

.loc_catering .catering_copy{
	margin-top: 50px;
	text-align: left;
}

.loc_catering h2{
	font-size: 4rem;
}

.loc_catering .catering_hero .hero{
	width: 100%;
}

.loc_catering .cater_bag{
	position: absolute;
		right: -60px;
		bottom: -40px;
		z-index: 10;
}

.loc_catering .cta_row{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 20px;
	gap: 20px;
}

@media (min-width: 768px){

	.loc_catering .container{
		padding: 40px 8%;
		border: 5px solid var(--wp--preset--color--cream-1);
	}
}

@media (max-width: 767px){

	.loc_catering .container{
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.loc_catering {
		padding: 0;
	}

	.loc_catering h2{
		font-size: 3rem;
	}

	.loc_catering .cater_bag{
		right: 0;
		bottom: -36px;
		width: 130px;
	}

	.loc_catering .label_banner{
		margin-bottom: 30px;
	}

	.loc_catering .catering_copy,
	.loc_catering .cta_row{
		width: 500px;
		max-width: 100%;
		padding: 0 20px;
		margin: 50px auto;
	}

	.loc_catering .cta_row{
		flex-direction: column;
		align-items: stretch;
	}
}

/* ===================== locations grid block  ===================== */

.ut_card_full_group .ut_card_full.locations_title_card{
	padding: 0;
}

.wp-block-group.locations_group_block{
	padding-bottom: 0;
}

.locations_grid {
	padding-top: 50px;
	background-color: var(--wp--preset--color--linen-2);
}

.locations_grid .container{
	width: 1250px;
}

.locations_grid h2{
	font-size: 3rem;
	text-transform: none;
}

.locations_grid .loc_finder_wrap{
	width: 890px;
	margin: 50px auto 100px;
}

.locations_grid .loc_finder{
	display: flex;
	align-items: center;
	margin-bottom: 30px;
	gap: 10px;
}

.locations_grid .loc_finder .pin_icon{
	flex: 0 1 150px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.locations_grid .loc_finder .pin_icon img{
	width: 80px;
}

.locations_grid .loc_finder .search_block{
	flex: 1 1 auto;
}

.locations_grid .loc_finder .search_block h2{
	text-align: left;
}

.locations_grid .loc_finder #loc_search{
	width: 540px;
}

.locations_grid .browse_tabs{
	margin-bottom: 100px;
}

.locations_grid .region_nav{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

.locations_grid .region_nav button{
	overflow: hidden;
	padding: .2em .5em;
	background-color: #ffffff;
	border-radius: 20px;
	border: 1px solid #000;
	font-family: var(--heading_font);
	font-size: 1.8rem;
	color: var(--wp--preset--color--ut-red);
	text-transform: uppercase;
	transition: all .3s ease-in-out;
	cursor: pointer;
	-webkit-appearance: none;
}

.locations_grid .region_nav button:hover,
.locations_grid .region_nav button.active{
	color: #ffffff;
	background-color: var(--wp--preset--color--ut-red);
}

.loc_grid{
	display: grid;
	padding-bottom: 100px;
	grid-gap: 70px;
	grid-template-columns: repeat( auto-fill, minmax(300px, 1fr) );
}

.loc_grid .loc_block{
	width: 100%;
	color: var(--wp--preset--color--copy-black);
	font-size: 1.2rem;
}

.loc_grid .loc_block .info{
	display: flex;
	line-height: 1.3;
	flex-direction: column;
	padding: 30px;
	font-size: 1em;
	border-radius: 20px;
	border: 1px solid #000;
	background-color: #ffffff;
}

.loc_grid .loc_block .address_phone{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-bottom: 20px;
	gap: 20px;
}

.loc_grid .loc_block .hours{
	margin-bottom: 30px;
	color: var(--wp--preset--color--ut-red);
	font-weight: bold;
}

.loc_grid .loc_block .additional_hours{
	margin-top: 20px;
}

.loc_grid .loc_block .line{
	display: inline-block;
	margin-bottom: .5em;
}

.loc_grid h4{
	width: 100%;
	max-width: none;
	margin-bottom: 20px;
	font-size: 2.5rem;
	text-align: center;
	text-transform: uppercase;
}

.loc_grid h4.longtitle{
	font-size: 1.9rem;
}

.loc_grid .cta_group{
	display: grid;
	width: auto;
	margin: auto 0 0;
	grid-gap: 20px;
}

.loc_grid .cta{
	padding: .2em;
	font-size: 1.5em;
}

.loc_grid .bicycle_blurb{
	align-self: center;
}

@media (min-width: 768px){

	.loc_grid h4{
		min-height: 72px; 
	}

	.loc_grid .bicycle_blurb{
		grid-column: span 2;
	}
}

@media (max-width: 1180px){

	.loc_grid h4{
		font-size: 2rem;
	}

	.loc_grid h4.longtitle{
		font-size: 1.6rem;
	}
}

@media (max-width: 900px){

	.locations_grid .loc_finder{
		flex-direction: column;
	}

	.locations_grid .loc_finder .search_block h2{
		text-align: center;
	}

	.locations_grid .loc_finder #loc_search{
		width: 78vw;
		margin: 0 auto;
	}
}


@media (max-width: 768px){

	.loc_grid {
		margin-bottom: 0;
		grid-gap: 20px;
	}

	.loc_grid .loc_block{
		flex-direction: column;
		align-items: center;
		max-width: 400px;
		margin: 0 auto 60px;
	}

	.loc_grid .loc_block .thumb,
	.loc_grid .loc_block .thumb img,
 	.loc_grid .loc_block .info{
		width: 100%;
	}

	.loc_grid h4{
		min-height: 58px; 
	}

	.loc_grid .loc_block:last-child{
		margin-bottom: 20px;
	}

	.loc_grid .loc_block .info{
		padding: 20px;
	}

	.loc_grid .cta_group{
		grid-template-columns: 1fr;
	}
}


.locations_grid #loc_grid_map.enabled {
	height: 600px;
}

/* gallery */
.wp-block-gallery{
	justify-content: center;
	padding: 0 20px;
}

.wp-block-gallery.is-layout-flex{
	display: grid;
	grid-template-columns: repeat( 6, 1fr );
	grid-gap: 20px;
}


.wp-block-gallery figure{
	aspect-ratio: 1/1;
}

.wp-block-gallery figure img{
	width: 100%;
	height: 100%;
}

@media (max-width: 1520px){

	.wp-block-gallery.is-layout-flex{
		grid-template-columns: repeat( 3, 1fr );
		max-width: 800px;
	}
}

@media (max-width: 767px){

	.wp-block-gallery.is-layout-flex{
		grid-template-columns: repeat( 2, 1fr );
	}
}

/* ===================== Find Locations ===================== */

.find_locations {
	position: relative;
	overflow: hidden;
	padding: 60px 30px 220px;
	background-color: var(--wp--preset--color--light-blue-2);
	background-image: var(--bknd_sunny_day);
	background-position: center top;
	background-size: auto 100%;
	background-repeat: repeat-x;
}

.find_locations .inner{
	display: flex;
	justify-content: space-between;
	padding: 50px;
	background-color: #ffffff;
	border-radius: 20px;
	box-shadow: 5px 5px 0px 0px var(--wp--preset--color--copy-black);
	gap: 30px;
}

.find_locations .find_loc{
	flex: 0 1 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 0 20px;
}

.find_locations .find_loc .within{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 390px;
	max-width: 100%;
	margin: auto;
}

.find_locations .copy{
	flex: 0 1 40%;
}

@media (min-width: 768px) and (max-width: 1100px){

	.find_locations .copy{
		flex: 0 1 38%;
	}
}

.find_locations h2{
	width: 320px;
}

@media (min-width: 768px){

	.find_locations h2{
		margin-top: -80px;
		margin-bottom: 30px;
	}
}

.find_locations .cta_mobile{
    text-align: center;
    margin: 30px 0;
}

.find_locations .tetsu_bicycle{
	--scale: .7;
	position: absolute;
		bottom: 20px;
		left: 0;
		z-index: 1;
	transform: translate(-100vw, 0px);
	width: calc(var(--scale) * 405.32px);
	height: auto;
	overflow: hidden;
	aspect-ratio: 1 / 1.260763;
	pointer-events: none;
}

.find_locations .tetsu_bicycle.complete{
	left: 50.7%;
	transform: translateX(-50%);
}

@media (prefers-reduced-motion: reduce){

	.find_locations .tetsu_bicycle{
		left: 50%;
		transform: translateX(-50%);
	}
}

.find_locations .tetsu_bicycle img{
	max-width: none;
	height: 100%;
}

@media (max-width: 1200px){
	.find_locations .find_loc .within{
		width: 34vw;
	}
}

.find_locations .mobile_tetsu{
	margin: -37vw auto 0;
}

@media (min-width: 768px){
	
	.find_locations .mobile_tetsu{
		display: none;
	}
}

@media (max-width: 767px){

	.find_locations{
		padding: 24vw 0 0;
		background-size: auto 90%;
	}

	.find_locations .tetsu_bicycle{
		bottom: 132px;
	}

	.find_locations .inner{
		flex-direction: column;
		padding: 50px 20px 260px;
	}

	.find_locations h2{
		width: 290px;
		height: 25vw;
		max-width: 90%;
		transform: translateY(-126%);
	}

	.find_locations .find_loc .within{
		width: 100%;
	}

	.find_locations .cta_mobile{
		margin: 150px 0 30px;
	}
}

@media (min-width: 500px) and (max-width: 767px){

	.find_locations h2{
		transform: translateY(-126px);
	}
}

/* ===================== Loc search partial ===================== */

.loc_search_block {
	width: 320px;
	max-width: 100%;
}

.loc_search_block h2{
	font-size: 1.8rem;
}

#loc_search .loader{
	top: 20px;
	right: -35px;
	font-size: .3em;
	color: var(--wp--preset--color--ut-red);
}

#loc_search.floating_label label{
	top: .6em;
}

#loc_search.floating_label.unfloat label{
	top: -1.2em;
}

#loc_search input{
	width: calc(100% - 4em);
	padding: 0 1em;
	box-shadow: none;
	border: none;
	font-size: 1rem;
	line-height: 2.3;
}

#loc_search .input_row{
	padding: 2px 4px;
	margin-top: 20px;
	background-color: #ffffff;
	background-image: var(--icon_mag_glass);
	background-repeat: no-repeat;
	background-position: right 5px center;
	background-size: auto 83%;
	border-radius: .7em;
	box-shadow: 2px 1px 0px 0px var(--wp--preset--color--copy-black);
	border: 2px solid var(--wp--preset--color--copy-black);
}

@media (max-width: 767px){

	.loc_search_block h2{
		text-align: right;
		font-size: 1.3rem;
	}

	#loc_search{
		margin: 0 0 0 auto;
	}
}

@media (max-width: 370px){

	#loc_search.floating_label label{
		top: .8em;
		font-size: 1rem;
	}
}

/* ===================== About Page ===================== */

.about {
	padding: 187px 80px 180px;
}

.about .container{
	position: relative;
}

.about .desk_copy{
	min-height: 1130px;
	padding: 40px;
	background-color: #ffffff;
	border: 5px solid var(--wp--preset--color--ut-yellow);
}

.about .copy .hdr{
	display: inline;
	max-width: 600px;
	margin-bottom: 30px;
}

.about .angled_gallery img{
	width: 100%;
	aspect-ratio: 1/1;
	object-fit: cover;
}

.about .angled_gallery{
	display: flex;
	flex-direction: column;
	position: absolute;
		top: -38px;
		left: 0;
		z-index: 10;
	width: 34%;
	padding: 20px;
	background-color: white;
	box-shadow: 5px 8px 0 0 #cdcac5;
	transform: rotate(-7deg);
	gap: 20px;
}

.about .angled_shape{
	width: 42%;
	height: 1000px;
	float: left;
	shape-outside: polygon(0 0, 73% 0, 100% 100%, 0% 100%);
}

.about .tetsu_figure{
	position: absolute;
		bottom: 0;
		left: 0;
		z-index: 10;
	transform: translateY(44%);
	pointer-events: none;
}

.about .mobile_copy_block .copy{
	position: relative;
	background-color: #ffffff;
	padding: 10px;
	margin: 70px 0;
}

.about .mobile_copy_block .copy h1{
	margin-bottom: 1em;
	text-align: center;
}

.about .mobile_copy{
	width: 430px;
	padding-bottom: 150px;
}

.about .photo_tilt{
	box-shadow: 5px 8px 0 0 #cdcac5;
	padding: 15px;
	transform: rotate(-3deg);
	background-color: #ffffff;
	aspect-ratio: 1/1;
}

.about .mobile_copy_block .copy,
.about .mobile_copy_block .copy::after{
	border: 4px solid var(--wp--preset--color--ut-yellow);
}

.about .mobile_copy_block:nth-child(2n) .photo_tilt{
	transform: rotate(2deg);
}

.about .mobile_copy_block:nth-child(2n) .photo_tilt,
.about .mobile_copy_block:nth-child(3n) .photo_tilt{
	position: relative;
}

.about .mobile_copy_block:nth-child(2n) .photo_tilt::after,
.about .mobile_copy_block:nth-child(3n) .photo_tilt::after{
	display: inline-block;
	position: absolute;
		z-index: 1;
	width: 1em;
	height: 1em;
	background-image: var(--dec_star_pair_1);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	font-size: 5rem;
	content:'';
}

.about .mobile_copy_block:nth-child(2n) .photo_tilt::after{
	top: -20px;
	left: 0;
}

.about .mobile_copy_block:nth-child(3n) .photo_tilt::after{
	right: 0;
	bottom: -20px;
	background-image: var(--dec_star_pair_2);
}


.about .photo_tilt img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.about .desk_copy::after,
.about .mobile_copy_block .copy::after{
	content:'';
	display: inline-block;
	position: absolute;
	top: -15px;
	left: -15px;
	z-index: 1;
	width: calc(100% + 20px);
	height: calc(100% + 20px);
	border: 5px solid var(--wp--preset--color--ut-yellow);
	font-size: 1rem;
}

@media (min-width: 901px){
	.about .mobile_copy,
	.about .about_hdr_mobile{
		display: none !important;
	}
}

@media (max-width: 900px){
	.about .desk_copy,
	.about .about_hdr_desk{
		display: none !important;
	}

	.about .copy .hdr{
		max-width: 100%;
	}

	.about{
		padding-left: 20px;
		padding-right: 20px;
	}

	.about .tetsu_figure{
		left: 50%;
		transform: translate(-50%,44%);
	}
}

@media (min-width: 901px) and (max-width: 1275px){

	.about .copy .hdr{
		width: calc(47.62vw - 19px);
	}

	.about .angled_shape{
		width: calc(35.09vw - 16px);
	}
}

@media (max-width: 500px){
	
	.about .mobile_copy{
		padding-bottom: 27vw;
	}
}

/* ===================== Careers ===================== */

.careers {
	padding-top: 115px;
}

.careers .container{
	background-color: #ffffff;
	border: 10px solid var(--wp--preset--color--light-blue-1);
	width: 1110px;
	padding: 50px 30px;
	margin-bottom: 90px;
	max-width: calc(100% - 40px);
}

.careers .hero {
	margin-bottom: 40px;
}

.careers .hero img{
	width: 100%;
}

.careers h1{
	margin-bottom: 0;
	font-size: 5.3rem;
	text-align: center;
}

.careers .main_copy{
    margin: 20px 0 60px;
}

.careers .main_copy p:has(.cta){
	margin-top: 1em;
}

.careers .career_blocks{
	display: grid;
	grid-template-columns: repeat( auto-fill, minmax(300px, 1fr) );
	grid-gap: 20px;
}

.careers .career_block{
	border: 10px solid var(--wp--preset--color--light-blue-1);
	padding: 50px 20px;
}

.careers .career_block h2,
.careers .career_block h3{
	font-family: var(--heading_font);
	color: var(--wp--preset--color--ut-red);
	text-transform: uppercase;
	font-size: 2.5rem;
}

.careers .testimonial{
	display: flex;
	padding: 60px 20px 0;
	color: var(--wp--preset--color--ut-red);
	font-weight: bold;
	gap: 40px;
}

.careers .footer_copy{
	padding: 50px 0;
}

@media (min-width: 768px){

	.careers .testimonial{
		align-items: center;
	}

	.careers .testimonial_copy{
		flex: 1 1 auto;
		position: relative;
	}

	.careers .testimonial_copy::before{
		display: inline-block;
		position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
		width: 1em;
		height: 1em;
		background-image: var(--dec_single_star);
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		font-size: 2rem;
		content:'';
		transform: translateY(-150%);
	}

	.careers .testimonial_img{
		flex: 0 0 270px;
	}

	.careers .testimonial_img img{
		width: 100%;
	}
}

@media (max-width: 767px){

	.careers h1{
		font-size: 3rem;
	}

	.careers .testimonial{
		flex-direction: column;
		padding-left: 0;
		padding-right: 0;
	}

	.careers .testimonial_img{
		position: relative;
	}

	.careers .testimonial_img::before{
		display: inline-block;
		position: absolute;
			top: 0;
			right: 0;
			z-index: 1;
		width: 1em;
		height: 1em;
		background-image: var(--dec_single_star);
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		font-size: 2rem;
		content:'';
		transform: translateY(-150%);
	}
}

/* ===================== Rewards ===================== */

.rewards {
	padding: 100px 0 0;
}

.rewards .container{
	position: relative;
	max-width: calc(100% - 40px);
	padding: 20px;
	margin-bottom: -60px;
	background-color: #ffffff;
	border: 10px solid #fff;
}

.rewards .container::after{
	display: inline-block;
	position: absolute;
		top: 0px;
		left: 0px;
		z-index: 1;
	width: calc(100% - 20px);
	height: calc(100% - 20px);
	border: 10px solid var(--wp--preset--color--cream-1);
	content:'';
	pointer-events: none;
}

.rewards .inner{
	border: 10px solid var(--wp--preset--color--light-blue-1);
	padding-left: 20px;
	padding-right: 20px;
}

.rewards .inner h1{
	margin-bottom: 40px;
}

.rewards .inner .top_copy{
	width: 880px;
	max-width: 100%;
	margin: auto;
}

.rewards .signup_form{
	max-width: none;
}

.signup_outer.rewards .graphics_wrap{
	position: relative;
	z-index: 10;
	width: 100%;
}

@media (min-width: 768px){
	.signup_outer.rewards .signup_graphics{
		align-items: flex-end;
		width: 1030px;
		height: auto;
		max-width: 100%;
		margin: auto;
		transform: translateY(-9%);
		transform: none;
	}
}

.signup_outer.rewards .graphics_wrap::after{
	content:'';
	display: inline-block;
	position: absolute;
		bottom: 0;
		left: 0;
		z-index: -1;
	width: 100%;
	background-color: var(--wp--preset--color--shoji);
	height: 50%;
}

@media (max-width: 767px){
	
	.signup_outer.rewards .graphics_wrap{
		padding: 60px 0 80px;
	}

	.signup_outer.rewards .signup_graphics {
		gap: 50px;
	}

	.signup_outer.rewards .signup_graphics .food_plate{
		order: 1;
	}

	.signup_outer.rewards .signup_graphics .fresh_pic{
		order: 2;
	}

	.signup_outer.rewards .signup_graphics .delicious_pic{
		order: 3;
	}
}

/* ===================== Food Menu ===================== */

.menu_landing_search{
	position: relative;
		z-index: 100;
	width: 360px;
	max-width: 97%;
	padding-bottom: 100px;
	margin: auto;
}

.menu_landing_search #loc_search{
	margin: auto;
}

@media (max-width: 767px){

	.menu_landing_search {
		padding: 50px 0 40px;
	}
}

.foodmenu {
	background-color: var(--wp--preset--color--linen-2);
	padding-bottom: 50px;
}

.foodmenu .menu_hero_ani video{
	width: 100%;
}

.foodmenu .menu_hero_ani .video_buttons{
	top: 40vw;
	right: 10px;
	bottom: auto;
	left: auto;
}

.foodmenu .nav_container{
	width: 1180px;
}

.foodmenu .nav_search{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 60px;
}

.foodmenu .menu_area{
	position: relative;
		z-index: 1;
	padding-top: 30px;
	margin-top: 0;
}

.foodmenu h1{
	font-size: 5rem;
	margin-bottom: 40px;
}

.foodmenu .cat_hdr{
	font-size: 4.3rem;
}

.foodmenu .menu_nav > button{
	font-size: 3rem;
	background-image: var(--icon_dwn_wedge);
	padding-right: 1em;
	background-size: .6em;
	background-position: right center;
	background-repeat: no-repeat;
}

.dropdown_style.loc_results{
	position: absolute;
		z-index: 10;
	width: 100%;
}

.loc_results.no_res{
	position: absolute;
		z-index: 10;
	width: 100%;
	padding: 1em 0;
}

.dropdown_style ul,
.foodmenu .menu_nav ul{
	border-radius: 20px;
	font-size: 1.5rem;
	padding: 20px;
	background-color: #ffffff;
}

.dropdown_style ul a,
.foodmenu .menu_nav ul a{
	text-decoration: none;
}

.dropdown_style ul li + li,
.foodmenu .menu_nav li + li{
	border-top: 2px solid #000;
	margin-top: .5em;
}

.dropdown_style ul li a{
	display: inline-block;
}

.dropdown_style ul li + li a,
.foodmenu .menu_nav li + li a{
	padding-top: .5em;
}

.dropdown_style ul li.with_dist a{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.dropdown_style .dist{
	font-size: .7em;
}

.foodmenu .video_wrap{
	position: relative;
	margin-bottom: 70px;
}

.foodmenu .item_grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 20px;
}

@media (max-width: 800px){
	.foodmenu .item_grid{
		grid-template-columns: 1fr;
	}
}

.foodmenu .section{
	margin-bottom: 50px;
}

.foodmenu .sec_desc{
	margin-bottom: 50px;
	text-align: center;
}

.foodmenu .menu_item {
	text-align: center;
	margin-bottom: 50px;
}

.foodmenu h3{
	position: relative;
		z-index: 10;
}

.foodmenu .menu_item .desc{
	text-align: left;
}

.foodmenu .item_img img{
	width: 100%;
}

@media (min-width: 768px){

	.foodmenu .menu_area{
		margin-top: -60px;
	}

	.foodmenu h2{
		text-align: center;
	}

	.foodmenu .menu_item .desc{
		margin-top: -1em;
	}
}

@media (max-width: 767px){

	.foodmenu .nav_search{
		flex-direction: column;
		align-items: center;
	}

	.foodmenu .nav_search .loc_search_block{
		align-self: flex-end;
	}

	.foodmenu .nav_search .loc_search_block h2{
		text-align: right;
	}

	.foodmenu .cat_hdr{
		font-size: 3.2rem;
	}

	.foodmenu .nav_search .menu_nav{
		order: 99;
		margin-top: 60px;
	}

	.foodmenu h1{
		font-size: 3rem;
	}
}

.foodmenu .item_img::before,
.foodmenu .item_img::after{
	border-width: 7px;
}

.foodmenu .item_img::after{
	top: 7px;
	left: 7px;
	width: calc(100% - 14px);
	height: calc(100% - 14px);
	border-width: 7px;
	border-color: #fff;
}

.foodmenu:not(.catering_menu) .item_img{
	padding: 14px;
}

.foodmenu:not(.catering_menu) .item_img .inner{
	border: 7px solid var(--wp--preset--color--cream-1);
}

/* ===================== Location Select ===================== */

.locselect{
	display: flex;
	justify-content: center;
	position: relative;
		z-index: 100;
	padding: 0px 0 100px;
}

.locselect h2{
	padding-right: 1em;
	background-image: var(--icon_dwn_wedge);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: .6em;
	font-family: var(--heading_font);
	font-size: 3rem;
	color: var(--wp--preset--color--ut-red);
	text-transform: uppercase;
}

/* ===================== Specials ===================== */

.specials {
	overflow: hidden;
}

.specials .menu_landing_search .loc_results{
	position: static;
}

.specials .specials_heading{
	padding: 100px 30px 80px;
}

.specials .specials_heading h1{
	margin-bottom: 30px;
	font-size: 5.3rem;
	text-align: center;
}

.specials .specials_heading .inner{
	position: relative;
	width: 710px;
	max-width: 100%;
	padding: 30px 40px;
	margin: auto;
	background-color: var(--wp--preset--color--linen-2);
}

.specials .specials_heading .inner .copy {
	line-height: 1.3;
}

.specials .specials_heading .inner .copy .label_banner{
	padding: .3em 1.5em;
}

.specials .specials_heading .inner .specials_tetsu{
	position: absolute;
		right: 0;
		bottom: 0;
		z-index: 1;
	transform: translate(90%, 32%);
}

.specials .loc_search_block h2{
	text-align: center;
}

/* ---- */

.specials .specials_items{
	background-color: var(--wp--preset--color--cream-1);
	padding: 100px 0;
}

.specials .specials_items h2.loc_heading{
	font-size: 4.3rem;
}

.specials .items{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 20px;
}

.specials .is-style-cloud {
	padding: 10px;
	background-color: transparent;
}

.specials .is-style-cloud .container::after{
	top: calc(var(--r) * -0.4);
	height: calc(94% - (1.5 * var(--r)));
}

@media (max-width: 1000px){

	.specials .is-style-cloud .container::after{
		--r: 26px;
	}
}

.specials .nav_container{
	margin-bottom: 80px;
}

@media (min-width: 768px){

	.specials .nav_search{
		display: flex;
		justify-content: flex-end;
	}
}

.specials .specials_item h3{
	position: relative;
		z-index: 10;
}

.specials .specials_item .container{
	width: auto;
	padding: 10px;
}

.specials .specials_item .item_img img{
	position: relative;
		z-index: 10;
	width: 100%;
	height: 100%;
	border: 7px solid var(--wp--preset--color--ut-yellow);
	object-fit: cover;
}


@media (max-width: 1000px){

	.specials .specials_heading{
		padding: 80px 30px 150px;
	}

	.specials .specials_heading .inner{
		padding: 30px 20px;
	}

	.specials .specials_items{
		padding-top: 170px;
	}

	.specials .specials_items h2.loc_heading{
		margin: 0 1.5em 50px;
	}

	.specials .specials_heading .inner .specials_tetsu{
		transform: translate(32px, 83%);
    width: 55vw;
    max-width: 266px;
	}
}

@media (max-width: 800px){

	.specials .specials_items h2.loc_heading{
		font-size: 3.3rem;
	}

	.specials .specials_heading h1{
		font-size: 3rem;
	}

	.specials .items{
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px){

	.specials .nav_search{
		display: flex;
		justify-content: flex-end;
	}

	.specials .loc_search_block h2{
		text-align: right;
	}

	.specials .specials_items{
		padding: 140px 40px;
	}

	.specials .specials_item h3{
		font-size: 2rem;
	}
}

@media (max-width: 500px){

	.specials .specials_items{
		padding: 32vw 0 100px;
	}
}

.specials .bottom_cta_row{
	margin-top: 100px;
}

/* ===================== Catering ===================== */

.foodmenu.catering_menu{
	background-color: var(--wp--preset--color--cream-1);
}

.foodmenu .catering_header{
	position: relative;
	overflow: hidden;
	padding: 100px 0 0;
	text-align: center;
}

.foodmenu .hero_wrap{
	width: 1270px;
	max-width: 90%;
	margin: auto;
}

.foodmenu .catering_hero{
	width: 100%;
}

.foodmenu .catering_header h1{
	position: relative;
		z-index: 10;
	margin-top: -.6em;
}

.foodmenu .catering_header .subheading{
	padding-left: 3em;
	padding-right: 3em;
}

.foodmenu .catering_header_copy{
	background-color: var(--wp--preset--color--cream-1);
	margin-top: -70px;
}

.foodmenu .catering_header_copy .inner{
	position: relative;
	width: 680px;
	max-width: 100%;
	padding: 70px 40px 50px;
	margin: auto;
}

.foodmenu .catering_header .cater_bag{
	position: absolute;
		top: 0;
		right: 0;
		z-index: 1;
	width: 310px;
	transform: translate(100%,-70%);
}

@media (max-width: 767px){

	.foodmenu .catering_header{
		padding-top: 80px;
	}

	.foodmenu .catering_header_copy .inner{
		text-align: left;
	}

	.foodmenu .catering_header .cater_bag{
		width: 27vw;
		transform: translate(0,-100%);
	}
}

.foodmenu .menu_area .menu_title{
	font-size: 4rem;
	margin-bottom: 1em;
}

.foodmenu.catering_menu .section + .section{
	position: relative;
	padding-top: 50px;
}

.foodmenu.catering_menu .section + .section::after{
	display: inline-block;
	position: absolute;
		top: 0;
		left: 50%;
		z-index: 1;
	width: 90%;
	height: 4px;
	background-color: #ffffff;
	content:'';
	transform: translateX(-50%);
}

@media (max-width: 767px){

	.foodmenu.catering_menu .menu_area .menu_title{
		font-size: 3rem;
		text-align: left;
		padding: 0 20px;
	}

	.foodmenu.catering_menu .item_img{
		padding: 15px;
	}

	.foodmenu.catering_menu .item_img::before,
	.foodmenu.catering_menu .item_img::after{
		border-width: 5px;
	}

	.foodmenu.catering_menu .item_img::after{
		top: 5px;
		left: 5px;
		width: calc(100% - 10px);
		height: calc(100% - 10px);
		border-width: 5px;
		border-color: #fff;
	}
}
/* ===================== Sitemap ===================== */

.sitemap {
	justify-content: center;
	width: 800px;
	max-width: 100%;
	padding: 0 50px;
	margin: auto;
	margin-top: 100px;
	gap: 50px;
}

@media (min-width: 768px){

	.sitemap {
		display: flex;
	}
}

.sitemap h2{
	text-transform: uppercase;
	font-size: 2rem;
	margin-bottom: 1em;
}

.sitemap .map_block{
	margin-bottom: 2em;
}

.sitemap .map_block li a{
	font-size: 1.2rem;
}

.sitemap .map_block li{
	margin-bottom: .5em;
}

/* datepicker a11y */
.dbc_datepicker {
  position: relative;
  --text_color: #fff;
	--bezel_color: #000;
}

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;
}

.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: 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{
	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: 63%;
		right: 2em;
		z-index: 1;
	width: 2em;
	height: 2em;
	overflow: hidden;
	padding: 0;
	-webkit-appearance: none;
	background-color: transparent;
	background-image: var(--icon_calendar);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border: none;
	color: #000;
	cursor: pointer;
	transform: translateY(-50%);
}

.gfield.gfield_error button.dbc_calendar_icon{
	top: 54%;
}

.gfield.no_float_label button.dbc_calendar_icon{
	top: 68%;
}

.dbc_datepicker_field .desc{
	position: absolute;
		bottom: .4em;
		left: 1em;
}

@media (max-width: 767px){

	.dbc_datepicker_field .desc{
		bottom: -1.6em;
	}
}


/* ===================== Loader ===================== */

.loader {
	position: absolute;
    top: 24px;
    right: 15%;
	width: 1em;
	height: 1em;
	margin: 0 auto;
	border-radius: 50%;
	font-size: .5rem;
	color: #000;
	text-indent: -9999em;
	transform: translateZ(0);
	-webkit-animation: load4 1.3s infinite linear;
	animation: load4 1.3s infinite linear;
}

@-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; } }

/* ===================== Admin ===================== */

.wp-admin form[id^=gform] label{
	font-size: 1rem;
}

.wp-block-freeform{
	font-family: var(--copy_font);
}

[class*=components-panel] [data-wp-component=Text]{
	margin-top: .5em;
}

@media (min-width: 600px){
	.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image){
		width: auto;
	}
}

.wp-admin input[type=submit]{
	display: inline-block;
	width: auto;
	overflow: hidden;
	padding: 0 10px;
	border-radius: 0;
	border: none;
	font-size: 1rem;
	line-height: 1;
	transition: none;
}

.wp-admin .wp-core-ui .quicktags-toolbar input.button.button-small{
	width: auto;
	box-shadow: none;
}

.wp-admin .dbc_tabs .tabpanel#all_panel{
	display: block;
}
/* visibility plug */

@media (min-width: 1201px){
	.block-visibility-hide-large-screen {
		display: none;
	}
}

@media (min-width: 768px){
	.block-visibility-hide-medium-screen{
		display: none;
	}
}

@media (max-width: 767px){

	.block-visibility-hide-small-screen{
		display: none;
	}
}
