
/* ----------------------------------------------------------------
     [ Start Basics ]
-----------------------------------------------------------------*/
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  outline: none;
  list-style: none;
  word-wrap: break-word;
}

.clearfix{
  clear: both;
}

@font-face {
  font-family: NevantFont;
  src: url(../font/Nevan.ttf);
}


:root {

/*  --fontprimary: 'Maven Pro', sans-serif;*/
/*  --fontsecondary: NevantFont;*/

/*  --fontprimary: 'Figtree', sans-serif;*/
  --fontprimary: 'Plus Jakarta Sans', sans-serif;
  --fontsecondary: 'Plus Jakarta Sans', sans-serif;
  --fontfuturistic: NevantFont;

  --colorwhite: #FFFFFF;
  --colorblack: #000000;
  --colorlightgrey: #e0e3e8;
  --colormediumgrey: #777777;
  --colordarkgrey: #222222;

  --coloraccent:#0098ef;
  --coloraccent2:#ff6e00;
  --coloryellow:#ffc342;


  --bgwhite: #FFFFFF;
  --bgblack: #000000;
  --bglightgrey: #e0e3e8;
  --bgmediumgrey: #777777;
  --bgdarkgrey: #222222;

  --bgaccent: #0098ef;
  --bgaccentdark: #000000;
  --bgyellow:#ffc342;

}

html{
  min-height: 100%;
}

body {
  color: var(--colorwhite);
  line-height: 1.7;
  font-weight: 300;
  font-size: 15px;
  background: var(--bglightgrey);
  font-family: var(--fontprimary);
  overflow: overlay;
  overflow-x: hidden !important;
  height: 100%;
  background: var(--bgaccentdark);
}

p , li {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.7;
  margin: 0;
}

p span{
  font-weight: bold;
}

img {
  width: 100%;
  height: auto;
}

a {
  display: inline-block;
  text-decoration: none;
  color: inherit;
}

a:hover {
  color: inherit;
  text-decoration: none;
}

h1{
  font-size: 130px;
  font-family: var(--fontsecondary);
  font-weight: 800;
  text-transform: uppercase;
  line-height: 80%;
  letter-spacing: -2px;
}

h2{
  font-size: 40px;
  font-weight: 500;
}

h2 span{
  font-weight: 500;
}

h3{
  font-size: 40px;
  font-weight: 500;
}


.container{
  position: relative;
  width: 100%;
  max-width: 1200px;
  padding: 0 15px;
  margin-right: auto;
  margin-left: auto;
}

.pos-re {
  position: relative;
  padding: 10vw 0px;
}


/* ----------------------------------------------------------------
     [ End Basics ]
-----------------------------------------------------------------*/


/* ----------------------------------------------------------------
     [ Start Buttons ]
-----------------------------------------------------------------*/
.butn-container{
  position: relative;
}

.butn, .butn-blank {
  font-size: 16px;
  font-weight: 300;
  text-align: center;
  padding: 10px 30px;
  color: var(--colorwhite)!important;
  border: 1px solid;
  border-color: var(--bgaccent);
  border-radius: 0px;
  position: relative;
  cursor: pointer;
  outline: none !important;
  overflow: hidden;
  letter-spacing: 2px;
  /*text-transform: uppercase;*/
  font-weight: 500;
}

.butn:hover{
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  letter-spacing: 0px;
  border-radius: 0px;
}


/* ----------------------------------------------------------------
     [ End Buttons ]
-----------------------------------------------------------------*/



/* ----------------------------------------------------------------
     [ Start Navbar ]
-----------------------------------------------------------------*/

.logo {
  width: 100%;
  max-width: 50px;
  z-index: 20;
  font-size: 40px;
  position: fixed;
  left:10px;
  -webkit-filter: drop-shadow(0px 0px 8px rgba(35,147, 248, 0));
   filter: drop-shadow(0px 0px 8px rgba(35,147, 248, 0));
}

.logo:hover {
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
  -webkit-filter: drop-shadow(0px 0px 8px rgba(35,147, 248, 1)) hue-rotate(175deg);
   filter: drop-shadow(0px 0px 8px rgba(35,147, 248, 1)) hue-rotate(175deg);
}

.navbar {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100px;
  border: 0;
  z-index: 9;
  min-height: 50px;
  padding: 15px 0px;
}

.hamburger-img{
  z-index: 70;
}
.hamburger-img:hover{
  transform: scale(0.9);
}

.navi_icon{
  width: 50px;
  padding: 5px;
  background: var(--bgaccent);
  border-radius: 50px;
  display: block;
  margin:0 auto;
}

.hamburger{
  width: 76px;
  height: 76px;
  position: fixed;
  right:20px;
  cursor: pointer;
  z-index: 20;
  transform: scale(0.5) translateX(35px);
  background: var(--bgblack);
}

.hamburger.active{
  transform: scale(0.5) translateX(35px);
}


/*hamburger anim*/

.hamburger span:before, .hamburger span:after {
  cursor: pointer;
  border-radius: 1px;
  height: 3px;
  width: 70px;
  background: var(--bgwhite);
  position: absolute;
  display: inline-block;
  content: '';
  margin:auto;
  top:0;
  bottom: 0;
  left: 0;
  right: 0;
}
.hamburger span:before {
  top: -30px; 
}
.hamburger span:after {
  bottom: -30px;
}

.hamburger span, .hamburger span:before, .hamburger span:after {
-webkit-transition: all 300ms cubic-bezier(0.645, 0.045, 0.355, 1.000); 
   -moz-transition: all 300ms cubic-bezier(0.645, 0.045, 0.355, 1.000); 
     -o-transition: all 300ms cubic-bezier(0.645, 0.045, 0.355, 1.000); 
        transition: all 300ms cubic-bezier(0.645, 0.045, 0.355, 1.000); 
}

.nav-item, .nav-item:before, .nav-item:after {
-webkit-transition: all 300ms cubic-bezier(1.000, 1.000, 1.000, 1.000); 
   -moz-transition: all 300ms cubic-bezier(1.000, 1.000, 1.000, 1.000); 
     -o-transition: all 300ms cubic-bezier(1.000, 1.000, 1.000, 1.000); 
        transition: all 300ms cubic-bezier(1.000, 1.000, 1.000, 1.000); 
}

.hamburger.active span:before, .hamburger.active span:after {
  top: 0;
}
.hamburger.active span:before {
  transform: rotate(45deg);
}
.hamburger.active span:after {
  transform: translateY(-30px) rotate(-45deg);
  top: 30px;
}

/* The Overlay (background) */
.overlay {
  height: 100%;
  width: 0;
  position: fixed;
  z-index:99;
  right: 0;
  top: 0;
  overflow-x: hidden;
  transition: 0.3s;
}

.overlay-bg{
  position: absolute;
  top:0;
  right: 0;
  width: 100%;
  /*max-width: 767px;*/
  height: 100%;
  opacity: .9;
  background: var(--bgaccentdark);
  /*background: -moz-linear-gradient(100deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 70%);
  background: -webkit-linear-gradient(100deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 70%);
  background: linear-gradient(100deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 70%);*/
}

.overlay-content {
  position: relative;
  top: 10%;
  width: 100%;
  text-align: right;
  margin-top: 25px;
  padding-right: 20px;
}

.overlay a {
  padding: 10px 8px;
  text-decoration: none;
  font-size: 15px;
  letter-spacing:2px;
  text-transform: uppercase;
  color: white;
  display: block;
  transition: 0.3s;
}

.overlay a:hover, .overlay a:focus {
  color: var(--coloraccent2);
}

/* Position the close button */
.overlay .closebtn {
  position: absolute;
  top: 0px;
  right: 20px;
  font-size: 0px;
  line-height: 100%;
  font-weight: 100;
  background: url(../img/navi_dots_close.png) repeat;
  width: 76px;
  height: 76px;
  cursor: pointer;
  transform: scale(0.5) translateX(35px);
  animation: glowing 2s linear infinite;
}

/*make navimenu center opening*/
.overlay .closebtn{
  transform: scale(0.4);
  margin:auto;
  left:0;
  right:0px;
}
.overlay-content{
  text-align: center;
  padding-right: 0px;
}

/* ----------------------------------------------------------------
     [ End Navbar ]
-----------------------------------------------------------------*/

/* ----------------------------------------------------------------
     [ start scrollbar ]
-----------------------------------------------------------------*/

/* width */
::-webkit-scrollbar {
  width: 7px;
  background: transparent;
}

/* Track */
::-webkit-scrollbar-track {
  background: transparent;
  padding: 1px;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background:var(--bgaccent);
  border-radius: 0px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: var(--bgaccent);
}

/* ----------------------------------------------------------------
     [ End scrollbar ]
-----------------------------------------------------------------*/



/* ----------------------------------------------------------------
     [ Start Home ]
-----------------------------------------------------------------*/

.home {
  position: relative;
  margin:0 auto;
  height: 100vh;
  width: auto;
  z-index:0;
  overflow: hidden;
  background: url(../img/home_bg_webite.jpg) center center no-repeat;
  background-size:cover;
}

.grid{
  width: 2px;
  height: 2px;
  position: fixed;
  width: auto;
  height: 100%;
  left: 0;
  right: 0;
  margin:auto;
  background: url(../img/grid-white.png) repeat;
/*  background: url(../img/grid.png) repeat;*/
  z-index: 0;
}

/*glowtxt*/

.glowtxt {
  --blur: 5;
  position:relative;
  display:flex;
  flex-direction:row;
  justify-content:center;
  width: 100%;
  overflow: hidden;
}
.blurred-wrapper {
  position: absolute;
  margin:auto;
  left:0;
  right:0;
  filter: blur(1rem);
  transform: scale(
    var(--blur),
    0.001
  )
}
.blurred {
  font-family: var(--fontsecondary);
  transform: scale(
    calc( 1/var(--blur) ),
    1000
  ) 
}
#header-primary{
  font-family: var(--fontfuturistic);
  color:hsl(200,100%,80%);
  font-size:45px;
  line-height:170%;
  padding: 10px;
  top:32vh;
  letter-spacing: 5vw;
  text-align: center;
  text-shadow: 0 0 2px #555, 0 0 5px #FFF, 0 0 15px #0098ef, 0 0 45px #0098ef, 0 0 55px #0098ef, 2px 2px 2px rgba(0,166,239,0);
  z-index: 3;
}

#header-primary>.still{
  color:white;
}

#header-secondary{
  font-family: var(--fontprimary);
  text-transform: uppercase;
  /*color:hsl(200,100%,80%);*/
  font-size: 20px;
  font-weight: 600;
  line-height:110%;
  padding: 2px;
  top:32vh;
  letter-spacing: 0.3vw;
  text-align: center;
  text-shadow: 0 0 0px #fff, 0 0 5px #fff, 1px 1px 1px rgba(255,255,255,0);
  z-index: 3;
}

#header-secondary>.still{
  color:white;
}
#header-secondary .blurred{
  opacity: 0;
}

/*end glowtxt*/


#header-secondary .blurred:hover{
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
  opacity: .4;
  transform: scale(
    calc( 4/var(--blur) ),
    1000
  ) 
}

.home .butn {
  width: 300px;
  background:transparent;
  border-color:var(--colorwhite);
}

.logo_home{
  width:100%;
  max-width: 700px;
  -webkit-filter: drop-shadow(0px 0px 0px rgba(35,147, 248, 1));
   filter: drop-shadow(0px 0px 0px rgba(35,147, 248, 1));
}

.logo_home:hover{
   -webkit-transition: all 0.8s;
  transition: all 0.8s;
  width:100%;
  max-width: 700px;
  -webkit-filter: drop-shadow(0px 0px 25px rgba(35,147, 248, 1));
   filter: drop-shadow(0px 0px 25px rgba(35,147, 248, 1));
}

.gradient_bottom{
  position: absolute;
  bottom: -2px;
  left:0;
  right:0;
  margin:auto;
  width: 100%;
  height: 250px;
  background: rgb(255,255,255);
  background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 85%);
}


/* ----------------------------------------------------------------
     [ End Home ]
-----------------------------------------------------------------*/


/* ----------------------------------------------------------------
     [ Start intro ]
-----------------------------------------------------------------*/

.intro h1{
  text-align: left;
}

.intro h2{
  text-transform: uppercase;
  padding-top: 30px;
  font-weight: 200;
}

.texthilite{
  color: var(--coloraccent);
}

.introimg_container{
  position: relative;
  margin:0 auto;
  width: 100%;
  max-width: 700px;
}

.introimg_container .txt-display-container{
  width: 100%;
  position:absolute;
  top:-100px; 
  left:0;
  right:0;
  margin:auto;
  opacity:0.4;
  overflow: hidden;
  transform: scale(0.6);
}



/* ----------------------------------------------------------------
     [ End intro ]
-----------------------------------------------------------------*/


/* ----------------------------------------------------------------
     [ Start contentdistribute ]
-----------------------------------------------------------------*/

.contentdistribute h2{
  text-transform: uppercase;
}

.contentdistribute{
  position: relative;
  background: #334255;
  color: #fff;
  text-align: center;
}

.contentbox{
  padding: 10px;
}

.contentboxinner{
  padding: 25px;
  background: var(--bgaccent);
  min-height: 210px;
}

.iconcontent{
  width:100%;
  max-width: 50px;
  margin-bottom: 20px;
}

/* ----------------------------------------------------------------
     [ End contentdistribute ]
-----------------------------------------------------------------*/




/* ----------------------------------------------------------------
     [ Start media ]
-----------------------------------------------------------------*/

.media h2{
  text-transform: uppercase;
}

.compliance{
  border:1px solid #333;
  padding: 35px;
  background: #111;
  max-width: 1200px;
  margin:0 auto;
}

/* ----------------------------------------------------------------
     [ End media ]
-----------------------------------------------------------------*/



/* ----------------------------------------------------------------
     [ Start faq ]
-----------------------------------------------------------------*/

.faq.pos-re{
  padding-top:7vw;
}


.faq{
  text-align: center;
  position: relative;
  margin:0 auto;
  width: 100%;
  z-index:0;
  overflow: hidden;
  background: url(../img/faq_bg.jpg) center center no-repeat;
  background-size:cover;
}
.cs_woman{
  max-width: 120px;
  margin-bottom: 10px;
}

.collapsible {
  background-color: var(--bgdarkgrey);
  color: white;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-weight: 600;
}

.faq .active, .collapsible:hover {
  background-color: var(--bgaccent);
}

.collapsible:after {
  content: '\002B';
  color: white;
  font-weight: bold;
  float: right;
  margin-left: 5px;
}

.faq .active:after {
  content: "\2212";
}

.content {
  padding: 0 18px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
  background-color: var(--bgprimary);
  margin-bottom:10px;
}
.content p{
  padding:10px 0px;
  font-size: 14px;
  font-weight: 200;
  text-align: left;
}


/* ----------------------------------------------------------------
     [ End faq ]
-----------------------------------------------------------------*/



/* ----------------------------------------------------------------
     [ Start Contact ]
-----------------------------------------------------------------*/


.contact h1, .contact p{
  text-align: center;
  color: var(--colorwhite);
}
.contact h1 span{
  display: none;
}

.contactbtn{
  background: var(--bgaccent);
  padding: 10px;
  font-size:20px;
}

.inputfield-container, .contactbtn{
  position: relative;
  margin:0 auto;
  width: 100%;
  max-width: 600px;
}

.inputfield{
  padding: 30px;
  height: 60px;
  border-radius: 0px;
  background: #f9f9f9;
  border-radius: 0px;
}
.inputtext{
  padding: 30px;
  margin:0 auto;
  width: 100%;
  max-width: 600px;
  background: #f9f9f9;
  border: 1px solid #bbb;
  border-radius: 0px;
}

select,
input[type="text"],
input[type="tel"],
input[type="email"] {
  margin: 0 auto;
  width: 100%;
  border: 1px solid #bbb;
  text-indent: 0px;
}

select{height: 32px;}
input[type="text"],
input[type="tel"],
input[type="email"] {
  font-size: 17px;
  line-height: 100%
}

select.invalid,
input[type="text"].invalid,
input[type="tel"].invalid,
input[type="email"].invalid {
  border: 1px solid red;
}


input[type=checkbox]
{
  -ms-transform: scale(1.5); /* IE */
  -moz-transform: scale(1.5); /* FF */
  -webkit-transform: scale(1.5); /* Safari and Chrome */
  -o-transform: scale(1.5); /* Opera */
  transform: scale(1.5);
  padding: 7px;
}

.checkboxtext
{
  font-size: 110%;
  display: inline;
}

#checkbox {
  border: 0px;
  float: left;
  margin-right:10px;
}

.errortext{
  color: #ffffff;
  background: red;
  font-size: 12px;
  position: absolute;
  padding: 0px 10px;
  display: none;
}
.messagesent{
  color: #ffffff;
  background:green;
  font-size: 12px;
  position: absolute;
  padding: 0px 10px;
  margin-top:10px;
  display: none;
}

.copyright{
  text-align: center;
  margin:0 auto;
  color:var(--colorwhite);
  padding:50px 0px;
  font-size: 10px;
  letter-spacing: 1px;
  margin-top:100px;
}

.navi_footer{
  text-align: center;
  margin:0 auto;
  padding: 10px 8px;
  text-decoration: none;
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  line-height:300%;
}

.copyright a{
  padding: 0px 10px;
}

.copyright a:hover {
  color: var(--coloraccent2);
}


/* ==========================================================================
   Placeholders
   ========================================================================== */
::-webkit-input-placeholder {font-weight: normal;color:#777;}
::-moz-placeholder {font-weight: normal;color:#777;}
:-moz-placeholder {font-weight: normal;color:#777;}
input:-moz-placeholder{font-weight: normal;color:#777;}
:-ms-input-placeholder {font-weight: normal;color:#777;}
input:-ms-input-placeholder{font-weight: normal;color:#777;}
input.address:-ms-input-placeholder{font-weight: normal;color:#777;}



/* ----------------------------------------------------------------
     [ End Contact ]
-----------------------------------------------------------------*/



/* ----------------------------------------------------------------
     [ Start terms ]
-----------------------------------------------------------------*/

.terms.pos-re{
  padding-top: 10vw;
}

.terms p, .terms li{
  font-weight: 100;
}

.termstext{
  margin:0 auto;
  max-width: 1000px;
}
ul.bulletpoint{
  position: relative;
}
ul.bulletpoint>li{
  display: list-item;
  position: relative;
  padding:0 20px;
}
ul.bulletpoint>li:before{
  content: "• ";
  display: list-item;
  position: absolute;
  margin-left:-20px;
}

/* ----------------------------------------------------------------
     [ End terms ]
-----------------------------------------------------------------*/



/* ----------------------------------------------------------------
     [ Start Preloader ]
-----------------------------------------------------------------*/

.preloader-wrap {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0; 
  bottom: 0;
  background: var(--bgdarkgrey);
  z-index : 999; 
}

.percentage {
  z-index: 100;
  text-align:center;
  color: var(--colorwhite);
  line-height: 30px;
  font-size : 15px;
}

.loader,
.percentage{
  height: 3px;
  max-width: 200px; 
  border:none;
  border-radius: 20px;
  font-weight: 300;
  position: absolute; 
  top: 0; 
  bottom: 0; 
  left: 0; 
  right: 0;
  margin : auto; 
}
.loader:after,
.percentage:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.trackbar {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  color: #fff;
  text-align: center;
  line-height: 30px;
  overflow: hidden;
  position: relative;
  opacity: 0.99;
}

.loadbar {
  width: 0%;
  height: 100%;
  background:var(--bgaccent);
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.logo-preloader-container{
  position: absolute;
  margin:auto;
  top: 0;
  bottom:0;
  left: 0;
  right:0;
  width: 200px;
  height:380px;
  padding-bottom:200px;
}

.logo-preloader{
  position: absolute;
  margin:auto;
  top: 5px;
  bottom:0;
  left: -10px;
  right:0;
  width: 110px;
  padding-bottom:200px;
}


/* ----------------------------------------------------------------
     [ End Preloader ]
-----------------------------------------------------------------*/



/* ----------------------------------------------------------------
   [ Responsive ]
-----------------------------------------------------------------*/


@media screen and (min-width: 1200px) {

  .container {
    max-width: 1200px;
  }
  .intro h1{
    font-size: 105px;
  }
  .contact h1{
    font-size: 120px;
  }
}

@media screen and (max-width: 1199px) {
  canvas{
    display: none;
  }
  h1{
    font-size: 105px;
  }
}


@media screen and (max-width: 991px) {

  h1{
    font-size: 65px;
  }
  h2{
    font-size: 30px;
  }
  
  /*kill hover state animation on mobile device screensize range*/
  .icon-arrow svg:hover,
  .butn:hover:after,.butn-blank:hover:after,
  .tab:hover:after,
  .hamburger:hover:after
  {
    pointer-events:none;
    animation:none;
  }

  .intro-bg{
    height: 50vh;
  }
  .intro h1{
    text-align: center;
  }

  .intro h2{
    padding-top: 0px;
    text-align: center;
    width: 100%;
  }
  .intro p{
    text-align: center;
  }

}



@media screen and (max-width: 767px) {

  .home .container{
    padding-top:10vh;
  }

  .intro.pos-re{
    padding-top: 35vw;
  }

  .intro h1{
    font-size: 80px;
  }

  .introtext{
    text-align: center;
  }

  .introimg_container .txt-display-container{
    transform: scale(0.4);
    top:-200px;
    right:-100px;
  }

  .contact.pos-re{
    padding-top:15vw;
  }
  .connect_us_container{
    padding-top: 0vw;
  }
  .connect_container{
    display: none;
  }
  .contact h1 span{
    display: block;
  }

  .terms.pos-re{
    padding-top: 25vw;
  }
  .terms h1{
    font-size: 50px;
  }
}

@media screen and (min-width: 768px) {

}


@media only screen and (min-width: 992px) {

  p , li{
    font-size: 15px;
  }
}

@media screen and (max-width: 1440px) {


}

@media screen and (max-width: 480px) {

  .hamburger{
    padding:10px;
    right:10px;
  }
  .hamburger span:before, .hamburger span:after {
    width: 60px;
  }
  .hamburger span:before{
    top:0px;
  }
  .overlay .closebtn{
    transform: scale(0.4);
    margin:auto;
    left:0;
    right:0px;
  }
  .overlay-content{
    text-align: center;
    padding-right: 0px;
  }

  .navi_icon{
    width: 38px;
  }

  .home{
    width: 100%;
  }

  h1{
    font-size: 50px;
  }
  h2{
    font-size: 25px;
  }

  .intro h1{
    font-size: 50px;
  }

}

@media screen and (min-width: 1600px) {

  .container {
    max-width: 1440px;
  }
  .intro h1{
    font-size: 120px;
  }
}

@media screen and (max-width: 1600px) {


}

@media screen and (max-width: 1900px) {


}


