@import url("https://fonts.googleapis.com/css?family=Pacifico");
.box {
  position: relative;
  margin: auto;
  display: block;
  margin-top: 5%;
  width: 600px;
  height: 600px;
  background: #9ddadb;
  z-index: -5;
  overflow: hidden;
}

.cart {
  width: 450px;
  height: 450px;
}

.base {
  height: 2%;
  width: 70%;
  background: #a65f49;
  position: absolute;
  top: 80%;
  left: 15%;
}

.wheel {
  height: 20%;
  width: 20%;
  background: #9ddadb;
  border-radius: 50%;
  border: 10px solid #a65f49;
  position: absolute;
  top: 70%;
  z-index: -4;
}
.wheel--left {
  left: 20%;
}
.wheel--right {
  right: 20%;
}
.wheel--center {
  width: 40%;
  height: 40%;
  border-radius: 50%;
  background: #a65f49;
  position: absolute;
  top: 29%;
  left: 29%;
}
.wheel--center:before {
  content: '';
  width: 40%;
  height: 40%;
  border-radius: 50%;
  background: #934a3b;
  position: absolute;
  top: 29%;
  left: 29%;
}

.wheel__spoke {
  width: 8%;
  height: 40%;
  background: #a65f49;
  position: absolute;
}
.wheel__spoke--1 {
  top: 50%;
  left: 20%;
  transform: rotate(45deg);
}
.wheel__spoke--2 {
  top: 60%;
  left: 45%;
}
.wheel__spoke--3 {
  top: 50%;
  right: 22%;
  transform: rotate(-45deg);
}

.counter {
  background: #fff;
  height: 20%;
  width: 420px;
  position: absolute;
  left: 15%;
  top: 60%;
}
.counter__stripe {
  width: 10%;
  height: 100%;
  position: absolute;
}
.counter__stripe--1 {
  background: #632C65;
  left: 0;
}
.counter__stripe--2 {
  background: #E2A9E5;
  left: 10%;
}
.counter__stripe--3 {
  background: #632C65;
  left: 20%;
}
.counter__stripe--4 {
  background: #E2A9E5;
  left: 30%;
}
.counter__stripe--5 {
  background: #632C65;
  left: 40%;
}
.counter__stripe--6 {
  background: #E2A9E5;
  left: 50%;
}
.counter__stripe--7 {
  background: #632C65;
  left: 60%;
}
.counter__stripe--8 {
  background: #E2A9E5;
  left: 70%;
}
.counter__stripe--9 {
  background: #632C65;
  left: 80%;
}
.counter__stripe--10 {
  background: #E2A9E5;
  left: 90%;
}

.counter__top {
  background: #4B384C;
  height: 8%;
  width: 420px;
  position: absolute;
  left: 0%;
  top: 0%;
}

.counter__top2 {
  background: #E2A9E5;
  height: 8%;
  width: 420px;
  position: absolute;
  left: 0%;
  top: -8%;
}

.handle {
  width: 50px;
  height: 10px;
  background: #a65f49;
  position: absolute;
  right: 40px;
  top: 60%;
}
.handle:before {
  content: '';
  width: 30px;
  height: 10px;
  background: #a65f49;
  position: absolute;
  top: 90%;
  left: 85%;
  transform: rotate(45deg);
}

.handle--bottom {
  width: 50px;
  height: 5px;
  background: #4B384C;
  position: absolute;
  right: 40px;
  top: 61%;
}
.handle--bottom:before {
  content: '';
  width: 28px;
  height: 5px;
  background: #4B384C;
  position: absolute;
  top: 169%;
  left: 85%;
  transform: rotate(45deg);
}

.roof {
  height: 150px;
  width: 420px;
  perspective: 600px;
}

.roof__base {
  height: 150px;
  width: 440px;
  background: #E2A9E5;
  position: absolute;
  left: 18%;
  top: 25%;
  transform: rotateX(45deg);
}
.roof__base h1 {
  font-family: 'Pacifico', cursive;
  color: #632C65;
  font-size: 3rem;
  text-align: center;
  margin-left: -1rem;
}

.roof__stripe {
  width: 44px;
  height: 44px;
  position: absolute;
  z-index: -1;
}
.roof__stripe--1 {
  border-radius: 50%;
  background: #4B384C;
  position: absolute;
  top: 104%;
  left: 15%;
}
.roof__stripe--2 {
  border-radius: 50%;
  background: #632C65;
  position: absolute;
  top: 104%;
  left: 25.5%;
}
.roof__stripe--3 {
  border-radius: 50%;
  background: #4B384C;
  position: absolute;
  top: 104%;
  left: 36%;
}
.roof__stripe--4 {
  border-radius: 50%;
  background: #632C65;
  position: absolute;
  top: 104%;
  left: 46.5%;
}
.roof__stripe--5 {
  border-radius: 50%;
  background: #4B384C;
  position: absolute;
  top: 104%;
  left: 56.5%;
}
.roof__stripe--6 {
  border-radius: 50%;
  background: #632C65;
  position: absolute;
  top: 104%;
  left: 67%;
}
.roof__stripe--7 {
  border-radius: 50%;
  background: #4B384C;
  position: absolute;
  top: 104%;
  left: 77%;
}
.roof__stripe--8 {
  border-radius: 50%;
  background: #632C65;
  position: absolute;
  top: 104%;
  left: 87.5%;
}
.roof__stripe--9 {
  border-radius: 50%;
  background: #4B384C;
  position: absolute;
  top: 104%;
  left: 98%;
}
.roof__stripe--10 {
  border-radius: 50%;
  background: #632C65;
  position: absolute;
  top: 104%;
  left: 108.5%;
}
.roof__stripe--11 {
  border-radius: 50%;
  background: #4B384C;
  position: absolute;
  top: 104%;
  left: 119%;
}

.sweets {
  background: #9ddadb;
  height: 40%;
  width: 420px;
  position: absolute;
  left: 15%;
  top: 19%;
}

.sweets__poles {
  width: 3%;
  height: 100%;
  background: repeating-linear-gradient(45deg, #E2A9E5, #E2A9E5 10px, #4B384C 10px, #4B384C 20px);
}
.sweets__poles:after {
  content: '';
  width: 3%;
  height: 100%;
  background: repeating-linear-gradient(45deg, #E2A9E5, #E2A9E5 10px, #4B384C 10px, #4B384C 20px);
  position: absolute;
  right: 0;
}

.sweets__base {
  height: 15px;
  width: 300px;
  background: #4B384C;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 94%;
  left: 14%;
  z-index: 2;
}

.sweets__sticks {
  width: 4px;
  background: #4B384C;
  position: absolute;
  z-index: 2;
}
.sweets__sticks--1 {
  height: 40px;
  left: 20%;
  top: 80%;
}
.sweets__sticks--2 {
  height: 50px;
  left: 31%;
  top: 74%;
}
.sweets__sticks--3 {
  height: 30px;
  left: 42%;
  top: 85%;
}
.sweets__sticks--4 {
  height: 45px;
  left: 53%;
  top: 78%;
}
.sweets__sticks--5 {
  height: 55px;
  left: 64%;
  top: 72%;
}
.sweets__sticks--6 {
  height: 35px;
  left: 75%;
  top: 82%;
}

.sweets__hearts--1 {
  height: 30px;
  width: 20px;
  background: #E2A9E5;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 70%;
  left: 19.2%;
  transform: rotate(45deg);
  z-index: 3;
  border-right: 1px solid rgba(0, 0, 0, 0.5);
  border-top: 1px solid rgba(0, 0, 0, 0.5);
}
.sweets__hearts--1:before {
  content: '';
  height: 30px;
  width: 20px;
  background: #E2A9E5;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 20%;
  left: -40%;
  transform: rotate(-90deg);
  border-left: 1px solid rgba(0, 0, 0, 0.5);
  border-top: 1px solid rgba(0, 0, 0, 0.5);
}

.sweets__hearts--2 {
  height: 30px;
  width: 20px;
  background: #632C65;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 62%;
  left: 30%;
  transform: rotate(45deg);
  z-index: 3;
}
.sweets__hearts--2:before {
  content: '';
  height: 30px;
  width: 20px;
  background: #632C65;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 20%;
  left: -40%;
  transform: rotate(-90deg);
}

.sweets__hearts--3 {
  height: 30px;
  width: 20px;
  background: #E2A9E5;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 72%;
  left: 41%;
  transform: rotate(45deg);
  z-index: 3;
  border-right: 1px solid rgba(0, 0, 0, 0.5);
  border-top: 1px solid rgba(0, 0, 0, 0.5);
}
.sweets__hearts--3:before {
  content: '';
  height: 30px;
  width: 20px;
  background: #E2A9E5;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 20%;
  left: -40%;
  transform: rotate(-90deg);
  border-left: 1px solid rgba(0, 0, 0, 0.5);
  border-top: 1px solid rgba(0, 0, 0, 0.5);
}

.sweets__hearts--4 {
  height: 30px;
  width: 20px;
  background: #632C65;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 66%;
  left: 52%;
  transform: rotate(45deg);
  z-index: 3;
}
.sweets__hearts--4:before {
  content: '';
  height: 30px;
  width: 20px;
  background: #632C65;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 20%;
  left: -40%;
  transform: rotate(-90deg);
}

.sweets__hearts--5 {
  height: 30px;
  width: 20px;
  background: #E2A9E5;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 60%;
  left: 63%;
  transform: rotate(45deg);
  z-index: 3;
  border-right: 1px solid rgba(0, 0, 0, 0.5);
  border-top: 1px solid rgba(0, 0, 0, 0.5);
}
.sweets__hearts--5:before {
  content: '';
  height: 30px;
  width: 20px;
  background: #E2A9E5;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 20%;
  left: -40%;
  transform: rotate(-90deg);
  border-left: 1px solid rgba(0, 0, 0, 0.5);
  border-top: 1px solid rgba(0, 0, 0, 0.5);
}

.sweets__hearts--6 {
  height: 30px;
  width: 20px;
  background: #632C65;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 70%;
  left: 74.2%;
  transform: rotate(45deg);
  z-index: 3;
}
.sweets__hearts--6:before {
  content: '';
  height: 30px;
  width: 20px;
  background: #632C65;
  border-radius: 50% 50% 0 0;
  position: absolute;
  top: 20%;
  left: -40%;
  transform: rotate(-90deg);
}
