@charset "UTF-8";
html, body {
  margin: 0px;
  padding: 0px; }

body {
  background-color: white;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover; }

.transition {
  transition: all 0.5s ease;
  transition-delay: 0.1s; }

button:focus {
  outline: 0; }

.inline-block {
  vertical-align: top; }

ul.horizontal > li {
  display: inline-block;
  vertical-align: top; }

.img-overflow {
  width: 123%;
  position: relative;
  right: 10%;
  height: 100%; }

.img-responsive {
  max-width: 100%;
  max-height: 100%; }

.img-cropper {
  width: 200px;
  height: 200px;
  position: relative;
  overflow: hidden;
  border-radius: 50%;
  right: 10px; }

.arrow-down {
  width: 50px; }

.padding {
  padding: 1em; }

.margin-top {
  margin-top: 1em; }

.control-block {
  margin-bottom: 10px; }
  .control-block input, .control-block textarea {
    width: 100%;
    padding: 5px;
    border: 1px solid #352B40; }
  .control-block button {
    padding: 5px 15px 10px 15px;
    background: #352B40;
    border: none;
    color: #F2F2F2; }
    .control-block button:hover {
      background: #F2F2F2;
      color: #352B40; }

.hoverable .on-hover {
  display: none; }

.hoverable:hover .on-hover, .hoverable:active .on-hover {
  display: block; }

.hoverable:hover .on-default, .hoverable:active .on-default {
  display: none; }

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

.absolute {
  position: absolute !important; }

.background-circle {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 200px;
  width: 200px;
  overflow: hidden;
  border-radius: 50%; }

a[data-lightbox]:hover {
  position: relative;
  display: block; }
  a[data-lightbox]:hover:after {
    content: ' ';
    position: absolute;
    top: 30%;
    bottom: 30%;
    left: 30%;
    right: 30%;
    background-image: url(../img/zoom.png);
    background-position: center center;
    background-repeat: no-repeat;
    opacity: 0.3; }
  a[data-lightbox]:hover:before {
    content: ' ';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.2); }

a.dot-hover:hover,
a.dot-hover-inside:hover {
  text-decoration: none; }

a.dot-hover:hover,
a.dot-hover-inside:hover h3 {
  position: relative; }
  a.dot-hover:hover:before,
  a.dot-hover-inside:hover h3:before {
    content: "•";
    color: white;
    width: 1em;
    position: absolute;
    left: -15px; }

a.dot-hover-inside:hover h3:before {
  color: #352B40;
  left: -35px; }

@font-face {
  font-family: "PT Sans";
  src: url(../fonts/PT-Sans.ttf) format("truetype"); }

@font-face {
  font-family: "PT Sans Bold";
  src: url(../fonts/PT-Sans-Bold.ttf) format("truetype"); }

@font-face {
  font-family: "PT Sans Caption";
  src: url(../fonts/PT-Sans-Caption.ttf) format("truetype"); }

@font-face {
  font-family: "PT Sans Caption Bold";
  src: url(../fonts/PT-Sans-Caption-Bold.ttf) format("truetype"); }

@font-face {
  font-family: "PT Sans Narrow";
  src: url(../fonts/PT-Sans-Narrow.ttf) format("truetype"); }

@font-face {
  font-family: "PT Sans Narrow Bold";
  src: url(../fonts/PT-Sans-Narrow-Bold.ttf) format("truetype"); }

@font-face {
  font-family: "Amatic Bold";
  src: url(../fonts/Amatic-Bold.ttf) format("truetype"); }

@font-face {
  font-family: "AmaticSC Regular";
  src: url(../fonts/AmaticSC-Regular.ttf) format("truetype"); }

@font-face {
  font-family: "HelveticaNeueCyr Thin";
  src: url(../fonts/HelveticaNeueCyr-Thin.otf) format("truetype"); }

::-webkit-input-placeholder {
  color: #FFFFFF !important;
  font-family: "PT Sans Narrow";
  font-size: 25pt; }

::-moz-placeholder {
  color: #FFFFFF !important;
  font-family: "PT Sans Narrow";
  font-size: 25pt; }

/* Firefox 19+ */
:-moz-placeholder {
  color: #FFFFFF !important;
  font-family: "PT Sans Narrow";
  font-size: 25pt; }

/* Firefox 18- */
:-ms-input-placeholder {
  color: #FFFFFF !important;
  font-family: "PT Sans Narrow";
  font-size: 25pt; }

h1, h2, h3, h4, h5 {
  font-family: "HelveticaNeueCyr Thin";
  margin: 20px 0;
  line-height: 1; }

h1, h2 {
  text-transform: uppercase; }

body {
  font-family: "HelveticaNeueCyr Thin";
  font-size: 21px;
  line-height: 22px;
  letter-spacing: 0.0025em; }

a, a:hover {
  color: #352B40; }

a:hover {
  text-decoration: underline; }

header {
  font-size: 37px;
  font-family: "Amatic Bold";
  line-height: 53px; }
  header a, header a:hover {
    color: #F2F2F2; }
  header li.active a, header li.active a:hover, header li.active a, header li.active a:hover {
    color: #352B40; }

footer {
  font-size: 13px;
  color: #F2F2F2;
  font-family: "HelveticaNeueCyr Thin"; }

h1 {
  font-size: 90px;
  font-family: "Amatic Bold";
  line-height: 0.8; }

h2 {
  font-size: 65px;
  line-height: 65px;
  font-family: "Amatic Bold"; }

h3 {
  font-size: 37px;
  font-family: "Amatic Bold"; }

h4 {
  font-size: 30px;
  font-family: "Amatic Bold"; }

small {
  font-size: 13px;
  line-height: 13px; }

.sub-font, .sub-font > *, .sub-font * {
  font-family: "Amatic Bold"; }

html {
  overflow-x: hidden; }

body {
  background: #F2F2F2;
  height: 100vh;
  overflow-x: hidden; }

header {
  padding-top: 50px; }
  header .nav-line {
    background: #352B40; }
    header .nav-line .logo {
      height: 1px;
      position: relative; }
      header .nav-line .logo, header .nav-line .logo a {
        width: 120px; }
      header .nav-line .logo a {
        position: absolute;
        top: -30px;
        left: 0; }
  header .main-menu {
    width: calc(100% - 180px); }
    header .main-menu li {
      padding: 0px 20px; }
      header .main-menu li.active {
        background: #F2F2F2; }

footer {
  background: #352B40;
  text-align: center;
  padding: 10px 0;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0; }
  footer .credits {
    display: inline-block; }

section#content {
  padding: 70px 0; }

.main-image img {
  max-height: 350px; }

section.blog-article {
  margin-bottom: 50px; }

.all-tags {
  position: fixed;
  margin-top: 50px; }

.contact {
  position: relative; }
  .contact .socnets {
    text-align: left; }
    .contact .socnets > div {
      height: 40px;
      display: inline-block; }
      .contact .socnets > div:not(:first-child) {
        margin-left: 10px; }
      .contact .socnets > div img {
        max-width: 100%;
        max-height: 100%; }
  .contact .dude {
    position: absolute;
    bottom: 70px;
    right: 0; }
    .contact .dude img {
      height: 300px; }
  .contact .socnets-logos {
    margin: -10px; }
  .contact .socnets-logos > * {
    height: 100px;
    margin: 10px; }
  .contact .socnets-logos a:hover img {
    opacity: 0.5; }

section.blog-article .blog-content img {
  display: block;
  margin: auto;
  width: 70%;
  max-width: 100%;
  height: auto !important; }

section.blog-article .blog-content .slick-slide img,
.project-content .slick-slide img {
  display: block;
  height: 400px;
  margin: 0 5px;
  width: auto; }

.project-content p img {
  max-width: 70%;
  height: auto !important;
  margin: auto;
  display: block; }

section.shop .row.items {
  margin: -30px; }

section.shop .row.items > * {
  padding: 30px; }
  section.shop .row.items > * a {
    text-decoration: none;
    border: 1px solid black;
    display: block;
    padding: 15px;
    height: 100%; }
    section.shop .row.items > * a:hover {
      border: 2px solid black; }
    section.shop .row.items > * a .img-responsive {
      max-height: 55%;
      max-width: 80%; }
  section.shop .row.items > *.col-md-4 {
    height: 300px; }
  section.shop .row.items > *.col-md-6 {
    height: 250px; }

section.shop .row.refferal {
  margin-top: 200px;
  margin-bottom: 100px; }
  section.shop .row.refferal .refferal-block {
    position: relative;
    left: 27%; }

.slick-prev:before, .slick-next:before {
  color: #352B40; }

.images {
  display: flex;
  justify-content: space-between;
  position: relative; }
  .images > div {
    width: 30%;
    margin-bottom: 15px; }
    .images > div > a {
      padding: 0 !important; }
      .images > div > a > img {
        max-width: 100% !important;
        width: 100% !important; }

a[data-lightbox]:hover:after {
  background-size: contain; }

.page-button {
  font-size: 25px;
  font-family: "Amatic Bold";
  line-height: 1.1;
  background: #352B40;
  color: #F2F2F2;
  letter-spacing: 4px;
  padding: 10px 65px;
  display: inline-block;
  border: 1px solid #352B40;
  border-radius: 3px; }
  .page-button:hover {
    background: #F2F2F2;
    color: #352B40;
    text-decoration: none; }

/* xs */
@media (max-width: 639px) {
  header .nav-line > .container {
    text-align: center; }
  header .main-menu {
    display: none;
    width: 100%;
    padding: 40px 0; }
    header .main-menu li {
      width: 100%;
      float: none;
      text-align: center;
      padding: 0; }
  section#content > .row {
    margin: 0;
    padding: 0 50px; }
    section#content > .row > * {
      margin: auto;
      width: 100%;
      float: none; }
      section#content > .row > * .background-circle {
        position: static;
        right: 0;
        margin: auto; }
  .main-menu-button {
    position: relative; }
    .main-menu-button button {
      position: absolute;
      top: 2px;
      left: 0;
      background: transparent;
      border: none; }
      .main-menu-button button .icono-hamburger {
        width: 25px;
        height: 3px;
        border-radius: 10px; }
  .header-current-page {
    position: relative; }
    .header-current-page > * {
      margin: 0;
      width: 120px;
      position: absolute;
      top: -2px;
      right: 0; }
  .all-tags {
    padding: 0 10px;
    position: static;
    margin-top: -20px; }
    .all-tags > * {
      display: inline-block; }
  .blog-article {
    padding: 0 10px; }
    .blog-article > .row {
      margin: 0; }
      .blog-article > .row > * {
        width: 100%; }
        .blog-article > .row > * .img-overflow {
          position: static;
          right: 0;
          margin: auto; }
  .container > .row {
    margin-left: 10px;
    margin-right: 10px; }
  .images {
    flex-direction: column; }
    .images > div {
      width: 100%; } }

/* xs */
@media (max-width: 639px) {
  .main-image img {
    margin: auto;
    display: block; }
  .header-current-page h4 {
    margin-top: 8px; } }

/* sm */
@media (min-width: 640px) {
  .main-menu-button,
  .header-current-page {
    display: none; } }

/* md */
/* lg */
