/* ===== Reset general ===== */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* ===== Fondo de pantalla ===== */
body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: #898989;
    color: #eee;
    padding: 20px;
}

/* Fondo fijo de imagen */
.fondo {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: -1;
    overflow: hidden;
}

.fondo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    filter: brightness(0.8);
}

/* ===== Portada de la tienda ===== */
.ancho-contenido {
    max-width: 1000px;
    margin: 0 auto;
}

.portada img {
    width: 100%;
    height: 500px;
    border-radius: 10px;
    margin-bottom: 20px;
}

/* ===== Contenedor de productos ===== */
.contenedor {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

/* ===== Cada tarjeta de producto ===== */
.producto {
    background-color: #1e1e1e;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.6);
    width: calc(25% - 20px);
    min-width: 240px;
    padding: 10px;
    text-align: center;
    transition: transform 0.3s ease;
    cursor: pointer;
}

.producto:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.9);
}

/* Imágenes y videos del producto */
.producto img,
.producto video {
    width: 100%;
    height: 600px;
    object-fit: cover;
    border-radius: 4px;
    margin-bottom: 10px;
}

/* Nombre del producto */
.producto h3 {
    font-size: 1.1rem;
    color: #fff;
    font-weight: 700;
    margin-bottom: 8px;
}

/* Precio */
.producto-precio {
    font-size: 1rem;
    color: #ccc;
    margin-bottom: 10px;
}

/* Botón "Agregar al carrito" */
.producto button {
    background-color: #33ad46;
    border: none;
    padding: 10px 20px;
    color: #000;
    font-weight: 600;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.producto button:hover {
    background-color: #2de54a;
}

/* ===== Responsive: móviles y pantallas chicas ===== */
@media (max-width: 992px) {
    .producto {
        width: 32%;
    }
}

@media (max-width: 768px) {
    .producto {
        width: 48%;
    }
}

@media (max-width: 480px) {
    .producto {
        width: 100%;
    }

    .producto img,
    .producto video {
        height: 580px;
    }

    .portada img {
        width: 100%;
        height: 200px;
    }
}
