:root{
  --sage1: #ECEEDF;
  --sage2: #D8E4C5;
  --sage3: #b0c68a;
  --sage4: #727d52;
  --warm-white: #F8F7F5;
}


@font-face {
  font-family: 'Grotesk-Neue-Light';
  src: url(/static/fonts/FKGroteskNeue-Light.woff);
}

@font-face {
  font-family: 'Grotesk-Neue-Regular';
  src: url(/static/fonts/FKGroteskNeue-Regular.ttf);
}

@font-face {
  font-family: 'Grotesk-Neue-Medium';
  src: url(/static/fonts/FKGroteskNeue-Medium.ttf);
}

@font-face {
  font-family: 'GesturaText-Semibold';
  src: url(/static/fonts/GesturaText-Semibold.woff);
}

@font-face {
  font-family: 'GesturaText-Light';
  src: url(/static/fonts/GesturaText-Light.woff);
}

@font-face {
  font-family: 'GesturaText-LightItalic';
  src: url(/static/fonts/GesturaText-LightItalic.woff);
}

@font-face {
  font-family: 'GesturaDisplay-LightItalic';
  src: url(/static/fonts/GesturaDisplay-LightItalic.woff);
}


* {
    margin: 0;
    padding: 0;
    font-family: 'Grotesk-Neue-Light';
}

html {
    height: 100%
}

/* div > [id^="audio"] {
    background-color: #9FD6BA;
} */

/* body {
} */

h2 {
  font-family: Grotesk-Neue-Regular;
  color: black;
  font-weight:400;

}
h3 {
  font-family: GesturaText-Light;
  color: black;
  font-weight: 200;
}

h4 {
  font-family: Grotesk-Neue-Light;
  color: dimgray;
  font-weight: 200;
}
h5 {
  font-family: Grotesk-Neue-Light;
  color: black;
  font-weight: 200;
}

li {
  font-family: GesturaText-Light;
  color: black;
  font-size: 16px;
}
ul {
  padding-left: 1rem;
}

a {
  color: rgb(162,138,87);
}

.fs-3 {
  font-size: calc(1.3125rem + 0.15vw) !important;
}

.bg {
    /* background: url("/static/images/surveyLanding.png") no-repeat fixed center;
    background-size: cover; */
    background-image: linear-gradient(rgb(216,228,197), rgb(238,244,230));

}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
/* input[type=number] {
  -moz-appearance: textfield;
} */


.radio_select {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 18px;
  cursor: pointer;
  font-size: 16px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.radio_select input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 23px;
  width: 23px;
  background-color: white;
  border-radius: 50%;
  border: rgb(70, 70, 70);
  border-style: solid;
  border-width: 1.5px;
  margin-top: 3px;
}

.radio_select:hover .checkmark:after {
  top: 3px;
	left: 3px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
  display: block;
  background-color: rgb(180, 180, 180);
}

.radio_select input:checked ~ .checkmark {
  border-style: solid;
  border-width: 1.5px;
}

.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.radio_select input:checked ~ .checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
.radio_select .checkmark:after {
  top: 3px;
	left: 3px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: rgb(70,70,70);
}

.other_input {
  margin-left: 5px;
  margin-bottom: 0pxs
}

.middle-box {
  flex: 0 0 auto;
  width: min(75vw, 400px);
}

.gold-box {
  background-color: #e4d1a7;
  width: fit-content;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  border-radius: 5px;
  margin: auto;
  font-size: 0.8rem !important;
  font-family: Grotesk-Neue-Regular;
  color: black;
  letter-spacing: 1px;
}

.white-box {
  background-color: white;
  padding: 2rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-radius: 1rem;
}

.width-limit {
  max-width: min(100vh, 77vw);
  margin: auto;
}

.foooter-wrapper {
  width:100%;
  position:fixed;
  bottom: 40px;
  left: 0;
}

.footer {
  width:min(80vw, 500px);
  margin:auto;
}
#heading {
    font-family: Grotesk-Neue-Light;
    font-size: 48px;
}

.heading-ital {
  font-family: GesturaDisplay-LightItalic;
  font-weight: light;
  font-size: 48px; 
}

#msform {
    text-align: center;
    position: relative;
    margin-top: 20px
}

#msform fieldset {
    border: 0 none;
    border-radius: 0.5rem;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding-bottom: 20px;
    position: relative;
}

#msform fieldset label {
    color: black;
}

.form-card {
    text-align: left
}

.form-group {
    padding-top:14px;
}

.form-check-label {
    color: black;
}

#msform fieldset:not(:first-of-type) {
    display: none
}

p {
    color: black;
    font-family: GesturaText-Light;
    font-size: 20px;
}

.keep-whitespace {
  white-space: pre-line;
}

#msform input,
#msform textarea {
    border: 0;
    margin-bottom: 60px;
    margin-top: 2px;
    box-sizing: border-box;
    font-family: Grotesk-Neue-Regular;
    color: #2C3E50;
    font-size: 14px;
    letter-spacing: 0;
    width: 120px;
    min-height:36px;
    border-radius: 0;
    padding: 4px;
}

#msform input[type=text],
#msform input[type=email] {
  width: 220px;
}

#msform input:focus,
#msform textarea:focus {
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    outline-width: 0
}

#msform .action-button {
    background: black;
    /* font-weight: bold; */
    color: white;
    border: 0 none;
    cursor: pointer;
    padding: 3px 5px;
    margin: 10px 5px 10px 0;
    width:240px; height: 60px;
    float: none;
    /* box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25); */
    border-radius: 30px; 
    font-size: 20px;
    font-family: Grotesk-Neue-Light;
}

#msform .start-action-button {
    width: auto;
    height: 50px;
    float: none;
    background: black;
    color: white;
    font-size:18px;
    border-radius: 25px;
    font-family: Grotesk-Neue-Regular;
    border-width: 0px;
    margin-bottom: 0;
    padding-left: 30px;
    padding-right: 30px;
    min-width: 180px;
}

#msform .action-button:hover,
#msform .action-button:focus,
#msform .start-action-button:hover,
#msform .start-action-button:focus {
    background-color: rgb(162,138,87);
}

#msform .left-object {
    position: absolute;
    left: 0;
}
#msform .right-object {
    position: absolute;
    right: 0;
}

#msform .action-button-previous:hover,
#msform .action-button-previous:focus {
    background-color: #000000
}

.card {
    z-index: 0;
    border: none;
    position: relative
}

.fs-title {
    font-size: 25px;
    font-family:GesturaText-Semibold;
    color: black;
    margin-bottom: 15px;
    font-weight: normal;
    text-align: left
}

.purple-text {
    background: #90B181;
    font-weight: normal
}

.steps {
    font-size: 25px;
    color: gray;
    margin-bottom: 10px;
    font-weight: normal;
    text-align: right
}

.fieldlabels {
    color: black;
    text-align: left
}

.help-popup {
  display: none;
}
  
.fs-7 {
  font-size: 1rem !important;
}

#progressbar {
    margin-bottom: 30px;
    overflow: hidden;
    color: white;
}

#progressbar .active {
    background: #454545;

}

#progressbar li {
    list-style-type: none;
    font-size: 15px;
    width: 25%;
    float: left;
    position: relative;
    font-weight: 400
}

#progressbar #account:before {
    font-family: FontAwesome;
    content: "\f13e"
}

#progressbar #personal:before {
    font-family: FontAwesome;
    content: "\f007"
}

#progressbar #payment:before {
    font-family: FontAwesome;
    content: "\f030"
}

#progressbar #confirm:before {
    font-family: FontAwesome;
    content: "\f00c"
}

#progressbar li:before {
    width: 50px;
    height: 50px;
    line-height: 45px;
    display: block;
    font-size: 20px;
    color: white;
    background: #454545;
    margin: 0 auto 10px auto;
    padding: 2px;
}


#progressbar li:after {
    content: '';
    width: 100%;
    height: 2px;
    background: #454545;
    background: white;
    position: absolute;
    left: 0;
    top: 25px;
    z-index: -1
}

#progressbar li.active:before,
#progressbar li.active:after {
    background: #454545;
}

.progress {
    height: 12px;
    background-color: white;
    border-radius: 0;
    margin-top: 60px;
    display: none;
}

.progress-bar {
    background: #454545;
    height: 12px;
    border-radius: 0;
}

.fit-image {
    width: 100%;
    object-fit: cover
}

.center-screen {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    min-height: 100vh;
}


.audio_questions {
  margin-top: -10px;
  width: 92%;
}

.audio_questions_prompt {
  color:  dimgray;
}


/* hover over */
[data-role="controls"]>button:hover {
    background-color: #ee7bee;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#ee7bee), to(#6fe1f5));
    background-image: -o-linear-gradient(bottom, #ee7bee 0%, #6fe1f5 100%);
    background-image: linear-gradient(0deg, #ee7bee 0%, #6fe1f5 100%);
}

/* click on recording */
[data-role="controls"]>button[data-recording="true"] {
    background-color: #ff2038;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#ff2038), to(#b30003));
    background-image: -o-linear-gradient(bottom, #ff2038 0%, #b30003 100%);
    background-image: linear-gradient(0deg, #ff2038 0%, #b30003 100%);
}

.text-black {
    color: black !important;
}

.help-block {
    color: #962e2e;
    background: transparent;
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 10px;
    font-size:14px;
}

.status-icon {
    height: 16px;
    width: 16px;
}

#microphone-check {
    display: inline-flex;
}

.disabled-button {
    background: rgb(129,134,117) !important;
}

.left-button {
  display: block;
}

.small-text {
  font-size: min(3vw, 18px);
}

.finish-line {
  height: 2px !important;
  width: 200px;
  margin: auto;
  background-color: black;
  margin-bottom: 50px;
  margin-top: 40px;
}

@media (max-width: 570px) {
    #heading, .heading-ital {
        font-size: 32px;
    }
    #msform .action-button {
        width: 200px;
        height: 46px;
        font-size: 14px;
    }
    #msform .start-action-button {
      height: 42px;
      font-size: 14px;
      min-width: 120px;
  }
  .consent-frame {
    transform-origin: left top;
    transform: scale(0.5);
    width: 200%;
    margin-right: -50%;
    margin-bottom: -265px;
  }  

  .mobile-shift {
    margin-top :-10vh;
  }
  .fieldset {
    margin-bottom: 30%;
  }
  .gold-box {
    font-size: 0.65rem !important;
    letter-spacing: 0.5px;
  }
  .finish-line {
    margin-top: 70px;
    margin-bottom: 30px;
  }
  .question-label {
    font-size: 1.2rem !important;
  }

  .audio_questions{
    margin-top: 0;
  }
  .audio_questions_prompt{
    margin-bottom: 0;
  }

  .help-block {
    font-size: 12px;
  }
  .progress {
    margin-top: 120px;
  }
    .br {
      line-height: 5px;
      content: "";
    }

    .other_input {
      margin-left: 0px;
    }

    li {
      font-size: 13px;
    }
    
    .white-box {
      padding: 1rem;
      margin-left: 0.75rem;
      margin-right: 0.75rem;
    }

    .fs-5 {
      font-size: 1rem !important;
    }

    .fs-6 {
      font-size: 0.8rem !important;
    }


    .full-name-input {
        width: 100%;
    }


    .fs-title {
      font-size: 18px;
    }
    .input-data {
        width: 100%;
    }

    p {
      font-size: 14px;
    }

    .footer {
      width: 100%;
      margin: auto;
    }

}
.tooltip-wrapper {
  position: absolute;
  display: inline-block;
  margin-top: 85px;
}

.tooltip-x{
  width: 10px;
  height: 10px;
  margin-left: 96%;
}

.tooltip-icon {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #696D60;
  border: none;
}
.tooltip-icon-text {
  font-size: xx-small;
  color: white;
  margin-top: 2px;
}
 .tooltip-popup {
  width: 210px;
  display: none;
  background-color: #696D60;
  text-align: center;
  padding: 7px;
  border-radius: 0 3px 3px 3px;
  position: absolute;
  z-index: 1;
  margin-left: 14px;
}

.tooltip-text {
  color: white;
  font-size: 10px;
  letter-spacing: 0.1px;
}
.tooltip-arrow {
  zoom: 1.3;
  text-align: left;
  margin-bottom: -8px;
  margin-left: 8px;
  margin-top: -8px;
  display: none;
}

.tooltip-arrow-mobile {
  margin-bottom: 10px;
  margin-left: -4px;
  margin-top: -9px;
  display: none;
}
.tooltip-x-mobile{
  width: 10px;
  height: 10px;
}

 .tooltip-popup-mobile {
  width: 120px;
  background-color: #696D60;
  text-align: center;
  border-radius: 3px 0px 3px 3px;
  position: absolute;
  z-index: 1;
  margin-left: -115px;
  margin-top: -18px;
  display: none;
}

.tooltip-text-mobile {
  color: white;
  font-size: 8px;
  letter-spacing: 0.1px;
}



.blue-text {
  color: #004EC3 !important;
}

.question-label{
  font-family: GesturaText-Light;
  color: black;
  font-weight: 200;

}
.spinner {
  -webkit-animation: rotator 1.4s linear infinite;
          animation: rotator 1.4s linear infinite;
}

#msform .previous {
  margin-top: -90px;
  background-color: transparent !important;
  position: absolute !important;
  border: 0 !important;
  color: black;
  display: block;
}

#msform .back-icon {
  display: block;
  color: black;
}

#msform .back-icon:hover {
  color: rgb(162,138,87);
}

#msform .previous-input {
  visibility: hidden;
  position: absolute;
  display: block;
  width: 50px;
  height: 50px;

}



@-webkit-keyframes rotator {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(270deg);
  }
}

@keyframes rotator {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(270deg);
  }
}
.path {
  stroke-dasharray: 187;
  stroke-dashoffset: 0;
  transform-origin: center;
  -webkit-animation: dash 1.4s ease-in-out infinite, colors 5.6s ease-in-out infinite;
          animation: dash 1.4s ease-in-out infinite, colors 5.6s ease-in-out infinite;
}

@-webkit-keyframes colors {
  0% {
    stroke: #4285F4;
  }
  25% {
    stroke: #DE3E35;
  }
  50% {
    stroke: #F7C223;
  }
  75% {
    stroke: #1B9A59;
  }
  100% {
    stroke: #4285F4;
  }
}

@keyframes colors {
  0% {
    stroke: #4285F4;
  }
  25% {
    stroke: #DE3E35;
  }
  50% {
    stroke: #F7C223;
  }
  75% {
    stroke: #1B9A59;
  }
  100% {
    stroke: #4285F4;
  }
}
@-webkit-keyframes dash {
  0% {
    stroke-dashoffset: 187;
  }
  50% {
    stroke-dashoffset: 46.75;
    transform: rotate(135deg);
  }
  100% {
    stroke-dashoffset: 187;
    transform: rotate(450deg);
  }
}
@keyframes dash {
  0% {
    stroke-dashoffset: 187;
  }
  50% {
    stroke-dashoffset: 46.75;
    transform: rotate(135deg);
  }
  100% {
    stroke-dashoffset: 187;
    transform: rotate(450deg);
  }
}

/* Safari */
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}