html {
	font-size: 16px
}

body {
font: normal normal 14px "Open Sans","Open Sans","Arial",sans-serif;
color: #141414;
	line-height: 28px
}

body.no-scroll {
	overflow: hidden
}

.h1,
h1 {
	font-size: 61px;
	line-height: 72px;
	letter-spacing: -.03em;
	font-weight: 700;
	color: #000
}

.h2,
h2 {
	font-size: 48px;
	font-weight: 700
}

.h3,
h3 {
	font-size: 39px;
	line-height: 48px;
	font-weight: 700
}

.h4,
h4 {
	font-size: 25px;
	line-height: 32px;
	font-weight: 700
}

.h5,
h5 {
	font-size: 18px;
	font-weight: 700
}

.h6,
h6 {
	font-size: 16px;
	line-height: 24px;
	font-weight: 700
}

a {
	color: #888
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
	color: inherit
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
	color: #666;
	text-decoration: none
}

img {
	max-width: 100%;
	height: auto
}

:focus {
	outline: 0
}

a:hover {
	color: #666;
	text-decoration: none
}

a:focus,
button:focus {
	outline: 0
}

.fade-from-top,
.fade-from-top-children>*,
.fade-in,
.slide-image-children>*,
.slide-image-left,
.slide-image-right {
	visibility: hidden;
	    padding-top: 44px;
}

.slide-image-wrap {
	overflow: hidden;
	transform: translate(0);
	position: relative
}

.animation {
	-webkit-transition: all .2s;
	-moz-transition: all .2s;
	-o-transition: all .2s;
	transition: all .2s
}

.full-height {
	min-height: 900px;
	min-height: 100vh
}

.bg-light {
	background-color: #f2f2f2!important
}

.bg-dark {
	background: radial-gradient(854.92px at 0 100%, #333 0, #2b2b2b 100%);
	color: #fff
}

.text-muted {
	color: #999!important
}

p {
	margin-bottom: 28px
}

blockquote {
	font-size: 25px;
	line-height: 40px;
	margin: 40px 0 50px;
	text-transform: capitalize
}

.btn {
	font-weight: 700;
	border-radius: 0;
	padding: .6878rem 1.5rem
}

.btn-group-sm>.btn,
.btn-sm {
	padding: 10px 24px;
	font-size: 13px;
	line-height: 18px
}

.btn.focus,
.btn:focus {
	outline: 0;
	box-shadow: none
}

.btn-primary {
	color: #141414;
	background-color: #f2f2f2;
	border-color: #f2f2f2
}

.btn-primary:hover,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
	color: #fff;
	background-color: #666;
	border-color: #666
}

.btn-secondary {
	color: #fff;
	background: #666;
	border-color: #666
}

.btn-secondary:hover,
.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active,
.show>.btn-secondary.dropdown-toggle {
	color: #fff;
	background-color: #555;
	border-color: #555
}

.btn:not(:disabled):not(.disabled).active:focus,
.btn:not(:disabled):not(.disabled):active:focus,
.show>.btn.dropdown-toggle:focus {
	box-shadow: none
}

.btn-outline-primary {
	color: #666;
	border-color: #666
}

.btn-outline-primary:hover,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show>.btn-outline-primary.dropdown-toggle {
	background-color: #666;
	border-color: #666
}

.btn-outline-secondary {
	color: #141414;
	border-color: #141414
}

.btn-outline-secondary:hover,
.btn-outline-secondary:not(:disabled):not(.disabled).active,
.btn-outline-secondary:not(:disabled):not(.disabled):active,
.show>.btn-outline-secondary.dropdown-toggle {
	background-color: #141414;
	border-color: #141414
}

.btn:not(.btn-icon) i {
	font-size: 24px;
	line-height: 1rem;
	vertical-align: middle;
	margin-left: 4px
}

.btn:not(.btn-icon) i:first-child {
	margin: 0 4px
}

.btn-icon {
	padding: 0
}

.btn-icon i {
	content: '';
	display: inline-block;
	width: 48px;
	height: 48px;
	line-height: 45px;
	font-size: 16px;
	border: 1px solid;
	border-radius: 100%;
	margin-right: 13px;
	text-align: center
}

.icomoon-play {
	padding-left: 6px
}

.btn-link {
	padding: .6878rem 0;
	font-weight: 700;
	color: #141414;
	text-decoration: none
}

.btn-link:hover {
	color: #999;
	text-decoration: none
}

.form-group {
	margin-bottom: 30px
}

.form-control {
	height: auto;
	padding: 12px 0;
	border: none;
	border-bottom: 1px solid #ccc;
	border-radius: 0;
	line-height: 1.45;
	background: 0 0
}

.form-control:focus {
	color: #141414;
	background: 0 0;
	border-color: #6c757d;
	outline: 0;
	box-shadow: none
}

.form-control-sm {
	padding: 10px 0;
	font-size: 13px
}

label.error {
	color: red
}

.form-group {
	position: relative
}

.form-group label.error {
	position: absolute;
	font-size: 80%;
	line-height: 1.3;
	padding: 2px 0;
	left: 0;
	top: 100%
}

.form-control.error {
	border-color: red
}

.figure {
	margin: 0;
	position: relative;
	display: block
}

.figure-img {
	margin: 0;
	width: 100%
}

.figure-caption {
	position: absolute;
	bottom: 23px;
	color: #fff;
	font-size: 100%;
	left: 23px;
	font-weight: 600
}

.accordion .card {
	margin-bottom: 2em;
	border: 1px solid #d9d9d9;
	background: #fff
}

.accordion>.card:first-of-type,
.accordion>.card:not(:first-of-type):not(:last-of-type) {
	border-bottom: 1px solid #d9d9d9
}

.accordion .card-body {
	padding: 2.2rem 1.5rem
}

.accordion .card-header {
	border-radius: 0;
	padding: 0;
	background: #fff;
	border: none
}

.accordion .card-header>a {
	display: block;
	padding: 1.7rem 1.9rem
}

.accordion>.card .card-header {
	margin-bottom: 0
}

.accordion .card-header:first-child {
	border-radius: 0
}

.accordion .job-item .card-body {
	padding: 0 1.5rem 1.7rem
}

.slick-dots {
	list-style: none;
	padding: 0;
	margin: 0
}

.slick-dots li {
	display: inline-block
}

.slick-dots li+li {
	margin-left: 24px
}

.slick-dots button {
	display: block;
	text-indent: -100px;
	width: 12px;
	height: 12px;
	border: 1px solid #000;
	overflow: hidden;
	border-radius: 100%;
	line-height: 12px;
	font-size: 1px;
	background: 0 0;
	padding: 0;
	transition: all .2s
}

.slick-dots .slick-active button,
.slick-dots button:hover {
	background: #000
}

.card {
	border: none;
	border-radius: 0;
	background: 0 0
}

.card-body {
	padding: 0
}

.card-title {
	margin: 30px 0 16px
}

.card-text {
	max-width: 90%
}

.card-img-bottom {
	border-radius: 0;
	margin-top: 60px
}

.card-img-top {
	border-radius: 0;
	margin-bottom: 15px
}

.icon-box {
	margin-bottom: 50px
}

.icon-box__title {
	margin-bottom: 20px
}

.icon-box__icon_bottom {
	margin-top: 30px
}

.icon-box__icon_top {
	margin-bottom: 27px;
	margin-top: -5px
}

.abs-box {
	position: relative;
	z-index: 1;
	color: #fff;
	padding: 60px 190px 60px 60px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-align: start;
	align-items: flex-start;
	min-height: 510px
}

.abs-box .btn,
.abs-box a,
.bg-dark .btn,
.bg-dark a {
	color: inherit
}

.abs-box a:hover,
.bg-dark a:hover {
	color: inherit
}

.abs-box .form-control,
.bg-dark .form-control {
	border-bottom-color: #666;
	color: #fff
}

.abs-box .btn-icon i,
.bg-dark .btn-icon i {
	border-color: #666
}

.abs-box .form-control:focus,
.bg-dark .form-control:focus {
	color: #fff;
	border-color: #888
}

.abs-box form {
	padding-right: 60px;
	margin-top: 30px
}

.abs-box-right {
	margin-left: auto;
	padding-left: 130px;
	padding-right: 50px
}

.abs-box-bg {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	right: 15px;
	background: radial-gradient(854.92px at 0 100%, #333 0, #2b2b2b 100%);
	z-index: -1
}

.abs-box__title {
	margin: 0 0 30px
}

.abs-box__text {
	margin: 0 0 45px;
	line-height: 28px
}

.abs-box__text p:last-child {
	margin-bottom: 0
}

.image-full {
	padding: 0
}

.image-full-box {
	padding: 0;
	position: absolute;
	top: 0;
	height: 100%;
	right: 0
}

.image-full-box img {
	width: 100%;
	height: 100%;
	object-fit: cover
}

.bg-section {
	background-color: #dad8d9;
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: cover;
	min-height: 900px;
	min-height: 100vh
}

.bg-section.content-bottom {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: end;
	align-items: flex-end;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap
}

.site-header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1020;
	padding: 8px 0;
	background: #fff;
	opacity: 0;
	transition: transform .3s ease-out, opacity .3s ease-out
}

.site-header.mob-menu-active {
	transform: none!important;
	transition: none!important
}

.site-header+#main-content {
	padding-top: 64px
}

.site-header.sticky {
	position: fixed;
	padding: 15px 0;
	top: 0;
	left: 0;
	z-index: 1020;
	width: 100%;
	background: #f2f2f2;
	background: radial-gradient(944.96px at 0 100%, #ededed 0, #f2f2f2 100%);
	transition: transform .3s ease-out, opacity .3s ease-out
}

.site-header.sticky-down {
	transform: translateY(-100%);
	opacity: 0
}

.site-header.sticky-up {
	transform: translateY(0);
	opacity: 1
}

.no-animate {
	transition: none!important
}

.header-home {
	background: 0 0;
	top: 30px
}

.site-header.header-home+#main-content {
	padding-top: 0
}

.main-menu .nav-item {
	position: relative
}

.main-menu>.nav-item+.nav-item {
	margin-left: 48px
}

.main-menu .nav-link {
	padding: 10px 0;
	color: #000;
	font-weight: 600;
	transition: all .2s
}

.main-menu .nav-item.active>.nav-link,
.main-menu .nav-item>.nav-link:hover {
	color: #666
}

.main-menu .nav-item.active>.nav-link:after {
	content: '';
	display: block;
	width: 6px;
	height: 6px;
	position: absolute;
	bottom: 5px;
	left: 50%;
	margin-left: -3px;
	background: #000;
	border-radius: 100%
}

.menu-toggle {
	display: none;
	border: none;
	background: 0 0;
	font-size: 24px
}

.menu-close {
	width: 100%;
	padding: 10px 20px;
	text-align: left;
	font-weight: 700
}

.sub-menu {
	padding: 10px 0
}

.sub-menu>li>.nav-link {
	padding: 5px 15px
}

.sub-menu>li>.nav-link:hover {
	background: #f2f2f2
}

.trans-layer {
	position: fixed;
	left: 0;
	right: 0;
	z-index: 0;
	overflow-x: hidden;
	background-color: transparent
}

.page-backdrop {
	position: fixed;
	top: 0;
	left: -100%;
	width: 100%;
	background: #f2f2f2;
	bottom: 0;
	background: radial-gradient(854.92px at 0 100%, #333 0, #2b2b2b 100%);
	opacity: 0;
	z-index: 1019;
	transition: all .4s
}

.page-backdrop.active {
	left: 0;
	opacity: .8
}

.bg-lines {
	position: relative
}

.bg-lines__line {
	position: absolute;
	left: 50%;
	top: 460px;
	bottom: 0;
	transform: translateX(-50%);
	z-index: -1
}

.bg-lines__line b {
	display: block;
	width: 0;
	height: 100%;
	position: absolute;
	left: 30px;
	top: 0;
	border-right: 1px solid
}

.bg-lines__line b:nth-child(2) {
	left: calc(25% + 15px)
}

.bg-lines__line b:nth-child(3) {
	left: 50%
}

.bg-lines__line b:nth-child(4) {
	left: calc(75% - 15px)
}

.bg-lines__line b:last-child {
	right: 30px;
	left: auto
}

.bg-lines__circle {
	position: absolute;
	right: 30px;
	height: 500px;
	width: calc(100% - 60px);
	top: -40px;
	z-index: -1;
	border-top: 1px solid;
	border-right: 1px solid;
	border-radius: 0 100% 0 0
}

.bg-lines__circle b {
	display: block;
	position: absolute;
	bottom: 0;
	width: 75%;
	height: 75%;
	border-top: 1px solid;
	border-right: 1px solid;
	border-radius: 0 100% 0 0;
	z-index: -1
}

.bg-lines__circle b:first-child {
	right: calc(25% - 2px);
	width: 80%;
	height: 80%
}

.bg-lines__circle b:nth-child(2) {
	right: calc(50% - 1px);
	width: 60%;
	height: 60%
}

.bg-lines__circle b:nth-child(3) {
	right: calc(75% - 1px);
	width: 40%;
	height: 40%
}

.bg-lines__circle b:last-child {
	right: 100%;
	width: 20%;
	height: 20%
}

.bg-lines__circle,
.bg-lines__circle b,
.bg-lines__line b {
	border-color: rgb(45 45 45 / 0%);
}

.page-title {
	padding: 50px 0;
	position: relative;
	z-index: -1;
	background: #f2f2f2;
	background: radial-gradient(944.96px at 0 100%, #ededed 0, #f2f2f2 100%)
}

.page-title__text {
	font-size: 20px;
	line-height: 32px;
	margin: 20px 0
}

.page-title__counter {
	margin: 5px 8px;
	float: right
}

.section {
	padding-top: 65px;
	padding-bottom: 65px
}

.section-lg {
	padding-top: 100px;
	padding-bottom: 100px
}

.pb-large {
	padding-bottom: 130px
}

.section-title {
	margin-bottom: 50px
}

.social-list {
	font-size: 28px
}

.social-list a {
	padding: 0 5px
}

.social-list .icomoon-google-plus {
	font-size: 23px
}

.social-list a+a {
	margin-left: 22px
}

.counter-num {
	font-size: 48px;
	line-height: 1
}

.hero-slide {
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: cover
}

.js-hero-slider:not(.slick-initialized) {
	opacity: 0
}

.hero-slide-inner {
	padding-top: 40px;
	padding-bottom: 160px;
	position: relative;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-direction: column;
	flex-direction: column
}

.header-home+.site-content .hero-slide-inner {
	padding-top: 88px
}

.hero-title {
	margin: 0 0 18px
}

.hero-text {
	margin: 0 0 37px;
	font-size: 20px;
	line-height: 32px
}

.hero-slider {
	position: relative
}

.hero-slider .slick-count {
	position: absolute;
	bottom: 90px;
	right: 0;
	left: 15px;
	width: 205px;
	font-size: 13px
}

.hero-slider .slick-dots {
	position: absolute;
	right: 0;
	left: 15px;
	bottom: 136px;
	width: 205px
}

.hero-author {
	font-weight: 700;
	position: absolute;
	right: 73px;
	bottom: 37px;
	width: 180px;
	padding-left: 50px;
	line-height: 1.4
}

.hero-author:before {
	content: '';
	display: block;
	position: absolute;
	top: .75rem;
	left: 0;
	width: 32px;
	height: 1px;
	background: #000;
	vertical-align: middle;
	margin-right: 15px;
	font-weight: 700
}

.home-figure {
	position: relative;
	z-index: 1
}

.home-figure__img {
	top: -40px;
	position: absolute;
	padding: 0 15px
}

.home-projects {
	padding: 93px 0 0;
	position: relative;
	z-index: 2
}

.home-bg {
	margin-top: -310px
}

.home-events {
	padding-top: 100px;
	padding-bottom: 55px
}

.project-item {
	margin-bottom: 50px
}

.project-item__img-link {
	display: block;
	background: radial-gradient(1453.82px at 0 100%, #333 0, #2b2b2b 100%)
}

.project-item__img {
	width: 100%;
	transition: opacity .3s
}

.project-item__img-link:hover .project-item__img {
	opacity: .8
}

.project-item__title {
	text-transform: capitalize;
	margin: 17px 0 6px
}

.projects-title {
	padding-bottom: 445px
}

.projects-title+.projects {
	margin-top: -342px
}

.projects {
	padding-bottom: 110px
}

.project-filter {
	padding: 7px 0
}

.project-filter__btn {
	display: inline-block;
	border: none;
	padding: 13px 0;
	margin: 0 80px 22px 0;
	position: relative;
	background: 0 0;
	font-weight: 600;
	font-size: 20px;
	line-height: 24px
}

.project-filter__btn .count {
	position: absolute;
	font-size: 13px;
	line-height: 16px;
	color: #999;
	left: 100%;
	top: 12px;
	margin-left: 9px
}

.projects-contacts__img {
	margin-top: 40px
}

.project-single__gallery {
	margin: 60px -15px 0
}

.project-single__gallery:after {
	content: '';
	display: table;
	clear: both
}

.project-single__gallery>a {
	display: block;
	padding: 0 15px;
	margin-bottom: 30px;
	float: left
}

.project-nav {
	padding: 54px 0 96px
}

.project-single {
	padding: 63px 0
}

.project-single__content-title {
	margin: 30px 0 16px
}

.project-single__content {
	line-height: 28px;
	max-width: 86%
}

.project-single__table {
	padding: 34px 30px;
	background: #fff;
	border: 1px solid #d9d9d9;
	font-size: 20px
}

.project-single__table td,
.project-single__table th {
	padding: 9px 0
}

.project-single__table th {
	color: #000;
	padding-right: 35px
}

.sl-overlay {
	background: radial-gradient(1453.82px at 0 100%, #333 0, #2b2b2b 100%)
}

.sl-wrapper .sl-close,
.sl-wrapper .sl-counter,
.sl-wrapper .sl-navigation button {
	color: #fff
}

.brands {
	padding: 64px 0
}

.brand-list__item {
	text-align: center;
	margin-bottom: 47px
}

.event {
	margin-bottom: 90px
}

.date {
	font-size: 13px;
	font-weight: 700;
	color: #999
}

.event__date {
	margin: 10px 0 11px
}

.event__title {
	text-transform: capitalize;
	margin-bottom: 16px;
	font-weight: 400
}

.home-events .event__title {
	font-weight: 700
}

.location {
	color: #333
}

.location i {
	font-size: 20px;
	color: #999;
	margin: 0 3px 5px 0;
	display: inline-block;
	vertical-align: middle
}

.event__more {
	font-weight: 700;
	color: inherit;
	text-transform: capitalize
}

.event-big {
	padding-top: 65px
}

.event-big .event {
	margin-bottom: 0
}

.event-big .event__title {
	font-weight: 400;
	padding-right: 40px;
	margin-bottom: 17px
}

.event-big .event__text {
	padding-right: 40px;
	margin: 27px 0 24px
}

.events-list {
	padding-top: 77px
}

.event-single {
	padding: 0 0 100px
}

.event-single__content {
	margin-bottom: 50px
}

.event-single__box,
.event-single__content>* {
	padding: 0 115px
}

.event-single__content>img {
	padding: 0;
	margin: 25px 0 65px
}

.event-single__loc-date {
	margin-bottom: 25px
}

.event-single .event__date {
	margin-right: 30px
}

.event-single__tags {
	color: #666;
	margin-bottom: 25px
}

.event-single-back,
.event-single-wrap {
	padding: 0 15px
}

.icons-section {
	padding-top: 90px;
	padding-bottom: 95px
}

.offices {
	position: relative
}

.offices-list {
	position: absolute;
	right: 0;
	top: 0;
	width: 480px;
	padding: 75px 112px;
	z-index: 1
}

.offices-carousel .slick-dots {
	position: absolute;
	bottom: 28px;
	left: 0;
	width: 100%;
	text-align: center
}

.office-item {
	padding: 54px 0;
	position: relative
}

.offices-carousel:not(.slick-initialized) .office-item:not(:first-child) {
	display: none
}

.office-item__image {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: -1
}

.office-item__image img {
	width: 100%;
	height: 100%;
	object-fit: cover
}

.offices-nav {
	list-style: none;
	padding: 0;
	margin: 32px 0 0
}

.offices-nav li {
	display: block
}

.offices-nav a {
	padding: 2px 0;
	display: inline-block;
	color: #fff;
	position: relative;
	transition: all .2s
}

.offices-nav a:hover {
	color: #999
}

.offices-nav .slick-active a {
	color: #999;
	padding-left: 10px
}

.offices-nav a:before {
	content: '';
	width: 16px;
	height: 1px;
	background-color: #999;
	position: absolute;
	display: block;
	top: 50%;
	left: -30px;
	opacity: 0;
	transition: all .2s
}

.offices-nav .slick-active a:before {
	opacity: 1
}

.show-on-map-content {
	display: none
}

.team-card {
	margin-bottom: 60px
}

.team-card__name {
	margin: .7em 0 0;
	line-height: 1.1
}

#job-accordion {
	margin-bottom: 95px
}

.job-item__content {
	padding-top: 20px;
	border-top: 1px solid #d9d9d9
}

.job-item__title {
	font-weight: 400;
	color: #000
}

.job-item__date,
.job-item__loc {
	margin-bottom: 5px
}

.job-table ul {
	padding: 0;
	margin: 0
}

.job-table ul li {
	display: block;
	position: relative;
	margin-bottom: 12px;
	padding: 0 0 0 15px
}

.job-table ul li:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: .65em;
	border-radius: 100%;
	width: 6px;
	height: 6px;
	background: #000
}

.job-table {
	width: 76%
}

.job-table th {
	font-weight: 700;
	font-size: 25px;
	line-height: 40px;
	width: 33%;
	padding: 17px 30px 10px 0;
	vertical-align: top
}

.job-table th:empty {
	padding: 0
}

.job-table td {
	padding: 25px 0;
	vertical-align: top
}

.job-table tr:last-child td {
	padding: 5px 0
}

.job-table .btn {
	min-width: 128px;
	margin: 0 15px 15px 0
}

.section-text-offset {
	padding-top: 30px
}

h4.section-text-offset {
	padding-top: 40px
}

.address {
	margin-bottom: 40px
}

.address__title {
	padding-top: 10px
}

.address__text {
	margin: 23px 0 5px;
	line-height: 24px
}

.address__text p {
	margin-bottom: 8px
}

.address__text p:last-child {
	margin-bottom: 0
}

.contact-sales {
	padding-top: 12px
}

.contact-form {
	padding-top: 107px;
	padding-bottom: 107px
}

.contact-form .questions-form {
	margin-top: 37px
}

.form-btn.loading i:before {
	display: inline-block;
	transform-origin: center;
	-webkit-animation: rotating 2s linear infinite;
	-moz-animation: rotating 2s linear infinite;
	-ms-animation: rotating 2s linear infinite;
	-o-animation: rotating 2s linear infinite;
	animation: rotating 2s linear infinite
}

@-webkit-keyframes rotating {
	from {
		-webkit-transform: rotate(0);
		-o-transform: rotate(0);
		transform: rotate(0)
	}
	to {
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg)
	}
}

@keyframes rotating {
	from {
		-ms-transform: rotate(0);
		-moz-transform: rotate(0);
		-webkit-transform: rotate(0);
		-o-transform: rotate(0);
		transform: rotate(0)
	}
	to {
		-ms-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg)
	}
}

.form-success {
	color: green;
	margin-top: 30px
}

.form-error {
	color: red;
	margin-top: 30px
}

.modal-content {
	border: 1px solid #f2f2f2;
	border-radius: 0
}

.modal-header {
	border-bottom: 1px solid #dee2e6;
	border-top-left-radius: 0;
	border-top-right-radius: 0
}

.site-footer {
	background: radial-gradient(1453.82px at 0 100%, #333 0, #2b2b2b 100%);
	color: #fff;
	padding: 20px 0
}

.site-footer a:hover {
	color: #ccc
}

.site-footer a {
	color: inherit
}

.widget {
	padding-top: 53px;
	margin-bottom: 70px
}

.widget-logo {
	padding-top: 0
}

.widget-text p {
	margin-bottom: 8px
}

.footer-nav .nav-item+.nav-item {
	margin-left: 30px
}

.footer-nav .nav-link {
	padding: 0;
	text-transform: capitalize
}

.site-footer .form-control {
	border-color: #6c757d
}

@media only screen and (max-width :1200px) {
	.abs-box {
		padding: 60px 75px 60px 15px;
		min-height: 430px
	}
	.abs-box-right {
		padding-left: 60px;
		padding-right: 15px
	}
	.project-single__gallery a {
		max-width: 50%
	}
	.h3,
	h3 {
		font-size: 30px;
		line-height: 1.4
	}
	.job-table {
		width: 100%
	}
	.job-table th {
		font-size: 20px;
		line-height: 1.35;
		width: 25%
	}
	.job-table td {
		padding: 20px 0
	}
	.event-single {
		padding: 40px 0
	}
	.event-single__box,
	.event-single__content>* {
		padding: 0
	}
}

@media only screen and (max-width :1024px) {
	.hero-slide-inner {
		padding-bottom: 180px
	}
	.header-home+.site-content .hero-slide-inner {
		padding-top: 180px
	}
	.home-bg {
		margin-top: -250px;
		padding-top: 270px
	}
}

@media only screen and (max-width :992px) {
	.h1,
	h1 {
		font-size: 50px;
		line-height: 1.2
	}
	.h2,
	h2 {
		font-size: 40px
	}
	.h4,
	h4 {
		font-size: 20px;
		line-height: 1.4
	}
	.site-header {
		padding: 18px 0
	}
	.card-title {
		margin: 0 0 16px
	}
	.toggle-sub-menu {
		color: #222;
		position: absolute;
		right: 0;
		height: 42px;
		top: 0;
		font-size: 18px;
		z-index: 10;
		width: 40px;
		display: block;
		line-height: 40px;
		background: #ddd;
		text-align: center
	}
	.toggle-sub-menu.active:after {
		content: '-'
	}
	.toggle-sub-menu:after {
		content: '+'
	}
	.sub-menu {
		display: none;
		border-bottom: 1px solid #ddd;
		padding: 0
	}
	.main-menu .nav-item.active .nav-link {
		padding-left: 32px
	}
	.main-menu .nav-item.active .nav-link:after {
		bottom: 50%;
		left: 17px;
		margin-bottom: -2px;
		margin-left: 0
	}
	.main-menu-wrap {
		position: fixed;
		top: 0;
		left: -320px;
		width: 300px;
		background: #f2f2f2;
		bottom: 0;
		overflow-y: auto;
		-webkit-transition: left .3s;
		-moz-transition: left .3s;
		-o-transition: left .3s;
		transition: left .3s;
		z-index: 1020;
		box-shadow: 10px 10px #2e2e2e
	}
	.main-menu-wrap.active {
		left: 0
	}
	.main-menu {
		-ms-flex-direction: column;
		flex-direction: column
	}
	.main-menu {
		border-top: 1px solid #ddd
	}
	.main-menu>li>.nav-link {
		padding: 7px 15px;
		position: relative;
		border-bottom: 1px solid #ddd
	}
	.main-menu .nav-item+.nav-item {
		margin-left: 0
	}
	.menu-toggle {
		display: block
	}
	.page-title {
		padding: 70px 0;
		background: radial-gradient(100px at 0 100%, #ededed 0, #f2f2f2 100%)
	}
	.home-figure__img {
		position: relative;
		top: 0;
		margin-top: -40px
	}
	.hero-author {
		bottom: 75px;
		right: 78px;
		line-height: 1.2
	}
	.hero-slider .slick-count {
		bottom: 120px
	}
	.hero-slider .slick-dots {
		bottom: 150px
	}
	.abs-box {
		padding: 60px 45px 60px 30px;
		min-height: auto
	}
	.abs-box-bg {
		left: 15px
	}
	.abs-box-right {
		padding: 60px 35px 60px 50px
	}
	.event {
		margin-bottom: 40px
	}
	.event__date {
		margin: 0 0 5px
	}
	.event__title {
		margin-bottom: 10px
	}
	.widget {
		margin-bottom: 40px;
		padding-top: 0
	}
	.footer-nav {
		margin-top: 10px
	}
	.site-footer {
		padding: 20px 0
	}
	.projects-title+.projects {
		margin-top: -140px
	}
	.projects-title {
		padding-bottom: 200px
	}
	.project-filter__btn {
		font-size: 16px;
		line-height: 1.2;
		margin: 0 54px 0 0;
		padding: 0 0 13px
	}
	.project-filter {
		padding: 7px 0 20px
	}
	.project-filter__btn.active {
		font-weight: 800
	}
	.project-filter__btn.active .count {
		font-weight: 400
	}
	.project-filter__btn .count {
		top: 0
	}
	.page-title__counter {
		float: none;
		margin-top: 30px
	}
	.icon-box__icon_bottom {
		-ms-flex-order: 1;
		order: 1;
		margin-top: 0;
		margin-bottom: 30px
	}
	.icon-box {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-direction: column;
		flex-direction: column;
		text-align: center;
		margin-bottom: 80px
	}
	.icon-box__text,
	.icon-box__title {
		-ms-flex-order: 2;
		order: 2
	}
	.offices-list {
		width: 50%;
		padding: 40px 40px 40px 60px
	}
	.abs-box form {
		padding-right: 0;
		width: 100%
	}
	.job-table,
	.job-table td,
	.job-table th,
	.job-table tr {
		display: block;
		width: 100%
	}
	.section-text-offset {
		padding-top: 0
	}
	h4.section-text-offset {
		padding-top: 0
	}
}

@media only screen and (max-width :800px) {
	.header-home+.site-content .hero-slide-inner {
		padding-top: 120px
	}
	.h1,
	h1 {
		font-size: 44px
	}
}

@media only screen and (max-width :768px) {
	.offices-list {
		width: 100%;
		position: static;
		padding: 40px 0
	}
	.offices-lis-inner {
		max-width: 540px;
		margin: 0 auto;
		padding: 0 15px
	}
	.offices-nav li {
		padding-left: 30px
	}
	.office-item {
		min-height: 400px
	}
	.project-single__gallery {
		margin: 40px -5px 0
	}
	.project-single__gallery a {
		padding: 0 5px;
		margin-bottom: 10px
	}
	.page-title {
		padding: 50px 0
	}
	.projects-title {
		padding-bottom: 220px
	}
	.projects-title+.projects {
		margin-top: -200px
	}
	.projects {
		padding-bottom: 70px
	}
	.slick-initialized .slick-slide.brand-list__item {
		-ms-flex-align: center;
		align-items: center;
		display: -ms-flexbox;
		display: flex;
		height: 60px
	}
	.brand-list__item {
		margin-bottom: 0
	}
	.brand-list__item img {
		margin: 0 auto;
		max-height: 100%
	}
	.project-single__table td,
	.project-single__table th {
		padding: 5px 0
	}
	.project-single__table th {
		padding-right: 35px
	}
	.project-single__table {
		padding: 25px;
		font-size: 1em
	}
	.project-single {
		padding: 40px 0
	}
	.page-title__text {
		font-size: 18px;
		line-height: 1.3
	}
	.event-single__content>img {
		margin: 15px 0 45px
	}
	blockquote {
		font-size: 20px;
		line-height: 1.3;
		margin: 30px 0 40px
	}
	.project-nav {
		padding: 20px 0
	}
}

@media only screen and (max-width :576px) {
	.h1,
	h1 {
		font-size: 36px
	}
	.h2,
	h2 {
		font-size: 30px
	}
	.h3,
	h3 {
		font-size: 22px
	}
	.hero-text {
		font-size: 18px;
		line-height: 1.4
	}
	.project-single__table {
		padding: 15px
	}
	.btn-icon i {
		width: 40px;
		height: 40px;
		line-height: 38px
	}
	.bg-lines__circle b:first-child,
	.bg-lines__circle b:nth-child(3),
	.bg-lines__line b:nth-child(2),
	.bg-lines__line b:nth-child(4) {
		display: none
	}
	.section {
		padding-top: 45px;
		padding-bottom: 45px
	}
	.hero-author {
		right: auto;
		left: 15px;
		width: auto
	}
	.hero-slider .slick-dots {
		bottom: 130px
	}
	.hero-slider .slick-count {
		bottom: 97px
	}
	.home-projects {
		padding: 60px 0 0
	}
	.abs-box {
		background: radial-gradient(854.92px at 0 100%, #333 0, #2b2b2b 100%);
		margin: 0 15px;
		padding: 30px 25px
	}
	.home-events {
		padding-top: 80px
	}
	.project-nav .project-item__title {
		font-size: 18px
	}
	.project-nav .project-item__loc {
		font-size: 14px
	}
	.team-card {
		margin-bottom: 50px
	}
	.pb-large {
		padding-bottom: 50px
	}
	.accordion .card-header>a {
		padding: 15px
	}
	.accordion .job-item .card-body {
		padding: 0 15px 15px
	}
	.job-item__content {
		padding-top: 10px
	}
	#job-accordion {
		margin-bottom: 30px
	}
	.brands {
		padding: 40px 0
	}
	.social-list {
		font-size: 22px
	}
}

@media only screen and (max-width :320px) {
	.project-single__table,
	.project-single__table td,
	.project-single__table th {
		display: block;
		width: 100%
	}
	.project-single__table th {
		padding: 7px 10px 0
	}
	.project-single__table td {
		padding: 4px 10px 7px
	}
	.project-single__table {
		padding: 10px 0
	}
}

@media only screen and (min-width :576px) {
	.hero-slider .slick-count {
		right: calc(50% - 270px);
		left: auto
	}
	.hero-slider .slick-dots {
		right: calc(50% - 270px);
		left: auto
	}
	.bg-lines__line {
		top: 431px
	}
	.bg-lines__circle {
		top: -422px;
		width: 800px;
		height: 800px;
		right: calc(50% - 240px)
	}
	.bg-lines__circle b:first-child {
		right: 118px
	}
	.bg-lines__circle b:nth-child(2) {
		right: 238px
	}
	.bg-lines__circle b:nth-child(3) {
		right: 358px
	}
	.bg-lines__circle b:last-child {
		right: 478px
	}
}

@media only screen and (min-width :768px) {
	.hero-slider .slick-count {
		right: calc(50% - 360px)
	}
	.hero-slider .slick-dots {
		right: calc(50% - 360px)
	}
	.bg-lines__line {
		top: 632px
	}
	.bg-lines__circle {
		width: 1000px;
		height: 1000px;
		right: calc(50% - 330px)
	}
	.bg-lines__circle b:first-child {
		right: 163px
	}
	.bg-lines__circle b:nth-child(2) {
		right: 328px
	}
	.bg-lines__circle b:nth-child(3) {
		right: 493px
	}
	.bg-lines__circle b:last-child {
		right: 658px
	}
	.page-title__text {
		max-width: 80%
	}
	.office-item-title {
		max-width: 50%
	}
}

@media only screen and (min-width :992px) {
	.mt-lg-n5,
	.my-lg-n5 {
		margin-top: -65px!important
	}
	.hero-slider .slick-count {
		right: calc(50% - 480px)
	}
	.hero-slider .slick-dots {
		right: calc(50% - 480px)
	}
	.bg-lines__line {
		top: 811px
	}
	.bg-lines__circle {
		width: 1200px;
		height: 1200px;
		right: calc(50% - 450px)
	}
	.bg-lines__circle b:first-child {
		right: 223px
	}
	.bg-lines__circle b:nth-child(2) {
		right: 448px
	}
	.bg-lines__circle b:nth-child(3) {
		right: 673px
	}
	.bg-lines__circle b:last-child {
		right: 898px
	}
	.page-title__h {
		max-width: 80%
	}
	.page-title__text {
		/*max-width: 50%*/
	}
	.hero-text,
	.hero-title {
		/*max-width: 70%*/
	}
	.icon-box {
		width: 90%
	}
	.sub-menu {
		position: absolute;
		z-index: 1030;
		left: 0;
		top: 100%;
		width: 200px;
		opacity: 0;
		visibility: hidden;
		background: #fff;
		border-top: 4px solid #f2f2f2;
		box-shadow: -5px 5px 10px 0 rgba(0, 0, 0, .05);
		transform: translateY(10px);
		-webkit-transition: all .2s;
		-moz-transition: all .2s;
		-o-transition: all .2s;
		transition: all .2s
	}
	.nav-item:hover .sub-menu {
		opacity: 1;
		visibility: visible;
		transform: translate(0, 0)
	}
	.project-filter__btn.active:after {
		content: '';
		display: block;
		width: 6px;
		height: 6px;
		position: absolute;
		bottom: 0;
		left: 50%;
		margin-left: -3px;
		background: #000;
		border-radius: 100%
	}
}

@media only screen and (min-width :1200px) {
	.hero-slider .slick-count {
		right: calc(50% - 570px)
	}
	.hero-slider .slick-dots {
		right: calc(50% - 570px)
	}
	.bg-lines__line {
		top: 1031px
	}
	.bg-lines__circle {
		right: calc(50% - 540px);
		width: 1400px;
		height: 1400px
	}
	.bg-lines__circle b:first-child {
		right: 268px
	}
	.bg-lines__circle b:nth-child(2) {
		right: 538px
	}
	.bg-lines__circle b:nth-child(3) {
		right: 808px
	}
	.bg-lines__circle b:last-child {
		right: 1078px
	}
	.hero-text,
	.hero-title {
		/*max-width: 50%*/
	}
	.icon-box {
		width: 74%
	}
	.event-single-back {
		-ms-flex: 0 0 16.666667%;
		flex: 0 0 16.666667%;
		max-width: 16.666667%
	}
	.event-single-wrap {
		-ms-flex: 0 0 66.666667%;
		flex: 0 0 66.666667%;
		max-width: 66.666667%
	}
}

@media only screen and (min-width :1360px) {
	.container {
		max-width: 1340px
	}
	.hero-slider .slick-count {
		right: calc(50% - 670px)
	}
	.hero-slider .slick-dots {
		right: calc(50% - 670px)
	}
	.bg-lines__circle {
		right: calc(50% - 640px);
		width: 1600px;
		height: 1600px
	}
	.bg-lines__circle b:first-child {
		right: 318px
	}
	.bg-lines__circle b:nth-child(2) {
		right: 638px
	}
	.bg-lines__circle b:nth-child(3) {
		right: 958px
	}
	.bg-lines__circle b:last-child {
		right: 1278px
	}
	.bg-lines__line {
		top: 1231px
	}
}