/* DG: Оформление общего подвала; подключать после исходных стилей.
   Существующая логика сайта, бронирование и код аналитики сохранены. */
footer:has(> .site-info) { display: block; padding: 26px max(24px, calc((100% - 1320px) / 2)); }
.site-info { box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 1fr) 88px minmax(0, 1fr); align-items: center; gap: 32px; width: 100%; margin: 0 auto; color: var(--muted, #766c65); font-size: 12px; line-height: 1.65; overflow-wrap: anywhere; }
.site-info p { margin: 0; }
/* DG: Слева — реквизиты и копирайт, в указанном владельцем порядке. */
.site-info-operator { grid-column: 1; grid-row: 1; text-align: left; }
.site-info-name { color: var(--ink, #2f241f); font-size: 13px; margin-bottom: 5px !important; }
.site-info-copyright { margin-top: 12px !important; font-size: 11px; }
/* DG: Информер точно в центре: боковые колонки одинаковой ширины.
   Размеры резервируются и при временной недоступности внешней картинки. */
.site-info .counter-slot { grid-column: 2; grid-row: 1; justify-self: center; align-self: center; display: flex; align-items: center; justify-content: center; min-width: 0; width: 88px; height: 31px; }
.site-info .counter-slot > a { display: block; width: 88px; height: 31px; line-height: 1; }
.site-info .counter-slot img { display: block; width: 88px; height: 31px; border-radius: 4px; }
/* DG: Справа — подробные сведения реестра, выравнивание к правому краю. */
.site-info-registry { grid-column: 3; grid-row: 1; text-align: right; }
.site-info-registry strong { color: var(--ink, #2f241f); }
.site-info-registry-heading { font-size: 13px; margin-bottom: 5px !important; }
.site-info a.site-info-registry-link { display: inline-block; margin-top: 6px; color: var(--clay, #b94d31); text-decoration: underline; text-decoration-color: rgba(185,77,49,.35); text-underline-offset: 4px; }
.site-info a:hover { color: var(--clay-dark, #973922); }
.site-info a:focus-visible { outline: 2px solid var(--clay, #b94d31); outline-offset: 4px; border-radius: 2px; }
/* DG: Телефоны и небольшие планшеты — три блока последовательно,
   центрированная Метрика, без наложений и горизонтальной прокрутки. */
@media (max-width: 700px) {
  footer:has(> .site-info) { padding: 24px 16px; }
  .site-info { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .site-info-operator { grid-column: 1; grid-row: 1; text-align: center; }
  .site-info .counter-slot { grid-column: 1; grid-row: 2; }
  .site-info-registry { grid-column: 1; grid-row: 3; padding-top: 20px; border-top: 1px solid var(--line, rgba(47,36,31,.13)); text-align: center; }
}
/* DG: На главной сохранён запас под исходный мобильный виджет бронирования. */
@media (max-width: 560px) {
  footer.site-footer:has(> .site-info) { padding-bottom: 86px; }
}
