
/*----------------------------GENERAL STYLES-----------------------------------*/

* {
    box-sizing: border-box;
}

body {
    background-color: hsl(35, 59%, 94%);
    color:hsl(236, 61%, 9%);
    position: relative;
    max-width: 1500px;
    margin: 0 auto;

}

html {
    scroll-behavior: smooth;
}



/* varia */

a {
    text-decoration: none;
    color: hsl(236, 61%, 9%);
}



li {
    list-style: none;
    font-family: "poppins";
    font-size: 1.1rem;
}

ul {
    padding:0;
}



/* fonts */


@font-face {
    font-family: 'SchmallfetteCP'; 
    src: url('./fonts/SchmalfetteCP.otf') format('otf'),
         url('fonts/SchmalfetteCP.ttf') format('ttf'); 
}


h1 {
    font-family: "SchmalfetteCP", "Bebas Neue", sans-serif;
    font-size:6rem;
    font-weight: 200;
    line-height: 100%;
    color:hsl(35, 59%, 94%)
}

h2 {
    font-family: "SchmalfetteCP", "Bebas Neue", sans-serif;
    font-size: 4rem;
    font-weight: 200;
    line-height: 100%;
}

h3 {
    font-family: "Bebas Neue";
    font-size: 30px;
    font-weight: 400;
    line-height: 100%;
}

p {
    font-family: "Poppins";
    line-height: 160%;
    font-size: 1.1rem;

}

.button p {
    font-family: "SchmalfetteCP", "Bebas Neue", sans-serif;
    font-size: 1.8rem;
    font-weight: 200;
    line-height: 100%;
}

b {
    font-weight: 600;
}

@media (max-width: 1050px) {

    h2 {
        font-size: 3.7rem;
    }
}

@media (max-width: 450px) {

    h2 {
        font-size: 3rem;
    }
}



/* button */

.button {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap:20px;

    border: none;
    border-radius: 8px;
    background-color: hsl(12, 83%, 54%);
    color:hsl(35, 59%, 94%);
    width: fit-content;
    padding: 10px 16px 8px 16px;

}

.button img {
    height: 20px;
    width: initial;
}


/*----------------------------HEADER-----------------------------------*/

/* navigation */

nav {
    padding: 40px 40px 0px 40px;
    height: fit-content;

    position: fixed;
    width: 100%;
    z-index: 1000;
    top: 0; 
    left: 0; 
    box-sizing: border-box; 

}

@media (max-width: 450px) {
  nav {
    padding: 20px 20px 0 20px;
  }
}

.fixed {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 13px 60px;
    background-color: hsl(35, 59%, 94%);
    border-radius: 20px;
    width: 100%;

    box-shadow: 0px 4px 6px hsla(0, 0%, 0%, 0.1); 
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
    max-width: 1420px;
    margin: 0 auto;
}

nav img {
    height: 60px;
}

nav ul {
    display: flex;
    justify-content: space-between;
    width: 55%;
}

nav li,
nav a {
    list-style: none;
    text-decoration: none;
    color: hsl(236, 61%, 9%);
}

nav img:first-child {
    display: none;
}

@media (max-width: 1050px) {

    .fixed ul {
        display: none;
    }

    nav img:first-child {
        display:block;
        height: 30px;
    }
}


@media (max-width: 600px) {
  
    .fixed {
        padding: 13px 30px;
    }
}

@media (max-width: 450px) {
  
    .fixed {
        padding: 13px 20px;
    }

}

/* hamburger menu open */


.fixed-hamburger {
    padding: 40px 40px 0px 40px;
    height: fit-content;

    position: fixed;
    width: 100%;
    z-index: 1000;
    top: 110px; 
    left: 0; 
    box-sizing: border-box; 
}

.fixed-hamburger ul {
    display: flex;
    flex-direction: column;
    gap:10px;
    align-items: center;
    padding: 13px 60px;
    background-color: hsl(35, 59%, 94%);
    border-radius: 20px;
    width: 100%;

    box-shadow: 0px 4px 6px hsla(0, 0%, 0%, 0.1); 
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
    margin: 0 auto;
}

.toggle-checkbox {
    display: none;
  }
  
  .fixed-hamburger {
    display: none;
  }
  
.toggle-checkbox:checked ~ .fixed-hamburger {
    display: block;
  }
  
label[for="toggle-menu"] {
    cursor: pointer;
  }



/* header text */

.header-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:20px;
    padding:250px 0 100px 0;
    text-align: center;
}

.header-text button {
    width: fit-content;
    gap:10px;
}

.header-content {
    background-image: url(../images/header-image.png);
    margin:20px;
    padding:20px;
    border-radius: 20px;
    overflow: clip;
}

.header-content .button {
    background-color: hsl(41, 93%, 59%);
}

@media (max-width: 1050px) {

    header h1 {
        font-size: 5rem;
    }
}

@media (max-width: 450px) {

    header h1 {
        font-size: 4rem;
    }
}



/* red banner */

.red-banner {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap:20px;

    background-color: hsl(12, 83%, 54%);
    padding: 30px 60px;
    margin: 20px;
    border-radius: 20px;
    color:hsl(35, 59%, 94%);
    text-align: center;
}

.red-banner p {
    font-size: 0.9rem;
}

.red-banner img {
    height: 40px;
}

@media (max-width: 800px) {

    .red-banner p {
        display: none;
    }

    
}


/* header image */

.background-image {
    padding:0 20px;
}

.background-image img {
    border-radius:20px;
}




/*----------------------------INFO SECTION-----------------------------------*/



#info-section {
    display: flex;
    flex-direction: row;
    gap:20px;

    margin: 20px;
    padding: 20px;
    background-color: hsl(41, 93%, 59%);
    border-radius: 20px;
    scroll-margin-top: 145px; 
    
}

@media (max-width: 800px) {
    #info-section {
        flex-direction: column;   
    } 
}

/* image card*/


.img-card {
    display: flex;
    flex-direction: column;
    gap:20px;

    width: 35%;
    background-color: hsl(35, 59%, 94%);
    border-radius: 20px;
    overflow: clip;
    padding:20px;
}

.img-card img {
    border-radius: 20px;
}

@media (max-width: 800px) {
    .img-card {
        width: 100%;
    } 

    .img-card img {
        height: 400px;
        object-fit: cover;
    }
}


/* usp points */

.usp-points img {
    height: 50px;
}

.usp-points {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap:30px;

    width: 65%;
    
}

.point {
    display: flex;
    align-items: center;
    gap:30px;

    width: 100%;
    padding:30px 50px;
    background-color: hsl(41, 100%, 76%);
    border-radius: 20px;
}

@media (max-width: 800px) {
    .usp-points {
        width: 100%;
    }
}




/*----------------------------INSPIRATION SECTION-----------------------------------*/


#inspiration-section {
    display: flex;
    padding: 40px 100px 40px 60px;
    gap:60px;
    scroll-margin-top: 145px;
}

@media (max-width: 1050px) {
  #inspiration-section {
    flex-direction: column;
  }
}

@media (max-width: 500px) {
    #inspiration-section {
      flex-direction: column;
      padding:40px 20px;
    }
  }


/* text left */

.text {
    width: 40%;
}



.text h2 {
    margin-bottom: 20px;
}


@media (max-width: 1050px) {
  .text {
    width: 100%;
    text-align: center;
  }

}

/* all recipes */

.all-recipes {
    display: flex;
    flex-direction: column;
    gap:20px;

    width: 60%;
}

.single-recipe {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;

    width: 100%;
    background-color: hsl(205, 100%, 73%);
    padding: 10px 20px;
    border-radius: 20px;
}

.single-recipe img {
    height: 160px;
}

.single-recipe:nth-child(2) {
    background-color: hsl(12, 83%, 54%);
}

.single-recipe:nth-child(3) {
    background-color: hsl(41, 93%, 59%);
}

@media (max-width: 1050px) {
  .all-recipes {
    width: 100%;
  }
}

@media (max-width: 650px) {
  .single-recipe {
    flex-direction: column;
    padding:20px 0;
  }
}


/*----------------------------POINTS OF SALE SECTION-----------------------------------*/


#pointofsale-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:20px;

    background-color: hsl(70, 59%, 42%);
    padding: 20px;
    margin: 20px;
    border-radius: 20px;

    scroll-margin-top: 145px;
}

#pointofsale-section h2 {
    color: hsl(35, 59%, 94%);
    text-align: center;
    margin-top: 20px;
}

/* cards */

.all-button-cards {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
    gap: 10px; 
  }
  
  .button-card {
    border-radius: 20px;
    padding: 20px;
    margin: 10px;
    background-color: hsl(35, 59%, 94%);
    flex: 1 1 calc(33.33% - 20px); 
    box-sizing: border-box;
    min-width: 250px; 
    overflow: hidden; 
  }
  

  @media (max-width: 650px) {
    .button-card {
      flex: 1 1 100%; 
    }
  }

  @media (min-width: 1000px) {
    .all-button-cards {
      flex-wrap: nowrap; 
      justify-content: space-between; 
    }
  
    .button-card {
      flex: 1 1 33.33%; 
    }
  }

.button-card img:first-child {
    height: 250px;
    border-radius: 8px;
    width: 100%;
    object-fit: cover;
}

.wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap:10px;

    margin-top: 20px;
}

.wrap h3 {
    width: 200px;
}


/*shop online card*/

.shop-online-card {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items:end;
    gap:20px;

    background-color: hsl(70, 48%, 72%);
    border-radius: 20px;
    padding: 25px 20px 20px 30px;
    width: 50%;
} 

@media (max-width: 1050px) {
  .shop-online-card {
    width: 100%;
  }
}

.shop-online-card .button {
    background-color: hsl(70, 59%, 42%);
}


/*----------------------------BUY FAVOURITES SECTION-----------------------------------*/


#buy-favourites {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:20px;

    background-color: hsl(35, 59%, 94%);
    padding: 20px;
    margin: 20px;
    border-radius: 20px;

    scroll-margin-top: 145px;
}

#buy-favourites h2 {
    color: hsl(236, 61%, 9%);
    text-align: center;
}

/* aanpassingen kleur enzo*/

#buy-favourites .button-card {
    background-color: hsl(70, 48%, 72%);
}

#buy-favourites .shop-online-card {
    background-color:hsl(70, 59%, 42%) ;
    color:hsl(35, 59%, 94%);
}

#buy-favourites .shop-online-card button {
    background-color: hsl(35, 59%, 94%);
    color:hsl(70, 59%, 42%);
}

#buy-favourites .button-card > img:first-of-type {
    object-fit: contain;
}

#buy-favourites .button-card button {
    background-color: hsl(70, 59%, 42%);
}



/*----------------------------OUR STORY SECTION-----------------------------------*/



#ourstory-section {
    display: flex;
    flex-direction: row;
    gap:40px;
    align-items: center;

    margin:80px 20px;
    scroll-margin-top: 145px;
}

#ourstory-section img {
    border:hsl(205, 100%, 73%) solid 15px;
    border-radius: 20px;
    width: 300px;
    height: 400px;
    object-fit: cover;

}

#ourstory-section .text {
    width: 100%;
    text-align: center;

}

.callout {
    font-family: 'Bebas Neue';
    background-color: hsl(205, 100%, 88%);
    border-radius: 20px;
    padding:10px 20px;
    margin-top:20px;
    font-size:1.3rem;

}

@media (max-width: 1150px) {
    #ourstory-section {
        flex-direction: column;
        align-items: center;
        margin:80px 60px;
    }
    
    #ourstory-section img {
        width: 100%;
    }
}



/*----------------------------BANNER SECTION-----------------------------------*/


#banner-section {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap:60px;

    margin:20px;
    background-color: hsl(12, 83%, 54%);
    color:hsl(35, 59%, 94%);
    border-radius: 20px;
    padding:80px 150px;

}

#banner-section .button {
    background-color: hsl(35, 59%, 94%);
    color: hsl(12, 83%, 54%);
}

.banner-text {
    display: flex;
    flex-direction: column;
    gap:20px;
}

#banner-section img:first-child {
    height: 100%;
}

@media (max-width: 1050px) {
  #banner-section {
    padding:80px 40px;
  }
}

@media (max-width: 700px) {
    #banner-section {
      flex-direction: column;
    }
  }


/*----------------------------FOOTER-----------------------------------*/


footer {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: end;

    margin: 60px;
    height: 400px;
}

footer h2 {
    margin:50px 0 5px 0;
}

.footer-right {
    display: flex;
    flex-direction: row;
    height: 100%;
}

.socials {
    display: flex;
    flex-direction: column;
    gap:20px;

    margin-right:20px;  
    height: 400px;
}


.socials img {
    height: 100%;
    width: 70%;
}




@media (max-width: 850px) {
  footer {
    flex-direction: column;
    gap: 40px;
    align-items: center;
    height: auto;
  }

  .footer-left {
    width: 100%;
  }

  .footer-right {
    justify-content: space-between;
    width: 100%;
    height: 400px;
  }

.logo-img {
     height: 400px;
  }

  .logo-img img {
    object-fit: fill;
    height: 100%;
  }

  .socials {
    height: 100%;
  }



}




/*----------------------------LEUKE EXTRAATJES-----------------------------------*/




/* hover effectje voor links*/

a p::after {
    content: '';
    display: block;
    width: 0;
    height: 2px;
    background: hsl(12, 83%, 54%);
    transition: width 0.3s;
}

a p:hover::after {
    width: 100%;
}

/* hover met scale */

button {
    transition: transform 0.3s, box-shadow 0.3s;
    cursor:pointer;
}

button:hover {
    transform: scale(1.05);
}


#buy-favourites img:first-child {
    transition: transform 0.3s, box-shadow 0.3s;
}

#buy-favourites img:first-child:hover {
    transform: scale(1.05);
}


/*----------------------------MOBILE FIX-----------------------------------*/


@media (max-width: 450px) {
  
    .header-content {
        margin:10px 10px 30px 10px;
    }

    #info-section {
        margin:30px 10px;
        padding:10px;

    }

    #buy-favourites {
        margin:30px 10px;
        padding:10px;
    }

    #inspiration-section {
        margin:30px 10px;
        padding:10px;
    }

    #pointofsale-section {
        margin:30px 10px;
        padding:10px;
    }

    #ourstory-section {
        margin:30px 10px;
        padding:10px;
    }

    #banner-section {
        margin:30px 10px;
        padding:30px 20px;
    }

    footer {
        margin:30px 10px;
    }

    
}


@media (max-width: 450px) {

    h1 {
        font-size: 4rem;
    }
}
