/**
 * Hero Generic Block Front-end CSS
 */

/* Background Colors - Named Colors */
.hero-generic.bg-dark-blue {
	background-color: #0F293E;
}

.hero-generic.bg-dark-brown {
	background-color: #290B0B;
}

.hero-generic.bg-pale-white {
	background-color: #F8F8F8;
}

.hero-generic.bg-burgundy {
	background-color: #800020;
}

.hero-generic.bg-white {
	background-color: #FFFFFF;
}

.hero-generic.bg-black {
	background-color: #000000;
}

/* Text Colors */
.hero-generic.text-white,
.hero-generic.text-white h2,
.hero-generic.text-white h3,
.hero-generic.text-white h4,
.hero-generic.text-white h5,
.hero-generic.text-white h6,
.hero-generic.text-white p,
.hero-generic.text-white .hero-generic-description,
.hero-generic.text-white .eyebrow {
	color: #FFFFFF;
}

.hero-generic.text-black h1{
	color: #0F293E;
}

.hero-generic.text-black,
.hero-generic.text-black h2,
.hero-generic.text-black h3,
.hero-generic.text-black h4,
.hero-generic.text-black h5,
.hero-generic.text-black h6,
.hero-generic.text-black p,
.hero-generic.text-black .hero-generic-description,
.hero-generic.text-black .eyebrow {
	color: #000000;
}

.hero-generic.text-dark-blue,
.hero-generic.text-dark-blue h2,
.hero-generic.text-dark-blue h3,
.hero-generic.text-dark-blue h4,
.hero-generic.text-dark-blue h5,
.hero-generic.text-dark-blue h6,
.hero-generic.text-dark-blue p,
.hero-generic.text-dark-blue .hero-generic-description,
.hero-generic.text-dark-blue .eyebrow {
	color: #0F293E;
}

/* Title and Description Styles */
.hero-generic .hero-generic-title {
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 64px;
	line-height: 1.1;
	letter-spacing: -1.92px;
	margin-bottom: 10px;
	font-weight: 500;
}

.he-container{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-right: 30px;
	padding-left: 30px;
	max-width: 1440px;
}

.hero-generic{
	border-bottom: 2px solid #EBEBEB;
	background: #FFF;
}

@media (max-width: 1500px) {
	.he-container{
		max-width: 1200px;
	}

	.hero-generic-content{
		max-width: 475px;
	}
}

@media (max-width: 1500px) {
	.hero-generic .hero-generic-description {
		font-size: 16px !important;
	}

	.hero-generic .eyebrow {
		font-size: 16px !important;
	}

	.hero-generic .wp-block-button.is-style-default .wp-block-button__link {
		font-size: 16px !important;
	}

	.hero-generic .wp-block-button.is-style-solid .wp-block-button__link {
		font-size: 16px !important;
	}

	.hero-generic .wp-block-button.is-style-arrow .wp-block-button__link {
		font-size: 16px !important;
	}

	.hg-toggle-button {
		font-size: 16px !important;
	}

	.hg-toggle-button span {
		font-size: 16px !important;
	}

	.hero-generic .wp-block-buttons:has(.wp-block-button:nth-child(2)) .wp-block-button__link {
		font-size: 16px !important;
	}
}

.hero-generic .hero-generic-description {
	font-family: 'DM Sans', sans-serif;
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: -0.48px;
	margin-bottom: 40px;
}

/* Hero Generic Search Styles - Exact replica of article-filter-facet-search */
.hero-generic-search {
	max-width: 400px;
	margin-bottom: 40px;
}

/* Use the exact same classes and structure as WP Grid Builder search */
.hero-generic-search .wpgb-search-facet {
	position: relative;
}

.hero-generic-search .wpgb-search-facet label {
	position: relative;
	display: block;
}

.hero-generic-search .wpgb-input {
	width: 100%;
	padding: 12px;
	border: 1px solid #AA622C;
	border-radius: 5px;
	background: #FFF;
	font-family: "DM Sans", sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	color: #000;
	outline: none;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	cursor: text;
	padding-right: 60px; /* More space for the icon container */
}

/* Updated search placeholder styling */
.hero-generic-search .wpgb-input::placeholder {
	color: #000;
	font-family: "Hedvig Letters Serif", serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 114%; /* 18.24px */
}

.hero-generic-search .wpgb-input:focus {
	outline: none;
	border-color: #954F1F;
}

/* Updated search icon container - EXACT match to article filter */
.hero-generic-search .wpgb-search-facet::after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	width: 48px;
	height: 50px;
	padding: 7px 8px;
	align-items: center;
	cursor: pointer;
	gap: 10px;
	border-radius: 0px 5px 5px 0px;
	background: #AA622C;
	background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNMjIuMTY4NCAyMC42ODM4TDI2LjY2NjMgMjUuMTgwN0wyNS4xODAzIDI2LjY2NjdMMjAuNjgzNSAyMi4xNjg4QzE5LjAxMDMgMjMuNTEwMSAxNi45MjkxIDI0LjIzOTYgMTQuNzg0NiAyNC4yMzY2QzkuNTY3MzMgMjQuMjM2NiA1LjMzMzAxIDIwLjAwMjMgNS4zMzMwMSAxNC43ODVDNS4zMzMwMSA5LjU2NzcgOS41NjczMyA1LjMzMzM3IDE0Ljc4NDYgNS4zMzMzN0MyMC4wMDE5IDUuMzMzMzcgMjQuMjM2MiA5LjU2NzcgMjQuMjM2MiAxNC43ODVDMjQuMjM5MyAxNi45Mjk1IDIzLjUwOTcgMTkuMDEwNiAyMi4xNjg0IDIwLjY4MzhaTTIwLjA2MTggMTkuOTA0NkMyMS4zOTQzIDE4LjUzMzggMjIuMTM4NSAxNi42OTY3IDIyLjEzNTkgMTQuNzg1QzIyLjEzNTkgMTAuNzIzOSAxOC44NDU3IDcuNDMzNzMgMTQuNzg0NiA3LjQzMzczQzEwLjcyMzYgNy40MzM3MyA3LjQzMzM3IDEwLjcyMzkgNy40MzMzNyAxNC43ODVDNy40MzMzNyAxOC44NDYgMTAuNzIzNiAyMi4xMzYyIDE0Ljc4NDYgMjIuMTM2MkMxNi42OTYzIDIyLjEzODkgMTguNTMzNSAyMS4zOTQ2IDE5LjkwNDIgMjAuMDYyMUwyMC4wNjE4IDE5LjkwNDZaIiBmaWxsPSIjRkZGIi8+Cjwvc3ZnPg==');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px 24px;
	z-index: 1;
}

.hero-generic-search .wpgb-input-icon {
	display: none;
}

.hero-generic-search .wpgb-clear-button {
	position: absolute;
	right: 50px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	cursor: pointer;
	padding: 2px;
	display: none;
}

.hero-generic-search .wpgb-clear-button svg {
	stroke: #AA622C;
	fill: none;
	stroke-width: 2;
}

.hero-generic-search .wpgb-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Additional styling to match article filter exactly */
.hero-generic-search .wpgb-input {
	text-indent: 0 !important;
	color: #000;
	font-family: "Hedvig Letters Serif", serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
}

/* Search input styling for different text colors */
.hero-generic.text-white .wpgb-input {
	background: rgba(255, 255, 255, 0.9);
	color: #000;
	border-color: #AA622C;
}

.hero-generic.text-white .wpgb-input::placeholder {
	color: #000;
}

.home .hero-generic {
	border-bottom: none;
}

.hero-generic.text-black .wpgb-input {
	background: #FFF;
	color: #000;
	border-color: #AA622C;
	min-height: 45px;
}

.hero-generic.text-black .wpgb-input::placeholder {
	color: #000;
}

.hero-generic.text-dark-blue .wpgb-input {
	background: #FFF;
	color: #000;
	border-color: #AA622C;
}

.hero-generic.text-dark-blue .wpgb-input::placeholder {
	color: #000;
}

/* Responsive search styles */
@media (max-width: 1500px) {
	.hero-generic-search .wpgb-input {
		font-size: 12px !important;
		padding: 10px !important;
		padding-right: 55px !important;
	}

	.hero-generic-search .wpgb-search-facet::after {
		width: 43px !important;
		height: 45px !important;
	}

	.hero-generic-search .wpgb-clear-button {
		right: 45px !important;
	}
}

@media (max-width: 768px) {
	.hero-generic-search {
		max-width: 100%;
	}
}

/* Eyebrow Styles */
.hero-generic .eyebrow {
	font-size: 18px;
	line-height: 22px;
	letter-spacing: 6.72px;
	margin-bottom: 10px;
	display: block;
	font-family: 'DM Sans', sans-serif;
}

/* Eyebrow style variations */
.hero-generic .eyebrow-style-default {
	font-weight: 400;
	text-transform: uppercase;
}

.hero-generic .eyebrow-style-bold {
	font-weight: 700;
	text-transform: uppercase;
}

.hero-generic .eyebrow-style-elegant {
	font-style: italic;
}

/* Button Styles */
.hero-generic .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	align-items: center;
}

/* Button Style 1: Default (Blue Background) */
.hero-generic .wp-block-button.is-style-default .wp-block-button__link {
	background-color: #A6B8E3;
	color: #000000;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 18px;
	line-height: 21px;
	font-weight: 400;
	padding: 10px 20px;
	border-radius: 5px;
	text-decoration: none;
	transition: all 0.3s ease;
	display: inline-block;
	width: fit-content;
	align-self: center;
}

.hero-generic .wp-block-button.is-style-default .wp-block-button__link:hover {
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.30), 0 1px 3px 0 rgba(0, 0, 0, 0.15);
	transition: 300ms ease-in;
	background-color: #788FC6;
}

/* Button Style 2: Solid (Brown Background) */
.hero-generic .wp-block-button.is-style-solid .wp-block-button__link {
	background-color: #AA632C;
	color: #FFFFFF;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 18px;
	line-height: 21px;
	font-weight: 400;
	padding: 10px 20px;
	border-radius: 5px;
	text-decoration: none;
	transition: all 0.3s ease;
	display: inline-block;
	width: fit-content;
	align-self: center;
	border: none;
	cursor: pointer;
	text-align: center;
}

.hero-generic .wp-block-button.is-style-solid .wp-block-button__link:hover {
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.30), 0 1px 3px 0 rgba(0, 0, 0, 0.15);
	transition: 300ms ease-in;
}

/* Button Style 3: Arrow */
.hero-generic .wp-block-button.is-style-arrow .wp-block-button__link {
	background-color: transparent;
	color: inherit;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 18px;
	padding: 0;
	display: inline-flex;
	align-items: center;
	font-weight: 400;
	position: relative;
	border-radius: 0;
}

.hero-generic .wp-block-button.is-style-arrow .wp-block-button__link::after {
	content: "";
	display: inline-block;
	width: 29px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='16' viewBox='0 0 29 16' fill='none'%3E%3Cpath d='M28.7071 8.70711C29.0976 8.31659 29.0976 7.68342 28.7071 7.2929L22.3431 0.928934C21.9526 0.53841 21.3195 0.53841 20.9289 0.928934C20.5384 1.31946 20.5384 1.95262 20.9289 2.34315L26.5858 8L20.9289 13.6569C20.5384 14.0474 20.5384 14.6805 20.9289 15.0711C21.3195 15.4616 21.9526 15.4616 22.3431 15.0711L28.7071 8.70711ZM-8.74228e-08 9L28 9L28 7L8.74228e-08 7L-8.74228e-08 9Z' fill='%23AA622C'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	margin-left: 10px;
	transition: transform 0.3s ease;
}

.hero-generic .wp-block-button.is-style-arrow .wp-block-button__link:hover::after {
	transform: translateX(5px);
}

/* ENHANCED SLIDING TOGGLE BUTTONS STYLES */
.hg-toggle-tabs {
	display: flex;
	border-radius: 43.035px;
	background: #f5f5f5;
	width: fit-content;
	margin: 0 auto;
	position: relative;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	margin-top: 100px;
	overflow: hidden;
}

.hg-sliding-background {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	background-color: #AA622C;
	border-radius: 43px;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	backdrop-filter: blur(1.458823561668396px);
	z-index: 1;
	box-shadow: 0 2px 8px rgba(170, 98, 44, 0.3);
}

.hg-toggle-button {
	padding: 5px 16px 5px 6px;
	border: none;
	background-color: transparent;
	cursor: pointer;
	font-family: "Hedvig Letters Serif", serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 21px;
	color: #000;
	border-radius: 43px;
	text-decoration: none;
	position: relative;
	display: flex;
	width: auto;
	opacity: 0.9;
	z-index: 2;
	transition: opacity 0.3s ease, color 0.3s ease;
}

.hg-toggle-button.active {
	background-color: #AA622C;
	color: #FFFFFF;
	backdrop-filter: blur(1.458823561668396px);
}

.button-content {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	position: relative;
	z-index: 3;
}

.image-container {
	width: 55px;
	min-width: 55px;
	height: 55px;
	border-radius: 50%;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #ffffff;
	position: relative;
	z-index: 3;
}

.image-container img {
	width: 55px;
	height: 55px;
	object-fit: cover;
}

.hg-toggle-button span {
	font-size: 14px;
	font-weight: 500;
	transition: color 0.3s ease;
	position: relative;
	z-index: 3;
}

/* Arrow Button Style (when there are multiple buttons) */
.hero-generic .wp-block-buttons:has(.wp-block-button:nth-child(2)) .wp-block-button__link {
	background-color: transparent;
	color: inherit;
	padding: 0;
	display: inline-flex;
	align-items: center;
	font-weight: 400;
	position: relative;
	border-radius: 0;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 18px;
	font-style: normal;
	line-height: normal;
}

.hero-generic .wp-block-buttons:has(.wp-block-button:nth-child(2)) .wp-block-button__link::after {
	content: "";
	display: inline-block;
	width: 29px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='16' viewBox='0 0 29 16' fill='none'%3E%3Cpath d='M28.7071 8.70711C29.0976 8.31659 29.0976 7.68342 28.7071 7.2929L22.3431 0.928934C21.9526 0.53841 21.3195 0.53841 20.9289 0.928934C20.5384 1.31946 20.5384 1.95262 20.9289 2.34315L26.5858 8L20.9289 13.6569C20.5384 14.0474 20.5384 14.6805 20.9289 15.0711C21.3195 15.4616 21.9526 15.4616 22.3431 15.0711L28.7071 8.70711ZM-8.74228e-08 9L28 9L28 7L8.74228e-08 7L-8.74228e-08 9Z' fill='%23AA622C'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	margin-left: 10px;
	transition: transform 0.3s ease;
}

.hero-generic .wp-block-buttons:has(.wp-block-button:nth-child(2)) .wp-block-button__link:hover::after {
	transform: translateX(5px);
}

/* Button divider styling for multiple buttons */
.hero-generic .button-divider {
	background: rgba(0, 0, 0, 0.31);
	width: 1px;
	height: 47px;
	display: inline-block;
	margin: 0 24px;
}

.hero-generic .wp-block-buttons:has(.wp-block-button:nth-child(2)) .wp-block-button {
	display: inline-flex;
	align-items: center;
}

/* Desktop background images - Full width */
.generic-bg-full-width {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	object-fit: cover;
	object-position: center;
}

/* Desktop background images - Right aligned */
.hero-generic-bg-image-right {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 0;
	height: 100%;
	width: auto;
	object-fit: cover;
	object-position: center;
}

/* Mobile image container - FULL WIDTH */
.hg-mobile {
	display: none;
	position: relative;
	width: 100%;
	height: 300px;
	overflow: hidden;
}

/* Mobile image container - RIGHT ALIGNED */
.hg-mobile-right {
	display: none;
	position: relative;
	width: 100%;
	height: 300px;
	overflow: hidden;
}

.hg-toggle-tabs-mobile{
	display: none;
}

.hero-generic{
	position: relative;
	padding-top: 117px;
	padding-bottom: 117px;
	min-height: 500px;
}

.hero-generic:has(.generic-bg-full-width) {
	min-height: 600px;
}

/* Sectors Dropdown - Mobile */
.sectors-dropdown {
	display: none;
	margin-top: 40px;
	width: 100%;
}

.sectors-dropdown-trigger {
	background-color: #AA632C;
	color: #FFFFFF;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 18px;
	line-height: 21px;
	font-weight: 400;
	padding: 12px 20px;
	border-radius: 40px;
	border: none;
	cursor: pointer;
	text-align: center;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	transition: all 0.3s ease;
	position: relative;
	box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.25);
	backdrop-filter: blur(1.46px);
}

.sectors-dropdown-trigger:hover {
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.30), 0 1px 3px 0 rgba(0, 0, 0, 0.15);
}

.sectors-dropdown-trigger::after {
	content: '';
	width: 12px;
	height: 12px;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDEyIDEyIiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNMTAuMjkzIDQuMjkyOTdMNiA4LjU4NkwxLjcwNjk3IDQuMjkyOTdMMC4yOTI5NjcgNS43MDY5N0w2IDExLjQxNEwxMS43MDcgNS43MDY5N0wxMC4yOTMgNC4yOTI5N1oiIGZpbGw9IiNGRkYiLz4KPC9zdmc+);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transition: transform 0.3s ease;
}

.sectors-dropdown-trigger.open::after {
	transform: rotate(180deg);
}

.sectors-dropdown-content {
	background: #f5f5f5;
	border-radius: 5px;
	margin-top: 8px;
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.3s ease;
}

.sectors-dropdown-content.open {
	max-height: 500px;
}

.sectors-dropdown-item {
	padding: 12px 16px;
	border: none;
	background-color: transparent;
	cursor: pointer;
	font-family: "Hedvig Letters Serif", serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 21px;
	color: #000;
	transition: all 0.3s ease;
	text-decoration: none;
	position: relative;
	display: flex;
	width: 100%;
	align-items: center;
	gap: 12px;
	border-bottom: 1px solid #e0e0e0;
}

.sectors-dropdown-item:last-child {
	border-bottom: none;
}

.sectors-dropdown-item:hover,
.sectors-dropdown-item.active {
	background-color: #AA622C;
	color: #FFFFFF;
}

.sectors-dropdown-item .image-container {
	width: 40px;
	min-width: 40px;
	height: 40px;
	border-radius: 50%;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #ffffff;
}

.sectors-dropdown-item .image-container img {
	width: 40px;
	height: 40px;
	object-fit: cover;
}

@media (max-width: 1100px) {
	.hero-generic{
		padding-top: 60px;
		padding-bottom: 60px;
	}
}

@media (max-width: 910px) {
	.hero-generic-description{
		max-width: 300px;
	}
}

@media (max-width: 470px) {
	.hg-mobile{
		height: 220px !important;
	}

	.hg-mobile-right{
		height: 220px !important;
	}

	.hero-generic-title-mobile-wrapper{
		top: 9% !important;
	}

	.hero-generic-title-mobile-wrapper > .eyebrow{
		max-width: 100px;
	}

	.hero-title-mobile{
		max-width: 100px;
	}
}

@media (max-width: 270px) {
	.hg-mobile img {
		display: none;
	}

	.hg-mobile-right img {
		display: none;
	}
}

/* Mobile Styles */
@media (max-width: 768px) {
	.hero-generic-description{
		max-width: unset !important;
	}

	/* Hide desktop background images on mobile */
	.hero-generic-bg-image-right,
	.generic-bg-full-width {
		display: none !important;
	}

	.hero-generic {
		padding-top: 0 !important;
		flex-direction: column;
		padding-bottom: 0px !important;
		min-height: unset !important;
	}

	/* Show mobile image containers */
	.hg-mobile {
		display: block;
		position: relative;
		width: 100%;
		height: 300px;
		overflow: hidden;
	}

	.hg-mobile-right {
		display: block;
		position: relative;
		width: 100%;
		height: 300px;
		overflow: hidden;
	}

	/* Mobile image styling */
	.hg-mobile img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}

	.hg-mobile-right img {
		height: 100%;
		position: absolute;
		align-self: end;
		right: 0;
		bottom: 0;
		object-position: right;
	}

	/* Hide original toggle tabs on mobile */
	.hg-toggle-tabs-mobile{
		display: none !important;
	}

	.hg-toggle-tabs-desktop{
		display: none;
	}

	/* Show sectors dropdown on mobile */
	.sectors-dropdown {
		display: block;
	}

	/* Keep desktop button layout and dividers on mobile */
	.hero-generic .wp-block-buttons {
		gap: 20px; /* Keep desktop gap */
		flex-direction: row;
		align-items: center;
		margin-bottom: 30px;
		flex-wrap: nowrap;
	}

	.hero-generic .wp-block-buttons .wp-block-button {
		width: auto; /* Keep auto width instead of 100% */
	}

	.hero-generic .wp-block-buttons .wp-block-button .wp-block-button__link {
		width: auto; /* Keep auto width instead of 100% */
		text-align: left; /* Keep left alignment for arrow buttons */
	}

	/* Keep button dividers visible on mobile */
	.hero-generic .button-divider {
		display: inline-block !important; /* Override the hide rule */
		background: rgba(0, 0, 0, 0.31);
		width: 1px;
		height: 47px;
		margin: 0 0px;
	}

	/* Position the title and eyebrow over the image */
	.hero-generic-title-mobile-wrapper {
		position: absolute;
		bottom: 0;
		left: 0;
		top: 18%;
		max-width: 400px;
		padding: 20px;
		z-index: 10;
		width: 100%;
	}

	/* Ensure eyebrow style variations work on mobile */
	.hero-generic-title-mobile-wrapper .eyebrow.eyebrow-style-default {
		font-weight: 400;
		text-transform: uppercase;
	}

	.hero-generic-title-mobile-wrapper .eyebrow.eyebrow-style-bold {
		font-weight: 700;
		text-transform: uppercase;
	}

	.hero-generic-title-mobile-wrapper .eyebrow.eyebrow-style-elegant {
		font-style: italic;
		text-transform: none;
	}

	.he-container{
		padding-left: 20px;
		padding-right: 20px;
	}

	.hero-generic .hero-title-mobile {
		font-family: 'Hedvig Letters Serif', serif;
		font-size: 43px;
		line-height: 1.1;
		letter-spacing: -1.92px;
		margin-bottom: 24px;
		font-weight: 500;
		color: #0F293E;
	}

	.hero-generic-content {
		margin-top: 56px;
	}

	/* Hide the original title on mobile */
	.hero-generic-content .hero-generic-title {
		display: none;
	}

	/* Hide the original eyebrow on mobile when we have the mobile wrapper */
	.hero-generic:has(.hero-generic-title-mobile-wrapper) .he-container .eyebrow {
		display: none;
	}

	.hg-sliding-background {
		transition: all 0.3s ease;
	}

	/* Mobile search styles */
	.hero-generic-search {
		max-width: 100%;
	}

	.hero-search-input {
		font-size: 14px;
		padding: 12px 45px 12px 14px;
	}
}

@media (max-width: 550px) {
	.hg-mobile-right img {
		height: 100%;
		position: absolute;
		align-self: end;
		right: 0;
		bottom: 0;
		object-position: right;
	}
}

/* Accessibility - reduce motion for users who prefer it */
@media (prefers-reduced-motion: reduce) {
	.hg-sliding-background {
		transition: none;
	}

	.hg-toggle-button {
		transition: opacity 0.2s ease, color 0.2s ease;
	}
}

/* Mobile hover behavior - disable hover effects on touch devices */
@media (hover: none) and (pointer: coarse) {
	.hg-toggle-tabs:hover .hg-toggle-button:not(.active) {
		opacity: 1;
	}

	.hg-toggle-tabs:hover .hg-toggle-button.active {
		box-shadow: none;
	}
}
