* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Solway', serif;
  font-size: 16px;
  font-weight: 400;
  color: #2c2c2c;
  background: #fafafa;
}
body a {
  color: inherit;
  text-decoration: none;
}


.header {
  max-width: 600px;
  margin: 150px auto 50px auto;
  text-align: center;
}

.header__title {
  margin-bottom: 10px;
  font-size: 2.1rem;
  font-weight: 500;
}

.content {
  width: 95%;
  margin: 0 auto 50px;
}

.content__inner {
  display: grid;
  justify-content: center;
  grid-gap: 65px;
  grid-template-columns: repeat(4, 150px);
}

.gift-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 150px;
  height: 150px;
}

.gift-icon__ribbon {
  position: relative;
  width: 100%;
  height: 20%;
}
.gift-icon__ribbon:before, .gift-icon__ribbon:after {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 20%;
  height: 100%;
  content: '';
  border: 4px solid #dac04e;
  box-sizing: border-box;
}
.gift-icon__ribbon:before {
  transform: translateX(-30%);
  border-radius: 65% 20% 65% 0;
}
.gift-icon__ribbon:after {
  transform: translateX(-70%);
  border-radius: 20% 65% 0px 65%;
}

.gift-icon__top {
  position: relative;
  width: 100%;
  height: 20%;
  border-radius: 5px;
  background-color: #ed5d51;
  overflow: hidden;
}
.gift-icon__top:before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 20%;
  height: 100%;
  content: '';
  transform: translateX(-50%);
  background-color: #dac04e;
}
.gift-icon__top:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 10%;
  height: 100%;
  content: '';
  background-color: rgba(0, 0, 0, 0.05);
}

.gift-icon__body {
  position: relative;
  display: flex;
  justify-content: center;
  align-content: top;
  width: 85%;
  height: 60%;
  background-color: #06a98c;
}
.gift-icon__body:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: calc(100% - 10%);
  height: calc(100% - 10%);
  content: '';
  background-color: #00b494;
  z-index: 1;
}
.gift-icon__body:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-image: radial-gradient(circle at center, rgba(0, 0, 0, 0.1) 0, transparent 3px);
  background-size: 10px 10px;
  background-repeat: repeat;
  z-index: 2;
}

.gift-icon__body-ribbon {
  position: relative;
  width: 20%;
  height: 100%;
  background-color: #f0d355;
  z-index: 5;
}

.bell-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 150px;
  height: 150px;
}

.bell-icon__ribbon {
  position: relative;
  top: 2%;
  height: 15%;
  width: 15%;
  margin-bottom: -3%;
  transform: translateX(10%);
  z-index: 5;
}

.bell-icon__ribbon-left,
.bell-icon__ribbon-right {
  position: absolute;
  top: -10%;
  width: 150%;
  height: 100%;
  background-color: #e17772;
  z-index: 3;
}

.bell-icon__ribbon-left {
  transform: translateX(-70%);
  border-radius: 45% 85% 0px 40%;
}

.bell-icon__ribbon-right {
  transform: translateX(40%);
  border-radius: 85% 45% 40% 0;
}

.bell-icon__ribbon-middle {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #d84f48;
  z-index: 5;
}

.bell-icon__body {
  position: relative;
  top: 6%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 90%;
  width: 100%;
}

.bell-icon__body-top {
  position: relative;
  flex-shrink: 0;
  width: 65%;
  height: 68%;
  background-color: #dfc553;
  border-radius: 55% 55% 0px 0px;
  overflow: hidden;
  z-index: 4;
}
.bell-icon__body-top:before {
  position: absolute;
  top: 0;
  left: 15%;
  display: block;
  width: calc(100% - 15%);
  height: 100%;
  content: '';
  background-color: #f0d355;
  border-radius: 55% 55% 0px 0px;
}
.bell-icon__body-top:after {
  position: absolute;
  top: 15%;
  right: 15%;
  display: block;
  width: 7.5%;
  height: 45%;
  content: '';
  transform: translate(-37%, -19%) rotate(-46deg);
  background-color: #fff;
  border-radius: 60%;
}

.bell-icon__body-middle {
  position: relative;
  top: -7%;
  flex-shrink: 0;
  width: 100%;
  height: 26%;
  background-color: #d9b931;
  border-radius: 50% 50% 0px 0px / 100% 100% 0 0;
  overflow: hidden;
  z-index: 2;
}
.bell-icon__body-middle:before {
  position: absolute;
  top: 0;
  left: 15%;
  display: block;
  width: calc(100% - 15%);
  height: 100%;
  content: '';
  background-color: #edc930;
  border-radius: 50% 50% 0px 0px / 100% 100% 0 0;
}

.bell-icon__body-bottom {
  position: relative;
  top: -15%;
  flex-shrink: 0;
  width: 20%;
  height: 20%;
  background-color: #dfc553;
  border-radius: 50%;
  overflow: hidden;
  z-index: 1;
}
.bell-icon__body-bottom:before {
  position: absolute;
  top: 0;
  left: 30%;
  display: block;
  width: calc(100% - 15%);
  height: 100%;
  content: '';
  background-color: #f0d355;
  border-radius: 50%;
}

.santa-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 150px;
  height: 150px;
}

.santa-icon__hat {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 50%;
  width: 78%;
  z-index: 5;
}

.santa-icon__hat-top {
  position: relative;
  width: 20%;
  height: 25%;
  flex-shrink: 0;
  background-color: #e0e1e1;
  border-radius: 50%;
  overflow: hidden;
  z-index: 3;
}
.santa-icon__hat-top:before {
  position: absolute;
  top: 0;
  left: 25%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #f1f2f2;
  border-radius: 50%;
}

.santa-icon__hat-middle {
  position: relative;
  top: -2px;
  width: 75%;
  height: 60%;
  flex-shrink: 0;
  background-color: #dc5a50;
  border-radius: 50% 50% 100% 0% / 100% 100% 0% 0%;
  overflow: hidden;
  z-index: 1;
}
.santa-icon__hat-middle:before {
  position: absolute;
  top: 0;
  left: 15%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #ed5d51;
  border-radius: 50% 50% 100% 0% / 100% 100% 0% 0%;
}

.santa-icon__hat-bottom {
  position: relative;
  top: -2px;
  width: 100%;
  height: 20%;
  flex-shrink: 0;
  background-color: #e0e1e1;
  border-radius: 50px;
  overflow: hidden;
  z-index: 3;
}
.santa-icon__hat-bottom:before {
  position: absolute;
  top: 0;
  left: 15%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #f1f2f2;
  border-radius: 50px;
}

.santa-icon__head {
  position: relative;
  top: -2px;
  display: flex;
  justify-content: center;
  height: 50%;
  width: 67%;
  z-index: 3;
}

.santa-icon__head-beard {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #e0e1e1;
  border-radius: 100% 0% 50% 50% / 0% 0% 100% 100%;
  overflow: hidden;
  z-index: 5;
}
.santa-icon__head-beard:before {
  position: absolute;
  left: 0;
  bottom: 15%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #f1f2f2;
  border-radius: 100% 0% 50% 50% / 0% 0% 100% 100%;
}

.santa-icon__head-ears {
  position: absolute;
  top: 15%;
  left: 50%;
  display: block;
  width: 115%;
  height: 30%;
  transform: translate(-50%);
  background-color: #f1d6bc;
  border-radius: 100px;
  overflow: hidden;
  z-index: 3;
}
.santa-icon__head-ears:before {
  position: absolute;
  left: 0;
  bottom: 15%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #ffe2c5;
  border-radius: inherit;
}

.santa-icon__head-face {
  position: relative;
  display: flex;
  width: 75%;
  height: 45%;
  z-index: 6;
}
.santa-icon__head-face:after {
  position: absolute;
  left: 50%;
  bottom: 0;
  display: block;
  width: 25%;
  height: 50%;
  content: '';
  transform: translate(-50%, 35%);
  background-color: #ed5d51;
  border-radius: 50%;
  z-index: 2;
}

.santa-icon__face-part {
  position: relative;
  flex-shrink: 0;
  width: 70%;
  height: 100%;
  background-color: #f1d6bc;
  border-radius: 100% 0% 50% 50% / 0% 0% 100% 100%;
}
.santa-icon__face-part:before {
  position: absolute;
  left: 0;
  bottom: 7.5%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #ffe2c5;
  border-radius: 100% 0% 50% 50% / 0% 0% 100% 100%;
  overflow: hidden;
  z-index: 1;
}
.santa-icon__face-part:after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 25%;
  height: 45%;
  content: '';
  transform: translate(-70%, -60%);
  background-color: #636052;
  border-radius: 50%;
  z-index: 2;
}
.santa-icon__face-part:nth-child(2) {
  left: -40%;
}
.santa-icon__face-part:nth-child(2):before {
  left: -10%;
  width: 110%;
}
.santa-icon__face-part:nth-child(2):after {
  transform: translate(-30%, -60%);
}

.calendar-icon {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 150px;
  height: 150px;
  background-color: #db5a4f;
  border-radius: 30%;
  overflow: hidden;
}
.calendar-icon:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #ed5d51;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}

.calendar-icon__holes {
  position: relative;
  width: 100%;
  height: 15%;
  background-image: radial-gradient(circle at center, white 0, white 25%, transparent 26%);
  background-size: 50% 100%;
  background-repeat: repeat-x;
  z-index: 5;
}

.calendar-icon__body {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80%;
  height: 55%;
  margin-top: 10%;
  background-color: #ececec;
  border-radius: 0 0 30% 30%;
  overflow: hidden;
  z-index: 5;
}
.calendar-icon__body:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #fff;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}
.calendar-icon__body:after {
  position: relative;
  display: inline-flex;
  font-family: 'Arial';
  font-size: 67.5px;
  font-weight: 700;
  color: #00b494;
  content: '25';
  z-index: 3;
}

.candle-icon {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 150px;
  height: 150px;
}

.candle-icon__candle {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 45%;
  height: 82%;
  z-index: 3;
}

.candle-icon__candle-flame {
  position: relative;
  top: 3%;
  width: 50%;
  height: 33%;
  flex-shrink: 0;
  transform: rotate(45deg);
  background-color: #dec453;
  border-radius: 0% 100% 57% 43% / 0% 45% 55% 100%;
  overflow: hidden;
  z-index: 1;
}
.candle-icon__candle-flame:before {
  position: absolute;
  top: 0;
  left: 20%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #f0d355;
  border-radius: inherit;
  z-index: 1;
}
.candle-icon__candle-flame:after {
  position: absolute;
  left: 50%;
  bottom: 0;
  display: block;
  width: 40%;
  height: 40%;
  content: '';
  background-color: #ffeda1;
  border-radius: 50%;
  z-index: 2;
}

.candle-icon__candle-body {
  position: relative;
  width: 100%;
  height: 70%;
  flex-shrink: 0;
  border-radius: 10% 10% 0 0;
  background-color: #db5a4f;
  overflow: hidden;
  z-index: 3;
}
.candle-icon__candle-body:before {
  position: absolute;
  top: 0;
  left: 20%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #ed5d51;
  border-radius: inherit;
  z-index: 1;
}

.candle-icon__candle-wax {
  position: relative;
  display: flex;
  width: 100%;
  height: 45%;
  z-index: 5;
}
.candle-icon__candle-wax:after, .candle-icon__candle-wax:before, .candle-icon__candle-wax-inner {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
  content: '';
  background-color: #d84f48;
  border-radius: 0 0 50% 50%;
}
.candle-icon__candle-wax:before {
  left: -5%;
  width: 35%;
  height: 60%;
}
.candle-icon__candle-wax:after {
  left: -10%;
  width: 40%;
  height: 80%;
}
.candle-icon__candle-wax-inner {
  width: 40%;
  height: 100%;
  order: -1;
  background-color: #c94e47;
  overflow: hidden;
}
.candle-icon__candle-wax-inner:before {
  position: absolute;
  top: 0;
  left: 40%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #d84f48;
  border-radius: inherit;
  z-index: 1;
}

.candle-icon__sledge {
  position: relative;
  width: 100%;
  height: 18%;
  background-color: #06a98c;
  border-radius: 0 0 50% 50% / 0 0 80% 80%;
  z-index: 5;
}
.candle-icon__sledge:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: calc(100% - 10%);
  height: 100%;
  content: '';
  background-color: #00b494;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}

.candle-icon__sledge-hold {
  position: absolute;
  right: 0;
  bottom: 100%;
  width: 35%;
  height: 100%;
  background-color: #00b494;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
  overflow: hidden;
  z-index: 1;
}
.candle-icon__sledge-hold:before {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 60%;
  height: 100%;
  content: '';
  transform: translate(-50%);
  background-color: #fff;
  border-radius: 50% 50% 0 0;
  overflow: hidden;
  z-index: 1;
}

.snowman-icon {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 150px;
  height: 150px;
  overflow: hidden;
}

.snowman-icon__head {
  position: relative;
  top: 15%;
  flex-shrink: 0;
  width: 55%;
  height: 55%;
  background-color: #dfe0e0;
  border-radius: 50%;
  overflow: hidden;
  z-index: 1;
}
.snowman-icon__head:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #f1f2f2;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}

.snowman-icon__face {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.snowman-icon__face:before {
  position: relative;
  top: -10%;
  display: inline-flex;
  width: 60%;
  height: 20%;
  content: '';
  background-image: radial-gradient(circle at center, #636052 0, #636052 35%, transparent 35%);
  background-size: 50% 100%;
  background-repeat: repeat-x;
  z-index: 5;
}
.snowman-icon__face:after {
  position: relative;
  top: -10%;
  display: inline-flex;
  width: 15%;
  height: 15%;
  content: '';
  background-color: #ef6b3a;
  border-radius: 50%;
  z-index: 5;
}

.snowman-icon__body {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  width: 75%;
  height: 75%;
  background-color: #dfe0e0;
  border-radius: 50%;
  overflow: hidden;
  z-index: 3;
}
.snowman-icon__body:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #f1f2f2;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}
.snowman-icon__body:after {
  position: relative;
  top: 10%;
  display: inline-flex;
  width: 20%;
  height: 50%;
  content: '';
  background-image: radial-gradient(circle at center, #636052 0, #636052 45%, transparent 45%);
  background-size: 100% 50%;
  background-repeat: repeat-y;
  z-index: 5;
}

.face-icon {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 150px;
  height: 150px;
}

.face-icon__hat {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  width: 85%;
  height: 55%;
  z-index: 5;
}

.face-icon__hat-top {
  position: relative;
  flex-shrink: 0;
  width: 85%;
  height: 75%;
  background-color: #079076;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
  overflow: hidden;
  z-index: 2;
}
.face-icon__hat-top:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #00997c;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}
.face-icon__hat-top:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-image: radial-gradient(circle at center, #fff 0, #fff 25%, transparent 25%), radial-gradient(circle at center, #008269 0, #008269 35%, transparent 35%);
  background-position: 0 70%, 0 75%;
  background-size: 15% 10%, 30% 25%;
  background-repeat: repeat-x;
  overflow: hidden;
  z-index: 3;
}

.face-icon__hat-top-inner {
  position: absolute;
  top: 20%;
  left: 0;
  width: 100%;
  height: 25%;
  background-image: linear-gradient(45deg, #00997c 25%, transparent 25%), linear-gradient(315deg, #00997c 25%, transparent 25%), linear-gradient(135deg, #00997c 25%, transparent 25%), linear-gradient(225deg, #00997c 25%, transparent 25%);
  background-position: 0% 0%, 0% 0%, -50% 0%, -50% 0%;
  background-size: 20% 100%;
  background-repeat: repeat-x;
  background-color: #fff;
  z-index: 5;
}

.face-icon__hat-bottom {
  position: relative;
  top: -5%;
  flex-shrink: 0;
  width: 100%;
  height: 30%;
  background-color: #07a88c;
  border-radius: 10% 10% 25% 25% / 55% 55% 65% 65%;
  overflow: hidden;
  z-index: 3;
}
.face-icon__hat-bottom:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #00b494;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}

.face-icon__face {
  position: relative;
  top: -3%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 70%;
  height: 45%;
  background-color: #ecd1b8;
  border-radius: 0 0 50% 50% / 0 0 100% 100%;
  z-index: 2;
}
.face-icon__face:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: calc(100% - 10%);
  height: 100%;
  content: '';
  background-color: #ffe2c5;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}

.face-icon__eyes {
  position: relative;
  flex-shrink: 0;
  width: 65%;
  height: 35%;
  margin-top: 18%;
  background-image: radial-gradient(circle at center, #636052 30%, transparent 30%);
  background-position: 0 0;
  background-size: 50% 100%;
  background-repeat: repeat-x;
  z-index: 3;
}

.face-icon__cheeks {
  position: relative;
  top: -10%;
  flex-shrink: 0;
  width: 105%;
  height: 40%;
  background-image: radial-gradient(circle at center, #ffc197 30%, transparent 30%);
  background-position: 0 0;
  background-size: 50% 100%;
  background-repeat: repeat-x;
  z-index: 3;
}

.face-icon__smile {
  position: relative;
  top: -45%;
  flex-shrink: 0;
  width: 20%;
  height: 30%;
  transform: rotate(-45deg);
  border: 4px solid transparent;
  border-bottom-color: #636052;
  border-left-color: #636052;
  border-radius: 50%;
  z-index: 3;
}

.face-icon__ears {
  position: absolute;
  top: 52%;
  left: 50%;
  height: 25%;
  width: 85%;
  transform: translateX(-50%);
  z-index: 2;
}
.face-icon__ears:before, .face-icon__ears:after {
  position: absolute;
  top: 0;
  display: block;
  width: 15%;
  height: 100%;
  content: '';
  background-color: #ed5d51;
  border-radius: 140px;
}
.face-icon__ears:before {
  left: 0;
}
.face-icon__ears:after {
  right: 0;
}

.cake-icon {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 150px;
  height: 150px;
}

.cake-icon__cake {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 75%;
  height: 90%;
}

.cake-icon__cake-top {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  height: 35%;
  width: 35%;
}

.cake-icon__cake-berry {
  position: relative;
  width: 100%;
  height: 60%;
  margin-bottom: -40%;
  transform: rotate(58deg);
  background-color: #ed5d51;
  border-radius: 0% 100% 0% 100% / 0% 100% 0% 100%;
  z-index: 1;
}

.cake-icon__cake-cream {
  position: relative;
  width: 80%;
  height: 40%;
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
  background-color: #dfe0e0;
  z-index: 3;
}
.cake-icon__cake-cream:before, .cake-icon__cake-cream:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: inherit;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}
.cake-icon__cake-cream:before {
  transform: translateX(-45%);
}
.cake-icon__cake-cream:after {
  transform: translateX(45%);
}

.cake-icon__cake-body {
  position: relative;
  width: 100%;
  height: 65%;
  background-color: #dfe0e0;
  border-radius: 25% 25% 0 0;
  overflow: hidden;
}
.cake-icon__cake-body:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #f1f2f2;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}
.cake-icon__cake-body:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-image: linear-gradient(to bottom, transparent 25%, #f47973 0, #f47973 48%, transparent 48%), linear-gradient(to right, transparent 10%, #ed5d51 0, #ed5d51 80%, transparent 80%), linear-gradient(to top, #f47973 15%, transparent 15%);
  background-size: 100% 100%, 35% 12%, 100% 100%;
  background-position: 0 0, -1% 68%, 0 100%;
  background-repeat: no-repeat, repeat-x, no-repeat;
  border-radius: inherit;
  z-index: 2;
}

.cake-icon__cake-decoration {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 25%;
  background-color: #dfe0e0;
  border-radius: 30% 30% 0 0 / 80% 80% 0 0;
  z-index: 5;
}
.cake-icon__cake-decoration:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #f1f2f2;
  border-radius: inherit;
  overflow: hidden;
  z-index: 1;
}
.cake-icon__cake-decoration:after {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-image: radial-gradient(circle at center, #dfe0e0 50%, transparent 50%), radial-gradient(circle at center, #f1f2f2 50%, transparent 50%), radial-gradient(circle at center, #f1f2f2 50%, transparent 50%);
  background-size: 33% 100%, 30% 100%, 30% 100%;
  background-repeat: no-repeat, repeat-x, repeat-x;
  background-position: -20% 0, -107% 0, 0 0;
  z-index: 3;
}

.cake-icon__plate {
  position: relative;
  height: 10%;
  width: 100%;
  border-radius: 100px;
  background-color: #07a88c;
  overflow: hidden;
}
.cake-icon__plate:before {
  position: absolute;
  top: 0;
  left: 10%;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #00b494;
  border-radius: inherit;
  z-index: 1;
}
