.ellipsis {
  white-space: nowrap;
  /* 1 */
  text-overflow: ellipsis;
  /* 2 */
  overflow: hidden; }

.services-section .title-holder {
  text-align: center;
  padding: 40px 0; }
  @media (min-width: 1200px) {
    .services-section .title-holder {
      padding-top: 77px;
      padding-bottom: 54px; } }

.services-section .section-title {
  line-height: 1.2;
  margin-bottom: 0; }
  @media (min-width: 1200px) {
    .services-section .section-title {
      font-size: 90px; } }

.services-section .subtitle {
  margin-bottom: 20px; }
  .services-section .subtitle:last-child {
    margin-bottom: 0; }

@media (min-width: 768px) {
  .services-boxes {
    display: flex;
    flex-wrap: wrap; } }

.service-box {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 350px; }
  @media (min-width: 768px) {
    .service-box {
      flex: 1 1 50%; } }
  @media (min-width: 1024px) {
    .service-box {
      min-height: 450px; } }
  @media (min-width: 1440px) {
    .service-box {
      min-height: 600px; } }
  @media (min-width: 1600px) {
    .service-box {
      min-height: 892px; } }
  .service-box .image-holder {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    min-height: inherit; }
    .service-box .image-holder.gradient-bg:before {
      z-index: 1;
      width: 100%;
      margin: 0;
      left: 0;
      opacity: 0.5; }
    .service-box .image-holder img {
      min-height: inherit;
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .service-box .button-holder {
    position: relative;
    z-index: 1; }
  .service-box .btn {
    min-width: 310px; }
    @media (min-width: 1200px) {
      .service-box .btn {
        min-width: 340px; } }
    @media (min-width: 1440px) {
      .service-box .btn {
        min-width: 450px; } }
