:root {
  --main-solid: #020D2C;
  --main: #020D2C;
  --main-trans: linear-gradient(90deg, rgba(2, 13, 44, 0.6), rgba(7, 43, 141, 0.6));
  --accent: #6DB847;
  --accent-gradient: linear-gradient(125deg, #a7d491, rgba(109, 184, 71, 0.6));
  --accent-gradient-trans: linear-gradient(125deg, #a7d491, rgba(109, 184, 71, 0.6));
  --secondary: #efefef;
  --secondary-gradient: linear-gradient(125deg, #efefef, #bdbdbd);
  --secondary-gradient-trans: linear-gradient(125deg, rgba(240, 240, 240, 0.6), rgba(189, 189, 189, 0.6));
  --bg: #fff;
  --dark: #020D2C;
  --dark-gradient: linear-gradient(90deg, #020D2C, #072b8d);
  --dark-gradient-trans: linear-gradient(90deg, rgba(2, 13, 44, 0.6), rgba(7, 43, 141, 0.6));
  --defVal: 10px;
  --text-v1: #fff;
}

::-moz-selection {
  color: var(--bg);
  background: var(--secondary);
}

::selection {
  color: var(--bg);
  background: var(--secondary);
}

.site-services {
  color: var(--dark);
}

.services-hero::before {
  background-image: url(../../assets/img/anastasia-zhenina-E4XARZNDjzI-unsplash.jpg);
  background-position: center;
}

.services-list {
  width: 100%;
}

.service-item {
  margin-bottom: 20px;
  padding: 20px;
  border-radius: 5px;
  overflow: hidden;
  background: var(--secondary-gradient-trans);
}

.service-item__media-cont {
  position: relative;
}

.service-item__img-cont {
  max-height: 290px;
  overflow: hidden;
  border-radius: 5px;
}

.service-item__img-cont--outbox::before {
  position: absolute;
  content: "";
  top: 20px;
  left: -20px;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  background: var(--main);
  z-index: -1;
}

.service-item__img-cont--outbox .service-item__img {
  border-radius: 10px;
}

.service-item__img {
  -o-object-fit: cover;
     object-fit: cover;
}

.service-item__header {
  padding: 20px 0;
}

.service-item__caption {
  font-size: 28px;
}

@media screen and (min-width: 768px) {
  .service-item {
    padding: 0;
  }
  .service-item__media-cont, .service-item__header {
    width: 50%;
  }
  .service-item__img-cont {
    max-width: 100%;
    max-height: 485px;
    border-radius: 0;
  }
  .service-item__img-cont::before {
    top: 40px;
    left: -40px;
  }
  .service-item__header {
    padding: 0 40px;
  }
  .service-item__header > :nth-child(1) {
    margin-top: 40px;
  }
  .service-item__header > :nth-last-child(1) {
    margin-bottom: 40px;
  }
}
