main {
  & #welcome {
    min-height: 60vh;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
    user-select: none;

    & #welcome-heading {
      width: 80%;
      text-align: center;
    }

    & #welcome-text {
      width: 70%;
      color: black;
      text-align: center;
    }
  }

  & #daily-special {
    background: brown;
    color: white;
    min-height: fit-content;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
    padding: 10vh 6vh;

    & h3 {
      text-align: center;
    }

    & figure {
      width: fit-content;
      margin-block: 3vh;

      & img {
        max-width: 25rem;
        aspect-ratio: 4/4;
        width: 70vw;
        object-fit: cover;
        object-position: center center;
        border-radius: 50%;
      }
    }
  }

  & #gallery {
    background: papayawhip;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10vh 5vw;

    & h2 {
      display: block;
      padding-bottom: 7vh;
    }

    & figure {
      max-width: 90%;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 3vw;
      flex-grow: 2;

      & img {
        aspect-ratio: 4/4;
        width: 75vw;
        max-width: 19rem;
        object-fit: cover;
        object-position: center;
        border-radius: 50%;
        flex-grow: 2;
      }
    }
  }

  & #opening-times {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
    padding: 10vh 4vh;

    & h2 {
      margin-bottom: 5vh;
    }

    & div {
      width: 60vw;
      max-width: 500px;
      display: flex;
      justify-content: space-between;
      color: black;
    }
  }
  & #location {
    background: papayawhip;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 10vh 5vw;

    & h2 {
      padding-bottom: 7vh;
    }

    & iframe {
      width: 100%;
      height: 50vh;
    }
  }

  & #contact-us {
    height: 70vh;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
    padding-bottom: 20vh;
  }
}
