.page > section,
.about > section,
.challenge > section {
  padding-top: 22px;
  padding-bottom: 42px;
}

.page > section:nth-of-type(2n+1),
body:not(.page) > section:nth-of-type(2n) {
  background-color: #eee;
}
.page > section:nth-of-type(1) {
  background-color: white;
}

.page > section:nth-of-type(1) .back-to-top {
  display: none;
}

.button-links {
  margin-top: 16px;
}

.img-responsive {
  width: 100%;
}

section#cyber-partners > div > div > div > p {
  text-align: center;
}

.img-responsive-half {
  width: 50%;
}

@media (min-width: 576px) {
  .img-responsive, .img-responsive-half {
    width: 100%;
  }
}

.img-cyber-logos {
  padding: 1.2rem 1.2rem;
}

/* cards */
.card {
  font-size: 14px;
  overflow: hidden;
}

.card-body,
.card-footer {
  padding: 10px;
}

.card-title {
  font-size: 18px;
}

.filtered_list_page .filtered-list {
  background-color: #eee;
}

.filtered-list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;

  padding: 10px;
}

.filters {
  flex-shrink: 0;
  flex-grow: 1;

  margin: 10px;
  padding: 10px;

  background-color: white;
}

.filters h4 {
  font-size: 18px;
  border-bottom: 1px solid #ccc;
}

.filters ul {
  font-size: 14px;
  list-style: none;
  -webkit-padding-start: 5px;
}

.filters label {
  width: 100%;
}

.list {
  margin: 10px;
  padding: 10px;
  width: 100%;
}

.list > .collection > section {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.list > .collection > h5 {
  display: block;
  text-align: center;
  padding: 0.25rem;
  color: white;
  border-radius: 3px;
}

.list > .collection > section > .card {
  margin: 20px;
  width: 260px;
}

.list > .collection > section > .card > :first-child {
  align-self: flex-start;
  max-width: 100%;
  flex-shrink: 0;
}

section#type.filter-category {
  display:none;
}

@media (min-width: 768px) {
  .filtered-list {
    flex-wrap: nowrap;
  }
  .filters {
    width: 280px;
    flex-grow: 0;
  }
  .list > .collection > section > .card {
    width: 260px;
    flex-shrink: 0;
    flex-grow: 0;
    margin: 10px;
    box-sizing: content-box;
  }
  .list > .collection > section > div:empty {
    width: 280px;
  }
}

/* horizontal card */
.horizontal-card {
  display: flex;
  flex-flow: column;
}

@media (min-width: 992px) {
  .horizontal-card {
    display: flex;
    flex-flow: row nowrap;
  }  
}

@media (min-width: 992px) {

  .horizontal-card > .horizontal-card-image {
    flex: 13;
  }

  .horizontal-card > .horizontal-card-content {
    flex: 8;
  }
  
}

@media (min-width: 1200px) {

  .horizontal-card > .horizontal-card-image {
    flex: 1;
  }

  .horizontal-card > .horizontal-card-content {
    flex: 1;
  }
  
}

.card .card-content, .horizontal-card .horizontal-card-content {
  display: flex;
  flex-flow: column;
}

.horizontal-card > * {
  flex: 1;
}

.card .card-content .card-body {
  flex: 1;
}

@media (min-width: 768px) {
  .horizontal-card-img-left {
    max-width: 100%;
    height: auto;
  }
}

.horizontal-card-img-left {
  width: 100%;
  height: auto;
}

/* curriculum section */
.curriculum .jumbotron,
.curriculum_concept .jumbotron,
.curriculum_band .jumbotron {
  margin-bottom: 0px;
}

.profile {
  margin-bottom: 30px;
  font-size: 14px;
}

.search {
  margin-bottom: 1rem;
}

/* cyber project */
section#cyber-partners * {
  margin: auto;
  text-align: center;
}

section#cyber-intro {
  background-image: url('/projects/cyber-challenges/splash02.jpg');
  background-size: cover;
  color: #fff;
}

section#cyber-intro .row, section#cyber-launch .row {
  padding-top: 20px;
}
section#cyber-intro .row p:first-child {
  font-size: 20px;
}

section#cyber-challenges .card-body h6 {
  min-height: 50px;
}

section#cyber-challenges .card-body {
  height: 200px;
  overflow:hidden;
}

section#cyber-involvement .card-body {
  height: 100px;
  overflow:hidden;
}
  
/* Responsive video iframes */
.video-container {
  max-width: 560px;
  margin: auto;
}

.video-responsive {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
}
.video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.resource-info {
  padding: 0.5rem;
  border-radius: 3px;
}

.resource-info {
  font-size: 80%;
}

.hidden {
  display:none;
}