/* Copyright Vanguardia Digital 2023 © www.hostingwebec.com */

:root {
    --primario: #4e5454;
    --primarioOscuro: #44494c;
    --gris-claro: #e9e9e9;
    --gris-claro1: #9d9d9d;
    --gris-claro2: #737373;
    --secundario: #a1c629;
    --azul: #0076b9;
    --blanco: #FFF;
    --negro: #0c161c;

    --fuentePrincipal: Arial, sans-serif;
    --fuenteSecundaria: sans-serif;
}

html {
    box-sizing: border-box;
    font-size: 62.5%;
  }
  *, *:before, *:after {
    box-sizing: inherit;
  }

  /* Globales */
body {
      background-color: var(--primario);
      font-size: 1.6rem;
      line-height: 1.5;
      margin: 0;
  }
p {
      font-size: 1.6rem;
      font-family: Arial, Helvetica, sans-serif;
      color: var(--blanco);
  }  
  a {
      text-decoration: none;
  }
img {
      max-width: 100%;
  }
  .contenedor {
    max-width: 120rem;
    margin: 0 auto;
  }
h1, h2, h3, h4 {
      text-align: center;
      color: var(--blanco);
      font-family: var(--fuentePrincipal);
  }
h1 {
      font-size: 4.3rem;
      text-transform: uppercase;
  }
h2 {
      font-size: 2.7rem;
  }
h3 {
      font-size: 2.4rem;
  }
h4{
      font-size: 1.8rem;
  }

  /* Utilidades*/
.no-margin{
        margin: 0;
    }
.no-padding{
        padding: 0;
    }
.centrar-texto{
        text-align: center;
    }

/*css contenido*/
.img-top-principal{
    display: none;
}
.img-top img{
    width: auto;
}
.txt-principal{
    margin: 0 2rem;
}
.txt-principal h2{
    color: var(--secundario);
}
.txt-principal p{
    text-align: justify;
}

/*aside*/
aside{
    background-color: var(--secundario);
    margin: 0 1.5rem;
    border-radius: 4rem;
}
.aside{
    padding: 2rem;
}
.logo img{
    width: 100%;
}
.texto-lateral{
    background-color: var(--blanco);
    padding: 2.5rem;
    border-radius: 1rem;
    color: var(--negro);
}
.texto-lateral li{
    font-family: var(--fuentePrincipal);
}
ul{
    list-style: none; /* Remove default bullets */
}
ul li::before {
    content: "\2022";  /* Add content: \2022 is the CSS Code/unicode for a bullet */
    color: var(--secundario); /* Change the color */
    font-weight: bold; /* If you want it to be bold */
    display: inline-block; /* Needed to add space between the bullet and the text */
    width: 1em; /* Also needed for space (tweak if needed) */
    margin-left: -1.5em; /* Also needed for space (tweak if needed) */
}
.texto-lateral p{
    color: var(--negro);
    text-align: justify;
}

.img-lateral{
    padding: 1.2rem 0;
}

.img-lateral img{
    border: var(--blanco) solid 5px;
    border-radius: 1rem;
}

/*icons cont*/
.cont-icons{
    background-color: var(--primarioOscuro);
    background-image: url(../img/bg-oscuro.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin: 2rem 1rem;
    padding: 2rem;
}

.texto-final h2{
    text-transform: uppercase;
}
.icons{
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}
.icons_cont{
    text-align: center;
    text-transform: capitalize;
}
.icons_cont img{
    width: 5rem;
}
.logos-ap{
    padding: 0 1rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap:2rem;
    justify-content: center;
    align-content: center;
}
.logos-ap img{
    justify-content: center;
    width: 100%;
}

/*separador*/
.separador{
    margin-top: 2rem;
    width: 100%;
}
.separador img{
    width: 100%;
    margin: 0 auto;
    justify-content: center;
}

/*before footer*/
.before-footer{
    background-color: var(--gris-claro2);
    padding: 1rem 0;
    text-align: center;
}

.before-footer p a{
    color: var(--blanco);
    font-size: 3rem;
}

/*footer*/
.footer{
    background-color: var(--gris-claro2);
    text-align: center;
    padding: 2rem 0;
}
.footer_cont{
    display: grid;
    grid-template-columns: 1fr;
    padding-bottom: 2rem;
}
.footer_cont a{
    color: var(--blanco);
    font-family: var(--fuentePrincipal);
    font-weight: 600;
}
.footer p{
    font-weight: 600;
}
.footer i{
    font-size: 1.6rem;
    color: var(--secundario);
}

/*copyright*/
.copyright p{
    text-align: center;
    background-color: var(--negro);
    padding: 1rem;
    text-transform: uppercase;
    font-size: 1rem;
}
.copyright a{
    color: var(--azul);
}

@media (min-width:768px) {
    main{
        position: relative;
        margin: 0 auto;
        display: grid;
        grid-template-columns: 62% 38%;
    }
    .img-top{
        display: none;
    }
    .img-top-principal{
        margin: 0 auto;
        width: auto;
    }

    /*aside*/
    .img-top-principal{
        width: auto;
        height: auto;
        display: flex;
    }
    aside{
        position: absolute;
        top: -310px;
        right: 0;
        width: 35%;
    }
    .texto-lateral{
        padding: 1rem;
    }
    .texto-lateral p{
        font-size: 1.2rem;
    }
    .texto-lateral li{
        font-size: 1.2rem;
    }
    h1, h2{
        text-align: left;
    }
    .cont-footer{
        display: grid;
        grid-template-columns: 70% 30%;
    }
    .cont-icons{
        background-color: transparent;
    }
    .icons_cont h4{
        font-size: 1.4rem;
    }
    .texto-final h2{
        font-size: 2rem;
        text-align: left;
    }
    .logos-ap{
        display: grid;
        grid-template-columns: 1fr;
        align-content: center;
    }
    .logos-ap img{
        width: 100%;
    }
}

@media (min-width:900px) {
    aside{
        top: -350px;
    }
    .logos-ap{
        margin-top: 20rem;
    }
}

@media (min-width:1024px) {
    aside{
        top: -400px;
    }
    .cont-footer {
        margin-top: 0rem;
    }
    .before-footer{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    .before-footer p a {
        font-size: 2rem;
    }
    .footer{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
}


@media (min-width:1280px) {
    aside {
        top: -480px;
    }
    .txt-principal{
        margin-top: 2rem;
    }
    .separacion{
        margin-top: 10rem;
        width: 100%;
    }
    .separador{
        margin: 5rem 0;
    }
    .cont-footer {
        margin-top: 2rem;
    }
    .logos-ap {
        display: grid;
        grid-template-columns: repeat(2, 2fr);
        gap: .5rem;
        margin-top: 26rem;
    }
}