/* ==========================================================================
   Контент внутренних страниц в стиле обновлённого дизайна (как на главной).
   Цвета: зелёный #7AB61E (наведение #90D32A), текст #323232, светлый фон #F3F6F5,
   линии #E5E5E5; скругление фото и карточек — 12px, кнопок — 6px.
   Подключается после style.css темы Flash (см. functions.php), всё ограничено .modbron —
   главная страница не затрагивается.
   ========================================================================== */

/* --- Заголовок страницы и текст ------------------------------------------ */
.modbron {
  color: #323232;
}
.modbron > h1 {
  margin: 0 0 28px;
  font-size: 32px;
  line-height: 1.2;
  font-weight: 700;
  color: #323232;
}
.modbron .entry-content {
  font-size: 16px;
  line-height: 1.6;
}
.modbron .entry-content p {
  margin: 0 0 12px;
}
.modbron .entry-content h2 {
  margin: 32px 0 16px;
  font-size: 26px;
  line-height: 1.3;
  font-weight: 700;
  color: #323232;
}
.modbron .entry-content h3 {
  margin: 24px 0 12px;
  font-size: 20px;
  line-height: 1.3;
  font-weight: 700;
  color: #323232;
}
.modbron .entry-content .textwidget > ul,
.modbron .entry-content .textwidget > ol {
  margin: 0 0 16px;
  padding-left: 20px;
}
.modbron .entry-content .so-panel + .so-panel {
  margin-top: 16px;
}

/* --- Фото: всегда со скруглением ------------------------------------------ */
.modbron .entry-content img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
}

/* --- Таблицы -------------------------------------------------------------- */
.modbron .entry-content table {
  width: 100% !important;
  height: auto !important;
  margin: 16px 0 28px;
  border: 1px solid #E5E5E5;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 12px;
  overflow: hidden;
  font-size: 15px;
  line-height: 1.4;
  background-color: #ffffff;
}
/* ширины колонок из width="" не сбрасываем: шапка цен часто свёрстана отдельной таблицей
   с теми же пропорциями — так колонки совпадают */
.modbron .entry-content table td,
.modbron .entry-content table th {
  height: auto !important;
  padding: 10px 12px;
  border: 0;
  border-bottom: 1px solid #E5E5E5;
  border-right: 1px solid #E5E5E5;
  vertical-align: middle;
  text-align: center;
  color: #323232;
}
.modbron .entry-content table td:last-child,
.modbron .entry-content table th:last-child {
  border-right: 0;
}
.modbron .entry-content table tr:last-child td {
  border-bottom: 0;
}
/* Обычные ячейки — обычным шрифтом (тема Flash делала первую строку жирной, а в таблицах цен
   это строка с ценами). Заголовки в контенте и так в <strong>. */
.modbron .entry-content table td {
  font-weight: 400;
}
.modbron .entry-content table th {
  font-weight: 700;
  background-color: #F3F6F5;
}
/* на компьютере колонки строго по пропорциям width="" — соседние таблицы и шапка цен совпадают */
@media screen and (min-width: 768px) {
  .modbron .entry-content table {
    table-layout: fixed;
  }
}
.modbron .entry-content table td p {
  margin: 0;
}
/* шапка таблицы и строки-разделы (классы ставит script.js) */
.modbron .entry-content table tr.rh-row-head td {
  font-weight: 700;
  color: #ffffff;
  background-color: #7AB61E;
  border-color: rgba(255, 255, 255, 0.35);
}
.modbron .entry-content table tr.rh-row-head td * {
  color: #ffffff;
}
.modbron .entry-content table tr.rh-row-section td {
  font-weight: 700;
  color: #3E6B0A;
  background-color: #EEF6E2;
}
.modbron .entry-content table tr.rh-row-section td * {
  color: #3E6B0A;
}
/* слова в ячейках не рвём по буквам (глобальный word-break темы Flash) */
.modbron .entry-content table td,
.modbron .entry-content table td *,
.modbron .entry-content table th,
.modbron .entry-content table th * {
  word-break: normal;
  overflow-wrap: normal;
}
.modbron .entry-content table td p + p {
  margin-top: 4px;
}

/* --- Кнопки в контенте («Забронировать», «Подробнее») --------------------- */
.modbron .entry-content .new-bron {
  display: inline-block;
  margin: 0 0 20px;
  padding: 0;
  border: 0;
  background: none;
  text-transform: none;
}
.modbron .entry-content .new-bron:hover {
  background: none;
}
.modbron .entry-content .new-bron a,
.modbron .entry-content a.nb-btn,
.modbron .entry-content a.to_book {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  border: 0;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  color: #ffffff !important;
  background-color: #7AB61E;
  transition: 0.3s;
}
.modbron .entry-content .new-bron a:hover,
.modbron .entry-content a.nb-btn:hover,
.modbron .entry-content a.to_book:hover {
  background-color: #90D32A;
}

/* --- Карточки номеров (страницы корпусов и коттеджей) --------------------- */
.modbron .alllbbox {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  width: 100%;
}
.modbron .alllbbox .lbbox {
  display: flex;
  flex-direction: column;
  width: auto;
  margin: 0 !important;
  padding: 0 20px 20px;
  overflow: hidden;
  text-align: left;
  border-radius: 12px;
  box-shadow: none;
  background-color: #F3F6F5;
}
.modbron .alllbbox .lbbox .lbpic {
  display: block;
  margin: 0 -20px;
}
.modbron .alllbbox .lbbox .lbpic img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: 0;
}
.modbron .alllbbox .lbbox h3,
.modbron .alllbbox .lbbox h3.lbname {
  margin: 16px 0 8px;
  padding: 0;
  border: 0;
  font-family: inherit;
  font-style: normal;
  font-weight: 700;
  font-size: 20px;
  line-height: 1.3;
  color: #323232;
  background: none;
}
.modbron .alllbbox .lbbox ul {
  margin: 12px 0 16px;
  padding: 0;
}
.modbron .alllbbox .lbbox ul li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 6px;
  font-family: inherit;
  color: #323232;
  background: none;
}
.modbron .alllbbox .lbbox ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #7AB61E;
}
.modbron .alllbbox .lbbox .nbprice,
.modbron .alllbbox .lbbox .nbprice strong {
  font-family: inherit;
  color: #323232;
}
.modbron .alllbbox .lbbox a.nb-btn {
  align-self: flex-start;
  margin-top: auto;
}
@media screen and (max-width: 991px) {
  .modbron .alllbbox {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 599px) {
  .modbron .alllbbox {
    grid-template-columns: 1fr;
  }
}

/* --- Слайдер фото (виджет Flash Slider на страницах номеров и терм) ------- */
.modbron .tg-slider-widget {
  margin: 0 0 24px;
}
.modbron .tg-slider-widget .swiper-container {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
}
.modbron .tg-slider-widget .slider-image {
  margin: 0;
}
.modbron .tg-slider-widget .slider-image img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: 0;
}
/* подписей у слайдов нет — затемнение и пустой блок текста не нужны */
.modbron .tg-slider-widget .slider-image .overlay,
.modbron .tg-slider-widget .slider-content {
  display: none;
}
.modbron .tg-slider-widget .swiper-button-next,
.modbron .tg-slider-widget .swiper-button-prev {
  /* !important — общее правило стороннего виджета (чат) ставит им position: static */
  position: absolute !important;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 50% !important;
  width: 40px;
  height: 40px;
  /* !important — style.css новой вёрстки задаёт кнопкам Swiper left/margin: unset !important */
  margin: -20px 0 0 !important;
  visibility: visible;
  opacity: 1;
  border-radius: 8px;
  color: #ffffff;
  background-color: #7AB61E;
  transition: 0.3s;
}
.modbron .tg-slider-widget .swiper-button-next {
  left: auto !important;
  right: 16px !important;
}
.modbron .tg-slider-widget .swiper-button-prev {
  left: 16px !important;
  right: auto !important;
}
.modbron .tg-slider-widget .swiper-button-next:hover,
.modbron .tg-slider-widget .swiper-button-prev:hover {
  background-color: #90D32A;
}
.modbron .tg-slider-widget .swiper-button-next::before,
.modbron .tg-slider-widget .swiper-button-prev::before {
  display: none;
}
/* стрелка — белый уголок (стандартную иконку Swiper скрывают стили новой вёрстки) */
.modbron .tg-slider-widget .swiper-button-next::after,
.modbron .tg-slider-widget .swiper-button-prev::after {
  content: "" !important;
  display: block !important;
  width: 10px;
  height: 10px;
  font-size: 0;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
}
.modbron .tg-slider-widget .swiper-button-next::after {
  transform: translateX(-2px) rotate(45deg);
}
/* кнопку «назад» стили новой вёрстки уже поворачивают на 180° (style.css: .swiper-button-prev),
   поэтому уголок рисуем как у «вперёд» — разворот даёт сама кнопка */
.modbron .tg-slider-widget .swiper-button-prev::after {
  transform: translateX(-2px) rotate(45deg);
}
.modbron .tg-slider-widget .swiper-pagination {
  position: absolute !important;
  z-index: 10;
  left: 0;
  right: 0;
  bottom: 12px !important;
  display: flex;
  justify-content: center;
  gap: 8px;
  width: 100%;
}
.modbron .tg-slider-widget .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  margin: 0;
  cursor: pointer;
  opacity: 1;
  background-color: rgba(255, 255, 255, 0.7);
}
.modbron .tg-slider-widget .swiper-pagination-bullet-active {
  background-color: #7AB61E;
}

/* --- Телефон -------------------------------------------------------------- */
@media screen and (max-width: 767px) {
  .modbron > h1 {
    margin-bottom: 20px;
    font-size: 24px;
  }
  .modbron .entry-content h2 {
    font-size: 22px;
  }
  .modbron .entry-content table {
    font-size: 12px;
  }
  .modbron .entry-content table td,
  .modbron .entry-content table th {
    width: auto !important;
    padding: 6px 5px;
  }
  .modbron .tg-slider-widget .swiper-button-next,
  .modbron .tg-slider-widget .swiper-button-prev {
    width: 34px;
    height: 34px;
    margin: -17px 0 0 !important;
  }
  .modbron .tg-slider-widget .swiper-button-next {
    right: 10px !important;
  }
  .modbron .tg-slider-widget .swiper-button-prev {
    left: 10px !important;
  }
}
