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

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


* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

:root {
    --White: hsl(0, 0%, 100%);
    --Stone100: hsl(30, 54%, 90%);
    --Stone150: hsl(30, 18%, 87%);
    --Stone600: hsl(30, 10%, 34%);
    --Stone900: hsl(24, 5%, 18%);
    --Brown800: hsl(14, 45%, 36%);
    --Rose800: hsl(332, 51%, 32%);
    --Rose500: hsl(330, 100%, 95%);
    --Rose50: hsl(330, 100%, 98%);
}

body {
    height: 300vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: var(--Rose500);
    gap: 20px;
}

main {
    background-color: var(--White);
    width: 50%;
    padding: 20px;
    border-radius: 15px;
}

main img {
    width: 100%;
    border-radius: 10px;
    margin-bottom: 30px;
}

h1 {
    font-family: "young-serif";
    font-weight: 500;
    color: var(--Stone900);
    margin-bottom: 10px;
}

.description {
    color: var(--Stone600);
    font-family: "Outfit";
    font-size: 15px;
    margin-bottom: 30px;
}

h2 {
    color: var(--Brown800);
    font-family: "young-serif";
    font-weight: 500;
    margin-bottom: 20px;
}

ul {
    list-style-position: inside;
    font-family: "Outfit";
    color: var(--Stone600);
    padding-left: 5px;
}

ul li::marker{
    font-size: 13px;
    color: var(--Brown800);
}

ul li {
    margin-bottom: 15px;
}


.preparation {
    background-color: var(--Rose50);
    padding: 20px;
    margin-bottom: 20px;
}

.preparation h2 {
    font-size: 18px;
    font-family: "Outfit";
    font-weight: 700;
    color: var(--Rose800);
    margin-bottom: 20px;
}

.preparation ul {
    list-style-position: inside;
    font-family: "Outfit";
    padding-left: 5px;
}

.preparation ul li::marker {
    color: var(--Rose800);
    font-size: 13px;
}

.preparation ul li {
    font-size: 16px;
    color: var(--Stone600);
    margin-bottom: 10px;
}

.preparation ul li span {
    font-weight: 700;
}


hr {
    margin: 30px 0;
}

ol {
    list-style-position: inside;
    font-family: "Outfit";
    color: var(--Stone600);
    list-style: decimal;
    margin-left: 25px;
}

ol li {
    margin-bottom: 10px;
    position: relative;
    padding-left: 15px;
    line-height: 1.6;
}

ol li span {
    font-weight: 700;
}

ol li::marker {
    color: var(--Brown800);
    font-weight: 700;
}

p {
    font-family: "Outfit";
    color: var(--Stone600);
    margin-bottom: 20px;
}

table {
    width: 100%;
}

table tr {
    text-align: left;
    margin-bottom: 15px;
}

table tr th:nth-child(2) {
    color: var(--Brown800);
    font-weight: 700;
}

table tr th  {
    font-family: "Outfit";
    font-weight: 400;
    color: var(--Stone600);
    width: 50%;
    padding: 20px 0;
    border-bottom: 1px solid hsl(31, 10%, 57%);;
}


@media (max-width: 375px) {
    body {
        display: block;
        height: 280vh;
    }

    main {
        width: 100%;
    }

    footer {
        margin-top: 20px;
    }
}