@font-face {
    font-family: "Young Serif";
    src: url("./assets/fonts/young-serif/YoungSerif-Regular.ttf");
    font-weight: 400;
}

@font-face {
    font-family: "Outfit";
    src: url("./assets/fonts/outfit/static/Outfit-Regular.ttf");
}

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

.attribution { 
    font-size: 11px;
    text-align: center;
}
.attribution a { 
    color: hsl(228, 45%, 44%); 
}

body {
    height: 100vh;
}

main {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: hsl(30, 54%, 90%);
    padding: 32px;
}

section {
    padding: 40px;
    width: 50%;
    background-color: hsl(0, 0%, 100%);
    border-radius: 16px;
    overflow: hidden;
}

section > img {
    width: 100%;
    border-radius: 16px;
}

.title-container {
    margin-top: 24px;
}

.title {
    font-family: "Young Serif";
    font-size: 32px;
    color: hsl(24, 5%, 18%);
}

.desc {
    font-family: "Outfit";
    font-size: 16px;
    font-weight: 400;
    color: hsl(30, 10%, 34%);
    margin-top: 16px;
}

.preparation-time {
    padding: 32px;
    background-color: hsl(330, 100%, 98%);
    margin-top: 32px;
    border-radius: 8px;
}

.preparation-time > h3 {
    font-family: "Outfit";
    font-size: 16px;
    font-weight: 700;
    color: hsl(14, 45%, 36%); 
    font-size: 24px;
}

.preparation-time ul {
    margin-top: 24px;
}

.preparation-time li {
    margin-left: 24px;
    margin-top: 16px;
    padding-left: 24px;
}

.preparation-time span,
.instructions-container span{
    font-family: "Outfit";
    font-size: 16px;
    font-weight: 700;
}

.ingredients-container {
    margin-top: 32px;
    margin-bottom: 32px;
}

.ingredients,
.instructions-container > h3,
.nutrition-container > h3{
    font-family: "Young Serif";
    font-size: 24px;
    font-weight: 400;
    color: hsl(14, 45%, 36%);
}

.ingredients-container ul,
.instructions-container ol,
.nutrition-container{
    margin-top: 24px;
}

.ingredients-container li,
.instructions-container li{
    margin-left: 24px;
    margin-top: 16px;
    padding-left: 16px;
    font-family: "Outfit";
    font-size: 16px;
    font-weight: 400;
    color: hsl(30, 10%, 34%);
}

section hr {
    border: none;
    height: 2px;
    background-color: rgb(228, 228, 228);
}

.instructions-container {
    margin-top: 32px;
    margin-bottom: 32px;  
}

ul li::marker{
    color: hsl(14, 45%, 36%);
}

ol li::marker {
    color: hsl(14, 45%, 36%);
    font-weight: bold;
}

.nutrition-container > p {
    margin-top: 16px;
    margin-bottom: 16px;
    font-family: "Outfit";
    font-size: 16px;
    font-weight: 400;
    color: hsl(30, 10%, 34%);
}

table {
    width: 100%;
    border-collapse: collapse;
    font-family: "Outfit";
    font-size: 16px;
    font-weight: 400;
    color: hsl(30, 10%, 34%);
}

td {
    padding: 8px 0;
    border-bottom: 1px solid rgb(228, 228, 228);
}

.value {
    font-weight: bold;
    color: #7b4a36;
}

@media screen and (max-width: 720px) {

    main {
        background-color: #fff;
        padding: 0px;
    }

    section {
        padding: 0px;
        width: 100%;
        background-color: hsl(0, 0%, 100%);
        border-radius: 0px;
        overflow: auto;
    }
    
    section > img {
        width: 100%;
        border-radius: 0px;
    }

    .title-container,
    .preparation-time,
    .ingredients-container,
    .instructions-container,
    .nutrition-container {
        margin: 32px;
    }
}