@font-face {
    font-family: outfit;
    src: url(./assets/fonts/outfit/static/Outfit-Regular.ttf);
}

@font-face {
    font-family: youngserif;
    src: url(./assets/fonts/young-serif/YoungSerif-Regular.ttf);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: hsl(30, 54%, 90%);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    font-size: 16px;
    font-family: outfit;
    color:hsl(30, 10%, 34%);
}

.container {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 750px;
    padding: 35px;
    border-radius: 20px;
    background-color: hsl(0, 0%, 100%);
    margin: 70px auto;
}

.mainimg{
    width: 100%;
    height: 100%;
    border-radius: 10px;
}


.top h1 {
    color: hsl(24, 5%, 18%);
    font-size: 2.4rem;
    font-family: youngserif;
    font-weight: 500;
    width: 100%;
    letter-spacing: 0.08rem;
    margin: 30px 0 20px 0;
}

.top p{
    font-weight: 550;
    line-height: 1.4rem;
    margin: 0 0 30px 0;
}

.top article{
    background-color: hsl(330, 100%, 98%);
    padding: 10px;
    margin:20px 0;
    border-radius: 15px;
}

.top article h2 {
    color: hsl(332, 51%, 32%);
    font-size: 1.2rem;
    padding: 20px 0 10px 20px;
}

.top article ul{
    padding: 0 0 15px 50px ;
}

.top article ul li{
    padding: 7px;
    font-weight: 100;
    padding-left: 15px;
}

.top article ul strong{
    color:hsl(10, 3%, 38%);
    font-weight: 900;
}

.top article ul li::marker{
    color: hsl(332, 51%, 32%);
    font-size: 0.8rem;
}

.ingredients{
    width: 100%;
    margin: 10px 0 20px 0;
    padding-bottom: 20px;
    border-bottom: solid 1px hsl(0, 0%, 90%);
}

.ingredients h2{
    font-family: youngserif;
    color: hsl(14, 45%, 36%);
    font-weight: 500;
    padding: 10px 0;
    font-size: 1.8rem;
}

.ingredients ul{
    padding: 0 0 0 20px;
}
.ingredients ul li{
    padding: 6px 0 6px 20px;
    font-weight: 100;   
}

.ingredients ul li::marker{
    color: hsl(14, 45%, 36%);
    font-size: 0.8rem;
}

.instructions{
    width: 100%;
    margin: 0 0 20px 0;
    padding: 0 ;
    border-bottom: solid 1px hsl(0, 0%, 90%);
    padding-bottom: 20px;
}
.instructions h2{
    font-family: youngserif;
    color: hsl(14, 45%, 36%);
    font-weight: 500;
    padding: 10px 0 20px 0;
    font-size: 1.8rem;
}

.instructions ol{
    padding: 0 0 0 20px;
}

.instructions ol li{
    padding: 6px 0 6px 20px;
}
.instructions ol li::marker{
    color: hsl(14, 45%, 36%);
    font-weight: 600;
}

.instructions ol strong{
    font-weight: 600;
}

.nutrition{
    width: 100%;
}
.nutrition h2{
    font-family: youngserif;
    color: hsl(14, 45%, 36%);
    font-weight: 500;
    padding: 10px 0 20px 0;
    font-size: 1.8rem;
}

.nutrition table{
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0 20px 0; 
    text-align: left;
}

table th, table td{
    width: 50%;
    padding: 13px 0 13px 20px;
}

table tr:not(:last-child) {
    border-bottom: solid 1px hsl(0, 0%, 90%);
  }

table td{
    color: hsl(14, 45%, 36%);
    font-weight: 750;
}

@media(max-width: 500px){
    .container{
        margin:0 auto;
        border-radius: 0;
        padding: 0;
    }

    .mainimg{
        border-radius: 0;

    }

    .container > *:not(:first-child) {
        padding: 20px; 
      }
}