/*variables*/
:root{
    --main-color: #FFFFFF;
    --contrast-color: #173E6B;
    --variant-color: #F3F3F3;
    --beauty-color: #830C16;
    --accent-color: #47E6C5;
}

/*general styling*/
*{
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    font-size: 16px;
    margin: 0;
    padding: 0;
    color: var(--contrast-color);
    text-decoration: none;
}

main{
    padding-top: 4rem;
}

p{
    line-height: 1.7;
}


/*scroll bar*/
/* width */
::-webkit-scrollbar {
    width: 10px;
  }
  
  /* Track */
  ::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0); 
  }
   
  /* Handle */
  ::-webkit-scrollbar-thumb {
    background: var(--contrast-color); 
  }
  
  /* Handle on hover */
  ::-webkit-scrollbar-thumb:hover {
    background: var(--accent-color); 
  }


/*header*/
header {
    background-color: var(--main-color);
    height: 4rem;
    width: 100%;
    position: fixed;
    z-index: 10;
}
nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
}

header button {
    display: none;
}
nav img {
    height: 3rem;
    padding: 0 2rem 0 2rem;
    
}

.navigation {
    width: 30%;
    display: flex;
    justify-content: space-between;
}

.navigation_image {
    width:35%;
}

#shopping_cart_container {
    text-align: end;

    & a {
        display: inline-block;
        height: 100%;
        position: relative;

        & #cartcounter {
            position: absolute;
            left: 80px;
            top: 0;
            width: 24px;
            height: 24px;

            & p {
                background-color: var(--accent-color);
                height: 100%;
                width: 100%;
                border-radius: 100%;
                text-align: center;
                line-height: 23px;
            }
        }

        & img{
            transition: transform 0.5s step-end, margin-right 0.5s ease;
            transform:scaleX(-1);
        }
    }
}


#logo_container img {
    width: 11rem;
}


@media screen and (max-width: 900px) {
    header {
        transition: 0.5s ease-in-out;

        & button {
            display: block;
            position: absolute;
            width: 4rem;
            height: 4rem;
            background-color: white;
            border: none;

            & img {
                width: 3rem;
            }
        }

        & .mobileNone {
            display: none;
        }

        & nav {

            flex-direction: column;
            justify-content: space-between;
            align-items: center;
            text-align: center;

            & .navigation {
                flex-direction: column;

                & a {
                    margin: 0.5rem 0;
                    font-size: 1.5rem;
                }
            }
            
            & .navToggle {
                display: flex;
                opacity: 1;
            }

            & img {
                padding: 0.5rem;
            }

            & #logo_container, #shopping_cart_container {
                width: fit-content;
            }


        }
    }

    .popupMobile {
        height: 50vh;
        border-bottom: 4px solid var(--accent-color);
    }

    #shopping_cart_container {
        & a {
            & #cartcounter {
                left: 56px;
            }
        }
    }
}

/*main*/
main {
    padding-top: 4rem;
    display: flex;
    flex-direction: column;
    min-height: 90vh;
}

h1{
    font-family: "winco", sans-serif;
    font-weight: 700;
    font-style: normal;
}

/*parent should be set to flex for positioning to work as intended*/
.buttonlarge {
    padding: 0.8rem;
    width: 10rem;
    min-width: fit-content;
    border-radius: 5rem;
    text-align: center;
    min-height: fit-content;
}

.darkbutton{
    background-color: var(--contrast-color);
    color: var(--main-color);
    border: 1px solid var(--main-color);
}

.darkbutton:hover {
    background-color: var(--accent-color);
    cursor: pointer;
}

.tag{
    background-color: var(--accent-color);
    border-radius: 1rem;
    color: var(--main-color);
    width: fit-content;
    padding: 0.2rem 0.4rem 0.2rem 0.4rem;
}

@media screen and (max-width: 900px) {
    .buttonlarge {
        padding: 1.2rem;
        width: 15rem;
    }
}



/*video recommended*/
#video{
    margin-top: 5rem;
    margin-bottom: 5rem;
    width: 90%;
    margin-left: 5%;
    display: flex;
    justify-content: space-between;
    align-items: center;

    & img{
        border-radius: 3rem;
        width: 50%;
        aspect-ratio: 16/9;
        object-fit: cover;
    }

    & div {
        width: 45%;
        display: flex;
        flex-direction: column;

        & h3{
            font-family: Winco;
            font-size: 3rem;
            font-weight: 800;
            padding-bottom: 1rem;
        }

        & a{
            margin-top: 2rem;
        }
    }
}

@media screen and (max-width: 900px) {
    #video {
        flex-direction: column;
        margin: 2rem 0;
        width: 100%;
        text-align: center;
        align-items: center;

        & img {
            width: 90%;
            margin-bottom: 1rem;
        }

        & div {
            width: 90%;
            align-items: center;
        }
    }
}

/*footer*/

footer{
    background-color: var(--contrast-color);
    height: 5rem;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    text-align: center;


    & img{
        height: 60%;
        width: 30%;
    }

    & p{
        color: var(--main-color);
        width: 30%;
    }

    & a{
        color: var(--variant-color);
        text-decoration: underline;
        width: 30%;
    }
}

@media screen and (max-width: 900px) {
    footer {
        height: fit-content;
        flex-direction: column;
        padding: 2rem 0;

        & img {
            width: 20rem;
        }

        & p {
            width: 80%;
        }
    }
}

