.so-widget-wpa9-steps {

}

  .so-widget-wpa9-steps .widget-title {
    text-align: center;
    margin-bottom: calc(2 * var(--spacer) );
  }

.wpa9-steps {
  margin: 0 auto;
  /* width: max-content; */
  /* width: -moz-fit-content; */
}

  .wpa9-steps-togglers {
    /* width: fit-content;
    width: -moz-fit-content;
    margin: 0 auto; */
  }

  .wpa9-steps-togglers .wpa9-steps-content {
    display: block;
    text-align: center;
    /* padding-bottom: calc(3 * var(--spacer) ); */
  }

    .wpa9-steps-toggler-wrapper {
      position: relative;
      width: 100%;
    }

      .wpa9-steps-toggler {
        font-size: 1.25em;
        font-weight: 700;
        text-align: center;
        color: var(--c-main);

        background-color: var(--c-grey-l);
        display: inline-block;
        border-radius: 50%;
        margin: 0 auto;
      }

      .wpa9-step-image .wpa9-step-image-wrapper,
      .wpa9-steps-toggler {
        width: 182px;
        height: 182px;
      }

        .wpa9-steps-toggler:hover,
        .wpa9-steps-toggler-wrapper.wpa9-steps-active .wpa9-steps-toggler {
          color: #fff;
          background-color: var(--c-grey-d);
          transition: var(--hover);
        }

        .wpa9-steps-toggler:hover {
          background-color: var(--c-main-btn);
        }


        .wpa9-steps-toggler .wpa9-step-title {
          display: block;
          padding: calc(.75 * var(--spacer) );
        }


        .wpa9-step-image {}

          .wpa9-step-image .wpa9-step-image-wrapper {
            position: relative;
            display: block;
            border-radius: 50%;

            overflow: auto;
          }

          .wpa9-step-image .wpa9-step-image-wrapper {
          }

          .wpa9-step-image .wpa9-steps-toggler {
            background-color: #fff;
          }

          .wpa9-step-image .wpa9-step-image-wrapper {
            position: relative;
      	    width: 100%;
      			margin: 0 auto;
      			/* width: 182px;
      			height: 182px; */
          }

            .wpa9-step-image .wpa9-step-image-wrapper img {
              opacity: 0.80;

              position: absolute;
      		    width: 100%;
      		    height: 100%;
      		    top: 0; left: 0;
      		    object-fit: cover;
      		    object-position: center;
            }

          .wpa9-step-image .wpa9-steps-toggler:hover,
          .wpa9-step-image.wpa9-steps-active .wpa9-steps-toggler {
            background-color: transparent;
          }

            .wpa9-step-image .wpa9-steps-toggler:hover img,
            .wpa9-step-image.wpa9-steps-active .wpa9-step-image-wrapper img {
              opacity: 1;
            }


      .wpa9-steps-decoration {
        /* display: none; */
        display: block;
        position: relative;
        /* left: calc(50% - 1px); */
        margin: 20px auto;
        width: 2px;
        height: 5px;
        /* background-color: #000; */
      }

        .wpa9-step-image .wpa9-steps-decoration {
          background-color: var(--c-main-hover);
          width: 80px;
        }

      .wpa9-steps-hyphen {
        display: block;
        width: 23px; height: 23px;
        background-repeat: no-repeat;
        background-size: contain;

        transform: rotate(90deg);
        margin: calc(1 * var(--spacer) ) calc(0.6 * var(--spacer) );
      }

        .wpa9-steps-hyphen.hyphen-visible {
          background-image: url('../../../images/arrow.svg');
        }



  .wpa9-steps-contents-wrapper {
    display: none;
    width: 100%;
  }

    .wpa9-steps-content {
      position: relative;
      font-size: 20px;
      width: 100%;
      /* max-width: 620px;
      text-align: center; */
      max-width: 620px;
      text-align: center;
    }

      .wpa9-steps-content.step_4_1 {}

      .wpa9-steps-content.step_4_2 {
        left: 20%;
      }

      .wpa9-steps-content.step_4_3 {
        right: 0;
        margin-left: auto;
        /* text-align: right; */
      }

      .wpa9-steps-content.step_4_4 {
        right: 0;
        margin-left: auto;
        /* text-align: right; */
      }

      .wpa9-steps-content.step_5_1 {}

      .wpa9-steps-content.step_5_2 {
        left: 20%;
      }

      .wpa9-steps-content.step_5_3 {

        /* text-align: right; */
      }

      .wpa9-steps-content.step_5_4 {
        right: 0;
        margin-left: auto;
        /* text-align: right; */
      }

      .wpa9-steps-content.step_5_5 {
        right: 0;
        margin-left: auto;
        /* text-align: right; */
      }

    .wpa9-steps-contents-wrapper .wpa9-steps-content {
      margin-top: calc(.5 * var(--spacer) );
    }



      .wpa9-steps-content p:last-child {
        margin-bottom: 0;
      }


  .wpa9-steps-button {
    margin-top: calc(3 * var(--spacer) );
    margin-bottom: calc(0.5 * var(--spacer) );
  }

    .wpa9-steps-button .btn {

    }


@media only screen
and (min-width : 576px) {

  .so-widget-wpa9-steps {
    margin-left: -15px;
    margin-right: -15px;
  }

}

@media only screen
and (min-width : 768px) {

  .wpa9-steps-togglers .wpa9-steps-content {
    display: none;
  }

  .wpa9-steps-toggler-wrapper {
    position: relative;
    width: auto;
  }

  .wpa9-steps-decoration {
    display: block;
  }

  .wpa9-steps-toggler {
    font-size: .9375em;
  }

  .wpa9-step-image .wpa9-step-image-wrapper,
  .wpa9-steps-toggler {
    width: 116px;
    height: 116px;
  }

  .wpa9-steps-hyphen {
    transform: rotate(0deg);

    margin: 47px calc(0.4 * var(--spacer) ) 0;
    width: 18px;
    height: 18px;
  }

  .wpa9-steps-hyphen.hyphen-visible {
    background-image: url('../../../images/arrow.svg');
  }

  .wpa9-steps-contents-wrapper {
    display: inline-flex;
  }

    .wpa9-steps-content {
      text-align: left;
    }

  .wpa9-steps-contents-wrapper .wpa9-steps-content:not(.wpa9-steps-active),
  .wpa9-steps-toggler-wrapper:not(.wpa9-steps-active) .wpa9-steps-decoration {
    display: none;
  }

}


@media only screen
and (min-width : 992px) {

  .wpa9-step-image .wpa9-step-image-wrapper,
  .wpa9-steps-toggler {
    font-size: 1.125em;
    width: 162px;
    height: 162px;
  }

  .wpa9-steps-content {
    left: calc(50% - 310px);
  }

  .wpa9-steps-hyphen {
    margin-top: 70px;
    margin: 65px calc(0.4 * var(--spacer) ) 0;
    width: 20px;
    height: 20px;
  }

}


@media only screen
and (min-width : 1200px) {

  .wpa9-step-image .wpa9-step-image-wrapper,
  .wpa9-steps-toggler {
    font-size: 1.1875em;
    line-height: 25px;
    width: 182px;
    height: 182px;
  }


  .wpa9-steps-hyphen {
    margin-top: 76px;
    width: 23px;
    height: 23px;
  }

}
