body,
input {
  font-family: "Ubuntu", sans-serif; }

* {
  outline: 0;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

html {
  -ms-touch-action: manipulation;
  touch-action: manipulation; }
  html[class] {
    margin-top: 0 !important; }

body {
  font-size: 1rem;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-text-size-adjust: 100%;
  width: 100%;
  padding-left: 0;
  position: relative;
  color: #91999D; }

main {
  width: 100%;
  max-width: 100%;
  position: relative;
  overflow: hidden;
  background-color: #F8F7FC; }

section {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column; }

footer {
  z-index: 2; }

main ul {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
  row-gap: 1rem; }
  main ul li {
    font-size: 1rem;
    color: #9D60AF;
    line-height: 1.125;
    padding-left: 2.25rem;
    position: relative; }
    main ul li:after {
      content: '';
      display: block;
      width: 1.5rem;
      height: 1.5rem;
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      background-image: url("/img/checkcircle.svg"); }

.paragraph {
  line-height: 1.6875; }

/*
Whooby Reset
*/
html, body, div, span, object, iframe, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

.block_hero {
  background-color: #9D60AF;
  width: 100%;
  padding: 3rem 0;
  position: relative;
  z-index: 1; }
  @media not screen and (min-width: 600px) {
    .block_hero {
      padding: 2rem 0; } }
  .block_hero_background {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    height: 100%; }
    .block_hero_background img {
      height: 100%;
      width: auto;
      vertical-align: top; }
    @media not screen and (min-width: 1154px) {
      .block_hero_background {
        display: none; } }
  .block_hero_content {
    width: 100%;
    display: flex;
    justify-content: space-between; }
    @media not screen and (min-width: 1154px) {
      .block_hero_content {
        column-gap: 4rem; } }
    @media not screen and (min-width: 820px) {
      .block_hero_content {
        flex-direction: column;
        row-gap: 2rem; } }
  .block_hero_heading {
    width: 450px;
    display: flex;
    align-items: center; }
    @media not screen and (min-width: 820px) {
      .block_hero_heading {
        width: 100%; } }
    .block_hero_heading h1 {
      font-weight: 700;
      line-height: 3.625rem;
      font-size: 3.25rem;
      margin: 0;
      color: white; }
      @media not screen and (min-width: 768px) {
        .block_hero_heading h1 {
          font-size: 2.225rem;
          line-height: 1.1; } }
      @media not screen and (min-width: 480px) {
        .block_hero_heading h1 {
          font-size: 1.875rem;
          line-height: 1; } }
      .block_hero_heading h1 strong {
        color: #E6C6FF; }
      .block_hero_heading h1 + p {
        margin-top: 1.5rem; }
        @media not screen and (min-width: 820px) {
          .block_hero_heading h1 + p {
            margin-top: 1rem; } }
    .block_hero_heading p {
      color: white;
      line-height: 1.75rem; }
    .block_hero_heading .btn {
      margin-top: 2.5rem; }
      @media not screen and (min-width: 820px) {
        .block_hero_heading .btn {
          margin-top: 1.5rem; } }
  .block_hero_floating-box {
    background-color: #fff;
    margin-top: 1rem;
    padding: 2.5rem 2.25rem;
    border-radius: 26px 70px 26px 70px;
    max-width: 23.375rem;
    position: relative;
    z-index: 1; }
    @media not screen and (min-width: 820px) {
      .block_hero_floating-box {
        max-width: 100%; } }
    .block_hero_floating-box h2 {
      font-size: 1.75rem;
      margin: 0;
      color: #0368B6;
      font-weight: 700; }
      .block_hero_floating-box h2 + p {
        margin-top: 0.75rem; }
    .block_hero_floating-box p {
      font-size: 0.875rem;
      color: #0368B6;
      line-height: 1.14; }
      .block_hero_floating-box p + ul {
        margin-top: 1.25rem; }
    .block_hero_floating-box .cta {
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: center;
      margin-top: 0.5rem; }
      .block_hero_floating-box .cta .btn + .msg {
        margin-top: 0.75rem; }
.block_benefits {
  width: 100%;
  position: relative;
  margin-top: 6rem; }
  .block_benefits_background {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0; }
    .block_benefits_background .bg_1 {
      position: absolute;
      width: 50%;
      padding-bottom: 50vw;
      background-image: url("/img/cirkle_bg_1.svg");
      background-size: cover;
      background-repeat: no-repeat;
      top: -2rem; }
      @media not screen and (min-width: 1200px) {
        .block_benefits_background .bg_1 {
          width: 80%;
          left: -11rem; } }
    .block_benefits_background .bg_2 {
      position: absolute;
      display: block;
      width: 25vw;
      height: 25vw;
      border-radius: 100%;
      background-color: #EEF3FF;
      right: -5%;
      top: -8rem; }
      @media not screen and (min-width: 1200px) {
        .block_benefits_background .bg_2 {
          width: 35vw;
          height: 35vw; } }
      @media not screen and (min-width: 768px) {
        .block_benefits_background .bg_2 {
          width: 75vw;
          height: 75vw; } }
  .block_benefits .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 8rem;
    z-index: 1;
    position: relative; }
    @media not screen and (min-width: 1200px) {
      .block_benefits .container {
        grid-column-gap: 5rem; } }
    @media not screen and (min-width: 768px) {
      .block_benefits .container {
        display: flex;
        flex-direction: column;
        row-gap: 2.5rem; } }
  @media not screen and (min-width: 768px) {
    .block_benefits_content {
      order: 2; } }
  .block_benefits_content h2 {
    font-weight: 700;
    line-height: 3.625rem;
    font-size: 3.25rem;
    margin: 0;
    color: #0368B6; }
    @media not screen and (min-width: 768px) {
      .block_benefits_content h2 {
        font-size: 2.225rem;
        line-height: 1.1; } }
    @media not screen and (min-width: 480px) {
      .block_benefits_content h2 {
        font-size: 1.875rem;
        line-height: 1; } }
    .block_benefits_content h2 + h5 {
      margin-top: 1.25rem; }
  .block_benefits_content h5 {
    font-weight: 700;
    line-height: 1.375rem;
    font-size: 1.25rem;
    margin: 0;
    color: #0368B6; }
    @media not screen and (min-width: 768px) {
      .block_benefits_content h5 {
        font-size: 1rem;
        line-height: 1.175rem; } }
    .block_benefits_content h5 + * {
      margin-top: 1.25rem; }
  .block_benefits_content p + * {
    margin-top: 1.5rem; }
  .block_benefits_content h6 {
    margin: 0;
    font-size: 0.75rem;
    font-weight: 700;
    color: #0368B6;
    text-transform: uppercase; }
    .block_benefits_content h6 + * {
      margin-top: 1.5rem; }
  .block_benefits_image {
    display: flex;
    justify-content: flex-end; }
    @media not screen and (min-width: 768px) {
      .block_benefits_image {
        order: 1;
        justify-content: center; } }
    .block_benefits_image img {
      margin-top: -5rem;
      width: 100%;
      height: auto; }
      @media not screen and (min-width: 768px) {
        .block_benefits_image img {
          max-width: 400px; } }
.block_products {
  margin-top: 9rem; }
  @media not screen and (min-width: 768px) {
    .block_products {
      margin-top: 7rem; } }
  .block_products .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 3.75rem; }
    @media not screen and (min-width: 1280px) {
      .block_products .container {
        grid-column-gap: 2.5rem; } }
    @media not screen and (min-width: 820px) {
      .block_products .container {
        display: flex;
        flex-direction: column;
        row-gap: 7rem; } }
  .block_products .content .msg + * {
    margin-top: 0.75rem; }
  .block_products .content h2 {
    font-size: 1.75rem;
    margin: 0;
    color: #0368B6;
    font-weight: 700;
    max-width: 60%; }
    @media not screen and (min-width: 600px) {
      .block_products .content h2 {
        max-width: 100%; } }
    .block_products .content h2 + * {
      margin-top: 0.75rem; }
  .block_products .content small {
    display: block;
    font-size: 0.875rem;
    color: #0368B6;
    max-width: 60%; }
    @media not screen and (min-width: 600px) {
      .block_products .content small {
        max-width: 100%; } }
    .block_products .content small + * {
      margin-top: 1.5rem; }
  .block_products .content p + * {
    margin-top: 1.25rem; }
  .block_products .cta {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 1rem; }
    .block_products .cta .btn {
      min-width: 9.625rem;
      display: inline-flex;
      align-items: center;
      justify-content: center; }
    .block_products .cta small {
      margin-top: 1rem;
      font-size: 0.75rem;
      opacity: 0.75; }
      @media not screen and (min-width: 600px) {
        .block_products .cta small {
          font-size: 0.7rem;
          align-items: center; } }
.block_reviews {
  position: relative;
  margin-top: 6rem; }
  @media not screen and (min-width: 768px) {
    .block_reviews {
      margin-top: 4rem; } }
  .block_reviews .container {
    position: relative; }
  .block_reviews:before {
    content: '';
    width: 100%;
    display: block;
    height: calc(80%);
    bottom: 0;
    position: absolute;
    left: 0;
    background-color: #fff; }
  .block_reviews_inner {
    padding: 0 2.25rem 3rem;
    border-radius: 70px;
    background: #eef3ff;
    background: -moz-linear-gradient(180deg, #eef3ff 40%, rgba(238, 243, 255, 0) 90%);
    background: -webkit-linear-gradient(180deg, #eef3ff 40%, rgba(238, 243, 255, 0) 90%);
    background: linear-gradient(180deg, #eef3ff 40%, rgba(238, 243, 255, 0) 90%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#eef3ff", endColorstr="#eef3ff", GradientType=1); }
    @media not screen and (min-width: 700px) {
      .block_reviews_inner {
        padding: 0 1.25rem 3rem; } }
  .block_reviews_header {
    width: 100%;
    padding: 3rem;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center; }
    .block_reviews_header .centered {
      display: flex;
      flex-direction: column;
      align-items: center; }
      .block_reviews_header .centered h2 {
        font-weight: 700;
        line-height: 3.625rem;
        font-size: 3.25rem;
        margin: 0;
        color: #0368B6; }
        @media not screen and (min-width: 768px) {
          .block_reviews_header .centered h2 {
            font-size: 2.225rem;
            line-height: 1.1; } }
        @media not screen and (min-width: 480px) {
          .block_reviews_header .centered h2 {
            font-size: 1.875rem;
            line-height: 1; } }
      .block_reviews_header .centered img {
        margin-top: 0.5rem; }
  .block_reviews_avatars [class*="avatar"] {
    position: absolute;
    display: block;
    height: auto; }
  .block_reviews_avatars .avatar_1 {
    top: 5px;
    left: -14px;
    width: 84px; }
  .block_reviews_avatars .avatar_2 {
    top: 95px;
    left: 6px;
    width: 60px; }
  .block_reviews_avatars .avatar_3 {
    top: 38px;
    left: 65px;
    width: 72px; }
  .block_reviews_avatars .avatar_4 {
    top: 38px;
    right: -15px;
    width: 96px; }
  .block_reviews_avatars .avatar_5 {
    top: -2px;
    right: 45px;
    width: 72px; }
  .block_reviews_avatars .avatar_6 {
    top: 58px;
    right: 75px;
    width: 84px; }
  @media not screen and (min-width: 600px) {
    .block_reviews_avatars .avatar_1 {
      left: -4px;
      width: 54px; }
    .block_reviews_avatars .avatar_2 {
      top: 65px; }
    .block_reviews_avatars .avatar_3 {
      display: none; }
    .block_reviews_avatars .avatar_4 {
      right: -18px;
      width: 66px; }
    .block_reviews_avatars .avatar_5 {
      right: 35px;
      width: 52px; }
    .block_reviews_avatars .avatar_6 {
      display: none; } }
  .block_reviews_list {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 1rem;
    grid-row-gap: 1rem; }
    @media not screen and (min-width: 1200px) {
      .block_reviews_list {
        grid-template-columns: 1fr 1fr; }
        .block_reviews_list .review:last-of-type {
          display: none; } }
    @media not screen and (min-width: 700px) {
      .block_reviews_list {
        grid-template-columns: 1fr; } }
.block_imgtext {
  margin-top: 6rem;
  padding-bottom: 6rem; }
  @media not screen and (min-width: 768px) {
    .block_imgtext {
      margin-top: 4rem;
      padding-bottom: 4rem; } }
  .block_imgtext .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 6.375rem;
    align-items: center; }
    @media not screen and (min-width: 1280px) {
      .block_imgtext .container {
        grid-column-gap: 4.375rem; } }
    @media not screen and (min-width: 820px) {
      .block_imgtext .container {
        grid-template-columns: 1fr;
        grid-row-gap: 3rem; } }
  .block_imgtext_image {
    width: 100%; }
    @media not screen and (min-width: 820px) {
      .block_imgtext_image {
        max-width: 500px;
        margin: 0 auto; } }
    .block_imgtext_image img {
      width: 100%;
      height: auto; }
  .block_imgtext_content h2 {
    font-weight: 700;
    line-height: 3.625rem;
    font-size: 3.25rem;
    margin: 0;
    color: #0368B6; }
    @media not screen and (min-width: 768px) {
      .block_imgtext_content h2 {
        font-size: 2.225rem;
        line-height: 1.1; } }
    @media not screen and (min-width: 480px) {
      .block_imgtext_content h2 {
        font-size: 1.875rem;
        line-height: 1; } }
    .block_imgtext_content h2 + h3 {
      margin-top: 1.25rem; }
  .block_imgtext_content h3 {
    font-weight: 700;
    line-height: 1.375rem;
    font-size: 1.25rem;
    margin: 0;
    color: #0368B6; }
    @media not screen and (min-width: 768px) {
      .block_imgtext_content h3 {
        font-size: 1rem;
        line-height: 1.175rem; } }
    .block_imgtext_content h3 + * {
      margin-top: 1.25rem; }
  .block_imgtext_content p + * {
    margin-top: 1.5rem; }

.btn {
  font-size: 0.875rem;
  font-weight: 700;
  color: #fff;
  padding: 1rem 1.375rem;
  border-radius: 5rem;
  background-color: #0368B6;
  display: inline-block;
  transition: background-color 0.15s ease;
  cursor: pointer;
  margin-top: 1.5rem;
  text-decoration: none; }
  .btn * {
    pointer-events: none; }
  @media (hover: hover) {
    .btn:hover {
      background-color: #025493; } }
  .btn.shadow {
    box-shadow: 0 10px 25px rgba(255, 255, 255, 0.2); }

.container {
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
  padding: 0 1.35rem; }
  @media screen and (min-width: 600px) {
    .container {
      padding: 0 2rem; } }
  @media screen and (min-width: 920px) {
    .container {
      max-width: calc(1272px + 2rem * 4);
      padding: 0 calc(2rem * 2); } }

footer {
  padding: 2rem 0; }
  footer .container {
    display: flex;
    align-items: center;
    justify-content: center; }
    footer .container img {
      width: 8rem; }

header {
  height: 4.75rem;
  background-color: white; }
  header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 100%; }
  header .logo {
    width: 6.25rem; }
    header .logo img {
      width: 100%;
      height: auto; }
  @media not screen and (min-width: 768px) {
    header .menu nav {
      position: fixed;
      width: 280px;
      max-width: calc(100% - 4rem);
      right: 0;
      z-index: 2;
      background-color: white;
      box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
      top: 0;
      padding: 1rem;
      height: 100%;
      transform: translateX(calc(100% + 2rem));
      transition: transform 0.5s ease; }
      header .menu nav.active {
        transform: translateX(0px); } }
  header .menu nav ul {
    display: flex;
    column-gap: 0.25rem;
    margin: 0 -1rem; }
    @media not screen and (min-width: 768px) {
      header .menu nav ul {
        column-gap: 0;
        row-gap: 0.5rem;
        margin: 0.75rem -0.5rem 0 -0.5rem;
        flex-direction: column; } }
    header .menu nav ul li {
      display: inline-flex;
      color: #0368B6;
      font-weight: 500;
      font-size: 0.875rem;
      height: 4.75rem;
      align-items: center;
      position: relative;
      cursor: pointer;
      padding: 0 1rem;
      background-color: rgba(238, 243, 255, 0);
      transition: background-color 0.2s ease; }
      @media not screen and (min-width: 768px) {
        header .menu nav ul li {
          padding: 0.5rem 0.5rem;
          height: auto; } }
      @media (hover: hover) {
        header .menu nav ul li:hover {
          background-color: #eef3ff; } }
  header .menu .nav_mob {
    display: none; }
    @media not screen and (min-width: 768px) {
      header .menu .nav_mob {
        display: block; } }
    header .menu .nav_mob_icon {
      height: 19px;
      width: 22px;
      position: relative; }
      header .menu .nav_mob_icon span {
        width: 22px;
        height: 3px;
        background-color: #0368B6;
        display: block;
        position: absolute; }
        header .menu .nav_mob_icon span:nth-of-type(1) {
          top: 0; }
        header .menu .nav_mob_icon span:nth-of-type(2) {
          top: 50%;
          transform: translateY(-50%); }
        header .menu .nav_mob_icon span:nth-of-type(3) {
          bottom: 0; }
    header .menu .nav_mob_heading {
      display: flex;
      justify-content: space-between;
      align-items: center; }
      @media screen and (min-width: 768px) {
        header .menu .nav_mob_heading {
          display: none; } }
      header .menu .nav_mob_heading_close {
        width: 18px;
        height: 18px;
        position: relative; }
        header .menu .nav_mob_heading_close span {
          position: absolute;
          width: 100%;
          height: 2px;
          background-color: #0368B6;
          transform: rotate(45deg);
          top: 10px; }
          header .menu .nav_mob_heading_close span:nth-of-type(2) {
            transform: rotate(-45deg); }
        header .menu .nav_mob_heading_close:after {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          display: block;
          width: 48px;
          height: 48px; }

.msg {
  font-size: 0.6875rem;
  font-weight: 700;
  text-align: center;
  padding: 5px 8px;
  color: #49C4A6;
  background-color: #C2FCEE;
  border-radius: 1.5rem;
  min-width: 5rem;
  display: inline-block; }

.product {
  position: relative;
  border-radius: 26px 70px 26px 70px;
  background-color: #fff;
  padding: 2.625rem 2.25rem; }
  @media not screen and (min-width: 600px) {
    .product {
      padding: 2.225rem 1.25rem; } }
  .product .floating_image {
    position: absolute;
    right: -1rem;
    top: -6rem; }
    @media not screen and (min-width: 1280px) {
      .product .floating_image {
        width: 180px;
        top: -4rem; } }
    @media not screen and (min-width: 600px) {
      .product .floating_image {
        width: 150px;
        top: -6rem; } }
    .product .floating_image img {
      width: 100%;
      height: auto; }

.review {
  padding: 0.875rem 0.75rem;
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 9px 14px rgba(13, 59, 94, 0.05);
  min-height: 8rem;
  display: flex;
  align-items: center; }
  .review_inner {
    display: grid;
    grid-template-columns: 1fr 6rem;
    grid-column-gap: 1rem;
    align-items: center; }
  .review_content {
    font-size: 0.8125rem;
    color: #0368B6; }
    .review_content strong {
      display: block;
      margin-bottom: 0.75rem; }
  .review_rating {
    padding-left: 1rem;
    position: relative; }
    .review_rating:after {
      content: '';
      display: block;
      width: 2px;
      height: 5.5rem;
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      background-color: #F8F7FC; }
    .review_rating strong {
      display: block;
      text-align: center;
      width: 100%;
      font-size: 2rem;
      font-weight: 700;
      color: #0368B6; }
    .review_rating .stars {
      width: 100%;
      display: flex;
      flex-wrap: nowrap;
      column-gap: 0.1rem;
      justify-content: center;
      margin-top: 0.2rem; }
      .review_rating .stars span {
        background-image: url("/img/star_yellow.svg");
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        width: 12px;
        height: 12px;
        display: inline-block; }
        .review_rating .stars span.gray {
          background-image: url("/img/star_gray.svg"); }

/*# sourceMappingURL=style.css.map */
