/* Maria's Budapest V10 — explicit enquiry-grid correction from live staging evidence. */

/*
 * V8's automatic grid flow was source-correct but did not render as intended on
 * staging. V10 assigns every visible guest field to an explicit grid cell so
 * hidden technical fields / runtime removals cannot shift the layout.
 */
.mb-enquiry-layout {
  grid-template-columns: minmax(250px, .62fr) minmax(0, 1.38fr);
  gap: clamp(24px, 3.2vw, 38px);
}

.mb-enquiry-card {
  padding: 20px 22px 22px;
}

.mb-enquiry-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  grid-template-rows: auto;
  gap: 10px 12px;
  align-items: start;
}

.mb-enquiry-form > .mb-form-row {
  display: contents;
}

.mb-enquiry-form label:has(input[name="arrival_date"]) {
  grid-column: 1;
  grid-row: 1;
}

.mb-enquiry-form label:has(input[name="departure_date"]) {
  grid-column: 2;
  grid-row: 1;
}

.mb-enquiry-form label:has(select[name="guest_count"]) {
  grid-column: 1;
  grid-row: 2;
}

.mb-enquiry-form label:has(select[name="parking_needed"]) {
  grid-column: 2;
  grid-row: 2;
}

.mb-enquiry-form label:has(input[name="guest_name"]) {
  grid-column: 1;
  grid-row: 3;
}

.mb-enquiry-form label:has(input[name="guest_email"]) {
  grid-column: 2;
  grid-row: 3;
}

.mb-enquiry-form label:has(input[name="guest_phone"]) {
  grid-column: 1;
  grid-row: 4;
}

.mb-enquiry-form label:has(textarea[name="message"]) {
  grid-column: 2;
  grid-row: 4;
}

/* The technical language selector is removed by the accepted V7/V8 runtime. */
.mb-enquiry-form label:has(select[name="language"]) {
  display: none !important;
}

.mb-enquiry-form .mb-privacy-inline {
  grid-column: 1 / -1;
  grid-row: 5;
}

.mb-enquiry-form > .mb-btn {
  grid-column: 2;
  grid-row: 6;
  margin-top: 2px;
}

.mb-enquiry-form input,
.mb-enquiry-form select,
.mb-enquiry-form textarea {
  min-height: 43px;
}

.mb-enquiry-form textarea {
  height: 43px;
  min-height: 43px;
}

.mb-enquiry-copy {
  max-width: 410px;
  padding-top: 4px;
}

.mb-enquiry-copy h2 {
  font-size: clamp(2.25rem, 3.2vw, 3.35rem);
  margin-bottom: 13px;
}

.mb-enquiry-rule {
  margin-top: 16px;
}

@media (max-width: 900px) {
  .mb-enquiry-layout {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .mb-enquiry-copy {
    max-width: 700px;
  }
}

@media (max-width: 620px) {
  .mb-enquiry-form {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .mb-enquiry-form label:has(input[name="arrival_date"]),
  .mb-enquiry-form label:has(input[name="departure_date"]),
  .mb-enquiry-form label:has(select[name="guest_count"]),
  .mb-enquiry-form label:has(select[name="parking_needed"]),
  .mb-enquiry-form label:has(input[name="guest_name"]),
  .mb-enquiry-form label:has(input[name="guest_email"]),
  .mb-enquiry-form label:has(input[name="guest_phone"]),
  .mb-enquiry-form label:has(textarea[name="message"]),
  .mb-enquiry-form .mb-privacy-inline,
  .mb-enquiry-form > .mb-btn {
    grid-column: 1;
    grid-row: auto;
  }

  .mb-enquiry-form > .mb-btn {
    width: 100%;
    justify-self: stretch;
  }
}
