@font-face {
	font-family: "HobokenHigh-SansSerif";
	src: url("../../../fonts/HobokenHigh-SansSerif.woff2") format("woff2"),
	url("../../../fonts/HobokenHigh-SansSerif.ttf") format("opentype");
	font-weight: 500;
	font-style: normal;
	font-display: block;
}

@font-face {
	font-family: "NimbusSan";
	src: url("../../../fonts/NimbusSanL-Reg.otf") format("opentype");
	font-weight: 500;
	font-style: normal;
	font-display: block;
}

:root {
	/* IN USE */
	--color_1: #C49956; /* Cavaliers Gold */
	--color_2: #BA8533; /* Cavaliers Gold (Lighter) */
	--color_3: #995F04; /* Cavaliers Gold (Darker) */
	--color_4: #870337; /* Cavaliers-Wine */
	--color_wine-light: #B43668;
	--color_4-dark: #4F001D; /* Cavaliers-Wine-200 */
	--color_white: #FFFFFF;
	--color_black: #0D181C ; /* Cavaliers-Black */

	/* CHECK USAGE */
	--color_5: #BAC2D2; /* Accent color: Light Blue Grey */
	--color_border: #D9D9D9;
	--color_light_bkg: #F9F5F0;

	--font_family_regular: 'NimbusSan', 'Helvetica Neue', sans-serif; /* 400 weight */
	--font_family_bold: 'Objektiv', 'Helvetica Neue', sans-serif; /* 700 weight */
	--font_family_title: 'HobokenHigh-SansSerif', 'Helvetica Neue Condensed', 'Arial Narrow', sans-serif;
	--font_family_wide: 'Winner Sans Wide', 'Helvetica Neue', Arial, sans-serif;

	--font_size_min: 16px; /* Base/Regular */
	--font_size_amenities: 16px; /* Amenities */
	--font_size_small_text: 16px; /* Small Text */
	--font_size_highlights: 18px; /* Highlight */
	--font_size_small_desc: 20px; /* Small descriptions */
	--font_size_subtitles: 22px; /* Headings */
	--font_size_games: 24px; /* Games */
	--font_size_big_dates: 28px; /* Big dates */
	--font_size_medtitle: 48px; /* Medium Titles */
	--font_size_med: 60px; /* Titles */
	--font_size_large: 72px; /* Big titles */

	--letter_spacing: 0;
	--default_border_radius: 0;
	--default_box_shadow: none;
	/* --dark_box_shadow: none; */
	/* --hover_box_shadow: 0; */
	/* --hover_box_shadow_edp: none; */
	--default_border: 1px solid #D9D9D9;
	/* --default_border_hover: var(--default_border); */
	--container_width: 1065px;
	--gutter_width: 20px;

	--events_scroll_pos_top: 0;
}

@media screen and (max-width: 768px) {
	:root {
		--font_size_large: 68px;
		--font_size_med: 44px;
		--font_size_medtitle: 42px;
		--font_size_subtitles: 22px;
		--font_size_games: 24px;
		--font_size_highlights: 18px;
		--font_size_amenities: 16px;
		--font_size_min: 16px;
		--font_size_small_text: 16px;
		--font_size_small_desc: 16px;
	}
}

@media screen and (max-width: 500px) {
	:root {
		--font_size_large: 48px;
		--font_size_med: 34px;
		--font_size_medtitle: 32px;
		--font_size_subtitles: 22px;
		--font_size_games: 24px;
		--font_size_highlights: 18px;
		--font_size_amenities: 16px;
		--font_size_min: 16px;
		--font_size_small_text: 16px;
		--font_size_small_desc: 16px;
	}
}


/*
----------------------------------------------------
BASIC ELEMENTS
----------------------------------------------------
*/
html {
	font-size: 100%;
}

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	font-family: var(--font_family_regular);
	font-weight: 400;
	line-height: 1.5;
	min-width: unset !important; /* override style.css */
	width: unset !important; /* override style.css */
	max-width: unset !important; /* override style.css */
	font-size: var(--font_size_min);
	color: var(--color_black);
	background-color: var(--color_black) !important;
}

p, li {
	letter-spacing: var(--letter_spacing);
}

/* no layout surprises */
*, *:before, *:after {
	box-sizing: border-box;
}

body .post-title,
body .section_title,
body .stadium_guide_container h2.post-subheading {
	font-family: var(--font_family_bold);
	font-weight: 700;
	line-height: 0.9;
	text-align: left;
	text-transform: initial;
	font-size: var(--font_size_med);
	position: relative;
}

.lead {
	font-family: var(--font_family_regular);
	font-size: var(--font_size_highlights);
	line-height: 1.45;
	letter-spacing: initial;
	text-transform: none;
	color: var(--color_2);
	margin: 15px 0;
}

/* title red underline treatment */

#gallery .post-title,
#non-header .suite_map .post-title,
#stadium_guide .post-subheading,
#make_a_request_page .post-title,
#hp_elevated_experience .post-title,
#hp_ideal_matchup .section_title {
	line-height: 1;
	text-align: center;
	color: var(--color_1);
	font-family: var(--font_family_title);
	font-weight: normal;
	font-size: 56px;
	text-transform: uppercase;
}

/* header with four stars */

#non-header .suite_map .post-title::after,
#gallery .post-title::after {
	content: "";
	display: block;
	position: absolute;
	width: 137px;
	height: 30px;
	right: 0;
	bottom: 0;
	background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/chi-fire-blue-stars.svg");
	background-repeat: no-repeat;
	background-size: contain;
}

/* post title and lead pair */

.post-title:has(+ .lead) {
	margin-bottom: 20px;
}
.post-title + .lead {
	margin: 0 0 15px;
}

.cta_body {
	width: calc( 100% - var(--gutter_width) * 2);
	max-width: var(--container_width);
	margin-left: auto;
	margin-right: auto;
}

#non-header {
	max-width: unset !important; /* override style.css */
}



/* Buttons */
#browse_other_events .blue-2,
#contact_form_submit,
#edp_container.listing_details a.show_all_photos,
.new_checkout #btn_submit,
.cavs_btn {
	z-index: 0;
	position: relative;
	display: inline-block;
	min-width: 179px;
	max-width: unset;
	margin: 1.5em auto 1.5em;
	border: 1px solid var(--color_wine-light);
	border-radius: 63px;
	padding: 15px 10px;
	line-height: 1;
	font-family: var(--font_family_title);
	font-size: var(--font_size_small_text);
	font-weight: normal;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	text-decoration: none;
	color: white;
	background-color: var(--color_4);
	text-align: center;

	&:hover {
		color: white;
		background-color: var(--color_4-dark);
	}

	&:active {
		color: var(--color_black);
		background-color: var(--color_4);
		border-color: var(--color_white);
	}

	@media screen and (min-width: 769px) {
		margin: 0;
		margin-right: 1%;
	}

	.cavs_lead + & {
		font-size: var(--font_size_highlights);
	}
}

.cavs_btn--large {
	font-size: var(--font_size_small_desc);
}

.cavs_btn--block {
	display: block;
	width: 100%;
	margin: 10px auto;
}

.cavs_btn--hollow {
	color: var(--color_1);
	border-color: var(--color_1);
	background: transparent;

	&:hover {
		color: var(--color_4);
		background: var(--color_1);
	}
}

.cavs_btn--gold {
	color: var(--color_white);
	background-color: var(--color_1);
	border-color: var(--color_2);

	&:hover {
		background-color: var(--color_3);
	}

	&:active {
		color: var(--color_black);
		background-color: var(--color_1);
		border-color: var(--color_black);
	}
}

/* regular button */

a.blue,
button.blue,
input.blue.button,
#edp_container .browse_other_events,
.catering_menu_button,
.tiled_event_page .toc_element {
	position: relative;
	display: inline-block;
	font-family: var(--font_family_title);
	font-weight: 700;
	font-size: var(--font_size_games);
	line-height: 1.2;
	letter-spacing: 1.2px;
	padding: 15px 10px;
	background: var(--color_4);
	color: var(--color_3);
	text-decoration: none;
	z-index: 0;
	border: 1px solid var(--color_3);
	border-radius: 6px;
	width: 100%;
	max-width: 372px;
	text-align: center;
}

a.blue:hover,
button.blue:hover,
#edp_container .browse_other_events:hover,
.catering_menu_button:hover,
input.blue.button:hover {
	background: var(--color_5);
	border-color: var(--color_3);
	color: var(--color_3);
}
a.blue:active,
button.blue:active,
#edp_container .browse_other_events:active,
.catering_menu_button:active,
input.blue.button:active {
	background: var(--color_4);
	border-color: var(--color_3);
	color: var(--color_5);
}
a.blue.disabled,
button.blue.disabled,
.share_this_button.disabled,
#edp_container .browse_other_events.disabled,
.catering_menu_button.disabled,
input.blue.button.disabled {
	background: #d1d1d1;
	border-color: transparent;
	color: #bdbdbd;
}

/* hollow */

a.blue.hollow,
button.hollow,
input.hollow.button {
	background: transparent;
	border-color: var(--color_2);
}

a.blue.hollow:hover,
button.hollow:hover,
input.hollow.button:hover {
	background: var(--color_6);
	border-color: transparent;
	color: var(--color_2);
}

a.blue.hollow:active,
button.hollow:active,
input.hollow.button:active {
	background: var(--color_6);
	border-color: var(--color_2);
}

a.blue.hollow.disabled,
button.hollow.disabled,
input.hollow.button.disabled {
	background: transparent;
	border-color: var(--color_6);
	color: var(--color_6);
}

/* small button */

a.cta_btn_small,
button.cta_btn_small,
input.cta_btn_small.button,
.catering_menu_button,
.tiled_event_page .toc_element {
	padding: 12px 24px;
	width: auto;
	font-size: 20px;
	border-radius: 7px;
	background: var(--color_4);
	color: var(--color_white);
	border-color: var(--color_white);
}
a.cta_btn_small:hover,
button.cta_btn_small:hover,
input.cta_btn_small.button:hover,
.catering_menu_button:hover,
.tiled_event_page .toc_element:hover {
	background: var(--color_5);
	border-color: var(--color_3);
	color: var(--color_3);
}
a.cta_btn_small:active,
button.cta_btn_small:active,
input.cta_btn_small.button:active,
.catering_menu_button:active,
.tiled_event_page .toc_element:active {
	background: var(--color_4);
	border-color: var(--color_3);
	color: var(--color_5);
}

/* radio button */

.tiled_event_page .toc_element {
	border-radius: 0;
	border-color: var(--color_black);
	background: var(--color_white);
	color: var(--color_black);
	padding: 9px 10px;
	text-transform: uppercase;
	font-family: var(--font_family_title) !important;
	font-size: var(--font_size_small_text);
	font-weight: 500;
	transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}
.tiled_event_page .toc_element.highlight,
.tiled_event_page .toc_element:hover {
	background: var(--color_1);
	border-color: var(--color_black);
	color: var(--color_white);
}




/*
----------------------------------------------------
LIGHTBOXES
----------------------------------------------------
*/

#suite_lightbox {
	background: var(--color_black);
	color: var(--color_white);
}
.suite_lightbox_content .cui_small_container {
	padding-bottom: 15px;
}
#suite_lightbox a.cta_btn_small {
	width: auto;
}

#suite_lightbox p {
	font-family: var(--font_family_regular);
	font-size: var(--font_size_min);
}

.suite_lightbox_header h2 {
	margin: 40px 0;
	line-height: 1.3;
	color: var(--color_white);
	font-family: var(--font_family_title);
	font-size: var(--font_size_medtitle);
	font-weight: normal;
	text-transform: uppercase;
}

.suite_info_container h4 {
	color: var(--color_black);
	font-family: var(--font_family_title);
	font-weight: normal;
	text-transform: uppercase;
}

#suite_lightbox .lightbox_close {
	float: none;
	position: absolute;
	top: 30px;
	right: 30px;
	color: var(--color_white) !important;
}
.suite_lightbox_content .suite_details_container .cui_small_container {
	border-top: 0 none;
	padding-top: 0;
	color: var(--color_black);
}


/*
----------------------------------------------------
PAGE TITLES
----------------------------------------------------
*/
#non-header .page_title_container {
	/*background-repeat: no-repeat;*/
	/*height: auto;*/
	/*overflow: visible;*/
	/*display: flex;*/
	/*justify-content: center;*/
	/*align-items: center;*/
	/*position: relative;*/
}
#non-header .page_title_container h1 {
/*	position: relative;
	text-shadow: none;
	font-family: var(--font_family_wide);
	font-size: var(--font_size_med);
	font-weight: 500;
	line-height: 1.03;
	text-transform: capitalize;
	margin: 0;
	padding: 0;
	width: calc( 100% - var(--gutter_width) * 2 );
	max-width: var(--container_width);
	color: var(--color_3);
	-webkit-text-stroke: 1px var(--color_3);
	text-stroke: 1px var(--color_3);*/
}

@media screen and (max-width: 560px) {
	#non-header .page_title_container::after {
		transform: none;
		bottom: 12px;
	}
}









/*
----------------------------------------------------
UI WIDGETS
----------------------------------------------------
*/

.cui_big_container {
	display: flex;
	justify-content: center;
}

.cui_small_container {
	width: calc( 100% - var(--gutter_width));
	max-width: var(--container_width);
}

.cta_container {
	width: calc( 100% - var(--gutter_width) * 2 );
	max-width: var( --container_width );
}

/*
----------------------------------------------------
CONTACT US PANEL (UNIVERSAL)
----------------------------------------------------
*/

#contact_us {
	background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/cavaliers-fire-bkg.png");
		/* png: 1.4mb; jpg 865kb but needs design */
			/*background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/cavaliers-fire-bkg.jpg?v=0541P");*/
	background-position: center;
	min-height: 660px;
	padding: 0;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	position: relative;
	z-index: 0;
	margin-top: -40px;

	@media screen and (min-width: 769px) {
		margin-top: -240px; /* sucks upper panel in; upper panel should have zero bottom padding */
	}
}

.suites #contact_us {
	z-index: 1;
	background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/crowd-bkg.png");
	margin-top: -400px;

	@media screen and (min-width: 769px) {
		z-index: 0;
		margin-top: -70px;
	}
}

#contact_us .cta_container {
	min-height: 391px;
	padding: 0 0 104px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	position: relative;
}

#contact_us .cta_body {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex: 1;
	text-align: center;
	position: relative;
}

#contact_us .post-title {
	margin-top: 0;
}
#contact_us .lead {
	max-width: 660px;
	margin-top: 0;
	margin-left: auto;
	margin-right: auto;
}

/* #contact_us :not(.blue) {
    color: var(--color_white);
} */
#contact_us a.blue {
	width: 240px;
	padding-top: 19px;
	padding-bottom: 19px;
	background: var(--color_2);
	border-color: var(--color_2);
}

@media screen and (max-width: 768px) {
	.faq #contact_us {
		height: auto;
		min-height: 400px;
		margin: 0;
		background-position: center bottom;
		justify-content: center;
	}
	.faq #contact_us .cta_container {
		width: auto;
		min-height: auto;
		padding: 20px 0;
	}
	.faq #contact_us .cta_container h2 {
		margin-top: 10px;
	}
	/* #contact_us {
        min-height: 0;
        height: 400px;
        margin: 50px 0 0;
        background-position: 20px 20px, center bottom;
    }
    #contact_us .cta_container {
        min-height: auto;
    } */
}

/*
----------------------------------------------------
HEADER
----------------------------------------------------
*/
.cui_header_container {
	background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/chi-fire-header-bg-tileable_268x162.png");
	background-repeat: repeat;
	background-size: 90px auto;
	background-color: #1A1C22;
	height: 75px;
	display: flex;
	justify-content: center;
	border-bottom: 3px solid var(--color_1);
	image-rendering: pixelated;    /* force nearest-neighbor scaling */
	image-rendering: crisp-edges;  /* fallback */
}

.cui_header_container.cavs_header_container {
	background-image: none;
	background-color: var(--color_black); /* --Cavaliers-Black */
}

#cui_sticky_header {
	display: none;
}
.cui_header_container .inner_header,
#cui_sticky_header .inner_header {
	padding: 0;
	display: flex;
	justify-content: space-between;
	position: unset;
	align-items: center;
	align-self: center;
	width: calc( 100% - var(--gutter_width) * 2);
	height: 100%;
	max-width: var(--container_width);
}

a.logo_container {
	display: flex;
	align-items: center;
}

.cui_header_container .cavs_site_logo {
	width: 50px;
	height: auto;
}

.cavs_site_logo,
.cui_header_container .site_logo,
#cui_sticky_header .site_logo {
	max-width: 50px;
	padding: 0;
	box-sizing: border-box;
	image-rendering: initial;
}

.cavs_site_logo_text {
    margin-left: 21px;
	border-left: 1px solid white;
    padding-left: 17px;
	height: 35px;
    line-height: 1;
	color: white;
	font-family: var(--font_family_title);
	font-weight: 400;
	font-size: 32px;
	text-align: right;
	text-transform: uppercase;
}

.cui_header_container span.page_title,
#cui_sticky_header span.page_title {
	border-left: 0 none;
	margin: 0;
	padding: 0 0 0 14px;
	font-family: var(--font_family_bold);
	font-size: 31px;
	font-weight: 700;
	color: var(--color_2);
	height: auto;
	float: none;
	position: relative;
	display: flex;
	align-items: center;
}
.cui_header_container span.page_title::before,
#cui_sticky_header span.page_title::before {
	content: "";
	display: block;
	width: 2px;
	height: 38px;
	margin-right: 12px;
	background-color: var(--color_2);
}

.cui_header_container nav,
#cui_sticky_header nav {
	float: none;
	margin: 0;
}
nav ul {
	width: 100%;
	display: flex;
}
.cui_header_container {
	display: flex;
}
.cui_header_container li,
#cui_sticky_header li {
	padding: 0;
	position: relative;
	text-align: center;
	text-transform: none;
}
.cui_header_container li a,
#cui_sticky_header li a {
	padding: 0 0 3px;
	position: relative;
	display: inline-block;
	letter-spacing: 0;
	font-weight: 700;
	color: var(--color_white) !important;
	border-bottom: 3px solid transparent;
}

/* Nav highlighting */
#non-header nav a[class] {
	font-family: var(--font_family_bold) !important;
	font-weight: 700;
	font-size: var(--font_size_min);
	line-height: 1.4;
}

/* to-do: reduce specificity */
/* to-do: disable !importants */
.cavs_nav-link,
.home #non-header nav li a.cavs_nav-link,
#non-header nav a.cavs_nav-link {
	padding-left: 3px;
	padding-right: 3px;
	color: white !important;
	font-family: var(--font_family_title) !important;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	text-align: center;
	text-transform: uppercase;
}


#non-header nav li a:hover,
.home #non-header nav li a.home,
.page-template-seg_tiled_event_page #non-header nav li a.games,
.venues #non-header nav li a.venues,
.suites #non-header nav li a.suites,
.tickets #non-header nav li a.tickets,
.ownership #non-header nav li a.ownership,
.faq #non-header nav li a.faq,
.contact #non-header nav li a.contact {
	color: var(--color_white) !important;
	border-bottom: 3px solid var(--color_white);
	padding-bottom: 3px;
}

.cavs_nav_trigger,
#non-header .cui_header_container .mobile_menu_btn {
	position: relative;
	padding: 0;
	top: 0;
	right: 0;
	height: 34px;
	line-height: 1;
	color: var(--color_3);
	font-size: 38px;
}

/* to-do: disable !importants */
.cavs_nav_trigger {
	margin-top: -15px;
	color: white !important;
}

@media screen and (min-width: 1101px) {
	.cui_header_container .inner_header :not(a) {
		height: 100%;
	}
	.cui_header_container li,
	#cui_sticky_header li {
		margin: 0 24px;
	}
	.cui_header_container li a,
	#cui_sticky_header li a {
		top: 50%;
		transform: translateY(-50%);
	}
}

@media screen and (max-width: 1100px) {
	.cui_header_container .mobile_menu_btn,
	#cui_sticky_header .mobile_menu_btn {
		display: block;
	}
	nav ul {
		flex-direction: column;
		margin-left: 0;
		padding-bottom: 25px;
	}
	nav li::after {
		display: none !important;
	}

	.cui_header_container {
		flex-direction: column;
	}
	.cui_header_container nav,
	#cui_sticky_header.cui_header_container nav {
		position: absolute;
		top: 76px;
		left: 0;
		width: 100%;
		/* background: var(--color_3); */
		box-shadow: 0 10px 10px rgba(0,0,0,0.04);
		margin: 0;
		padding: 0 20px;
		background-image: none;
		background-repeat: repeat;
		background-size: 90px auto;
		background-color: #1A1C22;
	}
	.cui_header_container li,
	#cui_sticky_header li {
		margin: 9px 0;
		padding: 8px 0;
	}

}


/*
----------------------------------------------------
FOOTER
----------------------------------------------------
*/

#cui_footer {
	padding: 0;
	height: auto;
	min-height: 139px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-top: 3px solid var(--color_1);
	background-color: var(--color_black);
}

#cui_footer .inner_footer {
	width: calc( 100% - var(--gutter_width) * 2);
	max-width: var(--container_width);
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0 auto;
}
#cui_footer * {
	color: var(--color_white);
	font-size: 14px;
	line-height: 1.4;
    -webkit-font-smoothing: auto;
}
#cui_footer img {
	width: 65px;
	height: auto;
	margin: 0 25px 7px 0;
}
#cui_footer .brand {
	margin-left: auto;
	text-align: right;
}
#cui_footer .brand div {
	text-align: left;
}

#cui_footer .nav ul {
	width: 100%;
	margin: 0 0 3px;
	padding: 0;
}
#cui_footer .nav ul li {
	display: inline-block;
	margin: 0 17px 0 0;
}
#cui_footer .nav a {
    -webkit-font-smoothing: auto;
}

@media screen and (max-width: 768px) {
	#cui_footer .inner_footer {
		flex-direction: column;
		align-items: flex-start;
		row-gap: 20px;
		padding: 30px 0;
	}
	#cui_footer .brand {
		margin: 0;
		text-align: left;
	}
	#cui_footer img {
		width: 46px;
	}
}

/*
----------------------------------------------------
HOME PAGE
--------------------------------------------------------------------------------------------------------

*/

.home #non-header {
	background: none;
}

/* hero */

/* HP hero */

#hp_hero_section {
	background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/oh_cavaliers-hero-1440x715.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	height: auto;
	max-height: 100%;
	position: relative;
	top: 0;
	width: 100%;
	height: calc( 100vh - 75px );
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding-top: 44px;
	padding-bottom: 34px;
}
#hp_hero_section .cui_hero_sub_container {
	max-width: calc( var(--container_width) + 100px );
	margin: 0 auto;
	display: flex;
	flex-direction: column;
}

#hp_hero_section .cui_small_container {
	width: auto;
	margin: 0;
	text-align: center;
}
#hp_hero_section .brandmark {
	margin: 0 0 18px;
	display: block;
}

.font-size_large { font-size: var(--font_size_large); }

.hp_hero_text,
#hp_hero_section .hp_hero_text {
	float: none;
	font-family: var(--font_family_title);
	font-weight: 500;
	text-transform: uppercase;
	color: white;
}

.cui_hero_text_section .cui_hero_container {
	overflow: visible;
}

/* upcoming games carousel */
#hp_ideal_matchup {
	position: relative;
	padding-top: 90px;
	text-align: center;

	&:after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		width: 700px;
		height: 700px;
		background: radial-gradient(
			color-mix(in srgb, var(--color_4), transparent 45%) 30%,
			transparent, transparent)
	}

	.cui_small_container {
		z-index: 1;
	}
}

#hp_ideal_matchup .section_title {
	z-index: -1; /* draw below the radial */
	position: relative;
	margin: 0;
	width: 100%;
	text-align: center;

	@media screen and (min-width: 769px) {
		width: auto;
	}
}

#hp_ideal_matchup .cui_small_container > .grid:first-child {
	justify-content: space-between;
}

#hp_ideal_matchup .cui_small_container > .grid {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.home #hp_ideal_matchup .carousel_container {
	padding: 0;
    margin: 0 auto;
	max-width: 250px;

	@media screen and (min-width: 501px) { max-width: 90%; }
	@media screen and (min-width: 769px) { max-width: 100%; margin-top: 20px; }
}

.carousel_container .slick-track {
	display: flex;
}
.carousel_container .slick-prev {
	z-index: 9;
	left: -50px;
}
.carousel_container .slick-next {
	z-index: 9;
	right: -50px;
}
#hp_ideal_matchup .slick-dotted.slick-slider {
	margin-bottom: 8px;
}
#hp_ideal_matchup .slick-dots {
	display: none !important;
}

.cavs-title,
.home .cavs-title {
	line-height: 1;
	color: var(--color_1);
	font-family: var(--font_family_title);
	font-size: 56px;
	font-weight: normal;
	text-align: left;
	text-transform: uppercase;

	.cavs-header & {
		font-size: var(--font_size_large);
		text-align: center;
	}

	#contact_us_form & {
		margin-top: 0;
	}
}

.cavs-title--small {
	font-size: 36px;
}

.cavs-title--dark,
.home .cavs-title--dark {
	color: var(--color_white);
}

.cavs-title--centered {
	text-align: center!important;
}

.cavs-carousel_event.carousel_event {
	margin: 0 8px;
	padding: 0;
	border: 1px solid var(--color_1);
	border-radius: 8px;

	&:hover {
		border-width: 1px;
	}
}

.cavs-carousel_event a {
	justify-content: end;
	background-color: var(--color_4-dark);

	&:hover {
		background-color: var(--color_1);

		.hp_away_team_name {
			color: var(--color_1);
		}
	}
}

.cavs-carousel_event .img_content {
	--size: 120px;
	max-width: var(--size) !important;
	max-height: var(--size) !important;
	margin: 2em auto;
	border-radius: 8px 8px 0 0;
	background-color: transparent;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.cavs-carousel_event .caption_content {
	margin: 0 auto;
	width: 100%;
	padding: 20px 15px 2.25em;
	border-radius: 0 0 8px 8px;
	background: var(--color_black);
}

.cavs-carousel_event .hp_away_team_name {
	padding-bottom: 10px;
	color: var(--color_white);
	font-family: var(--font_family_title);
	text-transform: uppercase;
}

.cavs-carousel_event .hp_event_date {
	margin-top: auto;
	color: var(--color_white);
	font-family: var(--font_family_regular);
	font-size: var(--font_size_min);
	font-weight: 400;
}

/* CAROUSEL */
.carousel_container .carousel_event {
	display: flex;
	height: auto;
	max-height: 360px;
}

.carousel_container .carousel_event a {
	position: relative;
	display: flex;
	flex-direction: column;
	font-family: var(--font_family_black);
	font-size: 18px;
	line-height: 1.2;
	color: var(--color_3);
	text-decoration: none;
	z-index: 0;
	width: 372px;
	max-width: 100%;
	text-align: center;
	transition: all 0.2s ease;
	border-radius: 8px;
}



/* no events messaging */

#hp_ideal_matchup .event_widget_no_events_container {
	margin-left: auto;
	margin-right: auto;
}

#hp_ideal_matchup .event_widget_no_events_container a.blue.solid {
	background: none;
	border: 0 none;
	margin-bottom: 15px;
	color: var(--color_3) !important;
}

@media screen and (max-width: 768px) {
	#hp_hero_section {
		min-height: 620px;
	}
	.home #hp_ideal_matchup .carousel_container {
		margin-left: 25px;
		margin-right: 25px;
	}
}


/* elevate your experience / premium amenities */

#hp_elevated_experience {
	z-index: 1;
	position: relative;
	padding-top: 90px;
}

#hp_elevated_experience .post-title {
	margin-top: 0;
}
#hp_elevated_experience .lead {
	max-width: 520px;
}
#hp_elevated_experience .grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	grid-auto-rows: 1fr;
	column-gap: 16px;
	row-gap: 20px;
}

#hp_elevated_experience .col-1_2 {
	width: auto;
	overflow: hidden;
	padding: 0;
	display: flex;
	flex-direction: column;
}
#hp_elevated_experience .img_content {
	width: 100%;
	height: 280px;
	margin: 0;
	background-size: cover;
}
#hp_elevated_experience .text_content {
	position: relative;
	padding: 29px 33px;
	flex: 1;
}


/* CAVALIERS BEM Modules */
.cavs_lead,
.home .cavs_lead { /* to-do: remove template_1_... interdependency */
	position: relative;
	margin: 0 0 25px;
	line-height: 1.3;
	color: var(--color_white);
	font-family: var(--font_family_regular);
	font-size: var(--font_size_small_desc);
	font-weight: 400;
	text-align: center;
}

.cavs_highlight {
	position: relative;
	background-color: var(--color_light_bkg);

	@media screen and (min-width: 769px) {
		display: flex;
	}

	> figure {
		position: relative;

		&:after {
			content: "";
			position: absolute;
			top: 0;
			display: block;
			width: 100%;
			height: 80%;
			background-image: linear-gradient(var(--color_light_bkg), transparent);
		}
	}
}

.cavs_highlight__reflect {
    position: absolute;
    left: -40%;
    bottom: 0;
    max-width: 70vw;
    opacity: 0.5;
    z-index: 1;

	@media screen and (min-width: 769px) {
		top: 0;
		left: -142px;
	    height: 100%;
		opacity: 1;
	}
}

.cavs_highlight__header {
	position: relative;
	padding-top: 4em;
	padding-bottom: 2.5em;
	padding-left: 20%;
	margin-bottom: -18%;
	z-index: 2;

	@media screen and (min-width: 769px) {
		padding-bottom: 5em;
		margin-bottom: 0;
	}

	&:after {
        content: "";
        display: block;
        width: 50px;
        position: absolute;
        top: 0;
        right: -50px;
        bottom: 0;
        border-top: 245px solid var(--color_light_bkg);
        border-right: 25px solid transparent;
        border-bottom: 245px solid transparent;
        border-left: 25px solid var(--color_light_bkg);
	}
}

.cavs_highlight__title,
.home .cavs_highlight__title {
	margin-top: 0.25em;
	margin-bottom: 0.25em;
	color: var(--color_black);
	font-family: var(--font_family_title);
	font-size: var(--font_size_large);
	font-weight: 400;
	text-transform: uppercase;
	line-height: 1;
	letter-spacing: -2px;
}

.cavs_highlight__lead {
	margin-top: 0.5em;
	color: var(--color_black);
	font-size: var(--font_size_small_desc);
}

.cavs-highlight__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cavs-header {
	display: flex;
	z-index: 1;
	align-items: center;
	justify-content: center;
	min-height: 280px;
	background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/cavaliers-fire-bkg.png");
		/* png: 1.4mb; jpg 865kb but needs design */
			/*background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/cavaliers-fire-bkg.jpg?v=0541P");*/
	background-position: center;
	background-size: cover;
	text-align: center;
}

/* END- CAVALIERS BEM Modules */


/* gallery */

.home #gallery {
	padding-top: 0;
	padding-bottom: 0;
	background:
		linear-gradient(to bottom,
			var(--color_black) 0 33.33%,
			var(--color_1) 33.33% 34.33%,
			var(--color_4) 34.33%,
			#000 90%,
			transparent 100%);

	@media screen and (min-width: 769px) {
		padding-top: 50px;
	}
}

.home .galleria-theme-classic {
	z-index: 9;
	overflow: visible !important;
	border: 1px solid var(--color_1);
}

.galleria-images {
	overflow: hidden !important;
}



/* OVERRIDING galleria.classic.css */
.galleria-theme-classic .galleria-thumb-nav-left,
.galleria-theme-classic .galleria-thumb-nav-right,
.galleria-theme-classic .galleria-info-link,
.galleria-theme-classic .galleria-info-close,
.galleria-theme-classic .galleria-image-nav-left,
.galleria-theme-classic .galleria-image-nav-right {
    background-image: url(classic-map.png);
    background-repeat: no-repeat;
}

.galleria-theme-classic .galleria-image-nav-left,
.galleria-theme-classic .galleria-image-nav-right {
	background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/nav-gold-right.svg") !important;
	background-position: center !important;
	width: 44px !important;
    height: 90px !important;
    margin: 22px -6px;
}

.galleria-theme-classic .galleria-image-nav-left {
	background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/nav-gold-left.svg") !important;
}

@media screen and (min-width: 769px) {
	#galleria_stage_container .galleria-image-nav-left { left: -3vw !important; }
	#galleria_stage_container .galleria-image-nav-right {
		right: -3vw !important;
		background-position: -264px 42px;
	}
}
/* end OVERRIDING galleria.classic.css */

.galleria-theme-classic .galleria-stage {
	@media (min-width: 769px) {
		overflow: visible !important;
	}
}


.home #galleria_stage_container {
	z-index: 1;
	position: relative;
	width: 100%;
	max-width: var(--container_width);
	height: 707px;
	padding: 0;
	overflow: visible !important;
}

@media screen and (max-width: 768px) {
	.home #galleria_stage_container {
		height: 500px;
	}
}



/*
----------------------------------------------------
EVENTS PAGE
----------------------------------------------------
*/
#non-header .tiled_event_page .page_title_container {
	background-image:
		linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)),
		url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/oh_cavaliers-events-bkg.jpg?v=0541P");
	background-position: center -300px;
	background-blend-mode: multiply;
	min-height: 290px;
}

#non-header .tiled_event_page .page_title_container h1 {
	position: unset;
}


/* toc butons */

.tiled_event_page .toc_container {
	min-width: 70px;
	width: calc( 50% - 523px );
	margin-top: 7vh;

	@media screen and (max-width: 1450px) {
		top: 110px;
		left: 20px !important;
		width: auto;
		min-width: 195px;
	}
}

.tiled_event_page .toc_element * {
	font-family: inherit !important;
	font-weight: inherit !important;
	font-size: 16px !important;
	letter-spacing: 0;
}
.tiled_event_page .toc_element {
	width: 100%;
	min-height: 50px;
	align-content: center;
	margin-bottom: 6px;
}


@media screen and (max-width: 1330px) {
	.tiled_event_page .toc_element * {
		display: block;
		font-family: var(--font_family_title) !important;
		font-size: 14px !important;
	}
}


/* filter bar */

.tiled_event_page :is(.filter_container, .num_events_container, .bg_stripe) {
	display: none;
}


/* wrappers */
.tiled_event_page .event_tile_container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--gutter_width);
	width: 100%;
	padding: 1vh calc(var(--gutter_width)/2);
	margin-bottom: 80px;

		@media screen and (min-width: 614px) {
			grid-template-columns: 1fr 1fr 1fr;
		}

		@media screen and (min-width: 769px) {
			--toc_container-width: 225px;
			width: calc(100% - var(--toc_container-width));
			max-width: calc(888px + var(--toc_container-width));
			padding: 2vh var(--gutter_width);
			grid-template-columns: 1fr 1fr 1fr 1fr;
		}

	&:before {
		content: "";
		display: block;
		position: absolute;
		background: radial-gradient(color-mix(in srgb, var(--color_4), transparent 45%),  transparent 70%, transparent);
		z-index: -1;
		top: -3%;
		right: -10vw;
		left: -10vw;
		height: 8%;

		@media screen and (min-width: 769px) {
			top: 0;
			right: 0;
			left: 0;
			height: 10%;
		}
	}
}

.tiled_event_page .events_for_month_container {
	margin-bottom: 30px;
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--gutter_width);

	@media screen and (min-width: 614px) {
		grid-template-columns: 1fr 1fr 1fr;
	}

	@media screen and (min-width: 769px) {
		display: grid;
		grid-auto-rows: 1fr;
		column-gap: 17px;
		row-gap: 20px;
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}
}

.tiled_event_page .event_tile_container .events_for_month_container .event_tile_element_container {
	@media screen and (min-width: 769px) {
		width: 100%;
	}
}

/* cards */

.tiled_event_page .event_tile_container .event_tile_element_container {
	display: block;
	width: 100%;
	max-width: 368px;
	margin: 0 auto 1vh;
	padding: 0;
    border: 1px solid var(--color_1);
    border-radius: 8px;

	@media screen and (min-width: 769px) {
		display: inline-block;
		margin-bottom: 4vh;
	    margin-right: 5%;
	}
}

.tiled_event_page a.event_tile_element {
	position: relative;
	display: flex;
	flex-direction: column;
	max-width: 100%;
	padding: 0;
    z-index: 0;
    line-height: 1.2;
    border-radius: 8px;
    font-family: var(--font_family_black);
    font-size: 18px;
	text-decoration: none;
    text-align: center;
    color: var(--color_3);
	background: none;
    transition: all 0.2s ease;
}

.tiled_event_page .event_tile_element > div {
	width: 100%;
	margin: 0 auto;
	transition: background 0.2s ease;
}

/* this div is used both to present an image
	- as background CSS (events)
	- as parent of image, see next selector (matches)
*/
.tiled_event_page .event_tile_element .event_tile_image_container {
	height: auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	flex: 1 1 120px;
	border-radius: 8px 8px 0 0;
	background-color: var(--color_4-dark);
	background-size: contain;
    background-position: center;
    background-repeat: no-repeat;

    @media screen and (min-width: 769px) {
		min-height: 208px;
    }
}

.tiled_event_page .event_tile_element .event_tile_image_container img {
	width: 65%;
	height: 65%;
	padding: 0;
	object-fit: contain;
}

.tiled_event_page .event_tile_element .event_tile_name {
	font-family: var(--font_family_title);
	font-weight: 500;
	font-size: var(--font_size_small_desc);
	line-height: 22px;
	color: var(--color_white);
	text-transform: uppercase;
	flex: 1 0 40px;
	display: flex;
	padding: 10px 10px 0;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.tiled_event_page .event_tile_element .event_tile_inventory {
	flex: 1 0 86px;
	margin: 0;
	padding: 0;
	width: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border: 0;

	&:before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		left: 50%;
		margin-left: -21px;
		width: 42px;
		border-top: 1px solid var(--color_1);
	}
}

/* composite hover */
.tiled_event_page a.event_tile_element:hover :is(.event_tile_image_container) {
	background-color: var(--color_1);
}

.tiled_event_page a.event_tile_element:hover :is(.event_tile_name) {
	color: var(--color_1);
}

.tiled_event_page a.event_tile_element:hover :is(
	.event_tile_image_container,
	.event_tile_name,
	.event_tile_date,
	.event_tile_inventory
) {
}

#non-header .tiled_event_page .inv_status_container {
	font-size: var(--font_size_min);
}
.tiled_event_page .event_tile_inventory * {
	font-size: 14px;
	line-height: 1.375;
	color: var(--color_1);
	letter-spacing: 0.7px;
}

.tiled_event_page .event_tile_element .event_tile_date {
	display: flex;
	flex: 0 0 49px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border-top: 0 none;
	font-family: var(--font_family_regular);
	color: var(--color_white);
}

.tiled_event_page .event_tile_date * {
	font-size: 14px;
	line-height: 2;
}

.tiled_event_page .icon-power {
	margin-right: 3px;
}
.tiled_event_page .availability {
	font-weight: 700;
	text-transform: uppercase;
}
.tiled_event_page .view-suites {
	font-size: var(--font_size_min);
}

/* deposit bar. this should have a border and hover style similar to the cards */
.tiled_event_page ul.deposit_list_container {
	padding: 50px 0 0;
}

.tiled_event_page .deposit_list_container li.event {
	border: 1px solid var(--color_1);
	color: var(--color_white);
	background: var(--color_black);
	transition: all 0.2s ease;
}
.tiled_event_page .deposit_list_container li.event:hover {
	color: var(--color_4);
	background: var(--color_1);
}
.tiled_event_page .deposit_list_container li.event :not(.icon-power) {
	color: var(--color_white) !important;
	font-family: var(--font_family_title);
}
.tiled_event_page .deposit_list_container li.event .event_logo {
	height: 100%;
	padding: 0;
	margin-left: 5px;
	margin-right: 20px;
	padding-left: 10px;
	width: 60px;
}
.tiled_event_page .deposit_list_container li.event .event_logo.league_logo {
	margin-right: 5px;
	padding-left: 0;
	width: 50px;
}

@media screen and (max-width: 768px) {
	.event_inner_right_container, .deposit_event .event_inner_right_container {
		width: calc(100vw - 170px);
	}
}


/* headings */

.tiled_event_page .event_date_separator {
	grid-column: 1 / -1;
	line-height: 1.125;
	margin: 40px 0 15px 0;
	padding: 0;
	color: var(--color_1);
	font-family: var(--font_family_title);
	font-weight: normal;
	text-transform: uppercase;
	font-size: var(--font_size_medtitle);
	clear:both;

	@media screen and (min-width: 769px) {
		font-size: var(--font_size_big_dates);
	}
}


/* premium seating cards grid */

.stadium_guide_container {
	padding-bottom: 100px;
	border: 0 none;
	padding-top: 50px;
	position: relative;
	z-index: 1;
	background:
		linear-gradient(to bottom,
			var(--color_black) 0 33.33%,
			var(--color_1) 33.33% 34.33%,
			var(--color_4) 34.33%,
			var(--color_black) 90%,
			transparent 100%);
}

.stadium_guide_container .sd_container  {
	width: calc( 100% - var(--gutter_width) * 2 );
	max-width: var(--container_width);
	margin: 0 auto;
}

.stadium_guide_container section#stadium_guide .grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-auto-rows: 1fr;
	grid-gap: 15px;
}

.stadium_guide_container section#stadium_guide .col-1_3 {
	border: 2px solid var(--color_1);
	border-radius: 8px;
	background: var(--color_light_bkg);
	margin: 0 !important;
	padding: 35px 20px 20px 30px !important;
	width: auto !important;
	height: 100% !important;
	align-items: center;
	position: relative;
	justify-items: center;
	column-gap: 10px;
	row-gap: 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	text-align: center;
}
.stadium_guide_container section#stadium_guide .stadium_guide_icon,
.stadium_guide_container section#stadium_guide .stadium_guide_heading {
	flex: 0 0 auto;
	display: inline-flex;
	width: auto;
	max-width: max-content;
}

.stadium_guide_container section#stadium_guide .stadium_guide_icon {
	color: var(--color_1);
	font-size: 38px;
}

.stadium_guide_container section#stadium_guide .stadium_guide_heading {
	font-family: var(--font_family_title);
	font-size: var(--font_size_games);
	line-height: 1.3;
	flex: 1;
	text-transform: uppercase;
	text-align: left;
	color: var(--color_2);
	min-height: 42px;
}

.stadium_guide_container section#stadium_guide .stadium_guide_content {
	margin: 0 0 auto;
	padding: 0;
	font-family: var(--font_family_regular);
	font-size: var(--font_size_min);
	font-weight: 400;
	line-height: 1.75;
	color: var(--color_black);
	height: auto;
	flex-basis: 100%;
}



@media screen and (max-width: 768px) {
	.stadium_guide_container section#stadium_guide .stadium_guide_icon {
		left: 0;
	}
	.stadium_guide_container section#stadium_guide .grid {
		grid-template-columns: repeat(1, 1fr);
		grid-auto-rows: auto;
	}
	.stadium_guide_container section#stadium_guide .col-1_3:nth-child(even)::before {
		display: none;
	}
}


/* seating map */

section#suite_prices_and_details.suite_map.cui_big_container {
	display: none;
}



/*
----------------------------------------------------
EDP
----------------------------------------------------
*/
#edp_header {
	top: 70px;
	height: 79px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background: var(--color_4-dark);
}

#edp_header * {
	color: var(--color_white) !important;
	font-family: var(--font_family_title);
	font-weight: normal;
	text-transform: uppercase;
}

#edp_header .event_logo {
	border-left-color: var(--color_2);
}

#edp_header .edp_header_content > div {
	font-family: var(--font_family_title) !important;
}

/* event hover cards with map */

#edp_container {
	width: calc( 100% - var(--gutter_width) * 2 );
	max-width: var(--container_width);
	margin: 100px auto 10px;
	display: flex;
	flex-direction: row-reverse;
	column-gap: 20px;
}
#edp_container .content_left {
	margin: 0;
	padding: 0;
	width: auto;
	flex: 1;
}
#edp_container .content_right {
	margin: 0;
	width: auto;
	padding: 0;
	overflow: unset;
	flex: 1;
}
#edp_container .event_inventory_status * {
	font-size: var(--font_size_small_text);
	line-height: 22px;
	color: var(--color_white);
}

#edp_container .content_right .map_container {
	width: 100%;
	overflow: visible;
	background: transparent;
}
#edp_container .content_right .map_container #suite_map_background {
	border: 0 none;
	box-shadow: 0 4px 24px rgba(0,0,0,0.07);
}
#edp_container .ll_container {
	position: relative;

	@media screen and (max-width: 500px) {
		display: grid;
		grid-template-columns: 1fr auto;
	}
}

/* #edp_container .listing_list_row */
#edp_container .listing_list_row {
	border: 1px solid var(--color_2);
}

#edp_container .listing_list_row :is(.ll_price, .ll_suite_type) {
	font-family: var(--font_family_title);
	font-size: 20px;
	font-weight: 700;
	color: var(--color_black);
	text-transform: uppercase;
}

#edp_container .listing_list_row:hover {
	background: var(--color_light_bkg);
	box-shadow: 4px 4px 0 0 var(--color_2);

	& :is(.ll_price, .ll_suite_type) {
		color: var(--color_1);
	}
}

#edp_container .ll_suite_info {
	margin-top: 8px;
}

#edp_container .listing_sort_container:hover {
	background: transparent;
	color: var(--color_1);
}

#edp_container .ll_instant {
	align-content: center;
}
#edp_container .display_price {
	top: -4px;
	position: relative;
}
#edp_container .instant_book_icon .icon-power {
	display: block;
}
#edp_container .ll_suite_info :not([class*="icon"]) {
	font-size: 14px;
	line-height: 18px;
	letter-spacing: 0;
	color: var(--color_black);
	font-family: var(--font_family_regular);
}


@media screen and (min-width: 769px) {
	#edp_container .map_container {
		position: sticky;
		top: 20px;
	}
}
@media screen and (max-width: 768px) {
	#edp_container {
		flex-direction: column;
	}
}
@media screen and (min-width: 769px) and (max-width: 960px) {
	#edp_container .ll_thumbnail, #edp_container .ll_container {
		width: 100% !important;
	}
	.listing_list_container {
		width: auto;
	}
	.listing_list_row {
		height: auto !important;
	}
}


/* edp popup details w instant book */













/*
----------------------------------------------------
LDP
----------------------------------------------------
*/

#edp_container.listing_details {
	max-width: 100%;
	min-width: 0;
	display: block;
	margin-top: 64px;
}
#edp_container.listing_details .listing_list_row_details .details_top_container {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

#edp_container.listing_details .listing_list_row_details {
	padding: 0;
	margin-top: 0 !important;
	padding-bottom: 5vh;
}

#edp_container.listing_details .cta_container {
	width: 100%;
	padding-bottom: 30px;
	margin-bottom: 52px;
}
#edp_container.listing_details a.show_all_photos {
	position: absolute;
	border: 0 none;
	border-radius: 4px;
	background: var(--color_2);
	color: var(--color_white);
	width: auto;
	padding: 12px 26px;
}
#edp_container.listing_details a.show_all_photos:hover {
	background: var(--color_white);
	color: var(--color_2);
}

#edp_container.listing_details .white_container_gray_border {
	border: 1px solid #d9d9d9CC;
	background: var(--color_white);
	padding: 60px 80px;
	width: calc( 100% - var(--gutter_width) * 2 );
	max-width: var(--container_width);
}

#edp_container.listing_details :is(
    .subheading,
    h2.secondary_header,
    .ll_suite_type,
    .ll_price
) {
	font-family: var(--font_family_title);
	font-weight: 400;
	font-size: var(--font_size_games);
	line-height: 1.1;
	text-transform: uppercase;
	color: var(--color_black);
	position: relative;
}

#edp_container.listing_details :is(
    .listing_faq_answer,
    .listing_tips_tip,
    .listing_tips_text,
    .text_container
) {
	font-size: var(--font_size_min);
	line-height: 24px;
	color: var(--color_black);
	border: 0 none;
	font-family: var(--font_family_regular);
}

#non-header #edp_container.listing_details :is(
    .ll_suite_type,
    .ll_price
) {
	font-size: 2.05rem;
	line-height: 1;
}

.share_container button.share_this_button {
	width: auto;
	text-transform: uppercase;
}


/* instant book */

#edp_container.listing_details .content_right {
	padding-left: 20px;
}

#edp_container.listing_details .white_container_gray_border > .cta_container .content_right {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

#edp_container.listing_details .ll_price {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

#edp_container.listing_details a.blue-2.catering_menu_button {
	border-color: var(--color_1);
	background: var(--color_6);
	max-width: 100%;
	min-height: 30px;
	font-size: 0.75rem;
	align-content: center;
	font-family: var(--font_family_black);
	width: auto;
	padding-left: 15px;
	padding-right: 15px;
	transition: all 0.2s ease;
	padding-top: 4px;
	padding-bottom: 4px;
}
#edp_container.listing_details .listing_tips_text {
	width: auto;
}
#edp_container .content_left .included_available_item {
	display: flex;
	white-space: initial;
	column-gap: 4px;
	align-items: baseline;
}
#edp_container.listing_details :is(a.instant_book_btn, .cta_phone_container) {
	width: min( 370px, 32vw);
}
#edp_container.listing_details .cta_phone_container :not([class*="icon"]) {
	color: var(--color_black);
	font-family: var(--font_family_regular);
}
#edp_container.listing_details .cta_phone_container .cta_phone {
	margin: 0 10px;
}
#edp_container.listing_details a.blue-2.catering_menu_button:hover {
	background: var(--color_white);
	border-color: var(--color_1);
	color: var(--color_1);
}


/* faq */

#edp_container.listing_details .listing_faq .subheading {
	margin: 0 0 32px;
}
#edp_container.listing_details .listing_faq .subheading::after {
	content: "";
	display: block;
	height: 1px;
	width: 100%;
	background: #d9d9d9;
	opacity: 0.8;
	margin-top: 32px;
}

#edp_container.listing_details .listing_faq_question {
	margin: 0 0 5px;
	font-size: var(--font_size_min);
	font-family: var(--font_family_title);
	line-height: 24px;
	color: var(--color_black);
	text-transform: uppercase;
}

@media screen and (max-width: 768px) {
	#edp_container.listing_details .white_container_gray_border {
		padding: 30px 20px;
	}
	#edp_container.listing_details :is(
        .content_left,
        .content_right,
        .ll_price
    ) {
		float: none;
		width: 100%;
		padding-left: 0;
		display: block !important;
	}
	#edp_container.listing_details :is(a.instant_book_btn, .cta_phone_container) {
		width: 100%;
	}
}







/*
----------------------------------------------------
WAITLIST PAGE
----------------------------------------------------
*/

#edp_container.no-listings {
	display: block;
}
#edp_container.no-listings a.browse_other_events {
	color: var(--color_white);
	border-color: var(--color_white);
	transition: all 0.2s ease;
}

#edp_container.no-listings .listing_ca_text,
#edp_container.no-listings .listing_ca_text .sold_out_heading {
	font-family: var(--font_family_title);
	color: var(--color_black);
}

#edp_container.no-listings button#contact_form_submit {
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}
#edp_container.no-listings .sold_out_content {
	width: 540px;
	max-width: 100%;
}


/*
----------------------------------------------------
CUSTOM PAGE - DEFAULT
----------------------------------------------------
*/






/*
----------------------------------------------------
EXPLORE SUITES PAGE
EXPLORE TICKETS PAGE
----------------------------------------------------
*/

/* Suite amenities widget icons */
#amenities {
	width: 100%;
	margin: auto auto 0;
	border-top: 2px solid var(--color_1);
	background-color: var(--color_4-dark);
}

.suite_amenities_element {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: min-content;
	padding: 0;
	transition: all 0.2s ease;
	outline: 0 solid transparent;
	position: relative;
}
#amenities .suite_amenities_element:hover *,
#amenities .suite_amenities_element.selected * {
	color: var(--color_1) !important;
}

#amenities .suite_amenities_element {
	border-bottom: 2px solid transparent;
}

#amenities .suite_amenities_element.selected {
	border-bottom: 2px solid var(--color_1);
}

.suite_amenities_element .sa_icon {
	text-align: center;
	font-size: 18px;

	@media (min-width: 501px) {
		font-size: 30px;
	}
}

.suite_amenities_element i {
	background: none;
	width: auto;
	height: auto;
	color: var(--color_white);
}

.suite_amenities_inner {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min-content, 200px));
	justify-content: center;
	grid-auto-rows: 1fr;
	width: calc( 100% - var(--gutter_width) * 2 );
	max-width: var(--container_width);
	margin: 0 auto;
	min-height: 115px;
}

.suite_amenities_element_inner {
	display: flex;
	align-items: center;
	column-gap: 10px;
}

.suite_amenities_element_inner .sa_text {
	font-family: var(--font_family_title) !important;
	font-size: var(--font_size_min) !important;
	color: var(--color_white) !important;
	font-weight: normal;
	line-height: 18px;
	word-break: initial;

	@media (min-width: 768px) {
		font-size: var(--font_size_highlights) !important;
	}
}

@media screen and (max-width: 1056px) {
	.suite_amenities_inner {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 180px));
		padding: 20px !important;
		width: auto;
		column-gap: 45px;
		row-gap: 25px;
		justify-content: center;
	}
	#amenities_container .inner_container {
		padding-top: 12px;
	}
	.suites #amenities_container .inner_container::before {
		width: 100%;
		max-width: 100%;
	}
	.suite_amenities_element.selected::after {
		bottom: -14px;
	}
	.suites .suite_amenities_element {
		width: 100%;
		align-items: flex-start;
	}
	.suite_amenities_inner {
		margin: 0;
	}
}
@media screen and (max-width: 600px) {
	.suite_amenities_inner {
		grid-template-columns: repeat(2, 1fr);
		padding: 0 15px 0 10px;
		word-break: break-word;
	}
	.suites #amenities_container .inner_container::before {
		width: 100%;
		max-width: 100%;
	}
}

/* Suite amenities drawer */

#amenities_container {
	background: var(--color_4-dark);
}

#amenities_container .suite_amenities_detail {
	padding: 0;
	border-top: 0 none;
}
#amenities_container .sa_detail_content {
	color: var(--color_white);
	font-size: var(--font_size_min);
	text-align: left;
	letter-spacing: 0.8px;
	line-height: 1.65;
}
#amenities_container a {
	color: var(--color_white);
	text-decoration: underline;
}
#amenities_container .inner_container {
	width: calc( 100% - var(--gutter_width) * 2 );
	max-width: var(--container_width);
	margin: 0 auto;
	min-height: 96px;
	padding: 17px 30px 30px;
	align-content: center;
}
#amenities_container .sa_elt {
	max-width: 100%;q
}

/* Suite cards */

#suite_types {
	padding-top: 50px;
	padding-bottom: 100px;
}

#suite_types .cards_container {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-auto-rows: 1fr;
	gap: 15px;
}

#suite_types .suite_container {
	overflow: hidden;
	margin: 0 !important;
	display: flex;
	flex-direction: column;
	border: 1px solid var(--color_2);
	border-radius: 8px;
}

#suite_types .img_content {
	height: 280px;
	margin-bottom: 0;
}

#suite_types .text_content {
	padding: 8px 20px 22px 32px;
	flex: 1;
	border-top: 1px solid var(--color_2);
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}

#suite_types .text_content h4 {
	color: var(--color_2);
}

#suite_types .suite_info {
	margin-bottom: 10px;
	color: var(--color_white);
}

#suite_types .suite_container_cta {
	margin-top: auto;
}
#suite_types .suite_container_cta a.blue {
	font-size: 14px;
	font-family: var(--font_family_bold);
	text-transform: initial;
	color: var(--color_3);
	letter-spacing: 0;
}

@media screen and (max-width: 768px) {
	#suite_types .cards_container {
		grid-template-columns: repeat(1, 1fr);
	}
}

/* Suite FAQ */

#suite_faq {
	min-height: 535px;
	padding: 40px 0;
}

#suite_faq :not(a) {
	color: var(--color_2);
}
#suite_faq a.blue {
	width: calc(100% - 10px);
	font-size: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-bottom: 1.4rem;
}

#suite_faq .cui_small_container {
	display: flex;
	column-gap: 30px;
	align-self: center;
	max-height: 90vh;
}

#suite_faq .left {
	flex: 1;
}
#suite_faq .right {
	flex: 0 1 366px;
}
#suite_faq h2.post-title {
	margin: 0 0 18px;
	padding: 0;
	position: relative;
	text-align: left;
}

#suite_faq .map_container {
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	background: #e6e6e6;
	border: 1px solid var(--color_2);
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	overflow: hidden;
}
#suite_faq .map_container img {
	width: 100%;
	height: auto;
}
#suite_faq .suite_qs {
	display: flex;
	column-gap: 20px;
}
#suite_faq .suite_q {
	flex: 1;
}
#suite_faq .suite_q h3 {
	font-family: var(--font_family_black);
	font-size: var(--font_size_games);
	line-height: 1.25;
	margin: 0 0 10px;
}
#suite_faq .suite_q p {
	font-size: var(--font_size_min);
	line-height: 24px;
	margin-top: 0;
}

@media screen and (max-width: 960px) {
	#suite_faq .right {
		display: none;
	}
}
@media screen and (max-width: 768px) {
	#suite_faq .suite_qs {
		flex-direction: column;
		row-gap: 0;
	}
}


/* Suite map */

.suite_map {
	z-index: 1;
	position: relative;
	padding-bottom: 400px;
	background:
		linear-gradient(to bottom,
			var(--color_black) 0 33.33%,
			var(--color_1) 33.33% 34.33%,
			var(--color_4) 34.33%,
			transparent 60%,
			transparent 98%,
			var(--color_black) 100%);

	@media screen and (min-width: 769px) {
		padding-bottom: 0;
		padding-top: 50px;
	}
}

.suite_map .lead {
	margin-bottom: 64px;
}
.suite_map .post-title {
	/* margin-bottom: 0; */
}
.suite_map .post-title::after {
	content: "";
	display: block;
	position: relative;
	background-image: url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/la-galaxy-four-navy-stars.svg");
	background-size: contain;
	width: 164px;
	height: 41px;
	margin: 30px auto 24px;
}
.suite_map .map_container {
	position: relative;
	background: var(--color_white);
	border: 1px solid var(--color_2);
	max-height: 400px;

	&, & > img {
		max-height: 400px;

		@media screen and (min-width: 769px) {
			height: 707px;
			max-height: 707px;
		}
	}
}

.suite_map .map_container img {
	width: auto;
	height: 100%;
	position: relative;
	object-fit: contain;
	z-index: 9;
	display: block;
	margin: 0 auto;
}







/*
----------------------------------------------------
SUITE OWNERSHIP PAGE
----------------------------------------------------
*/

#ownership_contact_section {
	margin: 30px 0;
}
.ownership .ownership_contact_container  {
	border: 1px solid var(--color_border);
	background: var(--color_white);
}

.ownership .ownership_content_container .ownership_content {
	background: var(--color_1);
	color: var(--color_3);
}
.ownership .ownership_content_container .ownership_heading {
	margin: 0;
	padding: 20px;
	display: flex;
	justify-content: space-between;
}
.ownership .ownership_content_container i[class*="icon-"] {
	color: var(--color_3);
	margin-left: auto;
}
.ownership .ownership_content .galleria_container .grid:nth-child(2) {
	padding: 0 20px;
}
.ownership .ownership_content .galleria_container li {
	font-size: var(--font_size_min);
}

.ownership #ownership_video {
	margin: 10px 0;
}
.ownership #ownership_video iframe {
	display: initial;
	width: var(--container_width);
	max-width: 100%;
	height: 100%;
	aspect-ratio: 16/9;
}




/*
----------------------------------------------------
FAQ PAGE
----------------------------------------------------
*/

.faq .page_title_container {
	background-image:
			url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/chi-fire-brandmark-tint-c-only.svg"),
			url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/chi-fire-page-title-bg-matches_1438x296.jpg?v=0541P");
	background-position:
			-166px center,
			center center;
	background-size:
			265px 243px,
			cover !important;
}
.faq .page_title_container h1 {
	position: unset;
}
.faq .cui_small_container {
	margin-top: 50px;
}
.faq h2.faq_section_title {
	font-family: var(--font_family_title);
	font-size: 36px; /* to-do (nicetohave): typographic scale */
	font-weight: 400;
	line-height: 48px;
	text-transform: uppercase;
	margin: 10px 0 0;
	color: var(--color_2);
}

.faq .faq_item {
	border: 1px solid var(--color_2);
	transition: all 0.2s ease;
	background-color: var(--color-black);
}

.faq .faq_item:hover {
	background: var(--color_6);
	box-shadow: 4px 4px 0 0 var(--color_2);
}

.faq h3.faq_question {
	font-family: var(--font_family_title);
	font-size: var(--font_size_min);
	line-height: 24px;
	color: var(--color_white);
}

.faq .faq_answer {
	font-size: var(--font_size_min);
	line-height: 24px;
	letter-spacing: 0.8px;
	color: var(--color_1);
}

.faq #faq_section {
	margin-bottom: 120px;
}

.faq #contact_us {
	min-height: 400px;
	margin: 0;
	background-position: center bottom;
	justify-content: center;
}

.faq #contact_us .cta_container {
	width: auto;
	min-height: auto;
	padding: 20px 0;
}
.faq #contact_us .cta_container h2 {
	margin-top: 10px;
	text-align: center;
}





/*
----------------------------------------------------
CONTACT PAGE
Includes inline contact form
----------------------------------------------------
*/

.contact .page_title_container {
	background-image:
			url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/chi-fire-brandmark-tint-c-only.svg"),
			url("../../../includes/custom-ui/oh_cavaliers/images-git-lfs/chi-fire-page-title-bg-matches_1438x296.jpg?v=0541P");
	background-position:
			-166px center,
			center center;
	background-size:
			265px 243px,
			cover !important;
}

.contact .white_container_gray_border {
	border: 1px solid var(--color_border);
	background: var(--color_white);
}

#contact_us_form {
	padding-top: 5vh;
}

.contact #contact_us_form .content_left .white_container_gray_border {
	padding: 5vw;

	@media screen and (min-width: 769px) {
		padding: 30px 50px;
	}
}

#contact_form .form_element,
.contact #contact_us_form .content_left .white_container_gray_border {
	font-family: var(--font_family_regular);
	color: var(--color_black);
}

#contact_form {
	#contact_form_submit {
		margin-top: 20px;
		margin-bottom: 20px;
	}
}


/*
----------------------------------------------------
CHECKOUT
----------------------------------------------------
*/

.new_checkout .nco_header {
	padding: 20px;
	border-bottom: 3px solid;
	color: var(--color_1);
	background: var(--color_black);
}

.new_checkout .post-title {
	color: var(--color_1);
	font-family: var(--font_family_title);
	font-weight: normal;
	font-size: 44px;
	text-transform: uppercase;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
	margin-bottom: 0;
	background-color: var(--color_black);
}

@media screen and (max-width: 768px) {
    .nco_content_right {
        border-top: none;
    }
}

.new_checkout .nco_content_right :is(
    .order_summary_container,
    .map_container,
    .contact_us_container
) {
	border: 1px solid var(--color_border);
}
.new_checkout .contact_us_container :not(.heading) {
	font-size: var(--font_size_small_text);
}
#non-header .new_checkout h2 {
	color: var(--color_black);
    font-family: var(--font_family_title);
    font-weight: normal;
}

#non-header .new_checkout .grid-right h2,
#non-header .new_checkout .order_summary_area h2,
#non-header .new_checkout .location_container h2 {
	color: var(--color_1);
}

#non-header .new_checkout .grid-right p,
#non-header .new_checkout .location_container p {
	color: var(--color_white);
}

#non-header .new_checkout label {
	margin: 0.5em 0 0;
	font-family: var(--font_family_regular);
}
/*
----------------------------------------------------
PURCHASE AGREEMENT, INVOICE
----------------------------------------------------
*/

.page-template-seg_checkout_success_pp .nco_content_left :is(p, li, a:not([class])) {
	font-size: 17px;
}

/* News Card component */
.cavs_news-card {
	border: 1px solid var(--color_1);
	color: var(--color_white);

	@media screen and (min-width: 769px) {
		flex-grow: 1;
	}

	.img_content {
		border-bottom: 1px solid var(--color_1);
	}
}

.cavs_news-card__title,
h3.cavs_news-card__title {
	color: var(--color_1);
	font-family: var(--font_family_title);
	font-size: 20px;
	font-weight: normal;
	text-transform: uppercase;
}

.cavs_news-card__content {
	line-height: 1.5em;
	-webkit-font-smoothing: antialiased;
}

.loading_center {
	font-family: var(--font_family_title) !important;
}

.galleria-lightbox-content .galleria-image {
	width: auto;
}

.galleria-lightbox-prevholder { left: 5vw !important; }
.galleria-lightbox-nextholder { right: 5vw !important; }

.form_element label {
	font-family: var(--font_family_title);
	font-weight: normal;
}

.white_container_gray_border > div {
	font-family: var(--font_family_title);
	font-weight: normal;
}

.contact_link {
	color: var(--color_black);
	font-family: var(--font_family_regular);
	text-transform: none;
}

.order_summary_container .event_name,
.nco_secondary_block .heading {
	font-family: var(--font_family_title) !important;
	text-transform: uppercase;
}

.page-template-sp_privacy_policy_page,
.page-template-seg_standardpage {
	h1, h2, h3 {
		font-family: var(--font_family_title) !important;
		font-weight: normal !important;
		text-transform: uppercase !important;
	}

	.post-entry p {
		font-family: var(--font_family_regular);
	}
}

/* OVERRIDING template_1 */
@media screen and (max-width: 500px) {
	#hp_ideal_matchup .img_content {
		width: 100%;
		min-height: 100px;
	}
}

@media screen and (max-width: 768px) {
    .suites h2 {
        margin: 30px 0;
    }

	#contact_form {
		#contact_form_submit {
			margin-top: 10px;
		}
	}
}

/* end OVERRIDING template_1 */