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

body {
    font-family: Helvetica, sans-serif;
    min-height: 100vh;
    background: rgb(255, 255, 255);
    color: #0C3B2E;
    display: grid;
    grid-template-rows: 4rem 1fr 3em;
    grid-template-areas:
        "header"
        "main"
        "footer"; 
}

/**** Header *****/

header {
    grid-area: header;
    background-color: #c1c0cb;
    color: white;
    display: flex;
    justify-content: space-between; /* Center content horizontally */
    align-items: center;
    padding: 0 1rem; /* Add some padding for spacing */
}

.logo {
    display: flex;
    align-items: center;
    width: 55px;
    height: 55px;
    border-radius: 4px;
}

h1 {
    font-family: 'Courier New', Courier, monospace;
    font-size: 1.5rem; /* Adjust font size */
    color: rgb(94, 94, 94);

}

.headerTitle {
    display: flex;
    align-items: center;
    position: relative;
    width:20%;
    top: 1rem;
    left: 5rem; /* Adjust the left position as needed */
}

.errors {
    margin: 20px;
    text-decoration: none;
    color: black;
  }

/***** Search Bar ****/

@import url(https://fonts.googleapis.com/css?family=Open+Sans);

.search {
  width: 100%;
  position: relative;
  display: flex;
}

.searchTerm {
  width: 100%;
  border:3px solid #00B4CC;
  border-right: none;
  padding: 5px;
  height: 25px;
  border-radius: 5px 0 0 5px;
  outline: none;
  color: #9DBFAF;
}

.searchTerm:focus{
  color: #00B4CC;
}

.searchButton {
  width: 27px;
  height: 25px;
  border: 1px solid #00B4CC;
  background: #00B4CC;
  text-align: center;
  color: #fff;
  border-radius: 0 5px 5px 0;
  cursor: pointer;
  font-size: 20px;
}


/*Resize the wrap to see the search bar change!*/
.wrap{
    grid-area: header;
    display: flex;
    align-items: center;
    width: 30%;
    margin-left: 5rem;
}

.searchform{
    width:100%;
    display:flex;
}


/******** Nav Bar ********/

.navBar {
    grid-area: header;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: sticky;
    margin-left: 0rem;
}


nav {
    display: flex;
   
}

ul {
    list-style-type: none;
    display: flex; /* makes list display horizontal */
    
}

li {
    margin-right: 1rem; /* Add space between nav items */
    font-size: 1.2rem;
    padding-top: .72rem;
    padding-bottom: .72rem;
}

.navButton {
    text-decoration: none;
    color: rgb(94, 94, 94);
    display: flex;
    padding-top: .75rem;
    padding-bottom: .75rem;
}

.navButton:hover {
 
    height:100%;
    width:100%;
    background-color: #adadad;
}

/****** Home ******
.home {
    grid-area: main;
    display: grid;
    grid-template-columns: 65% 35%;
    grid-template-areas:
        "asideleft asideright"; 
}

.homeleft{
    grid-area: asideleft;
    display: grid;
    grid-template-rows: 30px 30px;
    grid-template-areas:
        "gridtop" 
        "gridbottom"; 

}

.homeright{
    grid-area: asideright;
    display: flex;
    justify-content: center;
}

.rightpic{ 
    width: 464px;
    height: 696px;
}

.hometop{
    display: flex;

}
.homebottom{
    display: flex;

}*/

.home {
    grid-area: main;
    display: grid;
    grid-template-columns: 1fr 1fr; /* Two columns */
    grid-template-areas:
        "tim nathanael"; /* Assign areas to the columns */
}

.tim {
    grid-area: tim; /* Assign Tim's image to the 'tim' area */
    display: flex;
    justify-content: flex-end; /* Align Tim's image to the bottom left */
    align-items: flex-end;
    margin-top: 10px;
}

.nathanael {
    grid-area: nathanael; /* Assign Nathanael's image to the 'nathanael' area */
    display: flex;
    justify-content: flex-start; /* Align Nathanael's image to the bottom right */
}


.nathanael img {
    width: 100%; /* Make images responsive to their containers */
    height: 100%;
    margin-left: 5px;
}
.tim img{
    width: 100%;
    height:50%;
}
.filldiv{
    grid-area: tim; /* Place filldiv in the 'tim' area */
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    position: relative;
    /*background: rgb(98, 175, 137);*/
    background-image: url("/images/IMG_0007.PNG");
    width: 100%;
    height:50%;
}

.filldivp{
    padding: 5px;
    margin-left: 1rem;
    margin-right: 1rem;
    color: black;
    font-family: sans-serif;
}

/****** Browse Page/Product card *****/




/***** FOOTER ****/
footer {
    background-color: #c1c0cb;
    color: rgb(94, 94, 94);
    grid-area: footer;
    position: sticky;
    bottom: 0;
    display: flex;
    writing-mode: horizontal-tb;
    justify-content: space-between;
    align-items: center;
}

.socialmedialogos{
    margin-right: 1rem;
    display:flex;
}

.spansociallogo{
    display: flex;
    margin-left: 1rem;
}

.flash-message {
    position: fixed;
    top: 4rem; /* Positions the message at the bottom of the nav bar */
    left: 20%; /* Centers the message by pushing from the left */
    width: 60%; /* Message width is 60% of the viewport width */
    height: auto; /* Fixed height for the message */
    line-height: 40px; /* Vertically centers the text inside the message */
    text-align: center;
    color: #fff;
    z-index: 1000; /* Ensures the message is above other content */
    display: flex;
    justify-content: space-between;
    padding: 0 10px;
    box-sizing: border-box;
}

.flash-message .close-btn {
    background: none;
    border: none;
    color: #fff;
    font-size: 24px;
    cursor: pointer;
}

.error {
    background: rgba(255, 102, 51, 0.7);
}

.success {
    background: rgba(108, 192, 112, 0.7);
}
