.modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
    transition: opacity 0.5s ease;
}

.modal-content {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 40%; /* tamaño para web */
    border-radius: 10px;
    position: relative;
}

@media (max-width: 768px) {
    .modal-content {
       margin-top: 50%;
        width: 70%; /* tamaño para moviles */
    }
}

.close {
    color: #aaa;
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

.modal.fade-in {
    display: block;
    opacity: 0;
}

.modal.show {
    opacity: 1;
}

.modal.fade-out {
    display: block;
    opacity: 0;
}
