@font-face {
    font-family: 'chap';
    src: url('../fonts/Chap Medium.woff') format('woff'),
		url('../fonts/Chap Medium.eot') format('eot');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'agrandir';
    src: url('../fonts/PPAgrandirText-Regular.woff2') format('woff2'),
         url('../fonts/PPAgrandirText-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

:root{
	--copy_font: 'agrandir', sans-serif;
	--heading_font: 'chap', sans-serif;
	--small_heading_font: sans-serif;
	--container: 1840px;
	--small_font_size: 1.3rem;
	--med_small_font_size: 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: 1rem;
		--med_small_font_size: 1.7rem;
		--medium_font_size: 2.5rem;
		--large_font_size: 3rem;
		--xlarge_font_size: 4rem;
	}
}

@media (max-width: 400px){
	
	:root{
		--medium_font_size: 2.5rem;
	}
}

body{
-webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale; 
}

/* ===================== 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;
	}
}

.cta_row{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}

.cta_row.centered{
	margin: auto;
}

.offwhite{
	background-color: #faf9f4;
}

.pi_red{
	color: var(--wp--preset--color--pi-red);
}

.pi_green{
	color: var(--wp--preset--color--pi-green);
}

.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%;
}

.tablist_mobile .dropdown_wrap{
	text-transform: uppercase;
	font-family: var(--heading_font);
}

.dropdown_wrap {
	display: inline-block;
	position: relative;
		z-index: 10;
	padding: .8em 0;
	background-color: #ffffff;
	background-image: var(--icon_arrow_dwn);
	background-repeat: no-repeat;
	background-position: right 26px center;
	background-size: 1em;
	border-radius: 15px;
	border: 1px solid var(--wp--preset--color--pi-mustard);
	font-size: 2rem;
	color: #000000;
}

.dropdown_wrap + .dropdown_wrap{
	z-index: 5;
}

.dropdown_wrap button{
	overflow: hidden;
	padding: 0 4em;
	background-color: transparent;
	border: none;
	font-size: 1em;
	cursor: pointer;
	-webkit-appearance: none;
}


.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;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}

.dropdown_wrap.expand ul{
	display: block;
}

.dropdown_wrap ul a{
	display: inline-block;
	width: 100%;
	padding: .4em 0;
	text-decoration: none;
}

@media (max-width: 767px){

	.dropdown_wrap {
		font-size: 1.3rem;
	}
}

.dropdown_wrap.mobile_selector {
	width: calc(100% - 40px);
	max-width: 420px;
	border-radius: 5px;
}

.dropdown_wrap.mobile_selector ul{
	top: calc(100% - 5px);
	padding-top: 20px;
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 5px;
}

.dropdown_wrap.mobile_selector button{
	font-family: var(--heading_font);
	text-transform: uppercase;
	width: 100%;
}

.dropdown_wrap.mobile_selector li button{
	padding-bottom: 1em;
}


/* ===================== General ===================== */


.wp-block-group.page_heading {
	border-top: 1px solid var(--wp--preset--color--pi-mustard);
	animation: none;
}

.wp-block-group.page_heading h1{
	margin-bottom: .5em;
}

.wp-block-group.page_heading p{
	margin: 0 auto 1em;
	width: 500px;
	max-width: 100%;
}

.wp-block-group.page_heading p.is-style-title_style{
	margin-bottom: 20px;
}

.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;
}

@media (max-width: 767px){

	.wp-block-group.std_copy > p:where(:not(.alignleft):not(.alignright):not(.alignfull)), .std_copy p{
		overflow-wrap: break-word;
	}
}

.wp-block-group.is-layout-constrained .wp-block-group.legal_doc{
	width: 1000px;
}

.std_copy li{
	line-height: 1.3;
	margin-bottom: .5em;
}

.wp-block-table{
	overflow-x: auto;
}

.std_copy table {
	margin-bottom: 20px;
}

.std_copy table th,
.std_copy table td{
	padding: .5em;
	border: 1px solid;
}

.std_copy ul {
    margin-left: .5em;
    padding-left: .5em;
    list-style-type: disc;
    list-style-position: outside;
		margin-bottom: 2em;
}

.wp-block-group.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)).wp-block-list{
	transform: translateX(1em);
}

figure.wp-block-image.aligncenter img{
	margin: auto;
}

@media (max-width: 767px){

	.std_copy .has-medium-font-size {
		font-size: 2rem !important;
	}
}

.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;
}

.std_copy h1,
.std_copy h2,
.std_copy h3,
.std_copy h4,
.std_copy h5{
	margin-bottom: .5em;
}

.std_copy strong{
	font-weight: bold;
}

.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;
	max-width: 100%;
}

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;
}

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;
	padding-bottom: .2em;
	text-transform: uppercase;
	font-weight: normal;
}


.is-style-title_style a{
	color: var(--wp--preset--color--pi-red);
}

.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.is-style-sub_heading,
p.sub_heading{
	font-size: 1.8rem;
}

@media (max-width: 767px){

	p.is-style-sub_heading,
	p.sub_heading{
		font-size: 1.4rem;
	}
}

p{
	margin-bottom: 1em;
	line-height: 1.3;
}

p:last-child{
	margin-bottom: 0;
}

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;
}

.wp-block-group.is-layout-constrained {
	padding: 40px 0;
}

.wp-block-group.no_padding.is-layout-constrained {
	padding: 0;
}

.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;
}


/* ===================== Gallery ===================== */

.wp-block-gallery{
	justify-content: center;
}

@media (min-width: 1175px) and (max-width: 1900px){
	.wp-block-gallery.columns-5 .wp-block-image{
		width: 18vw;
	}
}

@media (max-width: 767px){
	.is-layout-flex.wp-block-gallery{
		display: grid;
		padding: 0 20px;
		grid-template-columns: 1fr 1fr;
		grid-gap: 20px;
	}

	.is-layout-flex.wp-block-gallery.social_gallery figure:nth-child(5),
	.is-layout-flex.wp-block-gallery.social_gallery figure:nth-child(5) ~ figure{
		display: none;
	}

}

/* ===================== 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}

.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: 1.5em;
	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_slider_arrow_l);
}

.slick-next{
	right: 50px;
	background-image: var(--icon_slider_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--pi-red);
}


@media (max-width: 767px){
	
	.slick-dots button{
		font-size: 1.2rem;
	}
}

/* ===================== Menu Item Slider ===================== */

.menu_item_slider{
	position: relative;
		z-index: 100;
	padding: 70px 0;
	background-image: var(--bknd_maze_pattern_2);
	background-position: center;
	background-size: 300px;
}

.menu_item_slider > .copy{
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	justify-content: center;
	align-items: center;
	padding: 10px 40px;
}

.menu_item_slider .copy .inner{
	max-width: 480px;
}

.menu_item_slider .copy h2{
	margin-bottom: .5em;
	font-size: var(--medium_font_size);
	text-transform: uppercase;
}

.menu_item_slider .cta_drop{
	z-index: 20;
}

.menu_item_slider .slider_half{
	overflow: hidden;
}

.menu_item_slider .slick-next{
	right: 13%
}

.menu_item_slider .menu_item_slide {
	padding: 0 20px;
}

.menu_item_slider .menu_item_slide .inner{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	padding-bottom: 20px;
	background-color: #faf9f4;
	border-radius: 10px;
	border: 1px solid #f0e7d8;
	text-align: center;
	gap: 10px;
}

.menu_item_slider .menu_item_slide h3{
	height: 2em;
	padding: 0 10px;
	font-family: var(--heading_font);
	font-size: 1.6rem;
}

.menu_item_slider .menu_item_slide .copy{
	flex: 0 0 auto;
	width: 320px;
	height: 3em;
	height: 4em;
	max-width: 100%;
	padding: 0 10px;
	font-size: 1rem;
	text-align: center;
}

.menu_item_slider .menu_item_slide .item_img {
	width: 100%;
	height: 245px;
	margin-bottom: 20px;
}

.menu_item_slider .menu_item_slide .item_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.menu_item_slider .menu_item_slide .cta{
	margin: auto 0 0 0;
}

.menu_item_slider .cta{
	padding: .6em 2em;
	font-size: 1.2rem;
}

.menu_item_slider .slick-dots{
	bottom: -40px;
}

@media (min-width: 768px){

	.menu_item_slider{
		display: flex;
	}

	.menu_item_slider .slider_half{
		flex: 0 0 auto;
    padding-left: 50px;
    margin-left: -50px;
		width: 75%;
	}

	.menu_item_slider .slick-slider{
		width: 110%;
	}

	.menu_item_slider .slick-prev{
		left: -30px;
	}

	.menu_item_slider .slick-next{
		right: 180px;
	}

	.menu_item_slider .slick-dots{
		display: none !important;
	}
}

@media (min-width: 1920px){

	.menu_item_slider .slider_half{
		width: 1436px;
	}

	.menu_item_slider .slick-slider{
		width: calc(1436px + 100px);
	}
}

@media (min-width: 768px) and (max-width: 1200px){

	.menu_item_slider .slick-slider{
		width: 100%;
	}

	.menu_item_slider .slick-prev{
		left: 20px;
	}

	.menu_item_slider .slick-next{
		right: 20px;
	}

	.menu_item_slider .slider_half{
		width: 55%;
		padding-right: 0;
		padding-left: 0;
	}

	.menu_item_slider .menu_item_slide{
		padding: 0 70px;
	}
}

@media (max-width: 767px){

	.menu_item_slider {
		padding-bottom: 0;
    padding-top: 40px;
	}

	.menu_item_slider .menu_item_slide .item_img .inner{
		margin: -3px;
		border-width: 6px;
	}

	.menu_item_slider .menu_item_slide .copy{
		margin-top: 10px;
		font-size: 1rem;
	}

	.menu_item_slider > .copy{
		padding-bottom: 40px;
	}

	.menu_item_slider .slider_half{
		padding-bottom: 90px;
	}

	.menu_item_slider .slick-slider{
		width: 135%;
	}

	.menu_item_slider .slick-dots{
		bottom: -60px;
		left: 50vw;
	}
}

@media (max-width: 420px){
	.menu_item_slider .menu_item_slide .copy{
		height: 4em;
	}
}

@media (max-width: 400px){
	.menu_item_slider .menu_item_slide .copy{
		height: 5em;
	}
}

/* order widget */

.order_popup{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: absolute;
		top: 46%;
		left: 50%;
		z-index: 40;
	width: 620px;
	height: auto;
	max-width: 90%;
	min-height: 130px;
	padding: 50px 20px;
	background-color: #ffffff;
	background-image: var(--bknd_maze_pattern_2);
	background-size: 300px;
	border-radius: 20px;
	border: 1px solid var(--wp--preset--color--pi-mustard);
	text-align: center;
	transform: translate(-50%,-50%);
}

.order_popup .dropdown_wrap{
	display: none;
	width: 88%;
	background-image: none;
}


.order_popup .loc_results{
	left: 50%;
	z-index: 1;
	width: calc(100% - 4em);
	padding: 1.5em 30px .5em;
	border-bottom-right-radius: 30px;
	border-bottom-left-radius: 30px;
	border: 3px solid var(--wp--preset--color--pi-red);
	border-top: none;
	transform: translate(-50%,-1.8em);
}

.order_popup.has_results .dropdown_wrap{
	display: inline-block;
}

.order_popup .loader{
	top: 50%;
	right: 50%;
	color: var(--wp--preset--color--pi-red);
}

.order_popup h3{
	font-size: 3rem;
	color: var(--wp--preset--color--pi-red);
}


.order_popup .dropdown_wrap button{
	position: relative;
		z-index: 10;
	width: 100%;
	padding: 20px 10px;
	background-color: #ffffff;
	background-image: var(--icon_arrow_dwn);
	background-repeat: no-repeat;
	background-position: right 1em center;
	background-size: .8em;
	border-radius: 40px;
	border: 3px solid var(--wp--preset--color--pi-red);
	font-family: var(--heading_font);
	line-height: 1;
}

.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;
	-webkit-appearance: none;
	background-color: transparent;
	background-image: var(--icon_dismiss);
	background-repeat: no-repeat;
	background-size: contain;
	border: none;
	font-size: 1.5rem;
	cursor: pointer;
}


@media (max-width: 767px){

	.order_popup{
		top: 56%;
	}

	.order_popup .dropdown_wrap{
		width: 100%;
		padding: .8em 1em;
	}

	.order_popup .dropdown_wrap button {
		font-size: 1.2rem;
	}

	.order_popup .dismiss{
		font-size: 1rem;
	}

	.order_popup h3{
		font-size: 2rem;
	}

	.order_popup .loc_results{
		width: calc(100% - 2em);
		transform: translate(-50%,-2em);
	}

}

/* ===================== Gravity Forms ===================== */

input, select, textarea{
	width: 100%;
	box-sizing: border-box;
	appearance: none;
	-webkit-appearance: none;
	border: 1px solid #000;
	border-radius: 10px;
	background-color: #ffffff;
}

textarea{
	padding: 1em;
	font-family: var(--copy_font);
	font-size: 1em;
}

select{
	color: #000000;
}

.gform_wrapper {
	padding: 50px 20px;
	margin: auto;
	background-image: var(--bknd_maze_pattern_2);
	background-position: center;
	background-size: 300px;
}

.gform_wrapper .gform_heading,
.gform_wrapper form{
	width: 930px;
	max-width: 100%;
	margin: auto;
	padding: 0 20px;
	border-radius: 10px;
	background-color: #ffffff;
}

@media (max-width: 767px){

	[id^=rewards] .gform_wrapper form{
		padding: 0;
	}
}


@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;
}

.gfield.hide{
	display: none !important;
}

@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;
	font-family: var(--heading_font);
	text-transform: uppercase;
	pointer-events: none;
}

.gform_footer input[type=submit].undisable{
	opacity: 1;
	pointer-events: auto;
}

form[id^=gform] label{
	display: inline-block;
	padding-bottom: .5em;
	font-size: 1.3rem;
}

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_arrow_dwn);
	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{
	text-transform: uppercase;
	color: white;
	background-color: #8b0000;
	padding: .5em;
	border-radius: 10px;
}

.redblock_validation .valmsg{
	padding: .5em;
	background-color: var(--wp--preset--color--pi-red);
	color: #ffffff;
}

@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 label{
	display: inline-block;
	padding-bottom: .5em;
}

.floating_labels .gfield:not(.no_float_label).unfloat label{
	top: -1.5em;
}

.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;
	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_form .gform_fields .gfield.full_width{
		flex: 1 1 100%;
	}

	.signup_outer h2 br{
		display: none;
	}
}

.signup_form .opt_in_legal{
	text-align: right;
}

@media (min-width: 768px){

	.signup_form .gform_footer{
			text-align: right;
	}
}

/* ===================== CTA ===================== */

button,
button.cta{
	overflow: hidden;
	padding: 0;
	background-color: transparent;
	border: none;
	font-family: var(--copy_font);
	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: .5em 1em;
	background-color: var(--wp--preset--color--pi-red);
	border-radius: 2em;
	border: 1px solid var(--wp--preset--color--pi-red);
	font-size: 1.2rem;
	color: #ffffff;
	line-height: 1;
	letter-spacing: .04em;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	/* transition: all .3s ease-in-out; */
	cursor: pointer;
}

a.cta,
button.cta,
.cta a{
	font-family: var(--heading_font);
	color: #ffffff;
}

a.cta.inverse,
button.cta.inverse,
.cta.inverse a{
	background-color: #ffffff;
	color: var(--wp--preset--color--pi-red);
	border-color: var(--wp--preset--color--pi-red);
}


a.cta:hover,
button.cta:hover,
.cta a:hover,
input[type=submit]:hover{
	background: linear-gradient(to right, var(--wp--preset--color--pi-red), #4b0104);
	border-color: var(--wp--preset--color--pi-mustard);
}

a.cta.inverse:hover,
button.cta.inverse:hover,
.cta.inverse a:hover{
	background-color: var(--wp--preset--color--pi-red);
	color: #ffffff;
}

.cta_drop{
	display: inline-block;
	padding: 0;
	background-color: transparent;
	background-image: none;
	border: none;
	text-align: left;
}

.cta_drop .cta{
	padding-right: 2em;
	background-image: var(--icon_arrow_dwn_white);
	background-repeat: no-repeat;
	background-position: right .6em center;
	background-size: 15px;
}

@media (max-width: 767px){
	
	.cta_drop .cta{
		width: 100%;
	}
}

.cta_drop .cta:hover{
	background: var(--icon_arrow_dwn_white), linear-gradient(to right, var(--wp--preset--color--pi-red), #4b0104);
	background-repeat: no-repeat;
	background-position: right .6em center, center;
	background-size: 15px, auto;
}

.cta_drop ul{
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
}

.cta_drop ul a{
	padding: .5em;
	font-size: 1rem;
}

.social_link,
.header_link a{
	text-decoration: none;
	border-bottom: 2px solid currentColor;
	display: inline-block;
	padding-bottom: .1em;
}


/* #952e47 to #4b0104 */
/* border #ebcb72 */

.wp-block-group .cta_group{
	margin-top: 1em;
}

.cta_group{
	display: inline-flex;
	align-items: center;
	width: 100%;
	gap: 1em;
}

.cta_group .cta{
	padding-left: 2em;
	padding-right: 2em;
}

.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;
	}
}

@media (max-width: 350px){

	a.cta,
	button.cta,
	.cta a,
	input[type=submit]{
		font-size: 1rem;
	}
}

button.sticky_footer_mobile{
	display: none;
	position: fixed;
		bottom: 10px;
		left: 0;
		z-index: 500;
	max-width: 94%;
	left: 50%;
	transform: translateX(-50%);
	margin: 0;
	transition: opacity .3s ease-in-out;
	border-color: var(--wp--preset--color--pi-mustard);
}

button.sticky_footer_mobile:hover,
button.sticky_footer_mobile:focus{
	background-color: var(--wp--preset--color--pi-red);
}

@media (max-width: 767px){

	button.sticky_footer_mobile{
		opacity: 0;
	}

	button.sticky_footer_mobile.show{
		display: block;
	}

	button.sticky_footer_mobile.reveal{
		opacity: 1;
	}
}

/* ===================== animations ===================== */

.pi_card_full .fire_animation.card-image img{
	border-radius: 0;
	border: none;
	aspect-ratio: auto;
}

.fire_animation .inner_grid{
	display: grid;
	grid-template-columns: 1fr;
}

.fire_animation .inner_grid > img{
	grid-area: 1/1/1/1 ;
}

.fire_animation .inner_grid .fire_2{
	opacity: 0;
	position: relative;
	bottom: -32px;
}

@media (prefers-reduced-motion: reduce){
	.fire_animation .inner_grid .fire_2{
		opacity: 1;
		bottom: 0;
	}
}

@media (max-width: 767px){

.pi_card_full .card-image.fire_animation {
		padding: 50px 40px 30px 0px;
	}
}

/* ===================== Styles ===================== */

.border_top_mustard{
	border-top: 1px solid var(--wp--preset--color--pi-mustard);
}

.is-style-wood_bknd{
	background-image: var( --bknd_wood_grain );
	background-position: center top;
}

.is-style-gold_gradient,
.wp-block-group.is-style-gold_gradient{
	background-color: #000000;
	background-image: var(--bknd_gold_grad);
	background-size: cover;
	color: #ffffff;
}

.wp-block-group.is-style-gold_gradient.gold_offset_top{
	background-position: center top 70%;
}

@media (max-width: 1200px){
	.wp-block-group.is-style-gold_gradient.gold_offset_top{
		background-position: center top -250px;
	}
}

.is-style-maze_pattern,
.wp-block-group.is-style-maze_pattern{
	background-image: var(--bknd_maze_pattern_2);
	background-size: 300px;
	background-position: center;
}

.mustard_label{
	padding: .5em 2.2em .3em;
	background: linear-gradient(to bottom,  rgba(179,127,5,1) 1%,rgba(194,151,46,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	border-radius: 30px;
	font-family: var(--heading_font);
	color: #ffffff;
	text-align: center;
	text-transform: uppercase;
	text-shadow: 0px 0px 15px rgb(0 0 0 / 80%);
	font-size: 2rem;
}

@media (max-width: 767px){

	.mustard_label{
		font-size: 1.5rem;
	}
}

.red_maze_gradient{
	background-color: var(--wp--preset--color--pi-red);
	background-image: var(--bknd_maze_pattern), linear-gradient(-45deg, var(--wp--preset--color--pi-red) 0%, var(--wp--preset--color--pi-red) 25%, var(--wp--preset--color--pi-red) 51%, #4b0104 100%);
	background-size: 300px, auto;
	color: #ffffff;
}

.red_maze_bknd{
	background-color: var(--wp--preset--color--pi-red);
	background-image: var(--bknd_maze_pattern);
	color: #ffffff;
}

.is-style-red_bknd{
	color: #ffffff;
	background-image: var(--bknd_maze_pattern), linear-gradient(-45deg, var(--wp--preset--color--pi-red) 0%, var(--wp--preset--color--pi-red) 25%, var(--wp--preset--color--pi-red) 51%, #4b0104 100%);
	background-size: 300px, auto;
	background-color: var(--wp--preset--color--pi-red);
}

.static_red_bknd{
	background-color: var(--wp--preset--color--pi-red);
	background-image: var(--bknd_maze_pattern), linear-gradient(135deg,  rgba(64,0,0,1) 0%,rgba(118,72,75,1) 100%); 
	background-position: center;
	background-size: 300px, auto;
}

.static_green_bknd{
	background-image: var(--bknd_maze_pattern), linear-gradient(45deg,  #14504e 0%,#5e7b79 100%); 
	background-color: var(--wp--preset--color--pi-green);
}

.is-style-red_mtn_1{
	color: #ffffff;
	background-image: var(--bknd_mtn_1a), var(--bknd_mtn_1b), var(--bknd_maze_pattern), linear-gradient(to right,  rgba(75,1,4,1) 0%,rgba(75,1,4,1) 50%, var(--wp--preset--color--pi-red) 100%);
	background-color: var(--wp--preset--color--pi-red);
	background-repeat: no-repeat, no-repeat, repeat, no-repeat;
	background-position: right 16% bottom, right 2% bottom, center, center;
	background-size: auto 50%, auto 92%, 300px, auto;
}

.is-style-red_mtn_2{
	color: #ffffff;
	background-image: var(--bknd_mtn_2a), var(--bknd_mtn_2b), var(--bknd_mtn_2c), var(--bknd_mtn_2d),  var(--bknd_maze_pattern), linear-gradient(to right,  rgba(75,1,4,1) 0%,rgba(75,1,4,1) 50%, var(--wp--preset--color--pi-red) 100%);
	background-color: var(--wp--preset--color--pi-red);
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, repeat, no-repeat;
	background-position: left -8% bottom, left 4% bottom, right -4% bottom, right 10% bottom, center, center;
	background-size: auto 108%, auto 67%, auto 113%, auto 73%, 300px, auto;
}

@media (max-width: 767px){
	
	.is-style-red_mtn_2{
		background-position: left -170px bottom, left -106px bottom, right -164px bottom, right -49px bottom, center, center;
	}

	.is-style-red_mtn_2 p{
		width: 380px;
		max-width: 100%;
		margin: auto;
	}
}

.is-style-green_bknd{
	color: #ffffff;
	background-image: var(--bknd_maze_pattern), linear-gradient(-45deg, var(--wp--preset--color--pi-green) 0%, var(--wp--preset--color--pi-green) 25%, var(--wp--preset--color--pi-green) 51%, #4b0104 100%);
	background-color: var(--wp--preset--color--pi-green);
}

.is-style-red_bknd,
.is-style-green_bknd{
	border-top: 1px solid var(--wp--preset--color--pi-mustard);
	border-bottom: 1px solid var(--wp--preset--color--pi-mustard);
	background-size: 300px, 300% 300%;
	animation: gradientAni 10s ease infinite;
}


.is-style-red_bknd .container,
.is-style-green_bknd .container{
	background-image: var(--bknd_white_elipse_half);
	background-repeat: no-repeat;
	background-position: left 70% top 0;
	background-size: 60%;
}

.is-style-green_bknd .container{
	background-position: left 40% top 0;
	background-size: 60%;
}

.is-style-red_bknd .cta,
.is-style-green_bknd .cta{
	border-color: var(--wp--preset--color--pi-mustard);
}

.weathered_bknd{
	background-image: var(--weathered_texture);
	background-position: center;
}

@media (prefers-reduced-motion: reduce){

	.is-style-red_bknd,
	.is-style-green_bknd{
		animation: none;
	}
}

@keyframes gradientAni {
  0% {
    background-position: center, 0% 50%;
  }
  50% {
    background-position: center, 100% 50%;
  }
  100% {
    background-position: center, 0% 50%;
  }
}

/* ===================== 3 col bullet points ===================== */

.starblocks{
	padding: 130px 0 140px;
}

.starblocks .container{
	width: 1410px;
	padding: 0 30px;
}

.star_blocks{
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 30px;
}

.col_star{
	background-color: #ffffff;
	position: relative;
	z-index: 1;
	border-radius: 12px;
	padding: 0 30px 20px;
}

.col_star img{
	display: block;
	margin: -60px auto 30px;
	background-color: #ffffff;
	border-radius: 100%;
	aspect-ratio: 1/1;
	object-fit: cover;
	border: 1px solid var(--wp--preset--color--pi-mustard);
}

.starblocks.careers,
.starblocks.rewards {
	padding: 340px 0 140px;
}

.starblocks.careers .col_star img,
.starblocks.rewards .col_star img{
	margin: -210px auto 30px;
	width: 270px;
}

.starblocks .col_star{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
}

.starblocks .col_star .copy{
	flex: 1 1 auto;
	flex-direction: column;
	display: flex;
}

.starblocks .col_star .cta_row{
	margin: auto 0 0 0;
}

.col_star img.star{
	width: 95%;
	padding: 20px;
	margin-bottom: 60px;
	border: 5px solid var(--wp--preset--color--pi-red);
}

.is-style-maze_pattern .col_star{
	background-color: #faf9f4;
	border: 1px solid #ede0cd;
}

.col_star h2,
.col_star h3{
	margin-bottom: .3em;
	font-size: 2rem;
	text-align: center;
	text-transform: uppercase;
}

.starblocks .mobile_star_slider{
	overflow: hidden;
	padding-bottom: 60px;
}

.starblocks .slick-dots {
	bottom: -50px;
}

.starblocks .slick-dots button{
	background-color: #ffffff;
}

.starblocks .slick-active button{
	background-color: var(--wp--preset--color--pi-red);
}

.col_star_slide{
	padding: 0 10px;
	margin: 48vw 0px 0;
}

.starblocks.careers .col_star_slide img,
.starblocks.rewards .col_star_slide img,
.starblocks .col_star_slide img{
	position: absolute;
		left: 50%;
		z-index: 1;
	width: 60%;
	margin: 0;
	transform: translate(-50%,-90%);
}

.starblocks .col_star_slide .copy{
	padding-top: 10%;
}

@media (min-width: 768px){
	.star_blocks{
		grid-template-columns: 1fr 1fr 1fr;
	}
}

@media (max-width: 1000px){

	.starblocks .container{
		width: 570px;
		grid-row-gap: 260px;
	}

	.star_blocks{
		grid-template-columns: 1fr;
	}

	.col_star{
		width: 500px;
		max-width: 86vw;
		padding-right: 20px;
		padding-left: 20px;
		margin: 0 auto 30px;
	}

	.col_star:nth-child(1){
		z-index: 100;
	}

	.col_star:nth-child(2){
		z-index: 90;
	}

	.col_star:nth-child(3){
		z-index: 80;
	}

	.col_star:nth-child(4){
		z-index: 70;
	}

	.col_star:nth-child(5){
		z-index: 60;
	}

	.col_star:nth-child(6){
		z-index: 50;
	}

	.mobile_star_slider .col_star{
		width: auto;
	}

	.col_star::before{
		width: 353px;
	}

	.col_star img.star{
		width: 62%;
	}
}

@media (max-width: 1400px){
	.col_star h2, .col_star h3{
		font-size: 2rem;
	}
}

@media (max-width: 767px){

	.starblocks.slider_mobile{
		padding: 0 0 30px;
	}

	.starblocks.slider_mobile .container{
		padding: 30px 30px 0;
	}

	.col_star::before{
		width: 64%;
	}
}

.starblocks.default .container{
	width: 1830px;
}

.starblocks.default .star_blocks{
	grid-gap: 140px;
}

.starblocks.default .star_blocks .copy{
	padding: 0 20px;
}

@media (max-width: 1800px){

	.starblocks.default .star_blocks{
		grid-gap: 60px;
	}
}

/* ===================== Header ===================== */

header {
	position: -webkit-sticky;
	position: sticky;
		top: 0;
		z-index: 210;
	width: 100%;
	background-color: transparent;
}

header > .inner{
	background-color: #ffffff;
}

header .main_header{
	padding: 5px 30px;
}

@media (min-width: 768px){

	header .main_header{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
}

header .main_header a{
	text-align: center;
}

header .logo {
	position: relative;
	z-index: 100;
}

header .logo img{
	width: 287px;
	display: inline-block;
}

#primary_menu .dropdown_wrap button,
header .main_header .nav_links{
	font-family: var(--heading_font);
	text-transform: uppercase;
	text-align: center;
	font-size: 1rem;
	text-decoration: none;
}

#primary_menu .dropdown_wrap {
	padding: 0;
	background-position: right center;
	background-size: .8em;
	border: none;
	font-size: inherit;
	line-height: 1;
}

#primary_menu .dropdown_wrap ul{
	left: 50%;
	width: 200%;
	padding-top: 1em;
	border-radius: 10px;
	transform: translateX(-50%);
}

#primary_menu .dropdown_wrap button{
	padding: 0 1.5em 0 0;
	font-size: inherit;
	line-height: 1;
}

@media (min-width: 768px) and (max-width: 880px){

	header .main_header a.cta{
		font-size: 1rem;
	}

	header .main_header .nav_links{
		font-size: .8rem;
	}
}

#mobile_menu li a{
	font-size: 1.5rem;
	line-height: 1.3;
	padding-bottom: .4em;
	display: inline-block;
	text-decoration: none;
}

#mobile_menu li.child_item a{
	font-size: 1em;
}

#mobile_menu li .cta{
	margin: 1em 0;
	font-size: 1.2rem;
}

#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: 71px;
		left: 0;
		z-index: 1;
	width: 100%;
	height: auto;
	padding: 20px;
	opacity: 0;
	background-color: #ffffff;
	border-bottom-right-radius: 30px;
	border-bottom-left-radius: 30px;
	transition: opacity .3s ease-in-out;
}


#menu_overlay::after{
	display: inline-block;
	position: absolute;
		bottom: -24px;
		left: 0;
	width: 100%;
	height: 50px;
	font-size: 1rem;
	content:'';
}

#menu_overlay ul{
	border-bottom: 1px solid #000;
	padding-bottom: 15px;
}

#menu_overlay.show{
	display: block;
}

#menu_overlay.reveal{
	opacity: 1;
}

#primary_menu > ul {
	display: flex;
	align-items: center;
	gap: 20px;
}

#primary_menu a:not(.cta){
	display: inline-block;
	padding: .5em 0;
	font-family: var(--heading_font);
	color: #000;
	text-decoration: none;
	border-bottom: 2px solid transparent;
}

#primary_menu .active a:not(.cta){
	border-color: currentColor;
}

#primary_menu a:not(.cta),
#primary_menu button{
	font-size: 1em;
}

#menu_overlay .social_row{
	margin-top: 15px;
    padding: 0;
}

#menu_overlay .social_icon{
	font-size: 3rem;
}

@media (max-width: 767px){

	#primary_menu a{
		font-size: 1.5rem;
	}

	header > .inner{
		height: auto;
	}

	header .left_nav{
		display: grid;
    grid-template-columns: 1fr 3fr 1fr;
	}

	header .logo img{
		width: 47vw;
	}

	#menu_toggle{
		font-size: 6vw;
		align-self: center;
	}
}

@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: 11vw;
	}
}

@media (max-width: 400px){

	#primary_menu a{
		font-size: 1.2rem;
	}
}

@media (max-height: 670px){
	
	#menu_overlay li a{
		font-size: 1.3rem;
	}

	#mobile_menu li .cta{
		font-size: 1rem;
	}
}

@media (max-height: 615px){

	#menu_overlay {
		height: 93vh;
		overflow-y: auto;
	}
}

/* ===================== Reservations ===================== */

header .res_widget{
	position: absolute;
		right: -42px;
		top: 45vh;
		z-index: 1;
	transform: translate(0,90%);
	rotate: -90deg;
	display: flex;
	gap: .5em;
}

header .res_widget span{
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-left: .5em;
	background-image: var(--icon_arrow_up_white);
	background-repeat: no-repeat;
	background-position: center;
}

#reservation_overlay{
	display: none;
	opacity: 0;
	transition: opacity .3s ease-in-out;
}

#reservation_overlay.show{
	display: flex;
}

#reservation_overlay.reveal{
	opacity: 1;
}

#reservation_modal{
	border-radius: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 1200px;
	max-width: 94%;
	padding: 110px;
	background-color: #ffffff;
	text-align: center;
}

#reservation_modal::after{
	display: inline-block;
	position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	width: 100%;
	height: 100%;
	content:'';
	pointer-events: none;
}

#reservation_modal .inner{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 100%;
	padding: 20px;
	background-color: #ffffff;
	text-align: center;
}

#reservation_modal .res_panel h3{
    font-size: 2rem;
    margin-bottom: 1em;
}

#reservation_modal .start_panel.hide{
	display: none;
}

#reservation_modal .cta_group{
	flex-wrap: wrap;
	justify-content: center;
}

#reservation_modal h2{
	font-size: 3rem;
	margin-bottom: 1em;
}

#reservation_modal .ot_target,
#reservation_modal .ot_target_mobile{
	margin: auto 0 0;
}

@media (min-width: 1201px){
	#reservation_modal .ot_target_mobile{
		display: none;
	}

	#reservation_modal .ot_target iframe[width='840']{
		max-height: 140px;
	}
}

@media (max-width: 1200px){
	#reservation_modal .ot_target{
		display: none;
	}
}

@media (max-width: 767px){

	#reservation_modal h2{
		font-size: 2rem;
	}
}

@media (max-width: 400){

	#reservation_modal h2{
		font-size: 1.4rem;
	}
}

#dismiss_reservations{
	position: absolute;
		top: 1em;
		right: 1em;
		z-index: 1;
	width: 1em;
	height: 1em;
	overflow: hidden;
	padding: 0;
	background-color: transparent;
	background-image: var(--icon_dismiss);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	border: none;
	font-size: 2rem;
	color: #000000;
	cursor: pointer;
	-webkit-appearance: none;
}

@media (max-width: 767px){
	#dismiss_reservations{
		top: 1.3em;
		right: 1.3em;
		font-size: 1.3rem;
	}
}

#res_panels{
	display: none;
	/* position: absolute; */
		top: 0;
		left: 0;
		z-index: 1;
	width: 100%;
	height: 100%;
}

#res_panels .res_panel{
	display: none;
	flex-direction: column;
	align-items: center;
	/* position: absolute; */
		top: 0;
		left: 0;
		z-index: 1;
	width: 100%;
	height: 100%;
	background-color: #ffffff;
}

#res_panels.show,
#res_panels .res_panel.show{
	display: flex;
}

#footer_reserve{
	justify-content: center;
	position: fixed;
		bottom: 1em;
		left: 50%;
		z-index: 500;
	width: 80%;
	padding: .2em 1em;
	background-color: var(--wp--preset--color--brass);
	border-color: var(--wp--preset--color--brass);
	font-size: 2rem;
	color: var(--wp--preset--color--charcoal);
	transform: translateX(-50%);
	display: none;
	opacity: 0;
	transition: opacity .3s ease-in-out;
}

#footer_reserve.show{
	display: block;
}

#footer_reserve.reveal{
	opacity: 1;
}

#dbx_logo {
    text-align: center;
    padding: 100px 0 20px;
	opacity: 0.5;
}

#dbx_logo img{
	margin-left: auto;
	margin-right: auto;
}

@media (max-width: 767px){

	#reservation_modal{
		padding: 70px 50px;
	}

	#reservation_modal .inner{
		height: auto;
	}
}

@media (max-width: 400px){
	#footer_reserve{
		font-size: 1.4rem;
	}
}
/* ===================== 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: #000;
	--bknd: #fff;
	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: 30px 0 20px;
	font-size: 1rem;
}

@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{
	text-transform: uppercase;
	font-family: var(--heading_font);
}

footer .footer_nav.legal{
	text-align: center;
	margin-bottom: 1em;
}

footer .footer_nav.legal li{
	padding: 0 .5em;
}

footer .copyright{
	text-align: center;
	padding: 0 20px;
}

footer .dbc{
	text-align: center;
	opacity: .5;
	padding-top: 100px;
}

footer .dbc a{
	display: inline-block;
}

@media (max-width: 767px){

	footer .footer_nav ul a{
		padding: 0 0 .5em;
		font-size: 1.2rem;
	}

	footer .footer_nav.legal a{
		padding: .5em 0;
		font-size: 1rem;
		text-transform: uppercase;
	}

	footer .inner_grid{
		text-align: center;
	}

	footer .rest_group{
    display: inline-block;
    margin: 30px 0 40px;
	}
}

@media (min-width: 768px){

	footer .inner_grid{
		display: grid;
		align-items: center;
		grid-template-columns: 156px auto 156px;
		grid-gap: 20px;
	}

	footer .links_social{
		grid-area: 1/2/2/3;
	}

	footer .rest_group{
		grid-area: 1/3/2/4;
    justify-self: flex-end;
	}
}

/* ===================== Hero ===================== */

.wp-block-acf-hero img{
	width: 100%;
}

/* ===================== Info Slider ===================== */

.info_slider{
	padding: 70px 0;
	background-image: var(--bknd_maze_pattern_2);
	background-position: center;
	background-size: 300px;
}

.info_slider .top_copy{
	width: 500px;
	max-width: 100%;
	padding-bottom: 110px;
	margin: auto;
}

.info_slider .top_copy h2,
.info_slider .top_copy h3{
	margin-bottom: .2em;
	font-family: var(--heading_font);
	font-size: 4rem;
	text-transform: uppercase;
}

.info_slider .slick-slider{
	padding: 0 150px;
}

.info_slider .slide{
	overflow: hidden;
	background-color: #faf9f4;
	border-radius: 10px;
	border: 1px solid #ede0cd;
}

.info_slider .slide > .inner{
	display: flex;
}

.info_slider .slide .slide_copy{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 60px;
}

.info_slider .slide .slide_copy h2,
.info_slider .slide .slide_copy h3{
	font-family: var(--heading_font);
	text-transform: uppercase;
	font-size: 3rem;
	margin-bottom: 20px;
}

.info_slider .slide .slide_copy,
.info_slider .slide .slide_img{
	flex: 0 0 50%;
}

.info_slider .slide .slide_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.info_slider .slick-arrow{
	font-size: 3rem;
}

.info_slider .slick-prev{
	left: 30px;
}

.info_slider .slick-next{
	right: 30px;
}

.info_slider .slick-dots{
    bottom: -37px;
}

@media (max-width: 1070px){
	
	.info_slider .slide_copy .cta_row{
		flex-direction: column;
		align-items: stretch;
	}

	.info_slider .slide_copy .cta_row .cta{
		width: 100%;
	}

	.info_slider .slide .slide_copy{
		min-height: 510px;
	}
}

@media (min-width: 768px) and (max-width: 1100px){

	.info_slider .slick-slider{
		padding: 0 70px;
	}

	.info_slider .slick-prev{
		left: 0;
	}

	.info_slider .slick-next{
		right: 0;
	}
}

@media (max-width: 767px){
	
	.info_slider .top_copy{
		padding-bottom: 60px;
	}

	.info_slider .slick-arrow{
		top: auto;
		bottom: -58px;
		font-size: 2rem;
	}

	.info_slider .slick-slider{
		padding: 0 30px;
	}

	.info_slider .slide .slide_copy{
		order: 99;
		align-items: flex-start;
		min-height: 390px;
		padding: 20px;
	}

	.info_slider .slide .slide_copy h2, 
	.info_slider .slide .slide_copy h3{
		text-align: center;
	}

	.info_slider .slide > .inner{
		flex-direction: column;
	}
}

@media (max-width: 450px){
	
	.info_slider .slide .slide_copy h2, 
	.info_slider .slide .slide_copy h3{
		font-size: 2rem;
	}
}

/* ===================== Simple Slider ===================== */

.simple_slider .slider_wrap{
	padding: 50px 60px 30px;
}

.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{
	flex: 0 0 30%;
	height: 100%;
	min-width: 230px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

/* testimonials */

.simple_slider{
	background-color: #faf9f4;
	padding-bottom: 100px;
}

.simple_slider .slider_wrap{
	display: flex;
	align-items: center;
	background-color: var(--wp--preset--color--pi-red);
	border-radius: 20px;
	box-shadow: 7px 8px 8px 3px rgba(0, 0, 0, 0.2);
	flex-wrap: wrap;
}

.simple_slider .slick-slider{
	overflow: hidden;
	flex: 1 1 0;
}

.simple_slider .side_image{
	border-radius: 100%;
}

.simple_slider .slide > .inner{
	display: flex;
	padding: 50px;
	margin: 0 15px 15px;
	color: #ffffff;
	gap: 50px;
}

.simple_slider .slide .slide_copy{
	display: flex;
	justify-content: center;
	align-items: center;
	color: #ffffff;
}

.simple_slider .slide .slide_copy h2,
.simple_slider .slide .slide_copy h3{
	font-family: var(--heading_font);
	text-transform: uppercase;
    font-size: 2rem;
    margin-bottom: 1em;
}

.slick-dots button{
	font-size: 1rem;
}

.simple_slider .nav_outer{
	position: absolute;
		bottom: -70px;
		left: 0;
	width: 100%;
	margin-top: 20px;
	text-align: center;
}

.simple_slider .nav_container {
	display: inline-flex;
	justify-content: center;
	align-items: center;
}

.simple_slider .nav_container > button,
.simple_slider .nav_container > ul{
	position: static;
	transform: none;
}

.simple_slider .nav_container > ul{
	margin: 0 10px;
}

.simple_slider .nav_container > ul li{
	margin: 0 5px;
}
.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 .social_row,
.simple_slider.social_slider .top_copy p{
	margin-bottom: .2em;
}

@media (max-width: 1000px){
	
	.simple_slider .slider_wrap{
		display: block;
	}

	.simple_slider .side_image{
		margin: auto;
	}

	.simple_slider .slide > .inner{
		padding: 50px 10px 0;
	}
}

@media (max-width: 767px){

	.simple_slider .slide > .inner{
		align-items: center;
		text-align: center;
	}

	.simple_slider .slick-dots{
		bottom: -60px;
		width: 90%;
	}

	.simple_slider .slick-arrow{
		font-size: 2.5em;
	}

	.simple_slider.social_slider{
		padding: 0;
	}

	.simple_slider .slider_wrap{
		padding: 50px 15px 40px;
	}

	.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 ===================== */

.hero_block img{
	width: 100%;
}

/* ===================== 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;
		left: 50px;
		z-index: 10;
}

.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: 2rem;
	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: 10px;
		left: 10px;
	}

	.video_buttons button{
		font-size: 6vw;
	}

	.hero_slider .video_buttons button{
		width: 1.3em;
		height: 1em;
		background-position: center;
		border: none;
		font-size: 2rem;
	}
}

/* ===================== Two Cards ===================== */

.two_cards {
}

.two_cards > .inner{
	padding: 90px 0;
	background-image: var(--bknd_white_elipse_half);
	background-repeat: no-repeat;
	background-position: left -50% top 0;
	background-size: 60%;
}

.two_cards .container{
	background-image: none;
	display: flex;
	padding: 0 50px;
	gap: 70px;
}

.two_cards .card{
	display: flex;
	flex-direction: column;
	background-color: #ffffff;
	border-radius: 20px;
	color: #000000;
}

.two_cards .image{
	flex: 0 0 auto;
	overflow: hidden;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
}

.two_cards .image img{
	object-fit: cover;
	width: 100%;
	height: 530px;
}

.two_cards .card .copy {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 20px 50px;
	border-radius: 20px;
	text-align: center;
}

.two_cards .card .copy .cta_row{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: auto 0 0 0;
	gap: 20px;
}

.two_cards .card .copy h2,
.two_cards .card .copy h3{
	text-transform: uppercase;
    font-size: 3rem;
	margin-bottom: 10px;
}

@media (min-width: 1001px){
	.two_cards .card{
		flex: 1 1 0;
	}
}

@media (max-width: 1200px){

	.two_cards .image img{
		height: 54vw;
	}
}

@media (max-width: 1000px){
	
	.two_cards .container{
		display: flex;
		flex-direction: column;
		width: 580px;
	}
}

@media (max-width: 767px){
	
	.two_cards .card .copy .cta_row{
		flex-direction: column;
		display: flex;
		gap: 10px;
	}
}

@media (max-width: 450px){
	
	.two_cards > .inner{
		padding: 30px 0;
		background-position: left -60vw top 0;
		background-size: 170vw;
	}

	.two_cards .container{
		padding: 0 20px;
		gap: 30px;
	}

	.two_cards .card .copy{
		padding: 20px;
	}

	.two_cards .card .copy h2, 
	.two_cards .card .copy h3{
		font-size: 2rem;
	}
}

/* ===================== Cards ===================== */

/* borders, bknds */

.pi_card.is-style-red_bknd,
.pi_card.is-style-green_bknd{
	display: flex;
	justify-content: center;
	align-items: center;
}

@media (min-width: 768px) and (max-width: 1000px){

	.pi_card_full.is-style-red_bknd .container,
	.pi_card_full.is-style-green_bknd .container{
		background-size: 100%;
	}

}

@media (max-width: 767px){

	.pi_card_full.is-style-red_bknd,
	.pi_card_full.is-style-green_bknd{
		border: 2px solid var(--wp--preset--color--pi-mustard);
	}

	.pi_card_full.is-style-red_bknd .container,
	.pi_card_full.is-style-green_bknd .container{
		background-image: var(--bknd_white_elipse);
		background-position: right 110% top 40%;
		background-size: 180%;
	}
}

.pi_card_full .card-image {
	display: flex;
	flex: 1 1 auto;
	justify-content: center;
	align-items: center;
	align-self: stretch;
	padding: 20px;
}

.pi_card_full .content{
	display: flex;
	flex: 0 0 50%;
	justify-content: center;
	align-items: center;
	align-self: stretch;
	position: relative;
		z-index: 40;
	padding: 50px 20px;
	background-repeat: no-repeat;
	background-position: center;
	line-height: 1.3;
}

.pi_card_full .card-image {
    overflow: hidden
}

.pi_card_full .card-image .image_inner {
    position: relative
}

 .pi_card_full .card-image img {
	 width: 100%;
	 height: 100%;
	 border-radius: 100%;
	 border: 2px solid var(--wp--preset--color--pi-mustard);
	 -o-object-fit: cover;
	 object-fit: cover;
	 object-position: center;
	 aspect-ratio: 1/1;
}

.pi_card_full_group .pi_card_full .mini_slider {
    background-color: transparent
}

.pi_card_full_group .pi_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
}

.pi_card_full_group .pi_card_full .mini_slider .lt_arrow {
    left: auto;
    padding: 8px 2px 8px 0;
    right: 1.6em
}

.pi_card_full_group .pi_card_full .mini_slider .rt_arrow {
    padding: 8px 0 8px 2px;
    right: .5em
}

.pi_card_full_group .pi_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
}

.pi_card_full .wp-block-dbcblocks-full-card-copy .inner{
	max-width: 450px;
}

.pi_card_full .wp-block-dbcblocks-full-card-copy figure.wp-block-image{
	margin-bottom: 20px;
}

.pi_card_full .content .inner h2,
.pi_card_full .content .inner h3{
	margin-bottom: .5em;
}

@media (min-width: 768px){
	.pi_card_full .within{
		display: flex;
		align-items: center;
	}

	.pi_card_full .card-image .wp-block-image{
		margin: -80px 0;
	}

	.pi_card_full.full_headroom .card-image .wp-block-image{
		margin: 20px 0;
	}
}

@media (max-width: 767px){

	.pi_card_full .content{
		padding: 20px 0;
		margin-top: 40px;
	}

	.pi_card_full .card-image {
		padding: 50px 20px 30px;
	}
}

@media(min-width: 1000px) {

    .pi_card_full.frontend .within,
    .pi_card_full .within > .block-editor-inner-blocks > .block-editor-block-list__layout{
        display:flex;
        justify-content: flex-start;
    }

    .pi_card_full.center_content.frontend .within,
    .pi_card_full.center_content .within > .block-editor-inner-blocks > .block-editor-block-list__layout{
			justify-content: center;
		}

}

@media (max-width: 767px){

	.pi_card_full_group .pi_card_full .content h2{
		--large_font_size: 3rem;
	}
}


.pi_card_full_group .pi_card_full.is-style-about_style {
	padding-bottom: 0;
}

.pi_card_full_group .pi_card_full.is-style-about_style .container{
	background-image: var(--bkd_about_border);
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
}

.pi_card_full_group .pi_card_full.is-style-about_style .within{
    min-height: 1000px;
}

.pi_card_full_group .pi_card_full.is-style-about_style .content{
	padding: 20px 100px;
}

@media (max-width: 767px){

	.pi_card_full_group .pi_card_full.is-style-about_style .within{
		min-height: 880px;
		padding: 0 0 130px;
	}

	.pi_card_full_group .pi_card_full.is-style-about_style .container{
		background-image: var(--bkd_about_border_mobile);
	}

	.pi_card_full_group .pi_card_full.is-style-about_style .inner{
		max-width: 70%;
	}

	.pi_card_full_group .pi_card_full.is-style-about_style .content{
		padding: 20px 50px
	}
}

/* ===================== card anis ===================== */

.pi_card_full {
	position: relative;
	overflow: hidden
}

.pi_card_full .mtn{
	position: absolute;
		bottom: 0;
		z-index: 1;
	opacity: 1;
	/* pointer-events: none; */
}

.pi_card_full .card-image{
	position: relative;
	z-index: 40;
}

.pi_card_full.mtn_ani_1 .container,
.pi_card_full.mtn_ani_2 .container{
	width: 100%;
}

.pi_card_full.mtn_ani_1 .mtn_1{
	left: -9%;
	width: 21.7vw;
}

.pi_card_full.mtn_ani_1 .mtn_2{
	right: 37%;
	z-index: 30;
	width: 24.35vw;
}

.pi_card_full.mtn_ani_1 .mtn_3{
	right: -6%;
	z-index: 10;
	width: 26.7vw;
}

@media (max-width: 767px){

	.pi_card_full.mtn_ani_1 .mtn_1{
		display: none;
	}

	.pi_card_full.mtn_ani_1 .mtn_2{
		right: 52%;
		width: 82.35vw;
	}

	.pi_card_full.mtn_ani_1 .mtn_3{
		width: 56.7vw;
	}
}

/* --- */

.pi_card_full.mtn_ani_2 .mtn_1{
    left: -13%;
    width: 20.7vw;
    z-index: 30;
}

.pi_card_full.mtn_ani_2 .mtn_2{
	right: 36%;
	z-index: 10;
	width: 24.35vw;
}

.pi_card_full.mtn_ani_2 .mtn_3{
	right: -11%;
	z-index: 10;
	width: 26.7vw;
}

@media (max-width: 767px){

	.pi_card_full.mtn_ani_2 .within{
		display: flex;
		flex-direction: column;
	}

	.pi_card_full.mtn_ani_2 .within .card-image{
		order: 2;
	}

	.pi_card_full.mtn_ani_2 .mtn_1{
    left: -16%;
    width: 46.7vw;
	}

	.pi_card_full.mtn_ani_2 .mtn_2{
		right: -37%;
		width: 94.35vw;
	}

	.pi_card_full.mtn_ani_2 .mtn_3{
		display: none;
	}
}

/* ===================== Video Hero ===================== */

.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;
	transition: opacity .3s ease-in-out;
}

.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:'';
}

.video_wrap .video_overlay_play.fade{
	opacity: 0;
}

.video_wrap .video_overlay_play.remove{
	display: none;
}

@media (max-width: 767px){

	.video_wrap .video_overlay_play::after{
		background-size: 70px;
	}
}

.video_hero {
	overflow: hidden;
	position: relative;
	max-height: calc(100vh - 70px);
	min-height: 54vw;
}

.video_hero .cta_row{
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
		bottom: 50px;
		left: 50%;
		z-index: 1;
	transform: translateX(-50%);
	gap: 20px;
}

@media (max-width: 767px){

	.video_hero .cta_row{
		bottom: 20px;
	}

	.video_hero .cta_row .cta{
		white-space: nowrap;
	}
}

@media (max-width: 450px){
	
	.video_hero .cta_row .cta{
		font-size: .9rem;
	}
}

.video_hero.flagship{
	padding: 50px 20px;
	min-height: 0;
	max-height: none;
}

.video_wrap.flagship .video_overlay_play::after{
	background-size: 110px;
}

.video_hero.flagship .flagship_hdr{
	margin: 0 0 1em;
	font-size: 3rem;
	color: #ffffff;
	text-align: center;
	text-transform: uppercase;
}

.video_hero.flagship .video_wrap {
	position: relative;
	width: var(--container);
	max-width: 100%;
	margin: auto;
}

.video_hero.flagship .video_wrap .inner{
	border: 2px solid var(--wp--preset--color--pi-mustard);
	border-radius: 20px;
	overflow: hidden;
}

.video_hero.flagship .top_label{
	position: absolute;
		top: 0;
		left: 60px;
		z-index: 1;
	transform: translateY(-50%);
}

.video_hero.flagship .flagship_copy{
	width: 750px;
	max-width: 100%;
	margin: 50px auto 0;
	color: #ffffff;
}

@media (max-width: 500px){
	
	.video_hero.flagship .top_label{
		left: 30px;
		font-size: 1rem;
	}
}

/* ===================== Locations Detail ===================== */

.location_detail .container{
	padding-top: 80px;
	padding-bottom: 50px;
}

.location_detail .container > .inner{
	overflow: hidden;
}

.location_detail .info{
	flex: 0 0 48%;
	padding: 70px 50px;
	background-color: #ffffff;
	border-radius: 10px;
	color: #000000;
}

.location_detail .loc_copy{
	margin-bottom: 30px;
}

.location_detail .top_info{
	justify-content: space-between;
	align-self: stretch;
}

.location_detail .today_closing,
.location_detail .address{
	margin-bottom: 1em;
}

.location_detail .hero{
	flex: 1 1 auto;
	overflow: hidden;
	border-radius: 10px;
	order: 99;
}

.location_detail .hero, 
.location_detail .hero .slick-slider,
.location_detail .hero .slick-list,
.location_detail .hero .slick-track,
.location_detail .hero .slick-slide,
.location_detail .hero .slick-slide > div,
.location_detail .hero .slick-slide .hero_slide{
	height: 100%;
}

.location_detail .hero img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.location_detail h1{
	margin-bottom: .4em;
	font-size: 2rem;
	font-size: 4.5rem;
	color: var(--wp--preset--color--pi-red);
	text-transform: uppercase;
}

.location_detail .is-style-red_bknd {
	background-color: #4b0104;
	background-image: var(--bknd_white_elipse), var(--bknd_maze_pattern);
	background-repeat: no-repeat, repeat;
	background-position: bottom -420px right -350px, center;
	background-size: 1260px, 300px;
	animation: none;
}

.location_detail .is-style-red_bknd .container{
	background: none;
}

.location_detail .cta_box.stack{
	display: inline-grid;
	flex: 1 1 auto;
	grid-gap: 20px;
	grid-template-columns: auto;
	justify-items: center;
}

.location_detail .cta_box.stack .cta{
	width: 10em;
	max-width: 100%;
}

.location_detail .cta_box.quad_grid{
	display: inline-grid;
	grid-gap: 20px;
	grid-template-columns: auto;
	margin: 50px 0;
}

.location_detail .hours {
	font-size: 1.5rem;
}

.location_detail .hours thead{
	position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0;
}

.location_detail .hours td{
	padding-bottom: .2em;
}

.location_detail .hours td:first-child{
	padding-right: 3em;
}

@media (min-width: 1101px) and (max-width: 1350px){

	.location_detail h1{
		font-size: 2rem;
	}
}

@media (min-width: 1101px){

	.location_detail .container > .inner,
	.location_detail .info,
	.location_detail .top_info{
		display: flex;
	}

	.location_detail .info{
		flex-direction: column;
		align-items: flex-start;
	}

	.location_detail .container > .inner{
		gap: 60px;
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.location_detail .cta_box.quad_grid{
		grid-template-columns: auto auto;
	}


	.location_detail .hours{
		order: 99;
	}
}

@media (max-width: 1100px){

	.location_detail .top_content > .container {
		width: 500px;
	}

	.location_detail .top_content .hero{
		margin-bottom: 30px;
	}

	.location_detail .container > .inner{
		text-align: center;
	}

	.location_detail h1{
		font-size: 3rem;
	}

	.location_detail .info{
		padding: 40px 20px;
	}


	.location_detail .hours_table{
		display: inline-block;
		font-size: 1rem;
		text-align: left;
	}

	.location_detail .cta_box.stack .cta,
	.location_detail .cta_box.quad_grid .cta{
		width: 12em;
	}

	.location_detail .cta_box.stack{
		grid-gap: 10px;
		margin: 30px 0;
	}

	.location_detail .hours_table{
    padding-top: 30px;
    padding-bottom: 20px;
	}

	.location_detail .map.reg_layout{
		height: calc(100vw - 40px);
	}
}

/* flagship */
.location_detail.flagship{

}

.location_detail .card_content {
	padding: 50px 0;
}

.location_detail .card_content .container > .inner{
	display: grid;
	grid-gap: 50px;
	grid-template-columns: 1fr 1fr;
	justify-items: center;
}


.location_detail .card_content .info,
.location_detail .card_content .map,
.location_detail .flagship_card .inner{
	border: 1px solid var(--wp--preset--color--pi-mustard);
	border-radius: 10px;
}

.location_detail .card_content .info{
	width: 100%;
}

.location_detail .card_content .map{
	border-radius: 10px;
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.location_detail .map.reg_layout{
	height: 300px;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid var(--wp--preset--color--pi-mustard);
}

.location_detail .card_content .map .loc_pin{
	width: 1em;
	height: 1em;
	font-size: 4rem;
	transform: translate(-50%,-50%);
}

.location_detail .flagship_card{
	position: relative;
	width: 100%;
	height: 100%;
	min-width: 0;
}

.location_detail .flagship_card .slick-slider{
	z-index: 5;
}

.location_detail .flagship_card .slick-prev {
	left: 20px;
	background-image: var(--icon_slider_arrow_l_white);
}

.location_detail .flagship_card .slick-next{
	right: 20px;
	background-image: var(--icon_slider_arrow_r_white);
}

.location_detail .flagship_card .inner{
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	background-color: #ffffff;
}

.location_detail .flagship_card img{
	width: 100%;
	height: 400px;
	object-fit: cover;
}

.location_detail .flagship_card .banner{
	position: absolute;
		top: 0;
		left: 20px;
		z-index: 10;
	transform: translateY(-50%);
}


.location_detail .flagship_card .copy{
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 30px;
}

.location_detail .flagship_card .copy .cta_row{
	margin: auto 0 0 0;
}

.location_detail .flagship_card .copy h2,
.location_detail .flagship_card .copy h3{
	margin-bottom: .5em;
	font-size: 3rem;
	text-transform: uppercase;
}

/* reg layout */
.location_detail .top_content .hero .slick-dots{
	z-index: 100;
}

.location_detail .top_content .hero .slick-arrow{
	font-size: 3rem;
}

.location_detail .top_content .hero .slick-prev{
	left: 10px;
	background-image: var(--icon_slider_arrow_l_wbord);
}

.location_detail .top_content .hero .slick-next{
	right: 10px;
	background-image: var(--icon_slider_arrow_r_wbord);
}

.location_detail .top_content .hero .slick-dots button{
	border-color: #ffffff;
}

@media (max-width: 1150px){


	.location_detail .card_content .container > .inner{
		width: 500px;
		max-width: 100%;
		margin: auto;
		grid-template-columns: 1fr;
	}

	.location_detail .card_content .map{
		width: 100%;
		height: auto;
		aspect-ratio: 1/1;
	}
}

/* ===================== locations grid block  ===================== */

.locations_grid {
	background-image: var( --bknd_wood_grain );
	background-position: center top;
	background-color: #000000;
	padding: 45px 0;
}

.locations_grid .container{
	padding: 0 40px;
}

.locations_grid h2{
	margin-bottom: 10px;
	font-size: var(--medium_font_size);
	color: #ffffff;
	text-align: center;
	text-transform: uppercase;
}

.locations_grid .loc_grid{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 28px;
}

@media (max-width: 1680px){

	.locations_grid.compact .container{
		width: 1000px;
	}

	.locations_grid.compact .loc_grid{
		grid-template-columns: 1fr 1fr;
	}
}

.locblock{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 20px 30px 35px;
	background-color: #ffffff;
	border-radius: 10px;
	gap: 10px;
}

.locblock .locblock_img{
	border-radius: 100%;
	aspect-ratio: 1/1;
	object-fit: cover;
	width: 100%;
}

.locblock h3{
	margin: 18px 0 5px;
	font-size: 2rem;
	text-transform: uppercase;
	text-align: center;
}

.locblock h3 a{
	text-decoration: none;
	border-bottom: 3px solid transparent;
	transition: border-color .3s ease-in-out;
}

.locblock h3 a:hover{
	border-color: currentColor;
}

.locblock .address{
	font-size: 1.2rem;
}

.locblock .cta_row{
	display: flex;
	justify-content: space-between;
	align-self: stretch;
	margin-top: 20px;
	gap: 20px;
}

.locblock .cta_row .cta{
	flex: 1 1 auto;
	font-size: .8em;
}

@media (max-width: 835px){

	.locations_grid .loc_grid{
		max-width: 480px;
		margin: auto;
	}

	.locations_grid.compact .loc_grid{
		grid-template-columns: 1fr;
	}

	.loc_landing.compact .locblock{
		display: grid;
		grid-template-columns: 1fr 2fr;
		grid-gap: 20px;
		padding: 20px;
	}

	.locblock h3{
		margin-top: 0;
	}

	.locblock .locblock_img{
		width: 83%;
		justify-self: center;
	}

	.locblock .name_add{
		text-align: center;
	}

	.locblock .cta_row{
		grid-area: 2/1/3/-1;
	}

	.locblock .cta_row .cta{
		font-size: 1em;
	}
}

@media (max-width: 440px){

	.locblock{
		grid-template-columns: 1fr;
	}

	.locblock .cta_row{
		flex-direction: column;
		align-items: center;
		grid-area: 3 / 1 / 4 / -1;
	}
}

/* loc landing */
.loc_landing {
	padding-top: 135px;
}

.loc_landing .loc_grid{
	grid-row-gap: 200px;
	grid-column-gap: 90px;
	grid-template-columns: 1fr 1fr 1fr;
}

.loc_landing .locblock {
	justify-content: flex-end;
	padding-right: 20px;
	padding-left: 20px;
	border-radius: 20px;
}

.loc_landing .locblock .img_wrap{
	position: relative;
	margin-top: -90px;
	margin-bottom: 20px;
}

.loc_landing .locblock .img_wrap .mustard_label{
	position: absolute;
		top: 130px;
		left: -110px;
		z-index: 1;
	padding-right: 3em;
	padding-left: 3em;
}

.loc_landing .locblock .today_closing{
	margin-bottom: 20px;
}

.loc_landing .locblock .name_add{
	align-self: stretch;
	line-height: 1.3;
}

.loc_landing .locblock .phone{
	display: inline-block;
	margin-top: 20px;
}

.loc_landing .locblock .cta_row .cta{
	flex: 0 0 auto;
	width: 10em;
}

.loc_landing .locblock .locblock_img{
	border-radius: 100%;
}

.locations_grid.loc_landing .locblock h2{
	color: var(--wp--preset--color--pi-red);
}

@media (min-width: 1401px){
	
	.loc_landing .locblock .cta_row {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 1400px){
	
	.loc_landing .locblock .cta_row {
		display: grid;
		grid-template-columns: 1fr;
		justify-items: center;
	}
}

@media (min-width: 1101px){

	.loc_landing .locblock .name_add,
	.locations_grid.loc_landing .locblock h2{
		text-align: left;
	}

	.loc_landing .locblock:first-child{
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		padding-right: 80px;
		padding-left: 80px;
		grid-area: 1 / 1 / 2 / -1;
	}

	.loc_landing .locblock:first-child .name_add{
		align-self: flex-start;
		padding: 90px 20px 0;
	}

	.loc_landing .locblock:first-child .cta_row{
		display: flex;
		flex-direction: column;
		flex: 0 1 35%;
		justify-content: flex-start;
		align-items: flex-start;
		padding-top: 80px;
	}

	.loc_landing .locblock:first-child .img_wrap{
		margin: -60px 0;
		flex: 0 1 39%;
	}
}

@media (min-width: 1101px) and (max-width: 1200px){

	.loc_landing .loc_grid{
		grid-row-gap: 120px;
		grid-column-gap: 30px;
		grid-template-columns: 1fr 1fr;
	}
}

@media (min-width: 1101px) and (max-width: 1500px){

	.loc_landing .locblock:first-child{
		padding-left: 40px;
		padding-right: 40px;
	}

	.locations_grid.loc_landing .locblock h2{
		font-size: 2rem;
	}

	.loc_landing .locblock .img_wrap .mustard_label{
		position: absolute;
			top: 80px;
			left: -35px;
			z-index: 1;
		padding-right: 2em;
		padding-left: 2em;
		font-size: 1.5rem;
	}

	.loc_landing .locblock:first-child .name_add{
		padding: 60px 20px 0;
	}

	.loc_landing .locblock:first-child .cta_row{
		padding-top: 40px;
	}
}

@media (max-width: 1100px){
	
	.locblock .cta_row{
		flex-direction: column;
		justify-content: center;
		width: 12em;
		max-width: 100%;
		margin: auto;
		gap: 10px;
	}

	.loc_landing .loc_grid{
		width: 500px;
		max-width: 100%;
		margin: auto;
		grid-template-columns: 1fr;
	}

	.loc_landing .locblock .name_add{
		text-align: center;
		margin-bottom: 50px;
	}

	.loc_landing .locblock .img_wrap{
		display: flex;
	}

	.locblock .locblock_img{
		flex: 1 1 auto;
	}

	.loc_landing .locblock .img_wrap .mustard_label{
		top: auto;
		bottom: 20px;
		left: 0;
		font-size: 1.3rem;
	}
}

/* ===================== 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--pi-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 #000;
	border: 2px solid #000;
}

@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;
	}
}

#loc_search {
	position: relative;
		z-index: 100;
	text-align: center;
}

#loc_search .dropdown_wrap button{
	padding-right: 1.3em;
	margin-bottom: .4em;
	background-image: var(--icon_arrow_dwn);
	background-repeat: no-repeat;
	background-position: right .3em center;
	background-size: .6em;
	font-size: 2rem;
}

#loc_search .dropdown_wrap ul,
.order_popup .dropdown_wrap ul{
	text-align: left;
}

.no_menu #loc_search .dropdown_wrap ul,
.no_specials #loc_search .dropdown_wrap ul{
	position: static;
}

@media (max-width: 767px){

	#loc_search .dropdown_wrap button{
		font-size: 1.5rem;
	}
}


/* ===================== 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 {
	--radius: 10px;
}

.foodmenu .vis_title{
	font-size: 3rem;
}

.foodmenu .menu_hdr{
	position: relative;
		z-index: 20;
	padding: 50px 20px;
	text-align: center;
}

.foodmenu .menu_hdr .dropdown_wrap{
	font-size: 1.2rem;
}

.foodmenu .menu_hdr .content{
	width: 900px;
	margin: 50px auto 0;
	max-width: 97%;
}

.foodmenu .menu_nav {
	position: -webkit-sticky;
	position: sticky;
		top: 70px;
		z-index: 10;
	padding: 40px 10px;
	background-color: #ffffff;
	text-align: center;
}

.foodmenu .menu_nav > .inner{
	justify-self: center;
	display: flex;
	flex-wrap: wrap;
}

.foodmenu .menu_nav button{
	padding: .3em 1em;
	margin: 0 5px 5px;
	border-radius: 20px;
	font-family: var(--heading_font);
	font-size: 1.5rem;
	line-height: 1;
	text-transform: uppercase;
}

.foodmenu .menu_nav .maindesk button.active{
	color: #ffffff;
	background-color: var(--wp--preset--color--pi-red);
}

@media (min-width: 768px){
	
	.foodmenu .menu_nav button:hover{
		color: #ffffff;
		background-color: var(--wp--preset--color--pi-red);
	}
}

@media (max-width: 767px){

	.foodmenu .menu_nav{
		padding: 40px 10px 20px;
	}

	.foodmenu .menu_nav button{
		flex: 0 0 auto;
	}
}

@media (max-width: 450px){
	
	.foodmenu .menu_hdr .dropdown_wrap button{
		padding: 0 3em;
	}
}

.foodmenu h1{
	margin-bottom: 10px;
	font-size: 5rem;
	text-transform: uppercase;
}

.foodmenu .cat_hdr{
	font-size: 4.3rem;
	color: var(--wp--preset--color--pi-red);
}

.loc_results.no_res{
	position: absolute;
		z-index: 10;
	width: 100%;
	padding: 1em 0;
}

.foodmenu .video_wrap{
	position: relative;
	margin-bottom: 70px;
}

.foodmenu .item_grid{
	display: grid;
	grid-row-gap: 70px;
	grid-column-gap: 6%;
	grid-template-columns: repeat( auto-fill, minmax(310px, 1fr) );
}

.foodmenu .cat_panel{
	background-image: var( --bknd_wood_grain );
	background-position: center top;
}

.foodmenu .cat_panel > .inner{
	width: 85%;
	border-radius: var(--radius);
	padding: 60px 75px;
	margin: 150px auto;
	background-color: #ffffff;
	max-width: 1634px;
}

.foodmenu .cat_panel .sec_header{
	padding: 70px 0;
	background-color: #ffffff;
	text-align: center;
}

@media (max-width: 800px){
	.foodmenu .item_grid{
		grid-template-columns: 1fr;
	}
}

.foodmenu .section{
	padding-bottom: 50px;
}

.foodmenu .section .video_wrap .loader{
	position: absolute;
		top: 50%;
		left: 16%;
		z-index: 1;
	font-size: 1rem;
	color: var(--wp--preset--color--pi-red);
}

@media (max-width: 767px){

	.foodmenu .section .video_wrap .loader{
		font-size: .5rem;
	}
}

.foodmenu .section video{
	position: relative;
		z-index: 10;
	aspect-ratio: 1/0.562273;
}

.foodmenu .sec_desc{
	margin-bottom: 50px;
	text-align: center;
}

.foodmenu .menu_item h3{
	margin-bottom: 20px;
	font-size: 2.2rem;
	text-transform: uppercase;
	line-height: 1.2;
}

.foodmenu .menu_item .item_img{
	overflow: hidden;
	margin-bottom: 47px;
	border-radius: var(--radius);
}

.foodmenu .menu_item .item_img img{
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: 1/ 0.66666;
}

.foodmenu .menu_item.featured{
	border-radius: var(--radius);
	color: #ffffff;
	grid-area: auto / 1 / auto / -1;
}

.foodmenu .menu_item.featured .copy{
	position: relative;
}

@media (min-width: 768px){

	.foodmenu .menu_nav{
		top: 60px;
	}

	.foodmenu .menu_item.featured {
		display: flex;
	}

	.foodmenu .menu_item.featured .copy{
		display: flex;
		flex: 1 0 50%;
	}

	.foodmenu .menu_item.featured.alternate .feat_img{
		order: 2;
		border-top-right-radius: var(--radius);
		border-bottom-right-radius: var(--radius);
	}
}

.foodmenu .menu_item.featured .copy .centered{
	width: 100%;
	padding: 20px 70px;
	margin: 100px 0 40px;
	text-align: left;
}

.foodmenu .menu_item.featured .copy .callout{
	position: absolute;
		top: 1em;
		left: -1em;
	padding: .6em .8em .4em;
}

.foodmenu .menu_item.featured .copy h3{
	text-transform: uppercase;
	font-size: 3rem;
	margin-bottom: 40px;
}

.foodmenu .menu_item.featured .copy .desc{
	font-size: 1.5rem;
}

.foodmenu .menu_item.featured .feat_img{
	flex: 1 1 auto;
	overflow: hidden;
}

.foodmenu .menu_item.featured:not(.alternate) .feat_img{
	border-top-left-radius: var(--radius);
	border-bottom-left-radius: var(--radius);
}

.foodmenu .menu_item.featured .feat_img img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.foodmenu .menu_item .desc strong{
	font-weight: bold;
}

#mobile_menu_nav{
	padding: .5em 0;
}

#mobile_menu_nav .tablist_mobile{
	transform: translateY(1px);
    padding-top: 0.4em;
}

#mobile_menu_nav .tablist_mobile .inner{
	display: flex;
	flex-direction: column;
	align-items: center;
}

#mobile_tab_toggle{
	padding: .4em 4em .2em;
}

@media (max-width: 767px){

	.foodmenu .menu_nav{
		top: 50px;
	}

	.foodmenu .menu_nav button{
		font-size: 1.2rem;
	}

	.foodmenu .cat_hdr{
		font-size: 3.2rem;
	}

	.foodmenu .cat_panel > .inner{
		width: 92%;
		padding: 30px 25px;
		margin: 60px auto;
	}

	.foodmenu h1{
		font-size: 3rem;
	}

	.foodmenu .menu_item h3,
	.foodmenu .menu_item .desc{
		text-align: center;
	}

	.foodmenu .menu_item h3{
		font-size: 1.8rem;
	}

	.foodmenu .item_grid{
		grid-row-gap: 30px;
	}

	.foodmenu .menu_item .item_img{
		margin-bottom: 25px;
	}

	.foodmenu .menu_item.featured .copy .centered{
		padding: 45px 20px 20px;
		margin-top: 0;
		text-align: center;
	}

	.foodmenu .menu_item.featured .copy h3{
		font-size: 2rem;
	}

	.foodmenu .menu_item.featured .copy .desc{
		font-size: 1rem;
	}

	.foodmenu .menu_item.featured .copy .callout{
		top: 0;
		left: -10px;
		transform: translateY(-50%);
		font-size: 1rem;
	}
}

.foodmenu .foot_oo{
	margin-top: 60px;
}


/* ===================== Location Select ===================== */

.locselect{
	display: flex;
	justify-content: center;
	position: relative;
		z-index: 100;
	padding: 0px 0 100px;
}

.locselect h2{
	padding-right: 1em;
	background-repeat: no-repeat;
	background-position: right center;
	background-size: .6em;
	font-family: var(--heading_font);
	font-size: 3rem;
	color: var(--wp--preset--color--pi-red);
	text-transform: uppercase;
}

/* ===================== Events ===================== */

.events{
	padding: 90px 0;
	background-image: var(--bknd_maze_pattern_2);
	background-position: center;
	background-size: 300px;
}

.events_grid_hdr{
	padding: 1em 0;
	font-size: 3rem;
	text-align: center;
}

.events .container{
	width: 1400px;
}

.event_blocks{

}

.event_blocks .event_block{
	background-color: #faf9f4;
	border: 1px solid #ede0cd;
	border-radius: 10px;
	margin-bottom: 80px;
}

.event_blocks .event_block .inner{
	display: flex;
}

.event_blocks .event_block .event_copy{
	margin-bottom: 1em;
}

.event_blocks .event_block .hero{
	position: relative;
	flex: 0 0 50%;
	overflow: hidden;
	border-radius: 10px;
}

.event_blocks .event_block .hero img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.event_blocks .event_block .info{
	flex: 1 1 auto;
	padding: 30px;
}

.event_blocks .event_block .info h2{
	margin-bottom: .8em;
	font-family: var(--heading_font);
	font-size: 2.5rem;
}

.event_blocks .event_block .loc_banner{
	padding: .3em 1em .1em;
	display: inline-block;
	margin-bottom: 20px;
	background-color: #ffffff;
	border-radius: 20px;
	border: 1px solid var(--wp--preset--color--pi-mustard);
	font-family: var(--heading_font);
	color: var(--wp--preset--color--pi-red);
	text-transform: uppercase;
}

.event_blocks .event_block .event_date,
.news .news_post .news_date{
	display: flex;
	flex-direction: column;
	position: absolute;
		top: 15px;
		left: 15px;
		z-index: 1;
	justify-content: center;
	align-items: center;
	width: 2.8em;
	padding: .2em;
	background-color: var(--wp--preset--color--pi-red);
	border-radius: 100%;
	border: 2px solid var(--wp--preset--color--pi-mustard);
	font-family: var(--heading_font);
	font-size: 2rem;
	color: #ffffff;
	line-height: .8;
	text-align: center;
	aspect-ratio: 1/1;
}

.news .news_post .news_date span{
	display: inline-block;
	margin-bottom: .2em;
	font-size: .7em;
}

.two_up_events .event_blocks {
	display: grid;
	grid-gap: 50px;
	grid-template-columns: 1fr 1fr;
	justify-items: center;
}

.two_up_events {
	padding-top: 0;
	padding-bottom: 50px;
}

.two_up_events .event_blocks .event_block .inner{
	flex-direction: column;
}

.two_up_events .event_blocks .event_block .info{
	padding-top: 0;
}

.event_blocks .event_block .loc_banner{
	margin-bottom: 10px;
	transform: translateY(-50%);
}


@media (min-width: 768px){

	.full_w_event .event_blocks .event_block:nth-child(even) .hero{
		order: 99;
	}
}

@media (max-width: 1000px){
	
	.events .container{
		width: 500px;
	}

	.two_up_events .event_blocks {
		grid-template-columns: 1fr;
	}

	.event_blocks .event_block .inner{
		flex-direction: column;
		text-align: center;
	}

	.event_blocks .event_block .cta_group{
		display: flex;
		flex-direction: column;
		align-items: center;
	}
}

@media (max-width: 767px){

	.event_blocks .event_block .info h2{
		font-size: 1.5rem;
	}
}

/* ===================== Private Dining ===================== */

.private_dining{
	background-image: var(--bknd_maze_pattern_2);
	background-size: 300px;
	background-position: center;
}

.private_dining .page_heading .container{
	padding-top: 150px;
	padding-bottom: 80px;
	background-image: none;
}

.private_dining .tablist_mobile{
	top: 20px;
	height: 0;
	text-align: center;
}

.private_dining .tabrow{
	display: flex;
	position: relative;
	top: 38px;
	z-index: 10;
	justify-content: center;
	align-items: flex-start;
	height: 0;
	gap: 22px;
}

.private_dining .tabrow .tabbtn{
	padding: .5em 2.3em;
	background-color: #ffffff;
	border-radius: 10px;
	border: 2px solid var(--wp--preset--color--pi-mustard);
	font-family: var(--heading_font);
	font-size: 1.5rem;
	color: #000000;
	text-transform: uppercase;
}

.private_dining .tabrow .tabbtn.active{
	color: #ffffff;
	background-color: var(--wp--preset--color--pi-red);
}

.private_dining .gd_hdr{
	margin-bottom: .5em;
	font-size: 4rem;
	text-align: center;
	text-transform: uppercase;
}

.private_dining .eventspace_hdr{
	padding-top: 80px;
	padding-bottom: 80px;
}

.private_dining .spaces .container{
	width: 1530px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.private_dining .space{
	display: block;
	overflow: hidden;
	margin-bottom: 100px;
	background-color: #faf9f4;
	border-radius: 10px;
	border: 1px solid #ede0cd;
	width: 48%;
}

.private_dining .space .image{
	flex: 0 0 50%;
	overflow: hidden;
	border-radius: 10px;
}

.private_dining .space .image_slider{
	flex: 0 0 48%;
	overflow: hidden;
	aspect-ratio: 1 / 1;
}

.private_dining .space .image_slider .slick-arrow{
	font-size: 3rem;
}

@media (max-width: 900px){

	.private_dining .space .image_slider .slick-arrow{
		font-size: 2rem;
	}
}

.private_dining .space .image_slider .slick-list,
.private_dining .space .image_slider .slick-track,
.private_dining .space .image_slider .slick-slide,
.private_dining .space .image_slider .slick-slide > div,
.private_dining .space .image_slider .slick-slide .image{
	height: 100%;
}

.private_dining .space .slick-prev {
	left: 20px;
	background-image: var(--icon_slider_arrow_l_white);
}

.private_dining .space .slick-next{
	right: 20px;
	background-image: var(--icon_slider_arrow_r_white);
}

.private_dining .space .image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.private_dining .space .copy{
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	padding: 20px 40px;
}

.private_dining .space .copy h2,
.private_dining .space .copy h3,
.private_dining .space .copy h4{
	text-transform: uppercase;
	font-size: 2.5rem;
	margin-bottom: 1em;
}

.private_dining .space .copy strong{
	font-weight: bold;
}

@media (min-width: 768px){

	.private_dining .space:nth-child(even) .image_slider{
		order: 99;
	}
}

@media (max-width: 1000px){
	
	.private_dining .spaces .container{
		display: block;
		width: 500px;
	}

	.private_dining .space{
		width: 100%;
		margin-bottom: 40px;
	}
}

@media (max-width: 1065px){
	
	.private_dining .tabrow .tabbtn{
		font-size: 1rem;
	}
}

@media (max-width: 767px){
	
	.private_dining .gd_hdr{
		font-size: 2.5rem;
	}

	.private_dining .space{
		flex-direction: column;
	}

	.private_dining .space .copy{
		justify-content: center;
		text-align: center;
	}

	.private_dining .space .copy h2,
	.private_dining .space .copy h3,
	.private_dining .space .copy h4{
		font-size: 2rem;
	}

	.private_dining .space .image_slider{
		margin-bottom: 29px;
	}
}

@media (max-width: 400px){

	.private_dining .gd_hdr{
		font-size: 2rem;
	}
}

/* ===================== Legacy ===================== */

#legacy{
	overflow: hidden;
}

#legacy,
#legacy .legacy_block:nth-child(2) .copy,
#legacy .legacy_block:nth-child(3) .copy,
#legacy .legacy_block:nth-child(4) .copy {
	background-image: var(--bknd_maze_pattern_2);
	background-color: #ffffff;
}

#legacy .legacy_block:nth-child(2) .copy,
#legacy .legacy_block:nth-child(3) .copy,
#legacy .legacy_block:nth-child(4) .copy {
	border-radius: 10px;
}

#legacy .topheader{
	padding: 90px 20px 50px;
}

#legacy .top_copy{
	width: 1200px;
	max-width: 100%;
	--pad: 19px;
	padding: 20px;
	margin: auto;
	background-color: #faf9f4;
	position: relative;
}

#legacy .top_copy .inner{
	padding: 20px 70px;
	border: 3px solid #bea773;
}

#legacy .top_copy .legacy_corner{
	position: absolute;
	z-index: 10;
	width: 71px;
}

#legacy .top_copy .legacy_corner.tl{
	top: var(--pad);
	left: var(--pad);
}

#legacy .top_copy .legacy_corner.tr{
	top: var(--pad);
	right: var(--pad);
	transform: rotate(90deg);
}

#legacy .top_copy .legacy_corner.bl{
	bottom: var(--pad);
	left: var(--pad);
	transform: rotate(-90deg);
}

#legacy .top_copy .legacy_corner.br{
	bottom: var(--pad);
	right: var(--pad);
	transform: rotate(180deg);
}

#legacy .top_copy .legacy_characters{
	position: absolute;
		top: -20px;
		left: 50%;
		z-index: 5;
	width: 177px;
	transform: translateX(-50%);
}

#legacy .top_copy::after{
	display: inline-block;
	position: absolute;
		top: 5px;
		left: 50%;
		z-index: 1;
	width: 320px;
	height: 20px;
	background-color: #faf9f4;
	font-size: 1rem;
	content:'';
	transform: translateX(-50%);
}


#legacy .top_copy h1,
#legacy .top_copy h2{
	font-family: var(--heading_font);
	color: var(--wp--preset--color--pi-red);
	text-transform: uppercase;
	font-size: 2.8rem;
	margin-bottom: 20px;
}

@media (max-width: 500px){
	#legacy .top_copy .inner{
		padding: 20px 30px 60px;
	}
}

@media (max-width: 400px){
	
	#legacy .top_copy .inner{
		padding-top: 40px;
	}

	#legacy .top_copy .legacy_characters{
		top: 1%;
		width: 32vw;
	}

	#legacy .top_copy h1, 
	#legacy .top_copy h2{
		font-size: 2rem;
	}

	#legacy .top_copy::after{
		width: 41%;
	}

}

#legacy .timeline{
	position: relative;
	width: 1450px;
	max-width: 100%;
	margin: -160px auto 0;
}

#legacy .history_heading{
	text-transform: uppercase;
	font-family: var(--heading_font);
	font-size: 4.3rem;
	color: var(--wp--preset--color--pi-red);
	padding: 50px 0;
	position: relative;
	z-index: 100;
}

#legacy .history_heading p{
	margin-bottom: 0;
	line-height: 1.2;
}

#legacy .history_heading .est_date{
	font-size: .7em;
}


#legacy #map_line_desk,
#legacy #map_line_mobile{
	position: absolute;
	top: 840px;
	left: 53%;
	z-index: 1;
	height: 68%;
	max-width: 100%;
	pointer-events: none;
	transform: translate(-50%,0%);
}

#legacy #map_line_mobile{
	top: 2%;
	z-index: 10;
	width: 115%;
	height: auto;
	max-width: none;
}

#legacy .path_svg circle{
	fill: #952e47;
}

#legacy .path_svg .tl_dot{
	opacity: 0;
}

#legacy .path_svg path{
	fill: none;
	stroke: #952e47;
	stroke-width: 6px;
}

#legacy .path_svg .dashed{
	stroke-dasharray: 20px;
	stroke: #ffffff;
}

.legacy_block{
	position: relative;
	height: 750px;
}

.legacy_block .line_art,
.legacy_block .photos,
.legacy_block .illustration,
.legacy_block .copy{
	display: inline-block;
	position: absolute;
		z-index: 10;
}

.legacy_block .mono_grid{
	display: inline-grid;
	grid-template-columns: auto;
}

.legacy_block .mono_grid img{
	grid-area: 1 / 2 / 1 / 2;
}

.legacy_block .line_art{
	overflow: hidden;
	mask: var(--watercolor_mask);
	mask-size: 0;
	mask-position: center;
	mask-repeat: no-repeat;
}

.legacy_block .line_art{
	z-index: 10;
}

.legacy_block .photos{
	z-index: 15;
}

.legacy_block .illustration{
	z-index: 20;
}

.legacy_block .copy{
	z-index: 50;
}

.legacy_block .line_art .color,
.legacy_block .illustration img{
	opacity: 0;
	width: 100%;
}

.legacy_block .photos{
	width: 32%;
	border-radius: 10px;
	border: 15px solid #e1e0dc;
	aspect-ratio: 1/1;
}

.legacy_block .photos .color{
	width: 100%;
	height: 100%;
	filter: grayscale(1);
	object-fit: cover;
}

.legacy_block .copy{
	width: 560px;
	max-width: 50vw;
	padding: 5px;
}

.legacy_block .copy strong{
	font-weight: bold;
}

.legacy_block .copy h3{
	text-transform: uppercase;
	font-family: var(--heading_font);
	font-size: 3rem;
	margin-bottom: .2em;
}

.legacy_block .copy .year{
	font-size: 3rem;
	margin-bottom: .2em;
}

.legacy_block:nth-child(1){
	height: 873px;
}

/* --- */

.legacy_block:nth-child(1) .illustration{
	right: 3%;
	top: 56%;
	width: 31%;
}

.legacy_block:nth-child(1) .line_art{
	top: 0;
	left: 0;
	width: 50%;
}

.legacy_block:nth-child(1) .photos{
	top: 21%;
	left: 49%;
}

.legacy_block:nth-child(1) .copy{
	left: 27%;
	top: 68%;
	width: 400px;
}

/* --- */

.legacy_block:nth-child(2){
	margin-top: 110px;
	height: 1210px;
}

.legacy_block:nth-child(2) .illustration{
	top: 37%;
	left: 7%;
	width: 30%;
}

.legacy_block:nth-child(2) .line_art{
	right: 0;
	top: 0;
	width: 49%;
}

.legacy_block:nth-child(2) .photos{
	top: 26%;
	left: 29%;
}

.legacy_block:nth-child(2) .copy{
	right: 6%;
	top: 65%;
	width: 410px;
}

/* --- */

.legacy_block:nth-child(3){
	height: 1250px;
	margin-top: -250px;
}

.legacy_block:nth-child(3) .illustration{
	top: 34%;
	right: 15%;
}

.legacy_block:nth-child(3) .line_art{
	left: 0;
	top: 0;
	width: 52%;
}

.legacy_block:nth-child(3) .photos{
	top: 29%;
	left: 33%;
}

.legacy_block:nth-child(3) .copy{
	left: 14%;
	top: 79%;
}

/* --- */

.legacy_block:nth-child(4){
	height: 1150px;
}

.legacy_block:nth-child(4) .illustration{
	top: 51%;
	left: 12%;
}

.legacy_block:nth-child(4) .line_art{
	right: 0;
	top: 0;
	width: 62%;
}

.legacy_block:nth-child(4) .photos{
	top: 30%;
	left: 24%;
}

.legacy_block:nth-child(4) .copy{
	right: 5%;
	top: 60%;
	width: 450px;
}

/* --- */

.legacy_block:nth-child(5){
	height: 820px;
}

.legacy_block:nth-child(5) .illustration{
	bottom: 0;
	right: 3%;
	width: 39%;
}

.legacy_block:nth-child(5) .line_art{
	right: 0;
	top: 0;
}

.legacy_block:nth-child(5) .photos{
	top: 17%;
	left: 51%;
}

.legacy_block:nth-child(5) .copy{
	left: 16%;
	top: 0;
	width: 330px;
}

@media (min-width: 1001px) and (max-width: 1450px){

	#legacy .timeline{
		margin-top: -9vw;
	}

	#legacy #map_line_desk{
		top: calc(222px + 43.99vw);
	}

	.legacy_block:nth-child(1){
		height: 60.252vw;
	}

	.legacy_block:nth-child(1) .copy{
		left: 14%;
	}

	.legacy_block:nth-child(2){
		height: 83.45vw;
	}

	.legacy_block:nth-child(3){
		height: 86.21vw;
	}

	.legacy_block:nth-child(3) .copy{
		left: calc(35.63vw - 321px);
		top: calc(135px + 50.00vw);
		width: 350px;
	}

	.legacy_block:nth-child(4){
		height: 79.312vw;
	}

	.legacy_block:nth-child(4) .copy{
		top: 520px;
		width: 370px;
	}

	.legacy_block:nth-child(5){
		height: 56.552vw;
	}

	.legacy_block:nth-child(5) .copy{
		top: calc(248px - 15.59vw);
	}
}

@media (max-width: 1200px){
	.legacy_block .copy h3{
		font-size: 2.5rem;
	}
}

@media (max-width: 1000px){

	#legacy .timeline{
		width: 450px;
		margin-top: -10px;
	}

	#legacy .history_heading{
		font-size: 3.3rem;
	}

	.legacy_block .copy p{
		font-size: 1rem;
	}

	.legacy_block .copy h3{
		font-size: 2rem;
	}

	.legacy_block .copy .year{
		font-size: 2rem;
	}

	.legacy_block .photos{
		border-width: 8px;
		width: 58%;
	}

	#legacy .legacy_block:nth-child(2) .copy ,
	#legacy .legacy_block:nth-child(3) .copy ,
	#legacy .legacy_block:nth-child(4) .copy {
		background-color: #ffffff99;
	}

	/* --- */

	.legacy_block:nth-child(1) {
		height: 830px;
	}

	.legacy_block:nth-child(1) .illustration{
		top: 45%;
		right: -70px;
		width: 55%;
	}

	.legacy_block:nth-child(1) .line_art{
		top: -6%;
		left: 0;
		width: 82%;
	}

	.legacy_block:nth-child(1) .photos{
		top: 24%;
		left: 33%;
	}

	.legacy_block:nth-child(1) .copy{
		top: 59%;
		left: 8%;
		width: 70%;
		max-width: none;
	}

	/* --- */

	.legacy_block:nth-child(2){
		margin-top: -110px;
		height: 1107px;
	}

	.legacy_block:nth-child(2) .illustration{
		top: 50%;
		left: -9%;
		width: 52%;
	}

	.legacy_block:nth-child(2) .line_art{
		right: -21%;
		top: 0;
		width: 110%;
	}

	.legacy_block:nth-child(2) .photos{
		top: 26%;
		left: 8%;
	}

	.legacy_block:nth-child(2) .copy{
		right: 6%;
		top: 56%;
		width: 50%;
	}

	/* --- */

	.legacy_block:nth-child(3){
		height: 821px;
		margin-top: -250px;
	}

	.legacy_block:nth-child(3) .illustration{
		top: 42%;
		right: -20%;
		width: 60%;
	}

	.legacy_block:nth-child(3) .line_art{
		left: -11%;
		top: 0;
		width: 106%;
	}

	.legacy_block:nth-child(3) .photos{
		top: 36%;
		left: 33%;
	}

	.legacy_block:nth-child(3) .copy{
		top: 75%;
		left: 6%;
		width: 70%;
		max-width: none;
	}

	/* --- */

	.legacy_block:nth-child(4){
		height: 880px;
	}

	.legacy_block:nth-child(4) .illustration{
		top: 38%;
		left: 41%;
		width: 40%;
	}

	.legacy_block:nth-child(4) .line_art{
		right: 0;
		top: 0;
		width: 96%;
	}

	.legacy_block:nth-child(4) .photos{
		top: 24%;
		left: 8%;
	}

	.legacy_block:nth-child(4) .copy{
		top: 75%;
		right: 16%;
		width: 58%;
		max-width: none;
	}

	/* --- */

	.legacy_block:nth-child(5){
		height: 820px;
	}

	.legacy_block:nth-child(5) .illustration{
		top: 26%;
		right: 13%;
		bottom: auto;
		width: 71%;
	}

	.legacy_block:nth-child(5) .line_art{
		right: 0;
		top: 0;
	}

	.legacy_block:nth-child(5) .photos{
		top: 10%;
		left: 23%;
	}

	.legacy_block:nth-child(5) .copy{
		left: 14%;
		top: 58%;
		width: 350px;
		max-width: 80%;
	}

}


@media (max-width: 450px){

	.legacy_block:nth-child(1) {
		height: 180vw;
	}

	.legacy_block:nth-child(1) .copy{
		background-color: #ffffff99;
		border-radius: 10px;
	}

	.legacy_block:nth-child(2) {
		height: 246vw;
	}

	.legacy_block:nth-child(2) .copy{
		top: 59%;
		width: 80%;
		max-width: none;
	}

	.legacy_block:nth-child(3) {
		height: calc(399px + 84.62vw);
	}

	.legacy_block:nth-child(3) .copy{
		top: 78%;
	}

	.legacy_block:nth-child(4) {
		height: 195.56vw;
	}

	.legacy_block:nth-child(4) .copy{
		top: calc(161.54vw - 46px);
		right: auto;
		left: 10px;
		width: 91%;
	}

	.legacy_block:nth-child(4) .line_art{
		top: 80px;
	}

	.legacy_block:nth-child(4) .photos{
		top: 33%;
	}

	.legacy_block:nth-child(4) .illustration{
		left: 51%;
	}

	.legacy_block:nth-child(5) {
		height: 202.23vw;
        margin-top: 70px;
	}
}

@media (max-width: 420px){
	
	#legacy .history_heading{
		font-size: 2.5rem;
	}
}

@media (min-width: 1001px){
	
	#legacy #map_line_mobile{
		display: none;
	}
}

@media (max-width: 1000px){
	
	#legacy #map_line_desk{
		display: none;
	}
}

/* cards */
.legacy_card .container{
	display: flex;
	width: 1450px;
	padding: 60px 40px 40px;
	color: #ffffff;
	gap: 50px;
}

.legacy_card .hdr_img{
	text-align: center;
	margin-bottom: 30px;
}

.legacy_card .hdr_img img{
	display: inline-block;
}

.legacy_card.reverse .copy{
	order: 99;
}

.legacy_card .copy,
.legacy_card .card_image{
	flex: 0 1 50%;
}

.legacy_card .copy h2,
.legacy_card .copy h3{
	font-size: 2rem;
	font-family: var(--heading_font);
	color: #f0e6cb;
	margin-bottom: .2em;
}

.legacy_card.weathered_bknd,
.legacy_card.weathered_bknd p,
.legacy_card.weathered_bknd .copy h2,
.legacy_card.weathered_bknd .copy h3{
	color: #442010;
}

.legacy_card .card_image{
	display: grid;
	grid-template-columns: auto;
}

.legacy_card .card_image img{
	width: 100%;
	height: 100%;
	grid-area: 1 / 2 / 1 / 2;
	object-fit: cover;
}

/* ani */
.legacy_card.fade_ani .primary_img{
	opacity: 0;
}


@media (max-width: 800px){
	
	.legacy_card .container{
		flex-direction: column;
		display: flex;
	}
}

@media (max-width: 450px){
	
	.legacy_card .container{
		padding-left: 30px;
		padding-right: 30px;
	}
}

/* ===================== News ===================== */

.news {
	background-image: var(--bknd_maze_pattern_2);
	background-size: 300px;
	background-position: center;
	padding-bottom: 50px;
}

.news .container{
	max-width: calc(100% - 100px);
}

.news .post_area{
	padding: 70px;
	margin: 50px auto 0;
	background-color: #faf9f4;
	border-radius: 10px;
	border: 1px solid #ede0cd;
}

@media (min-width: 1550px){
	
	.news .post_area{
		display: grid;
		grid-gap: 20px;
		grid-template-columns: 1fr 1fr;
	}
}

.news .feat_img{
	flex: 0 0 310px;
	position: relative;
	overflow: hidden;
	background-color: #808080;
	border-radius: 10px;
	aspect-ratio: 1/1;
}

.news .feat_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.news .news_post {
	display: flex;
	align-items: flex-start;
	margin-bottom: 50px;
	gap: 50px;
}

.news .news_post:last-child{
	margin-bottom: 0;
}

.news .news_post h2{
	color: var(--wp--preset--color--pi-red);
	font-size: 2rem;
	margin-bottom: 1em;
}

.news .pag_cont{
	padding: 0;
}

.news .pagination{
	text-align: right;
	margin-top: 50px;
}

.news .pag_link{
	padding: 0 .3em;
	font-size: 2rem;
	line-height: 1.5;
	text-decoration: none;
}

.news .pag_link.active{
	color: #ffffff;
	background-color: var(--wp--preset--color--pi-red);
}

@media (max-width: 950px){

	.news .container{
		width: 570px;
		max-width: calc(100% - 50px);
		padding: 30px;
	}

	.news .news_post{
		flex-direction: column;
	}

	.news .feat_img{
		flex: 0 0 auto;
	}
}

@media (max-width: 767px){
	
	.news .pagination{
		text-align: center;
	}
}

/* ===================== 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: .5em;
}

.sitemap .map_block{
	margin-bottom: 2em;
}

.sitemap .map_block .list_wrap{
	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: var(--wp--preset--color--pi-red);
}

main#content .dbc_datepicker_field button.dbc_calendar_icon:focus-visible,
main#content .dbc_datepicker-dialog table.dates td:focus-visible,
main#content .dbc_datepicker button:focus-visible{
	outline: 2px #fff solid;
	outline-offset: 0;
	box-shadow: 0 0 0 4px #000;
}

.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: 330px;
	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 .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 {
	width: 306px;
	padding-top: 10px;
	margin: auto;
	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 .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: 68%;
		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;
	}
}

@media (max-width: 400px){

	.dbc_datepicker-dialog{
		width: 290px;
	}

	.dbc_datepicker-dialog table.dates{
		width: 276px;
	}

	.dbc_datepicker-dialog table.dates th,
 	.dbc_datepicker-dialog table.dates td{
		font-size: .9rem;
	}

	.dbc_datepicker-dialog .dialog-message{
		font-size: 1rem;
	}
}

/* ===================== 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;
}

.wp-admin #editor .sr-only{
	position: static; width: auto; height: auto; margin: 0;clip: initial;
	opacity: .5;
}

.wp-admin .foodmenu .menu_nav {
	position: static;
}
/* 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;
	}
}

button[aria-label=Small] > div{ display: none; }
button[aria-label=Small]::after{ content: attr(aria-label); }
button[aria-label="Medium Small"] > div{ display: none; }
button[aria-label="Medium Small"]::after{ content: attr(aria-label); }
button[aria-label="Medium"] > div{ display: none; }
button[aria-label="Medium"]::after{ content: attr(aria-label); }
button[aria-label="Large"] > div{ display: none; }
button[aria-label="Large"]::after{ content: attr(aria-label); }
button[aria-label="X-Large"] > div{ display: none; }
button[aria-label="X-Large"]::after{ content: attr(aria-label); }

.components-popover.block-editor-block-popover{
	z-index: 50 !important;
}

@media only screen and (max-width: 767px) {
	body #onetrust-banner-sdk[style]{
		bottom: 0px !important;
		z-index: 900;
	}
}
