/* ============================================================
   Alaya — Reservations / Enquiry form (boho styling)
   Reuses .place-intro/.place-title/.place-lead from place.css.
   ============================================================ */
.resv-wrap{
  max-width:660px;margin:0 auto;
  padding:clamp(1rem,3vw,2rem) 1.5rem clamp(3.5rem,7vw,6rem);
}
.resv-form{display:flex;flex-direction:column;gap:1.1rem}

/* Type selector (segmented pills) */
.resv-types{display:flex;gap:.6rem;margin-bottom:.5rem}
.resv-type{flex:1;margin:0}
.resv-type input{position:absolute;opacity:0;pointer-events:none}
.resv-type span{
  display:block;text-align:center;cursor:pointer;
  padding:.9rem 1rem;border:1px solid var(--line);border-radius:3px;
  font-family:var(--sans);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted);transition:all .25s ease;
}
.resv-type input:checked + span{background:var(--gold);border-color:var(--gold);color:#fff}
.resv-type input:focus-visible + span{outline:2px solid var(--gold-dark);outline-offset:2px}

/* Fields */
.resv-field{display:flex;flex-direction:column;gap:.4rem}
.resv-field > label{
  font-family:var(--sans);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-dark);
}
.resv-field input,.resv-field select,.resv-field textarea{
  font-family:var(--sans);font-size:1rem;color:var(--ink);
  background:#fffdf8;border:1px solid var(--line);border-radius:3px;
  padding:.8rem .9rem;width:100%;
  transition:border-color .25s ease,box-shadow .25s ease;
}
.resv-field input:focus,.resv-field select:focus,.resv-field textarea:focus{
  outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(166,135,80,.15);
}
.resv-field textarea{resize:vertical;min-height:120px}

/* iOS Safari gives date/time inputs an intrinsic minimum width + native chrome,
   which made those cells wider than the rest. Let them shrink and normalize the
   sizing so every field matches. */
.resv-grid > .resv-field,
.resv-field input{min-width:0}
.resv-field input[type="date"],
.resv-field input[type="time"]{
  -webkit-appearance:none;
  appearance:none;
}
.resv-field input[type="date"]::-webkit-date-and-time-value,
.resv-field input[type="time"]::-webkit-date-and-time-value{text-align:left;margin:0}

.resv-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
[data-group]{display:flex;flex-direction:column;gap:1.1rem}
[data-group][hidden]{display:none}   /* truly hide the non-selected form (no ghosted fields) */
@media (max-width:560px){.resv-grid{grid-template-columns:1fr}}

.resv-submit{
  margin-top:.5rem;align-self:flex-start;cursor:pointer;
  font-family:var(--sans);font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;
  background:var(--gold);color:#fff;border:1px solid var(--gold);border-radius:2px;
  padding:.95em 2.6em;transition:background .3s ease,border-color .3s ease;
}
.resv-submit:hover{background:var(--gold-dark);border-color:var(--gold-dark)}
.resv-submit:disabled{opacity:.6;cursor:default}

/* honeypot */
.hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;opacity:0}

.resv-note{font-size:.78rem;color:var(--muted);text-align:center;margin-top:.2rem}
.resv-error{color:#a5452f;font-size:.92rem;text-align:center;margin-top:.4rem}

.resv-success{
  text-align:center;background:var(--cream-2);
  border:1px solid var(--line);border-radius:5px;
  padding:clamp(2.5rem,5vw,3.5rem) 1.5rem;
}
.resv-success .ornament{justify-content:center;max-width:240px;margin:0 auto 1.2rem}
.resv-success h3{font-family:var(--serif);font-weight:500;font-size:1.9rem;color:var(--ink);margin-bottom:.5rem}
.resv-success p{color:var(--muted)}
