:root {
  --btn-color    : #e92f2d;
  --btn-color-2  : #d74e56;
  --title-color-a: #e2604b;
  --title-color-g: #1f9351;
  --title-color-r: #d85d00;
  --title-color-c: #00919a;
  --title-color-d: #ea5159;
  --title-color-y: #feed51;
  --sticky-bg    : #d7e0ee;
  --border-color : #39bfbd;
  --reviews-bg   : #0f9390;
  --intro2-bg    : #fff171;
  --help-bg      : #f6d8e7;
  --advice-bg    : #a9c347;
  --rasfoieste-bg: #fef0d8;
  --about-bg     : #fdebe8;
  --btn-volume-1 : #e86b36;
  --btn-volume-2 : #47a3c8;
  --btn-volume-3 : #996ea2;
  --btn-volume-4 : #8fb01c;
}

*,
*::after,
*::before {
  margin    : 0;
  padding   : 0;
  box-sizing: inherit;
}

html {
  font-size : 62.5%;
  box-sizing: border-box;
}

body {
  font-family: 'Quicksand', sans-serif;
  font-size  : 1.6rem;
  font-weight: 400;
  position   : relative;
}

h2 {
  font-weight: 600;
}

.cta-wrapper {
  display        : flex;
  flex-direction : column;
  justify-content: center;
  align-items    : center;
}

@media screen and (max-width: 41.25em) {
  .cta-wrapper {
    margin: 0 auto;
  }
}

.price-old {
  text-decoration: line-through;
}

.cta {
  display         : flex;
  align-items     : center;
  justify-content : center;
  text-decoration : none;
  font-weight     : 600;
  text-transform  : uppercase;
  text-align      : center;
  color           : #fff;
  width           : 30rem;
  height          : 5rem;
  font-size       : 2rem;
  margin-top      : 1rem;
  border-radius   : 5rem;
  background-color: var(--btn-color);
}

.cta-red-2 {
  background-color: var(--btn-color-2);
}

.hero-price {
  font-weight: 600;
  font-size  : 4rem;
}

.swiper-pagination-bullet-active {
  background: #fff;
}

.hidden {
  opacity       : 0;
  height        : 0;
  pointer-events: none;
}

.toggle-hidden {
  opacity       : 1;
  height        : 100%;
  pointer-events: all;
}

.btn-view,
.btn-view:visited {
  display        : flex;
  align-items    : center;
  justify-content: center;
  width          : 28rem;
  height         : 5rem;
  margin         : 0 auto;
  border-radius  : 2rem;
  border         : 3px solid var(--border-color);
  font-weight    : 600;
  color          : #FFF;
  text-decoration: none;
  margin-top     : 2rem;
}

.fullscreen {
  background-color: #333;
}

.swiper-pagination-bullet-active {
  background: var(--title-color-d);
}

.sticky {
  left            : 0;
  top             : -100%;
  width           : 100%;
  z-index         : 9;
  position        : fixed;
  padding         : 0 1rem;
  transition      : top .15s ease;
  background-color: #fff;
  box-shadow      : 0.9px 1.8px 8px 0 rgba(0, 0, 0, 0.1);
}

.sticky-wrap {
  display        : flex;
  align-items    : center;
  justify-content: space-between;
  width          : 100%;
  height         : 6.5rem;
  max-width      : 72rem;
  margin         : 0 auto;
}

@media screen and (min-width: 36.25em) {
  .sticky-wrap {
    height: 6.5rem;
  }
}

.sticky-container {
  display    : flex;
  align-items: center;
}

.sticky-container span {
  text-decoration: line-through;
  font-size      : 2rem;
  margin-right   : 1rem;
}

@media screen and (max-width: 36.25em) {
  .sticky-container span {
    font-size: 1.6rem;
  }
}

.sticky-wrapper {
  display        : flex;
  flex-direction : column;
  align-items    : center;
  justify-content: center;
}

@media screen and (min-width: 36.25em) {
  .sticky-wrapper {
    flex-direction: row;
  }
}

.sticky-price {
  font-weight   : 600;
  text-transform: uppercase;
  display       : block;
  color         : var(--btn-color);
}

@media screen and (min-width: 36.25em) {
  .sticky-price {
    font-size: 3.3rem;
  }
}

@media screen and (max-width: 36.25em) {
  .sticky-price {
    width: 7rem;
  }
}

.sticky-title {
  color      : #000;
  font-weight: 600;
  font-size  : 2rem;
}

.sticky-btn,
.sticky-btn:visited {
  display         : flex;
  align-items     : center;
  justify-content : center;
  background-color: var(--btn-color);
  border-radius   : 2rem;
  padding         : .5rem 1rem;
  margin-left     : 1rem;
  text-decoration : none;
  text-align      : center;
  text-transform  : uppercase;
  font-weight     : 700;
  font-size       : 1.4rem;
  color           : #fff;
}

@media screen and (min-width: 36.25em) {

  .sticky-btn,
  .sticky-btn:visited {
    width      : 15rem;
    height     : 3.5rem;
    margin-left: 3rem;
  }
}

.sticky-active {
  top: 0;
}

.hero {
  background-size    : cover;
  background-position: center;
  background-image   : url("../img/bg-hero-mobile.png");
  padding            : 0 2rem 4rem;
}

@media screen and (min-width: 41.25em) {
  .hero {
    padding         : 4rem 0;
    background-image: url("../img/bg-hero-desktop.png");
  }
}

.hero-logo {
  display  : block;
  width    : 100%;
  max-width: 20.1rem;
  margin   : 0 auto;
}

@media screen and (max-width: 41.25em) {
  .hero-logo {
    padding-top: 4rem;
  }
}

.hero-row {
  display        : flex;
  flex-direction : column;
  align-items    : center;
  justify-content: center;
  width          : 100%;
  max-width      : 100rem;
  margin         : 0 auto;
}

@media screen and (min-width: 41.25em) {
  .hero-row {
    flex-direction: row;
  }
}

.hero-wrap {
  display        : flex;
  flex-direction : column;
  align-items    : flex-start;
  justify-content: center;
}

@media screen and (min-width: 41.25em) {
  .hero-wrap {
    margin-left: 5rem;
    display    : block;
    width: 50%;
  }
}

.hero-title {
  font-size    : 2.2rem;
  font-weight  : 600;
  margin-bottom: 2rem;
}

@media screen and (min-width: 41.25em) {
  .hero-title {
    font-size: 2.6rem;
  }
}

.hero-text {
  font-weight  : 600;
  margin-bottom: 4rem;
  font-size    : 1.6rem;
  line-height  : 1.6;
}

@media screen and (min-width: 41.25em) {
  .hero-text {
    font-size: 1.8rem;
  }
}

.hero-img {
  display  : block;
  width    : 100%;
  max-width: 60rem;
  margin   : 4rem auto;
}

.intro {
  background-color: #fff;
}

.intro-1 {
  padding  : 4rem 2rem;
  width    : 100%;
  margin   : 0 auto;
  display  : block;
  max-width: 100rem;
}

@media screen and (min-width: 41.25em) {
  .intro-1 {
    display: flex;
  }
}

.intro-title {
  color    : var(--title-color-d);
  font-size: 2.95rem;
  padding  : 4rem 0;
}

@media screen and (min-width: 41.25em) {
  .intro-title {
    font-size: 4rem;
  }
}

.intro-text {
  font-size  : 1.8rem;
  line-height: 1.6;
}

.intro-img {
  display: block;
  width  : 100%;
}

@media screen and (min-width: 41.25em) {
  .intro-img {
    margin-right: 2rem;
  }
}

.pointers {
  background-image   : url("../img/bg-cum-ii-ajuta-pe-cei-mici-mobile.png");
  background-position: center;
  background-size    : cover;
  padding            : 60rem 0;
}

@media screen and (min-width: 41.25em) {
  .pointers {
    background-image: url("../img/bg-cum-ii-ajuta-desktop.png");
    padding         : 10rem 0;
  }
}

.pointers-title {
  font-size     : 3rem;
  text-align    : center;
  padding-bottom: 4rem;
  color         : var(--title-color-d);
}

@media screen and (min-width: 41.25em) {
  .pointers-title {
    font-size: 4.4rem;
  }
}

.pointers-wrap {
  display  : block;
  width    : 100%;
  max-width: 70rem;
  margin   : 0 auto;
}

.pointers-box {
  display        : flex;
  align-items    : flex-start;
  justify-content: flex-start;
  padding        : 0 1rem;
  margin-bottom  : 2rem;
}

.pointers-img {
  margin-right: 1rem;
  margin-top  : 1rem;
}

.journey {
  padding: 4rem 2rem;
}

.journey-title {
  font-size     : 3.4rem;
  text-align    : center;
  color         : var(--title-color-r);
  padding-bottom: 4rem;
}

@media screen and (min-width: 41.25em) {
  .journey-title {
    font-size: 5rem;
  }
}

.journey-arrow {
  display     : block;
  width       : 100%;
  max-width   : 2.8rem;
  margin-right: 2rem;
}

.journey-wrap {
  display  : block;
  width    : 100%;
  max-width: 90rem;
  margin   : 0 auto;
}

.journey-content {
  opacity       : 0;
  pointer-events: none;
  height        : 0;
  transition    : all .15s ease-in;
  margin-bottom : 2rem;
}

@media screen and (min-width: 41.25em) {
  .journey-content {
    display       : flex;
    flex-direction: row;
    margin-bottom : unset;
  }
}

.journey-content-active {
  opacity       : 1;
  height        : 100%;
  pointer-events: all;
}

.journey-btn {
  display        : flex;
  align-items    : center;
  justify-content: space-between;
  padding: 0 2rem;
  text-align     : center;
  width          : 100%;
  height         : 5rem;
  margin-bottom  : 1rem;
  border-radius  : .8rem;
  text-decoration: none;
  font-weight    : 600;
}

@media screen and (min-width: 41.25em) {
  .journey-btn {
    margin-bottom: 2rem;
  }
}

.journey-btn-1 {
  color           : #FFF;
  background-color: var(--btn-volume-1);
}

.journey-btn-2 {
  color           : #FFF;
  background-color: var(--btn-volume-2);
}

.journey-btn-3 {
  color           : #FFF;
  background-color: var(--btn-volume-3);
}

.journey-btn-4 {
  color           : #FFF;
  background-color: var(--btn-volume-4);
}

.journey-img {
  display: block;
  width  : 100%;
}

.help {
  background-image   : url("../img/bg-cum-ajuta-parintele-mobile.png");
  background-size    : cover;
  background-position: center;
  padding            : 60rem 2rem;
}

@media screen and (min-width: 41.25em) {
  .help {
    background-image: url("../img/bg-cum-ajuta-parintele.png");
    padding         : 10rem 2rem;
  }
}

.help-title {
  font-size    : 3rem;
  margin-bottom: 4rem;
  text-align   : center;
  color        : var(--title-color-d);
}

@media screen and (min-width: 41.25em) {
  .help-title {
    font-size: 4.4rem;
  }
}

.help-wrap {
  display  : block;
  width    : 100%;
  max-width: 70rem;
  margin   : 0 auto;
}

.help-box {
  display        : flex;
  align-items    : flex-start;
  justify-content: flex-start;
  margin-bottom  : 2rem;
}

.help-img {
  margin-top  : 1rem;
  margin-right: 1rem;
}

.advice {
  padding         : 4rem 2rem;
  background-color: #fff;
}

.advice-container {
  display  : block;
  width    : 100%;
  max-width: 90rem;
  margin   : 0 auto;
}

@media screen and (min-width: 41.25em) {
  .advice-container {
    display: flex;
  }
}

.advice-title {
  font-size: 3.5rem;
  padding  : 4rem 0;
  color    : var(--title-color-d);
}

.advice-text {
  line-height: 1.5;
  font-size  : 1.8rem;
}

.advice-img {
  display  : block;
  width    : 100%;
  max-width: 40rem;
}

@media screen and (min-width: 41.25em) {
  .advice-img {
    margin-right: 4rem;
  }
}

.activity {
  background-image: url("../img/bg-activitati-practice-mobile.png");
  padding         : 10rem 2rem;
}

@media screen and (min-width: 41.25em) {
  .activity {
    background-image: url("../img/bg-activitati-practice-desktop.png");
  }
}

.activity-container {
  display  : block;
  width    : 100%;
  max-width: 90rem;
  margin   : 0 auto;
}

@media screen and (min-width: 41.25em) {
  .activity-container {
    display: flex;
  }
}

.activity-title {
  font-size: 3.5rem;
  color    : var(--title-color-d);
  padding  : 4rem 0;
}

@media screen and (min-width: 41.25em) {
  .activity-wrap {
    order: 1;
  }
}

.activity-text {
  line-height: 1.6;
  font-size  : 1.6rem;
  font-weight: 600;
}

.activity-img {
  display  : block;
  width    : 100%;
  max-width: 40rem;
}

@media screen and (min-width: 41.25em) {
  .activity-img {
    margin-left: 4rem;
    order      : 2;
  }
}

.books {
  background-color: var(--rasfoieste-bg);
  margin          : 0;
  padding         : 4rem 0;
}

.book {
  flex-direction : column;
  justify-content: center;
  align-items    : center;
  cursor         : pointer;
  display        : none;
}

@media screen and (min-width: 41.25em) {
  .book {
    display: flex;
  }
}

.book-img {
  display  : block;
  width    : 100%;
  max-width: 26rem;
  margin   : 0 auto;
}

@media screen and (min-width: 41.25em) {
  .book-img {
    max-width: 70rem;
  }
}

.book-page {
  display      : block;
  width        : 100%;
  max-width    : 48rem;
  margin       : 0 auto;
  border-radius: 2rem;
}

@media screen and (max-width: 41.25em) {
  .book-page {
    max-width: 31rem;
  }
}

.book-title {
  margin-bottom: 4rem;
  text-align   : center;
  font-size    : 3.5rem;
  color        : var(--title-color-d);
}

.reviews {
  background-image   : url("../img/bg-recenzii-mobile.png");
  background-size    : cover;
  background-position: top;
  padding            : 10rem 0;
}

@media screen and (min-width: 41.25em) {
  .reviews {
    background-position: center;
    background-image   : url("../img/bg-recenzii-desktop.png");
  }
}

.reviews-title {
  color      : #fff;
  font-size  : 3rem;
  text-align : center;
  padding    : 4.5rem 0;
  font-weight: 600;
}

@media screen and (min-width: 36.25em) {
  .reviews-title {
    font-size: 4rem;
  }
}

.reviews-desktop {
  display: block;
}

.reviews-swiper {
  width    : 100%;
  max-width: 80rem;
  height   : 43rem;
  position : relative;
}

.review {
  border-radius   : 8rem;
  background-color: #fff;
  padding         : 5rem;
  height          : 100%;
  max-height      : 28rem;
}

@media screen and (max-width: 36.25em) {
  .review {
    padding      : 2rem;
    margin       : 0 1rem;
    border-radius: 1rem;
    max-height   : 37rem;
  }

  .review:not(:last-child) {
    margin-bottom: 2rem;
  }
}

.review-bubbles {
  position: absolute;
  bottom  : 1rem;
  left    : 5rem;
  z-index: -1;
}

@media screen and (max-width: 36.25em) {
  .review-bubbles {
    bottom: -.5rem;
  }
}

.review-title {
  color        : #000;
  display      : block;
  font-size    : 2.2rem;
  margin-bottom: 1rem;
}

@media screen and (max-width: 36.25em) {
  .review-title {
    font-size: 1.8rem;
  }
}

.review-text {
  color    : #000;
  font-size: 1.6rem;
}

.review-auth {
  font-size  : 1.6rem;
  margin-top : 1rem;
  font-weight: 700;
}

.review-maxim {
  display   : block;
  width     : 100%;
  max-width : 65rem;
  text-align: center;
  margin    : 4rem auto 6rem;
  padding   : 0 2rem;
}

.review-maxim h3 {
  font-weight: 700;
}

.review-maxim h3 strong {
  font-weight: 800;
}

.review-maxim p {
  margin-top: 2rem;
}

.about {
  background-color: var(--about-bg);
  padding         : 4rem 0;
}

.about-title {
  font-size : 4rem;
  color     : var(--title-color-a);
  text-align: center;
  padding   : 0 0 4rem;
}

@media screen and (min-width: 41.25em) {
  .about-title {
    font-size: 4.6rem;
  }
}

.about-wrap {
  display  : block;
  width    : 100%;
  max-width: 90rem;
  margin   : 0 auto;
  padding  : 0 2rem;
}

@media screen and (min-width: 41.25em) {
  .about-wrap {
    display        : flex;
    justify-content: center;
    align-items    : center;
  }
}

.about-1 {
  margin-bottom: 4rem;
}

@media screen and (min-width: 41.25em) {
  .about-1 {
    margin-right : 10rem;
    margin-bottom: unset;
  }
}

.about-img {
  display      : block;
  width        : 100%;
  max-width    : 22rem;
  margin       : 0 auto;
  margin-bottom: 2rem;
}

.about-text {
  width: 100%;
}

@media screen and (min-width: 41.25em) {
  .about-text {
    width    : 100%;
    max-width: 30rem;
  }
}

.upsell {
  padding: 4rem 0;
}

@media screen and (min-width: 41.25em) {
  .upsell {
    padding: 10rem 0;
  }
}

.upsell-title {
  margin-bottom: 2rem;
  font-size    : 4rem;
  color        : var(--title-color-d);
  text-align   : center;
}

@media screen and (max-width: 41.25em) {
  .upsell-title {
    font-size: 3rem;
    padding: 0 1rem;
  }
}

.upsell-wrap {
  display  : block;
  width    : 100%;
  max-width: 90rem;
  margin   : 0 auto;
}

.upsell-box {
  display        : flex;
  flex-direction : column;
  align-items    : center;
  justify-content: center;
  min-height     : 55rem;
}

.upsell-product-title {
  text-align   : center;
  font-weight  : 700;
  font-size    : 2.4rem;
  margin-bottom: 4rem;
}

@media screen and (max-width: 41.25em) {
  .upsell-product-title {
    font-size: 1.8rem;
    padding: 0 1rem;
  }
}

.upsell-product-cta {
  display        : flex;
  flex-direction : column;
  align-items    : center;
  justify-content: center;
  margin-top     : 4rem;
}

.upsell-product-btn {
  display        : flex;
  align-items    : center;
  justify-content: center;
  text-decoration: none;
  text-transform : uppercase;
  font-size      : 2.4rem;
  width          : 31rem;
  height         : 5rem;
  font-weight    : 700;
  border-radius  : 4rem;
  color          : var(--title-color-d);
  border         : 3px solid var(--title-color-d);
  margin-top     : 2rem;
}

@media screen and (max-width: 41.25em) {
  .upsell-product-btn {
    font-size      : 2.2rem;
    width          : 28rem;
    height         : 4.5rem;
  }
}

.upsell-product-price {
  font-weight: 700;
}

.upsell-product-price--old {
  font-size      : 2.4rem;
  text-decoration: line-through;
}

.upsell-product-price--new {
  font-size: 4rem;
}

@media screen and (max-width: 41.25em) {
  .upsell-product-price--old {
    font-size      : 1.8rem;
  }
  
  .upsell-product-price--new {
    font-size: 3rem;
  }
}

.footer {
  background-image   : url("../img/bg-footer-mobile.png");
  background-size    : cover;
  background-position: center;
  padding            : 4rem 0;
}

@media screen and (min-width: 41.25em) {
  .footer {
    background-image: url("../img/bg-footer-desktop.png");
  }
}

.footer-img {
  display  : block;
  width    : 100%;
  max-width: 50rem;
}

.footer-wrap {
  display        : flex;
  flex-direction : column;
  align-items    : center;
  justify-content: center;
  padding        : 0 2rem;
}

.footer-split {
  display  : block;
  width    : 100%;
  max-width: 90rem;
  margin   : 0 auto;
}

@media screen and (min-width: 41.25em) {
  .footer-split {
    display       : flex;
    flex-direction: row;
  }
}

.footer-text {
  padding    : 4rem 0;
  font-weight: 600;
}

@media screen and (min-width: 41.25em) {
  .footer-text {
    padding: 0 0 4rem;
  }
}

.footer-logo {
  display: block;
  margin : 4rem auto 0;
}

.hero-cover {
  position: relative;
  margin-bottom: 4rem;
}

.campaign-badge {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 32rem;
}

@media screen and (max-width: 600px) {
  .campaign-badge {
    bottom: -22px;
    max-width: 28rem;
    display: block;
    left: 50%;
    transform: translateX(-50%);
  }
}