/* RESET */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

body{
    background:#000;
    color:#fff;
}

/* HEADER */
header{
    background:#111;
    padding:20px;
    text-align:center;
    border-bottom:3px solid red;
}

header h1{
    color:red;
}

nav{
    margin-top:10px;
}

nav a{
    color:#fff;
    margin:0 10px;
    text-decoration:none;
    font-weight:bold;
}

nav a:hover{
    color:red;
}

/* SECCIONES */
section{
    padding:40px;
}

/* GRID */
.grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
    gap:20px;
}

.card{
    border:1px solid red;
    padding:15px;
    text-align:center;
    background:#111;
}

.card img{
    width:100%;
    height:180px;
    object-fit:cover;
    background:#222;
}

/* FORMULARIOS */
form{
    max-width:600px;
    margin:auto;
    display:flex;
    flex-direction:column;
    gap:10px;
}

input, textarea, select{
    padding:10px;
    border:none;
    outline:none;
}

button{
    padding:12px;
    background:red;
    color:white;
    border:none;
    cursor:pointer;
    font-weight:bold;
}

button:hover{
    background:#b30000;
}

/* FOOTER */
footer{
    background:#111;
    text-align:center;
    padding:15px;
    border-top:3px solid red;
    margin-top:40px;
}

/* LOGO */
.header-logo{
    background:#000;
    border-bottom:3px solid red;
    padding:30px 20px;
    text-align:center;
}

.logo-container{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
}

.logo{
    width:120px;
    max-width:100%;
    height:auto;
}

.logo-container h1{
    color:white;
    font-size:28px;
    letter-spacing:1px;
}

@media (min-width:768px){
    .logo-container{
        flex-direction:row;
        justify-content:center;
    }

    .logo{
        width:90px;
    }
}

/* ===== CARRUSEL CORREGIDO (SIN DEFORMAR IMÁGENES) ===== */

.carousel{
    width:100%;
    height:260px;
    overflow:hidden;
    border-bottom:3px solid red;
    position:relative;
}

.carousel-track{
    display:flex;
    height:100%;
    animation: slide 21s infinite;
}

.carousel-track img{
    width:100%;
    height:100%;
    object-fit:contain; /* CAMBIO CLAVE: NO DEFORMA */
    flex-shrink:0;
    background:#000;
}

/* Animación con pausas reales */
@keyframes slide{
    0%    { transform:translateX(0); }
    14%   { transform:translateX(0); }

    18%   { transform:translateX(-100%); }
    32%   { transform:translateX(-100%); }

    36%   { transform:translateX(-200%); }
    50%   { transform:translateX(-200%); }

    54%   { transform:translateX(-300%); }
    68%   { transform:translateX(-300%); }

    72%   { transform:translateX(-400%); }
    86%   { transform:translateX(-400%); }

    90%   { transform:translateX(-500%); }
    100%  { transform:translateX(-500%); }
}