@layer pages {
  /* Запись на приём: карточка с формой (на /price/ и /zapis/) и страница /zapis/ */
  .booking-card {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 32px;
    min-width: 0;
  }
  .booking-card__head { display: flex; flex-direction: column; gap: 6px; }
  .booking-card__phone {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding-top: 16px;
    border-top: 1px solid var(--line);
  }
  .booking-card__phone .phone-link { font-size: 18px; }

  /* Врач и услуга из ссылки с другой страницы */
  .booking-choice {
    margin: 0;
    padding: 12px 16px;
    border-radius: var(--r-ctl);
    background: var(--soft);
    color: var(--ink-2);
    font-size: 16px;
    line-height: 1.5;
  }
  .booking-choice b { color: var(--ink); font-weight: 600; }
  .booking-choice__reset { display: inline-block; margin-left: 8px; padding-block: 8px; font-weight: 600; }

  /* Сообщение вместо формы */
  .booking-success { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
  .booking-success__title { font-size: 24px; line-height: 1.3; }
  .booking-success p { margin: 0; }
  .booking-success__phone { white-space: nowrap; }

  /* /zapis/: одна колонка */
  .booking-page { display: flex; flex-direction: column; gap: 24px; max-width: 560px; }
  .booking-contacts { display: flex; flex-direction: column; gap: 16px; }
  .booking-contacts__row { display: flex; gap: 14px; }
  .booking-contacts__row .icon { margin-top: 3px; color: var(--accent-ink); }

  @media (max-width: 820px) {
    .booking-card { padding: 20px; }
  }
}
