@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Young+Serif&display=swap');

:root {
  --font01: 'Outfit', sans-serif;
  --font02: 'Young Serif', serif;

  --cor01: hsl(0, 0%, 100%);

  --cor02: hsl(30, 54%, 90%);
  --cor03: hsl(30, 18%, 87%);
  --cor04: hsl(30, 10%, 34%);
  --cor05: hsl(24, 5%, 18%);

  --cor06: hsl(14, 45%, 36%);

  --cor07: hsl(332, 51%, 32%);
  --cor08: hsl(330, 100%, 98%);
}

* {
  margin: 0px;
  padding: 0px;
}

body {
  background-color: var(--cor02);
  margin: 20px;
}

main {
  max-width: 500px;
  width: 100%;
  margin: auto;
  background-color: white;
  padding: 30px;
  border-radius: 20px;
  margin-bottom: 50px;
  box-shadow: 10px 10px 10px #0000000b;
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  border-radius: 15px;
}

h2 {
  color: var(--cor06);
}

h1,
h2,
h3 {
  font-family: var(--font02);
  font-weight: 400;
  padding: 20px 0px 10px 0px;
}

p {
  text-align: justify;
  padding: 10px 0px 10px 0px;
}

hr {
  margin: 25px 0px 0px 0px;
}

section>hr {
  margin: 10px 0px 10px 0px;
}

p,
li {
  font-family: var(--font01);
}

li {
  list-style-position: inside;
}

#time {
  color: var(--cor07);
}

#preparo {
  margin: 10px 10px 10px 10px;
  background-color: var(--cor08);
  padding-bottom: 25px;
  padding-left: 30px;
  border-radius: 10px;
}

#nutri {
  columns: 2;
  list-style-type: none;
  font-weight: bolder;
}

#destq {
  padding-top: 15px;
  color: var(--cor07);
}

li {
  margin-top: 15px;
}

.attribution {
  font-size: 11px;
  text-align: center;
}

.attribution a {
  color: hsl(228, 45%, 44%);
}

@media (max-width: 768px) {
  body {
    margin: 10px;
  }

  main {
    padding: 35px;
  }

  h1 {
    font-size: 1.6rem;
  }

  h2 {
    font-size: 1.3rem;
  }

  p,
  li {
    font-size: 0.95rem;
  }
}

@media (max-width: 480px) {
  main {
    padding: 15px;
  }

  h1 {
    font-size: 1.3rem;
  }

  h2,
  h3 {
    font-size: 1rem;
  }

  p,
  li {
    font-size: 0.85rem;
    text-align: left;
  }

  #nutri {
    display: flex;
    justify-content: space-between;
    font-size: 0.85rem;
  }
}

@media (max-width: 320px) {
  body {
    margin: 5px;
  }

  main {
    padding: 10px;
    border-radius: 10px;
  }

  h1 {
    font-size: 1rem;
  }

  h2,
  h3 {
    font-size: 0.9rem;
  }

  p,
  li {
    font-size: 0.75rem;
  }

  #nutri {
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
  }
}