/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[2]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[4]!./src/sass/style.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap);
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[2]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[4]!./src/sass/style.scss (1) ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************/
* {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

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

textarea, input, button {
  background: transparent;
  border: none;
  margin: 0; }
  textarea:focus, input:focus, button:focus {
    outline: none; }

input,
textarea,
button,
select,
a {
  -webkit-appearance: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.col-1 {
  width: 8.33333%; }

.col-2 {
  width: 16.66667%; }

.col-3 {
  width: 25%; }

.col-4 {
  width: 33.33333%; }

.col-5 {
  width: 41.66667%; }

.col-6 {
  width: 50%; }

.col-7 {
  width: 58.33333%; }

.col-8 {
  width: 66.66667%; }

.col-9 {
  width: 75%; }

.col-10 {
  width: 83.33333%; }

.col-11 {
  width: 91.66667%; }

.col-12 {
  width: 100%; }

section {
  overflow: hidden; }

.container {
  width: 100%;
  margin: auto;
  position: relative;
  padding: 0 20px; }

.row {
  margin: 0 -20px;
  display: flex; }
  .row .col {
    padding: 0 20px; }

body {
  color: #2D2D2D;
  font-size: 17px;
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  line-height: 1.2; }

.content {
  font-family: "Montserrat", sans-serif;
  font-size: 17px;
  line-height: 1.2;
  color: #2D2D2D;
  /* all iframe / video / gif */
  /* 16:9 */ }
  .content iframe,
  .content video,
  .content img {
    width: 100%;
    height: auto;
    display: block; }
  .content iframe,
  .content video,
  .content img {
    aspect-ratio: 16 / 9;
    object-fit: cover; }
  .content video {
    margin: 0 0 25px; }
  .content iframe {
    height: auto; }
  .content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {
    font-family: "Montserrat", sans-serif;
    color: #1E6E71;
    line-height: 1.23;
    font-weight: 400;
    margin-bottom: 25px; }
  .content h1 {
    font-size: 30px; }
    @media (max-width: 768px) and (min-width: 401px) {
      .content h1 {
        font-size: calc(5 * ((100vw - 400px) / 368) + 25px); } }
    @media (max-width: 400px) {
      .content h1 {
        font-size:  25px; } }
  .content h2 {
    font-size: 30px; }
    @media (max-width: 768px) and (min-width: 401px) {
      .content h2 {
        font-size: calc(7 * ((100vw - 400px) / 368) + 23px); } }
    @media (max-width: 400px) {
      .content h2 {
        font-size:  23px; } }
  .content h3 {
    padding-right: 70px;
    font-size: 30px; }
    @media (max-width: 768px) and (min-width: 401px) {
      .content h3 {
        font-size: calc(8 * ((100vw - 400px) / 368) + 22px); } }
    @media (max-width: 400px) {
      .content h3 {
        font-size:  22px; } }
  .content h4 {
    font-size: 25px; }
    @media (max-width: 768px) and (min-width: 401px) {
      .content h4 {
        font-size: calc(5 * ((100vw - 400px) / 368) + 20px); } }
    @media (max-width: 400px) {
      .content h4 {
        font-size:  20px; } }
  .content h5 {
    font-size: 25px; }
    @media (max-width: 768px) and (min-width: 401px) {
      .content h5 {
        font-size: calc(5 * ((100vw - 400px) / 368) + 20px); } }
    @media (max-width: 400px) {
      .content h5 {
        font-size:  20px; } }
  .content h6 {
    font-size: 25px; }
    @media (max-width: 768px) and (min-width: 401px) {
      .content h6 {
        font-size: calc(5 * ((100vw - 400px) / 368) + 20px); } }
    @media (max-width: 400px) {
      .content h6 {
        font-size:  20px; } }
  .content p {
    font-size: 17px;
    margin: 0 0 25px; }
  .content p + h1 {
    margin-top: 25px; }
  .content p + h2 {
    margin-top: 25px; }
  .content p + h3 {
    margin-top: 25px; }
  .content p + h4 {
    margin-top: 25px; }
  .content p + h5 {
    margin-top: 25px; }
  .content p + h6 {
    margin-top: 25px; }
  .content .wp-caption + p {
    margin: 25px 0 0; }
  .content strong {
    font-weight: 700; }
  .content em {
    font-style: italic; }
  .content a {
    font-family: "Montserrat", sans-serif;
    color: #6982FF;
    transition: .3s; }
    .content a:hover {
      text-decoration: underline; }
  .content ul, .content ol {
    margin: 40px 0 50px;
    font-size: 17px; }
  .content ul {
    padding: 0 0 0 30px; }
    .content ul li {
      list-style-type: disc; }
      .content ul li + li {
        margin-top: 15px; }
    .content ul + p {
      margin-top: 20px; }
  .content ol {
    padding: 0 0 0 30px; }
    .content ol li {
      list-style-type: decimal; }
      .content ol li + li {
        padding-top: 15px; }
  .content blockquote {
    padding: 35px 10px 35px 30px;
    border-top: 2px dashed #a7aaae;
    border-bottom: 2px dashed #a7aaae;
    margin: 55px 0;
    position: relative; }
    @media (max-width: 1100px) {
      .content blockquote {
        padding: 35px 20px 35px 50px; } }
    .content blockquote:before {
      content: '\E806';
      font-family: fontello;
      position: absolute;
      left: -106px;
      top: 24px;
      color: #6982FF;
      font-size: 36px; }
      @media (max-width: 1100px) {
        .content blockquote:before {
          left: 0; } }
    .content blockquote p {
      font-weight: 700;
      font-size: 17px; }

[class^="icon-"]:before, [class*=" icon-"]:before {
  margin-right: 0 !important;
  margin-left: 0 !important; }

a {
  text-decoration: none;
  color: inherit;
  transition: color .5s, opacity .5s, background .5s; }
  a:focus {
    outline: none; }

button {
  transition: color .5s, opacity .5s, background .5s;
  cursor: pointer; }

.back-img {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }

.rect-outer {
  position: relative; }
  .rect-outer .rect-inner {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0; }

.collapse {
  display: none; }
  .collapse.in {
    display: block; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition-property: height, visibility;
  transition: .35s;
  transition-timing-function: ease; }

body.modal-open {
  overflow: hidden;
  position: static !important;
  height: auto !important; }

.modal {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  margin: 0 69px;
  outline: 0; }
  @media (max-width: 768px) {
    .modal {
      margin: 0 55px; } }
  .modal .close--sketch {
    width: 52px;
    height: 52px;
    position: absolute;
    top: 3px;
    right: -60px;
    display: block;
    z-index: 10;
    border: none;
    cursor: pointer;
    padding: 0;
    outline: none;
    background: #6982FF;
    border-radius: 50%;
    box-shadow: 0 0 0 3px #000, inset 0 0 0 2px rgba(255, 255, 255, 0.15);
    transition: transform .2s ease; }
    @media (max-width: 768px) {
      .modal .close--sketch {
        width: 40px;
        height: 40px;
        right: -47px; } }
    .modal .close--sketch:before, .modal .close--sketch:after {
      content: "";
      position: absolute;
      width: 60%;
      height: 4px;
      background: #fff;
      top: 50%;
      left: 50%;
      border-radius: 4px;
      transform-origin: center; }
    .modal .close--sketch:before {
      transform: translate(-50%, -50%) rotate(45deg); }
    .modal .close--sketch:after {
      transform: translate(-50%, -50%) rotate(-45deg); }
    .modal .close--sketch:hover {
      transform: scale(1.08); }
  .modal .modal-dialog--sketch {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 1020px;
    max-height: 100vh;
    background: #FAE5CE;
    border-radius: 30px;
    overflow: visible; }
    @media (max-width: 768px) {
      .modal .modal-dialog--sketch {
        max-height: 84vh; } }
    @media (max-height: 450px) {
      .modal .modal-dialog--sketch {
        max-height: 70vh; } }
    .modal .modal-dialog--sketch .modal-content {
      background: transparent;
      border: 0;
      padding: 25px;
      max-height: 95vh;
      overflow: hidden;
      position: relative;
      z-index: 2;
      display: flex;
      flex-direction: column;
      min-height: 0; }
      @media (max-width: 768px) {
        .modal .modal-dialog--sketch .modal-content {
          max-height: 84vh; } }
      @media (max-height: 450px) {
        .modal .modal-dialog--sketch .modal-content {
          max-height: 70vh; } }
    .modal .modal-dialog--sketch .modal-body {
      flex: 1 1 auto;
      min-height: 0;
      overflow-y: auto;
      position: relative; }
  .modal .sketch-border {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1; }
  .modal .sketch-border__inner {
    opacity: 0; }

/* backdrop */
.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: white; }
  .modal-backdrop.fade {
    opacity: 0; }
    .modal-backdrop.fade.in {
      opacity: 0.6; }

/* fade */
.fade {
  opacity: 0;
  transition: opacity 0.15s linear; }
  .fade.in {
    opacity: 1; }

.page-404 {
  min-height: calc(100vh - var(--header-height, 0px));
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 60px 20px; }
  .page-404 .container {
    width: 100%; }
  .page-404 .section-title {
    font-size: clamp(48px, 8vw, 120px);
    font-weight: 700;
    line-height: 1;
    color: #6982FF;
    font-family: "Montserrat", sans-serif;
    margin-bottom: 20px; }
  .page-404 .section-subtitle {
    font-size: clamp(18px, 2vw, 24px);
    opacity: 0.7;
    color: #2D2D2D;
    font-family: "Montserrat", sans-serif;
    margin-bottom: 30px; }
  .page-404 .btn-404 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 36px;
    font-size: 16px;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    color: #fff;
    background: #6982FF;
    border-radius: 999px;
    text-decoration: none;
    transition: transform 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
    .page-404 .btn-404:hover {
      transform: translateY(-2px);
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15); }
    .page-404 .btn-404:active {
      transform: translateY(0);
      box-shadow: none; }

/* Hide vertical scrollbar */
html,
body {
  overflow-x: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none; }

html::-webkit-scrollbar,
body::-webkit-scrollbar {
  display: none; }

html.is-mobile-lock,
body.is-mobile-lock {
  overflow: hidden !important;
  height: 100% !important;
  -ms-scroll-chaining: none !important;
      overscroll-behavior: none !important; }

/* Layouts */
.horizontal {
  position: relative;
  overflow: hidden;
  min-height: 100svh;
  background: #626262; }
  .horizontal .horizontal-arrow {
    position: absolute;
    top: 50vh;
    transform: translateY(calc(-50% - 40px));
    z-index: 200;
    width: 109px;
    height: auto;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    pointer-events: auto;
    display: flex;
    align-items: center;
    justify-content: center; }
    @media (max-width: 768px) {
      .horizontal .horizontal-arrow {
        width: 54px;
        height: 54px;
        transform: translateY(calc(-50% - 20px)); } }
    .horizontal .horizontal-arrow img {
      width: 100%;
      height: auto;
      display: block;
      transition: transform .25s ease, opacity .25s ease; }
    .horizontal .horizontal-arrow:hover img {
      transform: scale(1.03); }
    .horizontal .horizontal-arrow.is-disabled {
      opacity: 0.35;
      pointer-events: none; }
  .horizontal .horizontal-arrow--prev {
    left: -2px; }
  .horizontal .horizontal-arrow--next {
    right: -3px; }

.horizontal__inner {
  position: relative;
  width: 11520px;
  height: 1000px; }

.scene-scale {
  position: relative;
  width: 11520px;
  height: 1000px;
  transform-origin: left top;
  will-change: transform; }

.layer,
.hotspots {
  position: absolute;
  top: 0;
  left: 0;
  width: 11520px;
  height: 1000px;
  will-change: transform;
  transform: translateZ(0);
  backface-visibility: hidden; }

.layer img.back {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover; }

/* Hotspots */
.hotspots {
  pointer-events: none; }
  .hotspots .spot {
    position: absolute;
    pointer-events: auto;
    width: 106px;
    height: 94px;
    border: none;
    font-size: 0;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer;
    text-indent: -9999px;
    transition: transform 0.5s ease;
    z-index: 10; }
    .hotspots .spot:first-child {
      width: 134px;
      height: 133px; }
    .hotspots .spot:hover {
      transform: scale(1.05); }

/* Scroll progress */
.scroll-progress {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 8px;
  background: rgba(255, 255, 255, 0.15);
  z-index: 1000; }

.scroll-progress__bar {
  height: 100%;
  transform: scaleX(0);
  transform-origin: left center;
  background: #6982FF; }

/* touch only */
.is-touch-device .horizontal.section-home {
  touch-action: none; }

/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[2]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[4]!./src/fonts/fontello/css/fontello.css ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
@font-face {
  font-display: swap;
  font-family: 'fontello';
  src: url(./fonts/fontello.eot);
  src: url(./fonts/fontello.eot#iefix) format("embedded-opentype"), url(./fonts/fontello.woff2) format("woff2"), url(./fonts/fontello.woff) format("woff"), url(./fonts/fontello.ttf) format("truetype"), url(2a67413eabc93f8092c3.svg?76411224#fontello) format("svg");
  font-weight: normal;
  font-style: normal; }

/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'fontello';
    src: url('../font/fontello.svg?76411224#fontello') format('svg');
  }
}
*/
[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ }

.icon-glass:before {
  content: '\e800'; }

/* '' */
.icon-music:before {
  content: '\e801'; }

/* '' */
.icon-search:before {
  content: '\e802'; }

/* '' */


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