* {
  box-sizing: border-box;

}



@keyframes animate {
  from {opacity: 1; z-index: 3;}
  to {opacity: 0; z-index: 0;}
}

#load {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-color: #dddddd;
  z-index: 0;
  text-align: center;

  
  animation: animate 2s ease-in-out forwards;
  
}

#load p {
  position:relative;
  text-align: center;
  margin-top: 25%;
}

/*
  general properties
*/

button {
  width: fit-content;
  margin-left: 10px;
}

form {
  margin-left: 10px;
  

}

text {
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

button {
  text-shadow: 
    -1px -1px 0 #f1f1f1,
    1px -1px 0 #f1f1f1,
    -1px 1px 0 #f1f1f1,
    1px 1px 0 #f1f1f1;
}

input {
  text-shadow: 
    -1px -1px 0 #f1f1f1,
    1px -1px 0 #f1f1f1,
    -1px 1px 0 #f1f1f1,
    1px 1px 0 #f1f1f1;
}

body {
  
  background-repeat: no-repeat;
  background-size:cover;
  background-attachment: fixed;
  
  
}

.Header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100px;
  /*justify-content: center;*/
  z-index: 2;
 
  
  background-color: gray;
  
  
}

.Header h1 {
  text-shadow: 
    -1px -1px 0 #f1f1f1,
    1px -1px 0 #f1f1f1,
    -1px 1px 0 #f1f1f1,
    1px 1px 0 #f1f1f1;
  height: 80%;
  text-align: center;
}
.Header p {
  text-shadow: 
    -1px -1px 0 #f1f1f1,
    1px -1px 0 #f1f1f1,
    -1px 1px 0 #f1f1f1,
    1px 1px 0 #f1f1f1;
  text-align: center;
  position: relative;
  top: -20%;
}



ul.topnav {
  display: flex;
  list-style-type: none;
  margin: 0;
  padding: 0;
  background-color: #333333;
  position: relative;
  top: -15%;
  
  
  
}

/* Style links in topnav */
ul.topnav li a {
  display: block;
  color: #f1f1f1;
  background-color: none;
  padding: 14px 16px;
  text-decoration: none;
  border-radius: 5px;
  transition: background 2s ;
}

/* Change color on hover */
ul.topnav li a:hover {
  background-color: #dddddd;
  color: black;
  border-radius: 5px;

}

.header div {
  position: relative;
  left: 10px;

}

/*
  for basically anything other than the header
*/

.Body {
  display: flex;
  flex-direction: column;
  margin-top: 150px ;
  margin-left: 15px;
  background-color: rgba(185, 185, 185, 0.1) ;
  background-size: auto;
  border-style: solid;
  border-width: 2px;
  border-radius: 5px;
  z-index: 1;
  
}


.Body h2 {
  padding-left: 10px;
  font-size: xx-large;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.Body h3 {
  padding-left: 10px;
  font-size: large;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.Body h4 {
  padding-left: 10px;
  font-size: large;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.Body h5 {
  
  font-size: large;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}



.Body h6 {
  padding-left: 10px;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.Body p {
  padding-left: 10px;
  font-size: large;
  /*padding-top: 10px;*/
  margin-left: 10px;
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  text-indent: 30px;
}

.Body img {
  margin-right: 10px;
}

.Body a:link {
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  color: #dddddd;
}

.Body a:visited {
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  color: #dddddd;
}

.Body a:hover {
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  color: aqua;
}

.Body ul {
  
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.Body p > img {
  
  justify-self: left;
  border: 1px solid #ddd;
  
}

.recommended {
  display: grid;
  grid-auto-rows: 5;
  grid-auto-columns: 4;
  grid-template-columns: repeat(4, 1fr);
  width: 90%;
  height: min-content;
  row-gap: 25px;
  column-gap: 25px;
  padding-left: 10px;
  
  
  
}

.recommended div {
  text-align: center;
}

.tooltip {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black; 
  cursor: pointer;
}

.tooltiptext {
  visibility: hidden; 
  background-color: black;
  color: #ffffff;
  text-align: center;
  padding: 5px 0;
  border-radius: 6px;
  position: absolute;
  z-index: 1; 

  width: 130px;
  top: 100%;
  left: 65%;
  margin-left: -65px; 
}


.tooltip:hover .tooltiptext {
  visibility: visible;
}

.list img {
  float: left;
}

.list p {
  float: right;
}

.gallery {
  display: grid;
  grid-auto-rows: 5;
  grid-auto-columns: 4;
  grid-template-columns: repeat(4, 1fr);
  width: 90%;
  height: min-content;
  row-gap: 25px;
  column-gap: 25px;
  padding-left: 10px;
}

.gallery div {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black; 
}


/* 
    anything after this is for the sidebar/content thing, so its split up
*/

.twocolumn {
  display: flex;
  flex-wrap: wrap;
  margin-top: 140px;
  margin-left: -10px;

}

.sidebar {
  flex: 15%;
  height: fit-content;
  background-color: #a2a2a2;
  
  border-style: solid;
  background-attachment: fixed;
  height: auto;
  
}


/*
  backgrounds for .content{} will be handled in the HTML file itself
*/
.content {
  flex: 80%;
  padding: 20px;
  
  background-color: rgba(185, 185, 185, 0.1) ;
  background-size: auto;
  border-style: solid;
  border-width: 2px;
  border-radius: 5px;
  

}

/*
  setting up for .sidebar
*/

.sidebar h2 {
  padding-left: 10px;
  font-size: xx-large;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.sidebar p {
  padding-left: 10px;
  font-size: large;
  /*padding-top: 10px;*/
  
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  
}

.sidebar a:link {
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  color: #dddddd;
}

.sidebar a:visited {
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  color: #dddddd;
}

.sidebar a:hover {
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  color: aqua;
}

.sidebar ul {
  
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}




/*
  setting up for .content
*/
.content h2 {
  padding-left: 10px;
  font-size: xx-large;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.content h3 {
  padding-left: 10px;
  font-size: large;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.content h4 {
  padding-left: 10px;
  font-size: large;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.content h5 {
  padding-left: 10px;
  font-size: large;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}



.content h6 {
  padding-left: 10px;
  /*padding-top: 10px;*/
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

.content p {
  padding-left: 10px;
  font-size: large;
  /*padding-top: 10px;*/
  margin-left: 10px;
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  text-indent: 30px;
  text-align: left;
  overflow: hidden;
}

.content a:link {
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  color: #dddddd;
}

.content a:visited {
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  color: #dddddd;
}

.content a:hover {
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
  color: aqua;
}

.content ul {
  
  color: #dddddd;
  text-shadow: 
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}


.content img {
  border: 1px solid #ddd;
  float: left;
  margin-right: 10px;
}


/*
  working with the canvas
*/

canvas {
  image-rendering: pixelated;

}