@charset "UTF-8";
/* Author: Martin Mroc */
/* Write: SCSS document*/
/*Google font*/
@font-face {
  font-family: 'Montserrat';
  src: url(/fonts/Montserrat-Regular.eot);
  src: url(/fonts/Montserrat-Regular.eot) format("embedded-opentype"), url(/fonts/Montserrat-Regular.woff), url(/fonts/Montserrat-Regular.ttf); }

@font-face {
  font-family: 'Montserrat-Light';
  src: url(/fonts/Montserrat-Light.eot);
  src: url(/fonts/Montserrat-Light.eot) format("embedded-opentype"), url(/fonts/Montserrat-Light.woff), url(/fonts/Montserrat-Light.ttf); }

@font-face {
  font-family: 'Florencesans';
  src: url(/fonts/Florencesans.eot);
  src: url(/fonts/Florencesans.eot) format("embedded-opentype"), url(/fonts/Florencesans.woff), url(/fonts/Florencesans.ttf); }

/*Mixins*/
/*Variable colors*/
/*Margins*/
.ml15 {
  margin-left: 15px !important; }

.ml0 {
  margin-left: 0px !important; }

.mr15 {
  margin-right: 15px !important; }

.mr0 {
  margin-right: 0px !important; }

.mt15 {
  margin-top: 15px !important; }

.mt0 {
  margin-top: 0px !important; }

.mb15 {
  margin-bottom: 15px !important; }

.mb0 {
  margin-bottom: 0px !important; }

/*Paddings*/
.pl15 {
  padding-left: 15px !important; }

.pl0 {
  padding-left: 0px !important; }

.pr15 {
  padding-right: 15px !important; }

.pr0 {
  padding-right: 0px !important; }

.pt15 {
  padding-top: 15px !important; }

.pt0 {
  padding-top: 0px !important; }

.pb15 {
  padding-bottom: 15px !important; }

.pb0 {
  padding-bottom: 0px !important; }

/*Width*/
.w100 {
  width: 100% !important;
  float: left; }

.mti1 {
  margin-top: -1px !important; }

/*Table align*/
.group {
  display: table;
  position: relative;
  border-collapse: separate; }
  .group .control {
    display: table-cell;
    position: relative;
    z-index: 2;
    float: left;
    width: 100%;
    margin-bottom: 0; }
  .group .addon {
    display: table-cell;
    width: 1%;
    white-space: nowrap;
    vertical-align: middle; }

/*Document*/
html {
  width: 100%;
  min-height: 100%;
  position: relative;
  margin: 0;
  -ms-overflow-style: none;
  scrollbar-width: none; }
  html::-webkit-scrollbar {
    display: none; }

body {
  margin: 0;
  font-family: 'Montserrat', sans-serif;
  background: #ffffff;
  font-size: 14px;
  font-weight: 400; }

::-moz-selection {
  background: #b7f1ff; }

::-webkit-selection {
  background: #b7f1ff; }

::selection {
  background: #b7f1ff; }

a, button, input[type="button"], input[type="submit"] {
  -webkit-transition: 0.2s ease;
  -moz-transition: 0.2s ease;
  -o-transition: 0.2s ease;
  -ms-transition: 0.2s ease;
  transition: 0.2s ease; }
  a:active, button:active, input[type="button"]:active, input[type="submit"]:active {
    -webkit-transition: 0.0s ease;
    -moz-transition: 0.0s ease;
    -o-transition: 0.0s ease;
    -ms-transition: 0.0s ease;
    transition: 0.0s ease; }

/*Navbar*/
.navbar {
  background: none;
  position: fixed;
  width: 100%;
  z-index: 99;
  padding: 0px; }
  .navbar .container {
    justify-content: normal; }
  .navbar .navbar-brand {
    margin: 24px 40px;
    margin-bottom: 0px; }
  .navbar .navbar-wrap {
    margin: 24px 20px;
    margin-bottom: 0px; }
    .navbar .navbar-wrap .btn-nav {
      width: 36px;
      height: 36px;
      border: 1px solid rgba(0, 0, 0, 0.3);
      border-radius: 50%;
      display: block;
      position: relative; }
      .navbar .navbar-wrap .btn-nav:after {
        content: " ";
        width: 4px;
        height: 4px;
        background: #000;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        top: 0;
        margin: auto;
        border-radius: 50%; }

.project-wrap-container {
  overflow: hidden;
  width: 100vw; }

.project-wrap {
  display: flex;
  height: calc(100vh - 84px);
  height: calc(var(--vh, 1vh) * 100 - 84px);
  position: relative;
  width: 10000vw; }
  .project-wrap .project {
    width: 100vw;
    height: 100%;
    position: relative;
    transition: 1s ease;
    -webkit-transition: 1s ease;
    -moz-transition: 1s ease;
    -o-transition: 1s ease; }
  .project-wrap h1 {
    color: #000000;
    font-family: 'Florencesans';
    text-transform: uppercase;
    font-size: 5vw;
    position: absolute;
    left: inherit;
    right: 25px;
    bottom: 0;
    top: 0;
    display: block;
    height: 200px;
    margin: auto; }

.project-image {
  cursor: pointer; }

.circle-wrap .circle {
  position: absolute;
  width: 40vw;
  height: 40vw;
  background: #CEC7C2;
  border-radius: 50%;
  top: 10%;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto; }
  .circle-wrap .circle img {
    width: 20vw;
    position: absolute;
    top: -20%;
    bottom: 0;
    left: -20%;
    right: 0;
    margin: auto; }

.circle-wrap .circle:nth-child(2) {
  width: 15vw;
  height: 15vw;
  left: -70%;
  opacity: 0.8; }

.circle-wrap .circle:nth-child(3) {
  width: 7vw;
  height: 7vw;
  left: -50%;
  top: -50%;
  opacity: 0.6; }

footer {
  display: flex;
  margin: 24px 40px;
  overflow: hidden;
  align-items: center;
  justify-content: space-between; }
  @media (max-width: 599px) {
    footer {
      margin-left: 0;
      margin-right: 0; } }
  @media (max-width: 599px) {
    footer .arrow-wrap {
      display: none; } }
  footer .arrow-wrap a {
    opacity: 0.15; }
  footer .numbers {
    display: flex;
    position: relative; }
    footer .numbers .one-box {
      cursor: pointer;
      display: flex;
      margin: 0 12px;
      align-items: center;
      justify-content: space-between; }
      @media (max-width: 599px) {
        footer .numbers .one-box {
          flex: 1 0 calc(50vw - 30px);
          margin: 0 15px; } }
      footer .numbers .one-box.active .circle-path {
        stroke-dasharray: 100;
        transition-duration: 7s; }
      footer .numbers .one-box .circle {
        color: #000000;
        width: 38px;
        height: 38px;
        position: relative;
        border: 1px solid #ddd;
        border-radius: 50%;
        display: flex;
        flex-shrink: 0;
        text-align: center;
        align-items: center;
        justify-content: space-between; }
        footer .numbers .one-box .circle:hover {
          text-decoration: none; }
        footer .numbers .one-box .circle span {
          width: 100%; }
      footer .numbers .one-box .project-name {
        margin: 0px 12px; }

.main-menu {
  width: 100vw;
  transition: opacity .4s;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  opacity: 0;
  position: fixed;
  background: #000;
  z-index: 999;
  top: 0;
  left: 0;
  color: #fff;
  display: none; }
  .main-menu .navbar .navbar-wrap .btn-nav {
    border: 1px solid rgba(255, 255, 255, 0.3); }
    .main-menu .navbar .navbar-wrap .btn-nav:after {
      background: #fff; }

.circular-chart {
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: -2px; }

.circle-path {
  stroke: #000;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-dasharray: 0, 100;
  transition: all 500ms linear; }

.dummy {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  width: 100vw; }

#contact {
  background-color: #cc0000; }

/*Responsive*/
/* Author: Tomáš Kudláč */
.jump {
  transition: all 0s ease; }

.no-jump {
  transition: all 1s ease; }

#home {
  padding-top: 0; }

.model-canvas-container {
  align-items: center;
  display: flex;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  justify-content: center;
  position: relative; }
  @media (any-hover: hover) {
    .model-canvas-container:hover .cursor {
      display: block; } }

body.grabbing {
  cursor: grabbing;
  cursor: -webkit-grabbing; }
  body.grabbing .cursor {
    cursor: grabbing;
    cursor: -webkit-grabbing; }

body:not(.grabbing) .model-canvas-container:not(.loading) .model-canvas-curtain, body:not(.grabbing) .model-canvas-container:not(.loading) .cursor {
  cursor: grab;
  cursor: -webkit-grab; }

.model-canvas {
  height: calc(100% + 200px);
  position: relative;
  width: 100%; }

.model-canvas-curtain {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  touch-action: pan-y;
  width: 100%;
  z-index: 1; }

#development-bar {
  background-color: white;
  bottom: 0;
  display: none;
  font-size: 20px;
  height: 50px;
  line-height: 50px;
  left: 0;
  position: fixed;
  text-align: center;
  width: 100%; }

@keyframes loading-circle-rotate {
  0% {
    transform: rotate(-90deg); }
  50% {
    transform: rotate(90deg); }
  100% {
    transform: rotate(270deg); } }

.loading-circle-wrapper {
  bottom: 0;
  display: none;
  height: 100px;
  left: 0;
  line-height: 100px;
  margin: auto;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 100px; }
  .loading-circle-wrapper > * {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }
  .loading-circle-wrapper .circle-wrapper {
    z-index: 2;
    stroke-dashoffset: 0;
    transition: stroke-dashoffset 1s linear;
    stroke: #666666;
    stroke-width: 3px; }
  .loading-circle-wrapper .fill-circle {
    transform: rotate(-90deg);
    transform-origin: 50% 50%;
    transition-property: stroke-dashoffset;
    transition-timing-function: ease-in-out; }
    .loading-circle-wrapper .fill-circle:not(.start-circle) {
      display: none; }
  .loading-circle-wrapper .text {
    font-size: 0;
    transition-property: font-size;
    transition-timing-function: ease-in-out; }

@keyframes cursor-mobile-animation {
  0% {
    left: 50%; }
  25% {
    left: 37.5%; }
  75% {
    left: 62.5%; }
  100% {
    left: 50%; } }

.cursor {
  border-radius: 50%;
  height: 70px;
  transform-origin: 0 35px;
  transition: height .25s, width .25s, background-color .25s, border .25s, transform .25s;
  transition-timing-function: ease-in-out;
  width: 70px;
  z-index: 1; }
  .cursor svg {
    height: 100%;
    left: -19.5px;
    position: relative;
    width: 109px; }
  @media (any-hover: none) {
    .cursor {
      bottom: 0;
      left: 50%;
      margin: auto;
      position: absolute;
      top: 0;
      transform: scale(0) translateX(-50%);
      transition: height .25s, width .25s, background-color .25s, border .25s, transform .25s, left .25s; } }
  @media (any-hover: hover) {
    .cursor {
      position: fixed;
      transform: scale(0); } }
  @supports (backdrop-filter: blur(10px)) {
    .cursor {
      backdrop-filter: blur(10px); } }
  @supports not (backdrop-filter: blur(10px)) {
    .cursor {
      background-color: rgba(255, 255, 255, 0.6); } }

.dblclick-cursor {
  border-radius: 50%;
  height: 30px;
  left: calc(100% + 15px);
  position: fixed;
  transition: left .75s, transform .1s;
  transition-timing-function: ease-in-out;
  transform: scale(1) translateX(-50%);
  transform-origin: 0 50%;
  width: 30px;
  z-index: 1; }
  @media (any-hover: hover) {
    .dblclick-cursor {
      display: none; } }
  @supports (backdrop-filter: blur(10px)) {
    .dblclick-cursor {
      backdrop-filter: blur(10px); } }
  @supports not (backdrop-filter: blur(10px)) {
    .dblclick-cursor {
      background-color: rgba(255, 255, 255, 0.6); } }

body {
  height: 300vh;
  height: calc(var(--vh, 1vh) * 300); }

#home {
  background: #ffffff;
  z-index: 2; }

.project-detail-content {
  height: 100%;
  opacity: 0; }
  .project-detail-content.active {
    opacity: 1; }

#loading {
  background-color: rgba(0, 0, 0, 0.8);
  display: block;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  left: 0;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 10; }

section {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  left: 0;
  position: fixed;
  top: 0;
  transition: top 0ms ease-in-out;
  width: 100%; }


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