/* HF Relaunch Core: external, reusable component styles. */

/* Fluid type scale aligned to the Jewemedien staging reference. */
:root {
	--hf-font-display: "HF Nunito", Arial, sans-serif;
	--hf-font-body: "HF Nunito Sans", Arial, sans-serif;
	--hf-type-body: clamp(1rem, calc(.85rem + .25vw), 1.1875rem);
	--hf-type-small: clamp(.875rem, calc(.8rem + .12vw), 1rem);
	--hf-type-h1: clamp(3rem, calc(1rem + 4vw), 6rem);
	--hf-type-h2: clamp(2rem, calc(1.1rem + 2vw), 2.55rem);
	--hf-type-h3: clamp(1.4rem, calc(1.1rem + 1vw), 1.58rem);
	--hf-type-h4: clamp(1.3rem, calc(1.1rem + .75vw), 1.48rem);
	--hf-type-h5: clamp(1.2rem, calc(1rem + .55vw), 1.35rem);
	--hf-type-h6: clamp(1.05rem, calc(.95rem + .35vw), 1.2rem);
}

body,
body button,
body input,
body textarea,
body select {
	font-family: var(--hf-font-body);
}

body {
	font-size: var(--hf-type-body) !important;
	line-height: 1.8;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
	font-family: var(--hf-font-display);
	font-weight: 800;
}

body h1 { font-size: var(--hf-type-h1); line-height: 1; }
body h2 { font-size: var(--hf-type-h2); line-height: 1.3; }
body h3 { font-size: var(--hf-type-h3); line-height: 1.18; }
body h4 { font-size: var(--hf-type-h4); line-height: 1.18; }
body h5 { font-size: var(--hf-type-h5); line-height: 1.2; }
body h6 { font-size: var(--hf-type-h6); line-height: 1.25; }
body p,
body li,
body strong,
body em { font-size: inherit; }
body a { font-family: inherit; }

/* Native Divi modules keep editing responsibilities explicit. */
.hf-home-section--news-heading .et_pb_text,
.hf-home-section--intro .et_pb_text,
.hf-home-section--contact .et_pb_text {
	width: min(calc(100% - (2 * var(--hf-section-gutter, 1rem))), var(--hf-content-max, 75rem));
	max-width: var(--hf-content-max, 75rem);
	margin-inline: auto;
}

.hf-home-section--hero {
	padding: 0 !important;
	background: #fff !important;
}

.hf-home-section--hero .et_pb_row,
.hf-home-section--news-heading .et_pb_row,
.hf-home-section--news .et_pb_row,
.hf-home-section--intro .et_pb_row,
.hf-home-section--events .et_pb_row,
.hf-home-section--contact .et_pb_row {
	width: min(calc(100% - (2 * var(--hf-section-gutter, 1rem))), var(--hf-content-max, 75rem)) !important;
	max-width: var(--hf-content-max, 75rem) !important;
	padding: 0 !important;
}

.hf-home-section--news-heading {
	padding: clamp(3rem, 6vw, 5rem) 0 0 !important;
	background: #fff !important;
}

.hf-home-section--news-heading .et_pb_text h2 {
	margin: 0;
	color: var(--hf-color-red, #b52a31) !important;
}

.hf-home-section--news {
	padding: clamp(1rem, 2vw, 2rem) 0 clamp(4rem, 8vw, 7rem) !important;
	background: #fff !important;
}

.hf-home-section--news .et_pb_blog_grid_wrapper {
	margin: 0;
}

.hf-home-section--intro {
	padding: clamp(4rem, 8vw, 8rem) 0 !important;
	background: #f5f2ed !important;
}

.hf-home-section--intro .et_pb_text h2 {
	margin: .35rem 0 1rem;
	color: var(--hf-color-red, #b52a31) !important;
}

.hf-home-section--intro .et_pb_text h3 {
	margin: 0 0 1rem;
	color: var(--hf-color-ink, #171a1d);
}

.hf-home-section--intro .et_pb_text p:not(.hf-eyebrow),
.hf-home-section--contact .et_pb_text p:not(.hf-eyebrow) {
	max-width: 42rem;
	font-size: var(--hf-type-body) !important;
	line-height: 1.8 !important;
}

.hf-home-section--events {
	padding: 0 !important;
	background: #171a1d !important;
}

.hf-home-section--contact {
	padding: clamp(4rem, 8vw, 8rem) 0 !important;
	background: var(--hf-color-red, #b52a31) !important;
	color: #fff !important;
}

.hf-home-section--contact .et_pb_text h2,
.hf-home-section--contact .et_pb_text .hf-eyebrow {
	color: #fff !important;
}

.hf-home-section--news .et_pb_post {
	padding: clamp(1rem, 2vw, 1.5rem);
	border: 1px solid rgba(23, 26, 29, .14);
	background: #fff;
}

.hf-home-section--news .et_pb_post h2 {
	font-size: var(--hf-type-h3) !important;
	line-height: 1.18 !important;
}

.hf-home-section--news .et_pb_post .post-content p,
.hf-home-section--news .et_pb_post .post-meta {
	font-family: var(--hf-font-body);
}

.hf-home-section--news .et_pb_post .post-content p {
	font-size: var(--hf-type-body) !important;
	line-height: 1.8 !important;
}

/* AW-inspired editorial blog grid: equal cards, controlled imagery, 3/2/1 columns. */
.hf-home-section--news .et_pb_blog_grid .et_pb_salvattore_content {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1.25rem, 3vw, 2rem);
	align-items: stretch;
	width: 100% !important;
	max-width: 100%;
}

.hf-home-section--news .et_pb_blog_grid .et_pb_salvattore_content > .column {
	display: contents;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.hf-home-section--news .et_pb_blog_grid .et_pb_post {
	display: flex;
	flex-direction: column;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 0;
	background: #f5f2ed;
	box-sizing: border-box;
}

.hf-home-section--news .et_pb_blog_grid .et_pb_post .entry-featured-image-url,
.hf-home-section--news .et_pb_blog_grid .et_pb_post .et_pb_image_container {
	display: block;
	margin: 0;
}

.hf-home-section--news .et_pb_blog_grid .et_pb_post img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.hf-home-section--news .et_pb_blog_grid .et_pb_post .entry-title,
.hf-home-section--news .et_pb_blog_grid .et_pb_post h2 {
	margin: 0;
	padding: clamp(1.1rem, 2vw, 1.5rem) clamp(1.1rem, 2vw, 1.5rem) .45rem;
	color: var(--hf-color-red, #b52a31) !important;
	font-size: var(--hf-type-h3) !important;
	line-height: 1.12 !important;
}

.hf-home-section--news .et_pb_blog_grid .et_pb_post .post-meta,
.hf-home-section--news .et_pb_blog_grid .et_pb_post .post-content {
	padding-right: clamp(1.1rem, 2vw, 1.5rem);
	padding-left: clamp(1.1rem, 2vw, 1.5rem);
}

.hf-home-section--news .et_pb_blog_grid .et_pb_post .post-meta {
	margin: 0;
	color: var(--hf-color-ink, #171a1d) !important;
	font-size: var(--hf-type-small) !important;
}

.hf-home-section--news .et_pb_blog_grid .et_pb_post .post-content,
.hf-home-section--news .et_pb_blog_grid .et_pb_post .entry-content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	padding-bottom: clamp(1.25rem, 2vw, 1.75rem);
}

.hf-home-section--news .et_pb_blog_grid .et_pb_post .post-content p,
.hf-home-section--news .et_pb_blog_grid .et_pb_post .entry-content p {
	margin-bottom: 1rem;
}

.hf-home-section--news .et_pb_blog_grid .et_pb_post .more-link {
	display: inline-flex;
	align-self: flex-start;
	margin-top: auto;
	padding: .7rem 1rem;
	background: var(--hf-color-red, #b52a31);
	color: #fff !important;
	font-size: var(--hf-type-small) !important;
	font-weight: 800;
	line-height: 1.1;
	text-decoration: none;
	transition: background-color .2s ease, color .2s ease;
}

.hf-home-section--news .et_pb_blog_grid .et_pb_post .more-link:hover,
.hf-home-section--news .et_pb_blog_grid .et_pb_post .more-link:focus-visible {
	background: #8f2026;
	color: #fff !important;
}

@media (max-width: 1100px) {
	.hf-home-section--news .et_pb_blog_grid .et_pb_salvattore_content { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
	.hf-home-section--news .et_pb_blog_grid .et_pb_salvattore_content {
		grid-template-columns: minmax(0, 1fr);
		gap: 1.25rem;
	}
}

/* Reusable primary CTA for the global WordPress/Divi navigation. */
.hf-nav-cta > a,
.menu-item-hf-nav-cta > a {
	border-radius: 999px;
	background: var(--hf-color-red, #b52a31) !important;
	color: #fff !important;
	font-weight: 800;
	line-height: 1.1;
	padding: .7rem 1rem !important;
}

.hf-nav-cta > a:hover,
.hf-nav-cta > a:focus,
.menu-item-hf-nav-cta > a:hover,
.menu-item-hf-nav-cta > a:focus {
	background: #8f2026 !important;
	color: #fff !important;
}

/* Keep the Divi header navigation aligned with the CTA and search control. */
#et-top-navigation {
	display: flex;
	align-items: center;
}

#top-menu-nav,
#top-menu-nav #top-menu {
	display: flex;
	align-items: center;
}

#top-menu-nav #top-menu > li:not(.hf-nav-cta) > a {
	color: #000 !important;
}

#top-menu-nav #top-menu > li.current-menu-item > a,
#top-menu-nav #top-menu > li.current_page_item > a,
#top-menu-nav #top-menu > li.current-menu-ancestor > a,
#top-menu-nav #top-menu > li.current_page_ancestor > a {
	color: var(--hf-color-red, #b52a31) !important;
}

#main-header > .container #top-menu,
#main-header > .container #top-menu-nav,
#main-header > .container #top-menu > li > a,
#main-header > .container #top-menu > li > a:hover,
#main-header > .container #top-menu > li > a:focus {
	transition: none !important;
	animation: none !important;
}

#et-top-navigation #et_top_search {
	display: flex !important;
	align-items: center;
	height: 38px;
}

#et-top-navigation #et_search_icon {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-content: center;
	justify-content: center;
	align-items: center;
}

#et-top-navigation #et_search_icon:before {
	content: "\55";
	font-size: 17px;
	left: 0;
	position: absolute;
	margin-top: auto;
	margin-bottom: auto;
	top: auto !important;
	color: #000 !important;
}

/* Contain Divi's open search form in a dropdown below the search control. */
#main-header .et_search_outer {
	display: block !important;
	top: calc(80px + .75rem) !important;
	right: max(1rem, calc((100vw - 1080px) / 2)) !important;
	left: auto !important;
	width: min(22rem, calc(100vw - 2rem)) !important;
	height: auto !important;
	padding: .75rem !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid rgba(23, 26, 29, .14);
	box-shadow: 0 .75rem 2rem rgba(23, 26, 29, .18);
	z-index: 1001;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: none;
	transition: opacity .2s ease, visibility 0s linear .2s !important;
}

#main-header .et_search_outer:has(.et_search_form_container.et_pb_search_visible) {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: none;
	transition: opacity .2s ease, visibility 0s linear 0s !important;
}

#main-header .et_search_outer .et_search_form_container,
#main-header .et_search_outer .et_search_form_container.et_pb_search_visible,
#main-header .et_search_outer .et_search_form_container.et_pb_search_form_hidden {
	animation: none !important;
	transform: none !important;
	transition: none !important;
	height: 2.75rem !important;
	min-height: 2.75rem;
}

#main-header .et_search_outer .et_search_form_container.et_pb_search_visible {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: 2.75rem !important;
	margin: 0 !important;
	padding: 0 !important;
	opacity: 1 !important;
}

#main-header .et_search_outer .et-search-form {
	position: relative !important;
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	margin: 0 !important;
}

#main-header .et_search_outer .et-search-field {
	position: static !important;
	display: block !important;
	box-sizing: border-box;
	width: 100% !important;
	height: 2.75rem !important;
	margin: 0 !important;
	padding: .65rem 2.75rem .65rem .85rem !important;
	op: auto !important;
	right: auto !important;
	opacity: 1 !important;
	visibility: visible !important;
	border: 1px solid rgba(23, 26, 29, .3);
	background: #fff;
	color: var(--hf-color-ink, #171a1d);
}

#main-header .et_search_outer .et_close_search_field {
	top: 50% !important;
	right: .75rem !important;
	margin: 0 !important;
	transform: translateY(-50%);
}

#main-header > .container.et_pb_menu_hidden #top-menu,
#main-header > .container.et_pb_menu_hidden #top-menu-nav {
	opacity: 1 !important;
	visibility: visible !important;
	animation: none !important;
}

.et_header_style_left #et-top-navigation nav > ul > li:not(.hf-nav-cta) > a,
.et_header_style_left .et-fixed-header #et-top-navigation nav > ul > li:not(.hf-nav-cta) > a {
	padding-bottom: 0 !important;
}

/* Divi Theme Builder: reusable global header layout. */
.hf-global-header {
	background: #fff !important;
	border-bottom: 1px solid rgba(23, 26, 29, .12);
	padding: 0 !important;
}

.hf-global-header .et_pb_row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between;
	width: min(calc(100% - 2rem), 1080px) !important;
	max-width: 1080px !important;
	min-height: 80px;
	margin: 0 auto !important;
	padding: .75rem 0 !important;
}

.hf-global-header .et_pb_column {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between;
	gap: clamp(1rem, 3vw, 3rem);
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}

.hf-global-header .et_pb_image {
	flex: 0 0 clamp(8.5rem, 15vw, 11.25rem);
	max-width: clamp(8.5rem, 15vw, 11.25rem);
	margin: 0 !important;
	line-height: 0;
}

.hf-global-header .et_pb_image .et_pb_image_wrap,
.hf-global-header .et_pb_image img {
	display: block;
	width: 100%;
	height: auto;
}

.hf-global-header .et_pb_menu {
	flex: 1 1 auto;
	width: auto !important;
	margin: 0 !important;
	background: transparent !important;
}

.hf-global-header .et_pb_menu_inner_container,
.hf-global-header .et_pb_menu__wrap {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
}

.hf-global-header .et_pb_menu__menu {
	display: block !important;
}

.hf-global-header .et_pb_menu .et-menu {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: clamp(.35rem, 1.4vw, 1.15rem);
	padding: 0 !important;
}

.hf-global-header .et_pb_menu .et-menu > li {
	padding: 0 !important;
}

.hf-global-header .et_pb_menu .et-menu > li > a {
	padding: .7rem 0 !important;
	color: #000 !important;
	font-size: clamp(.85rem, 1.15vw, 1rem);
	line-height: 1.1;
	white-space: nowrap;
}

.hf-global-header .et_pb_menu .et-menu > li.current-menu-item > a,
.hf-global-header .et_pb_menu .et-menu > li.current_page_item > a,
.hf-global-header .et_pb_menu .et-menu > li.current-menu-ancestor > a,
.hf-global-header .et_pb_menu .et-menu > li.current_page_ancestor > a {
	color: var(--hf-color-red, #b52a31) !important;
}

.hf-global-header .et_pb_menu .et-menu > li.hf-nav-cta > a {
	padding: .7rem 1rem !important;
	background: var(--hf-color-red, #b52a31) !important;
	border-radius: 999px;
	color: #fff !important;
}

.hf-global-header .et_pb_menu .et_pb_menu__search-button {
	align-self: center;
	margin-left: .35rem;
	padding: 0 !important;
	color: #000 !important;
}

.hf-global-header .et_pb_menu .et_pb_menu__search-container {
	position: absolute;
	top: calc(100% + .75rem);
	right: 0;
	left: auto;
	width: min(22rem, calc(100vw - 2rem));
	padding: .75rem;
	background: #fff;
	border: 1px solid rgba(23, 26, 29, .14);
	box-shadow: 0 .75rem 2rem rgba(23, 26, 29, .18);
	z-index: 1001;
}

/* Keep the two superseded logo-only sections out of the rendered header. */
.et-l--header > .et_pb_section.hf-global-header {
	display: none !important;
}

/* The saved native Divi menu section is the single rendered global header. */
.et-l--header > .et_pb_section.et_pb_section--with-menu {
	background: #fff !important;
	border-bottom: 1px solid rgba(23, 26, 29, .12);
	padding: 0 !important;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between;
	width: min(calc(100% - 2rem), 1080px) !important;
	max-width: 1080px !important;
	min-height: 80px;
	margin: 0 auto !important;
	padding: .75rem 0 !important;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_column {
	display: flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_column:first-child {
	order: 2;
	justify-content: flex-end;
	width: auto !important;
	flex: 1 1 auto;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_column:last-child {
	order: 1;
	width: clamp(8.5rem, 15vw, 11.25rem) !important;
	max-width: clamp(8.5rem, 15vw, 11.25rem);
	flex: 0 0 clamp(8.5rem, 15vw, 11.25rem);
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_image {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	line-height: 0;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_image .et_pb_image_wrap,
.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_image img {
	display: block;
	width: 100%;
	height: auto;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu {
	width: auto !important;
	max-width: none;
	margin: 0 !important;
	background: transparent !important;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu_inner_container,
.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu__wrap {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu__menu {
	display: block !important;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: clamp(.35rem, 1.4vw, 1.15rem);
	padding: 0 !important;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li {
	padding: 0 !important;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li > a {
	padding: .7rem 0 !important;
	color: #000 !important;
	font-size: clamp(.85rem, 1.15vw, 1rem);
	line-height: 1.1;
	white-space: nowrap;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li.current-menu-item > a,
.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li.current_page_item > a,
.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li.current-menu-ancestor > a,
.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li.current_page_ancestor > a {
	color: var(--hf-color-red, #b52a31) !important;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li.hf-nav-cta > a {
	padding: .7rem 1rem !important;
	background: var(--hf-color-red, #b52a31) !important;
	border-radius: 999px;
	color: #fff !important;
}

.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu .et_pb_menu__search-button {
	align-self: center;
	margin-left: .35rem;
	padding: 0 !important;
	color: #000 !important;
}

@media (max-width: 980px) {
	.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_row {
		min-height: 68px;
		padding: .65rem 0 !important;
	}

	.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_column:last-child {
		width: clamp(7.5rem, 34vw, 10rem) !important;
		max-width: clamp(7.5rem, 34vw, 10rem);
		flex-basis: clamp(7.5rem, 34vw, 10rem);
	}

	.et-l--header > .et_pb_section.et_pb_section--with-menu .et_pb_menu__menu {
		display: none !important;
	}

	.et-l--header > .et_pb_section.et_pb_section--with-menu .et_mobile_nav_menu {
		display: block !important;
	}

	.et-l--header > .et_pb_section.et_pb_section--with-menu .mobile_nav {
		background: transparent !important;
	}

	.et-l--header > .et_pb_section.et_pb_section--with-menu .mobile_menu_bar:before {
		color: #000 !important;
	}
}

@media (max-width: 980px) {
	.hf-global-header .et_pb_row {
		min-height: 68px;
		padding: .65rem 0 !important;
	}

	.hf-global-header .et_pb_image {
		flex-basis: clamp(7.5rem, 34vw, 10rem);
		max-width: clamp(7.5rem, 34vw, 10rem);
	}

	.hf-global-header .et_pb_menu__menu {
		display: none !important;
	}

	.hf-global-header .et_mobile_nav_menu {
		display: block !important;
	}

	.hf-global-header .mobile_nav {
		background: transparent !important;
	}

	.hf-global-header .mobile_menu_bar:before {
		color: #000 !important;
	}
}

/* Divi wraps Theme Builder sections in .et_builder_inner_content. */
.et-l--header .et_pb_section.hf-global-header {
	display: none !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu {
	background: #fff !important;
	border-bottom: 1px solid rgba(23, 26, 29, .12);
	padding: 0 !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between;
	width: min(calc(100% - 2rem), 1080px) !important;
	max-width: 1080px !important;
	min-height: 80px;
	margin: 0 auto !important;
	padding: .75rem 0 !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_column {
	display: flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_column:first-child {
	order: 2;
	justify-content: flex-end;
	width: auto !important;
	flex: 1 1 auto;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_column:last-child {
	order: 1;
	width: clamp(8.5rem, 15vw, 11.25rem) !important;
	max-width: clamp(8.5rem, 15vw, 11.25rem);
	flex: 0 0 clamp(8.5rem, 15vw, 11.25rem);
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_image,
.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_image .et_pb_image_wrap {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	line-height: 0;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_image img {
	display: block;
	width: 100% !important;
	max-width: 180px !important;
	height: auto !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu {
	width: auto !important;
	max-width: none;
	margin: 0 !important;
	background: transparent !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu_inner_container,
.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu__wrap {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu__menu {
	display: block !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: clamp(.35rem, 1.4vw, 1.15rem);
	padding: 0 !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li {
	padding: 0 !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li > a {
	padding: .7rem 0 !important;
	color: #000 !important;
	font-size: clamp(.85rem, 1.15vw, 1rem);
	line-height: 1.1;
	white-space: nowrap;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li.current-menu-item > a,
.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li.current_page_item > a,
.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li.current-menu-ancestor > a,
.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li.current_page_ancestor > a {
	color: var(--hf-color-red, #b52a31) !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu .et-menu > li.hf-nav-cta > a {
	padding: .7rem 1rem !important;
	background: var(--hf-color-red, #b52a31) !important;
	border-radius: 999px;
	color: #fff !important;
}

.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu .et_pb_menu__search-button {
	align-self: center;
	margin-left: .35rem;
	padding: 0 !important;
	color: #000 !important;
}

@media (max-width: 980px) {
	.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_row {
		min-height: 68px;
		padding: .65rem 0 !important;
	}

	.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_column:last-child {
		width: clamp(7.5rem, 34vw, 10rem) !important;
		max-width: clamp(7.5rem, 34vw, 10rem);
		flex-basis: clamp(7.5rem, 34vw, 10rem);
	}

	.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu__menu {
		display: none !important;
	}

	.et-l--header .et_pb_section.et_pb_section--with-menu .et_mobile_nav_menu {
		display: block !important;
	}

	.et-l--header .et_pb_section.et_pb_section--with-menu .mobile_nav {
		background: transparent !important;
	}

	.et-l--header .et_pb_section.et_pb_section--with-menu .mobile_menu_bar:before {
		color: #000 !important;
	}
}

@media (min-width: 981px) {
	#main-header,
	#main-header.et-fixed-header {
		height: 80px !important;
		min-height: 80px !important;
	}

	#main-header .container.et_menu_container {
		height: 80px !important;
		min-height: 80px !important;
	}

	#main-header #et-top-navigation,
	#main-header.et-fixed-header #et-top-navigation {
		height: 80px !important;
		box-sizing: border-box;
		padding-top: 0 !important;
	}
}

.hf-home-section--hero .et_pb_row,
.hf-home-section--hero .et_pb_column,
.hf-home-section--hero .et_pb_code {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.hf-slideshow {
	position: relative;
	width: 100%;
	height: clamp(32rem, 78vh, 52rem);
	min-height: 32rem;
	overflow: hidden;
	background: var(--hf-color-ink, #171a1d);
	color: #fff;
}

.hf-slideshow__track,
.hf-slide,
.hf-slide__media,
.hf-slide__media::after,
.hf-slide__overlay {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.hf-slide {
	display: block;
	visibility: hidden;
	opacity: 0;
	z-index: 0;
	transition: opacity .45s ease, visibility 0s linear .45s;
}

.hf-slide.is-active {
	visibility: visible;
	opacity: 1;
	z-index: 1;
	transition-delay: 0s;
}

.hf-slide__media {
	background: #262a2e;
}

.hf-slide__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

.hf-slide__media::after {
	content: '';
	background: linear-gradient(180deg, rgba(23, 26, 29, .08) 0%, rgba(23, 26, 29, .22) 35%, rgba(23, 26, 29, .9) 100%);
}

.hf-slide__overlay {
	background: linear-gradient(90deg, rgba(181, 42, 49, .46), transparent 64%);
	mix-blend-mode: multiply;
}

.hf-slide__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	box-sizing: border-box;
	height: 100%;
	width: min(calc(100% - (2 * var(--hf-section-gutter, 1rem))), var(--hf-content-max, 75rem));
	max-width: var(--hf-content-max, 75rem);
	margin-inline: auto;
	padding: clamp(7rem, 14vw, 11rem) 0 clamp(5rem, 9vw, 7rem);
	text-align: left;
}

.hf-slide__kicker {
	margin: 0 0 1rem;
	color: #fff;
	letter-spacing: .14em;
}

.hf-slide__title {
	max-width: 11ch;
	margin: 0;
	color: #fff !important;
	font-size: clamp(2.4rem, 6.5vw, 6rem) !important;
	font-weight: 800;
	line-height: .96;
	letter-spacing: -.045em;
	text-wrap: balance;
}

.hf-slide__description {
	max-width: 38rem;
	margin: 1.35rem 0 0;
	font-size: var(--hf-type-body);
	line-height: 1.6;
}

.hf-slide__cta {
	display: inline-flex;
	margin-top: 1.5rem;
}

.hf-slideshow__controls {
	position: absolute;
	inset: 0;
	z-index: 4;
	pointer-events: none;
}

.hf-slideshow__arrow {
	position: absolute;
	top: 50%;
	display: inline-flex;
	width: 2.5rem;
	height: 2.5rem;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--hf-color-red, #b52a31);
	color: #fff;
	font-size: 2rem;
	line-height: 1;
	cursor: pointer;
	pointer-events: auto;
	transform: translateY(-50%);
	transition: background-color .2s ease, color .2s ease;
}

.hf-slideshow__arrow--prev { left: 2%; }
.hf-slideshow__arrow--next { right: 2%; }

.hf-slideshow__arrow:hover,
.hf-slideshow__arrow:focus-visible {
	background: #fff;
	color: var(--hf-color-red, #b52a31);
}

.hf-slideshow__dots {
	position: absolute;
	right: 6%;
	bottom: 2rem;
	left: 6%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .55rem;
	pointer-events: auto;
}

.hf-slideshow__dot {
	width: 2.25rem;
	height: 2.25rem;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
}

.hf-slideshow__dot::after {
	content: '';
	display: block;
	width: .62rem;
	height: .62rem;
	margin: auto;
	border: 1px solid #fff;
	border-radius: 50%;
	transition: background-color .2s ease, transform .2s ease;
}

.hf-slideshow__dot.is-active::after,
.hf-slideshow__dot:hover::after,
.hf-slideshow__dot:focus-visible::after {
	background: #fff;
	transform: scale(1.25);
}

@media (max-width: 767px) {
	.hf-slideshow {
		height: clamp(25rem, 70vh, 40rem);
		min-height: 25rem;
	}

	.hf-slide__content {
		width: min(calc(100% - 2rem), var(--hf-content-max, 75rem));
		padding: 7rem 0 5rem;
	}

	.hf-slide__title { font-size: clamp(2.25rem, 11vw, 3.5rem) !important; }
	.hf-slideshow__arrow { top: auto; bottom: 1.2rem; transform: none; }
	.hf-slideshow__arrow--prev { left: 1rem; }
	.hf-slideshow__arrow--next { right: 1rem; }
	.hf-slideshow__dots { right: 4.5rem; bottom: 1.3rem; left: 4.5rem; }
}

@media (prefers-reduced-motion: reduce) {
	.hf-slide,
	.hf-slideshow__arrow,
	.hf-slideshow__dot::after { transition: none; }
}

.hf-events {
	padding: clamp(3rem, 7vw, 6rem) var(--hf-section-gutter, 1rem);
	background: var(--hf-color-ink, #171a1d);
	color: #fff;
}

.hf-homepage-modern > .et-l .et_pb_section_0.hf-hero {
	display: none;
}

.hf-homepage-modern {
	--hf-content-max: 75rem;
	--hf-section-gutter: clamp(1rem, 4vw, 4rem);
}

.hf-homepage-modern .hf-container,
.hf-homepage-modern .hf-news-grid {
	width: min(calc(100% - (2 * var(--hf-section-gutter))), var(--hf-content-max));
	max-width: var(--hf-content-max);
	margin-inline: auto;
}

.hf-homepage-modern .hf-news-grid {
	width: min(calc(100% - (2 * var(--hf-section-gutter))), var(--hf-content-max)) !important;
}

.hf-homepage-modern .et_pb_section:has(.hf-news-grid) {
	padding-top: clamp(1.5rem, 3vw, 2rem) !important;
}

.hf-home-news-heading {
	padding: clamp(2.5rem, 5vw, 4.5rem) var(--hf-section-gutter) 0;
	background: #fff;
}

.hf-home-news-heading h2 {
	margin: 0;
	color: var(--hf-color-red, #b52a31);
	font-size: clamp(2rem, 4vw, 4rem);
	line-height: 1;
}

.hf-homepage-modern .hf-news-grid h2 {
	display: none;
}

.hf-home-intro {
	background: #f5f2ed;
	color: var(--hf-color-ink, #171a1d);
}

.hf-home-intro h2,
.hf-home-contact h2 {
	max-width: 16ch;
	margin: .35rem 0 1rem;
	font-size: clamp(2rem, 4vw, 4rem);
	line-height: 1;
}

.hf-home-intro h2 {
	color: var(--hf-color-red, #b52a31);
}

.hf-home-intro h3 {
	max-width: 32ch;
	margin: 0 0 1rem;
	color: var(--hf-color-ink, #171a1d);
	font-size: clamp(1.5rem, 3vw, 2.5rem);
	line-height: 1.1;
}

.hf-home-intro p:not(.hf-eyebrow),
.hf-home-contact p:not(.hf-eyebrow) {
	max-width: 42rem;
	font-size: clamp(1.05rem, 1.8vw, 1.35rem);
	line-height: 1.6;
}

.hf-home-contact {
	padding: clamp(3rem, 7vw, 6rem) var(--hf-section-gutter, 1rem);
	background: var(--hf-color-red, #b52a31);
	color: #fff;
}

.hf-home-contact h2,
.hf-home-contact .hf-eyebrow {
	color: #fff;
}

.hf-home-contact .hf-button-primary {
	margin-top: .75rem;
}

.hf-events h2 {
	margin: 0 0 1.5rem;
	color: #fff;
	font-size: clamp(2rem, 4vw, 4rem);
	line-height: 1;
}

.hf-events__list {
	display: grid;
	gap: 1px;
	max-width: 75rem;
	margin: 0 auto;
	background: rgba(255,255,255,.18);
}

.hf-event-card {
	display: grid;
	grid-template-columns: 7rem minmax(0, 1fr);
	gap: clamp(1.25rem, 3vw, 2.5rem);
	padding: clamp(1.15rem, 2.5vw, 2rem);
	background: #22272b;
}

.hf-event-card--club { background: #2d2527; }

.hf-event-card__date {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: .2rem;
	padding-right: 1.25rem;
	border-right: 1px solid rgba(255,255,255,.22);
	color: #fff;
}

.hf-event-card__date span {
	color: #fff;
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.hf-event-card__type {
	color: #f1a0a4;
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.hf-event-card__date strong {
	font-size: 1.55rem;
	line-height: 1;
}

.hf-event-card__body h3 {
	margin: .2rem 0 .35rem;
	color: #f1a0a4;
	font-size: clamp(1.2rem, 2vw, 1.6rem);
}

.hf-event-card--match .hf-event-card__body h3 {
	color: var(--hf-color-red, #b52a31);
}

.hf-event-card__type,
.hf-event-card__teams,
.hf-event-card__meta,
.hf-event-card__note { margin: 0; }
.hf-event-card__teams { font-weight: 700; }
.hf-event-card__meta { display: flex; flex-wrap: wrap; gap: .6rem 1.2rem; margin-top: .75rem; color: #c5c9cc; font-size: .9rem; }
.hf-event-card__note { margin-top: .55rem; color: #c5c9cc; }

.hf-slideshow--empty,
.hf-events--empty { min-height: auto; padding: 2rem 1rem; }
.hf-slideshow--empty .hf-muted,
.hf-events--empty .hf-muted { margin: 0; color: inherit; }

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (max-width: 980px) {
	#main-header .et_search_outer {
		top: calc(60px + .75rem) !important;
		right: .75rem !important;
		width: min(22rem, calc(100vw - 1.5rem)) !important;
	}

	.hf-slideshow { min-height: 35rem; }
	.hf-slide__content { padding-inline: 2rem; }
}

@media (max-width: 640px) {
	.hf-slideshow { min-height: 35rem; }
	.hf-slide__content { padding-inline: 1.25rem; padding-bottom: 5.5rem; }
	.hf-slide__title { max-width: 12ch; font-size: clamp(2.55rem, 14vw, 4.4rem); }
	.hf-slide__description { font-size: 1rem; }
	.hf-slideshow__controls { bottom: 1rem; }
	.hf-event-card { grid-template-columns: 5.5rem minmax(0, 1fr); gap: 1rem; padding: 1rem; }
	.hf-event-card__date { padding-right: .8rem; }
	.hf-event-card__date strong { font-size: 1.25rem; }
}

@media (prefers-reduced-motion: reduce) {
	.hf-slide { transition: none; }
	#main-header .et_search_outer { transition: none !important; }
}

/* Explicit flex alignment for the global Divi menu container. */
.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu_inner_container,
.et-l--header .et_pb_section.et_pb_section--with-menu .et_pb_menu__wrap {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    column-gap: 1em;
}

/* HF fluid typography aligned with the AW reference scale. Font families stay site-configurable. */
:root {
	--hf-type-body: clamp(0.96rem, 0.9rem + 0.18vw, 1.06rem);
	--hf-type-small: clamp(0.84rem, 0.8rem + 0.14vw, 0.92rem);
	--hf-type-h1: clamp(2.55rem, 6.1vw, 4.15rem);
	--hf-type-h2: clamp(2.05rem, 4.8vw, 3.3rem);
	--hf-type-h3: clamp(1.75rem, 3.8vw, 2.55rem);
	--hf-type-h4: clamp(1.08rem, 2.15vw, 1.34rem);
	--hf-type-h5: clamp(0.96rem, 1.7vw, 1.08rem);
	--hf-type-h6: clamp(0.88rem, 1.35vw, 0.96rem);
}

body,
body p,
body li,
body a,
body strong,
body b,
body em,
body blockquote,
body button,
body input,
body textarea,
body select {
	font-size: var(--hf-type-body) !important;
}

body small,
body .fineprint {
	font-size: var(--hf-type-small) !important;
}

body h1 { font-size: var(--hf-type-h1) !important; }
body h2 { font-size: var(--hf-type-h2) !important; }
body h3 { font-size: var(--hf-type-h3) !important; }
body h4 { font-size: var(--hf-type-h4) !important; }
body h5 { font-size: var(--hf-type-h5) !important; }
body h6 { font-size: var(--hf-type-h6) !important; }

/* Keep blog-card links at the heading size. */
.hf-home-section--news .et_pb_blog_grid .et_pb_post .entry-title a {
    font-size: inherit !important;
    line-height: inherit !important;
}


/* Sponsor slider */
.hf-home-section--sponsors{background:#f0f1f2!important;padding:42px 0!important;overflow:hidden}.hf-home-section--sponsors .et_pb_row{width:100%;max-width:none;padding:0!important}.hf-home-section--sponsors .et_pb_code_inner{overflow:hidden}.hf-sponsors{width:100%;overflow:hidden;color:#000}.hf-sponsors__viewport{width:100%;overflow:hidden}.hf-sponsors__track{display:flex;align-items:flex-start;gap:28px;width:max-content;animation:hf-sponsors-marquee 58s linear infinite;will-change:transform}.hf-sponsors__item{display:flex;flex:0 0 calc((100vw - 5 * 28px - 56px)/6);max-width:220px;min-width:140px;flex-direction:column;align-items:center;justify-content:flex-start;color:#000!important;text-decoration:none!important;text-align:center}.hf-sponsors__logo{display:flex;width:100%;height:80px;align-items:center;justify-content:center}.hf-sponsors__logo img{display:block;width:auto;max-width:100%;height:80px;object-fit:contain;filter:grayscale(1);transition:filter .25s ease}.hf-sponsors__item:hover .hf-sponsors__logo img,.hf-sponsors__item:focus-visible .hf-sponsors__logo img{filter:grayscale(0)}.hf-sponsors__name{display:block;margin-top:10px;color:#000!important;font-size:.5em!important;line-height:1.25;font-weight:700}.hf-sponsors__fallback{font-size:.8rem;font-weight:700}.hf-sponsors__item:focus-visible{outline:2px solid currentColor;outline-offset:5px}@keyframes hf-sponsors-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media(max-width:980px){.hf-sponsors__item{flex-basis:calc((100vw - 3 * 28px - 40px)/4)}}@media(max-width:767px){.hf-home-section--sponsors{padding:30px 0!important}.hf-sponsors__track{gap:18px}.hf-sponsors__item{flex-basis:calc((100vw - 2 * 18px - 24px)/3);min-width:100px}.hf-sponsors__name{margin-top:8px}}@media(prefers-reduced-motion:reduce){.hf-sponsors__track{animation-play-state:paused}.hf-sponsors__item:nth-child(n+7){display:none}}
.hf-sponsors__item{max-width:none}