:root {
	--aiss-accent: #00bcd4;
	--aiss-navy: #00476b;
	--aiss-navy-hover: #003a58;
	--aiss-navy-ink: #0b2f45;
	--aiss-title: #46485c;
	--aiss-text: #5f727f;
	--aiss-bg-soft: #f4f7f6;
	--aiss-panel: #f0f3f2;
	--aiss-border: #e1e8e6;
	--aiss-shadow-panel: 0 28px 48px -28px rgba(0, 71, 107, .28);
	--aiss-radius: 4px;
	--aiss-radius-btn: 3px;
	--aiss-max: 1200px;
	--aiss-gutter: 24px;
	--aiss-header-h: 84px;
	--aiss-ease-out: cubic-bezier(.23, 1, .32, 1);
	--aiss-ease-drawer: cubic-bezier(.32, .72, 0, 1);
	--aiss-ease-in-out: cubic-bezier(.77, 0, .175, 1);
	--aiss-t-panel-in: 200ms;
	--aiss-t-panel-out: 140ms;
	--aiss-t-cat: 150ms;
	--aiss-t-drawer: 280ms;
}

.aiss-wrap { width: 100%; max-width: var(--aiss-max); margin: 0 auto; padding: 0 var(--aiss-gutter); box-sizing: border-box; }
.aiss-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.aiss-ico { width: 18px; height: 18px; flex: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

body.aiss-header-v2 #site-header .aiss-nav :focus-visible,
body.aiss-header-v2 #site-header .aiss-call:focus-visible,
body.aiss-header-v2 #site-header .aiss-burger:focus-visible,
.aiss-drawer :focus-visible { outline: 2px solid var(--aiss-navy); outline-offset: 2px; box-shadow: 0 0 0 5px rgba(0, 188, 212, .35); border-radius: 2px; }
body.aiss-header-v2 #site-header .aiss-nav .aiss-feature :focus-visible,
.aiss-drawer .aiss-feature :focus-visible { outline-color: #fff; }

body.aiss-header-v2 #page #site-header .header-background { position: relative; background: #fff; }

body.aiss-header-v2 #page #site-header,
body.aiss-header-v2 #page #site-header.fixed.shrink { box-shadow: 0 1px 0 var(--aiss-panel); }

body.aiss-header-v2 #site-header .header-background:before { opacity: 1; }
body.aiss-header-v2 #page #site-header .header-background .container { max-width: var(--aiss-max); width: 100%; padding-left: var(--aiss-gutter); padding-right: var(--aiss-gutter); box-sizing: border-box; }
body.aiss-header-v2 #page #site-header .header-main {
	display: flex; flex-flow: row nowrap; align-items: center; gap: 32px; height: var(--aiss-header-h); min-height: 0; padding: 0; margin: 0; text-align: left;
}
body.aiss-header-v2 #page #site-header .header-main .site-title,
body.aiss-header-v2 #page #site-header.fixed.shrink .header-main .site-title {
	flex: none; float: none; width: auto; height: auto; margin: 0; padding: 0; display: block;
}
body.aiss-header-v2 #page #site-header .site-title .site-logo,
body.aiss-header-v2 #page #site-header .site-title .site-logo img,
body.aiss-header-v2 #page #site-header.fixed.shrink .site-title .site-logo,
body.aiss-header-v2 #page #site-header.fixed.shrink .site-title .site-logo img { height: 72px !important; width: auto !important; max-width: none; }
body.aiss-header-v2 #page #site-header .site-title .site-logo { display: block; }

@media (min-width: 980px) and (max-width: 1212px) {
	body.aiss-header-v2 #page #site-header.fixed.shrink .site-title .logo img.default { opacity: 1; }
}

.aiss-nav { margin-left: auto; height: 100%; }
.aiss-nav-list { list-style: none; margin: 0; padding: 0; height: 100%; display: flex; align-items: stretch; gap: 4px; }
.aiss-nav-list > li { display: flex; margin: 0; padding: 0; }
.aiss-nav-btn {
	appearance: none; border: 0; background: none; cursor: pointer; margin: 0; border-radius: 0; box-shadow: none;
	display: inline-flex; align-items: center; gap: 6px; padding: 0 14px; position: relative;
	color: var(--aiss-title); text-decoration: none;
	font: 700 14px/1 'Montserrat', sans-serif; letter-spacing: .04em; text-transform: uppercase;
	transition: color .15s ease;
}
.aiss-nav-btn .aiss-ico { width: 16px; height: 16px; transition: transform var(--aiss-t-panel-in) var(--aiss-ease-out); }
.aiss-nav-btn:hover, .aiss-nav-btn[aria-expanded="true"] { color: var(--aiss-navy); background: none; }
.aiss-nav-btn[aria-expanded="true"] .aiss-ico { transform: rotate(180deg); }

.aiss-nav-btn::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 0; height: 3px; background: var(--aiss-accent); transform: scaleX(0); transform-origin: left; transition: transform var(--aiss-t-panel-in) var(--aiss-ease-out); }
.aiss-nav-btn[aria-expanded="true"]::after, .aiss-nav-btn.is-current::after { transform: scaleX(1); }

.aiss-nav-list:has(.aiss-nav-btn[aria-expanded="true"]) .aiss-nav-btn.is-current:not([aria-expanded="true"])::after { transform: scaleX(0); }
.aiss-nav-cta { align-self: center; margin-left: 12px; }
.aiss-burger, .aiss-call { display: none; }

body.aiss-header-v2 #page #site-header-wrapper { position: relative; z-index: 1000; }
body.aiss-header-v2 #page #site-header .header-main { position: static; z-index: auto; }

body.aiss-header-v2 #page #site-header .header-background { isolation: isolate; }
body.aiss-header-v2 #page #site-header .header-background:before { z-index: -1; }
.aiss-mega {
	position: absolute; left: 0; right: 0; top: 100%; z-index: 20;
	max-height: calc(100vh - var(--aiss-header-h)); overflow-y: auto; overscroll-behavior: contain;
	background: #fff; border-top: 1px solid var(--aiss-border); box-shadow: var(--aiss-shadow-panel);
	opacity: 0; transform: translateY(-8px); visibility: hidden; pointer-events: none;
	transition: opacity var(--aiss-t-panel-out) var(--aiss-ease-out), transform var(--aiss-t-panel-out) var(--aiss-ease-out), visibility 0s linear var(--aiss-t-panel-out);
}
.aiss-mega.is-open {
	opacity: 1; transform: none; visibility: visible; pointer-events: auto;
	transition: opacity var(--aiss-t-panel-in) var(--aiss-ease-out), transform var(--aiss-t-panel-in) var(--aiss-ease-out), visibility 0s;
}

.aiss-mega.is-instant, .aiss-mega.is-instant * { transition: none !important; }

.aiss-mega-inner { display: grid; grid-template-columns: 320px minmax(0, 1fr) minmax(0, 1.15fr); gap: 40px; padding-top: 32px; padding-bottom: 36px; }

.aiss-feature {
	position: relative; min-height: 260px; border-radius: var(--aiss-radius); overflow: hidden;
	display: flex; flex-direction: column; justify-content: flex-end; padding: 24px;
	background: var(--aiss-navy-ink); color: #fff; isolation: isolate;
}
.aiss-feature img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.aiss-feature::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(11, 47, 69, .05) 0%, rgba(11, 47, 69, .55) 45%, rgba(11, 47, 69, .92) 100%); }
.aiss-feature h2 { color: #fff; font-size: 22px; line-height: 1.25; margin-bottom: 8px; }
.aiss-feature p { margin: 0 0 18px; font-size: 15px; line-height: 1.5; color: rgba(255, 255, 255, .9); }
.aiss-btn { align-self: flex-start; }
.aiss-btn .aiss-ico { width: 16px; height: 16px; }

.aiss-cats { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.aiss-cat {
	appearance: none; border: 0; width: 100%; text-align: left; cursor: pointer;
	display: grid; grid-template-columns: 1fr auto; align-items: center; column-gap: 12px;
	padding: 14px 16px 14px 19px; border-radius: var(--aiss-radius); background: transparent; position: relative;
	font: inherit; color: var(--aiss-text);
	transition: background-color .12s ease;
}
.aiss-cat::before { content: ""; position: absolute; left: 0; top: 10px; bottom: 10px; width: 3px; border-radius: 2px; background: var(--aiss-accent); opacity: 0; transition: opacity .12s ease; }
.aiss-cat-t { display: block; font: 700 15px/1.3 'Montserrat', sans-serif; color: var(--aiss-title); margin-bottom: 3px; }
.aiss-cat-d { display: block; font-size: 15px; line-height: 1.45; }
.aiss-cat .aiss-ico { color: var(--aiss-title); opacity: .45; transition: opacity .12s ease, transform .12s ease; }
.aiss-cat:hover { background: var(--aiss-bg-soft); }
.aiss-cat[aria-selected="true"] { background: var(--aiss-panel); }
.aiss-cat[aria-selected="true"]::before { opacity: 1; }
.aiss-cat[aria-selected="true"] .aiss-cat-t { color: var(--aiss-navy); }
.aiss-cat[aria-selected="true"] .aiss-cat-d { color: #566874; }
.aiss-cat[aria-selected="true"] .aiss-ico { opacity: 1; color: var(--aiss-navy); transform: translateX(2px); }

.aiss-links { padding-left: 32px; border-left: 1px solid var(--aiss-border); min-height: 100%; }

.aiss-mega-inner > .aiss-feature { grid-column: 1; grid-row: 1; }
.aiss-mega-inner > .aiss-cats { grid-column: 2; grid-row: 1; }
.aiss-mega-inner > .aiss-links { grid-column: 3; grid-row: 1; }
.aiss-links[hidden] { display: block; visibility: hidden; }
.aiss-links h3 { font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--aiss-text); margin: 6px 0 14px; }
.aiss-links ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.aiss-links a {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	padding: 10px 12px; margin-left: -12px; border-radius: var(--aiss-radius);
	color: var(--aiss-title); text-decoration: none; font-size: 17px; line-height: 1.35;
	transition: background-color .12s ease, color .12s ease;
}
.aiss-links a .aiss-ico { width: 16px; height: 16px; opacity: 0; transform: translateX(-4px); transition: opacity .12s ease, transform .12s ease; color: var(--aiss-navy); }
.aiss-links a:hover, .aiss-links a:focus-visible { background: var(--aiss-bg-soft); color: var(--aiss-navy); }
.aiss-links a:hover .aiss-ico, .aiss-links a:focus-visible .aiss-ico { opacity: 1; transform: none; }

.aiss-links a.aiss-links-all { margin: 12px 0 0 -12px; padding-top: 12px; border-radius: var(--aiss-radius); box-shadow: inset 0 1px 0 var(--aiss-border); justify-content: flex-start; gap: 8px; color: var(--aiss-navy); font: 700 13px/1.3 'Montserrat', sans-serif; letter-spacing: .04em; text-transform: uppercase; }
.aiss-links a.aiss-links-all .aiss-ico { opacity: 1; transform: none; }
.aiss-links a.aiss-links-all:hover .aiss-ico, .aiss-links a.aiss-links-all:focus-visible .aiss-ico { transform: translateX(3px); }

.aiss-links a[aria-current="page"] { color: var(--aiss-navy); box-shadow: inset 3px 0 0 var(--aiss-accent); }

.aiss-links.is-entering { animation: links-in var(--aiss-t-cat) var(--aiss-ease-out); }
@keyframes links-in { from { opacity: 0; transform: translateX(6px); } to { opacity: 1; transform: none; } }

.aiss-scrim { position: fixed; inset: 0; z-index: 999; background: rgba(11, 47, 69, .32); opacity: 0; visibility: hidden; transition: opacity var(--aiss-t-panel-out) ease, visibility 0s linear var(--aiss-t-panel-out); }
.aiss-scrim--desk { pointer-events: none; }
.aiss-scrim.is-on { opacity: 1; visibility: visible; transition: opacity var(--aiss-t-panel-in) ease, visibility 0s; }

@media (max-width: 1199px) {
	body.aiss-header-v2 #page #site-header .header-main { gap: 20px; }
	.aiss-nav-btn { padding: 0 10px; font-size: 13px; }
	.aiss-nav-btn::after { left: 10px; right: 10px; }
	.aiss-mega-inner { grid-template-columns: 250px minmax(0, 1fr) minmax(0, 1fr); gap: 28px; }
	.aiss-links { padding-left: 24px; }
	.aiss-feature { min-height: 280px; padding: 20px; }
}

.aiss-drawer { display: none; }
@media (max-width: 979px) {
	:root { --aiss-header-h: 64px; --aiss-gutter: 16px; }
	body.aiss-header-v2 #page #site-header .site-title .site-logo,
	body.aiss-header-v2 #page #site-header .site-title .site-logo img,
	body.aiss-header-v2 #page #site-header.fixed.shrink .site-title .site-logo,
	body.aiss-header-v2 #page #site-header.fixed.shrink .site-title .site-logo img { height: 52px !important; width: auto !important; }
	.aiss-call { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-left: auto; color: var(--aiss-navy); }
	.aiss-call .aiss-ico { width: 22px; height: 22px; }
	.aiss-nav, .aiss-mega, .aiss-scrim--desk { display: none !important; }
	.aiss-burger {
		display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 12px; margin-right: -12px;
		appearance: none; border: 0; background: none; cursor: pointer; color: var(--aiss-title);
		font: 700 13px/1 'Montserrat', sans-serif; letter-spacing: .04em; text-transform: uppercase;
	}
	.aiss-burger .aiss-ico { width: 24px; height: 24px; }

	.aiss-drawer {
		display: flex; flex-direction: column;
		position: fixed; z-index: 1100; top: 0; right: 0; bottom: 0; width: min(100%, 420px);
		background: #fff; box-shadow: -24px 0 48px -24px rgba(0, 71, 107, .3);
		transform: translateX(100%); visibility: hidden;
		transition: transform var(--aiss-t-drawer) var(--aiss-ease-drawer), visibility 0s linear var(--aiss-t-drawer);
	}
	.aiss-drawer.is-open { transform: none; visibility: visible; transition: transform var(--aiss-t-drawer) var(--aiss-ease-drawer), visibility 0s; }
	.aiss-drawer-head { flex: none; height: 64px; display: flex; align-items: center; gap: 8px; padding: 0 8px 0 16px; border-bottom: 1px solid var(--aiss-border); }
	.aiss-drawer-title { margin: 0; font: 700 15px/1.2 'Montserrat', sans-serif; color: var(--aiss-navy); text-transform: uppercase; letter-spacing: .04em; }
	.aiss-drawer-back, .aiss-drawer-close {
		appearance: none; border: 0; background: none; cursor: pointer; height: 44px; min-width: 44px;
		display: inline-flex; align-items: center; justify-content: center; gap: 6px; color: var(--aiss-title);
		font: 700 13px/1 'Montserrat', sans-serif; letter-spacing: .04em; text-transform: uppercase; padding: 0 10px;
	}
	.aiss-drawer-back { margin-left: -10px; }
	.aiss-drawer-back[hidden] { display: none; }
	.aiss-drawer-close { margin-left: auto; }
	.aiss-drawer-close .aiss-ico { width: 24px; height: 24px; }
	.aiss-drawer-views { position: relative; flex: 1; overflow: hidden; }
	.aiss-dview {
		position: absolute; inset: 0; overflow-y: auto; overscroll-behavior: contain; padding: 8px 16px 32px; background: #fff;
		transform: translateX(100%); visibility: hidden;
		transition: transform 240ms var(--aiss-ease-in-out), visibility 0s linear 240ms;
	}
	.aiss-dview.is-current { transform: none; visibility: visible; transition: transform 240ms var(--aiss-ease-in-out), visibility 0s; }
	.aiss-dview.is-behind { transform: translateX(-30%); visibility: hidden; }
	.aiss-dview h2 { font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--aiss-text); margin: 16px 0 8px; }
	.aiss-dlist { list-style: none; margin: 0; padding: 0; }
	.aiss-dlist > li + li { border-top: 1px solid var(--aiss-panel); }
	.aiss-drow {
		appearance: none; border: 0; background: none; width: 100%; text-align: left; cursor: pointer;
		display: flex; align-items: center; justify-content: space-between; gap: 12px;
		min-height: 56px; padding: 12px 0; color: var(--aiss-title); text-decoration: none; font: inherit;
	}
	.aiss-drow strong { font: 700 15px/1.3 'Montserrat', sans-serif; text-transform: uppercase; letter-spacing: .04em; }
	.aiss-drow .aiss-sub { display: block; font-size: 15px; line-height: 1.4; color: var(--aiss-text); margin-top: 2px; }
	.aiss-drow .aiss-lvl2 { font: 700 15px/1.3 'Montserrat', sans-serif; }
	.aiss-drow .aiss-lnk { font-size: 17px; }
	.aiss-drow .aiss-ico { color: var(--aiss-navy); opacity: .7; }
	.aiss-drow:active { background: var(--aiss-bg-soft); }
	.aiss-dfeature { margin: 8px 0 12px; min-height: 0; padding: 18px; }
	.aiss-dfeature h2 { font-size: 18px; color: #fff; text-transform: none; letter-spacing: 0; margin: 0 0 6px; }
	.aiss-dfeature p { font-size: 15px; margin-bottom: 14px; }
	.aiss-dfoot { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--aiss-border); display: grid; gap: 12px; font-size: 15px; }
	.aiss-dfoot a:not(.aiss-btn) { color: var(--aiss-title); text-decoration: none; display: inline-flex; align-items: center; gap: 8px; }
	.aiss-dfoot .aiss-btn { justify-content: center; align-self: stretch; }
	.aiss-dcta { display: flex; justify-content: center; align-self: stretch; margin: 16px 0 4px; }
	.aiss-drow[aria-current="page"] .aiss-lnk { color: var(--aiss-navy); box-shadow: inset 3px 0 0 var(--aiss-accent); padding-left: 10px; }
	.aiss-drow[aria-current] > strong { color: var(--aiss-navy); border-left: 3px solid var(--aiss-accent); padding-left: 10px; }
	.aiss-scrim--mob { z-index: 1090; }
}
@media (max-width: 767px) {
	.aiss-drawer { width: 100%; }
}

.aiss-cat::before { transform: scaleY(.3); transition: opacity .12s ease, transform 240ms var(--aiss-ease-out); }
.aiss-cat[aria-selected="true"]::before { transform: none; }
.aiss-cat:not([aria-selected="true"]):hover .aiss-ico { opacity: .8; transform: translateX(2px); }
.aiss-links.is-entering { animation: none; }
.aiss-links.is-entering > h3,
.aiss-links.is-entering li,
.aiss-links.is-entering > .aiss-links-all { animation: aiss-link-in 220ms var(--aiss-ease-out) both; }
.aiss-links.is-entering li:nth-child(1) { animation-delay: 30ms; }
.aiss-links.is-entering li:nth-child(2) { animation-delay: 60ms; }
.aiss-links.is-entering li:nth-child(3) { animation-delay: 90ms; }
.aiss-links.is-entering li:nth-child(4) { animation-delay: 120ms; }
.aiss-links.is-entering li:nth-child(n+5) { animation-delay: 150ms; }
.aiss-links.is-entering > .aiss-links-all { animation-delay: 150ms; }
@keyframes aiss-link-in { from { opacity: 0; transform: translateX(8px); } to { opacity: 1; transform: none; } }
.aiss-feature img { transition: transform 600ms var(--aiss-ease-out); }
.aiss-feature:has(.aiss-btn:hover) img, .aiss-feature:has(.aiss-btn:focus-visible) img { transform: scale(1.04); }
.aiss-feature .aiss-btn .aiss-ico { transition: transform 160ms var(--aiss-ease-out); }
.aiss-feature .aiss-btn:hover .aiss-ico, .aiss-feature .aiss-btn:focus-visible .aiss-ico { transform: translateX(3px); }

@media (prefers-reduced-motion: reduce) {
	.aiss-mega, .aiss-mega.is-open { transform: none; }
	.aiss-links.is-entering { animation: none; }
	.aiss-links.is-entering > h3, .aiss-links.is-entering li, .aiss-links.is-entering > .aiss-links-all { animation: aiss-fade-in 150ms ease both; animation-delay: 0ms; }
	.aiss-cat::before, .aiss-cat[aria-selected="true"]::before { transform: none; transition: opacity .12s ease; }
	.aiss-cat:not([aria-selected="true"]):hover .aiss-ico { transform: none; }
	.aiss-feature img, .aiss-feature .aiss-btn .aiss-ico { transition: none; transform: none !important; }
	.aiss-nav-btn .aiss-ico, .aiss-nav-btn::after, .aiss-cat .aiss-ico, .aiss-links a .aiss-ico { transition: none; }
	.aiss-drawer, .aiss-drawer.is-open { transform: none; opacity: 0; transition: opacity 150ms ease, visibility 0s linear 150ms; }
	.aiss-drawer.is-open { opacity: 1; transition: opacity 150ms ease, visibility 0s; }
	.aiss-dview, .aiss-dview.is-current, .aiss-dview.is-behind { transform: none; transition: none; }
}

html.aiss-drawer-open, html.aiss-drawer-open body { overflow: hidden; }
html.aiss-drawer-open #tidio-chat, html.aiss-drawer-open #tidio-chat-code, html.aiss-drawer-open iframe[id^="tidio-chat"] { display: none !important; }

.aiss-mega h2, .aiss-mega h3, .aiss-drawer h2 { text-transform: none; margin-left: 0; margin-right: 0; font-family: 'Montserrat', sans-serif; font-weight: 700; }
.aiss-mega ul, .aiss-drawer ul { list-style: none; margin-top: 0; margin-bottom: 0; padding-left: 0; }
.aiss-mega li, .aiss-drawer li { margin-bottom: 0; }

body.aiss-header-v2 :where([id]) { scroll-margin-top: var(--aiss-header-h); }
@keyframes aiss-fade-in { from { opacity: 0; } to { opacity: 1; } }
