/* Colores:

Sitio web:

Negro: #232323 (textos)
Azul: #224277
Rojo: #ff5b5d
gris claro: #dbdcdd
Blanco: #ffffff

Testimonios:
Gris claro: #f3f3f3 (fondo)

Footer:
negro: #222222 (fondo)
gris: #afafaf (textos)
*/

/* Fuentes:

font-family: 'Nunito sans', sans-serif;
font-family: 'IBM Plex Mono', monospace;

 */

 /********************** Botón Whatsapp *********************/
 .boton-wapp {
     position: fixed;
     bottom: 20px;
     right: 20px;
     z-index: 500;
 }

 .boton-wapp img {
   max-width: 50px;
   color: green;
 }

 /* Boton para volver arriba

 .btn {
  border-radius:15px;
  margin: 100px;
  position: fixed;
  bottom: 10px;
   right: 10px;
 }
 */


 /*********************** Global Styles *********************/

:root {
  font-size: 62.5%;
}

 span.anchor {
     display: block;
     position: relative;
     top: -85px;
     visibility: hidden;
 }

 html {
   box-sizing: border-box;
   scroll-behavior: smooth;
 }

 .mobile, .tablet {
   visibility: hidden; /*funcioaba con visibility hidden */
   display: none;
 }


 *, *:before, *:after {
   box-sizing: inherit;
   font-size: 1.4rem;
 }

 body {
   margin: 80px 0 0 0;
   padding: 0;
   background-color: white;
 }

 a {
   text-decoration: none;
   font: 400 1.9rem 'Nunito Sans', sans-serif;
 }

.flex {
  display: flex;
}

h1, .fh1 {
   font: 400 4rem 'Nunito Sans', sans-serif;
   margin: 0;
}

h2, .fh2 {
  font: 400 3.7rem 'Nunito Sans', sans-serif;
}

h3, .fh3 {
   font: 400 3rem 'Nunito Sans', sans-serif;
}

h4, .fh4 {
  font: 400 2.6rem 'Nunito Sans', sans-serif;
  margin-top: 10px;
}

h5, .fh5 {
  font: 400 2.2rem 'Nunito Sans', sans-serif;
  margin: 0;
}

h6, .fh6 {
  font: 700 1.8rem 'Nunito Sans', sans-serif;
  margin-top: 10px;
  color: #232323
}


p, li {
  font: 400 1.8rem 'Nunito Sans', sans-serif;
  /* color: #232323 */
}

.mono {
  font: 400 1.4rem 'IBM Plex Mono', monospace;
  letter-spacing: 1px;
}

strong {
  font-weight: 700;
  font-size: inherit;
}

b {
  font-weight: bold;
  font-size: inherit;
}

.content-wrap {
  max-width: 80%;
  margin: 0 auto;
}

.center-text {
  text-align: center;
}

.titulo {
text-align: center;
margin: 10rem auto;
max-width: 60%;
}


.titulo::after {
    content: ""; /* This is necessary for the pseudo element to work. */
    display: block; /* This will put the pseudo element on its own line. */
    margin: 0 auto; /* This will center the border. */
    width: 50px; /* Change this to whatever width you want. */
    padding-top: 20px; /* This creates some space between the element and the border. */
    border-bottom: 3px solid #dbdcdd; /* This creates the border. Replace black with whatever color you want. */
}


 /*******************************NAVIGATION ******************************/

 nav {
   background-color: white;
   text-align: right;
   position: fixed;
   top: 0;
   width: 100%;
   z-index: 500;
  box-shadow: 1px 1px #dbdcdd;
 }

 ul {
   margin:0;
   list-style: none;
 }

  li {
    display: inline-block;
    transition-duration: 0.5s;
    position: relative;
  }


  ul li ul {
   background: white;
   position: absolute;
   display: none;
   text-align: left;
   padding: 0;
   width: 250px;
  }

  ul li ul li {
    display: block;
  }

  ul li:hover > ul,
  ul li ul:hover {
    display: block;
  }


nav li img {
  margin: 0 5px;
}

#dropdown-content li a {
  padding: 10px 12px;
}

 .topnav .icon {
   display: none;
 }

 nav .topnav a {
   display: inline-block;
   color: #232323;
   padding: 35px 12px; /*if value changes have to change the js too*/
   margin: 10px 0px 0px 0px;
   transition: 0.4s;
 }

 nav .topnav:last-child {
padding-right: 50px;
 }

 nav a:hover {
   color: #ff5b5d;
 }

 nav img {
   margin: 10px 10px 5px 15px;
   display: inline-block;
   max-width: 300px;
   float: left;
   transition: 0.4s;
 }

#logo {
  margin-left: 20px;
}


/* HEADER */

.header {
  background-color: #224277;
  padding: 20px 20px;
  margin-top: 80px;
}

.header .flex div:first-of-type {
  flex: 1;
  margin-top: 50px;
  margin-left: 5%;
}

.header .flex div:last-of-type {
  text-align: right;
  margin-left: 50px;
  flex: 1;
}

.header .flex * > {
  flex: 1;
}

.header > * {
  color: #fff;
}

.header img {
  position: relative;
  top: 70px;
}

.header p {
  display: inline-block;
  margin-bottom: 5px;
  color: white;
}

/* Info */


.info .flex {
margin: 0 auto;
}

.info .content-wrap div {
  max-width: 1000px;
  flex: 1;
}

.info h3 {
  margin-bottom: 12px;
}


/*********************** FONDOS ************************/

.fondo {
text-align: center;
padding: 100px 150px;
margin: 100px 50px;
color: #fff;
}

.fondo h3, .fondo .fh3 {
  margin-bottom: 0;
}

.fondo h4 {
  margin-bottom: 50px;
}

.azul {
  background-color: #224277;
}

.rojo {
  background-color: #ff5b5d;
}

.gris {
    background-color: #f3f3f3;
    color: black;
    padding: 50px 150px;
}

.gris h1, .gris .fh1 {
  color: #ff5b5d;
  font-weight: 700;
}

/********************** BOTON ROJO *********************/

.boton-rojo {
  border-radius: 2px;
  background: #ff5b5d;
  color: white;
  display: inline-block;
  padding: 15px 50px;
  margin-top: 20px;
}

.boton-rojo:hover {
  background-color: white;
  color: #ff5b5d;
  transition: 0.5s;
}


/*********************** TESTIMONIOS ************************/

.testimonios {
  text-align: center;
  background-color: #f3f3f3;
  margin: 100px 50px;
  padding: 3% 0;
}

.testimonios .flex div:last-of-type {
  flex: 1.61803398875;
  text-align: left;
  margin-left: 80px;
}

.testimonios .flex div {
  align-self: center;
  flex: 1;
  margin-bottom: 20px;
  text-align: right;
}

.testimonios img {
  border-radius: 50%;
}

.testimonios p {
  margin: 5px 20px 0 0;
}

.testimonios .fh5 {
background-image: url(../images/comillas.png);
background-position: left;
background-repeat: no-repeat;
background-size: 80px;
height: 60px;
display: table-cell;
vertical-align: bottom;
font-weight: 700;
}



/********************************* EMPRESAS DERROTADAS ****************************/

.derrotadas .fh2 {
  margin-bottom: 10px;
}

.derrotadas {
  margin: 10rem auto;
  text-align: center;
}

.derrotadas .fh5 {
max-width: 60%;
margin: 0 auto 50px;
}

.derrotadas .glider-dots {
  display: none;
}

.derrotadas .glider-container .glider img {
  max-height: 100px;
  max-width: 200px;
  margin: 0px 50px;
}


/********************************* CONTACTO ****************************/

.contacto {
  background-color: #224277;
  padding-bottom: 40px;
  text-align: center;
}

.contacto .content-wrap {
  max-width: 80%;
}


.contacto h2, .contacto .fh2 {
  padding: 50px 0 0 0;
  margin-bottom: 10px;
  color: #fff;
}

.contacto .desktop.fh4, .contacto h4 {
    color: #fff;
    max-width: 75%;
    margin: 15px auto 50px;
    text-align: center;
  }

  .contacto input {
    display: block;
  }

  textarea, input {
    width: 100%;
    border: 1px solid #ccc;
    padding: 10px;
    font: 1.6rem 'Nunito Sans', sans-serif;
    margin: 7px 0;
  }

::placeholder {
  color: #afafaf;
}

  .contacto p:first-of-type {
    color: #ffffff;
    display: block;
    margin: 0;
    text-align: left;
    font-size: 2.6rem;
  }

.contacto .flex div {
  text-align: left;
}

.contacto .flex div div {
  justify-content: flex-start;
}

  .contacto a {
    color: #ffffff;
    display: inline-block;
    margin-bottom: 50px;
    font-size: 1.8rem;
    cursor: pointer;
  }

  .contacto .flex {
    justify-content: space-between;
  }

  .contacto img {
    color: #ffffff;
    max-height: 60px;
    margin-right: 20px;
  }

  .formulario {
    flex: auto;
    max-width: 50%;
    margin-left: 50px;
  }

  .contacto .boton-rojo {
    border: none;
    cursor: pointer;
    max-width: 40%;
    padding: 15px 0;
    margin-top: 0;
  }

  .contacto .rrss p{
    margin-bottom: 10px;
  }

  .contacto .rrss {
    text-align: center;
  }

  .contacto .rrss img {
    max-width: 40px;
  }

/********************************* FOOTER ****************************/

footer.flex {
  background-color: #222222;
  display: flex;
}

footer.flex div {
  flex:1;
  padding: 2% 0;
}

#seccion-izq {
  flex: 1;
  padding: 0px 40px;
}

footer .flex {
  flex-direction: column;
  flex: auto;
}

#logo-footer {
  max-width: 250px;
  margin-top: 100px;
  margin-right: 0px;
}

#seccion-izq div div > *{
  display: inline;
  margin-right: 30px;
  vertical-align: middle;
}

#seccion-izq div div div {
  display: inline-block;
}

footer div div div a:last-of-type{
margin-right: 0;
}


footer a {
  color: #ffffff;
  display: inline-block;
  font-size: 1.8rem;
  cursor: pointer;
}


footer div div img {
  max-width: 30px;
  margin-right: 10px;
  display: inline-block;
}

footer p {
  color: white;
}

footer p:first-of-type {
    font-weight: bold;
    font-size: 2.2rem;
}

.link-gris a {
  font: 400 2rem/1.5 'Nunito Sans', sans-serif;
  color: #afafaf;
  display: block;
}

.link-gris a:hover {
  color: #dbdcdd
}

.link-gris {
  margin-right: 20px;
  margin-left: 20px;
}

/* FOOTER ACCORDION */

.link-gris .accordion {
  background-color: #222222;
  color: white;
  padding: 5px 0px;
  margin: 0;
  cursor: auto;
}

.link-gris .panel {
  background-color: #222222;
  color: #afafaf;
  border: none;
  max-height: 100%;
}

.link-gris .accordion:after {
  display: none;
}

.link-gris .panel a {
  display: block;
}

.panel {
  padding: 0 13% 0 20px;
  background-color: white;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-out;
  border-bottom: #ccc solid 1px;
}

.panel p {
  font-size: 2rem;
}

.panel a {
  display: inline;
  font-weight: 400;
  padding: 0;
  font-size: 2rem;
}

div.panel.show {
    max-height: 250px;
}


footer .tablet {
  display: block;
  visibility: visible;
}

/****************************** MEDIA QUERIES************************** */


/* SPECIAL MQ FOR MAP */

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

iframe {max-width: 400px;}
}
/********* TABLET MQ ********************/

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

:root {font-size: 55%;}
.desktop { display: none !important;}
.tablet {display: block; visibility: visible; }
nav img { max-width: 80px;}

header.header img {
  max-width: 100%;
}

#myLinks a {
  padding-left: 7px;
}
nav .topnav:last-child {
padding-right: 10px;
}

.info img {
  max-width: 200px;
}

.titulo {
  max-width: 100%;
  margin: 8rem auto;
}


/* TESTIMONIOS MQ*/

.testimonios {
  margin: 0;
  padding: 20px auto;
}

.testimonios .fh2{
  max-width: 80%;
  margin: 20px auto;
}

.testimonios p{
  margin: 0;
}

.testimonios .flex div img {
  max-width: 120px;
}

.testimonios .flex div:last-of-type {
  margin: 0;
  padding: 0;
}

.testimonios .content-wrap {
  max-width: 100%;
}

.testimonios .flex div {
  text-align: left;
}

/* EMPRESAS DERROTADAS */

.derrotadas .glider-container .glider img {
  max-width: 100px;
  margin: 0px;
  padding: 0px;
}

.derrotadas .glider-slide {
  min-width: 100px;
}

.derrotadas .fh2 {
  margin-bottom: 50px;
}


/* CONTACTO MQ TABLET */


.contacto .boton-rojo {
  max-width: 80%;
}

.contacto h2 {
  margin-bottom: 40px;
}

/* Footer MQ TABLET */

footer {
  padding-top: 30px;
}

footer.flex .link-gris {
  padding: 0;
}

footer.flex .link-gris p {
  margin: 0px;
}

footer.flex .link-gris a{
  margin: 0;
}

#seccion-izq div div > * {
    margin-right: 0px;
}

#logo-footer {
  max-width: 250px;
}

#seccion-izq {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

#seccion-izq p {
  margin-top: 0;
  margin-bottom: 10px;
}
.link-gris {
  max-width: 80%;
  padding: 20px;
}

}

/*********************** SPECIAL MQ FOR MAP *****************************/

@media screen and (max-width: 975px) {
iframe {max-width: 250px;}
}


@media screen and (min-width: 671px & max-width: 800px) {
iframe, #seccion-izq p {display: none}
#seccion-izq {flex:2}
}

/* @media screen and (max-width: 864px) {
#seccion-izq {display: none;}
} */
/************************* MOBILE MQ ********************************/

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

  /* global MQ for Mobile*/
    .flex { display: block; }
    .desktop, .tablet { display: none; }
    .mobile {display: block; visibility: visible; }
    :root { font-size: 50%;}
    h1, h2, h3, h4, .fh1, .fh2, .fh3, .fh4 {text-align: center;}
    h2, .fh2 {font-size: 3rem}
    h3, .fh3 {font-size: 2.5rem}
    h5, .fh5 {font-size: 2.2rem}
    p, a.button {font-size: 2rem;}

  /* Navigation MQ for Mobile*/


nav img { margin: 10px; float: none; max-width: 50px}
li { display: block;}
#myLinks{ padding: 0 !important;}
nav li img { max-width: 20px; vertical-align:bottom; margin-left: 0px;}

nav .topnav a {display: none;}
nav .topnav a.icon {
  position: absolute;
  top: -62px;
  right: 10px;
  display: block;
  padding: 5px;
}

nav .topnav.responsive a {
  float: none;
  display: block;
  text-align: left;
  padding: 5px;
}

#dropdown-content {
  position: relative;
}

/* HEADER MQ MOBILE */

body {
  margin-top: 70px;
}

header.header img {
  display: none;
}

.header .flex div:first-of-type {
  margin: 0 20px;
}

header.header h4 {
  text-align: left;
}

.header h1 {
  text-align: left;
}

.header {
  background-position: 0px -30px;
}

.header img {
  margin: 0;
}

.fondo-azul, .fondo-azul p {
  margin: 0;
  padding: 30px 0;
}



/* INFO MQ FOR MOBILE */

.info img {
  max-width: 150px;
}

.info .flex {
  flex-direction: column;
}

.info .flex div {
  margin: 0 auto;
  margin-bottom: 20px;
  text-align: center;
}

.info b {
  font-weight: 400;
}

.info h3, .info .fh3 {
  font-weight: 700;
}

.info .flex div h3, .info .flex div .fh3, .info .flex div h5, .info .flex div .fh5 {text-align: left;}


.info a.button { padding: 8px 20px;}

.info img {
  margin: 0 auto;
}

/* FONDO MQ */
.fondo {
  margin: 50px auto;
  padding: 40px 0;
}

.fondo h3, .fondo .fh3{
  margin-bottom: 0;
}

/* CONTACTO MQ MOBILE */

.contacto img {
  max-width: 30px;
}

.contacto a {
  margin-bottom: 20px;
}
.formulario {
  margin-left: 0;
  max-width: 100%;
}

.contacto .boton-rojo {
  max-width: 70%;
  padding: 10px;
  margin-top: 0;
}

.contacto .rrss img {
  max-width: 30px;
}

/* FOOTER MQ */

footer.flex {
  display: block;
}

footer .desktop {
  display: none;
}

/* DROPDOWN FOOTER MOBILE */


.link-gris {
  margin-left: 20px;
}

  .link-gris .panel {
    max-height: 0;
  }

  .link-gris .panel a {
    padding: 5px 0;
  }

  .link-gris .accordion:after {
    display: inline-block;
    content: "▼";
    font-size: 1.3rem;
    float: none;
    margin-left: 20px;
  }

  .link-gris .activeacc:after {
    content: "▲";
  }

footer.flex .mobile {
  margin-left: 15px;
}

footer .mobile p {
  margin-top: 5px;
}

footer #seccion-izq img {
  margin-right: 10px;
}

}

}
