/* IMPORT GOOGLE FONT */

@import url('https://fonts.googleapis.com/css2?family=Open+Sans&display=swap');

*{
    margin: 0px;
}

body{
    font-family: 'Open Sans', sans-serif;
}


/* NAVBAR STYLING */
#navbar{
    /* width: 100%; */
    height: 85px;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    /* border: 2px solid red; */
    box-sizing: border-box;
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background-color: whitesmoke; 
}

/* #main{
    margin-top: 10px;
} */

/* #navbar > div{
    border: 1px solid blue;
} */

#menu{
    width: 5%;
    box-sizing: border-box;
    padding: 20px;
}

#menu a, #menu a:hover{
    text-decoration: none;
    color: black;
}

#logo{
    width: 34%;
    box-sizing: border-box;
    padding: 20px;
    text-align: right;
}

#logo img{
    filter: invert(1);
}

#searchbox{
    width: 70%;
    box-sizing: border-box;
    padding: 20px;
    text-align: right;
    display:none;
}

#searchbox input{
    width: 80%;
    height: 35px;
    padding-left: 10px;
    font-size: 18px;
    border-radius: 3px;
}

#searchbox input:focus{
    border: 3px solid #3d72d4;
    outline: none;
}

#userArea{
    width: 20%;
    box-sizing: border-box;
    padding: 20px;
    font-size: 14px;
}

.icons{
    display: inline-block;
    margin-left: 15px;
    box-sizing: border-box;
    padding: 10px;
    text-align: center;
    /* border: 1px solid red; */
}

.icontxt{
    height: 30px;
    display: inline-block;
    text-align: center;
    /* border: 1px solid blue; */
}
/* a.userAreaIcons{
    
} */

#userArea>a, #userArea > a:hover{
    text-decoration: none;
    color: black;
}


/*TOP CART PROPERTIES*/
#topCart{
    position: relative;
}

#totalCartItems{
    position: absolute;
    height: 25px;
    width: 25px;
    border-radius: 50%;
    background-color: #eb0b0b;
    top: 0;
    left: 50%;
    color: #ffffff;
    font-size: 12px;
    text-align: center;
    box-sizing: border-box;
    padding: 5px;
}


/* RIDING JACKET BANNER AREA */

#bannerArea{
    /* top: 85px; */
    position: relative;
}

#banner > img{
    width: 100%;
}

#bannerText{
    position: absolute;
    top: 35%;
    left: 10%;
    width: 35%;
    background-color: #a8b0b2;
    box-sizing: border-box;
    padding: 20px;
    opacity: 0.75;
    /* border: 2px solid red; */
}

#bannerText > h1{
    font-size: 36px;
    font-weight: 700;
    font-family: Arial black;
}



/* CATEGORY HEADER */
#categoryHeader{
    width: 100%;
    height: 50px;
    background-color: #f2f2f2;
    box-sizing: border-box;
    padding: 10px;
}

#categoryHeader a, span, p{
    font-size: 12px;
}

#historyLinks{
    width: 80%;
    margin: auto;
}

#categoryHeader a{
    text-decoration: none;
    color: black;
}

#categoryHeader a:hover{
    text-decoration:underline;
}

.currentPage{
    display: inline-block;
}

/* FILTER AREA */

#filterDiv{
    width: 80%;
    height: 50px;
    margin: auto;
    margin-top: 20px;
    background-color: whitesmoke;
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* border: 1px solid red; */
}

#filterDiv > div{
    /* border: 1px solid blue; */
    box-sizing: border-box;
    padding: 10px;
    height: 100%;
}

#filterArea{
    width: 40%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#filterArea p{
    font-size: 14px;
    font-weight: bold;
}

#filterArea i {
    font-size: 18px;
}

.filterSelect select{
    font-size: 16px;
    font-weight: 600;
    border: 0px;
    border-bottom: 2px solid black;
}

.filterSelect select option{
    font-size: 16px;
    background: rgba(196, 196, 196, 0.5);;
}

#sortArea{
    width: 25%;
    display: flex;
    align-items: center;
    justify-content: space-around;
}

#sortArea p{
    font-size: 14px;
    font-weight: bold;
}

#sortArea i {
    font-size: 18px;
}

#reset{
    width: 10%;
}

#resetFilters{
    width: 90%;
    margin: auto;
    border: 2px solid black;
    border-radius: 5px;
    background-color: whitesmoke;
    cursor: pointer;
    height: 30px;
    font-weight: bold;
}

#resetFilters:hover{
    filter: invert(1);
}

/* MAIN PRODUCT DISPLAY AREA */
#topcontainer{
    width: 100%;
    margin-bottom: 30px;
}

#totalResults{
    width:80%;
    margin: auto;
    margin-top: 20px;
}

#displayDiv{
    width: 80%;
    margin: auto;
    margin-top: 30px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 350px;
    grid-gap: 20px;  
    /* border: 1px solid red; */
}

/* #displayDiv > div{
    border: 1px solid blue;
} */

.prodDiv{
    overflow: hidden;
    position: relative;
    cursor: pointer;
}


.prodInfoCart{
    height: 40%;
    position: absolute;
    background-color: whitesmoke;
    z-index: 2;
    width: 100%;
    font-size: 14px;
    /* border: 1px solid red; */
}

.prodDiv:hover > .prodInfoCart{
    top: 68%;
}

#displayDiv img{
    width: 100%;
    height: 80%;
}

.prodInfo{
    height: 45%;
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    padding: 10px;
}

/* .prodInfo > div{
    border: 1px solid blue;
} */

.prodName{
    width: 60%;
    font-weight: 600;
}

.prodPrice{
    width: 30%;
}

.addCartArea{
    height: 40%;
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    padding: 10px;
}

.cartIcon{
    cursor: pointer;
}

.cartIcon:hover svg{
    fill: black;
}

.sizeSelector{
    width: 70%;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: auto;
    grid-gap: 10px;
}

.size{
    background-color: #ffffff;
    font-weight: bold;
    text-align: center;
    height: 70%;
    border: 2px solid black;
    cursor: pointer;
}


/* FOOTER AREA */

#iconsPolicy{
    width: 100%;
    height: 90px;
    margin-top: 30px;
    padding: 1px;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    background-color: #ebebeb;
}

#iconsPolicy > div{
    width: 10%;
    /* border: 1px solid red; */
    box-sizing: border-box;
    height: 100%;
    padding: 10px;
}

.iconAdd{
    text-align: center;
    font-size: 32px;
}

#iconsPolicy > div > p{
    font-weight: bold;
    text-align: center;
    font-size: 14px;
}

#footerMain{
    width: 100%;
    background-color: black;
    height: 400px;
    /* display: flex;
    align-items: center; */
}

#footerLinks{
    width: 80%;
    height: 70%;
    margin: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* border: 1px solid red; */
}

#footerLinks > div{
    /* border: 1px solid blue; */
    height: 100%;
    margin-top: 5%;
    box-sizing: border-box;
    padding: 10px;
}

#aboutus{
    width: 15%;
}



.aboutUsLinks{
    display: block;
    color: grey;
    font-size: 14px;
    margin-top: 10px;
}

.aboutUsLinks, .aboutUsLinks:hover{
    text-decoration: none;
    color: grey;
}

#store{
    width: 25%;
}



a.order{
    display: block;
    border: 1px solid grey;
    margin-bottom: 10px;
    height: 15%;
    display: flex;
    align-items: center;
    justify-content: center;
}

a.order, a.order:hover{
    text-decoration: none;
    color: grey;
}

#keeptouch{
    width: 25%;
}

#keeptouch p:nth-child(2){
    color: grey;
    font-size: 14px;
}


#keeptouch input{
    width: 100%;
    background-color: black;
    border: 0px;
    outline: 1px solid grey;
    height: 15%;
    padding: 5px;
    color: grey;
}

#ourpolicies{
    width: 20%;
}

#ourpolicies p{
    color: white;

}

.linkHeading{
    color: white;
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 10px;
}

#keeptouch > p:nth-child(2){
    margin-bottom: 10px;
}

#copyrightText{
    width: 80%;
    height: 10%;
    margin: auto;
    /* border: 1px solid red; */
    margin-top: 50px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#copyrightText small{
    color: grey;
    font-size: 11px;
}

#socialIcons{
    color: white;
}

#socialIcons i{
    color: white;
    font-size: 20px;
    margin-left: 10px;
}







/* MEDIA QUERIES */

@media all and (max-width:700px){

    #navbar{
        justify-content: space-between;
    }

    #logo{
        width: 60%;
        text-align: right;
        padding: 20px;
    }

    #logo img{
        width: 100%;
    }

    #userArea{
        width: 20%;
        display: flex;
        justify-content: flex-start;
        padding: 10px;
        font-size: 12px;
    }

    .icontxt{
        display: none;
    }

    #searchbox{
        width: 50%;
    }

    #searchbox input{
        font-size: 14px;
        height: 30px;
    }

    .icons{
        display: block;
        margin-left: -5px;
    }

    #userArea > a:nth-child(2){
        display: none;
    }

    #bannerText{
        display: none;
    }

    #filterDiv{
        display: none;
    }

    /* #filterArea{
        width: 20%;
        flex-direction: flex-start;
    } */

    #displayDiv{
        width: 100%;
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 350px;
    }

    .prodDiv:hover > .prodInfoCart{
        top: 60%;
    }

    .sizeSelector{
        width: 50%;
        grid-template-columns: repeat(4, 1fr);
        grid-auto-rows: auto;
    }

    #footerMain{
        height: 150px;
    }

    #footerLinks{
       flex-direction: row;
       justify-content: space-between;
       cursor: pointer;
    }

    .aboutUsLinks{
        display: none;
    }

    #footerLinks input{
        display: none;
    }

    a.order{
        display: none;
    }

    #keeptouch > p:nth-child(2){
        display: none;
    }

    #store > p:not(p:first-child){
        display: none;
    }

    #copyrightText{
        margin-top: -15px;
    }

    #socialIcons i{
        color: white;
        font-size: 12px;
        margin-left: 10px;
    }

}

@media all and (min-width: 50px) and (max-width: 400px){
    #displayDiv{
        grid-template-columns: 1fr;
        grid-auto-rows: 350px;
    }

    .sizeSelector{
        width: 60%;
        grid-template-columns: repeat(5, 1fr);
        grid-auto-rows: auto;
    }
}