body {
  background: rebeccapurple;
}

.circle {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  width: 400px;
  height: 400px;
  border-radius: 200px;
  overflow: hidden;
}

.wave {
  position: absolute;
  width: 100%;
  height: 100px;
  background: linear-gradient(90deg,rgba(105, 203, 255, 1) 0%, rgba(56, 185, 255, 1) 25%, rgba(105, 203, 255, 1) 50%, rgba(56, 185, 255, 1) 75%, rgba(105, 203, 255, 1) 100%);
  
  --mask:
    radial-gradient(51.61px at 50% 72px,#000 99%,#0000 101%) calc(50% - 60px) 0/120px 100%,
    radial-gradient(51.61px at 50% -42px,#0000 99%,#000 101%) 50% 30px/120px 100% repeat-x;
  mask: var(--mask);
}

.uno {
  bottom: 100px;
}
.dos {
  background: linear-gradient(90deg,rgba(56, 185, 255, 1) 0%, rgba(105, 203, 255, 1) 25%, rgba(56, 185, 255, 1) 50%, rgba(105, 203, 255, 1) 75%, rgba(56, 185, 255, 1) 100%);
  width: 120%;
  bottom: 50px;
  left: 20px;
}
.tres {
  bottom: 0;
}

.ladder {
  position: absolute;
  bottom: 80px;
  left: 80px;
  width: 20px;
  height: 200px;
  background: linear-gradient(0deg,rgba(255, 185, 71, 1) 0%, rgba(255, 202, 117, 1) 100%);
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

.ladder::before {
  display: block;
  content: '';
  position: absolute;
  bottom: 80px;
  left: 80px;
  width: 20px;
  height: 150px;
  background: linear-gradient(0deg,rgba(255, 185, 71, 1) 0%, rgba(255, 202, 117, 1) 100%);
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

.ladder::after {
  display: block;
  content: '';
  position: relative;
  top: 15px;
  z-index: -1;
  width: 60px;
  height: 30px;
  border: 20px solid #FFCA75;
  transform: skewY(-25deg);
}

.board {
  position: absolute;
  top: 100px;
  left: 90px;
  width: 280px;
  height: 40px;
  background: #CC80ED;
  corner-shape: bevel;
  border-radius: 370px 0 / 180px 0;
  border: 3px solid #A148C7;
  box-sizing: border-box;
}

.board::before {
  display: block;
  content: '';
  position: absolute;
  left: -3px;
  bottom: -7px;
  width: 200px;
  height: 5px;
  background: #440061;
}

.board::after {
  display: block;
  content: '';
  position: absolute;
  z-index: -1;
  right: -2px;
  bottom: 10px;
  width: 80px;
  height: 8px;
  background: #8327AB;
  transform: skewY(-25deg);
}