/* Global */
h2 {
  margin: 32px 0;
}

h3 {
  margin-bottom: 14px;
}

@media only screen and (max-width: 992px) {
  h2 {
    margin: 18px 0;
  }

  h3 {
    margin-bottom: 10px;
  }
}

/* Title */
.title {
  padding-top: 50px;
  margin-bottom: 12px;
}

@media only screen and (max-width: 992px) {
  .title {
    padding-top: 32px;
  }
}

/* Main */
main {
  padding: 1% 16%;
}

@media only screen and (max-width: 992px) {
  main {
    padding: 1% 3%;
  }
}

/* Recipe description */
.recipe-description {
  display: flex;
  margin-bottom: 6px;
}

.recipe-description::before {
  content: url('./images/6dots.svg');
  margin-right: 8px;
}

/* Recipe image */
.recipe-image-container {
  border-radius: 12px;
  margin-bottom: 24px;
}

@media only screen and (max-width: 992px) {
  .recipe-image-container {
    margin-bottom: 12px;
  }
}

/* Card */
.card-list {
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
  border-radius: 12px;
  width: 16vw;
  display: flex;
  flex-direction: column;
  float: right;
  margin-left: 15px;
}

.card-list-first-item {
  display: flex;
  width: 60%;
  margin: 17% 20% 7.5%;
}

.card-list-item {
  display: flex;
  width: 60%;
  margin: 7.5% 20%;
  margin-bottom: 15%;
}

.card-item-image {
  margin-right: 14px;
}

@media only screen and (max-width: 992px) {
  .card-list {
    float: none;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    justify-content: flex-start;
    box-shadow: none;
    margin-left: 0;
  }

  .card-list-first-item {
    width: 100%;
    margin: 2% auto;
  }

  .card-list-item {
    width: auto;
    margin: auto;
    margin-bottom: 2%;
    margin-left: 0;
  }
}

/* Ingredients */
.ingredients-list-item {
  display: flex;
  margin: 12px 0;
}

.ingredients-list-item input {
  margin-right: 16px;
}

@media only screen and (max-width: 992px) {
  .ingredients-list-item input {
    margin-right: 8px;
  }
}

/* Instructions */
.instructions-list-item {
  display: flex;
  margin: 12px 0;
}

.instructions-list-item-counter {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 36px;
  min-width: 36px;
  height: 36px;
  margin-right: 16px;
  border-radius: 6px;
}

@media only screen and (max-width: 992px) {
  .instructions-list-item-counter {
    margin-right: 8px;
  }
}

/* Source */
.source {
  margin: 50px 0;
}

@media only screen and (max-width: 992px) {
  .source {
    margin: 26px 0;
  }
}

/* Footer */
footer {
  height: 10vh;

  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
