*{
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
body{
  position: relative;
  font-size: 14px;
  font-family: 'Open Sans', sans-serif;
  text-rendering: geometricPrecision;
  transition: all ease-in-out .2s;
  min-height: 100vh;
  padding-bottom: 100px;
  background-color: rgb(250,250,250);
  background-image: url("../img/fondo.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
body::before {
	content: '';
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(255,255,255,.7);
}
select:focus{ outline: none;}
header{
  position: relative;
  width: 100%;
  height: auto;
  display: block;
  overflow: hidden;
  /*background-color: white;*/
  transition: all ease-in-out .2s;
}
/*header.fixed{
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
}*/
header.scroll{box-shadow: 1px 0px 20px 0 rgba(0,0,0,.1);}
header nav{
  position: relative;
  width: calc(100% - 100px);
  max-width: 1000px;
  height: auto;
  padding: 40px 0 20px 0;
  margin: 0 auto;
  overflow: hidden;
  transition: all ease-in-out .2s;
}
header.scroll nav{padding: 20px;}
header nav .logo{
  position: relative;
  width: 250px;
  margin: 0 auto;
  height: auto;
  transition: all ease-in-out .2s;
}
header.scroll nav .logo{width: 250px;}
header nav .logo img{width: 100%;}
header nav .title{
  position: relative;
  float: right;
}
header nav .title h2{
  font-size: 1.8em;
  padding-top: 15px;
  font-family: 'ferrovialbold';
  transition: all ease-in-out .2s;
}
header.scroll nav .title h2{font-size: 1.4em; padding-top: 5px;}
section{
  position: relative;
  width: 100%;
  height: auto;
  max-height: 100vh;
  padding: 20px 0 100px 0;
  transition: all ease-in-out .2s;
}
section .video-container{
  position: relative;
  width: 80%;
  max-width: 1200px;
  height: auto;
  margin: 0 auto;
}
section .video-container .iframe-container{
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0px 40px 20px -30px rgba(0, 0, 0, 0.35);
  background-color: rgb(200,200,200);
}
section .video-container .iframe-container iframe{
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
section .video-container .language{
  position: absolute;
  margin: 20px 10px;
  display: inline-block;
  background-color: transparent;
  overflow: hidden;
  border: solid 2px rgb(200,200,200);
  cursor: pointer;
  height: 40px;
  width: auto;
  overflow: hidden;
  transition: all ease-in-out .2s;
}
section .video-container .language.active{
  height: 76px;
}
section .video-container .language::before{
  content:"";
  position: absolute;
  right: 10px;
  top: calc(50% - 2px);
  width: 0;
  height: 0;
  border-left: 10px solid rgb(200,200,200);
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  transform: rotate(90deg) translateX(-50%);
  transition: all ease-in-out .2s;
}
section .video-container .language.active::before{
  right: -20px;
}
section .video-container .language::after{
  content:"";
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
section .video-container .language.active::after{
  display: none;
}
section .video-container .language p{
  position: relative;
  font-size: 1.2em;
  padding: 10px 50px 10px 20px;
  transition: all ease-in-out .2s;
}
section .video-container .language.en p:first-child{margin-top: -36px;}
section .video-container .language.en.active p{margin-top: 0px;}
section .video-container .language.active p:hover{
  background-color: rgb(200,200,200);
}
section .button-open{
  position: relative;
  margin: 0 auto;
  margin-top: 150px;
  width: 80%;
  max-width: 1000px;
  background-color: rgb(240,240,240);
  padding: 20px 0 16px 0;
  border-radius: 10px;
  font-family: 'ferrovialbold';
  font-size: 1.4em;
  cursor: pointer;
}
section .button-open p{
  position: relative;
  padding-left: 30px;
  display: inline-block;
  width: auto;
  height: auto;
  font-size: .9em;
  margin-left: 50%;
  transform: translateX(-50%);
  text-align: center;
  text-transform: uppercase;
  color: rgb(100,100,100);
}
section .button-open p::before, section .button-open p::after{
  content: "";
  position: absolute;
  width: 15px;
  height: 2px;
  background-color: rgb(100,100,100);
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all ease-in-out .2s;
}
section .button-open p::before{transform: translateY(-50%) rotate(90deg);}
section .button-open.active p::before{transform: translateY(-50%) rotate(0deg); opacity: 0;}
section .tabs-container{
  position: relative;
  width: 80%;
  max-width: 1000px;
  height: auto;
  max-height: 0px;
  margin: 0 auto;
  margin-top: 0;
  background-color: transparent;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0px 20px 50px -30px rgba(0,0,0,.2);
  transition: all ease-in-out .2s;
  opacity: 0;
}
section .tabs-container.on{max-height: none; opacity: 1; margin-top: 60px;}
section .tabs-container .tab{
  position: relative;
  width: 100%;
  height: auto;
  /*background-color: rgb(245,245,245);*/
  border-bottom: 4px solid white;
  overflow: hidden;
  display: flex;
}
section .tabs-container .tab button.tablinks{
  border: 0;
  outline: 0;
  background-color: transparent;
  font-size: 1.4em;
  font-family: 'ferrovialregular';
  padding: 12px 40px;
  border-right: 4px solid white;
  cursor: pointer;
  margin: 0;
  display: inline-block;
  float: left;
  background-color: rgb(245,245,245);
  transition: all ease-in-out .2s;
  flex: 1;
  white-space: nowrap;
}
section .tabs-container .tab button.tablinks:last-child{border-right: none;}
section .tabs-container .tab button.tablinks.active{
  background-color: #ffcc33;
}
section .tabs-container .tabswrap{
  float: none;
  clear: both;
  width: 100%;
  height: auto;
  padding: 50px;
  background-color: white;
}
section .tabs-container .tabswrap .tabcontent{
  position: relative;
  font-size: 1.4em;
  display: none;
}
section .tabs-container .tabswrap .tabcontent .container{
  display: flex;
  min-height: 150px;
}
section .tabs-container .tabswrap .tabcontent .container h3{
  font-family: 'ferrovialbold';
  font-size: 2em;
}
section .tabs-container .tabswrap .tabcontent .container ul{margin-top: 10px;}
section .tabs-container .tabswrap .tabcontent .container ul li{margin-bottom: 5px;}
section .tabs-container .tabswrap .tabcontent .container ul li:last-child{margin-bottom: 0;}
section .tabs-container .tabswrap .tabcontent .container ul li span{font-family: 'ferrovialbold'; margin-right: 4px;}
section .tabs-container .tabswrap .tabcontent .container ul li span::after{content:":"}
section .tabs-container .tabswrap .tabcontent .container button{
  position: relative;
  border: 0;
  outline: 0;
  background-color: #ffcc33;
  padding: 10px 20px;
  border-radius: 10px;
  font-size: .8em;
  cursor: pointer;
  margin: 0 auto;
  margin-top: 10px;
  text-transform: uppercase;
  display: block;
}
section .tabs-container .tabswrap .tabcontent:first-child{display: block;}
section .tabs-container .tabswrap .tabcontent#download .container > div{margin: 0 auto;}
section .tabs-container .tabswrap .tabcontent#download .container > div img{width: 100%; max-width: 60px; margin-left: 50%; transform: translateX(-50%);}
section .tabs-container .tabswrap .tabcontent#download p{
  font-family: 'ferrovialbold';
  font-size: .9em;
  text-align: center;
  margin-top: 15px;
  margin-bottom: 15px;
}
section .tabs-container .tabswrap .tabcontent#description .container > div:first-child{margin-right: 50px;}
section .tabs-container .tabswrap .tabcontent#legal p{margin-top: 15px; line-height: 1.2;}
section .tabs-container .tabswrap .tabcontent#legal p:last-child{font-size: .8em;}
section .tabs-container .tabswrap .tabcontent#contact .container{display: block;}
section .tabs-container .tabswrap .tabcontent#contact .container .iframe-container{
  position: relative;
  width: 100%;
  padding-bottom: 850px;
  height: 0;
  overflow: hidden;
}
section .tabs-container .tabswrap .tabcontent#contact h3{
  text-align: center;
}
section .tabs-container .tabswrap .tabcontent#contact .container .iframe-container iframe{
  position: relative;
  width: 100%;
}
@media(max-width:960px){
  header nav{padding: 20px; width: 100%;}
  header nav .logo{width: 200px;}
  header nav .title h2{font-size: 1.4em; padding-top: 5px;}
  section{padding: 60px 0 50px 0;}
  section .tabs-container .tab button.tablinks{
    font-size: 1.2em;
    padding: 10px 20px;
    border-right: 2px solid white;
  }
  section .tabs-container .tabswrap .tabcontent#download .container > div img{max-width: 60px;}
  section .tabs-container .tabswrap .tabcontent .container button {
    padding: 10px 20px;
    font-size: .6em;
  }
}
@media(max-width:860px){
  section .tabs-container .tabswrap .tabcontent#download .container{display: block;}
  section .tabs-container .tabswrap .tabcontent#download .container div{margin-bottom: 40px;}
  section .tabs-container .tabswrap .tabcontent#download .container div:last-child{margin-bottom: 0;}
  section .tabs-container .tabswrap .tabcontent#description .container{display: block;}
  section .tabs-container .tabswrap .tabcontent#description .container > div:first-child{margin-bottom: 20px;}
}
@media(max-width: 760px){
  section .tabs-container .tabswrap .tabcontent#contact .container .iframe-container{
    padding-bottom: 950px;
  }
}
@media(max-width:640px){
  section .tabs-container.on {margin-top: 50px;}
  section .tabs-container .tabswrap .tabcontent{font-size: 1.2em;}
  section .tabs-container .tabswrap .tabcontent .container h3{font-size: 1.3em;}
  section .tabs-container .tab{display: block;}
  section .tabs-container .tab button.tablinks {
    display: block;
    float: none;
    width: 100%;
    border-right: none;
    border-bottom: 2px solid white;
  }
  section .tabs-container .tab {border-bottom: none;}
  section .button-open{
    margin-top: 100px;
    padding: 20px 0 16px 0;
    font-size: 1.2em;
  }
  section .button-open p{padding-left: 20px;}
  section .button-open p::before, section .button-open p::after {
    width: 12px;
    height: 2px;
    margin-top: -1px;
  }
}
@media(max-width: 554px){
  section .tabs-container .tabswrap .tabcontent#contact .container .iframe-container{
    padding-bottom: 940px;
    width: calc(100% + 80px);
    margin-left: -40px;
  }
}
@media(max-width:500px){
  header nav .title h2, header.scroll nav .title h2{font-size: 1em; padding-top: 8px;}
}
footer{
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  background-color: #323232;
  padding: 30px 30px 26px 30px;
}
footer .edt-logo{
  position: relative;
  width: 80px;
  height: auto;
  margin: 0 auto;
}
footer .edt-logo img{width: 100%;}



.text-container {
	margin-top: 2rem;
	text-align: center;
	font-size: 16px;
	color: #0079bc;
}

strong {
	font-weight: bold;
}



/*LOADER*/
.lds-roller {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px;
  height: 80px;
}
.lds-roller div {
  animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  transform-origin: 40px 40px;
}
.lds-roller div:after {
  content: " ";
  display: block;
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #fff;
  margin: -4px 0 0 -4px;
}
.lds-roller div:nth-child(1) {
  animation-delay: -0.036s;
}
.lds-roller div:nth-child(1):after {
  top: 63px;
  left: 63px;
}
.lds-roller div:nth-child(2) {
  animation-delay: -0.072s;
}
.lds-roller div:nth-child(2):after {
  top: 68px;
  left: 56px;
}
.lds-roller div:nth-child(3) {
  animation-delay: -0.108s;
}
.lds-roller div:nth-child(3):after {
  top: 71px;
  left: 48px;
}
.lds-roller div:nth-child(4) {
  animation-delay: -0.144s;
}
.lds-roller div:nth-child(4):after {
  top: 72px;
  left: 40px;
}
.lds-roller div:nth-child(5) {
  animation-delay: -0.18s;
}
.lds-roller div:nth-child(5):after {
  top: 71px;
  left: 32px;
}
.lds-roller div:nth-child(6) {
  animation-delay: -0.216s;
}
.lds-roller div:nth-child(6):after {
  top: 68px;
  left: 24px;
}
.lds-roller div:nth-child(7) {
  animation-delay: -0.252s;
}
.lds-roller div:nth-child(7):after {
  top: 63px;
  left: 17px;
}
.lds-roller div:nth-child(8) {
  animation-delay: -0.288s;
}
.lds-roller div:nth-child(8):after {
  top: 56px;
  left: 12px;
}
@keyframes lds-roller {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
