/* Appointment-only compact layout; keep all editable text at least 16 px. */
.page-randevu .booking-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.page-randevu .booking-fields > label { min-width: 0; }
.page-randevu .booking-fields > .full,
.page-randevu .booking-fields > label:has(input[name="customer_name"]) { grid-column: 1 / -1; }
.page-randevu .booking-fields :is(input, select, textarea) { min-width: 0; min-height: 44px; font-size: 16px; }
.page-randevu .booking-card { scroll-margin-top: 88px; }
.page-randevu .booking-type-grid label > span { height: 100%; }
.page-randevu .booking-type-grid input:focus-visible + span { outline: 3px solid #796400; outline-offset: 3px; }
@media (max-width: 980px) {
  .page-randevu .booking-rule-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .page-randevu .booking-heading { gap: 20px; margin-bottom: 24px; }
  .page-randevu .booking-heading h2 { font-size: clamp(28px, 6vw, 38px); }
  .page-randevu .booking-rule-summary { gap: 6px; }
  .page-randevu .booking-rule-summary article { min-width: 0; padding: 12px 8px; flex-direction: column; gap: 8px; }
  .page-randevu .booking-rule-summary span { min-width: 0; gap: 5px; }
  .page-randevu .booking-rule-summary strong { font-size: 12px; line-height: 1.3; }
  .page-randevu .booking-rule-summary small { font-size: 11px; line-height: 1.4; }
  .page-randevu .booking-rule-summary i { font-size: 20px; }
  .page-randevu .booking-card { padding: 20px 12px; }
  .page-randevu .booking-step { gap: 10px; margin-bottom: 20px; }
  .page-randevu .booking-step > span { flex-basis: 36px; width: 36px; height: 36px; }
  .page-randevu .booking-step h3 { font-size: 21px; }
  .page-randevu .booking-step p { font-size: 14px; line-height: 1.5; }
  .page-randevu .booking-type-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .page-randevu .booking-type-grid label { min-width: 0; }
  .page-randevu .booking-type-grid label > span { min-height: 0; padding: 12px 10px; gap: 7px; grid-template-columns: minmax(0, 1fr); }
  .page-randevu .booking-type-grid label > span em { position: static; grid-row: 1; justify-self: start; font-size: 9px; padding: 4px 5px; }
  .page-randevu .booking-type-grid label > span > i { font-size: 20px; margin: 0; }
  .page-randevu .booking-type-grid label > span strong { font-size: 14px; line-height: 1.35; }
  .page-randevu .booking-type-grid label > span small { font-size: 12px; line-height: 1.45; }
  .page-randevu .booking-fields { gap: 14px 10px; }
  .page-randevu .booking-fields label { font-size: 12px; }
  .page-randevu .booking-fields :is(input, select, textarea) { padding: 11px 9px; }
  .page-randevu .booking-location-panel > div { gap: 8px !important; }
  .page-randevu .booking-location-panel .button { font-size: 12px; min-height: 44px; padding-left: 6px !important; padding-right: 6px !important; gap: 5px; }
  .page-randevu .booking-consent { gap: 8px; }
  .page-randevu .booking-consent input { flex-shrink: 0; }
}
