.block-home-header {
  position: relative;
  height: 300px;

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

  .container-no-margin {
    height: 100%;

    .shared-image {
      width: 100%;
      height: 100%;

      img {
        object-fit: cover;
        width: 100%;
        height: 100%;
        border-radius: 0;

        @media (min-width: 1600px) {
          border-radius: 5px;
        }
      }
    }
  }

  .button-purple {
    border: none !important;

    &:hover, &:focus {
      border: none !important;
      background-color: var(--color-light) !important;
    }
  }
}

.block-home-header-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;

  .container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 30px;
    height: 100%;
  }
}

.block-home-header-search {
  position: relative;
  form {
    display: flex;
    gap: 15px;
  }
  
  max-width: 500px;
  width: 100%;
  background-color: var(--color-white);
  border-radius: 20px;
  padding: 8px 8px 5px 8px;
  border: 2px solid var(--color-white);
  
  &:focus-within, &:focus {
    border: 2px solid var(--color-purple);

    .header-nav-search-autocomplete {
      display: block;
    }
  }

  /* The input has no outline of its own, so the pill around it carries the focus ring. */
  &:has(input:focus-visible) {
    outline: 3px solid var(--color-black);
    outline-offset: 2px;
    box-shadow: 0 0 0 5px var(--color-white);
  }

  button {
    background: transparent;
    position: relative;
    z-index: 4;
    border: none;
    padding: 0;
    margin: 0;
    cursor: pointer;

    &:focus-visible {
      border-radius: 50%;
    }

    &:hover, &:focus {
      svg {
        g {
          fill: var(--color-light);
        }
      }
    }
  }

  input {
    border: none;
    outline: none;
    flex: 1 1 auto;
    padding: 0 0 0 20px;
    font-family: var(--font-family-sans-serif-heading);
    color: rgba(45,44,56,255);

    &::placeholder {
      color: rgba(45,44,56,255);
      opacity: 1;
    }
  }

  .header-nav-search-autocomplete {
    display: none;
    position: absolute;
    padding-top: 20px;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
    z-index: 3;
    top: calc(100% - 20px);
    left: -2px;
    width: calc(100% + 4px);
    background-color: var(--color-white);
    margin: 0;
    border-bottom: 2px solid var(--color-purple);
    border-left: 2px solid var(--color-purple);
    border-right: 2px solid var(--color-purple);
        
    ul {
      border-bottom: none;

      li {
        text-align: left;
        padding-left: 28px;
      }
    }
  }
}


