@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700;900&family=Source+Serif+Pro:wght@400;700&display=swap');

.portrait {display:none;}
#anuncio {display:none;}
.landscape {display:blok;width:100%;height:100vh;overflow: hidden;}
.bgGiro {width:100%;height:100%;background: url(../img/bg_giro.svg) no-repeat center center; background-size: auto 80%;}
#rotar { -webkit-user-select:none;position:absolute;transition-property:opacity; transition:opacity 1500ms ease-in-out;overflow:hidden;width:30%;top:25%;left:35%;animation: animacion_giro 2500ms ease-in-out 1 forwards;}
@keyframes animacion_giro {0% {transform: rotate3d(0,0,1,0deg);} 20% {transform: rotate3d(0,0,1,-15deg);} 65% {transform: rotate3d(0,0,1,110deg);} 100% {transform: rotate3d(0,0,1,90deg);} }

#anuncio {position:fixed;top:0;left:0;width:100%;height:100vh;background-color: #fff;padding-top: 45%;z-index:999999999999999999999999999999999999;}

.fontLight {font-weight: 300 !important;}
.smallfont {font-size:0.85em !important;}
.bigfont {font-size:1.6em !important;}
.fontMontserrat {font-family: 'Montserrat', sans-serif !important;}

video.videoHome {background-size: cover;top: 0;height: auto;min-width: 100%;min-height: 100%;position: relative;left: 0;width: auto;z-index: -100;}

[onClick] {cursor: pointer !important}

.morado {color: #2f305b !important;}
.white {color: #fff !important;}
.gris {color: #c5c2bb !important;}



.bgMorado {background-color: #2f305b !important;}
.bgGris {background-color: #c5c2bb !important;}
.bgWhite {background-color: #fff !important;}

p {
  font-weight: 400;}

h1 {
  font-weight: 700;  	
  font-size: 55px; }

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

h3 {
  font-weight: 700;  	
  font-size: 32px;
  line-height: 1.2;}

h4 {
  font-weight: 400;	
  font-size: 32px;}

h5 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;}

h6 {
  font-weight: 400;  
  font-size: 24px;}

strong {
	font-weight: 700;
}

a {
  cursor: pointer !important;
  color: #2f305b;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-transition-duration: 200ms;
  transition-duration: 200ms;
  -webkit-transition-property: color, border-color, background-color;
  transition-property: color, border-color, background-color; }

a:hover, a:focus {
  color: #2f305b;
  text-decoration: none; }

.btn-outline {
  font-size: 18px;
  border: solid 1px #c5c2bb;
  display: inline-block;
  text-transform: uppercase;
  font-family: 'Montserrat';
  background: transparent;	
  color: #c5c2bb;
  text-align:center;
  border-radius:26px;
  transition: all .3s ease;
  padding: 10px 30px;}

.btn-outline:hover {background: #c5c2bb;color:#2f305b !important;}  

.btn-casos {
    position: relative;
    display: inline-block;
    text-transform: uppercase;
    padding: 20px 35px 20px 35px !important;
    background-color: transparent;
    color: #7a7b80;
    border: 2px solid #c5c2c2;
    transition: all .3s ease 0s;
    margin-top: 20px;
    margin-right: 20px;
    font-size: 14px!important;
    text-align: center;
}

.btn-casos:hover {
    color: #fff;
    background: #333;
    border-color: #333;
}

.btn-circle {
    width: 80px;
    height: 80px;
    border: 2px solid #c5c2c2;
    border-radius: 50%;
    background-size: 90% auto;
    transition: all .3s ease 0s;
    display: inline-block;
}

.soundOn {background: url('../img/icon-play.svg') no-repeat center center;}
.soundOff {background: url('../img/icon-stop.svg') no-repeat center center;display: none;}
.btn-circle:hover {background-color: rgba(0,0,0,.75);}
.modal.show {display:flex!important;flex-direction:column;justify-content:center;align-content:center;align-items: flex-start;}
.modal {z-index: 99999999999999 !important;}
.modal-dialog {width: 90%;}
.modal-content {background-color: rgba(0,0,0,0.8);border: none;}
.modal-header {padding: 0.25rem 1rem;border-bottom: none;}

/* ==========================================================================
Global Styles
========================================================================== */
.group:after {
  content: "";
  display: table;
  clear: both; }

.no-padding {
  padding: 0; }

.no-margin {
  margin: 0; }


body {
  font-family: 'Source Serif Pro', serif;
  color: #c5c2bb;
  font-weight: 400;
  -webkit-text-size-adjust: 100%; }

ul, ol {
  margin: 0;
  padding: 0; }

ul li {
  list-style: none; }

.bounceInLeft, .bounceInRight, .fadeInUp, .fadeInUpDelay, .fadeInDown, .fadeInUpD, .fadeInLeft, .fadeInRight, .bounceInDown {
  visibility: visible; }

/* ==========================================================================
Hero
========================================================================== */
.video-intro {
  height: 100vh;
  width: 100%;
  position: fixed;
  top:0;left:0%;overflow: hidden;z-index:-1;}

.video-intro video{background-size: cover;top:50%;height: auto;min-width: 100%;min-height: 100%;position: relative;left:50%;width: auto;z-index: -100;transform: translate(-50%,-50%);}

.video-intro .overlay {
  position: absolute;
  top:0; left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1;}

.video-intro .gradientOverlay {
  position: absolute;
  top:0; left: 0;
  width: 100%;
  height: 100%;
  background: rgba(47,48,91,1);
  background: -moz-linear-gradient(top, rgba(47,48,91,1) 0%, rgba(47,48,91,1) 25%, rgba(0,0,0,0.3) 100%);
  background: -webkit-linear-gradient(top, rgba(47,48,91,1) 0%, rgba(47,48,91,1) 25%, rgba(0,0,0,0.3) 100%);
  background: -o-linear-gradient(top, rgba(47,48,91,1) 0%, rgba(47,48,91,1) 25%, rgba(0,0,0,0.3) 100%);
  background: -ms-linear-gradient(top, rgba(47,48,91,1) 0%, rgba(47,48,91,1) 25%, rgba(0,0,0,0.3) 100%);
  background: linear-gradient(to bottom, rgba(47,48,91,1) 0%, rgba(47,48,91,1) 25%, rgba(0,0,0,0.3) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2f305b', endColorstr='#000000', GradientType=0 );
  z-index: 2;}  
  
  .video-intro .gradientOverlay2 {
    position: absolute;
    top:0; left: 0;
    width: 100%;
    height: 100%;
    background: rgba(47,48,91,0.8);
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.7) 0%, rgba(47,48,91,0.8) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.7) 0%, rgba(47,48,91,0.8) 100%);
    background: -o-linear-gradient(top, rgba(0, 0, 0, 0.7) 0%, rgba(47,48,91,0.8) 100%);
    background: -ms-linear-gradient(top, rgba(0, 0, 0, 0.7) 0%, rgba(47,48,91,0.8) 100%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7) 0%, rgba(47,48,91,0.8) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#2f305b', GradientType=0 );
    z-index: 2;} 

.hero {
    height: 100vh;
    position: relative;
    overflow: hidden;}
.hero .bgHome {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url("../img/hero.jpg") center center;
    background-size: cover;
    -webkit-animation-name: 'agrandar';	-webkit-animation-duration: 25s;-webkit-animation-iteration-count: infinite;-webkit-animation-timing-function: ease-in-out;
    -moz-animation-name: 'agrandar';-moz-animation-duration:25s;-moz-animation-iteration-count: infinite;-moz-animation-timing-function: ease-in-out;
    animation-name: 'agrandar';animation-duration:25s;animation-iteration-count: infinite;animation-timing-function: ease-in-out;
    overflow: hidden;}
.hero h1 {
    font-size: 100px;
    }
.hero p.intro {
    font-size: 36px;
    line-height: 1.2;
    font-weight: 400;
    margin-bottom: 30px; }
.hero .hero-content {position:absolute;top:50%;left:0%;width:100%;-webkit-transform: translateY(-50%);-moz-transform: translateY(-50%);transform: translateY(-50%);z-index: 99;}
.hero .hero-content img {width: 300px;}


/* ==========================================================================
Sign up form
========================================================================== */
.sign-up .signup-form .sign-up-btn {
  padding: 15px 0;
  border-radius: 3px;
  width: 80%;
  font-size: 13px; }
.sign-up .signup-form .form-input-group {
  width: 80%;
  height: 55px;
  margin: 0 auto 10px;
  border-radius: 5px;
  border: solid 1px #E6E9EA;
  text-align: left;
  position: relative; }
  .sign-up .signup-form .form-input-group i {
    color: #2f305b;
    font-size: 14px; }
  .sign-up .signup-form .form-input-group i:after {
    content: "";
    height: 30px;
    width: 1px;
    border-right: solid 1px #E6E9EA;
    position: absolute;
    top: 50%;
    left: 30px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .sign-up .signup-form .form-input-group i.fa-comments, .sign-up .signup-form .form-input-group i.fa-user, .sign-up .signup-form .form-input-group i.fa-building, .sign-up .signup-form .form-input-group i.fa-paperclip, .sign-up .signup-form .form-input-group i.fa-envelope, .sign-up .signup-form .form-input-group i.fa-phone,.sign-up .signup-form .form-input-group i.fa-address-card {
    font-size: 18px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    margin-left: 20px; }
  .sign-up .signup-form .form-input-group input {
    padding-left: 68px;
    width: 100%;
    height: 100%;
    border-radius: 6px;
    border: none; }
  .sign-up .signup-form .form-input-group input::-webkit-input-placeholder {
    color: #BCC1C3; }
  .sign-up .signup-form .form-input-group input:-moz-placeholder {
    color: #BCC1C3; }
  .sign-up .signup-form .form-input-group input::-moz-placeholder {
    color: #BCC1C3; }
  .sign-up .signup-form .form-input-group input:-ms-input-placeholder {
    color: #BCC1C3; }

.sign-up h4 {
	font-family: 'BioRhyme', serif;  
    font-weight: 400; 
	padding:30px 30px 15px 30px;
	color: #2f305b; }

.g-recaptcha {display: inline-block !important;margin: 30px auto;}


#back-to-top {bottom: 16px;right: 16px;background-color: #c5c2bb;width: 50px;height: 50px;z-index: 99;position: fixed;display: none;}
#back-to-top i {display: inline-block;box-sizing: border-box;cursor: pointer;line-height: 50px;color: #2f305b;width: 50px;height: 50px;text-align: center;font-size: 18px;}
#back-to-top.active {display: block;}

/* ==========================================================================
Footer
========================================================================== */
footer {
  background-color: #2f305b;
  position: relative; }
footer p {
    color: #ACB1B4;
    font-size: 13px; }
footer i {
   margin-right: 10px;	
   font-size: 24px !important;  	
   color: rgba(255,255,255,0.3);}
  footer a:hover i{
    color: #FFF;}
  footer a {
    font-size: 16px;
    color: rgba(255,255,255,0.3);}
  footer a:hover {
    color: #FFF;
    text-decoration: underline; }

/** NAVIGATION **/
.header-content {display: table;width:100%; }
.header-nav.open {visibility: visible;opacity: 1;transition: all 0.5s ease;transform: translateX(0%);}
.logo {float:left;display: table-cell;vertical-align: middle;}
.logo img {width:200px;display:block;margin: 10px 0 0 10px;transition: all 300ms ease;}
.navigation {-webkit-transition: all 300ms ease-in-out;transition: all 300ms ease-in-out;position: fixed !important;background-color: transparent;    width: 100%;z-index: 999;top:0;}
.navigationActive {-webkit-transition: all 300ms ease-in-out;transition: all 300ms ease-in-out;background-color: #fff;    -webkit-box-shadow: 0px 2px 92px 0px rgba(0, 0, 0, 0.4);-moz-box-shadow: 0px 2px 92px 0px rgba(0, 0, 0, 0.4);box-shadow: 0px 2px 92px 0px rgba(0, 0, 0, 0.4);padding-bottom: 20px;}
header {padding: 0;position: relative;width: 100%;margin: 0 auto;-webkit-transition: padding 300ms ease-in-out;transition: padding 300ms ease-in-out; }
header a {color: #fff;font-size: 13px; }
header a.login {margin-right: 20px; }
header .logo {display: inline-block; }
header ul.primary-nav {margin: 0 0 0 75px;padding: 0; }
header ul.primary-nav li {display: inline;padding-right: 25px;cursor:pointer !important;}
header ul.primary-nav li a {color: #fff;}
header ul.primary-nav li a:hover {color: #cfde00 !important;border-bottom:2px solid #cfde00 !important;padding-bottom:6px;}
header ul.primary-nav li:last-child a {padding-right: 0px; }
header ul.member-actions li {display: inline; }
header ul.member-actions li a {color: #fff; }
header .header-nav {display: table-cell;vertical-align: middle;}
header .member-actions {position: absolute;right: 25px;top: 14px;opacity:1;-webkit-transition: all 300ms ease-in-out;transition: all 300ms ease-in-out; }
.fixed {position: fixed;z-index: 999999999999999999999;/*background-color: #2f305b;width: 100%;*/}

.navicon {visibility:hidden;-webkit-transition: all 300ms ease-in-out;transition: all 300ms ease-in-out;}
.nav-toggle {cursor: pointer;width: 30px;height: 25px;margin: auto;position: absolute;right: 30px;top: 0;bottom: 0;}
.nav-toggle i {background-color: #c5c2bb;border-radius: 2px;content: '';display: block;width: 100%;height: 4px;}
.nav-toggle i:nth-child(1) {-webkit-animation: outT 0.8s backwards;animation: outT 0.8s backwards;-webkit-animation-direction: reverse;animation-direction: reverse;}
.nav-toggle i:nth-child(2) {margin: 5px 0;-webkit-animation: outM 0.8s backwards;animation: outM 0.8s backwards;-webkit-animation-direction: reverse;animation-direction: reverse;}
.nav-toggle i:nth-child(3) {-webkit-animation: outBtm 0.8s backwards;animation: outBtm 0.8s backwards;-webkit-animation-direction: reverse;animation-direction: reverse;}
.nav-toggle.active.fixed i:nth-child(1) {-webkit-animation: inT 0.8s forwards;animation: inT 0.8s forwards;background-color: #2f305b;}
.nav-toggle.active i:nth-child(2) {-webkit-animation: inM 0.8s forwards;animation: inM 0.8s forwards;background-color:#2f305b;}
.nav-toggle.active i:nth-child(3) {-webkit-animation: inBtm 0.8s forwards;animation: inBtm 0.8s forwards;background-color:#2f305b;}


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

}

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

.navTrigger {
  display: none;
}

.nav {
  padding-top: 20px;
  padding-bottom: 20px;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}


/* Media qurey section */

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .container {
      margin: 0;
  }
}

@media screen and (max-width:768px) {
  .navTrigger {
      display: block;
  }
  .nav div.logo {
      margin-left: 15px;
  }
  .nav div.main_list {
      width: 100%;
      height: 0;
      overflow: hidden;
  }
  .nav div.show_list {
      height: auto;
      display: none;
  }
  .nav div.main_list ul {
      flex-direction: column;
      width: 100%;
      height: 100vh;
      right: 0;
      left: 0;
      bottom: 0;
      background-color: #111;
      /*same background color of navbar*/
      background-position: center top;
  }
  .nav div.main_list ul li {
      width: 100%;
      text-align: right;
  }
  .nav div.main_list ul li a {
      text-align: center;
      width: 100%;
      font-size: 3rem;
      padding: 20px;
  }
  .nav div.media_button {
      display: block;
  }
}


/* Animation */
/* Inspiration taken from Dicson https://codemyui.com/simple-hamburger-menu-x-mark-animation/ */

.navTrigger {
  cursor: pointer;
  width: 30px;
  height: 25px;
  margin: auto;
  position: absolute;
  right: 30px;
  top: 0;
  bottom: 0;
}

.navTrigger i {
  background-color: #fff;
  border-radius: 2px;
  content: '';
  display: block;
  width: 100%;
  height: 4px;
}

.navTrigger i:nth-child(1) {
  -webkit-animation: outT 0.8s backwards;
  animation: outT 0.8s backwards;
  -webkit-animation-direction: reverse;
  animation-direction: reverse;
}

.navTrigger i:nth-child(2) {
  margin: 5px 0;
  -webkit-animation: outM 0.8s backwards;
  animation: outM 0.8s backwards;
  -webkit-animation-direction: reverse;
  animation-direction: reverse;
}

.navTrigger i:nth-child(3) {
  -webkit-animation: outBtm 0.8s backwards;
  animation: outBtm 0.8s backwards;
  -webkit-animation-direction: reverse;
  animation-direction: reverse;
}

.navTrigger.active i:nth-child(1) {
  -webkit-animation: inT 0.8s forwards;
  animation: inT 0.8s forwards;
}

.navTrigger.active i:nth-child(2) {
  -webkit-animation: inM 0.8s forwards;
  animation: inM 0.8s forwards;
}

.navTrigger.active i:nth-child(3) {
  -webkit-animation: inBtm 0.8s forwards;
  animation: inBtm 0.8s forwards;
}

@-webkit-keyframes inM {
  50% {
      -webkit-transform: rotate(0deg);
  }
  100% {
      -webkit-transform: rotate(45deg);
  }
}

@keyframes inM {
  50% {
      transform: rotate(0deg);
  }
  100% {
      transform: rotate(45deg);
  }
}

@-webkit-keyframes outM {
  50% {
      -webkit-transform: rotate(0deg);
  }
  100% {
      -webkit-transform: rotate(45deg);
  }
}

@keyframes outM {
  50% {
      transform: rotate(0deg);
  }
  100% {
      transform: rotate(45deg);
  }
}

@-webkit-keyframes inT {
  0% {
      -webkit-transform: translateY(0px) rotate(0deg);
  }
  50% {
      -webkit-transform: translateY(9px) rotate(0deg);
  }
  100% {
      -webkit-transform: translateY(9px) rotate(135deg);
  }
}

@keyframes inT {
  0% {
      transform: translateY(0px) rotate(0deg);
  }
  50% {
      transform: translateY(9px) rotate(0deg);
  }
  100% {
      transform: translateY(9px) rotate(135deg);
  }
}

@-webkit-keyframes outT {
  0% {
      -webkit-transform: translateY(0px) rotate(0deg);
  }
  50% {
      -webkit-transform: translateY(9px) rotate(0deg);
  }
  100% {
      -webkit-transform: translateY(9px) rotate(135deg);
  }
}

@keyframes outT {
  0% {
      transform: translateY(0px) rotate(0deg);
  }
  50% {
      transform: translateY(9px) rotate(0deg);
  }
  100% {
      transform: translateY(9px) rotate(135deg);
  }
}

@-webkit-keyframes inBtm {
  0% {
      -webkit-transform: translateY(0px) rotate(0deg);
  }
  50% {
      -webkit-transform: translateY(-9px) rotate(0deg);
  }
  100% {
      -webkit-transform: translateY(-9px) rotate(135deg);
  }
}

@keyframes inBtm {
  0% {
      transform: translateY(0px) rotate(0deg);
  }
  50% {
      transform: translateY(-9px) rotate(0deg);
  }
  100% {
      transform: translateY(-9px) rotate(135deg);
  }
}

@-webkit-keyframes outBtm {
  0% {
      -webkit-transform: translateY(0px) rotate(0deg);
  }
  50% {
      -webkit-transform: translateY(-9px) rotate(0deg);
  }
  100% {
      -webkit-transform: translateY(-9px) rotate(135deg);
  }
}

@keyframes outBtm {
  0% {
      transform: translateY(0px) rotate(0deg);
  }
  50% {
      transform: translateY(-9px) rotate(0deg);
  }
  100% {
      transform: translateY(-9px) rotate(135deg);
  }
}

.affix {
  padding: 0;
  background-color: #111;
}

.myH2 {
text-align:center;
font-size: 4rem;
}
.myP {
text-align: justify;
padding-left:15%;
padding-right:15%;
font-size: 20px;
}
@media all and (max-width:700px){
.myP {
  padding:2%;
}
}


.popup-video {display:none;position:fixed;width:100%;height:100%;background:rgba(0,0,0,0.6);top:0;left:0;z-index: 999999999999;}
.popup-video video {position:absolute;left:10%;width:80%;top:50%;transform: translateY(-50%);-webkit-box-shadow: 0px 0px 20px 5px rgba(0,0,0,0.6);-moz-box-shadow: 0px 0px 20px 5px rgba(0,0,0,0.6);box-shadow: 0px 0px 20px 5px rgba(0,0,0,0.6);}
.closeVideo {position: absolute;top:25px;right:25px;width: 50px;}

@media screen 
  and (max-device-width: 1600px)  { 
      #videoPlayed {position:absolute;left:5%;width:90%;}
}

.logos img {margin:10px 0;}

.modal.show {display:flex!important;flex-direction:column;justify-content:center;align-content:center;align-items: flex-start;}
.modal {z-index: 99999999999999 !important;}
.modal-dialog {width: 90% !important;}
.modal-content {background-color: rgba(0,0,0,0.8);border: none;}
.modal-header {padding: 0.25rem 1rem;border-bottom: none;}
.close {color: #fff;opacity: .6;font-size: 2.5rem;}
.close:hover {opacity:1;color: #fff !important;}
.btModalVideo {cursor: pointer !important;}
header ul.primary-nav li:last-child a:hover {border-bottom: none !important;color: #262626 !important;}

a.idioma {
  transition: all .3s ease;
  font-weight: 700;
  background-color: #ef7d11;
  color: #262626 !important;
  padding: 0 1em 0 1em !important;
  line-height: 35px;
}

a.idioma:hover {background-color: #fff;}