/* ===== ЗАГОЛОВКИ: единый нецветной стиль ===== */

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.sppb-addon-title,
.sub-heading {
  color: #212529 !important;
  font-style: normal !important;
}

/* Белый текст на тёмном фоне */
.t4-palette-gray h1,
.t4-palette-gray h2,
.t4-palette-gray h3,
.t4-palette-gray h4,
#t4-footnav h1,
#t4-footnav h2,
#t4-footnav h3,
#t4-footnav h4,
.t4-footnav h1,
.t4-footnav h2,
.t4-footnav h3,
.t4-footnav h4 {
  color: #ffffff !important;
}

/* Hero heading */
.hero-item h2,
.acm-hero .hero-item h2 {
  color: #1a1a2e !important;
  font-weight: 700 !important;
  font-style: normal !important;
  font-size: 36px !important;
  line-height: 1.25 !important;
}

/* ===== ГЛОБАЛЬНЫЕ ОТСТУПЫ И ТИПОГРАФИКА ===== */

/* Единый отступ между всеми секциями */
div[id*="t4-section-"],
div[id^="t4-section-"],
div[id*="t4-spotlight-"] {
  padding-top: 56px !important;
  padding-bottom: 56px !important;
}

/* Исключение: hero не трогаем (у него свои отступы) */
#t4-hero {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Исключение: секция с футером */
#t4-footnav,
.t4-footnav {
  padding-top: 56px !important;
  padding-bottom: 24px !important;
}

/* Адаптив: на планшетах уменьшить отступы */
@media (max-width: 1199px) {
  div[id*="t4-section-"],
  div[id^="t4-section-"] {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
}

@media (max-width: 767px) {
  div[id*="t4-section-"],
  div[id^="t4-section-"] {
    padding-top: 28px !important;
    padding-bottom: 28px !important;
  }
}

/* ===== ЗАГОЛОВКИ СЕКЦИЙ: единый размер везде ===== */

/* Главные заголовки секций (h2) */
.sub-heading.h2,
.sppb-addon-title.h2,
.sppb-addon-title[class*="h2"] {
  font-size: 30px !important;
  font-weight: 700 !important;
  color: #1a1a2e !important;
  line-height: 1.25 !important;
  margin-bottom: 16px !important;
  font-style: normal !important;
}


/* Подзаголовки (h3) */
h3, .h3 {
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #1a1a2e !important;
}

/* Маленький верхний бейдж ("О нас", "Наши продукты" и т.д.) */
.section-title span,
h3.section-title span,
h5.section-title span {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  padding: 4px 12px !important;
  border-radius: 3px !important;
  display: inline-block !important;
  margin-bottom: 10px !important;
  background: #b4161a !important;
  color: #fff !important;
}


/* ===== ПАРАГРАФЫ: единый базовый размер ===== */
p {
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #555 !important;
}

/* Убрать italic у всех заголовков и hero */
h1, h2, h3, h4, h5, h6 {
  font-style: normal !important;
}

.hero-item h2,
.acm-hero h2 {
  font-style: normal !important;
}

/* =========================================================
   TASK 2 — HEADER: RESPONSIVENESS & STYLE
   ========================================================= */

/* 2.1 Nav link spacing (EN/RU baseline) */
.t4-megamenu .navbar-nav > li > a,
.t4-megamenu .navbar-nav > li > .nav-link {
  padding: 8px 16px !important;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.3px;
}

/* 2.1-KZ Nav: compact spacing for long Kazakh words — overrides baseline above.
   Safe for RU/EN too (shorter words look fine with slightly smaller padding). */
.t4-megamenu .navbar-nav > li > a,
.t4-megamenu .navbar-nav > li > .nav-link {
  padding: 6px 10px !important;
  font-size: 13px !important;
  white-space: nowrap;
}

.t4-megamenu .navbar-nav {
  flex-wrap: nowrap !important;
  flex-shrink: 1;
}

.t4-action {
  margin-left: 8px !important;
  flex-shrink: 0;
}

@media (min-width: 992px) and (max-width: 1400px) {
  .t4-megamenu .navbar-nav > li > a,
  .t4-megamenu .navbar-nav > li > .nav-link {
    padding: 6px 7px !important;
    font-size: 12px !important;
  }
}

/* 2.2 Burger / offcanvas on mobile */
@media (max-width: 991.98px) {
  .t4-megamenu.collapse:not(.show) {
    display: none !important;
  }
  .t4-offcanvas-toggle {
    display: block !important;
  }
}

/* 2.3 Auth button row on mobile */
@media (max-width: 991.98px) {
  .t4-action {
    margin-left: 0 !important;
    display: flex !important;
    align-items: center;
  }
  .t4-action .btn.btn-primary {
    padding: 6px 12px !important;
    font-size: 12px !important;
    margin-top: 0 !important;
  }
  #t4-header .row {
    flex-wrap: nowrap;
    align-items: center;
  }
  /* Auth column: show inline on small–medium screens */
  .t4-col.debug {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
  }
  .t4-col.debug #auth {
    display: flex !important;
    margin: 0;
    padding: 0;
  }
  .t4-col.debug #auth .nav-item {
    list-style: none;
  }
  .t4-col.debug #auth .btn.btn-primary {
    padding: 6px 10px !important;
    font-size: 12px !important;
    white-space: nowrap;
  }
}

@media (max-width: 576px) {
  /* Hide inline auth on very small screens — it lives in the offcanvas */
  .t4-col.debug {
    display: none !important;
  }
}

/* =========================================================
   END TASK 2
   ========================================================= */

.plain-arrow {
  display: inline-block;
  margin-left: 6px;
  font-weight: 700;
  line-height: 1;
}

/* Reviews carousel */
.reviews-carousel {
  position: relative;
  overflow: visible;
}

.reviews-viewport {
  overflow: hidden;
}

.reviews-track {
  display: flex;
  transition: transform 0.35s ease;
  touch-action: pan-y;
}

.reviews-carousel .sppb-carousel-extended-item {
  padding: 8px 12px;
  box-sizing: border-box;
}

.reviews-card {
  background: #f3f3f3;
  border-radius: 8px;
  padding: 18px 18px 14px;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.reviews-stars {
  color: #f5b301;
  letter-spacing: 2px;
  font-size: 18px;
  line-height: 1;
  margin-bottom: 12px;
}

.reviews-carousel .sppb-testimonial-carousel-message {
  text-align: center;
}

.reviews-carousel .sppb-testimonial-carousel-message p {
  background: transparent !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 0 14px;
}

.reviews-carousel .sppb-testimonial-carousel-name {
  font-weight: 700;
}

.reviews-carousel .sppb-testimonial-carousel-content-wrap {
  margin-top: auto;
}

.reviews-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 4px;
  background: #b4161a;
  color: #fff;
  font-size: 26px;
  line-height: 38px;
  text-align: center;
  cursor: pointer;
  z-index: 5;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
  user-select: none;
}

.reviews-arrow:hover {
  background: #9f1317;
}

.reviews-arrow-left {
  left: -34px;
}

.reviews-arrow-right {
  right: -34px;
}

@media (max-width: 768px) {
  .reviews-carousel .sppb-carousel-extended-item {
    padding: 8px 24px;
  }
  .reviews-card {
    min-height: 280px;
  }
}

/* Contact form */
#cf_1 .cf-form-wrap {
  background: transparent !important;
}

#cf_1 .cf-input {
  background: #efefef !important;
  border: 1px solid #e2e2e2 !important;
  border-radius: 6px !important;
  padding: 12px 14px !important;
  color: #333 !important;
}

#cf_1 .cf-control-group {
  margin-bottom: 10px;
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}

#cf_1 .cf-control-input,
#cf_1 .cf-text-left {
  width: 100% !important;
  max-width: 100% !important;
}

#cf_1 input.cf-input,
#cf_1 textarea.cf-input {
  width: 100% !important;
  box-sizing: border-box !important;
}

#cf_1 textarea.cf-input {
  min-height: 112px;
  resize: vertical;
}

#cf_1 .cf-btn {
  display: block !important;
  width: 100%;
  min-width: 100%;
  font-weight: 600;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

#cf_1 .cf-one-third,
#cf_1 .cf-two-thirds {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}

#cf_1 .cf-field-hp,
#cf-field-69f31c645a031 {
  display: none !important;
}

/* Partners carousel */
.partners-carousel {
  position: relative;
}

.partners-viewport {
  overflow: hidden;
}

.partners-track {
  display: flex;
  transition: transform 0.55s cubic-bezier(0.22, 0.61, 0.36, 1);
  align-items: stretch;
  will-change: transform;
}

.partners-carousel .teams-item {
  padding: 0 10px;
  box-sizing: border-box;
  display: block !important;
}

.partners-carousel .teams-item-inner {
  text-align: center;
  height: 100%;
}

.partners-carousel .teams-img img {
  object-fit: contain;
  max-height: 140px;
}

.partners-dots {
  margin-top: 14px;
  display: flex;
  justify-content: center;
  gap: 8px;
}

.partners-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  border: 0;
  background: #cfcfcf;
  cursor: pointer;
  padding: 0;
}

.partners-dot.is-active {
  background: #b4161a;
}

/* ===== ФУТЕР: минималистичный дизайн ===== */

#t4-footnav,
.t4-footnav {
  background: #1a1a2e !important;
  color: #9ca3af !important;
  padding: 56px 0 24px !important;
  margin-top: 0 !important;
}

#t4-footnav .bg-overlay-image,
#t4-footnav .bg-overlay {
  display: none !important;
}

#t4-footnav .t4-section-inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
}

#t4-footnav .logo-footer img,
#t4-footnav .navbar-brand img {
  max-height: 44px !important;
  width: auto !important;
  filter: brightness(0) invert(1) !important;
  opacity: 0.9 !important;
  margin-bottom: 16px !important;
}

#t4-footnav p,
#t4-footnav span,
#t4-footnav li {
  color: #9ca3af !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

#t4-footnav a,
#t4-footnav .nav-link,
#t4-footnav .footer-links {
  color: #9ca3af !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
  font-size: 14px !important;
}

#t4-footnav a:hover,
#t4-footnav .nav-link:hover {
  color: #ffffff !important;
}

#t4-footnav a[href^="tel"],
#t4-footnav a[href^="mailto"] {
  color: #e5e7eb !important;
  font-weight: 500 !important;
}

#t4-footnav a[href^="tel"]:hover,
#t4-footnav a[href^="mailto"]:hover {
  color: #ffffff !important;
}

#t4-footnav .module-title,
#t4-footnav h3,
#t4-footnav h4 {
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  margin-bottom: 16px !important;
}

#t4-footnav::after {
  display: none !important;
}

#t4-footnav .footer-bottom,
#t4-footnav .t4-footer-copyright {
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  margin-top: 32px !important;
  padding-top: 20px !important;
  color: #6b7280 !important;
  font-size: 13px !important;
}

#t4-footnav .navbar-nav {
  flex-direction: column !important;
  gap: 4px !important;
}

/* Column width overrides kept for layout */
#t4-footnav .footnav-4 {
  flex: 0 0 42% !important;
  max-width: 42% !important;
}

#t4-footnav .footnav-2 {
  flex: 0 0 20% !important;
  max-width: 20% !important;
}

#t4-footnav .footnav-4 p {
  white-space: nowrap;
}

@media (max-width: 1200px) {
  #t4-footnav .footnav-4,
  #t4-footnav .footnav-2 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  #t4-footnav .footnav-4 p {
    white-space: normal;
  }
}

/* =========================================================
   TASK 3 — ПАРТНЁРЫ: горизонтальная карусель со стрелками
   ========================================================= */

#partners .sppb-carousel-extended,
#partners [class*="carousel"],
#partners > .sppb-addon-content > div {
  position: relative !important;
  overflow: hidden !important;
}

/* Track — shared by both carousel implementations */
.partners-track {
  display: flex !important;
  align-items: center !important;
  gap: 32px !important;
  overflow: hidden !important;
  transition: transform 0.4s ease !important;
  padding: 16px 0 !important;
}

/* V2 slide element */
.partner-slide {
  flex-shrink: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  min-width: 140px !important;
  max-width: 180px !important;
}

.partner-slide img {
  max-height: 64px !important;
  width: auto !important;
  max-width: 140px !important;
  object-fit: contain !important;
  opacity: 0.8 !important;
  transition: opacity 0.2s !important;
  filter: grayscale(0.2) !important;
}

.partner-slide img:hover {
  opacity: 1 !important;
  filter: none !important;
}

.partner-slide .partner-name {
  font-size: 12px !important;
  color: #6f6f6f !important;
  margin-top: 8px !important;
  line-height: 1.3 !important;
}

/* Minimalist arrows (no solid background square) */
.partners-arrow {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: none !important;
  border: none !important;
  color: #b4161a !important;
  font-size: 28px !important;
  font-weight: 300 !important;
  cursor: pointer !important;
  padding: 8px !important;
  line-height: 1 !important;
  z-index: 10 !important;
  opacity: 0.7 !important;
  transition: opacity 0.2s, transform 0.2s !important;
  user-select: none !important;
}

.partners-arrow:hover {
  opacity: 1 !important;
}

.partners-arrow:disabled {
  opacity: 0.2 !important;
  cursor: default !important;
}

.partners-arrow.arrow-left {
  left: -4px !important;
}

.partners-arrow.arrow-right {
  right: -4px !important;
}

.partners-arrow.arrow-left:hover {
  transform: translateY(-50%) translateX(-2px) !important;
}

.partners-arrow.arrow-right:hover {
  transform: translateY(-50%) translateX(2px) !important;
}

/* Outer wrapper with room for arrows */
.partners-carousel-outer {
  position: relative !important;
  padding: 0 32px !important;
}

/* Section heading */
#partners h2,
#partners .module-title span,
#partners .sppb-addon-title {
  font-size: 28px !important;
  font-weight: 700 !important;
  color: #212529 !important;
  margin-bottom: 24px !important;
  text-align: center !important;
}

/* Legacy dot-based carousel kept for fallback */
.partners-wrapper {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  overflow: hidden;
  align-items: center;
  gap: 24px;
}

.partner-item {
  flex-shrink: 0;
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-width: 120px;
  max-width: 180px;
}

.partner-item img {
  max-height: 60px;
  width: auto;
  object-fit: contain;
  filter: grayscale(0.3);
  transition: filter 0.3s;
}

.partner-item img:hover {
  filter: grayscale(0);
}

.partners-carousel-wrapper {
  position: relative;
  padding: 0 50px;
}

.carousel-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: #b4161a;
  color: #fff;
  border: none;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  font-size: 18px;
  transition: background 0.2s, opacity 0.2s;
  flex-shrink: 0;
}

.carousel-arrow:hover {
  background: #323183;
}

.carousel-arrow.arrow-left { left: 0; }
.carousel-arrow.arrow-right { right: 0; }
.carousel-arrow:disabled { opacity: 0.4; cursor: not-allowed; }

/* =========================================================
   TASK 4 — REVIEWS: ARROWS ALWAYS VISIBLE
   ========================================================= */

#otzyv .sppb-carousel-extended,
#otzyv [class*="carousel"] {
  position: relative;
  padding: 0 50px;
  box-sizing: border-box;
}

#otzyv [class*="prev"],
#otzyv [class*="next"],
#otzyv .owl-prev,
#otzyv .owl-next {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 20 !important;
  background: #b4161a !important;
  color: #fff !important;
  border-radius: 50% !important;
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: none !important;
  cursor: pointer !important;
  opacity: 1 !important;
  visibility: visible !important;
  flex-shrink: 0 !important;
}

#otzyv [class*="prev"],
#otzyv .owl-prev {
  left: 0 !important;
  right: auto !important;
}

#otzyv [class*="next"],
#otzyv .owl-next {
  right: 0 !important;
  left: auto !important;
}

@media (max-width: 768px) {
  #otzyv .sppb-carousel-extended,
  #otzyv [class*="carousel"] {
    padding: 0 44px;
  }
  #otzyv [class*="prev"],
  #otzyv [class*="next"] {
    width: 34px !important;
    height: 34px !important;
    font-size: 14px !important;
  }
}

@media (max-width: 480px) {
  #otzyv .sppb-carousel-extended,
  #otzyv [class*="carousel"] {
    padding: 0 38px;
  }
  #otzyv [class*="prev"],
  #otzyv [class*="next"] {
    width: 30px !important;
    height: 30px !important;
  }
}

#otzyv {
  margin-bottom: 60px !important;
  padding-bottom: 60px !important;
}

/* TASK 6 — footer styles consolidated into the #t4-footnav block above */


/* =========================================================
   TASK 9 — GENERAL POLISH
   ========================================================= */

html {
  scroll-behavior: smooth;
}

body {
  line-height: 1.7 !important;
  -webkit-font-smoothing: antialiased;
}

.section-title {
  margin-bottom: 12px;
}

.sub-heading.h2 {
  font-size: 32px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: #212529 !important;
}

@media (max-width: 768px) {
  .sub-heading.h2 {
    font-size: 24px !important;
  }
}

.btn.btn-primary {
  background-color: #b4161a !important;
  border-color: #b4161a !important;
  color: #fff !important;
  padding: 12px 28px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  border-radius: 6px !important;
  transition: background 0.2s, transform 0.1s, box-shadow 0.2s !important;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.btn.btn-primary:hover {
  background-color: #8f1014 !important;
  border-color: #8f1014 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(180, 22, 26, 0.3) !important;
}


.statistic-block {
  padding: 24px !important;
  border-radius: 12px;
  transition: transform 0.2s, box-shadow 0.2s;
}

.statistic-block:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}


.t4-megamenu .navbar-nav > li.active > a,
.t4-megamenu .navbar-nav > li > a:hover {
  color: #b4161a !important;
}

:focus:not(:focus-visible) {
  outline: none;
}

::-webkit-scrollbar {
  width: 6px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: #b4161a;
  border-radius: 3px;
}

img {
  max-width: 100%;
  height: auto;
}

@media (max-width: 576px) {
  .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  h2, .h2 {
    font-size: 22px !important;
  }
  h3, .h3 {
    font-size: 18px !important;
  }
  p {
    font-size: 14px !important;
  }
  .btn.btn-primary {
    padding: 10px 20px !important;
    font-size: 13px !important;
  }
}

/* =========================================================
   TASK 10.1 — BUG: WHITE BLOCK UNDER FOOTER (#back-to-top)
   ========================================================= */

#back-to-top {
  position: fixed !important;
  bottom: 32px !important;
  right: 32px !important;
  width: 44px !important;
  height: 44px !important;
  background: #b4161a !important;
  color: #fff !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  text-decoration: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity 0.3s, transform 0.3s !important;
  z-index: 9999 !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
}

#back-to-top.visible {
  opacity: 1 !important;
  pointer-events: auto !important;
}

#back-to-top:hover {
  background: #323183 !important;
  transform: translateY(-3px) !important;
}

/* ===== HIDE floating chat/jivo widget (red ball bottom-right) ===== */
jdiv,
#jivo_custom_widget,
.__jivoMobileButton,
.jivo-btn,
[class*="jivo"],
[id*="jivo"],
.cf-float-button,
[class*="float-btn"],
[class*="floating-btn"],
div[style*="position: fixed"][style*="background: #b4161"],
div[style*="position:fixed"][style*="background:#b4161"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}


/* TASK 10.3 — partners→footer spacing consolidated into the #t4-footnav block above */


/* ===== БЕЗОПАСНОСТЬ ПАЦИЕНТОВ: читаемость текста + верстка ===== */

#bezopasnost,
[id="t4-section-1"],
.acm-features.style-2 {
  padding: 48px 0 !important;
}

#bezopasnost .sub-heading,
.acm-features.style-2 .sub-heading {
  font-size: 28px !important;
  font-weight: 700 !important;
  color: #212529 !important;
  line-height: 1.3 !important;
  margin-bottom: 8px !important;
}

#bezopasnost .lead,
#bezopasnost > .container > .row > div > p:first-of-type {
  font-size: 14px !important;
  color: #6f6f6f !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  font-weight: 500 !important;
}

.acm-features.style-2 .row {
  align-items: center !important;
  gap: 0 !important;
}

.acm-features.style-2 .features-image {
  padding-right: 16px !important;
}


.acm-container-tabs .nav-tabs {
  border-bottom: 2px solid #e9ecef !important;
  margin-bottom: 28px !important;
}

.acm-container-tabs .nav-tabs .nav-link {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #6f6f6f !important;
  padding: 12px 24px !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -2px !important;
}

.acm-container-tabs .nav-tabs .nav-link.active {
  color: #b4161a !important;
  border-bottom-color: #b4161a !important;
  background: none !important;
}

.acm-features.style-2 .features-image img {
  border-radius: 10px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12) !important;
  max-width: 100% !important;
  height: auto !important;
}


/* ===== CTA кнопка в Hero: продающий стиль ===== */

.acm-hero .btn,
.acm-hero .btn-primary,
.acm-hero .btn-hero-cta,
.hero-item .btn,
.btn-action .btn {
  background: #b4161a !important;
  border: 2px solid #b4161a !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  padding: 14px 36px !important;
  border-radius: 4px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 16px rgba(180, 22, 26, 0.25) !important;
  margin-top: 28px !important;
  text-decoration: none !important;
}

.acm-hero .btn:hover,
.hero-item .btn:hover,
.btn-action .btn:hover {
  background: transparent !important;
  color: #b4161a !important;
  border-color: #b4161a !important;
  box-shadow: none !important;
  transform: translateY(-2px) !important;
}

.acm-hero .btn .fa-arrow-right,
.hero-item .btn .icon {
  font-size: 12px !important;
  transition: transform 0.2s !important;
}

.acm-hero .btn:hover .fa-arrow-right,
.hero-item .btn:hover .icon {
  transform: translateX(4px) !important;
}

/* ===== HERO: изображение без видимых границ ===== */

.acm-hero {
  background-image: url(/assets/medsystem.online/templates/ja_vital/images/decor/mask-1.png) !important;
  background-position: top left !important;
  background-repeat: no-repeat !important;
  background-color: #fff !important;
  padding: 100px 0 120px 128px !important;
  position: relative !important;
  overflow: hidden !important;
  min-height: 480px;
}

.acm-hero .hero-image {
  position: absolute !important;
  top: -5% !important;
  right: -2% !important;
  bottom: -5% !important;
  width: 62% !important;
  display: block !important;
  overflow: hidden !important;
}

.acm-hero .hero-image img {
  width: 110% !important;
  height: 110% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: left center !important;
  display: block !important;
}

.acm-hero .hero-image::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 45%;
  height: 100%;
  background: linear-gradient(to right,
    #ffffff 0%,
    rgba(255,255,255,0.9) 20%,
    rgba(255,255,255,0.5) 50%,
    transparent 100%
  );
  z-index: 2;
  pointer-events: none;
}

.acm-hero .hero-image::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 30%;
  background: linear-gradient(to top,
    #ffffff 0%,
    rgba(255,255,255,0.6) 50%,
    transparent 100%
  );
  z-index: 2;
  pointer-events: none;
}

.acm-hero .hero-item {
  position: relative !important;
  z-index: 5 !important;
  max-width: 580px !important;
}

.acm-hero .hero-item h2 {
  font-size: 30px !important;
  font-weight: 700 !important;
  color: #1a1a2e !important;
  font-style: normal !important;
  line-height: 1.3 !important;
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

.acm-hero .hero-item p.lead {
  font-size: 15px !important;
  color: #555 !important;
  line-height: 1.7 !important;
}

@media (max-width: 1199px) {
  .acm-hero .hero-image { display: none !important; }
  .acm-hero { padding: 80px 48px !important; }
}

@media (max-width: 767px) {
  .acm-hero { padding: 48px 24px !important; }
  .acm-hero .hero-item h2 { font-size: 22px !important; }
}

/* ===== КОНТАКТ ФОРМА: единый стиль для всех версий (EN, RU, KK) ===== */

/* Секция контакта — реальный id во всех версиях #t4-section-11 */
#t4-section-11 {
  background: #fff !important;
  padding: 60px 0 !important;
}

/* Flex layout — фото слева, форма справа */
#t4-section-11 .sppb-row {
  display: flex !important;
  align-items: center !important;
  gap: 64px !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
}

/* Фото слева */
#t4-section-11 .sppb-col-md-6:first-child {
  flex: 0 0 360px !important;
  max-width: 360px !important;
  width: 360px !important;
}

#t4-section-11 .sppb-col-md-6:first-child img {
  width: 100% !important;
  height: auto !important;
  border-radius: 8px !important;
  display: block !important;
}

/* Заголовок формы */
#t4-section-11 h2.sppb-addon-title {
  font-size: 26px !important;
  font-weight: 700 !important;
  color: #1a1a2e !important;
  text-align: center !important;
  margin-bottom: 24px !important;
}

/* Все поля ввода — единый стиль (.convertforms — реальный класс в HTML) */
.convertforms .cf-field input[type="text"],
.convertforms .cf-field input[type="email"],
.convertforms .cf-field input[type="tel"],
.convertforms .cf-field input[type="number"],
.convertforms .cf-field input[type="url"],
.convertforms .cf-field textarea,
.convertforms input.cf-input,
.convertforms textarea.cf-input {
  background: #f5f5f5 !important;
  border: 1px solid #e8e8e8 !important;
  border-radius: 8px !important;
  padding: 14px 16px !important;
  font-size: 15px !important;
  color: #333 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s, background 0.2s !important;
  outline: none !important;
  margin-bottom: 0 !important;
  box-shadow: none !important;
}

.convertforms input.cf-input:focus,
.convertforms textarea.cf-input:focus {
  border-color: #b4161a !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(180,22,26,0.08) !important;
}

/* Скрыть honeypot-поле */
.convertforms .cf-field-website,
.convertforms [data-type="website"] {
  display: none !important;
}

/* Кнопка отправки */
.convertforms [type="submit"],
.convertforms .cf-btn,
.convertforms button[type="submit"] {
  background: #b4161a !important;
  border: none !important;
  border-radius: 8px !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  padding: 16px 32px !important;
  width: 100% !important;
  cursor: pointer !important;
  text-transform: uppercase !important;
  transition: background 0.2s !important;
  display: block !important;
  margin-top: 12px !important;
}

.convertforms [type="submit"]:hover {
  background: #8f1014 !important;
}

/* Отступы между полями */
.convertforms .cf-control-group {
  margin-bottom: 12px !important;
}

@media (max-width: 900px) {
  #t4-section-11 .sppb-row {
    flex-direction: column !important;
    gap: 32px !important;
    padding: 0 20px !important;
  }
  #t4-section-11 .sppb-col-md-6:first-child {
    flex: none !important;
    max-width: 260px !important;
    width: 260px !important;
    margin: 0 auto !important;
  }
}

/* ===== О НАС: горизонтальный layout текст + иконки 2x2 ===== */

/* Весь блок — тёмный фон */
#t4-section-5 .acm-features.style-1,
.acm-features.style-1.bg-primary {
  background-color: #1a1a2e !important;
  background-image: url(/assets/medsystem.online/templates/ja_vital/images/decor/mask-3.png) !important;
  background-position: top left !important;
  background-repeat: no-repeat !important;
  padding: 72px 0 !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Фоновая картинка справа */
.acm-features.style-1 .features-background {
  display: block !important;
  position: absolute !important;
  top: 0 !important; right: 0 !important; bottom: 0 !important;
  width: 50% !important;
  background-size: cover !important;
  background-position: center !important;
  opacity: 0.15 !important;
}

/* ГЛАВНАЯ СТРОКА — горизонтальный flex, две половины рядом */
.acm-features.style-1 .container .row.large-gutters {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  margin-left: -24px !important;
  margin-right: -24px !important;
}

/* Левая колонка — ровно 50% */
.acm-features.style-1 .col-12.col-lg-6.features-desc {
  flex: 0 0 50% !important;
  max-width: 50% !important;
  padding-left: 24px !important;
  padding-right: 40px !important;
  display: flex !important;
  align-items: flex-start !important;
}

/* Правая колонка — ровно 50% */
.acm-features.style-1 .col-12.col-lg-6.mt-4 {
  flex: 0 0 50% !important;
  max-width: 50% !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  margin-top: 0 !important;
}

/* Убрать избыточный padding-left у features-desc из оригинального CSS */
.acm-features.style-1 .features-desc {
  padding-left: 0 !important;
  color: #fff !important;
  width: 100% !important;
}

/* Внутренний блок .inner тоже без лишних отступов */
.acm-features.style-1 .features-desc .inner {
  padding-left: 0 !important;
  width: 100% !important;
}

/* Бейдж "О нас" */
.acm-features.style-1 .section-title span {
  background: #b4161a !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  padding: 4px 12px !important;
  border-radius: 3px !important;
  display: inline-block !important;
  margin-bottom: 12px !important;
}

/* Заголовок "Medical System SOS" */
.acm-features.style-1 .sub-heading.h2 {
  font-size: 34px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  line-height: 1.2 !important;
  margin-bottom: 20px !important;
  margin-top: 8px !important;
}

/* Текст описания */
.acm-features.style-1 .features-desc p,
.acm-features.style-1 .features-desc p[style] {
  color: #c8d5e8 !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

/* Кнопка "Рассчитать стоимость" */
.acm-features.style-1 .features-action {
  margin-top: 32px !important;
}

.acm-features.style-1 .features-action .btn {
  background: #b4161a !important;
  border: 2px solid #b4161a !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.8px !important;
  text-transform: uppercase !important;
  padding: 14px 28px !important;
  border-radius: 4px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  transition: all 0.2s !important;
  width: 100% !important;
  justify-content: center !important;
  margin-top: 0 !important;
}

.acm-features.style-1 .features-action .btn:hover {
  background: transparent !important;
  color: #b4161a !important;
}

/* ===== ПРАВАЯ ЧАСТЬ: белый box с иконками 2×2 ===== */

/* Белый контейнер */
.acm-features.style-1 .features-details {
  background: #fff !important;
  border-radius: 12px !important;
  padding: 32px !important;
  height: 100% !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.2) !important;
}

/* Строки внутри сетки 2×2 */
.acm-features.style-1 .features-details .row {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  margin: -8px !important;
}

/* Ячейки сетки */
.acm-features.style-1 .features-details .row > div {
  flex: 0 0 50% !important;
  max-width: 50% !important;
  padding: 8px !important;
  border: none !important;
}

/* Карточка иконки */
.acm-features.style-1 .features-detail {
  padding: 20px 16px !important;
  text-align: center !important;
  border-radius: 8px !important;
  border: 1px solid #f0f0f0 !important;
  background: #fafafa !important;
  transition: background 0.2s, transform 0.2s !important;
  height: 100% !important;
  box-shadow: none !important;
  transform: none !important;
}

.acm-features.style-1 .features-detail:hover {
  background: #fff5f5 !important;
  border-color: #f0c0c0 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(180,22,26,0.08) !important;
}

/* О НАС: иконки крупнее, карточки визуально богаче */

.acm-features.style-1 .features-detail .info-img {
  margin-bottom: 14px !important;
}

.acm-features.style-1 .features-detail .info-img img {
  max-height: 96px !important;
  max-width: 96px !important;
  width: 96px !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto 14px !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Текст под иконкой */
.acm-features.style-1 .features-detail .info-text h4 {
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #555 !important;
  text-align: center !important;
  line-height: 1.3 !important;
  margin: 0 !important;
}

/* Карточка иконки — flex-column по центру */
.acm-features.style-1 .features-detail {
  padding: 20px 12px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Ссылка-обёртка */
.acm-features.style-1 .features-detail a {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-decoration: none !important;
  width: 100% !important;
}

/* Белый box — немного уменьшить padding */
.acm-features.style-1 .features-details {
  padding: 20px !important;
}

/* Сетка 2×2 — минимальный gap */
.acm-features.style-1 .features-details .row > div {
  padding: 6px !important;
}

/* ===== АДАПТИВ ===== */

@media (max-width: 1399px) {
  .acm-features.style-1 .features-background {
    display: none !important;
  }
}

@media (max-width: 991px) {
  .acm-features.style-1 .container .row.large-gutters {
    flex-direction: column !important;
    flex-wrap: wrap !important;
  }

  .acm-features.style-1 .col-12.col-lg-6.features-desc,
  .acm-features.style-1 .col-12.col-lg-6.mt-4 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding-right: 24px !important;
  }

  .acm-features.style-1 .col-12.col-lg-6.mt-4 {
    margin-top: 32px !important;
  }

  .acm-features.style-1 .sub-heading.h2 {
    font-size: 26px !important;
  }

  .acm-features.style-1 .features-action .btn {
    width: auto !important;
  }

  .acm-features.style-1 .features-details {
    padding: 20px !important;
  }
}

@media (max-width: 575px) {
  .acm-features.style-1 {
    padding: 40px 0 !important;
  }
  .acm-features.style-1 .sub-heading.h2 {
    font-size: 22px !important;
  }
  .acm-features.style-1 .features-detail h4 {
    font-size: 12px !important;
  }
}

/* ===== НАШИ ПРОДУКТЫ: компактный layout без лишнего воздуха ===== */

/* Убрать огромный top padding у секции */
#t4-section-3,
#t4-section-3.t4-section {
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

/* Убрать внутренний padding у sppb-section внутри #t4-section-3 */
#t4-section-3 .sppb-section {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Убрать margin у sppb-addon-wrapper внутри секции */
#t4-section-3 .sppb-addon-wrapper {
  margin-bottom: 0 !important;
}

/* ===== ПРАВАЯ КОЛОНКА: список + описание ===== */

/* Бейдж "Наши продукты" */
#t4-section-3 .section-title span {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 4px 12px !important;
  background: #b4161a !important;
  color: #fff !important;
  border-radius: 3px !important;
  display: inline-block !important;
  margin-bottom: 10px !important;
}

/* Заголовок */
#t4-section-3 .sppb-addon-title,
#t4-section-3 h2,
#t4-section-3 h3 {
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #1a1a2e !important;
  line-height: 1.3 !important;
  margin-bottom: 20px !important;
  margin-top: 0 !important;
}

/* Список продуктов */
.modules-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 16px 0 !important;
  display: block !important;
}

.modules-list-item {
  height: auto !important;
  min-height: 44px !important;
  padding: 10px 14px !important;
  border-left: 3px solid transparent !important;
  border-radius: 0 6px 6px 0 !important;
  transition: background 0.15s, border-color 0.15s !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  background-position: center !important;
  background-size: 0 !important;
}

.modules-list-item:hover {
  background: #fef2f2 !important;
  border-left-color: #b4161a !important;
}

.active_li .modules-list-item,
.modules-list-item-wrapper.active_li > .modules-list-item {
  background: #fef2f2 !important;
  border-left-color: #b4161a !important;
}

.modules-list-item span {
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #374151 !important;
  position: static !important;
}

.modules-list-item span::before {
  display: none !important;
}

.active_li .modules-list-item span,
.active_li > div > span > button {
  color: #b4161a !important;
  font-weight: 600 !important;
  border-bottom: none !important;
  scale: 1 !important;
}

/* Текстовый блок описания продукта */
.list_wrapper {
  display: block !important;
  padding: 20px 24px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.08) !important;
  -webkit-box-shadow: 0 1px 8px rgba(0,0,0,0.08) !important;
  border-radius: 8px !important;
  background: #fafafa !important;
  border: 1px solid #f0f0f0 !important;
  margin-top: 0 !important;
}

.list_wrapper p,
.list_wrapper span,
.list_wrapper div {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #4b5563 !important;
  margin-bottom: 0 !important;
}

.list_wrapper > * {
  height: auto !important;
  min-height: unset !important;
}

/* Горизонтальный ряд */
#t4-section-3 > .t4-section-inner,
#t4-section-3 .section-inner {
  align-items: flex-start !important;
}

#t4-section-3 .col-lg-6 {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

#t4-section-3 .modules-list {
  margin-right: 0 !important;
}

@media (max-width: 991px) {
  #t4-section-3 {
    padding-top: 32px !important;
    padding-bottom: 32px !important;
  }
}

/* ===== НАШИ ПОКАЗАТЕЛИ: единый красный блок без щелей ===== */

.t4-section:has(.acm-stats),
.t4-section .acm-stats {
  background: transparent !important;
}

.t4-section .module-title {
  text-align: center !important;
  padding: 24px 0 16px !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #1a1a2e !important;
}

.acm-stats .stats-list.row.no-gutters {
  margin: 0 !important;
  gap: 0 !important;
  flex-wrap: nowrap !important;
}

.acm-stats .col-6,
.acm-stats .col-lg-auto,
.acm-stats [class*="col-"] {
  padding: 0 !important;
  margin: 0 !important;
}

.acm-stats .stats-asset {
  padding: 40px 20px !important;
  margin: 0 !important;
  border-radius: 12px !important;
  border: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
}

.acm-stats .stats-asset img {
  max-height: 80px !important;
  width: auto !important;
  margin-bottom: 16px !important;
  display: block !important;
}

.acm-stats .stats-asset .info-text h4,
.acm-stats .stats-asset strong,
.acm-stats .stats-asset b,
.acm-stats .stats-asset [class*="number"],
.acm-stats .stats-asset .statistic-number {
  font-size: 36px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  display: block !important;
  text-align: center !important;
  margin-bottom: 4px !important;
  line-height: 1.1 !important;
}

.acm-stats .stats-asset .statistic-block,
.acm-stats .stats-asset p {
  color: rgba(255,255,255,0.8) !important;
  font-size: 14px !important;
  text-align: center !important;
  margin: 0 !important;
}

#Mod115 {
  padding: 0 !important;
}

#Mod115 .module-ct {
  padding: 0 !important;
}

@media (max-width: 991px) {
  .acm-stats .stats-list.row.no-gutters {
    flex-wrap: wrap !important;
  }
  .acm-stats .col-6 {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
}

/* ===== ФУТЕР: логотип увеличить до размера хедера ===== */

#t4-footnav .logo-footer img,
#t4-footnav .logo-footer a img,
.t4-footnav .logo-footer img {
  max-height: none !important;
  width: auto !important;
  height: auto !important;
  max-width: 220px !important;
  filter: none !important;
  display: block !important;
  margin-bottom: 16px !important;
}

#t4-footnav [class*="logo"] img,
#t4-footnav .navbar-brand img,
#t4-footnav .logo img,
#t4-footnav .t4-module img[src*="logo"],
#t4-footnav .module-ct img {
  max-width: 220px !important;
  max-height: none !important;
  filter: none !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  margin-bottom: 16px !important;
}

/* ===== ПАРТНЁРЫ: иконки крупнее ===== */

#partners img,
#partners .partner-slide img,
#partners .sppb-carousel-extended-item img,
.partners-track img,
.partner-item img {
  max-height: 90px !important;
  max-width: 180px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  opacity: 1 !important;
  filter: none !important;
}

#partners .partner-slide,
#partners .partner-item,
.partner-slide {
  min-width: 160px !important;
  max-width: 220px !important;
  padding: 12px !important;
}

#partners a {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 8px !important;
}

/* ===== FEATURES-LIST: видимые иконки пунктов ===== */

.features-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 16px !important;
}

.features-list li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin-bottom: 12px !important;
  font-size: 15px !important;
  color: #374151 !important;
  line-height: 1.6 !important;
}

.features-list li::before {
  content: "\25CF" !important;
  color: #b4161a !important;
  font-family: inherit !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  margin-top: 4px !important;
  flex-shrink: 0 !important;
  line-height: 1.6 !important;
}

/* ===== НАШИ ПРОДУКТЫ: картинки — оригинальный вид ===== */

#Imag {
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important;
  padding-top: 20px !important;
  transition: 1.5s !important;
}

#Imag > img {
  box-shadow: -5px -5px 20px rgba(255,255,255,0.8), 4px 0px 10px rgba(0,0,0,0.68) !important;
  transition: 1.5s !important;
  filter: none !important;
  image-rendering: auto !important;
  max-width: 100% !important;
  width: auto !important;
  height: auto !important;
  border-radius: 8px !important;
}

/* ===== ПАРТНЁРЫ: стилизация ===== */

.acm-teams .teams-desc h2 {
  font-size: 28px !important;
  font-weight: 700 !important;
  color: #1a1a2e !important;
  margin-bottom: 24px !important;
}

#acm-teams-114 {
  position: relative !important;
}

#partners ~ .t4-section-inner .acm-teams,
.t4-section .acm-teams.style-1 {
  padding: 0 !important;
}

/* ===== ФУТЕР: логотип с отступом от текста ===== */

#t4-footnav .logo-footer {
  margin-right: 32px !important;
  padding-right: 16px !important;
  display: block !important;
}

#t4-footnav .logo-footer img,
#t4-footnav .logo-footer a img {
  max-width: 200px !important;
  width: auto !important;
  height: auto !important;
  max-height: none !important;
  filter: none !important;
  display: block !important;
  margin-bottom: 12px !important;
}

#t4-footnav .t4-row {
  gap: 32px !important;
  align-items: flex-start !important;
}

#t4-footnav .t4-col:first-child {
  padding-right: 48px !important;
}

