@font-face {
    font-family: 'Butler';
    src: url('../fonts/butler_regular-webfont.eot');
    src: url('../fonts/butler_regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/butler_regular-webfont.woff2') format('woff2'),
         url('../fonts/butler_regular-webfont.woff') format('woff'),
         url('../fonts/butler_regular-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Butler';
    src: url('../fonts/butler_bold-webfont.eot');
    src: url('../fonts/butler_bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/butler_bold-webfont.woff2') format('woff2'),
         url('../fonts/butler_bold-webfont.woff') format('woff'),
         url('../fonts/butler_bold-webfont.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;

}

@font-face {
    font-family: 'Butler';
    src: url('../fonts/butler_extrabold-webfont.eot');
    src: url('../fonts/butler_extrabold-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/butler_extrabold-webfont.woff2') format('woff2'),
         url('../fonts/butler_extrabold-webfont.woff') format('woff'),
         url('../fonts/butler_extrabold-webfont.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'Butler Stencil Bold';
    font-style: normal;
    font-weight: normal;
    src: local('Butler Stencil Bold'),
         url('../fonts/Butler_Bold_Stencil.woff') format('woff');
}
.font-libre {
    font-family: 'Libre Baskerville', serif;
}
.contact-item, .twitter-item {
    margin-bottom: .875rem;
}
.contact-item a {color:#fff;text-decoration: underline;}
a.phone-link {
    color: inherit;
    text-decoration: none;
    cursor: default;
}

.video-bnr {
  position: relative;
  margin-bottom: -15.375rem;
  height: 37.5rem;
}

.video-container {
  position: absolute;
  z-index: 20;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden;
}

.video-container:before {
  content: "";
  display: block;
  position: absolute;
  z-index: 600;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #000000;
  opacity: .35;
  pointer-events: none;
}

.video-item {
  display: none;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  position: absolute;
  left: 0;
  top: 0;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.video-item.is-active {
  display: block;
}

.video-container iframe {
  border: none;
  margin: 0;
  padding: 0;
  height: 500%;
  width: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.circular-container {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 10%;
  right:  10%;
  z-index: 21;
  width: 80%;
  height: 100%;
  opacity: 1;
  transition: opacity .3s ease-in-out;
}

.circular-container.is-active{
  opacity: 1;
  transition: opacity .5s ease-out .8s;
}

.circular-names {
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (max-width: 767px) {
  .circular-container {
    display: none;
  }
}

.circular-container .circular-wrapper {
  position: relative;
  width: 59.72222222vmin;
  height: auto;
  margin-top: 7.96296296vmin;
}

.circular-container .circular-wrapper .circular-names li {
  display: flex;
  flex-direction: column;
  position: absolute;
  z-index: 300;
  overflow: hidden;
  padding-bottom: 0;
  color: #ffffff;
  font-size: 1.125rem;
  line-height: 1.5;
  text-transform: uppercase;
  cursor: pointer;
  letter-spacing: .08333333em;
}

.circular-container .circular-wrapper .circular-names li .name-wrapper {
  display: inline-block;
  padding: 10px;
  padding-bottom: 0;
  white-space: nowrap;
  transition: transform 1s cubic-bezier(.23,1,.32,1);
}

.circular-container .circular-wrapper .circular-names li .name-wrapper-date {
  padding-top: 0;
  padding-bottom: 10px;
  font-size: .875rem;
  white-space: nowrap;
  opacity: .7;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="1"] {
  bottom: 61.8%;
  left: 98%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="2"] {
  top: 87.65%;
  left: 80%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="3"] {
  top: 87.65%;
  right: 80%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] {
  right: 98%;
  bottom: 61.8%;
}

@media (max-width: 960px) {
  .circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] {
  bottom: 58.6%;
  }

  .circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] .name-wrapper {
  white-space: normal;
  }
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="5"] {
  bottom: 99.5%;
  left: 48.5%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="1"] .name-wrapper,
.circular-container .circular-wrapper .circular-names li[data-portrait-index="2"] .name-wrapper,
.circular-container .circular-wrapper .circular-names li[data-portrait-index="5"] .name-wrapper {
  transform: translate3d(-100%,0,0);
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="3"],
.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] {
  text-align: right;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="3"] .name-wrapper,
.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] .name-wrapper {
  transform: translate3d(100%,0,0);
}

.circular-container .circular-wrapper .circular-names li.is-active .name-wrapper {
  transform: translateZ(0);
  transition: transform 1s cubic-bezier(.23,1,.32,1) .8s;
}

.circular-container .circular-wrapper .circular-names li.is-init .name-wrapper {
  transform: translateZ(0);
  transition: transform 1s cubic-bezier(.23,1,.32,1) 0s;
}

.circular-container svg {
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.circular-container svg .circle-path.circle-path--background {
  opacity: .2;
}

.circular-container svg .circle-path.circle-path--background circle {
  stroke-dasharray: 2644;
  stroke-dashoffset: 2644;
}

.circular-container svg .circle-path.circle-path--fill {
  opacity: 1;
}

.circular-container svg .circle-path.circle-path--fill circle {
  stroke-dasharray: 2644;
  stroke-dashoffset: 2644;
}

.circular-container svg .circle-path circle{
  fill: none;
  stroke-width: 2;
  stroke: #fff;
  stroke-miterlimit: 10;
}

.circular-container svg .circle-dot {
  position: relative;
  cursor: pointer;
}

.circular-container svg .circle-dot .circle-outside {
  fill: none;
  stroke-width: 2;
  stroke: #fff;
  opacity: 0.2;
  stroke-miterlimit: 10;
}

.circular-container svg .circle-dot .circle-center {
  fill: #fff;
  stroke: none;
  opacity: 0;
  transition: opacity .6s cubic-bezier(.23,1,.32,1),transform 1s cubic-bezier(.23,1,.32,1);
}

.circular-container svg .circle-dot:hover .circle-center {
  opacity: 1;
}

.circular-container svg .circle-dot.is-active .circle-center {
  opacity: 1;
  transition: opacity .6s cubic-bezier(.23,1,.32,1) 1s,transform 1s cubic-bezier(.23,1,.32,1);
}




.video-text-container {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 400;
  left: 50%;
  top: 0;
  transform: translate(-50%, 0);
  color: #ffffff;
}

.video-text-item.is-active {
  visibility: visible;
}

.video-item-title {
  font-family: var(--primary_font);
  margin-bottom: .5rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 5.55555556vmin;
  font-weight: bold;
  letter-spacing: -.05em;
  line-height: 1.2;
  color:#fff;
}

.video-text-container a {
  pointer-events: all;
  color: inherit;
}

.video-item-title-sub {
  font-size: 1rem;
  text-transform: uppercase;
}

.video-item-title-sub:first-child {
  margin-bottom: .5rem;
}

.video-item-descr {
  margin-top: 4.07407407vmin;
  margin-bottom: 4vmin;
  overflow: hidden;
  height: auto;
  line-height: 1.875;
  font-size: 1rem;
  color: #cccccc;
}

.video-item-more {
  font-size: 1.125rem;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: .25em;
}

@media (min-width: 768px) {
  .video-text-container {
    width: 59.72222222vmin;
    pointer-events: none;
  }

  .video-item-descr {
    height: 9.375em;
    height: 13.88888889vmin;
    margin-bottom: 2.59259259vmin;
  }

  .video-text-item {
    visibility: hidden;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    padding-left: 2rem;
    padding-right: 2rem;
    margin-top: 16.962963vmin;
    text-align: center;
    transform: translate(0, -50%);
  }
}

@media (max-width: 767px) {
  .video-text-container {
    display: flex !important;
  }

  .video-text-container .owl-stage-outer,
  .video-text-container .owl-stage,
  .video-text-container .owl-item {
    height: 100%;
  }

  .video-text-item {
    height: 100%;
    position: relative;
  }

  .video-text-item > .inside {
    position: absolute;
    z-index: 20;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 92%;
    text-align: center;
  }

  .video-text-container.owl-theme .owl-dots {
    position: absolute;
    top: 80%;
    left: 10%;
    right: 10%;
    text-align: center;
  }

  .video-text-container.owl-theme .owl-dots .owl-dot span:before {
    background: #ffffff;
  }

  .video-text-container.owl-theme .owl-dots .owl-dot.active span {
    border-color: #ffffff;
    background: rgba(255,255,255,.1);
  }

  .mobile-video-bg {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 10;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
  }

  .mobile-video-bg:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #000000;
    opacity: .35;
  }

  .promo-video-container {
    position: relative;
    z-index: 200;
  }
}

.video-item-more i {
  margin-left: 1.25rem;
}

.video-text-item > .inside > * {
  transform: translateY(10vmin);
  opacity: 0;
}

.video-text-item.is-active > .inside > .video-item-title-sub,
.video-text-item.is-active > .inside > .video-item-title:first-child {
  animation: videoText 2s ease-in-out forwards;
  animation-delay: 0s;
}

.video-text-item.is-active > .inside > .video-item-title-sub + .video-item-title,
.video-text-item.is-active > .inside > .video-item-title + .video-item-title-sub {
  animation: videoText 2s ease-in-out forwards;
  animation-delay: .15s;
}

.video-text-item.is-active > .inside > .video-item-descr {
  animation: videoText2 .5s ease-in-out forwards;
  animation-delay: 1.8s;
}

.video-text-item.is-active > .inside > .video-item-more {
  animation: videoText2 .5s ease-in-out forwards;
  animation-delay: 1.95s;
}

@-webkit-keyframes videoText {
  0% {
    opacity: 0;
    transform: translateY(24vmin);
  }
  30% {
    opacity: 1;
    transform: translateY(12vmin);
  }
  70% {
    transform: translateY(12vmin);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}

@keyframes videoText {
  0% {
    opacity: 0;
    transform: translateY(24vmin);
  }
  30% {
    opacity: 1;
    transform: translateY(12vmin);
  }
  70% {
    transform: translateY(12vmin);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}

@-webkit-keyframes videoText2 {
  0% {
    opacity: 0;
    transform: translateY(5vmin);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}

@keyframes videoText2 {
  0% {
    opacity: 0;
    transform: translateY(5vmin);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}


/*-------------------------------------------------------------------------------
  4. Home Horizontal
-------------------------------------------------------------------------------*/

/* 4.1 Home Horizontal Navs */

.horizontal-nav {
  width: 100%;
  position: fixed;
  z-index: 300;
  bottom: 5.55555556vmin;
  left: 0;
}

.horizontal-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.horizontal-nav li {
  float: left;
  height: 2px;
  width: 3rem;
  background: #ff3600;
  overflow: hidden;
  transition: background .5s ease-in-out;
  position: relative;
}

.horizontal-nav li:before {
  content: "";
  display: block;
  width: 0;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #ff3600;
}

.horizontal-nav li.active:before {
  animation: navWidth .5s ease-in-out forwards;
}

@-webkit-keyframes navWidth {
  0%   {width: 0;}
  100% {width: 100%;}
}

@keyframes navWidth {
  0%   {width: 0;}
  100% {width: 100%;}
}


.horizontal-nav li.active,
.horizontal-nav li.active ~ li {
  background: #cccccc;
}

.horizontal-nav li:before {
  width: 100%;
}

.horizontal-nav li.active ~ li:before {
  width: 0%;
}

.horizontal-controls {
  position: absolute;
  right: 15px;
  bottom: -.625rem;
}

@media (min-width: 992px) {
  .horizontal-nav li {
    width: 6.25rem;
  }
}

@media (min-width: 1600px) {
  .horizontal-controls {
    right: 3.75rem;
  }
}

.horizontal-controls button {
  border: none;
  background: transparent;
  padding: 0;
  margin: 0;
  color: #999999;
  font-weight: bold;
  text-transform: uppercase;
  transition: all .2s ease-in-out;
}

.horizontal-controls button:hover {
  color: #000000;
}

.horizontal-controls .divider {
  margin-left: 1.625rem;
  margin-right: 1.625rem;
  font-weight: normal;
  color: #cccccc;
}



/* 4.2 Home Horizontal Setting */

.home-horizontal .section {
  transition: transform 1.5s ease-in-out;
}

.home-horizontal .active + .section {
  transform: translate3d(30%, 0px, 0px) !important;
}

.home-horizontal .section.active {
  transform: translate3d(0, 0px, 0px);
}

.pp-scrollable {
  overflow-x: hidden;
  overflow-y: auto;
}

.slide {
  background: #ffffff;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 0;
  padding-bottom: 0;
  min-height: 100vh;
}

.slide-container {
  position: relative;
  min-height: 100vh;
  padding-top: 9rem;
  padding-bottom: 4rem;
}

@media (min-width: 992px) {
  .slide-container {
    padding-top: 15vmin;
    padding-bottom: 7vmin;
  }
}

@media (min-width: 1400px) {
  .slide-container {
    padding-top: 21.66666667vmin;
  }
}

.slide-dark {
  background-color: #0c0c0c;
  color: #ffffff;
}

.slide-container .video-container {
  display: none;
  pointer-events: none;
}

.slide-container .video-container:before {
  display: none;
}

.slide-bg,
.slide-bg > .inside {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
  background-position: 70% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.slide-bg {
  overflow: hidden;
}

.home-horizontal .slide1 .slide-bg > .inside {
  background-image: url("../img/bg-horizontal1_.jpg");
}

.home-horizontal .slide3 .slide-bg > .inside {
  background-image: url("../img/bg-horizontal3.jpg");
}

.home-horizontal .slide5 .slide-bg > .inside {
  background-image: url("../img/bg-horizontal5.jpg");
}

.slide-container .container {
  /*position: relative;*/
  z-index: 100;
}

.slide [class^="col-"] {
  position: static;
}

.num {
  font-size: 3.75rem;
  font-size: 5.55555556vmin;
  font-weight: 500;
  line-height: 1;
  font-family: 'Teko', sans-serif;
}

.slide-num {
  margin-bottom: 1.5vmin;
}

@media (min-width: 1400px) {
  .slide-num {
    position: absolute;
    left: 15px;
    top: 22.22222222vmin;
  }
}

@media (min-width: 1600px) {
  .slide-num {
    left: 3.75rem;
  }
}

.slide-content {
  min-height: 50vmin;
  margin-bottom: 3vmin;
}

.slide-video-container {
  position: absolute;
  z-index: 100;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}

.home-horizontal h1,
.home-horizontal .h1 {
  margin-left: -.25rem;
  margin-bottom: 4.07407407vmin;
  font-size: 12.03703704vmin;
  text-transform: uppercase;
  line-height: .92307692;
  font-weight: normal;
}

.home-horizontal .slide5 h1,
.home-horizontal .slide5 .h1 {
  font-size: 11.11111111vmin;
}

.home-horizontal h2,
.home-horizontal .h2 {
  font-size: 6.66666667vmin;
  text-transform: uppercase;
  line-height: .92307692;
  font-weight: normal;
}

.horizontal-top-title {
  margin-top: .925925926vmin;
  margin-bottom: 4.44444444vmin;
  font-size: 1.25rem;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: .5px;
  line-height: .92307692;
}

.slide-title-sub {
  margin-bottom: 2.12962963vmin;
  font-size: 1.875rem;
  text-transform: uppercase;
  line-height: .92307692;
  letter-spacing: .5px;
}

.slide-descr {
  color: #999999;
  line-height: 1.625;
}

.home-horizontal .slide2 .slide-descr {
  line-height: 1.875;
}

.home-horizontal .slide1 .slide-photo {
  position: absolute;
  height: 70.92592593%;
  left: 46.875%;
  right: 0;
  top: 13.24074074%;
  z-index: -1;
}

.home-horizontal .slide1 .slide-photo img {
  height: 100%;
  width: auto;
  max-width: none;
}

.btn-play {
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  padding: 0;
  background: transparent;
  border: #ff3600 2px solid;
  width: 6.48148148vmin;
  height: 6.48148148vmin;
  min-width: 3rem;
  min-height: 3rem;
  line-height: 2.5rem;
  border-radius: 4.375rem;
  text-align: center;
  transition: all .3s ease-in-out;
  font-size: 1.5rem;
  color: #ffffff;
}

.btn-play:hover {
  background: #ff3600;
  text-decoration: none;
}

.btn-play .ion-ios-play {
  margin-left: .25rem;
  width: auto;
  height: auto;
}

button.btn-play i,
button.btn-play i:before {
  display: block;
  line-height: 1;
  width: auto;
  height: auto;
  margin-left: 0;
}

a.btn-play i {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}

.btn-play-lg {
  border: #ffffff 2px solid;
  padding: 0 0 0 .75rem;
  min-width: 6.875rem;
  min-height: 6.875rem;
  line-height: 6.2rem;
  font-size: 4.5rem;
  color: #ffffff;
}

.btn-play-lg:hover {
  border-color: #ff3600;
}

.media-title {
  margin-top: .55555556vmin; 
  margin-bottom: 3rem;
}

.media-title h2,
.media-title .h2 {
  margin-right: 2.375rem;
}

@media (min-width: 992px) {
  .media-title {
    display: flex;
    margin-bottom: 0;
  }
}

.horizontal-service-list {
  margin-top: 3.33333333vmin;
}

.horizontal-service-list > div {
  display: flex;
}

.horizontal-service-item {
  border: #e1e1e1 1px solid;
  padding: 3.88888889vmin 3.125rem 5.09259259vmin;
  position: relative;
  margin-top: 4.62962963vmin;
  display: flex;
  flex-direction: column;
}

.horizontal-service-item:before {
  content: "";
  display: block;
  height: 4px;
  width: 0;
  position: absolute;
  left: -1px;
  right: -1px;
  bottom: -1px;
  background: #ff3600;
  transition: width .3s ease-in-out;
}

.horizontal-service-item:hover:before {
  width: calc(100% + 2px);
}

.horizontal-service-item .num {
  color: #cccccc;
  font-weight: normal;
}

.horizontal-service-item .num,
.horizontal-service-item-photo {
  margin-bottom: 3.51851852vmin;
}

.horizontal-service-item-photo img.photo-position {
  position: absolute;
  top: -3.125rem;
  left: 36.48648649%;
  max-width: 67.83783784%;
  height: auto;
}

.horizontal-service-item-photo.photo3 img.photo-position {
  top: -3.75rem;
}

.horizontal-service-item-title {
  margin-bottom: 2.59259259vmin;
  font-size: 2.25rem;
  font-family: 'Teko', sans-serif;
  text-transform: uppercase;
  line-height: 1.11111111;
}

.horizontal-service-item-descr {
  height: 100%;
  padding-bottom: 5.37037037vmin;
  line-height: 1.625rem;
}

.horizontal-service-item-title,
.horizontal-service-item-descr {
  position: relative;
  z-index: 100;
}

.horizontal-more-total {
  border-bottom: #000000 1px solid;
  color: #000000;
  text-transform: uppercase;
  letter-spacing: .5px;
  text-decoration: none;
}

.slide-dark a:not(.btn),
.slide-dark a:not(.btn):hover {
  border-bottom-color: #ffffff;
  color: #ffffff;
  text-decoration: none;
}

.slide-dark a.underline {
  text-decoration: underline;
}

.home-horizontal .partner-list {
  margin-top: 6.48148148vmin;
}

.slide-contact-address {
  margin-bottom: 7.03703704vmin;
  font-size: 1.25rem;
  color: #999999;
}

.slide-contact-mail,
.slide-contact-phone {
  margin-bottom: 2.77777778vmin;
  font-size: 2.25rem;
  font-weight: bold;
  letter-spacing: -.5px;
}

.slide5 .slide-title {
  margin-bottom: .8125rem;
}



/* 4.3 Home Horizontal Animation */

.slide-num {
  opacity: 0;
  transition: all .3s ease-in-out;
  transition-delay: 1.5s;
}

.home-horizontal .section.active .slide-num {
  opacity: 1;
}

.home-horizontal .slide-title,
.home-horizontal .slide-body {
  opacity: 0;
  transform: translateX(-200px);
  transition: all .5s ease-in-out;
}

.home-horizontal .slide-body {
  transition-delay: .2s;
}

.home-horizontal .active + .section .slide-title,
.home-horizontal .active + .section .slide-body {
  opacity: 0;
  transform: translateX(400px);
}

.home-horizontal .section.active .slide-title,
.home-horizontal .section.active .slide-body {
  opacity: 1;
  transform: translateX(0);
}

.home-horizontal .active + .section .slide-title,
.home-horizontal .section.active .slide-title {
  transition-delay: .7s;
}

.home-horizontal .active + .section .slide-body,
.home-horizontal .section.active .slide-body {
  transition-delay: .9s;
}

.home-horizontal .slide-note {
  opacity: 0;
  transition: all .5s ease-in-out;
  transition-delay: 1.2s;
}

.home-horizontal .section.active .slide-note {
  opacity: 1;
}

.slide-bg > .inside {
  transition: transform .8s ease-in-out;
  transform: scale(1.08);
  transition-delay: .8s;
}

.section.active .slide-bg > .inside {
  transform: scale(1);
}



/* 4.4 Home Horizontal Dark Settings */

.dark-horizontal .header,
.dark-horizontal .social-fixed a,
.dark-horizontal .establised,
.dark-horizontal .copyright-fixed,
.dark-horizontal .social-rounded-fixed a,
.dark-horizontal .navbar-nav > ul > li > a {
  color: #ffffff;
}

.dark-horizontal .stick,
.dark-horizontal #pp-nav span,
.dark-horizontal .pp-slidesNav span {
  background: #ffffff !important;
}

.dark-horizontal .horizontal-nav li.active,
.dark-horizontal .horizontal-nav li.active ~ li {
  background: #333333;
}

.dark-horizontal .horizontal-controls button {
  color: #666666;
}

.dark-horizontal .horizontal-controls button:hover {
  color: #ffffff;
}

.dark-horizontal .social-rounded-fixed a {
  border-color: #ffffff;
}



.social {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 1.125rem;
}

.footer-content .social {
  margin-top: 3.125rem;
}

.social li {
  display: inline-block;
  vertical-align: top;
  margin-right: 1.5rem;
  margin-bottom: .5rem;
}

.social a {
  transition: color .2s ease-in-out;
  color: #000000;
}

.social a:hover {
  color: #b11d11;
  text-decoration: none;
}

.social-rounded {
  margin-right: -.625rem;
  font-size: 20px;
}

.social-rounded li {
  margin-right: .625rem;
  margin-bottom: 1rem;
}

.social-rounded a {
  display: inline-block;
  border-radius: 2.5rem;
  width: 2.5rem;
  height: 2.5rem;
  border: #cccccc 1px solid;
  background: transparent;
  text-align: center;
  line-height: 2.3rem;
  transition: all .2s ease-in-out;
}

.social-rounded a:hover {
  background: #b11d11;
  border-color: #b11d11;
  color: #ffffff;
}

.social-rounded i {
  display: inline-block;
  vertical-align: middle;
  line-height: .75;
}

.social-rounded i:before {
  display: block;
  line-height: .75;
}

.social-rounded .socicon-twitter,
.social-rounded .socicon-facebook,
.social-rounded .socicon-tumblr,
.social-follow {
  font-size: 1rem;
}

.social-rounded .socicon-rss {
  font-size: .875rem;
}

.social-follow li {
  vertical-align: middle;
  margin-right: .25rem;
  margin-bottom: .5rem;
}

.social .social-title {
  padding-bottom: .125rem;
  margin-right: 1rem;
  font-size: .875rem;
  text-transform: uppercase;
  color: #999999;
}

.social-follow a {
  width: 1.875rem;
  height: 1.875rem;
  line-height: 1.65;
  color: #ffffff;
}

.social-rounded .follow-facebook {
  background: #3b5999;
  border-color: #3b5999;
}

.social-rounded .follow-twitter {
  background: #55acee;
  border-color: #55acee;
}

.social-rounded .follow-googleplus {
  background: #dd4b39;
  border-color: #dd4b39;
}

.social-rounded.social-follow i {
  font-size: .75rem;
}

.social-rounded.social-follow .socicon-googleplus {
  font-size: 1rem;
}

.social-rounded .follow-tumblr {
  background: #2b4b6a;
  border-color: #2b4b6a;
}

.social-rounded .follow-rss {
  background: #fb7000;
  border-color: #fb7000;
}

.social-fixed,
.social-rounded-fixed {
  position: fixed;
  left: 15px;
  bottom: 0;
  z-index: 400;
}

.social-fixed li {
  display: block;
  margin-right: 0;
  margin-bottom: 2.125rem;
}

.social-rounded-fixed {
  left: auto;
  right: 15px;
  margin-right: -.625rem;
  bottom: 4.62962963vmin;
}

.social-rounded-fixed li {
  margin-bottom: 0;
}

.social-rounded-dark a {
  border-color: #000000;
}

.socicon-facebook {
  font-size: 1.1875rem;
}

.socicon-googleplus {
  font-size: 1.375rem;
}

.ion-social-rss {
  font-size: 16px;
}

.ion-social-twitter,
.ion-social-vimeo,
.ion-social-facebook {
  font-size: 18px;
}
.full-height {
    min-height: 100vh;
}

.home-flash-dark a, .dark-horizontal a, .home-flash-dark strong, .home-flash.dark-horizontal strong, .home-flash-dark h1, .home-flash.dark-horizontal h1, .home-flash-dark .h1, .home-flash.dark-horizontal .h1, .home-flash-dark h2, .home-flash.dark-horizontal h2, .home-flash-dark .h2, .home-flash.dark-horizontal .h2, .home-flash-dark h3, .home-flash.dark-horizontal h3, .home-flash-dark .h3, .home-flash.dark-horizontal .h3 {
    color: #ffffff;
}
@media (min-width: 1600px) {
  .social-fixed {
    left: 3.75rem;
  }

  .social-rounded-fixed {
    right: 3.75rem;
  }

  .copyright-fixed {
    left: 3.75rem;
  }

  .establised {
    left: 5rem;
  }
}
.slide-dark {
    background-color: #0c0c0c;
    color: #ffffff;
}
.slide-dark a, .slide-dark h1, .slide-dark h3, .slide-dark h2 {color:#fff !important;}
.font-teko {
    font-family: 'Teko', sans-serif !important;
}
.theme-orange .navbar-nav a:before, .theme-orange .menu-main a:before, .theme-orange .menu-lang-item.active, .theme-orange .menu-lang-item:hover, .theme-orange .nav-toggle-btn:hover, .theme-orange .text-primary, .theme-orange a.text-primary:hover, .theme-orange .social:not(.social-rounded) a:hover, .theme-orange .article-item-category, .theme-orange .article-item-category a, .theme-orange .pager a:hover, .theme-orange .article-item-info a:hover, .theme-orange .article-item-mini .article-item-title a:hover, .theme-orange .nav.flex-column .active a, .theme-orange .nav.flex-column a:hover, .theme-orange .btn-outline-secondary:hover, .theme-orange .filter-location a:hover, .theme-orange .filter-location .active a, .theme-orange .nav-inline.text-black .active a, .theme-orange .nav-inline.text-black a:hover {
    color: #ff3600 !important;
}

.no-gutters>.col, .no-gutters>[class*=col-] {
    padding-right: 0;
    padding-left: 0;
}
.partner-list {
  margin-top: 9.25925926vmin;
  text-align: center;
}

.partner-item {
  display: flex;
  text-align: center;
}

.partner-item img {
  opacity: .4;
  transition: all .3s ease-in-out;
}

.partner-item img:hover,
.partner-item a:hover img,
.partner-item .inside:hover img {
  opacity: 1;
}

.partner-bordered .partner-item {
  margin: 0 -1px -1px 0;
  border: #eaeaea 1px solid;
  min-height: 13.88888889vmin;
}

.partner-item > .inside {
  padding: 1.5rem 1rem;
  align-self: center;
  display: block;
  width: 100%;
}

.partner-item {
  flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}

.partner-item img {
  max-width: 100%;
}

@media (min-width: 768px) {
  .partner-item {
    flex: 0 0 20%;
    max-width: 20%;
  }
}
[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
    cursor: pointer;
}

.establised {
  display: none;
  position: fixed;
  left: 34px;
  top: 50%;
  z-index: 300;
  margin-top: -1.625rem;
  text-transform: uppercase;
  letter-spacing: .625rem;
  color: #999999;
  font-size: 1.125rem;
  transform: rotate(-90deg) translate(-50%, 0%);
  transform-origin: bottom left;
}

.copyright-fixed {
  position: fixed;
  left: 15px;
  padding-bottom: .5rem;
  bottom: 4.62962963vmin;
  z-index: 300;
  color: #000000;
  text-transform: uppercase;
}

.copyright-fixed i {
  margin-top: -2px;
  vertical-align: middle;
  margin-right: .75rem;
  font-size: 1.5rem;
  line-height: .75;
}

.copyright-fixed a {
  color: inherit;
}

@media (min-width: 576px) {
  .establised {
    display: block;
  }
}

@media (min-width: 1600px) {
  .social-fixed {
    left: 3.75rem;
  }

  .social-rounded-fixed {
    right: 3.75rem;
  }

  .copyright-fixed {
    left: 3.75rem;
  }

  .establised {
    left: 5rem;
  }
}


/*-------------------------------------------------------------------------------
  5. Home Piling
-------------------------------------------------------------------------------*/

.home-piling .section,
.project-list-piling .section {
  transition: transform 1.2s ease-in-out;
  position: relative;
  z-index: 10;
}

.a-pagepiling.home-piling .section,
.a-pagepiling.project-list-piling .section {
  position: absolute;
}

.project-list-piling.a-pagepiling .section {
  position: absolute;
}

.home-piling .active + .section,
.project-list-piling .active + .section {
  transform: translate3d(0px, 20%, 0px) !important;
}

.home-piling .section.active,
.project-list-piling .section.active {
  transform: translate3d(0px, 0px, 0px);
}

@media (max-width: 575px) {
  .home-piling .container {
    padding-right: 45px;
  }
}


#pp-nav.right {
  right: 15px !important;
}

@media (min-width: 1600px) {
  #pp-nav.right {
    right: 3.75rem !important;
  }
}

#pp-nav li,
.pp-slidesNav li {
  height: 24px !important;
  margin: 6px 0 !important;
  width: 24px !important;
}

#pp-nav li a,
.pp-slidesNav li a {
  border: 1px solid transparent;
  border-radius: 20px !important;
}

#pp-nav li a.active,
.pp-slidesNav li a.active {
  border-color: #ff9000;
}

#pp-nav span,
.pp-slidesNav span {
  width: 6px !important;
  height: 6px !important;
  border: none !important;
  background: #999999 !important;
  left: 8px !important;
  top: 8px !important;
}

#pp-nav li a.active span,
.pp-slidesNav li a.active span,
#pp-nav li a:hover span,
.pp-slidesNav li a:hover span {
  background: #ff9000;
}



.home-piling h1,
.home-piling .h1 {
  margin-left: -.25rem;
  margin-bottom: 7.03703704vmin;
  font-size: 10.18518519vmin;
  line-height: 1;
  font-weight: 500;
}

.home-piling .slide1 {
  background: #1f5152;
}

.home-piling .slide1 .slide-bg > .inside {
  background-image: url("../img/bg-piling1.jpg");
}

.home-piling .slide-bg-circle > .inside {
  background-image: url("../img/piling-pic2.png");
  //background-color: #f6f6f6;
}

.home-piling .slide5 .slide-bg > .inside {
  background-image: url("../img/bg-piling5.jpg");
}

.home-piling .slide6 .slide-bg > .inside {
  background-image: url("../img/bg-piling6.jpg");
}

.home-piling .slide6 .slide-bg-circle > .inside {
  background-image: url("../img/piling-pic2.png");
  background-color: transparent;
}

.home-piling .slide6 h2, .home-piling .slide6 .h2 {
    margin-bottom: 2.40740741vmin;
    font-size: 6.48148148vmin;
}

.home-piling .slide1 .slide-title-sub {
  font-size: 1.5rem;
  line-height: 1;
  font-weight: bold;
  font-family: Karla, sans-serif;
}

.home-piling h2,
.home-piling .h2 {
  margin-bottom: 6.11111111vmin;
  font-size: 6.66666667vmin;
  font-weight: normal;
  line-height: 1.14;
  letter-spacing: -.125rem;
}

.solution-num {
  margin-right: 1rem;
  margin-top: .25rem;
  background-image: url("../img/bg-letter-solution.jpg");
  background-size: cover;
  font-size: 37.03703704vmin;
    font-family: 'Butler Stencil Bold';
    line-height: .75;
}

.solution-num > .inside {
  background: #f6f6f6;
}

.solution-num-title {
  margin-top: 3vmin;
  font-size: 1.5rem;
  text-transform: uppercase;
}

.solution-num,
.solution-num-title {
  display: inline-block;
  margin-bottom: 5vmin;
}

@media (min-width: 992px) {
  .solution-num,
  .solution-num-title {
    margin-bottom: 0;
    margin-right: 0;
  }

  .solution-num-title {
    display: block;
    margin-top: 23.70370370vmin;
  }
}

.slide2 .ornament {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: -1;
  transform: translate3d(-80px, 0, 0);
  overflow: hidden;
}

.slide2 .ornament > .inside {
  display: block;
  width: 88.51851852vmin;
  height: 44.25925926vmin;
  background: #f4e9db;
  border-radius: 50% 50% 0% 0% / 100% 100% 0% 0%;
  position: absolute;
  left: -80px;
  bottom: 0;
}

.solution-collapse-item {
  margin-bottom: 2rem;
}

.solution-collapse-item-title {
  font-size: 1.625rem;
}

.solution-collapse-item-title a {
  display: block;
  padding-right: 2rem;
  cursor: pointer;
  position: relative;
  color: #007bff;
}

.solution-collapse-item-title a:not(.collapsed),
.solution-collapse-item-title a:not(.collapsed):hover,
.solution-collapse-item-title a.collapsed:hover {
  color: #f4882e;
}

.solution-collapse .card-body {
  padding: 1.25rem 1.75rem .25rem;
  color: #666666;
  line-height: 1.875;
}
.solution-collapse .card-body a {
  color:#007bff;
}
.icon-plus {
  display: inline-block;
  vertical-align: middle;
  width: 21px;
  height: 21px;
  position: relative;
}

.icon-plus:before,
.icon-plus:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 10px;
  left: 0;
  background: #000000;
  transform: rotate(0);
  transition: transform .4s ease-in-out;
}

.solution-collapse-item-title a.collapsed .icon-plus:after {
  transform: rotate(-90deg);
}

.solution-collapse-item-title a:not(.collapsed) .icon-plus:before,
.solution-collapse-item-title a:not(.collapsed) .icon-plus:after,
.solution-collapse-item-title a:hover .icon-plus:before,
.solution-collapse-item-title a:hover .icon-plus:after {
  background: #f4882e;
}

.solution-collapse-item-title a .icon-plus {
  position: absolute;
  right: 0;
  top: 10px;
}



.piling-project-item {
  margin-bottom: 7.22222222vmin;
}

.piling-project-title {
  margin-bottom: 1.375rem;
  font-size: 6.11111111vmin;
  font-weight: normal;
  line-height: 1.06060606;
}

.piling-project-title a:hover,
.slide-dark .piling-project-title a:hover,
.piling-more-total a:hover,
.slide-dark .piling-more-total a:hover {
  text-decoration: underline;
}

.piling-project-detail {
  font-size: .875rem;
  text-transform: uppercase;
}

.section.active .slide-bg-list .slide-bg > .inside {
  transition: all .8s ease-in-out;
  transform: scale(1.08);
}

.slide-bg-list .slide-bg.active > .inside {
  opacity: 1;
  transform: scale(1);
  transition-delay: 0s;
  transform: scale(1) !important;
}

.slide-bg-list .slide-bg.active:first-child > .inside {
}

.slide-bg-list .slide-bg > .inside {
  opacity: 0;
}

.piling-project-list-title,
.piling-more-total {
  font-size: 1.5rem;
  font-size: 2.22222222vmin;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 1.25;
}

.piling-project-list-title {
  margin-bottom: 7.77777778vmin;
}

.piling-more-total {
  margin-top: 6.94444444vmin;
}

.rounded-icon {
  display: inline-block;
  border: #ff9000 2px solid;
  width: 6.48148148vmin;
  height: 6.48148148vmin;
  border-radius: 4.375rem;
  min-width: 3rem;
  min-height: 3rem;
  text-align: center;
  position: relative;
  transition: all .3s ease-in-out;
}

.icon-quote {
  display: inline-block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 1.125rem;
  height: 1.125rem;
  background: url("../img/icon-quote.png") 50% 50% no-repeat;
  background-size: contain;
  transform: translate(-50%, -50%);
}


.home-piling .slide-contact-address {
  margin-bottom: 6.85185185vmin;
}

.home-piling .slide-contact-mail,
.home-piling .slide-contact-phone {
  font-weight: normal;
}

.home-piling .slide-contact-mail a {
  color: inherit;
  text-decoration: underline;
}


.text-texture {
  display: inline-block;
  background-image: url("http://paul-themes.com/html/lewis/demo/img/bg-title.jpg");
  background-position: 50% 50%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.text-texture > .inside {
  display: inline-block;
  mix-blend-mode: lighten;
  background: #ffffff;
}

.reviews-carousel-container {
  padding-top: 2.8125rem;
  padding-left: 3rem;
  padding-right: 3rem;
  margin-top: 5rem;
}

.carousel-center-v.owl-carousel .owl-stage {
  display: flex;
  align-items: center;
}

.reviews-carousel-text {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.33333333;
  letter-spacing: -1px;
}

.testimonial .reviews-carousel-text {
  line-height: 1.66666667;
  letter-spacing: -.025em;
  font-weight: normal;
}

.reviews-carousel-author {
  margin-top: 3rem;
  font-size: 1.125rem;
}

.reviews-carousel-author:before,
.reviews-carousel-author:after {
  content: "-";
  margin: 0 .625rem;
  color: #999999;
}

.reviews-carousel-sm .reviews-carousel-item {
  min-height: 22.5rem;
}

.reviews-carousel-sm .reviews-carousel-item > .inside {
  vertical-align: top;
}

.reviews-carousel-sm .reviews-carousel-author {
  text-transform: uppercase;
  font-weight: bold;
}

.reviews-carousel-sm .reviews-carousel-author:before,
.reviews-carousel-sm .reviews-carousel-author:after {
  display: none;
}

.reviews-carousel-author-status {
  margin-top: .5rem;
  font-size: 1rem;
  font-weight: normal;
}

.home-piling .reviews-carousel-author-status {
  color: #99cccc;
}

.home-piling .reviews-carousel-author-status .text-grey-light {
  color: #669999;
}

.reviews-carousel-sm .owl-dots {
  margin-left: -5px;
  text-align: left;
}

@media (min-width: 992px) {
  .reviews-carousel-text {
    font-size: 2.25rem;
  }

  .reviews-carousel-sm .reviews-carousel-text {
    font-size: 1.875rem;
    letter-spacing: -.25px;
    line-height: 1.6;
  }

  .reviews-carousel-container {
    padding-left: 8.75rem;
    padding-right: 8.75rem;
  }
}
.arrow {
  height: 3.125rem;
  width: 1.875rem;
  margin-left: auto;
  margin-right: auto;
}

.arrow-top, .arrow-bottom {
  background-color: #cccccc;
  height: 2px;
  left: -10%;
  position: absolute;
  top: 50%;
  width: 100%;
}

.arrow-top:after,
.arrow-bottom:after {
  background-color: #b11d11;
  content: '';
  height: 100%;
  position: absolute;
  top: 0;
  transition: all 0.15s;
}

.arrow-top {
  transform: rotate(45deg);
  transform-origin: bottom right;
}

.arrow-top:after {
  left: 100%;
  right: 0;
  transition-delay: 0s;
}

.arrow-bottom {
  transform: rotate(-45deg);
  transform-origin: top right;
}

.arrow-bottom:after {
  left: 0;
  right: 100%;
  transition-delay: 0.15s;
}

.owl-prev:not(.disabled):hover .arrow-top:after,
.owl-next:not(.disabled):hover .arrow-top:after {
  left: 0;
  transition-delay: 0.15s;
}

.owl-prev:not(.disabled):hover .arrow-bottom:after,
.owl-next:not(.disabled):hover .arrow-bottom:after {
  right: 0;
  transition-delay: 0s;
}

.arrow:active {
  transform: scale(0.9);
}

.owl-prev .arrow {
  transform: scaleX(-1);
}

.owl-prev .arrow:active {
  transform: scaleX(-1) scale(0.9);
}

.dots-md {
  margin-bottom: 16.5rem;
}

.dots-md.owl-theme .owl-dots,
.dots-md.owl-theme .owl-nav.disabled+.owl-dots {
  margin-top: 5.625rem;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
}

.dots-md.owl-theme .owl-dots .owl-dot {
  vertical-align: middle;
}

.owl-theme .owl-dots .owl-dot:focus {
  outline: none;
}

.owl-theme .owl-dots .owl-dot span {
  width: 15px;
  height: 15px;
  background: transparent;
  border: transparent 1px solid;
  position: relative;
  margin: 5px;
}

.dots-md.owl-theme .owl-dots .owl-dot span {
  width: 1.5rem;
  height: 1.5rem;
}

.owl-theme .owl-dots .owl-dot:hover span {
  background: transparent;
}

.owl-theme .owl-dots .owl-dot.active span {
  border-color: #b11d11;
  background-color: transparent;
}

.owl-theme .owl-dots .owl-dot span:before {
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  border-radius: 3px;
  background: #000000;
  position: absolute;
  left: 50%;
  margin-left: -1.5px;
  top: 50%;
  margin-top: -1.5px;
}

.dots-md.owl-theme .owl-dots .owl-dot span:before {
  width: 4px;
  height: 4px;
  margin-left: -2px;
  margin-top: -2px;
}

.owl-theme .owl-dots .owl-dot.active span:before,
.owl-theme .owl-dots .owl-dot:hover span:before {
  background-color: #b11d11;
}

.reviews-carousel-sm.owl-theme .owl-dots .owl-dot span:before {
  background-color: #ffffff;
}

.reviews-carousel-sm.owl-theme .owl-dots .owl-dot.active span:before,
.reviews-carousel-sm.owl-theme .owl-dots .owl-dot:hover span:before {
  background-color: #f4882e;
}

.reviews-carousel-sm.owl-theme .owl-dots .owl-dot.active span {
  border-color: #f4882e;
}



/*-------------------------------------------------------------------------------
  6. Home Minimal
-------------------------------------------------------------------------------*/

.promo-minimal-container {
  position: relative;
}

.promo-minimal {
  position: relative;
  z-index: 11;
}

.promo-minimal-hover {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
  overflow: hidden;
}

.minimal-item {
  display: block;
  border-top: #cccccc 1px solid;
  padding-top: 23.79629630vmin;
  padding-bottom: 8vmin;
  text-align: center;
  position: relative;
  opacity: 1;
  transition: opacity .5s ease-in-out;
}

.promo-minimal .minimal-item:hover {
  opacity: 0;
}

a.minimal-item,
a.minimal-item:hover {
  color: inherit;
  text-decoration: none;
}

.minimal-item:first-child {
  border: none;
}

.minimal-item-letter {
  margin-bottom: 4.81481481vmin;
  font-size: 41.66666667vmin;
  font-size: 23.4375vmax;
  font-weight: 900;
  line-height: .75;
}

.minimal-item-letter .letter {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  overflow: hidden;
}

.minimal-item-letter .text-texture {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background-position: 50% 50%;
  background-size: auto 132%;
  -webkit-background-clip: inherit;
  -webkit-text-fill-color: inherit;
}

.minimal-item-letter .text-texture > .inside {
  display: block;
  height: 100%;
  padding-top: 23.79629630vmin;
}

.promo-minimal-hover .text-texture > .inside {
  background: rgba(0,0,0,.65);
  mix-blend-mode: darken;
}

.promo-minimal-hover .minimal-item {
  transition: opacity .5s ease-in-out;
}

.promo-minimal-hover .minimal-item.visible {
  opacity: 1;
}

.minimal-item-title {
  margin-bottom: 1.5rem;
  font-size: 2.625rem;
  font-weight: 900;
}

.minimal-item-title,
.minimal-item-descr,
.minimal-item-more {
  padding-left: 10%;
  padding-right: 10%;
  position: relative;
  z-index: 200;
}

.minimal-item-descr {
  line-height: 1.44444444;
  font-size: 1.125rem;
  color:#666;
}
.font-custom {
    font-family: 'Butler', Serif;
}
.promo-minimal-hover,
.promo-minimal-hover .text-grey {
  color: #ffffff;
}

.promo-minimal-hover > .row {
  position: relative;
  z-index: 200;
}

.promo-minimal-hover .minimal-item-letter .letter {
  overflow: visible;
}

.promo-minimal-hover .text-texture {
  transition: all .75s ease-in-out;
}

.promo-minimal-hover .visible .text-texture {
  background-size: auto 120%;
}

.promo-minimal-hover .minimal-item-title,
.promo-minimal-hover .minimal-item-descr,
.promo-minimal-hover .minimal-item-more {
  transform: translate(0, 150px);
  opacity: 0;
  transition: all .5s ease-in-out;
}

.promo-minimal-hover .visible .minimal-item-title,
.promo-minimal-hover .visible .minimal-item-descr,
.promo-minimal-hover .visible .minimal-item-more {
  opacity: 1;
  transform: translate(0, 0);
}

.promo-minimal-hover .minimal-item-title {
  transition-delay: .35s;
}

.promo-minimal-hover .minimal-item-descr {
  transition-delay: .5s;
}

.promo-minimal-hover .minimal-item-more {
  transition-delay: .65s;
}

.minimal-item-more {
  margin-top: 1.625rem;
  font-size: 4.44444444vmin;
  font-weight: bold;
  opacity: 0;
}

@media (max-width: 991px) {
  .minimal-item {
    overflow: hidden;
  }

}

.dark-horizontal .promo-minimal-container a {
  color: #000000 !important;
}

@media (min-width: 992px) {
  .minimal-item {
    min-height: 100vh;
    border-left: #cccccc 1px solid;
    border-top: none;
  }

  .minimal-item.over {
    opacity: 0;
  }

  .promo-minimal-hover .minimal-item {
    opacity: 0;
  }

  .minimal-item-letter .letter1 .text-texture {
    left: 0;
    right: -202%;
    padding-right: 202%;
  }

  .minimal-item-letter .letter2 .text-texture {
    left: -101%;
    right: -101%;
    padding-left: 101%;
    padding-right: 101%;
  }

  .minimal-item-letter .letter3 .text-texture {
    left: -202%;
    right: 0;
    padding-left: 202%;
  }

  .promo-minimal-hover:before,
  .promo-minimal-hover:after {
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 300;
    background: #ffffff;
    opacity: .25;
  }

  .promo-minimal-hover:before {
    left: 33.33333333%;
  }

  .promo-minimal-hover:after {
    left: 66.66666667%;
  }

  .promo-minimal-hover .minimal-item-letter .letter3 .text-texture {
    padding-left: 0;
  }

  .promo-minimal-hover .minimal-item-letter .letter3 .text-texture > .inside {
    padding-left: 66.66666667%;
  }
}

.dark-horizontal .vlt-fullscreen-footer__socials a
{

    color: #fff !important;
}
.dark-horizontal h2.minimal-item-title  {color:#fff;}


/*-------------------------------------------------------------------------------
  3. Home Zoom Parallax
-------------------------------------------------------------------------------*/

.promo-zoom {
  position: relative;
  z-index: 20;
}

.mountains {
  position: fixed;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background: url("../img/bg-promo-zoom-mountains2.jpg") 50% 100% no-repeat;
  background-size: cover;
}

.mountains.animated {
}

.house-left {
  position: fixed;
  width: 28.958333%;
  height: 59.16666666%;
  bottom: 0;
  left: 0;
  z-index: 20;
  background: url("../img/bg-promo-zoom-house-left.png") 0 100% no-repeat;
  background-size: contain;
}


.house-right {
  position: fixed;
  width: 62.76041667%;
  height: 60%;
  bottom: 0;
  right: 0;
  z-index: 30;
  background: url("../img/bg-promo-zoom-house-right.png") 100% 100% no-repeat;
  background-size: contain;
}

.step-opacity {
  position: absolute;
  left: 0;
  top: 85%;
}


.promo-about {
  padding-top: 9rem;
  padding-bottom: 6rem;
  line-height: calc(100vh - 15rem);
}

.promo-about .about {
  position: relative;
  top: 300px;
  opacity: 0;
  transition: all .5s ease-in-out;
}

@media (min-width: 768px) {
  .promo-about {
    padding-top: 3rem;
    padding-bottom: 3rem;
    line-height: calc(100vh - 6rem);
  }
}

.about {
  display: inline-block;
  vertical-align: middle;
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  line-height: 1.5;
}


.promo-zoom-titles {
  position: fixed;
  top: 30%;
  left: 10%;
  right: 10%;
  z-index: 40;
  text-align: center;
}

.top-title {
  margin-bottom: 1.25rem;
  font-size: 1.125rem;
  text-transform: uppercase;
  letter-spacing: .5625rem;
  color: #666666;
}

.promo-zoom-titles h1,
.promo-screen-titles h1 {
  font-size: 11.11111111vmin;
  font-weight: bold;
}

.text-texture {
  display: inline-block;
  background-image: url("../img/bg-title.jpg");
  background-position: 50% 50%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.text-texture > .inside {
  display: inline-block;
  mix-blend-mode: lighten;
  background: #ffffff;
}

.promo-zoom-titles .slogan,
.promo-screen-titles .slogan {
  margin-top: 1.125rem;
  font-size: 1.25rem;
  color: #666666;
  line-height: 1.5;
}

.brand .text-texture {
  background-image: linear-gradient(to bottom, #ff7c00, #ff0000);
  display: inline-block;
  vertical-align: middle;
  width: 4.75rem;
  height: 3.125rem;
}


.about-logo {
  margin-bottom: 6.25rem;
}

.about-title {
  font-size: 2.25rem;
  font-weight: bold;
  font-family: var(--primary_font);
}

.about-descr {
  margin-top: 1.875rem;
  font-size: 1.5rem;
  line-height: 1.5;
}

.text-grey {
    color: #666666;
}

.news-zoom  .vp-portfolio__item-img-wrap img {
  -webkit-transition: all 1000ms ease-in-out;
  transition: all 1000ms ease-in-out;
  height: 100% !important;
}








@media (min-width: 768px) {
.home-flash .section {
    padding-top: 10.625rem;
    padding-bottom: 10.625rem;
}
}

.screen {
  min-height: 100vh;
  width: 100%;
  padding-top: 5vmin;
  padding-bottom: 5vmin;
  display: flex;
  align-items: center;
  text-align: center;
}

.promo-3d {
  padding-top: 25vmin;
  position: relative;
  text-align: center;
}

.promo-3d-bg,
.promo-3d-man {
  position: fixed;
  left: 0;
  right: 0;
  bottom: -10vmin;
  z-index: 20;
}

.promo-3d-man {
  left: 50%;
  right: auto;
  bottom: -40vmin;
  width: 100%;
  transform: translate(-50%, 0) scale(1.05);
}

.promo-3d-bg img,
.promo-3d-man img {
  width: 100%;
}

@media (max-width: 575px) {
  .promo-3d-bg img,
  .promo-3d-man img {
    width: 200vmin;
    margin-left: -100vmin;
    margin-right: -100vmin;
  }
}

.promo-3d-man-start {
  position: absolute;
  left: 0;
  top: 10%;
}

.promo-3d-opacity {
  position: absolute;
  left: 0;
  top: 70%;
}

.promo-3d .promo-screen-titles {
  position: relative;
  z-index: 20;
}

.about-3d {
  position: relative;
  opacity: 0;
}

.section-about-3d.active .about-3d {
  opacity: 1;
}

.section-about-3d .section-item-title,
.section-about-3d .about-3d-detail {
  opacity: 0;
  transform: translateY(16rem);
  transition: all .75s ease-in-out;
}

.section-about-3d .section-item-title {
  transition-delay: .3s;
}

.section-about-3d .about-3d-detail {
  transition-delay: 1.2s;
}

.section-about-3d.active .section-item-title,
.section-about-3d.active .about-3d-detail {
  opacity: 1;
  transform: translateY(0);
}



.about-3d-photo {
  position: relative;
  padding-left: 6.25rem;
  padding-right: 6.25rem;
  margin-top: 12px;
  margin-bottom: 8vmin;
}

.photo-container {
  position: relative;
  overflow: hidden;
}

.photo-container img {
  transform: scale(1.2);
  transform-origin: right top;
  transition: all 1.5s .5s ease-in-out;
}

.section-about-3d.active .photo-container img {
  transform: scale(1);
}

.photo-container .mask {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
  background: #ffffff;
  transition: all 1.3s .5s ease-in-out;
}

.section-about-3d.active .photo-container .mask {
  top: -100%;
}
.rounded-logo.stamp {
    width: 14.125rem;
    height: 14.125rem;
    position: absolute;
    left: 0;
    bottom: -3rem;
}
.section-about-3d .stamp {
  opacity: 0;
  transform: scale(1.5);
  transform-origin: right center;
  transition: all 1s .5s ease-in-out;
}

.section-about-3d.active .stamp {
  transform: scale(1);
  opacity: 1;
}

.about-3d .section-item-title {
  margin-bottom: 8.51851852vmin;
}

.about-3d-detail {
  position: relative;
  padding-bottom: 3.75rem;
  margin-bottom: 5vmin;
}

@media (min-width: 768px) {
  .about-3d-photo {
    padding-left: 6.25rem;
    padding-right: 4.375rem;
  }

  .rounded-logo.stamp {
    bottom: -8rem;
  }
}

@media (min-width: 992px) {
  .about-3d-photo,
  .about-3d-detail {
    margin-bottom: 11.85185185vmin;
  }
}

.about-3d-detail .lead {
  margin-bottom: 2.5rem;
}

.about-3d-detail .more {
  position: absolute;
  bottom: 0px;
  left: 15px;
}

.h2-3d {
  margin-bottom: 2.5rem;
  font-size: 3rem;
  line-height: 1.25;
  letter-spacing: -.035em;
}

.h2-flash {
  margin-bottom: 6rem;
  font-size: 3rem;
  line-height: 1.25;
}


.rounded-logo svg {
    transform: rotate(175deg);
    text-transform: uppercase;
    letter-spacing: 2.65px;
    word-spacing: 4px;
    font-weight: bold;
    fill: #999999;
}

.rounded-logo.stamp svg {
    transform: rotate(150deg);
}


.rounded-logo.font-custom svg {
    letter-spacing: .1em;
    word-spacing: 2px;
}


.vertical-text-left {
  position: absolute;
  left: auto;
  right: 100%;
  margin-right: -34px;
  top: 0;
  transform: rotate(-90deg);
  transform-origin: top right;
  white-space: nowrap;
  text-align: right;
}

.vertical-text-right {
  position: absolute;
  right: auto;
  left: 100%;
  margin-left: -34px;
  top: 0;
  transform: rotate(90deg);
  transform-origin: top left;
  white-space: nowrap;
  text-align: left;
}

.vertical-text-left,
.vertical-text-right {
  font-size: 1rem;
  color: #666666;
  letter-spacing: .25em;
  text-transform: uppercase;
}

.about-3d .vertical-text-left,
.about-3d .vertical-text-right {
  top: 90px;
}

@media (max-width: 575px) {
  .rounded-logo.stamp {
    width: 7rem;
    height: 7rem;
    left: 3rem;
    bottom: -2rem;
  }
}

.project-carousel-3d {
  overflow: hidden;
  position: relative;
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
}

@media (min-width: 576px) {
  .project-carousel-3d .owl-carousel {
    width: 78.33333333%;
    position: static;
  }
}

.project-carousel-3d .owl-stage-outer {
  overflow: visible;
  transform: translate(0%, 0%);
  transition: all .4s ease-in-out;
}

@media (min-width: 768px) {
  .project-carousel-3d .project-carousel-item {
    padding-bottom: 54.04255319%;
  }
}

.project-carousel-3d:hover .owl-carousel .owl-stage-outer {
  transform: translate(-5rem, 0%);
}

.project-carousel-3d.move-left .owl-carousel .owl-stage-outer {
  transform: translate(-8rem, 0%);
}

.project-carousel-3d.move-right .owl-carousel .owl-stage-outer {
  transform: translate(-2rem, 0%);
}

.project-carousel-3d .owl-item .project-carousel-photo,
.project-carousel-3d .owl-item .project-carousel-date,
.project-carousel-3d .owl-item .project-carousel-detail {
  transition: all .4s ease-in-out; 
  transform: translate(0rem, 0%);
}

.project-carousel-3d .owl-item.active + .owl-item .project-carousel-photo {
  transform: translate(-4rem, 0%);
}

.project-carousel-3d:hover .owl-item.active + .owl-item .project-carousel-photo {
  transform: translate(-6rem, 0%);
}

.project-carousel-3d.move-left .owl-item.active + .owl-item .project-carousel-photo {
  transform: translate(-7rem, 0%);
}

.project-carousel-3d:hover .owl-item.active .project-carousel-date,
.project-carousel-3d:hover .owl-item.active .project-carousel-detail {
  transform: translate(5rem, 0%);
}

.project-carousel-3d.move-left .owl-item.active .project-carousel-date,
.project-carousel-3d.move-left .owl-item.active .project-carousel-detail {
  transform: translate(8rem, 0%);
}

.project-carousel-3d.move-right .owl-item.active .project-carousel-date,
.project-carousel-3d.move-right .owl-item.active .project-carousel-detail {
  transform: translate(2rem, 0%);
}

.project-carousel-3d .project-carousel-item:not(.text-white) .project-carousel-title,
.project-carousel-3d .project-carousel-item:not(.text-white) .project-carousel-date {
  color: #000000;
}

.project-carousel-3d .project-carousel-item .project-carousel-category,
.project-listing-category,
.project-masonry-category {
  color: #999999;
}

.project-carousel-3d .project-carousel-category,
.project-listing-category,
.project-masonry-category {
  font-size: .875rem;
  text-transform: uppercase;
}

.project-carousel-date {
  font-size: 1.5rem;
}

.project-carousel-3d .project-carousel-detail,
.project-carousel-3d .owl-item.active .project-carousel-detail {
  opacity: 1;
  animation: none;
}

.project-carousel-3d .project-carousel-detail {
  bottom: 2rem;
}

.project-carousel-3d .owl-item {
  overflow: hidden;
}

@media (min-width: 768px) {
  .project-carousel-3d .project-carousel-detail {
    bottom: 5rem;
  }
}






/*-------------------------------------------------------------------------------
  9. Home Flash
-------------------------------------------------------------------------------*/

.flash-item-nav {
  position: fixed;
  left: 15px;
  z-index: 500;
  padding-left: 0;
  font-size: 1rem;
  text-transform: uppercase;
  font-weight: bold;
}

.flash-item-nav {
  transition: padding .2s ease-in-out;
}

.flash-item-nav:before {
  transition: width .2s ease-in-out;
}

.flash-item-nav a {
  transition: color .2s ease-in-out;
}

.flash-item-nav:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  height: 1px;
  margin-top: -1px;
  width: 0;
}

.flash-item-nav.active:before {
  width: 1.875rem;
}

.flash-item-nav.active {
  padding-left: 3rem;
}

.flash-item-nav a {
  color: #999999 !important;
}

.flash-item-nav a:hover,
.flash-item-nav.active a {
  color: #000000 !important;
  text-decoration: none;
}

.flash-item-nav:before {
  background: #000000;
}

.home-flash-dark .flash-item-nav a,
.home-flash.dark-horizontal .flash-item-nav a {
  color: #666699 !important;
}

.home-flash-dark .flash-item-nav a:hover,
.home-flash.dark-horizontal .flash-item-nav a:hover,
.home-flash-dark .flash-item-nav.active a,
.home-flash.dark-horizontal .flash-item-nav.active a {
  color: #ffffff !important;
}

.home-flash-dark .flash-item-nav:before,
.home-flash.dark-horizontal .flash-item-nav:before {
  background: #ffffff;
}

.item-nav-1 {
  top: calc(100% - 330px);
}

.item-nav-2 {
  top: calc(100% - 280px);
}

.item-nav-3 {
  top: calc(100% - 230px);
}

.item-nav-4 {
  top: calc(100% - 180px);
}

.item-nav-5 {
  top: calc(100% - 130px);
}

.item-nav-6 {
  top: calc(100% - 80px);
}

.flash-item {
  position: relative;
}

.flash-pin-2 {
  position: absolute;
  left: 0;
  top: 276px;
}

.flash-pin-3 {
  position: absolute;
  left: 0;
  top: 228px;
}

.flash-pin-4 {
  position: absolute;
  left: 0;
  top: 172px;
}

.flash-pin-5 {
  position: absolute;
  left: 0;
  top: 128px;
}

.flash-pin-6 {
  position: absolute;
  left: 0;
  top: 78px;
}

@media (max-width: 575px) {
  .flash-item-nav {
    display: none;
  }
}

@media (min-width: 1600px) {
  .flash-item-nav {
    left: 3.75rem;
  }
}

.home-flash-dark .home-flash-section .container,
.home-flash.dark-horizontal .home-flash-section .container,
.home-flash-dark .home-flash-section .container-fluid,
.home-flash.dark-horizontal .home-flash-section .container-fluid,
.home-flash .footer {
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s ease-in-out;
}

.home-flash-section {
  padding-bottom: 0;
}

.home-flash-section-dark {
  padding-top: 21.01851852vmin !important;
  margin-bottom: 0;
}

@media (min-width: 576px) and (max-width: 1599px) {
  .home-flash-section {
    padding-left: 10rem;
  }
}

.home-flash-dark .home-flash-section-dark .container,
.home-flash.dark-horizontal .home-flash-section-dark .container,
.home-flash-dark .home-flash-section-dark .container-fluid,
.home-flash.dark-horizontal .home-flash-section-dark .container-fluid,
.home-flash.dark-horizontal .footer {
  opacity: 1;
  pointer-events: all;
}

.home-flash {
  background: #ffffff;
  transition: background .3s ease-in-out;
}

.home-flash-dark,
.home-flash.dark-horizontal {
  background: #2c1a6a;
  color: #9999cc;
}

.home-flash-dark hr,
.home-flash.dark-horizontal hr {
  border-bottom-color: rgba(255,255,255,.05);
}

.home-flash-dark a,
.dark-horizontal a,
.home-flash-dark strong,
.home-flash.dark-horizontal strong,
.home-flash-dark h1,
.home-flash.dark-horizontal h1,
.home-flash-dark .h1,
.home-flash.dark-horizontal .h1,
.home-flash-dark h2,
.home-flash.dark-horizontal h2,
.home-flash-dark .h2,
.home-flash.dark-horizontal .h2,
.home-flash-dark h3,
.home-flash.dark-horizontal h3,
.home-flash-dark .h3,
.home-flash.dark-horizontal .h3 {
  color: #ffffff;
}

.home-flash .section-item-title,
.section-item-title-xs,
.section-item-title-xs-narrow {
  font-size: .875rem;
  color: #999999;
  text-transform: uppercase;
  letter-spacing: .5em;
  font-weight: bold;
  font-family: var(--primary_font);
  margin-bottom: 1.875rem;
}

.section-item-title-xs-narrow {
  letter-spacing: .1em;
  font-weight: normal;
}

.section-item-title-xs {
  margin-bottom: 1.25rem;
}

.home-flash-dark .section-item-title,
.home-flash-dark .section-item-title a {
  color: #666699;
  text-decoration: none;
}

.h1-flash {
  margin-bottom: 7.40740741vmin;
  background: linear-gradient(to bottom, #ff7c00, #ff0000);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 9.25925926vmin;
  line-height: 1;
}

.about-flash {
  position: relative;
}

.about-flash .vertical-text-right {
  right: auto;
  left: 0;
  margin-left: 35px;
  margin-top: 1.66666667vmin;
  color: #ffffff;
  font-weight: bold;
  font-size: 1.125rem;
}

.rounded-logo-scroll {
  float: right;
  width: 7.5rem;
  height: 7.5rem;
  position: relative;
  margin-top: 22px;
}

.rounded-logo-scroll svg {
  letter-spacing: 9px;
  word-spacing: 0;
  fill: #666699;
}

.scroll-icon {
  display: inline-block;
  vertical-align: middle;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 38px;
  border: #ffffff 2px solid;
  border-radius: 10px;
  padding-top: 18px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.scroll-icon i {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1px;
  background: #ffffff;
  border-radius: 10px;
}

.scroll-icon i:nth-child(1) {
  width: 2px;
  height: 2px;
}

.scroll-icon i:nth-child(2) {
  width: 4px;
  height: 4px;
}

.scroll-icon i:nth-child(3) {
  width: 6px;
  height: 6px;
}

.flash-video-container {
  position: relative;
  padding-right: 8.54700855%;
  padding-top: 8.54700855%;
}

.flash-video-container:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 14.28571429%;
  left: 8.54700855%;
  right: 0;
  background: url("../img/bg-dotted.png") 0px 2px;
  z-index: 1;
}

.flash-video-container.mask-skew .mask .inside {
  background: #2c1a6a;
}

.flash-video {
  display: block;
  width: 100%;
  position: relative;
  z-index: 50;
}

.flash-video img {
  border: #ffffff 8px solid;
  max-width: 100%;
}

.flash-video-icon {
  width: 5rem;
  height: 5rem;
  border-radius: 5rem;
  background: #ffffff;
  position: absolute;
  z-index: 30;
  left: 50%;
  top: 50%;
  text-align: center;
  line-height: 4.75rem;
  font-size: 2.375rem;
  color: #ff0000;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.flash-video-icon:before,
.flash-video-icon:after {
  content: "";
  display: block;
  position: absolute;
  border-radius: 100px;
  background: #ffffff;
  opacity: .4;
}

.flash-video-icon:before {
  left: -.625rem;
  top: -.625rem;
  right: -.625rem;
  bottom: -.625rem;
}

.flash-video-icon:after {
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  animation-name: pulsation;
  animation-duration: 8s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

@keyframes pulsation {
  0% {
    opacity: .5;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
         -o-transform: scale(1);
            transform: scale(1);
  }
  15% {
    opacity: 0;
    -webkit-transform: scale(1.75);
        -ms-transform: scale(1.75);
         -o-transform: scale(1.75);
            transform: scale(1.75);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.75);
        -ms-transform: scale(1.75);
         -o-transform: scale(1.75);
            transform: scale(1.75);
  }
}

.flash-video-icon i {
  vertical-align: middle !important;
  margin-left: .25rem !important;
  line-height: .75;
  transform: scale(1);
  transition: all .5s ease-in-out;
  width: auto !important;
  height: auto !important;
}

.services-flash {
  box-shadow: rgba(2,3,3,.1) 0 0 120px;
  margin-top: 80px;
  margin-bottom: 11.29629630vmin;
}
.services-flash a:hover {text-decoration: none; color:#fff !important;}
.services-flash .service-item {
  border: #40407a 1px solid;
  background: #331d7f;
  padding: 2.125rem 1.625rem 2.125rem 2rem;
  margin-left: -1px;
  margin-bottom: -1px;
  margin-top: 0;
  display: flex;
  flex-direction: column;
  letter-spacing: -.025em;
}

@media (min-width: 576px) and (max-width: 767px) {
  .services-flash .service-item:nth-child(odd) {
    margin-left: 0;
  }
}

@media (max-width: 575px) {
  .services-flash .service-item {
    margin-left: 0;
  }
}

.services-flash .service-item:hover {
  z-index: 10;
}

.services-flash .service-item:before {
  content: "";
  background: #ff3600;
  height: 5px;
  width: 0;
  position: absolute;
  left: -1px;
  bottom: -1px;
  transition: all .4s ease-in-out;
}

.services-flash .service-item:hover:before {
  width: calc(100% + 2px);
}

.services-flash .service-item:first-child {
  margin-left: 0;
}

.services-flash .service-item-title {
  font-size: 1.25rem;
  text-transform: uppercase;
  color: #ffffff;
}

.services-flash a:hover .service-item-title,
.services-flash .service-item-title:hover {
  color: #ffffff;
}

.services-flash .service-item-descr {
  display: flex;
  flex: 1 1 auto;
  line-height: 1.5;
  margin-top: 1rem;
}

.icon-design-graphic {
  display: inline-block;
  vertical-align: bottom;
  width: 5rem;
  height: 3.4375rem;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url("../img/icon-design-graphic.png");
  background-size: 100%;
}

.icon-design-web {
  display: inline-block;
  vertical-align: bottom;
  width: 4.0625rem;
  height: 3.3125rem;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url("../img/icon-design-web.png");
  background-size: 100%;
}

.icon-marketing {
  display: inline-block;
  vertical-align: bottom;
  width: 3.4375rem;
  height: 3.9375rem;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url("../img/icon-marketing.png");
  background-size: 100%;
}

.icon-photography {
  display: inline-block;
  vertical-align: bottom;
  width: 4.1875rem;
  height: 3.3125rem;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url("../img/icon-photography.png");
  background-size: 100%;
}

.service-item-icon {
  margin-top: 2.125rem;
  height: 4rem;
  line-height: 4rem;
}

.service-item-plus {
  height: 1rem;
  position: relative;
  margin-top: 2.625rem;
}

.service-item-plus:before,
.service-item-plus:after {
  content: "";
  display: block;
  width: 1rem;
  height: .25rem;
  background: #666699;
  position: absolute;
  left: 0;
  bottom: .375rem;
  transform: rotate(-180deg);
  transition: all .4s ease-in-out;
}

.service-item:hover .service-item-plus:before,
.service-item:hover .service-item-plus:after {
  background: #ffffff;
}

.service-item:hover .service-item-plus:after {
  transform: rotate(90deg);
}



.facts {
  margin-top: 9.07407407vmin;
}

.fact-item {
  display: flex;
  margin-bottom: 2rem;
  align-items: center;
}

.fact-item-value {
  position: relative;
  padding-right: 1.5rem;
  line-height: 1.1;
  font-size: 2.75rem;
  visibility: hidden;
}

.fact-item-value > .inside {
  visibility: visible;
  position: absolute;
  left: 0;
  top: 0;
}

.fact-item-param {
  font-size: 1.125rem;
  line-height: 1.44444444;
  letter-spacing: .025em;
  text-transform: uppercase;
  color: #9999cc;
  font-family: var(--primary_font);
  font-weight: 400;
}

@media (min-width: 992px) {
  .fact-item-value {
    line-height: .75;
    font-size: 3.75rem;
  }
}



.project-list-listing + .more-lg {
  margin-top: 4.375rem;
}

.project-list-masonry + .more-lg {
  margin-top: 6.25rem;
}

.grid-item {
  width: 100%;
}

.project-list-flash .project-item,
.project-list-listing .project-item {
  display: block;
  position: relative;
}

.project-list-flash .project-item {
  padding-bottom: 100%;
  overflow: hidden;
}

.project-list-listing .grid-item {
  display: block;
  margin-bottom: 5.625rem;
}

.project-list-masonry .grid-item {
  display: block;
  margin-bottom: 2.5rem;
  padding-left: 15px;
  padding-right: 15px;
}

.project-list-listing .project-item {
  padding-bottom: 44.44444444%;
  overflow: hidden;
}

.project-list-listing .project-listing-photo {
  transform: scale(1);
  transition: all 1s ease-in-out;
}

.project-list-listing a:hover .project-listing-photo {
  transform: scale(1.08);
}

.project-list-flash .section-item-title {
  margin-bottom: 1.625rem;
}

.project-list-flash .project-carousel-detail,
.project-metro-detail {
  opacity: 1;
  left: 0;
  right: 0;
  bottom: 0;
  max-width: 100%;
  padding: 1.5rem 3.5rem 2.875rem;
  background: transparent;
  transition: all .5s linear;
}

.project-metro-detail {
  padding-left: 2.875rem;
  padding-right: 2.875rem;
  padding-bottom: 2.375rem;
}

.project-metro-title {
  margin-bottom: 1.125rem;
}

.project-list-flash .project-item:hover .project-carousel-detail {
  background: #191a1e;
}

.project-list-flash .project-carousel-title {
  padding-right: 2rem;
  font-family: 'Abril Fatface', cursive;
  font-weight: normal;
}

.project-list-title {
  padding-bottom: 3rem;
}

.project-list-title h2 {
  line-height: 1.333333;
}

.project-list-flash .project-carousel-category {
  margin-top: 1.125rem;
}

.project-list-flash .project-carousel-photo {
  transform: scale(1);
  transition: all 1s ease-in-out;
}

.project-list-flash a:hover .project-carousel-photo {
  transform: scale(1.08);
}

.project-item-more {
  padding-top: 3rem;
}

.project-masonry-photo {
  overflow: hidden;
}

.project-masonry-photo img {
  max-width: 100%;
  width: 100%;
}

.project-list-metro .project-item {
  height: 32.5rem;
  position: relative;
  margin-bottom: 30px;
  overflow: hidden;
}

.project-metro-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  opacity: 1;
  transition: all .3s ease-in-out;
}

a:hover .project-metro-photo img {
  transform: scale(1.1);
  opacity: 0;
}

@media (min-width: 576px) {
  .project-list-masonry .grid-item {
    width: 50%;
  }
}

@media (min-width: 768px) {
  .project-list-listing .grid-item {
    width: 100%;
  }

  .project-list-masonry .grid-item {
    width: 25%;
  }

  .project-list-title,
  .project-item-more {
    margin-left: 17.09401709%;
    margin-right: 25%;
  }

  .project-list-title {
    padding-bottom: 20.51282051%;
  }

  .project-item-more {
    padding-top: 30%;
  }
}

.project-carousel-category .divider,
.project-item .divider {
  margin-left: .625rem;
  margin-right: .625rem;
}

.project-carousel-go {
  position: absolute;
  right: 2.625rem;
  top: 1.375rem;
  opacity: 0;
  margin-right: 2rem;
  font-size: 3.75rem;
  transition: all .5s ease-in-out;
}

.project-item:hover .project-carousel-go {
  margin-right: 0;
  opacity: 1;
}

.project-list-flash .project-carousel-date,
.project-metro-date {
  top: 3.125rem;
  left: 3.5rem;
  font-size: 1.25rem;
  letter-spacing: .025em;
  font-weight: bold;
}

.project-metro-date {
  top: 2.625rem;
  left: 2.875rem;
}


.article-list-flash {
  margin-top: 2.375rem;
}

.article-list-flash > div {
  display: flex;
}

.article-list-flash .article-item {
  padding: 2.25rem 2.625rem 2.4375rem;
  background: #f6f7f7;
  overflow: hidden;
}

.article-list-flash .article-item-photo {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  opacity: 0;
  overflow: hidden;
  margin: 0;
  height: auto;
  padding-bottom: 0;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  transition: all .5s ease-in-out;
}

.article-list-flash .article-item:hover .article-item-photo {
  opacity: 1;
}

.article-list-flash .article-item .article-item-photo {
  transition-property: opacity, transform;
  transition-duration: .5s, 8s;
  transform: scale(1);
}

.article-list-flash .article-item:hover .article-item-photo {
  transform: scale(1.2);
}

.article-list-flash .article-item-date {
  position: static;
  left: auto;
  bottom: auto;
  padding-bottom: 27.27272727%;
  margin-bottom: 0;
  color: #999999;
  font-size: .75rem;
  font-weight: bold;
  text-transform: uppercase;
}

.article-list-flash .article-item-date .date {
  display: block;
  margin-bottom: .75rem;
  line-height: .75;
  font-size: 4.5rem;
  color: #cccccc;
  font-weight: normal;
}

.article-list-flash .article-item-category {
  margin-bottom: 1.375rem;
}

.article-list-flash .article-item-category,
.article-list-flash .article-item-category a {
  color: #ff3600;
}


.footer-flash-about {
  padding-top: 16.66666667vmin;
  padding-bottom: 13.51851852vmin;
  font-size: 1.875rem;
  line-height: 1.6;
}

.home-flash .footer-flash-about {
  padding-top: 0;
}

.footer-flash {
  padding-top: 4.875rem;
  padding-bottom: 0;
}

.footer-content-flash h5 {
  margin-bottom: 2.25rem;
  font-size: .875rem;
  color: #9999cc;
  text-transform: uppercase;
  font-weight: bold;
}

.footer-content-flash .contact-item,
.footer-content-flash .contact-item a,
.footer-content-flash .social-rounded a {
  color: #ffffff;
}

.footer-content-flash .contact-item {
  margin-bottom: .625rem;
}

.footer-content-flash .contact-item,
.footer-content-flash .footer-nav {
  font-size: 1.125rem;
  line-height: 1.44444444;
}

.footer-nav {
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-nav li {
  margin-bottom: .25rem;
}

.footer-content-flash .contact-item a:not(.phone-link):hover,
.footer-content-flash .footer-nav a:hover {
  color: #666699;
  text-decoration: none;
}

.footer-flash .site-info {
  border-top: none;
}

@media (min-width: 768px) {
  .footer-content-flash .social-rounded {
    margin-right: -.625rem;
    text-align: right;
  }

  .footer-flash .site-info {
    padding-top: 3.125rem;
    padding-bottom: 4rem;
  }
}

.footer-flash .copyright {
  text-transform: none;
}


.home-flash-dark, .home-flash.dark-horizontal {
    background: #2c1a6a;
    color: #9999cc;
}

.project-carousel-photo, .project-listing-photo, .project-metro-photo {
    position: absolute;
    z-index: 10;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}


.font-abril {
    font-family: 'Abril Fatface', cursive;
    font-weight: normal;
}
@media (min-width: 768px) {
.section-item + .section-item {
    margin-top: 8.125rem;
}
}
.fs36 {font-size: 2.25rem;}


.vp-portfolio__items-style-lewis_work_grid {position: relative;}
.vp-portfolio__items-style-lewis_work_grid .vp-portfolio__item:hover .vp-portfolio__item-img img {transform: scale(1.08);}
.vp-portfolio__items-style-lewis_work_grid .vp-portfolio__item:hover .vp-portfolio__item-meta .vp-portfolio__item-meta-overlay {opacity: 1;}
.vp-portfolio__items-style-lewis_work_grid .vp-portfolio__item-meta-category {color:#fff;}
.vp-portfolio__items-style-lewis_work_grid .vp-portfolio__item:hover .vp-portfolio__item-meta:after {
    margin-right: 0;
    opacity: 1;
}

.home-flash-section .vlt-latest-articles {
    margin-top: 2.375rem;
}

.vp-portfolio__items-style-lewis_work_grid figure {
    margin: 0;
}
.more-lg {
    text-transform: uppercase;
    font-size: 1.25rem;
    font-weight: bold;
}
.more a, .more-lg a {
    color: #000000;
    text-decoration: none;
}
.vlt-footer.vlt-footer--style-3 .more a, .vlt-footer.vlt-footer--style-3 .more-lg a {
  color:#fff;
}
.vlt-footer.vlt-footer--style-2 .contact-item a {color:#fff;}
.more-lg i {
    vertical-align: middle !important;
    margin-left: .5em !important;
    font-size: 110%;
    line-height: .75 !important;
    width: auto !important;
    height: auto !important;
}
.more.fs14 {
    letter-spacing: .05em;
}
.more {text-transform: uppercase;}
.h2-3d {
    margin-bottom: 2.5rem;
    font-size: 3rem;
    line-height: 1.25;
    letter-spacing: -.035em;
}

.h2-3d a {color:#fff;}
.more-xl {
    text-transform: uppercase;
    font-size: 1.5rem;
    font-weight: bold;
}
.flash_counter .vlt-counter-up:before, .flash_counter .vlt-counter-up span{
  font-size: 3.65rem;
  line-height: 1.5;
  color:#fff;
  margin-right: 1.2rem;
} 