/* ==========================================================================
   AVANCE QUIZ - START PAGE
   ========================================================================== */

.quiz-start .mainHeader {
  background-color: #fef8e2;
}

.quiz-start .mainContent {
  background-color: #FCDECA;
}

.quiz-start .mainContent .container {
  margin-top: 145px;
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  height: calc(-webkit-fill-available - 145px);
  min-height: 700px;
}

@media (min-width: 1900px) {
  .quiz-start .mainContent .container {
    margin-top: 131px;
  }
}

@media (max-width: 687px) {
  .quiz-start .mainContent .container {
    margin-top: 83px;
  }
}

.quiz-start h3 {
  color: #ff806e;
  margin-top: 50px;
  margin-bottom: 15px;
  position: relative;
  z-index: 20;
}

@media (max-width: 1150px) {
  .quiz-start h3 {
    text-align: center;
  }
}

.quiz-start h3 span {
  white-space: nowrap;
}

.quizImg-logo {
  width: 200px;
  height: auto;
}

.quizImg-circle {
  width: 192px;
  position: relative;
  bottom: 72px;
  right: 20px;
  z-index: 10;
}

.quizImg-sparkle {
  width: 50px;
  height: auto;
  position: relative;
  bottom: 30px;
  left: 175px;
}

.quizImg-ezze {
  width: 350px;
  height: auto;
  position: absolute;
  top: 180px;
  right: 0;
}

.quizImg-qqcollagen {
  width: 380px;
  height: auto;
  position: absolute;
  top: 450px;
  left: 100px;
}

.quiz-start .mainContent p {
  font-weight: 600;
  margin-top: -40px;
  margin-bottom: 20px;
  z-index: 5;
  position: relative;
}

.quiz-start .button {
  background-color: #ffcd00;
  border: 1px solid #ffcd00;
  padding: 1.1rem 2rem .9rem;
  margin-top: -15px;
  z-index: 5;
  position: relative;
}

.quiz-start .button:hover {
  color: #ffcd00;
  background-color: #fff;
  border: 1px solid #ffcd00;
}

@media (min-width: 1330px) {
  br.show1330px {
    display: block;
  }

  br.hide1330px {
    display: none;
  }
}

@media (max-width: 1329px) {
  br.show1330px {
    display: none;
  }

  br.hide1330px {
    display: block;
  }

  .quiz-start .mainContent .container {
    min-height: 900px;
  }

  .quizImg-qqcollagen {
    width: 350px;
    top: 580px;
    left: 30px;
    z-index: 4;
  }

  .quizImg-ezze {
    width: 280px;
  }

  .quiz-start h3 {
    line-height: 2.8rem;
    margin-top: 30px;
  }

  .quizImg-circle {
    width: 192px;
    bottom: 115px;
    left: 95px;
  }

  .quiz-start .mainContent p {
    margin-top: -40px;
    margin-bottom: 15px;
  }

  .quizImg-sparkle {
    bottom: 25px;
    left: 178px;
  }
}

@media (max-width: 1030px) {
  .quizImg-qqcollagen {
    width: 350px;
    top: 700px;
    left: 30px;
    z-index: 4;
  }
}

@media (max-width: 687px) {
  .quizImg-ezze {
    display: none;
  }

  .quizImg-qqcollagen {
    width: 320px;
    height: auto;
    position: relative;
    top: 0;
    left: revert;
    margin-top: 40px;
  }

  .quiz-start .mainContent p {
    margin-top: -50px;
    margin-bottom: 0;
    padding: 10px;
  }

  .quiz-start h3 {
    margin-top: 30px;
  }

  .quiz-start .mainContent .container {
    min-height: 1080px;
  }

  .quizImg-sparkle {
    bottom: 10px;
    left: 175px;
  }

  .quizImg-logo {
    width: 190px;
    height: auto;
  }
}

@media (max-width: 415px) {
  .quizImg-sparkle {
    bottom: -10px;
    left: 125px;
  }
}

@media (max-width: 383px) {
  .quizImg-circle {
    left: 0;
  }

  .quiz-start .mainContent .container {
    min-height: 1200px;
  }
}


/* ==========================================================================
   AVANCE QUIZ - QUESTION PAGES
   ========================================================================== */

.quiz .mainContent {
  background-color: #fff2c2;
}

.quiz.category-qns .mainContent {
  background-color: #fcdeca;
}

.quiz.post-qns .mainContent {
  background-color: #fff2c2;
}

.quiz .mainContent .container {
  height: 100vh;
  padding-top: 114px;
  min-height: fit-content;
}

/* Firefox-only override */
@-moz-document url-prefix() {
  .quiz .mainContent .container {
    height: auto !important;
    min-height: calc(100vh - 114px) !important;
  }
}

.quiz .mainHeader {
  padding-top: 0;
  min-height: 107px;
}

.quiz.category-qns .mainHeader {
  /*background-color: #fef8e2;*/
  background-color: #fff2c2;
}

.quiz.post-qns .mainHeader {
  background-color: #fff;
}

.quiz .mainHeader>.container {
  justify-content: flex-end;
}

@media (min-width: 1900px) {
  .quiz .mainHeader>.container {
    height: revert;
  }
}

.quiz .mainHeader__logo {
  position: absolute;
  left: 50%;
  z-index: 900;
  margin-left: -65px;
  text-align: center;
  margin-bottom: 40px;
  margin-top: 0;
}

@media (max-width: 840px) {
  .quiz .mainHeader__logo {
    margin-left: -50px;
  }
}

@media (max-width: 687px) {
  .quiz .mainHeader>.container {
    justify-content: unset;
  }

  .quiz .mainHeader__logo {
    position: relative;
    top: 0;
    margin-top: 25px;
  }

  .quiz .mainHeader__logo {
    margin-left: -65px;
  }
}

.back-arrow {
  width: 15px;
  height: auto;
}

.progressDiv {
  text-align: center;
}

.progressDiv span {
  font-size: 1rem;
}

.progressbar {
  width: 250px;
  height: 15px;
  border: 1px solid #000;
  margin-top: 5px;
}

.progressDiv_mobile {
  top: 107px;
  position: fixed;
  width: 100%;
  z-index: 9;
}

.progressDiv_mobile .progressbar {
  width: 100%;
  height: 15px;
  border: 0;
  margin-top: 0;
  background-color: #d8e5d8;
}

@media (max-width: 840px) {
  .hideMobile .progressbar {
    width: 200px;
  }
}

.showMobile .progressbar {
  min-width: 400px;
}

@media (max-width: 450px) {
  .showMobile .progressbar {
    min-width: 300px;
  }
}

.progressDiv_mobile .progressbar {
  width: 100%;
  min-width: 100%;
}

@media (max-width: 450px) {
  .progressDiv_mobile .progressbar {
    width: 100%;
    min-width: 100%;
  }
}

.progressDiv.showMobile {
  text-align: left;
  justify-content: center;
  display: flex;
}

@media (min-width: 688px) {
  .progressDiv.showMobile {
    display: none;
  }
}

.w3-round {
  border-radius: 20px;
  height: 16px
}

.progressbar .w3-container {
  background-color: #ffcd00;
  height: 14px;
  padding: 0;
}

.progressDiv_mobile .progressbar .w3-container {
  height: 15px;
}

.progressDiv_mobile .progressbar .w3-container.w3-round {
  border-radius: 0 20px 20px 0;
}

.category-tag {
  background-color: #fefcf6;
  border-radius: 0 0 30px 30px;
  top: 107px;
  position: absolute;
  padding: 5px 35px 5px 25px;
  left: 50%;
  transform: translate(-50%, 0);
  min-width: 185px;
  text-align: center;
}

@media (max-width: 687px) {
  .category-tag {
    top: 122px;
    /*left: 5%;
    transform: none;*/
    left: 50%;
    transform: translate(-50%, 0);
    min-width: 230px;
  }
}

.category-tag img {
  width: auto;
  height: 40px;
}

.quizContainer {
  text-align: center;
  padding-top: 50px;
  padding-bottom: 30px;
}

.prestart .quizContainer {
  width: 80%;
}

.prestart .header {
  background-color: #d8e5d8;
  padding: 50px 120px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}

.prestart .header h1,
.prestart .header h2 {
  color: #f78469;
  text-align: left;
  margin: 0;
}

.prestart .header h2 {
  font-size: 2.8rem;
}

.prestart .header img {
  width: 150px;
  height: auto;
  display: inline-block;
}

.prestart .header object {
  width: 170px;
  height: 170px;
}

.prestart .helloText {
  margin-top: 14px;
}

.prestart #quizForm {
  background-color: #fcdeca;
  padding: 50px 120px;
  width: 100%;
}

.centralFormContent {
  width: 70%;
  margin: 0 auto;
}

@media (max-width: 1003px) {
  .centralFormContent {
    width: 100%;
  }
}

@media (max-width: 802px) {
  .centralFormContent {
    width: 100%;
  }

  .prestart .header,
  .prestart #quizForm {
    padding: 50px 80px;
  }
}

@media (max-width: 691px) {

  .prestart .header,
  .prestart #quizForm {
    padding: 30px 30px;
  }
}

@media (max-width: 687px) {
  .prestart .quizContainer {
    width: 100%;
    padding-top: 0;
    padding-bottom: 0;
  }

  .quiz.prestart .mainContent .container {
    padding-top: 105px;
    padding-left: 0;
    padding-right: 0;
    align-items: baseline;
  }

  .prestart .header {
    flex-direction: column;
  }

  .prestart .header h1,
  .prestart .header h2 {
    text-align: center;
    font-size: 2.2rem;
  }

  .helloText {
    order: 2;
  }

  .prestart .header object {
    order: 1;
  }

  .prestart .helloText h2 {
    white-space: normal;
  }
}

@media (max-width: 375px) {

  .prestart .header h1,
  .prestart .header h2 {
    font-size: 2rem;
  }

  .prestart .header,
  .prestart #quizForm {
    padding: 20px 20px;
  }
}

.tooltip-container {
  position: relative;
  width: 22px;
  height: 22px;
  aspect-ratio: 1/1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  top: 5px;
  left: 5px;
}

.tooltip-container.active .tooltip {
  opacity: 1;
  pointer-events: auto;
}

.hover-me {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  transition: border 0.2s ease;
  cursor: pointer;
}

@media (hover: hover) {

  .hover-me:hover+.tooltip,
  .tooltip:hover {
    opacity: 1;
  }
}

.tooltip {
  position: absolute;
  left: 30px;
  transform-origin: top center;
  min-width: 200px;
  padding: 1rem;
  border-radius: 20px;
  background: #fff;
  color: #000;
  opacity: 0;
  transition: opacity 0.2s ease;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.2rem;
  box-shadow: rgba(173, 181, 189, 0.2) 0px 0px 20px;
  z-index: 999999;
}

.tooltip::after {
  content: "";
  position: absolute;
  height: 0;
  width: 0;
  top: 50%;
  right: 100%;
  margin-top: -6px;
  border-width: 6px;
  border-style: solid;
  border-color: transparent white transparent transparent;
}

.tooltip.smoking {
  min-width: 300px;
  top: -40px;
}

.tooltip.smoking::after {
  top: 27%;
}

.tooltip::before {
  content: "";
  position: absolute;
  top: calc(1rem / -2);
  left: calc(1rem / -2);
  height: calc(100% + 1rem);
  width: calc(100% + 1rem);
  background: rgba(0, 0, 0, 0);
}

@media (hover: hover) {
  .tooltip .tooltip::before:hover+ {
    opacity: 1;
  }

  .tooltip:hover {
    opacity: 1;
  }
}

@media (max-width: 687px) {

  .hover-me:hover+.tooltip,
  .tooltip:hover {
    opacity: 0 !important;
    pointer-events: none;
  }
}

.tooltip {
  pointer-events: none;
}

.tooltip-container.active .tooltip {
  pointer-events: auto;
}

@media (max-width: 1190px) {
  .tooltip {
    min-width: 120px;
  }

  .tooltip.smoking {
    min-width: 300px;
    top: -40px;
  }

  .tooltip.smoking::after {
    top: 27%;
  }

  .tooltip.goals {
    min-width: 160px;
  }
}

@media (max-width: 920px) {
  .tooltip {
    position: absolute;
    bottom: 31px;
    transform-origin: top center;
    min-width: 120px;
    left: -48px;
  }

  .tooltip::after {
    content: "";
    position: absolute;
    height: 0;
    width: 0;
    top: 102.5%;
    left: 50%;
    border-color: white transparent transparent transparent;
    transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
  }

  .tooltip.smoking {
    position: absolute;
    left: 30px;
    transform-origin: top center;
    padding: 1rem;
    border-radius: 20px;
    background: #fff;
    color: #000;
    opacity: 0;
    transition: opacity 0.2s ease;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.2rem;
    box-shadow: rgba(173, 181, 189, 0.2) 0px 0px 20px;
    min-width: 200px;
    top: -40px;
    bottom: auto;
  }

  .tooltip.smoking::after {
    content: "";
    position: absolute;
    height: 0;
    width: 0;
    right: 100%;
    margin-top: -6px;
    border-width: 6px;
    border-style: solid;
    border-color: transparent white transparent transparent;
    top: 17%;
    left: -3%;
  }

  .tooltip.goals {
    min-width: 250px;
    left: -168px;
  }

  .tooltip.goals::after {
    top: 104.5%;
    left: 71.5%;
  }
}

.flex-row {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

.flex-col {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  gap: 20px;
  text-align: center;
  position: relative;
  bottom: 20px;
}

/* Modal wrapper base */
.mobile-tooltip-modal {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  padding: 1rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

/* Show modal */
.mobile-tooltip-modal.show {
  opacity: 1;
  pointer-events: auto;
}

/* Modal content base animation */
.mobile-tooltip-modal.show .modal-content {
  background: white;
  padding: 1rem 1.5rem;
  border-radius: 12px;
  max-width: 90%;
  font-size: 14px;
  line-height: 1.4rem;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  position: relative;
  transform: scale(0.95);
  opacity: 0;
  transition: transform 0.25s ease, opacity 0.25s ease;
}

/* Animate content in when modal is shown */
.mobile-tooltip-modal.show .modal-content {
  transform: scale(1);
  opacity: 1;
}

/* Close button */
.close-btn {
  position: absolute;
  top: 0.5rem;
  right: 0.8rem;
  font-size: 1.5rem;
  cursor: pointer;
}

.quiz input[type="radio"],
.quiz input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  width: 0;
  padding: 0;
  border: none;
  opacity: 0;
  position: fixed;
}

.prestart .quizContainer .label-center label h3 {
  text-align: center;
  margin-bottom: 10px;
}

label.radio-button {
  background-color: #fff;
  padding: 1.1rem 2rem .9rem;
  margin: 0 auto;
  margin-bottom: 20px;
  border-radius: 30px;
  width: calc(50% - 20px);
  font-size: 1.4rem;
  font-weight: 600;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  margin-right: 20px;
}

.prestart .quizContainer label.radio-button:nth-of-type(2) {
  margin-right: 0;
}

.prestart .quizContainer label.radio-button:last-of-type {
  width: 70%;
}

label.icon-radio-button {
  margin: 0 auto;
  margin-bottom: 20px;
  width: 50px;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  margin-right: 20px;
}

section label.icon-radio-button:last-child {
  margin-right: 0;
}

label.radio-square-button,
label.checkbox-square-button {
  background-color: #fff;
  padding: 1.1rem 2rem .9rem;
  /* margin: 0 auto; */
  margin-bottom: 20px;
  border-radius: 8px;
  font-size: 1.2rem;
  font-weight: 400;
  text-align: center;
  cursor: pointer;
  display: inline-block;
  margin-right: 20px;
  max-width: 250px;
  width: 100%;
}

div.two-col {
  display: flex;
  justify-content: center;
}

div.two-col .radio-item,
div.two-col .checkbox-item {
  display: flex;
}

div.two-col .radio-item,
div.two-col .checkbox-item {
  width: calc(50% - 20px);
  margin-left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

div.two-col label.radio-square-button,
div.two-col label.checkbox-square-button {
  display: flex;
  justify-content: center;
  align-items: center;
  /*max-width: 100%;*/
  max-width: 250px;
  margin-right: 20px;
}

.taking-supplements div.two-col label.radio-square-button,
.taking-supplements div.two-col label.checkbox-square-button {
  max-width: 100%;
}

section div.two-col .radio-item label.radio-square-button {
  margin-right: 20px !important;
}

section div.two-col .radio-item:last-of-type label.radio-square-button {
  margin-right: 0 !important;
}

div.two-col label.radio-square-button:last-of-type,
div.two-col label.checkbox-square-button:last-of-type {
  margin-left: 0;
}

div.two-col .radio-square-button.min-height-63px,
div.two-col.directsun .radio-square-button.min-height-63px {
  min-height: 63.5px;
}

div.three-col {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}

div.three-col label.radio-square-button {
  flex: 1;
  width: calc(33.3% - 20px);
}

div.three-two-col {
  display: grid;
  gap: 0 20px;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: auto;
  max-width: calc(3 * 250px + 2 * 20px);
  /* 3 cols + 2 gaps */
  margin: 0 auto;
}

div.three-two-col .radio-item,
div.three-two-col .checkbox-item {
  display: flex;
}

div.three-two-col label.radio-square-button,
div.three-two-col label.checkbox-square-button {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 100%;
}

div.three-two-col.directsun label.radio-square-button,
div.three-two-col.directsun label.checkbox-square-button {
  display: block;
}

div.three-two-col.directsun label.radio-square-button.flex,
div.three-two-col.directsun label.checkbox-square-button.flex {
  display: flex;
}

div.three-two-col .radio-square-button.min-height-66px,
div.three-two-col.directsun .radio-square-button.min-height-66px {
  min-height: 66px;
  align-items: center;
  justify-content: center;
  display: flex;
}

div.three-two-col.cholesterol label,
div.three-two-col.directsun label {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2rem;
}

div.three-two-col.directsun label span {
  font-size: .8rem;
  font-weight: 300;
  line-height: 1rem;
}

div.three-two-col .radio-item.text-input,
div.three-two-col .checkbox-item.text-input {
  grid-column: span 2;
}

.quiz .radio-item.text-input label.radio-square-button:focus-within,
.quiz .checkbox-item.text-input label.checkbox-square-button:focus-within {
  background-color: #f78469;
  color: #fff;
}

.quiz .radio-item.text-input label.radio-square-button.active,
.quiz .checkbox-item.text-input label.checkbox-square-button.active {
  background-color: #f78469;
  color: #fff;
}

div.three-two-col label.radio-square-button.immunity {
  display: block;
}

div.three-two-col label.radio-square-button.immunity span {
  font-size: .8rem;
  font-weight: 300;
  line-height: 1rem;
}

.quiz .radio-item.text-input input[type="text"],
.quiz .checkbox-item.text-input input[type="text"] {
  margin-bottom: 0;
  border: none;
  width: 100%;
  font-size: 1.2rem;
  font-weight: 300;
  padding: 7px 1rem 4px;
  margin-left: 5px;
  bottom: 2px;
  position: relative;
  border-radius: 8px;
}

.quiz .radio-item.text-input input[type="text"]:focus-visible,
.quiz .checkbox-item.text-input input[type="text"]:focus-visible {
  outline: none;
}

@media (max-width: 687px) {

  label.radio-square-button,
  label.checkbox-square-button {
    margin-bottom: 15px;
  }

  div.two-col {
    display: flex;
  }

  div.two-col label.radio-square-button {
    padding: 1.1rem 1rem .9rem;
    margin-bottom: 15px;
    margin-right: 10px;
    width: calc(50% - 10px);
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 100%;
  }

  div.two-col .radio-item label.radio-square-button {
    width: 100%;
    padding: 1.1rem 2rem .9rem;
  }

  div.two-col .radio-item,
  div.two-col .checkbox-item {
    width: 100%;
  }

  .taking-supplements div.two-col {
    display: block;
  }

  section div.two-col .radio-item label.radio-square-button {
    margin-right: 0 !important;
  }

  div.three-col label.radio-square-button {
    flex: 0 0 calc(50% - 20px);
  }

  div.three-two-col {
    gap: 0 15px;
    grid-template-columns: repeat(2, 1fr);
    max-width: calc(2 * 250px + 1 * 15px);
    /* 2 cols + 1 gap */
  }

  div.three-two-col .radio-item:first-child:nth-last-child(3),
  div.three-two-col .checkbox-item:first-child:nth-last-child(3) {
    grid-column: 1 / -1;
    justify-self: center;
    min-width: calc(50% - 10px);
  }

  div.three-two-col .radio-item:first-child:nth-last-child(5),
  div.three-two-col .checkbox-item:first-child:nth-last-child(5) {
    grid-column: 1 / -1;
    justify-self: center;
    min-width: calc(50% - 10px);
  }

  div.three-two-col .radio-item:first-child:nth-last-child(7),
  div.three-two-col .checkbox-item:first-child:nth-last-child(7) {
    grid-column: 1 / -1;
    justify-self: center;
    min-width: calc(50% - 10px);
  }

  div.three-two-col.allergies .radio-item:nth-child(9),
  div.three-two-col.allergies .checkbox-item:nth-child(9) {
    /*grid-column: span 2;*/
  }

  div.three-two-col.allergies .radio-item:last-child,
  div.three-two-col.allergies .checkbox-item:last-child {
    grid-column: span 2;
  }
}

@media (min-width: 688px) {
  .three-two-col.directsun {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 20px;
    max-width: calc(3 * 250px + 2 * 20px);
    margin: 0 auto;
  }

  .three-two-col.directsun .radio-item:nth-child(4) {
    grid-column: 1 / 3;
    /* spans columns 1 and 2 */
    justify-self: center;
    min-width: 250px;
  }

  .three-two-col.directsun .radio-item:nth-child(5) {
    grid-column: 2 / 4;
    /* spans columns 2 and 3 */
    justify-self: center;
    bottom: 68px;
    position: relative;
    min-width: 250px;
  }

  .skin-qns-1 .three-two-col.directsun .radio-item:nth-child(4) {
    width: calc((100% - 20px) / 2);
    min-width: unset;
  }

  .skin-qns-1 .three-two-col.directsun .radio-item:nth-child(5) {
    bottom: 86.5px;
    position: relative;
    width: calc((100% - 20px) / 2);
    min-width: unset;
  }

  .skin-qns-2 .three-two-col.directsun .radio-item:nth-child(4) {
    width: calc((100% - 20px) / 2);
    min-width: unset;
  }

  .skin-qns-2 .three-two-col.directsun .radio-item:nth-child(5) {
    bottom: 86.5px;
    position: relative;
    width: calc((100% - 20px) / 2);
    min-width: unset;
  }
}

@media (max-width: 880px) {

  .three-two-col.directsun .radio-item:nth-child(4),
  .three-two-col.directsun .radio-item:nth-child(5) {
    width: calc((100% - 20px) / 2);
    min-width: unset;
  }
}

@media (max-width: 766px) {
  .three-two-col.directsun .radio-item:nth-child(5) {
    bottom: 86px;
  }
}

@media (max-width: 687px) {

  .three-two-col.directsun .radio-item:nth-child(4),
  .three-two-col.directsun .radio-item:nth-child(5) {
    width: 100%;
  }
}

@media (min-width: 688px) {
  .position-offset-energy {
    bottom: 100px;
    position: relative;
  }

  .skin-qns-2.position-offset {
    bottom: 80px;
    position: relative;
  }

  .position-offset-skin {
    bottom: 160px;
    position: relative;
  }
}

section label.radio-button:last-of-type,
section div label.radio-square-button:last-of-type,
section div label.checkbox-square-button:last-of-type {
  margin-right: 0;
}

label.icon-radio-button.tick {
  content: url('https://bestworld-public.s3.amazonaws.com/symphony/basic-template/avance/SG/en/img/quiz/option-tick-unselected.svg');
}

label.icon-radio-button.cross {
  content: url('https://bestworld-public.s3.amazonaws.com/symphony/basic-template/avance/SG/en/img/quiz/option-cross-unselected.svg');
}

.quiz input[type="radio"]:checked+label,
.quiz input[type="checkbox"]:checked+label {
  background-color: #f78469;
  color: #fff;
}

.quiz input[type="radio"]:checked+label.icon-radio-button.tick {
  content: url('https://bestworld-public.s3.amazonaws.com/symphony/basic-template/avance/SG/en/img/quiz/option-tick-selected.svg');
  background-color: transparent;
}

.quiz input[type="radio"]:checked+label.icon-radio-button.cross {
  content: url('https://bestworld-public.s3.amazonaws.com/symphony/basic-template/avance/SG/en/img/quiz/option-cross-selected.svg');
  background-color: transparent;
}

.quiz input[type="text"],
.quiz input[type="number"] {
  background-color: #fff;
  margin: 0 auto;
  margin-bottom: 20px;
  padding-left: 2rem;
  border-radius: 30px;
  width: 380px;
  font-size: 1.5rem;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
}

.quiz input[type="text"]:focus,
.quiz input[type="number"]:focus {
  border: 1px solid #f78469;
}

.quiz input[type="text"]:focus-visible,
.quiz input[type="number"]:focus-visible {
  outline: #f78469 auto 1px;
}

.quizContainer label h3 {
  color: #000;
  font-size: 1.3rem;
  font-weight: 600;
  margin-top: 0;
  margin-bottom: 20px;
  line-height: 2rem;
}

.prestart .quizContainer label h3 {
  text-align: left;
  margin-bottom: 0;
}

@media (max-width: 687px) {
  .prestart .quizContainer label h3 {
    text-align: center;
    margin-bottom: 10px;
  }

  .prestart .quizContainer label.radio-button {
    width: 100%;
  }

  .prestart .quizContainer label.radio-button:first-of-type {
    margin-bottom: 10px;
  }

  .prestart .quizContainer label.radio-button:nth-of-type(2) {
    margin-bottom: 10px;
  }

  .prestart .quizContainer label.radio-button:last-of-type {
    width: 100%;
  }
}

#quizForm section {
  margin-bottom: 20px;
}

.category-qns #quizForm section {
  margin-bottom: 40px;
}

.quiz .button {
  background-color: #ffcd00;
  border: 1px solid #ffcd00;
  padding: 1rem 3rem .8rem;
  margin: 20px 0 40px;
  font-size: 1.3rem;
}

.quiz button {
  background-color: #ffcd00;
  border: 1px solid #ffcd00;
  padding: .8rem 3rem .6rem;
  margin: 20px 0 0px;
  font-size: 1.3rem;
  font-weight: bold;
  border-radius: 25px;
  display: inline-block;
}

.quiz button:last-of-type {
  margin-bottom: 40px;
}

.quiz .button:hover {
  color: #ffcd00;
  background-color: #fff;
  border: 1px solid #ffcd00;
}

.quiz button:disabled {
  color: #000;
  opacity: 0.5;
  cursor: initial;
}

.quiz button#btnPrevious {
  margin-right: 12px;
}

@media (max-width: 687px) {
  .quiz button#btnPrevious {
    margin-right: 7px;
  }
}

.custom-select {
  width: 300px;
  position: relative;
  top: -10px;
  font-size: 1.1rem;
  font-weight: 300;
}

.custom-select select {
  display: none;
  /*hide original SELECT element: */
}

.select-selected {
  background-color: #ffcd00;
  border: 1px solid #fff;
  border-radius: 5px;
}

/* Style the arrow inside the select element: */
.select-selected:after {
  position: absolute;
  content: url("https://bestworld-public.s3.amazonaws.com/symphony/basic-template/avance/SG/en/img/quiz/dropdown.svg");
  transform: scale(.8);
  top: 35%;
  right: 15px;
  width: 20px;
}

/* Point the arrow upwards when the select box is open (active): */
.select-selected.select-arrow-active:after {
  /*border-color: transparent transparent #fff transparent;
  top: 7px;*/
}

/* style the items (options), including the selected item: */
.select-items div,
.select-selected {
  color: #000;
  background-color: #fff;
  padding: 10px 12px;
  cursor: pointer;
}

/* Style items (options): */
.select-items {
  position: absolute;
  background-color: #fff;
  border: 0;
  border-radius: 12px;
  top: 108%;
  left: 0;
  right: 0;
  z-index: 99;
  height: 184px;
  overflow-y: hidden;
  padding: 5px;
}

/* Hide the items when the select box is closed: */
.select-hide {
  display: none;
}

.select-items div:hover,
.same-as-selected {
  background-color: #fef8e2 !important;
  border-radius: 10px !important;
  color: #ff9d00 !important;
}

#quizForm .custom-select {
  width: 100%;
  top: 0;
  font-size: 1.2rem;
  font-weight: 300;
  border-radius: 30px;
  border: none;
  background-color: #fff;
  margin-bottom: 40px;
}

#quizForm .select-selected {
  padding: 17px 40px 13px;
  background-color: #fff;
  border: none;
  border-radius: 30px;
  text-align: left;
  padding-left: 30px;
  color: #000;
  font-size: 1.2rem;
}

/* style the items (options), including the selected item: */
#quizForm .select-items div {
  color: #000;
  background-color: #fff;
  padding: 13px 20px 8px;
  border-radius: 20px;
  cursor: pointer;
  font-weight: 400;
}

/* Style the arrow inside the select element: */
#quizForm.select-selected:after {
  position: absolute;
  content: url("../images/dropdown.svg");
  transform: none;
  top: 20px;
  right: 30px;
}

/*.custom-checkbox {
	height: 20px;
	width: 20px;
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 20px;
	display: inline-block;
	position: relative;
	margin-right: 10px;
	vertical-align: top;
}*/

/* Checkmark shows when checkbox is checked */
/*input[type="checkbox"]#checkPDPA:checked + .custom-checkbox::before, input[type="checkbox"]#checkMarketing:checked + .custom-checkbox::before {
    content: '';
    background-color: #f78469;
    height: 12px;
    width: 12px;
    border-radius: 12px;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}*/

.checkbox-wrapper .subliner {
  display: inline-block;
  width: 90%;
  margin-top: 0;
  text-align: left;
}

.checkbox-wrapper .subliner label {
  color: #ff806ee3;
  text-decoration: underline;
  font-weight: normal;
  display: inline-block;
  cursor: pointer;
}

@media (max-width: 398px) {
  .checkbox-wrapper .subliner {
    width: calc(100% - 34px);
  }

  .prestart .header object {
    width: 150px;
    height: 150px;
  }
}

#quizForm ul {
  list-style-type: none;
  padding-inline-start: 0;
  text-align: center;
}

#quizForm li {
  display: inline-block;
  padding-right: 0px;
  margin-bottom: 0;
}

.healthgoalsForm ul {
  list-style-type: none;
  padding-inline-start: 0;
  text-align: left !important;
}

.healthgoalsForm li {
  display: inline-block;
  padding-right: 0px;
  margin-bottom: 0;
}

.healthgoalsForm label {
  background-color: #fff;
  border: 2px solid #fff;
  padding: 10px;
  display: block;
  position: relative;
  margin: 10px;
  cursor: pointer;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  aspect-ratio: 1 / 1;
}

@media (max-width:700px) {
  .healthgoalsForm label {
    margin: 5px;
  }
}

.border-radius-20 {
  border-radius: 20px;
}

.healthgoalsForm label img {
  transition-duration: 0.2s;
  transform-origin: 50% 50%;
  height: 70px;
  width: auto;
}

.healthgoalsForm :checked+label {
  border-color: #ff806e;
  background-color: #fff !important;
  color: #000 !important;
}

.categoryLogo {
  text-align: center;
  margin: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 90%;
}

.healthgoalsForm .category_title {
  font-size: 1rem;
  font-weight: 600;
  display: block;
  line-height: 1rem;
  text-align: center;
  margin-top: 10px;
  margin-bottom: 0;
  text-transform: uppercase;
}

@media (max-width: 703px) {
  .healthgoalsForm label img {
    height: 55px;
  }

  .healthgoalsForm .category_title {
    font-size: 0.9rem;
  }
}

h3.healthgoals {
  color: #ff806e;
  font-size: 1.6rem;
  font-weight: 600;
  margin-bottom: 0;
  line-height: 2.2rem;
}

p.healthgoals {
  font-weight: 600;
  margin-top: 0;
  margin-bottom: 30px;
}

.healthgoalsForm {
  justify-content: start;
}

@media (min-width: 688px) {
  .grid--5col .grid__col {
    width: 24.5%;
  }

  .grid--3col .grid__col {
    width: calc(33.3% - 20px);
  }
}

@media (min-width: 992px) {
  .healthgoalsForm .grid--5col .grid__col {
    width: 19.5%;
  }
}

@media (max-width: 703px) {
  .grid--5col .grid__col {
    width: 32.6%;
  }

  h3.healthgoals {
    line-height: 1.8rem;
    margin-bottom: 30px;
  }
}

@media (max-width: 425px) {
  .grid--5col .grid__col {
    width: 49%;
  }
}

span.digestion {
  color: #ec8c8b;
  font-size: .9rem;
  margin-left: 0;
}

span.heart {
  color: #d36c80;
  font-size: .9rem;
  margin-left: 0;
}

span.cholesterol {
  color: #c96161;
  font-size: .9rem;
  margin-left: 0;
}

span.sleep {
  color: #36586b;
  font-size: .9rem;
  margin-left: 0;
}

span.liver {
  color: #cc7877;
  font-size: .9rem;
  margin-left: 8px;
}

span.brain {
  color: #f59780;
  font-size: .9rem;
  margin-left: 8px;
}

span.eyes {
  color: #6380a6;
  font-size: .9rem;
  margin-left: 8px;
}

span.bones {
  color: #6380a6;
  font-size: .9rem;
  margin-left: 8px;
}

span.joints {
  color: #8c949b;
  font-size: .9rem;
  margin-left: 8px;
}

span.women {
  color: #b3817b;
  font-size: .9rem;
  margin-left: 8px;
}

span.men {
  color: #aa807a;
  font-size: .9rem;
  margin-left: 8px;
}

span.immunity {
  color: #9191d1;
  font-size: .9rem;
  margin-left: 8px;
}

span.energy {
  color: #f68268;
  font-size: .9rem;
  margin-left: 8px;
}

span.skin {
  color: #c9809a;
  font-size: .9rem;
  margin-left: 8px;
}

.rating-scale {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 20px;
  position: relative;
  padding: 0 10px;
  max-width: 540px;
  margin: 0 auto;
}

.rating-scale::before {
  content: '';
  position: absolute;
  top: 19%;
  left: 10px;
  right: 10px;
  height: 3px;
  background-color: #fff;
  z-index: 0;
}

.rating-scale label {
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 1;
  cursor: pointer;
}

.rating-scale input[type="radio"] {
  appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #fff;
  border-radius: 50%;
  background-color: #fff;
  position: relative;
  margin-bottom: 5px;
  transition: background-color 0.2s, border-color 0.2s;
  opacity: 1;
}

.rating-scale input[type="radio"]:checked {
  background-color: #e2856e;
  border-color: #e2856e;
}

.rating-scale span {
  font-size: 1em;
  font-weight: 600;
}

.subtext {
  font-size: .9em;
  font-style: italic;
  font-weight: 300;
}

.quiz-disclaimer {
  display: inline-flex;
  align-items: flex-start;
}

.quiz-disclaimer img {
  width: 15px;
}

.footer-disclaimer {
  text-align: left;
  margin-left: 5px;
  color: #4c4c4c;
  font-weight: 200;
  font-size: 14px;
  padding-right: 22px;
  line-height: 1.2rem;
}


/* ==========================================================================
   AVANCE QUIZ - LOADING PAGE
   ========================================================================== */

.quiz-loading {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  margin: 0;
}

.quiz-loading .mainContent {
  background-color: #faeade;
}

.quiz-loading h3 {
  color: #000;
  margin-top: 30px
}

#isLoadingDiv,
#loadedDiv {
  height: 500px;
}

#loadedDiv img {
  max-width: 1000px;
  height: auto;
}

#continueBtn {
  margin-top: 50px;
  cursor: pointer;
}


/* ==========================================================================
   CSS Override
   ========================================================================== */


/* Override for layout consistency */
.quiz {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  margin: 0;
}

.quiz .mainHeader {
  flex: 0 0 auto;
}

.quiz .mainContent {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
}

/* Override old height rules */
.quiz .mainContent .container {
  flex: 1 0 auto;
  padding-top: 160px !important;
  height: auto !important;
  min-height: auto !important;
}

@media (max-width: 687px) {
  .quiz .mainContent .container {
    padding-top: 140px !important;
  }

  .quiz.prestart .mainContent .container {
    padding-top: 105px !important;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
    align-items: baseline;
  }
}