/* Define primary and secondary color variables */
:root {
  --primary-color: #6c84ff;
  --secondary-color: #d3daff;
  --gray-color: #9ea0b6;
  --bg-color: white;
  --text-color: #1e1e1e;
  --footer-text-color: #969cbb;
  --max-width: 660px;
  --primary-color-dark: #eff2ff;
  --primary-color-white-dark: #eff2ff;

  --text-color-dark: #c2c9ea;
  --bg-color-dark: #020117;
  --profil-color-dark-light: #a1ace9;
  --main-font-inter: "Inter", sans-serif;
  --second-font-lora: "Lora", serif;
  --border-instruction-dark: #4a5ba5;
  --primary-color-dark: #93a5ff;
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
html,
body {
  margin: 0;
  padding: 0;
  height: 100%;
  /* width: 100%; */
  min-height: 100vh;
}
body {
  font-family: var(--main-font-inter);
  color: var(--text-color);
  text-align: center;
  line-height: 1.5;
  font-size: 18px;
  font-weight: 400;
}

a {
  text-decoration: none;
}
h1 {
  font-family: var(--second-font-lora);
  font-weight: 500;
  font-size: 2.66em;
  color: var(--primary-color);
  margin: 0;
}
.dark h1 {
  color: var(--primary-color-dark);
}
h2 {
  font-family: var(--second-font-lora);
  font-size: 1.33em;
  font-weight: 500;
  color: var(--primary-color);
  line-height: 140%;
  margin: 0;
  padding-top: 30px;
}
h2 span {
  font-style: italic;
}
.dark h2 {
  color: var(--primary-color-dark);
}

h3,
h4 {
  color: var(--secondary-color);
  margin-top: 0px;
  margin-bottom: 8px;
}
p {
  font-family: var(--main-font-inter);
  font-weight: 400;
  font-size: 0.88em;
  line-height: 150%;
  margin: 0;
}
p span {
  font-weight: 600;
}
.dark p {
  color: var(--text-color-dark);
}
.dark .p-dark-mode {
  color: var(--primary-color-white-dark);
}

/*FLEX*/
.flex-grid {
  display: flex;
}
.flex-grid-jutify-center {
  justify-content: center;
}
.flex-grid-align-item {
  align-items: center;
}
.flex-grid-align-item-start {
  align-items: flex-start;
}
.flex-grid-align-item-end {
  align-items: flex-end;
}
.flex-grid-wrap {
  flex-wrap: wrap;
}
.flex-grid-direction {
  flex-direction: column;
}
.flex-grid-space-between {
  justify-content: space-between;
}
.flex-grid-start {
  justify-content: flex-start;
}
.grid-col-50 {
  width: 50%;
}
/*END FLEX*/
.show-meanings {
  display: none;
}
.title-wrapper {
  gap: 10px;
}
.container-text {
  max-width: 730px;
  margin: 0 auto;
}

small {
  color: rgb(177, 177, 177);
}
.page-container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
}
.light .page-container {
  background-image: url("https://marketing-kasamba.kassrv.com/content/kasamba/mba-gamified/3-card-love-tarot-readings/love-bg.svg"),
    linear-gradient(to bottom, #ecf1ff, #ffffff);
}
.dark .page-container {
  background-image: url("https://marketing-kasamba.kassrv.com/content/kasamba/mba-gamified/3-card-love-tarot-readings/love-bg-mobile2.svg");
  background-color: var(--bg-color-dark);
}
/*Career*/
.light .career {
  background-image: url("https://marketing-kasamba.kassrv.com/content/kasamba/mba-gamified/3-card-love-tarot-readings/career-bg.svg"),
    linear-gradient(to bottom, #ecf1ff, #ffffff);
}
.dark .career {
  background-image: url("https://marketing-kasamba.kassrv.com/content/kasamba/mba-gamified/3-card-love-tarot-readings/career-bg-dark.svg");
  background-color: var(--bg-color-dark);
}
/*END Career*/
.tarot-widget-container {
  /*flex: 1;*/
  max-width: 1130px;
  margin: 0 auto;
}
.logo {
  padding-top: 30px;
  padding-bottom: 40px;
}

#wait-msg p span{  
    display: block;
    font-family: var(--second-font-lora);
    font-size: 28px;  
    font-weight: 500;  
    font-stretch: normal;  
    font-style: normal;  
    line-height: 1.2;  
    letter-spacing: normal;  
    text-align: center;  
    color:  var(--primary-color);
    margin: 50px auto;
}

/*GRID*/

.grid-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  text-align: left;
  margin-top: 20px;
  margin-bottom: 40px;
}

.box {
  box-sizing: border-box;
  width: 374px;
  min-height: 322px;
  padding: 24px;
  border-radius: 20px;
  border: 1px solid #dfe2ef;
}
.dark .box {
  background-color: var(--bg-color-dark);
}

.profil {
  align-content: center;
  gap: 16px;
  align-self: stretch;
}
.profil-expert {
  width: 100%;
}
.profil-img {
  display: flex;
  width: 100px;
  height: 100px;
  min-width: 100px;
  border-radius: 8px;
}
.profil-expertname {
  color: #121212;
  font-size: 1.22em;
  font-weight: 700;
  line-height: 150%;
}
.dark .profil-expertname {
  color: var(--primary-color-dark);
}
.profil-title {
  color: #636570;
  font-size: 0.94em;
  font-weight: 400;
  line-height: 150%;
}
.dark .profil-title {
  color: var(--profil-color-dark-light);
}
.profil-available-wrapper {
  gap: 5px;
  padding-top: 5px;
}
.profil-available {
  overflow: hidden;
  color: #7bd137;
  text-overflow: ellipsis;

  font-size: 0.77em;
  font-weight: 400;
  line-height: 140%;
}
.green-circle {
  height: 6px;
  width: 6px;
}
.profil-numbers {
  padding: 16px 0;
}
.profil-reviews {
  gap: 5px;
}
.profil-rate-number,
.profil-reading-number {
  font-size: 1em;
  font-weight: 700;
  line-height: 140%;
  color: #121212;
}
.dark .profil-rate-number,
.dark .profil-reading-number {
  color: var(--primary-color-dark);
}
.profil-reviews-number,
.profil-reading-text {
  color: #636570;
  font-size: 0.77em;
  font-weight: 400;
  line-height: 140%;
}
.dark .profil-reviews-number,
.dark .profil-reading-text {
  color: var(--profil-color-dark-light);
}
.profil-description {
  color: #636570;
  font-size: 0.94em;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}
.dark .profil-description {
  color: var(--profil-color-dark-light);
}
.profil-actions {
  padding-top: 16px;
}
.profil-badge {
  background-color:transparent;
  padding: 3px 5px;
  border-radius: 8px;
  gap: 3px;
}
.profil-free-min {
  font-size: 0.66em;
  font-weight: 700;
  line-height: 150%;
  color: #ffffff;
}
.profil-price {
  font-size: 1em;
  font-weight: 700;
  line-height: 140%;
  color: #121212;
  padding-top: 5px;
}
.dark .profil-price {
  color: var(--primary-color-dark);
}
.profil-cta {
  background-color: #6c84ff;
  border-radius: 8px;
  padding: 16px;
  min-width: 160px;
  gap: 8px;
}
.profil-cta-text a,
.profil-cta-text a:hover {
  color: #ffffff;
  text-align: center;
  font-size: 0.83em;
  font-weight: 700;
  line-height: 150%;
  display: flex;
}
.dark .grid-expert {
  background-color: var(--bg-color-dark);
}

/*INSCTUCTION*/
.instruction-track {
  display: flex;
  justify-content: center;
}
.card-instruction {
  flex: 0 0 33.333%;
}

.card-instruction-border {
  margin: 30px 15px;
  border: 1px solid #c7d0ff;
  width: 230px;
  min-height: 390px;
  padding: 10px;
  gap: 5px;
  border-radius: 16px;
  color: var(--primary-color);
}
.dark .card-instruction-border,
.dark .card-instruction-inside {
  border: 1px solid var(--border-instruction-dark);
}
.card-instruction-inside {
  padding: 25px 15px 40px 15px;
  border-radius: 10px;
  border: 1px solid #c7d0ff;
  height: 100%;
}
.instruction-gap {
  gap: 7px;
}
.instruction-number {
  font-family: var(--second-font-lora);
  font-size: 0.88em;
  font-weight: 500;
  padding-bottom: 5px;
}
.dark .instruction-number {
  color: var(--primary-color-white-dark);
}
.instruction-title {
  font-family: var(--second-font-lora);
  font-size: 1em;
  font-weight: 500;
  font-style: italic;
  line-height: 130%;
  color: var(--primary-color);
  margin-bottom: 30px;
}
.dark .instruction-title {
  color: var(--primary-color-dark);
}
.dark .instruction-text {
  color: var(--primary-color-dark);
}
.instruction-text {
  font-family: var(--second-font-lora);
  font-size: 0.88em;
  line-height: 140%;
}
/*END INSCTUCTION*/

/*BUTTON*/
.cta-button {
  background-color: var(--primary-color);
  padding: 10px 20px;
  display: flex;
  justify-content: center;
  align-content: center;
  gap: 10px;
  border-radius: 8px;
  color: var(--bg-color);
  font-family: var(--main-font-inter);
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
}
.talk-to-advisor {
  background-color: var(--primary-color);
  padding: 10px 20px;
  border-radius: 8px;
  color: var(--bg-color);
  font-family: var(--main-font-inter);
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
}
.find-more-advisors {
  padding: 15px 20px;
}
.show-only-on-mobile .find-more-advisors {
  display: flex;
}
/*BUTTON*/

/*FOOTER*/
footer {
  padding-bottom: 10px;
}
.footer-p {
  color: var(--footer-text-color);
  padding-top: 30px;
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: 60px;
}
.dark footer {
  background-color: var(--bg-color-dark);
}
/*END FOOTER*/

.show-only-on-mobile {
  display: none;
  justify-content: center;
  opacity: 0;
  margin: 25px 0;
}

.how-to-use-mobile-padding {
  padding-top: 20px;
}

/* Tablet: 2 cols + 1 centered below */
@media (min-width: 768px) and (max-width: 1139px) {
  .grid-wrapper {
    justify-content: center;
  }

  .box:nth-child(3) {
    margin-left: auto;
    margin-right: auto;
  }
}

/* Desktop: 3 cols, centered */
@media (min-width: 1140px) {
  .grid-wrapper {
    justify-content: center;
  }
}

@media (max-width: 600px) {
  .flex-grid-direction-mobile {
    flex-direction: column;
  }
  .box {
    width: 324px;
  }
}

/*END GRID*/

/* Responsive styling */
@media (max-width: 600px) {
  .page-container {
    background-position: top center;
    background-size: contain;
  }
  .light .page-container {
    background-image: url("https://marketing-kasamba.kassrv.com/content/kasamba/mba-gamified/3-card-love-tarot-readings/love-bg-mobile.svg"),
      linear-gradient(to bottom, #ecf1ff, #ffffff);
  }
  .dark .page-container {
    background-image: url("https://marketing-kasamba.kassrv.com/content/kasamba/mba-gamified/3-card-love-tarot-readings/love-bg-mobile-dark2.svg");
    background-color: var(--bg-color-dark);
  }
  /*Career*/
  .light .career {
    background-image: url("https://marketing-kasamba.kassrv.com/content/kasamba/mba-gamified/3-card-love-tarot-readings/career-bg-mobile.svg"),
      linear-gradient(to bottom, #ecf1ff, #ffffff);
  }
  .dark .career {
    background-image: url("https://marketing-kasamba.kassrv.com/content/kasamba/mba-gamified/3-card-love-tarot-readings/career-bg-mobile-dark.svg");
    background-color: var(--bg-color-dark);
  }
  /*END Career*/
  h1 {
    font-size: 1.44em;
    line-height: 120%;
  }
  .mobile-padding {
    padding-left: 50px;
    padding-right: 50px;
  }
  .heart-icon-hide-mobile {
    display: none;
  }
  .logo {
    padding-bottom: 20px;
  }
  #subtitle {
    margin-top: 10px;
  }
  h2 {
    font-size: 1em;
  }
  p {
    font-size: 0.777em;
  }
  .hide-mobile {
    display: none;
  }
  #how-to-use h2 {
    font-size: 1.33em;
    padding-left: 40px;
    padding-right: 40px;
  }
  .how-to-use-mobile-padding {
    padding-left: 20px;
    padding-right: 20px;
  }
  .counter-select-card,
  .counter-check-result {
    height: 25px;
  }
  .flex-grid-direction-mobile {
    flex-direction: column;
  }
  .grid-expert h2 {
    font-size: 1.44em;
    padding-left: 15px;
    padding-right: 15px;
  }

  .show-only-on-mobile {
    justify-content: center;
    align-items: center;
  }

  /*Instuction*/
  .instruction-slider {
    overflow: hidden;
    position: relative;
    padding: 0 10px;
    width: 100%;
    max-width: 100vw;
    /*max-width: 375px;*/
  }

  .instruction-track {
    display: flex;
    transition: transform 0.4s ease;
    will-change: transform;
  }
  .card-instruction {
    flex: 0 0 50vw;
    margin: 0 0 0 0;
    box-sizing: border-box;
  }
}
@media (max-width: 320px) {
  #instruction {
    padding-left: 15px;
    padding-right: 15px;
  }
  .mobile-padding {
    padding-left: 15px;
    padding-right: 15px;
  }
}