/* ------------------------------------------------------------------------------

  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
-------------------------------------------------------------------------------*/

@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');
}


/* 1.1 General */

/*@import url('../fonts/WebFonts/Teko/Teko-Regular.ttf');
@import url('../fonts/WebFonts/Teko/Teko-Medium.ttf');
@import url('../fonts/WebFonts/Teko/Teko-Bold.ttf');

@font-face {
    font-family: 'Teko';
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/WebFonts/Teko/LYjNdG7kmE0gfaJ9pRtB.woff2) format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB;
}

@font-face {
    font-family: 'Teko';
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/WebFonts/Teko/LYjNdG7kmE0gfa19pRtB.woff2) format('woff2');
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Teko';
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/WebFonts/Teko/LYjNdG7kmE0gfaN9pQ.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Teko';
    font-style: normal;
    font-weight: 500;
    src: url(../fonts/WebFonts/Teko/LYjCdG7kmE0gdVBesCVgqGIu.woff2) format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB;
}

@font-face {
    font-family: 'Teko';
    font-style: normal;
    font-weight: 500;
    src: url(../fonts/WebFonts/Teko/LYjCdG7kmE0gdVBesCpgqGIu.woff2) format('woff2');
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Teko';
    font-style: normal;
    font-weight: 500;
    src: url(../fonts/WebFonts/Teko/LYjCdG7kmE0gdVBesCRgqA.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Teko';
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/WebFonts/Teko/LYjCdG7kmE0gdRhYsCVgqGIu.woff2) format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB;
}

@font-face {
    font-family: 'Teko';
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/WebFonts/Teko/LYjCdG7kmE0gdRhYsCpgqGIu.woff2) format('woff2');
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Teko';
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/WebFonts/Teko/LYjCdG7kmE0gdRhYsCRgqA.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


@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');
}*/

html {
    font-size: 12px;
}

body {
    font-family: 'Karla', sans-serif!important;
    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;
}

::-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: 'Libre Baskerville', 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: 1rem;
    }
}

.header-fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 900;
    padding-top: 1rem;
}

.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: 767.99999px) {
    .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;
    }
}

.article-service-item::before {
    background:transparent!important;
}
/*-------------------------------------------------------------------------------
  3. Home Zoom Parallax
-------------------------------------------------------------------------------*/
.promo-zoom {
    position: relative;
    z-index: 100;
}

.puff-center {
    position: fixed;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    
    background-size: cover;
}

    .puff-center.animated {
    }

.puff-left {
    position: fixed;
    width: 28.958333%;
    height: 59.16666666%;
    bottom: 0;
    left: 0;
    z-index: 20;
    
    background-size: contain;
}


.puff-right {
    position: fixed;
    width: 62.76041667%;
    height: 60%;
    bottom: 0;
    right: 0;
    z-index: 30;
    
    background-size: contain;
}




.logo-center {
    position: fixed;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    background: url("../img/logodigitizing.jpg") 50% 100% no-repeat;
    background-size: cover;
}

    .logo-center.animated {
    }

.logo-left {
    position: fixed;
    width: 28.958333%;
    height: 59.16666666%;
    bottom: 0;
    left: 0;
    z-index: 20;
    background: url("../img/logodigitizingleft.png") 0 100% no-repeat;
    background-size: contain;
}


.logo-right {
    position: fixed;
    width: 62.76041667%;
    height: 60%;
    bottom: 0;
    right: 0;
    z-index: 30;
    background: url("../img/logodigitizingright.png") 100% 100% no-repeat;
    background-size: contain;
}








.hat-center {
    position: fixed;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    background: url("../img/HatDigitizing.jpg") 50% 100% no-repeat;
    background-size: cover;
}

    .hat-center.animated {
    }

.hat-left {
    position: fixed;
    width: 28.958333%;
    height: 59.16666666%;
    bottom: 0;
    left: 0;
    z-index: 20;
    background: url("../img/HatDigitizingLeft.png") 0 100% no-repeat;
    background-size: contain;
}


.hat-right {
    position: fixed;
    width: 62.76041667%;
    height: 60%;
    bottom: 0;
    right: 0;
    z-index: 30;
    background: url("../img/HatDigitizingRight.png") 100% 100% no-repeat;
    background-size: contain;
}



.TowelDigitizing-center {
    position: fixed;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    background: url("../img/TowelDigitizing.jpg") 50% 100% no-repeat;
    background-size: cover;
}

    .TowelDigitizing-center.animated {
    }

.TowelDigitizing-left {
    position: fixed;
    width: 28.958333%;
    height: 59.16666666%;
    bottom: 0;
    left: 0;
    z-index: 20;
    background: url("../img/TowelDigitizingLeft.png") 0 100% no-repeat;
    background-size: contain;
}


.TowelDigitizing-right {
    position: fixed;
    width: 62.76041667%;
    height: 60%;
    bottom: 0;
    right: 0;
    z-index: 30;
    background: url("../img/TowelDigitizingRight.png") 100% 100% no-repeat;
    background-size: contain;
}




.jacketback-center {
    position: fixed;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    background: url("../img/JacketBack.jpg") 50% 100% no-repeat;
    background-size: cover;
}

    .jacketback-center.animated {
    }

.jacketback-left {
    position: fixed;
    width: 28.958333%;
    height: 59.16666666%;
    bottom: 0;
    left: 0;
    z-index: 20;
    background: url("../img/JacketBackLeft.png") 0 100% no-repeat;
    background-size: contain;
}


.jacketback-right {
    position: fixed;
    width: 62.76041667%;
    height: 60%;
    bottom: 0;
    right: 0;
    z-index: 30;
    background: url("../img/JacketBackRight.png") 100% 100% no-repeat;
    background-size: contain;
}



.leftchest-center {
    position: fixed;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    background: url("../img/LeftChestC.jpg") 50% 100% no-repeat;
    background-size: cover;
}

    .leftchest-center.animated {
    }

.leftchest-left {
    position: fixed;
    width: 28.958333%;
    height: 59.16666666%;
    bottom: 0;
    left: 0;
    z-index: 20;
    background: url("../img/LeftChestL.png") 0 100% no-repeat;
    background-size: contain;
}


.leftchest-right {
    position: fixed;
    width: 62.76041667%;
    height: 60%;
    bottom: 0;
    right: 0;
    z-index: 30;
    background: url("../img/LeftChestR.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: #8CC640;
        border-color: #8CC640;
    }

.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: 767.99999px) {
    .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: .4;
        transition: all .3s ease-in-out;
    }

        .partner-item img:hover,
        .partner-item a:hover img,
        .partner-item .inside:hover img {
            opacity: 1;
        }

.partner-bordered .partner-item {
    margin: 0 -1px -1px 0;
    border: #eaeaea 1px solid;
    min-height: 13.88888889vmin;
}

.partner-item > .inside {
    padding: 1.5rem 1rem;
    align-self: center;
    display: block;
    width: 100%;
}

.partner-item {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
}

    .partner-item img {
        max-width: 100%;
    }

@media (min-width: 768px) {
    .partner-item {
        flex: 0 0 20%;
        max-width: 20%;
    }
}



.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: #162432;
        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: #8CC640;
        }

        .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: #8CC640;
        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: 10.18518519vmin;
    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/bg-piling5.jpg");
}

.home-piling .slide6 .slide-bg > .inside {
    background-image: url("../img/bg-piling6.jpg");
}

.home-piling .slide6 .slide-bg-circle > .inside {
    background-image: url("../img/piling-pic2.png");
    background-color: transparent;
}

.home-piling .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/bg-letter-solution.jpg");
    background-size: cover;
    font-size: 37.03703704vmin;
    font-family: 'Butler Stencil Bold';
    line-height: .75;
}

    .solution-num > .inside {
        background: #f6f6f6;
    }

.solution-num-title {
    margin-top: 3vmin;
    font-size: 1.5rem;
    text-transform: uppercase;
}

.solution-num,
.solution-num-title {
    display: inline-block;
    margin-bottom: 5vmin;
}

@media (min-width: 992px) {
    .solution-num,
    .solution-num-title {
        margin-bottom: 0;
        margin-right: 0;
    }

    .solution-num-title {
        display: block;
        margin-top: 23.70370370vmin;
    }
}

.slide2 .ornament {
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: -1;
    transform: translate3d(-80px, 0, 0);
    overflow: hidden;
}

    .slide2 .ornament > .inside {
        display: block;
        width: 88.51851852vmin;
        height: 44.25925926vmin;
        background: #f4e9db;
        border-radius: 50% 50% 0% 0% / 100% 100% 0% 0%;
        position: absolute;
        left: -80px;
        bottom: 0;
    }

.solution-collapse-item {
    margin-bottom: 2rem;
}

.solution-collapse-item-title {
    font-size: 1.625rem;
}

    .solution-collapse-item-title a {
        display: block;
        padding-right: 2rem;
        cursor: pointer;
        position: relative;
    }

        .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: #000000;
        transform: rotate(0);
        transition: transform .4s ease-in-out;
    }

.solution-collapse-item-title a.collapsed .icon-plus:after {
    transform: rotate(-90deg);
}

.solution-collapse-item-title a:not(.collapsed) .icon-plus:before,
.solution-collapse-item-title a:not(.collapsed) .icon-plus:after,
.solution-collapse-item-title a:hover .icon-plus:before,
.solution-collapse-item-title a:hover .icon-plus:after {
    background: #f4882e;
}

.solution-collapse-item-title a .icon-plus {
    position: absolute;
    right: 0;
    top: 10px;
}



.piling-project-item {
    margin-bottom: 7.22222222vmin;
}

.piling-project-title {
    margin-bottom: 1.375rem;
    font-size: 6.11111111vmin;
    font-weight: normal;
    line-height: 1.06060606;
}

    .piling-project-title a:hover,
    .slide-dark .piling-project-title a:hover,
    .piling-more-total a:hover,
    .slide-dark .piling-more-total a:hover {
        text-decoration: underline;
    }

.piling-project-detail {
    font-size: .875rem;
    text-transform: uppercase;
}

.section.active .slide-bg-list .slide-bg > .inside {
    transition: all .8s ease-in-out;
    transform: scale(1.08);
}

.slide-bg-list .slide-bg.active > .inside {
    opacity: 1;
    transform: scale(1);
    transition-delay: 0s;
    transform: scale(1) !important;
}

.slide-bg-list .slide-bg.active:first-child > .inside {
}

.slide-bg-list .slide-bg > .inside {
    opacity: 0;
}

.piling-project-list-title,
.piling-more-total {
    font-size: 1.5rem;
    font-size: 2.22222222vmin;
    font-weight: bold;
    text-transform: uppercase;
    line-height: 1.25;
}

.piling-project-list-title {
    margin-bottom: 7.77777778vmin;
}

.piling-more-total {
    margin-top: 6.94444444vmin;
}

.rounded-icon {
    display: inline-block;
    border: #ff9000 2px solid;
    width: 6.48148148vmin;
    height: 6.48148148vmin;
    border-radius: 4.375rem;
    min-width: 3rem;
    min-height: 3rem;
    text-align: center;
    position: relative;
    transition: all .3s ease-in-out;
}

.icon-quote {
    display: inline-block;
    position: absolute;
    left: 50%;
    top: 50%;
    width: 1.125rem;
    height: 1.125rem;
    background: url("../img/icon-quote.png") 50% 50% no-repeat;
    background-size: contain;
    transform: translate(-50%, -50%);
}


.home-piling .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: 767.99999px) {
    .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: 767.99999px) {
    .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;
}

.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: 767.99999px) {
    .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: 767.99999px) {
    .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: 767.99999px) {
    .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: #7eb239 !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: #8CC640;
    }

.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: #8CC640;
}


.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: #8CC640 !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: #8CC640;
    }

.theme-yellow .social-rounded a:hover,
.theme-yellow .btn-primary,
.theme-yellow .btn-play {
    border-color: #8CC640;
}


.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;
    }
}
