/*Version 2*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat&family=Raleway:wght@100;300;400;500;700;900&display=swap');

body,html
{
 padding:0;
 margin:0;
 background-color: #fff ;
 font-family: 'Raleway', sans-serif;
}  

body{
  flex-direction: column;
  min-height: 100vh;
  box-sizing: border-box;
}

main{
  flex-grow: 1;
}

.sticky {
  position: fixed;
  top: 0;
  width: 100%;
}

.sticky + .content {
  padding-top: 60px;
}

header{
  display: flex;
  flex-direction: row;
  padding: 0;
  margin:0;
  justify-content:center;
  height:34px;
  width:100%;
  background-color: #fff;
  align-items:center;
  align-content: center;
  gap: 2em;
}

.lang{
  display: flex;
  flex-direction: row;
  height:38px;
  align-items:center;
  text-decoration: none;
  width: auto;
}

.lang a{
  padding: 5px;
  color:black;
  transition:0.3s;
}

.lang a:hover{
  color: #00695C;
  font-weight: 700;
}

.lang .active{
  font-weight: 900;
}

.lang img{
  padding-right:0;
  width:1.3em;
}

.phone img{
  padding-right:0.5em;
  width:1em;
}

.phone{
  display:flex;
  width: auto;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}

.phone a{
  color: black;
}

.phone h2{
  margin: 0;
  padding: 0;
  font-size: 14px;
  font-weight: 300;
  color: black;
  padding: 10px 20px;
  padding-left:0;
  font-family: 'Montserrat', sans-serif;
}

.navbar{
  position:sticky;
  display:flex;
  flex-direction: row;
  align-items: center;
  width:100%;
  margin-top:0;
  padding: 0;
  background-color: #009688 !important;
  justify-content: space-evenly;
  z-index: 1;
}

.logo a img{
  height: 50px;
  margin: 0 0.5em;
}


.logo a{
  display: flex;
  flex-direction: row;
  align-items: center;
  font-weight: 700;
  color:#fff;
  font-size: 30px ;
  transition:0.3s;
}

.logo a:hover{
  color:#34495E;
}

.logo a:hover img{
  background-color: #34495E;
  border-color: #34495E;
}

a{
  text-decoration: none;
}

li{
  list-style-type: none;
}

nav ul{
  display: flex;
  flex-direction: row;
  padding: 0;
}

nav ul li a{
  color: #fff;
  padding: 10px 20px;
  font-size: 20px;
  font-weight:400;
  display:block;
  transition: 0.3s;
}

nav ul li a:hover{
  color: #34495E ;
}

.cta{
  border-radius: 30px;
  font-weight: 500;
  color:black;
  background-color: #F4F6F6;
}

.cta:hover{
  color: #009688;
  background-color:#34495E;
}

.current{
  color: #34495E;
  font-weight:500;
}

.contactos{
  display:flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  width:314px;
}
.contactos img{
  width: 2em;
  margin: 0;
  padding: 10px 20px;
  color: #fff;
}

.main-container{
  background-color: #fff;
  min-height: 100vh;
  width: 100%;
  display: flex;
  flex-direction: column;
  margin:0 auto;
}

footer{
  margin:0;
  padding: 0 3em;
  background-color: #009688;
  color:white;
  display:flex;
  flex-direction: row;
}

.footer-container{
  display:flex;
  flex-direction: row;
  max-width: 80%;
  margin:0 auto;
}

.footer-desc,.footer-contactos{
  width: 30%;
  padding: 2em 3em;
}

.footer-contactos h4{
  font-style:normal;
  font-weight: 300;
  font-size: 10px;
  padding:0;
  margin:0;
}

.footer-regform{
  width:40%;
  padding: 2em 3em;
}

form{
  display: flex;
  flex-direction: column;
  width: 100%;
  border:0px;
  max-width: 600px;
}

form input, form textarea{
  border:0;
  margin: 10px;
  margin-left:0;
  padding: 10px 20px;
  outline: none;
  background-color: #fff;
  font-size: 16px;
}

form button{
  display: flex;
  border:0;
  margin: 10px;
  margin-top:0;
  margin-left:0;
  padding: 10px 20px;
  background-color: #009688;
  font-size: 26px;
  font-weight:500;
  color: #fff;
  cursor: pointer;
  align-items:flex-start;
  transition:0.3s;
  width: 210px;
}

form button:hover{
  background-color: #fff;
  color:#239B56;
}

.bottom-box{
  display:flex;
  flex-direction: column;
  align-items: flex-start;
  background-color: #00695C;
  height:2em;
  margin:0;
}

.bottom-box p{
  color:#fff;
  margin:0;
  padding-left: 15%;
}

/* Responsive layout*/

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
  .footer-container{
    flex-direction: column;
  }
}

/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {
  body{
    width: 100%;
  }

  /* FOOTER  */
  .footer{
    width: 100%;
  }

  .footer-container .footer-desc p{
    text-align: justify;
  }
  .footer-container{
    flex-direction: column;
    max-width: 100%;
  }

  .footer-desc, .footer-contactos, .footer-regform{
    width: 90%;
  }

  .footer-regform form {
    max-width: 100%;
  }

  /* NAVBAR  */

  .navbar{
    flex-direction: row;
  }
  .logo{
    width: 90%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 5%;
  }

  .logo img{
    height: auto;
    width: 10%;
    padding: 1vh;
  }
  
  .logo a{
    width:90%;
    display: contents;
    align-items: center;
    font-size: 4.5em;
  }
  
  .logo .menu-icon a{
    width: 10%;
  }

  .logo .menu-icon a img{
    height: auto;
    width: 100%;
  }

  .logo a img{
    margin: 0;
    height: auto;
  }

  /* slide bar css */

  .overlay {
    /* Height & width depends on how you want to reveal the overlay (see JS below) */   
    height: 100%;
    width: 0;
    position: fixed; /* Stay in place */
    z-index: 1; /* Sit on top */
    left: 0;
    top: 0;
    background-color: rgb(0,0,0); /* Black fallback color */
    background-color: rgba(0,0,0, 0.9); /* Black w/opacity */
    overflow-x: hidden; /* Disable horizontal scroll */
    transition: 0.5s; /* 0.5 second transition effect to slide in or slide down the overlay (height or width, depending on reveal) */
  }
  
  /* Position the content inside the overlay */
  .overlay-content {
    position: relative;
    top: 25%; /* 25% from the top */
    width: 100%; /* 100% width */
    text-align: center; /* Centered text/links */
    margin-top: 30px; /* 30px top margin to avoid conflict with the close button on smaller screens */
  }
  
  /* The navigation links inside the overlay */
  .overlay a {
    padding: 8px;
    text-decoration: none;
    font-size: 4em;
    color: #fff;
    display: block; /* Display block instead of inline */
    transition: 0.3s; /* Transition effects on hover (color) */
  }
  
  /* When you mouse over the navigation links, change their color */
  .overlay a:hover, .overlay a:focus {
    color: #f1f1f1;
  }
  
  /* Position the close button (top right corner) */
  .overlay .closebtn {
    position: absolute;
    top: 20px;
    right: 45px;
    font-size: 10em;
  }
  
  /* When the height of the screen is less than 450 pixels, change the font-size of the links and position the close button again, so they don't overlap */
  @media screen and (max-height: 450px) {
    .overlay a {font-size: 20px}
    .overlay .closebtn {
      font-size: 40px;
      top: 15px;
      right: 35px;
    }
  }

  /* HIDE ITEMS*/
  .navbar nav{
    display: none;
    visibility: hidden;
  }
  .contactos{
    display: none;
    visibility: hidden;
  }
  
}

/* Medium devices (landscape tablets, 992px and up) */
@media only screen and (min-width: 992px) {

  /* FOOTER  */
  .footer{
    width: 100%;
  }

  .footer-container .footer-desc p{
    text-align: justify;
  }
  .footer-container{
    flex-direction: row;
  }

  .footer-desc, .footer-contactos, .footer-regform{
    width: 90%;
  }

  .footer-regform form {
    max-width: 100%;
  }

  /* NAVBAR*/

  .logo img{
    height: 50px;
    width: 50px;
    margin: 0 0.5em;
  }

  .logo{
    width: auto;
    gap: 5%;
  }
  
  .logo a{
    display: flex;
    width: auto;
    flex-direction: row;
    align-items: center;
    font-weight: 700;
    color:#fff;
    font-size: 30px ;
    transition:0.3s;
  }

  .menu-icon{
    display: none !important;
    visibility: hidden;
  }

   /* HIDE ITEMS*/
   .navbar nav{
    display:contents;
    visibility:visible;
  }

}

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {
}

/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {
}