/* Tailwind base, components, and utilities */
@tailwind base;
@tailwind components;
@tailwind utilities;

/* Base styles */
body {
	-moz-osx-font-smoothing: grayscale;
}

html, body {
	-webkit-font-smoothing: antialiased;
}

.mobile-footer-logo{
	z-index: 10;
}

.container {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	max-width: 1440px;
	padding-right: 30px;
	padding-left: 30px;
}
@media (max-width: 1500px) {
	.container {
		max-width: 1200px !important;
	}

	.nav-font-size{
		font-size: 16px !important;
	}
}

.nav-font-size{
	font-size: 18px;
}

.who-we-are-links{
	min-height: 112px;
	align-self: center;
}

.primary-nav-item:hover{
	opacity: 0.7 !important;
}

@media (max-width: 1500px) {
	#mobile-menu .mobile-search-form input[type="search"] {
		font-size: 16px !important;
	}

	.mega-menu-read-more {
		font-size: 16px !important;
	}
}

@media (max-width: 768px) {
	.container {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}
}

#header{
	padding-left: 64px;
	padding-right: 64px;
	box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.05);
	position: relative;
	z-index: 50;
}

@media (max-width: 1500px) {
	#header {
		padding-left: 60px;
		padding-right: 60px;
	}
}

@media (max-width: 1000px) {

	.mobile-footer-logo-blur{
		position: absolute;
		right: 0;
		display: flex;
		top: 10px;
		min-width: 100px;
		min-height: 100px;
		z-index: 50;
	}


}

body.overflow-hidden {
	overflow: hidden;
}

/* Block editor styles */
.block-editor-block-list__layout .wp-block {
	max-width: none;
}

.block-editor-block-list__layout textarea {
	all: inherit;
}

h1.wp-block-post-title {
	font-size: 60px;
	margin-bottom: 60px;
	line-height: 60px;
}

/* Search results styling */
.search-results-preview {
	display: none;
}

.search-field:focus + .search-hr + .search-results-preview {
	display: block;
}

/* Search input styling */
input[type='search']::-webkit-search-decoration,
input[type='search']::-webkit-search-cancel-button,
input[type='search']::-webkit-search-results-button,
input[type='search']::-webkit-search-results-decoration {
	-webkit-appearance: none;
	appearance: none;
}

/* ---------------------------------------------------- */
/* ENHANCED FOOTER SCROLL ANIMATIONS */
/* ---------------------------------------------------- */

#footer {
	position: relative;
	overflow: visible; /* Allow SVG to bleed upward */
	z-index: 10;
}

/* Footer sections with enhanced animation properties */
.footer-top-section,
.footer-bottom-section {
	will-change: transform, opacity;
	backface-visibility: hidden; /* Improve animation performance */
}

/* Animation ready states */
.footer-top-section.footer-animate-ready {
	transform: translateY(-100px);
	opacity: 0.8;
}

.footer-bottom-section.footer-animate-ready {
	transform: translateY(100px);
	opacity: 0.8;
}

/* Desktop footer logo - enhanced positioning */
.desktop-footer-logo {
	position: absolute;
	z-index: 15;
	right: 0;
	top: -130px; /* Will be dynamically adjusted by JavaScript */
	pointer-events: none;
	transition: none; /* Prevent unwanted transitions */
}

/* Mobile footer logo positioning */
.mobile-footer-logo {
	z-index: 15;
}

.mobile-footer-logo svg {
	position: absolute;
	z-index: 15;
	right: 0;
	top: -130px; /* Will be dynamically adjusted by JavaScript */
	pointer-events: none;
}

/* Mobile gradient overlay */
.mobile-footer-logo[style*="background"] {
	z-index: 5;
	position: absolute;
	right: 0;
	/* Top position will be dynamically adjusted by JavaScript */
}

/* Ensure social icons are above everything */
.social-icons {
	position: relative;
	z-index: 20;
}

/* Page content z-index management */
main {
	position: relative;
	z-index: 5;
}

.page-wrapper,
.content-wrapper,
[class*="wp-block-group"],
.wp-block-group,
.wp-block-cover,
[data-block] {
	position: relative;
	z-index: 5;
}

/* Footer container stacking */
.footer-top-cont {
	position: relative;
	z-index: 90;
}

/* Disable animations for users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
	.footer-top-section,
	.footer-bottom-section {
		transition: none !important;
		transform: none !important;
		opacity: 1 !important;
	}

	.footer-top-section.footer-animate-ready,
	.footer-bottom-section.footer-animate-ready {
		transform: none !important;
		opacity: 1 !important;
	}
}

/* Mobile responsive adjustments */
@media (max-width: 1100px) {
	.mobile-footer-logo {
		z-index: 15;
		position: relative;
	}

	.social-icons {
		z-index: 20;
		position: relative;
	}

	/* Hide desktop SVG on mobile */
	.desktop-footer-logo {
		display: none;
	}
}

/* Ensure smooth animations */
@media (prefers-reduced-motion: no-preference) {
	.footer-top-section,
	.footer-bottom-section {
		transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
		opacity 0.8s ease;
	}
}

/* ---------------------------------------------------- */
/* MEGA MENU CTA-STYLE POSITIONING */
/* ---------------------------------------------------- */

/* Mega Menu Cards Grid Layout (similar to Who We Are CTA) */
.wwac-mega-menu-cards-grid {
	position: relative;
	height: 600px;
	width: 100%;
}

/* First mega menu wrapper (similar to wwac-cta-wrapper-first) */
.wwac-mega-menu-wrapper-first {
	position: absolute;
	width: 53%;
	left: 0;
	top: 0;
	z-index: 2;
}

/* Second mega menu wrapper (similar to wwac-cta-wrapper-second) */
.wwac-mega-menu-wrapper-second {
	position: absolute;
	width: 53%;
	right: 0;
	top: 100px;
	z-index: 1;
}

.wwac-mega-menu-card {
	position: relative;
	width: 100%;
	height: auto;
}

.wwac-mega-menu-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
}

/* Mega Menu Image Container - Fixed aspect ratio */
.wwac-mega-menu-image-container {
	position: relative;
	width: 100%;
	height: 450px;
	overflow: hidden;
}

/* Mega Menu Image styling to prevent squishing */
.wwac-mega-menu-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.5s ease;
}

/* Second image positioning - better overlap (similar to wwac-cta-image-second) */
.wwac-mega-menu-image-second {
	/* Additional styling can be added here if needed */
}

/* Mega Menu Title Overlay */
.wwac-mega-menu-title-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: start !important;
	z-index: 2;
}

.wwac-mega-menu-title-2 {
	padding-left: 110px !important;
}

/* Mega Menu Title Styles */
.wwac-mega-menu-title {
	font-family: "Hedvig Letters Serif", serif;
	font-size: 32px;
	font-style: normal;
	font-weight: 400;
	line-height: 114%;
	padding-left: 40px;
	text-align: center;
}

.wwac-mega-menu-title.text-white {
	color: #FFFFFF;
}

.wwac-mega-menu-title.text-black {
	color: #000000;
}

/* Content control positioning (similar to CTA block) */
#mega_menu_content_control {
	position: relative;
	left: 0;
}

/* Arrow button positioning - corrected to bottom left with proper z-index */
.wwac-mega-menu-arrow {
	position: absolute;
	bottom: 23px;
	right: 32px;
	z-index: 20;
}

.wwac-mega-menu-arrow-button {
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s ease;
}

/* Arrow SVG styling */
.wwac-mega-menu-arrow svg {
	width: 44px;
	height: 44px;
	transition: transform 0.3s ease;
}

/* Hover effect for arrow button */
.wwac-mega-menu-card-link:hover .wwac-mega-menu-arrow svg {
	transform: scale(1.1);
}

/* Custom CSS variable for background color */
.wwac-mega-menu-card-link {
	--color-background-darkgold-8: rgba(170, 98, 44, 0.08);
}

/* Arrow circle hover effect */
.wwac-mega-menu-card-link:hover .wwac-mega-menu-arrow svg circle {
	fill: var(--color-background-darkgold-8) !important;
}

/* Hover effects for mega menu cards */
.wwac-mega-menu-card-link:hover .wwac-mega-menu-image {
	transform: scale(1.05);
}

.wwac-mega-menu-description{
	margin-top: 20px;
	color: #FFFFFF;
	font-family: "DM Sans", sans-serif;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: -0.54px;
	margin-bottom: 24px;
	max-width: 500px;
}

/* Mobile responsiveness for mega menu */
@media (max-width: 768px) {
	.wwac-mega-menu-cards-grid {
		height: auto;
		display: flex;
		flex-direction: column;
		gap: 40px;
	}

	.wwac-mega-menu-wrapper-first,
	.wwac-mega-menu-wrapper-second {
		position: relative;
		width: 100%;
		left: auto;
		right: auto;
		top: auto;
		z-index: auto;
	}

	.wwac-mega-menu-image-container {
		height: 300px;
	}

	.wwac-mega-menu-title {
		font-size: 32px;
		padding-left: 20px;
	}

	.wwac-mega-menu-title-2 {
		padding-left: 20px !important;
	}

	/* Reset transforms on mobile */
	.wwac-mega-menu-image-second {
		transform: none;
	}

	#mega_menu_content_control {
		transform: none;
	}
}

@media (max-width: 480px) {
	.wwac-mega-menu-image-container {
		height: 250px;
	}

	.wwac-mega-menu-title {
		font-size: 28px;
		padding-left: 15px;
	}
}


/* ---------------------------------------------------- */
/* MOBILE MENU STYLING - UPDATED TO MATCH DESIGN WITH LOGO SUPPORT */
/* ---------------------------------------------------- */


/* Main mobile menu container - Updated to support admin bar */
#mobile-menu.mobile-menu {
	position: fixed;
	inset: 0;
	z-index: 9999; /* Higher z-index to ensure it's above admin bar */
	background-color: #0F293E; /* Dark blue background */
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	transition: transform 0.3s ease, opacity 0.3s ease;
	display: flex;
	flex-direction: column;
	opacity: 1;
	visibility: visible;
	/* JavaScript will override these values */
}

#mobile-menu.mobile-menu.hidden {
	display: none;
	opacity: 0;
	visibility: hidden;
}



/* Header section with logo and close button - FIXED LAYOUT */
#mobile-menu .mobile-menu-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 24px 16px;
	background-color: #FFFFFF; /* White background for header */
	border-bottom: 1px solid #D48D57; /* Gold border */
	flex-shrink: 0; /* Prevent header from shrinking */
}

/* WordPress Admin Bar Compatibility */
body.admin-bar #mobile-menu.mobile-menu {
	top: 32px; /* Default admin bar height */
	height: calc(100vh - 32px);
}

@media screen and (max-width: 782px) {
	body.admin-bar #mobile-menu.mobile-menu {
		top: 46px; /* Mobile admin bar height */
		height: calc(100vh - 46px);
	}
}

/* Mobile menu logo styling - ENSURE LOGO IS VISIBLE */
#mobile-menu .mobile-menu-logo {
	display: flex;
	align-items: center;
	flex-shrink: 0;
}

#mobile-menu .mobile-menu-logo img,
#mobile-menu .mobile-menu-logo svg {
	max-height: 32px;
	width: auto;
	display: block;
}

/* Menu close button styling - POSITIONED ON THE RIGHT */
#mobile-menu .menu-close {
	display: flex;
	align-items: center;
	color: #341010; /* Dark text color */
	cursor: pointer;
	background: transparent;
	border: none;
	padding: 0;
	flex-shrink: 0;
}

#mobile-menu .menu-close span {
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 18px;
	margin-right: 8px;
}

.top-nav-orange-button: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;
}

/* Search container */
.mobile-search-container{
	padding-top: 80px;
	padding-left: 30px;
	padding-right: 30px;
	padding-bottom: 48px;
	flex-shrink: 0;
}

#mobile-menu .mobile-search-form {
	position: relative;
	width: 100%;
}

#mobile-menu .mobile-search-form input[type="search"] {
	width: 100%;
	background-color: transparent;
	border: none;
	border-bottom: 1px solid #D48D57;
	padding-bottom: 10px;
	padding-right: 32px;
	color: #FFFFFF;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 140%;
	outline: none;
}

#mobile-menu .mobile-search-form input[type="search"]::placeholder {
	color: rgba(255, 255, 255, 0.7);
}

#mobile-menu .mobile-search-form button[type="submit"] {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: transparent;
	border: none;
	padding: 0;
	cursor: pointer;
}

/* Navigation links container */
#mobile-menu .mobile-nav-container {
	padding: 0 16px;
	margin-bottom: 30px;
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 1; /* Take up remaining space */
	overflow-y: auto;
}

/* Navigation links styling */
#mobile-menu .mobile-nav-links ul {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	list-style: none;
	padding: 0;
	margin: 0;
}

#mobile-menu .mobile-nav-links ul > li {
	width: 100%;
	text-align: center;
	margin-bottom: 41px;
}

#mobile-menu .mobile-nav-links ul > li > a {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #FFFFFF;
	text-align: center;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: -0.6px;
	text-decoration: none;
}

.mobile-menu-contact{
	display: flex;
	align-items: center;
	justify-content: center;
	color: #FFFFFF;
	text-align: center;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: -0.6px;
	text-decoration: none;
}

/* Arrow icon styling */
#mobile-menu .mobile-nav-links ul > li > a svg {
	margin-left: 8px;
}

/* Hide WordPress default submenus */
#mobile-menu .mobile-nav-links ul.sub-menu {
	display: none;
}

/* Join Us button styling */
#mobile-menu .join-us-button {
	display: flex;
	justify-content: center;
	padding: 0 16px;
	margin-top: 8px;
	margin-bottom: 32px;
	width: fit-content;
	align-self: center;
	flex-shrink: 0;
}

#mobile-menu .join-us-button a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: 10px 20px;
	border-radius: 5px;
	background: #AA622C;
	color: #FFFFFF;
	text-align: center;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 16px;
	font-weight: 400;
	line-height: normal;
	text-decoration: none;
}

/* Mobile submenu panels */
.mobile-submenu {
	position: absolute;
	inset: 0;
	z-index: 10;
	padding: 0;
	background-color:  #0F293E;
	overflow-y: auto;
	transition: transform 0.3s ease, opacity 0.3s ease;
	transform: translateX(100%);
	opacity: 0;
	display: none;
	flex-direction: column;
}

.mobile-submenu:not(.hidden) {
	transform: translateX(0);
	opacity: 1;
	display: flex;
}

/* Add header to submenu */
.mobile-submenu .mobile-menu-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 24px 16px;
	background-color: #FFFFFF; /* White background for header */
	border-bottom: 1px solid #D48D57; /* Gold border */
}

/* Container for submenu content */
.mobile-submenu .submenu-content {
	padding: 68px 30px 24px 30px;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
}

/* Back button in submenu */
.mobile-submenu .back-button {
	display: flex;
	align-items: center;
	color: #FFFFFF;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 16px;
	margin-bottom: 24px;
	background: transparent;
	border: none;
	padding: 0;
	cursor: pointer;
}

.mobile-submenu .back-button svg {
	margin-right: 8px;
}

/* Submenu title */
.mobile-submenu h3 {
	color: #FFFFFF;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 24px;
	font-weight: 400;
	margin-bottom: 24px;
	text-align: center;
	width: 100%;
}

/* Submenu divider */
.mobile-submenu .submenu-divider {
	width: 100%;
	height: 1px;
	margin: 43px 0;
	background: linear-gradient(90deg, #341010 0%, #AA632C 100%);
}

/* Submenu list */
.mobile-submenu ul {
	list-style: none;
	padding: 0;
	margin: 0;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.mobile-submenu ul li {
	margin-bottom: 40px;
	width: 100%;
	text-align: center;
}

.mobile-submenu ul li:last-child {
	margin-bottom: 0;
}

.mobile-submenu ul li a {
	color: #FFFFFF;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 22px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: -0.66px;
	text-decoration: none;
	text-align: center;
}

.mobile-submenu[data-parent-menu="who-we-serve"] ul {
	gap: 24px;
}

.mobile-submenu[data-parent-menu="who-we-serve"] ul li.mobile-image-item {
	margin-bottom: 24px;
	width: 100%;
}

.mobile-submenu[data-parent-menu="who-we-serve"] ul li.mobile-image-item:last-child {
	margin-bottom: 0;
}

.mobile-submenu[data-parent-menu="who-we-serve"] .mobile-image-link {
	display: block;
	text-decoration: none;
	overflow: hidden;
}

.mobile-submenu[data-parent-menu="who-we-serve"] .mobile-image-container {
	position: relative;
	width: 100%;
	height: 254px;
	overflow: hidden;
}

.mobile-submenu[data-parent-menu="who-we-serve"] .mobile-menu-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.mobile-submenu[data-parent-menu="who-we-serve"] .mobile-image-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	top: 0;
	right: 0;
	padding: 24px 20px;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.4) 50%, transparent 100%);
	display: flex;
	min-height: 80px;
	align-items: center;
}

.mobile-submenu[data-parent-menu="who-we-serve"] .mobile-image-title {
	color: #FFFFFF;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 24px;
	font-weight: 400;
	line-height: 28px;
	letter-spacing: -0.6px;
	margin: 0;
	text-align: left;
}

.mobile-submenu[data-parent-menu="who-we-serve"] .mobile-image-link:hover .mobile-image-overlay {
	background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.5) 50%, transparent 100%);
}

/* Loading state for images */
.mobile-submenu[data-parent-menu="who-we-serve"] .mobile-menu-image[src=""] {
	background-color: rgba(255, 255, 255, 0.1);
	display: flex;
	align-items: center;
	justify-content: center;
}

.mobile-submenu[data-parent-menu="who-we-serve"] .mobile-menu-image[src=""]:before {
	content: "Loading...";
	color: #FFFFFF;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 16px;
}

/* Specific styling for Who We Are submenu */
.mobile-submenu[data-parent-menu="who-we-are"] .submenu-content {
	text-align: center;
}

.mobile-submenu[data-parent-menu="who-we-are"] ul li a {
	color: #FFFFFF;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 22px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: -0.66px;
	text-decoration: none;
}

/* Specific styling for Resource Center submenu */
.mobile-submenu[data-parent-menu="resource-center"] .submenu-content {
	text-align: center;
}

.mobile-submenu[data-parent-menu="resource-center"] ul li a {
	color: #FFFFFF;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 22px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: -0.66px;
	text-decoration: none;
}

/* ---------------------------------------------------- */
/* MEGA MENU STYLES (DESKTOP) */
/* ---------------------------------------------------- */

.mega-menu {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	transform-origin: top center;
	transform: scaleY(0);
	opacity: 0;
	visibility: hidden;
	transition: transform 0.3s ease-out, opacity 0.3s ease-out, visibility 0.3s ease-out;
	will-change: transform, opacity, visibility;
	display: flex;
}

.mega-menu.hidden {
	display: none;
}

.mega-menu.mega-menu-open {
	transform: scaleY(1);
	opacity: 1;
	visibility: visible;
}

.mega-menu-parent {
	position: relative;
}

.primary-nav-item {
	position: relative;
}

.gradient-divider {
	background: linear-gradient(180deg, #341010 0%, #AA632C 100%);
	width: 1.5px;
	height: 280px;
}

.thumbnail-card {
	position: relative;
}

/* Base state - transition should be here */
.thumbnail-card img {
	width: 100%;
	height: auto;
	transition: transform 0.5s ease;
	transform-origin: center center;
	transform: scale(1);
}

/* Hover state - only specify the end state */
.thumbnail-card:hover img {
	transform: scale(1.1);
}

.featured-article {
	position: relative;
}

.featured-article h3 {
	font-weight: normal;
}

.mega-menu-read-more{
	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;
	color: #FFF;
}

.mega-menu-read-more::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;
}

.mega-menu-read-more:hover::after {
	transform: translateX(5px);
}

/* Thumbnail styling for mega menu */
.business-thumbnail-wrapper,
.individuals-thumbnail-wrapper {
	position: relative;
	height: 100%;
}

.article-menu-links{
	margin-top: 10px;
	margin-bottom: 10px;
}

.business-thumbnail h3 {
	color: white;
	font-weight: normal;
}

.contact-us-btn-footer:hover{
	background:  #788FC6;
	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;
}

.individuals-thumbnail h3 {
	color: black;
}

.menu-thumbnail-card-title {
	font-size: 32px;
	line-height: 36px;
	font-weight: 400;
	font-family: 'Hedvig Letters Serif', serif;
}

#who-we-serve-mega-menu .grid {
	min-height: 600px;
}

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

.terms-text p > a {
	color: #a6b8e3;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 21px;
}

.mobile-footer-logo {
	display: none;
}

/* ---------------------------------------------------- */
/* RESPONSIVE STYLES */
/* ---------------------------------------------------- */

@media (max-width: 1700px) {
	.social-icons {
		padding-right: 30px;
	}
}

@media (max-width: 768px) {
	#header{
		padding-left: 20px;
		padding-right: 20px;
	}
}

@media (max-width: 1300px) {
	#menu-disclaimer-menu {
		display: flex;
		flex-direction: column;
	}
}

@media (max-width: 1100px) {
	#menu-disclaimer-menu {
		flex-direction: row;
	}

	#header{
		padding-left: 20px;
		padding-right: 20px;
	}

	.mega-menu {
		position: static;
		width: 100%;
	}

	.desktop-footer-logo {
		display: none;
	}

	.mobile-footer-logo {
		display: flex !important;
		position: absolute !important;
		top: -160px;
		min-width: 100px;
		min-height: 100px;
		z-index: 50;
	}

	/*.mobile-footer-logo {*/
	/*	display: block;*/
	/*}*/

	.footer-top-cont {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	.top-get-intouch {
		padding-right: 0px;
		align-items: center;
		border-bottom: 1px solid #f6f6f6;
		padding-bottom: 62px;
	}

	.top-get-intouch > div {
		text-align: center;
	}

	.top-stay-connect {
		margin-left: 0px;
		text-align: center;
		padding-bottom: 62px;
	}

	.top-stay-connect > div {
		text-align: center;
	}

	.social-icons {
		position: unset;
		padding-right: 0px;
	}
}

@media (max-width: 767px) {
	.mega-menu .grid {
		grid-template-columns: 1fr;
	}

	.gradient-divider {
		display: none;
	}

	.thumbnail-card {
		margin-bottom: 20px;
	}

	.cf7-newsletter-form .wpcf7-form-control-wrap {
		min-width: unset !important;

	}
}

@media (max-width: 420px) {
	#menu-disclaimer-menu {
		flex-direction: column;
	}

	.disclaimer-links {
		text-align: center;
	}
}

/* Animation support */
.animate__animated {
	animation-duration: 1s;
	animation-fill-mode: both;
}

.animate__hidden {
	opacity: 0;
}

/* Optional: Add custom animation timing */
.animate__animated.animate__faster {
	animation-duration: 0.5s;
}

.animate__animated.animate__slower {
	animation-duration: 1.5s;
}

.search-result.active {
	background-color: rgba(212, 141, 87, 0.1);
	border-radius: 4px;
}

.search-result.active a {
	color: #D48D57 !important;
}

mark {
	background-color: #D48D57;
	color: white;
	padding: 1px 2px;
	border-radius: 2px;
}

.search-results-preview {
	max-height: 400px;
	overflow-y: auto;
}

.search-results-preview::-webkit-scrollbar {
	width: 4px;
}

.search-results-preview::-webkit-scrollbar-track {
	background: rgba(212, 141, 87, 0.1);
}

.search-results-preview::-webkit-scrollbar-thumb {
	background: #D48D57;
	border-radius: 2px;
}

.search-loading {
	animation: pulse 1.5s ease-in-out infinite;
}

@keyframes pulse {
	0%, 100% { opacity: 1; }
	50% { opacity: 0.5; }
}

[type='search']:focus{
	--tw-ring-color: transparent;
}

.search-all-cta {
	background-color: transparent;
	font-family: 'Hedvig Letters Serif', serif;
	font-size: 18px;
	padding: 0;
	display: inline-flex;
	align-items: center;
	color: #FFF;
	font-weight: 400;
	position: relative;
	border-radius: 0;
}

.search-all-cta::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;
}

.search-all-cta:hover::after {
	transform: translateX(5px);
}

.other-office-editor p,
.other-office-editor li {
	font-family: "DM Sans", sans-serif;
	color: #ffffff;
	line-height: 21px;
	font-size: 14px;
	font-weight: 400;
	margin: 0;
}
.other-office-editor a,
.other-office-editor li a {
	font-family: "DM Sans", sans-serif;
	font-size: 14px;
	line-height: 18px;
	font-weight: 400;
	color: #ffffff;
	text-decoration: none;
	white-space: nowrap;
	transition: color 0.3s ease;
}
.other-office-editor a:hover,
.other-office-editor li a:hover {
	color: #8d5124;
}

@media (max-width: 1500px) {
	.terms-mobile-width {
		max-width: 400px;
	}

}
@media (max-width: 1099px) {
	.disclaimer-menu-wrapper {
		order: 1;
	}
	.terms-mobile-cont {
		order: 2;
	}
}



/* Contact Form 7 Newsletter Styling */
.cf7-newsletter-form .wpcf7-form {
	display: flex;
	align-items: flex-start;
	flex-direction: row;
}

@media (max-width: 640px) {
	.cf7-newsletter-form .wpcf7-form {
		flex-direction: row;
	}
}

.cf7-newsletter-form .wpcf7-form-control-wrap {
	position: relative;
	width: 100%;
	min-width: 250px;
	flex: 1;
}

.cf7-newsletter-form input[type="email"] {
	width: 100%;
	background: transparent;
	border: 1px solid #A6B8E3;
	border-right: none;
	border-radius: 5px 0 0 5px;
	color: white;
	padding: 10px 14px;
	font-family: inherit;
	font-size: 16px;
	line-height: 1;
}

.cf7-newsletter-form input[type="email"]:focus {
	outline: none;
	border-color: #A6B8E3;
	box-shadow: none;
}

.cf7-newsletter-form input[type="email"]::placeholder {
	color: rgba(255, 255, 255, 0.7);
}

.cf7-newsletter-form .submit-arrow {
	background: #A6B8E3;
	border: 1px solid #A6B8E3;
	border-left: none;
	max-width: 48px;
	width: 48px;
	height: 43px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 7px;
	border-radius: 0 5px 5px 0;
	cursor: pointer;
	transition: background-color 0.2s ease;
}

.cf7-newsletter-form .submit-arrow:hover {
	background: #8FA6D4;
}

/* Add arrow icon via CSS */
.cf7-newsletter-form .submit-arrow::before {
	content: '';
	width: 33px;
	height: 32px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='33' height='32' viewBox='0 0 33 32' fill='none'%3E%3Cpath d='M26.7429 15.2929C27.1334 15.6834 27.1334 16.3166 26.7429 16.7071L20.379 23.0711C19.9884 23.4616 19.3553 23.4616 18.9647 23.0711C18.5742 22.6805 18.5742 22.0474 18.9647 21.6569L24.6216 16L18.9647 10.3431C18.5742 9.95262 18.5742 9.31946 18.9647 8.92893C19.3553 8.53841 19.9884 8.53841 20.379 8.92893L26.7429 15.2929ZM7.36914 15L26.0358 15V17H7.36914V15Z' fill='%2305224C'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	display: block;
}

/* Hide Contact Form 7 default styling */
.cf7-newsletter-form .wpcf7-not-valid-tip,
.cf7-newsletter-form .wpcf7-response-output {
	margin: 8px 0 0 0;
	padding: 4px 8px;
	background: rgba(255, 255, 255, 0.1);
	border-radius: 4px;
	font-size: 14px;
	color: white;
	border: none;
}

.cf7-newsletter-form .wpcf7-validation-errors {
	background: rgba(220, 53, 69, 0.1);
	border-color: #dc3545;
	color: #dc3545;
}

.cf7-newsletter-form .wpcf7-mail-sent-ok {
	background: rgba(40, 167, 69, 0.1);
	border-color: #28a745;
	color: #28a745;
}

/* Remove default CF7 margins */
.cf7-newsletter-form .wpcf7 form {
	margin: 0;
}

.cf7-newsletter-form .wpcf7-form p {
	margin: 0;
	display: flex;
}

/* Ensure proper alignment */
.cf7-newsletter-form .wpcf7-form input[type="submit"] {
	margin: 0;
}
