/*
  zel-premium.css — ПРЕМИУМ-ТЕМА (тёмная, золото, Prata) поверх штатных стилей.
  Подключается ПОСЛЕДНЕЙ строкой в шаблонах: <link id="zel-premium" ...>.
  ОТКАТ: удалить строку подключения из шаблонов (скрипт _scripts/apply/_premium_theme.php?off=1)
  и из shahmatka.html — сайт вернётся к прежнему виду без каких-либо иных правок.
*/
@import url('https://fonts.googleapis.com/css2?family=Prata&family=Manrope:wght@400;500;600;700&family=JetBrains+Mono:wght@500;600&display=swap');

:root {
  --pz-bg: #101112;
  --pz-bg2: #141517;
  --pz-card: #17181a;
  --pz-line: rgba(255, 255, 255, 0.09);
  --pz-ink: #e7e8ea;
  --pz-muted: #a3a7ab;
  --pz-gold: #CBA35C;
  --pz-gold-hi: #dcb570;
  --pz-green: #a3c98a;
}

/* ==================== БАЗА ==================== */
body, .core, .card-section, .grey-body, .grey-fixed-top, .not-fixed-top {
  background-color: var(--pz-bg) !important;
  color: var(--pz-ink);
  font-family: 'Manrope', sans-serif;
}
.section, .standart-section, .half-section, .text-page-core, .flex-corners-section,
.card-middle-content-section, .afterplan-section, .halfer-section,
.card-standart-section, .ap-card-middle-content-section, .app-card-middle-middle-content,
.zastr-section, .white-section, .grey-section {
  background-color: transparent !important;
  color: var(--pz-ink);
}
h1, h2, h3, .mini-h1, .h2, .square-ab, .apartment-plan-rooms {
  font-family: 'Prata', serif !important;
  font-weight: 400 !important;
  color: #fff !important;
  letter-spacing: 0 !important;
}
p, li, .text-page-core, .zu-props, .hero-lead { color: var(--pz-muted); }
a { color: var(--pz-gold); }
a:hover { color: var(--pz-gold-hi); }

/* «Кикеры»-надзаголовки — моно золотом */
.h1-preheader, .parking-status-title, .apartment-plan-caption {
  font-family: 'JetBrains Mono', monospace !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.26em !important;
  text-transform: uppercase;
  color: var(--pz-gold) !important;
}

/* ==================== ШАПКА / МЕНЮ ==================== */
.top-ab, .top-ab *, .loc-top-link, .tel-top-link,
[class*="fixed-top"], [class*="fixed-top"] a {
  color: var(--pz-ink) !important;
  text-shadow: none !important;
}
body.fp-responsive .top-ab, body.fp-responsive .top-ab *,
body.fp-responsive .hero-lead, body.fp-responsive .hero-lead * {
  color: var(--pz-ink) !important;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.6) !important;
}
.black-top-ab, .black-top-ab *, .black-loc-top-link, .black-tel-top-link { color: var(--pz-ink) !important; }
.menu-div, .menu-burger, .menu-core-links { background: transparent !important; box-shadow: none !important; }
.menu-core-links { background: rgba(16, 17, 18, 0.85) !important; border-right: 1px solid var(--pz-line); }
.menu-burger { background: rgba(23, 24, 26, 0.9) !important; border: 1px solid var(--pz-line); border-radius: 0 !important; }
.menu-line-1, .menu-line-2 { background-color: var(--pz-gold) !important; }
.menu-core-link, .menu-core-links a {
  color: var(--pz-muted) !important;
  font-family: 'JetBrains Mono', monospace !important;
  font-size: 11px !important;
  letter-spacing: 0.2em !important;
}
.menu-core-link:hover { color: #fff !important; }
.menu-core-link.w--current, .choose-link.w--current { color: var(--pz-gold) !important; }

/* Модальное меню */
.remodal, .remodal-menu, .menu-remodal { background: var(--pz-bg2) !important; color: var(--pz-ink) !important; }
.remodal a { color: var(--pz-ink); }

/* Точки навигации fullpage */
#fp-nav ul li a span { background: rgba(255, 255, 255, 0.45) !important; }
#fp-nav ul li a.active span { background: var(--pz-gold) !important; }

/* ==================== HERO (главная, слайд 1) ==================== */
.hero-section { background-color: var(--pz-bg) !important; }
/* многослойное затемнение фото как в дизайне */
.hero-section .fp-tableCell { position: relative; }
.hero-section::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(100deg, rgba(13, 14, 16, 0.94) 0%, rgba(13, 14, 16, 0.72) 30%, rgba(13, 14, 16, 0.28) 60%, rgba(13, 14, 16, 0.12) 80%, rgba(13, 14, 16, 0.4) 100%),
    linear-gradient(to top, rgba(13, 14, 16, 0.9) 0%, rgba(13, 14, 16, 0) 32%);
  z-index: 1;
}
.hero-section .cz, .hero-section .fp-tableCell > * { position: relative; z-index: 2; }
/* Размещение hero как в макете: блок влево, текст слева */
.hero-section .cz, .features-hero-cz {
  text-align: left !important;
  align-items: flex-start !important;
  max-width: 1320px;
  margin: 0 auto;
  padding-left: 96px;
  padding-right: 32px;
}
.mini-h1 {
  font-size: clamp(44px, 5.4vw, 84px) !important;
  line-height: 1.06 !important;
  text-transform: none !important;
  text-align: left !important;
  margin-left: 0 !important;
}
.hero-lead { text-align: left !important; max-width: 560px; margin-left: 0 !important; }
.h1-preheader { text-align: left !important; margin-left: 0 !important; }
.hero-section .offer-ab-div, .hero-section .button-container, .hero-section .hero-actions {
  justify-content: flex-start !important;
  text-align: left !important;
  margin-left: 0 !important;
}
.hero-triggers-line { margin-left: 0 !important; }
@media (max-width: 900px) {
  .hero-section .cz, .features-hero-cz { padding-left: 20px; padding-right: 20px; }
}
/* золотое слово внутри h1 — красим вторую строку через ::first-line невозможно; подсветим весь h1 белым, а lead золотым кикером */
.hero-lead { font-family: 'Manrope', sans-serif !important; font-size: 17px !important; color: #c9ccd0 !important; }
.h1-preheader::before { content: '— '; color: var(--pz-gold); }

/* Кнопки */
.standart-button, .hero-button, .zb-submit, .pp-book, .zu-btn, #accept-cookies {
  background-color: var(--pz-gold) !important;
  color: #141414 !important;
  border-radius: 0 !important;
  font-family: 'Manrope', sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border: none !important;
  transition: background 0.2s !important;
}
.standart-button:hover, .hero-button:hover, .zb-submit:hover { background-color: var(--pz-gold-hi) !important; }
.hero-button-secondary, .bordered-mini-button, .yellow-bordered-mini-button {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.32) !important;
  border-radius: 0 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}
.hero-button-secondary:hover, .bordered-mini-button:hover { border-color: var(--pz-gold) !important; }

/* Плашки-триггеры hero и фикс-ссылки */
.hero-triggers-line { background: rgba(16, 17, 18, 0.72) !important; border-top: 1px solid var(--pz-line); border-radius: 0 !important; }
.fixed-bot-link {
  background: rgba(23, 24, 26, 0.85) !important;
  color: var(--pz-muted) !important;
  border: 1px solid var(--pz-line);
  border-radius: 0 !important;
  font-family: 'JetBrains Mono', monospace !important;
  font-size: 10.5px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase;
}
.fixed-bot-link:hover { color: #fff !important; border-color: var(--pz-gold); }

/* Бейдж «СЕКЦИЯ N» и кружки секций */
.section-num-button, .section-nav a, .parking-nav-num {
  background-color: var(--pz-gold) !important;
  color: #141414 !important;
  border-radius: 0 !important;
}

/* ==================== КАРТОЧКИ / ПАНЕЛИ ==================== */
.parking-status-panel, .zu-card, .apartment-feature-plan, .app-card, .white-div, .zastr-half-section-side {
  background: var(--pz-card) !important;
  color: var(--pz-ink) !important;
  border: 1px solid var(--pz-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.apartment-feature-plan { background: #fff !important; } /* план квартиры остаётся на белом */
.parking-status-grid b { color: #fff; font-family: 'Prata', serif; }
.parking-legend, .parking-extra-note, .parking-selected { color: var(--pz-muted) !important; }
.grey-half-side, .map-side { background: var(--pz-bg2) !important; }

/* Кладовые/квартиры карточки */
.zu-num { color: #fff !important; font-family: 'Prata', serif !important; }
.zu-status-available { color: var(--pz-green) !important; }
.zu-price { color: var(--pz-gold) !important; }

/* ==================== СТРАНИЦА КВАРТИРЫ (шаблон 3) ==================== */
.grey-body .app-name, .grey-body h1 { color: #fff !important; }
.square-ab { color: var(--pz-gold) !important; font-size: 44px !important; }
.app-card-content-line, ._14-pt-ab { color: var(--pz-muted) !important; }

/* ==================== ФОРМА ЗАЯВКИ ==================== */
.zb-modal { background: var(--pz-bg2) !important; color: var(--pz-ink) !important; border: 1px solid var(--pz-line); border-radius: 0 !important; }
.zb-modal h3, .zb-modal .zb-title { color: #fff !important; font-family: 'Prata', serif !important; }
.zb-modal input, .zb-modal textarea {
  background: var(--pz-card) !important;
  color: var(--pz-ink) !important;
  border: 1px solid var(--pz-line) !important;
  border-radius: 0 !important;
}
.zb-modal label, .zb-consent { color: var(--pz-muted) !important; }
.zb-close { color: var(--pz-muted) !important; }

/* Ховер-карточка паркинга — уже тёмная, приведём к золоту */
.parking-pop { border-radius: 0; border: 1px solid var(--pz-line); background: var(--pz-bg2); }
.parking-pop .pp-book { background: var(--pz-gold); }
.parking-pop .pp-book:hover { background: var(--pz-gold-hi); }
.parking-pop .pp-available { color: var(--pz-green); }
.parking-pop .pp-reserved { color: var(--pz-gold); }
.parking-pop .pp-family { color: var(--pz-gold-hi); }

/* Cookie-бар */
#cookie-notice { background: var(--pz-bg2) !important; color: var(--pz-muted) !important; border: 1px solid var(--pz-line); border-radius: 0 !important; }

/* ==================== ШАХМАТКА (shahmatka.html) ==================== */
body.shx { background: var(--pz-bg2) !important; color: var(--pz-ink); font-family: 'Manrope', sans-serif; }
body.shx header h1 { font-family: 'Prata', serif; font-weight: 400; color: #fff; }
body.shx header a.back { color: var(--pz-muted); }
body.shx header a.back:hover { color: #fff; }
body.shx .phone a { color: #fff; }
body.shx .phone span { color: var(--pz-muted); }
body.shx .free-strip {
  background: rgba(163, 201, 138, 0.08);
  border: 1px solid rgba(163, 201, 138, 0.3);
  border-radius: 0;
  color: var(--pz-ink);
}
body.shx .free-strip a.go { background: var(--pz-gold); color: #141414; border-radius: 0; text-transform: uppercase; font-size: 12px; letter-spacing: .1em; }
body.shx .free-strip a.go:hover { box-shadow: none; background: var(--pz-gold-hi); }
body.shx .legend, body.shx .hint, body.shx .scroll-hint, body.shx .foot { color: var(--pz-muted); }
body.shx .entrance { background: var(--pz-card); border: 1px solid var(--pz-line); border-radius: 0; box-shadow: none; }
body.shx .entrance h3 { color: var(--pz-muted); font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; }
body.shx .fl { color: #6c7176; }
body.shx .cell { border-radius: 0; background: rgba(255, 255, 255, 0.04); color: #5b5f63; border: 1px solid rgba(255, 255, 255, 0.08); }
body.shx .cell .meta { opacity: .75; }
body.shx .cell.reserved { background: rgba(203, 163, 92, 0.14); border-color: rgba(203, 163, 92, 0.4); color: #d8bc88; }
body.shx .cell.available { background: rgba(163, 201, 138, 0.16); border-color: rgba(163, 201, 138, 0.5); color: #c4dfb2; animation: none; box-shadow: 0 0 18px rgba(163, 201, 138, 0.25); }
body.shx .cell.office { background: rgba(120, 160, 210, 0.12); border-color: rgba(120, 160, 210, 0.35); color: #9cc0e8; }
body.shx .row.mansard .cell:not(.gap) { border-style: dashed; }
body.shx .cell.gap { background: transparent; border: none; }
body.shx .parking-card { background: var(--pz-card); border: 1px solid var(--pz-line); border-radius: 0; box-shadow: none; }
body.shx .parking-card .pico { background: var(--pz-gold); border-radius: 0; }
body.shx .parking-card .pk-free { color: var(--pz-green); }
body.shx #tip { background: var(--pz-bg2); border: 1px solid var(--pz-line); border-radius: 0; }
body.shx .ent-tabs button { background: var(--pz-card); border-color: var(--pz-line); color: var(--pz-muted); border-radius: 0; }
body.shx .ent-tabs button.active { background: var(--pz-gold); border-color: var(--pz-gold); color: #141414; }
body.shx.m-mode .ent-tabs { background: var(--pz-bg2); }
body.shx .foot a { color: var(--pz-gold); }

/* Страница квартиры: чёрные ссылки на тёмном фоне */
body a.back-link, body a._14-pt-ab-link { color: var(--pz-ink) !important; }
body a.back-link:hover, body a._14-pt-ab-link:hover { color: var(--pz-gold) !important; }

/* Мёртвый виджет Profitbase (sw-wrapper в начале body, 720px пустоты
   над контентом страниц; продажи ведутся своей шахматкой/бронированием) */
sw-wrapper, sw-sprite { display: none !important; }

/* ==================== МЕЛОЧИ ==================== */
::selection { background: var(--pz-gold); color: #141414; }
.w-slider-dot { background: rgba(255,255,255,.3) !important; }
.w-slider-dot.w-active { background: var(--pz-gold) !important; }

/* ==================== КОНТРАСТ СЛАЙДОВ 3-4 ГЛАВНОЙ (21.07.2026) ====================
   custom.css?v=20260426g подключён ПОСЛЕ этой темы и красит текст тёмным с !important.
   Перебиваем большей специфичностью (body + класс). Числа в жёлтых кругах
   (.features-text-slider-number) и текст кнопок на золоте не трогаем. */
body .features-text-slider-cz h3,
body .zastr-half-section-side h2,
body .section.afterplan-section .zastr-half-section-side h2 { color: #fff !important; }
body .features-text-slider-cz .standart-ab,
body .features-text-slider-cz .standart-ab div,
body .zastr-half-section-side .standart-ab,
body .zastr-half-section-side .standart-ab div,
body .section.afterplan-section .standart-ab,
body .section.afterplan-section .standart-ab div { color: var(--pz-ink) !important; }

/* ==================== ВИЗУАЛЬНЫЙ АУДИТ 21.07.2026 ==================== */
/* Бургер-меню: был белый оверлей со старыми цветами */
.pop-up-core.menu-pop-up { background: rgba(16, 17, 18, 0.97) !important; }
.menu-pop-up a { color: var(--pz-ink) !important; }
.menu-pop-up a:hover { color: var(--pz-gold) !important; }
.menu-link.w--current, .menu-drop-link.w--current, .choose-link.w--current,
.menu-pop-up a.w--current { color: var(--pz-gold) !important; }

/* /docs и низ внутренних страниц: светло-серые секции -> тёмные */
.temptale-section, .not-fixed-bot.greyfixed-bot, .not-fixed-top.grey-fixed-top {
  background-color: transparent !important;
}
.form-field, .search-form-field {
  background-color: var(--pz-card) !important;
  color: var(--pz-ink) !important;
  border: 1px solid var(--pz-line) !important;
  border-radius: 0 !important;
}

/* Проданные лоты: приглушённая плашка вместо золотой кнопки */
.zu-btn[disabled] {
  background: transparent !important;
  color: var(--pz-muted) !important;
  border: 1px solid var(--pz-line) !important;
  box-shadow: none !important;
  cursor: default !important;
}

/* Каталоги квартир/кладовых: колонка шире, сетка адаптивная */
.text-page-core:has(.zu-grid) { width: 100% !important; max-width: 1100px; }
.text-page-core:has(.zu-grid) > p { max-width: 720px; }
.zu-grid { grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important; }

/* Карточка «Офис продаж» поверх карты: была белой с жёлтой кнопкой */
.sales-office-div { background: transparent !important; }
.sales-office-border-div {
  background: var(--pz-card) !important;
  border: 1px solid rgba(203, 163, 92, 0.35) !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45) !important;
}
body .sales-office-div .sales-office-border-div h2 { color: #fff !important; }
body .sales-office-div .call-is-free-ab { color: var(--pz-muted) !important; }
body .sales-office-div .contacts-ab { color: var(--pz-ink) !important; }
body .section .sales-office-div a.contacts-link,
body .sales-office-div a.contacts-link { color: var(--pz-gold) !important; border-bottom-color: rgba(203, 163, 92, 0.6) !important; }
body .sales-office-div a[href^="tel"], body .sales-office-div .ya-phone,
body .sales-office-div .ya-phone a { color: #fff !important; }
body .sales-office-div .phone-ab-icon { display: none !important; }
body .section .sales-office-div .standart-button {
  background-color: var(--pz-gold) !important;
  color: #141414 !important;
  border-radius: 0 !important;
}
body .section .sales-office-div .standart-button:hover { background-color: var(--pz-gold-hi) !important; }

/* Cookie-бар: у custom.css селекторы с двумя id — перебиваем ими же */
#cookie-notice #accept-cookies {
  background-color: var(--pz-gold) !important;
  color: #141414 !important;
  border-radius: 0 !important;
}
#cookie-notice #accept-cookies:hover { background-color: var(--pz-gold-hi) !important; }
#cookie-notice a { color: var(--pz-gold) !important; }

/* Последние жёлтые акценты -> золото */
body .trigger-icon, body .size-icon { background-color: var(--pz-gold) !important; }
body .w-slider-dot.w-active { background: var(--pz-gold) !important; }

/* Подложка Яндекс-карты: тёмная (инверсия ч/б), пины не трогаем */
[class*="ground-pane"] { filter: grayscale(1) invert(0.92) contrast(0.85) brightness(0.95) !important; }

/* ==================== ФИКСЫ ГЛАВНОЙ 22.07.2026 (вечер) ==================== */
/* Видеотрансляция: была absolute и налезала на кнопки — ставим в поток ПОД кнопками */
body .hero-section .camera-link {
  position: static !important;
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  margin: 22px 0 0 !important;
  inset: auto !important;
}
body .hero-section .camera-link .loc-link-ab { color: var(--pz-muted) !important; }
body .hero-section .camera-link:hover .loc-link-ab { color: var(--pz-gold) !important; }

/* Нижние левые ссылки (Документы/Ход строительства/Политика): только на первом слайде */
.fixed-bot-link { transition: opacity .35s ease; }
body[class*="fp-viewing"]:not(.fp-viewing-home) .fixed-bot-link {
  opacity: 0 !important;
  pointer-events: none !important;
}
