/* Destination modal: full-screen split panels */
.destination-modal { display: none; }
.destination-modal--visible { display: block; }
.destination-modal__backdrop {
  position: fixed; inset: 0; background: rgba(0,0,0,0.6); z-index: 9997;
}
.destination-modal__content {
  position: fixed; inset: 0; display: flex; align-items: stretch; justify-content: center; z-index: 9999; pointer-events: auto; /* allow children (close button) to receive clicks */
}
.destination-modal__inner {
  width: 100vw; height: 100vh; background: transparent; display: flex; overflow: hidden; pointer-events: auto;
}
.destination-modal__close {
  position: fixed; right: 16px; top: 16px; background: rgba(0,0,0,0.6); border: none; font-size: 28px; color: #fff; z-index: 10005; cursor: pointer; padding: 10px 12px; border-radius: 8px; pointer-events: auto;
}

/* Increase hit area for touch devices */
.destination-modal__close:before {
  content: "";
  position: absolute;
  left: -6px; top: -6px; right: -6px; bottom: -6px;
}
.destination-option { flex: 1 1 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 40px; cursor: pointer; transition: transform .18s ease; text-align: center; color: #fff; min-height: 100vh; position: relative; }
.destination-option__media { color: #ffffff; width: 180px; height: 180px; display:flex; align-items:center; justify-content:center; border-radius: 12px; margin-bottom: 20px; box-shadow: 0 8px 30px rgba(0,0,0,0.25); }
.destination-option__body h3 { margin: 0 0 8px; font-size: 2rem; color: #fff; }
.destination-option__body p { margin: 0; color: rgba(255,255,255,0.92); font-size: 1.05rem; }
.destination-option:hover { transform: translateY(-6px); }

/* Left: Copper palette from logo (full panel color) */
.destination-option--holiday { background: linear-gradient(180deg,#b86a46,#c87d50); }
.destination-option--holiday .destination-option__media { background: rgba(255,255,255,0.08); }

/* Right: Warm yellow */
.destination-option--rental { background: linear-gradient(180deg,#f7d46b,#ffd24b); color: #222; }
.destination-option--rental .destination-option__media { background: rgba(0,0,0,0.06); }

/* Ensure inner elements are above the background */
.destination-option, .destination-option * { position: relative; z-index: 2; }

@media (max-width: 800px) {
  .destination-modal__inner { flex-direction: column; height: 100vh; }
  .destination-option { width: 100%; padding: 28px; min-height: 50vh; }
  .destination-option__media { width: 120px; height: 120px; }
  .destination-option__body h3 { font-size: 1.6rem; }
  .destination-option__body p { font-size: 1rem; }
}

/* body scroll lock when modal is open */
body.destination-modal-open { overflow: hidden; touch-action: none; }

/* larger touch target for accessibility */
.destination-option { -webkit-tap-highlight-color: rgba(0,0,0,0.15); }
