.section {
  margin-bottom: 150px;
}
.section__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.section__image {
  flex-basis: 59.82456140350877%;

}
.section__info {
  flex-basis: 40.17543859649123%;
}

/* section--right */
.section--right {
  .section__title,
  .section__subtitle,
  .text-box {
    text-align: right;
  }
  .section__image {
    order: 1;
  }
  .section__info {
    order: 2;
  }
  .service {
    float: right;
  }
  .service__box {
    &:after {
      transform: rotateY(180deg);
      right: auto;
      left: -54px;
    }
  }
  .more__holder {
    &:before {
      right: 0;
      left: auto;
    }
  }
  .more__button {
    &:after {
      right: 1px;
      left: auto;
    }
  }
}
.section--consultation {
  .image-holder {
    margin-bottom: 20px;
  }
}
.section--physiotherapy {
  .section__title,
  .section__subtitle,
  .service__price,
  .service__oldprice {
    color: @green-haze;
  }
  .button {
    background-color: @green-haze;
    box-shadow: 0 0 7px rgba(0, 166, 81, 0.3);
  }
  .image-list__holder {
    a {
      background-color: @green-haze;
    }
  }
}

.section--kinesitherapy {
  .section__title,
  .section__subtitle,
  .service__price,
  .service__oldprice {
    color: @robinseggblue;
  }
  .button {
    background-color: @robinseggblue;
    box-shadow: 0 0 7px rgba(0, 194, 221, 0.3);
  }
  .image-list__holder {
    a {
      background-color: @robinseggblue;
    }
  }
}

.section--kids {
  .section__title,
  .section__subtitle,
  .service__price,
  .service__oldprice {
    color: @mulberry;
  }
  .button {
    background-color: @mulberry;
    box-shadow: 0 0 7px rgba(187, 75, 131, 0.3);
  }
  .image-list__holder {
    a {
      background-color: @mulberry;
    }
  }
}

.section--trial {

}

.section--map {
  margin-bottom: 0;
}

.section__title {
  font-size: 50px;
  line-height: 60px;
  color: @scorpion;
  margin: 0 0 12px;
  text-transform: uppercase;
}

.section__subtitle {
  font-size: 24px;
  line-height: 26px;
  color: @roof-terracotta;
  margin: 0 0 38px;
  font-family: @regular-ff;
  display: none;
}

.caption {
  display: block;
  text-align: center;
  padding-top: 10px;
  font-size: 14px;
  font-style: italic;
}

.image-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: center;
}

.image-list__holder {
  padding: 2px;
  box-shadow: 0 0 3px rgba(88, 88, 88, 0.3);
  margin: 0 5px;
  a {
    display: block;
    width: 55px;
    height: 10px;
    background-color: @roof-terracotta;
  }
  img {
    display: none;
  }
}

.text-box {
  font-size: 18px;
  line-height: 28px;
  margin-bottom: 20px;
  p {
    margin: 0 0 28px;
  }
  ul {
    list-style: none;
    padding: 0;
    margin: 0;
  }
}
.service {
  .clearfix();
}
.service__box {
  border: 1px solid @gallery;
  border-radius: 3px;
  box-shadow: 0 0 12px rgba(237, 237, 237, 0.7);
  text-align: center;
  padding: 42px 22px 3px;
  color: @scorpion;
  font-size: 20px;
  max-width: 300px;
  position: relative;
  margin-bottom: 33px;
  &:after {
    content: "";
    position: absolute;
    top: 20px;
    right: -54px;
    background: url("@{IMAGES-DIR}/bg-hand.png") no-repeat;
    width: 108px;
    height: 161px;
  }
}
.service__text {
  display: block;
  margin-bottom: 5px;
}

.service__oldprice {
  font-size: 25px;
  text-decoration: line-through;
  color: @roof-terracotta;
}

.service__price {
  font-size: 30px;
  line-height: 74px;
  color: @roof-terracotta;
  strong {
    font-size: 70px;
  }
}
.more__holder {
  position: relative;
  &:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 88%;
    border-top: 1px dashed @gray;
  }
}
.more__button {
  background-color: #fff;
  border: 0;
  padding: 0 20px 0 20px;
  color: @gray;
  position: relative;
  display: inline-block;
  vertical-align: top;
  &:after {
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -6px;
    left: 1px;
    width: 9px;
    height: 9px;
    border-bottom: 1px solid @gray;
    border-right: 1px solid @gray;
    transform: rotate(45deg);
  }
}

@media screen {
  @media @mxw-960 {
    .section {
      margin-bottom: 125px;
    }
    .section__image {
      flex: 1 100%;
      order: 1;
      margin-bottom: 25px;
      .image-holder {
        margin-bottom: 15px;
      }
    }
    .section__info {
      flex: 1 100%;
      order: 2;
    }
    .service__box {
      width: 100%;
      min-width: ~"calc(100% - 60px)";
    }
    .service {
      .button {
        width: ~"calc(100% - 60px)";
      }
    }
    .section--right {
      .service {
        float: none;
      }
      .service__box,
      .service .button {
        margin-left: 60px;
      }
    }
  }
  @media @mxw-768 {
    .section__title {
      font-size: 40px;
      line-height: 46px;
      br {
        display: none;
      }
    }
    .section__subtitle {
      font-size: 21px;
      line-height: 1;
    }
  }
  @media @mxw-480 {
    .section {
      margin-bottom: 100px;
    }
    .section--map {
      margin-bottom: 0;
    }
    .section__title {
      font-size: 30px;
      line-height: 36px;
    }
    .section__subtitle {
      font-size: 18px;
    }
    .text-box {
      font-size: 16px;
      line-height: 24px;
    }
  }
  @media @mxw-420 {
    .service .button {
      width: 100%;
    }
    .service__box {
      min-width: 100%;
      &:after {
        display: none;
      }
    }
    .section--right .service__box,
    .section--right .service .button {
      margin-left: 0;
    }
  }
}