        .hero-section {
            /* 1. Imagen de fondo */
            background-image: url('../../assets/img/Productos.png'); /* <-- REEMPLAZA ESTA URL CON TU IMAGEN */
            
            /* 2. Asegura que la imagen cubra toda la sección */
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;

            /* 3. Ocupa toda la altura de la pantalla */
            height: 100vh; /* vh = viewport height */
            
            /* 4. Color de texto para que contraste con la imagen */
            color: white;

            /* 5. Sombra de texto para mejorar la legibilidad */
            text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.7);
        }


        .product-card {
            border: none;
            border-radius: 1rem; /* Esquinas redondeadas */
            box-shadow: 0 4px 12px rgba(0,0,0,0.08);
            transition: transform 0.3s ease;
        }

        .product-card:hover {
            transform: translateY(-5px); /* Efecto al pasar el cursor */
        }

        .btn-custom-green {
            background-color: #006c36;
            color: white;
            border-radius: 50rem; /* Estilo píldora */
            padding: 0.6rem 2rem; /* Aumentamos un poco el padding */
            font-weight: 600;
        }

        .btn-custom-green:hover {
            background-color: #006c36;
            color: white;
        }
        
        /* Estilos personalizados para la paginación */
        .pagination .page-link {
            border: none;
            color: #6c757d;
            background-color: transparent;
            margin: 0 0.25rem;
            border-radius: 0.5rem;
        }
        
        .pagination .page-item.active .page-link {
            background-color: #e9ecef; /* Fondo para la página activa */
            color: #212529; /* Texto oscuro para la página activa */
        }

        .pagination .page-item:not(.active) .page-link:hover {
            background-color: #e9ecef;
        }
        
        .pagination .page-item.disabled .page-link {
            color: #ced4da;
        }

        /* --- Estilos para la burbuja del botón "Agregar" --- */

/* --- Diseño Mejorado para el Selector de Cantidad --- */

/* Contenedor principal del selector */
.quantity-selector {
    max-width: 130px; /* Limita el ancho total */
    margin: 0 auto;   /* Lo centra en la tarjeta */
}

/* Estilo para los botones '+' y '-' */
.quantity-selector .btn {
    border-color: #006c36; /* Un color de borde suave */
    background-color: #006c36;
    color: white;
    font-weight: 500;
    box-shadow: none !important; /* Elimina el resplandor azul al hacer clic */
    transition: background-color 0.2s ease, color 0.2s ease; /* Efecto suave al pasar el mouse */
}

/* Efecto hover para los botones */
.quantity-selector .btn:hover {
    background-color: #006c36; /* Un verde similar al de Bootstrap */
    color: white;
    border-color: #006c36;
}

/* Estilo para el campo del número */
.quantity-selector .quantity-input {
    /* Elimina los bordes laterales del input para un look unificado */
    border-left: 0;
    border-right: 0;
    
    border-color: #dee2e6;
    background-color: #fff !important; /* Asegura fondo blanco */
    box-shadow: none !important; /* Elimina el resplandor azul al hacer foco */
    
    /* Estilo del texto */
    font-weight: 700; /* Hace el número más visible */
    color: #212529;
    
    /* Ajusta el tamaño para que no sea tan grande */
    max-width: 500px;
    flex: 0 0 50px !important;
}

/* --- Estilos para la Notificación Flotante (Toast) --- */

/* Contenedor que posiciona las notificaciones arriba y al centro */
#toast-container {
    position: fixed; /* Fijo en la pantalla, no se mueve con el scroll */
    top: 20px;
    left: 50%;
    transform: translateX(-50%); /* Truco para centrar horizontalmente */
    z-index: 1056; /* Por encima de otros elementos (como el offcanvas de Bootstrap) */
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px; /* Espacio entre notificaciones si aparecen varias */
}

/* Estilo de cada mensaje individual */
.toast-message {
    background-color: #161616; /* Verde de éxito */
    color: white;
    padding: 1rem 1.5rem;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    font-weight: 500;
    opacity: 0;
    transform: translateY(-30px); /* Empieza un poco arriba */
    transition: opacity 0.4s ease, transform 0.4s ease; /* Animación suave */
    display: flex;
    align-items: center;
    gap: 10px;
}

/* --- Añade este nuevo estilo para la notificación de eliminación --- */

.toast-message.danger {
    background-color: #161616; /* Rojo de Bootstrap para peligro/eliminación */
}

/* Estilo para cuando el mensaje es visible */
.toast-message.show {
    opacity: 1;
    transform: translateY(0); /* Vuelve a su posición original */
}


.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check)+.btn:active
 {
    color: var(--bs-btn-active-color);
    background-color: #ffb81f;
    border-color: #ffb81f;
}

.product-card img {
    height: 220px;
    object-fit: cover;
    border-radius: 1rem 1rem 0 0;
    transition: transform 0.3s ease;
}

.product-card:hover img {
    transform: scale(1.05);
}
.product-card .card-title {
    font-size: 1.15rem;
    font-weight: 600;
    color: #222;
    margin-bottom: 0.25rem;
}

.product-card .product-price-display {
    font-size: 1.1rem;
    font-weight: 700;
    color: #006c36;
    margin-bottom: 0.8rem;
}
.variant-selector label {
    border-radius: 20px;
    padding: 0.35rem 0.9rem;
    font-size: 0.85rem;
    font-weight: 600;
    transition: all 0.2s ease;
    cursor: pointer;
}

.variant-selector input:checked + label {
    background-color: #006c36;
    color: #fff;
    border-color: #006c36;
    box-shadow: 0 2px 6px rgba(0, 108, 54, 0.3);
}
.add-to-cart-btn {
    background: linear-gradient(135deg, #007a3d, #005c2c);
    border: none;
    color: #fff;
    font-weight: 600;
    padding: 0.7rem;
    border-radius: 12px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    transition: transform 0.2s ease, background 0.3s ease;
}

.add-to-cart-btn:hover {
    background: linear-gradient(135deg, #00994f, #006c36);
    transform: scale(1.03);
}

