/* Keep the visual symbols compact while giving every control a comfortable touch area. */
#root button {
  min-width: 44px;
  min-height: 44px;
}

#root button[aria-label="Открыть меню"] {
  width: 44px !important;
  height: 44px !important;
  display: grid;
  place-items: center;
}

#root button[aria-label="Русская версия"],
#root button[aria-label="English version"] {
  width: 44px !important;
  height: 44px !important;
}

#root button[aria-label="Предыдущий кейс"],
#root button[aria-label="Следующий кейс"],
#root button[aria-label="Previous case"],
#root button[aria-label="Next case"],
#root button[aria-label="Предыдущий ведущий"],
#root button[aria-label="Следующий ведущий"],
#root button[aria-label="Previous facilitator"],
#root button[aria-label="Next facilitator"] {
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px;
}

#root button[aria-label^="Примеры корпоративных эвентов"],
#root button[aria-label^="Corporate event examples"],
#root button[aria-label^="Открыть профиль"],
#root button[aria-label^="Open profile"] {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
}

#root button[aria-label="Закрыть видео"],
#root button[aria-label="Close video"] {
  width: 44px !important;
  height: 44px !important;
}

.rp-free-consult {
  margin: 12px 0 0;
  color: currentColor;
  font-family: var(--font-sans, Inter, system-ui, sans-serif);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.4;
  text-transform: uppercase;
  opacity: 0.76;
}

.rp-free-consult--final {
  margin-top: 16px;
  opacity: 0.68;
}

/* Keep the team visible as one deliberate row on wide screens. */
@media (min-width: 900px) {
  #team > div:last-child {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    max-width: 72rem;
    gap: 24px;
  }

  #team > div:last-child > div > div:first-child {
    width: min(100%, 13rem);
    height: auto;
    aspect-ratio: 1;
  }
}

#team img[alt="Дмитрий"],
#team img[alt="Dmitry"] {
  object-position: center 20%;
}

/* The strategy map stays alive without making the surrounding section feel busy. */
.rp-why-motion {
  --rp-pointer-x: 0px;
  --rp-pointer-y: 0px;
  --rp-pointer-rotate: 0deg;
  transform: translate3d(var(--rp-pointer-x), var(--rp-pointer-y), 0) rotate(var(--rp-pointer-rotate));
  transform-origin: center;
  transition: transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

.rp-why-motion__line {
  transform-box: fill-box;
  transform-origin: center;
  animation: rp-why-line-drift 7s ease-in-out infinite alternate;
}

.rp-why-motion__line--1 {
  animation-duration: 8.5s;
  animation-delay: -1.5s;
}

@keyframes rp-why-line-drift {
  0% { transform: translate3d(-2px, 2px, 0) rotate(-0.7deg); }
  100% { transform: translate3d(2px, -2px, 0) rotate(0.7deg); }
}

@media (prefers-reduced-motion: reduce) {
  .rp-why-motion,
  .rp-why-motion__line {
    animation: none;
    transition: none;
    transform: none;
  }
}

@media (max-width: 640px) {
  .rp-free-consult {
    max-width: 260px;
    font-size: 9px;
    line-height: 1.5;
  }
}
