/* =====================
   RESET / BASE
===================== */
*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
	margin: 0;
	font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
	color: #222;
	background: #fff;
}

ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
a {
	color: inherit;
	text-decoration: none;
}
hr {
	border: none;
	height: 1px;
	background-color: #e5e5e5;
}

/* =====================
   LAYOUT
===================== */
.container {
	max-width: 1200px;
	margin: 0 auto;
}

/* =====================
   CONTENT LINKS
===================== */
.single-content p a,
.single-content li a,
.info-content p a,
.info-content li a {
	color: #1e6bd6;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

.single-content p a:hover,
.single-content li a:hover,
.info-content p a:hover,
.info-content li a:hover {
	color: #124c9c;
}

/* =====================
   Banners
===================== */
.banners img {
  border-radius: 6px;
}

/* =====================
   404
===================== */
/* Общий контейнер */
.error-404 {
    max-width: 600px;
    margin: 80px auto;
    padding: 0 20px;
    text-align: center;
}

/* Код ошибки */
.error-code {
    font-size: 64px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #333;
}

/* Заголовок */
.error-title {
    font-size: 20px;
    margin-bottom: 10px;
    color: #222;
}

/* Описание */
.error-description {
    font-size: 16px;
    color: #555;
    margin-bottom: 30px;
}

/* Блок с кнопкой */
.error-actions {
    margin-bottom: 30px;
}

/* Кнопка */
.button-home {
    display: inline-block;
    padding: 10px 20px;
    font-size: 15px;
    color: #fff;
    background-color: #005baa; /* классический гос-синий */
    text-decoration: none;
    border-radius: 3px;
    transition: background-color 0.2s ease;
}

.button-home:hover,
.button-home:focus {
    background-color: #004a8c;
}

/* Доп. текст */
.error-help {
    font-size: 14px;
    color: #777;
}

/* Адаптив */
@media (max-width: 480px) {
    .error-code {
        font-size: 48px;
    }

    .error-title {
        font-size: 18px;
    }

    .error-description {
        font-size: 15px;
    }
}
   
/* =====================
   COOKIES
===================== */
.cookie-item {
	border-bottom: 1px solid #eee;
	padding: 10px 0;
}

.cookie-header {
	display: grid;
	grid-template-columns: 1fr auto auto;
	align-items: center;
	gap: 12px;
}

.cookie-info {
	min-width: 0;
}

.cookie-info p {
	margin: 2px 0 0;
	font-size: 11px;
	color: #777;
}

.cookie-actions {
	display: block;
}

.cookie-controls {
	display: flex;
	align-items: center;
	gap: 10px;
}

.arrow {
	width: 10px;
	height: 10px;
	border-right: 2px solid #333;
	border-bottom: 2px solid #333;
	transform: rotate(45deg);
	transition: 0.3s;
	cursor: pointer;
}

.cookie-item.active .arrow {
	transform: rotate(-135deg);
}

.cookie-body {
	max-height: 0;
	overflow: hidden;
	transition: 0.3s;
	font-size: 12px;
	color: #555;
}

.cookie-item.active .cookie-body {
	max-height: 200px;
	margin-top: 10px;
}

.cookie-link-text {
	color: #1e6bd6 !important;
	text-decoration: underline;
	text-decoration-color: rgba(30, 107, 214, 0.4);
}

.cookie-link-text:hover {
	color: #124c9c !important;
}

.cookie-banner {
	position: fixed;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	background: #1e1e1e;
	color: #fff;
	padding: 16px 20px;
	border-radius: 12px;
	display: none;
	align-items: center;
	gap: 15px;
	z-index: 9999;
	box-shadow: 0 10px 30px rgba(0,0,0,0.2);
	width: 98%;
	max-width: 1200px;
}

.cookie-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;

	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
}

.cookie-icon {
	flex-shrink: 0;
}
.cookie-icon img {
	width: 53px;
	height: 53px;
	object-fit: contain;
	display: block;
	opacity: 0.9;
}
.cookie-icon img {
	transition: transform 0.3s ease;
}

.cookie-banner:hover .cookie-icon img {
	transform: rotate(-5deg) scale(1.05);
}

.cookie-banner p {
	margin: 0;
	font-size: 13px;
	line-height: 1.4;
	max-width: 81%;
}

.cookie-banner .buttons {
	display: flex;
	gap: 10px;
	flex-wrap: nowrap;
}

.cookie-banner button {
	border: none;
	padding: 8px 14px;
	border-radius: 8px;
	cursor: pointer;
	font-size: 14px;
	white-space: nowrap;
}

#accept-all {
	background: #4CAF50;
	color: #fff;
}

#decline-all {
	background: #444;
	color: #fff;
}

#open-settings {
	background: transparent;
	color: #aaa;
}

.cookie-modal {
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,0.5);
	display: none;
	justify-content: center;
	align-items: center;
	/*z-index: 99999;*/
}

.cookie-modal-content {
	background: #fff;
	padding: 25px;
	border-radius: 14px;
	width: 400px;
	max-width: 90%;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.cookie-modal h3 {
	margin: 0;
}

.cookie-modal-content {
	position: relative;
}

.cookie-modal-close {
	position: absolute;
	top: 28px;
	right: 19px;

	background: none;
	border: none;
	cursor: pointer;
}


.cookie-note {
	font-size: 13px;
	color: #777;
	margin-top: -10px;
}

.switch {
	display: flex;
	justify-content: space-between;
	align-items: right;
	gap: 10px;
}

.switch input {
	display: none;
}

.switch.disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

.switch.disabled .slider {
	background: #4CAF50; /* всегда включён */
	cursor: not-allowed;
}

.switch.disabled .slider::before {
	transform: translateX(20px);
}

.switch.disabled span {
	color: #888;
}

.slider {
	width: 44px;
	height: 24px;
	background: #ccc;
	border-radius: 50px;
	position: relative;
	transition: 0.3s;
	cursor: pointer;
}

.slider::before {
	content: "";
	position: absolute;
	width: 18px;
	height: 18px;
	background: #fff;
	border-radius: 50%;
	top: 3px;
	left: 3px;
	transition: 0.3s;
}

input:checked + .slider {
	background: #4CAF50;
}

input:checked + .slider::before {
	transform: translateX(20px);
}

#save-settings {
	background: #4CAF50;
	color: #fff;
	border: none;
	padding: 10px;
	border-radius: 8px;
	cursor: pointer;
}

button:hover {
	opacity: 0.9;
}

.cookie-banner {
	animation: fadeInUp 0.3s ease;
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translate(-50%, 20px);
	}
	to {
		opacity: 1;
		transform: translate(-50%, 0);
	}
}
.cookie-footer {
	margin-top: 10px;
	text-align: center;
}

.cookie-footer a {
	font-size: 13px;
	color: #777;
	text-decoration: none;
}

.cookie-footer a:hover {
	text-decoration: underline;
}

/* =====================
   HEADER
===================== */
.site-header {
	border-bottom: 1px solid #e5e5e5;
	z-index: 1000;
}
/*main {
  border-top: 1px solid #e5e5e5;
}*/

.header-top,
.header-bc,
.content-area {
	padding: 8px 16px;
}

.header-inner {
	display: flex;
	align-items: center;
	gap: 24px;
}

.header-controls {
	margin-left: auto;
	display: flex;
	align-items: center;
	padding-left: 16px;
	border-left: 1px solid #e5e5e5;
}

.logo {
	display: none;
	font-weight: 600;
	text-decoration: none;
	color: inherit;
}

.site-title {
	font-family: 'Montserrat', system-ui, sans-serif;
	font-weight: 600;
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: 0.02em;
	margin: 0;
}

.custom-logo-link img {
	max-height: 64px;
	width: auto;
}

/* =====================
   BURGER
===================== */
.burger {
	width: 32px;
	height: 24px;
	position: relative;
	background: none;
	border: 0;
	cursor: pointer;
	padding: 0;
}

.burger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: currentColor;
	transition: transform 0.25s ease, opacity 0.2s ease;
}

/* линии */
.burger span:nth-child(1) {
	top: 0;
}

.burger span:nth-child(2) {
	top: 11px;
}

.burger span:nth-child(3) {
	bottom: 0;
}

/* состояние ОТКРЫТО */
.burger.is-open span:nth-child(1) {
	transform: translateY(11px) rotate(45deg);
}

.burger.is-open span:nth-child(2) {
	opacity: 0;
}

.burger.is-open span:nth-child(3) {
	transform: translateY(-11px) rotate(-45deg);
}

/* =====================
   BREADCRUMBS
===================== */
.breadcrumbs {
	font-size: 12px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1px;
	z-index: 1000;
}

.breadcrumbs a {
	text-decoration: none;
	color: #0073aa;
}

.breadcrumbs a:hover {
	text-decoration: underline;
}

/* стрелка */
.breadcrumbs .bc-sep {
	width: 6px;
	height: 6px;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	transform: rotate(-45deg);
	margin: 0 4px;
}

/* текущая страница */
.breadcrumbs .current {
	color: #555;
	font-weight: 500;
}

/* =====================
   NAV / MENU (base)
===================== */
.header-menu {
	display: flex;
	align-items: center;
	position: relative;
	z-index: 1001; /* выше overlay */
}

.main-nav {
  display: none;
  flex: 1;
  width: auto;
}

.menu {
  display: flex;
  align-items: center;
}

.menu a,
.sub-menu a {
  text-decoration: none;
  color: inherit;
  font-weight: 500;
  display: flex;
  align-items: center;
  padding: 0 12px;      /* ← ГОРИЗОНТАЛЬНЫЕ ОТСТУПЫ */
  min-height: 40px;     /* ← ВМЕСТО line-height */
}

.menu li {
  display: block;
}
/*======================
   search
===================== */
/* лупа */
	
.header-search-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  background: #fff;     /* белый фон */
  border: none;         /* без рамки */
  padding: 0;

  cursor: pointer;      /* палец */
  color: #666;          /* цвет иконки */

  transition: opacity .15s ease .05s;
  
}

.header-search-toggle svg {
  display: block;
}

.header-search-submit {
    display: block;
    border: none;
    background: #111;
    color: #fff;
    padding: 0 16px;
    height: 40px;
    border-radius: 0 6px 6px 0;
    cursor: pointer;
    font-size: 14px;
  }
.header-search-submit:disabled {
  opacity: .4;
  cursor: default;
}  

/* форма скрыта по умолчанию */
.header-search-form {
  display: none;
  flex: 1 1 auto;
  align-items: center;
  gap: 12px;
  padding: 0 12px;
  min-height: 40px;
  min-width: 0; /* ВАЖНО */
  z-index: 1002; /* чуть выше меню */
  position: relative;
}
.header-search-form form {
  width: 100%;
  display: flex;
  align-items: center;
  
  opacity: 0;
  transform: translateY(-4px);
  pointer-events: none;

  transition: opacity .2s ease, transform .2s ease;
}


/*.header-search-form input {
  flex: 1;
  border: none;
  border-bottom: 2px solid #111;
  font-size: 18px;
  outline: none;
}*/
.header-search-input {
  flex: 1;
  border: 1px solid #ccc;
  border-right: none;             /* убираем правый */
  border-radius: 6px 0 0 6px;     /* только слева */
  padding: 0 12px;
  height: 40px;
  font-size: 15px;
  outline: none;
  background: #fff;
}

.header-search-close {
  width: 40px;
  height: 40px;
  border: 1px solid #ccc;
  border-left: none;              /* убираем левый */
  border-radius: 0 6px 6px 0;     /* только справа */
  background: #fff;
  cursor: pointer;
  font-size: 18px;
}

/* активный режим */
.header-menu.search-active .main-nav {
  display: none;
}

.header-menu.search-active .header-search-form {
  display: flex;
}
.header-menu.search-active .header-search-form form {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.header-menu.search-active .header-search-toggle {
  display: none;
}
.header-search-close {
  display: none;
}

.header-menu.search-active .header-search-close {
  display: block;
}

.header-search-form form:focus-within .header-search-input,
.header-search-form form:focus-within .header-search-close {
  border-color: #111;
}

/* затемнение */
.header-search-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.35);
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease;
  z-index: 900;
}

/* активное */
.header-menu.search-active + .header-search-overlay {
  opacity: 1;
  pointer-events: auto;
}
/* =====================
   LIVE search
===================== */
.live-search-container {
  position: absolute;
  top: calc(100% + 9px);
  left: 0;
  width: 100%;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
  /*margin-top: 6px;*/
  z-index: 2000;
  display: none; 
}
.live-search-container.is-visible {
  display: block;
}

.live-search-container.is-visible::before {
  content: '';
  position: absolute;
  top: -6px;
  left: 24px;             /* положение стрелки */
  width: 12px;
  height: 12px;
  background: #fff;
  transform: rotate(45deg);
  box-shadow: -2px -2px 4px rgba(0,0,0,.04);
}

.live-search-results {
  list-style: none;
  margin: 0;
  padding: 8px 0;
}

.live-search-results li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 8px 16px;
  text-decoration: none;
  color: #222;
}

.live-search-title {
  font-size: 14px;
  font-weight: 500;
}

.live-search-date {
  font-size: 12px;
  color: #999;
  white-space: nowrap;
}

.live-search-results a.is-active {
  background: #f5f5f5;
}

.live-search-results li a:hover {
  background: #f5f5f5;
}

.live-search-empty {
  padding: 12px 16px;
  color: #999;
  font-size: 12px;
}

.live-search-meta {
  font-size: 12px;
  color: #888;
  padding: 10px 16px 6px;
  border-bottom: 1px solid #f0f0f0;
}

/* =====================
   CONTACTS MAP
===================== */

.map-placeholder {
  position: absolute;
  top: 0;
  width: 100%;
  height: 520px;
  background: #f5f5f5;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 15px;
  text-align: center;
}

.map-placeholder button {
  padding: 10px 20px;
  cursor: pointer;
}

/* FULL WIDTH MAP ROW */

.map-fullwidth {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* ОБЁРТКА */

.contacts-map-wrapper {
  position: relative;
  overflow: hidden;
}

.contacts-map-wrapper::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.15);
  pointer-events: none;
}

/* КАРТА */

#contacts-map {
  width: 100%;
  height: 520px;
}

/* КАРТОЧКА */

.contacts-card {

  position: absolute;
  top: 40px;
  left: calc((100vw - 1200px)/2 + 16px);

  width: 320px;

  background:rgba(255,255,255,.85);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  padding: 24px;

  border-radius: 8px;

  box-shadow: 0 12px 30px rgba(0,0,0,.18);
  
  z-index: 5;
}

/* ТЕКСТ */

.contacts-card h2 {
  margin-top: 0;
  margin-bottom: 16px;
}

.contact-item {
  margin-bottom: 14px;
  font-size: 14px;
}

/* КНОПКИ */

.contacts-buttons {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.map-btn {
  display: block;
  padding: 10px 14px;

  background: #1e6bd6;
  color: #fff;

  text-align: center;

  border-radius: 6px;
  text-decoration: none;

  font-size: 14px;
}

.map-btn-secondary {
  background: #f2f2f2;
  color: #111;
}

.map-btn:hover {
  opacity: .9;
}

/* =====================
   HOME ICON
===================== */
.home .menu-item-home {
  display: none;
}
.menu-item-home > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  text-indent: -9999px;
  overflow: hidden;
  position: relative;
}

.menu-item-home > a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/wp-content/themes/ombudsman/assets/icons/home.svg") center no-repeat;
  background-size: 20px 20px;
}

/* =====================
   DROPDOWN ARROW
===================== */
.menu-item-has-children > a {
  display: inline-flex;
  align-items: center;
}

.menu-item-has-children > a::after {
  content: "";
  width: 6px;
  height: 6px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  margin-left: 6px;
  transform: rotate(45deg);
  transition: transform .2s ease;
}

/* =====================
   SUBMENU (base)
===================== */
.sub-menu {
  display: none;
  background: #fff;
  /*min-width: 200px;*/
  width: 100%;
  box-shadow: 0 8px 16px rgba(0,0,0,.2);
  z-index:1100;
}

/* =====================
   TYPOGRAPHY / MAIN
===================== */
.site-main {
  /*padding: 24px 0;*/
  font-size: 16px;
  line-height: 1.6;
}

.site-main h1,
.site-main h2,
.site-main h3 {
  line-height: 1.3;
  /*margin: 1.5em 0 .75em;*/
}

.site-main p {
  margin: 0 0 1em;
  /*max-width: 720px;*/
}

/* =======================
   News Tag Cloud - Sidebar
======================= */
.news-tag-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 8px; /* расстояние между тегами */
  margin: 0;
  padding: 0;
}

.news-tag-cloud .tag-link {
  display: inline-block;
  padding: 6px 12px;
  background-color: #f2f2f2;
  border-radius: 999px; /* полностью округлые */
  font-size: 0.9em;
  color: #333;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

/* hover */
.news-tag-cloud .tag-link:hover {
  background-color: #e0e0e0;
  color: #000;
}

/* активный тег (текущая страница тега) */
.news-tag-cloud .tag-link.current {
  background-color: #cce5ff;
  color: #0056b3;
}

/* =====================
   Full Width Image Grid
===================== */

.media-grid-row {
	/*width: 100vw;*/
	margin-left: calc(50% - 49vw);
	margin-right: calc(50% - 49vw);
}

.media-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 картинки в ряд */
    grid-auto-rows: min-content;
	gap: 8px; /* расстояние между картинками */
    width: 100vw;
    max-width: 100%;
    box-sizing: border-box;
}

/* Каждый элемент галереи */
.media-grid-item {
    overflow: hidden;
    border-radius: 6px;
    box-shadow: 0 6px 12px rgba(0,0,0,0.12);
}

/* Изображения */
.media-grid-item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.3s ease;
}


/* При наведении немного масштабируем 
.custom-gallery-item img:hover {
    transform: scale(1.05);
}*/


/*=====================
	thanks carousel
=====================*/
.thanks-carousel-wrapper {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 60px;
}

.thanks-carousel {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 24px;
  justify-content: center;   /* центрируем сетку */
  width: 100%;
  align-items: stretch; /* 🔥 ключ */
  scroll-behavior: smooth;
}

.thanks-item {
  display: flex;
  flex-direction: column;
  height: 100%;            /* 🔥 ключевой момент */
  max-width: 320px;
  width: 100%;
  justify-self: center;
  text-decoration: none;
  color: inherit;
}

.thanks-item img,
.thanks-pdf-icon {
  width: 100%;
  height: 160px;
  border-radius: 5px;
  background: #f3f3f3;
  box-shadow: inset 0 0 0 1px #e0e0e0;
}

.thanks-pdf-icon {
  background: url("/wp-content/themes/ombudsman/assets/icons/pdf.svg") center no-repeat;
  background-size: 64px 80px;
  background-color: #f3f3f3;
}

.thanks-nav {
  border: none;
  background: none;
  font-size: 22px;
  cursor: pointer;
  color: #777;
}

.thanks-nav:disabled {
  opacity: .3;
  cursor: default;
}

.thanks-item {
  flex: 0 0 140px;
  text-align: center;
  color: inherit;
  text-decoration: none;
}

.thanks-thumb {
  height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.thanks-thumb img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.thanks-caption {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;   /* 1 строка */
  overflow: hidden;

  font-size: 15px;
  line-height: 1.3;
  margin-top: 8px;
  text-align: center;
}

.thanks-item:hover .thanks-caption {
  text-decoration: underline;
}



/* =======================
   News Widget Decor
======================= */
.news-widget-list {
    margin: 0;
    padding: 0;
    font-family: 'Inter', sans-serif;
}

.news-widget-month {
    margin: 16px 0 8px;
    font-size: 0.95em;
    font-weight: 600;
    color: #555;
    font-family: 'Montserrat', sans-serif; /* заголовок месяца */
}

.news-widget-items {
    list-style: none;
    margin: 0;
    padding: 0;
}

.news-widget-item {
    display: flex;
    flex-direction: column; /* дата сверху, заголовок снизу */
    /*margin-bottom: 12px;*/
    padding: 6px 12px;
    border-radius: 6px;
    transition: background-color 0.2s ease;
}

.news-widget-item:hover {
    background-color: #f5f5f5;
}

.news-widget-date {
    font-size: 0.8em;
    color: #888;
    margin-bottom: 4px; /* небольшой отступ */
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
}

.news-widget-title {
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    color: #222;
    text-decoration: none;
    line-height: 1.3;
}

.news-widget-title:hover {
    text-decoration: underline;
}

.news-widget-all {
    margin-top: 12px !important;
    font-size: 0.9em;
}

.news-widget-all a {
    /*color: #0073aa;*/
    text-decoration: none;
    font-weight: 500;
	padding: 6px 12px;

}

.news-widget-all a:hover {
    text-decoration: underline;
}

/* Виджет Омбудсмена */
.ombudsman-widget-inner {
    text-align: center;
    padding: 16px;
    background: #fff;

    font-family: 'Inter', sans-serif;
}

.ombudsman-photo img {
    width: 100%;
    /*max-width: 220px;*/
    height: auto;
    display: block;
    /*margin: 0 auto 12px;*/
    object-fit: cover;
	    border-radius: 5px;               /* плавные углы */
    margin: 0 auto 16px;              /* центрирование + отступ снизу */
    overflow: hidden;                  /* чтобы ничего не вылазило за углы */
    box-shadow: 0 6px 12px rgba(0,0,0,0.12); /* лёгкая тень */
}

.ombudsman-fio {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: #222;
    line-height: 1.2;
    margin: 0;
}

/* =======================
   SiteOrigin text Widget
======================= */
.textwidget {
	font-size: 14px;
    color: #666;
    align-items: center;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
}
.textwidget p a {
	text-decoration: underline;
}

/* =======================
   SiteOrigin Image Widget
   (стиль как у WP-виджета)
======================= */

/* контейнер виджета */
.so-widget-sow-image {
  text-align: center;
  font-family: 'Inter', sans-serif;
}

/* обертка картинки */
.so-widget-sow-image .sow-image-container {
  margin: 0 0 16px;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0 6px 12px rgba(0,0,0,0.12);
}

/* сама картинка */
.so-widget-sow-image img.so-widget-image {
  display: block;
  width: 100%;
  height: auto;
}

/* заголовок (ФИО) */
.so-widget-sow-image .widget-title {
  margin: 0;
  font-family: 'Montserrat', sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.2;
  color: #222;
}



/* =====================
   MAIN
===================== */
.content-wrapper {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

/* Основной контент */
.content-area {
  flex: 1;
  min-width: 0; /* для корректного переноса текста */
}

/* =====================
   SIDEBAR
===================== */
.sidebar {
  width: 300px;
}

.ombudsman-column {
	margin-bottom: 30px;
}

/* =====================
   NEWS-ARCHIVE page
===================== */
.news-archive {
    max-width: 1024px;
    margin: 0 auto;
    padding: 30px 15px;
}

.news-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.news-item {
    border: 1px solid #eee;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0,0,0,0.05);
}

.news-thumb {
    display: block;
    width: 100%;
    height: 200px; /* или любая фиксированная высота блока */
    overflow: hidden;
    border-bottom: 1px solid #eee;
}

.news-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* ключевой момент */
    display: block;
}

.news-content {
    padding: 15px;
}

.news-date {
    display: block;
    font-size: 0.85rem;
    color: #666;
    margin-bottom: 5px;
}

.news-title {
    font-size: 1.2rem;
    margin: 0 0 10px;
}

.news-title a {
    color: #222;
    text-decoration: none;
}

.news-title a:hover {
    text-decoration: underline;
}

.news-excerpt {
    font-size: 0.95rem;
    color: #333;
}

.news-pagination {
    margin-top: 30px;
    text-align: center;
}

/* NEWS Main v2*/
.news-archive-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* две колонки на десктопе */
    gap: 16px;
}

.news-archive-item,
.news-search-item {
    overflow: hidden;
    border-radius: 6px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    display: flex;
    flex-direction: column;
}

.news-thumb img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
    transition: transform 0.3s;
}
.news-thumb svg {
	background-color:#f3f3f3;
	width: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s;
}

.news-info {
    padding: 8px 12px;
}

.news-date {
    font-size: 0.85em;
    color: #666;
}

.news-title {
    display: block;
    font-weight: 600;
    color: #222;
    text-decoration: none;
    margin-top: 4px;
}

.news-title:hover {
    text-decoration: underline;
}

.news-archive-more {
    margin-top: 24px;
    text-align: right;
}

.news-archive-more a {
    display: inline-block;
    padding: 10px 18px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-weight: 500;
    text-decoration: none;
    color: inherit;
    transition: all 0.2s ease;
}

.news-archive-more a:hover {
    background: #f5f5f5;
}
/*=====================
	OUR WIN
=====================*/
.news-widget-item {
  position: relative;
  /*padding-left: 34px;  место под плашку */
}

/* ВЕРТИКАЛЬНАЯ ПЛАШКА ПОБЕДА */
.news-widget-item.is-victory::before {
  content: 'ПОБЕДА';
  position: absolute;
  left: -23px;        /* вылазим за контейнер */
  top: 0;
  bottom: 0;          /* ← во всю высоту строки */

  display: flex;
  align-items: center;
  justify-content: center;

  writing-mode: vertical-lr; /* ← снизу вверх */
  transform: rotate(180deg); /* переворачиваем текст */

  background: #1e6bd6;
  color: #fff;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.15em;

  padding: 6px 5px;
  border-radius: 0 3px 3px 0;

  box-shadow: 2px 0px 8px rgba(0,0,0,0.2);
  pointer-events: none;
}

/* карточка */
.news-archive-item {
  position: relative;
  overflow: hidden;
}

/* ЛЕНТА ПОБЕДА */
.news-archive-item.is-victory::before {
  content: 'ПОБЕДА';
  position: absolute;
  top: 80px;
  left: -10px;

  background: #1e6bd6;
  color: #fff;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  padding: 6px 48px;

  transform: rotate(-45deg);
  transform-origin: left center;

  box-shadow: 0 4px 10px rgba(0,0,0,0.25);
  z-index: 3;

  pointer-events: none;
}

/* =========================
   NEWS FILTER — LEBEDEV STYLE
========================= */

.news-filter {
  margin-bottom: 16px;
  position: sticky;
  top: 0px; /* под шапкой */
  background: #fff;
  z-index: 5;
  padding-top: 8px;
    padding-bottom: 16px;
  margin-left: -24px;
  margin-right: -24px;
  padding-left: 24px;
  padding-right: 24px;
  box-shadow: 0 6px 12px rgba(0,0,0,0.04);
}

/* --- ГОДЫ --- */
.news-filter-years {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 20px;
  align-items: center;
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 10px;
}

.news-filter-years a {
  font-family: 'Montserrat', sans-serif;
  font-size: 18px;
  font-weight: 600;
  text-decoration: none;
  color: #999;
  position: relative;
  transition: color .2s ease;
}

.news-filter-years a:hover {
  color: #222;
}

/* активный год */
.news-filter-years a.active {
  color: #000;
}

/* подчеркивание активного года */
.news-filter-years a.active::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -11px;
  height: 2px;
  background: #000;
}

/* --- МЕСЯЦЫ --- */
.news-filter-months {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
}

.news-filter-months a,
.news-filter-months span {
  font-size: 14px;
  text-decoration: none;
  color: #666;
  transition: color .2s ease;
}

/* активный месяц */
.news-filter-months a.active {
  color: #000;
  font-weight: 600;
}

/* доступный месяц */
.news-filter-months a:hover {
  color: #000;
}

/* недоступный месяц */
.news-filter-months span.disabled {
  color: #ccc;
  cursor: default;
}

#news-load-more {
  display: inline-block;
  margin: 32px auto 0;
  padding: 0px 0;

  background: none;
  border: none;
  border-bottom: 1px dotted #111;

  font-family: inherit;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.02em;

  color: #111;
  cursor: pointer;

  transition: 
    color 0.2s ease,
    border-color 0.2s ease,
    transform 0.15s ease;
}

/* hover */
#news-load-more:hover {
  color: #1e6bd6;
  border-bottom-color: #1e6bd6;
}

/* active (нажатие) */
#news-load-more:active {
  transform: translateY(1px);
}

/* disabled / loading */
#news-load-more[disabled] {
  color: #999;
  border-bottom-color: #ddd;
  cursor: default;
  transform: none;
}

/* ===== ТЕГ ВМЕСТО ГОДОВ/МЕСЯЦЕВ ===== */

.news-filter-tag {
  display: flex;
  align-items: center;
  gap: 10px;

  font-size: 14px;
  line-height: 1.2;
}

/* "Тег:" — приглушённый, служебный */
.news-filter-tag .label {
  color: #999;
  font-weight: 400;
}

/* Название тега — главный акцент */
.news-filter-tag strong {
  font-weight: 600;
  color: #111;
  position: relative;
  padding-bottom: 2px;
}

/* Тонкое подчеркивание, как у активного года */
.news-filter-tag strong::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 2px;
  background: #111;
}

/* Крестик-сброс */
.news-filter-reset {
  margin-left: 6px;
  text-decoration: none;

  font-size: 16px;
  /*line-height: 1;*/
  font-weight: 400;

  color: #999;
  transition: color .15s ease;
}

.news-filter-reset:hover {
  color: #111;
}

/* Внутренние режимы */
.news-filter-view {
  transition: opacity .2s ease;
}

.news-filter-view.is-hidden {
  display: none;
}


/* ===== ПОИСК НОВОСТЕЙ ===== */

.news-search {
  margin-bottom: 24px;
}

/* форма */
.news-search form {
  display: block;
}

/* обёртка WP */
.news-search form > div {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* label только для screen reader */
.news-search .screen-reader-text {
  position: absolute;
  left: -9999px;
}

/* input text */
.news-search input[type="text"] {
  flex: 1;

  border: none;
  border-bottom: 2px solid #e5e5e5;
  background: transparent;

  padding: 6px 0;
  font-size: 15px;
  line-height: 1.4;
  color: #111;

  outline: none;
  transition: border-color .15s ease;
}

/* placeholder (если добавишь позже) */
.news-search input[type="text"]::placeholder {
  color: #999;
}

/* focus */
.news-search input[type="text"]:focus {
  border-bottom-color: #111;
}

/* submit */
.news-search input[type="submit"] {
  border: none;
  background: none;
  padding: 0;

  font-size: 14px;
  font-weight: 500;
  color: #999;

  cursor: pointer;
  transition: color .15s ease;
}

/* hover */
.news-search input[type="submit"]:hover {
  color: #111;
}


.news-excerpt {
  display: block;
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.5;
  color: #555;
  text-decoration: none;
  transition: color .15s ease;
}

.news-excerpt a {
	color: #000;
	text-decoration: none;
}

.news-excerpt:hover {
  color: #111;
}

.excerpt-arrow {
  margin-left: 6px;
  opacity: .6;
  transition: opacity .15s ease;
}

.news-excerpt:hover .excerpt-arrow {
  opacity: 1;
}

.news-search-grid {
  column-count: 2;
  column-gap: 32px;
}

.news-search-item {
  break-inside: avoid;
  margin-bottom: 32px;
  display: inline-block;
  width: 100%;
}
.search-highlight {
  background: rgba(30, 107, 214, 0.12);
  color: #111;
  padding: 0 2px;
  border-radius: 3px;
}

/* ===== SINGLE POST ===== */

.single-post {
  max-width: 100%;
}

.single-header {
  margin-bottom: 20px;
}

.single-date {
  font-size: 13px;
  color: #999;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
}

.single-title {
  font-size: 28px;
  line-height: 1.25;
  margin: 8px 0 0;
}

.single-thumb {
  margin: 20px 0;
}

.single-thumb img {
  width: 100%;
  height: auto;
  border-radius: 6px;
}

.single-content {
  font-size: 16px;
  line-height: 1.7;
  color: #222;
}

/* ===== Выравнивание изображений WordPress ===== */

.single-content .alignleft {
    float: left;
    margin: 0 24px 20px 0;
    max-width: 45%;
    height: auto;
}

.single-content .alignright {
    float: right;
    margin: 0 0 20px 24px;
    max-width: 45%;
    height: auto;
}

.single-content .aligncenter {
    display: block;
    margin: 20px auto;
}

.single-content .alignnone {
    margin: 20px 0;
}

.single-content::after {
    content: "";
    display: block;
    clear: both;
}

.single-content img {
    max-width: 100%;
    height: auto;
	border-radius: 5px;
    box-shadow: 0 6px 12px rgba(0,0,0,.12);
}

.single-content img {
    transition: box-shadow .2s ease;
}

.single-content img:hover {
    box-shadow: 0 10px 24px rgba(0,0,0,.16);
}

.single-content ul,
.single-content ol {
    margin: 0 0 1.2em 1.5em;
}

.single-content ul {
    list-style: disc;
}

.single-content ol {
    list-style: decimal;
}

.single-content li {
    margin-bottom: .4em;
}

.single-content hr {
    margin: 2em 0;
    border: 0;
    border-top: 1px solid #e5e5e5;
}

.single-content p {
  margin-bottom: 1em;
}

.single-content h2,
.single-content h3 {
  margin-top: 1.5em;
}

.single-article {
  position: relative;
}

.single-badge-victory {
  position: absolute;
  top: 0;
  right: 0;

  background: #1e6bd6;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  padding: 6px 12px;
  border-radius: 0 6px 0 6px;
}

.single-tags {
  /*margin-top: 30px;*/
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.single-tag {
  font-size: 13px;
  padding: 6px 12px;
  background: #f2f2f2;
  border-radius: 999px;
  text-decoration: none;
  color: #333;
  transition: background .15s ease;
}

.single-tag:hover {
  background: #e5e5e5;
}

.single-nav {
  margin-top: 40px;
  margin-bottom: 40px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  font-size: 13px;
}

.single-nav a {
  text-decoration: none;
  color: #666;
}

.single-nav a:hover {
  color: #111;
}

.single-related {
  margin-top: 30px;
}

.single-related h3 {
  margin-bottom: 20px;
}

.single-related-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.related-item {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.related-item img {
  width: 80px;
  height: 60px;
  object-fit: cover;
  border-radius: 4px;
  flex-shrink: 0;
}

.related-title {
  font-size: 13px;
  line-height: 1.4;
}

.single-share {
  margin-top: 30px;
  font-size: 14px;
  color: #777;
  display: flex;
  gap: 12px;
}

.single-share a {
  text-decoration: none;
  color: #1e6bd6;
}

.single-share a:hover {
  text-decoration: underline;
}

.single-sidebar {
  display: none;
  padding: 8px 16px;
}
.single-sidebar > * + * {
  margin-top: 30px;
}

.single-meta-mobile {
  margin-top: 40px;
}

.single-sidebar .related-item {
  text-decoration: none;
  color: #666;
}

.single-sidebar .related-item:hover {
  color: #111;
}

.single-sidebar .related-title {
  color: inherit;
}

.single-share {
  display: flex;
  gap: 14px;
}

.share-icon {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;

  background: #f2f2f2;
  border-radius: 6px;

  color: #666;
  transition: all .15s ease;
}

.share-icon:hover {
  background: #e5e5e5;
  color: #111;
}

/* =====================
	INFO page
===================== */
.info-layout {
  justify-content: center;
}

.info-page {
  max-width: 1200px;
}

.info-title {
  font-size: 30px;
  margin-bottom: 24px;
}

.info-content {
  font-size: 16px;
  line-height: 1.7;
}

.info-content h2 {
  margin-top: 40px;
}

.info-content p {
  margin-bottom: 1em;
}	

/* =====================
   FOOTER
===================== */
.site-footer{
border-top:1px solid #e5e5e5;
background:#fafafa;
}

.site-footer a{
  text-decoration: underline;
  color: #555;
}

.site-footer a:hover{
  color:#111;
}

.footer-inner {
  display: flex;
  align-items: center;
  gap: 24px;
}

.footer-inner .logo {
	filter: grayscale (100%);
}

/* основной блок */

.footer-main{
	padding:40px 16px;

	display:flex;
	flex-direction:column;
	align-items:center;   /* ← центрируем */

	text-align:center;    /* ← текст тоже */

	gap:20px;
	padding:40px 16px;
}

/* название */

.footer-site-title{
	font-family:'Montserrat',sans-serif;
	font-size:18px;
	font-weight:600;
}

/* меню */

.footer-menu{

	display:flex;

	gap:24px;

	flex-wrap:wrap;
	justify-content:center;   /* ← ВАЖНО */

}

.footer-menu li{
	list-style:none;
}

.footer-menu a{
	font-size:14px;
	color:#555;
}

.footer-menu a:hover{
	color:#111;
}

/* контакты */

.footer-contacts{

	display:flex;
	flex-direction: column;
	gap:6px;

	flex-wrap:wrap;

	font-size:14px;
	color:#666;
	align-items:center;      /* ← центрируем */

	font-family:'Montserrat', sans-serif;
	font-weight:500;
}

/* соцсети */

.footer-social{
	display:flex;
	gap:14px;
}

.footer-social a{
	font-size:14px;
	color:#666;
}

.footer-social a:hover{
	color:#111;
}

/* нижняя строка */

.footer-bottom{
	border-top:1px solid #e5e5e5;
}

.footer-bottom-inner{

	display:flex;
	justify-content:space-between;
	align-items:center;
	padding:16px;
	font-size:13px;
	color:#777;
}

.footer-links{
	display:flex;
	gap:16px;
}

.footer-links a{
	color:#777;
}

.footer-links a:hover{
	color:#111;
}

.btn-accessibility{
	border:1px solid #ccc;
	background:#fff;
	padding:8px 14px;
	font-size:14px;
	border-radius:6px;
	cursor:pointer;
}

.btn-accessibility:hover{
	background:#f2f2f2;
}

.scroll-top{
	position:fixed;

	right:20px;
	bottom:20px;

	width:40px;
	height:40px;

	border:none;

	background:#111;
	color:#fff;

	border-radius:6px;

	cursor:pointer;

	opacity:0;
	pointer-events:none;

	transition:.2s;
}

.scroll-top.is-visible{
	opacity:1;
	pointer-events:auto;
}


/* =====================
   DESKTOP (≥992px)
===================== */
@media (min-width: 992px) {
	
	.header-search-toggle {
		margin-left: auto;
	}

	/* пункт с подменю — подсветка при hover или focus */
	.menu-item-has-children:hover > a,
	.menu-item-has-children:focus-within > a {
		background-color: #f5f5f5; /* лёгкая подсветка */
		border-top-left-radius: 6px;   /* закругление верхнего левого угла */
		border-top-right-radius: 6px;  /* закругление верхнего правого угла */
	}

	  /* плавный переход */
	.menu > li > a {
		transition: background-color 0.2s ease, border-color 0.2s ease, border-radius 0.2s ease;
	}

	.menu > li > a {
		font-size: 15px; /* было ~16px */
	}

	.sub-menu a {
		font-size: 14px;
	}

	.sub-menu li a:hover {
		background-color: #f0f0f0; /* лёгкая подсветка */
		opacity: 1;
	}

	/* --- ХОВЕР / FOCUS --- */
	.header-search-toggle:hover,
	.menu > li:hover > a,
	.menu > li:focus-within > a {
		background-color: #f5f5f5;   /* лёгкая подсветка */
		border-top-left-radius: 6px;   /* закругление верхнего левого угла */
		border-top-right-radius: 6px;  /* закругление верхнего правого угла */
		opacity: 1;
	}

	  /* --- АКТИВНЫЙ ПУНКТ --- */
	.menu .sub-menu .current-menu-item > a  {
		/*background-color: #e0f0e0;    немного темнее, чем hover */
		border-top-left-radius: 0px;   /* закругление верхнего левого угла */
		border-top-right-radius: 0px;  /* закругление верхнего правого угла */
	}

	.menu .current_page_item > a,
	.menu .current-menu-parent > a,
	.menu .current-menu-item > a  {
		opacity: .3;
		/*background-color: #e0e0e0;    немного темнее, чем hover */
		border-top-left-radius: 6px;   /* закругление верхнего левого угла */
		border-top-right-radius: 6px;  /* закругление верхнего правого угла */
	 
	}

	 /* выпадающее подменю */
	.menu-item-has-children > .sub-menu {
		border-bottom-left-radius: 6px;
		border-bottom-right-radius: 6px;
		overflow: hidden; /* чтобы фон и hover не вылезали */
	}

	.main-nav {
		display: flex;
	}

	.burger {
		display: none;
	}

	.logo {
		display: block;
	}

	.menu {
		flex-direction: row;
		gap: 5px;
	}

	.menu li {
		position: relative;
	}

	.menu li:hover > .sub-menu {
		display: block;
		position: absolute;
		top: 100%;
		left: 0;
	}

	.menu li:hover > a::after {
		transform: translateY(-40%) rotate(225deg);
	}

	.thanks-caption {
		-webkit-line-clamp: 2;
	}
	.news-search-grid {
		column-count: 2;
		column-gap: 32px;
	}

	.live-search-hint {
		display: block;
		font-size: 12px;
		color: #aaa;
		padding: 4px 16px 8px;
		border-bottom: 1px solid #f3f3f3;
	}
		
	.single-layout {
		display: flex;
		gap: 40px;
	}

	.single-post {
		flex: 1;
	}

	.single-sidebar {
		display: block;
		width: 300px;
		position: sticky;
		top: 10px;
	}

	.single-meta-mobile {
		display: none;
	}
		
}

/* =====================
   MOBILE (<992px)
===================== */
@media (max-width: 991px) {
	.site-title {
		font-size: 20px;
	}

	.header-menu {
		flex-direction: column;
		align-items: stretch;
	}

	.header-search-toggle {
		width: 100%;
		justify-content: center;
		order: -1;
	}

	.main-nav {
		width: 100%;
	}  

	.main-nav.is-open {
		display: flex;
		flex-direction: column;
		width: 100%;
		background: #fff;
		border-top: 1px solid #e5e5e5;
	}

	.menu {
		flex-direction: column;
		align-items: center;
		padding: 0 0 8px;
	}

	.menu a {
		justify-content: center;
		padding: 12px 16px;
	}
	  
	.menu li {
		width: 100%;
		text-align: center;
	}

	.sub-menu {
		display: none;
		position: static;
		width: 100%;
		background: #f7f7f7;
		border-top: 1px solid #e2e2e2;
		border-bottom: 1px solid #e2e2e2;
		box-shadow:
		  inset 0 6px 6px -6px rgba(0,0,0,0.08),
		  inset 0 -6px 6px -6px rgba(0,0,0,0.08);
		font-size: 0.95em;
		padding: 10px 0;  
	}
	 
	.menu li.submenu-open > .sub-menu {
		display: block;
	}

	.menu li.submenu-open > a::after {
		transform: translateY(-40%) rotate(225deg);
	}

	.logo {
		display: block;
	}
	  
	.content-wrapper {
		flex-direction: column;
		gap: 16px;
	}

	.sidebar {
		width: 100%;
	}
	  
	.thanks-carousel-track {
		grid-template-columns: repeat(2, minmax(220px, 320px));
	}
	  
	.media-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.live-search-hint {
		display: none;
	}

	.news-search-grid {
		column-count: 1;
	}
	.single-related,
	.single-nav	  {
		display: none;
	}
}

/* =====================
   MOBILE (<767px)
===================== */
@media (max-width: 768px) {
	.first-row {
		display: flex;
		flex-direction: column;
	}

	.first-row > #pgc-1587-0-0 {
		order: 1;
	}

	.first-row > #pgc-1587-0-1 {
		order: -1;
	}

	.news-layout {
		flex-direction: column;
	}

	.news-thumb {
		height: 150px; /* меньше на телефоне */
	}

	.news-archive-grid {
		grid-template-columns: 1fr;
	}

	.news-archive-more {
		text-align: center;
	}

	.news-filter {
		margin-bottom: 20px;
		position: sticky;
		top: 0px; /* под шапкой */
		background: #fff;
		z-index: 5;
		padding-top: 8px;
		margin-left: -16px;
		margin-right: -16px;
		padding-left: 16px;
		padding-right: 16px;
		box-shadow: 0 6px 12px rgba(0,0,0,0.04);
	}

	/* ГОДЫ */
	.news-filter-years,
	.news-filter-months {
		display: flex;
		flex-wrap: wrap;           /* ← перенос */
		justify-content: center;   /* ← центр */
		gap: 8px 12px;             /* строки / колонки */
		text-align: center;
	}

	.news-filter-years a,
	.news-filter-months a,
	.news-filter-months span {
		/*white-space: nowrap;*       /* месяц/год не ломается */
		/*font-size: 14px;*/
		line-height: 1.4;
	}

	/* визуально отделяем месяцы */
	.news-filter-months {
		margin-top: 10px;
	}
	 
	/* убираем абсолютное подчёркивание */
	.news-filter-years a.active::after {
		display: none;
	}

	/* делаем нормальное подчёркивание */
	.news-filter-years a.active {
		border-bottom: 2px solid #000;
		padding-bottom: 2px;
	}
	  
	.news-filter-tag {
		justify-content: center;
		flex-wrap: wrap;
		text-align: center;
	}

	.news-filter-tag strong {
		font-size: 15px;
	}

	.news-filter {
		padding: 12px 10px 10px;
	}

	.news-filter-years,
	.news-filter-months {
		justify-content: center;
		gap: 10px;
	}

	.news-filter a {
		font-size: 13px;
	}

	.news-filter-search-toggle {
		right: 10px;
	}

	.news-search-input {
		font-size: 16px;
	}
	  
	.contacts-card{
		position: static;
		margin:20px;
	}	

	.contacts-map-wrapper::after{
		display:none;
	}
		
	.footer-bottom-inner{
		flex-direction:column;
		gap:10px;
		align-items:flex-start;
	}
		
	.cookie-banner {
		width: 95%;
		bottom: 10px;
	}

	.cookie-inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.buttons {
		width: 100%;
		flex-wrap: wrap;
	}
	
	.single-content .alignleft,
    .single-content .alignright {
        float: none;
        display: block;
        max-width: 100%;
        margin: 20px auto;
    }
}

/* =====================
   MOBILE (<576px)
===================== */
@media (max-width: 575px) {
	.site-title {
		font-size: 17px;
	}
	  
	.breadcrumbs {
		font-size: 12px;
	}

	.news-tag-cloud .tag-link {
		font-size: 0.85em;
		padding: 5px 10px;
	}

	.thanks-carousel-track {
		grid-template-columns: minmax(220px, 320px);
	}
	.media-grid {
		grid-template-columns: 1fr; /* одна картинка в ряд */
	}

	.news-widget-item {
		padding-left: 28px;
	}

	.news-widget-item.is-victory::before {
		left: -18px;
		font-size: 9px;
		padding: 4px 6px;
		letter-spacing: 0.1em;
	}
	.live-search-hint {
		display: none;
	}
}

 
