/* 🔎 ATAJO: presiona Ctrl+F y busca la palabra  RESPONSIVE  para ir directo
   a los estilos de celular/tablet de este archivo.
   Tamaños que se usan aquí: 900px, 768px, 480px */

/* RESET */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
}

/* HEADER */
.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #a8d0d6;
    padding: 10px  30px ;
    
}

.logo img {
    width: 60px;
    display: inline-block;    
    text-decoration: none;  
}

.nav a {
    margin: 0 15px;
    text-decoration: none;
    color: #62365F;;
    font-weight: 500;
    font-family: 'Lato', sans-serif;
}

.acciones {
    display: flex;
    align-items: center;
    gap: 10px;
}

.btn {
    padding: 6px 13px;
    border: none;
    border-radius: 15px;
    background-color: #e6e6e6;
    cursor: pointer;
    text-decoration: none; 
    color: inherit; 
}

.menu {
    font-size: 20px;
    cursor: pointer;
}

/* MAIN */
/* MAIN LOGIN */
.main-login {
    display: flex;
    height: 470px;

    /* ▶ IMAGEN DE FONDO del login (detrás del gato, el formulario y el perro) */
    background-image: url("../imagenes/fondo-login.jpg");  /* cambia el nombre si usas otra imagen */
    background-size: cover;  /* cubre todo el espacio sin deformarse */
    background-position: center;  /* qué parte de la imagen se ve (center, top, bottom) */
    background-repeat: no-repeat;  /* que no se repita */
}

/* LADOS (IMÁGENES) */
.lado {
    width: 33.33%;
    overflow: hidden;
}

.lado img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* FORMULARIO */
.formulario {
    width: 33.33%;
    background-color: #a9b8d3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.formulario input:invalid:not(:placeholder-shown) {
    border: 2px solid red;
    background-color: #ffe6e6;
}

.formulario h2 {
    font-family: 'Langar', cursive;
    margin-bottom: 10px;
}

.formulario label {
    font-family: 'Langar', cursive;
}

.formulario input {
    width: 70%;
    padding: 8px;
    border-radius: 10px;
    border: none;
    background-color: #e6e6e6;
}

.registro {
    font-size: 12px;
    font-family: 'Langar', cursive;
}

.registro a {
    color: red;
    text-decoration: none;
    text-decoration: underline;
}

.registro a:hover {
    font-family: 'Langar', cursive;
}


.formulario button {
    background-color: #2e0a6b;
    color: white;
    border: none;
    padding: 8px 30px;
    border-radius: 10px;
    cursor: pointer;
}

.icono {
    width: 99px;
    margin-top: 5;
}

/* FOOTER */
.footer {
    background-color: #a8d0d6;
    border-top: 5px solid purple;
    display: flex;
    justify-content: space-between;
    padding: 5px;
    padding-bottom: -5px;
    

}

.info {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-bottom: 2%;
}

.footer .info img{
    width: 20%
}

.info img {
    width: 50px;
    margin-top: 30px;
}

.info-footer{
    padding-top: 30px;
    font-family: 'Lato', sans-serif;
}

.extras {
    text-align: right;
}

.extras p{
    padding-top: 30px;
    padding-right: 50px;
    font-family: 'Marmelad', sans-serif;
    font-size: 22px;
}



.iconos img {
    width: 40px;
    cursor: pointer;
    padding-top: 20px;
    padding-left: 10px;
    margin-left: 10px;
    width: 50px;

}

.iconos .imagen{
    margin-left: 30px;
    margin-right: 100px;
    
}

.iconos a{
    margin-left: 30px;
    margin-right: 100px;
}

/* MENU HAMBURGUESA */
.menu {
    display: none;
}

/* ==================================================================
   📱 RESPONSIVE · TABLET PEQUEÑA / CELULAR GRANDE · pantallas de hasta 768px
   Para cambiar cómo se ve en celular/tablet, edita SOLO dentro de este bloque.
   ================================================================== */
@media (max-width: 768px) {

    .nav {  /* ▶ MENÚ DE ESCRITORIO */
        display: none;  /* cómo se muestra (none = oculto) */
    }

    .menu {  /* ▶ MENÚ HAMBURGUESA (☰) */
        display: block;  /* cómo se muestra (none = oculto) */
        font-size: 28px;  /* tamaño del texto */
        cursor: pointer;
    }

}

/* MENU MOBILE BONITO + FUNCIONAL */
.nav-mobile {
    position: absolute;
    top: 70px;
    right: 20px;

    background-color: #a8d0d6;
    border-radius: 12px;
    padding: 15px 20px;

    display: flex;
    flex-direction: column;
    gap: 12px;

    box-shadow: 0 8px 20px rgba(0,0,0,0.2);

    /* oculto por defecto */
    opacity: 0;
    transform: translateY(-10px);
    pointer-events: none;

    transition: all 0.3s ease;
    z-index: 1000;
}

/* LINKS EN CUADRITOS */
.nav-mobile a {
    text-decoration: none;
    color: #62365F;
    font-weight: 600;

    background-color: white;
    padding: 10px 15px;
    border-radius: 10px;

    box-shadow: 0 3px 8px rgba(0,0,0,0.15);

    transition: all 0.25s ease;
}

/* EFECTO BONITO */
.nav-mobile a:hover {
    background-color: #e6e6e6;
    transform: scale(1.05);
}

/* CUANDO SE ABRE */
.nav-mobile.activo {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.registro-refugio {
    font-size: 12px;
    font-family: Arial, Helvetica, sans-serif;
}

.registro-refugio a {
    color: red;
    font-family: Arial, Helvetica, sans-serif;
}
/* ==================================================================
   📱 RESPONSIVE · TABLET PEQUEÑA / CELULAR GRANDE · pantallas de hasta 768px
   Parte de la página: HEADER (evita que los botones se desborden en celular)
   Para cambiar cómo se ve en celular/tablet, edita SOLO dentro de este bloque.
   ================================================================== */
@media (max-width: 768px) {

    .header {  /* ▶ ENCABEZADO DE ARRIBA */
        flex-wrap: wrap;  /* wrap = si no caben, saltan a la siguiente línea */
        row-gap: 10px;  /* separación entre filas */
    }

    .acciones {  /* ▶ BOTONES DEL ENCABEZADO */
        flex-wrap: wrap;  /* wrap = si no caben, saltan a la siguiente línea */
        justify-content: flex-end;  /* alineación horizontal */
        gap: 8px;  /* separación entre elementos */
    }

    .acciones .btn {  /* ▶ BOTONES (Iniciar sesión, Registrarse...) */
        font-size: 12px;  /* tamaño del texto */
        padding: 6px 10px;  /* espacio interno */
    }
}

/* ==================================================================
   📱 RESPONSIVE · CELULAR · pantallas de hasta 480px
   Para cambiar cómo se ve en celular/tablet, edita SOLO dentro de este bloque.
   ================================================================== */
@media (max-width: 480px) {

    .acciones .btn {  /* ▶ BOTONES (Iniciar sesión, Registrarse...) */
        display: none;  /* cómo se muestra (none = oculto) */
    }

    .acciones .btn:first-of-type {
        display: inline-block;  /* cómo se muestra (none = oculto) */
    }

    .logo img {  /* ▶ IMAGEN DEL LOGO */
        width: 46px;  /* ancho */
    }
}

/* ==================================================================
   📱 RESPONSIVE · TABLET VERTICAL · pantallas de hasta 900px
   Parte de la página: FORMULARIO DE SESIÓN
   Para cambiar cómo se ve en celular/tablet, edita SOLO dentro de este bloque.
   ================================================================== */
@media (max-width: 900px) {

    .main-login {  /* ▶ ZONA DEL LOGIN */
        height: auto;  /* alto */
        min-height: 470px;  /* alto mínimo */
        flex-wrap: wrap;  /* wrap = si no caben, saltan a la siguiente línea */
    }

    .lado {  /* ▶ IMÁGENES DECORATIVAS DEL LADO */
        display: none;  /* cómo se muestra (none = oculto) */
    }

    .formulario,
    form.formulario,
    div.formulario {
        width: 90% !important;  /* ancho */
        margin: 30px auto;  /* margen (espacio por fuera) */
        padding: 30px 20px;  /* espacio interno */
    }
}

/* ==================================================================
   📱 RESPONSIVE · CELULAR · pantallas de hasta 480px
   Para cambiar cómo se ve en celular/tablet, edita SOLO dentro de este bloque.
   ================================================================== */
@media (max-width: 480px) {

    .formulario,
    form.formulario,
    div.formulario {
        width: 92% !important;  /* ancho */
        padding: 25px 15px;  /* espacio interno */
    }

    .formulario h2 {
        font-size: 20px;  /* tamaño del texto */
        text-align: center;  /* alineación del texto */
    }
}

/* ==================================================================
   📱 RESPONSIVE · CELULAR · pantallas de hasta 480px
   Parte de la página: ÍCONOS DEL PIE (Instagram + Contacto)
   Para mover los íconos en celular, edita SOLO dentro de este bloque.
   ================================================================== */
@media (max-width: 480px) {

.contenido p {
        font-size: 15px;  /* tamaño del texto */
    }

    .footer {  /* ? PIE DE PÁGINA */
        flex-direction: column;  /* row = en fila | column = uno debajo del otro */
        text-align: center;  /* alineación del texto */
        gap: 15px;  /* separación entre elementos */

    }

    .extras {
        text-align: center;  /* alineación del texto */
    }

    .extras p {
        padding-right: 0;  /* espacio interno derecho */
    }



    /* ? ÍCONOS del pie (Instagram + Contacto) en CELULAR */
    .iconos {
        display: flex;              /* los pone en una fila */
        justify-content: center;    /* los centra en la pantalla */
        align-items: center;
        gap: 20px;                  /* separación entre Instagram y Contacto */
    }

    .iconos img {                   /* los dos íconos */
        width: 40px;                /* tamaño */
        padding-top: 0;             /* sube o baja (más número = más abajo) */
        padding-left: 0;
        margin-left: 0;
    }

    .iconos a {                     /* SOLO el ícono de Contacto */
        margin-left: 0;
        margin-right: 0;
    }

    .iconos > img {                 /* SOLO el ícono de Instagram */
        margin-right: 0;
        padding-top: 0;
    }
}
