.offers-hours {
  margin-top: 300px;
}

.offers-hours--compact {
  margin-top: 100px;
}

.offers-wrapper {
  position: relative;
  width: 100%;
  background-image: url('../assets/images/gradiantCircle.png');
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  padding-bottom: 60px;
}

.offers-wrapper--hours-only {
  background-image: none;
}

.offers-wrapper__img {
  display: flex;
  justify-content: center;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
  z-index: 2;
}

.offers-wrapper__img img {
  width: 400px;
  max-width: 70vw;
}

.offers-wrapper__title {
  padding-top: 150px;
}

.offers {
  margin: 20px auto;
  max-width: 900px;
  padding: 0 50px;
  width: 100%;
}

.offers__item + .offers__item {
  margin-top: 8px;
}

.offers__trigger {
  display: flex;
  align-items: center;
  width: 100%;
  background: none;
  border: none;
  border-bottom: 1px solid rgba(94, 94, 94, 0.2);
  padding: 14px 0;
  color: var(--color-secondary);
  font-size: clamp(16px, 3vw, 22px);
  font-weight: 300;
  text-align: start;
  cursor: pointer;
}

.offers__trigger--open {
  color: var(--color-secondary);
  border-bottom: none;
  font-size: clamp(18px, 4vw, 25px);
  font-weight: 400;
  padding-bottom: 8px;
}

.offers__body {
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(143, 65, 12, 0.12);
}

.offers__description {
  font-size: clamp(13px, 3vw, 16px);
  text-align: justify;
  line-height: 1.9;
  color: var(--color-secondary);
}

.offers__cta {
  display: flex;
  justify-content: flex-end;
  margin-top: 20px;
}

.semicolon {
  display: flex;
  justify-content: center;
  margin: 40px 0 20px;
}

.semicolon--solo {
  margin: 100px 0 20px;
}

.semicolon img {
  max-width: 24px;
  width: 5vw;
}

.hours {
  color: var(--color-secondary);
  font-size: clamp(14px, 3vw, 19px);
  text-align: center;
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.hours__number {
  background: linear-gradient(to right, var(--color-primary), var(--color-secondary));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: clamp(32px, 4vw, 64px);
  margin-inline: 6px;
  font-weight: 400;
}

@media (max-width: 1024px) {
  .offers-hours {
    margin-top: 200px;
  }

  .offers-hours--compact {
    margin-top: 80px;
  }
}

@media (max-width: 768px) {
  .offers {
    padding: 0 8px;
  }

  .offers-wrapper__img img {
    width: 160px;
  }

  .offers-wrapper__title {
    padding-top: 88px;
  }

  .offers-hours {
    margin-top: 120px;
  }

  .offers-hours--compact {
    margin-top: 64px;
  }
}
