/*==================================
    Fonts
==================================*/

/*@font-face {
  font-family: KaruBold;
  src: url(../fonts/KaruBold.otf);
}

@font-face {
  font-family: KaruBlack;
  src: url(../fonts/KaruBlack.otf);
}

@font-face {
  font-family: KaruRegular;
  src: url(../fonts/KaruRegular.otf);
}*/

@font-face {
  font-family: KaruBlack;
  src: url(../fonts/karublack-webfont.woff2) format('woff2'),
       url(../fonts/karublack-webfont.woff) format('woff');
  font-weight: normal;
  font-style: normal;

}

@font-face {
  font-family: KaruBold;
  src: url(../fonts/karubold-webfont.woff2) format('woff2'),
       url(../fonts/karubold-webfont.woff) format('woff');
  font-weight: normal;
  font-style: normal;

}

@font-face {
  font-family: KaruRegular;
  src: url(../fonts/karuregular-webfont.woff2) format('woff2'),
       url(../fonts/karuregular-webfont.woff) format('woff');
  font-weight: normal;
  font-style: normal;

}

html,
body {
  overflow-x: hidden;
}

body {
  font-family: 'KaruRegular', sans-serif;
  font-size: 1.1rem;
  line-height: 1.5;
  font-weight: 300;
  word-wrap: break-word;
  word-break: break-word;
}

body.ru {
  font-family: 'Roboto', sans-serif;
  font-size: 1.1rem;
  line-height: 1.5;
  font-weight: 300;
}

h1,
.h1 {
  font-family: 'KaruBlack', sans-serif;
}

h2,
h3,
h4,
h5,
.h2,
.h3,
.h4,
.h5 {
  font-family: 'KaruBold', sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-weight: 400;
  word-wrap: break-word;
}

.h1,
h1 {
  font-size: 2.75rem;
}

.h2,
h2 {
  font-size: 2.25rem;
}

.h3,
h3 {
  font-size: 1.65rem;
}

.h4,
h4 {
  font-size: 1.35rem;
}

blockquote {
  border-left: 5px solid #ececec;
  padding: 15px 30px;
  font-style: italic;
}

blockquote p::before,
blockquote p::after {
  content: '"';
}

.font-weight-bold {
  font-family: 'KaruBold', sans-serif;
}

label {
  font-weight: 700;
  font-size: 1rem;
}

strong {
  font-weight: 700;
}

/*==== End of Fonts ====*/

/*==================================
    Bootstrap colors override
==================================*/

/*Links*/

a {
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

a:hover,
a:focus,
a:active {
  text-decoration: none;
}

i {
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

/*Text shadow*/

.text-shadow {
  text-shadow: 1px 2px 2px rgba(0, 0, 0, 0.3);
}

/*==== End of Bootstrap colors override ====*/

/*==================================
    Buttons
==================================*/

/* Default button styling */
.btn {
  /* Display and box model */
  display: inline-block;
  white-space: normal;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
  /* Typography */
  font-family: 'KaruBold', sans-serif;
  font-size: 1.1rem;
  line-height: 1.5;
  text-align: center;
  text-transform: uppercase;
  /* Transitions */
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.btn:hover,
.btn:focus {
  text-decoration: none;
}

.btn:focus,
.btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.btn.disabled,
.btn:disabled {
  opacity: 0.65;
}

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

a:not([href]):not([tabindex]),
a:not([href]):not([tabindex]):focus,
a:not([href]):not([tabindex]):hover {
  color: #ffffff;
}

/* Primary button */

.btn-primary {
  border-top: 2px solid #e8353f !important;
  border-bottom: 3px solid #c50511 !important;
  border-left: none;
  border-right: none;
  text-shadow: 0 2px 3px rgba(0, 0, 0, 0.75);
}

.btn-primary:hover {
  border-top: 2px solid #333 !important;
  border-bottom: 3px solid #111 !important;
}

.btn-primary:focus,
.btn-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(227, 6, 19, 0.5);
}

.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(227, 6, 19, 0.5);
}

.btn-primary:active,
.btn-primary:not(:disabled):not(.disabled):active {
  box-shadow: 0 0 0 0.2rem rgba(227, 6, 19, 0.5);
}

/* Secondary button */

.btn-secondary:focus,
.btn-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.btn-secondary:not(:disabled):not(.disabled):active:focus,
.btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(90, 98, 104, 0.25);
}

/* Outline primary button */

.btn-outline-primary:focus,
.btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

/* Dark button */

.btn-secondary:focus,
.btn-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(90, 98, 104, 0.25);
}

/* Outline primary button */

.btn-outline-primary:focus,
.btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

/* Outline secondary button */

.btn-outline-secondary:focus,
.btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,
.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-success {
  border-top: 2px solid #5ad075 !important;
  border-bottom: 3px solid #2c8e42 !important;
  border-left: none;
  border-right: none;
  text-shadow: 0 2px 3px rgba(0, 0, 0, 0.75);
}

.btn-success:hover {
  border-top: 2px solid #218838 !important;
  border-bottom: 3px solid #227b36 !important;
}

.btn-success:focus,
.btn-success:active {
  box-shadow: 0 0 0 0.2rem rgba(33, 136, 56, 0.49);
  color: #ffffff;
}

/*==== End of Buttons ====*/

/* Default form control */

.form-control {
  display: block;
  width: 100%;
  font-size: 0.95rem;
  line-height: 1.5;
  background-clip: padding-box;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-control:focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(192, 13, 24, 0.2);
  border-color: rgba(192, 13, 24, 0.5);
}

select.form-control:not([size]):not([multiple]) {
  height: auto;
}

/*==== End of Forms ====*/

/*==== Notification bar ====*/

.notification {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9;
}

.notification a {
  color: #ffffff;
  text-decoration: underline;
}

/*==== End of notification bar ====*/

/*==================================
    Resets and default
==================================*/

img {
  max-width: 100%;
}

iframe {
  max-width: 100%;
}

.overlay {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.overlay-gradient {
  background: rgba(0, 0, 0, 0.4);
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(30%, rgba(0, 0, 0, 0.1)),
    to(rgba(0, 0, 0, 0.8))
  );
  background: -webkit-linear-gradient(
    top,
    rgba(0, 0, 0, 0.1) 30%,
    rgba(0, 0, 0, 0.8) 100%
  );
  background: -o-linear-gradient(
    top,
    rgba(0, 0, 0, 0.1) 30%,
    rgba(0, 0, 0, 0.8) 100%
  );
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.1) 30%,
    rgba(0, 0, 0, 0.8) 100%
  );
}

.bg-dark-gradient {
  background: -webkit-radial-gradient(top, #272727, #080808, #000000);
  background: radial-gradient(at top, #272727, #080808, #000000);
}

.overlay-primary {
  background: rgba(17, 17, 17, 0.3);
}

.overlay-secondary {
  background: rgba(27, 27, 27, 0.1);
}

/*==== End of Resets and default ====*/

/*==================================
    Help classes
==================================*/

.clear {
  clear: both;
}

.centered {
  text-align: center;
}

.bold {
  font-weight: 600;
}

/* Default collapse text formatting */
.collapsed-text {
  margin-bottom: 0;
  position: relative;
}
.collapsed-text .hider {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  margin: 0;
  padding: 20px 0;
  background-image: linear-gradient(to bottom, transparent, #fff);
}
.readmore-wrapper {
  margin-bottom: 1rem;
}

.slick-dots {
  margin: 30px 0 !important;
  position: relative !important;
}

.slick-dots li button:before {
  font-size: 0.9rem !important;
}

.page-btn {
  border-radius: 0 !important;
  padding: 0.65rem 1.5rem !important;
  margin-right: 5px !important;
  margin-bottom: 5px !important;
}

.page-btn.btn-secondary {
  border-left: none !important;
  border-right: none !important;
}

.landing-page-logo {
  padding-left: 20%;
}

/*==== End of Help Classes ====*/

/*==================================
    Responsive
==================================*/

@media screen and (max-width: 1024px) {
  h1,
  .h1 {
    font-size: 2.5rem;
  }

  h2,
  .h2,
  blockquote {
    font-size: 2rem;
  }

  h3,
  .h3 {
    font-size: 1.5rem;
  }

  h4,
  .h4 {
    font-size: 1.4rem;
  }

  h5,
  .h5 {
    font-size: 1.3rem;
  }

  h6,
  .h6 {
    font-size: 1.2rem;
  }

  .mt-5 {
    margin-top: 2rem !important;
  }

  .mb-5 {
    margin-bottom: 2rem !important;
  }

  .pt-5 {
    padding-top: 2rem !important;
  }

  .pb-5 {
    padding-bottom: 2rem !important;
  }

  .mt-4 {
    margin-top: 1rem !important;
  }

  .mb-4 {
    margin-bottom: 1rem !important;
  }

  .pt-4 {
    padding-top: 1rem !important;
  }

  .pb-4 {
    padding-bottom: 1rem !important;
  }

  .mt-3 {
    margin-top: 0.5rem !important;
  }

  .mb-3 {
    margin-bottom: 0.5rem !important;
  }

  .pt-3 {
    padding-top: 0.5rem !important;
  }

  .pb-3 {
    padding-bottom: 0.5rem !important;
  }
}

@media screen and (max-width: 767px) {
  h1,
  .h1 {
    font-size: 2rem;
  }

  blockquote {
    font-size: 1.75rem;
  }

  h3,
  .h3 {
    font-size: 1.35rem;
  }

  h4,
  .h4 {
    font-size: 1.2rem;
  }

  h5,
  .h5 {
    font-size: 1.1rem;
  }

  h6,
  .h6 {
    font-size: 1rem;
  }
}

@media screen and (max-width: 425px) {
  h2,
  .h2,
  blockquote {
    font-size: 1.75rem;
  }

  .mt-5 {
    margin-top: 1.5rem !important;
  }

  .mb-5 {
    margin-bottom: 1.5rem !important;
  }

  .pt-5 {
    padding-top: 1.5rem !important;
  }

  .pb-5 {
    padding-bottom: 1.5rem !important;
  }

  .mt-4 {
    margin-top: 0.75rem !important;
  }

  .mb-4 {
    margin-bottom: 0.75rem !important;
  }

  .pt-4 {
    padding-top: 0.75rem !important;
  }

  .pb-4 {
    padding-bottom: 0.75rem !important;
  }
}

/*==== End of Responsive ====*/
