.atom-spinner,
.atom-spinner * {
  box-sizing: border-box
}

.atom-spinner {
  height: 60px;
  width: 60px;
  overflow: hidden
}

.atom-spinner .spinner-inner {
  position: relative;
  display: block;
  height: 100%;
  width: 100%
}

.atom-spinner .spinner-circle {
  display: block;
  position: absolute;
  color: #ff1d5e;
  font-size: 14.4px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)
}

.atom-spinner .spinner-line {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  animation-duration: 1s;
  border-left-width: 2.4px;
  border-top-width: 2.4px;
  border-left-color: #ff1d5e;
  border-left-style: solid;
  border-top-style: solid;
  border-top-color: transparent
}

.atom-spinner .spinner-line:first-child {
  animation: atom-spinner-animation-1 1s linear infinite;
  transform: rotate(120deg) rotateX(66deg) rotate(0)
}

.atom-spinner .spinner-line:nth-child(2) {
  animation: atom-spinner-animation-2 1s linear infinite;
  transform: rotate(240deg) rotateX(66deg) rotate(0)
}

.atom-spinner .spinner-line:nth-child(3) {
  animation: atom-spinner-animation-3 1s linear infinite;
  transform: rotate(1turn) rotateX(66deg) rotate(0)
}

@keyframes atom-spinner-animation-1 {
  to {
    transform: rotate(120deg) rotateX(66deg) rotate(1turn)
  }
}

@keyframes atom-spinner-animation-2 {
  to {
    transform: rotate(240deg) rotateX(66deg) rotate(1turn)
  }
}

@keyframes atom-spinner-animation-3 {
  to {
    transform: rotate(1turn) rotateX(66deg) rotate(1turn)
  }
}

#app {
  max-width: 976px;
  margin: 0 auto;
  font: 15px/25px PT Sans Caption, Arial, sans-serif
}

.spin {
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center
}

.filter_sh h4 {
  margin-top: 0;
  margin-bottom: 6px;
  font-size: 16px
}

.filter_sh select {
  width: 100%;
  height: 36px;
  border-radius: 6px;
  border: 1px solid #bdbdbd;
  background: none !important;
  padding: 5px 39px 5px 7px;
  color: #777;
  cursor: pointer;
  line-height: 17px;
  position: relative
}

.filter_sh_child {
  margin-top: 15px
}

.filter_sh_r {
  display: flex;
  align-items: flex-end
}

.vac_sh {
  flex-direction: column
}

.filter_sh,
.vac_sh {
  display: flex;
  gap: 30px
}

.card_box,
.filter_sh {
  width: 100%
}

.card_sh {
  display: flex;
  flex-direction: row;
  margin-bottom: 30px;
  box-shadow: 0 0 32px 0 rgba(26, 47, 106, .08);
  border-radius: 6px;
  overflow: hidden;
  padding: 15px;
  position: relative
}

.vac_block {
  width: 70%
}

.vac_mo_logo {
  width: 30%
}

.vac_mo_logo img {
  width: 100%;
  max-height: 80px;
  -o-object-fit: contain;
  object-fit: contain
}

.vac_block .vac {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 600;
  color: #646464
}

.vac_block .vac_price {
  margin-bottom: 6px;
  font-size: 16px;
  font-weight: 600
}

.vac_block .vac_org {
  margin-bottom: 15px
}

.vac_block .vac_org p {
  margin: 0;
  font-size: 16px;
  font-weight: 600
}

.vac_block .vac_work {
  margin-bottom: 25px
}

.vac_block .vac_work span {
  text-transform: lowercase
}

.btn-vac {
  font-size: 14px;
  line-height: 100%;
  color: #0032a5;
  border-color: #0032a5;
  position: relative;
  overflow: hidden;
  padding: 10px 15px;
  border-radius: 5px;
  border: 1px solid;
  background: none;
  outline: none;
  cursor: pointer;
  transition: all .5s;
  display: inline-block;
  text-decoration: none
}

.btn-vac:hover {
  color: #fff
}

.btn-vac:hover:before {
  width: 150%
}

.btn-vac:before {
  content: "";
  background-color: #0032a5;
  transform: skew(45deg, 0);
  width: 0;
  height: 100%;
  position: absolute;
  top: 0;
  left: -30px;
  z-index: -1;
  transition: all .5s
}

.paginate {
  list-style: none;
  padding: 0;
  display: flex;
  gap: 3px;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  flex-wrap: wrap;
  margin-top: 30px
}

.paginate .page-item.active a,
.paginate .page-item.disabled a {
  color: #999 !important
}

.paginate .page-item a {
  color: #000;
  cursor: pointer;
  display: block;
  padding: 10px;
  font-size: .9333em
}

.paginate li {
  display: table;
  list-style-type: none;
  position: relative;
  padding-left: 0;
  margin-bottom: 0
}

.paginate li:before {
  content: ""
}

@media (max-width:992px) {
  .vac_sh {
    gap: 30px
  }

  .filter_sh,
  .vac_sh {
    display: flex;
    flex-direction: column
  }

  .filter_sh {
    width: 100%;
    gap: 15px;
    align-items: flex-end
  }

  .card_box,
  .filter_sh_l {
    width: 100%
  }

  .card_sh {
    flex-direction: column-reverse
  }

  .vac_block {
    width: 100%
  }

  .vac_mo_logo {
    width: 50%
  }

  .vac_block .vac {
    font-size: 18px
  }
}

.vacancy_desc {
  margin: 0 0 47px
}

.vacancy_desc .image img {
  width: 100%
}

.vacancy_desc .properties {
  margin: 0;
  padding: 40px 39px 25px;
  background: #f9fbfb;
  border-radius: 3px
}

.vacancy_desc .properties .button_wrap {
  position: relative;
  z-index: 1
}

.vacancy_desc .properties>.wrap {
  position: relative;
  top: -6px;
  padding: 0 0 0 230px
}

.vacancy_desc .properties>.wrap.wtform {
  padding-left: 0
}

.vacancy_desc .properties .property {
  margin: 8px 0
}

.vacancy_desc .properties .property .title-prop {
  margin: 0 0 3px
}

.vacancy_desc .properties .property .value {
  font-size: 1em;
  line-height: 1.4375em
}

.vacancy_desc .detailtext {
  margin: 20px 0 0
}

.vacancy_desc .bordered {
  border: 1px solid #ecf2f4
}

.vacancy_desc .property.item .value {
  color: #333
}

.vacancy_desc .property.item .title-prop {
  font-size: .867em;
  line-height: 1.3em
}

.paginate li:before {
	content: "";
    display: none;
}

@media (max-width:600px) {
  .vacancy_desc .properties>.wrap {
    padding-left: 0
  }

  .vacancy_desc .properties .button_wrap {
    float: none !important;
    margin: 0 0 35px
  }
}