.section__title{
  font-weight: 600;
  font-size: 36rem;
  line-height: 1.3em;
}
.work__list{
  margin-top: 30rem;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
}
.work__item{
  background: #EEF8FD;
  border-radius: 20px;
  color: #424547;
  padding: 30rem;
  line-height: 1.3em;
}
.work__icon{
  width: 100rem;
  height: 100rem;
  background: var(--bs-white);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.work__icon img{
  width: 50%;
  height: auto;
  object-fit: cover;
}
.work__item h3{
  margin-top: 40rem;
  font-weight: 600;
  font-size: 20rem;
}
.work__item p{
  margin-top: 15px;
  font-weight: 400;
  font-size: 16rem;
  line-height: 1.3em;
}
.whom__list{
  margin-top: 30rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30rem;
}
.whom__item{
  width: 100%;
  position: relative;
  height: auto;
  aspect-ratio: 1/1.46;
  border-radius: 20px;
  overflow: hidden;
}
.whom__image{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.whom__image img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.whom__content{
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  padding: 30rem;
}
.whom__icon{
  width: 80rem;
  height: auto;
  aspect-ratio: 1/1;
  border-radius: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #FFFFFF33;
  backdrop-filter: blur(34px);
  background: rgba(255, 255, 255, 0.1);
}
.whom__info{
  border: 1px solid #FFFFFF33;
  backdrop-filter: blur(34px);
  background: rgba(255, 255, 255, 0.1);
  padding: 20rem 30rem;
  color: rgba(255, 255, 255, 1);
  line-height: 1.3em;
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
  height: fit-content;
}
.whom__content h3{
  font-weight: 600;
  font-size: 24rem;
}
.whom__content p{
  margin-top: 6rem;
  font-weight: 500;
  font-size: 14rem;
  line-height: 1.15em;
}
.task__list{
  margin-top: 30rem;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 30rem;
}
.task__item{
  display: flex;
  align-items: center;
  gap: 25rem;
  font-size: 20rem;
  font-weight: 600;
  line-height: 1.3em;
  color: rgba(66, 69, 71, 1);
}
.task__icon{
  width: 80rem;
  flex-shrink: 0;
  height: 80rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(238, 248, 253, 1);
  backdrop-filter: blur(34px);
  border-radius: 20rem;
}
.task__icon img{
  width: 50%;
  height: 50%;
  object-fit: contain;
}
.mp-utp__text{
  margin-top: 30rem;
  font-size: 20rem;
  line-height: 1.3em;
  max-width: 800rem;
  margin-bottom: 40rem;
}
.mp-utp__text span{
  color: #158cd1;
}
.mp-utp__text p{
  font-weight: 600;
  margin-top: 25px;
}
.mp-utp__list{
  margin-top: 64rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.mp-utp__item{
  background: rgba(255, 255, 255, 1);
  min-height: 140rem;
  width: fit-content;
  height: fit-content;
  border-radius: 20rem;
  padding: 30px;
  font-size: 18rem;
  width: 100%;
  justify-content: space-between;
  line-height: 1.3em;
  color: rgba(66, 69, 71, 1);
  display: flex;
  font-weight: 600;
  align-items: flex-start;
  gap: 25rem;
}
.mp-utp__right.width100{
  max-height: 100%;
}
.mp-utp__right.width100 .mp-utp__photo--desctop img{
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
}
.mp-utp__content.pb-100{
  padding-bottom: 100rem;
}
.mp-utp__left.padding{
  padding-bottom: 0;
}
.mp-utp__item svg{
  width: 20rem;
  height: 20rem;
  flex-shrink: 0;
}
.section__top{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.slider__arrows{
  display: flex;
  gap: 5px;
}
.slider__arrow{
  border: none;
  background: rgba(238, 248, 253, 1);
  width: 40rem;
  height: 40rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
}
.price__slider{
  margin-top: 30rem;
}
.price__slide{
  background: rgba(238, 248, 253, 1);
  border-radius: 20rem;
  padding: 30rem;
  display: flex;
  flex-direction: column;
  gap: 80rem;
  flex-shrink: 0;
  width: 365rem;
}
.price__count{
  width: 100rem;
  height: 100rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 1);
  color: rgba(21, 140, 209, 1);
  font-size: 50rem;
  flex-shrink: 0;
}
.price__content{
  color: rgba(66, 69, 71, 1);
  display: flex;
  flex-direction: column;
  gap: 15rem;
}
.price__content h3{
  font-size: 20rem;
  line-height: 1.3em;
  font-weight: 600;
}
.price__content p{
  font-weight: 400;
  line-height: 1.3em;
  font-size: 16rem;
}
.question__list{
  display: flex;
  flex-direction: column;
  gap: 10rem;
  margin-top: 30rem;
}
.question__question{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 24rem 30rem;
  gap: 10px;
  color: rgba(66, 69, 71, 1);
}
.question__item{
  background: rgba(249, 249, 249, 1);
  border-radius: 15rem;
}
.question__question h3{
  line-height: 1.3em;
  font-weight: 600;
  font-size: 20rem;
  margin-bottom: 0;
}
.question__btn{
  position: relative;
  width: 22rem;
  height: 22px;
  background: none;
  border: none;
}
.question__btn span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 2rem;
  border-radius: 2rem;
  display: block;
  background: rgba(21, 140, 209, 1);
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: -webkit-transform linear 0.3s;
  transition: -webkit-transform linear 0.3s;
  transition: transform linear 0.3s;
  transition: transform linear 0.3s, -webkit-transform linear 0.3s;
}
.question__btn span:last-child {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
      -ms-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}
.question__btn.active span:last-child {
  -webkit-transform: translate(-50%, -50%) rotate(0);
      -ms-transform: translate(-50%, -50%) rotate(0);
          transform: translate(-50%, -50%) rotate(0);
}
.question__answer {
  height: 0;
  overflow: hidden;
  -webkit-transition: height linear 0.3s;
  transition: height linear 0.3s;
}
.question__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding:0 24rem 30rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  font-size: 16rem;
  color: rgba(66, 69, 71, 1);
  line-height: 1.3em;
}
@media(max-width:1400px){
  .work__list{
    grid-template-columns: repeat(2, 1fr);
  }
}
@media(max-width:1024px){
  .section__title{
    font-size: 26px;
  }
  .task__list{
    margin-top: 15px;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .task__item{
    gap: 15px;
    font-size: 16px;
    line-height: 1.15em;
  }
  .task__icon{
    width: 60px;
    height: 60px;
    border-radius: 15px;
  }
  .mp-utp__content.pb-100{
    padding-bottom: 20px;
  }
  .mp-utp__text{
    font-size: 18px;
    margin-top: 20px;
    margin-bottom: 30px;
  }
  .mp-utp__item{
    font-size: 14px;
    padding: 15px;
    border-radius: 10px;
    min-height: 140px;
    gap: 10px;
  }
  .mp-utp__list{
    margin-top: 30px;
    gap: 10px;
  }
  .mp-utp__item svg{
    width: 16px;
    height: 16px;
  }
  .work__list{
    margin-top: 14px;
    gap: 10px;
  }
  .work__item{
    padding: 15px;
  }
  .work__icon{
    width: 70px;
    height: 70px;
  }
  .work__icon img{
    width: 30px;
  }
  .work__item h3{
    margin-top: 20px;
    font-size: 16px;
  }
  .work__item p{
    margin-top: 10px;
    font-size: 13px;
  }
  .whom__list{
    margin-top: 15px;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .whom__item{
    border-radius: 10px;
    max-height: 100dvh;
  }
  .whom__content{
    padding: 10px;
  }
  .whom__icon{
    width: 60px;
    height: 60px;
    border-radius: 10px;
  }
  .whom__icon img{
    width: 30px;
  }
  .whom__info{
    padding: 10px;
  }
  .whom__info h3{
    font-size: 16px;
  }
  .whom__info p{
    margin-top: 5px;
    font-size: 12px;
  }
  .mp-utp__content.pb-100 .mp-utp__photo--mobile{
    max-width: 100%;
    /* aspect-ratio: 3/4; */
    width: 100%;
  }
  .mp-utp__content.pb-100 .mp-utp__photo--mobile img{
    max-width: 100%;
  }
  .mp-utp-contact__btns .mp-services__price_bl{
    order: -1;
  }
  .slider__arrow{
    width: 40px;
    height: 40px;
  }
  .price__slider{
    margin-top: 20px;
    width: calc(100% + 17.5px);
    margin-left: 0;
    margin-right: -17.5px;
  }
  .slider__arrows{
    display: none;
  }
  .price__slide{
    padding: 15px;
    border-radius: 20px;
    width: 84.375vw;
    max-width: 400px;
    gap: 30px;
  }
  .price__count{
    width: 80px;
    height: 80px;
    font-size: 30px;
  }
  .price__content{
    gap: 10px;
  }
  .price__content h3{
    font-size: 16px;
  }
  .price__content p{
    font-size: 13px;
  }
  .question__list{
    margin-top: 20px;
    gap: 10px;
  }
  .question__item{
    border-radius: 15px;
  }
  .question__question{
    padding: 22px 20px;
  }
  .question__question h3{
    font-size: 16px;
  }
  .question__btn{
    width: 16px;
    height: 16px;
  }
  .question__btn span{
    height: 2px;
    border-radius: 2px;
  }
  .question__text{
    padding: 0 20px;
    font-size: 13px;
  }
}

@media(max-width:800px){
  .work__list,
  .mp-utp__list,
  .whom__list,
  .task__list{
    grid-template-columns: 1fr;
  }
  .mp-utp__item{
    min-height: 0;
  }
}
.case-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px; /* Расстояние между тегами */
    margin-top: 10px; /* Отступ от заголовка */
    margin-bottom: 15px; /* Отступ до следующего блока */
    width: 100%; /* Вот эта строчка заставит блок занять всю ширину */
}

.case-tag {
    display: inline-block;
    padding: 4px 12px;
    background-color: #f0f4f8; /* Светло-серый/голубоватый фон */
    color: #333;
    font-size: 13px;
    border-radius: 4px; /* Немного скругляем углы */
}

/* Для типа работ можно сделать другой цвет, чтобы визуально отличать */
.case-tag--blue {
    background-color: #e5f3fb; 
    color: #158CD1; /* Твой фирменный синий */
}
.case-tag {
    text-decoration: none; /* Убираем подчеркивание */
    transition: background-color 0.3s; /* Плавное мигание при наведении */
}

.case-tag:hover {
    background-color: #e2e8f0; /* Чуть темнее при наведении для обычных */
}

.case-tag--blue:hover {
    background-color: #d0e9f7; /* Чуть темнее при наведении для синих */
}
/* Базовый стиль тега в карточке */
.case-tag {
    display: inline-block;
    padding: 4px 12px;
    background-color: #f0f4f8;
    color: #333;
    border-radius: 4px;
    text-decoration: none;
}

/* Стиль активного тега (и в меню сверху, и в карточке) */
.case-tag.active, 
.filter__item.active {
    background-color: #158CD1 !important; /* Твой синий цвет */
    color: #fff !important;
}

/* Если в активном теге есть крестик (в верхнем меню) */
.filter__item.active .filter__icon {
    display: inline-block; /* Показываем крестик только когда активно */
}