/*
 * Small compatibility layer for the legacy theme.
 * Keep overrides here so the vendor-generated static.css remains upgradeable.
 */

html,
body {
	max-width: 100%;
}

/* WordPress accessibility utility missing from this legacy theme. */
.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus {
	clip: auto !important;
	width: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	white-space: normal;
}

#page {
	overflow-x: hidden;
	overflow-x: clip;
}

.cms-item-subtitle {
	font-family: "Bree Serif", serif;
	font-size: 14px;
	line-height: 20px;
}

/* WCAG AA contrast corrections on the gold and dark theme sections. */
#latestNews,
#latestNews h1,
#latestNews h2,
#latestNews h3,
#latestNews h4,
#latestNews h5,
#latestNews h6,
#latestNews .cms-post-date span {
	color: #2d2c2a;
}

footer #bottom p {
	color: #aaa;
}

.logo-wrapper .logo,
img,
iframe,
video {
	max-width: 100%;
}

.mobile-navbar-brand {
	display: none;
}

@media (max-width: 767px) {
	/* Compact mobile identity: social links above a logo + menu bar. */
	#cshero-header-top .logo-wrapper .container {
		padding-left: 15px;
		padding-right: 15px;
	}

	#cshero-header-top #logo-row {
		margin: 0;
	}

	#cshero-header-top #logo-l {
		float: none;
		width: 100%;
		padding: 12px 0;
	}

	#cshero-header-top #logo-l .gap,
	#cshero-header-top #logo,
	#cshero-header-top #logo-r {
		display: none !important;
	}

	#cshero-header-top #logo-l .textwidget {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
	}

	#cshero-header-top #logo-l .uk-icon-button {
		margin: 0;
	}

	#cshero-header .header-wrapper::before {
		display: none;
	}

	#cshero-header .header-wrapper .uk-sticky-placeholder,
	#cshero-header .main-navigation,
	#cshero-header #header,
	#cshero-header .navbar-header {
		height: 72px;
		min-height: 72px;
	}

	#cshero-header #header {
		margin: 0;
	}

	#cshero-header .main-navigation {
		padding: 0 15px;
	}

	.mobile-navbar-brand {
		display: flex;
		align-items: center;
		position: absolute;
		left: 0;
		top: 8px;
		height: 56px;
		max-width: calc(100% - 70px);
		z-index: 1031;
	}

	.mobile-navbar-brand img {
		display: block;
		width: auto;
		height: auto;
		max-width: min(230px, 100%);
		max-height: 52px;
	}

	.navbar-header .navbar-toggle {
		top: 14px;
		right: 0;
		margin: 0;
	}

	/* The closed state must exist before JavaScript and large slider assets load. */
	#cshero-header-navigation {
		position: relative;
		z-index: 1030;
		max-height: 0;
		overflow: hidden;
		visibility: hidden;
	}

	#cshero-header-navigation.show-menu-mobi {
		max-height: min(70vh, 520px);
		overflow-y: auto;
		visibility: visible;
	}

	#cshero-header-navigation .navbar-nav {
		margin-left: 0;
		margin-right: 0;
		width: 100%;
	}

	.navbar-header .navbar-toggle {
		display: block;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
