/* Общие стили для секции */
.utp_section {
  padding: 60px 20px; /* Увеличил вертикальный отступ для пространства */
  overflow-x: auto; 
}
/* Обертка для всех элементов, используем Flexbox для выравнивания */
.utp_section__wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  max-width: 1400px;
  margin: 0 auto;
}
/* Стили для каждого блока с контентом */
.utp_section__item {
  position: relative;
  text-align: center;
  padding: 40px;
  min-width: 280px;
  flex-shrink: 0; /* Запрещаем блокам сжиматься */
}
/* Фоновое "пятно" для каждого блока */
.utp_section__blob {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  width: 155%; 
  height: 155%;
  object-fit: contain;
}
/* Контейнер для текста, чтобы он был поверх фона */
.utp_section__content {
  position: relative;
  z-index: 2;
}

/* Иконки, абсолютно позиционированные относительно родительского блока */
.utp_section__icon {
    position: absolute;
    z-index: 3;
}
/* Заголовок блока */
.utp_section__title {
  color: #007bff; /* Первая часть заголовка будет синей */
  font-size: 24px;
  font-weight: bold;
  margin: 0 0 10px 0;
}

/* === НОВЫЙ СТИЛЬ ДЛЯ ВТОРОГО СЛОВА В ЗАГОЛОВКЕ === */
.utp_section__title--black {
  color: #000; /* Вторая часть заголовка будет черной */
}
/* Текст в блоке */
.utp_section__text {
  color: #333;
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
}
/* Арифметические знаки */
.utp_section__operator {
    flex-shrink: 0; /* Запрещаем знакам сжиматься */
}
/* ---- Позиционирование иконок для ПЕРВОГО блока ---- */
.utp_section__item--1 {
    width: 350px;
}
.utp_section__icon--lightbulb {
    top: -35px;
    right: 10px;
}
.utp_section__icon--magnifier {
    bottom: -35px;
    right: 25px;
    width: 80px;
}
/* ---- Позиционирование иконок для ВТОРОГО блока ---- */
.utp_section__item--2 {
    width: 380px;
}
 .utp_section__icon--gears {
    top: -50px;
    right: -20px;
 }
 .utp_section__icon--cursor {
    bottom: -25px;
    left: 30px;
 }
/* ---- Стили для ТРЕТЬЕГО блока (результат) ---- */
.utp_section__item--3 {
    width: 450px;
}
.utp_section__content--result {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.utp_section__logo {
    height: 75px; 
}
.utp_section__text--result {
    text-align: left;
    font-size: 22px;
    line-height: 1.2;
}
.utp_section__text--blue {
    color: #007bff;
    font-weight: bold;
}
.utp_section__text--black {
    color: #000;
    font-weight: bold;
}
.utp_section__icon--keys {
    top: -70px;
    right: -30px;
}
.utp_section__icon--compass {
    bottom: -25px;
    left: 10px;
}

/* Адаптация для мобильных устройств */
@media (max-width: 1400px) { /* Изменил точку перелома */
  .utp_section__wrapper {
    flex-direction: column;
  }
  .utp_section__operator {
    margin: 10px 0;
  }
}