/* Foto-Mig лендинг — небольшие правки поверх темы Segment */

/* Логотип: показываем всегда (в теме он завязан на JS липкого навбара) */
.site-logo {
  display: inline-block;
  width: auto;
  max-height: 80px;   /* как в шапке темы */
}
footer .site-logo {
  max-height: 100px;  /* как в футере темы */
}
.site-footer {
  padding-bottom: 1rem !important;
}
.footer-payment-logos {
  display: block;
  width: min(360px, 82vw);
  height: auto;
  margin: 12px auto 0;
}
.footer-legal-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
  margin-top: .85rem;
  margin-bottom: -.15rem;
  font-size: 1rem;
  line-height: 1.4;
}
.footer-legal-link {
  display: inline-block;
  font-weight: 700;
  text-decoration: none;
}

/* Меньше воздуха сверху: меню ↔ адреса вдвое, адреса ↔ hero втрое */
.contacts-bar {
  padding-top: 5px;      /* было ~24 */
  padding-bottom: 10px;   /* было ~80 */
}
.hero-lead {
  padding-top: 44px !important;   /* было ~128 */
}
.hero-sub {
  margin-bottom: 48px;   /* было 96 (mb-24) — вдвое меньше до кнопки */
}

/* Мобилка: картинка шагов — в поток и меньше, иначе наезжает на заголовок */
@media (max-width: 991.98px) {
  .steps-img {
    position: static !important;
    width: auto !important;
    max-width: 78%;
    height: auto;
    margin: 0 auto 1.5rem !important;
    display: block;
  }
}

/* ===== Страница цен ===== */
.price-page { padding: 1.75rem 0 3.5rem; }
.price-head { margin-bottom: .9rem; }
.fmt-size { font-size: .72rem; color: #9a9aa2; white-space: nowrap; }
.price-nav {
  position: sticky;
  top: 0;
  z-index: 20;
  background: var(--bs-body-bg, #fff);
  padding: 12px 0;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.price-chip {
  display: inline-block;
  padding: .4rem 1rem;
  border: 1px solid var(--bs-primary, #1f40ff);
  border-radius: 999px;
  color: var(--bs-primary, #1f40ff);
  font-weight: 700;
  font-size: .9rem;
  line-height: 1.2;
  text-decoration: none;
  transition: background .15s, color .15s;
}
.price-chip:hover, .price-chip:focus {
  background: var(--bs-primary, #1f40ff);
  color: #fff;
}
.price-cat {
  scroll-margin-top: 90px;   /* якорь не прячется под липкой навигацией */
}
.price-card {
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  padding: 1.5rem;
  background: #fff;
}
.price-table {
  width: 100%;
  border-collapse: collapse;
}
.price-table th {
  text-align: left;
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .03em;
  color: #8a8a93;
  font-weight: 700;
  padding: 0 0 .6rem;
  border-bottom: 2px solid rgba(0,0,0,.08);
}
.price-table td {
  padding: .6rem 0;
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.price-table th:last-child,
.price-table td:last-child {
  text-align: right;
  white-space: nowrap;
  font-weight: 700;
}
.price-table tr:last-child td { border-bottom: 0; }

/* ===== Текстовые юридические страницы ===== */
.legal-shell {
  max-width: 920px;
  margin: 0 auto;
}
.legal-head h1 {
  font-size: 1.25rem;
  line-height: 1.25;
}
.legal-content {
  font-size: 1rem;
  line-height: 1.65;
}
.legal-content h2 {
  scroll-margin-top: 90px;
  margin: 2rem 0 1rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(0,0,0,.08);
  font-size: .9rem;
  line-height: 1.25;
}
.legal-content h2:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}
.legal-content p,
.legal-content li {
  color: #34343d;
}
.legal-content p {
  margin-bottom: 1rem;
}
.legal-content ul,
.legal-content ol {
  padding-left: 1.35rem;
  margin-bottom: 1rem;
}
.legal-content li {
  margin-bottom: .45rem;
}
.legal-content strong {
  color: #20202a;
  font-weight: 700;
}
.legal-content blockquote {
  margin: 1.25rem 0;
  padding: 1rem 1.25rem;
  border-left: 4px solid var(--bs-primary, #1f40ff);
  border-radius: 0 12px 12px 0;
  background: rgba(31,64,255,.06);
}
.legal-content blockquote p:last-child {
  margin-bottom: 0;
}
.legal-content img {
  display: block;
  width: min(520px, 100%);
  height: auto;
  margin: 1.5rem auto;
}

/* Текущий пункт меню (шапка/футер): «мы тут» */
.active-page {
  color: #fff !important;
  font-weight: 700;
  border-bottom: 2px solid var(--bs-primary, #1f40ff);
}
span.active-page { cursor: default; }

/* Hero: текст «Сувениры с фото» поверх картинки (картинка не сползает вниз) */
.hero-right { display: grid; }
.hero-right > .hero-souvenir { grid-area: 1 / 1; z-index: 2; align-self: start; }
.hero-right > .hero-img { grid-area: 1 / 1; z-index: 1; align-self: start; width: 100%; }
.souv-item { font-size: 3.75rem; font-weight: 700; line-height: 1.1; }   /* вдвое крупнее прежнего (~30px -> ~60px) */

/* ===== Мобилка (бургер-режим, <992px) ===== */
@media (max-width: 991.98px) {
  /* верх экрана → лого/бургер (лендинг и price) */
  .main-nav .navbar { padding-top: 0 !important; }
  .main-nav .navbar-brand { padding-top: 5px !important; }
  /* лендинг: меньше воздуха над и вокруг заголовка */
  .hero-lead { padding-top: 15px !important; }
  [aria-label="hero"] h1 { margin-top: 15px !important; margin-bottom: 20px !important; }
  .hero-sub { margin-bottom: 24px !important; }
  /* кружки/майки/пазлы — обводка для читаемости поверх картинки */
  .souv-item { -webkit-text-stroke: 1px #d8d8d8; }
  .legal-content {
    padding: 1.25rem;
  }
}
