/*
 * R05-02 Modern Institutional header.
 *
 * This stylesheet is enqueued only for the explicit local/staging
 * `r05_phase=header` preview. It modernizes the shared header while preserving
 * the approved logo, information architecture, URLs, mobile menu, search and
 * sticky behavior. Footer and page-body surfaces are intentionally untouched.
 */

.telli-r05-phase--header {
	--telli-r05-navy: #0c2132;
	--telli-r05-navy-light: #173b52;
	--telli-r05-gold: #c79a4e;
	--telli-r05-gold-dark: #a9782f;
	--telli-r05-ink: #17212b;
	--telli-r05-muted: #60707c;
	--telli-r05-surface: #fff;
	--telli-r05-border: rgba(12, 33, 50, .12);
	--telli-r05-focus: #c79a4e;
	--telli-r05-header-content: 1280px;
}

.telli-r05-phase--header .telli-r04-header :where(a, button, input):focus-visible {
	outline: 3px solid var(--telli-r05-focus) !important;
	outline-offset: 3px;
	box-shadow: 0 0 0 2px #fff;
}

.telli-r05-phase--header .telli-r04-header .telli-r04-container {
	width: min(var(--telli-r05-header-content), calc(100% - 60px));
	max-width: var(--telli-r05-header-content);
}

.telli-r05-phase--header .telli-r04-topbar,
.telli-r05-phase--header .telli-r04-topbar__inner {
	height: 34px;
}

.telli-r05-phase--header .telli-r04-topbar {
	border-bottom: 1px solid rgba(199, 154, 78, .48);
	background: linear-gradient(90deg, #081a29 0%, var(--telli-r05-navy) 48%, var(--telli-r05-navy-light) 100%);
}

.telli-r05-phase--header .telli-r04-topbar__contact a {
	display: inline-flex;
	align-items: center;
	height: 34px;
	gap: 8px;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: .06px;
	line-height: 1;
}

.telli-r05-phase--header .telli-r04-topbar__contact a span {
	top: 0;
	display: inline-flex;
	align-items: center;
	min-height: 16px;
	line-height: 1;
}

.telli-r05-phase--header .telli-r04-topbar__contact a:first-child svg,
.telli-r05-phase--header .telli-r04-topbar__contact a:last-child svg {
	margin-right: 0;
	transform: none;
}

.telli-r05-phase--header .telli-r04-topbar__contact a:first-child svg {
	width: 13px;
	height: 13px;
	flex-basis: 13px;
}

.telli-r05-phase--header .telli-r04-topbar__contact a:last-child svg {
	width: 11px;
	height: 14px;
	flex-basis: 11px;
}

.telli-r05-phase--header .telli-r04-topbar__separator {
	height: 16px;
	margin-inline: 20px;
	background: rgba(255, 255, 255, .26);
	transform: none;
}

.telli-r05-phase--header .telli-r04-topbar__social {
	align-items: center;
	gap: 4px;
}

.telli-r05-phase--header .telli-r04-topbar__social a {
	justify-content: center;
	width: 30px !important;
	height: 30px;
	margin: 0 !important;
	border-radius: 50%;
	color: #fff;
	transform: none;
	transition: background-color .18s ease, color .18s ease;
}

.telli-r05-phase--header .telli-r04-topbar__social a:hover,
.telli-r05-phase--header .telli-r04-topbar__social a:focus-visible {
	background: rgba(255, 255, 255, .1);
	color: #f2c774;
}

.telli-r05-phase--header .telli-r04-topbar__social svg {
	width: 14px;
	height: 14px;
	transform: none;
}

.telli-r05-phase--header .telli-r04-mainbar,
.telli-r05-phase--header .telli-r04-mainbar__inner {
	height: 88px;
}

.telli-r05-phase--header .telli-r04-mainbar {
	border-bottom: 1px solid var(--telli-r05-border);
	background: rgba(255, 255, 255, .985);
	box-shadow: 0 12px 36px rgba(12, 33, 50, .07);
}

.telli-r05-phase--header .telli-r04-logo--desktop {
	width: 446px;
	max-width: 35%;
}

.telli-r05-phase--header .telli-r04-logo--desktop img {
	width: auto;
	height: 66px;
	max-width: 100%;
	filter: none;
	image-rendering: auto;
}

.telli-r05-phase--header .telli-r04-desktop-nav {
	width: auto;
	max-width: 748px;
	flex: 0 1 auto;
	margin-left: auto;
}

.telli-r05-phase--header .telli-r04-nav--desktop,
.telli-r05-phase--header .telli-r04-nav--sticky {
	gap: 2px;
}

.telli-r05-phase--header .telli-r04-nav__link {
	color: var(--telli-r05-navy);
}

.telli-r05-phase--header .telli-r04-nav--desktop .telli-r04-nav__link,
.telli-r05-phase--header .telli-r04-nav--sticky .telli-r04-nav__link {
	padding-inline: 13px;
	font-family: Montserrat, Arial, sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .48px;
	line-height: 1.25;
}

.telli-r05-phase--header .telli-r04-nav__item:hover > .telli-r04-nav__link,
.telli-r05-phase--header .telli-r04-nav__item:focus-within > .telli-r04-nav__link {
	color: var(--telli-r05-gold-dark);
}

.telli-r05-phase--header .telli-r04-nav__item.is-current > .telli-r04-nav__link {
	color: #8c6227;
}

.telli-r05-phase--header .telli-r04-nav--desktop .telli-r04-nav__item.is-current::before,
.telli-r05-phase--header .telli-r04-nav--sticky .telli-r04-nav__item.is-current::before {
	top: auto;
	bottom: 0;
	left: 50%;
	width: 30px;
	height: 2px;
	border-radius: 999px;
	background: var(--telli-r05-gold);
	transform: translateX(-50%);
}

.telli-r05-phase--header .telli-r04-submenu {
	top: calc(100% + 1px);
	width: 336px;
	padding: 15px 0;
	border: 1px solid var(--telli-r05-border);
	border-top: 3px solid var(--telli-r05-gold);
	border-radius: 0 0 12px 12px;
	box-shadow: 0 22px 48px rgba(12, 33, 50, .16);
}

.telli-r05-phase--header .telli-r04-submenu li {
	height: auto;
	padding: 0 24px;
}

.telli-r05-phase--header .telli-r04-submenu a {
	padding: 8px 0;
	color: var(--telli-r05-ink);
	font-size: 14px;
	font-weight: 500;
	line-height: 22px;
	white-space: normal;
}

.telli-r05-phase--header .telli-r04-submenu a:hover,
.telli-r05-phase--header .telli-r04-submenu a:focus-visible,
.telli-r05-phase--header .telli-r04-submenu a[aria-current="page"] {
	color: var(--telli-r05-gold-dark);
}

.telli-r05-phase--header .telli-r04-search-toggle {
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	margin-left: 11px;
	border: 1px solid transparent;
	border-radius: 50%;
	color: var(--telli-r05-navy);
	transition: border-color .18s ease, background-color .18s ease, color .18s ease;
}

.telli-r05-phase--header .telli-r04-search-toggle:hover,
.telli-r05-phase--header .telli-r04-search-toggle[aria-expanded="true"] {
	border-color: rgba(199, 154, 78, .42);
	background: rgba(199, 154, 78, .1);
	color: var(--telli-r05-gold-dark);
}

.telli-r05-phase--header .telli-r04-search-toggle:active {
	border-color: var(--telli-r05-gold-dark);
	background: rgba(199, 154, 78, .18);
	transform: translateY(1px);
}

.telli-r05-phase--header .telli-r04-search-toggle svg {
	width: 21px;
	height: 21px;
	stroke-width: 1.9;
}

.telli-r05-phase--header .telli-r04-search-panel {
	right: max(30px, calc((100% - var(--telli-r05-header-content)) / 2));
	width: min(440px, calc(100% - 60px));
	padding: 20px;
	border: 1px solid var(--telli-r05-border);
	border-top: 3px solid var(--telli-r05-gold);
	border-radius: 0 0 12px 12px;
	box-shadow: 0 22px 48px rgba(12, 33, 50, .16);
}

.telli-r05-phase--header .telli-r04-search-panel input,
.telli-r05-phase--header .telli-r04-search-panel button {
	height: 48px;
}

.telli-r05-phase--header .telli-r04-search-panel input {
	border-color: rgba(12, 33, 50, .2);
	border-radius: 7px 0 0 7px;
}

.telli-r05-phase--header .telli-r04-search-panel button {
	border-color: var(--telli-r05-gold);
	border-radius: 0 7px 7px 0;
	background: var(--telli-r05-gold);
	color: var(--telli-r05-navy);
	font-weight: 700;
}

.telli-r05-phase--header .telli-r04-sticky {
	top: -74px;
	height: 72px;
	overflow: visible;
	border-bottom: 1px solid var(--telli-r05-border);
	background: rgba(255, 255, 255, .975);
	box-shadow: 0 14px 38px rgba(12, 33, 50, .12);
	color: var(--telli-r05-navy);
	transition: top .22s ease, box-shadow .22s ease;
	backdrop-filter: blur(12px);
}

.telli-r05-phase--header .telli-r04-sticky.is-visible {
	top: 0;
}

.admin-bar.telli-r05-phase--header .telli-r04-sticky.is-visible {
	top: var(--wp-admin--admin-bar--height, 32px);
}

.telli-r05-phase--header .telli-r04-sticky .telli-r04-mainbar__inner {
	height: 72px;
}

.telli-r05-phase--header .telli-r04-logo--sticky {
	width: 320px;
	max-width: 27%;
}

.telli-r05-phase--header .telli-r04-logo--sticky img {
	width: auto;
	height: 48px;
	max-width: 100%;
	filter: none;
	image-rendering: auto;
}

@media (min-width: 1201px) and (max-width: 1399px) {
	.telli-r05-phase--header .telli-r04-header .telli-r04-container {
		width: calc(100% - 48px);
	}

	.telli-r05-phase--header .telli-r04-logo--desktop {
		width: 396px;
		max-width: 32%;
	}

	.telli-r05-phase--header .telli-r04-logo--desktop img {
		height: 59px;
	}

	.telli-r05-phase--header .telli-r04-logo--sticky {
		width: 292px;
	}

	.telli-r05-phase--header .telli-r04-nav--desktop .telli-r04-nav__link,
	.telli-r05-phase--header .telli-r04-nav--sticky .telli-r04-nav__link {
		padding-inline: 10px;
		font-size: 11.5px;
		letter-spacing: .36px;
	}

	.telli-r05-phase--header .telli-r04-nav--desktop .telli-r04-nav__item.is-current::before,
	.telli-r05-phase--header .telli-r04-nav--sticky .telli-r04-nav__item.is-current::before {
		left: 50%;
		width: 26px;
	}
}

@media (max-width: 1200px) {
	.telli-r05-phase--header .telli-r04-mobile-header {
		min-height: 80px;
		border-bottom: 2px solid var(--telli-r05-gold);
		background: rgba(255, 255, 255, .985);
		box-shadow: 0 10px 30px rgba(12, 33, 50, .1);
		color: var(--telli-r05-navy);
	}

	.telli-r05-phase--header .telli-r04-mobile-header__inner {
		grid-template-columns: 42px minmax(0, 1fr) 42px;
		width: min(calc(100% - 40px), 720px);
		height: 78px;
		align-items: center;
	}

	.telli-r05-phase--header .telli-r04-mobile-toggle,
	.telli-r05-phase--header .telli-r04-mobile-header .telli-r04-search-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 42px;
		height: 42px;
		margin: 0;
		border: 1px solid rgba(12, 33, 50, .12);
		border-radius: 50%;
		background: rgba(12, 33, 50, .04);
		color: var(--telli-r05-navy);
	}

	.telli-r05-phase--header .telli-r04-mobile-toggle:hover,
	.telli-r05-phase--header .telli-r04-mobile-toggle[aria-expanded="true"],
	.telli-r05-phase--header .telli-r04-mobile-header .telli-r04-search-toggle:hover,
	.telli-r05-phase--header .telli-r04-mobile-header .telli-r04-search-toggle[aria-expanded="true"] {
		border-color: rgba(199, 154, 78, .55);
		background: rgba(199, 154, 78, .11);
		color: var(--telli-r05-gold-dark);
	}

	.telli-r05-phase--header .telli-r04-mobile-toggle svg {
		width: 23px;
		height: 19px;
	}

	.telli-r05-phase--header .telli-r04-logo--mobile {
		width: min(300px, calc(100% - 28px));
	}

	.telli-r05-phase--header .telli-r04-logo--mobile img {
		width: auto;
		max-width: 100%;
		height: 44px;
		filter: none;
	}

	.telli-r05-phase--header .telli-r04-mobile-nav {
		border-top: 0;
		background: linear-gradient(160deg, var(--telli-r05-navy), #071722);
		box-shadow: 0 20px 42px rgba(12, 33, 50, .18);
	}

	.telli-r05-phase--header .telli-r04-nav--mobile {
		padding: 16px max(24px, calc((100% - 720px) / 2)) 28px;
	}

	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-nav__item {
		border-bottom-color: rgba(255, 255, 255, .12);
	}

	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-nav__link,
	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-nav__submenu-toggle {
		height: 56px;
		color: #fff;
	}

	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-nav__link {
		font-family: Montserrat, Arial, sans-serif;
		font-size: 13px;
		font-weight: 600;
		letter-spacing: .52px;
	}

	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-nav__item:hover > .telli-r04-nav__link,
	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-nav__item:focus-within > .telli-r04-nav__link,
	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-nav__item.is-current > .telli-r04-nav__link,
	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-submenu a:hover,
	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-submenu a:focus-visible,
	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-submenu a[aria-current="page"] {
		color: #f2c774;
	}

	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-submenu {
		padding: 0 0 14px 20px;
		border: 0;
	}

	.telli-r05-phase--header .telli-r04-nav--mobile .telli-r04-submenu a {
		padding: 9px 0;
		color: rgba(255, 255, 255, .82);
		font-size: 13px;
		line-height: 21px;
	}

	.telli-r05-phase--header .telli-r04-mobile-header .telli-r04-search-panel {
		top: 80px;
		right: 20px;
		width: calc(100% - 40px);
		max-width: 440px;
	}
}

@media (max-width: 520px) {
	.telli-r05-phase--header .telli-r04-mobile-header__inner {
		width: calc(100% - 32px);
	}

	.telli-r05-phase--header .telli-r04-logo--mobile {
		width: min(250px, calc(100% - 18px));
	}

	.telli-r05-phase--header .telli-r04-logo--mobile img {
		height: 41px;
	}

	.telli-r05-phase--header .telli-r04-nav--mobile {
		padding-inline: 20px;
	}

	.telli-r05-phase--header .telli-r04-mobile-header .telli-r04-search-panel {
		right: 14px;
		width: calc(100% - 28px);
		padding: 14px;
	}
}

@media (max-width: 374px) {
	.telli-r05-phase--header .telli-r04-mobile-header__inner {
		grid-template-columns: 42px minmax(0, 1fr) 42px;
		width: calc(100% - 24px);
	}

	.telli-r05-phase--header .telli-r04-logo--mobile img {
		height: 39px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.telli-r05-phase--header .telli-r04-header * {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
	}
}
