:root { --darkBlue: #00021D; --grey: #555668; --textColor: #8E8E93; --stroke: #CCCCD2; --white: #fff; --purple: #7C3DFD; --blue: #23CFFF; --purpleLight: #E9E4FF; --red: #DB0D00; --green: #00A713; }

/*---------------------
General
---------------------*/
a { font-weight: normal; color: var(--stroke); text-decoration: none; }
	a:hover { text-decoration: underline; }

h1, h2, h3 { font-family: "Montserrat",Arial,sans-serif; color: #fff; line-height: 1.2em; font-weight: 400; }
h1 { font-size: 32px; margin: 0 0 30px 0; }
h2 { font-size: 22px; margin: 25px 0 5px 0; }
h3 { font-size: 18px; margin: 25px 0 5px 0; }
h4 { margin: 25px 0 5px 0; line-height: 1.5; }
p { margin: 0 0 10px 0; }

::selection { background: #d0e8ff; }
::-moz-selection { background: #d0e8ff; }

table,
table tr,
table tr td { font: normal 12px/1.5 Arial, Verdana, Sans-serif; }

img, table { border: 0; }
html { margin: 0; padding: 0; }
body { margin: 0; padding: 0; COLOR: var(--stroke); font-size: 14px; font-family: 'Montserrat', Arial, Sans-serif; font-weight:400; line-height: 1.5; background: var(--darkBlue); }

html, body { height: 100%; }
html { overscroll-behavior: none; }
body.lock { position: fixed; top: 0; left: 0; right: 0; width: 100%; overflow: hidden; }
#restNotesPopup .popupContent { max-height: 80vh; overflow: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }

.whiteLink {background:#fff; padding: 10px 15px; display:inline-flex; justify-content:center; align-items:center; gap: 5px; color:#000; border-radius: 10px;}
.whiteLink:hover {text-decoration:none; background:var(--purple); color:#fff;}
.whiteLink:hover img {filter:invert(100);}

/*---------------------
Body layout
---------------------*/
#wrapper { margin: 0 auto; }
.inner { max-width: 1440px; margin: 0 auto; }

#logo { }
	#logo img { display: block; height: 100%; height: 74px; }

.header { position: relative; z-index: 2; height: 150px;}
	.header .inner { min-height: 114px; position: relative; display: flex; justify-content: space-between; align-items: center; gap: 80px; }

	.header #contact { position: absolute; right: 20px; top: 10px; }

.topmenu { overflow: hidden; margin-right: auto; }
.header #responsive-menu-btn { display: none; }

.topmenu { }

	.topmenu ul { margin: 0; padding: 0; position: relative; position: relative; top: 10px; display: flex; justify-content: space-between; align-items: center; }
.header.sticky .topmenu { transition: color .1s .001s ease-out, background .1s .001s ease-out, visibility .1s .1s ease-out, opacity .1s .1s ease-out, transform .1s .1s ease-out; -webkit-transition: color .1s .001s ease-out, background .1s .001s ease-out, visibility .1s .1s ease-out, opacity .1s .1s ease-out, transform .1s .1s ease-out; }
	.header.sticky .topmenu ul { margin: 0; }
.topmenu ul li { display: inline-block; margin: 0 7px; position: relative; border-top: 0.5px solid var(--stroke); min-width: 100px; padding: 10px 5px 10px 0; box-sizing: border-box; }
	.topmenu ul li:hover,
	.topmenu ul li.on { border-top: 0.5px solid var(--purple); }
	.topmenu ul li a { display: flex; justify-content: flex-start; align-items: center; font-weight: 400; white-space: nowrap; font-size: 11px; line-height: 11.6px; font-family: 'Montserrat', sans-serif; color: var(--stroke); text-decoration: none; display: block; text-transform: uppercase; }
	.topmenu ul li:hover a,
	.topmenu ul li.on a { color: var(--purple); }
	.topmenu ul li a::before { content: '\2022'; opacity: 0; width: 0; display: inline-block; font-size: 18px; -webkit-transition: all 350ms ease; -moz-transition: all 350ms ease; transition: all 350ms ease; }
	.topmenu ul li.purpleLink { border-top: none; margin: 0 7px; padding: 0; }
		.topmenu ul li.purpleLink:first-of-type { margin: 0 7px 0 14px; }
		.topmenu ul li.purpleLink a { background: var(--purple); color: #fff; padding: 10px 10px; border-radius: 100px; text-align: center; }
			.topmenu ul li.purpleLink a:hover,
			.topmenu ul li.purpleLink a.selected { background: #fff; color: var(--purple); }
	.topmenu ul li.on a::before { opacity: 1; margin: 0 11px 0 0; height: 5px; width: 5px; }

	.topmenu ul li .caret { position: absolute; bottom: 13px; right: 0; background: url(/gfx/caret-down.png); width: 12px; height: 7px; }
	.topmenu ul li.on .caret { background: url(/gfx/caret-down-purple.png); }
	.topmenu ul li.on.Products .caret { display: none; }
	.topmenu ul li:hover .caret { background: url(/gfx/caret-up.png); }
	.topmenu ul li a:hover { text-decoration: none; }
	.topmenu ul li a.haschild { display: none; }
	.topmenu ul li.on.Products .dropdown { display: none !important; }
	.topmenu ul li .dropdown { display: none; position: absolute; top: 35px; z-index: 3; left: 0; background: #0d0f28; padding: 20px; border-radius: 5px; }
	.topmenu ul li ul { top: 0; display: block; }
		.topmenu ul li ul li a::after { display: none; }
	.topmenu ul li:hover .dropdown { display: block; }
	.topmenu ul li .dropdown li { width: auto; padding: 0; top: 0; margin: 30px 0 0 0; border: none; -webkit-transition: all 350ms ease; -moz-transition: all 350ms ease; transition: all 350ms ease; }
		.topmenu ul li .dropdown li:first-child { margin: 0; }
		.topmenu ul li .dropdown li:hover a { color: var(--purple); }
		.topmenu ul li .dropdown li a { color: #fff; text-transform: initial; font-family: 'Montserrat', Arial, Sans-serif; line-height: 14px; white-space: nowrap; }
			.topmenu ul li .dropdown li a::before { content: ''; display: none; }

#mobileNavBtn {display:none;}

#headerStats {}
#visibleStat { padding: 10px 16px 10px 10px; background: rgba(255, 255, 255, 0.03); border-radius: 12px; cursor:pointer; display:none;}
#headerStats .statItem {display:flex; justify-content:flex-start; align-items:center;}
#headerStats .statItem img {display:block;}
#headerStats .statItem p {margin:0; font-size: 12px;}
#headerStats .statItem img {}
#visibleStat .statItem p:first-child { color: #ED9600; }
#headerStats .statItem p:last-child {}
#hiddenStats { display: block; background: linear-gradient(137deg, #1E1053 0%, #5514AE 56.06%, #1E1053 112.12%); padding: 8px; border-radius: 20px; top: 20px; right:0px; position:absolute; }
	#hiddenStats .statItem { display: flex; align-items: center; padding: 10px 16px 10px 10px; background: rgba(255,255,255,.07); border: .5px solid rgba(255,255,255,.1); backdrop-filter: blur(42px); border-radius: 12px; margin: 0 0 5px 0; gap: 5px; }
		#hiddenStats .statItem:last-child { margin: 0; }
		#hiddenStats .statItem p:last-child { margin-left: auto; }	
#closeStatsBtn {position: absolute; right: -8px; top: -8px; cursor:pointer; display:none;}

.header #nav ul#responsive { display: none; }
.header .contactPuffs { position: absolute; right: 0; }
#radiantWrapper { position: absolute; width: min(1240px, 90vw); aspect-ratio: 1 / 1; left: 50%; top: 0; transform: translateX(-50%); opacity: 0.8; background: var(--purple); border-radius: 50%; z-index: 1; filter: blur(120px); will-change: filter, transform; -webkit-filter: blur(120px); }
/*---------------------
Page layout
---------------------*/
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
* html .clearfix { height: 1%; }

.content { position: relative; z-index: 2; }
	.content .inner { min-height: 450px; overflow: hidden; padding: 40px 0; }
.contentcenter { width: 100%; margin: 0; padding: 0; overflow: hidden; }
.centerText { max-width: 740px; margin: 0 auto 150px auto; }

.pageColumns .row { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }
	.pageColumns .column { width: 48%; margin: 0 0 85px 0; }
		.pageColumns .column .image img { width: 100%; }
	.pageColumns .rubText { color: var(--purple); text-transform: uppercase; margin: 0 0 30px 0; }
	.pageColumns .column h2 { font-size: 22px; margin: 0 0 12px 0; }

	#scrollDown {position: absolute; right: 10%; cursor:pointer; color:var(--purple); text-align:center;}

/*---------------------
Submenu horizontal
---------------------*/
.fullmenu { background-color: #cccccc; }
	.fullmenu ul { width: auto; text-align: center; margin: 0; padding: 0; list-style: none; overflow: hidden; }
		.fullmenu ul li { display: inline-block; margin: 0 10px; padding: 0; }
			.fullmenu ul li:last-child { background: none; border: 0; }
			.fullmenu ul li a { margin: 0; padding: 5px 10px; font: normal 12px/40px Arial; color: #555; text-decoration: none; display: block; }
				.fullmenu ul li a:hover { color: #333; }
			.fullmenu ul li.on a, .fullmenu ul li.on-childs a { color: #333; font-weight: bold; }

/*---------------------
Footer layout
---------------------*/
#footer { box-sizing: border-box; width: 98%; margin: auto; box-sizing: border-box; background: var(--darkBlue); backdrop-filter: blur(10px); border-radius: 20px; position: relative; z-index:2; box-sizing: border-box; overflow: hidden; }
	#footer .inner { display: flex; justify-content: space-between; max-width: none; padding: 0 30px; }
	#footer .topFooter { padding: 60px 0; position: relative; z-index: 3; }
	#footer .leftColumn { width: 80%; }
	#footer .rightColumn { width: 60%; }
	#footer .rightColumn { display: flex; justify-content: flex-end; align-items: flex-start; }
	#footer .footerColumn { width: auto; margin: 0 0 0 60px; }
		#footer .footerColumn:first-child { margin: 0; }
		#footer .footerColumn p.footerHeader { font-size: 18px; font-family: "Mona-Sans SemiBold", sans-serif; color: var(--white); font-weight: 500; margin: 0 0 20px 0; line-height: 1em; }
		#footer .footerColumn p { line-height: 1.4em; font-size: 14px; color: var(--stroke); }
			#footer .footerColumn p:last-child { margin: 0; }
		#footer .footerColumn a { }
	#footer .leftColumn .footerColumn p.footerHeader { font-size: 42px; font-weight: 600; line-height: 1.2; letter-spacing: 1.26px; text-transform: uppercase; }

	#footer .bottomFooter { border-top: 0.5px solid #555668; padding: 37px 0 41px 0; position: relative; z-index: 3; }
		#footer .bottomFooter .inner { align-items: center; }
	#footer .bottommenu ul { list-style: none; padding: 0; margin: 0; gap: 60px; display: flex; justify-content: flex-start; align-items: center; }
		#footer .bottommenu ul li { }
			#footer .bottommenu ul li a { font-family: "Mona-Sans Regular", sans-serif; font-size: 12px; text-transform: uppercase; color: var(--stroke); }

	#footer .socialMediaList ul { padding: 0; list-style: none; margin: 0; display: flex; justify-content: flex-end; align-items: center; gap: 10px; }

	#footer .footerRadiant { position: absolute; width: 500px; height: 350px; left: 0; bottom: 90px; background: #7C3DFD80; filter: blur(100px); -webkit-filter: blur(100px); }

.tooltip-wrap { position: relative; display: inline-flex; }
.info-tip { background: none; border: 0; padding: 0; cursor: pointer; line-height: 1; color:var(--stroke); }
.tooltip { position: absolute; left: 50%; bottom: calc(100% + .5rem); transform: translateX(-100%); max-width: 18rem; padding: .5rem .6rem; border-radius: .4rem; font-size: .9rem; line-height: 1.2; background: #222; color: #fff; box-shadow: 0 4px 16px rgba(0,0,0,.25); z-index: 1000; }
	.tooltip[data-hidden="true"] { display: none; }
	.tooltip:after { content: ""; position: absolute; top: 100%; right: 10%; transform: translateX(-50%); border: 6px solid transparent; border-top-color: #222; }

@media (hover: hover) and (pointer: fine) {
	.tooltip-wrap:hover .tooltip { display: block; }
}


@media screen and (max-width: 1300px) {
	#logo img {height:50px;}
	#footer .topFooter .inner { flex-wrap: wrap; }
	#footer .topFooter .leftColumn,
	#footer .topFooter .rightColumn { width: 100%; justify-content: flex-start; flex-wrap: wrap; gap: 40px; }
	#footer .topFooter .leftColumn { margin: 0 0 40px 0; }
	#footer .rightColumn .footerColumn { margin: 0; }
		#footer .rightColumn .footerColumn:first-child { margin: 0 0; }
		#footer .rightColumn .footerColumn:last-child { margin: 0; }
	#footer .footerColumn p { font-size: 12px; }
		#footer .footerColumn p.footerHeader { font-size: 14px; }

}

	@media screen and (max-width: 1240px) {
		.contentcenter { width: 95%; margin: auto; }
		h1 { font-size: 26px; margin: 0 0 20px 0; }
		h2 { font-size: 18px; }
		h3 { font-size: 16px; }
		#radiantWrapper { height: 100%; }
		#footer .topFooter { padding: 50px 20px 60px 20px; box-sizing: border-box; }
		#footer .bottomFooter { padding: 57px 20px 61px 20px; box-sizing: border-box; }
	}

@media screen and (max-width: 1200px) {
	.header .inner { padding: 20px; min-height: 0; align-items: initial; }

	#logo { height: 60px; }
		#logo img { display: block; height: 100% !important; width: auto !important; }
	.header #nav { position: static; top: 0; left: 0; height: auto; min-height: 50px; width: 100%; padding: 0; margin: 0; z-index: 9; display: none; }
	.header .topmenu { display: none; }
	.header { margin: 0 0 40px 0; }

	#rightHeader { display: flex; justify-content: flex-end; gap: 20px; align-items: center; }
	#hiddenStats { right: 90px; top: 10px; }

	#mobileNavBtn { display: flex; justify-content: center; align-items: center; height: auto; padding: 0; z-index: 999; text-decoration: none; cursor: pointer; }
		#mobileNavBtn img { display: block; }
			#mobileNavBtn img:first-child { display: block; }
			#mobileNavBtn img:last-child { display: none; }
		#mobileNavBtn.close img:first-child { display: none; }
		#mobileNavBtn.close img:last-child { display: block; }

}
	@media screen and (max-width: 1050px) {
		#footer .bottomFooter { padding: 40px 20px; }
		#footer .bottommenu ul { justify-content: center; flex-wrap: wrap; gap: 20px; }
		#footer .bottomFooter .inner { flex-wrap: wrap; gap: 40px; }
		#footer .bottomFooter .bottommenu { width: 100%; }
		#footer .bottomFooter .socialMediaList { width: 100%; text-align: center; }
		#footer .socialMediaList ul { justify-content: center; }
	}

	@media screen and (max-width: 860px) {
		h1 { font-size: 24px; }


		.content { width: auto; height: auto; min-height: 100px; margin: 0; padding: 0; }
			.content .inner { min-height: 100px; padding-bottom: 2%; }
		.submenu { display: none; }

		.content .inner { width: auto; height: auto; margin: 0; padding: 10px; }
		.centerText { margin: 0 auto 50px auto; }

		.pageColumns .row { flex-direction: column-reverse; }
		.pageColumns .column { width: 100%; margin: 0 0 20px 0; }
			.pageColumns .column .image img { width: 100%; }
		.pageColumns .rubText { margin: 0 0 20px 0; }
		.pageColumns .column h2 { font-size: 18px; margin: 0 0 12px 0; }

		#footer .topFooter .leftColumn, #footer .topFooter .rightColumn { width: 100%; justify-content: flex-start; flex-wrap: wrap; gap: 40px; }
		#footer .rightColumn .footerColumn:first-child { margin: 0 0; }
		#footer .footerRadiant { background: #7C3DFD99; }

		table.responsive-table,
		table.responsive-table thead,
		table.responsive-table tbody,
		table.responsive-table th,
		table.responsive-table td,
		table.responsive-table tr { display: block; border: 0; }
			table.responsive-table thead tr { position: absolute; top: -9999px; left: -9999px; }
			table.responsive-table tr { border: 1px solid #ccc; }
			table.responsive-table td { padding: 4px 6px; }
			table.responsive-table td { border: none; border-bottom: 1px solid #ddd; position: relative; padding-left: 50%; white-space: normal; text-align: left !important; }
				table.responsive-table td:before { position: absolute; top: 6px; left: 6px; width: 45%; padding-right: 10px; white-space: nowrap; text-align: left; font-weight: bold; }
				table.responsive-table td:before { content: attr(data-title); }
	}

	@media screen and (max-width: 600px) {
		#logo { height: 40px; }
		.header .inner { gap: 20px; }
		h1 { font-size: 20px; }
		#footer .inner { padding: 0 0px; }

		#hiddenStats {right: 80px; }
		#hiddenStats .statItem {gap: 5px; padding: 5px 5px; }
			#hiddenStats .statItem p { font-size: 10px; }
	}

	@media screen and (max-width: 480px) {
		body { font-size: 12px; }
	}

	@media screen and (max-width: 420px) {
		.header {height: 180px;}
		#hiddenStats { left: 2%; right: 2%; top: 80px; max-width: 96%; }
			#hiddenStats .statItem p { font-size: 12px; }
	}
