@font-face {
  font-family: "VolteRounded-Medium";
  src: url(fonts/VolteRounded-Medium.woff) format("woff")
}

@font-face {
  font-family: "VolteRounded-Regular";
  src: url(fonts/VolteRounded-Regular.woff) format("woff")
}

@font-face {
  font-family: "Source Sans Pro";
  src: url(fonts/SourceSansPro-Regular.ttf) format('truetype');
  font-weight: normal;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url(fonts/SourceSansPro-Bold.ttf) format('truetype');
  font-weight: bold;
}

html, body {
  font-family: 'Source Sans Pro', sans-serif !important;
  font-size: 20 !important;
  margin: 0px !important;
  padding: 0px !important;
  width: 100% !important;
  height: 100% !important;
}

.fa-solid {
  color: #005151;
}

#about, #new-win, #jobaid, #vid, #sim {
  display: none;
}

a:link {
  text-decoration: none;
  color: #2A71B0;
}

a:visited {
  text-decoration: none;
  color: #005151;
}

a:hover {
  text-decoration: none;
  color: #4F93C2;
}

a:focus {
  text-decoration: none;
  color: #4F93C2;
}

a:active {
  text-decoration: none;
  color: #4F93C2;
}

h1 {
  font-family: 'VolteRounded-Medium', sans-serif !important;
}

h2 {
  font-family: 'Source Sans Pro', sans-serif !important;
  font-weight: normal;
}

.clearfix {
  clear: both;
}

.nav-wrapper {
  padding-top: 40px;
  max-width: 1200px;
  padding-bottom: 40px;
  margin: 0 auto;
}

.nav-buttons {
  margin: 0 auto;
  padding-left: 30px;
  display: flex;
}

.skiplink {
  background-color: #30cebb;
  font-family: 'VolteRounded-Medium', sans-serif;
  border-radius: 30px 30px 30px 30px;
  border: none;
  padding: 15px;
  width: 230px;
  margin: 5px;
  font-size: 1.1em;
}

.skiplink a {
  color: #005151 !important;
}

#top-button {
  display: none;
  /* Hidden by default */
  position: fixed;
  /* Fixed/sticky position */
  bottom: 20px;
  /* Place the button at the bottom of the page */
  left: 0px;
  /* Place the button 30px from the right */
  z-index: 101;
  /* Make sure it does not overlap */
  border: none;
  /* Remove borders */
  outline: none;
  /* Remove outline */
  background-color: #005151;
  /* Set a background color */
  color: white;
  /* Text color */
  cursor: pointer;
  /* Add a mouse pointer on hover */
  padding: 15px;
  /* Some padding */
  border-radius: 0px 10px 10px 0px;
  /* Rounded corners */
  font-size: 18px;
  /* Increase font size */
  box-shadow: -1px 1px 20px 2px rgba(0, 0, 0, .2);
  opacity: .9;
}

#top-button:hover {
  background-color: #337474;
}

#top-button:active {
  background-color: #337474;
}

#top-button:focus {
  background-color: #337474;
}

#top-button:hover #upicon {
  color: white;
}

#top-button:active #upicon {
  color: white;
}

#top-button:focus #upicon {
  color: white;
}

@media (prefers-reduced-motion: no-preference) {
  scroll-behavior: smooth;
}

#upicon {
  font-size: 2em;
  color: #30cebb;
}

#logo img {
  max-width: 200px;
}

#logo {
  padding-bottom: 60px;
  padding-top: 20px;
}

.avatar img {
  object-fit: cover;
  border-radius: 50% !important;
  height: 100px;
  width: 100px;
  float: left;
  border: solid 5px #005151;
  margin-top: -20px;
  margin-right: 10px;
}

.titles {
  padding-left: 120px;
  margin-top: -90px
}

.header {
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 30px;
  display: flex;
  flex-direction: column-reverse;
}

#subtitle {
  margin-top: -15px !important;
}

#title {
  margin-bottom: revert;
}

.instructions {
  padding-top: 50px;
  margin-left: -110px;
  max-width: 109%;
}

.alert-wrapper {
  padding-left: 40px;
  padding-right: 27px;
  max-width: 1200px;
  margin: 0 auto;
}

.tip {
  display: block;
  position: relative;
  background-color: #30cebb60;
  color: black;
  font-family: 'Source Sans Pro', sans-serif;
  border-left: solid 6px #005151;
  border-radius: 5px;
  padding: 10px;
  padding-left: 10px;
  margin-top: 30px;
}

.coming-soon {
  display: block;
  position: relative;
  background-color: rgb(189, 44, 47, .2);
  color: black;
  font-family: 'Source Sans Pro', sans-serif;
  border-left: solid 6px rgb(189, 44, 47);
  border-radius: 5px;
  padding: 10px;
  padding-left: 10px;
  margin-top: 30px;
}

.flag {
  display: block;
  object-fit: cover;
  border-radius: 50%;
  height: 60px;
  width: 60px;
  float: left;
  border: solid 5px #005151;
  margin-top: 10px;
  margin-right: 10px;
}

.tip a {
  color: #59178A;
}

.tip a:visited {
  color: #005151;
}

.tip a:hover, a:focus {
  color: #9f1d8e;
}

.tip h3, .coming-soon h3 {
  font-size: 1em !important;
  font-weight: bold;
  display: inline;
}

.tip p {
  display: inline;
}

#workflow-header {
  position: relative;
  margin-left: -2px;
  font-size: 30px;
  padding-top: 25px;
}

* {
  box-sizing: border-box;
}

body {
  background-color: #f5f5f5 !important;
}

.timeline {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}

.btn-primary {
  color: #ffffff !important;
  background-color: #2A71B0 !important;
  border-color: #fff !important;
  border-radius: 50px !important;
  position: absolute;
  right: 50px !important;
  bottom: 20px !important;
}

.btn-secondary {
  color: #2A71B0 !important;
  background-color: #ffffff !important;
  border-color: #2A71B0 !important;
  border-radius: 50px !important;
  margin-bottom: -10px !important;
  position: absolute;
  right: 20px !important;
}

.btn-sm {
  position: absolute;
  width: 70px;
  font-family: 'VolteRounded-Regular', sans-serif !important;
}

.btn-close {
  color: #ffffff !important;
  opacity: .75 !important;
}

.btn-close:hover {
  color: #78D64B !important;
  text-decoration: none;
  opacity: 1
}

.btn-close:focus {
  outline: 0;
  color: #78D64B !important;
  box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
  opacity: 1
}

.container {
  overflow: hidden;
}

.mod-image {
  float: left;
  margin-top: 10px;
  margin-left: 30px;
}

.jobicon {
  height: 73px;
}

.vidicon {
  height: 66px;
}

.simicon {
  height: 65px;
  margin-left: 20px;
}

#about {
  display: none;
}

body.modal-open {
  overflow: auto !important;
  padding-right: 0px !important;
}

.modal-title {
  font-size: 30px;
  padding-left: 30px;
}

.modal-body {
  width: 100%;
  height: auto;
}

.modal-body h4 {
  margin-left: 30px;
  padding-top: 20px;
  font-size: 20px;
  font-family: 'VolteRounded-Medium', sans-serif !important;
}

.mod-list {
  margin-left: 100px;
  margin-top: 15px;
}

.modal-footer {
  min-height: 60px;
}

.close {
  color: white !important;
  opacity: .8 !important;
  position: absolute !important;
  top: 15;
  right: 20;
}

.close:focus, .close:hover {
  color: #78D64B !important;
  opacity: .8 !important;
}

.modal-content {
  border-radius: 15px !important;
  border: none !important;
}

.modal-header {
  border-radius: 12px 12px 0 0 !important;
  background-color: #005151;
  color: #78D64B;
  font-family: 'VolteRounded-Medium', sans-serif !important;
  font-size: 24px !important;
  border-bottom: none !important;
}

.topper {
  height: 45px;
  display: block;
  position: relative;
  margin: 0 auto;
  padding-left: 1px;
  margin-top: 15px;
  margin-bottom: -37px;
}

.mobile-topper {
  display: none;
}

.timeline::after {
  content: '';
  position: absolute;
  width: 0px;
  border-right: 5px solid #30cebb;
  top: 0;
  left: 50%;
  margin-left: -2px;
  z-index: 0;
}

/* Spacer between topper and timeline */
.timeline::before {
  content: '';
  height: 45px;
  position: absolute;
  width: 0;
  border-width: 0 5px 0 0;
  border-style: solid;
  border-color: #30cebb;
  top: 0;
  bottom: 0;
  left: 50%;
  margin-left: -2px;
  margin-top: -39px;
  z-index: 0;
  display: inline-block;
}

/*Duplicate Timeline Pseduos for Multi Timeline page only */
#timelineA::after {
  content: '';
  position: absolute;
  width: 0px;
  border-right: 5px solid #30cebb;
  top: 0;
  left: 50%;
  margin-left: -2px;
  z-index: 0;
}

#timelineB::after {
  content: '';
  position: absolute;
  width: 0px;
  border-right: 5px solid #30cebb;
  top: 0;
  left: 50%;
  margin-left: -2px;
  z-index: 0;
}

#timelineC::after {
  content: '';
  position: absolute;
  width: 0px;
  border-right: 5px solid #30cebb;
  top: 0;
  left: 50%;
  margin-left: -2px;
  z-index: 0;
}

.workflow-stepB {
  padding: 10px 40px;
  position: relative;
  background-color: inherit;
  width: 50%;
  height: 100%;
}

.workflow-stepC {
  padding: 10px 40px;
  position: relative;
  background-color: inherit;
  width: 50%;
  height: 100%;
}

.workflow-stepB::after {
  content: '';
  position: absolute;
  width: 23px;
  height: 23px;
  right: -12px;
  background-color: #005151;
  border: 6px solid #30cebb;
  top: 46.5%;
  border-radius: 50%;
  z-index: 100;
}

.workflow-stepC::after {
  content: '';
  position: absolute;
  width: 23px;
  height: 23px;
  right: -12px;
  background-color: #005151;
  border: 6px solid #30cebb;
  top: 46.5%;
  border-radius: 50%;
  z-index: 100;
}

.timeline, .timelineA, .timelineB, .timelineC {
  padding-top: 20px;
}

/* Container around content */
.workflow-step {
  padding: 10px 40px;
  position: relative;
  background-color: inherit;
  width: 50%;
  height: 100%;
}

/* The circles on the timeline */
.workflow-step::after {
  content: '';
  position: absolute;
  width: 23px;
  height: 23px;
  right: -12px;
  background-color: #005151;
  border: 6px solid #30cebb;
  top: 46.5%;
  border-radius: 50%;
  z-index: 100;
}

.left {
  left: 0;
}

.right {
  left: 50%;
}

.right::after {
  left: -11px;
}

.step-text {
  padding: 20px 30px;
  background-color: white;
  position: relative;
  border-radius: 8px;
  /*border: 3px double #005151;*/
  box-shadow: -1px 1px 20px 2px rgba(0, 0, 0, .2);
}

.step-text h2 {
  font-size: 20px;
  font-weight: bold;
}

.learn-link {
  text-align: right;
}

.bottom-spacer {
  height: 60px;
}

/* This commented out section fades in the modals, but it breaks keyboard focus for screen readers, feel free to improve in future.
.fade {
  transition: opacity .15s linear;
}

@media (prefers-reduced-motion:reduce) {
  .fade {
    transition: none;
  }
}

.fade:not(.show) {
  opacity: 0;
}

.modal.fade.modal-dialog {
  transition: transform .1s ease-out;
  transform: translate(0, -50px)
}

@media (prefers-reduced-motion:reduce) {
  .modal.fade.modal-dialog {
    transition: none;
  }
}

.modal-backdrop.fade {
  opacity: 0;
}
*/
/* Media queries - Responsive timeline on screens less than 600px wide */
/* @media screen and (min-width: 701px) and (max-width:900px) {

   .cover {
    position: absolute;
    content: '';
    display: block;
    background-color: Blue;
    width: 10px;
    height: 80px;
    bottom: 60px;
    z-index: 1;
  }
}
  @media screen and (min-width: 300px) and (max-width:699px) {

    /*  .cover {
    position: absolute;
    content: '';
    display: block;
    background-color: Blue;
    width: 10px;
    height: 80px;
      margin-top: -100px;
    z-index: 1;
  }
}
*/
@media screen and (max-width: 700px) {
  .timeline::after {
    left: 31px !important;
    z-index: 0;
  }

  #upicon {
    font-size: 1.5em;
  }

  .timeline::before {
    left: 31px;
    top: 10px;
  }

  .timeline {
    margin-top: -30px;
    margin-left: 1px;
  }

  h1 {
    font-size: 26px !important;
  }

  h2 {
    font-size: 20px !important;
  }

  .header {
    padding-left: 10px;
    padding-bottom: 25px;
  }

  .titles {
    padding-top: 25px;
  }

  .tip {
    margin-top: 10px;
    margin-bottom: 37px;
    margin-left: -10px;
  }

  .coming-soon {
    margin-top: 10px;
    margin-bottom: 37px;
    margin-left: -10px;
  }

  .modal-title {
    font-size: 25px !important;
    font-family: 'VolteroundedMedium'sans-serif !important;
    padding-left: 10px;
  }

  .modal-body h4 {
    padding-top: 10px !important;
  }

  #workflow-header {
    position: absolute;
    padding-left: 70px;
    padding-right: 1px;
    margin-top: -20px;
    font-size: 25px !important;
  }

  #workflow-headerB {
    position: absolute;
    padding-left: 70px;
    margin-top: 0px;
    font-size: 25px !important;
  }

  #workflow-headerC {
    position: absolute;
    padding-left: 70px;
    margin-top: 0px;
    font-size: 25px !important;
  }

  .instructions {
    position: relative;
    padding-left: 10px;
    max-width: 130%;
  }

  .mobile-topper {
    display: block;
    width: 33px;
    position: relative;
    left: 16px;
    top: 5px;
  }

  .modal-footer {
    margin-bottom: 10px !important;
    margin-top: 0px;
  }

  .topper {
    display: none;
  }

  .workflow-step {
    width: 100%;
    padding-left: 70px;
    padding-right: 25px;
  }

  /*duplicates for multi timeline only*/
  .workflow-stepB {
    width: 100%;
    padding-left: 70px;
    padding-right: 25px;
  }

  .workflow-stepC {
    width: 100%;
    padding-left: 70px;
    padding-right: 25px;
  }

  /* circle fix */
  .left::after, .right::after {
    left: 20px;
  }

  .right {
    left: 0%;
  }

  /* On screens that are 360px wide or less, remove the right margin on the region div */
  @media screen and (max-width: 360px) {
    #region {
      margin-right: 0 !important;
    }
  }

  /* On screens that are 280px wide or less, center the region & roles icons to on-screen center */
  @media screen and (max-width: 280px) {
    .flags img, .roles img {
      display: none;
    }
  }