* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: Arial, sans-serif;
  overflow: hidden;
}

.container {
  position: relative;
  width: 800px;
  height: 600px;
  margin: 0 auto;
  overflow: hidden;
}

/* Background */
.sky {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #c8e6c9;
  z-index: -2;
}

.sun {
  position: absolute;
  top: 40px;
  right: 100px;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: radial-gradient(circle, #fdd835 30%, #ffeb3b 70%);
  box-shadow: 0 0 40px rgba(255, 235, 59, 0.6);
  z-index: -1;
}

.grass {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 150px;
  background-color: #81c784;
  border-top-left-radius: 50% 40px;
  border-top-right-radius: 50% 40px;
  z-index: -1;
}

/* Title and Subtitle */
.title-box {
  position: absolute;
  top: 100px;
  left: 150px;
  width: 500px;
  height: 80px;
  background-color: rgba(103, 58, 183, 0.9);
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: white;
  padding: 10px;
}

.title-box h1 {
  font-size: 32px;
  margin-bottom: 5px;
}

.title-box h2 {
  font-size: 24px;
}

.subtitle {
  position: absolute;
  top: 200px;
  left: 0;
  width: 100%;
  text-align: center;
}

.subtitle p {
  font-size: 20px;
  color: #673ab7;
  margin-bottom: 10px;
}

.code-comment {
  font-family: "Courier New", monospace;
  font-size: 16px;
}

/* Cloud with code */
.cloud {
  position: absolute;
  top: 140px;
  left: 50px;
  width: 260px;
  height: 100px;
  background-color: white;
  border: 1px solid #bdbdbd;
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: -1;
}

.cloud:before {
  content: "";
  position: absolute;
  top: -30px;
  left: 40px;
  width: 60px;
  height: 60px;
  background-color: white;
  border: 1px solid #bdbdbd;
  border-radius: 50%;
}

.cloud:after {
  content: "";
  position: absolute;
  top: -20px;
  right: 60px;
  width: 80px;
  height: 80px;
  background-color: white;
  border: 1px solid #bdbdbd;
  border-radius: 50%;
}

.code-snippet {
  position: relative;
  font-family: "Courier New", monospace;
  font-size: 11px;
  color: #424242;
  z-index: 1;
}

/* Function box */
.function-box {
  position: absolute;
  top: 280px;
  right: 50px;
  width: 200px;
  font-family: "Courier New", monospace;
  font-size: 12px;
  color: #424242;
  text-align: left;
}

.code-example {
  white-space: pre-wrap;
}

/* Bunny */
.bunny {
  position: absolute;
  left: 150px;
  bottom: 200px;
  z-index: 1;
}

.body {
  width: 80px;
  height: 90px;
  background-color: #f5f5f5;
  border: 2px solid #e0e0e0;
  border-radius: 50%;
  position: relative;
}

.ear {
  position: absolute;
  width: 30px;
  height: 70px;
  background-color: #f5f5f5;
  border: 2px solid #e0e0e0;
  border-radius: 50%;
  z-index: -1;
}

.ear-left {
  left: 10px;
  top: -60px;
  transform: rotate(-5deg);
}

.ear-right {
  right: 10px;
  top: -60px;
  transform: rotate(5deg);
}

.eye {
  position: absolute;
  width: 10px;
  height: 10px;
  background-color: #212121;
  border-radius: 50%;
  top: 30px;
}

.eye-left {
  left: 20px;
}

.eye-right {
  right: 20px;
}

.glasses {
  position: absolute;
  top: 30px;
  left: 15px;
  width: 50px;
  height: 10px;
}

.glasses:before,
.glasses:after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid #9e9e9e;
  top: -5px;
}

.glasses:before {
  left: 0;
}

.glasses:after {
  right: 0;
}

.nose {
  position: absolute;
  width: 14px;
  height: 10px;
  background-color: #f8bbd0;
  border-radius: 50%;
  top: 45px;
  left: 33px;
}

/* Laptop */
.laptop {
  position: absolute;
  bottom: 120px;
  left: 100px;
  z-index: 1;
}

.screen {
  width: 100px;
  height: 60px;
  background-color: #424242;
  border-radius: 5px 5px 0 0;
  padding: 5px;
}

.keyboard {
  width: 120px;
  height: 10px;
  background-color: #757575;
  border-radius: 0 0 5px 5px;
  transform: perspective(200px) rotateX(45deg);
  transform-origin: top;
}

.code {
  width: 90px;
  height: 50px;
  background-color: #03a9f4;
  font-family: "Courier New", monospace;
  font-size: 12px;
  color: white;
  padding: 5px;
  overflow: hidden;
}

/* Basket */
.basket {
  position: absolute;
  right: 150px;
  bottom: 150px;
  z-index: 1;
}

.basket-handle {
  width: 100px;
  height: 50px;
  border: 5px solid #8d6e63;
  border-bottom: none;
  border-radius: 50px 50px 0 0;
}

.basket-body {
  width: 100px;
  height: 50px;
  background-color: #d7ccc8;
  border: 3px solid #8d6e63;
  border-top: none;
}

.basket-line {
  width: 100px;
  height: 3px;
  background-color: #8d6e63;
  position: absolute;
  top: 25px;
}

/* Easter Eggs */
.egg {
  position: absolute;
  width: 60px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Courier New", monospace;
  font-size: 10px;
  color: white;
  font-weight: bold;
  z-index: 1;
  overflow: hidden;
}

.egg span {
  position: relative;
  z-index: 2;
}

.pattern {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.2;
  z-index: 1;
}

.egg-bug {
  bottom: 100px;
  left: 200px;
  background-color: #e91e63;
  border: 2px solid #880e4f;
}

.egg-feature {
  bottom: 80px;
  left: 350px;
  background-color: #2196f3;
  border: 2px solid #0d47a1;
}

.egg-404 {
  bottom: 110px;
  left: 500px;
  background-color: #9c27b0;
  border: 2px solid #4a148c;
}

.egg-coffee {
  bottom: 70px;
  left: 650px;
  background-color: #ff9800;
  border: 2px solid #e65100;
}
