.page-section--hero_banner {
  padding: 0;

  .page-section__inner {
    position: relative;
    display: flex;
    justify-content: end;
    align-items: center;
    height: 60vh;
    z-index: 10;
  }
}

.hero-banner {
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.hero-banner__media-wrapper {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

/* Background image layer */
.hero-banner__background {
  position: absolute;
  inset: 0;
  object-fit: cover;
  background-position: center;
  background-repeat: no-repeat;
  transform: scale(1.02);
}

/* Optional “empty state” when no image URL is provided */
.hero-banner__background--empty {
  background: radial-gradient(
    circle at top left,
    rgba(246, 174, 45, 0.18),
    rgba(27, 31, 59, 0.95)
  );
}

/* Dark overlay to ensure text readability on bright images */
.hero-banner__overlay {
  position: absolute;
  inset: 0;
  background: radial-gradient(
    circle at top left,
    rgba(17, 19, 41, 0.12),
    rgba(17, 19, 41, 0.35)
  );
  mix-blend-mode: multiply;
}

.hero-banner__content {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  text-align: end;
}

/* Typography */
.hero-banner__title {
  color: var(--color-primary-light);
}

.hero-banner__subtitle {
  color: var(--color-primary-light);
}

/* CTA container – currently unused, ready for future CTA fields */
.hero-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

@media (min-width: 768px) {
}

/* Responsive tweaks */
@media (max-width: 640px) {
  .hero-banner__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-banner__cta {
    width: 100%;
    justify-content: center;
  }
}
