﻿html, body {
  width: 100%;
  height: 100%;
}

body {
  margin: 0px;
  
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
  'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
  sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  color: #333333;

  display: flex;
  flex-direction: column;
}

#page_wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
}

#menu_flyout_overlay {
  position: absolute;
  height: calc(100% - 50px);
  top: 50px;
  width: 100%;
  background-color: #262626;
  opacity: 0.5;
  z-index: 100;
  display: none;
}

#menu_flyout {
  position: absolute;
  height: calc(100% - 50px);
  top: 50px;
  width: 70%;
  z-index: 100;
  background-color: #262626;
  color: #D9D9D9;
  display: none;
  font-size: 20px;
  flex-direction: column;
}

#menu_flyout ul {
  list-style: none;
  margin-bottom: 10px;
}

#menu_flyout ul li {
  margin-top: 10px;
}

#menu_flyout li a {
  margin: 0px;
  padding: 0px 10px 0px 10px;
  
  display: inline-block;
  text-decoration: none;

  color: #D9D9D9;
}

#menu_flyout li a:hover {
  color: #FFFFFF;
}
    
#header_bar {
  top: 0px;
  z-index: 200;
  
  height: 50px;
  width: 100%;    
  
  font-size: large;

  background-color: #262626;
  color: #D9D9D9;  
}

#header_wrapper {
  height: 50px;
  display: block;
  align-items: center;
}

#header_placeholder {
  position: relative;
  top: 0px;
  min-height: 50px;
  height: 50px;
  width: 100%;
}

#menuIcon {
  float: left;
  margin-right: 10px;
  cursor: pointer;
}

#title {
  float: left;
  margin-right: 30px;
  height: 50px;
  padding: 0px 10px 0px 10px;
}

#title_left {
  float: left;
  height: 50px;
  
  line-height: 50px;
  font-weight: bold;

  color: #FFFFFF;
}
    
#title_right {
  height: 50px;
  float: right;
  
  line-height: 50px;
  font-weight: bold;

  color: #FFCC00;
}

#menu {
  height: 50px;
}
    
#menu_left {
  float: left;
  height: 50px;

  line-height: 50px;
}
    
#header ul {
  margin: 0px;
  padding: 0px;
  overflow: hidden;
  
  list-style-type: none;
}
    
#header li {
  display: inline-block;
}

#header li a {
  margin: 0px;
  padding: 0px 10px 0px 10px;
  
  display: inline-block;
  text-decoration: none;

  color: #D9D9D9;
}

#header li a:hover {
  background-color: #111111;
  color: #FFFFFF;
}

#header ul ul {
  position: absolute;
  display: none;
  background-color: #1a1a1a;
}

#header li:hover ul {
  display: block;
}

#header ul ul li {
  display: block;
}

#header ul ul li a {
  width: 100%;
}

#socialIcons {
  float: right;
  height: 50px;
}

#socialIcon {
  float: left;
  width: 35px;
  margin: 7.5px 0px 7.5px 10px;
  opacity: 0.8;
  border-radius: 50%;
}

#socialIcon:hover {
  opacity: 1.0;
}

#body_wrapper {
  display: flex;
  flex: 1;
  flex-direction: column;
  overflow-y: auto;
}

#header {
  z-index: 100;
  box-shadow: 0px 0px 20px #1A1A1A;
}

#subheader {    
  text-align: center;
  
  background-color: #333333;
  color: #D9D9D9;
}
    
#subheader h1 {
  color: #FFCC00;
}

#subheader_title {
  margin-bottom: 20px;
  
  font-size: larger;
}
    
#subheader_button {
  min-width: 200px;
  height: 50px;
  margin: 20px 15px 0px 15px;
  padding: 10px;
  border-radius: 5px;
  box-shadow: 0px 0px 5px #262626;
  border: none;   
  
  display: inline-block;
  vertical-align: middle;
  font-size: large;
  text-align: center;

  background-color: #585858;
  color: #D9D9D9;

  cursor: pointer;
		
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

#subheader_button:hover {
  background-color: #686868;
}

#container {
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;

  position: relative;
  overflow: auto;
  clear: both;

  font-size: large;

  max-width: 1600px;
  align-self: center;
}

#container a {
  font-weight: bold;
  
  color: #333333;
}

#container h1 {
  color: #333333;
}

#footer {
  margin-top: 30px;
  padding-bottom: 40px;
  
  text-align: center;

  font-size: large;
}

#footer a:link {
  color: #333333;
}

#footer a:visited {
  color: #333333;
}

#schools {
  justify-content: space-around;
}

.projects_container {
  margin: 0 auto;
}

.project_image_small {
  margin: 20px 0;
}

.experiences_container {
  display: table;
  margin: 0 auto;
}

.experience_header {
  display: flex;
  flex-direction: row;
}

#experienceListing {
  display: flex;
  flex-direction: row;
}

#experienceListing_right {
  float: left;
  overflow: hidden;
}
