@charset "UTF-8";
/***** FONTS *****/ /*-----generals-----*/
html {
  font-size: var(--default_text_size_desktop);
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: var(--primary_color);
}
@media (max-width: 1200px) {
  html {
    font-size: var(--default_text_size_tablet);
  }
}
@media (max-width: 680px) {
  html {
    font-size: var(--default_text_size_mobile);
  }
}

body {
  font-family: var(--default_font);
  font-style: normal;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.2;
  background-color: var(--body_bg_color);
  color: var(--default_text_color);
  margin: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 100vh;
}
body.no-scroll {
  position: fixed;
}

@media (max-width: 992px) {
  html,
body {
    overflow-x: hidden;
  }
}

main {
  width: 100%;
}
section {
  margin: 0 auto;
}

.row {
  display: flex;
  flex-wrap: wrap;
}

.container {
  width: 100%;
  max-width: var(--container_width);
  margin-right: auto;
  margin-left: auto;
  padding-left: 1rem;
  padding-right: 1rem;
}

@media (min-width: 320px) {
  /* Работает в Firefox */
  * {
    scrollbar-width: thin;
    scrollbar-color: var(--primary_color) transparent;
  }
  /* Работает в Chrome, Edge и Safari */
  *::-webkit-scrollbar {
    width: 0.3125rem;
    height: 0.2125rem;
  }
  *::-webkit-scrollbar-track {
    background: rgba(232, 238, 255, 0.3);
  }
  *::-webkit-scrollbar-thumb {
    background-color: var(--primary_color);
    box-shadow: 0 0 0.25rem rgba(0, 0, 0, 0.05);
    border-radius: 0.125rem;
  }
  *::-webkit-scrollbar-thumb:hover {
    background-color: var(--accent_color);
    cursor: pointer;
  }
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transition: 0.3s;
}

*:hover {
  transition: 0.3s;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
  color: inherit;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover,
a:focus {
  color: inherit;
}

a:focus {
  outline: none;
  outline-offset: 0;
}

figure {
  margin: 0;
}

img {
  border: 0;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

svg,
svg:hover,
path,
polygon {
  transition: 0.05s;
}

svg:not(:root) {
  overflow: hidden;
}

h1,
h2,
h3,
h4 {
  margin: 0;
}

h1,
h1.wp-block-heading {
  font-family: var(--h1_font);
  color: var(--h1_color);
  font-size: var(--h1_font_size_desktop);
  font-weight: var(--h1_font_weight);
  text-transform: var(--h1_text_transform);
  text-decoration: var(--h1_text_decoration);
}

h2,
h2.wp-block-heading {
  font-family: var(--h2_font);
  color: var(--h2_color);
  font-size: var(--h2_font_size_desktop);
  font-weight: var(--h2_font_weight);
  text-transform: var(--h2_text_transform);
  text-decoration: var(--h2_text_decoration);
}

h3,
h3.wp-block-heading {
  font-family: var(--h3_font);
  color: var(--h3_color);
  font-size: var(--h3_font_size_desktop);
  font-weight: var(--h3_font_weight);
  text-transform: var(--h3_text_transform);
  text-decoration: var(--h3_text_decoration);
}

h4,
h4.wp-block-heading {
  font-family: var(--h4_font);
  color: var(--h4_color);
  font-size: var(--h4_font_size_desktop);
  font-weight: var(--h4_font_weight);
  text-transform: var(--h4_text_transform);
  text-decoration: var(--h4_text_decoration);
}

p {
  color: inherit;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

mark {
  background: #ff0;
  color: var(--accent_color);
}

hr {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  margin-top: 0;
  margin-bottom: 0;
  border: 0;
  border-top: 1px solid #f2f2f2;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  margin: 0;
}

input:focus,
button:focus,
select:focus,
textarea:focus {
  outline: none;
  outline-offset: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type=checkbox],
input[type=radio] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 0.125rem;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

.hidden {
  display: none;
}

.right {
  text-align: right;
}

.center {
  text-align: center;
}

/***** TOKENS *****/
/*-----локальные токены вёрстки (поверх переменных кастомайзера)-----*/
:root {
  --gl-surface: #ffffff;
  --gl-surface-alt: #faf8f5;
  --gl-line: #e9e3da;
  --gl-muted: #6f6a63;
  --gl-radius: 0.75rem;
  --gl-radius-sm: 0.375rem;
  --gl-shadow: 0 0.0625rem 0.125rem rgba(38, 30, 20, 0.05), 0 0.5rem 1.5rem rgba(38, 30, 20, 0.06);
  --gl-shadow-hover: 0 0.0625rem 0.1875rem rgba(38, 30, 20, 0.04), 0 0.625rem 1.25rem rgba(38, 30, 20, 0.06);
  --gl-accent: var(--primary_color);
  --gl-accent-soft: color-mix(in srgb, var(--primary_color) 8%, #ffffff);
  --gl-section-gap: 3.5rem;
}
@media (max-width: 680px) {
  :root {
    --gl-section-gap: 2.5rem;
  }
}

/*-----заголовок секции-----*/
.section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  padding-bottom: 0.875rem;
  border-bottom: 0.0625rem solid var(--gl-line);
  margin-bottom: 1.75rem;
}
.section-head_title {
  margin: 0;
  font-size: var(--h2_font_size_desktop);
  font-weight: var(--h2_font_weight);
  color: var(--h2_color);
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .section-head_title {
    font-size: var(--h2_font_size_tablet);
  }
}
@media (max-width: 680px) {
  .section-head_title {
    font-size: var(--h2_font_size_mobile);
  }
}
.section-head_tools {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.section-head_link {
  font-size: 0.875rem;
  color: var(--gl-accent);
  text-decoration: none;
  white-space: nowrap;
}
.section-head_link::after {
  content: " →";
}
.section-head_link:hover {
  color: var(--accent_color);
}

.home-section {
  width: 100%;
}

/*-----заглушка вместо миниатюры-----*/
.thumb-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: var(--gl-surface-alt);
  color: color-mix(in srgb, var(--primary_color) 35%, #ffffff);
}
.thumb-placeholder svg {
  width: 40%;
  max-width: 4rem;
  height: auto;
}

/*-----стрелки карусели в шапке секции-----*/
.section-nav {
  display: flex;
  gap: 0.375rem;
}
@media (max-width: 680px) {
  .section-nav {
    display: none;
  }
}
.section-nav_btn {
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: var(--gl-surface);
  border: 0.0625rem solid var(--gl-line);
  border-radius: var(--gl-radius-sm);
  color: var(--gl-accent);
  cursor: pointer;
}
.section-nav_btn svg {
  width: 1rem;
  height: 1rem;
}
.section-nav_btn:hover {
  border-color: color-mix(in srgb, var(--primary_color) 40%, var(--gl-line));
  background: var(--gl-accent-soft);
}
.section-nav_btn.swiper-button-disabled {
  opacity: 0.4;
  cursor: default;
  border-color: var(--gl-line);
  background: var(--gl-surface);
}

/*-----карусель записей-----*/
.carousel.blago-carousel {
  /*-----сетка 2 x N -----*/
  /* Swiper проставляет слайдам height: calc(50% - gap); сбрасываем его,
     тогда высота ряда считается по самой высокой карточке, а текст не режется */
}
.carousel.blago-carousel .section-nav {
  justify-content: flex-end;
  margin-bottom: 0.875rem;
}
.carousel.blago-carousel .swiper {
  overflow: hidden;
}
.carousel.blago-carousel .swiper-slide {
  height: auto;
  display: flex;
}
.carousel.blago-carousel .swiper-slide > * {
  width: 100%;
}
.carousel.blago-carousel.blago-carousel--grid .swiper-slide {
  height: auto !important;
  align-items: stretch;
}

/*-----ВРЕМЕННО: тёплые цвета шапки и подвала вместо серых.
   Значения перебивают настройки кастомайзера через !important,
   потому что он печатает свои переменные инлайном в <head> после стилей.
   Когда подберём окончательный вариант — задать эти же цвета
   в кастомайзере и удалить весь блок-----*/
:root {
  --header_bg_color: #f2eadd !important;
  --footer_bg_color: #3a2a18 !important;
  --footer_font_color: #efe3d2 !important;
  --footer_slogan_color: #ffffff !important;
  --footer_copyright_color: #c4a87c !important;
}

/* верхняя полоса подвала берёт вторичный цвет темы, а он серый —
   перекрываем точечно, чтобы не трогать вторичный цвет глобально.
   !important нужен потому, что footer.scss подключается позже этого файла */
.footer-top {
  background: #2e2113 !important;
}

/***** BLOCKS GLOBAL *****/
/*----header-----*/
header {
  position: relative;
}
header.sticky_header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 9998;
  transition: 0.6s;
  box-shadow: 0 0.375rem 0.5rem 0 rgba(0, 0, 0, 0.3);
}
header.sticky_header.sticky .logo {
  width: calc(var(--header_logo_width_desktop) - 16px);
}
@media (max-width: 992px) {
  header.sticky_header.sticky .logo {
    width: calc(var(--header_logo_width_tablet) - 16px);
  }
}
@media (max-width: 580px) {
  header.sticky_header.sticky .logo {
    width: calc(var(--header_logo_width_mobile) - 16px);
  }
}
header.sticky_header.sticky .search-panel.active {
  top: 100%;
}
@media (max-width: 992px) {
  header .navigation {
    display: none;
  }
}
header .header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding-top: 16px;
  padding-bottom: 16px;
}
header .header-top {
  color: var(--header_font_color);
  background: var(--header_bg_color);
}
header .header-bottom {
  background-color: var(--primary_color);
  color: #f1f1f1;
}

.header-logo {
  display: flex;
  gap: 1rem;
}

.site-name {
  max-width: 28rem;
  padding-left: 1rem;
  border-left: 2px solid var(--primary_color);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.site-name .subtitle {
  font-size: 0.65rem;
  text-transform: uppercase;
}
.site-name .title {
  font-size: 1.35rem;
  font-weight: bold;
}

.logo {
  width: var(--header_logo_width_desktop);
  display: flex;
  align-items: center;
}
@media (max-width: 992px) {
  .logo {
    width: var(--header_logo_width_tablet);
  }
}
@media (max-width: 580px) {
  .logo {
    width: var(--header_logo_width_mobile);
  }
}
.logo img,
.logo svg {
  width: 100%;
  height: auto;
}
.logo span {
  font-size: 1.25rem;
  line-height: 1;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--header_font_color);
}
.logo span:hover {
  color: var(--header_font_color);
}

.header-box {
  display: flex;
  gap: 1.5rem;
}
.header-box a {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  justify-content: center;
  align-items: center;
}
.header-box a img {
  width: 6rem;
  height: auto;
  mix-blend-mode: multiply;
}

.plus12 img {
  width: 3.5rem;
  opacity: 0.7;
}

.toggle-nav {
  width: 1.375rem;
  height: 1.375rem;
  cursor: pointer;
  background-image: url(../img/icons/burger.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  transition: 0.6s;
  display: none;
}
@media (max-width: 992px) {
  .toggle-nav {
    display: block;
    width: 1.5rem;
    height: 1.5rem;
  }
}
.toggle-nav.active {
  background-image: url(../img/icons/search-close.svg);
  transition: 0.6s;
}

.toggle-search {
  width: 1.375rem;
  height: 1.375rem;
  cursor: pointer;
  background-image: url(../img/icons/search-white.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  transition: 0.6s;
}
@media (max-width: 992px) {
  .toggle-search {
    display: block;
    width: 1.5rem;
    height: 1.5rem;
  }
}
.toggle-search.active {
  background-image: url(../img/icons/close-white.svg);
  transition: 0.6s;
}

.search-panel {
  height: 4rem;
  position: absolute;
  top: -100%;
  left: 0;
  right: 0;
  background: var(--header_bg_color);
  padding: 0.5rem 0;
  transition: 0.6s;
  z-index: 15;
}
.search-panel.active {
  top: 100%;
  transition: 0.6s;
}
@media (max-width: 992px) {
  .search-panel.active {
    top: 100%;
  }
}
.search-panel .searchs {
  position: relative;
}
.search-panel .searchs input {
  width: 100%;
  height: 3rem;
  box-sizing: border-box;
  padding: 0.25rem 1rem;
  background: transparent;
  border: none;
  border-top: 1px solid var(--header_font_color);
  border-bottom: 1px solid var(--header_font_color);
}
.search-panel .searchs input:focus {
  border-color: var(--color_1);
}
.search-panel .ajax-search {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: var(--color_0);
  color: #2e2f31;
  box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, 0.25);
  max-height: calc(100vh - 7.5rem);
  overflow-y: auto;
}
.search-panel .ajax-search .result {
  padding: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.5rem;
  border-bottom: 1px solid #f1f1f1;
}
.search-panel .ajax-search .result:last-child {
  border: none;
}
.search-panel .ajax-search .result .title {
  width: 100%;
  font-size: 1rem;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--color_1);
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.search-panel .ajax-search .result .title img,
.search-panel .ajax-search .result .title svg {
  width: 1.375rem;
  height: auto;
}
.search-panel .ajax-search .result .title img path,
.search-panel .ajax-search .result .title svg path {
  fill: var(--color_1);
}
.search-panel .ajax-search .result .item .title {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  color: var(--color_5);
}
.search-panel .ajax-search .result .item-casino {
  width: calc(25% - 1.5rem);
}
@media (max-width: 992px) {
  .search-panel .ajax-search .result .item-casino {
    width: calc(50% - 1.5rem);
  }
}
@media (max-width: 680px) {
  .search-panel .ajax-search .result .item-casino {
    width: 100%;
  }
}
.search-panel .ajax-search .result .item-provider {
  width: calc(25% - 1.5rem);
}
@media (max-width: 992px) {
  .search-panel .ajax-search .result .item-provider {
    width: calc(50% - 1.5rem);
  }
}
@media (max-width: 680px) {
  .search-panel .ajax-search .result .item-provider {
    width: 100%;
  }
}
.search-panel .ajax-search .result .item-provider .post-casino-box {
  display: flex;
  cursor: pointer;
  align-items: center;
}
.search-panel .ajax-search .result .item-guides {
  width: calc(33% - 1.5rem);
}
@media (max-width: 992px) {
  .search-panel .ajax-search .result .item-guides {
    width: calc(50% - 1.5rem);
  }
}
@media (max-width: 680px) {
  .search-panel .ajax-search .result .item-guides {
    width: 100%;
  }
}
.search-panel .ajax-search .result .item-guides .post-guides {
  align-items: center;
}
.search-panel .ajax-search .result .item-guides .post-guides .title {
  text-transform: none;
}
.search-panel .ajax-search .result .item-guides .post-popular {
  display: grid;
  grid-template: 1fr/1fr;
  column-gap: 0.5rem;
  padding: 1rem 0;
  border-top: 1px solid #f1f1f1;
  border-bottom: none;
}
.search-panel .ajax-search .result .item-guides .post-popular .image {
  display: none;
}
.search-panel .ajax-search .result .item-guides .post-popular .subtitle-box {
  display: flex;
  gap: 1.25rem;
  align-items: center;
  margin-top: 0.375rem;
}
.search-panel .ajax-search .result .desc {
  color: #c3c3c3;
}

/*-----главное меню-----*/
/* панель мега-меню раскрывается во всю ширину полосы,
   поэтому точкой отсчёта служит сама полоса, а не пункт */
.header-bottom {
  position: relative;
  z-index: 30;
  /* контейнер внутри полосы позиционирован — из-за него панель считала
     ширину от контейнера, а не от страницы; тут он точкой отсчёта быть не должен */
}
.header-bottom .header {
  position: static;
}

.navigation {
  display: flex;
  align-items: center;
}
.navigation > ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.navigation > ul li.country-hidden {
  display: none !important;
}
.navigation > ul > li {
  /* static, чтобы панель считала ширину от .header-bottom */
  position: static;
  display: flex;
  align-items: center;
  /* стрелка у пунктов с подменю */
  /*-----раскрывающаяся панель: колонки во всю ширину полосы-----*/
}
.navigation > ul > li > a {
  display: flex;
  align-items: center;
  gap: 0.4375rem;
  padding: 0.875rem 0;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
  color: inherit;
  text-decoration: none;
  border-bottom: 0.125rem solid transparent;
  transition: border-color 0.2s ease, color 0.2s ease;
}
.navigation > ul > li.menu-item-has-children > a::after {
  content: "";
  width: 0.375rem;
  height: 0.375rem;
  margin-top: -0.1875rem;
  border-right: 0.125rem solid currentColor;
  border-bottom: 0.125rem solid currentColor;
  opacity: 0.7;
  transform: rotate(45deg);
  transition: transform 0.2s ease, margin-top 0.2s ease;
}
.navigation > ul > li:hover > a, .navigation > ul > li:focus-within > a {
  border-bottom-color: currentColor;
}
.navigation > ul > li.menu-item-has-children:hover > a::after, .navigation > ul > li.menu-item-has-children:focus-within > a::after {
  margin-top: 0.0625rem;
  transform: rotate(-135deg);
}
.navigation > ul > li.current-menu-item > a, .navigation > ul > li.current-menu-parent > a, .navigation > ul > li.current-menu-ancestor > a {
  border-bottom-color: currentColor;
}
.navigation > ul > li > .sub-menu {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  z-index: 40;
  margin: 0;
  padding: 2rem max(1rem, (100% - var(--container_width)) / 2 + 1rem) 2.25rem;
  list-style: none;
  background: var(--gl-surface-alt);
  border-top: 0.0625rem solid color-mix(in srgb, var(--primary_color) 18%, #ffffff);
  box-shadow: var(--gl-shadow);
  color: var(--default_text_color);
  display: grid;
  /* пять колонок — ширина пункта не больше пятой части полосы;
     если пунктов меньше, они не растягиваются, а остаются слева */
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 2rem 2rem;
  align-items: start;
  /* закрыта по умолчанию, открывается плавно */
  visibility: hidden;
  opacity: 0;
  transform: translateY(-0.5rem);
  pointer-events: none;
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
  /* невидимый мостик над панелью: перекрывает нижний отступ полосы,
     иначе курсор по дороге вниз выходит из пункта и меню закрывается */
  /* второй уровень — заголовок колонки */
}
@media (max-width: 1400px) {
  .navigation > ul > li > .sub-menu {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (max-width: 1120px) {
  .navigation > ul > li > .sub-menu {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.navigation > ul > li > .sub-menu::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 100%;
  left: 0;
  height: 1.75rem;
}
.navigation > ul > li > .sub-menu > li {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  /* картинка колонки */
  /* третий уровень — ссылки колонки */
}
.navigation > ul > li > .sub-menu > li > a {
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--gl-muted);
  text-decoration: none;
  transition: color 0.2s ease;
}
.navigation > ul > li > .sub-menu > li > a:hover {
  color: var(--primary_color);
}
.navigation > ul > li > .sub-menu > li .mega-thumb {
  display: block;
  margin-top: 0.875rem;
  aspect-ratio: 16/9;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: var(--gl-radius);
}
.navigation > ul > li > .sub-menu > li .sub-sub-menu,
.navigation > ul > li > .sub-menu > li ul {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}
.navigation > ul > li > .sub-menu > li .sub-sub-menu li,
.navigation > ul > li > .sub-menu > li ul li {
  display: flex;
}
.navigation > ul > li > .sub-menu > li .sub-sub-menu a,
.navigation > ul > li > .sub-menu > li ul a {
  position: relative;
  padding-left: 1rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.4;
  color: color-mix(in srgb, var(--default_text_color) 88%, transparent);
  text-decoration: none;
  transition: color 0.2s ease;
  /* шеврон-маркер в цвете палитры */
}
.navigation > ul > li > .sub-menu > li .sub-sub-menu a::before,
.navigation > ul > li > .sub-menu > li ul a::before {
  content: "";
  position: absolute;
  top: 0.375rem;
  left: 0;
  width: 0.3125rem;
  height: 0.3125rem;
  border-top: 0.09375rem solid var(--primary_color);
  border-right: 0.09375rem solid var(--primary_color);
  transform: rotate(45deg);
}
.navigation > ul > li > .sub-menu > li .sub-sub-menu a:hover,
.navigation > ul > li > .sub-menu > li ul a:hover {
  color: var(--primary_color);
}
.navigation > ul > li:hover > .sub-menu, .navigation > ul > li:focus-within > .sub-menu {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
@media (max-width: 992px) {
  .navigation {
    display: none;
  }
}

/*-----бургер-----*/
.toggle-nav {
  display: none;
  position: relative;
  width: 1.75rem;
  height: 1.25rem;
  cursor: pointer;
  /* средняя полоска — фоном самого элемента */
  background-image: linear-gradient(currentColor, currentColor);
  background-size: 100% 0.125rem;
  background-position: 0 50%;
  background-repeat: no-repeat;
}
.toggle-nav::before, .toggle-nav::after, .toggle-nav span {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 0.125rem;
  background: currentColor;
  border-radius: 0.0625rem;
}
.toggle-nav::before {
  top: 0.125rem;
}
.toggle-nav::after {
  bottom: 0.125rem;
}
@media (max-width: 992px) {
  .toggle-nav {
    display: block;
  }
}

/*-----подложка под выехавшей панелью-----*/
.nav-overlay {
  position: fixed;
  inset: 0;
  z-index: 9998;
  background: rgba(38, 30, 20, 0.45);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s;
}

body.nav-open {
  overflow: hidden;
}
body.nav-open .nav-overlay {
  opacity: 1;
  visibility: visible;
}

.sub-navigation {
  width: 100%;
  display: flex;
  align-items: center;
}
.sub-navigation > ul {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  list-style-type: none;
  padding: 0;
}
.sub-navigation > ul li.country-hidden {
  display: none !important;
}
.sub-navigation > ul > li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  font-size: 1.1rem;
  font-family: "Inter-SemiBold";
}
.sub-navigation > ul > li > a {
  display: flex;
  align-items: center;
  box-sizing: border-box;
}
.sub-navigation > ul > li > a:hover {
  color: var(--color_1);
}

.nav-guide {
  background: var(--Color, var(--color_0));
  box-shadow: 0 0.25rem 0.5rem 0 rgba(29, 39, 48, 0.16);
}
.nav-guide ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.nav-guide ul > li {
  padding: 1rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #e3e7ef;
}
.nav-guide ul > li:last-child {
  border: none;
}
.nav-guide ul > li.menu-item-has-children a {
  width: calc(100% - 1.5rem);
}
.nav-guide ul > li.menu-item-has-children .togg {
  width: 0.875rem;
  height: 0.875rem;
  background-image: url(../img/icons/arrow-right.svg);
  background-size: contain;
  transform: rotate(90deg);
  opacity: 0.6;
  cursor: pointer;
}
@media (max-width: 992px) {
  .nav-guide ul > li.menu-item-has-children .togg {
    width: 1.25rem;
    height: 1.25rem;
  }
}
.nav-guide ul > li.menu-item-has-children .togg:hover {
  opacity: 1;
}
.nav-guide ul > li.menu-item-has-children .togg.active {
  transform: rotate(-90deg);
}
.nav-guide ul > li.current-menu-item a {
  color: var(--color_12);
}
.nav-guide ul > li a {
  color: var(--color_5);
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
}
.nav-guide ul > li a:hover {
  color: var(--color_12);
}
.nav-guide ul > li .sub-menu {
  width: 100%;
  margin-top: 0.5rem;
  display: none;
}
.nav-guide ul > li .sub-menu.active {
  display: block;
}
.nav-guide ul > li .sub-menu li {
  padding: 0.5rem;
  border: none;
}
.nav-guide ul > li .sub-menu li:last-child {
  padding-bottom: 0;
}
.nav-guide ul > li .sub-menu li a {
  color: var(--color_8);
}
.nav-guide ul > li .sub-menu li a:hover {
  color: var(--color_12);
}
.nav-guide ul > li .sub-menu li.current-menu-item a {
  color: var(--color_12);
}

.nav-blog {
  padding: 1.25rem 0 1.5rem;
  margin-top: 4rem;
  margin-bottom: -0.5rem;
  background: #f0f0f0;
  position: relative;
  z-index: 10;
}
@media (max-width: 992px) {
  .nav-blog {
    margin-top: 1.5rem;
  }
}
@media (max-width: 414px) {
  .nav-blog {
    margin-top: 1.1rem;
  }
}
.nav-blog ul {
  margin: 0;
  padding: 0 1.25rem;
  list-style: none;
  display: flex;
  gap: 1rem;
  border-bottom: 1px solid var(--color_5);
}
@media (max-width: 992px) {
  .nav-blog ul {
    overflow-x: auto;
    white-space: nowrap;
  }
}
.nav-blog ul li {
  border-bottom: 0.25rem solid transparent;
}
.nav-blog ul li.active {
  border-bottom-color: var(--color_2);
}
@media (max-width: 992px) {
  .nav-blog ul li.active {
    border-bottom-color: transparent;
  }
  .nav-blog ul li.active a {
    color: var(--color_2);
  }
}
.nav-blog ul li a {
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.5rem; /* 120% */
  text-transform: uppercase;
  color: var(--color_5);
  display: flex;
  padding: 0.25rem 0;
}
@media (max-width: 992px) {
  .nav-blog ul li a {
    font-size: 0.9rem;
  }
}
.nav-blog ul li a:hover {
  color: var(--color_2);
}

.blog-page {
  padding-top: 18.75rem;
}

/*-----мобильное меню-----*/
.nav-mobile {
  position: fixed;
  top: 0;
  bottom: 0;
  left: -100%;
  z-index: 9999;
  width: min(20rem, 88vw);
  background: var(--gl-surface);
  color: var(--default_text_color);
  box-shadow: 0 0 2rem rgba(38, 30, 20, 0.25);
  overflow: hidden;
  display: none;
  transition: left 0.4s ease;
  /* раскрывашка уровня */
  /* второй уровень выезжает поверх первого */
  /* третий уровень — раскрывается списком внутри */
}
@media (max-width: 992px) {
  .nav-mobile {
    display: block;
  }
  .nav-mobile.active {
    left: 0;
  }
}
.nav-mobile .head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 3.75rem;
  padding: 0 1rem;
  background: var(--primary_color);
  color: #ffffff;
}
.nav-mobile_title {
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.nav-mobile .close {
  position: relative;
  width: 1.25rem;
  height: 1.25rem;
  cursor: pointer;
}
.nav-mobile .close::before, .nav-mobile .close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 0.125rem;
  background: currentColor;
}
.nav-mobile .close::before {
  transform: rotate(45deg);
}
.nav-mobile .close::after {
  transform: rotate(-45deg);
}
.nav-mobile .navs {
  max-height: calc(100% - 3.75rem);
  overflow-y: auto;
}
.nav-mobile ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.nav-mobile li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.875rem 1rem;
  border-bottom: 0.0625rem solid var(--gl-line);
}
.nav-mobile li a {
  flex: 1 1 auto;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.35;
  color: var(--gl-accent);
  text-decoration: none;
}
.nav-mobile .togg,
.nav-mobile .togg-in {
  flex: 0 0 auto;
  width: 1.5rem;
  height: 1.5rem;
  cursor: pointer;
  background-image: none;
  position: relative;
}
.nav-mobile .togg::after,
.nav-mobile .togg-in::after {
  content: "";
  position: absolute;
  top: 0.4375rem;
  left: 0.4375rem;
  width: 0.4375rem;
  height: 0.4375rem;
  border-right: 0.125rem solid currentColor;
  border-bottom: 0.125rem solid currentColor;
  opacity: 0.55;
  transform: rotate(45deg);
  transition: transform 0.2s ease;
}
.nav-mobile .togg.active::after,
.nav-mobile .togg-in.active::after {
  transform: rotate(-135deg);
}
.nav-mobile .sub-menu {
  position: absolute;
  top: 3.75rem;
  bottom: 0;
  left: 100%;
  width: 100%;
  background: var(--gl-surface);
  overflow-y: auto;
  z-index: 2;
  transition: left 0.3s ease;
}
.nav-mobile .sub-menu.active {
  left: 0;
}
.nav-mobile .sub-menu li.sub-head {
  background: var(--gl-accent-soft);
  border-bottom: 0.0625rem solid var(--gl-line);
}
.nav-mobile .sub-menu li.sub-head .togg-in::after {
  transform: rotate(135deg);
}
.nav-mobile .sub-sub-menu {
  width: 100%;
  margin: 0.5rem 0 0;
  padding-left: 0.75rem;
  border-left: 0.0625rem solid var(--gl-line);
  display: none;
}
.nav-mobile .sub-sub-menu.active {
  display: block;
}
.nav-mobile .sub-sub-menu li {
  padding: 0.5rem 0;
  border: none;
}
.nav-mobile .sub-sub-menu li a {
  font-size: 0.875rem;
  font-weight: 400;
  color: color-mix(in srgb, var(--default_text_color) 85%, transparent);
}

/*-----buttons----*/
.button,
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--button_bg_color);
  color: var(--button_font_color);
  border: var(--button_border_width) var(--button_border_style) var(--button_border_color);
  border-radius: var(--button_border_radius);
  box-shadow: var(--button_box_shadow_horizontal) var(--button_box_shadow_vertical) var(--button_box_shadow_blur) var(--button_box_shadow_spread) color-mix(in srgb, var(--button_box_shadow_color) 70%, transparent);
  padding-top: var(--button_primary_padding_top_desktop);
  padding-right: var(--button_primary_padding_right_desktop);
  padding-bottom: var(--button_primary_padding_bottom_desktop);
  padding-left: var(--button_primary_padding_left_desktop);
  font-size: var(--button_primary_font_size_desktop);
  font-weight: var(--button_font_weight);
  line-height: 100%;
  text-transform: var(--button_text_transform);
  box-sizing: content-box;
  cursor: pointer;
}
.button:hover,
.btn:hover {
  background-color: var(--button_bg_color_hover);
  color: var(--button_font_color_hover);
}
.button:active, .button:focus,
.btn:active,
.btn:focus {
  background-color: var(--button_bg_color_hover);
  color: var(--button_font_color_hover);
}
.button:disabled, .button.disabled,
.btn:disabled,
.btn.disabled {
  opacity: 0.1;
  cursor: not-allowed;
}
@media (max-width: 992px) {
  .button,
.btn {
    font-size: var(--button_primary_font_size_tablet);
    padding-top: var(--button_primary_padding_top_tablet);
    padding-right: var(--button_primary_padding_right_tablet);
    padding-bottom: var(--button_primary_padding_bottom_tablet);
    padding-left: var(--button_primary_padding_left_tablet);
  }
}
@media (max-width: 580px) {
  .button,
.btn {
    font-size: var(--button_primary_font_size_mobile);
    padding-top: var(--button_primary_padding_top_mobile);
    padding-right: var(--button_primary_padding_right_mobile);
    padding-bottom: var(--button_primary_padding_bottom_mobile);
    padding-left: var(--button_primary_padding_left_mobile);
  }
}
.button-small,
.btn-small {
  font-size: var(--button_small_font_size_desktop);
  padding-top: var(--button_small_padding_top_desktop);
  padding-right: var(--button_small_padding_right_desktop);
  padding-bottom: var(--button_small_padding_bottom_desktop);
  padding-left: var(--button_small_padding_left_desktop);
}
@media (max-width: 992px) {
  .button-small,
.btn-small {
    font-size: var(--button_small_font_size_tablet);
    padding-top: var(--button_small_padding_top_tablet);
    padding-right: var(--button_small_padding_right_tablet);
    padding-bottom: var(--button_small_padding_bottom_tablet);
    padding-left: var(--button_small_padding_left_tablet);
  }
}
@media (max-width: 580px) {
  .button-small,
.btn-small {
    font-size: var(--button_small_font_size_mobile);
    padding-top: var(--button_small_padding_top_mobile);
    padding-right: var(--button_small_padding_right_mobile);
    padding-bottom: var(--button_small_padding_bottom_mobile);
    padding-left: var(--button_small_padding_left_mobile);
  }
}
.button-white,
.btn-white {
  background: #fff;
  color: var(--primary_color);
}
.button-white:hover,
.btn-white:hover {
  background: #fff;
  color: var(--accent_color);
}
.button-border,
.btn-border {
  border: 1px solid var(--primary_color);
  color: var(--primary_color);
  background-color: transparent;
}
.button-border:hover, .button-border:active, .button-border:focus,
.btn-border:hover,
.btn-border:active,
.btn-border:focus {
  border: 1px solid var(--primary_color);
  color: var(--primary_color);
  background-color: transparent;
}

.pagination {
  width: 100%;
}
.pagination .nav-links {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 0.625rem;
}
.pagination .nav-links .prev,
.pagination .nav-links .next {
  color: var(--color_1) !important;
  background-image: url(../img/icons/arrow-right.svg);
  background-size: 1rem;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}
.pagination .nav-links .prev {
  transform: rotate(180deg);
}
.pagination .nav-links .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.875rem;
  height: 1.875rem;
  color: var(--color_5);
  font-size: 1rem;
  font-weight: 600;
}
.pagination .nav-links .current {
  border-radius: 0.1875rem;
  background-color: var(--color_2);
  color: var(--color_0);
}

.content {
  display: flex;
  justify-content: space-between;
  gap: var(--main_sidebar_gap);
  width: 100%;
  background-color: var(--main_bg_color);
  padding-top: var(--main_padding_top);
  padding-right: var(--main_padding_right);
  padding-bottom: var(--main_padding_bottom);
  padding-left: var(--main_padding_left);
  border: var(--main_border_width) var(--main_border_style) var(--main_border_color);
  border-radius: var(--main_border_radius);
  box-shadow: var(--main_box_shadow_horizontal) var(--main_box_shadow_vertical) var(--main_box_shadow_blur) var(--main_box_shadow_spread) color-mix(in srgb, var(--main_box_shadow_color) 70%, transparent);
}

.content-main {
  width: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: var(--content_gap);
  background-color: var(--content_bg_color);
  padding-top: var(--content_padding_top);
  padding-right: var(--content_padding_right);
  padding-bottom: var(--content_padding_bottom);
  padding-left: var(--content_padding_left);
  border: var(--content_border_width) var(--content_border_style) var(--content_border_color);
  background-repeat: var(--content_border_radius);
  box-shadow: var(--content_box_shadow_horizontal) var(--content_box_shadow_vertical) var(--content_box_shadow_blur) var(--content_box_shadow_spread) color-mix(in srgb, var(--content_box_shadow_color) 70%, transparent);
}
.content-main.two_sidebars {
  width: calc(100% - var(--main_left_sidebar_width) - var(--main_right_sidebar_width) - var(--main_sidebar_gap) * 2);
}
.content-main.left_sidebar {
  width: calc(100% - var(--main_left_sidebar_width) - var(--main_sidebar_gap));
}
@media (max-width: 992px) {
  .content-main.left_sidebar {
    width: 100%;
  }
}
.content-main.right_sidebar {
  width: calc(100% - var(--main_right_sidebar_width) - var(--main_sidebar_gap));
}
@media (max-width: 992px) {
  .content-main.right_sidebar {
    width: 100%;
  }
}

.left-sidebar {
  width: var(--main_left_sidebar_width);
  /* без этого колонка сжимается флексом и становится уже заданной ширины */
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: var(--sidebar_gap_blocks);
  background-color: var(--sidebar_bg_color);
  padding-top: var(--sidebar_padding_top);
  padding-right: var(--sidebar_padding_right);
  padding-bottom: var(--sidebar_padding_bottom);
  padding-left: var(--sidebar_padding_left);
  border: var(--sidebar_border_width) var(--sidebar_border_style) var(--sidebar_border_color);
  background-repeat: var(--sidebar_border_radius);
  box-shadow: var(--sidebar_box_shadow_horizontal) var(--sidebar_box_shadow_vertical) var(--sidebar_box_shadow_blur) var(--sidebar_box_shadow_spread) color-mix(in srgb, var(--sidebar_box_shadow_color) 70%, transparent);
}
@media (max-width: 992px) {
  .left-sidebar {
    width: calc(50% - var(--main_sidebar_gap) / 2);
  }
}
@media (max-width: 680px) {
  .left-sidebar {
    display: var(--main_sidebars_show_mobile);
    width: 100%;
  }
}

.right-sidebar {
  width: var(--main_right_sidebar_width);
  /* без этого колонка сжимается флексом и становится уже заданной ширины */
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: var(--sidebar_gap_blocks);
  background-color: var(--sidebar_bg_color);
  padding-top: var(--sidebar_padding_top);
  padding-right: var(--sidebar_padding_right);
  padding-bottom: var(--sidebar_padding_bottom);
  padding-left: var(--sidebar_padding_left);
  border: var(--sidebar_border_width) var(--sidebar_border_style) var(--sidebar_border_color);
  background-repeat: var(--sidebar_border_radius);
  box-shadow: var(--sidebar_box_shadow_horizontal) var(--sidebar_box_shadow_vertical) var(--sidebar_box_shadow_blur) var(--sidebar_box_shadow_spread) color-mix(in srgb, var(--sidebar_box_shadow_color) 70%, transparent);
}
@media (max-width: 992px) {
  .right-sidebar {
    width: calc(50% - var(--main_sidebar_gap) / 2);
  }
}
@media (max-width: 680px) {
  .right-sidebar {
    display: var(--main_sidebars_show_mobile);
    width: 100%;
  }
}

article {
  display: flex;
  flex-direction: column;
  gap: var(--content_gap);
  justify-content: flex-start;
  /*
  	h1,
  	h2 {
  		position: relative;
  		padding-bottom: 0.75rem;
  		&:after {
  			content: "";
  			display: block;
  			width: 100%;
  			height: 1px;
  			border-bottom: 1px solid var(--color_2);
  			position: absolute;
  			bottom: 0;
  			left: 0;
  		}
  	}
  */
}
article h1,
article h2,
article h3,
article h4 {
  width: 100%;
}
article h1:first-child,
article h2:first-child,
article h3:first-child,
article h4:first-child {
  margin-top: 0;
}
article p:first-child {
  margin-top: 0;
}
article p:last-child {
  margin-top: 0;
}
article p.has-small-font-size {
  font-size: 0.875rem;
}
article p.has-large-font-size {
  font-size: 1.5rem !important;
}
article p a {
  color: var(--link_color);
  font-weight: var(--link_font_weight);
  text-decoration: var(--link_text_decoration);
}
article p a:hover {
  color: var(--link_hover_color);
  text-decoration: var(--link_hover_text_decoration);
}
article ul.wp-block-list {
  width: 100%;
  padding: 0 0 0 1.25rem;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: flex-start;
}
article ul.wp-block-list li {
  position: relative;
}
article ul.wp-block-list li::marker {
  color: var(--list_marker_color);
  font-size: 1em;
}
article ol.wp-block-list {
  width: 100%;
  padding: 0 0 0 1.25rem;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: flex-start;
}
article ol.wp-block-list li {
  counter-increment: listCounter;
  position: relative;
}
article ol.wp-block-list li::marker {
  color: var(--list_marker_color);
  font-size: 1em;
}
article table,
article .wp-block-table table {
  width: 100% !important;
  border: none !important;
}
article table thead,
article .wp-block-table table thead {
  border-bottom: 2px solid var(--primary_color);
}
article table tr th,
article table tr td,
article .wp-block-table table tr th,
article .wp-block-table table tr td {
  border: none !important;
  border-top: 1px solid var(--primary_color) !important;
  border-bottom: 1px solid var(--primary_color) !important;
  text-align: left;
}
article table tr th,
article .wp-block-table table tr th {
  background: rgba(255, 255, 255, 0.05);
  padding: 1rem 1.5rem;
}
article table tr td,
article .wp-block-table table tr td {
  background: rgba(255, 255, 255, 0.05);
  padding: 1rem 1.5rem;
}
article table tr:nth-child(even) td,
article .wp-block-table table tr:nth-child(even) td {
  background: rgba(255, 255, 255, 0.1);
}
article .wp-block-image img {
  border: var(--image_border_width) var(--image_border_style) var(--image_border_color);
  border-radius: var(--image_border_radius);
}
article .wp-block-image.size-full img {
  width: 100%;
}

/*-----баннеры сайдбара: текст сверху, картинка мягким фоном снизу-----*/
.promo-card {
  /* пропорцию можно переопределить у каждого баннера в настройках виджета */
  --promo-ratio: 16 / 10;
  /*-----картинка лежит по всей карточке, но проявляется по диагонали:
     плотнее всего в правом нижнем углу, к левому верхнему растворяется,
     поэтому заголовок всегда попадает на чистую подложку-----*/
  /*-----логотип или знак: не кадр, а метка — вписываем целиком
     в правый нижний угол, без диагонального растворения-----*/
  /* заголовок такой же, как надзаголовок в «Плане мероприятий» */
}
.promo-card_link {
  position: relative;
  display: block;
  /* пропорция держит карточки одинаковыми при разной длине текста,
     min-height страхует узкие колонки */
  aspect-ratio: var(--promo-ratio);
  min-height: 11rem;
  padding: 1rem 1.125rem 1.125rem;
  /* картинка растворяется в подложке карточки, поэтому подложка
     не белая, а тёплая — из палитры темы */
  background: color-mix(in srgb, var(--primary_color) 4%, #ffffff);
  border: 0.0625rem solid color-mix(in srgb, var(--primary_color) 12%, #ffffff);
  border-radius: var(--gl-radius-sm);
  overflow: hidden;
  text-decoration: none;
}
.promo-card_media {
  position: absolute;
  inset: 0;
  /* размер можно переопределить в настройках виджета */
  background-size: var(--promo-size, cover);
  background-repeat: no-repeat;
  background-position: 78% 82%;
  opacity: 0.7;
  -webkit-mask-image: linear-gradient(to top left, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0.92) 22%, rgba(0, 0, 0, 0.6) 45%, rgba(0, 0, 0, 0.25) 66%, rgba(0, 0, 0, 0.06) 82%, rgba(0, 0, 0, 0) 94%);
  mask-image: linear-gradient(to top left, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0.92) 22%, rgba(0, 0, 0, 0.6) 45%, rgba(0, 0, 0, 0.25) 66%, rgba(0, 0, 0, 0.06) 82%, rgba(0, 0, 0, 0) 94%);
}
.promo-card_media--mark {
  background-size: var(--promo-size, 58%);
  background-repeat: no-repeat;
  background-position: 92% 88%;
  opacity: 0.88;
  -webkit-mask-image: none;
  mask-image: none;
}
.promo-card_body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
}
.promo-card_title {
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--gl-accent);
}
.promo-card_text {
  /* описание не во всю ширину, чтобы не наезжать на картинку справа;
     заголовок при этом занимает всю строку */
  max-width: 78%;
  font-size: 0.8125rem;
  line-height: 1.45;
  color: color-mix(in srgb, var(--default_text_color) 78%, transparent);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}

/*-----подсвечиваем только те карточки, у которых есть ссылка-----*/
a.promo-card_link:hover {
  background: color-mix(in srgb, var(--primary_color) 8%, #ffffff);
  border-color: color-mix(in srgb, var(--primary_color) 26%, #ffffff);
  box-shadow: var(--gl-shadow);
}

a.promo-card_link:hover .promo-card_media {
  opacity: 0.85;
}

a.promo-card_link:hover .promo-card_media--mark {
  opacity: 1;
}

/*-----карточка без описания: ниже, чтобы заголовок не висел в пустоте-----*/
.promo-card--short {
  --promo-ratio: 16 / 11;
}
.promo-card--short .promo-card_link {
  min-height: 9rem;
}

/*-----картинки нет: высота по содержимому, без пустого места-----*/
.promo-card--noimage .promo-card_link {
  aspect-ratio: auto;
  min-height: 0;
}

/*-----нечего писать поверх: картинка занимает карточку целиком,
   без перекрытия и без внутренних отступов-----*/
.promo-card--plain .promo-card_link {
  padding: 0;
}
.promo-card--plain .promo-card_media {
  opacity: 1;
  background-position: center;
  -webkit-mask-image: none;
  mask-image: none;
}
.promo-card--plain .promo-card_media--mark {
  background-size: var(--promo-size, 76%);
  background-position: center;
}

/*-----перекрытие отключено вручную: картинка видна целиком-----*/
.promo-card--nofade .promo-card_media {
  opacity: 1;
  background-position: center;
  -webkit-mask-image: none;
  mask-image: none;
}

.promo-card--nofade a.promo-card_link:hover .promo-card_media {
  opacity: 1;
}

/*-----карточка со списком ссылок: тот же материал, что и у баннеров,
   но вместо картинки — строки-пункты с разделителями-----*/
.link-card {
  background: color-mix(in srgb, var(--primary_color) 4%, #ffffff);
  border: 0.0625rem solid color-mix(in srgb, var(--primary_color) 12%, #ffffff);
  border-radius: var(--gl-radius-sm);
  overflow: hidden;
  /* надзаголовок такой же, как в «Плане мероприятий» */
  /* разделители только между пунктами и отбивка от заголовка */
}
.link-card_title {
  padding: 0.875rem 1.125rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--gl-accent);
}
.link-card_list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.link-card_row + .link-card_row, .link-card_title + .link-card_list .link-card_row:first-child {
  border-top: 0.0625rem solid color-mix(in srgb, var(--primary_color) 12%, #ffffff);
}
.link-card_link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1.125rem;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--gl-accent);
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.link-card_link:hover {
  background: color-mix(in srgb, var(--primary_color) 8%, #ffffff);
  color: var(--primary_color);
}
.link-card_text {
  flex: 1 1 auto;
  min-width: 0;
}
.link-card_arrow {
  flex: 0 0 auto;
  width: 0.875rem;
  height: 0.875rem;
  opacity: 0.45;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.link-card_link:hover .link-card_arrow {
  opacity: 1;
  transform: translateX(0.1875rem);
}

/*-----план мероприятий: два календарных листка на тематической подложке-----*/
.plan-card {
  position: relative;
  overflow: hidden;
  background: color-mix(in srgb, var(--primary_color) 4%, #ffffff);
  border: 0.0625rem solid color-mix(in srgb, var(--primary_color) 12%, #ffffff);
  border-radius: var(--gl-radius-sm);
  /* картинка лежит фоном во всю карточку, читаемость держит вуаль ниже */
  /* светлая вуаль поверх картинки — сверху плотнее, к низу тает */
}
.plan-card_media {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 1;
}
.plan-card_media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, color-mix(in srgb, #ffffff 70%, transparent) 0%, color-mix(in srgb, #ffffff 46%, transparent) 55%, color-mix(in srgb, #ffffff 28%, transparent) 100%);
}
.plan-card_body {
  position: relative;
  z-index: 1;
  padding: 1rem 1.125rem 1.125rem;
}
.plan-card_title {
  margin-bottom: 0.75rem;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--gl-accent);
}
.plan-card_grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.625rem;
}

/*-----сам листок: шапка с годом и перфорацией, крупное название месяца-----*/
.plan-sheet {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #ffffff;
  border: 0.0625rem solid color-mix(in srgb, var(--primary_color) 18%, #ffffff);
  border-radius: var(--gl-radius-sm);
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  /* два колечка перекидного календаря */
}
.plan-sheet_top {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  min-height: 1.5rem;
  padding: 0.75rem 0.25rem 0.1875rem;
  background: var(--primary_color);
}
.plan-sheet_rings {
  position: absolute;
  top: 0.25rem;
  left: 50%;
  display: flex;
  gap: 0.875rem;
  transform: translateX(-50%);
}
.plan-sheet_rings::before, .plan-sheet_rings::after {
  content: "";
  width: 0.1875rem;
  height: 0.4375rem;
  border-radius: 0.125rem;
  background: color-mix(in srgb, #ffffff 75%, transparent);
}
.plan-sheet_year {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: #ffffff;
}
.plan-sheet_month {
  padding: 0.625rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  color: var(--gl-accent);
}
.plan-sheet:hover {
  border-color: color-mix(in srgb, var(--primary_color) 45%, #ffffff);
  box-shadow: var(--gl-shadow);
  transform: translateY(-0.125rem);
}

/*-----страница записи-----*/
.single-content {
  padding-bottom: var(--gl-section-gap);
}
.single-content .content {
  align-items: flex-start;
}
.single-content .content-main {
  gap: var(--gl-section-gap);
  min-width: 0;
}

.entry {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  min-width: 0;
}
.entry-head {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}
.entry-head .breadcrumbs {
  font-size: 0.8125rem;
  color: var(--gl-muted);
}
.entry-head .breadcrumbs a {
  color: var(--gl-muted);
  text-decoration: none;
}
.entry-head .breadcrumbs a:hover {
  color: var(--gl-accent);
}
.entry-head_meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.entry-head_label {
  font-size: 0.6875rem;
  line-height: 1;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--gl-accent);
  background: var(--gl-accent-soft);
  border-radius: 62.4375rem;
  padding: 0.4375rem 0.75rem;
  text-decoration: none;
}
.entry-head_label:hover {
  background: color-mix(in srgb, var(--primary_color) 16%, #ffffff);
}
.entry-head_date {
  font-size: 0.875rem;
  color: var(--gl-muted);
}
.entry-head_title {
  margin: 0;
  font-size: var(--h1_font_size_desktop);
  font-weight: var(--h1_font_weight);
  color: var(--h1_color);
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .entry-head_title {
    font-size: var(--h1_font_size_tablet);
  }
}
@media (max-width: 680px) {
  .entry-head_title {
    font-size: var(--h1_font_size_mobile);
  }
}
.entry-head_lead {
  margin: 0;
  font-size: 1.0625rem;
  line-height: 1.6;
  color: var(--gl-muted);
}
.entry-cover {
  margin: 0;
}
.entry-cover img {
  width: 100%;
  height: auto;
  max-height: 30rem;
  object-fit: cover;
  border-radius: var(--gl-radius);
  display: block;
}
.entry-cover figcaption {
  margin-top: 0.625rem;
  font-size: 0.8125rem;
  color: var(--gl-muted);
  text-align: center;
}
.entry-body {
  font-size: 1rem;
  line-height: 1.7;
  display: flex;
  flex-direction: column;
  gap: var(--content_gap);
}
.entry-body > *:first-child {
  margin-top: 0;
}
.entry-body p,
.entry-body ul,
.entry-body ol,
.entry-body blockquote,
.entry-body h2,
.entry-body h3,
.entry-body h4 {
  max-width: 46rem;
}
.entry-body p {
  margin: 0;
}
.entry-body h2,
.entry-body h3,
.entry-body h4 {
  margin: 0.5rem 0 0;
}
.entry-body img,
.entry-body iframe,
.entry-body video {
  max-width: 100%;
  height: auto;
  border-radius: var(--gl-radius-sm);
}
.entry-body figure {
  margin: 0;
}
.entry-body figure figcaption {
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  color: var(--gl-muted);
}
.entry-body blockquote {
  margin: 0;
  padding: 0.25rem 0 0.25rem 1.25rem;
  border-left: 0.1875rem solid var(--gl-accent);
  color: var(--gl-muted);
  font-style: italic;
}
.entry-body a {
  color: var(--link_color);
}
.entry-body a:hover {
  color: var(--link_hover_color);
}
.entry-pages {
  font-size: 0.875rem;
  color: var(--gl-muted);
}
.entry-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding-top: 0.5rem;
}
.entry-tags_item {
  font-size: 0.8125rem;
  color: var(--gl-muted);
  background: var(--gl-surface-alt);
  border: 0.0625rem solid var(--gl-line);
  border-radius: 62.4375rem;
  padding: 0.375rem 0.75rem;
  text-decoration: none;
}
.entry-tags_item:hover {
  color: var(--gl-accent);
  border-color: color-mix(in srgb, var(--primary_color) 35%, var(--gl-line));
}
.entry-nav {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  padding-top: 1rem;
  border-top: 0.0625rem solid var(--gl-line);
}
@media (max-width: 680px) {
  .entry-nav {
    grid-template-columns: 1fr;
  }
}
.entry-nav_item {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  padding: 1rem 1.125rem;
  background: var(--gl-surface);
  border: 0.0625rem solid var(--gl-line);
  border-radius: var(--gl-radius);
  text-decoration: none;
}
.entry-nav_item:hover {
  border-color: color-mix(in srgb, var(--primary_color) 30%, var(--gl-line));
  box-shadow: var(--gl-shadow);
}
.entry-nav_item--next {
  text-align: right;
  grid-column: 2;
}
@media (max-width: 680px) {
  .entry-nav_item--next {
    text-align: left;
    grid-column: 1;
  }
}
.entry-nav_dir {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--gl-accent);
}
.entry-nav_title {
  font-size: 0.9375rem;
  line-height: 1.35;
  color: var(--default_text_color);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

/*-----страница архива-----*/
.archive-content {
  padding-bottom: var(--gl-section-gap);
}
.archive-content .content {
  align-items: flex-start;
}
.archive-content .content-main {
  min-width: 0;
}

/*-----шапка записи: мета под заголовком, обложка в той же полосе-----*/
.page-head_meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.page-head_lead {
  margin: 0;
  max-width: 46rem;
  font-size: 1.0625rem;
  line-height: 1.6;
  color: var(--gl-muted);
}
.page-head .entry-cover {
  margin-top: 0.5rem;
}
.page-head .entry-cover img {
  /* показываем кадр целиком: обрезка по высоте превращала
     горизонтальные фотографии в узкую полосу */
  max-height: none;
  height: auto;
  object-fit: initial;
}

/*-----картинки в тексте записи.
   Отдельный блок нужен из-за article.scss: там у `article .wp-block-image img`
   радиус берётся из кастомайзера и перебивает правило внутри .entry-body,
   потому что селектор специфичнее-----*/
.entry .entry-body img,
.entry .entry-body figure img,
.entry .entry-body .wp-block-image img,
.entry .entry-body .wp-block-gallery img {
  border-radius: var(--gl-radius-sm);
  /* высота обязательно авто: у картинок из редактора остаётся
     атрибут height, и вместе с width: 100% кадр сплющивается */
  height: auto;
  max-width: 100%;
}
.entry .entry-body .wp-block-image.size-full img {
  width: 100%;
  height: auto;
}

/*-----ссылки на рубрики под заголовком страницы-----*/
.term-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4375rem;
  margin-top: 0.875rem;
}
.term-chips_item {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.3125rem 0.75rem;
  font-size: 0.8125rem;
  line-height: 1.2;
  color: var(--default_text_color);
  background: var(--gl-surface);
  border: 0.0625rem solid var(--gl-line);
  border-radius: 62.4375rem;
  text-decoration: none;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}
.term-chips_item:hover {
  color: var(--gl-accent);
  background: color-mix(in srgb, var(--primary_color) 8%, #ffffff);
  border-color: color-mix(in srgb, var(--primary_color) 35%, var(--gl-line));
}
.term-chips_count {
  font-size: 0.6875rem;
  color: var(--gl-muted);
}
.term-chips_item:hover .term-chips_count {
  color: var(--gl-accent);
}

/* внутри шапки страницы отбивка чуть больше */
.page-head .term-chips {
  margin-top: 1rem;
}

/*-----страница 404-----*/
.error-head {
  display: flex;
  align-items: center;
  gap: 2rem;
  /* крупная цифра — как орнаментальный знак, не как заголовок */
}
@media (max-width: 680px) {
  .error-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
}
.error-head_code {
  flex: 0 0 auto;
  font-size: 5.5rem;
  font-weight: 800;
  line-height: 0.9;
  letter-spacing: -0.02em;
  color: color-mix(in srgb, var(--primary_color) 28%, #ffffff);
}
@media (max-width: 680px) {
  .error-head_code {
    font-size: 4rem;
  }
}
.error-head_body {
  min-width: 0;
}

.error-search {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1.25rem;
  max-width: 30rem;
}
.error-search_field {
  flex: 1 1 12rem;
  min-width: 0;
  padding: 0.625rem 0.875rem;
  font-size: 0.9375rem;
  color: var(--default_text_color);
  background: var(--gl-surface);
  border: 0.0625rem solid var(--gl-line);
  border-radius: var(--gl-radius-sm);
}
.error-search_field:focus {
  outline: none;
  border-color: color-mix(in srgb, var(--primary_color) 45%, var(--gl-line));
}
.error-search_submit {
  flex: 0 0 auto;
  padding: 0.625rem 1.25rem;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #ffffff;
  background: var(--primary_color);
  border: 0;
  border-radius: var(--gl-radius-sm);
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.error-search_submit:hover {
  background: color-mix(in srgb, var(--primary_color) 85%, #000000);
}

/*-----footer-----*/
footer {
  margin-top: auto;
  width: 100%;
  color: var(--footer_font_color);
  background-color: var(--footer_bg_color);
  position: relative;
  z-index: 10;
}

.footer-top {
  display: var(--footer_top_show);
  gap: 1rem;
  justify-content: space-between;
  align-items: center;
  padding-top: 2rem;
  padding-bottom: 2rem;
  background: var(--secondary_color);
}
.footer-top.center {
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.footer-top.edges {
  justify-content: space-between;
  align-items: center;
}
.footer-top .logo {
  width: var(--footer_logo_width_desktop);
  display: flex;
  align-items: center;
}
@media (max-width: 992px) {
  .footer-top .logo {
    width: var(--footer_logo_width_tablet);
  }
}
@media (max-width: 580px) {
  .footer-top .logo {
    width: var(--footer_logo_width_mobile);
  }
}
.footer-top .logo img,
.footer-top .logo svg {
  width: 100%;
  height: auto;
}
.footer-top .logo span {
  font-size: 1.25rem;
  line-height: 1;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--footer_font_color);
}
.footer-top .logo span:hover {
  color: var(--footer_font_color);
}
.footer-top .slogan {
  color: var(--footer_slogan_color);
  font-size: var(--footer_slogan_font_size_desktop);
  font-weight: var(--footer_slogan_font_weight);
  text-transform: var(--footer_slogan_text_transform);
}
@media (max-width: 992px) {
  .footer-top .slogan {
    font-size: var(--footer_slogan_font_size_tablet);
  }
}
@media (max-width: 580px) {
  .footer-top .slogan {
    font-size: var(--footer_slogan_font_size_mobile);
  }
}

.footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.footer .footer-widget-area {
  width: calc(33.33% - 1rem);
}
@media (max-width: 580px) {
  .footer .footer-widget-area {
    width: 100%;
  }
}
.footer h2, .footer h2.wp-block-heading {
  font-family: var(--h2_font);
  color: #fff;
  font-size: var(--h2_font_size_desktop);
  font-weight: var(--h2_font_weight);
  text-transform: var(--h2_text_transform);
  text-decoration: var(--h2_text_decoration);
}
.footer .menu {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.footer-bottom {
  display: var(--footer_bottom_show);
  align-items: center;
  justify-content: space-between;
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.copyright {
  color: var(--footer_copyright_color);
  font-size: var(--footer_copyright_font_size_desktop);
  font-weight: var(--footer_copyright_font_weight);
  text-transform: var(--footer_copyright_text_transform);
}
@media (max-width: 992px) {
  .copyright {
    font-size: var(--footer_copyright_font_size_tablet);
  }
}
@media (max-width: 540px) {
  .copyright {
    font-size: var(--footer_copyright_font_size_mobile);
  }
}

.carousel {
  position: relative;
}
.carousel .swiper-nav {
  position: absolute;
  top: -2.75rem;
  right: 0;
  display: flex;
  gap: 0.5rem;
}
@media (max-width: 680px) {
  .carousel .swiper-nav {
    display: none;
  }
}
@media (max-width: 680px) {
  .carousel .swiper {
    overflow: visible;
  }
}
.carousel .swiper-button-prev,
.carousel .swiper-button-next {
  position: static;
  width: 2.1875rem;
  height: 2.1875rem;
  border: 1px solid var(--light-grey);
  color: var(--light-grey);
  transition: 0.3s;
}
.carousel .swiper-button-prev:after,
.carousel .swiper-button-next:after {
  display: none;
}
.carousel .swiper-button-prev:hover,
.carousel .swiper-button-next:hover {
  border-color: var(--dark-grey);
  color: var(--dark-grey);
  transition: 0.3s;
}
.carousel .swiper-button-prev {
  transform: rotate(180deg);
}
.carousel.cases {
  width: 100% !important;
  max-width: 100% !important;
  position: relative;
}
.carousel.cases .swiper-wrapper .swiper-slide a {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0.5rem;
  font-size: 0.6875rem;
  line-height: 1.35;
  color: inherit;
  text-decoration: none;
  opacity: 0.75;
}
.carousel.cases .swiper-wrapper .swiper-slide a:hover {
  opacity: 1;
}
.carousel.cases .swiper-wrapper .swiper-slide img {
  /* логотипы партнёров: вписываем целиком в невысокую плашку,
     иначе object-fit: cover режет их по краям */
  width: auto;
  max-width: 100%;
  height: 2.5rem;
  object-fit: contain;
  background: #ffffff;
  border-radius: 0.1875rem;
  padding: 0.25rem 0.375rem;
}

/***** SECTIONS *****/
/*-----сетка карточек-----*/
.posts-grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(3, 1fr);
}
.posts-grid--4 {
  grid-template-columns: repeat(4, 1fr);
}
.posts-grid--2 {
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 1200px) {
  .posts-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .posts-grid--4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 680px) {
  .posts-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  .posts-grid--4, .posts-grid--2 {
    grid-template-columns: 1fr;
  }
}

/*-----карточка записи-----*/
.post-card {
  display: flex;
  flex-direction: column;
  background: var(--gl-surface);
  border: 0.0625rem solid var(--gl-line);
  border-radius: var(--gl-radius);
  overflow: hidden;
  height: 100%;
  /*-----крупная карточка-----*/
}
.post-card:hover {
  box-shadow: var(--gl-shadow-hover);
  border-color: color-mix(in srgb, var(--primary_color) 25%, var(--gl-line));
}
.post-card_image {
  display: block;
  aspect-ratio: 16/10;
  overflow: hidden;
  background: var(--gl-surface-alt);
}
.post-card_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.post-card:hover .post-card_image img {
  transform: scale(1.04);
}
.post-card_body {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  padding: 1.125rem 1.25rem 1.375rem;
  flex-grow: 1;
}
.post-card_labels {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
}
.post-card_label {
  font-size: 0.6875rem;
  line-height: 1;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--gl-accent);
  background: color-mix(in srgb, var(--primary_color) 12%, #ffffff);
  border-radius: 62.4375rem;
  padding: 0.375rem 0.6875rem;
  text-decoration: none;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.post-card_label:hover {
  background: color-mix(in srgb, var(--primary_color) 20%, #ffffff);
}
.post-card_title {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.35;
  font-weight: 600;
}
.post-card_title a {
  color: var(--default_text_color);
  text-decoration: none;
}
.post-card_title a:hover {
  color: var(--gl-accent);
}
.post-card_text {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--gl-muted);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}
.post-card_date {
  margin-top: auto;
  padding-top: 0.375rem;
  font-size: 0.75rem;
  color: color-mix(in srgb, var(--gl-muted) 75%, #ffffff);
}
.post-card_foot {
  margin-top: auto;
  padding-top: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.post-card_more {
  font-size: 0.875rem;
  color: var(--gl-accent);
  text-decoration: none;
}
.post-card_more::after {
  content: " →";
}
.post-card--big {
  border-radius: var(--gl-radius-sm);
}
.post-card--big .post-card_image {
  aspect-ratio: 16/9;
}
.post-card--big .post-card_foot {
  margin-top: 0.5rem;
}
.post-card--big .post-card_body {
  padding: 1.375rem 1.5rem 1.5rem;
  gap: 0.75rem;
}
.post-card--big .post-card_title {
  font-size: 1.375rem;
}
@media (max-width: 680px) {
  .post-card--big .post-card_title {
    font-size: 1.1875rem;
  }
}
.post-card--big .post-card_text {
  font-size: 0.9375rem;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}

/*-----компактная строка записи-----*/
.post-line {
  display: flex;
  gap: 0.875rem;
  padding-bottom: 0.875rem;
  border-bottom: 0.0625rem solid var(--gl-line);
}
.post-line:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.post-line_image {
  flex: 0 0 7rem;
  width: 7rem;
  aspect-ratio: 4/3;
  border-radius: var(--gl-radius-sm);
  overflow: hidden;
  background: var(--gl-surface-alt);
}
.post-line_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.post-line_body {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  min-width: 0;
}
.post-line_labels {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3125rem;
}
.post-line_label {
  font-size: 0.625rem;
  line-height: 1;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--gl-accent);
  background: color-mix(in srgb, var(--primary_color) 12%, #ffffff);
  border-radius: 62.4375rem;
  padding: 0.3125rem 0.5rem;
  text-decoration: none;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.post-line_label:hover {
  background: color-mix(in srgb, var(--primary_color) 20%, #ffffff);
}
.post-line_title {
  margin: 0;
  font-size: 1rem;
  line-height: 1.35;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.post-line_title a {
  color: var(--default_text_color);
  text-decoration: none;
}
.post-line_title a:hover {
  color: var(--gl-accent);
}
.post-line_date {
  font-size: 0.75rem;
  color: color-mix(in srgb, var(--gl-muted) 75%, #ffffff);
}

.posts-empty {
  padding: 2rem;
  text-align: center;
  color: var(--gl-muted);
  background: var(--gl-surface-alt);
  border-radius: var(--gl-radius);
}

/*-----карточка с датой над заголовком: одинаковая высота при разной длине названий-----*/
.post-card--meta-top .post-card_body {
  gap: 0.4375rem;
  padding: 1rem 1.125rem 1.25rem;
}
.post-card--meta-top .post-card_date {
  margin-top: 0;
  padding-top: 0;
  font-size: 0.75rem;
  color: color-mix(in srgb, var(--gl-muted) 80%, #ffffff);
}
.post-card--meta-top .post-card_title {
  font-size: 1rem;
  line-height: 1.35;
  /* ровно две строки: короткие и длинные названия дают одну высоту */
  min-height: 2.7em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

/*-----горизонтальная карточка: картинка слева, текст справа-----*/
.post-card--row {
  flex-direction: row;
  height: 100%;
  border-radius: var(--gl-radius-sm);
}
.post-card--row .post-card_image {
  flex: 0 0 13rem;
  width: 13rem;
  height: 100%;
  aspect-ratio: auto;
  border-radius: var(--gl-radius-sm);
  overflow: hidden;
}
.post-card--row .post-card_image img {
  border-radius: var(--gl-radius-sm);
}
@media (max-width: 992px) {
  .post-card--row .post-card_image {
    flex-basis: 11rem;
    width: 11rem;
  }
}
@media (max-width: 680px) {
  .post-card--row .post-card_image {
    flex-basis: 8rem;
    width: 8rem;
  }
}
.post-card--row .post-card_body {
  justify-content: center;
  padding: 0.875rem 1.125rem;
  gap: 0.375rem;
}
.post-card--row .post-card_title {
  font-size: 0.9375rem;
}
.post-card--row .post-card_text {
  font-size: 0.8125rem;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 7;
  line-clamp: 7;
  overflow: hidden;
}
.post-card--row.post-card--meta-top .post-card_title {
  min-height: 0;
}

/*-----строка записи: дата сверху, рубрики под заголовком-----*/
.post-line--swap .post-line_date {
  order: -1;
}
.post-line--swap .post-line_labels {
  margin-top: 0.125rem;
}

/*-----главная страница-----*/
.home-content {
  display: flex;
  flex-direction: column;
  gap: var(--gl-section-gap);
  padding-bottom: var(--gl-section-gap);
  /*-----в general.scss у section стоит margin: 0 auto; во флекс-колонке
     авто-поля отменяют растягивание, и секция сжимается до ширины контента.
     Полноширинным блокам возвращаем растягивание-----*/
  /*-----hero сам даёт отбивку от шапки своими полями;
     если его нет, отступ добавляем первому блоку-----*/
}
.home-content > .home-hero,
.home-content > .home-about {
  align-self: stretch;
  width: 100%;
  margin-inline: 0;
}
.home-content > :first-child:not(.home-hero) {
  margin-top: var(--gl-section-gap);
}
.home-content .content {
  align-items: flex-start;
}
.home-content .content-main {
  gap: var(--gl-section-gap);
}

/*-----о библиотеке-----*/
.home-about {
  background: var(--gl-surface-alt);
  border-bottom: 0.0625rem solid var(--gl-line);
  padding: 3rem 0;
}
.home-about_inner {
  display: flex;
  align-items: center;
  gap: 3rem;
}
@media (max-width: 992px) {
  .home-about_inner {
    flex-direction: column;
    align-items: stretch;
    gap: 2rem;
  }
}
.home-about_text {
  flex: 1 1 55%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.home-about_title {
  margin: 0;
  font-size: var(--h1_font_size_desktop);
  font-weight: var(--h1_font_weight);
  color: var(--h1_color);
  line-height: 1.15;
}
@media (max-width: 1200px) {
  .home-about_title {
    font-size: var(--h1_font_size_tablet);
  }
}
@media (max-width: 680px) {
  .home-about_title {
    font-size: var(--h1_font_size_mobile);
  }
}
.home-about_content {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--gl-muted);
}
.home-about_content p {
  margin: 0 0 0.75rem;
}
.home-about_content p:last-child {
  margin-bottom: 0;
}
.home-about_links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 0.5rem;
}
.home-about_media {
  flex: 1 1 45%;
}
.home-about_media img {
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: var(--gl-radius);
  box-shadow: var(--gl-shadow);
  display: block;
}

/*-----кнопка-контур (для второй кнопки в блоке о библиотеке)-----*/
.button-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  color: var(--gl-accent);
  border: 0.0625rem solid color-mix(in srgb, var(--primary_color) 40%, #ffffff);
  border-radius: var(--button_border_radius);
  padding: var(--button_primary_padding_top_desktop) var(--button_primary_padding_right_desktop) var(--button_primary_padding_bottom_desktop) var(--button_primary_padding_left_desktop);
  font-size: var(--button_primary_font_size_desktop);
  font-weight: var(--button_font_weight);
  text-transform: var(--button_text_transform);
  text-decoration: none;
}
.button-ghost:hover {
  background: var(--gl-accent-soft);
  border-color: var(--gl-accent);
}

/*-----новости-----*/
.home-news_grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  align-items: start;
  gap: 1.75rem;
}
@media (max-width: 992px) {
  .home-news_grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}
.home-news_big {
  min-width: 0;
}
.home-news_list {
  display: flex;
  flex-direction: column;
  gap: 1.125rem;
  min-width: 0;
}

/*-----ресурсы-----*/
.home-resources {
  background: var(--gl-surface-alt);
  border-top: 0.0625rem solid var(--gl-line);
  padding: 3rem 0;
}

.resources-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}
@media (max-width: 1200px) {
  .resources-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 992px) {
  .resources-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 680px) {
  .resources-grid {
    grid-template-columns: 1fr;
  }
}

.resource-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 0.875rem;
  padding: 1.125rem 1.25rem;
  background: var(--gl-surface);
  border: 0.0625rem solid var(--gl-line);
  border-radius: var(--gl-radius);
  text-decoration: none;
}
.resource-card:hover {
  box-shadow: var(--gl-shadow-hover);
  border-color: color-mix(in srgb, var(--primary_color) 30%, var(--gl-line));
}
.resource-card_icon {
  flex: 0 0 2.5rem;
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--gl-radius-sm);
  background: var(--gl-accent-soft);
  color: var(--gl-accent);
}
.resource-card_icon svg {
  width: 1.375rem;
  height: 1.375rem;
}
.resource-card_body {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
  padding-right: 2rem;
}
.resource-card_title {
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--default_text_color);
}
.resource-card_desc {
  font-size: 0.8125rem;
  line-height: 1.4;
  color: var(--gl-muted);
}
.resource-card_count {
  position: absolute;
  top: 0.875rem;
  right: 0.875rem;
  font-size: 0.6875rem;
  line-height: 1;
  color: color-mix(in srgb, var(--gl-muted) 70%, #ffffff);
}
.resource-card:hover .resource-card_title {
  color: var(--gl-accent);
}

/*-----библиотекарю: лента курируемых библиотек + меню разделов-----*/
.home-librarian {
  /*-----меню выравниваем по первой карточке: компенсируем высоту подзаголовка
     (1.0625rem x 1.3 строки + 1.125rem отступа снизу)-----*/
}
.home-librarian .librarian_grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 19rem;
  gap: 2rem;
}
@media (max-width: 1200px) {
  .home-librarian .librarian_grid {
    grid-template-columns: minmax(0, 1fr) 16rem;
    gap: 1.5rem;
  }
}
@media (max-width: 992px) {
  .home-librarian .librarian_grid {
    grid-template-columns: 1fr;
  }
}
.home-librarian .librarian_feed {
  min-width: 0;
}
.home-librarian .big-menu {
  margin-top: 2.5rem;
}
@media (max-width: 992px) {
  .home-librarian .big-menu {
    margin-top: 0;
  }
}
.home-librarian .librarian_subtitle {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin: 0 0 1.125rem;
  font-size: 1.0625rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--default_text_color);
}
.home-librarian .librarian_subtitle::before {
  content: "";
  flex: 0 0 0.1875rem;
  width: 0.1875rem;
  height: 1.125rem;
  border-radius: 62.4375rem;
  background: var(--gl-accent);
}
.home-librarian .librarian_list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  /*-----каждая запись — карточка, без разделительных линий-----*/
  /*-----здесь заголовок и рубрику показываем целиком-----*/
  /*-----рубрики здесь не плашки, а обычные ссылки-----*/
}
@media (max-width: 680px) {
  .home-librarian .librarian_list {
    grid-template-columns: 1fr;
  }
}
.home-librarian .librarian_list .post-line {
  padding: 0.875rem;
  background: var(--gl-surface);
  border: 0.0625rem solid var(--gl-line);
  border-radius: var(--gl-radius-sm);
}
.home-librarian .librarian_list .post-line:hover {
  border-color: color-mix(in srgb, var(--primary_color) 30%, var(--gl-line));
  box-shadow: var(--gl-shadow);
}
.home-librarian .librarian_list .post-line_title {
  display: block;
  overflow: visible;
  -webkit-line-clamp: none;
  line-clamp: none;
}
.home-librarian .librarian_list .post-line_label {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  background: none;
  padding: 0;
  border-radius: 0;
  font-size: 0.75rem;
  line-height: 1.3;
  letter-spacing: normal;
  text-transform: none;
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}
.home-librarian .librarian_list .post-line_label:hover {
  background: none;
  color: var(--accent_color);
  text-decoration: none;
}
.home-librarian .librarian_list .post-line_labels {
  gap: 0.25rem 0.75rem;
}

/*-----крупное меню разделов-----*/
.big-menu {
  display: flex;
  flex-direction: column;
  align-self: start;
  background: color-mix(in srgb, var(--primary_color) 12%, #ffffff);
  border-radius: var(--gl-radius-sm);
  overflow: hidden;
}
.big-menu_item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.875rem 1rem;
  border: 0;
  border-bottom: 0.0625rem solid color-mix(in srgb, var(--primary_color) 22%, #ffffff);
  text-decoration: none;
}
.big-menu_item:last-child {
  border-bottom: 0;
}
.big-menu_item:hover {
  background: color-mix(in srgb, var(--primary_color) 20%, #ffffff);
}
.big-menu_title {
  font-size: 0.9375rem;
  line-height: 1.3;
  font-weight: 600;
  color: var(--default_text_color);
}
.big-menu_item:hover .big-menu_title {
  color: var(--gl-accent);
}
.big-menu_arrow {
  flex: 0 0 1rem;
  width: 1rem;
  height: 1rem;
  color: var(--gl-accent);
}

/*-----читателям: меню слева, блоки-карусели справа-----*/
.home-readers .readers_grid {
  display: grid;
  grid-template-columns: 19rem minmax(0, 1fr);
  gap: 2rem;
}
@media (max-width: 1200px) {
  .home-readers .readers_grid {
    grid-template-columns: 16rem minmax(0, 1fr);
    gap: 1.5rem;
  }
}
@media (max-width: 992px) {
  .home-readers .readers_grid {
    grid-template-columns: 1fr;
  }
}
.home-readers .readers_aside {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-self: start;
  min-width: 0;
  /*-----иначе меню сжимается по содержимому и не совпадает с блоком ниже-----*/
}
.home-readers .readers_aside .big-menu {
  align-self: stretch;
}
.home-readers .readers_blocks {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.home-readers .term-carousel .post-card_body {
  padding: 1rem;
}
.home-readers .term-carousel .post-card_title {
  font-size: 0.9375rem;
  line-height: 1.35;
}

/*-----подзаголовок блока внутри секции-----*/
.block-subtitle {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin: 0;
  font-size: 1.0625rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--default_text_color);
}
.block-subtitle::before {
  content: "";
  flex: 0 0 0.1875rem;
  width: 0.1875rem;
  height: 1.125rem;
  border-radius: 62.4375rem;
  background: var(--gl-accent);
}
.block-subtitle a {
  color: inherit;
  text-decoration: none;
}
.block-subtitle a:hover {
  color: var(--gl-accent);
}

/*-----блок под меню: заголовок, картинка, короткий текст, ссылка-----*/
.readers-promo {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.25rem;
  background: color-mix(in srgb, var(--primary_color) 12%, #ffffff);
  border-radius: var(--gl-radius-sm);
}
.readers-promo_head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.readers-promo_icon {
  flex: 0 0 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: var(--gl-radius-sm);
  background: var(--gl-surface);
  color: var(--gl-accent);
}
.readers-promo_icon svg {
  width: 1.5rem;
  height: 1.5rem;
}
.readers-promo_title {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--gl-accent);
}
.readers-promo_image {
  display: block;
  border-radius: var(--gl-radius-sm);
  overflow: hidden;
}
.readers-promo_image img {
  width: 100%;
  height: auto;
  display: block;
}
.readers-promo_image:hover img {
  opacity: 0.9;
}
.readers-promo_text {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: color-mix(in srgb, var(--default_text_color) 75%, transparent);
}
.readers-promo_link {
  align-self: flex-start;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--gl-accent);
  text-decoration: none;
}
.readers-promo_link::after {
  content: " →";
}
.readers-promo_link:hover {
  color: var(--accent_color);
}

/*-----кнопки платформы обратной связи-----*/
.pos-buttons {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.pos-buttons_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  padding: 1.125rem 1rem;
  background: color-mix(in srgb, var(--primary_color) 85%, #ffffff);
  border-radius: var(--gl-radius-sm);
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  /*-----на наведении — светлая подложка, как у пунктов меню-----*/
}
.pos-buttons_item:hover {
  background: color-mix(in srgb, var(--primary_color) 20%, #ffffff);
  color: var(--gl-accent);
}
.pos-buttons_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 62.4375rem;
  background: #ffffff;
  /*-----цвета Госуслуг-----*/
}
.pos-buttons_icon svg {
  width: 1.25rem;
  height: 1.25rem;
}
.pos-buttons_icon .pos-ic-main {
  stroke: #0d4cd3;
}
.pos-buttons_icon .pos-ic-accent {
  stroke: #f53b3b;
}
.pos-buttons_title {
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.25;
}

/*-----библиотека детям-----*/
.kids-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 1.5rem 1.25rem;
  background: var(--gl-surface);
  border: 0.0625rem solid var(--gl-line);
  border-radius: var(--gl-radius-sm);
  text-align: center;
}
.kids-block_image {
  width: 10rem;
  height: 10rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.kids-block_image img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.kids-block_title {
  font-size: 1.0625rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--gl-accent);
}
.kids-block_links {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}
.kids-block_link {
  display: flex;
  flex-direction: column;
  gap: 0.1875rem;
  padding: 0.75rem 0.875rem;
  background: var(--gl-surface-alt);
  border-radius: var(--gl-radius-sm);
  text-decoration: none;
}
.kids-block_link:hover {
  background: color-mix(in srgb, var(--primary_color) 12%, #ffffff);
}
.kids-block_link-title {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--default_text_color);
}
.kids-block_link-text {
  font-size: 0.75rem;
  line-height: 1.35;
  color: var(--gl-muted);
}
.kids-block_link:hover .kids-block_link-title {
  color: var(--gl-accent);
}

/*-----блок-карусель одной рубрики-----*/
.term-carousel {
  min-width: 0;
  /*-----строки-карточки: как в ленте курируемых библиотек-----*/
}
.term-carousel .swiper {
  overflow: hidden;
}
.term-carousel .swiper-slide {
  height: auto;
  display: flex;
}
.term-carousel .swiper-slide > * {
  width: 100%;
}
.term-carousel_top {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 0.875rem;
}
.term-carousel_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.term-carousel_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
}
.term-carousel_tag {
  display: inline-flex;
  align-items: center;
  padding: 0.3125rem 0.6875rem;
  font-size: 0.8125rem;
  line-height: 1.2;
  color: var(--default_text_color);
  background: var(--gl-surface-alt);
  border: 0.0625rem solid var(--gl-line);
  border-radius: 62.4375rem;
  text-decoration: none;
}
.term-carousel_tag:hover {
  color: var(--gl-accent);
  border-color: color-mix(in srgb, var(--primary_color) 35%, var(--gl-line));
  background: color-mix(in srgb, var(--primary_color) 8%, #ffffff);
}
.term-carousel_desc {
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--gl-muted);
  max-width: 46rem;
}
.term-carousel_desc p {
  margin: 0 0 0.375rem;
}
.term-carousel_desc p:last-child {
  margin-bottom: 0;
}
.term-carousel_desc a {
  color: var(--link_color);
}
.term-carousel_desc a:hover {
  color: var(--link_hover_color);
}
.term-carousel.is-view-line .post-line {
  padding: 0.875rem;
  background: var(--gl-surface);
  border: 0.0625rem solid var(--gl-line);
  border-radius: var(--gl-radius-sm);
}
.term-carousel.is-view-line .post-line:hover {
  border-color: color-mix(in srgb, var(--primary_color) 30%, var(--gl-line));
  box-shadow: var(--gl-shadow);
}
.term-carousel.is-view-line .post-line_title {
  display: block;
  overflow: visible;
  -webkit-line-clamp: none;
  line-clamp: none;
}
.term-carousel.is-view-line .post-line_labels {
  gap: 0.25rem 0.75rem;
}
.term-carousel.is-view-line .post-line_label {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  background: none;
  padding: 0;
  border-radius: 0;
  font-size: 0.75rem;
  line-height: 1.3;
  letter-spacing: normal;
  text-transform: none;
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}
.term-carousel.is-view-line .post-line_label:hover {
  background: none;
  color: var(--accent_color);
  text-decoration: none;
}
.term-carousel.is-ratio-book .post-card_image {
  aspect-ratio: 3/4;
  background: var(--gl-surface-alt);
}
.term-carousel.is-ratio-book .post-card_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*-----электронная библиотека: подразделы друг под другом-----*/
.home-elib .elib_blocks {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

/*-----благодарности: акцентная подложка секции-----*/
.home-blagodarnost {
  background: color-mix(in srgb, var(--primary_color) 7%, #ffffff);
  border-radius: var(--gl-radius);
  padding: 1.5rem 1.5rem 1.75rem;
}
@media (max-width: 680px) {
  .home-blagodarnost {
    padding: 1.25rem 1rem 1.5rem;
  }
}
.home-blagodarnost .section-head {
  border-bottom-color: color-mix(in srgb, var(--primary_color) 18%, #ffffff);
}
.home-blagodarnost .post-card {
  border-color: color-mix(in srgb, var(--primary_color) 14%, #ffffff);
}
.home-blagodarnost .post-card_image {
  background: #ffffff;
}

/*-----hero: важные уведомления-----*/
.home-hero {
  padding: 2.25rem 0 2.5rem;
  /*-----одна запись: широкая карточка-----*/
  /*-----две: поровну-----*/
  /*-----три: крупная слева, две справа-----*/
}
.home-hero .hero-grid {
  display: grid;
  gap: 1rem;
}
.home-hero.is-count-1 .hero-grid {
  grid-template-columns: 1fr;
}
.home-hero.is-count-1 .hero-grid .hero-card {
  min-height: 20rem;
}
@media (max-width: 680px) {
  .home-hero.is-count-1 .hero-grid .hero-card {
    min-height: 14rem;
  }
}
.home-hero.is-count-2 .hero-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.home-hero.is-count-2 .hero-grid .hero-card {
  min-height: 16rem;
}
@media (max-width: 680px) {
  .home-hero.is-count-2 .hero-grid {
    grid-template-columns: 1fr;
  }
  .home-hero.is-count-2 .hero-grid .hero-card {
    min-height: 12rem;
  }
}
.home-hero.is-count-3 .hero-grid {
  grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr);
  grid-template-rows: repeat(2, minmax(0, 1fr));
}
.home-hero.is-count-3 .hero-grid .hero-card:first-child {
  grid-row: span 2;
  min-height: 22rem;
}
.home-hero.is-count-3 .hero-grid .hero-card {
  min-height: 10.5rem;
}
@media (max-width: 900px) {
  .home-hero.is-count-3 .hero-grid {
    grid-template-columns: 1fr;
    grid-template-rows: none;
  }
  .home-hero.is-count-3 .hero-grid .hero-card:first-child {
    grid-row: auto;
    min-height: 16rem;
  }
  .home-hero.is-count-3 .hero-grid .hero-card {
    min-height: 11rem;
  }
}

.hero-card {
  position: relative;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  border-radius: var(--gl-radius-sm);
  background: color-mix(in srgb, var(--primary_color) 82%, #000000);
  text-decoration: none;
  /*-----затемнение снизу, чтобы заголовок читался на любой картинке-----*/
  /*-----без картинки: ровная плашка в цвете темы-----*/
}
.hero-card_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(26, 16, 6, 0.82) 0%, rgba(26, 16, 6, 0.45) 38%, rgba(26, 16, 6, 0) 68%);
}
.hero-card_body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0.4375rem;
  padding: 1.25rem 1.375rem 1.375rem;
  width: 100%;
}
.hero-card_label {
  align-self: flex-start;
  font-size: 0.6875rem;
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #ffffff;
  background: color-mix(in srgb, var(--primary_color) 85%, #000000);
  border-radius: 62.4375rem;
  padding: 0.375rem 0.625rem;
}
.hero-card_title {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.3;
  color: #ffffff;
  text-shadow: 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.35);
}
.hero-card:hover .hero-card_title {
  text-decoration: underline;
  text-underline-offset: 0.1875rem;
}
.hero-card:hover .hero-card_image {
  transform: scale(1.03);
}
.hero-card.is-plain {
  background: linear-gradient(140deg, color-mix(in srgb, var(--primary_color) 92%, #000000), color-mix(in srgb, var(--accent_color) 88%, #000000));
}
.hero-card.is-plain::after {
  background: none;
}

/*-----крупный заголовок у первой карточки, когда их три-----*/
.home-hero.is-count-3 .hero-card:first-child .hero-card_title,
.home-hero.is-count-1 .hero-card_title {
  font-size: 1.5rem;
}
@media (max-width: 680px) {
  .home-hero.is-count-3 .hero-card:first-child .hero-card_title,
.home-hero.is-count-1 .hero-card_title {
    font-size: 1.1875rem;
  }
}

/*-----общая подложка: hero на главной и шапка архива-----*/
.home-hero,
.page-head {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: linear-gradient(135deg, color-mix(in srgb, var(--primary_color) 14%, #ffffff) 0%, color-mix(in srgb, var(--primary_color) 5%, #ffffff) 55%, color-mix(in srgb, var(--accent_color) 7%, #ffffff) 100%);
}

/*-----орьнек: фоновый мотив.
  Рисунок задан маской, цвет берётся из палитры, поэтому узор
  перекрашивается вместе с темой. Мотив переключается классом
  is-pattern-* — значение задаётся в шаблоне секции-----*/
.home-hero::before,
.page-head::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-color: var(--primary_color);
  opacity: 0.08;
  -webkit-mask-repeat: repeat;
  mask-repeat: repeat;
}

.is-pattern-none::before {
  display: none;
}

/*-----йылдыз: восьмилучевая звезда-----*/
.is-pattern-yildiz::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cpath d='M32 9 L40 24 L55 32 L40 40 L32 55 L24 40 L9 32 L24 24 Z'/%3E%3Ccircle cx='32' cy='32' r='3.6'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cpath d='M32 9 L40 24 L55 32 L40 40 L32 55 L24 40 L9 32 L24 24 Z'/%3E%3Ccircle cx='32' cy='32' r='3.6'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: 64px 64px;
  mask-size: 64px 64px;
}

/*-----сув: бегущая волна рядами-----*/
.is-pattern-suv::before {
  opacity: 0.1;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='32' viewBox='0 0 80 32'%3E%3Cpath d='M0 16 Q10 4 20 16 T40 16 T60 16 T80 16' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='32' viewBox='0 0 80 32'%3E%3Cpath d='M0 16 Q10 4 20 16 T40 16 T60 16 T80 16' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");
  -webkit-mask-size: 80px 32px;
  mask-size: 80px 32px;
}

/*-----бадем: миндаль в шахматном порядке-----*/
.is-pattern-badem::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cpath d='M18 10 C29 24 29 44 18 58 C7 44 7 24 18 10 Z'/%3E%3Cpath d='M18 24 C24 32 24 40 18 48 C12 40 12 32 18 24 Z'/%3E%3Cpath d='M54 46 C65 60 65 80 54 94 C43 80 43 60 54 46 Z'/%3E%3Cpath d='M54 -26 C65 -12 65 8 54 22 C43 8 43 -12 54 -26 Z'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cpath d='M18 10 C29 24 29 44 18 58 C7 44 7 24 18 10 Z'/%3E%3Cpath d='M18 24 C24 32 24 40 18 48 C12 40 12 32 18 24 Z'/%3E%3Cpath d='M54 46 C65 60 65 80 54 94 C43 80 43 60 54 46 Z'/%3E%3Cpath d='M54 -26 C65 -12 65 8 54 22 C43 8 43 -12 54 -26 Z'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: 72px 72px;
  mask-size: 72px 72px;
}

/*-----лâле: тюльпан-----*/
.is-pattern-lale::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3' stroke-linecap='round'%3E%3Cpath d='M40 68 V48'/%3E%3Cpath d='M40 48 C31 48 26 41 26 33 C26 24 33 17 40 12 C47 17 54 24 54 33 C54 41 49 48 40 48 Z'/%3E%3Cpath d='M40 12 V44'/%3E%3Cpath d='M40 60 C33 59 29 55 28 49'/%3E%3Cpath d='M40 60 C47 59 51 55 52 49'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3' stroke-linecap='round'%3E%3Cpath d='M40 68 V48'/%3E%3Cpath d='M40 48 C31 48 26 41 26 33 C26 24 33 17 40 12 C47 17 54 24 54 33 C54 41 49 48 40 48 Z'/%3E%3Cpath d='M40 12 V44'/%3E%3Cpath d='M40 60 C33 59 29 55 28 49'/%3E%3Cpath d='M40 60 C47 59 51 55 52 49'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: 80px 80px;
  mask-size: 80px 80px;
}

/*-----гуль: розетка-----*/
.is-pattern-gul::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cellipse cx='36' cy='22' rx='6' ry='11'/%3E%3Cellipse cx='36' cy='50' rx='6' ry='11'/%3E%3Cellipse cx='22' cy='36' rx='11' ry='6'/%3E%3Cellipse cx='50' cy='36' rx='11' ry='6'/%3E%3Ccircle cx='36' cy='36' r='4'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cellipse cx='36' cy='22' rx='6' ry='11'/%3E%3Cellipse cx='36' cy='50' rx='6' ry='11'/%3E%3Cellipse cx='22' cy='36' rx='11' ry='6'/%3E%3Cellipse cx='50' cy='36' rx='11' ry='6'/%3E%3Ccircle cx='36' cy='36' r='4'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: 72px 72px;
  mask-size: 72px 72px;
}

/*-----смеси: второй мотив идёт отдельным слоем на ::after,
   поэтому у каждого своя прозрачность и свой шаг-----*/
[class*=is-pattern-mix]::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-color: var(--primary_color);
  -webkit-mask-repeat: repeat;
  mask-repeat: repeat;
}

/*-----волна + звезда: ровная фактура с редким акцентом-----*/
.is-pattern-mix-suv-yildiz::before {
  opacity: 0.09;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='32' viewBox='0 0 80 32'%3E%3Cpath d='M0 16 Q10 4 20 16 T40 16 T60 16 T80 16' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='32' viewBox='0 0 80 32'%3E%3Cpath d='M0 16 Q10 4 20 16 T40 16 T60 16 T80 16' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");
  -webkit-mask-size: 80px 32px;
  mask-size: 80px 32px;
}

.is-pattern-mix-suv-yildiz::after {
  opacity: 0.07;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.4'%3E%3Cpath d='M80 52 L89 71 L108 80 L89 89 L80 108 L71 89 L52 80 L71 71 Z'/%3E%3Ccircle cx='80' cy='80' r='4'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.4'%3E%3Cpath d='M80 52 L89 71 L108 80 L89 89 L80 108 L71 89 L52 80 L71 71 Z'/%3E%3Ccircle cx='80' cy='80' r='4'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: 160px 160px;
  mask-size: 160px 160px;
}

/*-----волна + тюльпан: самая «вышивочная» пара-----*/
.is-pattern-mix-suv-lale::before {
  opacity: 0.09;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='40' viewBox='0 0 80 40'%3E%3Cpath d='M0 20 Q10 8 20 20 T40 20 T60 20 T80 20' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='40' viewBox='0 0 80 40'%3E%3Cpath d='M0 20 Q10 8 20 20 T40 20 T60 20 T80 20' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");
  -webkit-mask-size: 80px 40px;
  mask-size: 80px 40px;
}

.is-pattern-mix-suv-lale::after {
  opacity: 0.06;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M80 112 V92'/%3E%3Cpath d='M80 92 C71 92 66 85 66 77 C66 68 73 61 80 56 C87 61 94 68 94 77 C94 85 89 92 80 92 Z'/%3E%3Cpath d='M80 56 V88'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M80 112 V92'/%3E%3Cpath d='M80 92 C71 92 66 85 66 77 C66 68 73 61 80 56 C87 61 94 68 94 77 C94 85 89 92 80 92 Z'/%3E%3Cpath d='M80 56 V88'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: 160px 160px;
  mask-size: 160px 160px;
}

/*-----миндаль + розетка: плотная решётка-----*/
.is-pattern-mix-badem-gul::before {
  opacity: 0.07;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cpath d='M24 14 C35 28 35 48 24 62 C13 48 13 28 24 14 Z'/%3E%3Cpath d='M72 62 C83 76 83 96 72 110 C61 96 61 76 72 62 Z'/%3E%3Cpath d='M72 -34 C83 -20 83 0 72 14 C61 0 61 -20 72 -34 Z'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cpath d='M24 14 C35 28 35 48 24 62 C13 48 13 28 24 14 Z'/%3E%3Cpath d='M72 62 C83 76 83 96 72 110 C61 96 61 76 72 62 Z'/%3E%3Cpath d='M72 -34 C83 -20 83 0 72 14 C61 0 61 -20 72 -34 Z'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: 96px 96px;
  mask-size: 96px 96px;
}

.is-pattern-mix-badem-gul::after {
  opacity: 0.07;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cellipse cx='72' cy='24' rx='5' ry='9'/%3E%3Cellipse cx='72' cy='42' rx='5' ry='9'/%3E%3Cellipse cx='63' cy='33' rx='9' ry='5'/%3E%3Cellipse cx='81' cy='33' rx='9' ry='5'/%3E%3Ccircle cx='72' cy='33' r='3'/%3E%3Cellipse cx='24' cy='72' rx='5' ry='9'/%3E%3Cellipse cx='24' cy='90' rx='5' ry='9'/%3E%3Cellipse cx='15' cy='81' rx='9' ry='5'/%3E%3Cellipse cx='33' cy='81' rx='9' ry='5'/%3E%3Ccircle cx='24' cy='81' r='3'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cellipse cx='72' cy='24' rx='5' ry='9'/%3E%3Cellipse cx='72' cy='42' rx='5' ry='9'/%3E%3Cellipse cx='63' cy='33' rx='9' ry='5'/%3E%3Cellipse cx='81' cy='33' rx='9' ry='5'/%3E%3Ccircle cx='72' cy='33' r='3'/%3E%3Cellipse cx='24' cy='72' rx='5' ry='9'/%3E%3Cellipse cx='24' cy='90' rx='5' ry='9'/%3E%3Cellipse cx='15' cy='81' rx='9' ry='5'/%3E%3Cellipse cx='33' cy='81' rx='9' ry='5'/%3E%3Ccircle cx='24' cy='81' r='3'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: 96px 96px;
  mask-size: 96px 96px;
}

/*-----шапка архива-----*/
.page-head {
  padding: 2rem 0 2.25rem;
  margin-bottom: var(--gl-section-gap);
}
@media (max-width: 680px) {
  .page-head {
    padding: 1.5rem 0 1.75rem;
  }
}
.page-head .container {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.page-head_title {
  margin: 0;
  font-size: var(--h1_font_size_desktop);
  font-weight: var(--h1_font_weight);
  color: var(--h1_color);
  line-height: 1.2;
}
@media (max-width: 1200px) {
  .page-head_title {
    font-size: var(--h1_font_size_tablet);
  }
}
@media (max-width: 680px) {
  .page-head_title {
    font-size: var(--h1_font_size_mobile);
  }
}
.page-head_desc {
  font-size: 1rem;
  line-height: 1.6;
  max-width: 46rem;
  color: var(--gl-muted);
}
.page-head_desc p {
  margin: 0 0 0.5rem;
}
.page-head_desc p:last-child {
  margin-bottom: 0;
}

/*-----хлебные крошки-----*/
.crumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.375rem 0.5rem;
  font-size: 0.8125rem;
  color: var(--gl-muted);
  /* разделитель рисуем только для своей разметки:
     у Yoast уже есть собственный, иначе они задваиваются */
}
.crumbs a,
.crumbs span {
  color: inherit;
  text-decoration: none;
}
.crumbs a:hover {
  color: var(--gl-accent);
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}
.crumbs--own a::after {
  content: "/";
  margin-left: 0.5rem;
  color: color-mix(in srgb, var(--gl-muted) 60%, #ffffff);
}
.crumbs span[aria-current] {
  color: var(--default_text_color);
}
/*# sourceMappingURL=style.min.css.map */
