/* ==========================================================
   BACKGROUND 1
   Candy Game World
========================================================== */

.background--1 {
  position: relative;

  width: 100%;
  height: 100%;

  overflow: hidden;

  background: #8edcff;
}

/* ==========================================================
   SKY
========================================================== */

.background--1 .background__sky {
  position: absolute;

  inset: 0;

  background: #8edcff;
}

/* ==========================================================
   SUN
========================================================== */

.background--1 .background__sun {
  position: absolute;

  top: 10%;
  right: 12%;

  width: 72px;
  height: 72px;

  border-radius: 50%;

  background: #ffd84d;

  box-shadow: 0 6px 0 #f5bd36;
}

.background--1 .background__sun-core {
  position: absolute;

  top: 15px;
  left: 18px;

  width: 18px;
  height: 10px;

  border-radius: 50%;

  background: rgba(255, 255, 255, 0.45);

  transform: rotate(-20deg);
}

/* ==========================================================
   CLOUD
========================================================== */

.background--1 .background__cloud {
  position: absolute;

  width: 100px;
  height: 34px;
}

.background--1 .background__cloud-part {
  position: absolute;

  display: block;

  border-radius: 50%;

  background: #ffffff;
}

.background--1 .background__cloud-part--1 {
  left: 0;
  bottom: 0;

  width: 46px;
  height: 28px;
}

.background--1 .background__cloud-part--2 {
  left: 26px;
  bottom: 6px;

  width: 48px;
  height: 36px;
}

.background--1 .background__cloud-part--3 {
  right: 0;
  bottom: 0;

  width: 52px;
  height: 28px;
}

.background--1 .background__cloud--1 {
  top: 14%;
  left: 10%;

  transform: scale(1.15);
}

.background--1 .background__cloud--2 {
  top: 27%;
  right: 4%;

  transform: scale(0.72);
}

.background--1 .background__cloud--3 {
  top: 39%;
  left: 30%;

  transform: scale(0.52);
}

/* ==========================================================
   DISTANT HILL
========================================================== */

.background--1 .background__hill {
  position: absolute;

  left: -10%;

  width: 120%;

  border-radius: 50% 50% 0 0;
}

.background--1 .background__hill--back {
  bottom: 18%;

  height: 30%;

  background: #a9e88b;
}

/* ==========================================================
   MAIN HILL
========================================================== */

.background--1 .background__hill--front {
  bottom: 7%;

  height: 31%;

  background: #72d66b;

  border-top: 8px solid #58bd58;
}

/* ==========================================================
   HILL CANDY DECORATIONS
========================================================== */

.background--1 .background__hill-candy {
  position: absolute;

  display: block;

  width: 12px;
  height: 12px;

  border-radius: 50%;

  background: #ff8fbd;

  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.08);
}

.background--1 .background__hill-candy--1 {
  top: 30%;
  left: 18%;
}

.background--1 .background__hill-candy--2 {
  top: 48%;
  left: 38%;

  background: #ffd84d;
}

.background--1 .background__hill-candy--3 {
  top: 34%;
  right: 20%;

  background: #ffffff;
}

.background--1 .background__hill-candy--4 {
  top: 42%;
  left: 24%;

  background: #ff8fbd;
}

.background--1 .background__hill-candy--5 {
  top: 28%;
  right: 27%;

  background: #ffd84d;
}

/* ==========================================================
   LOLLIPOP
========================================================== */

.background--1 .background__candy--lollipop {
  position: absolute;

  left: 8%;
  bottom: 17%;

  width: 32px;
  height: 88px;

  transform: rotate(-10deg);
}

.background--1 .background__candy-stick {
  position: absolute;

  bottom: 0;
  left: 14px;

  width: 5px;
  height: 48px;

  border-radius: 4px;

  background: #ffffff;
}

.background--1 .background__candy-head {
  position: absolute;

  top: 0;
  left: 0;

  width: 32px;
  height: 32px;

  border-radius: 50%;

  background: #ff6fa8;

  border: 4px solid #ffffff;

  box-shadow: 0 4px 0 #df4d88;
}

/* ==========================================================
   MINT
========================================================== */

.background--1 .background__candy--mint {
  position: absolute;

  right: 8%;
  bottom: 19%;

  width: 38px;
  height: 38px;

  border-radius: 50%;

  background: #8ee8d2;

  border: 4px solid #ffffff;

  box-shadow: 0 4px 0 #55c7ad;

  transform: rotate(18deg);
}

.background--1 .background__mint-center {
  position: absolute;

  inset: 10px;

  border-radius: 50%;

  border: 3px solid rgba(255, 255, 255, 0.8);
}

/* ==========================================================
   CANDY DROP
========================================================== */

.background--1 .background__candy--drop {
  position: absolute;

  right: 25%;
  bottom: 27%;

  width: 20px;
  height: 28px;

  border-radius: 50% 50% 50% 10%;

  background: #ffcf45;

  transform: rotate(35deg);
}

.background--1 .background__drop-highlight {
  position: absolute;

  top: 5px;
  left: 5px;

  width: 6px;
  height: 6px;

  border-radius: 50%;

  background: rgba(255, 255, 255, 0.7);
}

/* ==========================================================
   GROUND
========================================================== */

.background--1 .background__ground {
  position: absolute;

  right: 0;
  bottom: 0;
  left: 0;

  height: 10%;

  background: #f7d96b;
}

.background--1 .background__ground-top {
  position: absolute;

  top: 0;
  right: 0;
  left: 0;

  height: 8px;

  background: #f0c44c;
}

/* ==========================================================
   GRASS
========================================================== */

.background--1 .background__grass {
  position: absolute;

  top: -5px;
  right: 0;
  left: 0;

  display: flex;

  justify-content: space-around;
}

.background--1 .background__grass span {
  width: 12px;
  height: 12px;

  display: block;

  background: #72d66b;

  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

/* ==========================================================
   RESPONSIVE
========================================================== */

@media (max-width: 480px) {
  .background--1 .background__sun {
    width: 58px;
    height: 58px;
  }

  .background--1 .background__cloud--1 {
    left: 4%;
  }

  .background--1 .background__candy--lollipop {
    left: 5%;
    transform: scale(0.8) rotate(-10deg);
    transform-origin: bottom center;
  }

  .background--1 .background__candy--mint {
    right: 5%;

    transform: scale(0.8) rotate(18deg);
  }
}

/* ==========================================================
   BACKGROUND 2
   Candy Dream
========================================================== */

.background--2 {
  position: relative;

  width: 100%;
  height: 100%;

  overflow: hidden;

  background: #ffd8ec;
}

/* ==========================================================
   SKY
========================================================== */

.background--2 .background-2__sky {
  position: absolute;

  inset: 0;

  background: #ffd8ec;
}

/* ==========================================================
   SUN
========================================================== */

.background--2 .background-2__sun {
  position: absolute;

  top: 9%;
  right: 12%;

  width: 64px;
  height: 64px;

  border-radius: 50%;

  background: #ffe45c;

  box-shadow: 0 5px 0 #efc845;
}

.background--2 .background-2__sun-dot {
  position: absolute;

  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: #f5c63d;
}

.background--2 .background-2__sun-dot:nth-child(1) {
  top: -13px;
  left: 28px;
}

.background--2 .background-2__sun-dot:nth-child(2) {
  right: -13px;
  top: 28px;
}

.background--2 .background-2__sun-dot:nth-child(3) {
  bottom: -13px;
  left: 28px;
}

/* ==========================================================
   CLOUDS
========================================================== */

.background--2 .background-2__cloud {
  position: absolute;

  width: 100px;
  height: 34px;
}

.background--2 .background-2__cloud span {
  position: absolute;

  display: block;

  border-radius: 50%;

  background: #ffffff;
}

.background--2 .background-2__cloud span:nth-child(1) {
  left: 0;
  bottom: 0;

  width: 44px;
  height: 26px;
}

.background--2 .background-2__cloud span:nth-child(2) {
  left: 25px;
  bottom: 5px;

  width: 48px;
  height: 34px;
}

.background--2 .background-2__cloud span:nth-child(3) {
  right: 0;
  bottom: 0;

  width: 46px;
  height: 26px;
}

.background--2 .background-2__cloud--1 {
  top: 13%;
  left: 7%;

  transform: scale(0.95);
}

.background--2 .background-2__cloud--2 {
  top: 29%;
  right: 3%;

  transform: scale(0.65);
}

/* ==========================================================
   FLOATING CANDY
========================================================== */

.background--2 .background-2__candy {
  position: absolute;

  width: 26px;
  height: 26px;

  border-radius: 8px;

  transform: rotate(45deg);
}

.background--2 .background-2__candy span {
  position: absolute;

  top: 6px;
  left: 6px;

  width: 7px;
  height: 7px;

  border-radius: 50%;

  background: rgba(255, 255, 255, 0.7);
}

.background--2 .background-2__candy--pink {
  top: 27%;
  left: 15%;

  background: #ff6fa8;

  box-shadow: 0 4px 0 #dd4d87;

  transform: rotate(20deg);
}

.background--2 .background-2__candy--yellow {
  top: 38%;
  right: 13%;

  background: #ffd447;

  box-shadow: 0 4px 0 #e5b932;

  transform: rotate(45deg);
}

.background--2 .background-2__candy--blue {
  top: 49%;
  left: 8%;

  background: #67d5ef;

  box-shadow: 0 4px 0 #42b3d0;

  transform: rotate(15deg);
}

/* ==========================================================
   LARGE BACKGROUND SHAPES
========================================================== */

.background--2 .background-2__shape {
  position: absolute;

  border-radius: 50%;
}

.background--2 .background-2__shape--left {
  left: -20%;
  bottom: 16%;

  width: 75%;
  height: 42%;

  background: #b9ecdf;
}

.background--2 .background-2__shape--right {
  right: -24%;
  bottom: 11%;

  width: 80%;
  height: 48%;

  background: #a9dff5;
}

/* ==========================================================
   PLATFORM
========================================================== */

.background--2 .background-2__platform {
  position: absolute;

  left: 10%;
  right: 10%;
  bottom: 12%;

  height: 48px;

  border-radius: 18px 18px 10px 10px;

  background: #ffffff;

  border: 4px solid #e9c8dc;

  box-shadow: 0 7px 0 #d7a9c6;
}

.background--2 .background-2__platform-dot {
  position: absolute;

  top: 13px;

  width: 10px;
  height: 10px;

  border-radius: 50%;

  background: #ff7cac;
}

.background--2 .background-2__platform-dot:nth-child(1) {
  left: 15%;
}

.background--2 .background-2__platform-dot:nth-child(2) {
  left: 38%;

  background: #ffd84d;
}

.background--2 .background-2__platform-dot:nth-child(3) {
  left: 61%;

  background: #6ed9ed;
}

.background--2 .background-2__platform-dot:nth-child(4) {
  left: 84%;

  background: #8ddc78;
}

/* ==========================================================
   FOREGROUND
========================================================== */

.background--2 .background-2__foreground {
  position: absolute;

  right: 0;
  bottom: 0;
  left: 0;

  height: 7%;

  background: #f6c8df;
}

.background--2 .background-2__foreground span {
  position: absolute;

  top: -7px;

  width: 22px;
  height: 12px;

  border-radius: 50% 50% 0 0;

  background: #ffffff;
}

.background--2 .background-2__foreground span:nth-child(1) {
  left: 12%;
}

.background--2 .background-2__foreground span:nth-child(2) {
  left: 38%;
}

.background--2 .background-2__foreground span:nth-child(3) {
  left: 65%;
}

.background--2 .background-2__foreground span:nth-child(4) {
  right: 10%;
}

/* ==========================================================
   RESPONSIVE
========================================================== */

@media (max-width: 480px) {
  .background--2 .background-2__sun {
    width: 52px;
    height: 52px;
  }

  .background--2 .background-2__candy {
    transform: scale(0.8) rotate(20deg);
  }

  .background--2 .background-2__platform {
    left: 7%;
    right: 7%;
  }
}

/* ==========================================================
   BACKGROUND 3
   Candy Night
========================================================== */

.background--3 {
  position: relative;

  width: 100%;
  height: 100%;

  overflow: hidden;

  background: #25224d;
}

/* ==========================================================
   SKY
========================================================== */

.background--3 .background-3__sky {
  position: absolute;

  inset: 0;

  background: #25224d;
}

/* ==========================================================
   MOON
========================================================== */

.background--3 .background-3__moon {
  position: absolute;

  top: 10%;
  right: 12%;

  width: 64px;
  height: 64px;

  border-radius: 50%;

  background: #ffe99a;

  box-shadow: 0 5px 0 #d7c879;
}

.background--3 .background-3__moon-cut {
  position: absolute;

  top: -4px;
  left: 16px;

  width: 64px;
  height: 64px;

  border-radius: 50%;

  background: #25224d;
}

/* ==========================================================
   STARS
========================================================== */

.background--3 .background-3__stars {
  position: absolute;

  inset: 0;
}

.background--3 .background-3__stars span {
  position: absolute;

  width: 6px;
  height: 6px;

  border-radius: 50%;

  background: #fff3b0;
}

.background--3 .background-3__stars span:nth-child(1) {
  top: 12%;
  left: 15%;
}

.background--3 .background-3__stars span:nth-child(2) {
  top: 20%;
  left: 38%;

  width: 4px;
  height: 4px;
}

.background--3 .background-3__stars span:nth-child(3) {
  top: 14%;
  left: 62%;

  width: 5px;
  height: 5px;
}

.background--3 .background-3__stars span:nth-child(4) {
  top: 30%;
  left: 78%;

  width: 4px;
  height: 4px;
}

.background--3 .background-3__stars span:nth-child(5) {
  top: 35%;
  left: 25%;

  width: 5px;
  height: 5px;
}

.background--3 .background-3__stars span:nth-child(6) {
  top: 42%;
  left: 55%;

  width: 4px;
  height: 4px;
}

.background--3 .background-3__stars span:nth-child(7) {
  top: 24%;
  left: 88%;

  width: 5px;
  height: 5px;
}

.background--3 .background-3__stars span:nth-child(8) {
  top: 46%;
  left: 10%;

  width: 4px;
  height: 4px;
}

/* ==========================================================
   CLOUDS
========================================================== */

.background--3 .background-3__cloud {
  position: absolute;

  width: 110px;
  height: 32px;
}

.background--3 .background-3__cloud span {
  position: absolute;

  display: block;

  border-radius: 50%;

  background: #3b3767;
}

.background--3 .background-3__cloud span:nth-child(1) {
  left: 0;
  bottom: 0;

  width: 46px;
  height: 25px;
}

.background--3 .background-3__cloud span:nth-child(2) {
  left: 27px;
  bottom: 5px;

  width: 48px;
  height: 34px;
}

.background--3 .background-3__cloud span:nth-child(3) {
  right: 0;
  bottom: 0;

  width: 48px;
  height: 25px;
}

.background--3 .background-3__cloud--1 {
  top: 28%;
  left: 4%;

  transform: scale(0.9);
}

.background--3 .background-3__cloud--2 {
  top: 38%;
  right: 4%;

  transform: scale(0.7);
}

/* ==========================================================
   BACK HILLS
========================================================== */

.background--3 .background-3__hill {
  position: absolute;

  left: -10%;

  width: 120%;

  border-radius: 50% 50% 0 0;
}

.background--3 .background-3__hill--back {
  bottom: 17%;

  height: 31%;

  background: #403b70;
}

.background--3 .background-3__hill--back span {
  position: absolute;

  width: 10px;
  height: 10px;

  border-radius: 50%;

  background: #6f65a3;
}

.background--3 .background-3__hill--back span:nth-child(1) {
  top: 30%;
  left: 20%;
}

.background--3 .background-3__hill--back span:nth-child(2) {
  top: 45%;
  left: 52%;

  background: #8a76b7;
}

.background--3 .background-3__hill--back span:nth-child(3) {
  top: 35%;
  right: 18%;

  background: #6f65a3;
}

/* ==========================================================
   FRONT HILLS
========================================================== */

.background--3 .background-3__hill--front {
  bottom: 7%;

  height: 29%;

  background: #302d59;

  border-top: 7px solid #4d467d;
}

.background--3 .background-3__hill--front span {
  position: absolute;

  width: 12px;
  height: 12px;

  border-radius: 50%;

  background: #ff78ae;
}

.background--3 .background-3__hill--front span:nth-child(1) {
  top: 38%;
  left: 24%;
}

.background--3 .background-3__hill--front span:nth-child(2) {
  top: 28%;
  right: 25%;

  background: #66d8ed;
}

/* ==========================================================
   GROUND
========================================================== */

.background--3 .background-3__ground {
  position: absolute;

  right: 0;
  bottom: 0;
  left: 0;

  height: 10%;

  background: #211f42;
}

.background--3 .background-3__ground-top {
  position: absolute;

  top: 0;
  right: 0;
  left: 0;

  height: 7px;

  background: #514a7d;
}

/* ==========================================================
   GRASS
========================================================== */

.background--3 .background-3__grass {
  position: absolute;

  top: -6px;
  right: 0;
  left: 0;

  display: flex;

  justify-content: space-around;
}

.background--3 .background-3__grass span {
  width: 13px;
  height: 13px;

  display: block;

  background: #5c5590;

  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

/* ==========================================================
   RESPONSIVE
========================================================== */

@media (max-width: 480px) {
  .background--3 .background-3__moon {
    width: 52px;
    height: 52px;
  }

  .background--3 .background-3__moon-cut {
    width: 52px;
    height: 52px;

    left: 13px;
  }

  .background--3 .background-3__candy {
    transform: scale(0.8);
  }
}
