/* ------------------------------------------------------------------------------

	Template Name: Lewis
	Description: Leiws - Creative Portfolio HTML Template
	Author: Paul
	Author URI: http://themeforest.net/user/paul_tf

	1.  Global

			1.1 General
			1.2 Typography
			1.3 Fields
			1.4 Buttons
			1.5 Forms
			1.6 Preloader

	2.  Header

	3.  Home Zoom Parallax

	4.  Home Horizontal

			4.1 Home Horizontal Navs
			4.2 Home Horizontal Setting
			4.3 Home Horizontal Animation
			4.4 Home Horizontal Dark Settings


	5.  Home Piling

	6.  Home Minimal

	7.  Home Video

	8.  Home 3D

	9.  Home Flash

	10. Work Pages

	11. Project Card

	12. News Pages

	13. Pages

	14. Footer


*/



/*-------------------------------------------------------------------------------
	1. Global
-------------------------------------------------------------------------------*/


/* 1.1 General */

@import url('https://fonts.googleapis.com/css2?family=Kumbh+Sans:300;400;700');

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300;1,400;1,600;1,700;1,800');

@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

@import url('https://fonts.googleapis.com/css?family=Karla:400,400i,700,700i');

@import url('https://fonts.googleapis.com/css?family=Teko:400,500,700');

@import url('https://fonts.googleapis.com/css?family=Libre+Baskerville:400,400i,700');

@import url('https://fonts.googleapis.com/css?family=Abril+Fatface');

@font-face {
		font-family: 'Butler';
		src: url('../fonts/butler_regular-webfont.eot');
		src: url('../fonts/butler_regular-webfont.eot?#iefix') format('embedded-opentype'),
				url('../fonts/butler_regular-webfont.woff2') format('woff2'),
				url('../fonts/butler_regular-webfont.woff') format('woff'),
				url('../fonts/butler_regular-webfont.ttf') format('truetype');
		font-weight: normal;
		font-style: normal;
}

@font-face {
		font-family: 'Butler';
		src: url('../fonts/butler_bold-webfont.eot');
		src: url('../fonts/butler_bold-webfont.eot?#iefix') format('embedded-opentype'),
				url('../fonts/butler_bold-webfont.woff2') format('woff2'),
				url('../fonts/butler_bold-webfont.woff') format('woff'),
				url('../fonts/butler_bold-webfont.ttf') format('truetype');
		font-weight: bold;
		font-style: normal;

}

@font-face {
		font-family: 'Butler';
		src: url('../fonts/butler_extrabold-webfont.eot');
		src: url('../fonts/butler_extrabold-webfont.eot?#iefix') format('embedded-opentype'),
				url('../fonts/butler_extrabold-webfont.woff2') format('woff2'),
				url('../fonts/butler_extrabold-webfont.woff') format('woff'),
				url('../fonts/butler_extrabold-webfont.ttf') format('truetype');
		font-weight: 900;
		font-style: normal;
}

@font-face {
		font-family: 'Butler Stencil Bold';
		font-style: normal;
		font-weight: normal;
		src: local('Butler Stencil Bold'),
				url('../fonts/Butler_Bold_Stencil.woff') format('woff');
}


html {
		font-size: 12px;
}

body {
		font-family: 'Karla', sans-serif;
		color: #121438;
}

html>body .underline {
		text-decoration: underline;
}

html>body .underline:hover {
		text-decoration: none;
}

::selection {
		background-color: #2d1a6a;
		color: #ffffff;
		text-shadow: none;
}

-webkit-::selection {
		background-color: #2d1a6a;
		color: #ffffff;
		text-shadow: none;
}

::-moz-selection {
		background-color: #2d1a6a;
		color: #ffffff;
		text-shadow: none;
}

::-webkit-scrollbar {
		width: 5px;
		height: 5px;
}

::-webkit-scrollbar-thumb {
		cursor: pointer;
		background: #2e2e2e;
}

.container-fluid-md {
		padding-left: 15px;
		padding-right: 15px;
}

.row-10 {
		margin-left: -5px;
		margin-right: -5px;
}

.row-10>[class^="col-"],
.row-10>[class*=" col-"] {
		padding-left: 5px;
		padding-right: 5px;
}

@media (min-width: 1280px) {
		.container {
				max-width: 1200px;
		}

		.row-60 {
				margin-left: -1.875rem;
				margin-right: -1.875rem;
		}

		.row-60>[class^="col-"],
		.row-60>[class*=" col-"] {
				padding-left: 1.875rem;
				padding-right: 1.875rem;
		}
}

@media (min-width: 1600px) {
		.container-fluid {
				padding-left: 3.75rem;
				padding-right: 3.75rem;
		}

		.container-fluid-md {
				padding-left: 7.5rem;
				padding-right: 7.5rem;
		}
}

.full-height {
		min-height: 100vh;
}

/* 1.2 Typography */

h2,
.h2,
h3,
.h3 {
		font-weight: bold;
}

h4,
.h4 {
		margin-bottom: 1.75rem;
		letter-spacing: -.035em;
		font-weight: bold;
}

.text-bold {
		font-weight: bold;
}

.text-normal {
		font-weight: normal;
}

.text-underline {
		text-decoration: underline;
}

html>body .text-green {
		color: #36ae77;
}

html>body .text-green-light {
		color: #91d1a5;
}

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 .text-white {
		color: #ffffff;
}

html>body .lh-sm {
		line-height: 1.25;
}

html>body .lh-md {
		line-height: 1.625;
}

html>body .lh-lg {
		line-height: 1.875;
}

html>body .lh-lg2 {
		line-height: 1.8;
}

html>body .fs14 {
		font-size: .875rem;
}

html>body .fs18 {
		font-size: 1.125rem;
}

html>body .fs20 {
		font-size: 1.25rem;
}

html>body .fs28 {
		font-size: 1.75rem;
}

html>body .fs30 {
		font-size: 1.875rem;
}

html>body .fs36 {
		font-size: 2.25rem;
}

html>body .fs42 {
		font-size: 2.625rem;
}

html>body .fs48 {
		font-size: 3rem;
}

html>body .fs60 {
		font-size: 2.75rem;
		line-height: 1.36666667;
}

.fs18.text-grey {
		line-height: 1.66666667;
}

.h1-lg {
		font-size: 3.5rem;
		font-weight: bold;
		letter-spacing: -.025em;
}

@media (min-width: 576px) {
		.text-right-sm {
				text-align: right !important;
		}

		html>body .fs60 {
				font-size: 3.75rem;
				line-height: 1.36666667;
		}
}

@media (min-width: 768px) {
		.text-right-md {
				text-align: right !important;
		}

		.h1-lg {
				font-size: 4.5rem;
				line-height: 1.13888889;
		}
}

.font-custom {
		font-family: 'Kumbh Sans', sans-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: 1.8rem;
		position: relative;
		margin-bottom: 1.25rem;
}

.base-list>li:before {
		content: "";
		display: block;
		position: absolute;
		left: 0;
		top: .7em;
		width: 1rem;
		height: .25rem;
		border-radius: 5rem;
		background: #36ae77;
}

.more {
		text-transform: uppercase;
}

.more-lg {
		text-transform: uppercase;
		font-size: 1.25rem;
		font-weight: bold;
}

.more-xl {
		text-transform: uppercase;
		font-size: 1.5rem;
		font-weight: bold;
}

.more a,
.more-lg a {
		color: #000000;
		text-decoration: none;
}

.more a:hover,
.more-lg a:hover,
.more-total a:hover {
		color: #b11d11;
}

.more-lg i {
		display: inline-block;
		vertical-align: middle;
		margin-left: .5em;
		font-size: 110%;
		line-height: .75;
}

.ion-ios-arrow-left,
.ion-ios-arrow-right {
		transform: translateX(0);
		transition: transform .3s ease-in-out;
}

a:hover .ion-ios-arrow-right,
button:hover .ion-ios-arrow-right,
.btn:hover .ion-ios-arrow-right {
		transform: translateX(.25rem);
}

a:hover .ion-ios-arrow-left,
button:hover .ion-ios-arrow-left,
.btn:hover .ion-ios-arrow-left {
		transform: translateX(-.25rem);
}

/* 1.3 Fields */

html>body .mr20 {
		margin-right: 1.25rem;
}

html>body .mt5 {
		margin-top: 5px;
}

html>body .mt10 {
		margin-top: .625rem;
}

html>body .mt20 {
		margin-top: 1.25rem;
}

html>body .mt30 {
		margin-top: 1.875rem;
}

html>body .mt40 {
		margin-top: 2.5rem;
}

html>body .mt50 {
		margin-top: 3.125rem;
}

html>body .mt55 {
		margin-top: 3.4375rem;
}

html>body .mt60 {
		margin-top: 3.75rem;
}

html>body .mt65 {
		margin-top: 4.0625rem;
}

html>body .mt70 {
		margin-top: 4.375rem;
}

html>body .mt80 {
		margin-top: 5rem;
}

html>body .mt90 {
		margin-top: 5.625rem;
}

html>body .mt100 {
		margin-top: 6.5rem;
}

html>body .mt150 {
		margin-top: 9.375rem;
}

html>body .mb5 {
		margin-bottom: 5px;
}

html>body .mb10 {
		margin-bottom: .625rem;
}

html>body .mb20 {
		margin-bottom: 1.25rem;
}

html>body .mb30 {
		margin-bottom: 1.875rem;
}

html>body .mb35 {
		margin-bottom: 2.1875rem;
}

html>body .mb40 {
		margin-bottom: 2.5rem;
}

html>body .mb45 {
		margin-bottom: 2.8125rem;
}

html>body .mb50 {
		margin-bottom: 3.125rem;
}

html>body .mb55 {
		margin-bottom: 3.4375rem;
}

html>body .mb60 {
		margin-bottom: 3.75rem;
}

html>body .mb65 {
		margin-bottom: 4.0625rem;
}

html>body .mb70 {
		margin-bottom: 4.375rem;
}

html>body .mb75 {
		margin-bottom: 4.6875rem;
}

html>body .mb80 {
		margin-bottom: 5rem;
}

html>body .mb90 {
		margin-bottom: 5.625rem;
}

html>body .mb100 {
		margin-bottom: 6.25rem;
}

html>body .mb120 {
		margin-bottom: 7.5rem;
}

html>body .mb130 {
		margin-bottom: 8.125rem;
}

html>body .ptb50 {
		padding-top: 3.125rem;
		padding-bottom: 3.125rem;
}

/* 1.4 Buttons */

button:focus,
input:focus {
		outline: none;
}

.btn {
		padding: .75rem 2rem .75rem;
		font-weight: bold;
		text-transform: uppercase;
		border-radius: 0;
}

.btn-sm {
		padding: .875rem 1.5rem .8125rem;
}

.btn-md {
		padding: .875rem 2rem .9375rem;
}

.btn-xs {
		border-color: #cccccc;
		padding: 3px 12px 3px;
		font-size: .75rem;
		color: #a7a9b8;
		letter-spacing: .025em;
}

.btn-light {
		background: #ffffff;
		border-color: #999999;
}

.btn-dark {
		background: #000000;
		border-color: #000000;
}

.btn-dark:hover,
.btn-dark:not(:disabled):not(.disabled):active {
		background: #23272b;
		border-color: #23272b;
}

.btn .icon {
		margin-left: .75rem;
		display: inline-block;
		vertical-align: middle;
		margin-top: -.375rem;
		margin-bottom: -.25rem;
		line-height: 1;
		font-size: 1.25rem;
}


.btn-sm .icon {
		font-size: 1.125rem;
		line-height: .75;
}

.btn-sm .ion-ios-email-outline {
		font-size: 1.5rem;
}

.btn-light:hover,
.btn-light:not(:disabled):not(.disabled):active {
		background-color: #b11d11;
		border-color: #b11d11;
		color: #ffffff;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:not(:disabled):not(.disabled):active {
		background-color: #ffffff;
		border-color: #b11d11;
		color: #b11d11;
}

.btn-danger {
		background: #b11d11;
		border-color: #b11d11;
}

.btn-rounded {
		border-radius: 30px;
}

.btn-link.text-black:hover {
		color: #000000;
}

/* 1.5 Forms */

.form-control {
		border-radius: 0;
		padding: .625rem 1.25rem .625rem;
		height: calc(1.5em + 1.25rem + 2px);
}

.form-control-lg {
		padding: .875rem 1.25rem .9375rem;
		height: calc(1.5em + 1.8125rem + 2px);
		font-size: 1rem;
}

.control-with-icon {
		position: relative;
}

.control-with-icon .form-control {
		padding-right: 3rem;
}

.control-icon {
		padding-top: 1px;
		position: absolute;
		top: 50%;
		right: 20px;
		font-size: 1.5rem;
		color: #999999;
		-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);
}

.control-icon i,
.control-icon i:before {
		display: block;
		line-height: .75;
}

.control-btn {
		margin-top: 2.75rem;
}

.label-custom {
		margin-bottom: 0;
		display: block;
		text-transform: uppercase;
		font-size: .75rem;
		font-weight: bold;
}

.form-control-custom {
		border: none;
		border-bottom: #cccccc 1px solid;
		padding: 0 0 .625rem;
		height: calc(1.5em + .625rem + 1px);
		color: #000000;
		font-weight: normal;
}

.form-control-custom::-webkit-input-placeholder {
		color: #999999;
}

.form-control-custom::-moz-placeholder {
		color: #999999;
}

.form-control-custom:-ms-input-placeholder {
		color: #999999;
}

.form-control-custom::-ms-input-placeholder {
		color: #999999;
}

.form-control-custom::placeholder {
		color: #999999;
}

.form-control-custom:focus {
		border-color: #000000;
}

/* 1.6 Color */
.greenlight_bck {
		background-color: #91d1a5 !important;
}

.green_bck {
		background-color: #36ae77 !important;
}

.marine_bck {
		background-color: #0f1438 !important;
}

.blue_bck {
		background-color: #494cea !important;
}

.bluelight_bck {
		background-color: #4b93e9 !important;
}

.oliva_bck {
		background-color: #2b3d4f !important;
}

.wave_bck {
		background-image: url(../img/piling-pic3.png);
		background-color: #f6f6f6;
}


.greenlight_txt {
		color: #91d1a5 !important;
}

.green_txt {
		color: #36ae77 !important;
}

.marine_txt {
		color: #0f1438 !important;
}

.blue_txt {
		color: #494cea !important;
}

.bluelight_txt {
		color: #4b93e9 !important;
}

.oliva_txt {
		color: #2b3d4f !important;
}



/* 1.7 Preloader */

.preloader {
		position: fixed;
		overflow: hidden;
		z-index: 999999;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: #fff;
		color: #4b4b4b;
		text-align: center;
}

.spinner {
		position: absolute;
		top: 50%;
		left: 50%;
		width: 50px;
		height: 50px;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
}

.double-bounce1,
.double-bounce2 {
		width: 100%;
		height: 100%;
		border-radius: 50%;
		background-color: #2c1a6a;
		opacity: 0.6;
		position: absolute;
		top: 0;
		left: 0;
		-webkit-animation: sk-bounce 2.0s infinite ease-in-out;
		animation: sk-bounce 2.0s infinite ease-in-out;
}

.double-bounce2 {
		-webkit-animation-delay: -1.0s;
		animation-delay: -1.0s;
}

@-webkit-keyframes sk-bounce {

		0%,
		100% {
				-webkit-transform: scale(0.0)
		}

		50% {
				-webkit-transform: scale(1.0)
		}
}

@keyframes sk-bounce {

		0%,
		100% {
				transform: scale(0.0);
				-webkit-transform: scale(0.0);
		}

		50% {
				transform: scale(1.0);
				-webkit-transform: scale(1.0);
		}
}


/*-------------------------------------------------------------------------------
	2. Header
-------------------------------------------------------------------------------*/

.header {
		padding-top: 1.5rem;
		/*transition: color .2s ease-in-out;*/
		transition: margin-top .5s ease-in-out;
		margin-top: 0;
}

@media (min-width: 768px) {
		.header {
				padding-top: 2.625rem;
		}
}

.header-fixed {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 900;
}

.header-affix {
		position: fixed !important;
		top: -5rem !important;
		left: 0;
		width: 100%;
		z-index: 900;
		background: #ffffff;
		padding-top: .75rem !important;
		padding-bottom: .5rem !important;
		box-shadow: rgba(0, 0, 0, .1) 0 3px 15px;
		margin-top: 5rem;
}

.header-affix .nav-logo {
		transform: scale(.45);
}

@media (max-width: 767px) {
		.header-affix .nav-logo {
				margin-left: -50%;
		}
}

.menu .menu-lang,
.menu .menu-main,
.menu .social,
.menu .menu-copyright {
		opacity: 0;
		transform: translateY(3rem);
		transition: all .5s ease-in-out;
}

.menu .menu-lang {
		transition-delay: .2s;
}

.menu .menu-main {
		transition-delay: .4s;
}

.menu .social {
		transition-delay: .6s;
}

.menu .menu-copyright {
		transition-delay: .8s;
}

.body-menu-opened .menu .menu-lang,
.body-menu-opened .menu .menu-main,
.body-menu-opened .menu .social,
.body-menu-opened .menu .menu-copyright {
		opacity: 1;
		transform: translateY(0);
}

.brand {
		float: left;
		margin-right: 1rem;
		white-space: nowrap;
}

.brand a {
		color: inherit;
		text-decoration: none;
}

.brand-name,
.brand-text {
		display: inline-block;
		vertical-align: middle;
}

.brand-name {
		margin-right: .875rem;
		font-family: 'Butler', Serif;
		font-size: 2.875rem;
		font-weight: 900;
		line-height: 1.1;
}

.brand-name img {
		width: 140px;
		height: auto;
}

.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: 1rem;
		/*1.875rem*/
		margin-right: 1rem;
		opacity: .2;
}

.phone-link,
.phone-link:hover,
.mail-link,
.mail-link:hover {
		color: inherit;
		text-decoration: none;
}

.phone-link {
		cursor: default;
}

.nav-toggle-btn {
		background: none;
		border: none;
		padding: 0;
		margin: .25rem 0 0;
		border-radius: 0;
		outline: none;
		float: right;
		position: relative;
		z-index: 995;
		font-weight: bold;
		text-transform: uppercase;
		color: inherit;
}

.nav-toggle-btn:hover {
		color: #91d1a5;
}

.nav-toggle-btn:focus {
		outline: none;
}

.nav-toggle-title {
		display: inline-block;
		vertical-align: middle;
		margin-right: .75rem;
}

.nav-toggle {
		width: 29px;
		height: 29px;
		display: inline-flex;
		vertical-align: middle;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		margin: auto;
		cursor: pointer;
}

.nav-toggle-sm {
		transform: scale(.65);
		margin-right: -.3125rem;
}

.stick {
		width: 29px;
		height: 3px;
		margin-bottom: 5px;
		background-color: #000000;
		display: inline-block;
}

.nav-toggle-btn:hover .stick {
		background-color: #b11d11;
}

.body-menu-opened .nav-toggle-btn {
		color: #000000;
}

.body-menu-opened .nav-toggle-btn .stick {
		background-color: #000000;
}

.stick:last-child {
		margin-bottom: 0px;
}

.nav-toggle:hover .stick-2 {
		width: 29px;
}

.body-menu-opened .stick-1 {
		animation: stick-1-open .85s ease-out forwards;
}

.body-menu-opened .stick-2 {
		animation: stick-2-open .85s linear forwards;
		width: 29px;
		margin-left: 0px;
}

.body-menu-opened .stick-3 {
		animation: stick-3-open .85s linear forwards;
}

@-webkit-keyframes stick-1-open {
		0% {
				width: 29px;
		}

		30% {
				width: 3px;
				transform: translate(14px, 0px);
		}

		65% {
				width: 3px;
				transform: translate(14px, -29px);
				animation-timing-function: cubic-bezier(0, 1, 1, 1);
		}

		100% {
				width: 2px;
				transform: translate(9px, 17px);
		}
}

@keyframes stick-1-open {
		0% {
				width: 29px;
		}

		30% {
				width: 3px;
				transform: translate(14px, 0px);
		}

		65% {
				width: 3px;
				transform: translate(14px, -29px);
				animation-timing-function: cubic-bezier(0, 1, 1, 1);
		}

		100% {
				width: 2px;
				transform: translate(9px, 17px);
		}
}

@-webkit-keyframes stick-2-open {
		65% {
				width: 29px;
				transform: translate(0px, 0px) rotate(0deg);
		}

		100% {
				width: 29px;
				transform: translate(0px, 0px) rotate(45deg);
		}
}

@keyframes stick-2-open {
		65% {
				width: 29px;
				transform: translate(0px, 0px) rotate(0deg);
		}

		100% {
				width: 29px;
				transform: translate(0px, 0px) rotate(45deg);
		}
}

@-webkit-keyframes stick-3-open {
		65% {
				transform: translate(0px, 0px) rotate(0deg);
		}

		100% {
				transform: translate(0px, -8px) rotate(-45deg);
		}
}

@keyframes stick-3-open {
		65% {
				transform: translate(0px, 0px) rotate(0deg);
		}

		100% {
				transform: translate(0px, -8px) rotate(-45deg);
		}
}

.body-menu-close .stick-1 {
		width: 3px;
		animation: stick-1-close .85s ease-out forwards;
}

.body-menu-close .stick-2 {
		animation: stick-2-close .85s ease-out forwards;
		margin-left: 0px;
}

.body-menu-close .stick-3 {
		animation: stick-3-close .85s ease-out forwards;
}

@-webkit-keyframes stick-1-close {

		0%,
		70% {
				width: 0px;
				transform: translate(0, 0);
		}

		100% {
				width: 29px;
				transform: translate(0, 0);
		}
}

@keyframes stick-1-close {

		0%,
		70% {
				width: 0px;
				transform: translate(0, 0);
		}

		100% {
				width: 29px;
				transform: translate(0, 0);
		}
}

@-webkit-keyframes stick-2-close {
		0% {
				width: 29px;
				transform: translate(0px, 0px) rotate(45deg);
		}

		20% {
				width: 3px;
				transform: translate(0, 0px) rotate(45deg);
		}

		40% {
				width: 0px;
		}

		65% {
				transform: translate(0, -26px);
				animation-timing-function: cubic-bezier(0, 1, 1, 1);
		}

		80% {
				width: 0px;
		}

		100% {
				width: 29px;
				transform: translate(0, 0px);
		}
}

@keyframes stick-2-close {
		0% {
				width: 29px;
				transform: translate(0px, 0px) rotate(45deg);
		}

		20% {
				width: 3px;
				transform: translate(0, 0px) rotate(45deg);
		}

		40% {
				width: 0px;
		}

		65% {
				transform: translate(0, -26px);
				animation-timing-function: cubic-bezier(0, 1, 1, 1);
		}

		80% {
				width: 0px;
		}

		100% {
				width: 29px;
				transform: translate(0, 0px);
		}
}

@-webkit-keyframes stick-3-close {
		0% {
				width: 29px;
				transform: translate(0px, -8px) rotate(-45deg);
		}

		20% {
				width: 3px;
				transform: translate(0, -8px) rotate(-45deg);
		}

		40% {}

		65% {
				transform: translate(0, -35px);
				animation-timing-function: cubic-bezier(0, 1, 1, 1);
		}

		90% {
				width: 3px;
		}

		100% {
				width: 29px;
				transform: translate(0, 0px);
		}
}

@keyframes stick-3-close {
		0% {
				width: 29px;
				transform: translate(0px, -8px) rotate(-45deg);
		}

		20% {
				width: 3px;
				transform: translate(0, -8px) rotate(-45deg);
		}

		40% {}

		65% {
				transform: translate(0, -35px);
				animation-timing-function: cubic-bezier(0, 1, 1, 1);
		}

		90% {
				width: 3px;
		}

		100% {
				width: 29px;
				transform: translate(0, 0px);
		}
}

@-webkit-keyframes fadeZoom {
		0% {
				width: 100%;
		}

		100% {
				width: 0;
		}
}

@keyframes fadeZoom {
		0% {
				width: 100%;
		}

		100% {
				width: 0;
		}
}

.navbar-nav {
		margin-left: 8rem;
		margin-right: 8rem;
		text-align: center;
		font-size: 1rem;
		text-transform: uppercase;
}

.navbar-nav ul {
		margin: 0;
		padding: 0;
		list-style: none;
}

.navbar-nav>ul>li {
		display: inline-block;
		vertical-align: middle;
		padding-left: 1rem;
		padding-right: 1rem;
}

.navbar-nav a {
		position: relative;
		color: #999999;
		text-decoration: none;
		transition: color 0.3s cubic-bezier(0.82, 0, 0.21, 1);
}

.navbar-nav a:before {
		content: attr(data-text);
		position: absolute;
		width: 0%;
		transition: width cubic-bezier(0.82, 0, 0.21, 1) 0.3s;
		color: #b11d11;
		z-index: 2;
		overflow: hidden;
}

.navbar-nav li.active>a,
.navbar-nav a:hover {
		color: #999999;
}

.navbar-nav li.active>a:before,
.navbar-nav a:hover:before {
		width: 100%;
}

.navbar-nav li.active>a {
		font-weight: bold;
		color: transparent !important;
}

.menu-main li.active>a {
		color: transparent !important;
}

.navbar-nav .dropdown-toggle::after {
		display: none;
}

.navbar-nav .dropdown-menu {
		width: 25rem;
		padding: 27px 40px 22px;
		border: none;
		background: #ffffff;
		border-radius: 0;
		margin-top: 1.125rem;
		margin-left: -40px;
		text-transform: none;
		box-shadow: 0 15px 25px rgba(0, 0, 0, 0.05);
		position: absolute;
		left: 20px !important;
		top: 100% !important;
		transform: translate3d(0, 0, 0) !important;
}

.navbar-nav .dropdown:hover .dropdown-menu {
		animation: transform .3s ease-in-out forwards;
}

.navbar-nav .dropdown-menu:before {
		content: "";
		display: block;
		width: 100%;
		height: 1.125rem;
		position: absolute;
		left: 0;
		right: 0;
		top: -1.125rem;
}

@keyframes transform {
		0% {
				margin-top: 3rem;
				opacity: 0;
		}

		100% {
				margin-top: 1.125rem;
				opacity: 1;
		}
}



.navbar-nav .dropdown-menu ul {
		margin: 0;
		padding: 0;
		list-style: none;
}

.navbar-nav .dropdown-menu ul li {
		margin-bottom: 6px;
}

.navbar-nav .dropdown-menu a {
		white-space: nowrap;
		color: #999999;
}

.navbar-nav .dropdown-menu .active a {
		font-weight: normal;
}

.dropdown-menu-title {
		margin-bottom: 24px;
		text-transform: uppercase;
		color: #000000;
		font-weight: bold;
}

.menu {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: 990;
		background: #ffffff;
		max-width: 100%;
		width: 100%;
		padding: 3.75rem 4.375rem 3.25rem;
		display: flex;
		flex-direction: column;
		transition: transform .4s ease-in-out;
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
}

.body-menu-opened .menu {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);
}

@media (min-width: 576px) {
		.menu {
				width: 34rem;
		}
}

@media (min-width: 992px) {
		.navbar-nav {
				margin-left: 15rem;
				margin-right: 15rem;
		}

		.navbar-nav>ul>li {
				padding-left: 1.25rem;
				padding-right: 1.25rem;
		}
}

.body-menu-opened body {
		/*overflow: hidden;*/
		/*width: 100%;*/
		/*height: 100%;*/
}

@media (max-width: 575px) {
		.body-menu-opened {
				overflow: hidden;
				width: 100%;
				height: 100%;
		}
}

.hide-menu {
		position: fixed;
		left: 0;
		right: 0;
		top: 0;
		bottom: 100%;
		background: rgba(0, 0, 0, .1);
		z-index: 980;
}

.body-menu-opened .hide-menu {
		bottom: 0;
}

.menu-lang {
		font-size: .875rem;
		font-weight: bold;
		text-transform: uppercase;
}

.menu .menu-lang {
		padding-bottom: 4.5rem;
}

.menu-lang.float-right,
.text-right .menu-lang {
		margin-right: -1rem;
}

.menu-lang-item,
.menu .menu-lang-item {
		margin-right: 1rem;
		color: #000000;
}

.menu-lang-item:hover {
		color: #b11d11;
		text-decoration: none;
}

.menu-lang-item.active {
		color: #b11d11;
}

.menu-lang .divider {
		margin-right: 1rem;
}

.menu-main {
		height: 100%;
		overflow-x: hidden;
		overflow-y: auto;
}

.menu-main>ul {
		margin: 0;
		padding: 0;
		list-style: none;
}

.menu-main>ul>li {
		margin-bottom: .9375rem;
}

.menu-main>ul>li>a,
.menu-main>ul>li>span {
		font-size: 1.5rem;
		font-weight: bold;
		color: #000000;
}

.menu-main>ul>li ul {
		padding: 1rem 0 1px .875rem;
		margin: 0;
		list-style: none;
}

.menu-main>ul>li ul>li {
		margin-bottom: .375rem;
}

.menu-main>ul>li ul>li>a,
.menu-main>ul>li ul>li>span {
		color: #999999;
}

.menu-main a,
.menu-main a:hover {
		position: relative;
		text-decoration: none;
}

.menu-main a:before {
		content: attr(data-text);
		position: absolute;
		width: 0%;
		transition: width cubic-bezier(0.82, 0, 0.21, 1) 0.3s;
		color: #b11d11;
		z-index: 2;
		overflow: hidden;
		white-space: nowrap;
}

.menu-main li.active>a:before,
.menu-main a:hover:before {
		width: 100%;
}

.menu-footer {
		padding-top: 2rem;
}

.menu-copyright {
		margin-top: 18px;
		font-size: 0.8rem;
		line-height: 1.71428571;
		color: #666666;

}

.menu-copyright strong {
		color: #000000 !important;
}

@media (max-height: 380px) {
		.menu-footer {
				display: none;
		}
}



.header-custom {
		padding-top: 3rem;
}

.header-absolute {
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		z-index: 900;
}

.nav-logo {
		margin-top: -2.3125rem;
		margin-bottom: -2.3125rem;
		display: block;
}

.header-custom .social,
.header-custom .menu-lang {
		margin-top: .5rem;
}

.header-custom .social a {
		color: #999999;
}

.header-custom .navbar-nav a {
		color: #000000;
}

.header-custom .menu-lang {
		font-size: 1rem;
		font-weight: normal;
		color: #cccccc;
}

.header-custom .menu-lang a {
		color: #999999;
}

.header-custom .menu-lang a.active {
		color: #000000;
}

.header-custom .menu-lang a:hover {
		color: #b11d11;
}

@media (min-width: 768px) {
		.header-custom {
				padding-top: 5rem;
		}
}


/*-------------------------------------------------------------------------------
	3. Home Zoom Parallax
-------------------------------------------------------------------------------*/

.promo-zoom {
		position: relative;
		z-index: 100;
}

.mountains {
		position: fixed;
		height: 100%;
		top: 0;
		left: 0;
		right: 0;
		z-index: 10;
		background: url("../img/bg-promo-zoom-mountains2.jpg") 50% 100% no-repeat;
		background-size: cover;
}

.mountains.animated {}

.house-left {
		position: fixed;
		width: 28.958333%;
		height: 59.16666666%;
		bottom: 0;
		left: 0;
		z-index: 20;
		background: url("../img/bg-promo-zoom-house-left.png") 0 100% no-repeat;
		background-size: contain;
}


.house-right {
		position: fixed;
		width: 62.76041667%;
		height: 60%;
		bottom: 0;
		right: 0;
		z-index: 30;
		background: url("../img/bg-promo-zoom-house-right.png") 100% 100% no-repeat;
		background-size: contain;
}

.step-opacity {
		position: absolute;
		left: 0;
		top: 85%;
}

.promo-zoom-titles {
		position: fixed;
		top: 30%;
		left: 10%;
		right: 10%;
		z-index: 40;
		text-align: center;
}

.top-title {
		margin-bottom: 1.25rem;
		font-size: 1.125rem;
		text-transform: uppercase;
		letter-spacing: .5625rem;
		color: #666666;
}

.promo-zoom-titles h1,
.promo-screen-titles h1 {
		font-size: 11.11111111vmin;
		font-weight: bold;
}

.text-texture {
		display: inline-block;
		background-image: url("../img/bg-title.jpg");
		background-position: 50% 50%;
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
}

.text-texture>.inside {
		display: inline-block;
		mix-blend-mode: lighten;
		background: #ffffff;
}

.promo-zoom-titles .slogan,
.promo-screen-titles .slogan {
		margin-top: 1.125rem;
		font-size: 1.25rem;
		color: #666666;
		line-height: 1.5;
}

.brand .text-texture {
		background-image: linear-gradient(to bottom, #ff7c00, #ff0000);
		display: inline-block;
		vertical-align: middle;
		width: 4.75rem;
		height: 3.125rem;
}

.section {
		padding-top: 6rem;
		padding-bottom: 4rem;
}

.section-content {
		padding-top: 6rem;
}

.section-item {
		text-align: center;
}

.section-item+.section-item {
		margin-top: 4rem;
}

.page-content {
		background: #ffffff;
		padding-top: 12%;
		position: relative;
		z-index: 100;
}

@media (min-width: 768px) {
		.page-content {
				padding-top: 8.75rem;
		}
}

.section-mini {
		padding-top: 6rem;
}

.section-centered {
		display: flex;
		align-items: center;
}

.section-centered>div {
		width: 100%;
}

.full-image,
.full-image-dark {
		min-height: 100vh;
		background-size: cover;
		background-position: 50% 0;
		background-repeat: no-repeat;
		position: relative;
}

.full-image-dark:before {
		content: "";
		z-index: 10;
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		background: #000000;
		opacity: .3;
}

.full-image-dark>div {
		z-index: 100;
		position: relative;
}

@media (min-width: 768px) {
		.section-item+.section-item {
				margin-top: 8.125rem;
		}

		.section {
				padding-top: 10.625rem;
				padding-bottom: 10.625rem;
		}

		.section-content {
				padding-bottom: 8.125rem;
		}

		.section-mini {
				padding-top: 8.125rem;
		}
}

.section-last {
		padding-bottom: 0;
}

.section-item-title {
		margin-bottom: 1.875rem;
		font-size: 1.5rem;
		text-transform: uppercase;
		font-weight: bold;
		letter-spacing: .375rem;
		line-height: 1.5;
}

.section-item-title,
.section-item-title a {
		color: #b11d11;
}

.section-item-title-sm {
		font-size: 1.125rem;
		letter-spacing: .5em;
}

.section-item-title-md {
		font-size: 1.25rem;
		letter-spacing: .25em;
}

.promo-about {
		padding-top: 9rem;
		padding-bottom: 6rem;
		line-height: calc(100vh - 15rem);
}

.promo-about .about {
		position: relative;
		top: 300px;
		opacity: 0;
		transition: all .5s ease-in-out;
}

@media (min-width: 768px) {
		.promo-about {
				padding-top: 3rem;
				padding-bottom: 3rem;
				line-height: calc(100vh - 6rem);
		}
}

.about {
		display: inline-block;
		vertical-align: middle;
		width: 100%;
		padding-top: 0;
		padding-bottom: 0;
		text-align: center;
		line-height: 1.5;
}

.rounded-logo {
		width: 11.5rem;
		height: 11.5rem;
		margin-left: auto;
		margin-right: auto;
		position: relative;
}

.rounded-logo svg {
		transform: rotate(175deg);
		text-transform: uppercase;
		letter-spacing: 2.65px;
		word-spacing: 4px;
		font-weight: bold;
		fill: #999999;
}

.rounded-logo .logo {
		position: absolute;
		left: 0;
		right: 0;
		top: 50%;
		margin-top: .625rem;
		text-align: center;
		font-size: 4rem;
		font-weight: 900;
		font-family: 'Butler', Serif;
		color: #000000;
		-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);
}

.rounded-logo-sm {
		width: 7.125rem;
		height: 7.125rem;
}

.rounded-logo-sm .logo {
		margin-top: .25rem;
		font-size: 2.5rem;
}

.rounded-logo-md {
		width: 14.125rem;
		height: 14.125rem;
}

.rounded-logo-md .logo {
		font-size: 4.8125rem;
}

.rounded-logo-lg {
		width: 17rem;
		height: 17rem;
}

.rounded-logo-lg .logo {
		font-size: 6.125rem;
}

.rounded-logo.stamp {
		width: 14.125rem;
		height: 14.125rem;
		position: absolute;
		left: 0;
		bottom: -3rem;
}

.rounded-logo.stamp svg {
		transform: rotate(150deg);
}

.rounded-logo.font-custom svg {
		letter-spacing: .1em;
		word-spacing: 2px;
}

.about-logo {
		margin-bottom: 6.25rem;
}

.about-title {
		font-size: 2.25rem;
		font-weight: bold;
}

.about-descr {
		margin-top: 1.875rem;
		font-size: 1.5rem;
		line-height: 1.5;
}



.services-descr,
.flash-descr {
		font-size: 1rem;
		line-height: 1.875;
}

.service-item {
		margin-top: 4.375rem;
		display: block;
}

a.service-item {
		text-decoration: none;
		color: #000000;
}

.services-letter {
		overflow: hidden;
		position: relative;
		font-size: 13.75rem;
		font-weight: 900;
		line-height: 1.25;
}

.services-letter .mask {
		position: absolute;
		z-index: 10;
		width: 200%;
		background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1));
		background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1));
		height: 100%;
		top: 0;
		left: 100%;
}

.letter-g .text-texture {
		background-image: url("../img/bg-letter-g.jpg");
		background-position: 50% 30%;
}

.letter-w .text-texture {
		background-image: url("../img/bg-letter-w.jpg");
		background-position: 50% 30%;
}

.letter-a .text-texture {
		background-image: url("../img/bg-letter-a.jpg");
		background-position: 50% 30%;
}

.service-item-title {
		font-size: 1.5rem;
		font-weight: bold;
}

.service-item-title a,
a .service-item-title {
		color: #000000;
		text-decoration: none;
}

.service-item-title a:hover,
a:hover .service-item-title {
		color: #b11d11;
}

.service-item-descr {
		margin-top: 1.625rem;
		line-height: 1.625;
}


@-webkit-keyframes fadeInDown {
		from {
				opacity: 0;
				-webkit-transform: translate3d(0, -50px, 0);
				transform: translate3d(0, -50px, 0);
		}

		to {
				opacity: 1;
				-webkit-transform: translate3d(0, 0, 0);
				transform: translate3d(0, 0, 0);
		}
}

@keyframes fadeInDown {
		from {
				opacity: 0;
				-webkit-transform: translate3d(0, -50px, 0);
				transform: translate3d(0, -50px, 0);
		}

		to {
				opacity: 1;
				-webkit-transform: translate3d(0, 0, 0);
				transform: translate3d(0, 0, 0);
		}
}

.services-3d .row>div {
		display: flex;
}

.services-3d .service-item {
		position: relative;
		padding: 2.875rem 1.75rem 10.3125rem;
		margin-top: 2.5rem;
		overflow: hidden;
		background-color: transparent;
		transition: all .3s ease-in-out;
}

.services-3d .service-item:hover {
		background-color: #f3f4f6;
}

.services-3d .service-item .services-letter {
		opacity: 1;
		transition: all .3s ease-in-out;
}

.services-3d .service-item>* {
		position: relative;
		z-index: 200;
}

.services-3d .service-item>div.service-item-photo {
		position: absolute;
		z-index: 100;
}

.services-3d .service-item-photo {
		opacity: 0;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		background-position: 50% 0;
		background-repeat: no-repeat;
		background-size: 100%;
		-webkit-transform: translate(0, -3rem);
		transform: translate(0, -3rem);
		transition: all .5s ease-in-out;
}

@media (min-width: 768px) {
		.services-3d .service-item:hover .service-item-photo {
				opacity: 1;
				-webkit-transform: translate(0, 0);
				transform: translate(0, 0);
		}

		.services-3d .service-item:hover .services-letter {
				opacity: 0;
		}
}

.services-3d .service-item .btn {
		position: absolute;
		bottom: 4.375rem;
		left: 50%;
		white-space: nowrap;
		-webkit-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
}

.services-3d .service-item-title a:hover,
.services-3d a:hover .service-item-title {
		color: #000000;
}



.projects {
		padding-bottom: 3rem;
}

@media (min-width: 768px) {
		.projects {
				padding-bottom: 10.9375rem;
		}
}

.projects .section-item-title {
		margin-bottom: 5.625rem;
}

.carousel-container {
		position: relative;
		margin-left: -3.2rem;
		margin-right: -3.2rem;
		padding-left: 3.2rem;
		padding-right: 3.2rem;
		overflow: hidden;
}

.carousel-container .mask {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 100%;
		z-index: 100;
		width: 100%;
		background: #ffffff;
		animation-fill-mode: forwards;
}

.project-carousel-item {
		display: block;
		width: 100%;
		height: 0;
		padding-bottom: 70%;
		position: relative;
		text-align: left;
}

.project-carousel-photo,
.project-listing-photo,
.project-metro-photo {
		position: absolute;
		z-index: 10;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background-size: cover;
		background-position: 50% 50%;
		background-repeat: no-repeat;
}

.project-metro-photo {
		z-index: 300;
}

.project-list-listing a,
.project-list-masonry a {
		color: #000000;
		text-decoration: none;
}

.project-list-listing a:hover .project-listing-title,
.project-list-masonry a:hover .project-masonry-title {
		color: #ff3600;
}

.project-listing-detail {
		margin-top: 2.25rem;
}

.project-listing-title {
		font-size: 2.25rem;
		font-weight: bold;
		letter-spacing: -.025em;
}

.project-metro-title {
		font-size: 3rem;
		font-weight: normal;
}

.project-masonry-detail {
		margin-top: 24px;
}

.project-masonry-title {
		font-size: 1.875rem;
		font-weight: bold;
		letter-spacing: -.025em;
}

.project-parallax-detail {
		margin-bottom: 46px;
		font-size: 1.125rem;
		text-transform: uppercase;
		letter-spacing: .025em;
}

.project-piling-title {
		font-size: 9.25925926vmin;
		line-height: 1;
		letter-spacing: -.025em;
		font-weight: normal;
}

.project-piling-title a:hover {
		text-decoration: underline !important;
}

.project-list-piling .footer {
		background: #2c1a6a;
}


.project-carousel-detail,
.project-metro-detail,
.project-carousel-date,
.project-metro-date {
		position: absolute;
		z-index: 20;
		left: 2.5rem;
		right: 2rem;
		bottom: 5rem;
		color: #ffffff;
}

.project-carousel-date,
.project-metro-date {
		bottom: auto;
		top: 2rem;
}

.project-carousel-detail {
		opacity: 0;
		transition: opacity .5s .5s ease-in-out;
}

.owl-item.active .project-carousel-detail {
		animation: fadeInDown .5s ease-out forwards;
		animation-delay: .5s;
		opacity: 1;
}

.project-carousel-title {
		margin-top: .875rem;
		font-size: 2rem;
		font-weight: bold;
		line-height: 1.1;
}

.project-carousel-more {
		position: absolute;
		opacity: 0;
		z-index: 30;
		left: 2.5rem;
		bottom: 1.5rem;
		transition: opacity .5s 1.1s ease-in-out;
}

.owl-item.active .project-carousel-more {
		animation: fadeInUp .35s ease-out forwards;
		animation-delay: 1.1s;
		opacity: 1;
}

.project .owl-theme .owl-nav {
		margin-top: 0;
}

.more-total {
		margin-top: 4.375rem;
		font-weight: bold;
		text-transform: uppercase;
}

.more-total a {
		color: #000000;
		text-decoration: underline;
}

.more-total a:hover {
		text-decoration: none;
}

.more-total-lg {
		margin-top: 8.125rem;
}

.owl-theme .owl-nav [class*=owl-] {
		padding: 0;
		position: absolute;
		top: 50%;
		-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);
}

.owl-theme .owl-nav [class*=owl-].disabled {
		cursor: default;
}

.owl-theme .owl-nav [class*=owl-],
.owl-theme .owl-nav [class*=owl-]:hover {
		background: none;
		background-color: transparent;
}

.owl-prev {
		left: -3rem;
}

.owl-next {
		right: -3rem;
}

.nav-inside.owl-theme .owl-nav {
		margin-top: 0;
}

.nav-inside .owl-prev {
		left: 15px;
}

.nav-inside .owl-next {
		right: 15px;
}

.nav-square.owl-theme .owl-nav [class*=owl-] {
		width: 3.75rem;
		height: 3.75rem;
		border: #91d1a5 1px solid;
		background: transparent;
		margin: 0;
		border-radius: 5rem;
		transition: all .3s ease-in-out;
}

.nav-square.owl-theme .owl-nav [class*=owl-]:hover:not(.disabled) {
		background: rgb(145, 209, 165, 0.5);
}

.nav-square .arrow {
		position: relative;
		width: .875rem;
		height: 1.5rem;
}

.nav-square .arrow-top,
.nav-square .arrow-bottom {
		background-color: #91d1a5;
}

.nav-square .arrow-top:after,
.nav-square .arrow-bottom:after {
		background-color: #ffffff;
}

.nav-white-red.owl-theme .owl-nav [class*=owl-] {
		border-color: #ffffff;
		background: #ffffff;
}

.nav-white-red.owl-theme .owl-nav [class*=owl-]:hover:not(.disabled) {
		background: #b11d11;
		border-color: #b11d11;
}

.nav-white-orange.owl-theme .owl-nav [class*=owl-] {
		border-color: #ffffff;
}

.nav-white-orange.owl-theme .owl-nav [class*=owl-]:hover:not(.disabled) {
		background: #ff3600;
		border-color: #ff3600;
}

.nav-white-orange .arrow-top,
.nav-white-orange .arrow-bottom {
		background-color: #ffffff;
}

@media (min-width: 1600px) {
		.nav-inside .owl-prev {
				left: 3.75rem;
		}

		.nav-inside .owl-next {
				right: 3.75rem;
		}
}

.arrow {
		height: 3.125rem;
		width: 1.875rem;
		margin-left: auto;
		margin-right: auto;
}

.arrow-top,
.arrow-bottom {
		background-color: #cccccc;
		height: 2px;
		left: -10%;
		position: absolute;
		top: 50%;
		width: 100%;
}

.arrow-top:after,
.arrow-bottom:after {
		background-color: #b11d11;
		content: '';
		height: 100%;
		position: absolute;
		top: 0;
		transition: all 0.15s;
}

.arrow-top {
		transform: rotate(45deg);
		transform-origin: bottom right;
}

.arrow-top:after {
		left: 100%;
		right: 0;
		transition-delay: 0s;
}

.arrow-bottom {
		transform: rotate(-45deg);
		transform-origin: top right;
}

.arrow-bottom:after {
		left: 0;
		right: 100%;
		transition-delay: 0.15s;
}

.owl-prev:not(.disabled):hover .arrow-top:after,
.owl-next:not(.disabled):hover .arrow-top:after {
		left: 0;
		transition-delay: 0.15s;
}

.owl-prev:not(.disabled):hover .arrow-bottom:after,
.owl-next:not(.disabled):hover .arrow-bottom:after {
		right: 0;
		transition-delay: 0s;
}

.arrow:active {
		transform: scale(0.9);
}

.owl-prev .arrow {
		transform: scaleX(-1);
}

.owl-prev .arrow:active {
		transform: scaleX(-1) scale(0.9);
}

.dots-md {
		margin-bottom: 16.5rem;
}

.dots-md.owl-theme .owl-dots,
.dots-md.owl-theme .owl-nav.disabled+.owl-dots {
		margin-top: 2.625rem;
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
}

.dots-md.owl-theme .owl-dots .owl-dot {
		vertical-align: middle;
}

.owl-theme .owl-dots .owl-dot:focus {
		outline: none;
}

.owl-theme .owl-dots .owl-dot span {
		width: 15px;
		height: 15px;
		background: transparent;
		border: transparent 1px solid;
		position: relative;
		margin: 5px;
}

.dots-md.owl-theme .owl-dots .owl-dot span {
		width: 1.5rem;
		height: 1.5rem;
}

.owl-theme .owl-dots .owl-dot:hover span {
		background: transparent;
}

.owl-theme .owl-dots .owl-dot.active span {
		border-color: #36ae77;
		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: #36ae77;
}

.reviews-carousel-sm.owl-theme .owl-dots .owl-dot span:before {
		background-color: #ffffff;
}

.reviews-carousel-sm.owl-theme .owl-dots .owl-dot.active span:before,
.reviews-carousel-sm.owl-theme .owl-dots .owl-dot:hover span:before {
		background-color: #36ae77;
}

.reviews-carousel-sm.owl-theme .owl-dots .owl-dot.active span {
		border-color: #36ae77;
}

@media (min-width: 1400px) {
		.carousel-container {
				margin-left: -7.5rem;
				margin-right: -7.5rem;
				padding-left: 7.5rem;
				padding-right: 7.5rem;
		}

		.owl-prev {
				left: -7rem;
		}

		.owl-next {
				right: -7rem;
		}
}

@media (min-width: 768px) {
		.project-carousel-item {
				padding-bottom: 44.44444444%;
		}

		.project-carousel-detail,
		.project-carousel-date,
		.project-metro-date {
				left: 3.75rem;
				right: auto;
				top: auto;
				bottom: 2.625rem;
				max-width: 60%;
				color: #ffffff;
		}

		.project-carousel-date,
		.project-metro-date {
				bottom: auto;
				top: 2.625rem;
		}

		.project-carousel-title {
				font-size: 3rem;
		}

		.project-carousel-more {
				left: auto;
				right: 3.4375rem;
				bottom: 3.25rem;
		}
}

@media (max-width: 767px) {
		.project-carousel-item .btn {
				padding: 7px 12px 7px;
		}

		.owl-prev {
				left: -.5rem;
		}

		.owl-next {
				right: -.5rem;
		}

		.carousel-container {
				padding-left: 0;
				padding-right: 0;
				margin-left: 0;
				margin-right: 0;
		}
}



.clients {
		background: url("../img/bg-clients.gif") 50% 0 no-repeat;
		background-size: cover;
}

.testimonial {
		background: url("../img/bg-testimonial.png") 50% 0 no-repeat;
		background-size: cover;
}

.testimonial .owl-theme .owl-dots,
.testimonial .owl-theme .owl-nav.disabled+.owl-dots {
		margin-top: 3.75rem;
}

.reviews-carousel-container {
		background: #ffffff;
		padding-top: 2.8125rem;
		padding-bottom: 5.875rem;
		padding-left: 3rem;
		padding-right: 3rem;
		margin-top: 5rem;
}

.carousel-center-v.owl-carousel .owl-stage {
		display: flex;
		align-items: center;
}

.reviews-carousel-text {
		font-size: 1.5rem;
		font-weight: normal;
		line-height: 1.33333333;
		letter-spacing: -1px;
}

.testimonial .reviews-carousel-text {
		line-height: 1.66666667;
		letter-spacing: -.025em;
		font-weight: normal;
}

.reviews-carousel-author {
		margin-top: 3rem;
		font-size: 1.125rem;
}

.reviews-carousel-author:before,
.reviews-carousel-author:after {
		content: "-";
		margin: 0 .625rem;
		color: #999999;
}

.reviews-carousel-sm .reviews-carousel-item {
		min-height: 22.5rem;
}

.reviews-carousel-sm .reviews-carousel-item>.inside {
		vertical-align: top;
}

.reviews-carousel-sm .reviews-carousel-author {
		text-transform: uppercase;
		font-weight: bold;
}

.reviews-carousel-sm .reviews-carousel-author:before,
.reviews-carousel-sm .reviews-carousel-author:after {
		display: none;
}

.reviews-carousel-author-status {
		margin-top: .5rem;
		font-size: 1rem;
		font-weight: normal;
}

.home-piling .reviews-carousel-author-status {
		color: #91d1a5;
}

.home-piling .reviews-carousel-author-status .text-grey-light {
		color: #91d1a5;
}

.reviews-carousel-sm .owl-dots {
		margin-left: -5px;
		text-align: left;
}

@media (min-width: 992px) {
		.reviews-carousel-text {
				font-size: 2.25rem;
		}

		.reviews-carousel-sm .reviews-carousel-text {
				font-size: 1.875rem;
				letter-spacing: -.25px;
				line-height: 1.6;
		}

		.reviews-carousel-container {
				padding-left: 8.75rem;
				padding-right: 8.75rem;
		}
}



.partner-list {
		margin-top: 9.25925926vmin;
		text-align: center;
}

.partner-item {
		display: flex;
		text-align: center;
}

.partner-item img {
		opacity: .4;
		transition: all .3s ease-in-out;
}

.partner-item img:hover,
.partner-item a:hover img,
.partner-item .inside:hover img {
		opacity: 1;
}

.partner-bordered .partner-item {
		margin: 0 -1px -1px 0;
		border: #eaeaea 1px solid;
		min-height: 13.88888889vmin;
}

.partner-item>.inside {
		padding: 1.5rem 1rem;
		align-self: center;
		display: block;
		width: 100%;
}

.partner-item {
		flex: 0 0 33.33333333%;
		max-width: 33.33333333%;
}

.partner-item img {
		max-width: 70%;
}

@media (min-width: 768px) {
		.partner-item {
				flex: 0 0 20%;
				max-width: 20%;
		}
}



.article-list {
		margin-top: 6.25rem;
}

.article-list>div {
		display: flex;
}

.article-item {
		width: 100%;
		margin-bottom: 2.5rem;
		position: relative;
		text-align: left;
		display: flex;
		flex-direction: column;
}

a.article-item {
		color: #000000;
		text-decoration: none;
}

.article-item-photo {
		margin-bottom: 2rem;
		height: 0;
		padding-bottom: 62.16216216%;
		position: relative;
		overflow: hidden;
}

.article-item-photo img {
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		right: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
}

.article-item-masonry {
		margin-bottom: 10px;
		display: block;
		position: relative;
}

.article-item-masonry,
.article-item-masonry:hover {
		color: #ffffff;
}

.article-item-masonry .article-item-photo {
		margin-bottom: 0;
		height: auto;
		padding-bottom: 0;
}

.article-item-masonry .article-item-photo img {
		position: relative;
		z-index: 100;
		width: 100%;
		height: auto;
}

.article-item-masonry .article-item-photo:before {
		content: "";
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		z-index: 150;
		opacity: .6;
		background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .75), rgba(0, 0, 0, 0) 70%);
		background: linear-gradient(to top, rgba(0, 0, 0, .75), rgba(0, 0, 0, 0) 70%);
		transition: all .3s ease-in-out;
}

.article-item-masonry:hover .article-item-photo:before {
		opacity: 0;
}

.article-list-listing .article-item {
		display: block;
		margin-bottom: 4.625rem;
}

.article-list-listing .article-item-photo {
		padding-bottom: 51.94805195%;
		margin-bottom: 2.125rem;
}

.article-list-listing .article-item-title {
		margin-bottom: .375rem;
		font-size: 1.5rem;
		line-height: 1.41666667;
		letter-spacing: -.025em;
}

.article-item-info {
		color: #999999;
}

.article-item-info a {
		color: #000000;
}

.article-item-info a:hover {
		color: #b11d11;
		text-decoration: none;
}

.article-item-descr {
		margin-top: 1.375rem;
		line-height: 1.625;
}

.article-item-detail {
		position: absolute;
		left: 0;
		right: 0;
		top: auto;
		bottom: 0;
		z-index: 250;
		padding: 2.5rem;
}

.article-item-mask {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		z-index: 200;
		background: #000000;
		opacity: .1;
		transition: all .3s ease-in-out;
}

.article-item-masonry:hover .article-item-mask {
		opacity: .5;
}

.article-item-masonry .article-item-title {
		font-size: 1.5rem;
		line-height: 1.41666667;
}

.article-item-masonry:hover .article-item-title {
		text-decoration: underline;
}

.zooming {
		overflow: hidden;
}

.zooming img {
		transform: scale(1);
		transition: all 1s linear;
}

.zooming:hover img,
a:hover .zooming img {
		transform: scale(1.08);
}

.article-item-category {
		margin-bottom: .625rem;
		font-size: .875rem;
		text-transform: uppercase;
}

.article-item-category,
.article-item-category a {
		color: #b11d11;
}

.article-item-category-dark {
		display: inline-block;
		vertical-align: top;
		margin-bottom: 10px;
		background: #333333;
		padding: 1px 8px 0;
		color: #ffffff;
		font-size: .75rem;
		text-transform: uppercase;
		letter-spacing: .025em;
		font-weight: bold;
}

.article-item-title {
		flex: 1 1 auto;
		font-size: 1.375rem;
		font-weight: bold;
		line-height: 1.36363636;
		letter-spacing: -.5px;
}

.article-item-title a,
.article-item-title a:hover {
		color: #000000;
}

.article-item-date {
		margin-top: 1.875rem;
}

.article-item-masonry .article-item-date {
		margin-top: 1.125rem;
}

.article-list-mini {
		margin-top: 1.75rem;
}

.article-item-mini {
		margin-bottom: 1.25rem;
}

.article-item-mini .article-item-photo {
		display: block;
		padding-bottom: 71.08433735%;
		margin-top: .25rem;
		margin-bottom: 0;
		width: 5.25rem;
}

.article-item-mini .article-item-title {
		margin-bottom: 0;
		font-size: .875rem;
		line-height: 1.42857143;
}

.article-item-mini .article-item-title a:hover {
		text-decoration: none;
}

.article-item-mini .article-item-date {
		margin-top: .25rem;
		color: #999999;
		font-size: .875rem;
}

.promo-zoom-footer {
		overflow: hidden;
}

.promo-zoom-footer .inside {
		margin-left: -10%;
		margin-right: -10%;
}

.promo-zoom-footer img {}

@media (min-width: 768px) {
		.promo-zoom-footer .inside {
				margin-left: 0;
				margin-right: 0;
		}
}



/*-------------------------------------------------------------------------------
	4. Home Horizontal
-------------------------------------------------------------------------------*/

/* 4.1 Home Horizontal Navs */

.horizontal-nav {
		width: 100%;
		position: fixed;
		z-index: 300;
		bottom: 5.55555556vmin;
		left: 0;
}

.horizontal-nav ul {
		margin: 0;
		padding: 0;
		list-style: none;
}

.horizontal-nav li {
		float: left;
		height: 2px;
		width: 3rem;
		background: #ff3600;
		overflow: hidden;
		transition: background .5s ease-in-out;
		position: relative;
}

.horizontal-nav li:before {
		content: "";
		display: block;
		width: 0;
		height: 100%;
		position: absolute;
		left: 0;
		top: 0;
		background: #ff3600;
}

.horizontal-nav li.active:before {
		animation: navWidth .5s ease-in-out forwards;
}

@-webkit-keyframes navWidth {
		0% {
				width: 0;
		}

		100% {
				width: 100%;
		}
}

@keyframes navWidth {
		0% {
				width: 0;
		}

		100% {
				width: 100%;
		}
}


.horizontal-nav li.active,
.horizontal-nav li.active~li {
		background: #cccccc;
}

.horizontal-nav li:before {
		width: 100%;
}

.horizontal-nav li.active~li:before {
		width: 0%;
}

.horizontal-controls {
		position: absolute;
		right: 15px;
		bottom: -.625rem;
}

@media (min-width: 992px) {
		.horizontal-nav li {
				width: 6.25rem;
		}
}

@media (min-width: 1600px) {
		.horizontal-controls {
				right: 3.75rem;
		}
}

.horizontal-controls button {
		border: none;
		background: transparent;
		padding: 0;
		margin: 0;
		color: #999999;
		font-weight: bold;
		text-transform: uppercase;
		transition: all .2s ease-in-out;
}

.horizontal-controls button:hover {
		color: #000000;
}

.horizontal-controls .divider {
		margin-left: 1.625rem;
		margin-right: 1.625rem;
		font-weight: normal;
		color: #cccccc;
}



/* 4.2 Home Horizontal Setting */

.home-horizontal .section {
		transition: transform 1.5s ease-in-out;
}

.home-horizontal .active+.section {
		transform: translate3d(30%, 0px, 0px) !important;
}

.home-horizontal .section.active {
		transform: translate3d(0, 0px, 0px);
}

.pp-scrollable {
		overflow-x: hidden;
		overflow-y: auto;
}

.slide {
		background: #ffffff;
		background-position: 50% 50%;
		background-repeat: no-repeat;
		background-size: cover;
		padding-top: 0;
		padding-bottom: 0;
		min-height: 100vh;
}

.slide-container {
		position: relative;
		min-height: 100vh;
		padding-top: 9rem;
		padding-bottom: 4rem;
}

@media (min-width: 992px) {
		.slide-container {
				padding-top: 15vmin;
				padding-bottom: 7vmin;
		}
}

@media (min-width: 1400px) {
		.slide-container {
				padding-top: 30.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: 1vmin;
		/*2.12962963vmin*/
		font-size: 1.875rem;
		/*text-transform: uppercase;*/
		line-height: .92307692;
		letter-spacing: .5px;
}

.slide-descr {
		/*color: #999999;*/
		line-height: 1.4;
		font-size: 1.5rem;
		width: 85%;
}

.home-horizontal .slide2 .slide-descr {
		line-height: 1.875;
}

.home-horizontal .slide1 .slide-photo {
		position: absolute;
		height: 70.92592593%;
		left: 46.875%;
		right: 0;
		top: 13.24074074%;
		z-index: -1;
}

.home-horizontal .slide1 .slide-photo img {
		height: 100%;
		width: auto;
		max-width: none;
}

.btn-play {
		display: inline-block;
		vertical-align: middle;
		margin: 0;
		padding: 0;
		background: transparent;
		border: #ff3600 2px solid;
		width: 6.48148148vmin;
		height: 6.48148148vmin;
		min-width: 3rem;
		min-height: 3rem;
		line-height: 2.5rem;
		border-radius: 4.375rem;
		text-align: center;
		transition: all .3s ease-in-out;
		font-size: 1.5rem;
		color: #ffffff;
}

.btn-play:hover {
		background: #ff3600;
		text-decoration: none;
}

.btn-play .ion-ios-play {
		margin-left: .25rem;
}

button.btn-play i,
button.btn-play i:before {
		display: block;
		line-height: 1;
}

a.btn-play i {
		display: inline-block;
		vertical-align: middle;
		line-height: 1;
}

.btn-play-lg {
		border: #ffffff 2px solid;
		padding: 0 0 0 .75rem;
		min-width: 6.875rem;
		min-height: 6.875rem;
		line-height: 6.2rem;
		font-size: 4.5rem;
		color: #ffffff;
}

.btn-play-lg:hover {
		border-color: #ff3600;
}

.media-title {
		margin-top: .55555556vmin;
		margin-bottom: 3rem;
}

.media-title h2,
.media-title .h2 {
		margin-right: 2.375rem;
}

@media (min-width: 992px) {
		.media-title {
				display: flex;
				margin-bottom: 0;
		}
}

.horizontal-service-list {
		margin-top: 3.33333333vmin;
}

.horizontal-service-list>div {
		display: flex;
}

.horizontal-service-item {
		border: #e1e1e1 1px solid;
		padding: 3.88888889vmin 3.125rem 5.09259259vmin;
		position: relative;
		margin-top: 4.62962963vmin;
		display: flex;
		flex-direction: column;
}

.horizontal-service-item:before {
		content: "";
		display: block;
		height: 4px;
		width: 0;
		position: absolute;
		left: -1px;
		right: -1px;
		bottom: -1px;
		background: #ff3600;
		transition: width .3s ease-in-out;
}

.horizontal-service-item:hover:before {
		width: calc(100% + 2px);
}

.horizontal-service-item .num {
		color: #cccccc;
		font-weight: normal;
}

.horizontal-service-item .num,
.horizontal-service-item-photo {
		margin-bottom: 3.51851852vmin;
}

.horizontal-service-item-photo img.photo-position {
		position: absolute;
		top: -3.125rem;
		left: 36.48648649%;
		max-width: 67.83783784%;
		height: auto;
}

.horizontal-service-item-photo.photo3 img.photo-position {
		top: -3.75rem;
}

.horizontal-service-item-title {
		margin-bottom: 2.59259259vmin;
		font-size: 2.25rem;
		font-family: 'Teko', sans-serif;
		text-transform: uppercase;
		line-height: 1.11111111;
}

.horizontal-service-item-descr {
		height: 100%;
		padding-bottom: 5.37037037vmin;
		line-height: 1.625rem;
}

.horizontal-service-item-title,
.horizontal-service-item-descr {
		position: relative;
		z-index: 100;
}

.horizontal-more-total {
		border-bottom: #000000 1px solid;
		color: #000000;
		text-transform: uppercase;
		letter-spacing: .5px;
		text-decoration: none;
}

.slide-dark a:not(.btn),
.slide-dark a:not(.btn):hover {
		border-bottom-color: #ffffff;
		color: #ffffff;
		text-decoration: none;
}

.slide-dark a.underline {
		text-decoration: underline;
}

.home-horizontal .partner-list {
		margin-top: 6.48148148vmin;
}

.slide-contact-address {
		margin-bottom: 7.03703704vmin;
		font-size: 1.25rem;
		color: #999999;
}

.slide-contact-mail,
.slide-contact-phone {
		margin-bottom: 2.77777778vmin;
		font-size: 2.25rem;
		font-weight: bold;
		letter-spacing: -.5px;
}

.slide5 .slide-title {
		margin-bottom: .8125rem;
}



/* 4.3 Home Horizontal Animation */

.slide-num {
		opacity: 0;
		transition: all .3s ease-in-out;
		transition-delay: 1.5s;
}

.home-horizontal .section.active .slide-num {
		opacity: 1;
}

.home-horizontal .slide-title,
.home-horizontal .slide-body {
		opacity: 0;
		transform: translateX(-200px);
		transition: all .5s ease-in-out;
}

.home-horizontal .slide-body {
		transition-delay: .2s;
}

.home-horizontal .active+.section .slide-title,
.home-horizontal .active+.section .slide-body {
		opacity: 0;
		transform: translateX(400px);
}

.home-horizontal .section.active .slide-title,
.home-horizontal .section.active .slide-body {
		opacity: 1;
		transform: translateX(0);
}

.home-horizontal .active+.section .slide-title,
.home-horizontal .section.active .slide-title {
		transition-delay: .7s;
}

.home-horizontal .active+.section .slide-body,
.home-horizontal .section.active .slide-body {
		transition-delay: .9s;
}

.home-horizontal .slide-note {
		opacity: 0;
		transition: all .5s ease-in-out;
		transition-delay: 1.2s;
}

.home-horizontal .section.active .slide-note {
		opacity: 1;
}

.slide-bg>.inside {
		transition: transform .8s ease-in-out;
		transform: scale(1.08);
		transition-delay: .8s;
}

.section.active .slide-bg>.inside {
		transform: scale(1);
}



/* 4.4 Home Horizontal Dark Settings */

.dark-horizontal .header,
.dark-horizontal .social-fixed a,
.dark-horizontal .establised,
.dark-horizontal .copyright-fixed,
.dark-horizontal .social-rounded-fixed a,
.dark-horizontal .navbar-nav>ul>li>a {
		color: #ffffff;
		/*font-size: 0.8rem;  */
}

.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;
}

.theme-white .black {
		display: block;

}

.theme-white.dark-horizontal .black {
		display: none;
}

.theme-white .white {
		display: none;

}

.theme-white.dark-horizontal .white {
		display: block;
}




/*-------------------------------------------------------------------------------
	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: #494CEA;
}

#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: #494CEA;
}



.home-piling h1,
.home-piling .h1 {
		margin-left: -.25rem;
		margin-bottom: 3.03703704vmin;
		font-size: 8vmin;
		line-height: 1;
		color: #91d1a5;
}

.home-piling .slide1 {
		background-color: #2b3d4f;
		background-image: url("../img/bg-piling0.png");
		background-position: left center;
}

.home-piling .slide1 .slide-bg>.inside {
		background-image: url("../img/bg-piling2.png");
}

.home-piling .slide-bg-circle>.inside {
		background-image: url("../img/piling-pic3.png");
		background-color: #f6f6f6;
}

.home-piling .slide5 .slide-bg>.inside {
		background-color: #2b3d4f;
		background-image: url("../img/bg-piling0.png");
		background-position: left center
}

.home-piling .slide6 .slide-bg>.inside {
		background-image: url("../img/bg-piling6.jpg");
}

.home-piling .slide6 .slide-bg-circle>.inside {
		background-image: url("../img/piling-pic2.png");
		background-color: transparent;
}

.home-piling .slide1 .slide-title-sub {
		font-size: 1.5rem;
		line-height: 1;
		font-weight: bold;
}

.home-piling h2,
.home-piling .h2 {
		margin-bottom: 6.11111111vmin;
		font-size: 5vmin;
		font-weight: normal;
		line-height: 1.14;
		letter-spacing: -.125rem;
		color: #0f1438
}

.wave_bck h2,
.wave_bck.h2 {
		margin-bottom: 6.11111111vmin;
		font-size: 3.5vmin;
		font-weight: normal;
		line-height: 1.14;
		letter-spacing: -.125rem;
		color: #0f1438;
		padding: 7vmin 0;
}

.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: 1;
}

.solution-num>.inside {
		background: #f6f6f6;
}

.solution-num-title {
		margin-top: 3vmin;
		font-size: 1.5rem;
		text-transform: uppercase;
}

.solution-num,
.solution-num-title {
		display: inline-block;
		margin-bottom: 5vmin;
}

@media (min-width: 992px) {

		.solution-num,
		.solution-num-title {
				margin-bottom: 0;
				margin-right: 0;
		}

		.solution-num-title {
				display: block;
				margin-top: 23.70370370vmin;
		}
}

.slide2 .ornament {
		width: 100%;
		height: 100%;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: -1;
		transform: translate3d(-80px, 0, 0);
		overflow: hidden;
}

.slide2 .ornament>.inside {
		display: block;
		width: 88.51851852vmin;
		height: 44.25925926vmin;
		background: #f4e9db;
		border-radius: 50% 50% 0% 0% / 100% 100% 0% 0%;
		position: absolute;
		left: -80px;
		bottom: 0;
}

.solution-collapse-item {
		margin-bottom: 2rem;
}

.solution-collapse-item-title {
		font-size: 1.625rem;
}

.solution-collapse-item-title a {
		display: block;
		padding-right: 2rem;
		cursor: pointer;
		position: relative;
		color: #494cea !important;
}

.solution-collapse-item-title a:not(.collapsed),
.solution-collapse-item-title a:not(.collapsed):hover,
.solution-collapse-item-title a.collapsed:hover {
		color: #36ae77;
}

.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: #91d1a5;
}

.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: 5.11111111vmin;
		font-weight: bold;
		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;
}

.slide-dark .piling-project-title a:hover img {
		margin-top: -5px;
}

.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-size: 2vmin;
		font-weight: normal;
		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: #91d1a5 2px solid;
		width: 6.48148148vmin;
		height: 6.48148148vmin;
		border-radius: 4.375rem;
		min-width: 3rem;
		min-height: 3rem;
		text-align: center;
		position: relative;
		transition: all .3s ease-in-out;
}

.icon-quote {
		display: inline-block;
		position: absolute;
		left: 50%;
		top: 50%;
		width: 1.125rem;
		height: 1.125rem;
		background: url("../img/icon-quote.png") 50% 50% no-repeat;
		background-size: contain;
		transform: translate(-50%, -50%);
}


.home-piling .slide6 h2,
.home-piling .slide6 .h2 {
		margin-bottom: 2.40740741vmin;
		font-size: 6.48148148vmin;
}

.home-piling .slide-contact-address {
		margin-bottom: 6.85185185vmin;
}

.home-piling .slide-contact-mail,
.home-piling .slide-contact-phone {
		font-weight: normal;
}

.home-piling .slide-contact-mail a {
		color: inherit;
		text-decoration: none;
}



/*-------------------------------------------------------------------------------
	6. Home Minimal
-------------------------------------------------------------------------------*/

.promo-minimal-container {
		position: relative;
}

.promo-minimal {
		position: relative;
		z-index: 200;
}

.promo-minimal-hover {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 100;
		overflow: hidden;
}

.minimal-item {
		display: block;
		border-top: #cccccc 1px solid;
		padding-top: 23.79629630vmin;
		padding-bottom: 8vmin;
		text-align: center;
		position: relative;
		opacity: 1;
		transition: opacity .5s ease-in-out;
}

.promo-minimal .minimal-item:hover {
		opacity: 0;
}

a.minimal-item,
a.minimal-item:hover {
		color: inherit;
		text-decoration: none;
}

.minimal-item:first-child {
		border: none;
}

.minimal-item-letter {
		margin-bottom: 4.81481481vmin;
		font-size: 41.66666667vmin;
		font-size: 23.4375vmax;
		font-weight: 900;
		line-height: .75;
}

.minimal-item-letter .letter {
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		right: 0;
		overflow: hidden;
}

.minimal-item-letter .text-texture {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 100;
		background-position: 50% 50%;
		background-size: auto 132%;
		-webkit-background-clip: inherit;
		-webkit-text-fill-color: inherit;
}

.minimal-item-letter .text-texture>.inside {
		display: block;
		height: 100%;
		padding-top: 23.79629630vmin;
}

.promo-minimal-hover .text-texture>.inside {
		background: rgba(0, 0, 0, .65);
		mix-blend-mode: darken;
}

.promo-minimal-hover .minimal-item {
		transition: opacity .5s ease-in-out;
}

.promo-minimal-hover .minimal-item.visible {
		opacity: 1;
}

.minimal-item-title {
		margin-bottom: 1.5rem;
		font-size: 2.625rem;
		font-weight: 900;
}

.minimal-item-title,
.minimal-item-descr,
.minimal-item-more {
		padding-left: 10%;
		padding-right: 10%;
		position: relative;
		z-index: 200;
}

.minimal-item-descr {
		line-height: 1.44444444;
		font-size: 1.125rem;
}

.promo-minimal-hover,
.promo-minimal-hover .text-grey {
		color: #ffffff;
}

.promo-minimal-hover>.row {
		position: relative;
		z-index: 200;
}

.promo-minimal-hover .minimal-item-letter .letter {
		overflow: visible;
}

.promo-minimal-hover .text-texture {
		transition: all .75s ease-in-out;
}

.promo-minimal-hover .visible .text-texture {
		background-size: auto 120%;
}

.promo-minimal-hover .minimal-item-title,
.promo-minimal-hover .minimal-item-descr,
.promo-minimal-hover .minimal-item-more {
		transform: translate(0, 150px);
		opacity: 0;
		transition: all .5s ease-in-out;
}

.promo-minimal-hover .visible .minimal-item-title,
.promo-minimal-hover .visible .minimal-item-descr,
.promo-minimal-hover .visible .minimal-item-more {
		opacity: 1;
		transform: translate(0, 0);
}

.promo-minimal-hover .minimal-item-title {
		transition-delay: .35s;
}

.promo-minimal-hover .minimal-item-descr {
		transition-delay: .5s;
}

.promo-minimal-hover .minimal-item-more {
		transition-delay: .65s;
}

.minimal-item-more {
		margin-top: 1.625rem;
		font-size: 4.44444444vmin;
		font-weight: bold;
		opacity: 0;
}

@media (max-width: 991px) {
		.minimal-item {
				overflow: hidden;
		}

}

.dark-horizontal .promo-minimal-container a {
		color: #000000 !important;
}

@media (min-width: 992px) {
		.minimal-item {
				min-height: 100vh;
				border-left: #cccccc 1px solid;
				border-top: none;
		}

		.minimal-item.over {
				opacity: 0;
		}

		.promo-minimal-hover .minimal-item {
				opacity: 0;
		}

		.minimal-item-letter .letter1 .text-texture {
				left: 0;
				right: -202%;
				padding-right: 202%;
		}

		.minimal-item-letter .letter2 .text-texture {
				left: -101%;
				right: -101%;
				padding-left: 101%;
				padding-right: 101%;
		}

		.minimal-item-letter .letter3 .text-texture {
				left: -202%;
				right: 0;
				padding-left: 202%;
		}

		.promo-minimal-hover:before,
		.promo-minimal-hover:after {
				content: "";
				display: block;
				width: 1px;
				height: 100%;
				position: absolute;
				top: 0;
				z-index: 300;
				background: #ffffff;
				opacity: .25;
		}

		.promo-minimal-hover:before {
				left: 33.33333333%;
		}

		.promo-minimal-hover:after {
				left: 66.66666667%;
		}

		.promo-minimal-hover .minimal-item-letter .letter3 .text-texture {
				padding-left: 0;
		}

		.promo-minimal-hover .minimal-item-letter .letter3 .text-texture>.inside {
				padding-left: 66.66666667%;
		}
}



/*-------------------------------------------------------------------------------
	7. Home Video
-------------------------------------------------------------------------------*/

.video-bnr {
		position: relative;
		margin-bottom: -15.375rem;
		height: 37.5rem;
}

.video-container {
		position: absolute;
		z-index: 50;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		overflow: hidden;
}

.video-container:before {
		content: "";
		display: block;
		position: absolute;
		z-index: 600;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background: #000000;
		opacity: .35;
		pointer-events: none;
}

.video-item {
		display: none;
		width: 100%;
		height: 100vh;
		overflow: hidden;
		position: absolute;
		left: 0;
		top: 0;
		background-position: 50% 50%;
		background-repeat: no-repeat;
		background-size: cover;
}

.video-item.is-active {
		display: block;
}

.video-container iframe {
		border: none;
		margin: 0;
		padding: 0;
		height: 500%;
		width: 100%;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
}

.circular-container {
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		top: 0;
		left: 10%;
		right: 10%;
		z-index: 99;
		width: 80%;
		height: 100%;
		opacity: 1;
		transition: opacity .3s ease-in-out;
}

.circular-container.is-active {
		opacity: 1;
		transition: opacity .5s ease-out .8s;
}

.circular-names {
		margin: 0;
		padding: 0;
		list-style: none;
}

@media (max-width: 767px) {
		.circular-container {
				display: none;
		}
}

.circular-container .circular-wrapper {
		position: relative;
		width: 59.72222222vmin;
		height: auto;
		margin-top: 7.96296296vmin;
}

.circular-container .circular-wrapper .circular-names li {
		display: flex;
		flex-direction: column;
		position: absolute;
		z-index: 300;
		overflow: hidden;
		padding-bottom: 0;
		color: #ffffff;
		font-size: 1.125rem;
		line-height: 1.5;
		text-transform: uppercase;
		cursor: pointer;
		letter-spacing: .08333333em;
}

.circular-container .circular-wrapper .circular-names li .name-wrapper {
		display: inline-block;
		padding: 10px;
		padding-bottom: 0;
		white-space: nowrap;
		transition: transform 1s cubic-bezier(.23, 1, .32, 1);
}

.circular-container .circular-wrapper .circular-names li .name-wrapper-date {
		padding-top: 0;
		padding-bottom: 10px;
		font-size: .875rem;
		white-space: nowrap;
		opacity: .7;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="1"] {
		bottom: 61.8%;
		left: 98%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="2"] {
		top: 87.65%;
		left: 80%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="3"] {
		top: 87.65%;
		right: 80%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] {
		right: 98%;
		bottom: 61.8%;
}

@media (max-width: 960px) {
		.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] {
				bottom: 58.6%;
		}

		.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] .name-wrapper {
				white-space: normal;
		}
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="5"] {
		bottom: 99.5%;
		left: 48.5%;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="1"] .name-wrapper,
.circular-container .circular-wrapper .circular-names li[data-portrait-index="2"] .name-wrapper,
.circular-container .circular-wrapper .circular-names li[data-portrait-index="5"] .name-wrapper {
		transform: translate3d(-100%, 0, 0);
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="3"],
.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] {
		text-align: right;
}

.circular-container .circular-wrapper .circular-names li[data-portrait-index="3"] .name-wrapper,
.circular-container .circular-wrapper .circular-names li[data-portrait-index="4"] .name-wrapper {
		transform: translate3d(100%, 0, 0);
}

.circular-container .circular-wrapper .circular-names li.is-active .name-wrapper {
		transform: translateZ(0);
		transition: transform 1s cubic-bezier(.23, 1, .32, 1) .8s;
}

.circular-container .circular-wrapper .circular-names li.is-init .name-wrapper {
		transform: translateZ(0);
		transition: transform 1s cubic-bezier(.23, 1, .32, 1) 0s;
}

.circular-container svg {
		-ms-transform: rotate(-90deg);
		transform: rotate(-90deg);
}

.circular-container svg .circle-path.circle-path--background {
		opacity: .2;
}

.circular-container svg .circle-path.circle-path--background circle {
		stroke-dasharray: 2644;
		stroke-dashoffset: 2644;
}

.circular-container svg .circle-path.circle-path--fill {
		opacity: 1;
}

.circular-container svg .circle-path.circle-path--fill circle {
		stroke-dasharray: 2644;
		stroke-dashoffset: 2644;
}

.circular-container svg .circle-path circle {
		fill: none;
		stroke-width: 2;
		stroke: #fff;
		stroke-miterlimit: 10;
}

.circular-container svg .circle-dot {
		position: relative;
		cursor: pointer;
}

.circular-container svg .circle-dot .circle-outside {
		fill: none;
		stroke-width: 2;
		stroke: #fff;
		opacity: 0.2;
		stroke-miterlimit: 10;
}

.circular-container svg .circle-dot .circle-center {
		fill: #fff;
		stroke: none;
		opacity: 0;
		transition: opacity .6s cubic-bezier(.23, 1, .32, 1), transform 1s cubic-bezier(.23, 1, .32, 1);
}

.circular-container svg .circle-dot:hover .circle-center {
		opacity: 1;
}

.circular-container svg .circle-dot.is-active .circle-center {
		opacity: 1;
		transition: opacity .6s cubic-bezier(.23, 1, .32, 1) 1s, transform 1s cubic-bezier(.23, 1, .32, 1);
}




.video-text-container {
		width: 100%;
		height: 100%;
		position: absolute;
		z-index: 400;
		left: 50%;
		top: 0;
		transform: translate(-50%, 0);
		color: #ffffff;
}

.video-text-item.is-active {
		visibility: visible;
}

.video-item-title {
		margin-bottom: .5rem;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
		font-size: 5.55555556vmin;
		font-weight: bold;
		letter-spacing: -.05em;
		line-height: 1.2;
}

.video-text-container a {
		pointer-events: all;
		color: inherit;
}

.video-item-title-sub {
		font-size: 1rem;
		text-transform: uppercase;
}

.video-item-title-sub:first-child {
		margin-bottom: .5rem;
}

.video-item-descr {
		margin-top: 4.07407407vmin;
		margin-bottom: 4vmin;
		overflow: hidden;
		height: auto;
		line-height: 1.875;
		font-size: 1rem;
		color: #cccccc;
}

.video-item-more {
		font-size: 1.125rem;
		text-transform: uppercase;
		font-weight: bold;
		letter-spacing: .25em;
}

@media (min-width: 768px) {
		.video-text-container {
				width: 59.72222222vmin;
				pointer-events: none;
		}

		.video-item-descr {
				height: 9.375em;
				height: 13.88888889vmin;
				margin-bottom: 2.59259259vmin;
		}

		.video-text-item {
				visibility: hidden;
				position: absolute;
				top: 50%;
				left: 0;
				width: 100%;
				height: 0;
				padding-bottom: 100%;
				padding-left: 2rem;
				padding-right: 2rem;
				margin-top: 16.962963vmin;
				text-align: center;
				transform: translate(0, -50%);
		}
}

@media (max-width: 767px) {
		.video-text-container {
				display: flex !important;
		}

		.video-text-container .owl-stage-outer,
		.video-text-container .owl-stage,
		.video-text-container .owl-item {
				height: 100%;
		}

		.video-text-item {
				height: 100%;
				position: relative;
		}

		.video-text-item>.inside {
				position: absolute;
				z-index: 20;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				width: 92%;
				text-align: center;
		}

		.video-text-container.owl-theme .owl-dots {
				position: absolute;
				top: 80%;
				left: 10%;
				right: 10%;
				text-align: center;
		}

		.video-text-container.owl-theme .owl-dots .owl-dot span:before {
				background: #ffffff;
		}

		.video-text-container.owl-theme .owl-dots .owl-dot.active span {
				border-color: #ffffff;
				background: rgba(255, 255, 255, .1);
		}

		.mobile-video-bg {
				display: block;
				position: absolute;
				left: 0;
				right: 0;
				top: 0;
				bottom: 0;
				z-index: 10;
				background-position: 50% 50%;
				background-repeat: no-repeat;
				background-size: cover;
		}

		.mobile-video-bg:before {
				content: "";
				display: block;
				position: absolute;
				left: 0;
				right: 0;
				top: 0;
				bottom: 0;
				background: #000000;
				opacity: .35;
		}

		.promo-video-container {
				position: relative;
				z-index: 200;
		}
}

.video-item-more i {
		margin-left: 1.25rem;
}

.video-text-item>.inside>* {
		transform: translateY(10vmin);
		opacity: 0;
}

.video-text-item.is-active>.inside>.video-item-title-sub,
.video-text-item.is-active>.inside>.video-item-title:first-child {
		animation: videoText 2s ease-in-out forwards;
		animation-delay: 0s;
}

.video-text-item.is-active>.inside>.video-item-title-sub+.video-item-title,
.video-text-item.is-active>.inside>.video-item-title+.video-item-title-sub {
		animation: videoText 2s ease-in-out forwards;
		animation-delay: .15s;
}

.video-text-item.is-active>.inside>.video-item-descr {
		animation: videoText2 .5s ease-in-out forwards;
		animation-delay: 1.8s;
}

.video-text-item.is-active>.inside>.video-item-more {
		animation: videoText2 .5s ease-in-out forwards;
		animation-delay: 1.95s;
}

@-webkit-keyframes videoText {
		0% {
				opacity: 0;
				transform: translateY(24vmin);
		}

		30% {
				opacity: 1;
				transform: translateY(12vmin);
		}

		70% {
				transform: translateY(12vmin);
		}

		100% {
				opacity: 1;
				transform: translateY(0px);
		}
}

@keyframes videoText {
		0% {
				opacity: 0;
				transform: translateY(24vmin);
		}

		30% {
				opacity: 1;
				transform: translateY(12vmin);
		}

		70% {
				transform: translateY(12vmin);
		}

		100% {
				opacity: 1;
				transform: translateY(0px);
		}
}

@-webkit-keyframes videoText2 {
		0% {
				opacity: 0;
				transform: translateY(5vmin);
		}

		100% {
				opacity: 1;
				transform: translateY(0px);
		}
}

@keyframes videoText2 {
		0% {
				opacity: 0;
				transform: translateY(5vmin);
		}

		100% {
				opacity: 1;
				transform: translateY(0px);
		}
}


/*-------------------------------------------------------------------------------
	8. Home 3D
-------------------------------------------------------------------------------*/

.screen {
		min-height: 100vh;
		width: 100%;
		padding-top: 5vmin;
		padding-bottom: 5vmin;
		display: flex;
		align-items: center;
		text-align: center;
}

.promo-3d {
		padding-top: 25vmin;
		position: relative;
		text-align: center;
}

.promo-3d-bg,
.promo-3d-man {
		position: fixed;
		left: 0;
		right: 0;
		bottom: -10vmin;
		z-index: 100;
}

.promo-3d-man {
		left: 50%;
		right: auto;
		bottom: -40vmin;
		width: 100%;
		transform: translate(-50%, 0) scale(1.05);
}

.promo-3d-bg img,
.promo-3d-man img {
		width: 100%;
}

@media (max-width: 575px) {

		.promo-3d-bg img,
		.promo-3d-man img {
				width: 200vmin;
				margin-left: -100vmin;
				margin-right: -100vmin;
		}
}

.promo-3d-man-start {
		position: absolute;
		left: 0;
		top: 10%;
}

.promo-3d-opacity {
		position: absolute;
		left: 0;
		top: 70%;
}

.promo-3d .promo-screen-titles {
		position: relative;
		z-index: 200;
}

.about-3d {
		position: relative;
		opacity: 0;
}

.section-about-3d.active .about-3d {
		opacity: 1;
}

.section-about-3d .section-item-title,
.section-about-3d .about-3d-detail {
		opacity: 0;
		transform: translateY(16rem);
		transition: all .75s ease-in-out;
}

.section-about-3d .section-item-title {
		transition-delay: .3s;
}

.section-about-3d .about-3d-detail {
		transition-delay: 1.2s;
}

.section-about-3d.active .section-item-title,
.section-about-3d.active .about-3d-detail {
		opacity: 1;
		transform: translateY(0);
}



.about-3d-photo {
		position: relative;
		padding-left: 6.25rem;
		padding-right: 6.25rem;
		margin-top: 12px;
		margin-bottom: 8vmin;
}

.photo-container {
		position: relative;
		overflow: hidden;
}

.photo-container img {
		transform: scale(1.2);
		transform-origin: right top;
		transition: all 1.5s .5s ease-in-out;
}

.section-about-3d.active .photo-container img {
		transform: scale(1);
}

.photo-container .mask {
		position: absolute;
		left: 0;
		top: 0;
		z-index: 100;
		width: 100%;
		height: 100%;
		background: #ffffff;
		transition: all 1.3s .5s ease-in-out;
}

.section-about-3d.active .photo-container .mask {
		top: -100%;
}

.section-about-3d .stamp {
		opacity: 0;
		transform: scale(1.5);
		transform-origin: right center;
		transition: all 1s .5s ease-in-out;
}

.section-about-3d.active .stamp {
		transform: scale(1);
		opacity: 1;
}

.about-3d .section-item-title {
		margin-bottom: 8.51851852vmin;
}

.about-3d-detail {
		position: relative;
		padding-bottom: 3.75rem;
		margin-bottom: 5vmin;
}

@media (min-width: 768px) {
		.about-3d-photo {
				padding-left: 6.25rem;
				padding-right: 4.375rem;
		}

		.rounded-logo.stamp {
				bottom: -8rem;
		}
}

@media (min-width: 992px) {

		.about-3d-photo,
		.about-3d-detail {
				margin-bottom: 11.85185185vmin;
		}
}

.about-3d-detail .lead {
		margin-bottom: 2.5rem;
}

.about-3d-detail .more {
		position: absolute;
		bottom: 0px;
		left: 15px;
}

.h2-3d {
		margin-bottom: 2.5rem;
		font-size: 3rem;
		line-height: 1.25;
		letter-spacing: -.035em;
}

.h2-flash {
		margin-bottom: 6rem;
		font-size: 3rem;
		line-height: 1.25;
}





.vertical-text-left {
		position: absolute;
		left: auto;
		right: 100%;
		margin-right: -34px;
		top: 0;
		transform: rotate(-90deg);
		transform-origin: top right;
		white-space: nowrap;
		text-align: right;
}

.vertical-text-right {
		position: absolute;
		right: auto;
		left: 100%;
		margin-left: -34px;
		top: 0;
		transform: rotate(90deg);
		transform-origin: top left;
		white-space: nowrap;
		text-align: left;
}

.vertical-text-left,
.vertical-text-right {
		font-size: 1rem;
		color: #666666;
		letter-spacing: .25em;
		text-transform: uppercase;
}

.about-3d .vertical-text-left,
.about-3d .vertical-text-right {
		top: 90px;
}

@media (max-width: 575px) {
		.rounded-logo.stamp {
				width: 7rem;
				height: 7rem;
				left: 3rem;
				bottom: -2rem;
		}
}

.project-carousel-3d {
		overflow: hidden;
		position: relative;
		padding-left: 0;
		padding-right: 0;
		margin-left: 0;
		margin-right: 0;
}

@media (min-width: 576px) {
		.project-carousel-3d .owl-carousel {
				width: 78.33333333%;
				position: static;
		}
}

.project-carousel-3d .owl-stage-outer {
		overflow: visible;
		transform: translate(0%, 0%);
		transition: all .4s ease-in-out;
}

@media (min-width: 768px) {
		.project-carousel-3d .project-carousel-item {
				padding-bottom: 54.04255319%;
		}
}

.project-carousel-3d:hover .owl-carousel .owl-stage-outer {
		transform: translate(-5rem, 0%);
}

.project-carousel-3d.move-left .owl-carousel .owl-stage-outer {
		transform: translate(-8rem, 0%);
}

.project-carousel-3d.move-right .owl-carousel .owl-stage-outer {
		transform: translate(-2rem, 0%);
}

.project-carousel-3d .owl-item .project-carousel-photo,
.project-carousel-3d .owl-item .project-carousel-date,
.project-carousel-3d .owl-item .project-carousel-detail {
		transition: all .4s ease-in-out;
		transform: translate(0rem, 0%);
}

.project-carousel-3d .owl-item.active+.owl-item .project-carousel-photo {
		transform: translate(-4rem, 0%);
}

.project-carousel-3d:hover .owl-item.active+.owl-item .project-carousel-photo {
		transform: translate(-6rem, 0%);
}

.project-carousel-3d.move-left .owl-item.active+.owl-item .project-carousel-photo {
		transform: translate(-7rem, 0%);
}

.project-carousel-3d:hover .owl-item.active .project-carousel-date,
.project-carousel-3d:hover .owl-item.active .project-carousel-detail {
		transform: translate(5rem, 0%);
}

.project-carousel-3d.move-left .owl-item.active .project-carousel-date,
.project-carousel-3d.move-left .owl-item.active .project-carousel-detail {
		transform: translate(8rem, 0%);
}

.project-carousel-3d.move-right .owl-item.active .project-carousel-date,
.project-carousel-3d.move-right .owl-item.active .project-carousel-detail {
		transform: translate(2rem, 0%);
}

.project-carousel-3d .project-carousel-item:not(.text-white) .project-carousel-title,
.project-carousel-3d .project-carousel-item:not(.text-white) .project-carousel-date {
		color: #000000;
}

.project-carousel-3d .project-carousel-item .project-carousel-category,
.project-listing-category,
.project-masonry-category {
		color: #999999;
}

.project-carousel-3d .project-carousel-category,
.project-listing-category,
.project-masonry-category {
		font-size: .875rem;
		text-transform: uppercase;
}

.project-carousel-date {
		font-size: 1.5rem;
}

.project-carousel-3d .project-carousel-detail,
.project-carousel-3d .owl-item.active .project-carousel-detail {
		opacity: 1;
		animation: none;
}

.project-carousel-3d .project-carousel-detail {
		bottom: 2rem;
}

.project-carousel-3d .owl-item {
		overflow: hidden;
}

@media (min-width: 768px) {
		.project-carousel-3d .project-carousel-detail {
				bottom: 5rem;
		}
}



/*-------------------------------------------------------------------------------
	9. Home Flash
-------------------------------------------------------------------------------*/

.flash-item-nav {
		position: fixed;
		left: 15px;
		z-index: 500;
		padding-left: 0;
		font-size: 1rem;
		text-transform: uppercase;
		font-weight: bold;
}

.flash-item-nav {
		transition: padding .2s ease-in-out;
}

.flash-item-nav:before {
		transition: width .2s ease-in-out;
}

.flash-item-nav a {
		transition: color .2s ease-in-out;
}

.flash-item-nav:before {
		content: "";
		display: block;
		position: absolute;
		left: 0;
		top: 50%;
		height: 1px;
		margin-top: -1px;
		width: 0;
}

.flash-item-nav.active:before {
		width: 1.875rem;
}

.flash-item-nav.active {
		padding-left: 3rem;
}

.flash-item-nav a {
		color: #999999 !important;
}

.flash-item-nav a:hover,
.flash-item-nav.active a {
		color: #000000 !important;
		text-decoration: none;
}

.flash-item-nav:before {
		background: #000000;
}

.home-flash-dark .flash-item-nav a,
.home-flash.dark-horizontal .flash-item-nav a {
		color: #666699 !important;
}

.home-flash-dark .flash-item-nav a:hover,
.home-flash.dark-horizontal .flash-item-nav a:hover,
.home-flash-dark .flash-item-nav.active a,
.home-flash.dark-horizontal .flash-item-nav.active a {
		color: #ffffff !important;
}

.home-flash-dark .flash-item-nav:before,
.home-flash.dark-horizontal .flash-item-nav:before {
		background: #ffffff;
}

.item-nav-1 {
		top: calc(100% - 330px);
}

.item-nav-2 {
		top: calc(100% - 280px);
}

.item-nav-3 {
		top: calc(100% - 230px);
}

.item-nav-4 {
		top: calc(100% - 180px);
}

.item-nav-5 {
		top: calc(100% - 130px);
}

.item-nav-6 {
		top: calc(100% - 80px);
}

.flash-item {
		position: relative;
}

.flash-pin-2 {
		position: absolute;
		left: 0;
		top: 276px;
}

.flash-pin-3 {
		position: absolute;
		left: 0;
		top: 228px;
}

.flash-pin-4 {
		position: absolute;
		left: 0;
		top: 172px;
}

.flash-pin-5 {
		position: absolute;
		left: 0;
		top: 128px;
}

.flash-pin-6 {
		position: absolute;
		left: 0;
		top: 78px;
}

@media (max-width: 575px) {
		.flash-item-nav {
				display: none;
		}
}

@media (min-width: 1600px) {
		.flash-item-nav {
				left: 3.75rem;
		}
}

.home-flash-dark .home-flash-section .container,
.home-flash.dark-horizontal .home-flash-section .container,
.home-flash-dark .home-flash-section .container-fluid,
.home-flash.dark-horizontal .home-flash-section .container-fluid,
.home-flash .footer {
		opacity: 0;
		pointer-events: none;
		transition: opacity .3s ease-in-out;
}

.home-flash-section {
		padding-bottom: 0;
}

.home-flash-section-dark {
		padding-top: 21.01851852vmin;
		margin-bottom: 0;
}

@media (min-width: 576px) and (max-width: 1599px) {
		.home-flash-section {
				padding-left: 10rem;
		}
}

.home-flash-dark .home-flash-section-dark .container,
.home-flash.dark-horizontal .home-flash-section-dark .container,
.home-flash-dark .home-flash-section-dark .container-fluid,
.home-flash.dark-horizontal .home-flash-section-dark .container-fluid,
.home-flash.dark-horizontal .footer {
		opacity: 1;
		pointer-events: all;
}

.home-flash {
		background: #ffffff;
		transition: background .3s ease-in-out;
}

.home-flash-dark,
.home-flash.dark-horizontal {
		background-color: #2b3d4f;
		background-image: url("../img/bg-piling0.png");
		background-position: left center;
}

.home-flash-dark hr,
.home-flash.dark-horizontal hr {
		border-top-color: rgba(255, 255, 255, .05);
}

.home-flash-dark a,
.dark-horizontal a,
.home-flash-dark strong,
.home-flash.dark-horizontal strong,
.home-flash-dark h1,
.home-flash.dark-horizontal h1,
.home-flash-dark .h1,
.home-flash.dark-horizontal .h1,
.home-flash-dark h2,
.home-flash.dark-horizontal h2,
.home-flash-dark .h2,
.home-flash.dark-horizontal .h2,
.home-flash-dark h3,
.home-flash.dark-horizontal h3,
.home-flash-dark .h3,
.home-flash.dark-horizontal .h3 {
		color: #ffffff;
}

.home-flash .section-item-title,
.section-item-title-xs,
.section-item-title-xs-narrow {
		font-size: .875rem;
		color: #999999;
		text-transform: uppercase;
		letter-spacing: .5em;
		font-weight: bold;
}

.section-item-title-xs-narrow {
		letter-spacing: .1em;
		font-weight: normal;
}

.section-item-title-xs {
		margin-bottom: 1.25rem;
}

.home-flash-dark .section-item-title,
.home-flash-dark .section-item-title a {
		color: #666699;
		text-decoration: none;
}

.h1-flash {
		margin-bottom: 7.40740741vmin;
		background: linear-gradient(to bottom, #ff7c00, #ff0000);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
		font-size: 9.25925926vmin;
		line-height: 1;
}

.about-flash {
		position: relative;
}

.about-flash .vertical-text-right {
		right: auto;
		left: 0;
		margin-left: 35px;
		margin-top: 1.66666667vmin;
		color: #ffffff;
		font-weight: bold;
		font-size: 1.125rem;
}

.rounded-logo-scroll {
		float: right;
		width: 7.5rem;
		height: 7.5rem;
		position: relative;
		margin-top: 22px;
}

.rounded-logo-scroll svg {
		letter-spacing: 9px;
		word-spacing: 0;
		fill: #666699;
}

.scroll-icon {
		display: inline-block;
		vertical-align: middle;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 20px;
		height: 38px;
		border: #ffffff 2px solid;
		border-radius: 10px;
		padding-top: 18px;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
}

.scroll-icon i {
		display: block;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 1px;
		background: #ffffff;
		border-radius: 10px;
}

.scroll-icon i:nth-child(1) {
		width: 2px;
		height: 2px;
}

.scroll-icon i:nth-child(2) {
		width: 4px;
		height: 4px;
}

.scroll-icon i:nth-child(3) {
		width: 6px;
		height: 6px;
}

.flash-video-container {
		position: relative;
		padding-right: 8.54700855%;
		padding-top: 8.54700855%;
}

.flash-video-container:before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 14.28571429%;
		left: 8.54700855%;
		right: 0;
		background: url("../img/bg-dotted.png") 0px 2px;
		z-index: 1;
}

.flash-video-container.mask-skew .mask .inside {
		background: #2c1a6a;
}

.flash-video {
		display: block;
		width: 100%;
		position: relative;
		z-index: 50;
}

.flash-video img {
		border: #ffffff 8px solid;
		max-width: 100%;
}

.flash-video-icon {
		width: 5rem;
		height: 5rem;
		border-radius: 5rem;
		background: #ffffff;
		position: absolute;
		z-index: 30;
		left: 50%;
		top: 50%;
		text-align: center;
		line-height: 4.75rem;
		font-size: 2.375rem;
		color: #ff0000;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
}

.flash-video-icon:before,
.flash-video-icon:after {
		content: "";
		display: block;
		position: absolute;
		border-radius: 100px;
		background: #ffffff;
		opacity: .4;
}

.flash-video-icon:before {
		left: -.625rem;
		top: -.625rem;
		right: -.625rem;
		bottom: -.625rem;
}

.flash-video-icon:after {
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		animation-name: pulsation;
		animation-duration: 8s;
		animation-timing-function: linear;
		animation-iteration-count: infinite;
}

@keyframes pulsation {
		0% {
				opacity: .5;
				-webkit-transform: scale(1);
				-ms-transform: scale(1);
				-o-transform: scale(1);
				transform: scale(1);
		}

		15% {
				opacity: 0;
				-webkit-transform: scale(1.75);
				-ms-transform: scale(1.75);
				-o-transform: scale(1.75);
				transform: scale(1.75);
		}

		100% {
				opacity: 0;
				-webkit-transform: scale(1.75);
				-ms-transform: scale(1.75);
				-o-transform: scale(1.75);
				transform: scale(1.75);
		}
}

.flash-video-icon i {
		display: inline-block;
		vertical-align: middle;
		margin-left: .25rem;
		line-height: .75;
		transform: scale(1);
		transition: all .5s ease-in-out;
}

.services-flash {
		box-shadow: rgba(2, 3, 3, .1) 0 0 120px;
		margin-top: 80px;
		margin-bottom: 11.29629630vmin;
}

.services-flash .service-item {
		border: #40407a 1px solid;
		background: #331d7f;
		padding: 2.125rem 1.625rem 2.125rem 2rem;
		margin-left: -1px;
		margin-bottom: -1px;
		margin-top: 0;
		display: flex;
		flex-direction: column;
		letter-spacing: -.025em;
}

@media (min-width: 576px) and (max-width: 767px) {
		.services-flash .service-item:nth-child(odd) {
				margin-left: 0;
		}
}

@media (max-width: 575px) {
		.services-flash .service-item {
				margin-left: 0;
		}
}

.services-flash .service-item:hover {
		z-index: 10;
}

.services-flash .service-item:before {
		content: "";
		background: #ff3600;
		height: 5px;
		width: 0;
		position: absolute;
		left: -1px;
		bottom: -1px;
		transition: all .4s ease-in-out;
}

.services-flash .service-item:hover:before {
		width: calc(100% + 2px);
}

.services-flash .service-item:first-child {
		margin-left: 0;
}

.services-flash .service-item-title {
		font-size: 1.25rem;
		text-transform: uppercase;
		color: #ffffff;
}

.services-flash a:hover .service-item-title,
.services-flash .service-item-title:hover {
		color: #ffffff;
}

.services-flash .service-item-descr {
		display: flex;
		flex: 1 1 auto;
		line-height: 1.5;
		margin-top: 1rem;
}

.icon-design-graphic {
		display: inline-block;
		vertical-align: bottom;
		width: 5rem;
		height: 3.4375rem;
		background-position: 50% 50%;
		background-repeat: no-repeat;
		background-image: url("../img/icon-design-graphic.png");
		background-size: 100%;
}

.icon-design-web {
		display: inline-block;
		vertical-align: bottom;
		width: 4.0625rem;
		height: 3.3125rem;
		background-position: 50% 50%;
		background-repeat: no-repeat;
		background-image: url("../img/icon-design-web.png");
		background-size: 100%;
}

.icon-marketing {
		display: inline-block;
		vertical-align: bottom;
		width: 3.4375rem;
		height: 3.9375rem;
		background-position: 50% 50%;
		background-repeat: no-repeat;
		background-image: url("../img/icon-marketing.png");
		background-size: 100%;
}

.icon-photography {
		display: inline-block;
		vertical-align: bottom;
		width: 4.1875rem;
		height: 3.3125rem;
		background-position: 50% 50%;
		background-repeat: no-repeat;
		background-image: url("../img/icon-photography.png");
		background-size: 100%;
}

.service-item-icon {
		margin-top: 2.125rem;
		height: 4rem;
		line-height: 4rem;
}

.service-item-plus {
		height: 1rem;
		position: relative;
		margin-top: 2.625rem;
}

.service-item-plus:before,
.service-item-plus:after {
		content: "";
		display: block;
		width: 1rem;
		height: .25rem;
		background: #666699;
		position: absolute;
		left: 0;
		bottom: .375rem;
		transform: rotate(-180deg);
		transition: all .4s ease-in-out;
}

.service-item:hover .service-item-plus:before,
.service-item:hover .service-item-plus:after {
		background: #ffffff;
}

.service-item:hover .service-item-plus:after {
		transform: rotate(90deg);
}



.facts {
		margin-top: 9.07407407vmin;
}

.fact-item {
		display: flex;
		margin-bottom: 2rem;
		align-items: center;
}

.fact-item-value {
		position: relative;
		padding-right: 1.5rem;
		line-height: 1.1;
		font-size: 2.75rem;
		visibility: hidden;
}

.fact-item-value>.inside {
		visibility: visible;
		position: absolute;
		left: 0;
		top: 0;
}

.fact-item-param {
		font-size: 1.125rem;
		line-height: 1.44444444;
		letter-spacing: .025em;
		text-transform: uppercase;
}

@media (min-width: 992px) {
		.fact-item-value {
				line-height: .75;
				font-size: 3.75rem;
		}
}



.project-list-listing+.more-lg {
		margin-top: 4.375rem;
}

.project-list-masonry+.more-lg {
		margin-top: 6.25rem;
}

.grid-item {
		width: 100%;
}

.project-list-flash .project-item,
.project-list-listing .project-item {
		display: block;
		position: relative;
}

.project-list-flash .project-item {
		padding-bottom: 100%;
		overflow: hidden;
}

.project-list-listing .grid-item {
		display: block;
		margin-bottom: 5.625rem;
}

.project-list-masonry .grid-item {
		display: block;
		margin-bottom: 2.5rem;
		padding-left: 15px;
		padding-right: 15px;
}

.project-list-listing .project-item {
		padding-bottom: 44.44444444%;
		overflow: hidden;
}

.project-list-listing .project-listing-photo {
		transform: scale(1);
		transition: all 1s ease-in-out;
}

.project-list-listing a:hover .project-listing-photo {
		transform: scale(1.08);
}

.project-list-flash .section-item-title {
		margin-top: -.375rem;
		margin-bottom: 1.625rem;
}

.project-list-flash .project-carousel-detail,
.project-metro-detail {
		opacity: 1;
		left: 0;
		right: 0;
		bottom: 0;
		max-width: 100%;
		padding: 1.5rem 3.5rem 2.875rem;
		background: transparent;
		transition: all .5s linear;
}

.project-metro-detail {
		padding-left: 2.875rem;
		padding-right: 2.875rem;
		padding-bottom: 2.375rem;
}

.project-metro-title {
		margin-bottom: 1.125rem;
}

.project-list-flash .project-item:hover .project-carousel-detail {
		background: #191a1e;
}

.project-list-flash .project-carousel-title {
		padding-right: 2rem;
		font-family: 'Abril Fatface', cursive;
		font-weight: normal;
}

.project-list-title {
		padding-bottom: 3rem;
}

.project-list-title h2 {
		line-height: 1.333333;
}

.project-list-flash .project-carousel-category {
		margin-top: 1.125rem;
}

.project-list-flash .project-carousel-photo {
		transform: scale(1);
		transition: all 1s ease-in-out;
}

.project-list-flash a:hover .project-carousel-photo {
		transform: scale(1.08);
}

.project-item-more {
		padding-top: 3rem;
}

.project-masonry-photo {
		overflow: hidden;
}

.project-masonry-photo img {
		max-width: 100%;
		width: 100%;
}

.project-list-metro .project-item {
		height: 32.5rem;
		position: relative;
		margin-bottom: 30px;
		overflow: hidden;
}

.project-metro-photo img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transform: scale(1);
		opacity: 1;
		transition: all .3s ease-in-out;
}

a:hover .project-metro-photo img {
		transform: scale(1.1);
		opacity: 0;
}

@media (min-width: 576px) {
		.project-list-masonry .grid-item {
				width: 50%;
		}
}

@media (min-width: 768px) {
		.project-list-listing .grid-item {
				width: 100%;
		}

		.project-list-masonry .grid-item {
				width: 25%;
		}

		.project-list-title,
		.project-item-more {
				margin-left: 17.09401709%;
				margin-right: 25%;
		}

		.project-list-title {
				padding-bottom: 20.51282051%;
		}

		.project-item-more {
				padding-top: 30%;
		}
}

.project-carousel-category .divider,
.project-item .divider {
		margin-left: .625rem;
		margin-right: .625rem;
}

.project-carousel-go {
		position: absolute;
		right: 2.625rem;
		top: 1.375rem;
		opacity: 0;
		margin-right: 2rem;
		font-size: 3.75rem;
		transition: all .5s ease-in-out;
}

.project-item:hover .project-carousel-go {
		margin-right: 0;
		opacity: 1;
}

.project-list-flash .project-carousel-date,
.project-metro-date {
		top: 3.125rem;
		left: 3.5rem;
		font-size: 1.25rem;
		letter-spacing: .025em;
		font-weight: bold;
}

.project-metro-date {
		top: 2.625rem;
		left: 2.875rem;
}


.article-list-flash {
		margin-top: 2.375rem;
}

.article-list-flash>div {
		display: flex;
}

.article-list-flash .article-item {
		padding: 2.25rem 2.625rem 2.4375rem;
		background: #f6f7f7;
		overflow: hidden;
}

.article-list-flash .article-item-photo {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		opacity: 0;
		overflow: hidden;
		margin: 0;
		height: auto;
		padding-bottom: 0;
		background-position: 50% 50%;
		background-repeat: no-repeat;
		background-size: cover;
		transition: all .5s ease-in-out;
}

.article-list-flash .article-item:hover .article-item-photo {
		opacity: 1;
}

.article-list-flash .article-item .article-item-photo {
		transition-property: opacity, transform;
		transition-duration: .5s, 8s;
		transform: scale(1);
}

.article-list-flash .article-item:hover .article-item-photo {
		transform: scale(1.2);
}

.article-list-flash .article-item-date {
		position: static;
		left: auto;
		bottom: auto;
		padding-bottom: 27.27272727%;
		margin-bottom: 0;
		color: #999999;
		font-size: .75rem;
		font-weight: bold;
		text-transform: uppercase;
}

.article-list-flash .article-item-date .date {
		display: block;
		margin-bottom: .75rem;
		line-height: .75;
		font-size: 4.5rem;
		color: #cccccc;
		font-weight: normal;
}

.article-list-flash .article-item-category {
		margin-bottom: 1.375rem;
}

.article-list-flash .article-item-category,
.article-list-flash .article-item-category a {
		color: #ff3600;
}


.footer-flash-about {
		padding-top: 16.66666667vmin;
		padding-bottom: 13.51851852vmin;
		font-size: 1.875rem;
		line-height: 1.6;
}

.home-flash .footer-flash-about {
		padding-top: 0;
}

.footer-flash {
		padding-top: 4.875rem;
		padding-bottom: 0;
}

.footer-content-flash h5 {
		margin-bottom: 2.25rem;
		font-size: .875rem;
		color: #9999cc;
		text-transform: uppercase;
		font-weight: bold;
}

.footer-content-flash .contact-item,
.footer-content-flash .contact-item a,
.footer-content-flash .social-rounded a {
		color: #ffffff;
}

.footer-content-flash .contact-item {
		margin-bottom: .625rem;
}

.footer-content-flash .contact-item,
.footer-content-flash .footer-nav {
		font-size: 1.125rem;
		line-height: 1.44444444;
}

.footer-nav {
		margin: 0;
		padding: 0;
		list-style: none;
}

.footer-nav li {
		margin-bottom: .25rem;
}

.footer-content-flash .contact-item a:not(.phone-link):hover,
.footer-content-flash .footer-nav a:hover {
		color: #666699;
		text-decoration: none;
}

.footer-flash .site-info {
		border-top: none;
}

@media (min-width: 768px) {
		.footer-content-flash .social-rounded {
				margin-right: -.625rem;
				text-align: right;
		}

		.footer-flash .site-info {
				padding-top: 3.125rem;
				padding-bottom: 4rem;
		}
}

.footer-flash .copyright {
		text-transform: none;
}



/*-------------------------------------------------------------------------------
	10. Work Pages
-------------------------------------------------------------------------------*/

.nav-inline {
		margin-right: -15px;
		margin-bottom: 2.625rem;
		letter-spacing: -.015em;
}

.nav-inline li {
		margin-right: 2.25rem;
		margin-bottom: 1rem;
}

.nav-inline a {
		cursor: pointer;
}

.nav-inline .active a,
.nav-inline a:hover {
		text-decoration: none;
}

.text-center .nav-inline {
		margin-right: 0;
		justify-content: center;
}

.text-center .nav-inline li {
		margin-left: 1.125rem;
		margin-right: 1.125rem;
}

.nav-inline-wide {
		letter-spacing: .025em;
}

.nav-inline-wide li {
		margin-right: 3.125rem;
}

.text-center .nav-inline-wide li {
		margin-left: 1.5625rem;
		margin-right: 1.5625rem;
}

.nav-inline.text-black .active a,
.nav-inline.text-black a:hover {
		color: #b11d11;
}

.parallax-link a,
.parallax-link a:hover {
		position: relative;
		text-decoration: none;
		color: #666666 !important;
}

.parallax-link a:before {
		content: attr(data-text);
		position: absolute;
		width: 0%;
		transition: width cubic-bezier(0.82, 0, 0.21, 1) 0.3s;
		color: #b11d11;
		z-index: 2;
		overflow: hidden;
		white-space: nowrap;
}

.parallax-link li.active>a:before,
.parallax-link a:hover:before {
		width: 100%;
}

.nav.flex-column li {
		margin-bottom: 1rem;
}

.nav.flex-column a {
		color: inherit;
		text-decoration: none;
}

.nav.flex-column .active a,
.nav.flex-column a:hover {
		color: #b11d11;
}


/*-------------------------------------------------------------------------------
	11. Project Card
-------------------------------------------------------------------------------*/

.project-card-mobile {
		padding-top: 5.375rem;
}

.project-card-promo {
		height: 0;
		padding-bottom: 34.79166667%;
		background-size: cover;
		background-position: 50% 30%;
		overflow: hidden;
		transition: all .1s linear;
}

.project-info {
		padding-top: 4.875rem;
		padding-bottom: 1.125rem;
		border-bottom: #eaeaea 1px solid;
}
.project-info-img {
	width: 100%;
}
.project-info-item {
		margin-bottom: 3.5rem;
}

.project-info-title {
		margin-bottom: 1rem;
		font-size: 1.125rem;
		font-weight: normal;
		color: #494cea !important;
		text-transform: uppercase;
		/*font-family: 'Poppins', sans-serif;*/
}

.project-info-descr {
		line-height: 1.625;
		color: #666666;
}

.lead {
		font-weight: normal;
}

.lead-lg {
		font-size: 1.5rem;
}

.like-btn {
		width: 5rem;
		height: 5rem;
		border-radius: 5rem;
		background: #f4f6f6;
		border: #f4f6f6 1px solid;
		padding: 0;
		margin: 0;
		cursor: pointer;
		font-size: 2.25rem;
		color: #ff3600;
}

.like-btn i {
		display: inline-block;
		vertical-align: middle;
		line-height: 1;
		transform: scale(1);
		transition: all .2s ease-in-out;
}

.like-btn:hover i {
		transform: scale(1.08);
}

.pager {
		letter-spacing: .025em;
}

.pager i {
		vertical-align: middle;
		line-height: 1;
		font-size: 1.25rem;
}

.pager .ion-ios-arrow-left {
		margin-right: .5rem;
}

.pager .ion-ios-arrow-right {
		margin-left: .5rem;
}

.pager a {
		color: #000000;
		text-decoration: none;
}

.pager a:hover {
		color: #b11d11;
}

.pagination {
		margin-top: 7rem;
		font-size: .875rem;
		font-weight: bold;
		text-transform: uppercase;
		letter-spacing: .1em;
}

.page-link {
		border: none;
		padding: 0;
		background: transparent;
		margin-right: 1.625rem;
		color: #999999;
}

.page-item.disabled .page-link {
		color: #999999;
		opacity: .3;
}

.page-link:hover,
.page-item.active .page-link {
		background: transparent;
}

.page-item.active .page-link,
a.page-link:hover {
		color: #16171e;
}

.page-link i,
.page-link i:before {
		display: block;
		font-size: 1.5rem;
		line-height: .75;
}

.tags li {
		margin-right: 10px;
}

.tags .active .btn-outline-secondary,
.tags .btn-outline-secondary:hover,
.tags .btn-outline-secondary:not(:disabled):not(.disabled):active,
.theme-orange .tags .btn-outline-secondary:hover {
		background: transparent;
		border-color: #16171e !important;
		color: #16171e !important;
}

.next-project {
		position: relative;
		background: #eaeeef;
}

.next-project [class^="col-"] {
		position: static;
}

.next-project a {
		display: block;
		padding-top: 3.25rem;
		padding-bottom: 3rem;
		text-decoration: none;
		color: #000000;
}

.next-project-link {
		text-align: right;
}

.next-project-photo {
		position: absolute;
		top: 0;
		bottom: 0;
		z-index: 100;
		background-size: cover;
		background-position: 50% 50%;
		opacity: 0;
		transition: all .5s .5s ease-in-out;
}

.prev-project-link .next-project-photo {
		left: 0;
		right: 50%;
}

.next-project-link .next-project-photo {
		left: 50%;
		right: 0;
}

.next-project a:hover .next-project-photo {
		opacity: 1;
}

.next-project h3,
.next-project .h3 {
		position: relative;
		top: 0;
		opacity: 1;
		font-size: 1.5rem;
		transition: all .4s .3s ease-in-out;
}

.next-project-promo {
		height: 24rem;
		padding-top: 5rem;
		padding-bottom: 5rem;
		display: flex;
		align-items: center;
		background-position: 50% 0%;
		background-size: cover;
		text-align: center;
}

.next-title {
		margin-bottom: 1rem;
		font-size: 1.25rem;
		text-transform: uppercase;
}

.next-project .next-title {
		margin-bottom: .75rem;
		font-size: 1.125rem;
		color: #999999;
		position: relative;
		top: 0;
		opacity: 1;
		transition: all .4s .2s ease-in-out;
}

.next-project a:hover .next-title,
.next-project a:hover h3,
.next-project a:hover .h3 {
		top: -2rem;
		opacity: 0;
}

.screen-item {
		border: #cccccc 1px solid;
		margin-bottom: 30px;
		display: block;
}

.screen-item img {
		display: block;
		width: 100%;
}

.testimonial-text {
		margin-bottom: 4rem;
		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-image: url(../img/piling-pic3.png);
		background-color: #f6f6f6;
		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;
}

.project-photo-carousel {
		background-image: url(../img/piling-pic3.png);
		background-color: #f6f6f6;
		padding: 7.29166667% 15px;
}


.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-image: url("../img/bg-piling0.png");
		background-position: left center;
		height: 0;
		padding-bottom: 52.08333333%;
		overflow: hidden;
		position: relative;
}

.project-card-web-promo .screen-mobile {
		position: absolute;
		left: 14.58333333%;
		top: 18.7962963%;
		width: 20.83333333%;
}

.project-card-web-promo .screen-desktop {
		position: absolute;
		left: 28.90625%;
		top: 18.7962963%;
		width: 59.0625%;
}

.pallete-list {
		margin-right: -4rem;
}

@media (max-width: 767px) {
		.pallete-list {
				margin-bottom: 5rem;
		}

		.project-card-web-promo {
				padding-bottom: 80%;
		}

		.project-card-web-promo .screen-desktop,
		.project-card-web-promo .screen-mobile {
				margin-top: 4rem;
		}
}

.pallete-item {
		display: inline-block;
		vertical-align: top;
		margin-right: 4rem;
		margin-bottom: 2.375rem;
		text-align: center;
}

.color {
		display: block;
		width: 3.75rem;
		height: 3.75rem;
		border-radius: 3.75rem;
		margin-bottom: 24px;
}

.color-title {
		color: #999999;
		font-size: .875rem;
		text-transform: uppercase;
}



/*-------------------------------------------------------------------------------
	12. News Pages
-------------------------------------------------------------------------------*/

.article-content {
		font-size: 1.125rem;
		line-height: 1.66666667;
}

.article-content .fs20 {
		line-height: 1.5;
}

.article-content .fs20 p {
		margin-bottom: 1.5em;
}

.article-content p {
		margin-bottom: 1.66666667em;
}

.article-content h2,
.article-content .h2 {
		margin-top: 5.5rem;
		margin-bottom: 3.125rem;
}

.article-content h4,
.article-content .h4 {
		margin-top: 3.75rem;
		margin-bottom: 2rem;
		font-family: 'Libre Baskerville', serif;
		letter-spacing: 0;
}

.article-content h4:first-child,
.article-content .h4:first-child {
		margin-top: 0;
}

.article-content .lead {
		margin-bottom: 50px;
		font-size: 1.5rem;
		color: #999999;
		font-family: 'Libre Baskerville', serif;
		font-style: italic;
		line-height: 1.5;
		letter-spacing: -.01em;
}

.article-content .dropcap:first-letter {
		float: left;
		margin-bottom: -1rem;
		margin-right: 1rem;
		font-size: 3.75rem;
		font-family: 'Libre Baskerville', serif;
		line-height: 1.275;
}

.article-content figure {
		margin-top: 3.5rem;
		margin-bottom: 4rem;
}

.article-content figure img {
		max-width: 100%;
		height: auto;
}

.article-content figcaption {
		display: block;
		margin-top: 1rem;
		text-align: center;
		font-size: 1rem;
		color: #999999;
}

.article-content ul {
		margin: 0;
		padding: 0;
		list-style: none;
}

.article-content ul li {
		position: relative;
		padding-left: 2rem;
		margin-bottom: 1.125rem;
}

.article-content ul li:before {
		content: "";
		display: block;
		width: 5px;
		height: 5px;
		background: #000000;
		border-radius: 5px;
		position: absolute;
		left: 0;
		top: .7em;
}

.mask-skew {
		overflow: hidden;
		position: relative;
}

.mask-skew .mask {
		position: absolute;
		left: 100%;
		top: 0;
		bottom: 0;
		z-index: 100;
		width: 120%;
		animation-fill-mode: forwards;
}

.mask-skew .mask .inside {
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		background: #ffffff;
		transform: skewX(-10deg);
		transform-origin: bottom;
}


.blockquote {
		margin-top: 4.5rem;
		margin-bottom: 4.125rem;
		text-align: center;
		font-size: 1.875rem;
		line-height: 1.53333333;
		letter-spacing: -.025em;
}

.blockquote footer {
		margin-top: 2.5rem;
		position: relative;
		font-size: .875rem;
		text-transform: uppercase;
		letter-spacing: .2em;
		color: #999999;
}

.blockquote footer:before {
		content: "";
		display: block;
		width: 1.875rem;
		height: 1px;
		background: #a7a9b8;
		position: absolute;
		top: -1.25rem;
		left: 50%;
		transform: translate(-50%, 0);
}

.blockquote-status footer {
		text-transform: none;
		letter-spacing: 0;
}

.blockquote-status footer:before {
		display: none;
}



.article-carousel-promo .owl-nav [class*=owl-] {
		display: none;
}

.article-carousel-promo .owl-dots {
		margin-top: 1rem;
}

.article-promo-item {
		display: block;
		min-height: 35rem;
		background-position: 50% 20%;
		background-size: cover;
		padding-top: 4rem;
		padding-bottom: 3rem;
		position: relative;
		text-decoration: none;
		display: flex;
		align-items: center;
}

.article-promo-item,
.article-promo-item a {
		color: #ffffff;
}

.article-carousel-promo-detail a:not(.btn) {
		text-decoration: underline;
}

.article-carousel-promo-detail a:not(.btn):hover {
		text-decoration: none;
}

.article-promo-item:before {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background: #000000;
		opacity: .25;
}

.article-promo .article-promo-item:before {
		display: none;
}

.article-promo-item .btn-outline-light:hover {
		background: #ff3600;
		border-color: #ff3600;
		color: #ffffff;
}

.bnr {
		position: relative;
		background: #181b31;
		display: block;
}

.bnr-photo {
		opacity: .5;
}

.bnr-photo img {
		width: 100%;
		height: auto;
}

.bnr-content {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 1.25rem 1.25rem 1.875rem;
		text-align: center;
		color: #ffffff;
}

.bnr-title {
		font-size: 1.5rem;
		font-weight: bold;
}

.bnr-title-sub {
		margin-bottom: 10px;
		font-size: .75rem;
		font-weight: bold;
		letter-spacing: .1em;
}

@media (min-width: 576px) {
		.article-carousel-promo .owl-nav [class*=owl-] {
				display: block;
		}

		.article-carousel-promo .owl-dots {
				display: none;
		}

		.article-promo-item {
				min-height: 39.375rem;
				padding: 10.625rem 4.75rem 3rem;
				align-items: flex-start;
		}

		.article-promo-item-md {
				min-height: 48.75rem;
		}
}

.news-info {
		border-bottom: #eaeaea 1px solid;
}

.news-info-item {
		margin-bottom: 3.375rem;
}

.news-info-title {
		margin-bottom: 2px;
		font-size: .75rem;
		color: #999999;
		text-transform: uppercase;
		letter-spacing: .1em;
}

.article-author {
		border-top: #e5e5e5 1px solid;
		border-bottom: #e5e5e5 1px solid;
		padding-top: 3.125rem;
		padding-bottom: 2.8125rem;
}

.article-author-photo {
		width: 5rem;
}

.avatar-photo {
		background-position: 50% 50%;
		border-radius: 50%;
		background-size: cover;
		background-image: url("../img/no-avatar.gif");
		background-repeat: no-repeat;
		overflow: hidden;
		position: relative;
}

.avatar-photo:before {
		content: "";
		display: block;
		width: 100%;
		padding-bottom: 100%;
}

.avatar-photo a {
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		border-radius: 50%;
}

.article-author-name {
		margin-bottom: 0;
}

.article-author-name a {
		color: #181b31;
		text-decoration: none;
}

.article-author-name a:hover {
		text-decoration: underline;
}

.article-author-status {
		font-size: .875rem;
		color: #999999;
		text-transform: uppercase;
		letter-spacing: .1em;
}

.article-author-descr {
		margin-top: 10px;
		line-height: 1.625;
}

.comment-item {
		margin-bottom: 2rem;
}

.comment-item-photo {
		width: 4.375rem;
}

.comment-item-sub {
		margin-top: 1.75rem;
		margin-right: 1.25rem;
}

.comment-item-sub .comment-item-photo {
		width: 2.8125rem;
		margin-top: .25rem;
}

.comment-item-name {
		margin-top: 2px;
		font-size: 1.125rem;
		font-weight: bold;
		letter-spacing: -.025em;
}

.comment-item-name a {
		color: inherit;
}

.comment-item-date {
		margin-top: .375rem;
		font-size: .875rem;
		text-transform: uppercase;
		color: #999999;
}

.comment-item-descr {
		margin-top: .375rem;
		line-height: 1.625rem;
		color: #666666;
}

.comment-item-sub .comment-item-descr {
		margin-top: 0;
}

.comment-item .btn {
		margin-top: .875rem;
}



/*-------------------------------------------------------------------------------
	13. Pages
-------------------------------------------------------------------------------*/

.img404 {
		width: 41.5rem;
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 4.875rem;
}

.progress {
		border-radius: 0;
		height: .875rem;
		overflow: visible;
}

.progress-bar {
		position: relative;
		width: 0;
		transition: width 1s ease-in-out;
}

.progress-value {
		position: absolute;
		right: 0;
		bottom: 100%;
		margin-bottom: .5rem;
		color: #181b31;
		font-size: 1rem;
}



.filter-title {
		line-height: 1.625;
		color: #999999;
		font-weight: bold;
		text-transform: uppercase;
}

.filter-location {
		letter-spacing: -.025em;
		font-size: 2.25rem;
}

.filter-location a {
		color: inherit;
		text-decoration: none;
		cursor: pointer;
}

.filter-location a:hover,
.filter-location .active a {
		color: #b11d11;
}

.job-item {
		margin-bottom: 4.625rem;
}

.job-item-title a {
		color: inherit;
}

.job-item-title {
		margin-bottom: 1rem;
}

.job-item-descr {
		line-height: 1.625;
		color: #666666;
}

.job-item-category {
		margin-top: 1.75rem;
		text-transform: uppercase;
		letter-spacing: .025em;
}


.timer-item,
.timer .divider {
		display: inline-block;
		vertical-align: top;
		text-align: center;
}

.timer-item {
		min-width: 5.25rem;
		padding-left: .625rem;
		padding-right: .625rem;
		color: #999999;
}

.timer-item span {
		display: block;
		margin-bottom: .5rem;
		font-size: 3rem;
		font-family: 'Libre Baskerville', serif;
		color: #000000;
		line-height: 1;
}

.timer .divider {
		margin-top: .25rem;
}

.timer .divider:before {
		content: ":";
		font-size: 1.5rem;
		color: #999999;
		font-weight: bold;
}

@media (min-width: 576px) {
		.timer-item {
				min-width: 7.25rem;
				padding-left: 1.625rem;
				padding-right: 1.625rem;
		}
}


.stage-list {
		padding-bottom: 3.75rem;
}

.stage-item {
		background: #f5f5f5;
}

.stage-item-photo {
		background-position: 50% 50%;
		background-size: cover;
		background-repeat: no-repeat;
}

.stage-item-photo img {
		width: 100%;
}

.stage-item-detail,
.no-gutters>.stage-item-detail {
		padding: 4rem 4.5rem 3.5rem;
}

.stage-item .mask-skew .mask .inside {
		background-color: #f5f5f5;
}

.stage-item-num {
		margin-bottom: 2rem;
		font-size: 2.25rem;
		font-family: 'Libre Baskerville', serif;
		font-weight: bold;
}

.stage-item-title {
		margin-bottom: .75rem;
		font-size: 2.75rem;
		font-weight: normal;
		letter-spacing: -.025em;
}

@media (min-width: 1200px) {

		.stage-item-detail,
		.no-gutters>.stage-item-detail {
				padding: 7rem 7.5rem 6.625rem;
		}

		.stage-item-num {
				margin-bottom: 4.75rem;
		}

		.stage-item-title {
				font-size: 3.75rem;
		}
}

.member-item {
		margin-bottom: 4rem;
}

.member-item-photo {
		position: relative;
		height: 0;
		padding-bottom: 100%;
		margin-bottom: 1.875rem;
}

.member-item-photo img {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
}

.member-item-name {
		margin-bottom: .25rem;
		font-size: 1.5rem;
		font-family: 'Libre Baskerville', serif;
		font-weight: bold;
}

.member-item-name a {
		color: inherit;
}

.member-item-status {
		font-size: .875rem;
		text-transform: uppercase;
		color: #666666;
}

.member-become {
		display: block;
		position: relative;
		height: 0;
		width: 100%;
		padding-bottom: 100%;
		background: #f4f6f6;
		text-align: center;
		text-decoration: none;
}

.member-become .inside {
		position: absolute;
		width: 100%;
		left: 50%;
		top: 50%;
		padding: 1rem 10% 2rem;
		transform: translate(-50%, -50%);
}

.member-become .icon {
		display: block;
		font-size: 3.75rem;
		color: #cccccc;
}

.member-become-title {
		display: block;
		margin-top: 1.5rem;
		font-size: 1.875rem;
		line-height: 1.53333333;
		font-family: 'Libre Baskerville', serif;
		text-transform: uppercase;
		font-weight: bold;
		color: #000000;
}


.service-promo-item {
		background: #f8f8f9;
		margin-bottom: 6.25rem;
}

.service-promo-item:last-child {
		margin-bottom: 0;
}

.service-promo-item-photo {
		background-position: 50% 50%;
		background-size: cover;
		background-repeat: no-repeat;
}

.service-promo-item-photo img {
		width: 100%;
}

.service-promo-item-detail,
.no-gutters>.service-promo-item-detail {
		background: #f5f5f5;
		padding: 4rem 4.5rem 3.5rem;
}

.service-promo-item-title {
		margin-bottom: 18px;
		font-size: 3rem;
		font-weight: bold;
		letter-spacing: -.025em;
}

.service-promo-item .nav.flex-column li {
		margin-bottom: .625rem;
}

@media (min-width: 1200px) {

		.service-promo-item-detail,
		.no-gutters>.service-promo-item-detail {
				padding: 5rem 3.75rem 5rem 6.125rem;
		}
}


.progress-item {
		border-top: #e2e2e2 1px solid;
		padding-top: 3rem;
		padding-bottom: 3.125rem;
}

.progress-item:first-child {
		border-top: none;
}

.progress-item-num {
		padding-bottom: .75rem;
		font-size: 6.25rem;
		font-weight: bold;
		color: #cccccc;
		line-height: 1.1;
}

.progress-item-title {
		margin-bottom: .5rem;
		font-size: 2.25rem;
		font-weight: bold;
		letter-spacing: -.025em;
}



/*-------------------------------------------------------------------------------
	14. Footer
-------------------------------------------------------------------------------*/

@media (min-width: 768px) {
		.fixed-footer .wrapper {
				position: relative;
				z-index: 200;
				margin-bottom: 51.875rem;
				background: #ffffff;
		}

		.fixed-footer-lg .wrapper {
				margin-bottom: 59.375rem;
		}

		.fixed-footer .footer {
				position: fixed;
				left: 0;
				right: 0;
				bottom: 0;
				z-index: 100;
		}
}

.footer-content {
		padding-top: 3rem;
		padding-bottom: 0rem;
		line-height: 1.625;
		color: #666666;
}

.contact-item,
.twitter-item {
		margin-bottom: .875rem;
}

.contact-item a,
.twitter-item a {
		color: #000000;
		text-decoration: underline;
}

.contact-item a:hover,
.twitter-item a:hover {
		text-decoration: none;
}

a.phone-link {
		color: inherit;
		text-decoration: none;
		cursor: default;
}

.social {
		margin: 0;
		padding: 0;
		list-style: none;
		font-size: 1.125rem;
}

.footer-content .social {
		margin-top: 3.125rem;
}

.social li {
		display: inline-block;
		vertical-align: top;
		margin-right: 1.5rem;
		margin-bottom: .5rem;
}

.social a {
		transition: color .2s ease-in-out;
		color: #ffffff;
}

.social a:hover {
		color: #b11d11;
		text-decoration: none;
}

.social-rounded {
		margin-right: -.625rem;
		font-size: 20px;
}

.social-rounded li {
		margin-right: .625rem;
		margin-bottom: 1rem;
}

.social-rounded a {
		display: inline-block;
		border-radius: 2.5rem;
		width: 2.5rem;
		height: 2.5rem;
		border: #000000 1px solid;
		background: transparent;
		text-align: center;
		line-height: 2.3rem;
		transition: all .2s ease-in-out;
}
.footer .social-rounded a {
		border: #ffffff 1px solid;
}

.social-rounded a:hover {
		background: #000000;
		border-color: #000000;
		color: #ffffff;
}

.social-rounded i {
		display: inline-block;
		vertical-align: middle;
		line-height: .75;
		font-size: 0.8rem;
}

.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;
}

.menu-footer .social a {
	color: #000000
}

.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 {
	color: #000000;
	border-color: #000000;
}

.socicon-facebook {
		font-size: 1.1875rem;
}

.socicon-googleplus {
		font-size: 1.375rem;
}

.ion-social-rss {
		font-size: 16px;
}

.ion-social-twitter,
.ion-social-vimeo,
.ion-social-facebook {
		font-size: 18px;
}

.twitter-date {
		margin-top: .625rem;
		color: #999999;
		text-transform: uppercase;
		font-size: .875rem;
}

.footer .section-item-title {
		margin-bottom: 2.375rem;
}

.establised {
		display: none;
		position: fixed;
		left: 34px;
		top: 50%;
		z-index: 300;
		margin-top: -1.625rem;
		text-transform: uppercase;
		letter-spacing: .625rem;
		color: #999999;
		font-size: 1.125rem;
		transform: rotate(-90deg) translate(-50%, 0%);
		transform-origin: bottom left;
}

.copyright-fixed {
		position: fixed;
		left: 15px;
		padding-bottom: .5rem;
		bottom: 4.62962963vmin;
		z-index: 300;
		color: #000000;
		/*text-transform: uppercase;*/
		font-size: 0.8rem;
}

.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;
		color: #ffffff;
    font-size: 0.8rem;
}

@media (min-width: 768px) {
		.footer-content {
				padding-top: 11.25rem;
				padding-bottom: 7.5rem;
		}

		.site-info {
				padding-top: 4.5rem;
				padding-bottom: 5.375rem;
		}
}

@media (max-width: 767px) {

		.footer-content,
		.footer-content .text-right {
				text-align: center !important;
		}
}

.more.fs14 {
		letter-spacing: .05em;
}

.footer-red {
		background: #b11d11;
		color: #ffffff;
}

.footer-red .footer-content {
		color: #ffcccc;
}

@media (min-width: 768px) {
		.fixed-footer-md .footer-content {
				padding-top: 15.92592593vmin;
				padding-bottom: 6.48148148vmin;
		}

		.fixed-footer-md .site-info {
				padding-top: 5.74074074vmin;
				padding-bottom: 5.74074074vmin;
		}
}

.footer-red .twitter-date,
.footer-red .social a {
		color: #ff9999;
}

.footer-red a,
.footer-red .contact-item a,
.footer-red .twitter-item a,
.footer-red .social a:hover,
.footer-red .section-item-title,
.footer-red .h2-3d {
		color: #ffffff;
}

.footer-red .site-info {
		border-top-color: #cc3333;
}




.theme-orange .navbar-nav a:before,
.theme-orange .menu-main a:before,
.theme-orange .menu-lang-item.active,
.theme-orange .menu-lang-item:hover,
.theme-orange .nav-toggle-btn:hover,
.theme-orange .text-primary,
.theme-orange a.text-primary:hover,
.theme-orange .social:not(.social-rounded) a:hover,
.theme-orange .article-item-category,
.theme-orange .article-item-category a,
.theme-orange .pager a:hover,
.theme-orange .article-item-info a:hover,
.theme-orange .article-item-mini .article-item-title a:hover,
.theme-orange .nav.flex-column .active a,
.theme-orange .nav.flex-column a:hover,
.theme-orange .btn-outline-secondary:hover,
.theme-orange .filter-location a:hover,
.theme-orange .filter-location .active a,
.theme-orange .nav-inline.text-black .active a,
.theme-orange .nav-inline.text-black a:hover {
		color: #ff3600 !important;
}

.theme-orange .nav-toggle-btn:hover .stick,
.theme-orange .social-rounded a:hover,
.theme-orange .btn-primary,
.theme-orange .owl-theme .owl-dots .owl-dot.active span:before,
.theme-orange .owl-theme .owl-dots .owl-dot:hover span:before {
		background-color: #ff3600;
}

.theme-orange .bg-primary {
		background-color: #ff3600 !important;
}

.theme-orange .btn-primary:not(:disabled):not(.disabled).active:focus,
.theme-orange .btn-primary:not(:disabled):not(.disabled):active:focus,
.theme-orange .show>.btn-primary.dropdown-toggle:focus,
.theme-orange .btn-primary.focus,
.theme-orange .btn-primary:focus {
		box-shadow: 0 0 0 0.2rem rgba(255, 0, 0, .5);
}

.theme-orange .btn-primary:hover,
.theme-orange .btn-primary:not(:disabled):not(.disabled).active,
.theme-orange .btn-primary:not(:disabled):not(.disabled):active,
.theme-orange .show>.btn-primary.dropdown-toggle {
		background-color: #ff0000;
		border-color: #ff0000;
}


.theme-orange .social-rounded a:hover,
.theme-orange .btn-primary,
.theme-orange .owl-theme .owl-dots .owl-dot.active span,
.theme-orange .btn-outline-secondary:hover {
		border-color: #ff3600;
}


.theme-yellow .navbar-nav a:before,
.theme-yellow .menu-main a:before,
.theme-yellow .menu-lang-item.active,
.theme-yellow .menu-lang-item:hover,
.theme-yellow .nav-toggle-btn:hover,
.theme-yellow .text-primary,
.theme-yellow .social:not(.social-rounded) a:hover,
.theme-yellow .brand-name {
		color: #ff9000 !important;
}

.theme-yellow .nav-toggle-btn:hover .stick,
.theme-yellow .social-rounded a:hover,
.theme-yellow .btn-primary,
.theme-yellow .btn-play:hover {
		background-color: #ff9000;
}

.theme-yellow .social-rounded a:hover,
.theme-yellow .btn-primary,
.theme-yellow .btn-play {
		border-color: #ff9000;
}


.theme-white .navbar-nav>ul>li>a:before,
.theme-white .text-primary,
.theme-white .brand-name {
		color: #ffffff !important;
}

.theme-white .nav-toggle-btn:hover .stick,
.theme-white .social-rounded a:hover,
.theme-white .btn-primary,
.theme-white .btn-play:hover {
		background-color: #000000;
		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;
		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;
		}
}