/* REGLAS GENERALES */
body {
    font-family: "Open Sans";
    background-color: #f0f0f0;
    font-size: 22px;
    box-sizing: border-box;
    display: grid;
    min-height: 100dvh;
    grid-template-rows: auto 1fr auto;

}
ul {
    list-style: none;
}
a {
    text-decoration: none;
}

/* DISEÑO NAV*/
header {
    background: linear-gradient(to right, #aebecc, #ffffff);
}
nav{
    display: flex;
    justify-content: center;
    background-color: rgba(0, 0, 0, .2);
    padding: 10px;
    margin-top: 55px;
}
nav ul {
    color: white;
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 40px;
}

nav ul li{
    padding: 0 10px;
    border-bottom: 2px solid transparent;
    transition: all .5s ease;
}

ul li span:hover{
    border-bottom: 2px solid red;
    cursor: pointer;
}

.logo img{
    padding: 10px;
    background-color: rgba(0,0,0,.2);
    border-radius: 50%;
    transition: transform 0.3s ease;
}
.logo img:hover{
    transform: scale(1.2);
}

/* DISEÑO FOOTER*/
footer {
    background-color: #18447f;
    display: flex;
    justify-content: space-between;
    padding: 1% 0;
}
footer > ul{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 0 5%;
    width: 50%;
}
footer > ul li{
    padding: 1% 1%;
}
footer > ul li a{
    color: #f0f0f0;
}
footer > ul li a:visited{
    color: #f0f0f0;
}
footer > div {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 0 5%;
    width: 50%;
}
footer > div p {
    color: #f0f0f0;
    padding: 1%;
}
/* LISTA DE ICONOS REDES SOCIALES */
footer > div ul {
    display: flex;
    width: 15%;
}
footer > div ul li {
    margin: 5%;
}
footer > div ul img {
    width: 100%;
}

button {
    cursor: pointer;
}
.fade-letter {
    opacity: 0;
    animation: fadeIn 0.05s forwards;
}

@keyframes fadeIn {
    to {
        opacity: 1;
    }
}

/* Pelota */
.rotar-imagen {
  animation: girar 2s linear infinite; /* nombre, duración, tipo, repetición */
  /* Opcional: display: inline-block para que funcione correctamente */
  display: inline-block;
  /* Opcional: Ajuste para que gire sobre su centro */
  transform-origin: center;
}

@keyframes girar {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
