/* === FIX: одиночный логотип — скрыть второй img === */
#sp-logo a img:nth-child(2),
.sp-logo a img:nth-child(2),
.navbar-brand img:nth-child(2) {
  display: none !important;
}

/* === FIX: название рядом с логотипом === */
#sp-logo a,
.sp-logo a,
.navbar-brand {
  gap: 10px !important;
}

/* === FIX: кнопки меню — меньше размер === */
#sp-header .sp-megamenu-parent > li:last-child > a,
#sp-header .sp-megamenu-parent > li:nth-last-child(2) > a {
  background: #1d1d1f !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 7px 14px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  min-height: unset !important;
  height: auto !important;
  opacity: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
}

/* === FIX: hero картинка — меньше высота === */
.gv-hero__media img {
  min-height: 320px !important;
  max-height: 480px !important;
  object-fit: cover !important;
}

/* === INNER PAGES: стиль для всех внутренних страниц === */
.item-page,
.com-content-article .article {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
}

/* Заголовок внутренней страницы */
.item-page .page-header h2,
.item-page h1,
.page-header h1,
h1.page-title {
  font-size: 48px !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em !important;
  color: #1d1d1f !important;
  margin-bottom: 24px !important;
  padding-bottom: 20px !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
}

/* Контент внутренней страницы — обёртка */
#sp-component {
  background: #ffffff !important;
  border-radius: 20px !important;
  padding: 40px 48px !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,.04) !important;
}

/* Параграфы */
.item-page p,
.article-body p {
  font-size: 17px !important;
  line-height: 1.7 !important;
  color: #6e6e73 !important;
  margin-bottom: 1rem !important;
}

/* Списки */
.item-page ul li,
.item-page ol li,
.article-body ul li {
  font-size: 17px !important;
  line-height: 1.7 !important;
  color: #6e6e73 !important;
  padding: 8px 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.05) !important;
}

.item-page ul,
.article-body ul {
  padding-left: 0 !important;
  list-style: none !important;
}

.item-page ul li::before,
.article-body ul li::before {
  content: '—  ' !important;
  color: #0071e3 !important;
  font-weight: 600 !important;
}

/* Изображения */
.item-page img,
.article-body img {
  border-radius: 16px !important;
  max-width: 100% !important;
  box-shadow: 0 8px 30px rgba(0,0,0,.08) !important;
  margin: 16px 0 !important;
}

/* H2 в статьях */
.item-page h2,
.article-body h2 {
  font-size: 32px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: #1d1d1f !important;
  margin-top: 32px !important;
  margin-bottom: 12px !important;
}

/* H3 */
.item-page h3,
.article-body h3 {
  font-size: 24px !important;
  font-weight: 600 !important;
  color: #1d1d1f !important;
  margin-top: 24px !important;
  margin-bottom: 8px !important;
}

/* Ссылки в контенте */
.item-page a:not(.gv-btn),
.article-body a {
  color: #0071e3 !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(0,113,227,.3) !important;
  transition: border-color .2s !important;
}

.item-page a:not(.gv-btn):hover,
.article-body a:hover {
  border-bottom-color: #0071e3 !important;
}

/* Таблицы */
.item-page table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 20px 0 !important;
}

.item-page table th {
  background: #f5f5f7 !important;
  padding: 12px 16px !important;
  text-align: left !important;
  font-weight: 600 !important;
  color: #1d1d1f !important;
  border-bottom: 2px solid rgba(0,0,0,.1) !important;
}

.item-page table td {
  padding: 12px 16px !important;
  border-bottom: 1px solid rgba(0,0,0,.06) !important;
  color: #6e6e73 !important;
  font-size: 15px !important;
}

.item-page table tr:hover td {
  background: #f9f9fb !important;
}

/* Форма обратной связи */
.contact-form .form-control,
.contact-form input,
.contact-form textarea {
  border-radius: 12px !important;
  border: 1px solid rgba(0,0,0,.12) !important;
  padding: 12px 16px !important;
  font-size: 16px !important;
  background: #fff !important;
  transition: border-color .2s !important;
}

.contact-form .form-control:focus,
.contact-form input:focus,
.contact-form textarea:focus {
  border-color: #0071e3 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(0,113,227,.15) !important;
}

.contact-form button,
.contact-form input[type=submit] {
  background: #0071e3 !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 12px 28px !important;
  border: none !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  cursor: pointer !important;
  transition: background .2s !important;
}

.contact-form button:hover,
.contact-form input[type=submit]:hover {
  background: #005fc1 !important;
}

/* === FIX: кнопки меню — сильный оверрайд высоты === */
#sp-header .sp-megamenu-parent > li:last-child,
#sp-header .sp-megamenu-parent > li:nth-last-child(2) {
  display: flex !important;
  align-items: center !important;
}

#sp-header .sp-megamenu-parent > li:last-child > a,
#sp-header .sp-megamenu-parent > li:nth-last-child(2) > a {
  min-height: 34px !important;
  height: 34px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
} 

/* === INNER PAGE WRAPPER === */
#sp-component {
  background: #ffffff !important;
  border-radius: 20px !important;
  padding: 40px 48px !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,.04) !important;
  margin-top: 8px !important;
}

/* Заголовки страниц */
#sp-component h1,
#sp-component h2 {
  color: #1d1d1f !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em !important;
}

#sp-component h1 {
  font-size: 40px !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
  padding-bottom: 20px !important;
  margin-bottom: 24px !important;
}

#sp-component h2 {
  font-size: 28px !important;
  margin-top: 28px !important;
  margin-bottom: 12px !important;
}

#sp-component p {
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #6e6e73 !important;
}

#sp-component ul {
  list-style: none !important;
  padding-left: 0 !important;
}

#sp-component ul li {
  padding: 8px 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.05) !important;
  color: #6e6e73 !important;
  font-size: 16px !important;
}

#sp-component ul li::before {
  content: '—  ' !important;
  color: #0071e3 !important;
  font-weight: 600 !important;
}

#sp-component strong, #sp-component b {
  color: #1d1d1f !important;
  font-weight: 600 !important;
}

#sp-component a {
  color: #0071e3 !important;
}

#sp-component img {
  border-radius: 14px !important;
  max-width: 100% !important;
  box-shadow: 0 4px 20px rgba(0,0,0,.08) !important;
}

/* Футер */
#sp-bottom, #sp-footer {
  background: #f5f5f7 !important;
  border-top: 1px solid rgba(0,0,0,.06) !important;
}

#sp-bottom *, #sp-footer * {
  color: #6e6e73 !important;
}

#sp-bottom h3, #sp-bottom h4,
#sp-footer h3, #sp-footer h4 {
  color: #1d1d1f !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}