
.bg-img-SINGLE {
background-image: url(../img/services/slide-2.jpg);
}

html, body {
height: 100%;
}

body {
line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block;
}


/* 3. layout */
body {
font-family: 'Raleway', sans-serif;
font-size: 14px;
line-height: 1.5;
font-style: normal;
font-weight: 400;
text-align: left;
color: #5f5f5f;
background: #000;
 -webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-text-size-adjust: 100%;
   -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
width: 100%;
height: 100%;
overflow-x: hidden;
overflow-y: auto;
margin: 0;
padding: 0;
}

a {
color: #5f5f5f;
text-decoration: none;
outline: none;
 -webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-text-size-adjust: 100%;
   -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
-webkit-transition: all 0.5s linear;
   -moz-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
     -o-transition: all 0.5s linear;
        transition: all 0.5s linear;
}

a:hover,
a:visited,
a:active,
a:focus {
color: #5f5f5f;
text-decoration: none;
outline: none;
-webkit-transition: all 0.5s linear;
   -moz-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
     -o-transition: all 0.5s linear;
        transition: all 0.5s linear;
}

p {
font-size: 14px;
color: #5f5f5f;
line-height: 2;
 -webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-text-size-adjust: 100%;
   -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
-webkit-backface-visibility: hidden;
        backface-visibility: hidden;
}

p a {
color: #5f5f5f;
text-decoration: none;
font-weight: 700;
outline: none;
-webkit-transition: all 0.5s linear;
   -moz-transition: all 0.5s linear;
    -ms-transition: all 0.5s linear;
     -o-transition: all 0.5s linear;
        transition: all 0.5s linear;
}

.section-light {
background: #fff;
}

.section-dark {
background: #000;
}


/* 4. upper page */
.upper-page {
position: relative;
width: 100%;
height: 100%;
overflow: hidden;
left: 0;
top: 0;
margin: 0;
}


/* 5. center container */
.center-container {
position: absolute;
display: table;
table-layout: fixed;
width: 100%;
height: 100%;
background: none;
z-index: 1;
}

.center-block {
display: table-cell;
vertical-align: middle;
}


/* 6. hero container */ 
.hero-fullscreen {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
overflow: hidden;
z-index: 0;
}


/* 6.1. hero bg */
.hero-bg {
position: relative;
width: 100%;
height: 100%;
background-position: center center;
background-repeat: no-repeat;
-webkit-background-size: cover;
   -moz-background-size: cover;
    -ms-background-size: cover;
     -o-background-size: cover;
        background-size: cover;
}


/* 6.2. hero fullscreen FIX */ 
.hero-fullscreen-FIX {
width: 100%;
height: 100%;
}



h2.home-page-title {
font-family: 'Raleway', sans-serif;
font-style: normal;
font-weight: 500;
font-size: 11px;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.65em;
color: #fff;
margin: 0 0 0 12px;
}


h2.home-page-title {
font-family: 'Raleway', sans-serif;
font-style: normal;
font-weight: 500;
font-size: 11px;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.65em;
color: #fff;
margin: 0 0 0 12px;
}

h2.section-heading {
position: relative;
font-family: 'Poppins', sans-serif;
font-size: 50px;
font-weight: 800;
text-transform: uppercase;
letter-spacing: -0.04em;
color: #000;
padding-bottom: 10px;
z-index: 1;
}

@media only screen and (max-width: 640px) {
  h2.section-heading {
    font-size: 35px;
	padding-bottom: 5px;
  }
}

h2.section-heading.section-heading-light {
color: #fff;
}


/* 8. overlay */
.overlay:before {
content: "";
position: absolute;
display: block;
top: 0;
left: 0;
bottom: 0;
right: 0;
z-index: 2;
}

.overlay-top-bottom-dark-75:before {
background: -moz-linear-gradient(top, rgba(0, 0, 0, .75) 0%, rgba(0, 0, 0, .1) 100%);
background: -webkit-linear-gradient(top, rgba(0, 0, 0, .75) 0%, rgba(0, 0, 0, .1) 100%);
background: linear-gradient(to bottom, rgba(0, 0, 0, .75) 0%, rgba(0, 0, 0, .1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a6000000', endColorstr='#00000000', GradientType=0);
-webkit-pointer-events: none;
   -moz-pointer-events: none;
        pointer-events: none;
}

/* 9. buttons */
.c-btn {
position: relative;
display: inline-block;
border: none;
background: none;
letter-spacing: 0.15em;
font-weight: 500;
font-size: 10px;
text-transform: uppercase;
text-align: center;
color: #fff;
margin: 20px 0 0 0;
padding: 5px 25px;
height: 40px;
-webkit-transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
   -moz-transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    -ms-transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
     -o-transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);

}

.c-btn.fullwidth {
width: 200px;
background: rgba(219, 0, 0, 1);
border: none;
}

.c-btn a {

position: relative;
display: inline-block;
border: none;
background: none;
letter-spacing: 0.15em;
font-weight: 600;
font-size: 10px;
text-transform: uppercase;
text-align: center;
color: #fff;
padding: 5px 25px;
height: 40px;

}



/* 10. preloader */
.preloader-bg {
position: fixed;
width: 100%;
height: 100%;
overflow: hidden;
background: #000;
z-index: 999999;
}

#preloader {
position: fixed;
display: table;
table-layout: fixed;
width: 100%;
height: 100%;
overflow: hidden;
background: #000;
z-index: 999999;
}

#preloader-status {
display: table-cell;
vertical-align: middle;
}

.preloader-position {
position: relative;
margin: 0 auto;
text-align: center;
-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
     -o-box-sizing: border-box;
        box-sizing: border-box;
}

.loader {
position: relative;
width: 45px;
height: 45px;
left: 50%;
top: 50%;
margin-left: -22px;
margin-top: 2px;
-webkit-animation: rotate 1s infinite linear;
   -moz-animation: rotate 1s infinite linear;
    -ms-animation: rotate 1s infinite linear;
     -o-animation: rotate 1s infinite linear;
        animation: rotate 1s infinite linear;
border: 3px solid rgba(255, 255, 255, .15);
-webkit-border-radius: 50%;
   -moz-border-radius: 50%;
    -ms-border-radius: 50%;
     -o-border-radius: 50%;
        border-radius: 50%;
}

.loader span {
position: absolute;
width: 45px;
height: 45px;
top: -3px;
left: -3px;
border: 3px solid transparent;
border-top: 3px solid rgba(255, 255, 255, .75);
-webkit-border-radius: 50%;
   -moz-border-radius: 50%;
    -ms-border-radius: 50%;
     -o-border-radius: 50%;
        border-radius: 50%;
}


/* 11. to top arrow */
.to-top-arrow {
position: fixed;
right: 25px;
bottom: -10px;
width: 50px;
height: 50px;
line-height: 47px;
cursor: pointer;
font-size: 20px;
text-align: center;
color: #fff;
background: rgba(219, 0, 24, 1);
        opacity: 0;
   -moz-opacity: 0;
-webkit-opacity: 0;
filter: alpha(opacity=0);
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
-webkit-border-radius: 3px;
   -moz-border-radius: 3px;
        border-radius: 3px;
-webkit-transform: translateY(40px);
   -moz-transform: translateY(40px);
    -ms-transform: translateY(40px);
     -o-transform: translateY(40px);
        transform: translateY(40px);
-webkit-transition: all .6s ease;
   -moz-transition: all .6s ease;
    -ms-transition: all .6s ease;
     -o-transition: all .6s ease;
        transition: all .6s ease;
z-index: 10;
}

.to-top-arrow.show {
bottom: 5px;
-webkit-transform: translateY(-20px);
   -moz-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
     -o-transform: translateY(-20px);
        transform: translateY(-20px);
        opacity: 1;
   -moz-opacity: 1;
-webkit-opacity: 1;
filter: alpha(opacity=100);
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.to-top-arrow:hover {
        opacity: 1;
   -moz-opacity: 1;
-webkit-opacity: 1;
filter: alpha(opacity=100);
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

@media only screen and (min-width: 880px) {
  .to-top-arrow-bordered {
    right: 60px;
  }

  .to-top-arrow-bordered.show {
    bottom: 40px;
  }
}


/* 12. navigation */
.navigation-bg-light {
background: rgba(255, 255, 255, 1);
-webkit-transition: all .4s ease-out;
   -moz-transition: all .4s ease-out;
    -ms-transition: all .4s ease-out;
     -o-transition: all .4s ease-out;
        transition: all .4s ease-out;
-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .35);
   -moz-box-shadow: 0 0 5px rgba(0, 0, 0, .35);
        box-shadow: 0 0 5px rgba(0, 0, 0, .35);
}

header {
position: fixed;
width: 100%;
-webkit-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
        transition: all .3s ease-in-out;
z-index: 1000;
}

.logo-holder {
display: inline-block;
width: 64px;
height: auto;
margin-left: 0;
-webkit-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-in-out;
        transition: all .3s ease-in-out;
}

.logo-holder img {
	display: inline-block;
	margin: auto;
width: 64px;
height: auto;

-webkit-transition: all .3s ease-in-out .3s;
    -ms-transition: all .3s ease-in-out .3s;
        transition: all .3s ease-in-out .3s;
        opacity: 1;
   -moz-opacity: 1;
-webkit-opacity: 1;
filter: alpha(opacity=100);
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.logo-holder.closed {
width: 0;
margin-left: 0;
-webkit-transition: all .3s ease-in-out .3s;
    -ms-transition: all .3s ease-in-out .3s;
        transition: all .3s ease-in-out .3s;
}

.logo-holder.closed img {
-webkit-transition: all .3s ease-in-out 0s;
    -ms-transition: all .3s ease-in-out 0s;
        transition: all .3s ease-in-out 0s;
        opacity: 0;
   -moz-opacity: 0;
-webkit-opacity: 0;
filter: alpha(opacity=0);
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
-webkit-pointer-events: none;
   -moz-pointer-events: none;
        pointer-events: none;
}

.header-navigation {
height: 68px;
}

.menu-first-child {
margin-right: 20p;
padding-left: 20px;
}

.menu-second-child {
margin-right: -20px;
}

.menu-last-child {
margin-left: 0px;
}

.header-navigation>a {
display: inline-block;
font-size: 11px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.15em;
padding: 27px 20px 0 20px; 
color: #fff;
min-width: 100px;
}

.header-navigation-dark>a {
color: #000;
}

.header-navigation-xs {
height: 74px;
}

.header-navigation-xs>a {
display: inline-block;
font-size: 10px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.15em;
padding: 0 5px;
color: #fff;
}

.header-navigation-xs.header-navigation-xs-dark>a {
color: #000;
}

.header-navigation-xs .logo-holder {
position: relative;
display: block;
width: 64px;
height: auto;
/*margin: 15px auto 9px auto;*/
text-align: center;
}


/* 12.1. link underline menu */
.link-underline-menu {
position: relative;
text-decoration: none;
cursor: pointer;
}

.link-underline-menu:before {
content: "";
position: absolute;
width: 80%;
height: 1px;
bottom: -20px;
left: 10px;
right: auto;
background: #fff;
visibility: hidden;
-webkit-transform: scaleX(0);
   -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
     -o-transform: scaleX(0);
        transform: scaleX(0);
-webkit-transition: all 0.4s ease-in-out 0s;
   -moz-transition: all 0.4s ease-in-out 0s;
    -ms-transition: all 0.4s ease-in-out 0s;
     -o-transition: all 0.4s ease-in-out 0s;
        transition: all 0.4s ease-in-out 0s;
}

.link-underline-menu.link-underline-menu-dark:before {
bottom: -10px;
background: #000;
}

.link-underline-menu:hover:before {
visibility: visible;
-webkit-transform: scaleX(1);
   -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
     -o-transform: scaleX(1);
        transform: scaleX(1);
}

.home-page-logo img{
	width: 30%;
	height: auto;
	margin: 0 auto;
	position: relative;
	display: block;
}

@media only screen and (max-width: 768px) {
  .link-underline-menu:hover:before {
    visibility: hidden;
  }
}


/* 13. vertical spacer line */
.spacer-line-vertical-dark,
.spacer-line-vertical-light,
.spacer-line-vertical-dark-modal,
.spacer-line-vertical-light-modal {
position: relative;
display: block;
}

.spacer-line-vertical-dark::after,
.spacer-line-vertical-light::after,
.spacer-line-vertical-dark-modal::after,
.spacer-line-vertical-light-modal::after {
content: "";
position: absolute;
width: 1px;
height: 70px;
top: 100%;
left: 50%;
}

.spacer-line-vertical-dark::after,
.spacer-line-vertical-dark-modal::after {
border-right: 1px solid #5f5f5f;
}

.spacer-line-vertical-light::after,
.spacer-line-vertical-light-modal::after {
border-right: 1px solid #fff;
}

.spacer-line-vertical-dark::after,
.spacer-line-vertical-light::after {
margin: 20px auto 0 auto;
}


/* 15. copyright */
.copyright {
position: relative;
margin: 0 auto;
text-align: center;
font-size: 9px;
text-transform: uppercase;
margin-top: 95px;
}

@media only screen and (max-width: 880px) {
  .copyright {
    margin-top: 95px;
  }
}

@media only screen and (max-width: 640px) {
  .copyright {
    margin-top: 50px;
  }
}

.copyright,
.copyright a,
.copyright a:hover {
color: #fff;
}


/* 16. link underline */
.link-underline {
position: relative;
display: inline-block;
text-decoration: none;
color: inherit;
}

.link-underline::after {
content: "";
position: absolute;
display: block;
width: 100%;
height: 1px;
left: 0;
bottom: 0;
padding: 0;
background-color: #fff;
-webkit-transform-origin: left center;
   -moz-transform-origin: left center;
    -ms-transform-origin: left center;
        transform-origin: left center;
-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
   -moz-transition: -moz-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    -ms-transition: -ms-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
     -o-transition: -o-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.link-underline.link-underline-dark::after {
background-color: #5f5f5f;
}





/* 17.2. contact info */
.contact-info-wrapper {
position: relative;
width: 100%;
margin: 86px 0 0 0;
}

@media only screen and (max-width: 880px) {
  .contact-info-wrapper {
    margin: 94px 0 0 0;
  }
}

@media only screen and (max-width: 1200px) {
  .contact-info-wrapper {
    width: auto;
  }
}

@media only screen and (max-width: 640px) {
  .contact-info-wrapper {
    margin: 98px 0 0 0;
  }
}

.contact-info-wrapper a,
.contact-info-wrapper a:hover {
color: #fff;
}

.contact-info-description {
color: #fff;
text-align: center;
}

.contact-info-description-img {
display: block;
font-size: 40px;
text-align: center;
color: #777;
margin: 15px 0 15px 0;
}

@media only screen and (max-width: 880px) {
  .contact-info-description-img {
    font-size: 35px;
	margin: 10px 0 10px 0;
  }
}

.contact-info-text {
letter-spacing: 0.05em;
}



/* 20. learn-more-button */
.learn-more-button {
width: 225px;
height: 40px;
text-align: center;
margin: 3px auto 0 auto;
cursor: pointer;
}

@media only screen and (max-width: 880px) {
  .learn-more-button {
    margin: 7px auto 0 auto;
  }
}

@media only screen and (max-width: 640px) {
  .learn-more-button {
    margin: -10px auto 0 auto;
  }
}

/* 22. sections */
/* 22.1. about section */
.about-txt {
margin: 16px 0 0 0;
padding: 0 200px;
}

@media only screen and (max-width: 880px) {
  .about-txt {
    margin: 12px 0 0 0;
    padding: 0 46px;
  }
}

@media only screen and (max-width: 640px) {
  .about-txt {
    margin: 0;
    padding: 0 50px;
  }
}

.about-top {
margin-top: 120px;
}

@media only screen and (max-width: 880px) {
  .about-top {
    margin-top: 70px;
  }
}

@media only screen and (max-width: 640px) {
  .about-top {
    margin-top: 29px;
  }
}

.about-bottom {
margin-top: 100px;
margin-bottom: 144px;
}

@media only screen and (max-width: 880px) {
  .about-bottom {
    margin-top: 100px;
    margin-bottom: 94px;
  }
}

@media only screen and (max-width: 640px) {
  .about-bottom {
    margin-bottom: 46px;
  }
}


/* 22.4. contact section */
.contact-top {
margin-top: 120px;
}

@media only screen and (max-width: 880px) {
  .contact-top {
    margin-top: 71px;
  }
}

@media only screen and (max-width: 640px) {
  .contact-top {
    margin-top: 29px;
  }
}

.contact-bottom {
margin-top: 100px;
margin-bottom: 148px;
}

@media only screen and (max-width: 880px) {
  .contact-bottom {
    margin-top: 100px;
    margin-bottom: 96px;
  }
}

@media only screen and (max-width: 640px) {
  .contact-bottom {
    margin-top: 0;
    margin-bottom: 51px;
  }
}


/* 25. scroll indicator */
.scroll-indicator-wrapper {
position: absolute;
left: 50%;
bottom: 0;
z-index: 10;
}

.scroll-indicator {
position: absolute;
width: 1px;
height: 70px;
left: 0;
right: 0;
bottom: 0;
margin: auto;
background-color: rgba(191, 191, 191, .25);
mix-blend-mode: overlay;
}

@media only screen and (max-width: 640px) {
  .scroll-indicator {
    height: 35px;
  }
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .scroll-indicator {
    display: none;
	visibility: hidden;
  }
}

.scroll-indicator::before {
content: "";
position: absolute;
display: block;
width: 100%;
height: 50%;
-webkit-animation: teardrop 2s cubic-bezier(.76, .05, .86, .06) infinite;
	    animation: teardrop 2s cubic-bezier(.76, .05, .86, .06) infinite;
-webkit-animation-direction: normal;
	    animation-direction: normal;
background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
background: linear-gradient(top, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
}

.footer-logo img{
  width: 140px;
  padding-top: 64px;
  padding-bottom: 24px;
}
}