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

  .page-section__inner {
    position: relative;
    display: flex;
    justify-content: end;
    align-items: center;
    min-height: 60vh;
    height: fit-content;
    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: var(--color-hero-background, #171419);
}

/* Dark overlay to ensure text readability on bright images */
.hero-banner__overlay {
  position: absolute;
  inset: 0;
  background: color-mix(
    in srgb,
    var(--color-hero-background, #171419) 45%,
    transparent
  );
}

.hero-banner__content {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  text-align: end;
  color: var(--color-hero-content, #f8f8f7);
}

/* Typography */
.hero-banner__title,
.hero-banner__subtitle {
  color: var(--color-hero-content, #f8f8f7);
}

/* 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;
  }
}
