/******************** WELCOME SECTION *********************/                                                                                                                                                                                  
#WelcomeSection {                                                                                                            
	width: 100%;
	height: 100vh; 
	position: relative;  
}

/* layout */
#WelcomeSection .layout {
    position: absolute;
    top: 0px;
    left: 0px;
}   

/* image */
#WelcomeSection #WelcomeImage { 
    z-index: 1;
    background-image: url("../../Assets/Video/welcome.gif");
}

/* overlay */
#WelcomeSection #WelcomeOverlay { 
	z-index: 2;
	opacity: 0.85; 
	background-color: white;
}  

/* content */
#WelcomeSection #WelcomeContent {
    height: auto !important;
    width: 600px;
    top: calc(50% - 180px);  
    left: 185px;
    z-index: 4;
    text-align: left;
}

/* h1 */
#WelcomeSection #WelcomeContent h1 {
	word-spacing: 10px;
    font-size: 55px;
    font-weight: bold;
    line-height: 1;
    color: black; 
}  

#WelcomeSection #WelcomeContent h1 span {
    color: #529CD4;
}

/* p */
#WelcomeSection #WelcomeContent p {
    margin-top: 25px;
	position: relative;
	left: 1px;  
    font-size: 15px;
	font-weight: 400;
    color: rgb(100,100,100);   
} 

/* btns */
#WelcomeSection #WelcomeContent a {
	display: inline-block;
	width: 150px;
	height: 40px;
	margin-top: 60px;
	vertical-align: top;
	cursor: pointer;
	text-align: center;
	word-spacing: 3px;
	font-weight: bold;	
	font-size: 10px;
	border-radius: 20px;
	color: black; 
	transition: 1s;
}

#WelcomeSection #WelcomeContent a.one {
	padding-top: 12px;    
	border: 2px solid #529CD4;
	color: #529CD4;
}

#WelcomeSection #WelcomeContent a.two {
	margin-left: 20px;
	padding-top: 14px; 
	background-color: #529CD4;
	color: white;
}

#WelcomeSection #WelcomeContent a:hover {
	opacity: 0.2;
}

/* curve */
#WelcomeSection #Curve {
	display: block;
	height: auto !important;
	top: auto;
	bottom: 0px;
	z-index: 3;
}

#WelcomeSection.w2 #Curve {
	top: 0px;
	bottom: auto;
}






 

/******************** MISSION SECTION *********************/                                         
#MissionSection {              
     width: calc(100% - 60px); 
     height: 600px;  
     margin: 100px auto 200px;     
}

#MissionSection .col {
     display: inline-block; 
     height: 100%;
     position: relative;
     float: left;   
}

/****************/
/*** stats col ***/
/****************/

#MissionSection .col.stats {
	width: 60%;
    text-align: left;
}

/* row */
#MissionSection .col.stats .statrow {
    width: 650px;
    height: auto;
    position: absolute;
    top: calc(50% - 220px);           
    left: calc(50% - 325px); 
}

/* opening p */
#MissionSection p {
    font-size: 15px;
    font-weight: 400;    
    color: rgb(100,100,100);
} 

#MissionSection p strong {
    color: #529CD4;
}

#MissionSection p.two {
	margin-top: 20px;
}

/* inner col */
#MissionSection .col.stats .innercol {
	display: inline-block; 
	width: 33.33%; 
	height: auto;  
	padding: 30px 0px 30px 30px;  
	float: left;
	vertical-align: top; 
	text-align: left;
	line-height: 1;      
	border: 1px solid rgb(230,230,230);
}    

/* header */
#MissionSection .col.stats .innercol h2 { 
	font-size: 30px; 
	font-weight: 300; 	  
	line-height: 0.8;    
	color: #529CD4; 
}   

#MissionSection .col.stats .innercol h2 span {
    font-weight: bold;
}

/* par */ 
#MissionSection .col.stats .innercol h3 {
	margin-top: 15px;  
	word-spacing: 1px;
	font-size: 9px;  
	font-weight: bold;
	color: black;
}

/* divider */
#MissionSection .col.stats .statdivider {
    display: block;
    width: 100%;
    height: 1px;
    margin: 40px auto; 
}

/* clear float */
#MissionClearFloat {
	display: block;
	width: 100%;
	clear: both;
}
 
/****************/
/*** image col ***/
/****************/

#MissionSection .col.img {
	width: 40%;
	overflow: hidden;
	background-color: #529CD4; 
}

#MissionSection .col.img .img {
	height: calc(100% + 150px);  
	position: absolute;
	bottom: 0px;
	opacity: 0.1;
    background-image: url("../../Assets/Images/mission.png");  
    background-position-x: 70%;
}     
 
#MissionSection .col.img.mobile {
	display: none;
}







 
/******************** RESOURCE SECTION ********************/
#ResourceSection {                                                                                              
	width: 1300px;
    height: auto; 
}  

/* col */
#ResourceSection .col {
    display: inline-block;
    width: calc(25% - 4px);
    height: 300px;
    margin: 0px 2px 0px;
    position: relative;
    float: left;    
	overflow: hidden;
    cursor: pointer;   
}
 
#ResourceSection .col.c2 {
	margin-top: 50px;
}

#ResourceSection .col.c3 {
	margin-top: 100px;
}

#ResourceSection .col.c4 {
	margin-top: 150px;
}

/* overlay */
#ResourceSection .col .overlay { 
   padding-top: 40px;
   padding-left: 40px;
   padding-right: 40px;
   position: absolute;
   top: 0px;
   left: 0px;
   z-index: 99;  
   text-align: left;
   transition: 1s;
}

#ResourceSection .col.c1 .overlay { 
   background-color: rgba(82,156,212,0.25);
}

#ResourceSection .col.c2 .overlay { 
   background-color: rgba(82,156,212,0.50);
}

#ResourceSection .col.c3 .overlay { 
   background-color: rgba(82,156,212,0.75);
}

#ResourceSection .col.c4 .overlay { 
   background-color: rgba(82,156,212,1);
}

/* h1 */
#ResourceSection .col .overlay h1 {
   line-height: 1;
   font-size: 20px; 
   font-weight: bold;
   color: white;
}

/* h2 */
#ResourceSection .col .overlay h2 {
   /*
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   overflow: hidden;
   text-overflow: ellipsis;
   */
   margin-top: 20px;
   line-height: 1.1;
   font-size: 14px; 
   font-weight: 300; 
   color: black; 
}

/* btn */
#ResourceSection .col .overlay p {
   width: 80px;
   padding: 15px 0px;
   position: absolute;
   bottom: 70px;
   left: 40px;
   background-color: white;
   text-align: center;
   font-weight: bold;
   font-size: 12px;
   color: #529CD4;
}

/* hover */
#ResourceSection .col .overlay:hover {
   opacity: 0.2; 
} 

/* curve */
#ResourceSection .col img {
   width: 100%;
   height: auto;
   position: absolute;
   bottom: 0px;
   left: 0px;
   z-index: 9999;
}

/* clear float */
#ResourceSection #ResourceClearFloat {
	clear: both;
}








/******************** PRODUCTS MODAL *********************/                                     
#FSModal {                                         
    display: none;                
	width: 100%;
	height: 100vh; 
	position: fixed;
	top: 0px;
	bottom: 0px;
	left: 0px;
	right: 0px; 
    z-index: 999999999;    
	opacity: 0;
    overflow: scroll;  
    -webkit-overflow-scrolling: touch; 
    -ms-overflow-style: none;
    background-color: white;    
	transform: scale(0.95);   
	transition: 500ms;   	
} 

#FSModal::-webkit-scrollbar { 
    display: none; 
}  

/* inner */
#FSModalInner {
	width: 100%; 
	height: 100vh;  
}

/* col */  
#FSModal .col {
	display: inline-block;
	width: 50%;
	height: 100%;     
	position: relative;
	float: left;  	    
}

#FSModal .col.one {
	width: 30%;
}

#FSModal .col.two {
	width: 70%;
}

/* img overlay */
#FSModal .col.one #FSModalOverlay { 
    background-color: rgba(82,156,212,0.95);
}    

/* close */
#FSModal .col.one #FSModalOverlay #FSModalClose { 
    width: 60px;
    height: 60px;
    padding-top: 20px; 
    position: absolute;
    top: 30px;
    left: 30px; 
    cursor: pointer;
    background-color: white;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: black;
    border: 1px solid white;
    border-radius: 100%;
    transition: 500ms;
}

#FSModal .col.one #FSModalOverlay #FSModalClose:hover {
    color: white;
    background-color: transparent;
}

/* prod cont */
#FSModal .col.two .prodcont {
    width: 600px;
    position: absolute;
    left: calc(50% - 300px);
    text-align: left;
}

/* header */
#FSModal .col.two p .header {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.2;
    color: #529CD4;
}

/* overview & subhead */
#FSModal .col.two p span.subheader,
#FSModal .col.two p span.overview { 
    font-size: 14px;  
    color: black;
	font-weight: 400; 
}


#FSModal .col.two p span.subheader {
	font-weight: bold;
	padding-right: 15px;
}

/* anchor */
#FSModal .col.two p span a {
	color: black;
	text-decoration: underline;
}








/******************** PRODUCT VIDEO SECTION ********************/                                
#VideoSection {     
	margin-top: 200px;
	padding-top: 150px; 
    background-color: #D8E6F3; 
	--plyr-color-main: red; 
}

#VideoSection, #VideoInner, #VideoWrapper, #video {
	width: 100%;
	height: auto;
}

/* inner */ 
#VideoSection #VideoInner {
	width: calc(100% - 60px) !important;
	position: relative;
	background-color: black;
	border: 1px solid rgba(0,0,0,0.1);
}

/* header */
#VideoSection h2 {
	position: absolute;
	top: -95px;
	z-index: 999;
	font-size: 35px;
}

#VideoSection h2 .one {
	padding-right: 30px; 
	opacity: 0.1;
	font-weight: 300;
	color: black;
}

#VideoSection h2 strong {
	word-spacing: 5px;
	color: #529CD4;
}

/* video */
#VideoSection #VideoWrapper {
	opacity: 0.3;
}

.plyr__poster {
	background-size: cover !important;  
}

.plyr__video-wrapper {
	z-index: 0;
}








/******************** TESTIMONIALS SECTION ********************/
#TestimonialsSection {                     
	width: 100%;
	height: 900px;  
	position: relative; 
	background-color: #D8E6F3;     
}

/* layout */
#TestimonialsSection .layout { 
	height: 600px;
	width: calc(100% - 60px);
	position: absolute;
	top: 150px; 
	left: 30px;
}

/* overlay */
#TestimonialsSection #TestOverlay {
	z-index: 9; 
	border: 1px solid rgba(0,0,0,0.1);
}

/* particles */
#TestimonialsSection #TestParticles {
	z-index: 99;
	opacity: 0.5;
}

/* cont */
#TestCont {
	width: 50%;
	height: 500px;
	position: absolute;
	right: 0px;
	top: 200px;
	z-index: 999;
	border-left: 1px solid rgba(0,0,0,0.1);
}

#TestContInner {
	width: 500px;
	height: auto; 
	position: absolute;
	left: calc(50% - 250px);
}

#TestCont img {
	position: absolute;
	top: -30px;
	left: -30px;
	opacity: 0.3;
	z-index: -1; 
}

#TestCont h1 {
	font-size: 20px; 
	font-weight: 300;
	color: black;
}

#TestCont h2 {
	margin-top: 40px;  
	font-size: 24px;
	font-weight: bold;
	color: #529CD4;
}

#TestCont h3 {
	margin-top: 5px;
	font-size: 16px;
	font-weight: 300;
	color: #529CD4;
}

#TestCont #Bar {
	width: 30px;
	height: 10px;
	margin: 45px 0px 0px;
	border-radius: 15px;
	background-color: white;
}

/* controls */
#TestimonialsSection #Controls {
	width: 50%;
	height: 100%;
	position: absolute;
    top: 0px;
    left: 0px;
	z-index: 9999;
}

#TestimonialsSection .control {
	width: auto;
	height: 50px; 
	position: absolute; 
	top: calc(50% - 25px);
	left: calc(50% - 60px);
    cursor: pointer;	
	transform: rotate(-180deg);
    transition: 1s; 	  
}

#TestimonialsSection .control:hover {
	opacity: 0.2;
}

#TestimonialsSection #Controls h1 {
	position: absolute;
	left: calc(50% + 15px); 
	top: calc(50% - 7px);
	font-size: 10px;
	font-weight: bold;
	color: #529CD4;
}








/******************** FILLER SECTION *********************/                                         
#FillerSection {   
     display: none;           
     height: 600px;    
	 background-color: #529CD4; 
}

/* img */
#FillerSection .imageouter {
	height: 570px;
    width: calc(100% - 60px); 
    position: relative;
    top: 30px;
	overflow: hidden;
}

#FillerSection .imageouter .img {
	height: calc(100% + 150px);  
	position: absolute;
	bottom: 0px;
	opacity: 0.5;
    background-image: url("../../Assets/Images/mission.png");  
    background-position-x: 70%;
}     

/* logo */
#FillerSection .imageouter #Logo {
	display: block;
	width: 100px;
	height: auto;
	position: relative;
	top: calc(50% - 50px);
	z-index: 999;
}








/******************** PRODUCTS CAROUSEL SECTION ********************/                                 
#ProductsCarouselSection {                                             
    width: 100%; 
	height: 600px; 
	position: relative;     
	background-color: #D8E6F3;
}

/* col */
#ProductsCarouselSection .col {
	display: inline-block;
	height: 450px; 
	position: relative;
	float: left;
}

/* header col */
#ProductsCarouselSection #Header {  
	width: 30%;
}

/* header inner */
#ProductsCarouselSection #Header #HeaderInner {
	width: 274px;
	height: auto;
	position: absolute;
	top: calc(50% - 120px);    
	left: calc(50% - 137px); 	
	text-align: left;
}

/* h1 */
#ProductsCarouselSection #Header h1 { 
	line-height: 1;
}

#ProductsCarouselSection #Header h1 span.one {
	opacity: 0.5;
	font-size: 13px;
	font-weight: 400;    
	color: black;
}

#ProductsCarouselSection #Header h1 span.two {
	position: relative;
	left: -2px;  
	font-size: 35px;
	letter-spacing: 1px;
	color: #529CD4; 
}  

/* controls */
#ProductsCarouselSection #Header .controls { 
	width: 100%; 
	height: 25px;
	margin-top: 60px; 
}

#ProductsCarouselSection #Header .controls .control {
    display: inline-block;
	width: 25px;
    height: 25px;
	margin: 0px 7px;
	cursor: pointer;
	opacity: 0.2;
	background-color: #529CD4;
	border-radius: 100%;
	transition: 1s;    	
}

#ProductsCarouselSection #Header .controls .control.one {
	margin-left: 0px;
}

#ProductsCarouselSection #Header .controls .control:hover,
#ProductsCarouselSection #Header .controls .control.active {
    opacity: 1;
}

#ProductsCarouselSection #Header .controls .control.mobile {
	display: none;  
}

/* btn */
#ProductsCarouselSection #Header h2 {
	width: 120px;
	height: 50px;
	position: absolute;
	bottom: -12px;
	left: 150px;
	padding-top: 16px;
	cursor: pointer;
	background-color: transparent;
	text-align: center;
	font-size: 12px;
	font-weight: bold;
	color: black;
	border: 2px solid black;
	border-radius: 25px;
	transition: 1s;
}

#ProductsCarouselSection #Header h2:hover {
	opacity: 0.2;
}

/* carousel */  
#ProductsCarouselSection #ProductsCarousel {  
	width: 70%;
	overflow-x: hidden;	
	/* scroll-behavior: smooth; */
	/* cursor: pointer; */
}

/*
#ProductsCarouselSection #ProductsCarousel.dragging {
    cursor: grab;
    scroll-behavior: auto;
}
 
#ProductsCarouselSection #ProductsCarousel.dragging .prod {
    pointer-events: none;
}
*/    

/* carousel inner */
#ProductsCarouselSection #ProductsCarousel #ProductsCarouselInner {
	height: 100%; 
	position: absolute;
	top: 0px;
	left: 0px;
	transition: 1s cubic-bezier(0.87, 0, 0.13, 1); 
}

/* carousel product */
#ProductsCarouselSection #ProductsCarousel #ProductsCarouselInner .prod {
	height: 100%;
	position: absolute;
	top: 0px;
	cursor: pointer;
}

/* img */
#ProductsCarouselSection #ProductsCarousel #ProductsCarouselInner .prod .imgouter {
	width: 100%;
	height: 400px; 
	background-color: #529CD4;
}

#ProductsCarouselSection #ProductsCarousel #ProductsCarouselInner .prod img {
	object-fit: cover; 
	opacity: 0.1;
}

/* img num */
#ProductsCarouselSection #ProductsCarousel #ProductsCarouselInner .prod .imgouter h4 {
	width: 100%;
	position: absolute;
	top: calc(50% - 62px);
	left: 0px;
	z-index: 9;
	text-align: center;
	font-size: 50px;
	font-weight: bold;
	color: white;
}

/* text */ 
#ProductsCarouselSection #ProductsCarousel #ProductsCarouselInner .prod .text {
	position: absolute;
	bottom: 5px;
	font-size: 14px; 
	word-spacing: 1px;
	line-height: 1;
	color: black !important;  
}

#ProductsCarouselSection #ProductsCarousel #ProductsCarouselInner .prod h2 {
	left: 30px;
	font-weight: 300;
}

#ProductsCarouselSection #ProductsCarousel #ProductsCarouselInner .prod h3 {
	right: 30px;
	font-weight: bold;
}








/******************** FOOTER SECTION ********************/    
#FooterSection {                  
	width: 100%;     
	height: 700px; 
    position: relative;   	  
	overflow: hidden;      
}

/* col */
#FooterSection .col {
	display: inline-block;
	width: 50%;
	height: 100%; 
	position: relative;
	float: left;
}      

/* map */
#FooterSection .col #MapContainer {
	opacity: 0.3;
}

/* info inner */
#FooterSection #InfoInner {
	height: 110px;
	position: relative;
	top: calc(50% - 65px);  
}

/* social media */
#FooterSection #InfoInner #SocialMedia {
	width: 100%;
	height: 50px;
	text-align: center;
}

/* box */
#FooterSection #InfoInner #SocialMedia .box {
	display: inline-block;
	width: 50px;
	height: 50px;
	margin: 0px 5px;
	background-color: #529CD4;    
	border-radius: 100%;  
	transition: 500ms;
}

#FooterSection #InfoInner #SocialMedia .box:hover {
	transform: rotate(360deg);
	background-color: rgb(225,225,225);  
}

/* logo */
#FooterSection #InfoInner #SocialMedia .box img {
	width: 40px;
	height: 40px;
	margin-top: 5px;
}

/* content */
#FooterSection #InfoInner h2 {
	width: 100%;
	margin-top: 30px;
	text-align: center;
	line-height: 1.5;
	font-weight: bold;
	font-size: 15px;
	color: black;
}
 
#FooterSection #InfoInner h2 span {
	padding: 0px 5px;
} 

#FooterSection #InfoInner h2 span.two {
    padding: 0px !important;
    word-spacing: 1px;  
    font-size: 9px;
    font-weight: 400;
}







