/* Base, Background*/
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  font-family: "Montserrat", sans-serif;
  height: 100%;
}

body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 1) 40%,
    rgba(53, 53, 53, 1) 85%,
    rgba(87, 87, 87, 1) 100%
  );
  background-size: auto;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

body::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 1) 40%,
    rgba(53, 53, 53, 1) 85%,
    rgba(87, 87, 87, 1) 100%
  );
  z-index: -1;
}

body::after {
  content: "";
  display: block;
  height: 10px;
}

img {
  max-height: 500px;
  max-width: 90vw;
}

span.b {
  font-weight: bold;
}

h1,
h1 a,
h1:visited,
h3,
p,
#intro {
  color: white;
}

a,
#options {
  color: darkgrey;
  text-decoration: none;
}

a:hover {
  color: grey;
  text-decoration: underline;
}

/* Space texture */
#main {
  background: url("http://joegallina.com/img/bg_pattern.png") fixed;
  text-align: center;
  min-height: 100vh;
  width: 100%;
  margin-bottom: 10px;
}

#options {
  padding-bottom: 16px;
}

#welcome {
  color: white;
  width: 80vw;
  margin: 0 auto;
  font-size: 22px;
}

#portfolio {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas:
    "charisma-react"
    "charisma"
    "EDCLV25";
  font-size: 22px;
}

#charisma-demo {
  display: grid;
  grid-area: charisma;
  grid-template-areas: "name" "imgs" "desc";
  width: 90vw;
  margin: 0 auto;
}

#charisma-demo div,
#charisma-react div,
#EDCLV25 div {
  padding: 10px 0px;
}

#charisma-react {
  display: grid;
  grid-area: charisma-react;
  grid-template-columns: "name" "imgs" "desc";
  width: 90vw;
  margin: 0 auto;
}

#EDCLV25 {
  display: grid;
  grid-area: EDCLV25;
  grid-template-columns: "name" "imgs" "desc";
  width: 90vw;
  margin: 0 auto;
}

.desc {
  text-align: left;
}

.name,
.desc {
  color: white;
}

ul {
  text-align: left;
  width: max-content;
  margin: 0 auto;
}
