body {
	margin: 0px;
	padding: 0px;
	font-family: "3M Circular TT-Boo", Arial, sans-serif;	
	background-color:#000024;
}	

@font-face {
	font-family: "3M Circular TT-Bol";
	src: url("fonts/3MCircularTT-Bold.ttf") format("truetype");
}
@font-face {
	font-family: "3M Circular TT-Boo";
	src: url("fonts/3MCircularTT-Book.ttf") format("truetype");
}

@font-face {
	font-family: 'BebasNeue-Regular';
	src: url("fonts/BebasNeue-Regular.woff2");
}


@font-face {
	font-family: 'BebasNeue-Book';
	src: url("fonts/bebasneue-book.woff2");
}


img {
border: 0;
}
a {
	text-decoration:none;
	color:#434343;
	}
a:hover {
	text-decoration: underline;
	}
a:active {
	color:#dfdfdf;	
	}
	
h4 {
	font-family: BebasNeue-Regular, Arial, sans-serif;	
	margin: 15px 0px 5px 0px;
	}
		

#welcome {
	position: absolute;
	top: 0px;
	left: 0px;
	width:100%;
	height:100%;
	background: rgb(255,255,255);
	background: linear-gradient(270deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 60%);
	z-index: 19;
	}
	
#header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height:11.8%;
	border-bottom: 2px solid #71b9e5;
	background-color: #000024;
	z-index: 13;
	}
#header img {
	height: 95%;
	padding-left: 2%
	
	}	
.headerlang {
	position: absolute;
	top:35%;
	right:2%;
}
.footerlang {
	display: inline-block !important;	
	margin-right: 1vw !important;
}
.footerlangright {
	display: inline !important;
	padding-right: 1vw !important;
	margin-right: 1vw;
}
#webChangeLang, #changeLang {
	background-color:#000024;
	border: 1px solid white;
	color: white;
	font-size: 0.7vw;
}
#globe {
	display: block;
	background-image: url('../img/globe-white.png');
	background-position: center right;
	background-repeat: no-repeat;
	background-size: contain;
	width:100px;
}
#footer {
	position: absolute;
	bottom:0;
	left: 0;
	font-size: 12px;
	color: white;
	z-index: 13;
	width: 100%;
	border-top: 2px solid #71b9e5;
	height: 12.1%;
	background-color: #000024;
	}
	
#footertext_container {
	position: absolute;
	width:60%;
	right: 1%;
	top: 40%;
	color:white;
	z-index: 14;
	text-align: right;
	font-size: 0.7vw;
	}
#mainspot_container {
	position: absolute;
	width:40%;
	left: 1%;
	top: 25%;
	color:white;
	z-index: 14;
	}
	
.mainspot {
	color: #0f1d89;
	font-size: 1vw;
	font-weight:bold;
	color: white;
	display: inline-block;
	cursor: pointer;
	text-align: center;
	padding-bottom: 0.5vw;
	line-height: 2vw;
	}
.mainspot:hover {
	color: #6472d6;
	border-bottom: 1px solid white;
	}
#searchbox {
	position: absolute;
	bottom: 10%;
	left: 4%;
	width:92%;
	height: 62%;
	color:white;
	overflow-y: auto;	
	padding-top: 6px;
	}
#searchbox::-webkit-scrollbar {
	width: 5px;
	height: 8px;
	background-color: rgba(255,255,255,0.05); /* or add it to the track */
}
#searchbox::-webkit-scrollbar-thumb {
  background: #6472d6;
}	
#searchText {
	margin-left: 9%;
	}
#searchSubmit {
	cursor: pointer;
	display: inline;
	border: 1px solid white;
	padding: 3px;
	margin:4px;
	}
#results {
	margin-top: 14px;
	}

.sr {
	cursor: pointer;
	background-color: rgba(32, 90, 198, 0.29);
	width:44%;
	color:white;
	display: inline-block;
	margin:0.2vw;
	font-size:0.7vw;
	padding:0.2vw;
	}
.lit {
	color: #6472d6 !important;
	border-bottom: 1px solid #6472d6;
	}
#home-container {
	float:left;
	width:5vw;
	/* width:90px; */
/* 	display: none; */
	}
#menu-container {
	float:left;	
	font-size: 1vw;
	}
.homespot {
	cursor: pointer;
	}
#homeicon { 
	color:white;
	cursor: pointer;	
	background-image: url('../img/home.png');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 1.5vw 1.5vw;
	height: 1.6vw;
	width: 1.6vw;
	float:left;
	padding-bottom: 0.5vw;
	margin-right: 1vw;
	}
#homeicon:hover {
	border-bottom: 1px solid white;
	}

.backicon { 
	color:white;
	cursor: pointer;	
	background-image: url('../img/back.png');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 1.5vw 1.5vw;
	height: 1.6vw;
	width: 1.6vw;
	padding-bottom: 0.5vw;	
	float:left;	
	display: none;
	}	
	
.backicon:hover {
	border-bottom: 1px solid white;
	}
	
.backicon.lit {
	border-bottom:  none !important;
	}
.navOne {
	display: none;
	z-index: 12;
	position: absolute;
	top:11.8%;
	left: 21%;
	width: 79%;
	aspect-ratio: 3500 / 1920;
	}
.navOneItem {
	float: left;
	height: 100%;
	width: 15%;
	background-color: rgba(0, 0, 0, 0.65);
	border-width: 0px 3px 0px 0px;
	border-style: solid;
	color:white;
	border-image: radial-gradient(rgb(255,255,255), rgb(0,0,0)) 1;
	cursor: pointer;
	font-size:15px;
	display: none;
	position: relative;
	}
.navOneItem.first {
	border-width: 0px 3px 0px 3px;
	border-style: solid;
	color:white;
	border-image: radial-gradient(rgb(255,255,255), rgb(0,0,0)) 1;
	}
.navOneItem img {
	position: absolute;
	top: 37%;
	left:25%;
	width: 50%;
	display: block;
	}
.navOneItem.vert img {
	top: 29%;
	}
.navItemText {
	display: block;
	position: absolute;
	top: 55%;
	width: 100%;
	text-align: center;
	font-size: 1.1vw;
	}
/*anim*/
	#scene {
	display: none;
	z-index: 12;
	position: absolute;
	left: 40%;
	width: 66%;
	top:12%;
	/* background-color: rgba(6, 33, 232, 0.47); */
	aspect-ratio: 1.55;
	/* This is important! for z-axis effects */
	perspective: 100px;
/* 	        animation: nucircle 16s infinite linear;     */
/*
	perspective-origin: 10px;
	  justify-content: center;
	  align-content: center;
*/

	}



.deform  {
	width: 14%;
	height: 15%;
	transform: scaleX(2.5);
/*     background-color: rgba(172, 216, 230, 0.28); */
	position: absolute;
	left: 38%;
	top: 55%;
	border-radius: 50%;
}

.rotate {
	width: 100%;
	height: 100%;
	animation: circle 16s infinite linear;    
/*     transform-origin: 50% 50%; */
}
.counterrotate {
	width: 50px;
	height: 50px;
	animation: ccircle 16s infinite linear;    
}
	
.inner {
	width: 20px;
	height:120px;
	position: absolute;
	left: 0px;
	top: -150px;
	display: block;
/*     transform: scaleX(0.4); */
	border-top: 2px solid gray;
	border-left: 2px solid gray;
	color:white;
	display: none;
/*         animation: nucircle 16s infinite linear;     */
}
.innerText {
	position: absolute;
	top: -25px;
	left: 20px;
	background-color: rgba(138, 138, 138, 0.63);
	color: white;
	padding: 10px;
	white-space: nowrap;
	transform-origin: 50% 50%;
	cursor: pointer;	
	}
.glow {
	box-shadow: 0 0 20px 5px #00a7ff;
	}
.dot {
	width: 15px;
	height: 15px;
	border-radius: 50%;
	position: absolute;
	bottom: -23px;
	left: -13px;
	padding: 3px;
	border: 1px solid white;
	}
.dot-inner {
	background-color:#00a7ff;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	margin: 2px auto 0px auto;
	}
.searchToggle {
	color:white;
	cursor: pointer;
	margin-left:4%;
	padding-bottom:4px;
	font-size: 1vw;
	}
.searchToggle:hover {
	color: #6472d6;
	border-bottom: 1px solid white;
	}
#searchcontainer {
	display: none;
	}
.kw {
	cursor: pointer;
	background-color: rgba(32, 90, 198, 0.29);
	width:44%;
	color:white;
	display: inline-block;
	margin:0.2vw;
	font-size:0.7vw;
	padding:0.2vw;
	text-align: center;
	text-transform: capitalize;
	}
.allcaps {
	text-transform: uppercase !important;
	}

#keywordSearchContainer {
	display: none;	
	}
.currentKeywords {
	cursor: pointer;
	background-color: rgba(32, 90, 198, 0.29);
	color: white;
	width: 60%;
	margin-top: 14px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 4px;
	font-size:0.8vw;
	border-bottom:1px solid white;
	text-transform: capitalize;
	text-align: center;
	display: none;
	padding: 5px;
	position: relative;
}
.currentKeywordsX {
	display: inline-block;
	position: absolute;
	right: 1%;
	top:1%;
}
	
@keyframes circle {
	from {transform: rotateZ(0deg) }
	to {transform: rotateZ(360deg) }
}

@keyframes ccircle {
	from {transform: rotateZ(360deg);  }
	to {transform: rotateZ(0deg);   }
}
@keyframes nucircle {
	from {transform: perspective(300px) rotateX(25deg) rotate(0deg) }
	to {transform: perspective(300px) rotateX(25deg) rotate(360deg) }
	}

	
@keyframes myOrbit { /*z-axis depends on where start */
	0%  { transform: translate3d(0px, 0px, 0px); opacity: 0.1; }
	25%  { transform: translate3d(50px, 25px, 10px) }
	50%  { transform: translate3d(0px, 50px, 20px); opacity: 1;}
	75%  { transform: translate3d(-50px, 25px, 10px) }
	100%  { transform: translate3d(0px, 0px, 0px); opacity:  0.1; }
   }

#plane {
	width:100%;
	aspect-ratio: 1;
	background-color:rgba(6, 213, 232, 0.45);
	transform: rotate3d(1, 0, 0, 33deg);
	}

	
/*sidebar*/
#sidebar {
	position: absolute;
	top: 12.3%;
	width:21%;
	left:0;
	z-index: 19;
	background-color:rgba(15, 36, 75, 0.29);
	/* aspect-ratio: 955 / 1920; */
	height:74%;
	}	

#tagline {
	margin-top:3%;
	margin-left: 10%;
	font-size: 15px;
/* 	font-family: "3M Circular TT-Bol", "Arial", sans-serif; */
	padding-bottom: 15px;
	/* font-weight: bold; */
	width: 70%;
	color: white;
	font-size: 1.2vw;
	}
#tagline img {
	max-width: 30%;
	}
#taglinetext li {
	padding-top:13px;	
}
#taglinetext, #header_tagline {
	color:white;
	display: block;
	padding-bottom:5px;
	font-size: 1vw;
	}
#header_tagline {
	font-size: 1.25vw;
	font-family: "3M Circular TT-Bol";
}
strong {
		font-family: "3M Circular TT-Bol";
	}
#headerwords {
	color:white;
	display: block;
	position: absolute;
	left: 10%;
	top: 32%;
	font-size: 1.5vw;
	font-family: "3M Circular TT-Bol";
}
#subsectiontext {
	padding-top:1.2vh;
	display: block;
	margin: 0;
	font-size: inherit;
	font-weight: normal;
	}
#categoryMenu{
	display: none;
	color:white;
	cursor: pointer;
	border-width: 1px 0px 0px 0px;
	border-style: solid;
	color:white;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;		
	/* aspect-ratio: 1150 / 1920;	 */
	height: 76%;
	}
#categoryMenu::-webkit-scrollbar { /* WebKit */
	width: 5px;
	height: 8px;
	background-color: rgba(255,255,255,0.05); /* or add it to the track */
}
#categoryMenu::-webkit-scrollbar-thumb {
  background: #6472d6;
}
.subCatItems {
	display: none;
	margin-left: 5%;
	margin-top: 5%;
	}
.subCatItem {
	display: list-item;
	list-style-type: disc;
	color:white;
	font-size: 1em;
	padding: .75vw 1.5vw .75vw .75vw;
	background-image: url('../img/rightarrow.png');
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 1vw 1vw;
	}
.subCatItem.selected {
	background-color: rgba(0, 146, 255, 0.2);
	}
.subcategory {
	border-width: 0px 0px 1px 0px;
	border-style: solid;
	color:white;
/* 	background-image: radial-gradient(rgba(255,255,255,0.3), rgba(255,255,255,0)); */
	background-color: rgba(255,255,255,0.05);
	cursor: pointer;
	font-size:1vw;
	padding: 4% 8% 4% 10%;
	background-image: url('../img/chevronup.png');
	background-position: right .2vw;
	background-repeat: no-repeat;
	background-size: 2vw 1.33vw;
	}
	
.subcategory.open {
	background-image: url('../img/chevrondown.png') !important;
	}
	
/**products**/
#productbar {
	width:33%;
	position: absolute;
	top:12.3%;
	left:21.1%;
	z-index: 19;
	background-color:rgba(15, 36, 75, 0.9);
	/* aspect-ratio: 1490 / 1920;*/
	height:75%; 
	display: none;
	color:white;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;			
	}
#productbar::-webkit-scrollbar { /* WebKit */
	width: 5px;
	height: 8px;
	background-color: rgba(255,255,255,0.05); /* or add it to the track */
}
#productbar::-webkit-scrollbar-thumb {
  background: #6472d6;
}
#productClose {
	font-size:1.1vw;
	font-weight: bold;
	color:white;
	cursor: pointer;
	text-align: right;
	padding: 0.2vw 0.5vw 0.2vw 1vw;
	}
#productCat {
	font-size: 1.5vw;
	margin: 15px;
	}
#productImage {
	position: relative;
	width:100%;
	height:45%;
	background-color: gray;
	overflow: hidden;
	}

#productImageImg {
	width:100%;	
	}
#carousel {
	display:none;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	}
#productAssetVid {
	display:none;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	}

.product {
	font-size: 1vw;
	cursor: pointer;
	margin: 1vw;
	padding-left:2vw;
	background-image: url('../img/productPlus.png');
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 1vw 1vw;
	}
.productAssets {
	height:5vw;
	}
.productAssetsTaller {
	height: 7vw;
}
.productAssetImg {
	margin-top:0.5vw;
	padding: 0.5vw 0.5vw 0.5vw 2vw;
	color:white;
	display: block;
	cursor: pointer;
	margin-right: 2px;
	background-image: url('../img/productImg.png');
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 1.5vw 1.5vw;
	}
.productAssetImg:hover {	
	color: #6472d6;
	padding-bottom: 5px;
	cursor: pointer;	
	}
.productAssetVid {
	margin-top:0.5vw;
	padding: 0.5vw 0.5vw 0.5vw 2vw;
	color: white;
	display: block;
	cursor: pointer;
	background-image: url('../img/productVid.png');
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 1.5vw 1.5vw;
	}
.productAssetVid:hover {	
	color: #6472d6;
	cursor: pointer;	
	}	
.paVid {
	width:100%;
	height:100%;
}
.productAssetPdf {	
	margin-top:0.5vw;
	padding: 0.5vw 0.5vw 0.5vw 2vw;
	color: white;
	display: block;
	cursor: pointer;
	background-image: url('../img/productPdf.png');
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 1.5vw 1.5vw;	
	}
.productAssetPdf:hover {	
	color: #6472d6;
	padding-bottom: 5px;
	cursor: pointer;	
	}	
.productOut {
	background-image: url('../img/productMinus.png');
	}
.productNoBg {
	background-image: none !important;
	padding-left: 0px !important;
	}
.productInfo {
	display: none;
	margin: 1vw;
	font-size: 0.9vw;
	}



/***main ***/
#main_wrapper { 
	max-width: 3840px;
	max-height: 2160px;
	
	}
#main {

	width:100%;
	max-width: 3840px;
	max-height: 2160px;
	padding-bottom: 51%;
	position: relative;
	overflow: hidden;

	}
#slide {
	display: none;
	width: 100%;
	height: 93%;
	position: absolute;
	left;0;
	background-color:white;
	z-index: 19;
	}
#slideclose {
	position: absolute;
	top:15px;
	right:3%;
	border: 1px solid #434343;
	font-size: 20px;
	padding: 3px 10px 3px 10px;
	cursor: pointer;
	}
	
#hotspotback {
	position: absolute;
	top:10%;
	right:3%;
	border: 1px solid #434343;
	font-size: 20px;
	padding: 3px 10px 3px 10px;
	z-index:19;
	background-color: rgba(255, 255, 255, 0.45);
	cursor: pointer;
	display: none;
	}
	
#slideleft {
	position: relative;
	margin:40px 0px 20px 40px;
	float: left;
	width: 45%;
	font-size: 17px;
	margin-top: 60px;
	font-family: Arial, sans-serif;
	background-color:white;
	}
#slideright {
	position: relative;
	margin:40px 20px 20px 0px;
	float: right;
	width: 47%;
	margin-top: 60px;
	background-color:white;
	}

#title {
	font-family: BebasNeue-Regular, Arial, sans-serif;	
	font-size: 45px;
	margin-bottom:20px;
	}
#copy {
	margin-top: 20px;
	margin-bottom:20px;
	}
#features {
	}
#features ul {
	margin: 10px;
	padding: 5px 5px 5px 20px;
	}
#resources {
	max-height: 25vh;
	overflow-y: scroll;
	font-family: BebasNeue-Regular, Arial, sans-serif;	
	border: 1px solid #242424;
	padding:10px;
	background-color:white;
	}
	
/**** modal player ****/
#pdfcontainer {
	width:68%;
	height:88%;
	max-height: 600px;
	position: absolute;
	top: 2%;
	left: 16%;
	box-shadow: 1px 1px 15px 15px #272727;
	display: none;
	background-color:white;
	z-index: 21;
	}

#pdfclose {
	position: absolute;
	top: 1px;
	right: 1px;
	font-size: 45px;
	cursor: pointer;
	padding: 0px 15px 0px 15px;
	background-color: white;
	border-radius: 5px;
	border:1px solid black;
	}
.fill {
		width: 100%;
		height: 100%;
	}
/****** vids ****/
	
#moviebox {
	width:100%;
	position: absolute;
	right:0;
	background-color:red;
	}

.vid {
	position: absolute;
	top: 0;
	left:0;
	width: 100%;
/* 	height: 1080px; */
	}
#privacyChoices, #cookiePrefs, #audioToggle {
	color:white;
	cursor: pointer;
}	
	
#privacyChoices:hover,
#cookiePrefs:hover,
#audioToggle:hover,
#importantNotice:hover {
	color: #6472d6;
	padding-bottom: 5px;
	border-bottom: 1px solid white;
	cursor: pointer;
	text-decoration: none;
	}
.m-footer_legalLink {
	background: url('../img/icn_privacyOptions.avif') no-repeat right / 22px;
	padding-right: 24px;
}
#disclaimer {
	position: absolute;
	width:70%;
	left: 15%;
	height: 300px;
	font-size: 15px;
	top:10%;
	z-index: 20;
	background-color:white;
	border-radius: 3px;
	padding: 50px 20px 20px 20px;
	display: none;
	}
	
#productmodal {
	position: absolute;
	width:65%;
	left: 21%;
	height: 66%;
	font-size: 15px;
	top:12%;
	z-index: 20;
	background-color:white;
	border-radius: 3px;
	padding: 1% 0% 4% 3%;
	display: none;
	/* overflow: hidden; */
	}
#productmodalcontent {
	width:90%;
	height:100%;	
	text-align: center;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	overflow: hidden;
}


#productmodalcontent img {
	max-width: 100%;
	max-height: 100%;
	margin-left: auto;
	margin-right: auto;
}

#disclaimerClose, #productmodalclose {
	position: absolute;
	top: 10px;
	right: 10px;
	font-size: 25px;
	cursor: pointer;
	}
#descriptivevideobtn {
	border-radius: 6px;
	position: absolute;
	bottom: -7%;
	right: 0;
	font-size: 15px;
	cursor: pointer;
	display: none;
	background-color:white;
	padding: 5px 21px 5px 21px;
}
#transcript {
	display: none;
	overflow-y: auto;
	position: absolute;
	top: 88%;
	left: 5%;
	width: 82%;
	height: 35%;
	font-family: Arial;
	color: black;
	background-color: rgba(255, 255, 255, 0.95);
	padding: 10px;
	/* box-shadow: 1px 1px 3px 3px #272727; */
}
#transcript::-webkit-scrollbar {
	width: 5px;
	height: 8px;
	background-color: rgba(255,255,255,0.05); /* or add it to the track */
}
.transcriptClose {
display: block;
text-align: right;
color: rgba(58, 58, 58, 1)	;
font-size: smaller;
}
#transcript::-webkit-scrollbar-thumb {
  background: #6472d6;
}
#portrait {
	display: none;
	z-index: 25;
	width: 100%;
	height:100%;
	background-color:rgba(255, 255, 255, 0.8);
	position: absolute;
	top: 0;
	left:0px;
	font-size:30px;
	font-weight:bold;
	padding:5%;
	text-align: center;
	}

.vidbutton {
	/* display: inline-block;
	min-width: 200px !important; */
}

@media only screen and (hover: none) and (pointer: coarse){

#tagline {
	left:5%;
	}

}
@media screen and (min-width: 2001px) {
	#scene {
		top: 27% !important;
	}
}
@media screen and (max-width: 1575px) {
	
#tagline img {
	max-width: 20%;
	}
.mainspot {
	font-size: 13px;
	}
/* #home-container {
	width: 80px;
	} */
.subcategory {
	font-size: 14px;
	}
}

@media screen and (max-width: 1280px) {
	#tagline {
	font-size: 12px;		
	}	
	#searchSubmit {
		font-size:13px;
		}
	#searchText {
		margin-left: 3%;
		}
	#searchbox {
		bottom: 15%;
		height: 50%;
	}
	.sr {
		font-size: 11px;
		width: 42%;
		}
	.subcategory {
		font-size: 13px;
		background-size: 20px 15px;
		background-position-y: 10px;
		}
	.searchToggle {
		display: inline-block;	
		margin: 3px;
	}
	#searchSubmit {
		display: inline-block;	
	}

}

@media screen and (max-width: 1024px) {
	.headerbtn, #productlistbtn {
		font-size: 18px;
		margin: 7px;
	}
	#headerbtns {
		top:0px !important;
		}
		
	#slideleft {
		font-size:14px;
		}

	}
@media screen and (max-width: 768px) {
.headerbtn, #productlistbtn {
		font-size: 13px;	
		margin: 5px;
	}

	}
	
@media screen and (max-width: 900px) {
	#portrait {
		display: block;
		}
	}