:root {
    --fuentePrimaria: 'Dongle', sans-serif;
    --fuenteSecundaria: 'Montserrat', sans-serif;
    --fuenteTerciaria: 'Roboto', sans-serif;
    --colorTitulo: #F9A392;
    --colorVerde: #008C45;
    --colorRojo: #CD212A;
    --negro: #000;
    --blanco: #fff;
    --regular: 400;
    --bold: 700;
    --black: 900;
}

html {
    font-size: 62.5%;   
  }

*, *:before, *:after {
  box-sizing: inherit;
}

body {
  font-size: 16px;
}


/*Globales*/

.contenedor {
  width: min (90%, 120rem);
  margin: 0 auto;
}

a {
  text-decoration: none;
}

h1, h2, h3, h4 {
  font-family: var(--fuenteHeading);
  line-height: 1.2;
}
h1 {
  font-size: 4.8rem;
}
h2 {
  font-size: 4rem;
}
h3 {
  font-size: 3.2rem;
}
h4 {
  font-size: 2.8rem;
}
img {
  max-width: 100%;
}

/** Utilidades **/

.no-margin {
  margin: 0;
}
.no-padding {
  padding: 0;
}
.centrar-texto {
  text-align: center;
}

.header {
  position: fixed;
  background-color: var(--colorVerde);
  width: 100%;
}

.barra {
  padding-top: 4rem;
}

@media (min-width: 768px) {
  .barra {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.logo {
  color: var(-negro);
  font-family: var(--fuenteSecundaria);
  margin-left: 3rem;
  font-weight: var(--black);
}

.logo_nombre {
  color: var(--negro);
}

.logo_bold {
  color: var(--colorTitulo);
}

@media (min-width: 768px) {
  .navegacion-principal {
      display: flex;
      gap: 3.5rem;
  }
}

.navegacion-principal {
  font-family: var(--fuenteSecundaria);
  font-weight: var(--bold);
  margin-right: 10rem;
  font-size: 2.5rem;
}

.navegacion-principal a {
  display: block;
  text-align: center;
  font-size: 2rem;
}

.active:hover {
  color: var(--colorTitulo);
}

.active {
  color: var(--colorTitulo);
}

.noActive {
  color: var(--negro);
}

/* imagen central */

.contenedor-carrousel {  
 /* position: relative;*/
  display: flex;
  justify-content: center;
  align-items: center;
}

.carrousel-imagenes {
  display: flex;
  width: 100%;
  height: 100%;
  overflow-x: scroll;

  scroll-snap-type: x mandatory;
}

.carrousel-imagen {
  flex: 0 0 100%;
  width: 100%;
  object-fit: cover;

  scroll-snap-align: center;
}

.carrousel-texto {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

}

.carrousel-texto-titulo  {
  font-size: 2.5rem;
  font-family: var(--fuenteSecundaria);
  text-align: center;
  font-weight: var(--bold);

}

.carrousel-texto h2  {
  font-size: 4rem;
  font-family: var(--fuenteSecundaria);
  font-weight: var(--black);
  text-align: center;
}

.carrousel-texto-inferior  {
  font-size: 2.2rem;
  font-family: var(--fuenteTerciaria);
  font-weight: var(--regular);
  text-align: center;
}

.carrousel-enlaces-imagenes {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 3rem;
}

.carrousel-enlaces-imagenes a {
  text-decoration: none;
  font-size: 5rem;
}

/* Servicios */

main {
  padding-bottom: 0;
}

main h2 {
  color: red;
  font-size: 4rem;
  font-family: var(--fuenteTerciaria);
  text-align: center;
}

.servicios-imagenes {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.servicios li {
  list-style: none;
}

@media (min-width: 768px) {
  .servicios-imagenes {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 3rem;
    margin-right: 2rem;
  } 
}

/* Nosotros */

.nosotros h2 {
  color: red;
  font-size: 4rem;
  font-family: var(--fuenteSecundaria);
  text-align: center;
}


.equipo-imagenes {
  display: flex;
  flex-direction: column;
  align-items: center;

  text-align: center;
}

@media (min-width: 768px) {
  .equipo-imagenes {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 3rem;
    margin-right: 2rem;
  } 
}

.nosotros li {
  list-style: none;
  font-size: 1.5rem;
  font-family: var(--fuenteSecundaria);
  font-weight: var(--regular);
  color: var(--colorRojo);
  background-color: var(--colorTitulo);
}

/* footer */

.footer {
  background-color: var(--negro);
  font-family: var(--fuenteTerciaria);
  color: var(--blanco);
  padding-left: 2rem;
  line-height: 1.2rem;

}

.bloqueA-footer {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  line-height: 3rem;
  gap: 3.5rem;
}

.bloqueA-footer a:hover {
  color: gray;
}

.footer h2 {
  text-align: left;
  padding: 2rem;
  color: var(--colorTitulo);
  font-family: var(--fuenteTerciaria);
}

.footer span {
  color: var(--blanco);
  text-align: left;
  padding: 2rem;
  font-family: var(--fuenteTerciaria);
}

.footer p {
  line-height: 2.4rem;
}

.bloqueA-footer-titulo a {
  display: inline;
  flex-direction: row;
  padding-top: 2rem;
  gap: 2rem;

  width: 30rem;
  height: 30rem;
  font-size: 7rem;
  color: #CD212A;
  text-align: center;
}

.link p {
  background-color: var(--negro);
}

.link a {
  margin-top: 2rem;
  color: var(--colorTitulo);
  font-family: var(--fuenteSecundaria);
  font-weight: var(--black);
}

.link a:hover {
  color: var(--colorVerde);
}

.ultimo-footer {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.ultimo {
  margin-right: 2rem;
  color: var(--colorRojo) ;
}

/* Nosotros.html estilos-nuevos */

.imagen-nosotros {
  width: 50rem;
  height: 50rem;
}

.texto {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.texto h2 {
  font-family: var(--fuentePrimaria);
  font-size: 4.5rem;
  color: var(--colorRojo);
  text-align: center;
  font-weight: var(--black);
}

.texto p {
  font-family: var(--fuenteSecundaria);
  font-weight: var(--bold);
}

.texto a {
  color: var(--negro);
}

/* Nosotros parte central */

.centro {
  display: grid;
  grid-template-columns: repeat(2 ,1fr);
  margin-top: 5rem;
  margin-left: 4rem;
}

.centro-texto h2 {
    font-size: 3rem;
    color: var(--colorTitulo);
    font-family: var(--fuenteSecundaria);
}

.centro-texto {
  margin-left: 3rem;
  font-weight: var(--bold);
  font-family: var(--fuenteTerciaria);
  color: tomato;
  font-size: 2.2rem;
}

.textos {
  display: grid;
  grid-template-rows: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  margin-right: 1rem;
}

video {
  display: block;
  padding-top: 9.5rem;
  width: 100%;
}

.contacto {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.formulario {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 1rem;
  width: 90%;
  margin-left: 2rem;
}

.formulario-cta {
  text-align: center;
  background-color: var(--colorRojo);
  color: var(--blanco);
  width: 50%;
  margin-left: 45%;
}



