/* ================================================================
   price-page.css — Страница «Цены» | Северный город Premium
   Scope: .pricePage
   ================================================================ */

.pricePage {
  --g:   #c8a84b;
  --gs:  rgba(200,168,75,.11);
  --gb:  rgba(200,168,75,.28);
  --dk:  #07192b;
  --ink: #0f172a;
  --mt:  #64748b;
  --ln:  rgba(2,6,23,.10);
  --sh:  0 4px 20px rgba(2,6,23,.06);
  --r:   16px;

  background: #fff;
  padding: 16px 0 56px;
}

.pricePage .container { max-width: 1140px; margin: 0 auto; padding: 0 15px; box-sizing: border-box; }
.pricePage br { display: none; }

/* ── H1 ───────────────────────────────────────────────────────── */
.pricePage .common-header {
  text-align: left !important;
  margin: 0 0 20px !important;
  padding: 0 0 16px !important;
  position: relative;
  font-weight: 900;
  font-size: clamp(26px, 3vw, 46px) !important;
  line-height: 1.05;
  letter-spacing: -.02em;
  text-transform: uppercase;
  color: var(--dk);
}
.pricePage .common-header::before { content: none !important; }
.pricePage .common-header::after {
  content: "";
  position: absolute; left: 0; bottom: 0;
  width: clamp(160px, 22vw, 340px); height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--g), #e8c96a);
  top: auto; transform: none;
}

/* ── Вводный блок ─────────────────────────────────────────────── */
.pricePage .priceIntro {
  margin: 0 0 20px;
  padding: 18px 22px;
  background: var(--dk);
  border: 1px solid var(--gb);
  border-radius: var(--r);
  box-shadow: 0 8px 28px rgba(7,25,43,.18);
}
.pricePage .priceIntro p {
  margin: 0 0 8px;
  color: rgba(255,255,255,.75);
  font-size: 15px; line-height: 1.6;
}
.pricePage .priceIntro p:last-child { margin-bottom: 0; }
.pricePage .priceIntro a {
  color: var(--g);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: rgba(200,168,75,.45);
  text-underline-offset: 3px;
  border: none;
}
.pricePage .priceIntro a:hover { text-decoration-color: var(--g); }
.pricePage .priceIntro strong { color: #fff; }

/* ── Текст за пределами intro ─────────────────────────────────── */
.pricePage > .container > p {
  margin: 0 0 12px;
  color: var(--mt); font-size: 15px; line-height: 1.6;
}
.pricePage > .container > p a {
  color: var(--g); font-weight: 600;
  text-decoration: underline;
  text-decoration-color: rgba(200,168,75,.4);
}

/* ── Обёртка таблицы — скролл на мобиле ──────────────────────── */
.pricePage .tablepress-wrapper,
.pricePage .tablepress-table-wrapper,
.pricePage .tablepress {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 6px;
}

/* ── Таблица ──────────────────────────────────────────────────── */
.pricePage table.tablepress {
  width: 100% !important;
  border-collapse: collapse;
  background: #fff;
  border: 1px solid var(--ln);
  border-radius: var(--r);
  overflow: hidden;
  box-shadow: var(--sh);
  table-layout: fixed;
  font-size: 13.5px;
}

/* Ширины колонок */
.pricePage table.tablepress .column-1 { width: 46%; }
.pricePage table.tablepress .column-2 { width: 15%; }
.pricePage table.tablepress .column-3 { width: 9%; }
.pricePage table.tablepress .column-4 { width: 10%; }
.pricePage table.tablepress .column-5 { width: 20%; }

/* Ячейки */
.pricePage table.tablepress th,
.pricePage table.tablepress td {
  padding: 11px 13px;
  border-bottom: 1px solid var(--ln);
  border-right: 1px solid var(--ln);
  vertical-align: top;
  color: var(--mt);
  line-height: 1.4;
  white-space: normal !important;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.pricePage table.tablepress th:last-child,
.pricePage table.tablepress td:last-child { border-right: none; }
.pricePage table.tablepress tr:last-child td { border-bottom: none; }

/* Шапка */
.pricePage table.tablepress thead th {
  background: var(--dk);
  color: var(--g) !important;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .05em;
  text-transform: uppercase;
  text-align: left;
  border-bottom: 2px solid rgba(200,168,75,.35) !important;
  border-right-color: rgba(255,255,255,.08) !important;
}

/* Полосатость */
.pricePage table.tablepress tbody tr:nth-child(even) td { background: #fafafa; }
.pricePage table.tablepress tbody tr:hover td { background: var(--gs) !important; }

/* Выравнивание числовых колонок */
.pricePage table.tablepress .column-2,
.pricePage table.tablepress .column-3,
.pricePage table.tablepress .column-4 { text-align: center; }

/* Цена — правый, тёмный, жирный */
.pricePage table.tablepress .column-5 {
  text-align: right;
  font-weight: 700;
  color: var(--dk);
}

/* Строки-разделы (colspan=5) — тёмно-синие с золотым */
.pricePage table.tablepress td[colspan="5"],
.pricePage table.tablepress td[colspan="4"] {
 /* background: var(--dk) !important; */
  color: var(--g) !important;
  font-weight: 800 !important;
  font-size: 12px !important;
  letter-spacing: .04em;
  text-transform: uppercase;
  padding: 10px 13px !important;
  border-right: none !important;
}
/* Строки с примечаниями (курсив без strong) оставляем светлее */
.pricePage table.tablepress td[colspan="5"]:not(:has(strong)):not(:has(em > strong)) {
  background: #f1f5f9 !important;
  color: var(--mt) !important;
  font-weight: 400 !important;
  font-size: 12px !important;
  text-transform: none;
  font-style: italic;
}

/* em внутри — убираем наклон у чисел */
.pricePage table.tablepress td em,
.pricePage table.tablepress th em { font-style: normal; }

/* strong внутри ячейки — чуть темнее */
.pricePage table.tablepress td strong { color: var(--ink); }

/* ── Адаптив ──────────────────────────────────────────────────── */
@media (max-width: 900px) {
  .pricePage table.tablepress { min-width: 960px; }
  .pricePage table.tablepress th,
  .pricePage table.tablepress td { padding: 10px 11px; font-size: 13px; }
}
@media (max-width: 640px) {
  .pricePage table.tablepress { min-width: 1000px; }
  .pricePage .priceIntro { padding: 14px 16px; }
}