/* ГЛОБАЛЬНЫЙ ПЕРЕХВАТ ПЕРЕМЕННЫХ */
:root {
  --color--primary-40: #1c5383 !important;
  --color--primary-50: #1c5383 !important;
  --color--primary-60: #1c5383 !important;
  --color--primary-70: #1c5383 !important; 
  --color--blue-50: #1c5383 !important;
  --color--blue-70: #1c5383 !important; 
  --header-bg-color: #1c5383 !important;
  --zen-sand: #8e735b;
}

/* ШАПКА И ПРЯМОУГОЛЬНИК В УГЛУ */
.site-header__inner::before, 
.site-header::before,
.header-clip::before {
  background-color: #1c5383 !important;
  background-image: none !important;
  fill: #1c5383 !important;
  opacity: 1 !important;
}

/* Белый бургер на синем фоне */
.mobile-nav-button__icon, 
.mobile-nav-button__icon::before, 
.mobile-nav-button__icon::after {
  background-color: #ffffff !important;
}

/* ТЕГИ */
.node__tags a, 
[class*="tags"] a {
  color: #1c5383 !important;
  transition: all 0.3s ease !important;
  text-decoration: none !important;
}

.node__tags a:hover {
  color: var(--zen-sand) !important;
  border-bottom: 2px solid var(--zen-sand) !important;
}

/* БРЕНДИНГ, МЕНЮ И ЗАГОЛОВКИ (ОБНОВЛЕННЫЙ) */
.site-branding__name a,
h1, h2, h3, .node__title a, .page-title,
h1 a, h2 a, h3 a, .page-title a {
  color: #1c5383 !important;
  text-decoration: none !important; /* Убирает подчеркивание */
  transition: color 0.3s ease;
}

/* Состояние при наведении для всех заголовков-ссылок */
h1 a:hover, h2 a:hover, h3 a:hover, 
.node__title a:hover, .page-title a:hover {
  color: var(--zen-sand) !important;
  text-decoration: none !important;
}

.site-branding__slogan {
  color: var(--zen-sand) !important;
  font-family: 'Lora', serif;
  font-style: italic;
}

.primary-nav__menu-link-inner {
  color: #1c5383 !important;
}

.primary-nav__menu-link:hover .primary-nav__menu-link-inner {
  color: var(--zen-sand) !important;
  border-bottom: 2px solid var(--zen-sand) !important;
}

/* БАЗОВАЯ ТИПОГРАФИКА СТАТЬИ */
body {
  font-family: 'Open Sans', sans-serif;
  line-height: 1.95;
  font-size: 1.15rem;
  color: #333;
}

.node__content strong { color: #1c5383 !important; font-weight: 700; }
.node__content em { color: var(--zen-sand) !important; font-style: italic; }

/* Стилизация линии */
hr {
  border: 0;
  height: 1px;
  background: #ccc; /* Цвет линии */
  margin: 2em 0;    /* Отступы сверху и снизу */
}

/* ТАБЛИЦЫ (Акцент на синий) */
.node__content table {
  width: 100%;
  margin: 1.5rem 0;
  border-collapse: collapse;
  background-color: #fff;
  border: 1px solid #e1e1e1;
  border-top: 3px solid #1c5383;
}

.node__content table th {
  background-color: #1c5383;
  color: #ffffff;
  padding: 12px 15px;
  text-align: left;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.85rem;
}

.node__content table td {
  padding: 12px 15px;
  border-bottom: 1px solid #eee;
}

.node__content table tr:nth-child(even) {
  background-color: rgba(28, 83, 131, 0.03);
}

/* ЦИТАТЫ (Синяя черта + Коричневый текст и кавычка) */
.node__content blockquote {
  border-left: 3px solid #1c5383 !important;
  padding: 5px 0 5px 2rem !important;
  margin: 1.5rem 0 !important;
  position: relative;
  font-family: 'Open Sans', sans-serif !important;
  font-style: italic;
  font-weight: 400 !important;
  background: none !important;
  font-size: 1.05rem !important;
  line-height: 1.6 !important;
  color: var(--zen-sand) !important;
}

.node__content blockquote::before,
.node__content blockquote::after {
  content: none !important;
}

/* Стилизация фоновой кавычки под цвет текста */
.node__content blockquote p::before {
  content: "“" !important;
  color: var(--zen-sand) !important;
  font-size: 3.5rem !important;
  position: absolute !important;
  left: 0.4rem !important;
  top: -0.5rem !important;
  opacity: 0.2 !important;
  line-height: 1 !important;
  font-family: serif !important;
}

/* ТЕГ ЦИТАТЫ <q> */
q {
  color: var(--zen-sand);
  quotes: none; /* Отключает автоматические кавычки */
}

q::before,
q::after {
  content: none !important; /* Гарантированный сброс кавычек */
}

/* СПИСКИ (Коричневое тире) */
.node__content ul { 
  list-style: none !important; 
  padding-left: 1.5rem !important; 
  margin: 1.5rem 0 !important; 
}

.node__content ul li::before {
  content: "—" !important;
  color: var(--zen-sand) !important;
  font-weight: bold;
  position: absolute;
  left: -1.5rem;
}

/* ССЫЛКА "ЧИТАТЬ ДАЛЬШЕ" */
.views-field-body a,
.field--name-body .read-more a {
  text-decoration: underline !important;
  color: #1c5383 !important;
  font-weight: 600;
}

.views-field-body a:hover,
.field--name-body .read-more a:hover { 
  color: var(--zen-sand) !important; 
}

/* АДАПТИВНОСТЬ ТАБЛИЦ */
@media screen and (max-width: 768px) {
  .node__content table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

/* ИЗОБРАЖЕНИЯ В КОНТЕНТЕ */
.node__content img {
  max-width: 100%;
  height: auto;
  display: block; /* По умолчанию картинка — отдельный блок по центру */
  margin: 2rem auto;
  border-radius: 2px;
}

/* КЛАССЫ ДЛЯ ОБТЕКАНИЯ (ТОЛЬКО ДЛЯ ДЕСКТОПА) */
@media screen and (min-width: 769px) {
  .img-left { 
    float: left !important; 
    display: inline-block !important; /* Разрешаем тексту встать рядом */
    margin: 0.5rem 2rem 1.5rem 0 !important; 
    max-width: 40% !important; 
  }
  .img-right { 
    float: right !important; 
    display: inline-block !important; /* Разрешаем тексту встать рядом */
    margin: 0.5rem 0 1.5rem 2rem !important; 
    max-width: 40% !important; 
  }
}

/* Картинка в рамке (стиль как у ваших таблиц) */
.img-frame {
  border: 1px solid #e1e1e1;
  border-bottom: 3px solid #1c5383;
  padding: 8px;
  background-color: #fff;
}

/* Очистка обтекания (чтобы следующий текст не "залипал") */
.node__content::after {
  content: "";
  display: table;
  clear: both;
}

/* ==========================================================================
   СТИЛИЗАЦИЯ РЕГИОНА FOOTER TOP
   ========================================================================== */

/* Заголовки блоков (Синий + Коричневая линия снизу) */
.region--footer-top .block h2, 
.footer-block-title {
  color: #1c5383 !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-bottom: 2px solid var(--zen-sand);
  padding-bottom: 8px;
  margin-bottom: 1.5rem;
  margin-top: 0;
}

/* Текстовый блок "О проекте" */
.footer-about-project p {
  font-size: 1rem;
  line-height: 1.7;
  color: #444;
}

/* Контакты и мессенджеры */
.contact-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.contact-item {
  display: flex !important;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 1.2rem;
  font-size: 0.95rem;
  line-height: 1.4;
}

.contact-item .icon {
  font-size: 1.2rem;
  min-width: 25px;
}

.contact-item strong {
  color: var(--zen-sand);
  font-size: 0.75rem;
  text-transform: uppercase;
  display: block;
  margin-bottom: 3px;
}

/* Ссылки в футере */
.region--footer-top a {
  color: #1c5383 !important;
  text-decoration: none !important;
  font-weight: 600;
  transition: color 0.3s ease;
}

.region--footer-top a:hover {
  color: var(--zen-sand) !important;
}

/* Стилизация формы поиска под стиль таблиц сайта */
.region--footer-top .search-block-form input[type="search"] {
  border: 1px solid #e1e1e1 !important;
  border-bottom: 3px solid #1c5383 !important;
  padding: 10px !important;
  width: 100% !important;
  background: #fff !important;
  box-sizing: border-box;
}

.region--footer-top .search-block-form [type="submit"] {
  background-color: #1c5383 !important;
  color: #fff !important;
  border: none !important;
  padding: 10px 20px !important;
  margin-top: 10px;
  width: 100%;
  text-transform: uppercase;
  font-weight: 700;
  cursor: pointer;
}

.region--footer-top .search-block-form [type="submit"]:hover {
  background-color: var(--zen-sand) !important;
}

/* Фикс для адаптивности (чтобы блоки не слипались) */
.region--footer-top .block {
  margin-bottom: 2rem;
}