.sg-topbar{background:linear-gradient(90deg,#07294e,#0b3b6f);color:#edf5ff;font-size:.74rem}.sg-topbar-inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:18px}.sg-topbar-contact{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.sg-contact-item{display:flex;align-items:center;gap:6px;color:#fff;text-decoration:none;white-space:nowrap}.sg-contact-item svg{width:15px;height:15px;fill:#bcd5ed}.sg-topbar-actions{display:flex;gap:8px}.sg-social-mini{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#fff;text-decoration:none;font-weight:800}.site-header{position:relative;z-index:80;background:#fff;border-bottom:1px solid #e9eff6;box-shadow:0 4px 18px rgba(15,35,66,.035)}.sg-header-inner{min-height:104px;display:flex;align-items:stretch;justify-content:space-between;gap:22px}.site-branding{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;flex:0 0 auto;min-width:350px;max-width:470px;padding:9px 0}.custom-logo-link{display:block;line-height:0;max-width:100%}.custom-logo{display:block;width:auto;height:auto;max-width:240px;max-height:54px;object-fit:contain;object-position:left center}.sg-brand-text{display:flex;flex-direction:column;min-width:0}.sg-site-name{font-size:clamp(1.22rem,1.55vw,1.58rem);line-height:1.08;font-weight:850;text-decoration:none;color:#0d315f}.sg-site-subtitle{margin-top:4px;font-size:.64rem;color:#244566;letter-spacing:.04em;font-weight:650}.sg-primary-nav{display:flex;align-items:stretch;min-width:0;margin-left:auto}.sg-primary-menu{list-style:none;margin:0;padding:0;display:flex;align-items:stretch;gap:0}.sg-primary-menu>li{position:relative;display:flex;align-items:stretch}.sg-primary-menu>li>a{display:flex;align-items:center;padding:0 15px;color:#102a4d;text-decoration:none;font-size:.76rem;font-weight:850;white-space:nowrap}.sg-primary-menu>li>a:hover{color:var(--sg-primary);background:#f7fbff}.sg-primary-menu>li.menu-item-has-children>a{padding-right:25px}.sg-primary-menu>li.menu-item-has-children>a:after{content:'⌄';position:absolute;right:9px;top:50%;transform:translateY(-50%);font-size:.7rem;color:#70849a}.sg-primary-menu .sub-menu{position:absolute;top:100%;left:0;z-index:1000;min-width:260px;margin:0;padding:8px;list-style:none;background:#fff;border:1px solid #e2eaf2;border-radius:0 0 12px 12px;box-shadow:0 18px 40px rgba(10,39,73,.14);opacity:0;visibility:hidden;transform:translateY(7px);transition:.15s}.sg-primary-menu li:hover>.sub-menu,.sg-primary-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.sg-primary-menu .sub-menu li{position:relative}.sg-primary-menu .sub-menu a{display:block;padding:10px 12px;border-radius:8px;color:#203b59;text-decoration:none;font-size:.78rem;font-weight:650}.sg-primary-menu .sub-menu a:hover{background:#edf5fc;color:var(--sg-primary)}.sg-primary-menu .sub-menu .sub-menu{top:-8px;left:100%;border-radius:12px}.sg-primary-menu .sg-mol-menu-item{margin-left:8px}.sg-primary-menu .sg-mol-menu-item>a{background:linear-gradient(135deg,#e9f200,#d7e900);color:#0b1730;padding:0 20px;font-size:.72rem;font-weight:900;text-align:center;border-radius:6px;margin:15px 0}.sg-header-search{position:relative;display:grid;place-items:center;width:48px;color:#092e5b;text-decoration:none}.sg-header-search span{position:relative;width:17px;height:17px;border:2px solid currentColor;border-radius:50%}.sg-header-search span:after{content:'';position:absolute;width:7px;height:2px;background:currentColor;right:-5px;bottom:-3px;transform:rotate(48deg)}
@media(max-width:1250px){.sg-header-inner{display:block;padding-top:9px}.site-branding{align-items:center;justify-content:center;max-width:none}.custom-logo{object-position:center}.sg-brand-text{align-items:center;text-align:center}.sg-primary-nav{border-top:1px solid #eef3f8;overflow-x:auto}.sg-primary-menu{overflow-x:auto;flex:1}.sg-primary-menu>li{min-height:52px}.sg-primary-menu .sub-menu{display:none}.sg-primary-menu .sg-mol-menu-item{margin-left:auto}.sg-primary-menu .sg-mol-menu-item>a{margin:6px 0}}
@media(max-width:800px){.sg-topbar-contact{justify-content:center;width:100%}.sg-topbar-contact .sg-contact-item:nth-child(n+4){display:none}.sg-topbar-actions{display:none}.sg-header-search{display:none}.sg-primary-menu>li>a{padding:0 11px;font-size:.7rem}.sg-primary-menu .sg-mol-menu-item>a{padding:0 10px}.site-branding{min-width:0}.custom-logo{max-width:200px;max-height:50px}.sg-site-name{font-size:1.3rem}}

/* 0.4.2 - adjustable branding; image ratio is always preserved */
.site-branding{max-width:640px}
.site-branding .custom-logo{width:var(--sg-header-logo-width,240px);height:auto;max-width:100%;max-height:none;object-fit:contain}
.site-branding .sg-site-name{font-size:var(--sg-header-title-size,25px)}
.site-branding .sg-site-subtitle{font-size:var(--sg-header-subtitle-size,10px)}
@media(max-width:800px){
	.site-branding{width:100%;min-width:0}
	.site-branding .custom-logo{max-width:calc(100vw - 30px);max-height:none}
	.site-branding .sg-site-name{font-size:var(--sg-header-title-size,25px)}
}


/* 0.3.1 - menu icons + mega menus */
.sg-nav-icon{display:grid;place-items:center;margin-right:6px}
.sg-nav-icon svg{width:15px;height:15px;fill:currentColor;opacity:.92}
.sg-sub-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:9px;background:#edf5fc;color:var(--sg-primary)}
.sg-sub-icon svg{width:17px;height:17px;fill:currentColor}
.sg-primary-menu>.sg-mega{position:static}
.sg-primary-menu>.sg-mega>.sub-menu{left:auto;right:55px;top:100%;width:min(760px,calc(100vw - 60px));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:14px;border-radius:0 0 14px 14px}
.sg-primary-menu>.sg-mega-services>.sub-menu{width:min(900px,calc(100vw - 60px));grid-template-columns:repeat(2,minmax(0,1fr))}
.sg-primary-menu>.sg-mega-info>.sub-menu{width:min(820px,calc(100vw - 60px))}
.sg-primary-menu>.sg-mega>.sub-menu>li>a{display:flex;align-items:flex-start;gap:11px;min-height:60px;padding:10px 12px;border-radius:10px}
.sg-primary-menu>.sg-mega>.sub-menu>li>a>span:last-child{display:flex;min-width:0;flex-direction:column}
.sg-primary-menu>.sg-mega>.sub-menu strong{display:block;color:#15395f;font-size:.78rem;line-height:1.25}
.sg-primary-menu>.sg-mega>.sub-menu small{display:block;margin-top:3px;color:#788da2;font-size:.67rem;line-height:1.3;font-weight:500}
.sg-primary-menu>.sg-mega>.sub-menu>li>a:hover .sg-sub-icon{background:#dfeefb}
@media(max-width:1250px){
	.sg-primary-menu>.sg-mega>.sub-menu{display:none}
	.sg-nav-icon{display:none}
}


/* 0.3.2 - mega menus anchored below their own top-level item */
@media(min-width:1251px){
	.sg-primary-menu>.sg-mega{position:relative}
	.sg-primary-menu>.sg-mega>.sub-menu{
		left:50%;
		right:auto;
		top:100%;
		transform:translate(-50%,7px);
		transform-origin:top center;
	}
	.sg-primary-menu>.sg-mega:hover>.sub-menu,
	.sg-primary-menu>.sg-mega:focus-within>.sub-menu{
		transform:translate(-50%,0);
	}
	.sg-primary-menu>.sg-mega-primaria>.sub-menu{width:660px}
	.sg-primary-menu>.sg-mega-services>.sub-menu{width:760px}
	.sg-primary-menu>.sg-mega-info>.sub-menu{width:720px}
	.sg-primary-menu>.sg-mega-transparency>.sub-menu{width:620px}

	/* Keep menus inside the viewport near the right edge. */
	.sg-primary-menu>.sg-mega-info>.sub-menu,
	.sg-primary-menu>.sg-mega-transparency>.sub-menu{
		left:auto;
		right:-80px;
		transform:translateY(7px);
	}
	.sg-primary-menu>.sg-mega-info:hover>.sub-menu,
	.sg-primary-menu>.sg-mega-info:focus-within>.sub-menu,
	.sg-primary-menu>.sg-mega-transparency:hover>.sub-menu,
	.sg-primary-menu>.sg-mega-transparency:focus-within>.sub-menu{
		transform:translateY(0);
	}
}

.sg-header-search-form{display:flex;align-items:center;margin-left:8px}
.sg-header-search-form input{width:0;opacity:0;min-height:38px;padding:0;border:1px solid transparent;border-radius:8px;transition:.18s ease;background:#f7faff}
.sg-header-search-form:focus-within input,.sg-header-search-form:hover input{width:170px;opacity:1;padding:0 10px;border-color:#dbe5ef;margin-right:4px}
.sg-header-search-form .sg-header-search{border:0;background:transparent;cursor:pointer}
@media(max-width:800px){.sg-header-search-form input{display:none}}


/* 0.6.5 — dropdowns above maps */
.site-header,
.sg-header-inner,
.sg-primary-nav {
	overflow: visible !important;
}
.sg-primary-menu > li,
.sg-primary-menu .menu-item-has-children {
	position: relative;
}
.sg-primary-menu .sub-menu {
	z-index: 10050 !important;
}


/* 1.0.2 — mobile navigation, search alignment, floating accessibility */
.sg-mobile-menu-toggle,.sg-mobile-nav-head,.sg-mobile-menu-overlay{display:none}

/* Keep search button safely inside header bounds on desktop/tablet. */
.sg-header-search-form{flex:0 0 auto;margin-left:6px;margin-right:4px}
.sg-header-search-form .sg-header-search{width:42px;min-width:42px;padding:0}
.sg-primary-nav{padding-right:2px}

/* Floating accessibility control — visible at all times. */
.sg-a11y-toggle{
	position:fixed;
	right:18px;
	top:50%;
	transform:translateY(-50%);
	z-index:10060;
	display:flex;
	align-items:center;
	gap:8px;
	min-height:50px;
	padding:0 16px;
	border:3px solid #fff !important;
	border-radius:999px;
	background:#2450f5 !important;
	color:#fff !important;
	font-size:.92rem !important;
	font-weight:850 !important;
	box-shadow:0 8px 26px rgba(20,55,180,.28),0 0 0 3px #2450f5;
	cursor:pointer;
}
.sg-a11y-toggle:hover{background:#173ed8!important}
.sg-a11y-toggle:focus-visible{outline:3px solid #ffd84d!important;outline-offset:4px!important}
.sg-a11y-panel{top:50%!important;right:18px!important;transform:translateY(-50%)}
.sg-a11y-panel.is-open{display:block}
.sg-a11y-panel.is-open ~ * .sg-a11y-toggle{visibility:hidden}

@media(max-width:900px){
	html.sg-mobile-nav-open,html.sg-mobile-nav-open body{overflow:hidden}

	.sg-header-inner{
		min-height:82px;
		display:flex!important;
		align-items:center;
		padding-top:0!important;
	}
	.site-branding{
		width:auto!important;
		flex:1 1 auto;
		align-items:flex-start!important;
		text-align:left!important;
		padding:8px 0;
	}
	.site-branding .custom-logo{object-position:left center!important;max-width:min(210px,58vw)!important}
	.site-branding .sg-brand-text{align-items:flex-start!important;text-align:left!important}
	.sg-site-subtitle{display:none}

	.sg-mobile-menu-toggle{
		display:flex;
		flex-direction:column;
		justify-content:center;
		gap:5px;
		width:46px;height:46px;
		flex:0 0 46px;
		margin-left:10px;
		border:1px solid #d8e3ed;
		border-radius:10px;
		background:#fff;
		cursor:pointer;
	}
	.sg-mobile-menu-toggle span{
		display:block;width:21px;height:2px;margin:0 auto;
		border-radius:2px;background:#10345f;
	}

	.sg-primary-nav{
		position:fixed!important;
		left:0;top:0;bottom:0;
		z-index:10080!important;
		display:block!important;
		width:min(390px,88vw);
		height:100dvh;
		padding:0!important;
		border:0!important;
		background:#092f59;
		box-shadow:20px 0 60px rgba(0,0,0,.24);
		overflow-y:auto!important;
		transform:translateX(-105%);
		transition:transform .24s ease;
	}
	.sg-primary-nav.is-open{transform:translateX(0)}
	.sg-mobile-nav-head{
		display:flex;
		align-items:center;
		justify-content:space-between;
		min-height:72px;
		padding:0 18px;
		border-bottom:1px solid rgba(255,255,255,.12);
		color:#fff;
	}
	.sg-mobile-nav-head strong{font-size:1rem}
	.sg-mobile-menu-close{
		width:40px;height:40px;
		border:0;border-radius:8px;
		background:rgba(255,255,255,.1);
		color:#fff;font-size:1.7rem;line-height:1;
		cursor:pointer;
	}
	.sg-mobile-menu-overlay{
		position:fixed;
		inset:0;
		z-index:10070;
		background:rgba(3,21,40,.55);
		backdrop-filter:blur(2px);
	}
	.sg-mobile-menu-overlay.is-open{display:block}

	.sg-primary-menu{
		display:block!important;
		width:100%;
		overflow:visible!important;
		padding:8px 0 14px!important;
	}
	.sg-primary-menu>li{
		display:block!important;
		min-height:0!important;
		border-bottom:1px solid rgba(255,255,255,.09);
	}
	.sg-primary-menu>li>a{
		position:relative;
		display:flex!important;
		min-height:50px;
		padding:10px 44px 10px 18px!important;
		color:#fff!important;
		background:transparent!important;
		font-size:.82rem!important;
		white-space:normal!important;
	}
	.sg-primary-menu>li.menu-item-has-children>a:after{
		right:18px;color:#c8ddf2;font-size:.9rem;
	}
	.sg-nav-icon{display:grid!important}
	.sg-primary-menu .sg-mol-menu-item{margin:10px 14px!important}
	.sg-primary-menu .sg-mol-menu-item>a{
		justify-content:center;
		margin:0!important;
		min-height:48px;
		border-radius:8px;
		color:#0b1730!important;
		background:linear-gradient(135deg,#e9f200,#d7e900)!important;
	}

	.sg-primary-menu .sub-menu,
	.sg-primary-menu>.sg-mega>.sub-menu{
		position:static!important;
		display:none!important;
		width:auto!important;
		min-width:0!important;
		margin:0!important;
		padding:0 10px 9px 22px!important;
		border:0!important;
		border-radius:0!important;
		background:rgba(255,255,255,.055)!important;
		box-shadow:none!important;
		opacity:1!important;
		visibility:visible!important;
		transform:none!important;
		grid-template-columns:1fr!important;
	}
	.sg-primary-menu .sg-sub-open>.sub-menu{display:block!important}
	.sg-primary-menu .sub-menu a{
		display:flex!important;
		min-height:44px!important;
		padding:9px 10px!important;
		color:#ecf5ff!important;
		background:transparent!important;
	}
	.sg-primary-menu>.sg-mega>.sub-menu strong{color:#fff!important}
	.sg-primary-menu>.sg-mega>.sub-menu small{color:#bcd1e6!important}
	.sg-sub-icon{background:rgba(255,255,255,.1)!important;color:#fff!important}

	.sg-header-search-form{
		display:flex!important;
		margin:12px 14px 18px!important;
		padding:0!important;
		border-radius:9px;
		background:#fff;
		overflow:hidden;
	}
	.sg-header-search-form input{
		display:block!important;
		width:100%!important;
		opacity:1!important;
		flex:1 1 auto;
		min-width:0;
		min-height:44px;
		padding:0 12px!important;
		margin:0!important;
		border:0!important;
		border-radius:0!important;
		background:#fff!important;
	}
	.sg-header-search-form .sg-header-search{
		display:grid!important;
		width:46px!important;
		min-width:46px!important;
		height:44px;
		margin:0!important;
		background:#eaf2fa!important;
		color:#0c3562!important;
	}

	.sg-a11y-toggle{
		right:10px;
		min-height:48px;
		padding:0 13px;
		font-size:.82rem!important;
	}
	.sg-a11y-panel{
		right:10px!important;
		width:min(340px,calc(100vw - 20px))!important;
	}
}
@media(max-width:520px){
	.sg-a11y-toggle span{display:none}
	.sg-a11y-toggle{
		width:52px;height:52px;padding:0;justify-content:center;
		font-size:1.2rem!important;
	}
}
