/**
 * Зоореестр — зелёная версия оформления каталога.
 *
 * Дизайн взят со страницы каталога школ/центров (карточки, типографика,
 * боковая панель), основной цвет заменён с #6C5CE7 на #478529.
 * Файл подключается последним и перекрывает:
 *   - старые стили сохранённой страницы (агрегированный CSS сайта);
 *   - синие/жёлто-зелёные оттенки прежней темы.
 */

:root {
    --ds-primary: #478529;
    --ds-primary-hover: #35651c;
    --ds-accent: #a9cd98;
    --ds-tint: #e3f0dc;
    --ds-hover-bg: #f3f9ef;
    --ds-surface: #ffffff;
    --ds-page-bg: #f6f8f3;
    --ds-text: #0f172a;
    --ds-text-muted: #64748b;
    --ds-border: #e2e8f0;
}

/* ------------------------------------------------------------------ */
/* 1. Фон, контейнер и типографика                                      */
/* ------------------------------------------------------------------ */

body {
    background-color: var(--ds-page-bg);
    font-family: 'Inter', sans-serif, Arial;
}

#block-bootstrap-barrio-subtheme-page-title .title {
    color: #1f2937;
    font-weight: 700;
}

/* ------------------------------------------------------------------ */
/* 2. Карточки организаций — как на странице школ                      */
/* ------------------------------------------------------------------ */

/* Убираем старые жёлто-зелёные рамки сохранённой страницы. */
.node--type-vetklinika,
.view-katalog-veterinarnykh-klinik {
    --border-color: var(--ds-accent);
}

.node--type-vetklinika.node--view-mode-teaser {
    padding: 24px !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    border-left: 4px solid var(--ds-accent) !important;
    border-radius: var(--ds-radius-card) !important;
    margin-bottom: var(--ds-space-3) !important;
    background: var(--ds-surface);
    box-shadow: var(--ds-shadow-card);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.node--type-vetklinika.node--view-mode-teaser:hover {
    box-shadow: var(--ds-shadow-card-hover);
    transform: translateY(-2px);
}

.node--type-vetklinika.node--view-mode-teaser .tax-catalog-fond-item {
    padding: 0 !important;
}

@media (max-width: 991.2px) {
    .node--type-vetklinika.node--view-mode-teaser {
        padding: 16px !important;
    }
}

/* Старая тень на .views-row больше не нужна — её рисует карточка. */
.view-taxonomy-term .views-row {
    margin-bottom: 0;
    box-shadow: none;
    border-radius: 0 !important;
}

.page-vocabulary-regiony .view-taxonomy-term .view-content .views-row:first-child {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
}

/* Если у организации нет логотипа, не оставляем пустую колонку. */
.tax-catalog-fond-item > .col-lg-3:not(:has(.field)) {
    display: none;
}

.tax-catalog-fond-item > .col-lg-3:not(:has(.field)) + .col-lg-9 {
    flex: 0 0 100%;
    max-width: 100%;
}

/* Название */
.node--type-vetklinika .polnoe_nazvanie {
    margin-bottom: 0.5rem;
}

.node--type-vetklinika .polnoe_nazvanie h3 {
    margin: 0;
    color: #1f2937;
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.3;
}

.node--type-vetklinika .polnoe_nazvanie h3 .field {
    font-weight: inherit;
}

/* Дублирующее полное наименование на этой странице совпадает с заголовком. */
.node--type-vetklinika .field--name-field-polnoe-nazvanie {
    display: none;
}

.node--type-vetklinika .font-comment:empty {
    display: none;
}

/* Подписи и значения полей */
.node--type-vetklinika .field__label {
    margin-bottom: 0.15rem;
    color: var(--ds-text-muted);
    font-size: 0.92rem;
    font-weight: 600;
}

.node--type-vetklinika .field__item {
    color: #1f2937;
}

.node--type-vetklinika a {
    color: var(--ds-primary);
    text-decoration: none;
}

.node--type-vetklinika a:hover,
.node--type-vetklinika a:focus {
    color: var(--ds-primary-hover);
    text-decoration: underline;
}

.node--type-vetklinika .field--name-field-gorod {
    margin-bottom: 0.35rem;
}

/* Отделяем контакты и адрес от верхней части карточки. */
.node--type-vetklinika .field--name-field-filialy {
    margin-top: 0.35rem;
}

.node--type-vetklinika .paragraph--type--filialy-kliniki {
    margin-top: 10px;
    padding-top: 14px;
    border-top: 1px solid var(--ds-border);
}

/* Адрес — «таблеткой», как на странице школ. */
.node--type-vetklinika .field--name-field-adres-kliniki .field__label {
    display: inline-block;
    margin-right: 0.55rem;
    vertical-align: middle;
}

.node--type-vetklinika .field--name-field-adres-kliniki .field__item {
    display: inline-block;
    margin: 0.15rem 0.35rem 0.15rem 0;
    padding: 0.35rem 0.75rem;
    color: #3f4a3a;
    background: var(--ds-hover-bg);
    border: 1px solid var(--ds-tint);
    border-radius: 20px;
    font-size: 0.85rem;
    line-height: 1.2;
}

.node--type-vetklinika .field--name-field-dep-phone .field__item {
    font-weight: 500;
}

.node--type-vetklinika .paragraph--type--grafik-raboty {
    color: #374151;
    font-size: 0.92rem;
}

/* Если график не заполнен, не показываем одинокую подпись. */
.node--type-vetklinika .field--name-field-grafik-raboty:not(:has(.field--name-field-den-nedeli)) {
    display: none;
}

.node--type-vetklinika .field--name-field-den-nedeli {
    color: var(--ds-text-muted);
}

/* ------------------------------------------------------------------ */
/* 3. Боковая панель «Регионы и города»                                */
/* ------------------------------------------------------------------ */

/* Сохранённая страница после инициализации аккордеона дублирует
   индикатор «+» и форму поиска — оставляем по одному экземпляру. */
#block-klinikiigoroda .submenu-indicator ~ .submenu-indicator {
    display: none;
}

#form-find-regions .filterform ~ .filterform {
    display: none;
}

#block-klinikiigoroda .jquery-accordion-menu.white {
    box-shadow: var(--ds-shadow-panel);
    border-radius: var(--ds-radius-card);
    background: var(--ds-surface);
    padding-bottom: 12px;
}

#block-klinikiigoroda .jquery-accordion-menu.white .jquery-accordion-menu-header {
    background: var(--ds-hover-bg);
    color: #1f2937;
}

#block-klinikiigoroda .jquery-accordion-menu.white .filterinput {
    border-color: var(--ds-border);
    color: var(--ds-text);
}

#block-klinikiigoroda .jquery-accordion-menu.white .filterinput:focus {
    border-color: var(--ds-accent);
    box-shadow: 0 0 0 4px rgba(71, 133, 41, 0.16);
}

#block-klinikiigoroda .jquery-accordion-menu.white > ul > li.active > a,
#block-klinikiigoroda .jquery-accordion-menu.white ul a.active {
    color: var(--ds-primary);
    background: var(--ds-tint);
}

#block-klinikiigoroda .jquery-accordion-menu.white ul li a:hover,
#block-klinikiigoroda .jquery-accordion-menu.white > ul > li:hover > a {
    color: var(--ds-primary);
    background: var(--ds-hover-bg);
}

#block-klinikiigoroda .jquery-accordion-menu.white .submenu-indicator {
    color: var(--ds-primary);
}

/* Активный город: полоска слева была жёлто-зелёной (#ABC725). */
#block-klinikiigoroda .jquery-accordion-menu.white ul.submenu li a.active,
#block-klinikiigoroda .jquery-accordion-menu.white ul.submenu li:hover > a.active {
    border-left-color: var(--ds-primary) !important;
}

#block-klinikiigoroda .jquery-accordion-menu.white ul ul.submenu li:hover > a {
    border-left-color: var(--ds-tint);
    background: var(--ds-hover-bg);
}

/* ------------------------------------------------------------------ */
/* 4. Кнопки, ссылки, формы, подвал, cookie-баннер                      */
/* ------------------------------------------------------------------ */

body a,
body .link {
    color: var(--ds-primary);
}

body a:hover,
body a:focus,
body .link:hover,
body .link:focus {
    color: var(--ds-primary-hover);
}

.btn-primary,
.btn-primary:focus {
    background-color: var(--ds-primary);
    border-color: var(--ds-primary);
}

.btn-primary:hover {
    color: var(--ds-primary);
    background-color: #ffffff;
    border-color: var(--ds-primary);
}

.btn-primary:focus,
.form-control:focus {
    box-shadow: 0 0 0 0.25rem rgba(71, 133, 41, 0.2);
}

.form-control:focus {
    border-color: var(--ds-primary);
}

.text-primary {
    color: var(--ds-primary) !important;
}

.bg-primary {
    background-color: var(--ds-primary) !important;
}

.site-footer {
    background: #2f5a1b;
}

/* Логотип в подвале — на светлой подложке, чтобы читался на тёмном фоне. */
#block-logovfuter img {
    padding: 8px 12px;
    background: #ffffff;
    border-radius: 12px;
}

.site-footer a {
    color: #ffffff;
}

.site-footer a:hover,
.site-footer a:focus {
    color: #d7eccb;
}

::selection {
    color: #ffffff;
    background: rgba(71, 133, 41, 0.85);
}

#consent-banner {
    border-top: 1px solid var(--ds-primary);
}

#consent-banner p a {
    color: var(--ds-primary);
}

#consent-banner p a:hover {
    color: var(--ds-primary-hover);
}

#accept-btn {
    color: #ffffff;
    background-color: var(--ds-primary);
    border-color: var(--ds-primary);
}

#accept-btn:hover,
#accept-btn:focus {
    color: var(--ds-primary);
    background-color: #ffffff;
    border-color: var(--ds-primary);
}
