.hotspot-wrapper {
    display: flex;
    justify-content: center;
    gap: 40px;
    flex-wrap: wrap;
    padding: 20px;
}

.image-hotspot-container {
    position: relative;
    display: inline-block;
    width: 100%;
    max-width: 500px;
    padding-inline: 0;
}

.hotspot-title {
    text-align: center;
    font-weight: 500;
    font-size: 1.2rem;
    margin-bottom: 10px;
    color: white;
    border: 1px solid #ccc;
    padding: 10px;
}

.hotspot-image {
    width: 100%;
    height: auto;
}

.hotspot {
    position: absolute;
    width: 24px;
    height: 24px;
    background: radial-gradient(white 40%, rgba(255, 255, 255, 0) 70%);
    border-radius: 50%;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.hotspot:hover {
    transform: scale(1.2);
    background-color: #0f3d3d;
}

/* Responsivo: en móviles reduce el gap y agranda los hotspots */
@media (max-width: 768px) {
    .hotspot-wrapper {
        gap: 20px;
    }

    .hotspot {
        width: 28px;
        height: 28px;
    }
}