.b-projects {
	margin-top: 7.5rem;
	margin-bottom: 7.5rem;
	position: relative
}

@media (max-width:1919px) {
	.b-projects {
		margin-top: 7.5rem;
		margin-bottom: 7.5rem
	}
}

@media (max-width:1599px) {
	.b-projects {
		margin-top: 7.5rem;
		margin-bottom: 7.5rem
	}
}

@media (max-width:1199px) {
	.b-projects {
		margin-top: 7.5rem;
		margin-bottom: 7.5rem
	}
}

@media (max-width:991px) {
	.b-projects {
		margin-top: 6.25rem;
		margin-bottom: 6.25rem
	}
}

@media (max-width:767px) {
	.b-projects {
		margin-top: 5rem;
		margin-bottom: 5rem
	}
}

@media (max-width:575px) {
	.b-projects {
		margin-top: 2.8125rem;
		margin-bottom: 2.8125rem
	}
}

.b-header-page+.b-projects {
	margin-top: -7.5rem
}

@media (max-width:1919px) {
	.b-header-page+.b-projects {
		margin-top: -7.5rem
	}
}

@media (max-width:1599px) {
	.b-header-page+.b-projects {
		margin-top: -7.5rem
	}
}

@media (max-width:1199px) {
	.b-header-page+.b-projects {
		margin-top: -7.5rem
	}
}

@media (max-width:991px) {
	.b-header-page+.b-projects {
		margin-top: -6.25rem
	}
}

@media (max-width:767px) {
	.b-header-page+.b-projects {
		margin-top: 5rem
	}
}

@media (max-width:575px) {
	.b-header-page+.b-projects {
		margin-top: 2.8125rem
	}
}

.b-projects-heading {
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-align: stretch;
	-moz-align-items: stretch;
	align-items: stretch;
	-ms-flex-pack: end;
	-moz-justify-content: flex-end;
	justify-content: flex-end;
	margin-bottom: 5.625rem
}

@media (max-width:1919px) {
	.b-projects-heading {
		margin-bottom: 5.625rem
	}
}

@media (max-width:1599px) {
	.b-projects-heading {
		margin-bottom: 5.625rem
	}
}

@media (max-width:1199px) {
	.b-projects-heading {
		margin-bottom: 5.625rem
	}
}

@media (max-width:991px) {
	.b-projects-heading {
		margin-bottom: 4.375rem
	}
}

@media (max-width:767px) {
	.b-projects-heading {
		margin-bottom: 3.75rem
	}
}

@media (max-width:575px) {
	.b-projects-heading {
		margin-bottom: 2.8125rem
	}
}

.b-projects-filters {
	position: relative;
	background: #fff;
	padding: 3.75rem
}

@media (max-width:1199px) {
	.b-projects-filters {
		padding: 2.8125rem
	}
}

@media (max-width:991px) {
	.b-projects-filters {
		background: transparent;
		padding: 0
	}
}

.b-projects-filters-form {
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-align: center;
	-moz-align-items: center;
	align-items: center;
	-ms-flex-pack: start;
	-moz-justify-content: flex-start;
	justify-content: flex-start;
	margin-left: -1.875rem;
	margin-right: -1.875rem
}

@media (max-width:991px) {
	.b-projects-filters-form {
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-ms-flex-align: stretch;
		-moz-align-items: stretch;
		align-items: stretch;
		-ms-flex-pack: start;
		-moz-justify-content: flex-start;
		justify-content: flex-start;
		margin-left: 0;
		margin-right: 0
	}
}

.b-projects-filters-loader {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-align: center;
	-moz-align-items: center;
	align-items: center;
	-ms-flex-pack: center;
	-moz-justify-content: center;
	justify-content: center;
	background: hsla(0, 0%, 100%, .5);
	opacity: 0;
	transition-property: opacity, transform, visibility;
	transition-duration: .25s;
	transition-timing-function: cubic-bezier(.215, .61, .355, 1);
	visibility: hidden
}

.b-projects-filters-loader .loader,
.b-projects-filters-loader .loader:after {
	height: 1.875rem;
	width: 1.875rem
}

.b-projects-filters-loader .loader:after {
	border-top-color: #172875;
	border-left-color: rgba(23, 40, 117, .5);
	border-right-color: rgba(23, 40, 117, .5);
	border-bottom-color: rgba(23, 40, 117, .5)
}

.b-projects-filters--updating .b-projects-filters-loader {
	opacity: 1;
	visibility: visible
}

.b-projects-filter {
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-align: center;
	-moz-align-items: center;
	align-items: center;
	-ms-flex-pack: start;
	-moz-justify-content: flex-start;
	justify-content: flex-start;
	-moz-flex: 1 0 auto;
	-ms-flex: 1 0 auto;
	flex: 1 0 auto;
	margin-left: 1.875rem;
	margin-right: 1.875rem;
	width: calc((50% - 3.75rem) * 1)
}

@media (max-width:1199px) {
	.b-projects-filter {
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-ms-flex-align: stretch;
		-moz-align-items: stretch;
		align-items: stretch;
		-ms-flex-pack: start;
		-moz-justify-content: flex-start;
		justify-content: flex-start
	}
}

@media (max-width:991px) {
	.b-projects-filter {
		background: #fff;
		margin: 0;
		padding: 1.875rem;
		width: 100%
	}
	.b-projects-filter:not(:last-child) {
		margin-bottom: 1.875rem
	}
}

.b-projects-filter-label {
	-moz-flex: none;
	-ms-flex: none;
	flex: none;
	font-size: 1.375rem;
	font-weight: 400
}

@media (max-width:1199px) {
	.b-projects-filter-label {
		font-size: 1.25rem;
		margin-left: 1.875rem;
		margin-bottom: .9375rem
	}
}

.b-projects-filter-field {
	-moz-flex: 1 0 auto;
	-ms-flex: 1 0 auto;
	flex: 1 0 auto;
	margin: 0;
	margin-left: 1.875rem
}

@media (max-width:1199px) {
	.b-projects-filter-field {
		margin-left: 0
	}
}

.b-projects-filter-field select {
	width: 100%
}

.b-projects-row {
	background: #838cb2;
	border: none;
	height: 1px;
	margin-top: 5.625rem;
	margin-bottom: 5.625rem
}

@media (max-width:1919px) {
	.b-projects-row {
		margin-top: 5.625rem;
		margin-bottom: 5.625rem
	}
}

@media (max-width:1599px) {
	.b-projects-row {
		margin-top: 5.625rem;
		margin-bottom: 5.625rem
	}
}

@media (max-width:1199px) {
	.b-projects-row {
		margin-top: 5.625rem;
		margin-bottom: 5.625rem
	}
}

@media (max-width:991px) {
	.b-projects-row {
		margin-top: 4.375rem;
		margin-bottom: 4.375rem
	}
}

@media (max-width:767px) {
	.b-projects-row {
		margin-top: 3.75rem;
		margin-bottom: 3.75rem
	}
}

@media (max-width:575px) {
	.b-projects-row {
		margin-top: 2.8125rem;
		margin-bottom: 2.8125rem
	}
}

.b-projects-items {
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-align: start;
	-moz-align-items: flex-start;
	align-items: flex-start;
	-ms-flex-pack: start;
	-moz-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-left: -1.875rem;
	margin-right: -1.875rem
}

.b-projects-item {
	position: relative;
	overflow: hidden;
	margin-left: 1.875rem;
	margin-right: 1.875rem;
	margin-bottom: 3.75rem;
	width: calc((33.3333% - 3.75rem) * 1)
}

@media (max-width:1199px) {
	.b-projects-item {
		width: calc((50% - 3.75rem) * 1)
	}
}

@media (max-width:991px) {
	.b-projects-item {
		margin-bottom: 2.8125rem
	}
}

@media (max-width:575px) {
	.b-projects-item {
		margin-bottom: 1.875rem;
		width: calc((100% - 3.75rem) * 1)
	}
}

@media (min-width:1200px) {
	.b-projects-item:nth-child(3n+1):nth-last-child(-n+3),
	.b-projects-item:nth-child(3n+1):nth-last-child(-n+3)~.b-projects-item {
		margin-bottom: 0
	}
}

@media (min-width:768px) and (max-width:1199px) {
	.b-projects-item:nth-child(odd):nth-last-child(-n+2),
	.b-projects-item:nth-child(odd):nth-last-child(-n+2)~.b-projects-item {
		margin-bottom: 0
	}
}

.b-projects-item-background {
	position: relative;
	overflow: hidden;
	padding-bottom: 133%;
	transform: scale(.85);
	transition-property: opacity, transform;
	transition-duration: 1.25s;
	transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}

.no-touchevents .b-projects-item:hover .b-projects-item-background {
	transform: scale(.85)
}

.ready .item-visible-on-screen .b-projects-item-background {
	transform: none
}

.b-projects-item-background .image {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
	transition-property: opacity, transform;
	transition-duration: 1.25s;
	transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}

.no-touchevents .b-projects-item:hover .b-projects-item-background .image {
	transform: scale(1.15)
}

.ready .item-visible-on-screen .b-projects-item-background .image {
	transform: none
}

.b-projects-item-foreground {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-align: stretch;
	-moz-align-items: stretch;
	align-items: stretch;
	-ms-flex-pack: start;
	-moz-justify-content: flex-start;
	justify-content: flex-start;
	background: #172875a3;
	padding: 2rem;
	transform: translateY(100%);
	transition-property: transform;
	transition-duration: .25s;
	transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

@media (max-width:991px) {
	.b-projects-item-foreground {
		background: #172875a3;
		transform: none;
		padding: 2.8125rem
	}
}

@media (max-width:575px) {
	.b-projects-item-foreground {
		padding: 1.875rem
	}
}

.no-touchevents .b-projects-item:hover .b-projects-item-foreground {
	transform: none
}

.b-projects-item-excerpt {
	-moz-flex: 1 0 auto;
	-ms-flex: 1 0 auto;
	flex: 1 0 auto;
	color: #fff
}

.b-projects-item-excerpt h1,
.b-projects-item-excerpt h2,
.b-projects-item-excerpt h3 {
	font-size: 1.5rem
}

.b-projects-empty {
	position: relative;
	font-size: 1.5rem;
	margin-left: 1.875rem;
	margin-right: 1.875rem;
	margin-bottom: 3.75rem;
	text-align: center;
	width: calc((100% - 3.75rem) * 1)
}

@media (max-width:991px) {
	.b-projects-empty {
		margin-bottom: 2.8125rem
	}
}

@media (max-width:575px) {
	.b-projects-empty {
		margin-bottom: 1.875rem
	}
}

.b-projects-footer {
	position: relative
}

.b-projects-more {
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-align: center;
	-moz-align-items: center;
	align-items: center;
	-ms-flex-pack: center;
	-moz-justify-content: center;
	justify-content: center;
	transition-property: opacity, transform, visibility;
	transition-duration: .25s;
	transition-timing-function: cubic-bezier(.215, .61, .355, 1);
	margin-top: 7.5rem
}

@media (max-width:1919px) {
	.b-projects-more {
		margin-top: 7.5rem
	}
}

@media (max-width:1599px) {
	.b-projects-more {
		margin-top: 7.5rem
	}
}

@media (max-width:1199px) {
	.b-projects-more {
		margin-top: 7.5rem
	}
}

@media (max-width:991px) {
	.b-projects-more {
		margin-top: 6.25rem
	}
}

@media (max-width:767px) {
	.b-projects-more {
		margin-top: 5rem
	}
}

@media (max-width:575px) {
	.b-projects-more {
		margin-top: 2.8125rem
	}
}

.b-projects-more .loader,
.b-projects-more .loader:after {
	height: 1.875rem;
	width: 1.875rem
}

.b-projects-more .loader {
	position: absolute;
	top: 0;
	left: 50%;
	margin: 0;
	margin-left: -.9375rem;
	opacity: 0;
	transform: translateY(-1.875rem);
	transition-property: opacity, transform, visibility;
	transition-duration: .25s;
	transition-timing-function: cubic-bezier(.215, .61, .355, 1);
	visibility: hidden
}

.b-projects-more .loader:after {
	border-top-color: #172875;
	border-left-color: rgba(23, 40, 117, .5);
	border-right-color: rgba(23, 40, 117, .5);
	border-bottom-color: rgba(23, 40, 117, .5)
}

.b-projects-more .button-action {
	transition-property: opacity, transform, visibility;
	transition-duration: .25s;
	transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

.b-projects-more.b-projects-more--fetching .loader {
	opacity: 1;
	transform: none;
	visibility: visible
}

.b-projects-more.b-projects-more--fetching .button-action {
	opacity: 0;
	transform: translateY(1.875rem);
	visibility: hidden
}