.banner {
  /* Reset inherited styles for convenience */
  &,
  & * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1rem 1rem 1.25rem;
  background-image: var(--background-image-mobile);
  background-position: center;
  background-size: cover;

  @media screen and (min-width: 900px) {
    padding: 2rem;
    background-image: var(--background-image);
  }

  /* Style the contents */
  .banner-content {
    max-width: 1400px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin: 0 auto;

    @media screen and (min-width: 900px) {
      flex-direction: row;
      gap: 2rem;
    }

    .banner-headline {
      max-width: 325px;
      color: white;
      font-size: 1rem;
      font-weight: bold;
      line-height: 1.5;
      text-align: center;
      text-wrap: balance;

      @media screen and (min-width: 900px) {
        max-width: 768px;
        border-right: 2px solid white;
        padding-right: 2rem;
        font-size: 1.5rem;
        text-align: left;
      }

      strong {
        color: yellow;
      }
    }

    .banner-button-container {
      .banner-button {
        display: block;
        padding: 0.25rem 1rem;
        background: yellow;
        color: black;
        font-size: 0.75rem;
        font-weight: bold;
        letter-spacing: 1px;
        white-space: nowrap;

        &:hover {
          background: #e5e600;
        }

        @media screen and (min-width: 900px) {
          font-size: 1rem;
        }
      }
    }
  }
}

@media print {
  .banner {
	display:none;
  }
}