/* Hero */

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

#top img {
  max-width: none;
  max-height: none;
}

#tagline h1 {
  font-size: 2rem;
  padding-bottom: 0;
}

#tagline h2 {
  font-size: 1.2rem;
  padding-bottom: 1rem;
  text-align: center;
}

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

#calls-to-action .card-title {
  color: #195172;
  font-size: 14pt;
  font-family: Tahoma, sans-serif;
  padding-bottom: 10px;
}

#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 {
  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 {
  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;
}

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

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

#see-matches-button {
  border: none;
}

/* Truly free */

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

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

#truly-free h3 {
  font-size: 1.4rem;
  margin-bottom: 1rem;
}

#truly-free ol {
  margin-top: 2rem;
}

#truly-free p, #truly-free li {
  font-size: 1.2rem;
  margin-bottom: 1rem;
}

#truly-free .card-body {
  display: flex;
  padding: 0;
}

#truly-free .card-body .padded {
  padding: 1rem;
}

#truly-free .shaded {
  background: linear-gradient(to bottom right, transparent, #e6f3ff 70%);
}

#truly-free img {
  height: 150px;
  width: 150px;
}

/* Target audience */

#target-audience {
  padding: 1rem 0 4rem;
}

#target-audience img {
  max-width: 100px;
}

#target-audience h5 {
  background: #fee685;
  border-radius: 5px;
  box-shadow: 0 4px 8px 0 rgba(25, 81, 114, .6);
  font-size: 12pt;
  font-weight: bold;
  padding: 10px 0;
  max-width: 200px;
  margin: 0 auto;
}

/** Accuracy */

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

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

#accuracy h3 {
  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: 0 4px 4px 0 rgba(0, 0, 0, 0.1);
}

#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;
}

#accuracy li.pro {
  color: #2a6936;
}

#accuracy 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: rgba(245, 198, 198, 0.4);
  /* background: linear-gradient(to top, #f5c6c6, #fff);*/
}

#level-2 {
  background-color: rgba(250, 232, 192, 0.4);
  /* background: linear-gradient(to top, #fae8c0, #fff); */
}

#level-3 {
  background-color: rgba(205, 232, 214, 0.4);

  /* background: linear-gradient(to top, #cde8d6, #fff); */
}

#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: 4rem 1rem;
}

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

#features {
  margin-top: 0;
}

#rounded .feature {
  background: #fff;
  border: 2px solid #7cb8dd;
  border-radius: 15px;
  box-shadow: 0 4px 4px 0 rgba(25, 81, 114, .3);
  min-width: 150px;
  padding: 2rem 1rem 1rem;
  position: relative;
}

#rounded .feature h3 {
  background: linear-gradient(to top, #fff 50%, #e6f3ff 70%);
  font-family: Tahoma, sans-serif;
  font-size: 3rem;
  padding: 0 5px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}

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

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

/* Main */

#next-step-button-group {
  position: relative;
}

#continue-test-button {
  flex: 0 0 60%;
}

/* Length */

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

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

#length .list-group {
  box-shadow: 0 4px 8px 0 rgba(25, 81, 114, .6);
}

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

#length h2 {
  padding-bottom: 1rem;
}

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

#length-explanation  {
  font-size: 1.2rem;
  text-align: center;
}

#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;
}

/* Uses */

#uses {
  padding: 4rem 0 5rem;
  margin: 0 auto;
}

#uses h2 {
  padding-bottom: 3rem;
}

#uses .uses-grid {
  display: grid;
  grid-template-columns: 300px;
  justify-content: center;
  gap: 3rem;
  margin: 0 auto;
}

#uses .card {
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  box-shadow: 0 4px 8px 0 rgba(25, 81, 114, .6);
  overflow: hidden;
}

#uses img {
  height: 200px;
  width: 200px;
  margin-bottom: -5px;
}

#uses .card-body {
  padding: 10px 10px 0;
}

#uses .card-title {
  color: #195172;
  margin: 0;
  padding: 0;
}

#uses .card-footer {
  align-items: center;
  background: none;
  border-top: none;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  max-width: 60%;
  padding-bottom: 3rem;
}

/* FAQ */

#faq {
  padding-bottom: 5rem;
  padding-top: 4rem;
}

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

#faq .accordion-item {
  border: 1px solid #195172;
  border-radius: 10px;
  margin-bottom: 1rem;
}

#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;
  }

  #target-audience {
    padding: 1rem 0 0;
  }

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

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

  #truly-free img {
    height: auto;
    width: 100%;
  }

  #uses .card-footer {
    min-height: 80px;
  }

  #uses img {
    height: 160px;
    width: 160px;
  }

  #uses .uses-grid {
    grid-template-columns: repeat(2, 250px);
    gap: 2rem;
  }
}

@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;
  }

  #tagline h1, #tagline h2 {
    text-align: left;
  }

  #target-audience img {
    max-width: 200px;
  }

  #uses .uses-grid {
    grid-template-columns: repeat(2, 300px);
    gap: 3rem;
  }

  #uses img {
    height: 185px;
    width: 185px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px){
  #free-career-test {
    height: 260px;
    max-width: none;
    margin-left: -140px;
    margin-top: -60px;
    width: auto;
  }
}

@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;
  }

  #free-career-test {
    margin-top: -150px;
  }

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

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

  #uses .uses-grid {
    grid-template-columns: repeat(3, 270px);
  }

  #uses img {
    height: 200px;
    width: 200px;
  }
}

@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;
  }

  #uses .uses-grid {
    grid-template-columns: repeat(3, 300px);
  }
}

@media only screen and (min-width: 1400px) {
  #free-career-test {
    width: 90%;
  }

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

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