.modal{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.6);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  z-index: 10000;
}
.modal.show{ display: flex; }

.modal-dialog{
  background:#eaf4ff;
  border-radius:12px;
  max-width:900px;
  width:100%;
  position:relative;
  padding:1rem;
  box-shadow:0 10px 40px rgba(0,0,0,.4);
}

.modal-close{
  position:absolute;
  top:.5rem; right:.8rem;
  background:transparent; border:none;
  font-size:1.5rem; cursor:pointer;
}

.modal-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
}

.modal-media{
  width:100%;
  border-radius:10px;
}

.modal-content p{
  line-height:1.6;
}

.btn-reserva{
  display:inline-block;
  margin-top:.75rem;
  padding:.6rem 1rem;
  background:#22c55e;
  color:#fff;
  text-decoration:none;
  border-radius:.5rem;
  font-weight:700;
}
.btn-reserva:hover{ background:#16a34a; }

@media (max-width:768px){
  .modal-grid{ grid-template-columns:1fr; }
}
