/* ------------------------------------------------------------------------------

  1.  Global

      1.1 General
      1.2 Typography
      1.3 Fields
      1.4 Buttons
      1.5 Forms
      1.6 Preloader

  2.  Header

  3.  Home Zoom Parallax

  4.  Home Horizontal

      4.1 Home Horizontal Navs
      4.2 Home Horizontal Setting
      4.3 Home Horizontal Animation
      4.4 Home Horizontal Dark Settings

  5.  Home Piling
  6.  Home Minimal
  7.  Home Video
  8.  Home 3D
  9.  Home Flash
  10. Work Pages
  11. Project Card
  12. News Pages
  13. Pages
  14. Footer

*/


/*-------------------------------------------------------------------------------
  1. Global
-------------------------------------------------------------------------------*/


/* 1.1 General */

@import url('https://fonts.googleapis.com/css?family=Karla:400,400i,700,700i');

@import url('https://fonts.googleapis.com/css?family=Teko:400,500,700');

@import url('https://fonts.googleapis.com/css?family=Libre+Baskerville:400,400i,700');

@import url('https://fonts.googleapis.com/css?family=Abril+Fatface');

@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
/* FontAwesome Free Icons Font */
@import url('./fonts/fontawesome-free-5.12.1-web/css/all.min.css');

@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:'Zen Kaku Gothic New', sans-serif;color:#000000;}

html > body .underline{text-decoration:underline;}

html > body .underline:hover{text-decoration:none;}

::selection{
    background-color:#104a7a;
    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:80vh;
}

/* 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-500{
    font-weight:500;
}

.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 .fs24{font-size:1.5rem;}
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:#104a7a;
}

.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;
}

.ion-ios-arrow-up,
.ion-ios-arrow-down{
    transform:translateY(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);
}

a:hover .ion-ios-arrow-up,
button:hover .ion-ios-arrow-up,
.btn:hover .ion-ios-arrow-up{
    transform:translateY(-.25rem);
}

a:hover .ion-ios-arrow-down,
button:hover .ion-ios-arrow-down,
.btn:hover .ion-ios-arrow-down{
    transform:translateY(.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 .mt120{margin-top:7.5rem;}
html>body .mt125{margin-top:7.75rem;}
html>body .mt130{margin-top:8.125rem;}
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 .mb32{margin-bottom:2rem;}
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;}

@media only screen and (max-width:768px){
    html>body .mb50{margin-bottom:2.5rem;}    
}

/* 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:#104a7a;
    border-color:#104a7a;
    color:#ffffff;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:not(:disabled):not(.disabled):active{
    background-color:#ffffff;
    border-color:#104a7a;
    color:#104a7a;
}

.btn-danger{
    background:#104a7a;
    border-color:#104a7a;
}

.btn-blue{
    transition:.5s;
    color:#fff;
    background:#104a7a;
    border-color:#104a7a;
}

.btn-blue:hover{
    background:#031728;
    border-color:#031728;
    color:#fff;
}

.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::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;
    transform:translate(-50%, -50%);
}

.double-bounce1,
.double-bounce2{
    width:100%;
    height:100%;
    border-radius:50%;
    background-color:#104a7a;
    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:1rem;
    /*transition:color .2s ease-in-out;*/
    transition:margin-top .5s ease-in-out;
    margin-top:0;
}


.header-fixed{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:900;
    background:url(../img/mokume.jpg);
}

.header-affix{
    position:fixed !important;
    top:-5rem !important;
    left:0;
    width:100%;
    z-index:900;
    background:#ffffff;
    padding-top:.75rem !important;
    padding-bottom:.5rem !important;
    box-shadow:rgba(0, 0, 0, .1) 0 3px 15px;
    margin-top:5rem;
}

.header-affix .nav-logo{
    transform:scale(.45);
}

@media (max-width:767px){
    .header-affix .nav-logo{
        margin-left:-50%;
    }
}

.menu .menu-main{box-shadow: 0px -8px 17px -8px rgba(0, 0, 0, 0.2) inset;}
.menu .menu-main.no-shadow{transition:0s;box-shadow: none!important;}

.menu .menu-lang,
.menu .menu-main,
.menu .social,
.menu .menu-copyright{
    opacity:0;
    transition:all .5s ease-in-out;
}

.menu .menu-lang{
    transition-delay:.2s;
}

.menu .menu-main{
    background:#fff;
    padding-top:6px;
    padding-left:12px;
    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;
}

.brand{
    float:left;
    margin:0 auto;
    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:1rem 0 0;
    border-radius:0;
    outline:none;
    float:right;
    position:relative;
    z-index:995;
    font-weight:bold;
    text-transform:uppercase;
    color:#fff;
    transition:.4s;
}
.nav-toggle-btn:hover{opacity:.8;}

.nav-toggle-btn:focus{
    outline:none;
}

.nav-toggle-title{
    /*color:#fff;*/
    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;
}

.body-menu-opened .nav-toggle-btn{
    color:#000;
}

.nav-toggle-btn .stick{
    background-color:#fff;
}

.body-menu-opened .nav-toggle-btn .stick{
    background-color:#000;
}

.body-menu-opened .nav-toggle-title{
    color:#000;
}

.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{
    display:inline-block;
    margin-top:14px !important;
    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:#fff;
    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:#104a7a;
    opacity:.9;
    z-index:2;
    overflow:hidden;
}

.navbar-nav li.active > a,
.navbar-nav .dropdown-menu a:hover{
    color:#104a7a;
}

.navbar-nav li.active > a:before,
.navbar-nav .dropdown-menu 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:#000000;
}

.navbar-nav .dropdown-menu .active a{
    font-weight:normal;
}

.dropdown-menu-title{
    margin-bottom:10px;
    text-transform:uppercase;
    color:#000000;
    font-weight:bold;
    font-size:1rem;
}

.menu{
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    z-index:990;
    background:aliceblue;
    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%);
    background-image: url(../img/logo3.png);
    background-repeat: no-repeat;
    background-position: bottom 1% left 100%;
    background-size:38%;
}

.body-menu-opened .menu{
    -webkit-transform:translateX(0%);
    transform:translateX(0%);
}

@media (min-width:576px){
    /*.header-fixed{background-size:25%;}*/
    .menu{
        width:34rem;
    }
}

@media (min-width:992px){
    .navbar-nav{
        margin-left:15rem;
        margin-right:15rem;
    }

    .navbar-nav> ul > li{
        padding-top:0;
        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;
    transition:.5s;
}

.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 .accordion-nav + .collapse .animsition-link{font-size:15px}

.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:#104a7a;
    text-decoration:none;
}

.menu-lang-item.active{
    color:#104a7a;
}

.menu-lang .divider{
    margin-right:1rem;
}

.menu-main{
    height:100%;
    overflow-x:hidden;
    overflow-y:auto;
    position:relative;
}

.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:#104a7a;
    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:.5rem;
}

.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:#104a7a;
}

@media (min-width:768px){
    .header-custom{
        padding-top:5rem;
    }
}


/*-------------------------------------------------------------------------------
  3. Home Zoom Parallax
-------------------------------------------------------------------------------*/

.promo-zoom{
    position:relative;
    z-index:100;
}

.clinicZoom{
    position:fixed;
    height:100%;
    top:0;
    left:0;
    right:0;
    z-index:10;
    background-size:cover;
}

.clinicZoom.animated{}

.house-left{
    position:fixed;
    width:28.958333%;
    height:59.16666666%;
    bottom:0;
    left:0;
    z-index:20;
    background:url("../img/bg-promo-zoom-house-left.png") 0 100% no-repeat;
    background-size:contain;
}


.house-right{
    position:fixed;
    width:62.76041667%;
    height:60%;
    bottom:0;
    right:0;
    z-index:30;
    background:url("../img/bg-promo-zoom-house-right.png") 100% 100% no-repeat;
    background-size:contain;
}

.step-opacity{
    position:absolute;
    left:0;
    top:85%;
}

.promo-zoom-titles{
    position:fixed;
    top:30%;
    left:10%;
    right:10%;
    z-index:40;
    text-align:center;
}

.top-title{
    margin-bottom:1.25rem;
    font-size:1.125rem;
    text-transform:uppercase;
    letter-spacing:.5625rem;
    color:#666666;
}

.promo-zoom-titles h1,
.promo-screen-titles h1{
    font-size:11.11111111vmin;
    font-weight:bold;
}

.text-texture{
    display:inline-block;
    background-position:50% 50%;
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.text-textureN{
    background-image:url("../img/mokume.jpg");
}

.text-textureB{
    background-image:url("../img/mokuheki.jpg");
}

.text-textureC{
    background-image:url("../img/gaiheki.jpg");
}

.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;
}

.header .section-item-title{
    margin-bottom:0.25rem;
    font-size:1.5rem;
    text-transform:uppercase;
    font-weight:bold;
    /*letter-spacing:.375rem;*/
    line-height:1.5;
}

.section-item-title{
    margin-bottom:1.875rem;
    font-size:1.875rem;
    text-transform:uppercase;
    font-weight:bold;
    /*letter-spacing:.375rem;*/
    line-height:1.5;
}

.section-item-title,
.section-item-title a{
    color:#104a7a;
}

.section-item-title-sm{
    font-size:1.125rem;
    letter-spacing:.5em;
}

.section-item-title-md{
    font-size:1.25rem;
    letter-spacing:.25em;
}

.promo-about{
    z-index:1;
    position:relative;
    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(80vh - 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-1 .text-texture{
    background-image:url("../img/mokume.jpg");
    background-position:50% 30%;
}

.letter-2 .text-texture{
    background-image:url("../img/mokuheki.jpg");
    background-position:50% 30%;
}

.letter-3 .text-texture{
    background-image:url("../img/gaiheki.jpg");
    background-position:50% 30%;
}

.text-texture{
    transition:transform .6s;
}

.text-texture:hover{
    transform:scale(0.98);
}

.service-item-title{
    font-family:serif;
    font-size:1.65rem;
    font-weight:bold;
    transition:.6s;
}

.service-item-title a,
a .service-item-title{
    color:#000000;
    text-decoration:none;
}

.service-item-title a:hover,
a:hover .service-item-title{
    color:#104a7a;
}

.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.75;
    }
}

.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;
}

.faci-carousel-photo,
.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;
}

.faci-item-photo { cursor: zoom-in; }

.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:#104a7a;
}

.project-listing-detail{
    margin-top:2.25rem;
}

.project-listing-title{
    font-size:1.875rem;
    font-weight:bold;
    letter-spacing:-.025em;
}

.project-metro-title{
    font-size:3rem;
    font-weight:normal;
}

.project-masonry-detail{
    margin-top:5px;
}

.project-masonry-title{
    font-size:1.5rem;
    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,
.faci-carousel-detail,
.project-metro-detail,
.faci-carousel-cat,
.project-metro-date{
    position:absolute;
    z-index:20;
    left:2.5rem;
    right:2rem;
    bottom:5rem;
    color:#ffffff;
}

.project-carousel-date,
.faci-carousel-cat,
.project-metro-date{
    bottom:auto;
    top:2rem;
}

.project-carousel-detail,
.faci-carousel-detail{
    opacity:0;
    transition:opacity .5s .5s ease-in-out;
}

.owl-item.active .project-carousel-detail,
.owl-item.active .faci-carousel-detail{
    animation:fadeInDown .5s ease-out forwards;
    animation-delay:.5s;
    opacity:1;
}

.project-carousel-title{
    margin-top:.875rem;
    font-size:2.25rem;
    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;
}

.under-half a{
    position:relative;
}

.container .under-half a:after{
    background:#104a7a;
}

.more-total{
    margin-top:4.375rem;
    font-weight:bold;
}

.more-total a{
    color:#000000;
    transition:.5s;
    position:relative;
}

.more-total a:hover{
    text-decoration:none;
    color:#104a7a;
}


.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:#104a7a;
    border-color:#104a7a;
}

.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:#104a7a;
    border-color:#104a7a;
}

.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:#104a7a;
    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:25px;
    height:25px;
    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:#104a7a;
    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:#104a7a;
}

.reviews-carousel-sm.owl-theme .owl-dots .owl-dot span:before{
    background-color:#104a7a;
}

.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:#083a62;
}

.reviews-carousel-sm.owl-theme .owl-dots .owl-dot.active span{
    border-color:#083a62;
}

@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,
    .faci-carousel-detail,
    .faci-carousel-cat,
    .project-metro-date{
        left:3.75rem;
        right:auto;
        top:auto;
        bottom:2.625rem;
        max-width:60%;
        color:#ffffff;
    }

    .project-carousel-date,
    .faci-carousel-cat,
    .project-metro-date{
        bottom:auto;
        top:2.625rem;
    }

    .project-carousel-title{
        font-size:2.25rem;
    }

    .project-carousel-more{
        left:auto;
        right:3.4375rem;
        bottom:3.25rem;
    }
}

@media (max-width:767px){
    .project-carousel-item .btn{
        padding:7px 12px 7px;
    }

    .owl-prev{
        left:-.5rem;
    }

    .owl-next{
        right:-.5rem;
    }

    .carousel-container{
        padding-left:0;
        padding-right:0;
        margin-left:0;
        margin-right:0;
    }
}


.clients{
    background:url("../img/bg-testimonial.png") 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:normal;
}

.reviews-carousel-sm .reviews-carousel-author:before,
.reviews-carousel-sm .reviews-carousel-author:after{
    display:none;
}

.reviews-carousel-author-status{
    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:right;
}

@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%;
    margin:auto;
}

.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:1rem;
    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:#104a7a;
    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{
    text-align:center;
    margin-bottom:.625rem;
    font-size:1.2rem;
    text-transform:uppercase;
}

.article-item-category,
.article-item-category a{
    color:#000;
    transition:.5s;
}

.article-item-category a:hover{
    color:#257edb;
    text-decoration:none;
}

.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:1rem;
}

.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:1rem;
    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:1rem;
}

.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:#104a7a;
    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:#104a7a;
}

.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:#104a7a 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:#104a7a;
    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:#104a7a;
}

.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:2.7rem 3rem 3.4rem;
    position:relative;
    margin-top:1rem;
    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:#104a7a;
    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-weight:500;
    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:2rem;
    color:#000000;
}

.slide-contact-mail{
    margin-bottom:1vmin;
    font-size:1.5rem;
    font-weight:bold;
    letter-spacing:-.5px;
}

.slide-contact-phone{
    margin-bottom:1.8vmin;
    font-size:2rem;
    font-weight:bold !important;
}

.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 .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:#104a7a;
}

#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:#104a7a;
}

.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/map.jpg");
}

.home-piling .slide-bg-circle > .inside{
    background-image:url("../img/circle.png");
    background-color:#f6f6f6;
}

.home-piling .slide5 .slide-bg > .inside{
    background-image:url("../img/map.jpg");
}

.home-piling .slide6 .slide-bg > .inside{
    background-image:url("../img/map.jpg");
}

.home-piling .slide6 .slide-bg-circle > .inside{
    background-image:url("../img/circle.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:600;
    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{
    border-bottom:#eaeaea 1px solid;
    padding-bottom:2rem;
    margin-bottom:2rem;
}

.solution-collapse-item-title{
    font-size:1.625rem;
}

.solution-collapse-item-title a{
    transition:.3s;
    display:block;
    padding-right:2rem;
    cursor:pointer;
    position:relative;
    color:#104a7a !important;
}

.collapsed{
    font-weight:600;
}

.solution-collapse-item-title a:not(.collapsed),
.solution-collapse-item-title a:not(.collapsed):hover,
.solution-collapse-item-title a.collapsed:hover{
    color:#0c436e;
}

.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:#083a62;
}

.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:#104a7a 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;
    font-weight:600;
}

.home-piling .slide-contact-mail,
.home-piling .slide-contact-phone{
    font-weight:normal;
}

.home-piling .slide-contact-mail a{
    color:inherit;
    text-decoration:underline;
}

/*-------------------------------------------------------------------------------
  6. Home Minimal
-------------------------------------------------------------------------------*/

.promo-minimal-container{
    position:relative;
}

.promo-minimal{
    position:relative;
    z-index:200;
}

.promo-minimal-hover{
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    z-index:100;
    overflow:hidden;
}

.minimal-item{
    display:block;
    border-top:#cccccc 1px solid;
    padding-top:23.79629630vmin;
    padding-bottom:8vmin;
    text-align:center;
    position:relative;
    opacity:1;
    transition:opacity .5s ease-in-out;
}

.promo-minimal .minimal-item:hover{
    opacity:0;
}

a.minimal-item,
a.minimal-item:hover{
    color:inherit;
    text-decoration:none;
}

.minimal-item:first-child{
    border:none;
}

.minimal-item-letter{
    margin-bottom:4.81481481vmin;
    font-size:41.66666667vmin;
    font-size:23.4375vmax;
    font-weight:900;
    line-height:.75;
}

.minimal-item-letter .letter{
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    right:0;
    overflow:hidden;
}

.minimal-item-letter .text-texture{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    z-index:100;
    background-position:50% 50%;
    background-size:auto 132%;
    -webkit-background-clip:inherit;
    -webkit-text-fill-color:inherit;
}

.minimal-item-letter .text-texture>.inside{
    display:block;
    height:100%;
    padding-top:23.79629630vmin;
}

.promo-minimal-hover .text-texture>.inside{
    background:rgba(0, 0, 0, .65);
    mix-blend-mode:darken;
}

.promo-minimal-hover .minimal-item{
    transition:opacity .5s ease-in-out;
}

.promo-minimal-hover .minimal-item.visible{
    opacity:1;
}

.minimal-item-title{
    margin-bottom:1.5rem;
    font-size:2.625rem;
    font-weight:900;
}

.minimal-item-title,
.minimal-item-descr,
.minimal-item-more{
    padding-left:10%;
    padding-right:10%;
    position:relative;
    z-index:200;
}

.minimal-item-descr{
    line-height:1.44444444;
    font-size:1.125rem;
}

.promo-minimal-hover,
.promo-minimal-hover .text-grey{
    color:#ffffff;
}

.promo-minimal-hover>.row{
    position:relative;
    z-index:200;
}

.promo-minimal-hover .minimal-item-letter .letter{
    overflow:visible;
}

.promo-minimal-hover .text-texture{
    transition:all .75s ease-in-out;
}

.promo-minimal-hover .visible .text-texture{
    background-size:auto 120%;
}

.promo-minimal-hover .minimal-item-title,
.promo-minimal-hover .minimal-item-descr,
.promo-minimal-hover .minimal-item-more{
    transform:translate(0, 150px);
    opacity:0;
    transition:all .5s ease-in-out;
}

.promo-minimal-hover .visible .minimal-item-title,
.promo-minimal-hover .visible .minimal-item-descr,
.promo-minimal-hover .visible .minimal-item-more{
    opacity:1;
    transform:translate(0, 0);
}

.promo-minimal-hover .minimal-item-title{
    transition-delay:.35s;
}

.promo-minimal-hover .minimal-item-descr{
    transition-delay:.5s;
}

.promo-minimal-hover .minimal-item-more{
    transition-delay:.65s;
}

.minimal-item-more{
    margin-top:1.625rem;
    font-size:4.44444444vmin;
    font-weight:bold;
    opacity:0;
}

@media (max-width:991px){
    .minimal-item{
        overflow:hidden;
    }
}

.dark-horizontal .promo-minimal-container a{
    color:#000000 !important;
}

@media (min-width:992px){
    .minimal-item{
        min-height:100vh;
        border-left:#cccccc 1px solid;
        border-top:none;
    }

    .minimal-item.over{
        opacity:0;
    }

    .promo-minimal-hover .minimal-item{
        opacity:0;
    }

    .minimal-item-letter .letter1 .text-texture{
        left:0;
        right:-202%;
        padding-right:202%;
    }

    .minimal-item-letter .letter2 .text-texture{
        left:-101%;
        right:-101%;
        padding-left:101%;
        padding-right:101%;
    }

    .minimal-item-letter .letter3 .text-texture{
        left:-202%;
        right:0;
        padding-left:202%;
    }

    .promo-minimal-hover:before,
    .promo-minimal-hover:after{
        content:"";
        display:block;
        width:1px;
        height:100%;
        position:absolute;
        top:0;
        z-index:300;
        background:#ffffff;
        opacity:.25;
    }

    .promo-minimal-hover:before{
        left:33.33333333%;
    }

    .promo-minimal-hover:after{
        left:66.66666667%;
    }

    .promo-minimal-hover .minimal-item-letter .letter3 .text-texture{
        padding-left:0;
    }

    .promo-minimal-hover .minimal-item-letter .letter3 .text-texture>.inside{
        padding-left:66.66666667%;
    }
}

/*-------------------------------------------------------------------------------
  7. Home Video
-------------------------------------------------------------------------------*/

.video-bnr{
    position:relative;
    margin-bottom:-15.375rem;
    height:37.5rem;
}

.video-container{
    position:absolute;
    z-index:50;
    left:0;
    right:0;
    top:0;
    bottom:0;
    overflow:hidden;
}

.video-container:before{
    content:"";
    display:block;
    position:absolute;
    z-index:600;
    left:0;
    right:0;
    top:0;
    bottom:0;
    background:#000000;
    opacity:.35;
    pointer-events:none;
}

.video-item{
    display:none;
    width:100%;
    height:100vh;
    overflow:hidden;
    position:absolute;
    left:0;
    top:0;
    background-position:50% 50%;
    background-repeat:no-repeat;
    background-size:cover;
}

.video-item.is-active{
    display:block;
}

.video-container iframe{
    border:none;
    margin:0;
    padding:0;
    height:500%;
    width:100%;
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%, -50%);
}

.circular-container{
    display:flex;
    align-items:center;
    justify-content:center;
    position:absolute;
    top:0;
    left:10%;
    right:10%;
    z-index:99;
    width:80%;
    height:100%;
    opacity:1;
    transition:opacity .3s ease-in-out;
}

.circular-container.is-active{
    opacity:1;
    transition:opacity .5s ease-out .8s;
}

.circular-names{
    margin:0;
    padding:0;
    list-style:none;
}

@media (max-width:767px){
    .circular-container{
        display:none;
    }
}

.circular-container .circular-wrapper{
    position:relative;
    width:59.72222222vmin;
    height:auto;
    margin-top:7.96296296vmin;
}

.circular-container .circular-wrapper .circular-names li{
    display:flex;
    flex-direction:column;
    position:absolute;
    z-index:300;
    overflow:hidden;
    padding-bottom:0;
    color:#ffffff;
    font-size:1.125rem;
    line-height:1.5;
    text-transform:uppercase;
    cursor:pointer;
    letter-spacing:.08333333em;
}

.circular-container .circular-wrapper .circular-names li .name-wrapper{
    display:inline-block;
    padding:10px;
    padding-bottom:0;
    white-space:nowrap;
    transition:transform 1s cubic-bezier(.23, 1, .32, 1);
}

.circular-container .circular-wrapper .circular-names li .name-wrapper-date{
    padding-top:0;
    padding-bottom:10px;
    font-size:.875rem;
    white-space:nowrap;
    opacity:.7;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="1"]{
    bottom:61.8%;
    left:98%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="2"]{
    top:87.65%;
    left:80%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="3"]{
    top:87.65%;
    right:80%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"]{
    right:98%;
    bottom:61.8%;
}

@media (max-width:960px){
    .circular-container .circular-wrapper .circular-names li[data-portrait-index="4"]{
        bottom:58.6%;
    }

    .circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] .name-wrapper{
        white-space:normal;
    }
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="5"]{
    bottom:99.5%;
    left:48.5%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="1"] .name-wrapper,
.circular-container .circular-wrapper .circular-names li[data-portrait-index="2"] .name-wrapper,
.circular-container .circular-wrapper .circular-names li[data-portrait-index="5"] .name-wrapper{
    transform:translate3d(-100%, 0, 0);
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="3"],
.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"]{
    text-align:right;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="3"] .name-wrapper,
.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] .name-wrapper{
    transform:translate3d(100%, 0, 0);
}

.circular-container .circular-wrapper .circular-names li.is-active .name-wrapper{
    transform:translateZ(0);
    transition:transform 1s cubic-bezier(.23, 1, .32, 1) .8s;
}

.circular-container .circular-wrapper .circular-names li.is-init .name-wrapper{
    transform:translateZ(0);
    transition:transform 1s cubic-bezier(.23, 1, .32, 1) 0s;
}

.circular-container svg{
    -ms-transform:rotate(-90deg);
    transform:rotate(-90deg);
}

.circular-container svg .circle-path.circle-path--background{
    opacity:.2;
}

.circular-container svg .circle-path.circle-path--background circle{
    stroke-dasharray:2644;
    stroke-dashoffset:2644;
}

.circular-container svg .circle-path.circle-path--fill{
    opacity:1;
}

.circular-container svg .circle-path.circle-path--fill circle{
    stroke-dasharray:2644;
    stroke-dashoffset:2644;
}

.circular-container svg .circle-path circle{
    fill:none;
    stroke-width:2;
    stroke:#fff;
    stroke-miterlimit:10;
}

.circular-container svg .circle-dot{
    position:relative;
    cursor:pointer;
}

.circular-container svg .circle-dot .circle-outside{
    fill:none;
    stroke-width:2;
    stroke:#fff;
    opacity:0.2;
    stroke-miterlimit:10;
}

.circular-container svg .circle-dot .circle-center{
    fill:#fff;
    stroke:none;
    opacity:0;
    transition:opacity .6s cubic-bezier(.23, 1, .32, 1), transform 1s cubic-bezier(.23, 1, .32, 1);
}

.circular-container svg .circle-dot:hover .circle-center{
    opacity:1;
}

.circular-container svg .circle-dot.is-active .circle-center{
    opacity:1;
    transition:opacity .6s cubic-bezier(.23, 1, .32, 1) 1s, transform 1s cubic-bezier(.23, 1, .32, 1);
}

.video-text-container{
    width:100%;
    height:100%;
    position:absolute;
    z-index:400;
    left:50%;
    top:0;
    transform:translate(-50%, 0);
    color:#ffffff;
}

.video-text-item.is-active{
    visibility:visible;
}

.video-item-title{
    margin-bottom:.5rem;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:5.55555556vmin;
    font-weight:bold;
    letter-spacing:-.05em;
    line-height:1.2;
}

.video-text-container a{
    pointer-events:all;
    color:inherit;
}

.video-item-title-sub{
    font-size:1rem;
    text-transform:uppercase;
}

.video-item-title-sub:first-child{
    margin-bottom:.5rem;
}

.video-item-descr{
    margin-top:4.07407407vmin;
    margin-bottom:4vmin;
    overflow:hidden;
    height:auto;
    line-height:1.875;
    font-size:1rem;
    color:#cccccc;
}

.video-item-more{
    font-size:1.125rem;
    text-transform:uppercase;
    font-weight:bold;
    letter-spacing:.25em;
}

@media (min-width:768px){
    .video-text-container{
        width:59.72222222vmin;
        pointer-events:none;
    }

    .video-item-descr{
        height:9.375em;
        height:13.88888889vmin;
        margin-bottom:2.59259259vmin;
    }

    .video-text-item{
        visibility:hidden;
        position:absolute;
        top:50%;
        left:0;
        width:100%;
        height:0;
        padding-bottom:100%;
        padding-left:2rem;
        padding-right:2rem;
        margin-top:16.962963vmin;
        text-align:center;
        transform:translate(0, -50%);
    }
}

@media (max-width:767px){
    .video-text-container{
        display:flex !important;
    }

    .video-text-container .owl-stage-outer,
    .video-text-container .owl-stage,
    .video-text-container .owl-item{
        height:100%;
    }

    .video-text-item{
        height:100%;
        position:relative;
    }

    .video-text-item>.inside{
        position:absolute;
        z-index:20;
        top:50%;
        left:50%;
        transform:translate(-50%, -50%);
        width:92%;
        text-align:center;
    }

    .video-text-container.owl-theme .owl-dots{
        position:absolute;
        top:80%;
        left:10%;
        right:10%;
        text-align:center;
    }

    .video-text-container.owl-theme .owl-dots .owl-dot span:before{
        background:#ffffff;
    }

    .video-text-container.owl-theme .owl-dots .owl-dot.active span{
        border-color:#ffffff;
        background:rgba(255, 255, 255, .1);
    }

    .mobile-video-bg{
        display:block;
        position:absolute;
        left:0;
        right:0;
        top:0;
        bottom:0;
        z-index:10;
        background-position:50% 50%;
        background-repeat:no-repeat;
        background-size:cover;
    }

    .mobile-video-bg:before{
        content:"";
        display:block;
        position:absolute;
        left:0;
        right:0;
        top:0;
        bottom:0;
        background:#000000;
        opacity:.35;
    }

    .promo-video-container{
        position:relative;
        z-index:200;
    }
}

.video-item-more i{
    margin-left:1.25rem;
}

.video-text-item>.inside>*{
    transform:translateY(10vmin);
    opacity:0;
}

.video-text-item.is-active>.inside>.video-item-title-sub,
.video-text-item.is-active>.inside>.video-item-title:first-child{
    animation:videoText 2s ease-in-out forwards;
    animation-delay:0s;
}

.video-text-item.is-active>.inside>.video-item-title-sub+.video-item-title,
.video-text-item.is-active>.inside>.video-item-title+.video-item-title-sub{
    animation:videoText 2s ease-in-out forwards;
    animation-delay:.15s;
}

.video-text-item.is-active>.inside>.video-item-descr{
    animation:videoText2 .5s ease-in-out forwards;
    animation-delay:1.8s;
}

.video-text-item.is-active>.inside>.video-item-more{
    animation:videoText2 .5s ease-in-out forwards;
    animation-delay:1.95s;
}

@-webkit-keyframes videoText{
    0%{
        opacity:0;
        transform:translateY(24vmin);
    }

    30%{
        opacity:1;
        transform:translateY(12vmin);
    }

    70%{
        transform:translateY(12vmin);
    }

    100%{
        opacity:1;
        transform:translateY(0px);
    }
}

@keyframes videoText{
    0%{
        opacity:0;
        transform:translateY(24vmin);
    }

    30%{
        opacity:1;
        transform:translateY(12vmin);
    }

    70%{
        transform:translateY(12vmin);
    }

    100%{
        opacity:1;
        transform:translateY(0px);
    }
}

@-webkit-keyframes videoText2{
    0%{
        opacity:0;
        transform:translateY(5vmin);
    }

    100%{
        opacity:1;
        transform:translateY(0px);
    }
}

@keyframes videoText2{
    0%{
        opacity:0;
        transform:translateY(5vmin);
    }

    100%{
        opacity:1;
        transform:translateY(0px);
    }
}


/*-------------------------------------------------------------------------------
  8. Home 3D
-------------------------------------------------------------------------------*/

.screen{
    min-height:100vh;
    width:100%;
    padding-top:5vmin;
    padding-bottom:5vmin;
    display:flex;
    align-items:center;
    text-align:center;
}

.promo-3d{
    padding-top:25vmin;
    position:relative;
    text-align:center;
}

.promo-3d-bg,
.promo-3d-man{
    position:fixed;
    left:0;
    right:0;
    bottom:-10vmin;
    z-index:100;
}

.promo-3d-man{
    left:50%;
    right:auto;
    bottom:-40vmin;
    width:100%;
    transform:translate(-50%, 0) scale(1.05);
}

.promo-3d-bg img,
.promo-3d-man img{
    width:100%;
}

@media (max-width:575px){

    .promo-3d-bg img,
    .promo-3d-man img{
        width:200vmin;
        margin-left:-100vmin;
        margin-right:-100vmin;
    }
}

.promo-3d-man-start{
    position:absolute;
    left:0;
    top:10%;
}

.promo-3d-opacity{
    position:absolute;
    left:0;
    top:70%;
}

.promo-3d .promo-screen-titles{
    position:relative;
    z-index:200;
}

.about-3d{
    position:relative;
    opacity:0;
}

.section-about-3d.active .about-3d{
    opacity:1;
}

.section-about-3d .section-item-title,
.section-about-3d .about-3d-detail{
    opacity:0;
    transform:translateY(16rem);
    transition:all .75s ease-in-out;
}

.section-about-3d .section-item-title{
    transition-delay:.3s;
}

.section-about-3d .about-3d-detail{
    transition-delay:1.2s;
}

.section-about-3d.active .section-item-title,
.section-about-3d.active .about-3d-detail{
    opacity:1;
    transform:translateY(0);
}

.about-3d-photo{
    position:relative;
    padding-left:6.25rem;
    padding-right:6.25rem;
    margin-top:12px;
    margin-bottom:15vmin;
}

.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,
.project-carousel-3d .owl-item .faci-carousel-photo,
.project-carousel-3d .owl-item .faci-carousel-cat,
.project-carousel-3d .owl-item .faci-carousel-detail{
    transition:all .4s ease-in-out;
    transform:translate(0rem, 0%);
}

.project-carousel-3d .owl-item.active + .owl-item .project-carousel-photo,
.project-carousel-3d .owl-item.active+.owl-item .faci-carousel-photo{
    transform:translate(-4rem, 0%);
}

.project-carousel-3d:hover .owl-item.active + .owl-item .project-carousel-photo,
.project-carousel-3d:hover .owl-item.active+.owl-item .faci-carousel-photo{
    transform:translate(-6rem, 0%);
}

.project-carousel-3d.move-left .owl-item.active + .owl-item .project-carousel-photo,
.project-carousel-3d.move-left .owl-item.active+.owl-item .faci-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,
.project-carousel-3d:hover .owl-item.active .faci-carousel-cat,
.project-carousel-3d:hover .owl-item.active .faci-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,
.project-carousel-3d.move-left .owl-item.active .faci-carousel-cat,
.project-carousel-3d.move-left .owl-item.active .faci-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,
.project-carousel-3d.move-right .owl-item.active .faci-carousel-cat,
.project-carousel-3d.move-right .owl-item.active .faci-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,
.project-carousel-3d .project-carousel-item:not(.text-white) .faci-carousel-cat{
    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;
}

.faci-carousel-cat{
    font-size:1.5rem;
}

.project-carousel-3d .project-carousel-detail,
.project-carousel-3d .owl-item.active .project-carousel-detail,
.project-carousel-3d .faci-carousel-detail,
.project-carousel-3d .owl-item.active .faci-carousel-detail{
    opacity:1;
    animation:none;
}

.project-carousel-3d .project-carousel-detail,
.project-carousel-3d .faci-carousel-detail{
    bottom:2rem;
}

.project-carousel-3d .owl-item{
    overflow:hidden;
}

@media (min-width:768px){
    .project-carousel-3d .project-carousel-detail,
    .project-carousel-3d .faci-carousel-detail{
        bottom:5rem;
    }
}

/*-------------------------------------------------------------------------------
  9. Home Flash
-------------------------------------------------------------------------------*/

.flash-item-nav{
    position:fixed;
    left:15px;
    z-index:500;
    padding-left:0;
    font-size:1.375rem;
    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:##999999 !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:#000000 !important;
}

.home-flash-dark .flash-item-nav:before,
.home-flash.dark-horizontal .flash-item-nav:before{
    background:#000000;
}

.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;
    }
    .project-list-title {
        text-align: center;
    }
}

@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:15rem;
    }
}*/

.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:#fff;
    color:#000000;
}

.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 .h3,
.home-flash.dark-horizontal .h3{
    color:#000;
}

/*.home-flash .section-item-title,*/
.section-item-title-xs,
.section-item-title-xs-narrow{
    font-size:.875rem;
    color:#999999;
    text-transform:uppercase;
    letter-spacing:.25em;
    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:#999999;
    text-decoration:none;
}

.h1-flash{
    margin-bottom:7.40740741vmin;
    background:linear-gradient(to bottom, #104a7a, #d8edff);
    -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:#999999;
    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:#999999;
}

.scroll-icon{
    display:inline-block;
    vertical-align:middle;
    position:absolute;
    top:50%;
    left:50%;
    width:20px;
    height:38px;
    border:#000000 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:#000000;
    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:#104a7a;
}

.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);
        transform:scale(1);
    }

    15%{
        opacity:0;
        -webkit-transform:scale(1.75);
        transform:scale(1.75);
    }

    100%{
        opacity:0;
        -webkit-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:#d8edff 1px solid;
    background:#f5f5f5;
    padding:2.125rem 1.625rem 2.125rem 2rem;
    margin-left:-1px;
    margin-bottom:-1px;
    margin-top:0;
    display:flex;
    flex-direction:column;
    letter-spacing:-.025em;
}

@media (min-width:576px) and (max-width:767px){
    .services-flash .service-item:nth-child(odd){
        margin-left:0;
    }
}

@media (max-width:575px){
    .services-flash .service-item{
        margin-left:0;
    }
}

.services-flash .service-item:hover{
    z-index:10;
}

.services-flash .service-item:before{
    content:"";
    background:#104a7a;
    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:#000000;
}

.services-flash a:hover .service-item-title,
.services-flash .service-item-title:hover{
    color:#000000;
}

.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:3.2rem;
    height:3.9375rem;
    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:3.2rem;
    height:3.9375rem;
    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:5.6rem;
    height:4.5rem;
    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:5.6rem;
    height:4.5rem;
    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:#999999;
    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:#000000;
}

.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;
    margin:auto 0 0 0;
}

@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;
}

.project-list-flash .grid-item{
    width:100% !important;
}

.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;
}

.faci-list-flash .faci-item,
.project-list-listing .faci-item{
    display:block;
    position:relative;
}

.faci-list-flash .faci-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 .faci-item,
.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);
}

.faci-list-flash .section-item-title,
.project-list-flash .section-item-title{
    margin-top:-.375rem;
    margin-bottom:1.625rem;
}

.faci-list-flash .faci-carousel-detail,
.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;
}

.faci-list-flash .faci-item:hover .faci-carousel-detail,
.project-list-flash .project-item:hover .project-carousel-detail{
    background:#191a1e;
}

.faci-list-flash .project-carousel-title,
.project-list-flash .project-carousel-title{
    padding-right:2rem;
    font-weight:normal;
}

.project-list-title{
    padding-bottom:3rem;
}

.project-list-title h2{
    line-height:1.333333;
}

.faci-list-flash .project-carousel-category,
.project-list-flash .project-carousel-category{
    margin-top:1.125rem;
}

.faci-list-flash .faci-carousel-photo,
.project-list-flash .project-carousel-photo{
    transform:scale(1);
    transition:all 1s ease-in-out;
}

.faci-list-flash a:hover .faci-carousel-photo,
.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 .faci-item,
.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,
.faci-item .divider{
    margin-left:.625rem;
    margin-right:.625rem;
}

.faci-carousel-go,
.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;
}

.faci-item:hover .faci-carousel-go,
.project-item:hover .project-carousel-go{
    margin-right:0;
    opacity:1;
}

.faci-list-flash .faci-carousel-cat,
.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:#104a7a;
}


.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:#999999;
    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:#104a7a;
}

.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:#104a7a;
    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:#104a7a;
}


/*-------------------------------------------------------------------------------
  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;
    font-size: 1.125rem;
}

.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:#000000;
}

.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:#104a7a;
}

.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:#104a7a;
}

.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:0 10px 10px 0;
}

.tags .active .btn-outline-secondary,
.tags .btn-outline-secondary:hover,
.tags .btn-outline-secondary:not(:disabled):not(.disabled):active,
.theme-orange .tags .btn-outline-secondary:hover{
    background:transparent;
    border-color:#16171e !important;
    color:#16171e !important;
}

.next-project{
    position:relative;
    background:#eaeeef;
}

.next-project [class^="col-"]{
    position:static;
}

.next-project a{
    display:block;
    padding-top:3.25rem;
    padding-bottom:3rem;
    text-decoration:none;
    color:#000000;
}

.next-project-link{
    text-align:right;
}

.next-project-photo{
    position:absolute;
    top:0;
    bottom:0;
    z-index:100;
    background-size:cover;
    background-position:50% 50%;
    opacity:0;
    transition:all .5s .5s ease-in-out;
}

.prev-project-link .next-project-photo{
    left:0;
    right:50%;
}

.next-project-link .next-project-photo{
    left:50%;
    right:0;
}

.next-project a:hover .next-project-photo{
    opacity:1;
}

.next-project h3,
.next-project .h3{
    position:relative;
    top:0;
    opacity:1;
    font-size:1.5rem;
    transition:all .4s .3s ease-in-out;
}

.next-project-promo{
    height:24rem;
    padding-top:5rem;
    padding-bottom:5rem;
    display:flex;
    align-items:center;
    background-position:50% 0%;
    background-size:cover;
    text-align:center;
}

.next-title{
    margin-bottom:1rem;
    font-size:1.25rem;
    text-transform:uppercase;
}

.next-project .next-title{
    margin-bottom:.75rem;
    font-size:1.125rem;
    color:#999999;
    position:relative;
    top:0;
    opacity:1;
    transition:all .4s .2s ease-in-out;
}

.next-project a:hover .next-title,
.next-project a:hover h3,
.next-project a:hover .h3{
    top:-2rem;
    opacity:0;
}

.screen-item{
    border:#cccccc 1px solid;
    margin-bottom:30px;
    display:block;
}

.screen-item img{
    display:block;
    width:100%;
}

.testimonial-text{
    margin-bottom:5rem;
    letter-spacing:-.025em;
    font-size:1.5rem;
    line-height:1.73333333;
}

.testimonial-item-lg .testimonial-text{
    font-size:2.25rem;
    line-height:1.66666667;
}

.testimonial-author{
    letter-spacing:.05em;
}

.testimonial-author.text-grey strong{
    color:#000000;
}

.testimonial-author:before,
.testimonial-author:after{
    content:" - ";
}

@media (min-width:768px){
    .next-project-promo{
        height:29.375rem;
    }

    .next-project a{
        padding-top:5.625rem;
        padding-bottom:5rem;
    }

    .next-project h3,
    .next-project .h3{
        font-size:1.875rem;
    }

    .testimonial-text{
        font-size:1.875rem;
    }
}

.photo-list{
    overflow-x:hidden;
    overflow-y:visible;
}

.photo-item{
    overflow:hidden;
    text-align:center;
    margin-bottom:5rem;
}

.project-card-web-promo img,
.photo-item-grey img,
.photo-item img{
    max-width:100%;
}

.photo-item-grey{
    background:#dde2e4;
    padding:7.29166667% 15px;
    text-align:center;
}

.photo-item-grey .inside{
    display:inline-block;
    vertical-align:middle;
    overflow:hidden;
    box-shadow:rgba(146, 156, 160, .75) 0 2.5rem 9.375rem;
}

.photo-item-grey img{
    transform:scale(1);
    transition:all .5s ease-in-out;
}

.photo-item-grey .inside img{
    width:100%;
}

.photo-item-grey-parallax{
    height:0;
    padding-bottom:72.72727273%;
    padding-top:0;
    overflow:hidden;
    position:relative;
}

.inside-left{
    width:60%;
    position:absolute;
    left:10%;
    top:40%;
    z-index:10;
}

.inside-right{
    width:60%;
    position:absolute;
    left:43.03030303%;
    top:-96.66666667%;
}

.inside-center{
    width:76.60606061%;
    position:absolute;
    left:11.75757576%;
    top:17.16666667%;
}

@media (min-width:768px){
    .photo-list{
        margin-bottom:-10.75rem;
    }

    .photo-item{
        margin-bottom:14.375rem;
    }

    .photo-item.col-md-6:nth-child(odd){
        text-align:right;
        padding-right:4.42708333%;
    }

    .photo-item.col-md-6:nth-child(even){
        text-align:left;
        padding-left:4.42708333%;
    }
}

@-webkit-keyframes fadeInLeft{
    from{
        opacity:0;
        -webkit-transform:translate3d(-150px, 0, 0);
        transform:translate3d(-150px, 0, 0);
    }

    to{
        opacity:1;
        -webkit-transform:translate3d(0, 0, 0);
        transform:translate3d(0, 0, 0);
    }
}

@keyframes fadeInLeft{
    from{
        opacity:0;
        -webkit-transform:translate3d(-150px, 0, 0);
        transform:translate3d(-150px, 0, 0);
    }

    to{
        opacity:1;
        -webkit-transform:translate3d(0, 0, 0);
        transform:translate3d(0, 0, 0);
    }
}

@-webkit-keyframes fadeInRight{
    from{
        opacity:0;
        -webkit-transform:translate3d(150px, 0, 0);
        transform:translate3d(150px, 0, 0);
    }

    to{
        opacity:1;
        -webkit-transform:translate3d(0, 0, 0);
        transform:translate3d(0, 0, 0);
    }
}

@keyframes fadeInRight{
    from{
        opacity:0;
        -webkit-transform:translate3d(150px, 0, 0);
        transform:translate3d(150px, 0, 0);
    }

    to{
        opacity:1;
        -webkit-transform:translate3d(0, 0, 0);
        transform:translate3d(0, 0, 0);
    }
}

@-webkit-keyframes fadeInUp{
    from{
        opacity:0;
        -webkit-transform:translate3d(0, 50px, 0);
        transform:translate3d(0, 50px, 0);
    }

    to{
        opacity:1;
        -webkit-transform:translate3d(0, 0, 0);
        transform:translate3d(0, 0, 0);
    }
}

@keyframes fadeInUp{
    from{
        opacity:0;
        -webkit-transform:translate3d(0, 50px, 0);
        transform:translate3d(0, 50px, 0);
    }

    to{
        opacity:1;
        -webkit-transform:translate3d(0, 0, 0);
        transform:translate3d(0, 0, 0);
    }
}


.project-next-simple{
    font-size:5rem;
    font-weight:bold;
    text-align:center;
}

.project-card-web-promo{
    background:#dde2e4;
    height:0;
    padding-bottom:52.08333333%;
    overflow:hidden;
    position:relative;
}

.project-card-web-promo .screen-mobile{
    position:absolute;
    left:14.58333333%;
    top:18.7962963%;
    width:20.83333333%;
}

.project-card-web-promo .screen-desktop{
    position:absolute;
    left:28.90625%;
    top:18.7962963%;
    width:59.0625%;
}

.pallete-list{
    margin-right:-4rem;
}

@media (max-width:767px){
    .pallete-list{
        margin-bottom:5rem;
    }

    .project-card-web-promo{
        padding-bottom:80%;
    }

    .project-card-web-promo .screen-desktop,
    .project-card-web-promo .screen-mobile{
        margin-top:4rem;
    }
}

.pallete-item{
    display:inline-block;
    vertical-align:top;
    margin-right:4rem;
    margin-bottom:2.375rem;
    text-align:center;
}

.color{
    display:block;
    width:3.75rem;
    height:3.75rem;
    border-radius:3.75rem;
    margin-bottom:24px;
}

.color-title{
    color:#999999;
    font-size:.875rem;
    text-transform:uppercase;
}



/*-------------------------------------------------------------------------------
  12. News Pages
-------------------------------------------------------------------------------*/

.article-content,
.article-content2{
    font-size:1.125rem;
    line-height:1.66666667;
}

.article-content .fs20,
.article-content2 .fs20{
    line-height:1.5;
}

.article-content .fs20 p,
.article-content2 .fs20 p{
    margin-bottom:1.5em;
}

.article-content p,
.article-content2 p{
    margin-bottom:1.66666667em;
}

.article-content h2,
.article-content .h2,
.article-content2 h2,
.article-content2 .h2{
    margin-top:5.5rem;
    margin-bottom:2.5rem;
}

.article-content h4,
.article-content .h4,
.article-content2 h4,
.article-content2 .h4{
    margin-top:3.75rem;
    margin-bottom:2rem;
    letter-spacing:0;
}

.article-content h4:first-child,
.article-content .h4:first-child,
.article-content2 h4:first-child,
.article-content2 .h4:first-child{
    margin-top:0;
}

.article-content .lead,
.article-content2 .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,
.article-content2 .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,
.article-content2 figure{
    margin-top:3.5rem;
    margin-bottom:4rem;
}

.article-content figure img,
.article-content2 figure img{
    max-width:100%;
    height:auto;
}

.article-content figcaption,
.article-content2 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-content2 ul{
    margin:0;
    padding:0;
    list-style:none;
    counter-reset:count 0;
}

.article-content ul li{
    position:relative;
    padding-left:2rem;
    margin-bottom:1.125rem;
}

.article-content2 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;
}

.article-content2 ul li:before{
    content:counter(count)".";
    counter-increment:count 1;
}

.article-content2 ul li span{
    padding-left:2rem;
}

.article-content .btn,
.article-content2 .btn{
    font-size:1.375rem;
    border-radius:30px;
    background: linear-gradient(45deg, #ffffff, #dedfdf);
    box-shadow:  10px -10px 3px #cdcece;
}


.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:#104a7a;
    border-color:#104a7a;
    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:#999999 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:.625rem;
    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:2rem;
}


.filter-location a{
    color:inherit;
    text-decoration:none;
    cursor:pointer;
    position:relative;
}

.filter-location a:hover,
.filter-location .active a{
    color:#104a7a;
}

.job-item{
    margin-bottom:4rem;
}

.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;
}


.facility-item{
    background:#f8f8f9;
    margin-bottom:6.25rem;
    transition:.6s;
}

.facility-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%;
}

.fc-item-detail,
.no-gutters>.fc-item-detail{
    background:#f5f5f5;
    padding:4rem 4.5rem 3.5rem;
}

.fc-item-title{
    margin-bottom:18px;
    font-size:3rem;
    font-weight:bold;
    letter-spacing:-.025em;
    color:#104a7a;
}

.facility-item .nav.flex-column li{
    margin-bottom:.625rem;
}

@media (min-width:1200px){

    .fc-item-detail,
    .no-gutters>.fc-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:1.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:1;
    }
}

#footer .footer-content{
    background:url(../img/gaiheki.jpg);
}

.footer-content{
    padding-top:3rem;
    padding-bottom:0rem;
    line-height:1.625;
    color:#fff;
}

.contact-item,
.twitter-item{
    margin-bottom:1.75rem;
    font-size:1.5rem;
    font-weight:600;
}

.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:#104a7a;
    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:#104a7a;
    border-color:#104a7a;
    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:#fff;
    text-transform:uppercase;
    font-size:.875rem;
}

.footer .section-item-title{
    color:#fff;
    margin-bottom:.5rem;
    font-weight:inherit;
}

.establised{
    display:none;
    position:fixed;
    left:34px;
    top:50%;
    z-index:300;
    margin-top:-1.625rem;
    text-transform:uppercase;
    letter-spacing:.625rem;
    color:#999999 !importantmaki;
    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:14.75rem;
        padding-bottom:4rem;
    }

    .site-info{
        padding-top:4.5rem;
        padding-bottom:5.375rem;
    }
}

@media (max-width:767px){

    .footer-content,
    .footer-content .text-right{
        text-align:center !important;
    }
}

.more.fs14{
    letter-spacing:.05em;
}

.footer-red{
    background:#104a7a;
    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:#104a7a !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:#104a7a;
}

.theme-orange .bg-primary{
    background-color:#104a7a !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:#104a7a;
}

.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:#104a7a !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:#104a7a;
}

.theme-yellow .social-rounded a:hover,
.theme-yellow .btn-primary,
.theme-yellow .btn-play{
    border-color:#104a7a;
}


.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;}
}