.booking-hero{
  --brand: #C0C0C0;
  --accent: #B4CF32;
  --card-bg: rgba(255,255,255,0.0);
  --input-bg: rgba(255,255,255,0.80);
  --input-bg-focus: rgba(255,255,255,0.95);
  --input-border: color-mix(in oklab, var(--brand) 88%, white 12%);
  --shadow: 0 8px 28px rgba(0,0,0,.14);
  position: relative;
  padding-block: clamp(28px, 8vw, 80px);
}

.booking-hero__inner{
  display:flex;
  justify-content:flex-start;
}

.booking-hero__form-card{
  box-sizing: border-box;
  width: min(420px, 92vw);
  margin-left: clamp(8px, 4vw, 40px);
  padding: clamp(16px, 3.6vw, 28px);
  border-radius: 16px;
  background: var(--card-bg);
  backdrop-filter: blur(2px);
  color: var(--brand);
  box-shadow: none;
}
.booking-hero__title{
  margin: 0 0 14px 0;
  font-weight: 800;
  letter-spacing:.02em;
  color: var(--brand);
}

.booking-form{ display:grid; gap: 12px; }

.booking-form__row{
  display:grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 12px;
}

.booking-form__field{
  display:grid; gap: 6px; min-width:0;
}

.booking-form__label{
  font-size: 13px; font-weight:700; letter-spacing:.02em;
  color: var(--brand); opacity:.9;
}

.booking-form__input{
  box-sizing: border-box;
  width: 100%;
  border-radius: 12px;
  padding: 12px 14px;
  border: 2px solid var(--input-border);
  background: var(--input-bg);
  color: #0e2a3e;
  font-weight: 600;
  outline: none;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.booking-form__input::placeholder{ color:#4c6a86; opacity:.9; }
.booking-form__input:focus{
  border-color: var(--brand);
  background: var(--input-bg-focus);
  box-shadow: 0 0 0 3px color-mix(in oklab, var(--brand) 24%, transparent);
}

.booking-form__radio{
  display:inline-flex; gap:8px; align-items:center;
  font-weight:700; color:var(--brand);
}
.booking-form__radio input{ accent-color: var(--brand); }

.booking-form__submit{
  margin-top: 6px;
  padding: 12px 18px;
  border:0;
  border-radius:12px;
  background: var(--accent);          color:#111;                         font-weight:800;
  letter-spacing:.02em;
  cursor:pointer;
  transition: transform .12s ease, filter .2s ease, background .25s ease;
}
.booking-form__submit:hover{
  filter: brightness(1.1);
}
.booking-form__submit:active{
  transform: translateY(1px);
  filter: brightness(0.95);
}

.booking-form__note{
  margin:6px 0 0 0;
  font-size:12px;
  color:#c0c0c0cc;
}

.lf-text-\[\#797979\].lf-whitespace-pre, .lf-text-\[\#797979\] {
    color: #1e1e1e !important;
}

@media (max-width: 640px){
  .booking-form__row{ grid-template-columns: 1fr; }
}
