@font-face {
  font-family: "Stars"; 
  src: url("assets/fonts/Stars-Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap; 
}

@font-face {
  font-family: "resource"; 
  src: url("assets/fonts/Resource.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

html {
   cursor: url("assets/images/Moonlit-BambooCursor.png"), auto;
   font-size: 22px;
}

body {
  background-color: hsl(281, 64%, 11%);
  background-image: url(assets/images/pinkFullMoonXL.png);
  background-repeat: no-repeat;
  background-position: top;
  color: hsl(0, 0%, 100%);
  font-family: "resource", monospace;
  display: grid;
  grid-template-columns: 9% 91%;
  grid-template-rows: 100px 1fr 100px;
  grid-template-areas: 
  "nav header"
  "nav content"
  "footer footer"
  ;
  gap: 6px;
  width: 85vw;
  margin: 10px auto;
}

header {
  grid-area: header;
}

footer {
  grid-area: footer;
  width: 85vw;
  display: flex;
  justify-content: end;
  align-items: end;
  }

h1, h2, h3, h4, h5, h6 {
  font-weight: 900;
  letter-spacing: .5rem;
  font-family: "Stars";
  text-shadow: 5px 2px 3px hsl(305, 50%, 32%);
  text-align: center;
}

h1, a[href] {
  font-variant: small-caps;
}

header h1 {
  text-align: left;
  margin-left: 30px;
}

footer p {
  font-size: 0.5rem;
  max-width: 200px;
  padding: auto;
  font-family: monospace;
  text-align: right;
}

a {
  cursor: url("assets/images/Moonlit-BambooCursorLink1.png"), auto; 
  color: hsl(335, 100%, 61%);
  text-shadow: 1px 1px 1px hsla(281, 64%, 11%, 0.8);
}

a:hover {
  letter-spacing: .1rem;
  text-shadow: 3px 3px 2px hsla(281, 64%, 11%, 0.8);
}

.homepage {
  display: grid;
  grid-template-columns: 85% 15%;
  grid-template-rows: max-content;
  grid-template-areas: 
  "intro updates"
  ;
  gap: 6px;
}

.content, .homepage {
  grid-area: content;
}

.navbar {
  background-color: hsla(277, 42%, 25%, 0.8);
  border: 3px outset hsla(277, 42%, 25%, 0.8);
  border-radius: 3px;
  padding: 0;
  box-shadow: 0 0 5px hsl(281, 64%, 11%);
  grid-area: nav;
  box-sizing: border-box;
  font-size: 1.2rem;
  min-width: 70px;
}

.navbar ul {
  list-style-type: none;
  padding: 10px;
  margin: 0;
}

.navbar li {
  padding: 5px 0;
}

.mascot {
  display: flex;
  justify-content: center;
  align-self: flex-end;
  padding: 20px;
}

.profile-pic {
  background-color: #452459;
  border-radius: 4px;
  max-width: 128px;
  height: auto;
}

.window {
  margin: 0 auto;
  background: hsla(305, 50%, 32%, 0.8);
  border: 3px outset hsla(305, 50%, 32%, 0.8);
  border-radius: 3px;
  padding: 10px;
  box-shadow: 0 0 5px hsl(281, 64%, 11%);
  text-align: center;
}

.window h2 {
  text-shadow: 5px 2px 3px hsl(335, 100%, 31%);
}

.intro {
  grid-area: intro;
}

.updates {
  margin: 0 auto;
  background-color: hsla(335, 100%, 61%, 0.6);
  border: 3px outset hsla(335, 100%, 61%, 0.6);
  border-radius: 3px;
  max-height: 60vh;
  box-shadow: 0 0 5px hsl(281, 64%, 11%);
  text-align: center;
  grid-area: updates;
  overflow-y: scroll;
}

.updates p {
  border: 1px solid hsla(281, 64%, 11%, 0.1);
  border-radius: 5px;
  background-color: hsla(305, 50%, 32%, 0.5);
  text-align: center;
  padding: 5px;
  margin: 5px;
  font-size: .85rem;
}

.gallery {
  margin: 0 auto;
  padding: 10px;
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap-reverse;
  justify-content: space-between;
  align-items: end;
  width: 100%;
  text-align: center;
}

.art {
  border: 1px solid hsl(281, 64%, 11%);
  padding: 5px 5px 1px 5px;
  background-color: hsla(281, 64%, 11%, 0.3);
  border-radius: 2px;
}


