/* ═══ Shared menu bar + offer strip — taken verbatim from the approved homepage ═══ */

		.tw-nav-cta { display: inline-flex; align-items: center; background: #243A5E; color: #fff !important;
			font-weight: 700; font-size: 14px; padding: 10px 20px; border-radius: 30px; margin-left: 12px;
			transition: background .2s ease }
		.tw-nav-cta:hover { background: #16263F; color: #fff !important; text-decoration: none }
		:root { --tw-offer-h: 0px }
		.tw-offer { background: #16263F; padding: 15px 0; position: fixed; top: 0; left: 0; right: 0;
			z-index: 1031; height: var(--tw-offer-h); display: flex; align-items: center }
		.navbar.fixed-top { top: var(--tw-offer-h) }
		body { padding-top: var(--tw-offer-h) }
		.tw-offer p { margin: 0; text-align: center; color: #C9DCEC; font-size: 15px; line-height: 1.6 }
		.tw-offer strong { color: #fff; font-weight: 800 }
		.tw-offer-badge { display: inline-block; background: #1B7A50; color: #fff; font-size: 10.5px;
			font-weight: 800; letter-spacing: 1.4px; text-transform: uppercase; padding: 5px 11px;
			border-radius: 30px; margin-right: 10px; vertical-align: 2px }
		.tw-offer a { color: #fff; font-weight: 700; text-decoration: underline; text-underline-offset: 3px;
			margin-left: 10px; white-space: nowrap }
		.tw-offer a:hover { color: #8FB6D8 }
		@media (max-width:600px) {
			:root { --tw-offer-h: 0px }
			.tw-offer { padding: 12px 0 }
			.tw-offer p { font-size: 13.5px }
			.tw-offer a { display: block; margin: 6px 0 0 } }
		@media (max-width:767px) { body { padding-bottom: 76px } }
		.navbar-nav .nav-link { white-space: nowrap }
		@media (min-width:992px) and (max-width:1180px) {
			.navbar-nav .nav-link { padding-left: 9px; padding-right: 9px; font-size: 14px }
			.tw-nav-cta { margin-left: 8px; padding: 9px 16px; font-size: 13.5px } }
		@media (max-width:991px) {
			.navbar-collapse { background: #fff; border-radius: 12px; margin-top: 10px;
				padding: 10px 6px 14px; border: 1px solid #CFE3F1;
				box-shadow: 0 18px 40px rgba(36,58,94,.14);
				max-height: calc(100vh - var(--tw-offer-h) - 120px); overflow-y: auto }
			.navbar-nav .nav-link { padding: 11px 14px }
			.tw-nav-cta { margin: 10px 14px 4px; justify-content: center } }
		.navbar-toggler { border: 1px solid #CFE3F1; border-radius: 9px;
			padding: 0; width: 44px; height: 40px; position: relative;
			background: #fff; outline: none; transition: border-color .2s ease }
		.navbar-toggler:hover { border-color: #8FB6D8 }
		.navbar-toggler:focus { box-shadow: none; outline: none }
		.navbar-toggler:focus-visible { outline: 3px solid #8FB6D8; outline-offset: 2px }
		.navbar-toggler .icon { display: none }

		.navbar-toggler .tw-bars { position: absolute; left: 50%; top: 50%;
			width: 20px; height: 14px; transform: translate(-50%,-50%) }
		.navbar-toggler .tw-bars span { position: absolute; left: 0; width: 100%; height: 2px;
			background: #243A5E; border-radius: 2px;
			transition: transform .32s cubic-bezier(.4,0,.2,1), opacity .2s ease }
		.navbar-toggler .tw-bars span:nth-child(1) { top: 0 }
		.navbar-toggler .tw-bars span:nth-child(2) { top: 6px }
		.navbar-toggler .tw-bars span:nth-child(3) { top: 12px }
		.navbar-toggler[aria-expanded="true"] .tw-bars span:nth-child(1) {
			transform: translateY(6px) rotate(45deg) }
		.navbar-toggler[aria-expanded="true"] .tw-bars span:nth-child(2) {
			opacity: 0; transform: scaleX(.3) }
		.navbar-toggler[aria-expanded="true"] .tw-bars span:nth-child(3) {
			transform: translateY(-6px) rotate(-45deg) }
		@media (max-width:991px) {
			footer .navbar-brand { display: block; margin-left: 0 } }
		@media (prefers-reduced-motion:reduce) {
			.navbar-toggler .tw-bars span { transition: none } }
		@media (max-width:767px) {
			.tw-offer { position: static; height: auto; padding: 11px 0 }
			.tw-offer p { font-size: 13px; line-height: 1.5 }
			.tw-offer a { margin-top: 4px }

			.navbar.fixed-top { position: sticky; top: 0; z-index: 1030;
				background: #fff; padding: 12px 0;
				box-shadow: 0 2px 14px rgba(36,58,94,.08) }
			.navbar .navbar-brand { margin: 0; padding: 0 }
			.navbar .navbar-brand img { width: 176px !important }

			body { padding-top: 0 } }
/* menu bar height, used by page headers that sit under the fixed menu */
:root { --tw-nav-h: 92px }
@media (max-width: 767px) { :root { --tw-nav-h: 74px } }