/* ------------------------------------------------------------------------------



  Template Name: Lewis

  Description: Leiws - Creative Portfolio HTML Template

  Author: Paul

  Author URI: http://themeforest.net/user/paul_tf



  1.  Global



      1.1 General

      1.2 Typography

      1.3 Fields

      1.4 Buttons

      1.5 Forms

      1.6 Preloader



  2.  Header



  3.  Home Zoom Parallax



  4.  Home Horizontal



      4.1 Home Horizontal Navs

      4.2 Home Horizontal Setting

      4.3 Home Horizontal Animation

      4.4 Home Horizontal Dark Settings





  5.  Home Piling



  6.  Home Minimal



  7.  Home Video



  8.  Home 3D



  9.  Home Flash



  10. Work Pages



  11. Project Card



  12. News Pages



  13. Pages



  14. Footer





*/







/*-------------------------------------------------------------------------------

  1. Global

-------------------------------------------------------------------------------*/





/* 1.1 General */





@import url('https://fonts.googleapis.com/css?family=Karla:400,400i,700,700i');



@import url('https://fonts.googleapis.com/css?family=Teko:400,500,700');



@import url('https://fonts.googleapis.com/css?family=Libre+Baskerville:400,400i,700');



@import url('https://fonts.googleapis.com/css?family=Abril+Fatface');



@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-face {

  font-family: 'Gotham Rounded';

  src: url('../fonts/GothamRounded-Bold.ttf');

  src: url('../fonts/GothamRoundedMedium_21022.ttf') format('ttf');

  

}



html {

  font-size: 12px;

  font-family: 'Gotham Rounded', sans-serif;

}





body {

  font-family: 'Gotham Rounded', sans-serif;

  color: #000000;

}



html > body .underline {

  text-decoration: underline;

}



html > body .underline:hover {

  text-decoration: none;

}



::selection {

  background-color: #2d1a6a;

  color: #ffffff;

  text-shadow: none;

}



-webkit-::selection {

  background-color: #2d1a6a;

  color: #ffffff;

  text-shadow: none;

}





::-moz-selection {

  background-color: #2d1a6a;

  color: #ffffff;

  text-shadow: none;

}




@media (max-width: 999px) {

#present-x-374 {
  display: none;
  }
  }
  




::-webkit-scrollbar {

  width: 5px;

  height: 5px;

}



::-webkit-scrollbar-thumb {

  cursor: pointer;

  background: #2e2e2e;

}



.container-fluid-md {

  padding-left: 15px;

  padding-right: 15px;

}



.row-10 {

  margin-left: -5px;

  margin-right: -5px;

}



.row-10 > [class^="col-"],

.row-10 > [class*=" col-"] {

  padding-left: 5px;

  padding-right: 5px;

}



@media (min-width: 1280px) {

  .container {

    max-width: 1200px;

  }



  .row-60 {

    margin-left: -1.875rem;

    margin-right: -1.875rem;

  }



  .row-60 > [class^="col-"],

  .row-60 > [class*=" col-"] {

    padding-left: 1.875rem;

    padding-right: 1.875rem;

  }

}



@media (min-width: 1600px) {

  .container-fluid {

    padding-left: 3.75rem;

    padding-right: 3.75rem;

  }



  .container-fluid-md {

    padding-left: 7.5rem;

    padding-right: 7.5rem;

  }

}



.full-height {

  min-height: 100vh;

}



/* 1.2 Typography */



h2,

.h2,

h3,

.h3 {

  font-weight: bold;

}



h4,

.h4 {

  margin-bottom: 1.75rem;

  letter-spacing: -.035em;

  font-weight: bold;

}



.text-bold {

  font-weight: bold;

}



.text-normal {

  font-weight: normal;

}



.text-underline {

  text-decoration: underline;

}



html > body .text-black {

  color: #000000;

}



html > body .text-grey-primary {

  color: #cccccc;

}



html > body .text-grey {

  color: #666666;

}



html > body .text-white a,

html > body .text-black a {

  color: inherit;

}



html > body .text-grey-light {

  color: #999999;

}



html > body .lh-sm {

  line-height: 1.25;

}



html > body .lh-md {

  line-height: 1.625;

}



html > body .lh-lg {

  line-height: 1.875;

}



html > body .lh-lg2 {

  line-height: 1.8;

}



html > body .fs14 {

  font-size: .875rem;

}



html > body .fs18 {

  font-size: 1.125rem;

}



html > body .fs20 {

  font-size: 1.25rem;

}



html > body .fs28 {

  font-size: 1.75rem;

}



html > body .fs30 {

  font-size: 1.875rem;

}



html > body .fs36 {

  font-size: 2.25rem;

}



html > body .fs42 {

  font-size: 2.625rem;

}



html > body .fs48 {

  font-size: 3rem;

}



html > body .fs60 {

  font-size: 2.75rem;

  line-height: 1.36666667;

}



.fs18.text-grey {

  line-height: 1.66666667;

}



.h1-lg {

  font-size: 3.5rem;

  font-weight: bold;

  letter-spacing: -.025em;

}



@media (min-width: 576px) {

  .text-right-sm {

    text-align: right !important;

  }



  html > body .fs60 {

    font-size: 3.75rem;

    line-height: 1.36666667;

  }

}



@media (min-width: 768px) {

  .text-right-md {

    text-align: right !important;

  }



  .h1-lg {

    font-size: 4.5rem;

    line-height: 1.13888889;

  }

}



.font-custom {

  font-family: 'Butler', Serif;

}



.font-teko {

  font-family: 'Teko', sans-serif;

}



.font-libre {

  font-family: 'Gotham Rounded', serif;

  

}



.font-abril {

  font-family: 'Abril Fatface', cursive;

  font-weight: normal;

}



.base-list {

  margin: 0;

  padding: 0;

  list-style: none;

}



.base-list > li {

  padding-left: 1rem;

  position: relative;

  margin-bottom: 1.25rem;

}



.base-list > li:before {

  content: "";

  display: block;

  position: absolute;

  left: 0;

  top: .7em;

  width: .25rem;

  height: .25rem;

  border-radius: 5rem;

  background: #000000;

}



.more {

  text-transform: uppercase;

}



.more-lg {

  text-transform: uppercase;

  font-size: 1.25rem;

  font-weight: bold;

}



.more-xl {

  text-transform: uppercase;

  font-size: 1.5rem;

  font-weight: bold;

}



.more a,

.more-lg a {

  color: #000000;

  text-decoration: none;

}



.more a:hover,

.more-lg a:hover,

.more-total a:hover {

  color: #b11d11;

}



.more-lg i {

  display: inline-block;

  vertical-align: middle;

  margin-left: .5em;

  font-size: 110%;

  line-height: .75;

}



.ion-ios-arrow-left,

.ion-ios-arrow-right {

  transform: translateX(0);

  transition: transform .3s ease-in-out;

}



a:hover .ion-ios-arrow-right,

button:hover .ion-ios-arrow-right,

.btn:hover .ion-ios-arrow-right {

  transform: translateX(.25rem);

}



a:hover .ion-ios-arrow-left,

button:hover .ion-ios-arrow-left,

.btn:hover .ion-ios-arrow-left {

  transform: translateX(-.25rem);

}



/* 1.3 Fields */



html > body .mr20 {

  margin-right: 1.25rem;

}



html > body .mt5 {

  margin-top: 5px;

}



html > body .mt10 {

  margin-top: .625rem;

}



html > body .mt20 {

  margin-top: 1.25rem;

}



html > body .mt30 {

  margin-top: 1.875rem;

}



html > body .mt40 {

  margin-top: 2.5rem;

}



html > body .mt50 {

  margin-top: 3.125rem;

}



html > body .mt55 {

  margin-top: 3.4375rem;

}



html > body .mt60 {

  margin-top: 3.75rem;

}



html > body .mt65 {

  margin-top: 4.0625rem;

}



html > body .mt70 {

  margin-top: 4.375rem;

}



html > body .mt80 {

  margin-top: 5rem;

}



html > body .mt90 {

  margin-top: 5.625rem;

}



html > body .mt100 {

  margin-top: 6.5rem;

}



html > body .mt150 {

  margin-top: 9.375rem;

}



html > body .mb5 {

  margin-bottom: 5px;

}



html > body .mb10 {

  margin-bottom: .625rem;

}



html > body .mb20 {

  margin-bottom: 1.25rem;

}



html > body .mb30 {

  margin-bottom: 1.875rem;

}



html > body .mb35 {

  margin-bottom: 2.1875rem;

}



html > body .mb40 {

  margin-bottom: 2.5rem;

}



html > body .mb45 {

  margin-bottom: 2.8125rem;

}



html > body .mb50 {

  margin-bottom: 3.125rem;

}



html > body .mb55 {

  margin-bottom: 3.4375rem;

}



html > body .mb60 {

  margin-bottom: 3.75rem;

}



html > body .mb65 {

  margin-bottom: 4.0625rem;

}



html > body .mb70 {

  margin-bottom: 4.375rem;

}



html > body .mb75 {

  margin-bottom: 4.6875rem;

}



html > body .mb80 {

  margin-bottom: 5rem;

}



html > body .mb90 {

  margin-bottom: 5.625rem;

}



html > body .mb100 {

  margin-bottom: 6.25rem;

}



html > body .mb120 {

  margin-bottom: 7.5rem;

}



html > body .mb130 {

  margin-bottom: 8.125rem;

}



/* 1.4 Buttons */



button:focus,

input:focus {

  outline: none;

}



.btn {

  padding: .75rem 2rem .75rem;

  font-weight: bold;

  text-transform: uppercase;

  border-radius: 0;

}



.btn-sm {

  padding: .875rem 1.5rem .8125rem;

}



.btn-md {

  padding: .875rem 2rem .9375rem;

}



.btn-xs {

  border-color: #cccccc;

  padding: 3px 12px 3px;

  font-size: .75rem;

  color: #a7a9b8;

  letter-spacing: .025em;

}



.btn-light {

  background: #ffffff;

  border-color: #999999;

}



.btn-dark {

  background: #000000;

  border-color: #000000;

}



.btn-dark:hover,

.btn-dark:not(:disabled):not(.disabled):active {

  background: #23272b;

  border-color: #23272b;

}



.btn .icon {

  margin-left: .75rem;

  display: inline-block;

  vertical-align: middle;

  margin-top: -.375rem;

  margin-bottom: -.25rem;

  line-height: 1;

  font-size: 1.25rem;

}





.btn-sm .icon {

  font-size: 1.125rem;

  line-height: .75;

}



.btn-sm .ion-ios-email-outline {

  font-size: 1.5rem;

}



.btn-light:hover,

.btn-light:not(:disabled):not(.disabled):active {

  background-color: #b11d11;

  border-color: #b11d11;

  color: #ffffff;

}



.btn-outline-secondary:hover,

.btn-outline-secondary:not(:disabled):not(.disabled):active {

  background-color: #ffffff;

  border-color: #b11d11;

  color: #b11d11;

}



.btn-danger {

  background: #b11d11;

  border-color: #b11d11;

}



.btn-rounded {

  border-radius: 30px;

}



.btn-link.text-black:hover {

  color: #000000;

}



/* 1.5 Forms */



.form-control {

  border-radius: 0;

  padding: .625rem 1.25rem .625rem;

  height: calc(1.5em + 1.25rem + 2px);

}



.form-control-lg {

  padding: .875rem 1.25rem .9375rem;

  height: calc(1.5em + 1.8125rem + 2px);

  font-size: 1rem;

}



.control-with-icon {

  position: relative;

}



.control-with-icon .form-control {

  padding-right: 3rem;

}



.control-icon {

  padding-top: 1px;

  position: absolute;

  top: 50%;

  right: 20px;

  font-size: 1.5rem;

  color: #999999;

  -webkit-transform: translate(0%, -50%);

          transform: translate(0%, -50%);

}



.control-icon i,

.control-icon i:before {

  display: block;

  line-height: .75;

}



.control-btn {

  margin-top: 2.75rem;

}



.label-custom {

  margin-bottom: 0;

  display: block;

  text-transform: uppercase;

  font-size: .75rem;

  font-weight: bold;

}



.form-control-custom {

  border: none;

  border-bottom: #cccccc 1px solid;

  padding: 0 0 .625rem;

  height: calc(1.5em + .625rem + 1px);

  color: #000000;

  font-weight: normal;

}



.form-control-custom::-webkit-input-placeholder {

  color: #999999;

}



.form-control-custom::-moz-placeholder {

  color: #999999;

}



.form-control-custom:-ms-input-placeholder {

  color: #999999;

}



.form-control-custom::-ms-input-placeholder {

  color: #999999;

}



.form-control-custom::placeholder {

  color: #999999;

}



.form-control-custom:focus {

  border-color: #000000;

}







/* 1.6 Preloader */



.preloader {

  position: fixed;

  overflow: hidden;

  z-index: 999999;

  left: 0;

  top: 0;

  width: 100%;

  height: 100%;

  background:#fff;

  color:#4b4b4b;

  text-align: center;

}



.spinner {

  position: absolute;

  top: 50%;

  left: 50%;

  width: 50px;

  height: 50px;

  -webkit-transform: translate(-50%, -50%);

  transform: translate(-50%, -50%);

}



.double-bounce1,

.double-bounce2 {

  width: 100%;

  height: 100%;

  border-radius: 50%;

  background-color: #2c1a6a;

  opacity: 0.6;

  position: absolute;

  top: 0;

  left: 0;

  -webkit-animation: sk-bounce 2.0s infinite ease-in-out;

  animation: sk-bounce 2.0s infinite ease-in-out;

}



.double-bounce2 {

  -webkit-animation-delay: -1.0s;

  animation-delay: -1.0s;

}



@-webkit-keyframes sk-bounce {

  0%, 100% { -webkit-transform: scale(0.0) }

  50% { -webkit-transform: scale(1.0) }

}



@keyframes sk-bounce {

  0%, 100% { 

    transform: scale(0.0);

    -webkit-transform: scale(0.0);

  } 50% { 

    transform: scale(1.0);

    -webkit-transform: scale(1.0);

  }

}





/*-------------------------------------------------------------------------------

  2. Header

-------------------------------------------------------------------------------*/



.header {

  padding-top: 1.5rem;

  /*transition: color .2s ease-in-out;*/

  transition: margin-top .5s ease-in-out;

  margin-top: 0;

}



@media (min-width: 768px) {

  .header {

    padding-top: 2.625rem;

  }

}


.headerhome-fixed {

  position: fixed;

  top: 0;

  left: 0;

  width: 100%;

  z-index: 900;
  
  

}


.header-fixed {

  position: fixed;

  top: 0;

  left: 0;

  width: 100%;

  z-index: 900;
  
  background-color: white;
  

}



.header-affix {

  position: fixed !important;

  top: -5rem !important;

  left: 0;

  width: 100%;

  z-index: 900;

  background: #ffffff;

  padding-top: .75rem !important;

  padding-bottom: .5rem !important;

  box-shadow: rgba(0,0,0,.1) 0 3px 15px;

  margin-top: 5rem;

}



.header-affix .nav-logo {

  transform: scale(.45);

}



@media (max-width: 767px) {

  .header-affix .nav-logo {

    margin-left: -50%;

   

  }

}



.menu .menu-lang,

.menu .menu-main,

.menu .social,

.menu .menu-copyright {

  opacity: 0;

  transform: translateY(3rem);

  transition: all .5s ease-in-out;

}



.menu .menu-lang {

  transition-delay: .2s;

}



.menu .menu-main {

  transition-delay: .4s;

}



.menu .social {

  transition-delay: .6s;

}



.menu .menu-copyright {

  transition-delay: .8s;

}



.body-menu-opened .menu .menu-lang,

.body-menu-opened .menu .menu-main,

.body-menu-opened .menu .social,

.body-menu-opened .menu .menu-copyright {

  opacity: 1;

  transform: translateY(0);

}



.brand {

  float: left;

  margin-right: 1rem;

  white-space: nowrap;

}



.brand a {

  color: inherit;

  text-decoration: none;

}



.brand-name,

.brand-text {

  display: inline-block;

  vertical-align: middle;

}



.brand-name {

  margin-right: .875rem;

  font-family: 'Butler', Serif;

  font-size: 2.875rem;

  font-weight: 900;

  line-height: 1.1;

}



.brand-text {

  margin-bottom: .375rem;

  font-size: 1.125rem;

  line-height: 1.15;

  letter-spacing: -.5px;

}



.header-content {

  margin-left: 17.5%;

  margin-right: 17.5%;

}



.header-contacts {

  padding-top: .5rem;

  font-weight: bold;
  

}



.header-contact-item,

.header-contact-divider {

  display: inline-block;

  vertical-align: middle;

}



.header-contact-divider {

  margin-left: 1.875rem;

  margin-right: 1.875rem;

  opacity: .2;

}



.phone-link,

.phone-link:hover,

.mail-link,

.mail-link:hover {

  color: inherit;

  text-decoration: none;

}



.phone-link {

  cursor: default;

}



.nav-toggle-btn {

  background: none;

  border: none;

  padding: 0;

  margin: .25rem 0 0;

  border-radius: 0;

  outline: none;

  float: right;

  position: relative;

  z-index: 995;

  font-weight: bold;

  text-transform: uppercase;

  color: inherit;

}



.nav-toggle-btn:hover {

  color: #b11d11;

}



.nav-toggle-btn:focus {

  outline: none;

}



.nav-toggle-title {

  display: inline-block;

  vertical-align: middle;

  margin-right: .75rem;

}



.nav-toggle {

  width: 29px;

  height: 29px;

  display: inline-flex;

  vertical-align: middle;

  flex-direction: column;

  align-items: center;

  justify-content: center;

  margin: auto;

  cursor: pointer;

}



.nav-toggle-sm {

  transform: scale(.65);

  margin-right: -.3125rem;

}



.stick {

  width: 29px;

  height: 3px;

  margin-bottom: 5px;

  background-color: #000000;

  display: inline-block;

}



.nav-toggle-btn:hover .stick {

  background-color: #b11d11;

}



.body-menu-opened .nav-toggle-btn {

  color: #000000;

}



.body-menu-opened .nav-toggle-btn .stick {

  background-color: #000000;

}



.stick:last-child {

  margin-bottom: 0px;

}



.nav-toggle:hover .stick-2 {

  width: 29px;

}



.body-menu-opened .stick-1 {

  animation: stick-1-open .85s ease-out forwards;

}



.body-menu-opened .stick-2 {

  animation: stick-2-open .85s linear forwards;

  width: 29px;

  margin-left: 0px;

}



.body-menu-opened .stick-3 {

  animation: stick-3-open .85s linear forwards;

}



@-webkit-keyframes stick-1-open {

  0%   {width: 29px;}

  30%  {width: 3px; transform: translate(14px, 0px);}

  65%  {width: 3px; transform: translate(14px, -29px); animation-timing-function: cubic-bezier(0,1,1,1);}

  100% {width: 2px; transform: translate(9px, 17px);}

}



@keyframes stick-1-open {

  0%   {width: 29px;}

  30%  {width: 3px; transform: translate(14px, 0px);}

  65%  {width: 3px; transform: translate(14px, -29px); animation-timing-function: cubic-bezier(0,1,1,1);}

  100% {width: 2px; transform: translate(9px, 17px);}

}



@-webkit-keyframes stick-2-open {

  65%  {width: 29px; transform: translate(0px, 0px) rotate(0deg);}

  100% {width: 29px; transform: translate(0px, 0px) rotate(45deg);}

}



@keyframes stick-2-open {

  65%  {width: 29px; transform: translate(0px, 0px) rotate(0deg);}

  100% {width: 29px; transform: translate(0px, 0px) rotate(45deg);}

}



@-webkit-keyframes stick-3-open {

  65%  {transform: translate(0px, 0px) rotate(0deg);}

  100% {transform: translate(0px, -8px) rotate(-45deg);}

}



@keyframes stick-3-open {

  65%  {transform: translate(0px, 0px) rotate(0deg);}

  100% {transform: translate(0px, -8px) rotate(-45deg);}

}



.body-menu-close .stick-1 {

  width: 3px; 

  animation: stick-1-close .85s ease-out forwards;

}



.body-menu-close .stick-2 {

  animation: stick-2-close .85s ease-out forwards;

  margin-left: 0px;

}



.body-menu-close .stick-3 {

  animation: stick-3-close .85s ease-out forwards;

}



@-webkit-keyframes stick-1-close {

  0%, 70% {width: 0px; transform: translate(0, 0);}

  100%    {width: 29px; transform: translate(0, 0);}

}



@keyframes stick-1-close {

  0%, 70% {width: 0px; transform: translate(0, 0);}

  100%    {width: 29px; transform: translate(0, 0);}

}



@-webkit-keyframes stick-2-close {

  0%   {width: 29px;transform: translate(0px, 0px) rotate(45deg);}

  20%  {width: 3px; transform: translate(0, 0px) rotate(45deg);}

  40%  {width: 0px;}

  65%  {transform: translate(0, -26px); animation-timing-function: cubic-bezier(0,1,1,1);}

  80%  {width: 0px;}

  100% {width: 29px; transform: translate(0, 0px);}

}



@keyframes stick-2-close {

  0%   {width: 29px;transform: translate(0px, 0px) rotate(45deg);}

  20%  {width: 3px; transform: translate(0, 0px) rotate(45deg);}

  40%  {width: 0px;}

  65%  {transform: translate(0, -26px); animation-timing-function: cubic-bezier(0,1,1,1);}

  80%  {width: 0px;}

  100% {width: 29px; transform: translate(0, 0px);}

}



@-webkit-keyframes stick-3-close {

  0%   {width: 29px;transform: translate(0px, -8px) rotate(-45deg);}

  20%  {width: 3px; transform: translate(0, -8px) rotate(-45deg);}

  40%  {}

  65%  {transform: translate(0, -35px); animation-timing-function: cubic-bezier(0,1,1,1);}

  90%  {width: 3px;}

  100% {width: 29px; transform: translate(0, 0px);}

}



@keyframes stick-3-close {

  0%   {width: 29px;transform: translate(0px, -8px) rotate(-45deg);}

  20%  {width: 3px; transform: translate(0, -8px) rotate(-45deg);}

  40%  {}

  65%  {transform: translate(0, -35px); animation-timing-function: cubic-bezier(0,1,1,1);}

  90%  {width: 3px;}

  100% {width: 29px; transform: translate(0, 0px);}

}



@-webkit-keyframes fadeZoom {

  0%   {width: 100%;}

  100% {width: 0;}

}



@keyframes fadeZoom {

  0%   {width: 100%;}

  100% {width: 0;}

}



.navbar-nav {

  margin-left: 8rem;

  margin-right: 8rem;

  text-align: center;

  font-size: 1rem;

  text-transform: uppercase;

}



.navbar-nav ul {

  margin: 0;

  padding: 0;

  list-style: none;

}



.navbar-nav > ul > li {

  display: inline-block;

  vertical-align: middle;

  padding-left: 1rem;

  padding-right: 1rem;

}



.navbar-nav a {

  position: relative;

  color: #999999;

  text-decoration: none;

  transition: color 0.3s cubic-bezier(0.82, 0, 0.21, 1);

}



.navbar-nav a:before {

  content: attr(data-text);

  position: absolute;

  width: 0%;

  transition: width cubic-bezier(0.82, 0, 0.21, 1) 0.3s;

  color: #b11d11;

  z-index: 2;

  overflow: hidden;

}



.navbar-nav li.active > a,

.navbar-nav a:hover {

  color: #999999;

}



.navbar-nav li.active > a:before,

.navbar-nav a:hover:before {

    width: 100%;

}



.navbar-nav li.active > a {

  font-weight: bold;

  color: transparent !important;

}



.menu-main li.active > a {

  color: transparent !important;

}



.navbar-nav .dropdown-toggle::after {

  display: none;

}



.navbar-nav .dropdown-menu {

  width: 25rem;

  padding: 27px 40px 22px;

  border: none;

  background: #ffffff;

  border-radius: 0;

  margin-top: 1.125rem;

  margin-left: -40px;

  text-transform: none;

  box-shadow: 0 15px 25px rgba(0,0,0,0.05);

  position: absolute;

  left: 20px !important;

  top: 100% !important;

  transform: translate3d(0, 0, 0) !important;

}



.navbar-nav .dropdown:hover .dropdown-menu {

  animation: transform .3s ease-in-out forwards;

}



.navbar-nav .dropdown-menu:before {

  content: "";

  display: block;

  width: 100%;

  height: 1.125rem;

  position: absolute;

  left: 0;

  right: 0;

  top: -1.125rem;

}



@keyframes transform {

  0%   {margin-top: 3rem; opacity: 0;}

  100% {margin-top: 1.125rem; opacity: 1;}

}







.navbar-nav .dropdown-menu ul {

  margin: 0;

  padding: 0;

  list-style: none;

}



.navbar-nav .dropdown-menu ul li {

  margin-bottom: 6px;

}



.navbar-nav .dropdown-menu a {

  white-space: nowrap;

  color: #999999;

}



.navbar-nav .dropdown-menu .active a {

  font-weight: normal;

}



.dropdown-menu-title {

  margin-bottom: 24px;

  text-transform: uppercase;

  color: #000000;

  font-weight: bold;

}



.menu {

  position: fixed;

  top: 0;

  right: 0;

  bottom: 0;

  z-index: 990;

  background: #ffffff;

  max-width: 100%;

  width: 100%;

  padding: 3.75rem 4.375rem 3.25rem;

  display: flex;

  flex-direction: column;

  transition: transform .4s ease-in-out;

  -webkit-transform: translateX(100%);

          transform: translateX(100%);

}



.body-menu-opened .menu {

  -webkit-transform: translateX(0%);

          transform: translateX(0%);

}



@media (min-width: 576px) {

  .menu {

    width: 34rem;

  }

}



@media (min-width: 992px) {

  .navbar-nav {

    margin-left: 15rem;

    margin-right: 15rem;

  }



  .navbar-nav > ul > li {

    padding-left: 1.25rem;

    padding-right: 1.25rem;

  }

}



.body-menu-opened body {

  /*overflow: hidden;*/

  /*width: 100%;*/

  /*height: 100%;*/

}



@media (max-width: 575px) {

  .body-menu-opened {

    overflow: hidden;

    width: 100%;

    height: 100%;

  }

}



.hide-menu {

  position: fixed;

  left: 0;

  right: 0;

  top: 0;

  bottom: 100%;

  background: rgba(0,0,0,.1);

  z-index: 980;

}



.body-menu-opened .hide-menu {

  bottom: 0;

}



.menu-lang {

  font-size: .875rem;

  font-weight: bold;

  text-transform: uppercase;

}



.menu .menu-lang {

  padding-bottom: 4.5rem;

}



.menu-lang.float-right,

.text-right .menu-lang {

  margin-right: -1rem;

}



.menu-lang-item,

.menu .menu-lang-item {

  margin-right: 1rem;

  color: #000000;

}



.menu-lang-item:hover {

  color: #b11d11;

  text-decoration: none;

}



.menu-lang-item.active {

  color: #b11d11;

}



.menu-lang .divider {

  margin-right: 1rem;

}



.menu-main {

  height: 100%;

  overflow-x: hidden;

  overflow-y: auto;

}



.menu-main > ul {

  margin: 0;

  padding: 0;

  list-style: none;

}



.menu-main > ul > li {

  margin-bottom: .9375rem;

}



.menu-main > ul > li > a,

.menu-main > ul > li > span {

  font-size: 1.875rem;

  font-weight: bold;

  color: #000000;

}



.menu-main > ul > li ul {

  padding: 1rem 0 1px .875rem;

  margin: 0;

  list-style: none;

}



.menu-main > ul > li ul > li {

  margin-bottom: .375rem;

}



.menu-main > ul > li ul > li > a,

.menu-main > ul > li ul > li > span {

  color: #999999;

}



.menu-main a,

.menu-main a:hover {

  position: relative;

  text-decoration: none;

}



.menu-main a:before {

  content: attr(data-text);

  position: absolute;

  width: 0%;

  transition: width cubic-bezier(0.82, 0, 0.21, 1) 0.3s;

  color: #b11d11;

  z-index: 2;

  overflow: hidden;

  white-space: nowrap;

}



.menu-main li.active > a:before,

.menu-main a:hover:before {

    width: 100%;

}



.menu-footer {

  padding-top: 2rem;

}



.menu-copyright {

  margin-top: 18px;

  font-size: .875rem;

  line-height: 1.71428571;

  color: #666666;

  text-transform: uppercase;

}



.menu-copyright strong {

  color: #000000 !important;

}



@media (max-height: 380px) {

  .menu-footer {

    display: none;

  }

}







.header-custom {

  padding-top: 3rem;

}



.header-absolute {

  position: absolute;

  left: 0;

  top: 0;

  right: 0;

  z-index: 900;

}



.nav-logo {

  margin-top: -2.3125rem;

  margin-bottom: -2.3125rem;

  display: block;

}



.header-custom .social,

.header-custom .menu-lang {

  margin-top: .5rem;

}



.header-custom .social a {

  color: #999999;

}



.header-custom .navbar-nav a {

  color: #000000;

}



.header-custom .menu-lang {

  font-size: 1rem;

  font-weight: normal;

  color: #cccccc;

}



.header-custom .menu-lang a {

  color: #999999;

}



.header-custom .menu-lang a.active {

  color: #000000;

}



.header-custom .menu-lang a:hover {

  color: #b11d11;

}



@media (min-width: 768px) {

  .header-custom {

    padding-top: 5rem;

  }

}





/*-------------------------------------------------------------------------------

  3. Home Zoom Parallax

-------------------------------------------------------------------------------*/



.promo-zoom {

  position: relative;

  z-index: 100;

}



.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-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;

}



.section {

  padding-top: 6rem;

  padding-bottom: 4rem;

}



.section-content {

  padding-top: 6rem;

}



.section-item {

  text-align: center;

}



.section-item + .section-item {

  margin-top: 4rem;

}



.page-content {

  background: #ffffff;

  padding-top: 12%;

  position: relative;

  z-index: 100;

}



@media (min-width: 768px) {

  .page-content {

    padding-top: 8.75rem;

  }

}



.section-mini {

  padding-top: 6rem;

}



.section-centered {

  display: flex;

  align-items: center;

}



.section-centered > div {

  width: 100%;

}



.full-image,

.full-image-dark {

  min-height: 100vh;

  background-size: cover;

  background-position: 50% 0;

  background-repeat: no-repeat;

  position: relative;

}



.full-image-dark:before {

  content: "";

  z-index: 10;

  position: absolute;

  left: 0;

  top: 0;

  right: 0;

  bottom: 0;

  background: #000000;

  opacity: .3;

}



.full-image-dark > div {

  z-index: 100;

  position: relative;

}



@media (min-width: 768px) {

  .section-item + .section-item {

    margin-top: 8.125rem;

  }



  .section {

    padding-top: 10.625rem;

    padding-bottom: 10.625rem;

  }



  .section-content {

    padding-bottom: 8.125rem;

  }



  .section-mini {

    padding-top: 8.125rem;

  }

}



.section-last {

  padding-bottom: 0;

}



.section-item-title {

  margin-bottom: 1.875rem;

  font-size: 1.5rem;

  text-transform: uppercase;

  font-weight: bold;

  letter-spacing: .375rem;

  line-height: 1.5;

}



.section-item-title,

.section-item-title a {

  color: #b11d11;

}



.section-item-title-sm {

  font-size: 1.125rem;

  letter-spacing: .5em;

}



.section-item-title-md {

  font-size: 1.25rem;

  letter-spacing: .25em;

}



.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;

}



.rounded-logo {

  width: 11.5rem;

  height: 11.5rem;

  margin-left: auto;

  margin-right: auto;

  position: relative;

}



.rounded-logo svg {

  transform: rotate(175deg);

  text-transform: uppercase;

  letter-spacing: 2.65px;

  word-spacing: 4px;

  font-weight: bold;

  fill: #999999;

}



.rounded-logo .logo {

  position: absolute;

  left: 0;

  right: 0;

  top: 50%;

  margin-top: .625rem;

  text-align: center;

  font-size: 4rem;

  font-weight: 900;

  font-family: 'Butler', Serif;

  color: #000000;

  -webkit-transform: translate(0%, -50%);

          transform: translate(0%, -50%);

}



.rounded-logo-sm {

  width: 7.125rem;

  height: 7.125rem;

}



.rounded-logo-sm .logo {

  margin-top: .25rem;

  font-size: 2.5rem;

}



.rounded-logo-md {

  width: 14.125rem;

  height: 14.125rem;

}



.rounded-logo-md .logo {

  font-size: 4.8125rem;

}



.rounded-logo-lg {

  width: 17rem;

  height: 17rem;

}



.rounded-logo-lg .logo {

  font-size: 6.125rem;

}



.rounded-logo.stamp {

  width: 14.125rem;

  height: 14.125rem;

  position: absolute;

  left: 0;

  bottom: -3rem;

}



.rounded-logo.stamp svg {

  transform: rotate(150deg);

}



.rounded-logo.font-custom svg {

  letter-spacing: .1em;

  word-spacing: 2px;

}



.about-logo {

  margin-bottom: 6.25rem;

}



.about-title {

  font-size: 2.25rem;

  font-weight: bold;

}



.about-descr {

  margin-top: 1.875rem;

  font-size: 1.5rem;

  line-height: 1.5;

}







.services-descr,

.flash-descr {

  font-size: 1rem;

  line-height: 1.875;

}



.service-item {

  margin-top: 4.375rem;

  display: block;

}



a.service-item {

  text-decoration: none;

  color: #000000;

}



.services-letter {

  overflow: hidden;

  position: relative;

  font-size: 13.75rem;

  font-weight: 900;

  line-height: 1.25;

}



.services-letter .mask {

  position: absolute;

  z-index: 10;

  width: 200%;

  background: -webkit-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,1) 50%, rgba(255,255,255,1)); 

  background: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,1) 50%, rgba(255,255,255,1));

  height: 100%;

  top: 0;

  left: 100%;

}



.letter-g .text-texture {

  background-image: url("../img/bg-letter-g.jpg");

  background-position: 50% 30%;

}



.letter-w .text-texture {

  background-image: url("../img/bg-letter-w.jpg");

  background-position: 50% 30%;

}



.letter-a .text-texture {

  background-image: url("../img/bg-letter-a.jpg");

  background-position: 50% 30%;

}



.service-item-title {

  font-size: 1.5rem;

  font-weight: bold;

}



.service-item-title a,

a .service-item-title {

  color: #000000;

  text-decoration: none;

}



.service-item-title a:hover,

a:hover .service-item-title {

  color: #b11d11;

}



.service-item-descr {

  margin-top: 1.625rem;

  line-height: 1.625;

}





@-webkit-keyframes fadeInDown {

  from {

    opacity: 0;

    -webkit-transform: translate3d(0, -50px, 0);

    transform: translate3d(0, -50px, 0);

  }



  to {

    opacity: 1;

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

  }

}



@keyframes fadeInDown {

  from {

    opacity: 0;

    -webkit-transform: translate3d(0, -50px, 0);

    transform: translate3d(0, -50px, 0);

  }



  to {

    opacity: 1;

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

  }

}



.services-3d .row > div {

  display: flex;

}



.services-3d .service-item {

  position: relative;

  padding: 2.875rem 1.75rem 10.3125rem;

  margin-top: 2.5rem;

  overflow: hidden;

  background-color: transparent;

  transition: all .3s ease-in-out;

}



.services-3d .service-item:hover {

  background-color: #f3f4f6;

}



.services-3d .service-item .services-letter {

  opacity: 1;

  transition: all .3s ease-in-out;

}



.services-3d .service-item > * {

  position: relative;

  z-index: 200;

}



.services-3d .service-item > div.service-item-photo {

  position: absolute;

  z-index: 100;

}



.services-3d .service-item-photo {

  opacity: 0;

  left: 0;

  top: 0;

  right: 0;

  bottom: 0;

  background-position: 50% 0;

  background-repeat: no-repeat;

  background-size: 100%;

  -webkit-transform: translate(0, -3rem);

          transform: translate(0, -3rem);

  transition: all .5s ease-in-out;

}



@media (min-width: 768px) {

  .services-3d .service-item:hover .service-item-photo {

    opacity: 1;

    -webkit-transform: translate(0, 0);

            transform: translate(0, 0);

  }



  .services-3d .service-item:hover .services-letter {

    opacity: 0;

  }

}



.services-3d .service-item .btn {

  position: absolute;

  bottom: 4.375rem;

  left: 50%;

  white-space: nowrap;

  -webkit-transform: translate(-50%, 0);

          transform: translate(-50%, 0);

}



.services-3d .service-item-title a:hover,

.services-3d a:hover .service-item-title {

  color: #000000;

}







.projects {

  padding-bottom: 3rem;

}



@media (min-width: 768px) {

  .projects {

    padding-bottom: 10.9375rem;

  }

}



.projects .section-item-title {

  margin-bottom: 5.625rem;

}



.carousel-container {

  position: relative;

  margin-left: -3.2rem;

  margin-right: -3.2rem;

  padding-left: 3.2rem;

  padding-right: 3.2rem;

  overflow: hidden;

}



.carousel-container .mask {

  position: absolute;

  top: 0;

  bottom: 0;

  left: 100%;

  z-index: 100;

  width: 100%;

  background: #ffffff;

  animation-fill-mode: forwards;

}



.project-carousel-item {

  display: block;

  width: 100%;

  height: 0;

  padding-bottom: 70%;

  position: relative;

  text-align: left;

}



.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;

}



.project-metro-photo {

  z-index: 300;

}



.project-list-listing a,

.project-list-masonry a {

  color: #000000;

  text-decoration: none;

}



.project-list-listing a:hover .project-listing-title,

.project-list-masonry a:hover .project-masonry-title {

  color: #ff3600;

}



.project-listing-detail {

  margin-top: 2.25rem;

}



.project-listing-title {

  font-size: 2.25rem;

  font-weight: bold;

  letter-spacing: -.025em;

}



.project-metro-title {

  font-size: 3rem;

  font-weight: normal;

}



.project-masonry-detail {

  margin-top: 24px;

}



.project-masonry-title {

  font-size: 1.875rem;

  font-weight: bold;

  letter-spacing: -.025em;

}



.project-parallax-detail {

  margin-bottom: 46px;

  font-size: 1.125rem;

  text-transform: uppercase;

  letter-spacing: .025em;

}



.project-piling-title {

  font-size: 9.25925926vmin;

  line-height: 1;

  letter-spacing: -.025em;

  font-weight: normal;

}



.project-piling-title a:hover {

  text-decoration: underline !important;

}



.project-list-piling .footer {

  background: #2c1a6a;

}





.project-carousel-detail,

.project-metro-detail,

.project-carousel-date,

.project-metro-date {

  position: absolute;

  z-index: 20;

  left: 2.5rem;

  right: 2rem;

  bottom: 5rem;

  color: #ffffff;

}



.project-carousel-date,

.project-metro-date {

  bottom: auto;

  top: 2rem;

}



.project-carousel-detail {

  opacity: 0;

  transition: opacity .5s .5s ease-in-out;

}



.owl-item.active .project-carousel-detail {

  animation: fadeInDown .5s ease-out forwards;

  animation-delay: .5s;

  opacity: 1;

}



.project-carousel-title {

  margin-top: .875rem;

  font-size: 2rem;

  font-weight: bold;

  line-height: 1.1;

}



.project-carousel-more {

  position: absolute;

  opacity: 0;

  z-index: 30;

  left: 2.5rem;

  bottom: 1.5rem;

  transition: opacity .5s 1.1s ease-in-out;

}



.owl-item.active .project-carousel-more {

  animation: fadeInUp .35s ease-out forwards;

  animation-delay: 1.1s;

  opacity: 1;

}



.project .owl-theme .owl-nav {

  margin-top: 0;

}



.more-total {

  margin-top: 4.375rem;

  font-weight: bold;

  text-transform: uppercase;

}



.more-total a {

  color: #000000;

  text-decoration: underline;

}



.more-total a:hover {

  text-decoration: none;

}



.more-total-lg {

  margin-top: 8.125rem;

}



.owl-theme .owl-nav [class*=owl-] {

  padding: 0;

  position: absolute;

  top: 50%;

  -webkit-transform: translate(0%, -50%);

          transform: translate(0%, -50%);

}



.owl-theme .owl-nav [class*=owl-].disabled {

  cursor: default;

}



.owl-theme .owl-nav [class*=owl-],

.owl-theme .owl-nav [class*=owl-]:hover {

  background: none;

  background-color: transparent;

}



.owl-prev {

  left: -3rem;

}



.owl-next {

  right: -3rem;

}



.nav-inside.owl-theme .owl-nav {

  margin-top: 0;

}



.nav-inside .owl-prev {

  left: 15px;

}



.nav-inside .owl-next {

  right: 15px;

}



.nav-square.owl-theme .owl-nav [class*=owl-] {

  width: 3.75rem;

  height: 3.75rem;

  border: #333333 1px solid;

  background: transparent;

  margin: 0;

  border-radius: 0;

  transition: all .3s ease-in-out;

}



.nav-square.owl-theme .owl-nav [class*=owl-]:hover:not(.disabled) {

  background: #333333;

}



.nav-square .arrow {

    position: relative;

    width: .875rem;

    height: 1.5rem;

}



.nav-square .arrow-top,

.nav-square .arrow-bottom {

  background-color: #333333;

}



.nav-square .arrow-top:after,

.nav-square .arrow-bottom:after {

  background-color: #ffffff;

}



.nav-white-red.owl-theme .owl-nav [class*=owl-] {

  border-color: #ffffff;

  background: #ffffff;

}



.nav-white-red.owl-theme .owl-nav [class*=owl-]:hover:not(.disabled) {

  background: #b11d11;

  border-color: #b11d11;

}



.nav-white-orange.owl-theme .owl-nav [class*=owl-] {

  border-color: #ffffff;

}



.nav-white-orange.owl-theme .owl-nav [class*=owl-]:hover:not(.disabled) {

  background: #ff3600;

  border-color: #ff3600;

}



.nav-white-orange .arrow-top,

.nav-white-orange .arrow-bottom {

  background-color: #ffffff;

}



@media (min-width: 1600px) {

  .nav-inside .owl-prev {

    left: 3.75rem;

  }



  .nav-inside .owl-next {

    right: 3.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;

}



@media (min-width: 1400px) {

  .carousel-container {

    margin-left: -7.5rem;

    margin-right: -7.5rem;

    padding-left: 7.5rem;

    padding-right: 7.5rem;

  }



  .owl-prev {

    left: -7rem;

  }



  .owl-next {

    right: -7rem;

  }

}



@media (min-width: 768px) {

  .project-carousel-item {

    padding-bottom: 44.44444444%;

  }



  .project-carousel-detail,

  .project-carousel-date,

  .project-metro-date {

    left: 3.75rem;

    right: auto;

    top: auto;

    bottom: 2.625rem;

    max-width: 60%;

    color: #ffffff;

  }



  .project-carousel-date,

  .project-metro-date {

    bottom: auto;

    top: 2.625rem;

  }



  .project-carousel-title {

    font-size: 3rem;

  }



  .project-carousel-more {

    left: auto;

    right: 3.4375rem;

    bottom: 3.25rem;

  }

}



@media (max-width: 767px) {

  .project-carousel-item .btn {

    padding: 7px 12px 7px;

  }



  .owl-prev {

    left: -.5rem;

  }



  .owl-next {

   right: -.5rem;

  }



  .carousel-container {

    padding-left: 0;

    padding-right: 0;

    margin-left: 0;

    margin-right: 0;

  }

}







.clients {

  background: url("../img/bg-clients.gif") 50% 0 no-repeat;

  background-size: cover;

}



.testimonial {

  background: url("../img/bg-testimonial.png") 50% 0 no-repeat;

  background-size: cover;

}



.testimonial .owl-theme .owl-dots,

.testimonial .owl-theme .owl-nav.disabled+.owl-dots {

  margin-top: 3.75rem;

}



.reviews-carousel-container {

  background: #ffffff;

  padding-top: 2.8125rem;

  padding-bottom: 5.875rem;

  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;

  }

}







.partner-list {

  margin-top: 9.25925926vmin;

  text-align: center;

}



.partner-item {

  display: flex;

  text-align: center;

}



.partner-item img {

  opacity: 1;

  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: 10.58888889vmin;

}



.partner-item > .inside {

  

  align-self: center;

  display: block;

  width: 100%;

}


@media (max-width: 765px) {

.partner-item > .inside {
min-height:15.58888889vmin;
height:auto;

display: flex;
align-items: center;
justify-content: center;
}
}




.partner-item {

  flex: 0 0 33.33333333%;

  max-width: 33.33333333%;

}



.partner-item img {

  max-width: 100%;
   width:100px;
 

}



@media (min-width: 768px) {

  .partner-item {

    flex: 0 0 20%;

    max-width: 20%;
   
  }

}







.article-list {

  margin-top: 6.25rem;

}



.article-list > div {

  display: flex;

}



.article-item {

  width: 100%;

  margin-bottom: 2.5rem;

  position: relative;

  text-align: left;

  display: flex;

  flex-direction: column;

}



a.article-item {

  color: #000000;

  text-decoration: none;

}



.article-item-photo {

  margin-bottom: 2rem;

  height: 0;

  padding-bottom: 62.16216216%;

  position: relative;

  overflow: hidden;

}



.article-item-photo img {

  position: absolute;

  left: 0;

  top: 0;

  bottom: 0;

  right: 0;

  width: 100%;

  height: 100%;

  object-fit: cover;

}



.article-item-masonry {

  margin-bottom: 10px;

  display: block;

  position: relative;

}



.article-item-masonry,

.article-item-masonry:hover {

  color: #ffffff;

}



.article-item-masonry .article-item-photo {

  margin-bottom: 0;

  height: auto;

  padding-bottom: 0;

}



.article-item-masonry .article-item-photo img {

  position: relative;

  z-index: 100;

  width: 100%;

  height: auto;

}



.article-item-masonry .article-item-photo:before {

  content: "";

  display: block;

  position: absolute;

  left: 0;

  right: 0;

  top: 0;

  bottom: 0;

  z-index: 150;

  opacity: .6;

  background: -webkit-linear-gradient(bottom, rgba(0,0,0,.75), rgba(0,0,0,0) 70%); 

  background: linear-gradient(to top, rgba(0,0,0,.75), rgba(0,0,0,0) 70%);

  transition: all .3s ease-in-out;

}



.article-item-masonry:hover .article-item-photo:before {

  opacity: 0;

}



.article-list-listing .article-item {

  display: block;

  margin-bottom: 4.625rem;

}



.article-list-listing .article-item-photo {

  padding-bottom: 51.94805195%;

  margin-bottom: 2.125rem;

}



.article-list-listing .article-item-title {

  margin-bottom: .375rem;

  font-size: 1.5rem;

  line-height: 1.41666667;

  letter-spacing: -.025em;

}



.article-item-info {

  color: #999999;

}



.article-item-info a {

  color: #000000;

}



.article-item-info a:hover {

  color: #b11d11;

  text-decoration: none;

}



.article-item-descr {

  margin-top: 1.375rem;

  line-height: 1.625;

}



.article-item-detail {

  position: absolute;

  left: 0;

  right: 0;

  top: auto;

  bottom: 0;

  z-index: 250;

  padding: 2.5rem;

}



.article-item-mask {

  position: absolute;

  left: 0;

  right: 0;

  top: 0;

  bottom: 0;

  z-index: 200;

  background: #000000;

  opacity: .1;

  transition: all .3s ease-in-out;

}



.article-item-masonry:hover .article-item-mask {

  opacity: .5;

}



.article-item-masonry .article-item-title {

  font-size: 1.5rem;

  line-height: 1.41666667;

}



.article-item-masonry:hover .article-item-title {

  text-decoration: underline;

}



.zooming {

  overflow: hidden;

}



.zooming img {

  transform: scale(1);

  transition: all 1s linear;

}



.zooming:hover img,

a:hover .zooming img {

  transform: scale(1.08);

}



.article-item-category {

  margin-bottom: .625rem;

  font-size: .875rem;

  text-transform: uppercase;

}



.article-item-category,

.article-item-category a {

  color: #b11d11;

}



.article-item-category-dark {

  display: inline-block;

  vertical-align: top;

  margin-bottom: 10px;

  background: #333333;

  padding: 1px 8px 0;

  color: #ffffff;

  font-size: .75rem;

  text-transform: uppercase;

  letter-spacing: .025em;

  font-weight: bold;

}



.article-item-title {

  flex: 1 1 auto;

  font-size: 1.375rem;

  font-weight: bold;

  line-height: 1.36363636;

  letter-spacing: -.5px;

}



.article-item-title a,

.article-item-title a:hover {

  color: #000000;

}



.article-item-date {

  margin-top: 1.875rem;

}



.article-item-masonry .article-item-date {

  margin-top: 1.125rem;

}



.article-list-mini {

  margin-top: 1.75rem;

}



.article-item-mini {

  margin-bottom: 1.25rem;

}



.article-item-mini .article-item-photo {

  display: block;

  padding-bottom: 71.08433735%;

  margin-top: .25rem;

  margin-bottom: 0;

  width: 5.25rem;

}



.article-item-mini .article-item-title {

  margin-bottom: 0;

  font-size: .875rem;

  line-height: 1.42857143;

}



.article-item-mini .article-item-title a:hover {

  text-decoration: none;

}



.article-item-mini .article-item-date {

  margin-top: .25rem;

  color: #999999;

  font-size: .875rem;

}



.promo-zoom-footer {

  overflow: hidden;

}



.promo-zoom-footer .inside {

  margin-left: -10%;

  margin-right: -10%;

}



.promo-zoom-footer img {

}



@media (min-width: 768px) {

  .promo-zoom-footer .inside {

    margin-left: 0;

    margin-right: 0;

  }

}







/*-------------------------------------------------------------------------------

  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;

}



button.btn-play i,

button.btn-play i:before {

  display: block;

  line-height: 1;

}



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;

}



.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;

}





/*-------------------------------------------------------------------------------

  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;

}



@media (min-width: 1600px) {

  #pp-nav.right {

    right: 3.75rem;

  }

}



#pp-nav li,

.pp-slidesNav li {

  height: 24px;

  margin: 6px 0;

  width: 24px;

}



#pp-nav li a,

.pp-slidesNav li a {

  border: 1px solid transparent;

  border-radius: 20px;

}



#pp-nav li a.active,

.pp-slidesNav li a.active {

  border-color: #ff9000;

}



#pp-nav span,

.pp-slidesNav span {

  width: 6px;

  height: 6px;

  border: none;

  background: #999999;

  left: 8px;

  top: 8px;

}



#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: 8.08518519vmin;

  line-height: 1;

}



.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/st_bg2.jpg");

}




.home-piling .slide6 .slide-bg > .inside {

  background-image: url("../img/contact.jpg");

    background-color: transparent;

 

}


.home-piling .slide7 .slide-bg > .inside {

  background-image: url("../img/st_bg1.jpg");
  opacity:0,10;

    background-color: transparent;

 

}



.home-piling .slide6 .slide-bg-circle > .inside {

  background-image: url("../img/piling-pic2.png");

  background-color: transparent;

  

}



.home-piling .slide1 .slide-title-sub {

  font-size: 1.5rem;

  line-height: 1;

  font-weight: bold;

}



.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/st_bg3.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;

}



.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;

}



.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: #fff;

  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: 3.70vmin;

  font-weight: normal;

  line-height: 1.06060606;
  
  padding-bottom: 7vh;
  
  padding-top: 2vh;

}



.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 .slide6 h2,

.home-piling .slide6 .h2 {

  margin-bottom: 2.40740741vmin;

  font-size: 6.48148148vmin;

}



.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;

}







/*-------------------------------------------------------------------------------

  6. Home Minimal

-------------------------------------------------------------------------------*/



.promo-minimal-container {

  position: relative;

}



.promo-minimal {

  position: relative;

  z-index: 200;

}



.promo-minimal-hover {

  position: absolute;

  top: 0;

  right: 0;

  bottom: 0;

  left: 0;

  z-index: 100;

  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;

}



.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%;

  }

}







/*-------------------------------------------------------------------------------

  7. Home Video

-------------------------------------------------------------------------------*/



.video-bnr {

  position: relative;

  margin-bottom: -15.375rem;

  height: 37.5rem;

}



.video-container {

  position: absolute;

  z-index: 50;

  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: 99;

  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 {

  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;

}



.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);

  }

}





/*-------------------------------------------------------------------------------

  8. Home 3D

-------------------------------------------------------------------------------*/



.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: 100;

}



.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: 200;

}



.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%;

}



.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;

}


.{color:white;}


.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;

}











.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;

  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-top-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;

}



.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 {

  display: inline-block;

  vertical-align: middle;

  margin-left: .25rem;

  line-height: .75;

  transform: scale(1);

  transition: all .5s ease-in-out;

}



.services-flash {

  box-shadow: rgba(2,3,3,.1) 0 0 120px;

  margin-top: 80px;

  margin-bottom: 11.29629630vmin;

}



.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;

}



@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-top: -.375rem;

  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;

}







/*-------------------------------------------------------------------------------

  10. Work Pages

-------------------------------------------------------------------------------*/



.nav-inline {

  margin-right: -15px;

  margin-bottom: 2.625rem;

  letter-spacing: -.015em;

}



.nav-inline li {

  margin-right: 2.25rem;

  margin-bottom: 1rem;

}



.nav-inline a {

  cursor: pointer;

}



.nav-inline .active a,

.nav-inline a:hover {

  text-decoration: none;

}



.text-center .nav-inline {

  margin-right: 0;

  justify-content: center;

}



.text-center .nav-inline li {

  margin-left: 1.125rem;

  margin-right: 1.125rem;

}



.nav-inline-wide {

  letter-spacing: .025em;

}



.nav-inline-wide li {

  margin-right: 3.125rem;

}



.text-center .nav-inline-wide li {

  margin-left: 1.5625rem;

  margin-right: 1.5625rem;

}



.nav-inline.text-black .active a,

.nav-inline.text-black a:hover {

  color: #b11d11;

}



.parallax-link a,

.parallax-link a:hover {

  position: relative;

  text-decoration: none;

  color: #666666 !important;

}



.parallax-link a:before {

  content: attr(data-text);

  position: absolute;

  width: 0%;

  transition: width cubic-bezier(0.82, 0, 0.21, 1) 0.3s;

  color: #b11d11;

  z-index: 2;

  overflow: hidden;

  white-space: nowrap;

}



.parallax-link li.active > a:before,

.parallax-link a:hover:before {

    width: 100%;

}



.nav.flex-column li {

  margin-bottom: 1rem;

}



.nav.flex-column a {

  color: inherit;

  text-decoration: none;

}



.nav.flex-column .active a,

.nav.flex-column a:hover {

  color: #b11d11;

}





/*-------------------------------------------------------------------------------

  11. Project Card

-------------------------------------------------------------------------------*/



.project-card-mobile {

  padding-top: 5.375rem;

}



.project-card-promo {

  height: 0;

  padding-bottom: 44.79166667%;

  background-size: cover;

  background-position: 50% 20%;

  overflow: hidden;

  transition: all .1s linear;

}



.project-info {

  padding-top: 4.875rem;

  padding-bottom: 1.125rem;

  border-bottom: #eaeaea 1px solid;

}



.project-info-item {

  margin-bottom: 3.5rem;

}



.project-info-title {

  margin-bottom: 1.25rem;

  font-size: 1.125rem;

  font-weight: bold;

  color: #000000;

  text-transform: uppercase;

}



.project-info-descr {

  line-height: 1.625;

  color: #999999;

}



.lead {

  font-weight: normal;

}



.lead-lg {

  font-size: 1.5rem;

}



.like-btn {

  width: 5rem;

  height: 5rem;

  border-radius: 5rem;

  background: #f4f6f6;

  border: #f4f6f6 1px solid;

  padding: 0;

  margin: 0;

  cursor: pointer;

  font-size: 2.25rem;

  color: #ff3600;

}



.like-btn i {

  display: inline-block;

  vertical-align: middle;

  line-height: 1;

  transform: scale(1);

  transition: all .2s ease-in-out;

}



.like-btn:hover i {

  transform: scale(1.08);

}



.pager {

  letter-spacing: .025em;

}



.pager i {

  vertical-align: middle;

  line-height: 1;

  font-size: 1.25rem;

}



.pager .ion-ios-arrow-left {

  margin-right: .5rem;

}



.pager .ion-ios-arrow-right {

  margin-left: .5rem;

}



.pager a {

  color: #000000;

  text-decoration: none;

}



.pager a:hover {

  color: #b11d11;

}



.pagination {

  margin-top: 7rem;

  font-size: .875rem;

  font-weight: bold;

  text-transform: uppercase;

  letter-spacing: .1em;

}



.page-link {

  border: none;

  padding: 0;

  background: transparent;

  margin-right: 1.625rem;

  color: #999999;

}



.page-item.disabled .page-link {

  color: #999999;

  opacity: .3;

}



.page-link:hover,

.page-item.active .page-link {

  background: transparent;

}



.page-item.active .page-link,

a.page-link:hover {

  color: #16171e;

}



.page-link i,

.page-link i:before {

  display: block;

  font-size: 1.5rem;

  line-height: .75;

}



.tags li {

  margin-right: 10px;

}



.tags .active .btn-outline-secondary,

.tags .btn-outline-secondary:hover,

.tags .btn-outline-secondary:not(:disabled):not(.disabled):active,

.theme-orange .tags .btn-outline-secondary:hover {

  background: transparent;

  border-color: #16171e !important;

  color: #16171e !important;

}



.next-project {

  position: relative;

  background: #eaeeef;

}



.next-project [class^="col-"] {

  position: static;

}



.next-project a {

  display: block;

  padding-top: 3.25rem;

  padding-bottom: 3rem;

  text-decoration: none;

  color: #000000;

}



.next-project-link {

  text-align: right;

}



.next-project-photo {

  position: absolute;

  top: 0;

  bottom: 0;

  z-index: 100;

  background-size: cover;

  background-position: 50% 50%;

  opacity: 0;

  transition: all .5s .5s ease-in-out;

}



.prev-project-link .next-project-photo {

  left: 0;

  right: 50%;

}



.next-project-link .next-project-photo {

  left: 50%;

  right: 0;

}



.next-project a:hover .next-project-photo {

  opacity: 1;

}



.next-project h3,

.next-project .h3 {

  position: relative;

  top: 0;

  opacity: 1;

  font-size: 1.5rem;

  transition: all .4s .3s ease-in-out;

}



.next-project-promo {

  height: 24rem;

  padding-top: 5rem;

  padding-bottom: 5rem;

  display: flex;

  align-items: center;

  background-position: 50% 0%;

  background-size: cover;

  text-align: center;

}



.next-title {

  margin-bottom: 1rem;

  font-size: 1.25rem;

  text-transform: uppercase;

}



.next-project .next-title {

  margin-bottom: .75rem;

  font-size: 1.125rem;

  color: #999999;

  position: relative;

  top: 0;

  opacity: 1;

  transition: all .4s .2s ease-in-out;

}



.next-project a:hover .next-title,

.next-project a:hover h3,

.next-project a:hover .h3 {

  top: -2rem;

  opacity: 0;

}



.screen-item {

  border: #cccccc 1px solid;

  margin-bottom: 30px;

  display: block;

}



.screen-item img {

  display: block;

  width: 100%;

}



.testimonial-text {

  margin-bottom: 5rem;

  letter-spacing: -.025em;

  font-size: 1.5rem;

  line-height: 1.73333333;

}



.testimonial-item-lg .testimonial-text {

  font-size: 2.25rem;

  line-height: 1.66666667;

}



.testimonial-author {

  letter-spacing: .05em;

}



.testimonial-author.text-grey strong {

  color: #000000;

}



.testimonial-author:before,

.testimonial-author:after {

  content: " - ";

}



@media (min-width: 768px) {

  .next-project-promo {

    height: 29.375rem;

  }



  .next-project a {

    padding-top: 5.625rem;

    padding-bottom: 5rem;

  }



  .next-project h3,

  .next-project .h3 {

    font-size: 1.875rem;

  }



  .testimonial-text {

    font-size: 1.875rem;

  }

}



.photo-list {

  overflow-x: hidden;

  overflow-y: visible;

}



.photo-item {

  overflow: hidden;

  text-align: center;

  margin-bottom: 5rem;

}



.project-card-web-promo img,

.photo-item-grey img,

.photo-item img {

  max-width: 100%;

}



.photo-item-grey {

  background: #dde2e4;

  padding: 7.29166667% 15px;

  text-align: center;

}



.photo-item-grey .inside {

  display: inline-block;

  vertical-align: middle;

  overflow: hidden;

  box-shadow: rgba(146,156,160,.75) 0 2.5rem 9.375rem;

}



.photo-item-grey img {

  transform: scale(1);

  transition: all .5s ease-in-out;

}



.photo-item-grey .inside img {

  width: 100%;

}



.photo-item-grey-parallax {

  height: 0;

  padding-bottom: 72.72727273%;

  padding-top: 0;

  overflow: hidden;

  position: relative;

}



.inside-left {

  width: 60%;

  position: absolute;

  left: 10%;

  top: 40%;

  z-index: 10;

}



.inside-right {

  width: 60%;

  position: absolute;

  left: 43.03030303%;

  top: -96.66666667%;

}



.inside-center {

  width: 76.60606061%;

  position: absolute;

  left: 11.75757576%;

  top: 17.16666667%;

}



@media (min-width: 768px) {

  .photo-list {

    margin-bottom: -10.75rem;

  }



  .photo-item {

    margin-bottom: 14.375rem;

  }



  .photo-item.col-md-6:nth-child(odd) {

    text-align: right;

    padding-right: 4.42708333%;

  }



  .photo-item.col-md-6:nth-child(even) {

    text-align: left;

    padding-left: 4.42708333%;

  }

}



@-webkit-keyframes fadeInLeft {

  from {

    opacity: 0;

    -webkit-transform: translate3d(-150px, 0, 0);

    transform: translate3d(-150px, 0, 0);

  }



  to {

    opacity: 1;

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

  }

}



@keyframes fadeInLeft {

  from {

    opacity: 0;

    -webkit-transform: translate3d(-150px, 0, 0);

    transform: translate3d(-150px, 0, 0);

  }



  to {

    opacity: 1;

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

  }

}



@-webkit-keyframes fadeInRight {

  from {

    opacity: 0;

    -webkit-transform: translate3d(150px, 0, 0);

    transform: translate3d(150px, 0, 0);

  }



  to {

    opacity: 1;

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

  }

}



@keyframes fadeInRight {

  from {

    opacity: 0;

    -webkit-transform: translate3d(150px, 0, 0);

    transform: translate3d(150px, 0, 0);

  }



  to {

    opacity: 1;

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

  }

}



@-webkit-keyframes fadeInUp {

  from {

    opacity: 0;

    -webkit-transform: translate3d(0, 50px, 0);

    transform: translate3d(0, 50px, 0);

  }



  to {

    opacity: 1;

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

  }

}



@keyframes fadeInUp {

  from {

    opacity: 0;

    -webkit-transform: translate3d(0, 50px, 0);

    transform: translate3d(0, 50px, 0);

  }



  to {

    opacity: 1;

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

  }

}





.project-next-simple {

  font-size: 5rem;

  font-weight: bold;

  text-align: center;

}



.project-card-web-promo {

  background: #dde2e4;

  height: 0;

  padding-bottom: 52.08333333%;

  overflow: hidden;

  position: relative;

}



.project-card-web-promo .screen-mobile {

  position: absolute;

  left: 14.58333333%;

  top: 18.7962963%;

  width: 20.83333333%;

}



.project-card-web-promo .screen-desktop {

  position: absolute;

  left: 28.90625%;

  top: 18.7962963%;

  width: 59.0625%;

}



.pallete-list {

  margin-right: -4rem;

}



@media (max-width: 767px) {

  .pallete-list {

    margin-bottom: 5rem;

  }



  .project-card-web-promo {

    padding-bottom: 80%;

  }



  .project-card-web-promo .screen-desktop,

  .project-card-web-promo .screen-mobile {

    margin-top: 4rem;

  }

}



.pallete-item {

  display: inline-block;

  vertical-align: top;

  margin-right: 4rem;

  margin-bottom: 2.375rem;

  text-align: center;

}



.color {

  display: block;

  width: 3.75rem;

  height: 3.75rem;

  border-radius: 3.75rem;

  margin-bottom: 24px;

}



.color-title {

  color: #999999;

  font-size: .875rem;

  text-transform: uppercase;

}







/*-------------------------------------------------------------------------------

  12. News Pages

-------------------------------------------------------------------------------*/



.article-content {

  font-size: 1.125rem;

  line-height: 1.66666667;

}



.article-content .fs20 {

  line-height: 1.5;

}



.article-content .fs20 p {

  margin-bottom: 1.5em;

}



.article-content p {

  margin-bottom: 1.66666667em;

}



.article-content h2,

.article-content .h2 {

  margin-top: 5.5rem;

  margin-bottom: 3.125rem;

}



.article-content h4,

.article-content .h4 {

  margin-top: 3.75rem;

  margin-bottom: 2rem;

  font-family: 'Libre Baskerville', serif;

  letter-spacing: 0;

}



.article-content h4:first-child,

.article-content .h4:first-child {

  margin-top: 0;

}



.article-content .lead {

  margin-bottom: 50px;

  font-size: 1.5rem;

  color: #999999;

  font-family: 'Libre Baskerville', serif;

  font-style: italic;

  line-height: 1.5;

  letter-spacing: -.01em;

}



.article-content .dropcap:first-letter {

  float: left;

  margin-bottom: -1rem;

  margin-right: 1rem;

  font-size: 3.75rem;

  font-family: 'Libre Baskerville', serif;

  line-height: 1.275;

}



.article-content figure {

  margin-top: 3.5rem;

  margin-bottom: 4rem;

}



.article-content figure img {

  max-width: 100%;

  height: auto;

}



.article-content figcaption {

  display: block;

  margin-top: 1rem;

  text-align: center;

  font-size: 1rem;

  color: #999999;

}



.article-content ul {

  margin: 0;

  padding: 0;

  list-style: none;

}



.article-content ul li {

  position: relative;

  padding-left: 2rem;

  margin-bottom: 1.125rem;

}



.article-content ul li:before {

  content: "";

  display: block;

  width: 5px;

  height: 5px;

  background: #000000;

  border-radius: 5px;

  position: absolute;

  left: 0;

  top: .7em;

}



.mask-skew {

  overflow: hidden;

  position: relative;

}



.mask-skew .mask {

  position: absolute;

  left: 100%;

  top: 0;

  bottom: 0;

  z-index: 100;

  width: 120%;

  animation-fill-mode: forwards;

}



.mask-skew .mask .inside {

  position: absolute;

  left: 0;

  top: 0;

  right: 0;

  bottom: 0;

  background: #ffffff;

  transform: skewX(-10deg);

  transform-origin: bottom;

}





.blockquote {

  margin-top: 4.5rem;

  margin-bottom: 4.125rem;

  text-align: center;

  font-size: 1.875rem;

  line-height: 1.53333333;

  letter-spacing: -.025em;

}



.blockquote footer {

  margin-top: 2.5rem;

  position: relative;

  font-size: .875rem;

  text-transform: uppercase;

  letter-spacing: .2em;

  color: #999999;

}



.blockquote footer:before {

  content: "";

  display: block;

  width: 1.875rem;

  height: 1px;

  background: #a7a9b8;

  position: absolute;

  top: -1.25rem;

  left: 50%;

  transform: translate(-50%, 0);

}



.blockquote-status footer {

  text-transform: none;

  letter-spacing: 0;

}



.blockquote-status footer:before {

  display: none;

}







.article-carousel-promo .owl-nav [class*=owl-] {

  display: none;

}



.article-carousel-promo .owl-dots {

  margin-top: 1rem;

}



.article-promo-item {

  display: block;

  min-height: 35rem;

  background-position: 50% 20%;

  background-size: cover;

  padding-top: 4rem;

  padding-bottom: 3rem;

  position: relative;

  text-decoration: none;

  display: flex;

  align-items: center;

}



.article-promo-item,

.article-promo-item a {

  color: #ffffff;

}



.article-carousel-promo-detail a:not(.btn) {

  text-decoration: underline;

}



.article-carousel-promo-detail a:not(.btn):hover {

  text-decoration: none;

}



.article-promo-item:before {

  content: "";

  position: absolute;

  left: 0;

  right: 0;

  top: 0;

  bottom: 0;

  background: #000000;

  opacity: .25;

}



.article-promo .article-promo-item:before {

  display: none;

}



.article-promo-item .btn-outline-light:hover {

  background: #ff3600;

  border-color: #ff3600;

  color: #ffffff;

}



.bnr {

  position: relative;

  background: #181b31;

  display: block;

}



.bnr-photo {

  opacity: .5;

}



.bnr-photo img {

  width: 100%;

  height: auto;

}



.bnr-content {

  position: absolute;

  left: 0;

  right: 0;

  top: 0;

  bottom: 0;

  display: flex;

  align-items: center;

  justify-content: center;

  padding: 1.25rem 1.25rem 1.875rem;

  text-align: center;

  color: #ffffff;

}



.bnr-title {

  font-size: 1.5rem;

  font-weight: bold;

}



.bnr-title-sub {

  margin-bottom: 10px;

  font-size: .75rem;

  font-weight: bold;

  letter-spacing: .1em;

}



@media (min-width: 576px) {

  .article-carousel-promo .owl-nav [class*=owl-] {

    display: block;

  }



  .article-carousel-promo .owl-dots {

    display: none;

  }



  .article-promo-item {

    min-height: 39.375rem;

    padding: 10.625rem 4.75rem 3rem;

    align-items: flex-start;

  }



  .article-promo-item-md {

    min-height: 48.75rem;

  }

}



.news-info {

  border-bottom: #eaeaea 1px solid;

}



.news-info-item {

  margin-bottom: 3.375rem;

}



.news-info-title {

  margin-bottom: 2px;

  font-size: .75rem;

  color: #999999;

  text-transform: uppercase;

  letter-spacing: .1em;

}



.article-author {

  border-top: #e5e5e5 1px solid;

  border-bottom: #e5e5e5 1px solid;

  padding-top: 3.125rem;

  padding-bottom: 2.8125rem;

}



.article-author-photo {

  width: 5rem;

}



.avatar-photo {

  background-position: 50% 50%;

  border-radius: 50%;

  background-size: cover;

  background-image: url("../img/no-avatar.gif");

  background-repeat: no-repeat;

  overflow: hidden;

  position: relative;

}



.avatar-photo:before {

  content: "";

  display: block;

  width: 100%;

  padding-bottom: 100%;

}



.avatar-photo a {

  display: block;

  position: absolute;

  left: 0;

  top: 0;

  right: 0;

  bottom: 0;

  border-radius: 50%;

}



.article-author-name {

  margin-bottom: 0;

}



.article-author-name a {

  color: #181b31;

  text-decoration: none;

}



.article-author-name a:hover {

  text-decoration: underline;

}



.article-author-status {

  font-size: .875rem;

  color: #999999;

  text-transform: uppercase;

  letter-spacing: .1em;

}



.article-author-descr {

  margin-top: 10px;

  line-height: 1.625;

}



.comment-item {

  margin-bottom: 2rem;

}



.comment-item-photo {

  width: 4.375rem;

}



.comment-item-sub {

  margin-top: 1.75rem;

  margin-right: 1.25rem;

}



.comment-item-sub .comment-item-photo {

  width: 2.8125rem;

  margin-top: .25rem;

}



.comment-item-name {

  margin-top: 2px;

  font-size: 1.125rem;

  font-weight: bold;

  letter-spacing: -.025em;

}



.comment-item-name a {

  color: inherit;

}



.comment-item-date {

  margin-top: .375rem;

  font-size: .875rem;

  text-transform: uppercase;

  color: #999999;

}



.comment-item-descr {

  margin-top: .375rem;

  line-height: 1.625rem;

  color: #666666;

}



.comment-item-sub .comment-item-descr {

  margin-top: 0;

}



.comment-item .btn {

  margin-top: .875rem;

}







/*-------------------------------------------------------------------------------

  13. Pages

-------------------------------------------------------------------------------*/



.img404 {

  width: 41.5rem;

  max-width: 100%;

  margin-left: auto;

  margin-right: auto;

  margin-bottom: 4.875rem;

}



.progress {

  border-radius: 0;

  height: .875rem;

  overflow: visible;

}



.progress-bar {

  position: relative;

  width: 0;

  transition: width 1s ease-in-out;

}



.progress-value {

  position: absolute;

  right: 0;

  bottom: 100%;

  margin-bottom: .5rem;

  color: #181b31;

  font-size: 1rem;

}







.filter-title {

  line-height: 1.625;

  color: #999999;

  font-weight: bold;

  text-transform: uppercase;

}



.filter-location {

  letter-spacing: -.025em;

  font-size: 2.25rem;

}



.filter-location a {

  color: inherit;

  text-decoration: none;

  cursor: pointer;

}



.filter-location a:hover,

.filter-location .active a {

  color: #b11d11;

}



.job-item {

  margin-bottom: 4.625rem;

}



.job-item-title a {

  color: inherit;

}



.job-item-title {

  margin-bottom: 1rem;

}



.job-item-descr {

  line-height: 1.625;

  color: #666666;

}



.job-item-category {

  margin-top: 1.75rem;

  text-transform: uppercase;

  letter-spacing: .025em;

}





.timer-item,

.timer .divider {

  display: inline-block;

  vertical-align: top;

  text-align: center;

}



.timer-item {

  min-width: 5.25rem;

  padding-left: .625rem;

  padding-right: .625rem;

  color: #999999;

}



.timer-item span {

  display: block;

  margin-bottom: .5rem;

  font-size: 3rem;

  font-family: 'Libre Baskerville', serif;

  color: #000000;

  line-height: 1;

}



.timer .divider {

  margin-top: .25rem;

}



.timer .divider:before {

  content: ":";

  font-size: 1.5rem;

  color: #999999;

  font-weight: bold;

}



@media (min-width: 576px) {

  .timer-item {

    min-width: 7.25rem;

    padding-left: 1.625rem;

    padding-right: 1.625rem;

  }

}





.stage-list {

  padding-bottom: 3.75rem;

}



.stage-item {

  background: #f5f5f5;

}



.stage-item-photo {

  background-position: 50% 50%;

  background-size: cover;

  background-repeat: no-repeat;

}



.stage-item-photo img {

  width: 100%;

}



.stage-item-detail,

.no-gutters > .stage-item-detail {

  padding: 4rem 4.5rem 3.5rem;

}



.stage-item .mask-skew .mask .inside {

  background-color: #f5f5f5;

}



.stage-item-num {

  margin-bottom: 2rem;

  font-size: 2.25rem;

  font-family: 'Libre Baskerville', serif;

  font-weight: bold;

}



.stage-item-title {

  margin-bottom: .75rem;

  font-size: 2.75rem;

  font-weight: normal;

  letter-spacing: -.025em;

}



@media (min-width: 1200px) {

  .stage-item-detail,

  .no-gutters > .stage-item-detail {

    padding: 7rem 7.5rem 6.625rem;

  }



  .stage-item-num {

    margin-bottom: 4.75rem;

  }



  .stage-item-title {

    font-size: 3.75rem;

  }

}



.member-item {

  margin-bottom: 4rem;

}



.member-item-photo {

  position: relative;

  height: 0;

  padding-bottom: 100%;

  margin-bottom: 1.875rem;

}



.member-item-photo img {

  position: absolute;

  left: 0;

  right: 0;

  top: 0;

  bottom: 0;

  width: 100%;

  height: 100%;

  object-fit: cover;

}



.member-item-name {

  margin-bottom: .25rem;

  font-size: 1.5rem;

  font-family: 'Libre Baskerville', serif;

  font-weight: bold;

}



.member-item-name a {

  color: inherit;

}



.member-item-status {

  font-size: .875rem;

  text-transform: uppercase;

  color: #666666;

}



.member-become {

  display: block;

  position: relative;

  height: 0;

  width: 100%;

  padding-bottom: 100%;

  background: #f4f6f6;

  text-align: center;

  text-decoration: none;

}



.member-become .inside {

  position: absolute;

  width: 100%;

  left: 50%;

  top: 50%;

  padding: 1rem 10% 2rem;

  transform: translate(-50%, -50%);

}



.member-become .icon {

  display: block;

  font-size: 3.75rem;

  color: #cccccc;

}



.member-become-title {

  display: block;

  margin-top: 1.5rem;

  font-size: 1.875rem;

  line-height: 1.53333333;

  font-family: 'Libre Baskerville', serif;

  text-transform: uppercase;

  font-weight: bold;

  color: #000000;

}





.service-promo-item {

  background: #f8f8f9;

  margin-bottom: 6.25rem;

}



.service-promo-item:last-child {

  margin-bottom: 0;

}



.service-promo-item-photo {

  background-position: 50% 50%;

  background-size: cover;

  background-repeat: no-repeat;

}



.service-promo-item-photo img {

  width: 100%;

}



.service-promo-item-detail,

.no-gutters > .service-promo-item-detail {

  background: #f5f5f5;

  padding: 4rem 4.5rem 3.5rem;

}



.service-promo-item-title {

  margin-bottom: 18px;

  font-size: 3rem;

  font-weight: bold;

  letter-spacing: -.025em;

}



.service-promo-item .nav.flex-column li {

  margin-bottom: .625rem;

}



@media (min-width: 1200px) {

  .service-promo-item-detail,

  .no-gutters > .service-promo-item-detail {

    padding: 5rem 3.75rem 5rem 6.125rem;

  }

}





.progress-item {

  border-top: #e2e2e2 1px solid;

  padding-top: 3rem;

  padding-bottom: 3.125rem;

}



.progress-item:first-child {

  border-top: none;

}



.progress-item-num {

  padding-bottom: .75rem;

  font-size: 6.25rem;

  font-weight: bold;

  color: #cccccc;

  line-height: 1.1;

}



.progress-item-title {

  margin-bottom: .5rem;

  font-size: 2.25rem;

  font-weight: bold;

  letter-spacing: -.025em;

}







/*-------------------------------------------------------------------------------

  14. Footer

-------------------------------------------------------------------------------*/



@media (min-width: 768px) {

  .fixed-footer .wrapper {

    position: relative;

    z-index: 200;

    margin-bottom: 51.875rem;

    background: #ffffff;

  }



  .fixed-footer-lg .wrapper {

    margin-bottom: 59.375rem;

  }



  .fixed-footer .footer {

    position: fixed;

    left: 0;

    right: 0;

    bottom: 0;

    z-index: 100;

  }

}



.footer-content {

  padding-top: 3rem;

  padding-bottom: 0rem;

  line-height: 1.625;

  color: #666666;

}



.contact-item,

.twitter-item {

  margin-bottom: .875rem;

}



.contact-item a,

.twitter-item a {

  color: #000000;

  text-decoration: underline;

}



.contact-item a:hover,

.twitter-item a:hover {

  text-decoration: none;

}



a.phone-link {

  color: inherit;

  text-decoration: none;

  cursor: default;

}



.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;

}



.twitter-date {

  margin-top: .625rem;

  color: #999999;

  text-transform: uppercase;

  font-size: .875rem;

}



.footer .section-item-title {

  margin-bottom: 2.375rem;

}



.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;

  }

}





.site-info {

  border-top: #ebebeb 1px solid;

  padding-top: 2rem;

  padding-bottom: 2rem;

}



.copyright {

  text-align: center;

  text-transform: uppercase;

}



@media (min-width: 768px) {

  .footer-content {

    padding-top: 11.25rem;

    padding-bottom: 7.5rem;

  }



  .site-info {

    padding-top: 4.5rem;

    padding-bottom: 5.375rem;

  }

}



@media (max-width: 767px) {

  .footer-content,

  .footer-content .text-right {

    text-align: center !important;

  }

}



.more.fs14 {

  letter-spacing: .05em;

}



.footer-red {

  background: #b11d11;

  color: #ffffff;

}



.footer-red .footer-content {

  color: #ffcccc;

}



@media (min-width: 768px) {

  .fixed-footer-md .footer-content {

    padding-top: 15.92592593vmin;

    padding-bottom: 6.48148148vmin;

  }



  .fixed-footer-md .site-info {

    padding-top: 5.74074074vmin;

    padding-bottom: 5.74074074vmin;

  }

}



.footer-red .twitter-date,

.footer-red .social a {

  color: #ff9999;

}



.footer-red a,

.footer-red .contact-item a,

.footer-red .twitter-item a,

.footer-red .social a:hover,

.footer-red .section-item-title,

.footer-red .h2-3d {

  color: #ffffff;

}



.footer-red .site-info {

  border-top-color: #cc3333;

}









.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;

}



.theme-orange .nav-toggle-btn:hover .stick,

.theme-orange .social-rounded a:hover,

.theme-orange .btn-primary,

.theme-orange .owl-theme .owl-dots .owl-dot.active span:before,

.theme-orange .owl-theme .owl-dots .owl-dot:hover span:before {

  background-color: #ff3600;

}



.theme-orange .bg-primary {

  background-color: #ff3600 !important;

}



.theme-orange .btn-primary:not(:disabled):not(.disabled).active:focus,

.theme-orange .btn-primary:not(:disabled):not(.disabled):active:focus,

.theme-orange .show > .btn-primary.dropdown-toggle:focus,

.theme-orange .btn-primary.focus,

.theme-orange .btn-primary:focus {

  box-shadow: 0 0 0 0.2rem rgba(255,0,0,.5);

}



.theme-orange .btn-primary:hover,

.theme-orange .btn-primary:not(:disabled):not(.disabled).active,

.theme-orange .btn-primary:not(:disabled):not(.disabled):active,

.theme-orange .show > .btn-primary.dropdown-toggle {

  background-color: #ff0000;

  border-color: #ff0000;

}





.theme-orange .social-rounded a:hover,

.theme-orange .btn-primary,

.theme-orange .owl-theme .owl-dots .owl-dot.active span,

.theme-orange .btn-outline-secondary:hover {

  border-color: #ff3600;

}





.theme-yellow .navbar-nav a:before,

.theme-yellow .menu-main a:before,

.theme-yellow .menu-lang-item.active,

.theme-yellow .menu-lang-item:hover,

.theme-yellow .nav-toggle-btn:hover,

.theme-yellow .text-primary,

.theme-yellow .social:not(.social-rounded) a:hover,

.theme-yellow .brand-name {

  color: #ff9000 !important;

}



.theme-yellow .nav-toggle-btn:hover .stick,

.theme-yellow .social-rounded a:hover,

.theme-yellow .btn-primary,

.theme-yellow .btn-play:hover {

  background-color: #ff9000;

}



.theme-yellow .social-rounded a:hover,

.theme-yellow .btn-primary,

.theme-yellow .btn-play {

  border-color: #ff9000;

}





.theme-white .navbar-nav > ul > li > a:before,

.theme-white .text-primary,

.theme-white .brand-name {

  color: #ffffff !important;

}



.theme-white .nav-toggle-btn:hover .stick,

.theme-white .social-rounded a:hover,

.theme-white .btn-primary,

.theme-white .btn-play:hover {

  background-color: #ffffff;

  color: #000000;

}



.theme-white .menu-main a:before,

.theme-white .menu-lang-item.active,

.theme-white .menu-lang-item:hover {

  color: #000000;

}



.body-menu-opened .theme-white .nav-toggle-btn:hover .stick {

  background-color: #000000;

}



.theme-white .social-rounded a:hover,

.theme-white .btn-primary,

.theme-white .btn-play {

  border-color: #ffffff;

}



.body-menu-opened .theme-white .social-rounded a:hover {

  border-color: #000000;

}


@media (min-width: 768px) {

  html {

    font-size: 13px;

  }

}



@media (min-width: 992px) {

  html {

    font-size: 14px;

  }

}



@media (min-width: 1280px) {

  html {

    font-size: 15px;

  }

}



@media (min-width: 1600px) {

  html {

    font-size: 16px;

  }

}

.partner-item-fixed img {

  opacity: .4;

  transition: all .3s ease-in-out;

}



.partner-item-fixed img:hover,

.partner-item-fixed a:hover img,

.partner-item-fixed .inside:hover img {

  opacity: 1;

}

@media only screen and (max-width: 576px) {
  .width-aligner {
    width: 100%;
  }

  .responsive-margin {
    margin-top: 20% !important;
  }
}