/* Стили для динамически загружаемых книг */
.ct-link.book {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 250px;
    display: flex !important;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding-left: 20px;
    padding-top: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
    width: 100%;
    cursor: pointer;
}

.ct-link.book.dark {
    background-color: #5a5a5a;
}

.ct-link.book.light {
    background-color: #a0a0a0;
}

.ct-link.book .ct-text-block {
    color: #ffffff;
    text-transform: uppercase;
    font-weight: bold;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.8), -2px -2px 4px rgba(0,0,0,0.8), 2px -2px 4px rgba(0,0,0,0.8), -2px 2px 4px rgba(0,0,0,0.8);
    line-height: 1.3;
    z-index: 1;
    position: relative;
}

.ct-link.book.light .ct-text-block {
    color: #000000;
    text-shadow: 1px 1px 2px rgba(255,255,255,0.8), -1px -1px 2px rgba(255,255,255,0.8), 1px -1px 2px rgba(255,255,255,0.8), -1px 1px 2px rgba(255,255,255,0.8);
}

/* Стили для выпадающего меню */
.sub-menu {
    position: absolute !important;
    visibility: hidden;
    opacity: 0;
    top: 100%;
    left: 0;
    min-width: 200px;
    background-color: #ffffff;
    border-radius: 3px;
    padding: 0;
    margin: 0;
    list-style: none;
    z-index: 9999;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    box-shadow: 0px 10px 72px 10px rgba(0,0,0,0.07);
}

/* Стили для выпадающего меню при наведении */
.menu-item.menu-item-has-children:hover > .sub-menu {
    visibility: visible !important;
    opacity: 1 !important;
}

.menu-item.menu-item-has-children:hover > .sub-menu.aos-animate {
    visibility: visible !important;
}

/* Стили для элементов подменю */
.sub-menu .menu-item {
    list-style: none;
    display: block;
}

.sub-menu .menu-item a {
    background-color: #ffffff;
    color: #033042;
    padding-top: 4px;
    padding-bottom: 4px;
    padding-left: 12px;
    padding-right: 12px;
    text-transform: lowercase;
    font-weight: 400;
    font-size: 16px;
    display: block;
    text-decoration: none;
    border-radius: 3px;
    transition: background-color 0.2s ease;
}

.sub-menu .menu-item a:hover {
    background-color: #f0f0f0;
}

/* Стили для splash/loader анимации */
/* Скрываем заставку по умолчанию до начала анимации */
#div_block-65-17.loader {
    height: 100vh;
    overflow: hidden;
    display: block !important;
    opacity: 0;
    visibility: hidden;
}

/* Показываем заставку когда JS готов к анимации */
#div_block-65-17.loader.splash-ready {
    opacity: 1;
    visibility: visible;
}

#image-93-25 {
    object-fit: cover;
    object-position: center;
}

/* Картинка + заголовок "ПРОЗА КИРИЛЛА КАРСКОГО" */

#new_columns-221-25.ct-new-columns {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;   /* центрируем всю группу */
}

/* левая колонка — картинка */
#div_block-222-25 {
  flex: 0 0 auto !important;           /* ширина по содержимому */
  max-width: none !important;
  margin: 0 !important;
}

#image-223-25 {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 360px !important;         /* примерно как в оригинале */
}

/* правая колонка — синий заголовок */
#div_block-224-25 {
  flex: 0 0 auto !important;           /* тоже по содержимому */
  margin: 0 0 0 40px !important;       /* зазор между картинкой и плашкой */
  padding: 0 !important;
}

/* сама плашка с текстом */
#headline-225-25 {
  margin: 0 !important;
  white-space: nowrap !important;      /* не переносим строку */
}

/* ========================================
   ОБЩИЕ СТИЛИ
   ======================================== */

/* Делаем контейнер прозрачным чтобы был виден фон с ветками */
#div_block-228-25 {
  background-color: transparent !important;
  position: static !important;
  width: 100% !important;
  left: auto !important;
  top: auto !important;
}

/* Увеличиваем высоту секции с ветками для десктопа */
#section-220-25 {
  min-height: 650px !important;
}

/* Убираем отрицательный margin который добавляет Oxygen при 767px */
#new_columns-221-25 {
  margin-bottom: 0 !important;
}

/* ========================================
   АДАПТАЦИЯ ДЛЯ ПРОМЕЖУТОЧНОГО ДИАПАЗОНА (769px - 991px)
   ======================================== */

@media (min-width: 769px) and (max-width: 991px) {
  /* Гарантируем прозрачность */
  #div_block-228-25 {
    background-color: transparent !important;
  }

  /* Убираем проблемные отступы */
  #new_columns-221-25 {
    margin-bottom: 0 !important;
  }

  /* Адаптируем layout для промежуточного диапазона */
  #new_columns-221-25.ct-new-columns {
    flex-direction: column !important;
    align-items: center !important;
  }

  #div_block-222-25 {
    width: 100% !important;
    text-align: center !important;
    align-items: center !important;
  }

  #div_block-224-25 {
    width: 100% !important;
    text-align: center !important;
  }

  #image-223-25 {
    max-width: 300px !important;
  }
}

/* ========================================
   АДАПТАЦИЯ ДЛЯ СРЕДНИХ ЭКРАНОВ (992px - 1200px)
   ======================================== */

@media (min-width: 992px) and (max-width: 1200px) {
  #div_block-228-25 {
    background-color: transparent !important;
  }

  #new_columns-221-25 {
    margin-bottom: 0 !important;
  }
}

/* ========================================
   АДАПТАЦИЯ ДЛЯ МАЛЫХ ЭКРАНОВ (≤768px)
   ======================================== */

@media (max-width: 768px) {
  /* Скрываем кнопку меню */
  .oxy-pro-menu-mobile-open-icon {
    display: none !important;
  }

  /* Секция с фоном веток */
  #section-220-25 {
    background-position: left center !important;
    background-size: auto 100% !important;
    padding-top: 0 !important;
    padding-bottom: 60px !important;
    min-height: 400px !important;
  }

  /* Контейнер внутри секции */
  #div_block-228-25 {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  /* Уменьшаем фото автора */
  #image-223-25 {
    max-width: 200px !important;
  }

  /* Уменьшаем заголовок */
  #headline-225-25 {
    font-size: 24px !important;
    white-space: normal !important;
    text-align: center !important;
  }

  /* Layout колонок с фото и заголовком */
  #new_columns-221-25.ct-new-columns {
    flex-direction: column !important;
    align-items: center !important;
    margin-top: 0 !important;
    padding-top: 30px !important;
  }

  #div_block-222-25 {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  #div_block-224-25 {
    margin: 30px 0 0 0 !important;
  }
}

/* ========================================
   ПОРТРЕТНАЯ ОРИЕНТАЦИЯ МОБИЛЬНЫХ (≤768px)
   ======================================== */

@media (max-width: 768px) and (orientation: portrait) {
  /* Заставка - уменьшаем шрифты */
  #text_block-3-17,
  #text_block-7-17,
  #text_block-10-17 {
    font-size: 28px !important;
    text-align: center !important;
  }

  #text_block-12-17 {
    font-size: 32px !important;
    text-align: center !important;
  }

  #image-93-25 {
    height: 60% !important;
  }

  /* Книги в одну колонку */
  #div_block-251-25,
  #div_block-275-25 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* Высота карточек книг */
  .ct-link.book {
    min-height: 180px !important;
  }
}
