:root{
    --background: #F3E5D8;
    --background-card: #FFFFFF;
    --main-title: #814b38;
    --text-paragraph: #565656;
    --background-box: #faf3ff;
}

@font-face {
    font-family: "Outfit";
    src: url("assets/fonts/outfit/static/Outfit-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: "Outfit";
    src: url("assets/fonts/outfit/static/Outfit-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "Outfit";
    src: url("assets/fonts/outfit/static/Outfit-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "Outfit";
    src: url("assets/fonts/outfit/static/Outfit-Light.ttf") format("truetype");
    font-weight: 200;
    font-style: normal;
}

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

/* general styling */
*,
*::before,
*::after {
    box-sizing: border-box;
}


body{
    background-color: var(--background);
    font-family: "Outfit", sans-serif;
    color: var(--text-paragraph);
}

.container{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    margin-top: 20px;
}

.card{
    background-color: var(--background-card);
    width: 700px;
    padding: 35px;
    border-radius: 20px;

    img{
        width: 100%;
        border-radius: 10px;
    }

    h1,h2{
        font-family: "YoungSerif", serif;
    }

    h1{
        color: black;
        font-weight: 400;
        margin-bottom: 0;
    }

    h2{
        color: var(--main-title);
        font-weight: 400;
    }

    .preparation_box {
        background-color: var(--background-box);
        padding: 20px 30px;
        border-radius: 20px;

        h3 {
            color: #6b086b;
            margin-top: 0;
        }

        ul {
            list-style-type: disc;
            list-style-position: outside;
            padding-left: 1.2em;
            margin: 0;
        }

        li {
            margin-bottom: 0.75em;
            line-height: 1.5;
            padding-left: 0.8em;
            color: #555;
        }

        li::marker {
            color: #6b086b;
        }

        li span {
            font-weight: bold;
            color: #333;
        }
    }

    .ingredients ul{
        list-style-type: disc;
        list-style-position: outside;
        padding-left: 1.2em;
        margin: 0;


        li{
            margin-bottom: 0.75em;
            line-height: 1.5;
            padding-left: 0.8em;
        }

        li::marker {
            color: #4d081c;
        }
    }

    hr{
        margin: 40px 0;
        color: #b6b6b6;
        opacity: 15%;
    }

    .instructions ol{
        padding-left: 1.2em;
        margin: 0;

        li{
            margin-bottom: 0.75em;
            line-height: 1.5;
            padding-left: 0.8em;

            span{
                font-weight: bold;
            }
        }

        li::marker {
            color: #4d081c;
            font-weight: bold;
        }
    }

    .table_nutritions{
        width: 100%;
        border-collapse: collapse;

        tr{
            border-bottom: 1px solid #e0e0e0;
        }

        tr:last-child{
            border-bottom: none;
        }

        td{
            padding: 0.75em 1em;
        }

        .quantity{
            color: #4d081c;
            font-weight: bold;
        }

    }
}



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