/* Hero */

.career-row {
  height: 130px;
  overflow: hidden;
}

.track {
  display: flex;
  height: 130px;
  width: 5200px;

  /* Ensure Safari continues to animate */
  will-change: transform;
  transform: translate3d(0,0,0);
  backface-visibility: hidden;
}

.track img {
  display: block;
  height: 130px;
  width: 2600px;
  flex-shrink: 0;
}

#careers-row-1 {
  animation: marquee-left 140s linear infinite;
}

#careers-row-2 {
  animation: marquee-right 90s linear infinite;
}

#careers-row-3 {
  animation: marquee-left 90s linear infinite;
}

#careers-row-4 {
  animation: marquee-right 140s linear infinite;
}

.track img {
  height: 100%;
  width: auto;
  flex: 0 0 auto;
}

@keyframes marquee-left {
  from { transform: translate3d(0,0,0);}
  to { transform: translate3d(-50%,0,0);}
}

@keyframes marquee-right {
  from { transform: translate3d(-50%,0,0);}
  to { transform: translate3d(0,0,0);}
}

.jumbotron {
  margin: 0;
  padding: 85px 0 30px !important;
  position: relative;
  overflow: hidden;
  min-height: 520px;
  background-color: #0f3247;
}

.careers-bg,
.careers-overlay {
  position: absolute;
  inset: 0;
}

.careers-bg {
  z-index: 0;
}

.careers-overlay {
  z-index: 1;
  background: rgba(15, 50, 71, 0.8);
}

#tagline h1 {
  font-size: 2rem;
  padding-bottom: 1rem;
  text-align: center;
  z-index: 2;
}

#calls-to-action .card {
  box-shadow: 0 4px 4px 0 rgba(25, 81, 114, .6);
  border: none;
  width: 100%;
  z-index: 2;
}

#calls-to-action .card-title {
  color: #195172;
  text-shadow: none;
  font-size: 14pt;
  font-family: Tahoma, sans-serif;
  padding-bottom: 10px;
  padding-left: 0;
  text-align: center;
}

#calls-to-action .btn:hover {
  cursor: pointer;
}

#calls-to-action .card-body {
  color: #195172;
  font-size: 12pt;
  padding: 20px 10px 10px;
  text-align: left;
}

#calls-to-action .card-footer {
  background: none;
  border: none;
  padding: 8px 4px 20px;
}

#calls-to-action li {
  font-size: 12pt;
  display: flex;
  gap: 0.35rem;
}

#calls-to-action li::before {
  content: "-";
  font-size: 10pt;
}

#calls-to-action ul {
  list-style: none;
  padding-left: 10px;
}

#calls-to-action > div:last-child {
  display: flex;
  align-items: flex-end;
  overflow: visible;
}

#free-career-test {
  margin: 0 auto 20px;
  width: 70%;
}

/* First 6 */

#first-six {
  position: relative;
  padding: 3rem 0 4rem;
}

#first-six h2 {
  font-size: 1.5rem;
}

#first-six h3 {
  color: #fff;
  font-size: 1.4rem;
}

#first-six button {
  text-align: center;
  white-space: nowrap;
}

#first-six .btn-group {
  background: #fff;
}

#first-six .btn-outline-primary:hover {
  color: #fff;
  background-color: #0d6efd;
}

#first-six .item {
  color: #fff;
  font-size: 1.4rem;
  margin: 25px 0;
}

#first-six svg {
  display: block;
  height: 40px;
  margin: 0 auto;
  width: 40px;
}

#first-six .stem {
  padding-top: 5px;
}

#first-six .btn-outline-primary {
  border-color: rgba(25, 81, 114, 1);
}

#items h2 {
  margin-bottom: 5rem;
}

#next-step-button-group {
  margin: 20px auto 0;
}

#see-matches-button {
  flex: 2 1 0;
  border: none;
}

/* Truly free */

#truly-free h2 {
  padding-bottom: 0;
}

#truly-free {
  max-width: 800px;
}

#truly-free-container {
  padding: 3rem 0;
}

#truly-free .positive-header, #truly-free .negative-header {
  font-size: 1.4rem;
  font-weight: bold;
  padding-top: 2rem;
}

.negative-list,
.positive-list {
  list-style: none;
  padding-left: 30px;
}

.negative-list li, #truly-free .negative-header {
  color: firebrick;
}

.positive-list li, #truly-free .positive-header {
  color: #2a6936;
}

.negative-list li,
.positive-list li {
  position: relative;
  padding-left: 1.5rem;
  margin-bottom: .75rem;
  font-weight: 600;
  font-size: 1.3rem;
}

.negative-list li::before {
  content: "✗";
  position: absolute;
  left: 0;
  color: firebrick;
}

.positive-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #2a6936;
}

/* Target audience */

#target-audience {
  padding: 2rem 0;
  text-align: center;
}

#target-audience ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#target-audience li {
    display: inline;
    font-size: 1.4rem;
}

#target-audience li:not(:last-child)::after {
    content: ", ";
}

/** Accuracy */

#accuracy img {
  aspect-ratio: 1;
  margin: 0 auto;
  height: auto;
  max-width: 300px;
  width: 200px;
}

#accuracy h3 {
  color: black;
  text-align: center;
}

#accuracy h4 {
  font-weight: bold;
  font-size: 1.3rem;
  padding: 2rem 0 0;
  text-align: center;
}

#accuracy #level-1 h4 {
  padding-bottom: .5rem;
}

#accuracy .card {
  box-shadow: 4px 4px 8px 0 rgba(0, 0, 0, 0.5);
}

#level-1 ul {
  width: 11rem;
  max-width: 100%;
  margin: 1.5rem auto;
  padding-left: 0;
  text-align: left;
}

.accuracy-card ul {
  width: 21.5rem;
  max-width: 100%;
  margin: 1.5rem auto;
  padding-left: 0;
  text-align: left;
}

#accuracy li.pro,
#accuracy li.con {
  font-size: 1.1rem;
  list-style: none;
  position: relative;
  padding-bottom: 1.2rem;
  padding-left: 1.25rem;
  font-weight: bold;
}

li.pro {
  color: #2a6936;
}

li.con {
  color: firebrick;
}

#accuracy small {
  display: block;
}

#accuracy li.pro::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
}

#accuracy li.con::before {
  content: "✗";
  position: absolute;
  left: 0;
  top: 0;
}

.accuracy-level {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 2rem 1.5rem;
  min-height: 520px;
  text-align: center;
}

#accuracy li {
  font-size: 1rem;
}

#level-1 {
  background-color: rgb(255, 216, 216);
}

#level-2 {
  background-color: rgb(255, 238, 208);
}

#level-3 {
  background-color: rgb(229, 255, 236);
}

#accuracy img {
  align-self: center;
  margin-top: 2rem;
}

#founder-callout {
  position: relative;
  height: 80px;
  margin-top: -.5rem;
  margin-bottom: 0;
}

#founder-note {
  position: absolute;
  right: 0;
  top: 5px;
  color: #b88a1c;
  font-family: "Caveat", cursive;
  font-size: 2rem;
  font-weight: 700;
  line-height: 0.9;
  text-align: center;
  transform: rotate(-4deg);
  width: 200px;
}

#founder-arrow {
  position: absolute;
  right: 170px;
  top: -4px;
  width: 80px;
  height: 40px;
  overflow: visible;
}

#founder-arrow path {
  fill: none;
  stroke: #b88a1c;
  stroke-width: 8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Rounded */

#rounded {
  padding-bottom: 4rem;
  padding-top: 4rem;
}

#rounded p {
  font-size: 1rem;
}

#features {
  margin-top: 0;
}

#rounded .feature {
  background: linear-gradient(
    to bottom,
    rgb(30, 72, 100) 10%,
    rgb(15, 50, 71) 100%
  );
  border-radius: 15px;
  box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, .3);
  min-width: 150px;
  padding: 2rem 1rem 1rem;
  position: relative;
}

#rounded .feature h3 {
  border-radius: 15px;
  color: yellow;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 0 8px;
  background: rgb(30, 72, 100);
  font-family: Tahoma, sans-serif;
  font-size: 3rem;
}

#rounded .feature strong {
  color: rgb(194, 223, 255);
  font-family: Tahoma, sans-serif;
  font-size: 1.2rem;
  display: block;
  padding: .5rem 0 1rem;
  line-height: 1.5rem;
  text-align: center;
}

#rounded .feature p {
  color: #fff;
}

#rounded li {
  color: #fff;
  line-height: 1.2rem;
  font-size: 1rem;
}

/* Main */

#next-step-button-group {
  border-radius: 6px;
  overflow: hidden;
  position: relative;
}

#continue-test-button {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
  flex: 3 1 0;
  border-color: transparent;
}

/* Compare */

#compare {
  padding-bottom: 1rem;
  padding-top: 2rem;
}

#compare p {
  font-size: 1.2rem;
  padding-top: 1rem;
}

/* Length */

#length {
  padding: 3rem 0 4rem;
}

#length .lead {
  font-size: 1.4rem;
  padding-bottom: 1rem;
  text-align: center;
}

#length .list-group {
  box-shadow: 0 4px 8px 0 rgba(15, 50, 71, 0.8);
}

#length p {
  font-size: 1rem;
}

#length h2 {
  color: #fff;
  padding-bottom: 1rem;
  text-shadow: 0 2px 8px rgba(15, 50, 71, 0.8);
}

#length h5 {
  font-weight: bold;
  color: #195172;
}

#length-explanation  {
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  text-shadow: 0 2px 4px rgba(15, 50, 71, 0.8);
}

#length .list-group-item {
  font-size: 1rem;
  padding: 1rem;
}

#length .list-group-item li {
  font-size: 1rem;
}

#length li strong {
  display: inline;
  font-size: 1rem;
}

/* Why Testerly exists */

#why-testerly-exists {
  padding: 4rem 1rem 0;
}

#why-testerly-exists img {
  margin-top: 2rem;
  max-width: 100%;
}

/* FAQ */

#faq p, #faq li {
  font-size: 1rem;
}

#faq .accordion-item {
  border: 1px solid #195172;
  border-radius: 10px;
  margin-bottom: 1rem;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .5);
}

#faq .accordion-button {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  color: #195172;
  font-weight: bold;
  background-color: #fff;
  font-size: 1.2rem;
}

#faq .accordion-button:focus {
  box-shadow: none;
}

#faq .accordion-button:focus-visible {
  box-shadow: 0 0 0 0.25rem rgba(13,110,253,.25);
}

#faq .accordion-button.collapsed {
  border-radius: 10px;
}

#faq .accordion-button:not(.collapsed) {
  box-shadow: none;
}

@media only screen and (min-width: 576px) {
  #calls-to-action .card {
    min-width: 220px;
  }

  #calls-to-action .card-body {
    padding-left: 20px;
    padding-right: 20px;
  }

  #calls-to-action .card-title {
    font-size: 16pt;
  }

  #continue-test-button br {
    display: none;
  }

  .feature {
    max-width: 250px;
  }

  #first-six {
    padding: 4rem 0 6rem;
  }

  #first-six h2 {
    font-size: 2rem;
  }

  #rounded {
    padding-left: 0;
    padding-right: 0;
  }

  #see-matches-button br {
    display: none;
  }

  #tagline h1 {
    font-size: 3rem;
  }

  #tagline h2 {
    font-size: 1.6rem;
  }

  #top {
    padding: 100px 0 40px;
  }

  #top .btn {
    font-size: 14pt;
  }
}

@media only screen and (min-width: 768px) {
  .accuracy-header {
    min-height: 220px;
  }

  #accuracy h4 {
    padding-bottom: 2rem;
  }

  #accuracy img {
    width: 85%;
  }

  #founder-callout {
    margin-top: -2.5rem;
  }

  #founder-note {
    top: 25px;
    font-size: 2rem;
  }

  #founder-arrow {
    position: absolute;
    right: 70px;
  }

  #features {
    padding-top: 3rem;
    padding-bottom: 1rem;
  }

  #free-career-test {
    height: auto;
    margin-top: -120px;
    margin-bottom: 0;
    width: 100%;
  }

  #next-step-button-group {
    max-width: 576px;
  }

  #target-audience ul {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
  }

  #target-audience li {
    display: flex;
    align-items: center;
  }

  #target-audience li:not(:last-child)::after {
    content: "|";
    margin: 0 0.75rem;
    color: #9f9f9f;
    font-weight: 300;
  }
}

@media only screen and (min-width: 992px) {
  .accuracy-header {
    min-height: 180px;
  }

  #accuracy img {
    width: 75%;
  }

  #founder-callout {
    margin-top: -2.5rem;
  }

  #founder-note {
    top: 5px;
    font-size: 2rem;
  }

  #founder-arrow {
    position: absolute;
    right: 170px;
  }

  #next-step-button-group {
    max-width: 536px;
  }

  #top {
    padding: 120px 0 60px;
  }
}

@media only screen and (min-width: 1200px) {
  #calls-to-action .card-body {
    padding-left: 30px;
    padding-right: 30px;
  }

  #next-step-button-group {
    max-width: 546px;
  }
}

@media only screen and (min-width: 1400px) {
  #next-step-button-group {
    max-width: 636px;
  }
}

@media print {
  .navbar {
    position: absolute !important;
    top: 0 !important;
    width: 100% !important;
  }
}