/* ------------------- Allgemeine Styles für alle Badges ------------------- */
.badge-link {
  text-decoration: none;
  display: inline-block;
}

.hero-container .badge-link div {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

/* ------------------- Weihnachts-Badge ------------------- */
#badge_w {
  position: absolute;
  left: -190%;
  bottom: -20%;
  max-width: 70px;
  z-index: 5;
}

#badge_w .outer-circle {
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  background: #FF0000;
  box-shadow: 0 10px 20px rgba(0,0,0,0.6);
}

#badge_w .inner-dotted {
  width: 90%;
  height: 90%;
  border-radius: 50%;
  border: 5px dotted white;
  font-size: clamp(10px, 1vw, 14px);
  line-height: 1.2;
  padding: 15px;
  color: white;
  transform: rotate(-20deg);
  display: flex;
  justify-content: center;
  align-items: center;
}

/* ------------------- Jugendweihe-Badge ------------------- */
#badge_j {
  position: absolute;
  left: 190%;
  bottom: -20%;
  max-width: 70px;
  z-index: 5;
}

#badge_j .outer-circle_j {
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  background: #FF6A00;
  box-shadow: 0 10px 20px rgba(0,0,0,0.6);
}

#badge_j .inner-dotted_j {
  width: 90%;
  height: 90%;
  border-radius: 50%;
  border: 5px dotted white;
  font-size: clamp(10px, 1vw, 14px);
  line-height: 1.2;
  padding: 15px;
  color: white;
  transform: rotate(-20deg);
  display: flex;
  justify-content: center;
  align-items: center;
}

/* ------------------- Einschulung-Badge ------------------- */
#badge_e {
  position: absolute;
  left: -100%;
  bottom: -20%;
  max-width: 70px;
  z-index: 5;
}

#badge_e .outer-circle_e {
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  background: #74B637;
  box-shadow: 0 10px 20px rgba(0,0,0,0.6);
}

#badge_e .inner-dotted_e {
  width: 90%;
  height: 90%;
  border-radius: 50%;
  border: 5px dotted white;
  font-size: clamp(8px, 1vw, 12px);
  line-height: 1.2;
  padding: 15px;
  color: white;
  transform: rotate(-20deg);
  display: flex;
  justify-content: center;
  align-items: center;
}

/* ------------------- Responsive Anpassungen ------------------- */
@media (max-width: 600px) {
  #badge_w, #badge_j, #badge_e {
    bottom: -30%;
    max-width: 80px;
  }

  #badge_j {
    left: 190%;
  }

  #badge_e {
    left: 150%;
  }

  #badge_w .outer-circle,
  #badge_j .outer-circle_j,
  #badge_e .outer-circle_e {
    width: 20vw;
    max-width: 80px;
    aspect-ratio: 1 / 1;
  }

  #badge_w .inner-dotted { font-size: clamp(6px, 2vw, 12px); border-width: 3px; }
  #badge_j .inner-dotted_j { font-size: clamp(6px, 2vw, 12px); border-width: 3px; }
  #badge_e .inner-dotted_e { font-size: clamp(6px, 2vw, 12px); border-width: 3px; }
}
