body, html {
  font-size: 20px;
}

.navbar {
  background: #fff !important;
}
.navbar a {
  color: #000;
}
.navbar .call-us {
  color: #e74c3c;
  padding: 0 0 0 1em;
}
.navbar .call-us:hover {
  animation: tada 1s;
}
.navbar .nav-call-us a {
  cursor: text;
}

.navbar-nav > li > .dropdown-menu a {
  color: #24252b;
}

.navbar-brand img {
  height: 1.2em;
  margin-left: 1em;
}

.list-ave-style a {
  transition: all 300ms ease-in-out;
  text-decoration: none;
  color: inherit;
  text-transform: capitalize;
}
.list-ave-style a i {
  transition: all 200ms ease-in-out;
  color: #e74c3c;
  margin-left: 2em;
  margin-right: 1em;
}
.list-ave-style a:hover {
  color: #ccc;
}
.list-ave-style a:hover i {
  color: #fff;
}
@media (max-width: 992px) {
  .list-ave-style a i {
    margin-left: 0.2em;
  }
}

.btn {
  background: #e74c3c;
  color: #fff !important;
  border-radius: 10px;
  position: relative;
  font-size: 1em;
  padding: 0.5em 1.5em;
  transition: all 300ms ease-in-out;
}
.btn:after {
  content: "]";
  position: absolute;
  font-size: 1.5em;
  line-height: 1.5em;
  right: 0.5em;
  bottom: 0;
  top: 0;
  opacity: 0;
  transition: all 300ms ease-in-out;
}
.btn:before {
  content: "[";
  position: absolute;
  font-size: 1.5em;
  line-height: 1.5em;
  left: 0.5em;
  bottom: 0;
  top: 0;
  opacity: 0;
  transition: all 300ms ease-in-out;
}
.btn:hover {
  color: #fff;
  background: #e43725;
}
.btn:hover:after {
  opacity: 1;
  right: 0.2em;
}
.btn:hover:before {
  opacity: 1;
  left: 0.2em;
}

header.main-header {
  background: #24252b;
  min-height: 100vh;
  background: url("../img/bg_student-min.jpg");
  background-size: cover;
}
header.main-header .blackout {
  background: rgba(17, 17, 17, 0.6);
  width: 100%;
  height: 100%;
}
header.main-header .header-content {
  z-index: 5;
  min-height: 100vh;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding-top: 3em;
}
header.main-header .header-content .left, header.main-header .header-content .right {
  display: flex;
  margin: 0;
  padding: 0;
  min-height: 100vh;
  width: 50%;
}
header.main-header .header-content .left {
  flex-direction: row;
  align-items: center;
  justify-content: center;
  background: rgba(231, 76, 60, 0.6);
  padding: 5em;
}
header.main-header .header-content .right {
  background: rgba(255, 255, 255, 0.2);
}
header.main-header .header-content .right .boxes {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
header.main-header .header-content .right .boxes .box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: top;
  height: 18em;
  width: 18em;
  padding: 2em;
  background: rgba(36, 37, 43, 0.7);
  text-align: center;
  color: #fff;
}
header.main-header .header-content .right .boxes .box.oil-gas {
  background: url("../img/refinery-min.jpg");
  background-size: cover;
}
header.main-header .header-content .right .boxes .box.comp-sci {
  background: url("../img/computer-sci-min.jpg");
  background-size: cover;
}
header.main-header .header-content .right .boxes .box .icon-set {
  display: flex;
  align-items: center;
  margin-bottom: 1em;
}
header.main-header .header-content .right .boxes .box i {
  font-size: 2em;
  margin: 0.3em;
}
header.main-header .header-content .logos {
  display: flex;
  display: none;
  flex-direction: row;
  background: rgba(255, 255, 255, 0.5);
  padding: 1em;
  border-radius: 10px;
}
header.main-header .header-content .logos .box-logo {
  margin: 0 1em;
}
header.main-header .header-content .logos .box-logo img {
  height: 3em;
}
@media (max-width: 1300px) {
  header.main-header .header-content .left, header.main-header .header-content .right {
    width: 100%;
  }
  header.main-header .header-content .boxes {
    width: 90%;
  }
  header.main-header .header-content .boxes .box .icon-set h2 {
    font-size: 1.6em;
  }
  header.main-header .header-content .logos .box-logo img {
    height: 2em;
  }
}
@media (max-width: 992px) {
  header.main-header .header-content {
    flex-direction: column;
  }
  header.main-header .header-content .boxes {
    flex-direction: column;
    margin-bottom: 0;
  }
  header.main-header .header-content .boxes .box {
    width: 90%;
    height: auto;
    padding: 0.5em;
  }
  header.main-header .header-content .boxes .box i {
    font-size: 1.5em;
  }
  header.main-header .header-content .boxes .box h2 {
    font-size: 1.1em;
  }
  header.main-header .header-content .boxes .box .icon-set {
    margin-bottom: 0;
  }
  header.main-header .header-content .boxes .box:nth-child(1) {
    margin-top: 4em;
  }
  header.main-header .header-content .boxes .box:nth-child(3) {
    margin-bottom: 2em;
  }
  header.main-header .header-content .logos {
    width: 80%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin-bottom: 1em;
  }
  header.main-header .header-content .logos .box-logo {
    margin: 0.5em;
  }
}

.content-block {
  position: relative;
  padding-left: 2em;
}
.content-block h4 {
  font-size: 1.5em;
  margin-left: -1.5em;
  transition: all 300ms ease-in;
}
.content-block h4.hover-text {
  opacity: 0;
  margin-top: -1.5em;
}
.content-block h4.hover-text-bottom {
  opacity: 0;
}
.content-block:hover h4.normal-text {
  opacity: 0;
}
.content-block:hover h4.hover-text, .content-block:hover h4.hover-text-bottom {
  opacity: 1;
}

section.banner {
  background: #e74c3c;
  color: #fff;
  text-transform: uppercase;
}

section.banner.client-logos .logos {
  display: flex;
  justify-content: center;
}
section.banner.client-logos .logos .logo {
  overflow: hidden;
  margin: 0 1em;
  height: 100%;
}
section.banner.client-logos .logos .logo img {
  height: 5em;
}
@media (max-width: 992px) {
  section.banner.client-logos .logos .logo img {
    height: 2em;
  }
}

section.courses {
  background: url(../img/bg-laptop-op-min.jpg);
  background-size: cover;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  color: white;
}
section.courses h4 {
  margin-left: 1em;
}
@media (max-width: 992px) {
  section.courses h4 {
    margin-left: 0em;
  }
}

.blackout {
  background: rgba(36, 37, 43, 0.8);
  width: 100%;
  height: 100%;
}

section.logos {
  width: 100%;
  height: 50vh;
  background: url(../img/manchester-min.jpg);
  background-size: cover;
  background-attachment: fixed;
  background-position: top center;
  background-repeat: no-repeat;
}
section.logos .content {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 100%;
}
section.logos .content p {
  position: relative;
  color: #fff;
  text-align: left;
  font-size: 2em;
  width: 50%;
}
section.logos .content p:before {
  position: absolute;
  content: " ";
  left: -0.6em;
  top: 0;
  bottom: 0;
  width: 0.3em;
  background: #e74c3c;
}
@media (max-width: 992px) {
  section.logos {
    height: auto;
  }
  section.logos .content {
    padding: 1em;
  }
  section.logos .content p {
    width: 90%;
    font-size: 1em;
  }
}

section.course-cards {
  min-height: 90vh;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
section.course-cards .course-card {
  margin: 5em 2em;
  width: 25em;
  border: 2px solid #e74c3c;
  border-radius: 10px;
  padding: 2em;
  position: relative;
}
section.course-cards .course-card .card-head {
  height: 7em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-transform: uppercase;
}
section.course-cards .course-card .card-head .head-img img {
  width: 5em;
  background: #fff;
  padding: 0.5em;
  border-radius: 10px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  border: 2px solid #e74c3c;
}
section.course-cards .course-card .card-head h3 {
  text-align: center;
}
section.course-cards .course-card .card-content {
  flex-direction: column;
  text-align: center;
  flex-grow: 1;
}
section.course-cards .course-card .card-content p {
  text-align: justify;
}
@media (max-width: 992px) {
  section.course-cards {
    margin-top: 3em;
  }
  section.course-cards .course-card {
    width: 90%;
    margin: 2em 0;
  }
}

p.course-info {
  padding: 1em 0;
  border-bottom: 1px solid #ccc;
  text-align: justify;
}

p.course-deets span {
  color: #e74c3c;
  font-weight: bold;
  text-transform: uppercase;
}
p.course-deets i {
  color: #e74c3c;
  min-width: 1em;
  margin-right: 0.2em;
  text-align: center;
}

section.contact {
  height: 100vh;
  width: 100%;
  background: #e74c3c;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 37%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 100% 87%, 0 100%);
}
section.contact .content {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
}
section.contact .content .alert {
  position: absolute;
  top: 100px;
}
section.contact .content .contact-deets {
  width: 30%;
  color: #fff;
  min-height: 40%;
  border-right: 2px solid #ccc;
  margin-right: 2em;
  padding-right: 2em;
}
section.contact .content .contact-deets i {
  color: #fff;
  min-width: 1em;
  margin-right: 0.2em;
  text-align: right;
}
section.contact .content .contact-deets span.finger {
  position: relative;
}
section.contact .content .contact-deets span.finger:before {
  font-family: FontAwesome;
  content: "\f0a4";
  position: absolute;
  left: 5px;
  top: 0;
  height: 2em;
  width: 2em;
  animation: shakey 5s infinite;
}
section.contact .content .card {
  padding: 2em;
  width: 30%;
  min-height: 40%;
}
section.contact .content .card form {
  display: flex;
  flex-direction: column;
}
section.contact .content .card form div.form-input, section.contact .content .card form textarea {
  margin: 0.5em 0;
  position: relative;
  outline: none;
}
section.contact .content .card form div.form-input label, section.contact .content .card form textarea label {
  transition: all 300ms ease-in-out;
  position: absolute;
  top: 5px;
  left: 3px;
  font-size: 1em;
  pointer-events: none;
  color: #707070;
}
section.contact .content .card form div.form-input input, section.contact .content .card form div.form-input textarea, section.contact .content .card form textarea input, section.contact .content .card form textarea textarea {
  width: 100%;
  height: 2em;
  outline: none;
}
section.contact .content .card form div.form-input input:active, section.contact .content .card form div.form-input input:focus, section.contact .content .card form div.form-input textarea:active, section.contact .content .card form div.form-input textarea:focus, section.contact .content .card form textarea input:active, section.contact .content .card form textarea input:focus, section.contact .content .card form textarea textarea:active, section.contact .content .card form textarea textarea:focus {
  border-bottom: 1px solid #e74c3c;
}
section.contact .content .card form div.form-input input:active + label, section.contact .content .card form div.form-input input:focus + label, section.contact .content .card form div.form-input input:not(:placeholder-shown) + label, section.contact .content .card form div.form-input textarea:active + label, section.contact .content .card form div.form-input textarea:focus + label, section.contact .content .card form div.form-input textarea:not(:placeholder-shown) + label, section.contact .content .card form textarea input:active + label, section.contact .content .card form textarea input:focus + label, section.contact .content .card form textarea input:not(:placeholder-shown) + label, section.contact .content .card form textarea textarea:active + label, section.contact .content .card form textarea textarea:focus + label, section.contact .content .card form textarea textarea:not(:placeholder-shown) + label {
  top: -15px;
  font-size: 0.7em;
  color: #3d3d3d;
}
section.contact .content .card form div.form-input textarea, section.contact .content .card form textarea textarea {
  height: 5em;
}
section.contact .content .card form input[type=text], section.contact .content .card form input[type=email] {
  border: none;
  border-bottom: 1px solid #ddd;
}
@media (max-width: 992px) {
  section.contact {
    height: auto;
    background: none;
  }
  section.contact .content {
    padding-top: 5em;
    padding-bottom: 5em;
    flex-direction: column;
  }
  section.contact .content .contact-deets, section.contact .content .card {
    width: 90%;
    min-height: 0;
  }
  section.contact .content .card {
    padding: 2em 1em;
  }
  section.contact .content .contact-deets {
    color: #000;
    border-right: 0;
    margin-right: 0;
    padding-right: 0;
    border-bottom: 2px solid #ccc;
    margin-bottom: 2em;
    padding-bottom: 2em;
  }
  section.contact .content .contact-deets i {
    color: #e74c3c;
    min-width: 1em;
    margin-right: 0.2em;
    text-align: right;
  }
  section.contact .content .contact-deets span.finger:before {
    top: 5px;
    content: "\f0a7";
    animation: shakeDown 3s infinite;
  }
}

section.team {
  min-height: 90vh;
  width: 90%;
  margin: 0 auto;
}
section.team .content {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
}
section.team .content .profile-card {
  background: #ffffff;
  box-shadow: 0px 0px 33px 1px rgb(204, 204, 204);
  display: flex;
  flex-direction: column;
  width: 25em;
  margin: 1em 2em;
  padding: 3em 2em;
  border-radius: 15px;
}
@media (max-width: 992px) {
  section.team .content .profile-card {
    flex-grow: 1;
    width: 90%;
    height: auto;
    padding: 1.5em 1em;
    margin: 1em 0;
  }
}
section.team .content .profile-card .header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
section.team .content .profile-card .header img {
  width: 6em;
  height: 6em;
  border-radius: 50%;
  border: 3px solid #ccc;
  margin-bottom: 1em;
}
section.team .content .profile-card .header span.name {
  font-weight: bold;
  font-size: 1.2em;
}
@media (max-width: 992px) {
  section.team .content .profile-card .header span.name {
    font-size: 1em;
  }
}
section.team .content .profile-card .header span.title {
  font-size: 0.8em;
  font-weight: 600;
}
section.team .content .profile-card .header span.quals {
  font-size: 0.8em;
}
section.team .content .profile-card .header span.quote {
  font-size: 0.7em;
  text-align: center;
  font-style: italic;
}
section.team .content .profile-card .badges {
  margin-top: 2em;
}
section.team .content .profile-card .team-content {
  margin-top: 2em;
  flex-grow: 1;
}

section.apply {
  min-height: 100vh;
  width: 100%;
  background: #e74c3c;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 37%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 100% 87%, 0 100%);
}
@media (max-width: 992px) {
  section.apply {
    height: auto;
    background: none;
  }
}
section.apply .content {
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
}
@media (max-width: 992px) {
  section.apply .content {
    padding-top: 5em;
    font-size: 0.8em;
  }
}
section.apply .content span.required {
  color: red;
}
section.apply .content .alert {
  position: absolute;
  top: 100px;
  z-index: 10;
}
section.apply .content .card {
  padding: 2em;
  width: 70%;
  max-width: 50em;
}
@media (max-width: 992px) {
  section.apply .content .card {
    width: 90%;
    padding: 0.7em 0.5em;
  }
}
section.apply .content .card form {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
section.apply .content .card form div.form-input, section.apply .content .card form textarea {
  margin: 0.5em 0.5em;
  position: relative;
  outline: none;
  flex: 0 47%;
  box-sizing: border-box;
}
@media (max-width: 992px) {
  section.apply .content .card form div.form-input, section.apply .content .card form textarea {
    flex: 0 90%;
  }
}
section.apply .content .card form div.form-input.full-width, section.apply .content .card form textarea.full-width {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
}
section.apply .content .card form div.form-input.full-width .check, section.apply .content .card form textarea.full-width .check {
  padding-top: 0.5em;
}
section.apply .content .card form div.form-input.full-width .check label, section.apply .content .card form textarea.full-width .check label {
  position: unset;
  pointer-events: all;
  font-size: 1em;
  margin: 0;
}
section.apply .content .card form div.form-input.full-width .check label:hover, section.apply .content .card form textarea.full-width .check label:hover {
  cursor: pointer;
}
section.apply .content .card form div.form-input.full-width .check input[type=checkbox], section.apply .content .card form textarea.full-width .check input[type=checkbox] {
  width: auto;
  height: auto;
  transform: scale(1.5);
}
section.apply .content .card form div.form-input.full-width.radio-container, section.apply .content .card form textarea.full-width.radio-container {
  flex-direction: column;
}
section.apply .content .card form div.form-input.full-width.radio-container .radio-inline .radio, section.apply .content .card form textarea.full-width.radio-container .radio-inline .radio {
  float: left;
}
section.apply .content .card form div.form-input.full-width.radio-container .radio-inline .radio label, section.apply .content .card form textarea.full-width.radio-container .radio-inline .radio label {
  position: unset;
  pointer-events: all;
  font-size: 1em;
  margin: 0;
}
section.apply .content .card form div.form-input.full-width.radio-container .radio-inline .radio label:hover, section.apply .content .card form textarea.full-width.radio-container .radio-inline .radio label:hover {
  cursor: pointer;
}
section.apply .content .card form div.form-input.full-width.radio-container .radio-inline .radio input[type=radio], section.apply .content .card form textarea.full-width.radio-container .radio-inline .radio input[type=radio] {
  width: auto;
  height: auto;
  transform: scale(1.5);
}
section.apply .content .card form div.form-input label, section.apply .content .card form textarea label {
  transition: all 300ms ease-in-out;
  position: absolute;
  top: 5px;
  left: 3px;
  font-size: 1em;
  pointer-events: none;
  color: #707070;
}
section.apply .content .card form div.form-input button, section.apply .content .card form textarea button {
  width: 100%;
}
section.apply .content .card form div.form-input input, section.apply .content .card form div.form-input textarea, section.apply .content .card form textarea input, section.apply .content .card form textarea textarea {
  height: 2em;
  outline: none;
  width: 100%;
  margin-left: 0;
}
section.apply .content .card form div.form-input input:active, section.apply .content .card form div.form-input input:focus, section.apply .content .card form div.form-input textarea:active, section.apply .content .card form div.form-input textarea:focus, section.apply .content .card form textarea input:active, section.apply .content .card form textarea input:focus, section.apply .content .card form textarea textarea:active, section.apply .content .card form textarea textarea:focus {
  border-bottom: 1px solid #e74c3c;
}
section.apply .content .card form div.form-input input:active + label, section.apply .content .card form div.form-input input:focus + label, section.apply .content .card form div.form-input input:not(:placeholder-shown) + label, section.apply .content .card form div.form-input textarea:active + label, section.apply .content .card form div.form-input textarea:focus + label, section.apply .content .card form div.form-input textarea:not(:placeholder-shown) + label, section.apply .content .card form textarea input:active + label, section.apply .content .card form textarea input:focus + label, section.apply .content .card form textarea input:not(:placeholder-shown) + label, section.apply .content .card form textarea textarea:active + label, section.apply .content .card form textarea textarea:focus + label, section.apply .content .card form textarea textarea:not(:placeholder-shown) + label {
  top: -15px;
  font-size: 0.7em;
  color: #3d3d3d;
}
section.apply .content .card form div.form-input textarea, section.apply .content .card form textarea textarea {
  min-height: 5em;
  flex-basis: 100%;
  padding: 0.5em;
}
section.apply .content .card form input[type=text], section.apply .content .card form input[type=email] {
  border: none;
  border-bottom: 1px solid #ddd;
}

section.course-list ul.courses {
  list-style: none;
  margin: 0;
  padding: 0;
  padding-left: 0.5em;
  min-height: 80vh;
}
section.course-list ul.courses li {
  position: relative;
  padding: 1em 0;
}
section.course-list ul.courses li:before {
  position: absolute;
  content: "";
  height: 1px;
  width: 90%;
  background: #e74c3c;
  bottom: 0px;
  left: 50%;
  right: 0;
  transform: translateX(-50%);
}
section.course-list ul.courses li:last-child:before {
  background: #fff;
}
section.course-list ul.courses li a {
  text-decoration: none;
  color: #212529;
}
section.course-list ul.courses li a:hover {
  color: #e74c3c;
}

.tag-line {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 100%;
}
.tag-line p {
  position: relative;
  text-align: left;
  font-size: 1.1em;
  width: 50%;
  text-transform: uppercase;
}
.tag-line p:before {
  position: absolute;
  content: " ";
  left: -1em;
  top: 0;
  bottom: 0;
  width: 0.3em;
  background: #e74c3c;
}

.rocket-launch:hover {
  animation: rocket 4s;
}

.media-block {
  background: #e74c3c;
  width: 100%;
  display: flex;
}
.media-block .hero {
  width: 50%;
  padding-left: 0.6em;
}
.media-block .content {
  padding: 1em;
  padding-right: 0.5em;
  color: #fff;
}
.media-block .content ul li {
  list-style: none;
}
.media-block .content ul {
  padding: 0;
  margin: 0;
  margin-left: 0.5em;
}
@media (max-width: 992px) {
  .media-block {
    flex-direction: column;
  }
  .media-block .hero, .media-block .content {
    width: 100%;
  }
  .media-block .hero {
    padding-left: 0;
  }
}

.page-footer {
  background: #24252b;
  color: #fff;
}
.page-footer a {
  color: #fff;
}
.page-footer a i {
  color: #fff;
}
.page-footer .footer-contact {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.page-footer .footer-contact .deet {
  display: flex;
}
.page-footer .footer-contact .deet i {
  min-width: 1em;
  margin-right: 0.2em;
  text-align: right;
  line-height: 1.5em;
}
.page-footer .footer-contact .deet span {
  margin-left: 0.4em;
}
.page-footer .footer-copyright {
  font-size: 0.9em;
}

@keyframes shakey {
  60%, 80%, 100% {
    transform: translate3d(0px, 0, 0);
  }
  70%, 90% {
    transform: translate3d(-4px, 0, 0);
  }
}
@keyframes shakeDown {
  60%, 80%, 100% {
    transform: translate3d(0, 0, 0);
  }
  70%, 90% {
    transform: translate3d(0, -4px, 0);
  }
}
@keyframes rocket {
  30% {
    transform: perspective(500px) translate3d(100px, -100px, 200px);
  }
  40% {
    transform: perspective(500px) translate3d(100px, -100px, 150px) rotate(-180deg);
  }
  70% {
    transform: perspective(500px) translate3d(-150px, 50px, 90px) rotate(-180deg);
  }
  80% {
    transform: perspective(500px) translate3d(-150px, 50px, 0px) rotate(-360deg);
  }
  99% {
    transform: translate3d(0px, 0px, 0px);
  }
}