*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-family: "Montserrat", sans-serif;
}

html, body{
    background-color: #0A0A0A;
}

h1, h2, h3, p, b, span, li{
    color: white;
}

a{
    color: #FEA207;
}

:root{
    --bg-orange: #FEA207;
    --text-size: 24px;
    --title-size: 32px;
    --title-weight: 900;
    --title-height: 48px;
}

ul li::marker {
  color: var(--bg-orange);
}

.container{
    display: flex;
    width: 1280px;
    max-width: 100%;
}

b.bg-title{
    padding: 4px;
    background: linear-gradient(90deg, #FE4F04 0%, #FEA207 100%);
    color: black !important;
}

button.cta{
    cursor: pointer;
    margin-top: 20px;
    padding: 20px 36px;
    background-color: var(--bg-orange);
    font-size: 24px;
    font-weight: bold;
    border: 0;
    border-radius: 100px;
    color: black !important;
}

section.headline{
    padding: 20px;
    background-color: black;
    background-image: url(../assets/bg-headline-desktop.jpg);
    background-position: center;
    display: flex;
    justify-content: center;
    min-height: 905px;
}

section.headline .container{
    align-items: center;
}

section.headline .content{
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 20px;
    width: 50%;
}

section.headline .content h1{
    font-size: 62px;
    font-weight: 900;
    line-height: 92px;
}

section.headline .content p{
    font-size: var(--text-size);
}

section.storytelling{
    padding: 80px 20px 0 20px;
    display: flex;
    justify-content: center;
}

section.storytelling .img,
section.storytelling .content{
    width: 50%;
}

section.storytelling .img{
    display: flex;
    flex-direction: column;
    justify-content: end;
}

section.storytelling .img img{
    width: 70%;
}

section.storytelling .content{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    gap: 15px;
    padding-bottom: 80px;
}

section.storytelling .content p{
    font-size: var(--text-size);
}

section.storytelling .content h2{
    margin: 15px 0;
    font-size: var(--title-size);
    font-weight: var(--title-weight);
    line-height: var(--title-height);
}

section.problems{
    padding: 80px 20px;
    background-color: #121212;
    display: flex;
    justify-content: center;
}

section.problems .container{
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

section.problems h2{
    font-size: var(--title-size);
    font-weight: var(--title-weight);
    line-height: var(--title-height);
}

section.problems .box{
    display: flex;
    gap: 15px;
}

section.problems .single{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    padding: 30px;
    border: 1px solid var(--bg-orange);
}

section.problems .single img{
    width: 148px;
    max-width: 100%;
}

section.problems .single p{
    font-size: var(--text-size);
    color: white;
    font-weight: 500;
}

section.how-works{
    padding: 80px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

section.how-works .container{
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

section.how-works h2{
    font-size: var(--title-size);
    font-weight: var(--title-weight);
    line-height: var(--title-height);
}

section.how-works .box{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 80px;
}

section.how-works .single{
    width: 50%;
    padding: 32px;
    border: 1px solid var(--bg-orange);
    text-align: center;
}

section.how-works .single p{
    font-size: var(--text-size);
}

section.how-works .single.bg-orange{
    background-color: var(--bg-orange);
}

section.how-works img{
    width: 160px;
    max-width: 100%;
}

section.calorie-counting{
    padding: 80px 20px;
    background-color: #121212;
    background-image: url(../assets/bg-calorie-counting-desktop.jpg);
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 1056px;
}

section.calorie-counting .content{
    width: 40%;
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 24px;
}

section.calorie-counting .content h2{
    font-size: var(--title-size);
    font-weight: var(--title-weight);
    line-height: var(--title-height);
}

section.calorie-counting .content p,
section.calorie-counting .content > b,
section.calorie-counting .content ul li{
    font-size: var(--text-size);
}

section.calorie-counting .content > b{
    color: var(--bg-orange);
}

section.calorie-counting .content ul{
    margin-left: 40px;
}

section.benefits{
    background-color: var(--bg-orange);
    padding: 80px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

section.benefits .container{
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

section.benefits h2{
    font-size: var(--title-size);
    font-weight: var(--title-weight);
    line-height: var(--title-height);
}

section.benefits .box{
    display: flex;
    flex-direction: column;
    gap: 20px;
}

section.benefits .single{
    display: flex;
    align-items: center;
    gap: 20px;
}

section.benefits .single img{
    width: 45px;
}

section.benefits .single p{
    font-size: 32px;
}

section.testimonials{
    background-color: #121212;
    padding: 80px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

section.testimonials .container{
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

section.testimonials h2{
    width: 543px;
    max-width: 100%;
    text-align: center;
    font-size: var(--title-size);
    font-weight: var(--title-weight);
    line-height: var(--title-height);
}

section.testimonials .box{
    display: flex;
    gap: 40px;
}

section.testimonials .single{
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    border: 1px solid var(--bg-orange);
}

section.testimonials .single p,
section.testimonials .single b{
    font-size: var(--text-size);
}

section.testimonials .single b{
    color: var(--bg-orange);
}

section.demonstration{
    padding: 80px 20px 0 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

section.demonstration .container{
    flex-direction: column;
    align-items: center;
    gap: 80px;
}

section.demonstration h2{
    text-align: center;
    width: 430px;
    max-width: 100%;
    font-size: var(--title-size);
    font-weight: var(--title-weight);
    line-height: var(--title-height);
}

section.demonstration .box{
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 40px;
}

section.demonstration .single{
    width: 33.33%;
    display: flex;
    justify-content: center;
}

section.demonstration .single.gif-phone{
    display: none;
}

section.demonstration .single img{
    max-width: 100%;
}

section.authority{
    background-color: #121212;
    padding: 80px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

section.authority{
    padding: 80px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

section.authority h2{
    text-align: center;
    width: 1028px;
    max-width: 100%;
    font-size: 40px;
    line-height: 58px;
    font-weight: var(--title-weight);
}

section.guarantee{
    padding: 80px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

section.guarantee .container{
    justify-content: center;
}

section.guarantee .img,
section.guarantee .content{
    width: 50%;
    display: flex;
    flex-direction: column;
}

section.guarantee .img{
    align-items: center;
    justify-content: center;
}

section.guarantee .img img{
    width: 330px;
    max-width: 100%;
}

section.guarantee .content{
    justify-content: center;
    align-items: start;
    gap: 32px;
}

section.guarantee .content h2{
    font-size: var(--title-size);
    font-weight: var(--title-weight);
    line-height: var(--title-height);
}
section.guarantee .content p{
    font-size: var(--text-size);
}

section.faq{
    background-color: #121212;
    padding: 80px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

section.faq .container{
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

section.faq .box{
    display: flex;
    flex-direction: column;
    gap: 20px;
}

section.faq .title{
    background-color: var(--bg-orange);
    padding: 10px;
}

section.faq .title h3{
    font-size: 24px;
}

section.faq .text{
    padding: 20px;
    border: 1px solid var(--bg-orange);
    border-top: 0;
}

section.compatibility{
    padding: 80px 20px 0 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

section.compatibility iframe{

  width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;

}

section.compatibility .content{
    width: 50%;
    padding-bottom: 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    gap: 32px;
}

section.compatibility .img{
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: end;
}

section.compatibility .img img{
    max-width: 100%;
}

section.compatibility .img img.book{
    max-width: 80%;
    padding-bottom: 80px;
}

section.compatibility .content h2{
    font-size: var(--title-size);
    font-weight: var(--title-weight);
    line-height: var(--title-height);
}

section.compatibility .content ul li{
    padding: 5px 0;
    font-size: var(--text-size);
}

section.compatibility .content ul{
    margin-left: 40px;
}

section.compatibility .content p{
    font-size: var(--text-size);
}

section.support{
    background-color: #121212;
    padding: 80px 20px;
    display: flex;
    justify-content: center;
}

section.support p{
    font-size: var(--text-size);
}

footer{
    background-color: var(--bg-orange);
    padding: 20px;
    display: flex;
    justify-content: center;
}

footer p{
    font-size: var(--text-size);
}

@media screen and (max-width: 768px) {
    :root{
        --text-size: 18px;
        --title-size: 26px;
        --title-height: 46px;
    }

    button.cta{
        margin-top: 20px;
        padding: 16px 30px;
        font-size: 18px;
    }

    section.headline{
        padding: 60px 20px;
        min-height: 800px;
        background-image: url("../assets/headline-mobile.jpg");
        background-position: center bottom;
        background-size: cover;
    }

    section.headline .container{
        align-items: start;
    }

    section.headline .content{
        width: 100%;
    }

    section.headline .content img{
        width: 280px;
    }

    section.headline .content h1{
        font-size: 32px;
        line-height: 48px;
    }

    section.storytelling .container{
        flex-direction: column;
    }

    section.storytelling .container .img{
        order: 2;
        width: 100%;
        align-items: center;
    }

    section.storytelling .container .img img{
        width: 80%;
    }


    section.storytelling .container .content{
        order: 1;
        width: 100%;
    }

    section.problems .box{
        flex-direction: column;
        width: 80%;
    }

    section.problems .single{
        text-align: center;
        gap: 20px;
    }

    section.problems .single img{
        width: 120px;
    }

    section.how-works .box{
        flex-direction: column;
        gap: 20px;
    }

    section.how-works .box .single{
        width: 100%;
    }

    section.how-works .box .img{
        display: none;
    }

    section.calorie-counting{
        align-items: start;
        min-height: 1320px;
        background-image: url("../assets/calorie-couting-mobile.jpg");
        background-size: cover;
        background-position: center bottom;
    }



    section.calorie-counting .content{
        width: 100%;
    }

    section.benefits .single{
        align-items: center;
    }

    section.benefits .single p{
        font-size: 20px;
    }

    section.testimonials .box{
        flex-direction: column;
        gap: 20px;
    }

    section.demonstration .box .single{
        display: none;
    }

    section.demonstration .single.gif-phone{
        width: 100%;
        display: block;
        text-align: center;
}

    section.authority h2{
        font-size: 26px;
        line-height: 46px;
    }

    section.guarantee .container{
        flex-direction: column;
        gap: 40px;
    }

    section.guarantee .img,
    section.guarantee .content{
        width: 100%;
    }

    section.guarantee .img img{
        width: 250px;
    }

    section.guarantee .content{
        gap: 20px;
    }
    
    section.faq .title h3{
        font-size: 18px;
    }

    section.compatibility .container{
        flex-direction: column;
    }

    section.compatibility .content,
    section.compatibility .img{
        width: 100%;
    }

    section.compatibility .img img{
        width: 80%;
    }



}
















