@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap');

:root {
  --primary: #2697d1;
  --secondary: #143f83;
  --primary-invert: #fff;
  --secondary-invert: #fff;

   /* DEFAULT COLOR OF ALERT TEXT */
   --alert-text-primary: #fff;
   
  /* DEFAULT COLOR OF TEXTS */
  --text-primary: #143f83;
  
  /* FOR BUTTONS & INPUTS */
  --elements-roundness: 10rem;

  --space-between-blocks: 5.3rem;
  /* for mobiles */
  --space-between-blocks-small-screens: 3rem;
}

body {
  font-family: 'Josefin Sans', sans-serif;
  color: var(--alert-text-primary);
}

.space-between-blocks {
  padding-top: var(--space-between-blocks-small-screens);
  padding-bottom: var(--space-between-blocks-small-screens);
}

@media(min-width: 992px) {
  .space-between-blocks {
    padding-top: var(--space-between-blocks);
    padding-bottom: var(--space-between-blocks);
  }
}

/* ----------------- BUTTONS ------------------- */

button {
  color: inherit;
  padding: 0;
  background: none;
  border: none;
}

button:focus {
  outline: none;
  box-shadow: none;
}

.btn {
  font-size: .87rem;
  padding: .8rem 1.6rem;
  border-radius: var(--elements-roundness);
  transition: .2s all;
}

@media(min-width: 992px) {
  .btn {
    padding: .8rem 2rem;
  }
}

.btn,
.btn:hover,
.btn:focus {
  border: none;
  box-shadow: none;
  outline: none;
}

.btn:hover,
.btn:focus {
  transform: scale(1.05);
}

.btn-primary,
.btn-primary:hover,
.btn-primary:focus {
  background: var(--primary);
  color: var(--primary-invert);
}

.btn-secondary,
.btn-secondary:hover,
.btn-secondary:focus {
  background: var(--secondary);
  color: var(--secondary-invert);
}

.btn-sm {
  padding: .8rem;
}

/* ============================================== */

/* .offer-alert {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  text-align: center;
  padding: 1rem 0;
  background-color: #0a1f44;
  font-size: .9rem;
  cursor: pointer;
  z-index: 1;
} */

.offer-alert__container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

@media(min-width: 992px) {
  .offer-alert__container {
    display: block;
  }
}

.offer-alert__btn {
  color: var(--primary-invert);
  background-color: var(--primary);
  padding: .5rem .8rem;
  margin-top: .5rem;
  border-radius: 5px;
  transition: .2s all;
}

@media(min-width: 922px) {
  .offer-alert__btn {
    margin: 0 .5rem;
  }
}

.offer-alert__btn:hover,
.offer-alert__btn:focus {
  background-color: var(--primary);
  color: var(--primary-invert);
  text-decoration: none;
  transform: scale(1.1);
}

/* ============================================== */

.hero {
  --hero-nav-height: 100px;
  --block-background: white;
  /* --block-text-color: var(--text-primary); */
  background: var(--block-background);
  color: var(--block-text-color);
  position: relative;
  display: flex;
  flex-direction: column;
  margin-top: 98px;
}

@media(min-width: 992px) {
  .hero {
    margin-top: 53px;
  }
}

.hero-nav {
  margin: 0 -1rem;
  width: 100%;
  height: var(--hero-nav-height);
  display: flex;
  align-items: center;
}

.hero-nav__item {
  text-align: center;
  font-size: 1.1rem;
}

@media(min-width: 992px) {
  .hero-nav__item {
    margin: 0 1rem;
  }
}

@media(min-width: 992px) {
  .nav--lg-side {
    flex-direction: row-reverse;
  }
}

.hero-nav__logo {
  height: 35px;
}

.hero-nav__link {
  color: inherit;
  opacity: .9;
}

.hero-nav__link:hover,
.hero-nav__link:focus {
  color: var(--primary);
  text-decoration: none;
  opacity: 1;
}

.hero__row {
  height: 100%;
}

.hero_empty-column {
  height: 100%;
}

.hero__image-column {
  height: 100%;
  background-position: center;
  background-size: cover;
}

.hero__content {
  text-align: initial;
  padding-top: 2rem;
  padding-bottom: 2rem;
  background-image: url('./imgs/bg.jpg');
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  /* background: linear-gradient(237deg, rgba(31,19,163,1) 0%, rgba(45,99,152,1) 51%, rgba(7,28,87,1) 99%); */
}

.hero__content:before {
  content: '';
  background-color: #030303;
  
}
.overlay {
  background-color: #030303;
  opacity: 0.5;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@media(min-width:992px) {
  .hero__content {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.hero__title {
  font-size: 1.8rem;
  font-weight: 900;
}

.hero__paragraph {
  font-size: .9rem;
  font-weight: 400;
  line-height: 1.7;
  opacity: .9;
}

@media (min-width: 576px) {
  .hero__title {
    font-size: 2.5rem;
    line-height: 1.17;
  }
  
  .hero__paragraph {
    width: 80%;
  }
}

@media (min-width: 768px) {
  .hero__title {
    font-size: 3rem;
  }
}

@media(min-width: 992px) {
  .hero__title {
    width: 95%;
    font-size: 3rem;
    line-height: 1.17;
  }

  .hero__paragraph {
    font-size: 1rem;
    width: 70%;
  }
}

@media(min-width: 1200px) {
  .hero__title {
    font-size: 3.5rem;
    line-height: 1.17;
  }
}

.cta-p {
  text-align: center;
  font-size: .75rem;
  opacity: .9;
}

@media(min-width: 992px) {
  .cta-p {
    text-align: initial;
  }
}

.hero__btns-container {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  width: 150px;
  margin: auto;
}

.hero__btn {
  display: inline-block;
  width: 100%;
}

@media(min-width: 992px) {
  .hero__btns-container {
    width: auto;
    flex-direction: row;
  }

  .hero__btn {
    width: auto;
  }
}

.highlight {
  color: #2697d1;
  
}
.abt-sub{
  font-size: 1.2rem;
  width: 500px !important;
}
.abt-btn{
  margin-top: 10px;
  
}

/* ----------------------------- */

.ft-menu {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 2000;
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

@media (print),
(prefers-reduced-motion: reduce) {
  .ft-menu {
    -webkit-animation-duration: 1ms !important;
    animation-duration: 1ms !important;
    -webkit-transition-duration: 1ms !important;
    transition-duration: 1ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
  }
}

.ft-menu .hero-nav__item {
  width: 100%;
  margin-top: .75rem;
  margin-bottom: .75rem;
}

@media(min-width: 992px) {
  .ft-menu .hero-nav__item {
    width: auto;
    margin-top: 0;
    margin-bottom: 0;
  }
}

.ft-menu--js-show {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
}

.ft-menu::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  background: var(--primary);
  opacity: .9;
  z-index: -1;
}

@media(min-width: 992px) {
  .ft-menu {
    -webkit-animation-name: none;
    animation-name: none;
    position: static;
    z-index: auto;
  }

  .ft-menu::before {
    content: none;
  }
}

.ft-menu__slider {
  width: 80%;
  height: 100%;
  background: var(--block-background);
  overflow: hidden;
  transform: translateX(-100%);
  transition: .5s transform;
}

@media(min-width: 992px) {
  .ft-menu__slider {
    width: auto;
    height: auto;
    background: none;
    transform: none;
    display: flex;
    align-items: center;
  }
}

.ft-menu--js-show .ft-menu__slider {
  transform: translateX(0%);
}

.ft-menu__close-btn {
  color: var(--primary-invert);
  position: absolute;
  right: 0;
  top: 0;
  font-size: 2rem;
  margin: 1rem;
  transform: translateX(100%);
  transition: .5s transform;
}

@media(min-width: 992px) {
  .ft-menu__close-btn {
    display: none;
  }
}

.ft-menu--js-show .ft-menu__close-btn {
  transform: translateX(0%);
}

.ft-menu__close-btn:hover,
.ft-menu__close-btn:focus {
  color: var(--primary-invert);
}

.pattern {
  position: absolute;
  height: 47%;
  width: 17%;
  opacity: .5;
}

.pattern--primary {
  color: var(--primary);
}

.pattern--left-bottom {
  bottom: 0;
  left: 0;
}

.pattern--right {
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

/* ------------------------------- */

/* Fade in */

@-webkit-keyframes fadeIn {
  from {
    visibility: hidden;
    opacity: 0;
  }

  to {
    visibility: visible;
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    visibility: hidden;
    opacity: 0;
  }

  to {
    visibility: visible;
    opacity: 1;
  }
}

/* Fade out */

@-webkit-keyframes fadeOut {
  from {
    visibility: visible;
    opacity: 1;
  }

  to {
    visibility: hidden;
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    visibility: visible;
    opacity: 1;
  }

  to {
    visibility: hidden;
    opacity: 0;
  }
}

.hero__img-container {
  border-radius: .5rem;
  overflow: hidden;
}

/* ===================================== */

.block-5 {
  --block-background: #f8f8f8;
  /* --block-text-color: var(--text-primary); */
  --block-text-color: #111111;
  background: var(--block-background);
  color: var(--block-text-color);
}

#product h1, #product h3 {
  color: var(--secondary);
}

.block__header {
  margin-bottom: 4rem;
}

.block__pre-title {
  color: var(--primary);
  font-size: 1rem;
  font-weight: 600;
}

.block__title {
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.4;
}

@media(min-width: 992px) {
  .block__title {
    font-size: 2.5rem;
  }
}

.block__paragraph {
  font-size: 1.1rem;
  line-height: 1.5;
  opacity: .9;
}

.card-2 {
  margin-bottom: 2.1rem;
}

.card-2:last-child {
  margin-bottom: 0;
}

.card-2__symbol {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  height: 3.25rem;
  width: 3.25rem;
  border: 1px solid var(--primary);
  border-radius: var(--elements-roundness);
  background: white;
  color: var(--primary);
}

@media(min-width: 992px) {
  .card-2__symbol {
    height: 3.8rem;
    width: 3.8rem;
  }
}

.card-2__title {
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.46;
}

.card-2__paragraph {
  font-size: .9rem;
  line-height: 1.5;
  opacity: .8;
  margin: 0;
}

/* ========================================================= */

.block-11 {
  --block-background: white;
  --block-text-color: var(--text-primary);
  background: var(--block-background);
  color: var(--block-text-color);
}

.block__header {
  margin-bottom: 4rem;
}

.block__pre-title {
  color: var(--primary);
  font-size: 1rem;
  font-weight: 600;
}

.block__title {
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.4;
}

@media(min-width: 992px) {
  .block__title {
    font-size: 2.5rem;
  }
}

.block__paragraph {
  font-size: 1.1rem;
  line-height: 1.5;
  opacity: .9;
}

.card-1 {
  height: 100%;
  padding: 2rem 1rem;
  border-radius: 5px;
  border: 1px solid rgba(0,0,0,0.1);
  transition: .1s all;
  background: var(--primary);
    border-color: var(--primary);
    color: white;
}

.card-1:hover,
.card-1:focus {
  color: white;
  background: var(--primary);
  border-color: var(--primary);
}

.card-1__symbol {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  height: 3.25rem;
  width: 3.25rem;
  border: 1px solid var(--primary);
  border-radius: var(--elements-roundness);
  background: white;
  color: var(--primary);
}

@media(min-width: 992px) {
  .card-1__symbol {
    height: 4.25rem;
    width: 4.25rem;
  }
}

.card-1__title {
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.5;
}

.card-1__paragraph {
  font-size: .9rem;
  line-height: 1.5;
  /* opacity: .8; */
}

/* UTILITIES */
.mb-2-1rem {
  margin-bottom: 2.1rem;
}

/* ======================================= */

.block-20 {
  --block-background: #f8f8f8;
  --block-text-color: var(--text-primary);
  background: var(--block-background);
  color: var(--block-text-color);
}

.block__header {
  margin-bottom: 4rem;
}

.block__pre-title {
  color: var(--primary);
  font-size: 1rem;
  font-weight: 600;
}

.block__title {
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.4;
}

@media(min-width: 992px) {
  .block__title {
    font-size: 2.5rem;
  }
}

.block__paragraph {
  font-size: 1.1rem;
  line-height: 1.5;
  opacity: .9;
}

.testimonial-card-1 {
  padding: 1.5rem;
  padding-top: 10rem;
  margin-top: 58px;
  margin-bottom: 25px;
  background: white;
  border: 1px solid #dee2e6;
  border-radius: 5px;
  position: relative;
  z-index: 0;
}

.testimonial-card-1__paragraph {
  font-size: .87rem;
  opacity: .9;
  line-height: 1.7;
}

.testimonial-card-1__quote-symbol {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background: var(--primary);
  color: var(--primary-invert);
  font-size: 1.3rem;
  border: 2px solid white;
  border-radius: 10rem;
  position: absolute;
  bottom: -25px;
  left: 0;
  right: 0;
  margin: auto;
}

.block-20__person {
  text-align: center;
  position: absolute;
  top: -58px;
  left: 0;
  right: 0;
  margin: auto;
}

.block-20__person-avatar {
  padding: 6px;
  width: 116px;
  height: 116px;
  background: white;
  border-radius: 10rem;
  border: solid 2px #eff0f9;
}

.block-20__person-rating {
  font-size: .75rem;
  color: #ffe200;
}

.block-20__person-name {
  font-size: .87rem;
  font-weight: 600;
}

.block-20__person-info {
  font-size: .8rem;
  font-weight: 600;
  opacity: .6;
}

/* ========================================= */

.block-17 {
  --block-background: white;
  --block-text-color: var(--text-primary);
  background: var(--block-background);
  color: var(--block-text-color);
  padding-top: 5.8rem;
  padding-bottom: 5.8rem;
}

.block-17__header {
  padding-bottom: 3.6rem;
}

.block__title {
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.4;
}

@media(min-width: 992px) {
  .block__title {
    font-size: 2.5rem;
  }
}

.block__paragraph {
  font-size: 1.1rem;
  line-height: 1.5;
  opacity: .9;
}

@media(min-width: 768px) {
  .block-17__paragraph {
    width: 80%;
  }
}

@media(min-width: 992px) {
  .block-17__paragraph {
    width: 50%;
  }
}

.plan-switch {
  font-size: 1.2rem;
  margin-top: 3.6rem;
}

.plan-switch__type {
  font-size: .87rem;
  font-weight: 600;
  opacity: .9;
}

.plan-switch__type--selected {
  color: var(--primary);
  opacity: 1;
}

.testimonial-card-3 {
  background: var(--primary);
  color: var(--primary-invert);
  padding: 3.1rem 2.1rem;
  position: relative;
  z-index: 1;
}

.testimonial-card-3__paragraph {
  font-size: .87rem;
  opacity: .9;
  line-height: 1.7;
}

.testimonial-card-3__quote-symbol {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background: var(--primary);
  color: var(--primary-invert);
  font-size: 1.3rem;
  border: 2px solid white;
  border-radius: 10rem;
  position: absolute;
  bottom: -25px;
  left: 0;
  right: 0;
  margin: auto;
}

.person__avatar {
  padding: 3px;
  width: 68px;
  height: 68px;
  background: white;
  border-radius: 10rem;
}

.person__rating {
  font-size: .75rem;
  color: #ffe200;
}

.person__name {
  font-size: .87rem;
  font-weight: 600;
}

.person__info {
  font-size: .8rem;
  font-weight: 600;
  opacity: .8;
  margin: 0 15px 0 15px;
}

.plan-card {
  padding: 3.5rem 2rem;
  border: 2px solid var(--primary);
  background: white;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.discount {
  transform: scale(1.2);
}

.discount__old-price {
  font-size: 1.9rem;
  text-decoration: line-through;
  opacity: .7;
}

.discount__percentage {
  font-size: .87rem;
  color: var(--primary-invert);
  background: var(--primary);
  padding: .3rem .9rem;
  border-radius: 10rem;
}

.plan-card--recommended {
  background: var(--primary);
  color: var(--primary-invert);
  padding-top: 5rem;
  position: relative;
  z-index: 1;
}

.plan-card--recommended .btn-primary {
  background: var(--primary-invert);
  color: var(--primary);
}

.plan-card--recommended .plan-features__icon {
  background-color: rgba(255, 255, 255, 0.3) !important;
  color:white !important;
}

@media(min-width: 992px) {
  .plan-card--recommended {
    height: calc(100% + 50px);
    width: calc(100% + 25px);
    margin-left: -12.5px;
    margin-top: -25px;
    padding-bottom: calc(3.5rem + 25px);
  }
}

.plan-card__tag {
  font-size: .75rem;
  padding: .6rem .8rem;
  border-bottom-left-radius: .8rem;
  border-bottom-right-radius: .8rem;
  position: absolute;
  top: -1px;
  left: 0;
  right: 0;
  width: 40%;
  margin: auto;
  background: var(--primary);
  color: var(--primary-invert);
}

.plan-card__name {
  font-size: 1.5rem;
  font-weight: 600;
}

.plan-card__price {
  font-size: 4.3rem;
  font-weight: 600;
}

.plan-card__duration {
  font-size: .87rem;
  font-weight: 600;
  text-transform: uppercase;
}

.plan-features {
  text-align: initial;
  margin: auto;
}

@media(min-width: 1200px) {
  .plan-features {
    width: 100%;
  }
}

.plan-features__li {
  font-size: 1rem;
  margin-bottom: 1.3rem;
  display: flex;
}

.plan-features__li-icon {
  color: #33c58d;
  transform: scale(1.5);
}

/* ********************************* */

.switch {
  font-size: 1em;
  position: relative;
  --switch-background--default: var(--primary);
  --switch-btn-background: white;
  --switch-background--checked: var(--primary);
  --switch-background--disabled: #ccc;
}
.switch input {
  position: absolute;
  height: 1px;
  width: 1px;
  background: none;
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  overflow: hidden;
  padding: 0;
}
.switch input + label {
  position: relative;
  min-width: calc(calc(2.375em * .8) * 2);
  border-radius: calc(2.375em * .8);
  height: calc(2.375em * .8);
  line-height: calc(2.375em * .8);
  display: inline-block;
  cursor: pointer;
  outline: none;
  user-select: none;
  vertical-align: middle;
  text-indent: calc(calc(calc(2.375em * .8) * 2) + .5em);
}
.switch input + label::before,
.switch input + label::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: calc(calc(2.375em * .8) * 2);
  bottom: 0;
  display: block;
}
.switch input + label::before {
  right: 0;
  background-color: var(--switch-background--default);
  border-radius: calc(2.375em * .8);
  transition: 0.2s all;
}
.switch input + label::after {
  top: .25em;
  left: .25em;
  width: calc(calc(2.375em * .8) - calc(.25em * 2));
  height: calc(calc(2.375em * .8) - calc(.25em * 2));
  border-radius: 50%;
  background-color: var(--switch-btn-background);
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.45);
  transition: 0.2s all;
}
.switch input:checked + label::before {
  background-color: var(--switch-background--checked);
}
.switch input:checked + label::after {
  margin-left: calc(2.375em * .8);
}
.switch input:focus + label::before {
  outline: none;
  box-shadow: 0 0 0 0.2em rgba(0,0,0,0.1);
}
.switch input:disabled + label {
  color: #868e96;
  cursor: not-allowed;
}
.switch input:disabled + label::before {
  background-color: var(--switch-background--disabled);
}
.switch + .switch {
  margin-left: 1em;
}

/* ======================================= */

.block-39 {
  --block-background: white;
  --block-text-color: var(--text-primary);
  background: var(--block-background);
  color: var(--block-text-color);
}

.block__header {
  margin-bottom: 4rem;
}

.block__title {
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.4;
}

@media(min-width: 992px) {
  .block__title {
    font-size: 2.5rem;
  }
}

.content-block {
  text-align: initial;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.content-block__title {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 1rem;
  line-height: 1.5;
}

@media(min-width: 992px) {
  .content-block__title {
    font-size: 1.5rem;
  }
}

.content-block__paragraph {
  font-size: 1rem;
  opacity: .9;
  line-height: 1.7;
}

/* ========================================= */

.block-28 {
  --block-background: white;
  --block-text-color: var(--text-primary);
  background-color: var(--block-background);
  color: var(--block-text-color);
  background-image: linear-gradient(to bottom, #f8f8f8 50%, transparent 0);
}

@media(min-width: 992px) {
  .block-28 {
    background-image: linear-gradient(to right, #f8f8f8 50%, transparent 0);
  }
}

.block-28__content-side,
.block-28__form-side {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.contact-info,
.contact-form {
  width: 90%;
  margin: auto;
}

.contact-info {
  font-size: .9rem;
}

.contact-form__title,
.contact-info__title {
  font-size: 2rem;
  font-weight: 600;
}

.contact-info__paragraph {
  line-height: 1.7;
  opacity: .9;
}

.contact-info__title-2 {
  font-weight: 600;
}

.contact-info__title-2
.contact-info__item {
  opacity: .9;
}

.contact-form__paragraph {
  font-size: 1rem;
  opacity: .9;
  line-height: 1.7;
  width: 90%;
}

.contact-form__input {
  color: var(--text-primary);
  font-size: .87rem;
  padding: .87rem 1.4rem;
  border-radius: 5px;
  border: 1px solid rgba(0,0,0,0.1);
  background: rgba(0,0,0,0.01);
  width: 100%;
  margin-bottom: .87rem;
}

textarea.contact-form__input {
  height: 130px;
  resize: none;
}

.contact-form__input:focus {
  border: 1px solid var(--primary);
  outline: none;
  box-shadow: none;
}

.btn--loading {
  opacity: 1;
  cursor: progress;
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.btn--loading::before,
.btn--loading::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}

.btn--loading::before {
  background: var(--primary);
  width: 100%;
  height: 100%;
  z-index: 1;
}

/* Safari */
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.btn--loading::after {
  margin: auto;
  border: 2px solid transparent;
  border-radius: 50%;
  border-top: 2px solid var(--primary-invert);
  width: 1.5rem;
  height: 1.5rem;
  -webkit-animation: spin .5s linear infinite; /* Safari */
  animation: spin .5s linear infinite;
  z-index: 2;
}

/* UTILITY CLASSES */

.h-100 {
  height: 100% !important;
}

/* ============================================== */

.block-32 {
  --block-background: white;
  --block-text-color: var(--text-primary);
  background: var(--block-background);
  color: var(--block-text-color);
}

.block__header {
  margin-bottom: 4rem;
}

.block__pre-title {
  color: var(--primary);
  font-size: 1rem;
  font-weight: 600;
}

.block__title {
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.4;
}

@media(min-width: 992px) {
  .block__title {
    font-size: 2.5rem;
  }
}

.block__paragraph {
  font-size: 1.1rem;
  line-height: 1.5;
  opacity: .9;
}

/* ====================================== */

.block-44 {
  --block-background: #e0e4ea;
  --block-text-color: #000000;
  --text-primary: var(--block-text-color);
  background: var(--block-background);
  color: var(--block-text-color);
  font-size: .87rem;
  text-align: center;
}

@media(min-width: 992px) {
  .block-44 {
    text-align: initial;
  }
}

.block-44__logo-container {
  width: 100%;
  margin-bottom: 2.5rem;
}

@media(min-width: 992px) {
  .block-44__logo-container {
    width: auto;
    flex-grow: 1;
    margin-bottom: 0;
  }
}

.block-44__logo {
  height: 100px;
  /* filter: brightness(1000); */
}

.block-44__list {
  display: flex;
  flex-wrap: wrap;
}

.block-44__li-1 {
  margin: 0 1.2rem;
  margin-bottom: .6rem;
}

@media(min-width: 992px) {
  .block-44__li-1 {
    margin: 0 1.8rem;
  }

  .block-44__li-1:last-child {
    margin: 0;
  }
}

.block-44__link {
  color: var(--text-primary);
  opacity: .8;
}

.block-44__link:hover,
.block-44__link:focus {
  color: var(--primary);
}

.block-44__divider {
  margin: 2.4rem 0;
  border-color: rgba(255, 255, 255, 0.1);
}

.block-44__extra-links {
  justify-content: center;
}

@media(min-width: 768px) {
  .block-44__extra-links {
    justify-content: flex-start;
  }
}

.block-44__copyrights {
  color: var(--text-primary);
  font-size: .87rem;
  line-height: 1.7;
  opacity: .8;
}

/* navbar */
.start-header {
	opacity: 1;
	transform: translateY(0);
	
	box-shadow: 0 10px 30px 0 rgba(138, 155, 165, 0.15) !important;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}
.start-header.scroll-on {
	box-shadow: 0 5px 10px 0 rgba(138, 155, 165, 0.15);
	padding: 10px 0;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}
.start-header.scroll-on .navbar-brand img{
	height: 24px;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}
.navigation-wrap{
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 1000;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}
.navbar{
	padding: 0;
}
.navbar-brand img{
	height: 80px;
	width: auto;
	display: block;
  /* filter: brightness(10%); */
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}
.navbar-toggler {
	float: right;
	border: none;
	padding-right: 0;
}
.navbar-toggler:active,
.navbar-toggler:focus {
	outline: none;
}
.navbar-light .navbar-toggler-icon {
	width: 24px;
	height: 17px;
	background-image: none;
	position: relative;
	border-bottom: 1px solid #000;
    transition: all 300ms linear;
}
.navbar-light .navbar-toggler-icon:after, 
.navbar-light .navbar-toggler-icon:before{
	width: 24px;
	position: absolute;
	height: 1px;
	background-color: #000;
	top: 0;
	left: 0;
	content: '';
	z-index: 2;
    transition: all 300ms linear;
}
.navbar-light .navbar-toggler-icon:after{
	top: 8px;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:after {
	transform: rotate(45deg);
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:before {
	transform: translateY(8px) rotate(-45deg);
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
	border-color: transparent;
}
.nav-link{
	color: #212121 !important;
	font-weight: 500;
  font-size: 20px;
    transition: all 200ms linear;
}
.nav-item:hover .nav-link{
	color: rgb(31 82 171) !important;
}
.nav-item.active .nav-link{
	color: rgb(31 82 171) !important;
}
.nav-link {
	position: relative;
	padding: 5px 0 !important;
	display: inline-block;
}
.nav-item:after{
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 2px;
	content: '';
	background-color: #FA8139;
	opacity: 0;
    transition: all 200ms linear;
}
.nav-item:hover:after{
	bottom: 0;
	opacity: 1;
}
.nav-item.active:hover:after{
	opacity: 0;
}
.nav-item{
	position: relative;
    transition: all 200ms linear;
}

/* #Primary style
================================================== */

.bg-light {
	background-color: #fff !important;
    transition: all 200ms linear;
}
.section {
    position: relative;
	width: 100%;
	display: block;
}
.full-height {
    height: 100vh;
}
.over-hide {
    overflow: hidden;
}
.absolute-center {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
  margin-top: 40px;
	transform: translateY(-50%);
	z-index: 20;
}
/* h1{
	font-size: 48px;
	line-height: 1.2;
	font-weight: 700;
	color: #212112;
	text-align: center;
}
p{
	text-align: center;
	margin: 0;
	padding-top: 10px;
	opacity: 1;
	transform: translate(0);
    transition: all 300ms linear;
    transition-delay: 1700ms;
}
body.hero-anime p{
	opacity: 0;
	transform: translateY(40px);
    transition-delay: 1700ms;
}
h1 span{
	display: inline-block;
    transition: all 300ms linear;
	opacity: 1;
	transform: translate(0);
}
body.hero-anime h1 span:nth-child(1){
	opacity: 0;
	transform: translateY(-20px);
}
body.hero-anime h1 span:nth-child(2){
	opacity: 0;
	transform: translateY(-30px);
}
body.hero-anime h1 span:nth-child(3){
	opacity: 0;
	transform: translateY(-50px);
}
body.hero-anime h1 span:nth-child(4){
	opacity: 0;
	transform: translateY(-10px);
}
body.hero-anime h1 span:nth-child(5){
	opacity: 0;
	transform: translateY(-50px);
}
body.hero-anime h1 span:nth-child(6){
	opacity: 0;
	transform: translateY(-20px);
}
body.hero-anime h1 span:nth-child(7){
	opacity: 0;
	transform: translateY(-40px);
}
body.hero-anime h1 span:nth-child(8){
	opacity: 0;
	transform: translateY(-10px);
}
body.hero-anime h1 span:nth-child(9){
	opacity: 0;
	transform: translateY(-30px);
}
body.hero-anime h1 span:nth-child(10){
	opacity: 0;
	transform: translateY(-20px);
}
h1 span:nth-child(1){
    transition-delay: 1000ms;
}
h1 span:nth-child(2){
    transition-delay: 700ms;
}
h1 span:nth-child(3){
    transition-delay: 900ms;
}
h1 span:nth-child(4){
    transition-delay: 800ms;
}
h1 span:nth-child(5){
    transition-delay: 1000ms;
}
h1 span:nth-child(6){
    transition-delay: 700ms;
}
h1 span:nth-child(7){
    transition-delay: 900ms;
}
h1 span:nth-child(8){
    transition-delay: 800ms;
}
h1 span:nth-child(9){
    transition-delay: 600ms;
}
h1 span:nth-child(10){
    transition-delay: 700ms;
}
body.hero-anime h1 span:nth-child(11){
	opacity: 0;
	transform: translateY(30px);
}
body.hero-anime h1 span:nth-child(12){
	opacity: 0;
	transform: translateY(50px);
}
body.hero-anime h1 span:nth-child(13){
	opacity: 0;
	transform: translateY(20px);
}
body.hero-anime h1 span:nth-child(14){
	opacity: 0;
	transform: translateY(30px);
}
body.hero-anime h1 span:nth-child(15){
	opacity: 0;
	transform: translateY(50px);
}
h1 span:nth-child(11){
    transition-delay: 1300ms;
}
h1 span:nth-child(12){
    transition-delay: 1500ms;
}
h1 span:nth-child(13){
    transition-delay: 1400ms;
}
h1 span:nth-child(14){
    transition-delay: 1200ms;
}
h1 span:nth-child(15){
    transition-delay: 1450ms;
}
#switch,
#circle {
	cursor: pointer;
	-webkit-transition: all 300ms linear;
	transition: all 300ms linear; 
} 
#switch {
	width: 60px;
	height: 8px;
	border: 2px solid #8167a9;
	border-radius: 27px;
	background: #000;
	position: relative;
	display: block;
	margin: 0 auto;
	text-align: center;
	opacity: 1;
	transform: translate(0);
    transition: all 300ms linear;
    transition-delay: 1900ms;
}
body.hero-anime #switch{
	opacity: 0;
	transform: translateY(40px);
    transition-delay: 1900ms;
}
#circle {
	position: absolute;
	top: -11px;
	left: -13px;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #000;
}
.switched {
	border-color: #000 !important;
	background: #8167a9 !important;
}
.switched #circle {
	left: 43px;
	box-shadow: 0 4px 4px rgba(26,53,71,0.25), 0 0 0 1px rgba(26,53,71,0.07);
	background: #fff;
} */
.nav-item .dropdown-menu {
    transform: translate3d(0, 10px, 0);
    visibility: hidden;
    opacity: 0;
	max-height: 0;
    display: block;
	padding: 0;
	margin: 0;
    transition: all 200ms linear;
}
.nav-item.show .dropdown-menu {
    opacity: 1;
    visibility: visible;
	max-height: 999px;
    transform: translate3d(0, 0px, 0);
}
.dropdown-menu {
	padding: 10px!important;
	margin: 0;
	font-size: 18px;
	letter-spacing: 1px;
	color: #212121;
	background-color: #dbbe39;
	border: none;
	border-radius: 3px;
	box-shadow: 0 5px 10px 0 rgba(138, 155, 165, 0.15);
    transition: all 200ms linear;
}
/* .dropdown-toggle::after {
	display: none;
} */

.dropdown-item {
	padding: 3px 15px;
	color: #212121;
	border-radius: 2px;
    transition: all 200ms linear;
}
.dropdown-item:hover, 
.dropdown-item:focus {
	color: #fff;
	background-color: rgba(129,103,169,.6);
}

/* body.dark{
	color: #fff;
	background-color: #1f2029;
}
body.dark .navbar-brand img{
  filter: brightness(100%);
}
body.dark h1{
	color: #fff;
}
body.dark h1 span{
    transition-delay: 0ms !important;
}
body.dark p{
	color: #fff;
    transition-delay: 0ms !important;
}
body.dark .bg-light {
	background-color: #14151a !important;
}
body.dark .start-header {
	box-shadow: 0 10px 30px 0 rgba(0, 0, 0, 0.15);
}
body.dark .start-header.scroll-on {
	box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.15);
}
body.dark .nav-link{
	color: #fff !important;
}
body.dark .nav-item.active .nav-link{
	color: #999 !important;
}
body.dark .dropdown-menu {
	color: #fff;
	background-color: #1f2029;
	box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.25);
}
body.dark .dropdown-item {
	color: #fff;
}
body.dark .navbar-light .navbar-toggler-icon {
	border-bottom: 1px solid #fff;
}
body.dark .navbar-light .navbar-toggler-icon:after, 
body.dark .navbar-light .navbar-toggler-icon:before{
	background-color: #fff;
}
body.dark .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
	border-color: transparent;
} */



/* #Media
================================================== */

@media (max-width: 767px) { 
	/* h1{
		font-size: 38px;
	} */
	.nav-item:after{
		display: none;
	}
	.nav-item::before {
		position: absolute;
		display: block;
		top: 15px;
		left: 0;
		width: 11px;
		height: 1px;
		content: "";
		border: none;
		background-color: #000;
		vertical-align: 0;
	}
	.dropdown-toggle::after {
		position: absolute;
		display: block;
		top: 10px;
		left: -23px;
		width: 1px;
		height: 11px;
		content: "";
		border: none;
		background-color: #000;
		vertical-align: 0;
		transition: all 200ms linear;
	}
	.dropdown-toggle[aria-expanded="true"]::after{
		transform: rotate(90deg);
		opacity: 0;
	}
	.dropdown-menu {
		padding: 0 !important;
		background-color: transparent;
		box-shadow: none;
		transition: all 200ms linear;
	}
	.dropdown-toggle[aria-expanded="true"] + .dropdown-menu {
		margin-top: 10px !important;
		margin-bottom: 20px !important;
	}
	body.dark .nav-item::before {
		background-color: #fff;
	}
	body.dark .dropdown-toggle::after {
		background-color: #fff;
	}
	body.dark .dropdown-menu {
		background-color: transparent;
		box-shadow: none;
	}
}

/* #Link to page
================================================== */

.logo {
	position: absolute;
	bottom: 30px;
	right: 30px;
	display: block;
	z-index: 100;
	transition: all 250ms linear;
}
.logo img {
	height: 26px;
	width: auto;
	display: block;
  filter: brightness(10%);
	transition: all 250ms linear;
}
body.dark .logo img {
  filter: brightness(100%);
}
/* end nav */

.second-img-sect  {
  margin: 60px 0;
  position: relative;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.second-img-sect img {
  width: 100%;
}
.second-sect-text {
  position: absolute;
  top: 25%;
  left: 13%;
}
.second-sect-text h2 span {
  color: var(--primary);
}
.second-sect-text h2  {
  font-size: 45px;
  text-shadow: 2px 2px #ffffff3d;
}

.blue-banner {
  padding-top: 4rem;
  padding-bottom: 4rem;
  background-color: #061938;
}
.banner-text h1 {
  font-size: 40px;
}
.banner-text p {
  font-size: 22px;
}
h1, h2 {
  text-transform: uppercase;
}

/* multiple stars */

/* repeat {
  display: block;
} */

repeat[n="1"]:before {
  content: "★";
  font-size: 20px;
  color: var(--primary);
}

repeat[n="2"]:before {
  content: "★★";
  font-size: 20px;
  color: var(--primary);
}

repeat[n="3"]:before {
  content: "★★★";
  font-size: 20px;
  color: var(--primary);
}

repeat[n="4"]:before {
  content: "★★★★";
  font-size: 20px;
  color: var(--primary);
}

repeat[n="5"]:before {
  content: "★★★★★";
  font-size: 20px;
  color: var(--primary);
}

.testi-content {
  padding: 5rem 0;
}
.testi-flex {
  gap: 20px;
  margin: 30px 0;
  flex-wrap: wrap;
  justify-content: center;
}
.testi-flex .card {
  width: 350px;
  border-radius: 15px;
}
.testi-flex .card h2 {
  font-size: 25px;
}
.testi-flex .card h4 {
  font-size: 20px;
  color: var(--primary);
}
/* Glass Card */
.glass-card {
  background: rgb(0 0 0 / 37%);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(3px);
  border: 1px solid rgb(237 237 237 / 11%);
}
.about-content, .product-section {
  margin-top: 100px;
}
.border-card {
  border-radius: 20px;
  border-color: #ccc;
  margin-bottom: 20px;
}
.vision-mission {
  margin-top: 40px;
}

@media screen and (max-width: 768px) {
  .navbar-brand img {
    height: 40px;
  }
  .hero__img-container {
    text-align: center;
  }
  .hero__img-container img {
    width: 200px !important;
    height: 300px !important;
  }
  .second-img-sect {
    margin: 0 !important;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  .second-sect-text {
    top: 30% !important;
  }
  .second-sect-text h2 {
    font-size: 25px !important;
  }
  .banner-text h1 {
    font-size: 30px;
}
.banner-text p {
  font-size: 16px;
}
#product .mx-auto {
  margin-right: 0 !important;
  margin-left: 0 !important;
}
.mbl-hide {
  display: none;
}
.about-content, .product-section {
  margin-top: 30px;
}
}