/* ===== Петровский парк — чёрный кабинет ===== */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Montserrat:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,700;1,400&display=swap');

:root {
  --pp-bg: #12100D;        /* бархат сцены */
  --pp-panel: #1D1915;     /* карточки */
  --pp-border: #2E2822;    /* линии */
  --pp-spot: #EBA84A;      /* прожектор */
  --pp-counter: #8C7AE0;   /* контр-свет */
  --pp-park: #7FA27F;      /* память о парке (микро) */
  --pp-text: #F4EEE3;
  --pp-dim: #B3A99B;
}

html { scroll-behavior: smooth; }

body, .body-wrapper {
  background: var(--pp-bg) !important;
  color: var(--pp-text);
  font-family: 'Montserrat', -apple-system, sans-serif;
  line-height: 1.65;
}

a { color: var(--pp-spot); }
a:hover { color: #f7c16e; text-decoration: none; }
p, li { color: var(--pp-text); }
.text-muted, .article-info, .article-details, .published, .category-name, .hits, .muted {
  color: var(--pp-dim) !important;
}

h1, h2, h3, h4, h5, h6,
.sp-module-title, .article-title, .page-header h1, .page-header h2,
.sppb-addon-title, .sppb-addon-heading {
  font-family: 'Oswald', sans-serif !important;
  color: var(--pp-text) !important;
  letter-spacing: 0.02em;
}

/* --- Шапка --- */
#sp-top-bar { background: #0c0a08; color: var(--pp-dim); }
#sp-header {
  background: rgba(18,16,13,0.92);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--pp-border);
}
#sp-header .logo-image { filter: drop-shadow(0 4px 12px rgba(0,0,0,0.5)); }

/* --- Меню --- */
.sp-megamenu-parent > li > a,
.sp-megamenu-parent > li > span {
  color: var(--pp-text) !important;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500;
  letter-spacing: 0.02em;
}
.sp-megamenu-parent > li > a:hover,
.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li.current-item > a {
  color: var(--pp-spot) !important;
}
.sp-megamenu-parent .sp-dropdown {
  background: var(--pp-panel) !important;
  border: 1px solid var(--pp-border);
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(0,0,0,0.5);
}
.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
  background: var(--pp-panel) !important;
  padding: 8px !important;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > span:not(.sp-menu-badge) {
  color: var(--pp-text) !important;
  font-family: 'Montserrat', sans-serif !important;
  display: block !important;
  padding: 10px 16px !important;
  border-radius: 6px;
  line-height: 1.35 !important;
}


.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover {
  color: var(--pp-spot) !important;
  background: rgba(255,255,255,0.06) !important;
}

/* --- Карточки-модули --- */
.sp-module {
  background: var(--pp-panel);
  border: 1px solid var(--pp-border);
  border-radius: 14px;
  padding: 1.5rem;
}
.sp-module-title {
  font-family: 'Oswald', sans-serif;
  color: var(--pp-text);
  border-bottom: 1px solid var(--pp-border);
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}
/* Модули в шапке — без «карточной» рамки и отступов */
#sp-header .sp-module,
#sp-header .sp-module-content {
  background: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
}

/* --- Кнопки --- */
.btn, .btn-primary {
  background: var(--pp-spot);
  color: #12100D;
  border: none;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  border-radius: 8px;
}
.btn:hover, .btn-primary:hover { background: #f7c16e; color: #12100D; }
.btn-outline { border-color: var(--pp-spot); color: var(--pp-spot); }
.btn-outline:hover { background: var(--pp-spot); color: #12100D; }

/* --- Формы --- */
.form-control, input[type="text"], input[type="search"], input[type="email"], select, textarea {
  background: var(--pp-panel);
  border: 1px solid var(--pp-border);
  color: var(--pp-text);
}
.form-control:focus { border-color: var(--pp-spot); box-shadow: 0 0 0 3px rgba(235,168,74,0.2); }

/* --- Подвал --- */
#sp-footer {
  background: #0c0a08;
  color: var(--pp-dim);
  border-top: 1px solid var(--pp-border);
  padding: 2.5rem 0;
}
#sp-footer a { color: var(--pp-dim); }
#sp-footer a:hover { color: var(--pp-spot); }

/* --- Мелочи --- */
::selection { background: var(--pp-spot); color: #12100D; }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: var(--pp-bg); }
::-webkit-scrollbar-thumb { background: var(--pp-border); border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: var(--pp-spot); }

/* ============ Правки 09.09 ============ */

/* --- 1. Текстовый заголовок вместо логотипа --- */
#sp-logo .logo img { display: none !important; }
#sp-logo .logo a {
    display: inline-flex;
    flex-direction: column;
    line-height: 1.12;
    text-decoration: none;
    text-align: left;
}
#sp-logo .logo a::before {
    content: 'ПЕТРОВСКИЙ ПАРК';
    font-family: 'Oswald', 'Arial Narrow', sans-serif;
    font-weight: 700;
    font-size: clamp(1.5rem, 5.5vw, 2.7rem);
    letter-spacing: 0.05em;
    color: #F4EEE3;
    white-space: nowrap;
    text-shadow: 0 0 22px rgba(235,168,74,0.35);
}
#sp-logo .logo a::after {
    content: 'театр-студия';
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: clamp(0.7rem, 1.9vw, 0.92rem);
    letter-spacing: 0.42em;
    color: #B3A99B;
    text-transform: uppercase;
    white-space: nowrap;
    padding-left: 0.25em;
}

/* --- 2. Фото в материалах: ограничение + обтекание --- */
.view-article img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
}
@media (min-width: 576px) {
    .view-article img {
        max-width: 420px;
        max-height: 560px;
        width: auto;
        float: left;
        margin: 0.3rem 1.6rem 1rem 0;
    }
    .view-article .article-details::after,
    .view-article .com-content-article__body::after {
        content: ''; display: table; clear: both;
    }
}

/* --- 3. Мобильное меню: бургер видимый, оффканвас штатный --- */
.burger-icon > span {
    background-color: #F4EEE3 !important;
}

/* --- Мобильное меню (оффканвас) --- */
.offcanvas-menu {
    background: var(--pp-bg);
}
.offcanvas-menu .sp-module,
.offcanvas-menu .sp-module-content {
    background: none;
    border: none;
    border-radius: 0;
    padding: 0;
}
.offcanvas-menu .offcanvas-inner ul.menu {
    padding: 10px 5px;
}
.offcanvas-menu .offcanvas-inner ul.menu > li > a {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.4;
    color: var(--pp-text);
    opacity: 1;
}
.offcanvas-menu .offcanvas-inner ul.menu > li > a:hover,
.offcanvas-menu .offcanvas-inner ul.menu > li.active > a,
.offcanvas-menu .offcanvas-inner ul.menu > li.current > a {
    color: var(--pp-spot);
}

/* --- Миниатюры (превью) статей в списках — компактный размер --- */
.article-list .article .article-intro-image {
    float: left;
    max-width: 340px;
    width: 100%;
    margin: 0 24px 12px 0;
    border-radius: 8px;
    border-bottom: none;
}
.article-list .article .article-intro-image img {
    width: 100%;
    height: auto;
    max-height: 360px;
    object-fit: cover;
}
/* grid-раскладка: убрать гигантские vh-высоты */
.article-list.grid .article .article-intro-image {
    height: 260px !important;
}

/* --- Поиск в футере: нужен только на мобильных, где шапка Helix поиск не показывает (<992px) --- */
.footer-search {
    margin: 0 0 18px;
    max-width: 420px;
}
@media (min-width: 992px) {
    .footer-search { display: none; }
}

/* ============ Заголовки и ссылки в материалах ============
   Helix в template.css красит заголовки статей в #252525 (на тёмном фоне
   не видно) и в #044CD0 при наведении (ярко-синий). Возвращаем палитру. */
.article-list .article .article-header h1 a,
.article-list .article .article-header h2 a,
.article-list .article .article-header h3 a,
.article-list .article .article-header h4 a,
.related-article-list-container ul.related-article-list li .article-header h2 a,
.related-article-list-container ul.related-article-list li .article-header h3 a,
.related-article-list-container ul.related-article-list li .article-header h4 a {
    color: var(--pp-text) !important;
}
.article-list .article .article-header h1 a:hover,
.article-list .article .article-header h1 a:active,
.article-list .article .article-header h1 a:focus,
.article-list .article .article-header h2 a:hover,
.article-list .article .article-header h2 a:active,
.article-list .article .article-header h2 a:focus,
.article-list .article .article-header h3 a:hover,
.article-list .article .article-header h3 a:active,
.article-list .article .article-header h3 a:focus,
.article-list .article .article-header h4 a:hover,
.article-list .article .article-header h4 a:active,
.article-list .article .article-header h4 a:focus,
.related-article-list-container ul.related-article-list li .article-header h2 a:hover,
.related-article-list-container ul.related-article-list li .article-header h2 a:focus,
.related-article-list-container ul.related-article-list li .article-header h3 a:hover,
.related-article-list-container ul.related-article-list li .article-header h3 a:focus,
.related-article-list-container ul.related-article-list li .article-header h4 a:hover,
.related-article-list-container ul.related-article-list li .article-header h4 a:focus {
    color: var(--pp-spot) !important;
}

/* «Подробнее» в списках */
.article-list .article .readmore a {
    color: var(--pp-spot) !important;
    font-weight: 600;
}
.article-list .article .readmore a:hover,
.article-list .article .readmore a:active,
.article-list .article .readmore a:focus {
    color: #f7c16e !important;
}

/* Ссылки в строке сведений о материале (категория и т. п.) */
.article-info > span a,
.related-article-large .article-information > span a {
    color: var(--pp-dim) !important;
}
.article-info > span a:hover,
.article-info > span a:focus,
.related-article-large .article-information > span a:hover,
.related-article-large .article-information > span a:focus {
    color: var(--pp-spot) !important;
}

/* Подписи под картинками */
.article-list .article figcaption.caption,
.article-details figcaption.caption {
    color: var(--pp-dim) !important;
}

/* Иконки в мобильном меню */
.offcanvas-menu .fa,
.offcanvas-menu .fab,
.offcanvas-menu .far,
.offcanvas-menu .fas {
    color: var(--pp-text) !important;
}

/* Пагинация в списках материалов (пресет шаблона делает её тёмной #252525) */
.pagination .page-link {
    background: var(--pp-panel) !important;
    border-color: var(--pp-border) !important;
    color: var(--pp-text) !important;
}
.pagination .page-link:hover,
.pagination .page-link:focus {
    background: var(--pp-spot) !important;
    border-color: var(--pp-spot) !important;
    color: var(--pp-bg) !important;
}
.pagination .active > .page-link {
    background: var(--pp-spot) !important;
    border-color: var(--pp-spot) !important;
    color: var(--pp-bg) !important;
}
.pagination .disabled > .page-link {
    background: transparent !important;
    border-color: var(--pp-border) !important;
    color: var(--pp-dim) !important;
}
/* Старая разметка пагинации (без .page-link) */
.pagination > li > a,
.pagination > li > span {
    color: var(--pp-text) !important;
}
.pagination > li > a:hover,
.pagination > li > span:hover {
    color: var(--pp-spot) !important;
}

/* Списки материалов в модулях («Последние», «Популярные») */
.sp-module .latestnews > div > a,
.sp-module .latestnews > li > a {
    color: var(--pp-text) !important;
}
.sp-module .latestnews > div > a:hover,
.sp-module .latestnews > li > a:hover {
    color: var(--pp-spot) !important;
}

/* Кнопки репоста в материале (пресет шаблона: тёмные иконки #252525 на тёмном фоне) */
.article-details .article-ratings-social-share {
    border-top-color: var(--pp-border) !important;
    border-bottom-color: var(--pp-border) !important;
}
.article-social-share .social-share-icon ul li a {
    color: var(--pp-text) !important;
    border-color: var(--pp-border) !important;
}
.article-social-share .social-share-icon ul li a:hover,
.article-social-share .social-share-icon ul li a:focus {
    background: var(--pp-spot) !important;
    border-color: var(--pp-spot) !important;
    color: var(--pp-bg) !important;
}
/* Кнопка «Скопировать ссылку» — подтверждение срабатывания */
.article-social-share .social-share-icon ul li a.copy.copied {
    background: var(--pp-park) !important;
    border-color: var(--pp-park) !important;
    color: var(--pp-bg) !important;
}

/* ============================
   Phoca Gallery — тёмная тема
   ============================ */

/* Общие контейнеры галереи — тёмный фон */
#phocagallery,
.pg-categories-items-box,
.pg-category-items-box,
.pg-cv {
    background: var(--pp-bg) !important;
}

/* Карточки категорий и фото */
.pg-item-box,
.pg-category-box {
    background: var(--pp-panel) !important;
    border: 1px solid var(--pp-border) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    width: 320px !important;
    min-width: 320px !important;
    max-width: 320px !important;
    height: 340px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
}
/* Первая карточка — «Назад» — без фото, со ссылкой */
/* (убрано — ломало отображение на /photo, где первая карточка это категория) */
.pg-categories-items-box,
.pg-category-items-box {
    justify-content: center !important;
}

/* Изображения в карточках — растягиваются на всю ширину */
.pg-item-box-image img,
.pg-category-box-image img {
    border-radius: 10px 10px 0 0 !important;
    box-shadow: none !important;
    transition: transform .3s ease, box-shadow .3s ease;
    width: 100% !important;
    height: 240px !important;
    object-fit: cover !important;
    display: block !important;
}
.pg-item-box-image,
.pg-category-box-image {
    text-align: center !important;
    line-height: 0 !important;
}
.pg-category-box:hover .pg-category-box-image img {
    transform: scale(1.03);
    box-shadow: 0 8px 24px rgba(0,0,0,0.5) !important;
}

/* ===== УБРАТЬ ДЕКОРАТИВНЫЕ ИКОНКИ SVG (НО НЕ «НАЗАД») ===== */
.pg-item-box-icons-box,
.pg-item-box .pg-item-box-image svg:not([alt*="азад"]),
.pg-category-box .pg-category-box-image svg,
.ph-si-image,
.ph-si-category,
.ph-si-category-medium,
.ph-si-lock-medium,
.ph-si-feed,
.ph-si-view,
.ph-si-download {
    display: none !important;
}

/* ===== Карточка «Назад»: убрать белую залитую иконку, показать текстовую ссылку ===== */
.pg-item-box:has(svg.ph-si-back-medium) .pg-item-box-image {
    display: none !important;
}
.pg-item-box:has(svg.ph-si-back-medium) {
    justify-content: center !important;
    align-items: center !important;
}
.pg-item-box:has(svg.ph-si-back-medium) > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    color: var(--pp-spot) !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    font-size: 1.1rem !important;
    text-decoration: none !important;
}
.pg-item-box:has(svg.ph-si-back-medium) > a::before {
    content: "← Назад" !important;
}
.pg-item-box:has(svg.ph-si-back-medium):hover {
    border-color: var(--pp-spot) !important;
}

/* ===== ПОДПИСИ под фото ===== */
/* Больше не позиционируются поверх — убираем absolute */
.pg-item-box-title,
.pg-category-box-title {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    padding: 0.5em 0.75em !important;
    color: var(--pp-text) !important;
    font-weight: 500 !important;
    font-size: 0.8rem !important;
    background: transparent !important;
    width: 100%;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
    text-align: center !important;
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.pg-item-box-title a,
.pg-category-box-title a {
    color: var(--pp-text) !important;
    text-decoration: none !important;
}
.pg-item-box-title a:hover,
.pg-category-box-title a:hover {
    color: var(--pp-spot) !important;
}

/* <figcaption> под картинкой — скрываем дубликат */
.pg-item-box figcaption {
    display: none !important;
}

/* Кнопка «назад» — восстановить как ссылку */
.pg-category-categories-top-box {
    display: block !important;
}
.pg-category-categories-top-box svg,
.pg-category-categories-top-box .ph-si-back-medium {
    display: none !important;
}
.pg-category-categories-top-box a {
    color: var(--pp-spot) !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.85rem !important;
    text-decoration: none !important;
}
.pg-category-categories-top-box a:hover {
    color: #f7c16e !important;
}

/* Пагинация и навигация галереи */
.phoca-pagination .pagination,
.phoca-pagination ul.pagination {
    background: var(--pp-bg) !important;
}

/* Счётчик фото на странице категории */
.pg-category-desc {
    color: var(--pp-dim) !important;
    font-size: 0.85rem;
}

/* Описание категории (текст под заголовком) */
#phocagallery-categories h2,
#phocagallery-category h1 {
    font-family: 'Oswald', sans-serif !important;
    color: var(--pp-text) !important;
}
#phocagallery-category .pg-category-desc p {
    color: var(--pp-dim);
}

/* Верхние иконки (rss) — скрыть */
.pg-top-icons {
    display: none !important;
}

/* Всплывающее окно PhotoSwipe — фон */
.pswp__bg {
    background: #0a0908 !important;
}

/* Статистика в категории (всего фото) — привести к тёмной теме */
.pg-category-stat-box {
    color: var(--pp-dim) !important;
    font-size: 0.8rem;
}
