#home-main-banner {
  padding-block: 32px;
  width: 100%;
  background: #fff;
  position: relative;
  overflow: hidden;
}

#home-main-banner .hmb-title {
  font-family: Montserrat;
  font-weight: 600;
}

#home-main-banner .radial-grad {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 617px;
  z-index: 1;
  background: linear-gradient(
    256deg,
    rgba(253, 237, 160, 0) -7.53%,
    rgba(254, 206, 110, 0.43) 98.54%
  );
  filter: blur(201.1999969482422px);
}

#home-main-banner .img-mulher-banner {
  width: auto;
  height: 408px;
  position: relative;
  z-index: 2;
}

#image-wrapper {
  position: relative;
  padding-left: 0;
  padding-right: 0;
}

#image-wrapper .mec-stamp {
  position: absolute;
  bottom: 0;
  left: 30px;
  z-index: 3;
  width: 120px;
  filter: drop-shadow(0 0 16px #00a55b);

  animation: stamp-rotation 6.2s ease-in-out infinite;
}

@keyframes stamp-rotate-pulse {
  0% {
    transform: rotate(0deg) scale(1);
    filter: drop-shadow(0 0 0 #00a55b);
  }
  20% {
    transform: rotate(10deg) scale(1.04);
    filter: drop-shadow(0 0 8px #00a55b);
  }
  50% {
    transform: rotate(-10deg) scale(1.08);
    filter: drop-shadow(0 0 16px #00a55b);
  }
  80% {
    transform: rotate(10deg) scale(1.04);
    filter: drop-shadow(0 0 8px #00a55b);
  }
  100% {
    transform: rotate(0deg) scale(1);
    filter: drop-shadow(0 0 0 #00a55b);
  }
}

@keyframes stamp-rotation {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(15deg);
  }
  50% {
    transform: rotate(0deg);
  }
  75% {
    transform: rotate(-15deg);
  }
}

@keyframes stamp-pulse {
  0% {
    filter: drop-shadow(0 0 0 #00a55b);
    transform: scale(1);
  }
  50% {
    filter: drop-shadow(0 0 4px #00a55b);
    transform: scale(1.08);
  }
  100% {
    filter: drop-shadow(0 0 0 #00a55b);
    transform: scale(1);
  }
}

#image-wrapper .float-cards {
  position: absolute;
  right: 0px;
  bottom: 50px;
  z-index: 4;
  pointer-events: none;

  width: 100%;
  height: 209px;
}

#image-wrapper .float-cards .float-card {
  gap: 8px;
  display: flex;
  align-items: center;
  justify-content: start;

  width: fit-content;
  height: 40px;

  padding-inline: 5px 12px;
  padding-block: 12px;
  border-radius: 20px;
  border: 1px solid #ffe8ae;
  background: #fefadc;
  position: absolute;
  animation: move-around 4s linear infinite;
}

#image-wrapper .float-cards .float-card span {
  display: block;
  width: fit-content;
  max-width: 110px;
  text-align: left;
}

#image-wrapper .float-cards .float-card:nth-child(1) {
  top: 0;
  animation: float-card-1 4.2s ease-in-out infinite;
}

#image-wrapper .float-cards .float-card:nth-child(2) {
  top: 59px;
  left: 10px;
  animation: float-card-2 5.1s ease-in-out infinite;
}

#image-wrapper .float-cards .float-card:nth-child(3) {
  bottom: 59px;
  right: 0;
  animation: float-card-3 4.2s ease-in-out infinite;
}

#image-wrapper .float-cards .float-card:nth-child(4) {
  bottom: 0;
  right: 0;
  animation: float-card-4 5.5s ease-in-out infinite;
}

@keyframes float-card-1 {
  0% {
    transform: translateY(0) translateX(0);
  }
  25% {
    transform: translateY(-4px) translateX(3px);
  }
  50% {
    transform: translateY(0) translateX(6px);
  }
  75% {
    transform: translateY(4px) translateX(3px);
  }
  100% {
    transform: translateY(0) translateX(0);
  }
}
@keyframes float-card-2 {
  0% {
    transform: translateY(0) translateX(0);
  }
  20% {
    transform: translateY(-3px) translateX(-4px);
  }
  50% {
    transform: translateY(0) translateX(-7px);
  }
  80% {
    transform: translateY(3px) translateX(-4px);
  }
  100% {
    transform: translateY(0) translateX(0);
  }
}
@keyframes float-card-3 {
  0% {
    transform: translateY(0) translateX(0);
  }
  25% {
    transform: translateY(4px) translateX(-3px);
  }
  50% {
    transform: translateY(0) translateX(-6px);
  }
  75% {
    transform: translateY(-4px) translateX(-3px);
  }
  100% {
    transform: translateY(0) translateX(0);
  }
}
@keyframes float-card-4 {
  0% {
    transform: translateY(0) translateX(0);
  }
  25% {
    transform: translateY(8px) translateX(-6px);
  }
  55% {
    transform: translateY(0) translateX(-12px);
  }
  80% {
    transform: translateY(-8px) translateX(-6px);
  }
  100% {
    transform: translateY(0) translateX(0);
  }
}

#image-wrapper .float-cards .float-card .icon-wrapper {
  width: 28px;
  height: 28px;
  border-radius: 20px;
  background: #f5c346;

  display: flex;
  align-items: center;
  justify-content: center;
}

.decorations {
  color: #f5c346;
  display: none;
}

.circle:nth-child(1) {
  position: absolute;
  left: 54.25px;
  top: 34px;
}

.circle:nth-child(2) {
  position: absolute;
  left: 880px;
  bottom: 113px;
}

.circle:nth-child(3) {
  position: absolute;
  top: 182px;
  right: 216px;
}

@media screen and (min-width: 768px) {
  #home-main-banner .radial-grad {
    top: -266px;
    right: -215px;
    width: 1040px;
  }

  #home-main-banner .img-mulher-banner {
    width: auto;
    height: 465px;
    position: relative;
    z-index: 2;
  }

  #image-wrapper .mec-stamp {
    bottom: unset;
    left: unset;
    top: 112px;
    right: -30px;
  }
}

@media screen and (min-width: 900px) {
  #image-wrapper .mec-stamp {
    right: -90px;
    width: 180px;
  }
}

@media screen and (min-width: 1024px) {
  #image-wrapper .mec-stamp {
    right: -10px;
  }

  #image-wrapper .float-cards .float-card span {
    width: fit-content;
    max-width: unset;
  }
}

@media screen and (min-width: 1200px) {
  #image-wrapper .mec-stamp {
    right: 30px;
  }
}

@media screen and (min-width: 1920px) {
  .decorations {
    display: block;
  }
}
