@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
:root {
  --font-family: "Montserrat", sans-serif; }
/*Обнуление*/
* {
  padding: 0;
  margin: 0;
  border: 0; }

img {
  /* Обрезать по 1px сверху, справа, снизу и слева */
  clip-path: inset(1px); }

*, *:before, *:after {
  box-sizing: border-box; }

:focus, :active {
  outline: none; }

a:focus, a:active {
  outline: none; }

nav, footer, header, aside {
  display: block; }

html, body {
  height: 100%;
  width: 100%;
  font-size: 100%;
  line-height: 1;
  font-size: 14px;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

input, button, textarea {
  font-family: inherit; }

input::-ms-clear {
  display: none; }

button {
  cursor: pointer; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

a, a:visited {
  text-decoration: none; }

a:hover {
  text-decoration: none; }

p {
  margin-bottom: 0; }

img {
  vertical-align: top; }

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: 400; }
/*--------------------*/
html {
  scroll-behavior: smooth; }

body {
  background: #090f1e;
  color: #fff;
  height: 100%;
  font-size: 16px;
  font-family: var(--font-family);
  overflow-x: hidden; }
  body.hidden {
    overflow: hidden; }

.wrapper {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  overflow-x: clip; }

.page {
  flex: 1 0 auto; }

._container {
  max-width: 1330px;
  padding: 0 15px;
  margin: 0 auto; }

.header {
  position: fixed;
  left: 0;
  top: 25px;
  width: 100%;
  z-index: 99; }
  @media (max-width: 480px) {
  .header {
    top: 15px; } }
  .header__body {
    padding: 3px 10px 3px 30px;
    border-radius: 50px;
    background-color: rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(19px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 15px; }
    @media (max-width: 480px) {
  .header__body {
    padding: 3px 10px 3px 15px; } }
  .header__logo img {
    clip-path: inset(0px); }
    @media (max-width: 480px) {
    .header__logo img {
      height: 45px; } }
  .header__items {
    display: flex;
    align-items: center;
    column-gap: 25px; }
  .header__item {
    font-weight: 400;
    font-size: 17px;
    text-align: center;
    color: #fff;
    line-height: 1.2;
    transition: 0.5s; }
    .header__item:hover {
      color: #95d2ed; }
  .header__langs-wrapper {
    display: flex;
    align-items: center;
    column-gap: 4px; }
    @media (max-width: 1200px) {
  .header__langs-wrapper {
    margin-left: auto; } }
  .header__langs {
    font-weight: 400;
    font-size: 17px;
    text-transform: uppercase;
    color: #fff;
    line-height: 1.2;
    font-family: var(--font-family);
    background-color: transparent; }
    @media (max-width: 480px) {
  .header__langs {
    font-size: 15px; } }
    .header__langs option {
      color: #151515; }
  .header__right {
    display: flex;
    align-items: center;
    column-gap: 10px; }
  .header__search {
    position: relative;
    overflow: hidden;
    transition: 0.5s; }
    .header__search:hover {
      transform: scale(1.1); }
    .header__search::before {
      content: "";
      position: absolute;
      inset: 0;
      /* Растягиваем на всю кнопку */
      border-radius: 50%;
      padding: 2px;
      /* ТОЛЩИНА ВАШЕГО БОРДЕРА-БЛИКА */
      /* Магия: рисуем градиентный круг, который будет вращаться */
      background: conic-gradient(from var(--angle), transparent 70%, #fff 90%, transparent 100%);
      /* Маскируем внутреннюю часть, чтобы остался только ободок */
      -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
      -webkit-mask-composite: xor;
      mask-composite: exclude;
      /* Запуск анимации */
      animation: rotate-angle 3s linear infinite; }
    @media (max-width: 480px) {
    .header__search svg {
      width: 35px;
      height: 35px; } }
  .header__button {
    height: 50px; }
    @media (max-width: 480px) {
  .header__button {
    height: auto; } }
  @media (max-width: 1200px) {
    .header__desc {
      display: none !important; } }
  .header .burger {
    display: none; }
    @media (max-width: 1200px) {
  .header .burger {
    display: block; } }

.button, .contactModal__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  font-size: 18px;
  text-align: center;
  color: #151515;
  line-height: 1.2;
  padding: 15px;
  border-radius: 50px;
  background-color: #95d2ed;
  min-width: 265px;
  transition: 0.5s; }
  @media (max-width: 480px) {
  .button, .contactModal__submit {
    padding: 12px;
    font-size: 15px;
    min-width: 220px; } }
  .button:hover, .contactModal__submit:hover {
    box-shadow: 0 0 20px #95d2ed; }

.button-gray {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  font-size: 20px;
  text-align: center;
  color: #fff;
  line-height: 1.2;
  padding: 20px;
  min-width: 330px;
  border-radius: 50px;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(9px);
  position: relative;
  text-decoration: none;
  overflow: hidden;
  /* Чтобы вращающийся элемент не вылезал за границы */
  transition: 0.5s;
  /* Настройки для мобилок из вашего кода */ }
  .button-gray:hover {
    transform: scale(1.1); }
  @media (max-width: 480px) {
  .button-gray {
    font-size: 15px;
    padding: 12px;
    min-width: 200px; } }
/* Создаем контейнер для блика через псевдоэлемент */
.button-gray::before {
  content: "";
  position: absolute;
  inset: 0;
  /* Растягиваем на всю кнопку */
  border-radius: 50px;
  padding: 2px;
  /* ТОЛЩИНА ВАШЕГО БОРДЕРА-БЛИКА */
  /* Магия: рисуем градиентный круг, который будет вращаться */
  background: conic-gradient(from var(--angle), transparent 70%, #fff 90%, transparent 100%);
  /* Маскируем внутреннюю часть, чтобы остался только ободок */
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  /* Запуск анимации */
  animation: rotate-angle 3s linear infinite; }
/* Регистрируем переменную для плавного вращения градиента */
@property --angle {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false; }

@keyframes rotate-angle {
  to {
    --angle: 360deg; } }

@keyframes rotate-angle2 {
  from {
    --angle: 0deg; }

  to {
    --angle: -360deg;
    /* Минус заставляет вращаться в обратную сторону */ } }

section {
  margin-top: 90px;
  position: relative;
  z-index: 2; }
  @media (max-width: 480px) {
  section {
    margin-top: 60px; } }

.pb {
  padding-bottom: 90px; }
  @media (max-width: 480px) {
  .pb {
    padding-bottom: 60px; } }

@keyframes letterColorChange {
  0%, 80%, 100% {
    color: #90a3bc;
    /* Обычный цвет */
    text-shadow: none; }

  40%, 50% {
    color: #fff;
    /* Белый цвет при "проходе" волны */
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.5); } }

.banner {
  height: 100vh;
  margin-top: 0;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (max-width: 480px) {
  .banner {
    height: auto; } }
  .banner::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #151515;
    opacity: 0.5; }
  .banner__container {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    z-index: 1; }
    @media (max-width: 480px) {
  .banner__container {
    padding: 80px 15px 150px; } }
  .banner__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 80px; }
  .banner__title {
    font-weight: 500;
    font-size: 64px;
    line-height: 110%;
    text-align: center;
    background: linear-gradient(90deg, #7ab3ff 0%, #fff 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 20px; }
    @media (max-width: 1200px) {
  .banner__title {
    font-size: 40px; } }
    @media (max-width: 480px) {
  .banner__title {
    font-size: 26px;
    margin-bottom: 15px; } }
    .banner__title strong {
      font-size: 84px;
      line-height: 1.5;
      letter-spacing: 0.1em; }
    @media (max-width: 1200px) {
    .banner__title strong {
      font-size: 50px; } }
    @media (max-width: 480px) {
    .banner__title strong {
      font-size: 35px; } }
  .banner__text {
    font-weight: 400;
    font-size: 22px;
    line-height: 168%;
    text-align: center;
    color: #d4e2f4;
    max-width: 644px;
    margin-bottom: 40px; }
    @media (max-width: 767px) {
  .banner__text {
    font-size: 18px;
    margin-bottom: 20px; } }
    @media (max-width: 480px) {
  .banner__text {
    font-size: 15px;
    margin-bottom: 15px; } }
  .banner__scroll {
    position: absolute;
    left: 50%;
    bottom: 35px;
    transform: translateX(-50%);
    font-weight: 300;
    font-size: 16px;
    line-height: 231%;
    letter-spacing: 0.2em;
    text-align: center;
    color: #90a3bc;
    /* Исходный цвет */
    z-index: 1;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap; }
    .banner__scroll span {
      display: inline-block;
      /* Название анимации | длительность | зацикленность */
      animation: letterColorChange 2.5s linear infinite;
      /* Используем переменную для задержки, которую добавит JS */
      animation-delay: var(--delay); }
  .banner__video {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }

.pok__top {
  display: flex;
  align-items: start;
  justify-content: space-between;
  column-gap: 180px;
  margin-bottom: 70px; }
  @media (max-width: 992px) {
    .pok__top {
      flex-direction: column;
      align-items: center;
      row-gap: 15px; } }
  @media (max-width: 480px) {
    .pok__top {
      margin-bottom: 20px; } }
  .pok__subtitle {
    font-weight: 400;
    font-size: 19px;
    line-height: 142%;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #8b9bc2;
    white-space: nowrap; }
  @media (max-width: 992px) {
    .pok__subtitle {
      text-align: center;
      font-size: 15px; } }
  .pok__title {
    font-weight: 400;
    font-size: 42px;
    line-height: 129%;
    color: #fff; }
  @media (max-width: 992px) {
    .pok__title {
      font-size: 26px;
      text-align: center; } }
  .pok__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 20px;
    row-gap: 40px; }
  @media (max-width: 992px) {
    .pok__items {
      grid-template-columns: 1fr 1fr; } }
  @media (max-width: 600px) {
    .pok__items {
      grid-template-columns: 1fr;
      row-gap: 20px; } }
  .item-pok__image {
    position: relative;
    overflow: hidden;
    padding-bottom: 60%;
    display: block;
    margin-bottom: 30px; }
  @media (max-width: 480px) {
    .item-pok__image {
      margin-bottom: 15px; } }
  .item-pok__image img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .item-pok__title {
    font-weight: 300;
    font-size: 47px;
    line-height: 138%;
    letter-spacing: 0.06em;
    color: #fff;
    margin-bottom: 15px; }
  @media (max-width: 992px) {
    .item-pok__title {
      font-size: 30px; } }
  @media (max-width: 480px) {
    .item-pok__title {
      font-size: 20px;
      margin-bottom: 10px; } }
  .item-pok__text {
    font-weight: 300;
    font-size: 19px;
    line-height: 132%;
    color: #8b9bc2; }
  @media (max-width: 480px) {
    .item-pok__text {
      font-size: 14px; } }

.services__title {
  font-weight: 400;
  font-size: 42px;
  line-height: 129%;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  margin-bottom: 50px; }
  @media (max-width: 480px) {
    .services__title {
      font-size: 26px;
      margin-bottom: 20px; } }
  .services__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px; }
  @media (max-width: 1200px) {
    .services__items {
      grid-template-columns: 1fr 1fr; } }
  @media (max-width: 767px) {
    .services__items {
      grid-template-columns: 1fr; } }

.item-services {
  height: 405px;
  background: #143076;
  padding: 40px;
  position: relative;
  cursor: pointer; }
  @media (max-width: 480px) {
  .item-services {
    padding: 20px;
    height: 300px; } }
  .item-services:hover .itemservices-hover {
    opacity: 0; }
  .item-services:hover .item-services__content {
    opacity: 1; }
  .item-services__content {
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: 0.5s;
    opacity: 0; }
  .item-services__number {
    font-weight: 300;
    font-size: 27px;
    line-height: 120%;
    letter-spacing: 0.06em;
    color: #6986d0;
    margin-bottom: 80px; }
  @media (max-width: 480px) {
    .item-services__number {
      font-size: 20px;
      margin-bottom: 40px; } }
  .item-services__title {
    flex-grow: 1;
    font-weight: 400;
    font-size: 27px;
    line-height: 119%;
    color: #fff; }
  @media (max-width: 480px) {
    .item-services__title {
      font-size: 20px; } }
  .item-services__text {
    font-weight: 300;
    font-size: 19px;
    line-height: 132%;
    color: #a6b6dd; }
  @media (max-width: 480px) {
    .item-services__text {
      font-size: 16px; } }

.itemservices-hover {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 40px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  opacity: 1;
  transition: 0.5s; }
  @media (max-width: 480px) {
  .itemservices-hover {
    padding: 20px; } }
  .itemservices-hover__image {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
  .itemservices-hover__image::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(28, 21, 21, 0) 0%, #1c1515 100%); }
  .itemservices-hover__image img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .itemservices-hover__bottom {
    display: flex;
    align-items: center;
    column-gap: 20px;
    position: relative;
    z-index: 1; }
  .itemservices-hover__title {
    font-weight: 400;
    font-size: 27px;
    line-height: 119%;
    color: #fff; }
  @media (max-width: 480px) {
    .itemservices-hover__title {
      font-size: 20px; } }
  .itemservices-hover__arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(9px);
    width: 31px;
    height: 31px;
    flex-shrink: 0; }
  .itemservices-hover__arrow::before {
    content: "";
    position: absolute;
    inset: 0;
    /* Растягиваем на всю кнопку */
    border-radius: 50px;
    padding: 2px;
    /* ТОЛЩИНА ВАШЕГО БОРДЕРА-БЛИКА */
    /* Магия: рисуем градиентный круг, который будет вращаться */
    background: conic-gradient(from var(--angle), transparent 70%, #fff 90%, transparent 100%);
    /* Маскируем внутреннюю часть, чтобы остался только ободок */
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    /* Запуск анимации */
    animation: rotate-angle 3s linear infinite; }

.history {
  height: 100vh;
  position: relative;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 70px 0; }
  @media (max-width: 767px) {
  .history {
    height: auto;
    padding: 60px 0; } }
  .history::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(179deg, #02092f 0%, rgba(13, 38, 102, 0) 100%);
    transform: rotate(180deg); }
  .history__container {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
    z-index: 1; }
  .history__title {
    font-weight: 400;
    font-size: 42px;
    line-height: 129%;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 40px; }
  @media (max-width: 480px) {
    .history__title {
      font-size: 26px;
      margin-bottom: 20px; } }
  .history__text {
    font-weight: 400;
    font-size: 22px;
    line-height: 168%;
    color: #f2f2f2;
    max-width: 644px;
    margin-bottom: 35px;
    display: flex;
    flex-direction: column;
    row-gap: 10px; }
  @media (max-width: 480px) {
    .history__text {
      font-size: 14px;
      margin-bottom: 20px; } }
  .history__text.history__text-17 {
    font-size: 17px; }
  @media (max-width: 480px) {
      .history__text.history__text-17 {
        font-size: 14px; } }
  .history__video {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .history__bottom {
    max-width: 486px;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    font-weight: 400;
    font-size: 17px;
    line-height: 141%;
    color: #ccc;
    margin-top: 50px; }
  @media (max-width: 480px) {
    .history__bottom {
      font-size: 14px;
      margin-top: 30px; } }
  .history__bottom::before {
    content: "";
    display: block;
    width: 17px;
    height: 1px;
    background-color: #fff;
    margin-bottom: 18px; }
  @media (max-width: 480px) {
      .history__bottom::before {
        margin-bottom: 10px; } }

.alg__items {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
  align-items: start; }
  @media (max-width: 1200px) {
    .alg__items {
      grid-template-columns: 1fr; } }
  .alg__item:first-child, .alg__item:last-child {
    margin-top: 70px; }
  @media (max-width: 1200px) {
      .alg__item:first-child, .alg__item:last-child {
        margin-top: 0; } }
  .alg__title {
    font-weight: 400;
    font-size: 42px;
    line-height: 129%;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    margin-bottom: 70px; }
  @media (max-width: 1200px) {
    .alg__title {
      margin-bottom: 20px; } }
  @media (max-width: 480px) {
    .alg__title {
      font-size: 26px; } }

.item-alg {
  padding: 65px 55px;
  background: #001955;
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media (max-width: 480px) {
  .item-alg {
    padding: 20px; } }
  .item-alg__icon {
    margin-bottom: 30px;
    position: relative; }
  @media (max-width: 480px) {
    .item-alg__icon {
      margin-bottom: 20px; } }
  .item-alg__icon::after {
    content: "";
    display: block;
    border-radius: 14913100px;
    width: 100px;
    height: 100px;
    filter: blur(50px);
    background: #557adb;
    opacity: 0.6;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%); }
  .item-alg__title {
    font-weight: 400;
    font-size: 22px;
    line-height: 145%;
    text-align: center;
    color: #fff;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .item-alg__title {
      font-size: 18px;
      margin-bottom: 15px; } }
  .item-alg__text {
    font-weight: 300;
    font-size: 17px;
    line-height: 147%;
    text-align: center;
    color: #a6b6dd; }
  @media (max-width: 480px) {
    .item-alg__text {
      font-size: 14px; } }

.team__title {
  font-weight: 400;
  font-size: 42px;
  line-height: 129%;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  margin-bottom: 50px; }
  @media (max-width: 480px) {
    .team__title {
      font-size: 26px;
      margin-bottom: 20px; } }
  .team__prev, .team__next {
    width: 41px;
    height: 41px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(9px);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    transition: 0.5s; }
  .team__prev:hover, .team__next:hover {
    transform: scale(1.1); }
  .team__prev::before, .team__next::before {
    content: "";
    position: absolute;
    inset: 0;
    /* Растягиваем на всю кнопку */
    border-radius: 50%;
    padding: 2px;
    /* ТОЛЩИНА ВАШЕГО БОРДЕРА-БЛИКА */
    /* Магия: рисуем градиентный круг, который будет вращаться */
    background: conic-gradient(from var(--angle), transparent 70%, #fff 90%, transparent 100%);
    /* Маскируем внутреннюю часть, чтобы остался только ободок */
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    /* Запуск анимации */
    animation: rotate-angle 3s linear infinite; }
  .team__next::before {
    animation: rotate-angle2 3s linear infinite; }
  .team .swiper-slide {
    height: auto; }

.item-team {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 20px;
  height: 100%; }
  @media (max-width: 992px) {
  .item-team {
    grid-template-columns: 1fr; } }
  .item-team__image {
    position: relative;
    display: block;
    padding-bottom: 110%;
    overflow: hidden; }
  @media (max-width: 992px) {
    .item-team__image {
      max-width: 500px; } }
  .item-team__image img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top; }
  .item-team__content {
    padding: 60px;
    background: rgba(20, 48, 118, 0.2);
    display: flex;
    flex-direction: column; }
  @media (max-width: 480px) {
    .item-team__content {
      padding: 30px 20px; } }
  .item-team__title {
    font-weight: 400;
    font-size: 36px;
    line-height: 100%;
    color: #fff;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .item-team__title {
      font-size: 26px;
      margin-bottom: 15px; } }
  .item-team__subtitle {
    font-weight: 300;
    font-size: 17px;
    line-height: 147%;
    color: #fff;
    margin-bottom: 50px; }
  @media (max-width: 480px) {
    .item-team__subtitle {
      font-size: 14px;
      margin-bottom: 20px; } }
  .item-team__items {
    display: flex;
    column-gap: 60px;
    row-gap: 30px;
    flex-wrap: wrap;
    margin-bottom: 50px; }
  @media (max-width: 480px) {
    .item-team__items {
      column-gap: 20px;
      row-gap: 20px;
      margin-bottom: 20px; } }
  .item-team__item-title {
    font-weight: 300;
    font-size: 47px;
    line-height: 138%;
    letter-spacing: 0.06em;
    color: #fff;
    margin-bottom: 15px; }
  @media (max-width: 480px) {
    .item-team__item-title {
      font-size: 22px;
      margin-bottom: 10px; } }
  .item-team__item-text {
    font-weight: 300;
    font-size: 19px;
    line-height: 132%;
    color: #a6b6dd; }
  @media (max-width: 480px) {
    .item-team__item-text {
      font-size: 14px; } }
  .item-team__text-title {
    font-weight: 300;
    font-size: 17px;
    line-height: 147%;
    color: #fff;
    margin-bottom: 15px; }
  @media (max-width: 480px) {
    .item-team__text-title {
      font-size: 14px; } }
  .item-team__text {
    flex-grow: 1;
    font-weight: 300;
    font-size: 17px;
    line-height: 147%;
    color: #a6b6dd;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    height: 258px;
    overflow-y: auto; }
  .item-team__text::-webkit-scrollbar {
    width: 4px; }
  .item-team__text::-webkit-scrollbar-track {
    background: #fff; }
  .item-team__text::-webkit-scrollbar-thumb {
    background: #95d2ed; }
  @media (max-width: 480px) {
    .item-team__text {
      font-size: 14px; } }
  .item-team__arrows {
    margin-top: 40px;
    display: flex;
    column-gap: 8px; }
  @media (max-width: 480px) {
    .item-team__arrows {
      margin-top: 20px; } }
  .item-team__arrow {
    cursor: pointer;
    transition: 0.5s; }
  .item-team__arrow.swiper-button-disabled {
    opacity: 0.5; }

.reviews__title {
  font-weight: 400;
  font-size: 42px;
  line-height: 129%;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  margin-bottom: 50px; }
  @media (max-width: 480px) {
    .reviews__title {
      font-size: 26px;
      margin-bottom: 20px; } }
  .item-reviews {
    padding: 50px 30px 30px;
    background: rgba(20, 48, 118, 0.3); }
  @media (max-width: 480px) {
  .item-reviews {
    padding: 30px 20px 20px; } }
  .item-reviews__icon {
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
    width: 76px;
    height: 76px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(9px); }
  @media (max-width: 480px) {
    .item-reviews__icon {
      margin-bottom: 20px; } }
  .item-reviews__icon::before {
    content: "";
    position: absolute;
    inset: 0;
    /* Растягиваем на всю кнопку */
    border-radius: 50%;
    padding: 2px;
    /* ТОЛЩИНА ВАШЕГО БОРДЕРА-БЛИКА */
    /* Магия: рисуем градиентный круг, который будет вращаться */
    background: conic-gradient(from var(--angle), transparent 70%, #fff 90%, transparent 100%);
    /* Маскируем внутреннюю часть, чтобы остался только ободок */
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    /* Запуск анимации */
    animation: rotate-angle 3s linear infinite; }
  .item-reviews__text {
    font-weight: 300;
    font-size: 16px;
    line-height: 156%;
    color: #a6b6dd;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    margin-bottom: 30px;
    max-height: 300px;
    overflow-y: auto; }
  @media (max-width: 480px) {
    .item-reviews__text {
      font-size: 14px;
      margin-bottom: 20px; } }
  .item-reviews__text::-webkit-scrollbar {
    width: 2px; }
  .item-reviews__text::-webkit-scrollbar-track {
    background: #f1f1f1; }
  .item-reviews__text::-webkit-scrollbar-thumb {
    background: #95d2ed; }
  .item-reviews__name {
    font-weight: 300;
    font-size: 18px;
    line-height: 145%;
    color: #fff;
    margin-bottom: 10px; }
  @media (max-width: 480px) {
    .item-reviews__name {
      font-size: 18px; } }
  .item-reviews__subtitle {
    font-weight: 300;
    font-size: 16px;
    line-height: 144%;
    color: #a6b6dd; }
  @media (max-width: 480px) {
    .item-reviews__subtitle {
      font-size: 14px; } }

.swiper-pagination-bullets {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 40px;
  column-gap: 10px;
  flex-wrap: wrap;
  row-gap: 15px; }
  .swiper-pagination-bullets.swiper-pagination-lock {
    display: none; }
  .swiper-pagination-bullets .swiper-pagination-bullet {
    background-color: #95d2ed;
    transition: 0.5s;
    width: 12px !important;
    height: 12px !important; }

.projects__top {
  display: flex;
  align-items: start;
  justify-content: space-between;
  column-gap: 180px;
  margin-bottom: 70px; }
  @media (max-width: 992px) {
    .projects__top {
      flex-direction: column;
      row-gap: 15px;
      align-items: center; } }
  @media (max-width: 480px) {
    .projects__top {
      margin-bottom: 20px; } }
  .projects__subtitle {
    font-weight: 400;
    font-size: 19px;
    line-height: 142%;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #8b9bc2;
    white-space: nowrap; }
  @media (max-width: 992px) {
    .projects__subtitle {
      font-size: 16px;
      text-align: center; } }
  .projects__title {
    font-weight: 400;
    font-size: 42px;
    line-height: 129%;
    color: #fff;
    max-width: 880px; }
  @media (max-width: 992px) {
    .projects__title {
      font-size: 26px;
      text-align: center; } }
  .projects__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 75px; }
  @media (max-width: 1200px) {
    .projects__items {
      gap: 20px; } }
  @media (max-width: 992px) {
    .projects__items {
      grid-template-columns: 1fr 1fr; } }
  @media (max-width: 700px) {
    .projects__items {
      grid-template-columns: 1fr;
      gap: 15px; } }
  .item-projects {
    position: relative;
    height: 440px;
    padding: 40px 20px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    cursor: pointer; }
  @media (max-width: 480px) {
  .item-projects {
    padding: 30px 20px;
    height: 350px; } }
  .item-projects:hover .project-hover {
    opacity: 1; }
  .item-projects:hover .item-projects__title, .item-projects:hover .item-projects__subtitle {
    opacity: 0; }
  .item-projects__image {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
  .item-projects__image::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(28, 21, 21, 0) 0%, #000 100%); }
  .item-projects__image img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .item-projects__title {
    font-weight: 500;
    font-size: 24px;
    line-height: 133%;
    text-align: center;
    color: #fff;
    position: relative;
    z-index: 1;
    transition: 0.5s;
    margin-bottom: 15px; }
  @media (max-width: 480px) {
    .item-projects__title {
      font-size: 20px; } }
  .item-projects__subtitle {
    font-weight: 400;
    font-size: 16px;
    line-height: 138%;
    text-align: center;
    color: #fff;
    z-index: 1;
    transition: 0.5s; }

.project-hover {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 40px 20px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  backdrop-filter: blur(34px);
  background: rgba(1, 1, 1, 0.3);
  opacity: 0;
  transition: 0.5s; }
  .project-hover__subtitle {
    font-weight: 400;
    font-size: 16px;
    line-height: 120%;
    text-align: center;
    color: #fff;
    position: relative;
    z-index: 1;
    margin-bottom: 30px; }
  .project-hover__title {
    font-weight: 500;
    font-size: 24px;
    line-height: 133%;
    text-align: center;
    color: #fff;
    position: relative;
    z-index: 1;
    margin-bottom: 15px; }
  .project-hover__icon {
    position: relative;
    overflow: hidden;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(9px); }
  .project-hover__icon::before {
    content: "";
    position: absolute;
    inset: 0;
    /* Растягиваем на всю кнопку */
    border-radius: 50%;
    padding: 2px;
    /* ТОЛЩИНА ВАШЕГО БОРДЕРА-БЛИКА */
    /* Магия: рисуем градиентный круг, который будет вращаться */
    background: conic-gradient(from var(--angle), transparent 70%, #fff 90%, transparent 100%);
    /* Маскируем внутреннюю часть, чтобы остался только ободок */
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    /* Запуск анимации */
    animation: rotate-angle 3s linear infinite; }

.projects-bottom {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 60px; }
  @media (max-width: 480px) {
  .projects-bottom {
    margin-top: 30px; } }
  .projects-bottom__title {
    font-weight: 400;
    font-size: 24px;
    line-height: 108%;
    text-align: center;
    color: #a6b6dd; }
  @media (max-width: 480px) {
    .projects-bottom__title {
      font-size: 18px; } }
  .projects-bottom__button {
    font-weight: 400;
    font-size: 31px;
    line-height: 100%;
    text-align: center;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 80px 134px;
    border-radius: 133px;
    background: #143076;
    margin: 60px 0;
    transition: 0.5s;
    cursor: pointer; }
  @media (max-width: 480px) {
    .projects-bottom__button {
      font-size: 18px;
      padding: 20px 40px;
      margin: 30px 0; } }
  .projects-bottom__button:hover {
    box-shadow: 0 0 20px #143076; }
  .projects-bottom__scroll {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 10px; }
  .projects-bottom__scroll span {
    font-weight: 400;
    font-size: 16px;
    line-height: 120%;
    text-align: center;
    color: #a6b6dd; }
  @media (max-width: 480px) {
      .projects-bottom__scroll span {
        font-size: 14px; } }

.footer {
  padding: 40px 0;
  position: relative;
  background: linear-gradient(178deg, rgba(20, 48, 118, 0.3) 0%, rgba(5, 10, 22, 0.7) 100%); }
  .footer::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: -2px;
    right: 0;
    height: 2px;
    background-color: #101930; }
  .footer__image {
    position: absolute;
    display: none;
    left: 0;
    top: 0;
    transform: translateY(-100%);
    width: 70%;
    opacity: 0.1; }
  .footer__image img {
    max-width: 100%;
    width: 100%; }
  .footer__container {
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 1; }
  .footer__arrow {
    align-self: center;
    margin-bottom: 40px;
    transition: 0.5s; }
  @media (max-width: 480px) {
    .footer__arrow {
      margin-bottom: 50px; } }
  .footer__arrow:hover {
    transform: scale(1.1); }
  .footer__nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 32px;
    margin-bottom: 32px;
    border-bottom: 1px solid #333; }
  @media (max-width: 992px) {
    .footer__nav {
      flex-direction: column;
      row-gap: 20px; } }
  @media (max-width: 480px) {
    .footer__nav {
      padding-bottom: 20px;
      margin-bottom: 20px;
      justify-content: center;
      align-items: center; } }
  .footer__socials {
    display: flex;
    column-gap: 20px; }
  @media (max-width: 480px) {
    .footer__socials {
      column-gap: 10px; } }
  .footer__social {
    cursor: pointer;
    transition: 0.5s; }
  .footer__social:hover {
    transform: scale(1.1); }
  @media (max-width: 480px) {
      .footer__social svg {
        width: 50px;
        height: 50px; } }
  .footer__nav-item {
    font-weight: 400;
    font-size: 70px;
    line-height: 114%;
    letter-spacing: 0.1em;
    color: #fff;
    text-transform: uppercase;
    transition: 0.5s; }
  .footer__nav-item:hover {
    color: #95d2ed; }
  @media (max-width: 480px) {
    .footer__nav-item {
      font-size: 30px; } }
  .footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between; }
  @media (max-width: 1200px) {
    .footer__bottom {
      flex-direction: column-reverse;
      align-items: center;
      row-gap: 20px; } }
  @media (max-width: 480px) {
    .footer__bottom {
      row-gap: 15px; } }
  .footer__abc {
    display: flex;
    align-items: center;
    gap: 5px;
    flex-wrap: wrap; }
  @media (max-width: 480px) {
    .footer__abc {
      justify-content: center; } }
  .footer__abc span {
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    color: #fff; }
  @media (max-width: 480px) {
      .footer__abc span {
        font-size: 14px; } }
  .footer__abc a {
    display: flex;
    align-items: center;
    justify-content: center; }
  .footer__right {
    display: flex;
    align-items: center;
    column-gap: 50px; }
  @media (max-width: 480px) {
    .footer__right {
      column-gap: 20px;
      justify-content: center; } }
  .footer__right-item {
    font-weight: 400;
    font-size: 20px;
    line-height: 130%;
    color: #fff;
    transition: 0.5s;
    transition: 0.5s; }
  .footer__right-item:hover {
    color: #95d2ed; }
  @media (max-width: 480px) {
    .footer__right-item {
      font-size: 14px; } }

.breadcrumbs {
  margin-bottom: 50px;
  margin-top: 0; }
  @media (max-width: 480px) {
  .breadcrumbs {
    margin-bottom: 30px; } }
  .breadcrumbs__items {
    display: flex;
    align-items: center;
    column-gap: 40px;
    flex-wrap: wrap;
    row-gap: 10px; }
  .breadcrumbs__item {
    font-weight: 300;
    font-size: 13px;
    color: #a6b6dd;
    line-height: 1.2;
    position: relative; }
  .breadcrumbs__item:not(:last-child)::after {
    content: "/";
    display: block;
    position: absolute;
    right: -20px;
    top: 0;
    font-weight: 300;
    font-size: 13px;
    color: #a6b6dd;
    line-height: 1.2; }

.start-top {
  padding-top: 140px;
  margin-top: 0; }
  @media (max-width: 480px) {
  .start-top {
    padding-top: 100px; } }

.about__body {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 20px; }
  @media (max-width: 992px) {
    .about__body {
      grid-template-columns: 1fr; } }
  @media (max-width: 992px) {
    .about__image {
      max-width: 500px; } }
  .about__image img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .about__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 80px;
    background: rgba(20, 48, 118, 0.2); }
  @media (max-width: 992px) {
    .about__content {
      padding: 50px; } }
  @media (max-width: 480px) {
    .about__content {
      padding: 30px 20px; } }
  .about__title {
    font-weight: 400;
    font-size: 42px;
    line-height: 129%;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 30px; }
  @media (max-width: 480px) {
    .about__title {
      font-size: 26px;
      margin-bottom: 15px; } }
  .about__text {
    font-weight: 400;
    font-size: 19px;
    line-height: 137%;
    color: #ccd3e5;
    display: flex;
    flex-direction: column;
    row-gap: 10px; }
  @media (max-width: 480px) {
    .about__text {
      font-size: 14px; } }

.alg-item .item-alg {
  padding: 65px 45px; }
  @media (max-width: 480px) {
    .alg-item .item-alg {
      padding: 30px 20px; } }

.comp__top {
  display: flex;
  align-items: start;
  justify-content: space-between;
  column-gap: 180px;
  margin-bottom: 70px; }
  @media (max-width: 992px) {
    .comp__top {
      flex-direction: column;
      align-items: center;
      row-gap: 15px; } }
  @media (max-width: 480px) {
    .comp__top {
      margin-bottom: 20px; } }
  .comp__subtitle {
    font-weight: 400;
    font-size: 19px;
    line-height: 142%;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #8b9bc2;
    white-space: nowrap; }
  @media (max-width: 992px) {
    .comp__subtitle {
      font-size: 16px;
      text-align: center; } }
  .comp__title {
    font-weight: 400;
    font-size: 42px;
    line-height: 129%;
    color: #fff; }
  @media (max-width: 992px) {
    .comp__title {
      font-size: 26px;
      text-align: center; } }
  .comp__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 77px; }
  @media (max-width: 1200px) {
    .comp__items {
      gap: 30px; } }
  @media (max-width: 992px) {
    .comp__items {
      grid-template-columns: 1fr 1fr; } }
  @media (max-width: 650px) {
    .comp__items {
      grid-template-columns: 1fr;
      gap: 20px; } }
  .item-comp__image {
    margin-bottom: 30px; }
  @media (max-width: 480px) {
    .item-comp__image {
      margin-bottom: 20px; } }
  .item-comp__image img {
    width: 100%; }
  .item-comp__title {
    font-weight: 400;
    font-size: 26px;
    line-height: 138%;
    color: #fff;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .item-comp__title {
      font-size: 20px;
      margin-bottom: 15px; } }
  .item-comp__text {
    font-weight: 400;
    font-size: 14px;
    line-height: 179%;
    color: #8b9bc2; }
  @media (max-width: 480px) {
    .item-comp__text {
      line-height: 1.3; } }

.unique__title {
  font-weight: 400;
  font-size: 42px;
  line-height: 129%;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  margin-bottom: 50px; }
  @media (max-width: 480px) {
    .unique__title {
      font-size: 26px;
      margin-bottom: 20px; } }
  .unique__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px; }
  @media (max-width: 992px) {
    .unique__items {
      grid-template-columns: 1fr 1fr; } }
  @media (max-width: 650px) {
    .unique__items {
      grid-template-columns: 1fr;
      gap: 15px; } }
  .item-unique {
    padding: 40px;
    background: #143076;
    position: relative;
    display: flex;
    flex-direction: column; }
  @media (max-width: 480px) {
  .item-unique {
    padding: 30px 20px; } }
  .item-unique:hover .unique-hover {
    opacity: 1; }
  .item-unique__number {
    font-weight: 300;
    font-size: 27px;
    line-height: 120%;
    letter-spacing: 0.06em;
    color: #6986d0;
    margin-bottom: 80px;
    flex-grow: 1; }
  @media (max-width: 480px) {
    .item-unique__number {
      font-size: 20px;
      margin-bottom: 40px; } }
  .item-unique__title {
    font-weight: 500;
    font-size: 23px;
    line-height: 139%;
    color: #fff;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .item-unique__title {
      font-size: 20px;
      margin-bottom: 15px; } }
  .item-unique__text {
    font-weight: 400;
    font-size: 19px;
    line-height: 142%;
    color: #a6b6dd; }
  @media (max-width: 480px) {
    .item-unique__text {
      font-size: 14px; } }

.unique-hover {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 40px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  opacity: 0;
  transition: 0.5s; }
  .unique-hover__image {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
  .unique-hover__image::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(28, 21, 21, 0) 0%, rgba(28, 21, 21, 0.58) 17.89%, rgba(28, 21, 21, 0.82) 42.35%, #1c1515 100%); }
  .unique-hover__image img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .unique-hover__title {
    font-weight: 500;
    font-size: 23px;
    line-height: 139%;
    color: #fff;
    margin-bottom: 20px;
    position: relative;
    z-index: 1; }
  .unique-hover__text {
    font-weight: 400;
    font-size: 19px;
    line-height: 142%;
    color: #fff;
    position: relative;
    z-index: 1; }

.history-sad::after {
  background: linear-gradient(179deg, #02092f 0%, rgba(13, 38, 102, 0) 100%); }
  @media (max-width: 480px) {
    .history-sad::after {
      background: #001955;
      opacity: 0.8; } }

.licences__title {
  font-weight: 400;
  font-size: 42px;
  line-height: 129%;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  margin-bottom: 50px; }
  @media (max-width: 480px) {
    .licences__title {
      font-size: 26px;
      margin-bottom: 20px; } }
  .licences__item {
    position: relative;
    display: block;
    padding-bottom: 144%;
    overflow: hidden;
    border: 5px solid #2145a4; }
  .licences__item:hover img {
    transform: scale(1.1); }
  .licences__item img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.5s; }
  .clients__title {
    font-weight: 400;
    font-size: 42px;
    line-height: 129%;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    margin-bottom: 50px; }
  @media (max-width: 480px) {
    .clients__title {
      font-size: 26px;
      margin-bottom: 20px; } }
  .clients__item {
    border: 1px solid #414265;
    height: 118px;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center; }
  .clients__item img {
    max-width: 100%;
    max-height: 100%; }
  .vac__title {
    font-weight: 400;
    font-size: 40px;
    line-height: 125%;
    color: #fff;
    margin-bottom: 50px; }
  @media (max-width: 480px) {
    .vac__title {
      font-size: 26px;
      margin-bottom: 20px; } }
  .vac__body {
    display: grid;
    grid-template-columns: 1fr 360px;
    column-gap: 100px;
    align-items: start; }
  @media (max-width: 1200px) {
    .vac__body {
      grid-template-columns: 1fr;
      row-gap: 20px; } }
  .vac__items {
    display: flex;
    flex-direction: column;
    row-gap: 20px; }
  .item-vac {
    background: rgba(255, 255, 255, 0.07);
    transition: 0.5s !important;
    border: 1px solid transparent; }
  .item-vac:hover {
    border-color: #fff; }
  .item-vac__top {
    display: flex;
    align-items: start;
    justify-content: space-between;
    cursor: pointer;
    padding: 40px;
    column-gap: 20px; }
  @media (max-width: 767px) {
    .item-vac__top {
      flex-direction: column;
      row-gap: 20px; } }
  @media (max-width: 480px) {
    .item-vac__top {
      padding: 20px; } }
  .item-vac__title {
    font-weight: 400;
    font-size: 24px;
    line-height: 120%;
    color: #fff;
    margin-bottom: 10px; }
  @media (max-width: 480px) {
    .item-vac__title {
      font-size: 20px; } }
  .item-vac__text {
    font-weight: 400;
    font-size: 16px;
    line-height: 120%;
    color: #ccd3e5; }
  @media (max-width: 480px) {
    .item-vac__text {
      font-size: 14px; } }
  .item-vac__right {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 400;
    font-size: 16px;
    line-height: 120%;
    text-align: center;
    color: #fff;
    padding: 10px 20px;
    border-radius: 10px;
    background: #555;
    position: relative;
    overflow: hidden;
    position: relative;
    overflow: hidden; }
  .item-vac__right::before {
    content: "";
    position: absolute;
    inset: 0;
    /* Растягиваем на всю кнопку */
    border-radius: 10px;
    padding: 1px;
    /* ТОЛЩИНА ВАШЕГО БОРДЕРА-БЛИКА */
    /* Магия: рисуем градиентный круг, который будет вращаться */
    background: conic-gradient(from var(--angle), transparent 70%, #fff 90%, transparent 100%);
    /* Маскируем внутреннюю часть, чтобы остался только ободок */
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    /* Запуск анимации */
    animation: rotate-angle 3s linear infinite; }
  @media (max-width: 480px) {
    .item-vac__right {
      font-size: 14px; } }
  .item-vac__hidden {
    display: none; }
  .item-vac__items {
    border-top: 1px solid #d9d9d9;
    display: flex;
    flex-direction: column;
    row-gap: 30px;
    padding: 40px; }
  @media (max-width: 480px) {
    .item-vac__items {
      padding: 20px;
      row-gap: 20px; } }
  .item-vac__item-title {
    font-weight: 400;
    font-size: 20px;
    line-height: 120%;
    color: #fff;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .item-vac__item-title {
      font-size: 16px; } }
  .item-vac__item-text {
    font-weight: 400;
    font-size: 16px;
    line-height: 175%;
    color: #ccd3e5;
    display: flex;
    flex-direction: column;
    row-gap: 10px; }
  @media (max-width: 480px) {
    .item-vac__item-text {
      font-size: 14px; } }

.vac-form {
  padding: 40px 30px;
  background: rgba(255, 255, 255, 0.07); }
  @media (max-width: 480px) {
  .vac-form {
    padding: 30px 20px; } }
  .vac-form__title {
    font-weight: 400;
    font-size: 33px;
    line-height: 120%;
    text-align: center;
    color: #fff;
    margin-bottom: 30px; }
  @media (max-width: 480px) {
    .vac-form__title {
      font-size: 22px;
      margin-bottom: 20px; } }
  .vac-form__inputs {
    display: flex;
    flex-direction: column;
    row-gap: 15px; }
  .vac-form__input {
    position: relative;
    overflow: hidden; }
  .vac-form__input:nth-of-type(even)::before {
    animation: rotate-angle2 3s linear infinite; }
  .vac-form__input::before {
    content: "";
    position: absolute;
    inset: 0;
    /* Растягиваем на всю кнопку */
    border-radius: 10px;
    padding: 2px;
    /* ТОЛЩИНА ВАШЕГО БОРДЕРА-БЛИКА */
    /* Магия: рисуем градиентный круг, который будет вращаться */
    background: conic-gradient(from var(--angle), transparent 70%, #fff 90%, transparent 100%);
    /* Маскируем внутреннюю часть, чтобы остался только ободок */
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    /* Запуск анимации */
    animation: rotate-angle 3s linear infinite; }
  .vac-form__input input {
    font-weight: 400;
    font-size: 18px;
    line-height: 133%;
    color: #fff;
    width: 100%;
    padding: 20px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.2);
    position: relative;
    z-index: 1; }
  @media (max-width: 480px) {
      .vac-form__input input {
        font-size: 15px;
        padding: 14px; } }
  .vac-form__input input::placeholder {
    color: #fff; }
  .vac-form__button {
    width: 100%;
    margin-top: 23px; }
  @media (max-width: 480px) {
    .vac-form__button {
      margin-top: 18px; } }

.news__title {
  font-weight: 400;
  font-size: 40px;
  line-height: 125%;
  color: #fff;
  padding-bottom: 18px;
  margin-bottom: 40px;
  border-bottom: 1px solid #3d4454; }
  @media (max-width: 480px) {
    .news__title {
      font-size: 26px;
      margin-bottom: 20px;
      padding-bottom: 15px; } }
  .news__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px; }
  @media (max-width: 992px) {
    .news__items {
      grid-template-columns: 1fr 1fr; } }
  @media (max-width: 600px) {
    .news__items {
      gap: 15px; } }
  .item-news {
    position: relative;
    display: block;
    cursor: pointer; }
  .item-news:hover .item-news__content {
    opacity: 1; }
  .item-news__image {
    position: relative;
    display: block;
    padding-bottom: 95%;
    overflow: hidden; }
  .item-news__image img {
    position: absolute;
    left: -1px;
    top: -1px;
    right: -1px;
    bottom: -1px;
    object-fit: cover;
    width: 100%;
    height: 100%; }
  .item-news__content {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 20px 30px 40px;
    transition: 0.5s;
    opacity: 0; }
  .item-news__content::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(19, 43, 106, 0.7); }
  .item-news__icon {
    position: relative;
    z-index: 1;
    flex-grow: 1;
    align-self: flex-end;
    margin-right: -10px; }
  .item-news__text {
    position: relative;
    z-index: 1;
    font-weight: 400;
    font-size: 16px;
    line-height: 138%;
    color: #fff;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    margin-bottom: 20px; }
  .item-news__items {
    position: relative;
    z-index: 1;
    display: flex;
    row-gap: 10px;
    column-gap: 30px;
    flex-wrap: wrap; }
  .item-news__item {
    font-weight: 400;
    font-size: 16px;
    line-height: 138%;
    color: #ccd3e5; }

.contacts__body {
  display: grid;
  grid-template-columns: 1fr 372px;
  gap: 60px; }
  @media (max-width: 992px) {
    .contacts__body {
      grid-template-columns: 1fr 320px;
      gap: 20px; } }
  @media (max-width: 767px) {
    .contacts__body {
      display: flex;
      flex-direction: column-reverse; } }
  @media (max-width: 767px) {
    .contacts__map {
      height: 380px; } }
  .contacts__map iframe, .contacts__map div {
    width: 100%;
    height: 100%; }
  .contacts__content {
    padding: 40px;
    backdrop-filter: blur(14px);
    background: #143076;
    overflow: hidden; }
  @media (max-width: 480px) {
    .contacts__content {
      padding: 20px; } }
  .contacts__title {
    backdrop-filter: blur(14px);
    margin-bottom: 60px;
    position: relative;
    font-weight: 200;
    font-size: 26px;
    color: #fff;
    line-height: 1.2; }
  @media (max-width: 480px) {
    .contacts__title {
      font-size: 20px;
      margin-bottom: 40px; } }
  .contacts__title::after {
    content: "";
    display: block;
    position: absolute;
    left: -40px;
    right: -40px;
    bottom: -30px;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.1); }
  @media (max-width: 480px) {
      .contacts__title::after {
        bottom: -20px; } }
  .contacts__items {
    display: flex;
    flex-direction: column;
    row-gap: 30px;
    margin-bottom: 60px;
    position: relative; }
  @media (max-width: 480px) {
    .contacts__items {
      row-gap: 20px;
      margin-bottom: 40px; } }
  .contacts__items::after {
    content: "";
    display: block;
    position: absolute;
    left: -40px;
    right: -40px;
    bottom: -30px;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.1); }
  @media (max-width: 480px) {
      .contacts__items::after {
        bottom: -20px; } }
  .contacts__item {
    font-weight: 400;
    font-size: 17px;
    line-height: 118%;
    color: #fff;
    transition: 0.5s; }
  @media (max-width: 480px) {
    .contacts__item {
      font-size: 14px; } }
  .contacts__socials {
    display: flex;
    align-items: center;
    column-gap: 7px; }
  .contacts__social {
    cursor: pointer;
    position: relative;
    overflow: hidden;
    border-radius: 100%;
    background-color: rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(4px);
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.5s; }
  .contacts__social:hover {
    transform: scale(1.1); }
  .contacts__social:nth-of-type(even)::before {
    animation: rotate-angle2 3s linear infinite; }
  .contacts__social::before {
    content: "";
    position: absolute;
    inset: 0;
    /* Растягиваем на всю кнопку */
    border-radius: 50%;
    padding: 2px;
    /* ТОЛЩИНА ВАШЕГО БОРДЕРА-БЛИКА */
    /* Магия: рисуем градиентный круг, который будет вращаться */
    background: conic-gradient(from var(--angle), transparent 70%, #fff 90%, transparent 100%);
    /* Маскируем внутреннюю часть, чтобы остался только ободок */
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    /* Запуск анимации */
    animation: rotate-angle 3s linear infinite; }
  @media (max-width: 480px) {
      .contacts__social svg {
        width: 35px;
        height: 35px; } }

.advantages.gal .advantages__item-image:hover img {
  transform: scale(1.1); }
  .advantages__title {
    font-weight: 400;
    font-size: 42px;
    line-height: 129%;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    margin-bottom: 50px; }
  @media (max-width: 480px) {
    .advantages__title {
      font-size: 26px;
      margin-bottom: 20px; } }
  .advantages__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 77px; }
  @media (max-width: 1200px) {
    .advantages__items {
      gap: 32px; } }
  @media (max-width: 992px) {
    .advantages__items {
      grid-template-columns: 1fr 1fr; } }
  @media (max-width: 650px) {
    .advantages__items {
      grid-template-columns: 1fr;
      gap: 20px; } }
  .advantages__item-image {
    position: relative;
    display: block;
    padding-bottom: 60%;
    overflow: hidden;
    margin-bottom: 40px; }
  @media (max-width: 480px) {
    .advantages__item-image {
      margin-bottom: 15px; } }
  .advantages__item-image img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.5s; }
  .advantages__item-title {
    font-weight: 400;
    font-size: 22px;
    line-height: 141%;
    color: #fff; }
  @media (max-width: 480px) {
    .advantages__item-title {
      font-size: 18px; } }

.header-hover {
  position: relative;
  overflow: hidden; }
  .header-hover:hover {
    overflow: visible; }
  .header-hover:hover .header-hover__title {
    color: #95d2ed; }
  .header-hover:hover .header-hover__title svg {
    transform: rotate(180deg); }
  .header-hover:hover .header-hover__hidden {
    opacity: 1; }
  .header-hover__title {
    font-weight: 400;
    font-size: 17px;
    text-align: center;
    color: #fff;
    line-height: 1.2;
    transition: 0.5s;
    cursor: pointer;
    display: flex;
    align-items: center;
    column-gap: 7px; }
  .header-hover__title svg {
    margin-top: 2px;
    transition: 0.5s; }
  .header-hover__hidden {
    position: absolute;
    left: -20px;
    width: 250px;
    bottom: 0;
    transform: translateY(100%);
    transition: 0.6s;
    opacity: 0; }
  .header-hover__items {
    margin-top: 15px;
    padding: 15px;
    border-radius: 10px;
    background-color: #090f1e;
    border: 1px solid #414265;
    display: flex;
    flex-direction: column;
    row-gap: 10px; }
  .header-hover__item {
    font-weight: 400;
    font-size: 15px;
    line-height: 1.2;
    color: #fff;
    transition: 0.5s; }
  .header-hover__item:hover {
    color: #95d2ed; }

.menu {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 99;
  background-color: #090f1e;
  padding: 30px 30px 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  overflow-y: auto;
  row-gap: 50px;
  transition: 0.8s;
  transform: translateX(-100%); }
  .menu.active {
    transform: translateX(0); }
  .menu__close {
    color: #fff;
    position: absolute;
    right: 20px;
    top: 15px;
    font-size: 50px; }
  @media (max-width: 480px) {
    .menu__close {
      font-size: 40px;
      right: 15px;
      top: 10px; } }
  .menu__items {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 30px; }

.menu-hover {
  display: flex;
  flex-direction: column;
  align-items: center; }
  .menu-hover__title {
    font-weight: 400;
    font-size: 17px;
    text-align: center;
    color: #fff;
    line-height: 1.2;
    transition: 0.5s;
    cursor: pointer;
    display: flex;
    align-items: center;
    column-gap: 10px;
    position: relative; }
  .menu-hover__title.active {
    color: #95d2ed; }
  .menu-hover__title.active svg {
    transform: rotate(180deg); }
  .menu-hover__title svg {
    transition: 0.5s;
    margin-top: 2px; }
  .menu-hover__hidden {
    display: none; }
  .menu-hover__items {
    margin-top: 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 10px; }
  .menu-hover__item {
    font-weight: 400;
    font-size: 15px;
    line-height: 1.2;
    color: #fff;
    transition: 0.5s;
    text-align: center; }
  .menu-hover__item:hover {
    color: #95d2ed; }

.contactModal__dialog {
  max-width: 600px;
  margin: 1.75rem auto; }

.contactModal__content {
  border-radius: 20px;
  border: none; }

.contactModal__header {
  padding: 25px 30px 10px;
  border: none; }

.contactModal__title {
  font-size: 28px;
  font-weight: 500;
  color: #151515; }

.contactModal__close {
  background: none;
  border: none; }

.contactModal__body {
  padding: 0px 30px 30px; }

.contactModal__description {
  font-size: 16px;
  color: #666;
  line-height: 1.5; }

.contactModal__form {
  display: flex;
  flex-direction: column;
  row-gap: 20px; }

.contactModal__field {
  display: flex;
  flex-direction: column;
  row-gap: 8px; }

.contactModal__label {
  font-size: 15px;
  color: #151515; }

.contactModal__input, .contactModal__textarea {
  width: 100%;
  padding: 12px 15px;
  font-size: 15px;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  background-color: #fff;
  color: #151515; }

.contactModal__textarea {
  resize: vertical;
  min-height: 100px; }

.contactModal__submit {
  width: 100%; }

.alert {
  position: relative; }
  .alert .close {
    position: absolute;
    top: 5px;
    right: 5px;
    background-color: transparent; }

.hack10-loading-wrapper {
  height: 100vh;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99; }

.preloader, .preloader-mobile {
  width: 100%;
  height: 100%;
  object-fit: cover; }
/* По умолчанию показываем десктоп */
.preloader-mobile {
  display: none; }
/* Мобилки / маленькие экраны */
@media (max-width: 768px) {
  .preloader {
    display: none; }

  .preloader-mobile {
    display: block; } }
/* Класс, который мы будем добавлять через JS для запуска анимации */
.start-unblur-animation {
  /* Имя анимации, длительность 2s, плавность, forwards - оставить четким в конце */
  animation: unblurEffect 2s ease-out forwards;
  /* На всякий случай гарантируем начальное состояние, если анимация вдруг затупит */
  filter: blur(30px);
  will-change: filter;
  /* Оптимизация производительности */ }
/* Определение ключевых кадров анимации */
@keyframes unblurEffect {
  0% {
    /* Начальная точка: сильное размытие */
    filter: blur(30px);
    transform: scale(1.02);
    /* Небольшой зум для красоты эффекта (можно убрать) */ }

  100% {
    /* Конечная точка: блюр полностью убран */
    filter: blur(0px);
    transform: scale(1); } }

.blured {
  filter: blur(20px);
  opacity: 0;
  transition: filter 2s ease-out, opacity 2s ease-out;
  will-change: filter, opacity; }

.blured.is-visible {
  filter: blur(0px);
  opacity: 1; }

.about-project .about__text ul {
  padding-left: 0;
  display: flex;
  flex-direction: column;
  row-gap: 5px; }
  .about-project .about__text li {
    list-style: none; }
  .about-project .about__text strong {
    color: #fff;
    font-weight: 400; }

.home-bg1 {
  background: url('../storage/app/media/bg/home/1.jpg') center/cover no-repeat; }

.home-bg2 {
  background: url('../storage/app/media/bg/home/1.jpg') center/cover no-repeat; }

.home-bg3 {
  background: url('../storage/app/media/bg/home/1.jpg') center/cover no-repeat; }

.about-bg1 {
  background: url('../storage/app/media/bg/about/1.jpg') center/cover no-repeat; }

.about-bg2 {
  background: url('../storage/app/media/bg/about/2.jpg') center/cover no-repeat; }

.career-bg {
  background: url('../storage/app/media/career-bg.jpg') center/cover no-repeat; }

.search__items {
  display: flex;
  flex-direction: column;
  row-gap: 60px; }
  .search__item {
    position: relative; }
  .search__item:not(:last-child)::after {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    bottom: -30px;
    left: 0;
    height: 1px;
    background-color: rgba(212, 212, 212, 1); }

.item-search__image {
  margin-bottom: 20px; }
  .item-search__image img {
    max-width: 100%; }
  .item-search__title {
    font-size: 24px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: 0em;
    text-align: left;
    margin-bottom: 10px; }
  .item-search__text {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0px;
    text-align: left;
    color: #fff;
    margin-bottom: 20px;
    opacity: 0.8; }
  .item-search__link {
    display: flex;
    align-items: center;
    column-gap: 10px; }
  .item-search__link span {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 700;
    line-height: 19px;
    letter-spacing: 0.06em;
    color: #95d2ed; }
  .item-search__link svg {
    margin-top: -4px; }

.not-found {
  font-size: 22px;
  font-weight: 400;
  line-height: 130%; }
  @media (max-width: 480px) {
  .not-found {
    font-size: 16px; } }

.ss-search-form__input {
  margin-bottom: 40px;
  display: grid;
  grid-template-columns: 500px auto;
  column-gap: 10px; }
  @media (max-width: 480px) {
  .ss-search-form__input {
    margin-bottom: 30px; } }
  @media (max-width: 767px) {
  .ss-search-form__input {
    grid-template-columns: 1fr;
    row-gap: 10px; } }
  .ss-search-form__input input {
    font-weight: 400;
    font-size: 18px;
    line-height: 133%;
    color: #151515;
    padding: 13px 15px;
    border-radius: 10px;
    width: 100%;
    border: 1px solid #e4e4e4; }
  @media (max-width: 480px) {
    .ss-search-form__input input {
      font-size: 15px;
      padding: 10px 12px; } }
  .ss-search-form__input input::placeholder {
    color: #444; }
  .ss-search-form__input button {
    font-weight: 500;
    font-size: 18px;
    text-align: center;
    color: #151515;
    border-radius: 10px;
    width: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #95d2ed;
    transition: 0.5s; }
  @media (max-width: 767px) {
    .ss-search-form__input button {
      height: 44px; } }
  @media (max-width: 480px) {
    .ss-search-form__input button {
      font-size: 14px;
      width: 140px;
      height: 40px; } }
  .ss-search-form__input button:hover {
    box-shadow: 0 0 20px #95d2ed; }

.six {
  background: #143076;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  padding: 40px; }
  @media (max-width: 480px) {
  .six {
    padding: 60px 20px 20px; } }
  .six__title {
    font-weight: 400;
    font-size: 27px;
    line-height: 119%;
    color: #fff;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .six__title {
      font-size: 20px;
      margin-bottom: 15px; } }
  .six__text {
    font-weight: 300;
    font-size: 19px;
    line-height: 132%;
    color: #a6b6dd;
    margin-bottom: 30px; }
  @media (max-width: 480px) {
    .six__text {
      font-size: 16px;
      margin-bottom: 20px; } }
  .six__button {
    font-size: 20px;
    min-width: 0;
    padding: 18px 50px;
    font-weight: 500; }
  @media (max-width: 480px) {
    .six__button {
      font-size: 16px;
      padding: 15px 40px; } }

.board__container {
  display: grid;
  grid-template-columns: 310px 1fr;
  align-items: start;
  gap: 20px; }
  @media (max-width: 992px) {
    .board__container {
      grid-template-columns: 1fr; } }
  .board__left {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    position: sticky;
    z-index: 10;
    top: 120px; }
  @media (max-width: 992px) {
    .board__left {
      position: initial; } }
  .board__categories {
    background: rgba(255, 255, 255, 0.07);
    display: flex;
    flex-direction: column;
    padding-bottom: 20px; }
  .board__categories-title {
    font-weight: 400;
    font-size: 16px;
    color: #a6b6dd;
    padding: 20px; }
  .board__categories-items {
    display: flex;
    flex-direction: column;
    row-gap: 5px; }
  .board__categories-item {
    font-weight: 400;
    font-size: 16px;
    line-height: 106%;
    color: #fff;
    padding: 8px 20px;
    display: block;
    cursor: pointer; }
  .board__categories-item.active {
    background: rgba(255, 255, 255, 0.17); }

.vac-form--mini {
  padding: 30px 20px; }
  .vac-form--mini .vac-form__title {
    font-size: 25px;
    text-align: start; }
  @media (max-width: 480px) {
    .vac-form--mini .vac-form__title {
      font-size: 20px; } }
  .vac-form--mini .vac-form__input input {
    font-size: 15px; }
  .vac-form--mini .vac-form__button {
    font-size: 16px; }

.block-board {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 20px; }
  @media (max-width: 1100px) {
  .block-board {
    grid-template-columns: 1fr; } }
  @media (max-width: 992px) {
    .block-board__image {
      max-width: 500px; } }
  .block-board__image img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .block-board__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    padding: 30px 50px;
    background: rgba(20, 48, 118, 0.2); }
  @media (max-width: 992px) {
    .block-board__content {
      padding: 30px; } }
  @media (max-width: 480px) {
    .block-board__content {
      padding: 30px 20px; } }
  .block-board__title {
    font-weight: 400;
    font-size: 32px;
    line-height: 129%;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .block-board__title {
      font-size: 22px;
      margin-bottom: 15px; } }
  .block-board__text {
    font-weight: 400;
    font-size: 16px;
    line-height: 137%;
    color: #ccd3e5;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .block-board__text {
      font-size: 14px; } }
  .block-board__button {
    font-size: 17px;
    padding: 12px 40px;
    min-width: 0; }

.afs__title {
  font-weight: 400;
  font-size: 32px;
  line-height: 134%;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 30px; }
  @media (max-width: 480px) {
    .afs__title {
      font-size: 24px;
      margin-bottom: 15px; } }
  .afs__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px; }
  .afs__items--4 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 15px; }
  @media (max-width: 1100px) {
      .afs__items--4 {
        grid-template-columns: 1fr 1fr;
        gap: 15px; } }
  @media (max-width: 992px) {
      .afs__items--4 {
        grid-template-columns: 1fr; } }
  .afs__items--4 .afs__item {
    padding-left: 12px;
    padding-right: 12px; }
  .afs__items--4 .afs__name {
    font-size: 18px; }
  .afs__items--4 .afs__text {
    font-size: 14px; }
  @media (max-width: 1100px) {
    .afs__items {
      grid-template-columns: 1fr 1fr;
      gap: 15px; } }
  @media (max-width: 992px) {
    .afs__items {
      grid-template-columns: 1fr; } }
  .afs__item {
    padding: 35px 20px;
    background: #001955;
    display: flex;
    flex-direction: column;
    align-items: center; }
  .afs__icon {
    margin-bottom: 15px;
    position: relative; }
  .afs__icon::after {
    content: "";
    display: block;
    border-radius: 14913100px;
    width: 100px;
    height: 100px;
    filter: blur(50px);
    background: #557adb;
    opacity: 0.6;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%); }
  .afs__name {
    font-weight: 400;
    font-size: 18px;
    line-height: 132%;
    text-align: center;
    color: #fff;
    margin-bottom: 15px;
    max-width: 260px; }
  .afs__text {
    font-weight: 300;
    font-size: 16px;
    line-height: 120%;
    text-align: center;
    color: #a6b6dd;
    display: flex;
    flex-direction: column;
    row-gap: 5px; }

.team-mini {
  margin-top: 0;
  display: grid;
  grid-template-columns: 1fr; }
  .team-mini .team__title {
    font-weight: 400;
    font-size: 32px;
    line-height: 134%;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 30px;
    text-align: start; }
  @media (max-width: 480px) {
    .team-mini .team__title {
      font-size: 24px;
      margin-bottom: 15px; } }
  .team-mini .item-team__content {
    padding: 30px 50px; }
  @media (max-width: 992px) {
    .team-mini .item-team__content {
      padding: 30px; } }
  @media (max-width: 480px) {
    .team-mini .item-team__content {
      padding: 30px 20px; } }
  .team-mini .item-team__title {
    font-size: 32px; }
  @media (max-width: 480px) {
    .team-mini .item-team__title {
      font-size: 24px; } }
  .team-mini .item-team__text {
    font-size: 16px; }
  @media (max-width: 480px) {
    .team-mini .item-team__text {
      font-size: 14px; } }
  .team-mini .team__items {
    width: 100%; }

.kides {
  display: flex;
  flex-direction: column;
  row-gap: 50px; }
  @media (max-width: 480px) {
  .kides {
    row-gap: 30px; } }
  .kides__item {
    display: grid;
    grid-template-columns: 1fr; }
  .kides__item:not(:last-child) {
    padding-bottom: 50px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4); }
  @media (max-width: 480px) {
      .kides__item:not(:last-child) {
        padding-bottom: 30px; } }
  .kides__content {
    background: rgba(20, 48, 118, 0.2);
    padding: 30px 50px; }
  @media (max-width: 480px) {
    .kides__content {
      padding: 30px 20px; } }
  .kides__title {
    font-weight: 400;
    font-size: 32px;
    line-height: 134%;
    text-transform: uppercase;
    color: #fff;
    max-width: 600px;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .kides__title {
      font-size: 24px;
      margin-bottom: 15px; } }
  .kides__buttons-title {
    font-weight: 400;
    font-size: 16px;
    color: #a6b6dd;
    margin-bottom: 15px;
    line-height: 1.2; }
  .kides__buttons {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 30px; }
  @media (max-width: 480px) {
    .kides__buttons {
      margin-bottom: 20px; } }
  .kides__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 400;
    font-size: 17px;
    text-align: center;
    color: #fff;
    line-height: 1.2;
    padding: 12px 28px;
    border-radius: 50px;
    background-color: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(9px);
    transition: 0.5s; }
  @media (max-width: 480px) {
    .kides__button {
      font-size: 15px;
      padding: 10px 20px; } }
  .kides__button.active {
    background: #fff;
    color: #2145a4; }
  .kides__text {
    font-weight: 400;
    font-size: 16px;
    line-height: 131%;
    color: #ccd3e5;
    display: none; }
  @media (max-width: 480px) {
    .kides__text {
      font-size: 14px; } }
  .kides__text.active {
    display: flex;
    flex-direction: column;
    row-gap: 10px; }
  .kides__images {
    margin-top: 20px;
    width: 100%;
    max-width: 100%;
    min-width: 0; }
  @media (max-width: 767px) {
    .kides__images {
      margin-top: 15px; } }
  .kides__image {
    position: relative;
    display: block;
    overflow: hidden;
    padding-bottom: 80%; }
  .kides__image img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }

.posts__title {
  font-weight: 400;
  font-size: 42px;
  line-height: 129%;
  color: #fff;
  margin-bottom: 40px; }
  @media (max-width: 480px) {
    .posts__title {
      font-size: 28px;
      margin-bottom: 20px; } }
  .posts__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px; }
  @media (max-width: 992px) {
    .posts__items {
      grid-template-columns: 1fr 1fr; } }
  @media (max-width: 600px) {
    .posts__items {
      grid-template-columns: 1fr;
      gap: 15px; } }

.item-posts {
  background: rgba(20, 48, 118, 0.3);
  display: flex;
  flex-direction: column; }
  .item-posts__image {
    position: relative;
    display: block;
    overflow: hidden;
    padding-bottom: 80%; }
  .item-posts__image img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .item-posts__content {
    padding: 30px;
    display: flex;
    flex-direction: column; }
  @media (max-width: 480px) {
    .item-posts__content {
      padding: 20px; } }
  .item-posts__date {
    font-weight: 300;
    font-size: 16px;
    line-height: 138%;
    color: #fff;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .item-posts__date {
      font-size: 14px;
      margin-bottom: 15px; } }
  .item-posts__title {
    font-weight: 500;
    font-size: 22px;
    line-height: 145%;
    color: #fff;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .item-posts__title {
      font-size: 18px;
      margin-bottom: 15px; } }
  .item-posts__text {
    -webkit-line-clamp: 3;
    /* Число отображаемых строк */
    display: -webkit-box;
    /* Включаем флексбоксы */
    -webkit-box-orient: vertical;
    /* Вертикальная ориентация */
    overflow: hidden;
    /* Обрезаем всё за пределами блока */
    margin-bottom: 30px;
    font-weight: 300;
    font-size: 16px;
    line-height: 156%;
    color: #a6b6dd; }
  @media (max-width: 480px) {
    .item-posts__text {
      margin-bottom: 20px;
      font-size: 14px; } }
  .item-posts__more {
    font-weight: 300;
    font-size: 16px;
    line-height: 156%;
    color: #fff; }
  @media (max-width: 480px) {
    .item-posts__more {
      font-size: 14px; } }

.projects--ads .item-projects__subtitle {
  margin-bottom: 20px; }

.projectModal__body {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 20px;
  padding: 0;
  background: transparent; }
  @media (max-width: 1200px) {
    .projectModal__body {
      display: flex;
      flex-direction: column-reverse; } }
  .projectModal__content {
    background: transparent; }
  .projectModal__image img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .projectModal__right {
    background: #061542;
    padding: 40px 60px; }
  @media (max-width: 480px) {
    .projectModal__right {
      padding: 30px 20px; } }
  .projectModal__title {
    font-weight: 400;
    font-size: 42px;
    line-height: 110%;
    color: #fff;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .projectModal__title {
      font-size: 26px;
      margin-bottom: 15px; } }
  .projectModal__subtitle {
    font-weight: 300;
    font-size: 23px;
    line-height: 109%;
    color: #fff;
    margin-bottom: 30px; }
  @media (max-width: 480px) {
    .projectModal__subtitle {
      font-size: 20px;
      margin-bottom: 15px; } }
  .projectModal__text {
    font-weight: 300;
    font-size: 16px;
    line-height: 138%;
    color: #eaedf4;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    max-height: 550px;
    overflow-y: auto; }
  @media (max-width: 480px) {
    .projectModal__text {
      font-size: 14px; } }
  .projectModal__text::-webkit-scrollbar {
    width: 4px; }
  .projectModal__text::-webkit-scrollbar-track {
    background: #fff; }
  .projectModal__text::-webkit-scrollbar-thumb {
    background: #95d2ed; }
  .projectModal__close {
    position: absolute;
    right: 5px;
    top: 5px;
    color: #fff;
    z-index: 1;
    background: transparent; }

.slt__title {
  font-weight: 400;
  font-size: 42px;
  line-height: 129%;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  margin-bottom: 50px; }
  @media (max-width: 480px) {
    .slt__title {
      font-size: 26px;
      margin-bottom: 20px; } }

.post__container {
  max-width: 969px; }
  .post__image {
    position: relative;
    display: block;
    padding-bottom: 70%;
    overflow: hidden; }
  .post__image img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .post__content {
    background: rgba(20, 48, 118, 0.2);
    padding: 30px 60px;
    margin-top: 20px; }
  @media (max-width: 767px) {
    .post__content {
      padding: 30px; } }
  @media (max-width: 480px) {
    .post__content {
      padding: 30px 20px;
      margin-top: 15px; } }
  .post__title {
    font-weight: 400;
    font-size: 32px;
    line-height: 134%;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 15px; }
  @media (max-width: 480px) {
    .post__title {
      font-size: 22px;
      margin-bottom: 10px; } }
  .post__date {
    font-weight: 400;
    font-size: 16px;
    color: #a6b6dd;
    margin-bottom: 30px;
    line-height: 1.2; }
  @media (max-width: 480px) {
    .post__date {
      font-size: 14px;
      margin-bottom: 20px; } }
  .post__text {
    font-weight: 400;
    font-size: 16px;
    line-height: 131%;
    color: #ccd3e5;
    display: flex;
    flex-direction: column;
    row-gap: 10px; }
  @media (max-width: 480px) {
    .post__text {
      font-size: 14px; } }
  .post__text img {
    max-width: 100%; }
  .post__images {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    margin-top: 20px;
    gap: 20px; }
  @media (max-width: 992px) {
    .post__images {
      grid-template-columns: 1fr 1fr; } }
  @media (max-width: 600px) {
    .post__images {
      grid-template-columns: 1fr;
      gap: 15px;
      margin-top: 15px; } }

@media (max-width: 480px) {
    .history-feature .history__video {
      object-position: 90% center; } }

.afs, .team-mini {
  margin: 60px 0 0; }

.swiper-button-next:after, .swiper-button-prev:after {
  color: #95d2ed; }

.swiper-button-prev {
  left: -50px; }

.swiper-button-next {
  right: -50px; }
