body {
  font-family: Lato, Roboto, Helvetica, sans-serif, "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ＭＳ ゴシック", "MS Gothic", "Noto Sans CJK JP", TakaoPGothic, sans-serif;
  font-size: 1.1rem;
  color: #000;
  line-height: 1.5;
  text-align: left;
  width: 100%;
  margin: 0px;
  min-width: 320px;
}

h2 {
  text-align: center;
  padding-bottom: 20px;
}

h3 {
  color: rgb(193, 39, 45);
}

ul {
  list-style: none;
}

a:link {
  text-decoration: none;
  padding-bottom: 3px;
  border-bottom: 1px solid blue;
}

a:visited {
  text-decoration: none;
  padding-bottom: 3px;
  border-bottom: 1px solid purple;
}

/*red ticks*/

.red-ticks li::before {
  content: "✓";
  color: rgb(193, 39, 45);
  display: inline-block;
  width: 1.5em;
  margin-left: -2em
}

/*Wrap text better on smaller screen*/

.line2 {
  display: inline-block;
  white-space: pre;
}

footer {
  text-align: center;
  margin-top: 75px;
  padding: 5px 0px;
  background-color: rgba(224, 224, 224, 0.8)
}

#contact, #about, #ICBC, #projects   {
  padding-top: 3rem;
  width: 80%;
  margin: auto;
}

#about h2, #contact h2, #ICBC h2, #projects h2 {
  text-align: center;
  padding: 10px;
  background-color: rgb(193, 39, 45);
  color: white;
  border-radius: 25px;
}

/*PROJECTS*/

#projects {
  padding-top: 3rem;
}

#project-grid {
  width: 75%;
  margin: auto;
}

.project-tile-title {
  margin: 50px -10px;
  background: rgba(224, 224, 224, 0.8);
  border-radius: 25px;
  padding: 25px;
  text-align: center;
}

#other-work {
  width: 80%;
  padding-top: 5vh;
  margin: auto;
}

/*Navbar*/

button {
  display: none;
}

button span {
  display: none;
}

#navbar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  box-sizing: border-box;
  background-color: #fff;
  z-index: 2;
}

#menu {
  box-sizing: border-box;
  width: 100vw;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 10px;
  background-color: rgb(193, 39, 45);
  margin: 0px;
  margin-bottom: 0px;
}

#menu li {
  box-sizing: border-box;
  color: white;
  text-decoration: none;
  padding: 14px;
  border-bottom: 1px white solid;
  width: 85vw;
}

#menu li.no-bb {
  border-bottom: none;
}

#menu a {
  color: white;
  text-decoration: none;
}

#menu a:visited {
  text-decoration: none;
  border-bottom: 0px;
}

#menu a:link {
  text-decoration: none;
  border-bottom: 0px;
}

#menu li:hover {
  font-size: 1.3rem;
}

#logo {
  width: 100vw;
  max-width: 500px;
  margin: auto;
  padding-top: 10px;
}

/*If javascript is available*/
.js #menu {
  display: none; /*hides the menu if JS is available*/
}

.js button {
  display: block; /* show the button if JS is available*/
}

.js button {
  background: url("../images/hamburger.svg") center center no-repeat;
  border: 0px;
  padding: 10px;
  position: absolute;
  top: 0px;
  right: 0px;
}

.js button span {
  display: block;
  margin-top: 50px;
  /*Need to figure out an alternative to this.*/
}

.js button:focus, button:hover {
  background: url("../images/hamburger.svg") center center no-repeat;
  color: rgb(193, 39, 45);
}


.js #welcome-section {
  margin-top: 0vh; /*removes the top margin if hamburger only*/
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: white;
}

#menu.is-active {
  display: block; /*show the menu when button is clicked*/
}

.js #welcome-section.is-active {
  margin-top: 20vh;
}

  
  

/*************************************************************Media query for bigger screens*/

@media (min-width: 768px) {
  button {
    display: none;
  }
  h2 {
    text-align: center;
    padding-bottom: 50px;
  }
  #contact h2, #about h2, #ICBC h2 {
    text-align: left;
    border-bottom: 1px rgb(193, 39, 45) solid;
    padding: 0px;
    background-color: white;
    color: rgb(193, 39, 45);
    border-radius: 0px;
  }

 #projects h2 {
    text-align: left;
    padding: 0px;
    background-color: white;
    color: rgb(193, 39, 45);
  }

  a:link {
    text-decoration: none;
    padding-bottom: 3px;
    border-bottom: 1px solid blue;
  }
  a:visited {
    text-decoration: none;
    padding-bottom: 3px;
    border-bottom: 1px solid purple;
  }
  #contact, #about, #ICBC, #projects {
    padding-top: 5rem;
    width: 80%;
    margin: auto;
  }
  .red-ticks li::before {
    content: "✓";
    color: rgb(193, 39, 45);
    display: inline-block;
    width: 1.5em;
    margin-left: -2em;
    padding-right: .5em;
  }
  #welcome-section {
    margin-top: 0vh;
  }
  /*Navbar*/

  #navbar {
    display: inline;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    background-color: #fff;
    z-index: 1;
  }

  #menu.is-active {
    display: flex; /*show the menu when button is clicked*/
  }

  .js #menu {
    box-sizing: border-box;
    width: 100vw;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    gap: 10px;
    padding: 10px 10px;
    background-color: white;
  }
  .js button {
    display: none;
    /* hid the button*/
  }

 
  #menu li {
    box-sizing: border-box;
    padding: 0px;
    border: 1px transparent solid;
    text-align: center;
    width: auto;

  }

  #menu a {
    box-sizing: border-box;
    color: rgb(193, 39, 45);
    min-width: 50px;
    text-decoration: none;
    border: 1px transparent solid;
    text-align: center;
    padding: 5px;
  }
  #menu li:hover {
    border: 1px rgb(193, 39, 45) solid;
    border-radius: 10px;
    font-size: 1.1rem;
    }
  
  /*Projects Grid*/
  #project-grid {
    box-sizing: border-box;
    width: 80%;
    margin: auto;
    display: grid;
    grid-template-columns: 3fr 3fr 3fr;
    grid-gap: 2vw;
  }
  .project-tile-title {
    border-bottom: 1px rgb(193, 39, 45) solid;
    height: 50px;
    /*Need this so the title sections are the same height regardless of text length.*/
    margin: 0px;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    border-radius: 0px;
    background-color: white;
  }



#welcome-section.is-active {
  margin-top: 0vh;
}

#logo {
  height: 80vh;
  min-width: 150px;
  min-height: 150px;
  margin: auto;
  padding-top: 10px;
}
}
