
.outer {
	
  height: 350px;
  min-width: 10vw;
  flex: 1;
  margin-top: 5px;
  margin-bottom: 10px;
}

.progress {
  display: inline-flex;
  height: 350px;
  padding: 5vh 10%;
	width: 100%;
}
.progress > div {
  display: flex;
  flex-direction: column;
  color: #333;
}
.progress > div.left {
  padding-right: 20px; 
  text-align: right; font-size: 1.1em;
}
.progress > div.left div:last-of-type:after {
  display: none;
}
.progress > div.left div:after {
  content: "";
  background: rgba(51, 51, 51, 0.1);
  border-radius: 2px;
  position: absolute;
  right: -20px;
  top: 10px;
  height: 101%;
  width: 1px;
  transform: translateX(50%);
}
.progress > div.right {
  padding-left: 20px; 
	
}
.progress > div.right div.prev:after {
  transition: none;
}
.progress > div.left div.current{
  color: #e45d32;
  font-weight: bold; font-size:1.4em;
}
.progress > div.right div.current {
  color: #e45d32;
  font-weight: bold;
}
.progress > div.right div.current:before {
  background: #e45d32;
  padding: 10px;
  transition: all 0.2s 0.15s cubic-bezier(0.175, 0.885, 0.32, 2);
}
.progress > div.right div.current:after {
  height: 0%;
  transition: height 0.2s ease-out;
}
.progress > div.right div.current ~ div {
  color: #666;
}
.progress > div.right div.current ~ div:before {
  background: #666;
  padding: 2.5px;
}
.progress > div.right div.current ~ div:after {
  height: 0%;
  transition: none;
}

.progress > div.right div:before {
  content: "";
 background: #b8b8ba;
  padding: 5px;
  border-radius: 50%;
  position: absolute;
  left: -20px;
  top: 5px;
  transform: translateX(-50%) translateY(-50%);
  transition: padding 0.2s ease;
}
.progress > div.right div:after {
  content: "";
  
  background: #b8b8ba;
  border-radius: 2px;
  position: absolute;
  left: -20px;
  top: 5px;
  height: 101%;
  width: 2px;
  transform: translateX(-50%);
  transition: height 0.2s ease;
}

/*.progress > div.right  div:before .active{
  content: "";
  background: #e45d32;
  padding: 5px;
  border-radius: 50%;
  position: absolute;
  left: -20px;
  top: 5px;
  transform: translateX(-50%) translateY(-50%);
  transition: padding 0.2s ease;
}
.progress > div.right div:after .active{
  content: "";
  background: #e45d32;

  border-radius: 2px;
  position: absolute;
  left: -20px;
  top: 5px;
  height: 101%;
  width: 2px;
  transform: translateX(-50%);
  transition: height 0.2s ease;
}*/

.progress > div div {
  flex: 1;
  position: relative;
  line-height: 5px;
  cursor: default;
  min-height: 5px;
}
.progress > div div:last-of-type {
  flex: 0;
}

/*.progress.dark {
  background: #333;
  display: inline-flex;
  height: 100%;
  width: 100%;
  padding: 5vh 10%;
}
.progress.dark > div {
  display: flex;
  flex-direction: column;
  color: #ccc;
}
.progress.dark > div.left {
  padding-right: 20px;
  text-align: right;
}
.progress.dark > div.left div:last-of-type:after {
  display: none;
}
.progress.dark > div.left div:after {
  content: "";
  background: rgba(211, 211, 211, 0.05);
  border-radius: 2px;
  position: absolute;
  right: -20px;
  top: 10px;
  height: 101%;
  width: 1px;
  transform: translateX(50%);
}
.progress.dark > div.right {
  padding-left: 20px;
}
.progress.dark > div.right div.prev:after {
  transition: none;
}
.progress.dark > div.right div.current {
  color: white;
  font-weight: bold;
}
.progress.dark > div.right div.current:before {
  background: white;
  padding: 10px;
  transition: all 0.2s 0.15s cubic-bezier(0.175, 0.885, 0.32, 2);
}
.progress.dark > div.right div.current:after {
  height: 0%;
  transition: height 0.2s ease-out;
}
.progress.dark > div.right div.current ~ div {
  color: #666;
}
.progress.dark > div.right div.current ~ div:before {
  background: #666;
  padding: 2.5px;
}
.progress.dark > div.right div.current ~ div:after {
  height: 0%;
  transition: none;
}
.progress.dark > div.right div:before {
  content: "";
  background: lightgray;
  padding: 5px;
  border-radius: 50%;
  position: absolute;
  left: -20px;
  top: 10px;
  transform: translateX(-50%) translateY(-50%);
  transition: padding 0.2s ease;
}
.progress.dark > div.right div:after {
  content: "";
  background: lightgray;
  border-radius: 2px;
  position: absolute;
  left: -20px;
  top: 10px;
  height: 101%;
  width: 2px;
  transform: translateX(-50%);
  transition: height 0.2s ease;
}
.progress.dark > div div {
  flex: 1;
  position: relative;
  line-height: 20px;
  cursor: default;
  min-height: 30px;
}
.progress.dark > div div:last-of-type {
  flex: 0;
}
*/
.done.current {
  color: #2d66f8 !important;
}
.done.current:before {
  background: #2d66f8 !important;
}

/*.dark .done.current {
  color: #515df9 !important;
}
.dark .done.current:before {
  background: #515df9 !important;
}*/

/*body {
  margin: 0;
  padding: 0;
  font-family: "Lato", Arial, sans-serif;
  display: flex;
}*/

* {
  box-sizing: border-box;
}