/* Превью в списке новостей */
.eThumb img{
  max-width: 100%;
  height: auto;
  display: block;
  border-radius: var(--radius);
}
/* Related entries (сетка) */
.new-style ul.uRelatedEntries{
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
@media (max-width: 1024px){
  .new-style ul.uRelatedEntries{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px){
  .new-style ul.uRelatedEntries{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.new-style ul.uRelatedEntries li{ margin: 0; }
.new-style ul.uRelatedEntries li a{
  display: block;
  padding: 10px;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: var(--radius);
  background: var(--card);
  text-decoration: none;
  color: var(--text);
  box-shadow: var(--shadow-soft);
}
.new-style ul.uRelatedEntries li a:hover{ color: var(--primary); }
/* Заголовки: межстрочный интервал (для всего сайта) */
h1, h2{ line-height: 1.2; }
h1{ margin: 10px 0 12px; }
h2{ margin: 10px 0 10px; }
/* layout страницы с toc */
.page{
  display: flex;
  gap: 20px;
  padding: 20px;
  align-items: flex-start;
}
.toc{
  width: 260px;
  padding: 12px;
  border: 1px solid #ddd;
  border-radius: 6px;
  position: sticky;
  top: 10px;
  align-self: flex-start;
  background: var(--card);
}
.toc strong{
  display: block;
  margin-bottom: 8px;
  font-size: 1.05em;
}
.toc ul{ list-style: none; padding: 0; margin: 0; }
.toc li{ margin: 6px 0; }
.toc a{
  text-decoration: none;
  color: var(--primary);
  display: block;
  padding: 4px 6px;
  border-radius: 4px;
}
.toc a:hover{ background: #f0f4f9; }
.content{ flex: 1 1 auto; min-width: 0; }
.intro-image{
  float: left;
  width: 350px;
  margin: 0 20px 20px 0;
  border-radius: 8px;
}
figure{ display: block; }
figcaption{
  text-align: center;
  font-size: 0.9em;
  color: #555;
  margin-top: 6px;
}
@media (max-width: 900px){
  .page{ flex-direction: column; }
  .toc{ width: 100%; position: static; }
  .intro-image{ float: none; width: 100%; margin: 0 0 12px 0; }
}
/* переносы длинных ссылок/слов */
.specialties a{ overflow-wrap: anywhere; word-break: break-word; }
.specialties p, .specialties span{ white-space: normal; }
.break-link{ overflow-wrap: anywhere; word-break: break-word; }
.specialties a, .specialties p, .specialties span,
.wrapper a, .wrapper p, .wrapper span{
  overflow-wrap: anywhere;
  word-break: break-word;
}
@media (max-width: 767px){
  .blog-posts{ flex-direction: column; }
  .blog-posts .post{ width: 100%; margin: 10px 0; }
}


:root{
  --accent: rgb(30, 144, 255);
  --blue: rgb(0, 0, 255);
}
/* PROMO CTA — вместо inline */
.promo-wrapper .two-cta{
  display:flex;
  justify-content:center;
  gap:1rem;
  margin-top:.75rem;
  flex-wrap:wrap;
}
.promo-wrapper .two-cta .cap-ds{ margin:0; }
/* Заголовки по центру */
.block-title,
.block-title-2,
.block-title-4,
.block-title-6,
.block-title-9,
.faq-title{
  text-align:center;
}
/* Описательные wrapper по центру */
.wrapper[aria-label="Описание академии космоэнергетики"]{
  text-align:center;
}
/* Блоки “Наш подход/ценности/…” — по верстке слева */
.specialties .section-title,
.specialties .section-text{
  text-align:left;
}
/* Типографика вместо inline */
.title-24pt{ font-size:24pt; }
.text-18pt{ font-size:18pt; }
.text-bold{ font-weight:700; }
.contacts-line{ margin:0 0 6px; }
.phone-14pt{ font-size:14pt; }
/* Ссылки вместо inline цвета */
.link-accent{ color: var(--accent); }
.link-accent:hover,
.link-accent:focus{ color: var(--accent); }
.link-accent--blue{ color: var(--blue); }
.link-accent--lg{ font-size:16px; }
.break-link{
  word-break: break-word;
  overflow-wrap: anywhere;
}
/* Контактные кнопки */
.contact-buttons{
  display:flex;
  justify-content:center;
  gap:.75rem;
  flex-wrap:wrap;
}
/* Ссылки на тёмном фоне (портфолио) */
.more--on-dark{ color:#fff; }
/* Лёгкий адаптив */
@media (max-width:560px){
  .promo-wrapper .two-cta{ gap:.6rem; }
  .title-24pt{ font-size:20pt; }
}


/* sidebar: выравнивание */
.text-center{ text-align:center; }
.text-bold{ font-weight:700; }
/* сертификаты */
.certs-table{ margin:0 auto; }
.cert-img{ width:80px; height:120px; display:block; }
/* заголовок раздела меню */
.menu-section-title{
  display:inline-block;
  margin: 10px 0 6px;
  font-size:14pt;
  font-weight:700;
  color: rgb(30, 144, 255);
}
.menu-section-label{
  margin: 12px 0 6px;
  font-weight:700;
}
/* ссылки на темном фоне (если нужно) */
.more--on-dark{ color:#fff; }

/* Weather widget (scoped, safe for all pages) */
#contacts-right-container .side-weather{
  text-align:center;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 12px;
  padding: 10px 12px;
  margin: 0 0 12px;
  background: rgba(255,255,255,.8);
}
#contacts-right-container .side-weather__title{
  font-weight: 800;
  font-size: 14px;
  margin-bottom: 8px;
}
#contacts-right-container .side-weather__row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
}
#contacts-right-container .side-weather__temp{
  font-size: 34px;
  line-height: 1;
  font-weight: 800;
  min-width: 70px;
}
#contacts-right-container .side-weather__meta{
  text-align:center;
}
#contacts-right-container .side-weather__desc{
  font-weight: 600;
  margin-bottom: 2px;
}
#contacts-right-container .side-weather__small{
  font-size: 12px;
  opacity: .85;
}
#contacts-right-container .side-weather__actions{
  margin-top: 8px;
  display:flex;
  justify-content:center;
  gap: 8px;
  flex-wrap: wrap;
}
#contacts-right-container .side-weather__btn{
  cursor:pointer;
  border: 1px solid rgba(0,0,0,.14);
  background: #fff;
  padding: 6px 10px;
  border-radius: 10px;
  font-weight: 600;
}
#contacts-right-container .side-weather__btn:hover{
  background: rgba(0,0,0,.04);
}
#contacts-right-container .side-weather__link{
  display:inline-block;
  padding: 6px 10px;
  border-radius: 10px;
  text-decoration:none;
  background: rgba(30,144,255,.12);
  color: rgb(30,144,255);
  font-weight: 700;
}


/* Sidebar widgets layout */
.sidebar-widgets{
  display:grid;
  gap:12px;
}
.sidebar-widgets .msk-now,
.sidebar-widgets .side-weather2{
  max-width:none;
  width:100%;
}
/* Сейчас в Москве (без тени) */
.msk-now{
  text-align:center;
  border-radius:14px;
  padding:12px 12px 10px;
  border:1px solid rgba(0,0,0,.10);
  background:linear-gradient(180deg, rgba(30,144,255,.10), rgba(255,255,255,.92));
  box-shadow:none; /* тени НЕТ */
  margin:0 auto;
}
.msk-now__head{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px;align-items:baseline}
.msk-now__title{font-weight:900;font-size:14px;letter-spacing:.02em;text-transform:uppercase;opacity:.9}
.msk-now__badge{font-weight:900;font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.08);background:rgba(255,255,255,.75);white-space:nowrap}
.msk-now__time{font-size:34px;line-height:1.05;font-weight:900;letter-spacing:.02em}
.msk-now__date{margin-top:4px;font-size:13px;font-weight:700;opacity:.9}
/* Погода (без тени) */
.side-weather2{
  text-align:center;
  border-radius:14px;
  padding:12px 12px 10px;
  border:1px solid rgba(0,0,0,.10);
  background:linear-gradient(180deg, rgba(30,144,255,.12), rgba(255,255,255,.85));
  box-shadow:none; /* тени НЕТ */
  margin:0 auto;
}
.side-weather2__head{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px;align-items:baseline}
.side-weather2__title{font-weight:900;font-size:14px;letter-spacing:.02em;text-transform:uppercase;opacity:.9}
.side-weather2__city{font-weight:800;font-size:13px;opacity:.9}
.side-weather2__now{display:flex;align-items:center;justify-content:center;gap:10px;margin:6px 0 10px}
.side-weather2__icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.7);border:1px solid rgba(0,0,0,.06);font-size:26px}
.side-weather2__temp{font-size:36px;line-height:1;font-weight:900}
.side-weather2__desc{font-weight:700;margin-top:2px}
.side-weather2__updated{margin-top:2px;font-size:12px;opacity:.8}
.side-weather2__grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.side-weather2__kv{border-radius:12px;padding:8px;background:rgba(255,255,255,.72);border:1px solid rgba(0,0,0,.06)}
.side-weather2__kv .k{font-size:12px;opacity:.78}
.side-weather2__kv .v{margin-top:2px;font-weight:900}
.side-weather2__err{margin-top:8px;font-size:12px;color:#7a1d1d;font-weight:700}
/* На случай, если тема добавляет тени через filter/text-shadow */
.msk-now, .side-weather2{
  filter:none;
  text-shadow:none;
}


/* ПОИСК — цвет рамки */
#search-form input,
#search-form textarea,
#search-form select,
#search input,
#search-form .searchQuery,
input[type="search"],
input[name="q"],
#schQuery {
  border: 2px solid #8ac7ff !important;
}
/* ПОИСК — рамка при фокусе (когда кликнули) */
#search-form input:focus,
#search input:focus,
input[type="search"]:focus,
input[name="q"]:focus,
#schQuery:focus {
  border-color: #8ac7ff !important;
  outline: none !important;
  box-shadow: none !important; /* если у темы тень */
}


/* Кнопка "Подписаться" (uCoz) */
.btn-subscribe{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:10px 14px;
  border-radius:12px;
  background:#2f80ed;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:600;
  font-size:14px;
  line-height:1;
  box-shadow:0 6px 16px rgba(47,128,237,.25);
  transition:background .15s ease, transform .05s ease, box-shadow .15s ease;
}
.btn-subscribe:hover{
  background:#2569c7;
  box-shadow:0 8px 18px rgba(47,128,237,.32);
}
.btn-subscribe:active{
  transform:translateY(1px);
}
.btn-subscribe:focus-visible{
  outline:2px solid rgba(47,128,237,.45);
  outline-offset:3px;
}
/* Чтобы кнопка не "ломала" строку с ссылками "Мой профиль | Выход" */
.user-btns .btn-subscribe{
  margin-top:8px;
}


/* =========================
   MOBILE / RESPONSIVE PATCH
   (вставьте в конец my.css)
   ========================= */
/* 1) Базовый box-sizing (часто решает переполнения/ширины) */
*, *::before, *::after { box-sizing: border-box; }
/* 2) Защита от горизонтального скролла из-за длинных строк/блоков */
html, body { max-width: 100%; overflow-x: hidden; }
/* 3) Картинки/медиа — не вылезают за контейнер */
img, svg, video, iframe { max-width: 100%; height: auto; }
/* 4) Intro image: гибкая ширина, чтобы не ломать узкие экраны */
.intro-image{
  max-width: 100%;
  height: auto;
}
/* 5) TOC sticky: через переменную, чтобы можно было поднять при фикс.шапке */
:root{ --stickyTop: 10px; }
.toc{ top: var(--stickyTop); }
/* 6) Переносы: оставляем агрессивный anywhere только там, где нужно
      (иначе может рвать обычный текст/телефоны/названия) */
.break-link,
.specialties a{
  overflow-wrap: anywhere;
  word-break: break-word;
}
/* Для обычного текста — мягче */
.wrapper p{
  overflow-wrap: break-word;
  word-break: normal;
}
/* Если нужно — можно сохранить переносы для ссылок внутри wrapper,
   но лучше не трогать span повсеместно */
.wrapper a{
  overflow-wrap: anywhere;
  word-break: break-word;
}
/* 7) Related entries: 1 колонка на совсем маленьких экранах */
@media (max-width: 420px){
  .new-style ul.uRelatedEntries{ grid-template-columns: 1fr; }
}
/* 8) Page layout: меньше отступов на телефоне */
@media (max-width: 480px){
  .page{
    padding: 12px;
    gap: 12px;
  }
}
/* 9) Контактные кнопки: удобнее тапать на мобилке (кнопки на всю ширину) */
@media (max-width: 480px){
  .contact-buttons .iksweb{
    flex: 1 1 100%;
    text-align: center;
  }
}
/* 10) Сертификаты: чтобы не тянуло картинку по высоте и не мыло
      (если cert-img — это <img>) */
.cert-img{
  height: auto;
}


/* Отступ сверху для H1 в контенте (внутренние страницы) */
#content h1{
  margin-top: 45px;   /* можно 20/24/32 — подберите визуально */
  margin-bottom: 12px;
  line-height: 1.2;
}
@media (max-width: 767px){
  #content h1{ margin-top: 18px; }
}