.kroki-cs {
  --kroki-cs-bg: #1f1f1f;
  width: 100%;
  display: grid;
  gap: 0px;
}

.kroki-cs__step:first-child {
    margin-top:100px;
}

.kroki-cs__step:last-child {
    margin-bottom:100px;
}

.kroki-cs__step {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px minmax(0, 1fr);
  grid-template-rows: auto 1fr;
  align-items: start;
  min-height: 340px;
}

.kroki-cs__axis {
  grid-column: 2;
  grid-row: 1 / span 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 40px;
}

.kroki-cs__small-circle {
  width: 42px;
  height: 42px;
  display: block;
}

.kroki-cs__arrow {
  width: 42px;
  height: auto;
  min-height: 250px;
  display: block;
  margin-top: 8px;
}

.kroki-cs__content {
  width: min(520px, 100%);
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.kroki-cs__step--right .kroki-cs__content {
  grid-column: 3;
  grid-row: 2;
  justify-self: start;
  text-align: left;
  align-items: flex-start;
}

.kroki-cs__step--left .kroki-cs__content {
  grid-column: 1;
  grid-row: 2;
  justify-self: end;
  text-align: right;
  align-items: flex-end;
}

.kroki-cs__visual {
  grid-row: 1;
  display: flex;
  align-items: center;
  min-height: 166px;
  margin-top: -22px;
}

.kroki-cs__step--right .kroki-cs__visual {
  grid-column: 3;
  justify-self: start;
  flex-direction: row;
  margin-left: -5px;
}

.kroki-cs__step--left .kroki-cs__visual {
  grid-column: 1;
  flex-direction: row;
  justify-content: flex-end;
  justify-self: end;
  width: 100%;
  margin-right: -5px;
}

.kroki-cs__connector {
  display: block;
  width: 198px;
  height: 87px;
  flex: 0 0 auto;
  pointer-events: none;
}

.kroki-cs__connector--reverse {
  transform: scaleX(-1);
}

.kroki-cs__step--right .kroki-cs__connector {
  margin-right: -12px;
}

.kroki-cs__step--left .kroki-cs__connector {
  order: 2;
  margin-left: -12px;
}

.kroki-cs__step--left .kroki-cs__icon-shell {
  order: 1;
}

.kroki-cs__icon-shell {
  width: 166px;
  height: 166px;
  position: relative;
  flex: 0 0 auto;
}

.kroki-cs__step--left .kroki-cs__icon-shell {
  margin-left: 0;
}

.kroki-cs__icon-shell-svg {
  width: 100%;
  height: 100%;
  display: block;
}

.kroki-cs__icon-image {
  position: absolute;
  width: 72px;
  height: 72px;
  object-fit: contain;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.kroki-cs__title {
  margin: 25px 55px 0;
  color: var(--kroki-cs-text-color, #ffffff);
  width: 100%;
}

.kroki-cs__opis {
  color: var(--kroki-cs-text-color, #ffffff);
  width: 100%;
  margin: 0 55px;
}

.kroki-cs__step--left .kroki-cs__title,
.kroki-cs__step--left .kroki-cs__opis {
  width: auto;
  max-width: calc(100% - 55px);
  margin-left: 0;
  margin-right: 55px;
}

.kroki-cs__opis p {
    margin: 0;
}

.kroki-cs__opis ul {
	margin: 0;
}

.kroki-cs__opis > *:last-child {
  margin-bottom: 0;
}

@media (max-width: 900px) {
	.kroki-cs__step:first-child {
    margin-top:15px;
}

	.kroki-cs__step:last-child {
    margin-bottom:20px;
}
	
	
  .kroki-cs__small-circle {
    width: 38px;
    height: 38px;
  }

  .kroki-cs__arrow {
    width: 38px;
  }

  .kroki-cs__connector {
    width: 178px;
    height: 78px;
  }

  .kroki-cs__icon-shell {
    width: 150px;
    height: 150px;
  }

  .kroki-cs__icon-image {
    width: 65px;
    height: 65px;
  }

  .kroki-cs__step,
  .kroki-cs__step--left,
  .kroki-cs__step--right {
    grid-template-columns: minmax(0, 1fr) 38px;
    grid-template-rows: auto auto;
    min-height: 0;

  }
	
	.kroki-cs__step:not(:first-child) {
    margin-top: 15px;
  }



  .kroki-cs__axis {
    grid-column: 2;
    grid-row: 1 / span 2;
    margin-top: 56px;
  }

  .kroki-cs__step--left .kroki-cs__visual,
  .kroki-cs__step--right .kroki-cs__visual {
    grid-column: 1;
    grid-row: 1;
    justify-self: end;
    justify-content: flex-end;
    flex-direction: row;
    margin-left: 0;
    margin-right: -4px;
    margin-top: 0;
    width: 100%;
    min-height: 150px;
  }

  .kroki-cs__step--left .kroki-cs__content,
  .kroki-cs__step--right .kroki-cs__content {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
    text-align: left;
    width: min(468px, 100%);
    align-items: flex-end;
    gap: 9px;
    margin-top: 10px;
  }

  .kroki-cs__step--right .kroki-cs__connector,
  .kroki-cs__step--left .kroki-cs__connector {
    display: block;
    order: 2;
    margin-right: 0;
    margin-left: -12px;
  }

  .kroki-cs__step--right .kroki-cs__connector {
    transform: scaleX(-1);
  }

  .kroki-cs__step--right .kroki-cs__icon-shell,
  .kroki-cs__step--left .kroki-cs__icon-shell {
    order: 1;
  }

  .kroki-cs__step--right .kroki-cs__title,
  .kroki-cs__step--right .kroki-cs__opis,
  .kroki-cs__step--left .kroki-cs__title,
  .kroki-cs__step--left .kroki-cs__opis {
    max-width: calc(100% - 60px);
    width: 100%;
  }

  .kroki-cs__step--right .kroki-cs__title,
  .kroki-cs__step--left .kroki-cs__title {
    font-size: 1.45em;
	margin-top: 0;
  }

  .kroki-cs__step--right .kroki-cs__opis,
  .kroki-cs__step--left .kroki-cs__opis {
    font-size: 1em;
  }

  .kroki-cs__step--right .kroki-cs__opis {
    text-align: left;
  }

  .kroki-cs__arrow {
    min-height: 153px;
  }
}
