/* A style sheet defining global styling, for components being reused across all website pages. */
@import url("_variables.css");
@import url("_profile_pic.css");
@import url("_nav.css");
@import url("_icons.css");

/* Global Header Layout */
.global-header {
  display: flex;
  align-items: center;
  padding-top: 0px;
  padding-left: 20px;
  padding-right: 0px;
  justify-content: flex-start;
}

/* Profile and Text Container Wrapper */
.header-left {
  display: flex;
  align-items: center;
  padding-right: 20px;
}

/* Profile Picture Container Styling */
.global-header .profile-pic-container {
  margin-right: 20px;
}

.global-header .text-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.2;
  text-align: center;
}

/* Title and Subtitle Styling */
.global-header h1 {
  font-size: 42px;
  margin: 0px 0px;
  margin-bottom: 0px;
}

.global-header .text-container p {
  margin: 2px 0;
  font-size: 16px;
}

/* Navbar Styling */
nav {
  margin-top: 0px;
}

body {
  display: flex;
  flex-direction: column;
  background-color: var(--primary-color);
  margin: 0;
  padding: 0;
  font-family: var(--primary-font);
  min-height: 100vh;
}

main {
  flex-grow: 1;
}

#main-content {
  margin-left: 10vw;
  margin-right: 10vw;
}

.global-footer {
  background-color: var(--accent-color);
  color: var(--accent-font-color);
  text-align: center;
  padding: 0px 0 10px 0;
  width: 100%;
  font-size: 14px;
  margin-top: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

/* Banner Image Fills Remaining Header Space */
.header-banner {
  flex-grow: 1;
  height: 150px;
  background-image: url("../assets/imgs/banner.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin: 0;
  padding: 0;
  border: none;
}
