    :root { --primary-color: #009688; }
    .navbar { background-color: #fff; box-shadow: 0 2px 10px rgba(0,0,0,0.1); }
    .product-card { 
        border: none; 
        transition: transform 0.3s ease, box-shadow 0.3s ease; 
        border-radius: 15px;
        overflow: hidden;
    }
    .product-card:hover { 
        transform: translateY(-5px); 
        box-shadow: 0 10px 20px rgba(0,0,0,0.12); 
    }
    .btn-primary { background-color: var(--primary-color); border: none; }
    .btn-primary:hover { background-color: #00796b; }
    .price-tag { font-size: 1.25rem; font-weight: bold; color: var(--primary-color); }
    .img-overlay-dark {
        position: relative;
        height: 450px; 
    }
    .img-overlay-dark img {
        filter: brightness(0.7); 
        object-fit: cover;
        height: 100%;
        width: 100%;
        transition: filter 0.5s ease;
    }
    .carousel-caption-centered {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        text-align: center;
        width: 80%;
        color: white;
        text-shadow: 2px 2px 10px rgba(0,0,0,0.8);
        z-index: 10;
    }
    .carousel-item {
        background-color: #000; 
        transition: transform 1s ease-in-out, opacity 1s ease-in-out !important;
    }

    #uploadContainer {
        transition: all 0.3s ease;
        border-style: dashed !important;
    }

    #uploadContainer:hover {
        background-color: #f0f9ff !important; /* Un celeste muy suave */
        border-color: #0dcaf0 !important;
    }

    .border-dashed {
        border-style: dashed !important;
    }

.carousel-caption-centered {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 90%;
    color: white !important; /* Forzamos blanco */
    z-index: 10;
}

.carousel-caption-centered h1, 
.carousel-caption-centered p {
    color: white !important;
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.8); /* Sombra para legibilidad */
}

/* Ajuste para que el overlay oscuro no tape el texto */
.img-overlay-dark::after {
    content: "";
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: rgba(0, 0, 0, 0.4); /* Oscurece un poco la imagen */
    z-index: 1;
}
