/*
Theme Name: Beulah
Author: Sonke & Chris 
Author URI: https://lpip.com.au
Description: Custom wordpress template 
Version: 1
*/


/* --------------------------------------------------------------Fonts */

@font-face {
	font-family: forma-djr-display, sans-serif;
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: 'Acta-Book';
	src:	url('_fonts/Acta-Book.woff2') format('woff2'),
			url('_fonts/Acta-Book.woff') format('woff');
			font-weight: normal;
			font-style: normal
}

/* -------------------------------------------------------------- General */
::selection {
	background-color: #000;
	color: #fff;
}

::-moz-selection {
	background-color: #000;
	color: #fff;
}

* {
	box-sizing: border-box;
	outline: none;
}

html,
body {
	position: relative;
	margin: 0;
	overflow: initial;
}

body {
	padding:0;
	margin: 0;
	font-size: 15px;
	font-family: 'Acta-Book';
	text-rendering: geometricPrecision ;
	-webkit-font-smoothing: antialiased ;
}

p { 
	margin: 0 0 1.5rem 0;
	line-height: 1.2em;
}

h1, .h1,
h2,
h3,
h4,
h5 {
	margin: 0;
	padding:0;
	margin-bottom:1rem;
	text-transform: uppercase;
	font-weight: normal;
}

h1, .h1,
h2,
h4,
.tag,
.nav-menu{
	font-family: forma-djr-display, sans-serif;
	line-height: 1em;
	letter-spacing: 0.05em;
}

h1 {
	font-size: 18px;
	font-weight: 400;
}

h2 {
	font-size: 18px;
	font-weight: 400;
}

h3 {
	letter-spacing: 1px;
	font-size: 11px;
	font-weight: 400;
}

h3.section-title {
	padding: 1.5rem 0 .5rem;
}

h4 {
	font-size: 11px;
}

a { 
	text-decoration: none;
	-webkit-transition: all 0.1s ease-in;
	-moz-transition: all 0.1s ease-in;
	-ms-transition: all 0.1s ease-in;
	-o-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
	color: inherit;
}

a:active {
	opacity: .5;
	-webkit-animation: activated .4s;
}


@-webkit-keyframes activated
{
  0% { opacity: 1; }
  50% { opacity: .6; }
  100% { opacity: 1; }
}


img {
	width: 100%;
	height:auto;
}

blockquote {
	width: 90%;
	font-size: 18px;
	margin: 1.5rem auto;
}

blockquote p {
	margin-bottom: 1rem
}

blockquote p em {
	font-style: normal;
	font-size: 15px;
	font-family: 'Acta-Book';
	text-transform: none;
	font-weight: normal;
}

@media (min-width : 48em) {

	body { 	
		font-size: 21px;
	}

	h1 {
		font-size: 32px;
		margin-bottom: 2rem;
	}

	h2 {
		font-size:  32px;
	}

	h3 {
		font-size: 14px;
	}

	h4 {
		font-size: 13px;
	}

	blockquote {
		width: 70%;
		font-size: 32px;
		margin: 2rem auto;
	}

	h3.section-title {
		padding: 2.5rem 0 3rem;
	}
}

/* -------------------------------------------------------------- Tags & buttons */

.tag,
.button {
	text-transform: uppercase;
	font-size: 9px;
	font-weight: 400;
	background: transparent;
	border-radius: 1rem;
	cursor: pointer;
	margin: 0 10px 0 0;
	padding: 5px 8px 4px;
	border: 1px solid;
	letter-spacing: 0.08em;
	-webkit-transition: all 0.1s ease-in;
	-moz-transition: all 0.1s ease-in;
	-ms-transition: all 0.1s ease-in;
	-o-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
	line-height: .8;
}

.tag.more {
	margin: auto;
}

.post-footer .tag,
.slide-info .tag {
	background-color: #e6e7e9;
	color: #000;
	border-color: transparent;
}

.tag.is-checked {
	color: #fff;
	background-color: #000;
	pointer-events: none;
}

.tag.transparent,
.tag.transparent:hover {
	border-color: transparent !important;
	background-color: transparent !important;
	opacity:0.5 !important;
	margin-left: -10px;
	pointer-events: none;
}

.carousel .post-footer {
	pointer-events: none;
}

@media (min-width : 48em) {

	.tag:not(.is-checked):hover {
		background-color: #e6e7e9;
	}

	.post-footer .tag:hover,
	.slide-info .tag:hover {
		color: #e6e7e9;
		background-color: #000;
	}

	.tag, .button {
		font-size: 12px;
		margin: 0 10px 0 0;
		padding: 8px 12px;
	}
}
/* -------------------------------------------------------------- Pjax */

.js-Pjax { 
	position: relative;
}

.js-Pjax {
	width: 100%;
	height:100%;
}

.js-Pjax.loaded {
	opacity: 1; 
	transition: opacity 0.20s ease-in-out; 
}

.js-Pjax.loading {
	opacity: 0; 
	transition: opacity 0.20s ease-in-out;
}

.js-Pjax-remove {

	z-index: -1;
	position: absolute;
	top: 0;
	width: 100%;
}

.js-Pjax-add {
	z-index: 999;
}

/* -------------------------------------------------------------- Animation */

.animate__animated {
	--animate-duration: 0.1s;
}

.headroom.animate__animated {
	--animate-duration: 0.5s;
}
.headroom.animate__animated.animate__slideOutUp {
	--animate-duration: 0.25s;
}

/* --------------------------------------------------------------- Header */

header.slideInDown .nav-menu {

}

header .logo a {
	display: inline-flex;
}

header .logo a,
header .bodyMenu,
header ul li a {
	pointer-events: auto;
}

header  {
	width: 100%;
	z-index: 9999999;
	width: 100%;
	-moz-kit-transition: 0.1s all ease-out;
	-web-kit-transition: 0.1s all ease-out;
	transition: 0.1s all ease-out;
	background: transparent;
	padding: 1rem 0;
	pointer-events: none;
}

header svg {
	-moz-kit-transition: 0.1s all ease-out;
	-web-kit-transition: 0.1s all ease-out;
	transition: 0.1s all ease-out;
}


header ul {
	width:100%;
	list-style: none;
	margin: 0;
	padding: 0;
}

header .logo {
	pointer-events: none;
	position: relative;
	z-index: 12;
	margin-top: 10px;
}

header .logo a {
	pointer-events: auto;
}

header svg.logo  {
	width:135px;
	height:53px;
}

.current-menu-item a{
	pointer-events: none;
	color: #fff;
}

.menu-item a {
	display: block;
}

.menu-item a:active {
	color: #fff;
}

header ul li.active {
	color: #fff;
}

header ul li:last-child {
	margin-right: 0;
}

header .nav-contact {
	position: absolute;
	margin-top: 5px;
	right:1rem;
	z-index: 11;
	pointer-events: auto;
}

header .nav-menu {
	font-size: 36px;
	display: flex;
	flex-direction: column-reverse;
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	min-height: 100%;
	padding: 1rem;
	z-index: 11;
	transform: translateY(-125%);
	-webkit-transition: transform 0.15s ease-in;
	-moz-transition: transform 0.15s ease-in;
	-o-transition: transform 0.15s ease-in;
	transition: transform .2s ease-in;
	pointer-events: none;
}

header .nav-menu .menu {
	flex-direction: column;
	margin-top: auto;
	text-transform: uppercase;
	line-height: .9em;
	pointer-events: auto;
	height: 100%;
}

/* menu open */

body.menu {
	overflow: hidden;
}

body.menu header .nav-menu {
	transform: translateX(0);
	-webkit-transition: transform 0.15s ease-out;
	-moz-transition: transform 0.15s ease-out;
	-o-transition: transform 0.15s ease-out;
	transition: transform 0.2s ease-out;
}

body.menu .bodyMenu span,
body.menu .bodyMenu span:before,
body.menu .bodyMenu span:after {
	background-color: #fff !important;

}

body.menu header svg {
	fill: #fff !important;
}

li.home-link {
	display: block;
}

ul.sub-menu {
	opacity:0;
	overflow: hidden;
  max-height: 0;
	font-size: 32px;
	line-height: 1;
	margin-left: 5px;
	letter-spacing: normal;
	font-weight: 400;
	-webkit-transition: transform 0.3s ease-out;
	-moz-transition: transform 0.3s ease-out;
	-o-transition: transform 0.3s ease-out;
	transition: transform 0.3s ease-out;

}

header ul li .sub-menu a {
	color: #fff;
}

a.logout {
	font-size: 12px;
	font-family: forma-djr-display, sans-serif;
	text-transform: uppercase;
	display: block;
	position: absolute;
	left: 1rem;
	top: .7rem;
	pointer-events: auto;
}

@media (min-width: 48em) {

	header {
		padding: 2rem 0;
	}

	header .nav-menu {
		font-size: 8.5vh;
		padding: 1rem;
	}

	header .logo {
		margin-top: 0;
	}

	header svg.logo  {
		width:200px;
		height:77.555px;
	}

	header ul li a:hover {
		color: #fff;
		background: rgb(255,255,255,0.025);
	}

	header ul li .sub-menu a:hover {
		color: #6f6f6f;
		background: rgb(255,255,255,0.025);
	}

	.logo {
		width: auto;
		font-size: 28px;
	}

	body.menu header  {
		background-color:transparent;
	}

	body.menu header .nav-menu .menu {
		text-transform: uppercase;
	}

	.nav {
		background-color: transparent;
	}

	li.menu-item-has-children:hover > ul.sub-menu {
		display: block;
	 	max-height:200px;
		opacity:1;
		height: auto;
		transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
	}
	a.logout {
		right: 8rem;
		left: unset;
		top: .7rem;
	}

}

/* Nav Toggle
-------------------------------------------------------------- */

.bodyMenu {
	height: 30px;
	width: 30px;
	border: 1px solid;
	border-radius: 100%;
	cursor: pointer;
	position: absolute;
	top: 0;
	left: 1rem;
	padding: 0;
	-moz-transition: all 0.15s ease-out;
	-webkit-transition: all 0.15s ease-out;
	transition: all 0.15s ease-out;
	z-index: 11;
	pointer-events: auto;
}

.bodyMenu:active {
	opacity:0.5;
}

.bodyMenu span,
.bodyMenu span:before,
.bodyMenu span:after {
	cursor: pointer;
	border-radius: 0;
	height: 1px;
	width: 20px;
	position: absolute;
	left: 4px;
	top: 50%;
	display: block;
	content: '';
	-moz-transition: all 0.15s ease-out;
	-webkit-transition: all 0.15s ease-out;
	transition: all 0.15s ease-out;
	background: #000;
}

.bodyMenu span:before {
	top: -5px;
	left:0;
}

.bodyMenu span:after {
	top: 5px;
	left:0;
}

body.menu
.bodyMenu {
	border-color: #fff;
}

body.menu
.bodyMenu span {
	background-color: transparent !important;
	box-shadow: none;
}

body.menu
.bodyMenu span:before,
body.menu
.bodyMenu span:after {
	top: 0;
	background-color: #fff;
}

body.menu
.bodyMenu span:before {
	-moz-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

body.menu
.bodyMenu span:after {
	-moz-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

.loader {
	pointer-events: none;
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	margin: auto;
	position: absolute;
	z-index: 0;
	opacity: 0;
	border: 1px solid transparent;
	-moz-animation: rotate 1s ease-out .5s infinite;
	-webkit-animation: rotate 1s ease-out .5s infinite;
	animation: rotate 1s ease-out .5s infinite;
	-moz-kit-transition: .333s opacity;
	-web-kit-transition: .333s opacity;
	transition: .333s opacity;
	border-left-color: #000;
	border-right-color: #000;
}

body.menu .loader {
	border-right-color: #fff;
	border-left-color: #fff;
}

.bodyMenu .loader {
	right: 4px;
	top: 4px;
}

@-webkit-keyframes rotate {
	0% {
		-moz-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	50% {
		-moz-transform: rotate(180deg);
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
	}
	100% {
		-moz-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}

}

body.loading {
    cursor: wait !important;
}

.loading .loader {
	opacity: 1;
}

.loading .menu-button {
	pointer-events: none;
}

.loading .bodyMenu span {
	opacity: 0;
}

@media (min-width: 48em) {
	.bodyMenu {
		top: 0;
		left: 2rem;
	}
	.bodyMenu:hover {
		background: #000;
	}
	.bodyMenu:hover span, .bodyMenu:hover span:before, .bodyMenu:hover span:after {
		background:#fff;
	}
}


.menu-label {
	position: absolute;
	top: 2px;
	left: 4rem;
	z-index: 11;
	pointer-events: auto;
	font-size: 12px;
	margin: 0 10px 0 0;
	padding: 8px 12px;
	font-family: forma-djr-display, sans-serif;
	text-transform: uppercase;
	cursor: pointer;
	letter-spacing: 0.08em;
}

body.menu .menu-label {
	color:#fff;
}

/* -------------------------------------------------------------- HEADROOM */

.header {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
}

body.menu .header {
	position: fixed;
	height: 100%;
}

.headroom--pinned {
	position: fixed;
	height: 65px;
	background-color: #fff;
	border-bottom: 1px solid;
}

.headroom--top.headroom--pinned {
	position: absolute;
}

.headroom--top {
	background-color: transparent !important;
	border-bottom: none !important;
}

header.headroom--not-top .logo {
	margin-top: -5.5px;
}

header .nav-contact, body.menu .nav-contact, .headroom--not-top.headroom--unpinned .nav-contact {
	display: none;
}

.headroom--not-top .nav-contact {
	display: block
}
svg.logo {
	transition: transform 0s !important
}

.headroom--not-top svg.logo {
	transform: scale(0.5);
}

body.menu header.headroom--not-top .logo {
	margin-top: 0;
}

body.menu .headroom--not-top svg.logo {
	transform: scale(1);
}

body.menu header.headroom--not-top {
	padding: 2rem 0;
}

.headroom--unpinned {

}

@media (min-width: 48em) {
	header .nav-contact, body.menu .nav-contact, .headroom--not-top.headroom--unpinned .nav-contact {
		display: block;
	}

	.headroom--not-top {
		height: 100px;
	}

	header.headroom--not-top .logo {
		margin-top: -12px;
	}

}

/* -------------------------------------------------------------- Structure */

main {
	position: relative;
	z-index: 1;
	background-color: #fff;
}

.container-fluid {
	margin: 0 auto;
	padding-left: 1rem;
	padding-right: 1rem;
}

[class*=col-] {
	padding-left: 1rem;
	padding-right: 1rem;
}

.row {
	margin-left: -1rem;
	margin-right: -1rem;
}

[class*=col-] > .row {
	margin-left: -1rem;
	margin-right: -1rem;
}

section {
	background-color: #fff;
	border-bottom: 1px solid;
}

/* if there is just a short section after a hero we need to be able scrolll away smoothly.. */

.alan {
	overflow: hidden;
}

.alan .bordar {
	margin-right: -1px;
}

@media (max-width: 48em) {
	.border-fix {
		margin-top: -1px;
	}
}

@media (min-width: 48em) {

	.container-fluid {
		margin: 0 auto;
		padding-left: 2rem;
		padding-right: 2rem;
	}

	[class*=col-] {
		padding-left: 2rem;
		padding-right: 2rem;
	}

	.row {
		margin-left: -2rem;
		margin-right: -2rem;
	}

	[class*=col-] > .row {
		margin-left: -2rem;
		margin-right: -2rem;
	}
}

/* grids and their borders */

.isotope_grid {
	margin-bottom: -1px;
}

.line {
	border-right:1px solid;
	border-bottom: 1px solid;
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.line-right {
	border-right:1px solid;
}

.line-right:last-of-type {
	border-right:none;
}

.line-top {
	border-top:1px solid;
}

.line-bottom {
	border-bottom: 1px solid;
}

.post-thumb img {
	filter: grayscale(0.5);
	mix-blend-mode: multiply;
	-webkit-transition: all 1s ease-in;
	-moz-transition: all 1s ease-in;
	-ms-transition: all 1s ease-in;
	-o-transition: all 1s ease-in;
	transition: all 1s ease-in;
}
body[class*=-black] .post-thumb img {
	mix-blend-mode: unset;
}

body[class*=-black] .line-right {
	border-right-color: rgba(255,255,255,0.666);
}

body[class*=-black] .line {
	border-color: rgba(255,255,255,0.666) !important;
}

body[class*=-black] .swiper-pagination.white {
	background-color: #000;
	color: #fff;
}
body[class*=-black] .nav-contact .tag:hover {
	color: #000;

}


.post-thumb figure {
	margin: 0 0 1rem;
	overflow: hidden
}

@media (min-width: 48em) { 

	.post-thumb:not(.testimonials):hover {
		background-color: #f7f9f8;
	}

	.post-thumb:not(.testimonials):hover img {
		filter: saturate(1.2);
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
		mix-blend-mode: unset;
		-webkit-transition: all 5s ease-out;
		-moz-transition: all 5s ease-out;
		-ms-transition: all 5s ease-out;
		-o-transition: all 5s ease-out;
		transition: all 5s ease-out;
	}

}

@media (min-width : 48em) {

	.row.reverse-sm {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}

}

/* -------------------------------------------------------------- Page & index content */


.rte a {
	text-decoration: none; 
	position: relative; 
}

.rte a:after {
	position: absolute;
	content: '';
	height: 1px;
	bottom: 2px; 
	left: 0;
	right: 0;
	width: 100%;
	background: #000;
	-o-transition:.1s;
	-ms-transition:.1s;
	-moz-transition:.1s;
	-webkit-transition:.1s;
	transition:.1s;
}

.rte.black a:after {
	background: #fff;
}

.rte a:hover:after {
	width: 0%;
}

.rte b,
.rte strong,
.wp-caption-text {
	font-weight: 400;
	font-size: 15px !important;
	text-transform: uppercase;
	font-family: forma-djr-display, sans-serif;
	line-height: 1.1em;
	letter-spacing: 0.1em;
}

.wp-caption-text {
	margin-top:.75rem;
}

.rte ul {
	padding:0;
	margin:0 0 2rem;
}

.rte p > strong + ul {
	margin-top: -1.5rem;
}

.rte ul li {
	list-style: none;
	margin-bottom: 5px;
}
.rte ul li:after {
	content: '';
	display: block;
	margin-top: 5px;
	width: 100%;
	border-bottom: 1px solid;
	opacity: 0.25;
}

.rte.col-xs-6 h2 {
	max-width:550px;
}

section.page-content .container-fluid {
	padding-top: 2rem;
	padding-bottom: 2rem;
}

section.hero-textbox {
	padding: 10rem 0 2rem;
}

section.hero-textbox p {
	font-size: 18px;
}

.layout-image-grid img {
	width: 80%;
}

.layout-single-col {
	padding-top:2rem;
	padding-bottom:2rem;
}

.video-container { 
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.video-caption {
	padding-top: 1rem;
}

.video-caption:empty {
	display:none;
}

.no-padding .video-caption {
	padding: 2rem;
}

.video-container iframe,
.video-container object,
.video-container embed 	{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media (min-width: 48em) {

	section.page-content .container-fluid {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}

	section.hero-textbox {
		padding: 12rem 0 6rem;
	}

	section.hero-textbox p {
		font-size: 32px;
	}

	.layout-image-grid img {
		width: 60%;
	}

	.layout-single-col {
		padding-top:4rem;
		padding-bottom:4rem;
	}

	.layout-single-col p {
		font-size: 32px;
	}

}

/* -------------------------------------------------------------- feature post */

.single-feature-post.feature .col-xs-12:last-of-type {
	top: -6rem;
}

.single-feature-post.feature .inner {
	padding: .5rem;
	height: 100%;
	width: calc(100% - 2rem);
	position: absolute;
	display: flex;
	flex-direction: column;
	background: #fff;
	left: 1rem;
}

.single-feature-post.feature .inner .post-header {
	margin-top: 1rem;
}

.single-feature-post.feature .inner .post-body {
	margin: 0 auto;
	max-width:420px;
}

.feature .inner .post-header {
	margin-top: auto;
}

.feature .inner .post-footer {
	margin-top: auto;
	margin-right: auto;
	padding-top: 0;
}

.feature-slider.feature .inner .post-footer {
	padding-top: 1.5rem;
}

.feature .post-header .title {
	margin: 0;
	font-size: 18px;
}

.feature .post-header .title:last-of-type {
	margin-bottom: 1rem;
}

.feature-bgimage {
	position: absolute;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	top: 0;
}

.single-image-feature-post .post-footer ul li {
	margin-bottom:0;
}

@media (min-width: 48em) {

	.single-feature-post.feature .col-xs-12:last-of-type {
		top: unset;
	}

	.single-feature-post.feature .inner {
		padding: 2rem;
		height: 100%;
		width:100%;
		position: absolute;
		top:0;
		left:0;
		display: flex;
		flex-direction: column;
		background:#fff;
	}

	.single-image-feature-post.feature .post-header .title {
		margin-left: 0;
	}
	
	.single-feature-post.feature .inner .post-header,
	.feature .inner .post-header {
		margin-top: auto;
	}

	.feature .post-header .title {
		font-size: 32px;
		max-width: 80%;
		margin-left: auto;
		margin-right: auto;
	}

	.feature .post-header .title:last-of-type {
		margin-bottom: 1rem;
	}
}

/* -------------------------------------------------------------- single image feature post */

.single-image-feature-post {
	margin-bottom: 1rem;
}

.single-image-feature-post.feature .inner {
	padding: 1rem;
	height: 100%;
	width: 100%;
	position: relative; 
	display: flex;
	flex-direction: column;
}

.single-image-feature-post.feature .inner .post-footer {
	margin-top: 1rem;
}

.single-image-feature-post.feature .col-xs-12 {
	padding-top:40%;
}

.feature-background {
	position: absolute;
	width: calc(100% - 2rem);
	height: 100%;
	background-repeat: no-repeat;
	top: 0;
}

@media (min-width : 48em) {

	.single-image-feature-post {
		margin-bottom: 2rem;
	}

	.single-image-feature-post.feature .inner {
		padding: 2rem;
	}

	.single-image-feature-post.feature .inner .post-footer {
		margin-top: 2rem;
	}

	.feature-background {
		width: calc(100% - 4rem);
	}

	.single-image-feature-post.feature a .feature-background {
		-webkit-transition: all .5s ease-out;
		-moz-transition: all .5s ease-out;
		-ms-transition: all .5s ease-out;
		-o-transition: all .5s ease-out;
		transition: all .5s ease-out;
	}

	.single-image-feature-post.feature a:hover .feature-background {
		filter: grayscale(1);
		mix-blend-mode: multiply;
		-webkit-transition: all 1s ease-in;
		-moz-transition: all 1s ease-in;
		-ms-transition: all 1s ease-in;
		-o-transition: all 1s ease-in;
		transition: all 1s ease-in;
	}
}

/* -------------------------------------------------------------- EDITORIAL layout */

.editorial p {
	font-size: inherit;
}

.editorial blockquote {
	width: 100%;
	font-size: 18px;
	font-family: forma-djr-display, sans-serif;
	text-transform: uppercase;
	font-weight: 400;
	line-height: .9em;
	margin: 2rem 0;
}

.editorial blockquote p {
	width:100% !important;
	padding:0 !important;
	line-height: .9em;
}

.editorial blockquote p em {
	font-style: normal;
	font-size: 15px;
	font-family: 'Acta-Book';
}

.editorial blockquote p:last-of-type {
	margin-bottom: 0;
}

/* -------------------------------------------------------------- feature grid */


section.feature-grid {
	margin-bottom: -1px !important;
}

section.feature-grid .line-right:last-of-type {
	border-right: 1px solid;
}

section.feature-grid .inner {
	padding: 2rem 1rem 1rem;
	display: block;
}

section.feature-grid .col-xs-12.col-sm-4 .inner {
	padding: 1rem 0 .75rem;
}

section.more-posts.feature-grid .col-xs-12.col-sm-4 .inner {
	padding:0;
}

section.feature-grid .inner .post-header {
	text-align: center;
} 

section.feature-grid .inner .post-body {display: none;}
section.feature-grid .post-thumb figure {
	margin: 0 0 3rem;
}

section.feature-grid .post-thumb h3 {
	margin-bottom: 1rem;
	min-height:2rem;
}

section.feature-grid .post-header.whack .title {
	max-width: 60%
}

section.feature-grid .post-header .title {
	font-size: 32px;
}

@media (min-width: 48em) {

	img[class*=align]{
		display: flex;
		width: 66.6%;
	}

	img.alignright {
		margin-left: auto;

	}
	img.alignleft {
		margin-right: auto;
	}

	img.aligncenter {
		margin: auto;

	}

	img.alignnone {
		width: 100%;
	}

	img[src$=".gif"] {
		width: auto;
	}

	section.feature-grid .inner {
		padding: 3rem 1rem 2rem;
	}
	
	section.feature-grid .col-xs-12.col-sm-4 .inner {
		padding: 2rem 0 1.5rem;
	}

	section.page-content a:hover {
		border-bottom: none;
	}

	section.hero-textbox {
		padding: 16rem 0 8rem;
		min-height: 550px;
	}

	section.hero-textbox p {
		font-size: 32px;
		max-width: 900px;
		margin: 1rem auto;
	}

	.layout-image-grid img {
		width: 50%;
	}

	.editorial img {
		width: 70%;
		margin: 1rem 0 2rem 0;
	}

	.editorial p {
		width: 50%;
		margin-left: auto;
		padding-left: 2rem;
	}

	.editorial blockquote {
		width: 66.6%;
		font-size: 32px;
		margin: 3rem auto 3rem 0;
	}

}
/* -------------------------------------------------------------- Projects */
.single section {
	border-bottom: none;
}

.single section:last-of-type {
	border-bottom: 1px solid;
}

/* -------------------------------------------------------------- Team */
section.team {
	position: relative;
	z-index: 0;
}

section.team .grid-item h2, 
section.team .grid-item h3 {
	margin: 0 auto 1.5rem auto;
	padding:0;
}

section.team .grid-item h3 {
	min-height: 2rem;
}

section.team .grid-item img {
	margin-bottom: 2rem;
}

section.team.closed {
	max-height: 1600px;
	overflow: hidden;
}

section.team .btn-more {
	display: none;
}
section.team .btn-less {
	display: none;
}

section.team .btn-less.show {
	display: block;
	position: absolute;
	bottom: 1rem;
	left: calc(50% - 3.5rem);
	height: auto !important;
	width: 7rem;
	text-align: center;
	background-color: #fff;
}

section.team.closed .btn-more{
	display: block;
	position: absolute;
	height: auto !important;
	background: #fff;
	left: 50%;
	transform: translate(-50%);
	top: 1540px;
	z-index: 2;
}

section.team.closed:after {
	content: '';
	position: absolute;
	pointer-events: none;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 33%;
	opacity:1;
	text-align: center;
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
}

section.team .post-footer .tag {
	background-color: #fff;
	border-color: #1a1919;
}

@media (min-width : 48em) {

	section.team .post-footer .tag:hover {
		color: #000;
		background-color: #e6e7e9;
	}
}

@media (min-width: 48em) {
	section.team.closed .btn-more {
		height:30px !important;
	}
}

/* -------------------------------------------------------------- Footer */

footer {
	position: -webkit-sticky;
	position: sticky;
	overflow: hidden;
	bottom:0;
	width:100%;
	padding: 1rem 0;
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	font-family: forma-djr-display, sans-serif;
	line-height: 1.1em;
	z-index: 0;
}

footer svg.logo {
	width:135px;
	height:53px;
	margin-bottom: 1rem;
}

footer form,
footer #_form_6397FE2E4FD53_._form_109 {
	margin-top: 0 !important;
	background-color: transparent !important;
}

@media (min-width: 48em) {
	footer ._form-content,
	footer ._form-thank-you {
		max-width: 50%;
	}
	footer ._form-thank-you {
		text-align: left !important;
		font-size: .9em !important;
	}
}

.social a {
	margin-right:5%;
	text-transform: uppercase;
}
._submit {
	font-size: 1em !important;
}
@media (min-width: 48em) { 
	/* footer {
		height: 250px;
	} */

	footer a:hover {
		opacity: 0.5;
	}

}

/* -------------------------------------------------------------- News */

.description .container-fluid .row[data-term-description] {
	display: none;
}

.description .container-fluid .row.is-checked[data-term-description] {
	display: block;
}

.description {
	text-align: center;
	padding: 5rem 0 ;
}

.description p {
	max-width:640px;
	margin-left:auto;
	margin-right: auto;

}

.view-switcher {
	text-align: center;
	padding: 2.22rem 0;
}

.view-switcher ul {
	margin:0;
	padding:0;
	list-style: none;
}

.view-switcher ul li {
	display: inline-block;
}

.view-switcher ul li {
	
}

.filter {
	text-align: center;
	padding: 1rem 0;
}

.filter ul {
	margin:0;
	padding:0;
	list-style: none;
	display: inline-block;
}

.filter ul li {
	display: inline-block;
	margin: 0 .25rem .25rem 0;
}

.filter h3 {
	margin: 1.5rem auto 1rem;
}

.filter.post li.project,
.filter.post.hello li.category  {
	display: none;
}

.filter.post.hello li.project {
	display: inline-block;
}

@media (min-width: 48em) {

	.filter h3 {
		margin: 2rem auto 1.5rem;
	}
}

.click-me {
	display: block;
}

.click-me:hover {

	cursor:pointer;
}

.click-me span {
	text-decoration: underline;
}

.lab .category.tag {
	display: none;
}

#msg-box {
	display: none;
}

#msg-box [class*=col-] {
	padding: 8rem 0 7rem;
}

/* -------------------------------------------------------------- Posts */

.posts {
	width:100%;
	height:100%;
}

.post {
	-webkit-animation-duration: 0.1s;
	-moz-animation-duration: 0.1s;
	-ms-animation-duration: 0.1s;
	-o-animation-duration: 0.1s;
	animation-duration: 0.1s;
	width: 100%;
}

.post img {
	width: 100%;
	height: auto;
	margin-bottom: -10px;
}

.post.list { 
	border-bottom:1px solid;
	padding: 1rem;
}

.post.list img, 
.post.list .the_excerpt { 
	display: none;
}

/* single posts */

section.single-post {
	padding-top: 2rem;
	border-bottom: 1px solid;
}

section.single-post .post-footer {
	margin-bottom: 1.5rem;
}

section.post .container-fluid {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.single .post {
	padding-bottom: 2rem;
}

.padding-block {
	width: 100%;
	height: 200px;
	background-color: #fff;
	border-bottom: 1px solid;
}

/* related posts */

section.related-posts {
	padding-top: 2rem;
	border-top: 1px solid;
	margin-top: -1px;
}

/* post in type */

.post-loop {
	border-top: 1px solid;
}

/* grid view */

.grid-item, 
.post-thumb  {
	position: relative;
	background-color: #fff;
	-webkit-transition: background-color 0.33s ease-out;
	-moz-transition: background-color 0.33s ease-out;
	-ms-transition: background-color 0.33s ease-out;
	-o-transition: background-color 0.33s ease-out;
	transition: background-color 0.33s ease-out;
	cursor: pointer; 
}


.post-thumb.testimonials {
	cursor: default; 
}

.grid-item {
	display: flex;
	flex-direction: column;
}

.post-body {
	font-size: 15px;
}

.grid-item .inner .post-body {
	margin-top: auto;
}

.grid-item .inner .post-body + .post-footer {
	margin-top: unset;
}

.post-footer {
	margin-top: auto;
	padding-top: 1rem;
}

.post-header:empty,
.post-body:empty,
.post-footer:empty {
	display: none;
}

.post-footer ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.post-footer ul li {
	display: inline-block;
	margin-bottom: .5rem;
}

.testimonials .post-header .title {
	font-size: 12px;
	font-family: 'Acta-Book';
	margin: 1rem auto auto;
	line-height: 1.3em;
	font-weight: normal;
}

.testimonials .post-body {
	margin-top: auto;
	text-align: center;
}

.testimonials.grid-item.list {
	display:none;
}

.post-header .title {
	font-family: forma-djr-display, sans-serif;
	font-weight: 400;
	line-height: 1em;
	text-transform: uppercase;
	font-size: 26px;
	margin: 0 0 2rem;
	min-height: 3rem;
	letter-spacing: 0.08rem;
}

.post-body .subtitle {
	font-family: forma-djr-display, sans-serif;
	font-weight: 400;
	line-height: 1em;
	text-transform: uppercase;
	font-size: 15px;
	margin: 0 0 1rem;
	letter-spacing: 0.08rem;
}

/* post thumbnail list view */

.grid-item.list {
	display: flex;
	flex-direction: row;
	/*height: 40px;*/
	align-items: center;
}

.grid-item.list .post-header .title {
	font-size: 14px;
	font-family: 'Acta-Book';
	font-weight: normal;
	text-transform: none;
	margin:0;
}

.grid-item.list .post-footer {
	margin-left: auto;
	margin-top: unset;
	padding:0;
	position: relative;
	bottom: unset;
	text-align: right;
}

.grid-item.list .post-header {
	display: flex;
	flex-direction: row;
	min-height: unset;
}

.grid-item.list .post-body {
	display: none;
}

.post-link {
	z-index: 1;
	display: block;
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
}

.post-footer {
	z-index: 2;
}
body[class*=-black] .grid-item, 
body[class*=-black] .post-thumb  {
	background-color: #000;
}

@media (min-width : 48em) {
	.post-thumb:not(.testimonials):hover {
		-webkit-transition: background-color 0.1s ease-in;
		-moz-transition: background-color 0.1s ease-in;
		-ms-transition: background-color 0.1s ease-in;
		-o-transition: background-color 0.1s ease-in;
		transition: background-color 0.1s ease-in;
		background-color: #f7f9f8;
	}
	.grid-item.list:nth-child(3n - 2):hover {
		background-color: #dcd3cb;
	}
	.grid-item.list:nth-child(3n - 1):hover {
		background-color: #adacad;
	}
	.grid-item.list:nth-child(3n):hover {
		background-color: #f7f9f8;
	}
	.post.list { 
		padding: 1rem 2rem;
	}
	.grid-item.list .post-header .title {
		font-size: 18px;
	}
	.post-body {
		font-size: 18px;
	}

	body[class*=-black] .grid-item.list:hover, 
	body[class*=-black] .post-thumb:not(.testimonials):hover
	{
		background-color: rgba(32,35,41,0.3);
	}

}

/* Portfolio 
-------------------------------------------------------------- */

section.portfolio .post-header h3 {
	margin-top: 2rem;
}

.grid-item.list .post-body, 
section.portfolio .grid-item.list h3, 
section.portfolio .grid-item.list figure{
	display: none;
}

/* Post / Modal
-------------------------------------------------------------- */
.modal.animate__animated {
	--animate-duration: 0.1s;
}

.blocker {

	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	padding: 0;
	box-sizing: border-box;
	background-color: rgb(255,255,255);
	background-color: rgba(255,255,255,0.50);
	z-index: 2147483646;
	justify-content: center;
/*	display: flex;*/
	display: none;
}

.modal {
	display: none;
	z-index: 2147483647;
	max-width: 100%;
	min-height: 0px;
	width: 100%;
	position: relative;
	background-color: #FFF;
	transform-origin: 0 0 0;
	margin: auto;
	padding: 2rem 0;
	border-bottom: 1px solid;
	color: inherit;
	-webkit-transition: all 0.1s ease-in;
	-moz-transition: all 0.1s ease-in;
	-ms-transition: all 0.1s ease-in;
	-o-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
}

.modal.active {
	display: inline-block;
	height: 100%;
	min-height: 33vh;
	-webkit-transition: all 0.1s ease-in;
	-moz-transition: all 0.1s ease-in;
	-ms-transition: all 0.1s ease-in;
	-o-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
}

.modal a.close {
	position: absolute;
	top: 1rem;
	right: 1rem;
	display: block;
	width: 30px;
	height: 30px;
	text-indent: -9999px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAAA3hJREFUaAXlm8+K00Acx7MiCIJH/yw+gA9g25O49SL4AO3Bp1jw5NvktC+wF88qevK4BU97EmzxUBCEolK/n5gp3W6TTJPfpNPNF37MNsl85/vN/DaTmU6PknC4K+pniqeKJ3k8UnkvDxXJzzy+q/yaxxeVHxW/FNHjgRSeKt4rFoplzaAuHHDBGR2eS9G54reirsmienDCTRt7xwsp+KAoEmt9nLaGitZxrBbPFNaGfPloGw2t4JVamSt8xYW6Dg1oCYo3Yv+rCGViV160oMkcd8SYKnYV1Nb1aEOjCe6L5ZOiLfF120EjWhuBu3YIZt1NQmujnk5F4MgOpURzLfAwOBSTmzp3fpDxuI/pabxpqOoz2r2HLAb0GMbZKlNV5/Hg9XJypguryA7lPF5KMdTZQzHjqxNPhWhzIuAruOl1eNqKEx1tSh5rfbxdw7mOxCq4qS68ZTjKS1YVvilu559vWvFHhh4rZrdyZ69Vmpgdj8fJbDZLJpNJ0uv1cnr/gjrUhQMuI+ANjyuwftQ0bbL6Erp0mM/ny8Fg4M3LtdRxgMtKl3jwmIHVxYXChFy94/Rmpa/pTbNUhstKV+4Rr8lLQ9KlUvJKLyG8yvQ2s9SBy1Jb7jV5a0yapfF6apaZLjLLcWtd4sNrmJUMHyM+1xibTjH82Zh01TNlhsrOhdKTe00uAzZQmN6+KW+sDa/JD2PSVQ873m29yf+1Q9VDzfEYlHi1G5LKBBWZbtEsHbFwb1oYDwr1ZiF/2bnCSg1OBE/pfr9/bWx26UxJL3ONPISOLKUvQza0LZUxSKyjpdTGa/vDEr25rddbMM0Q3O6Lx3rqFvU+x6UrRKQY7tyrZecmD9FODy8uLizTmilwNj0kraNcAJhOp5aGVwsAGD5VmJBrWWbJSgWT9zrzWepQF47RaGSiKfeGx6Szi3gzmX/HHbihwBser4B9UJYpFBNX4R6vTn3VQnez0SymnrHQMsRYGTr1dSk34ljRqS/EMd2pLQ8YBp3a1PLfcqCpo8gtHkZFHKkTX6fs3MY0blKnth66rKCnU0VRGu37ONrQaA4eZDFtWAu2fXj9zjFkxTBOo8F7t926gTp/83Kyzzcy2kZD6xiqxTYnHLRFm3vHiRSwNSjkz3hoIzo8lCKWUlg/YtGs7tObunDAZfpDLbfEI15zsEIY3U/x/gHHc/G1zltnAgAAAABJRU5ErkJggg==');
}

.modal.small {
	width: 30vw;
}

.modal.medium {
	width: 50vw;
}

.modal.large {
	width: 80vw;
}

@media (min-width : 48em) {

	.modal {
		padding: 2rem 0;
	}

	.modal a.close {
		position: absolute;
		top: 2rem;
		right: 2rem;
	}
}


@media (max-width : 48em) {

	.team .modal {

		padding-top:1rem;
		padding-bottom:1rem;
	}

	.team .modal img {

		padding-bottom:1rem;
	}
}

/* Icons & View switchers --------------------------------------------------------- */

.view-switcher svg {
	cursor: pointer;
}
.view-switcher .is-checked svg {
	cursor: default;
}

.list-view svg .outy {
	stroke:#241F20;
	fill:#f7f9f8;
	stroke-width: 1px;
}

.list-view svg .inni {
	fill:#241F20;
	stroke:none;
}

.list-view:hover svg .outy,
.list-view.is-checked svg .outy {
	fill:#241F20;
}

.list-view:hover svg .inni,
.list-view.is-checked svg .inni {
	fill:#f7f9f8;
}

.list .tag {
	margin: 0 0 0 5px;
}

.grid-view svg .outy {
	fill:none;
	stroke:#241F20;
	stroke-width: 1px;
}

.grid-view svg .inni{
	stroke-width: 1px;
	fill:#f7f9f8;
	stroke:#241F20;
}

.grid-view:hover svg .outy,
.grid-view.is-checked svg .outy {
	fill:#241F20;

}

.grid-view:hover svg .inni,
.grid-view.is-checked svg .inni {
	fill:#f7f9f8;
}

.outy-line {
	stroke-width: 1px;
	fill:none;
	stroke:#000;
}

.icon-arrow .outy,
.icon-arrow .inni {
	stroke-width: 1px;
	fill:none;
	stroke:#000;
}

body[class*=-black] .icon-arrow .outy,
body[class*=-black] .icon-arrow .inni {
		stroke:#fff;
}

body[class*=-black] .icon-arrow:hover .inni {
		stroke:#000;
}
body[class*=-black] .icon-arrow:hover .outy {
	fill:#fff;
}

[class*=icon],
[class*=view],
[class*=outy],
[class*=inni] {
	-webkit-transition: all 0.1s ease-in;
	-moz-transition: all 0.1s ease-in;
	-ms-transition: all 0.1s ease-in;
	-o-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
	cursor: pointer;
}

[class*=btn]:hover .icon-arrow .inni {
	stroke:#fff;
}

[class*=btn]:hover .icon-arrow .outy,
.content-slider [class*=btn]:hover .icon-arrow .outy {
	fill: #000;
}

.content-slider [class*=btn] .icon-arrow .outy {
	fill: #fff;
}

body[class*=-black] .content-slider [class*=btn] .icon-arrow .outy, 
section.reverse .content-slider [class*=btn] .icon-arrow .outy {
	fill: #000;
}

body[class*=-black] .content-slider [class*=btn] .icon-arrow:hover .outy {
	fill: #fff;
}

/* Swiper(s) --------------------------------------------------------- */

.btn-next,
.btn-prev {
	position: absolute;
	top: calc(50% - (31px /2));
	width: 31px;
	height: 31px;
	z-index: 999;
}

.hero-slider .btn-next,
.hero-slider .btn-prev {
	position: absolute;
	bottom: 1rem;
	top: unset;
	height: 31px;
	z-index: 999;
}

.hero-slider .btn-next {
	right: 1rem;
}

.hero-slider .btn-prev {
	display: none !important;
}

.btn-next {
	right: 1rem;
}

.btn-prev {
	left: 1rem;
	transform: rotate(180deg);
}

.swiper-container-initialized .btn-next,
.swiper-container-initialized .btn-prev {
	display: block;
}

[class*=btn].swiper-button-disabled {
	display: none;
}

.swiper-pagination-bullets {
	bottom: 1rem;
	left: 50%;
	transform: translate(-50%);
}

.swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	display: inline-block;
	border-radius: 100%;
	background: #ccc;
	margin-right: .333rem;
	opacity:1;
}

.swiper-pagination-bullet:last-of-type {
	margin-right: 0;
}

.swiper-pagination-bullet-active {
	background: #000;
	opacity:1;
}

/* content slider */
.content_slider {
/*	overflow: visible;*/
}

.content_slider .swiper-wrapper {
	padding-bottom: 2rem;
}

.content-slider .btn-next {
	right: 1rem;
}

.content-slider .btn-prev {
	left: 1rem;
}

.content-slider {
	padding-top: 4rem;
	padding-bottom: 4rem;
}

.container-fluid.content-slider  {
	padding-left: 0;
	padding-right: 0;
}

.content-slider .swiper-pagination-fraction {
	font-family: forma-djr-display, sans-serif;
	font-size: 12px;
	font-weight:400;
	bottom: 0;
	right: 1rem;
	left: unset;
	width: 3rem;
	text-align: right;
}

.content_slider .swiper-slide {
	padding-top:100%;
}

@media (min-width : 48em) {

	.hero-slider .btn-next,
	.hero-slider .btn-prev {
		top: calc(50% - (31px /2));
	}

	.hero-slider .btn-next {
		right: 2rem;
	}

	.hero-slider .btn-prev {
		left: 2rem;
	}

	.content_slider .swiper-slide {
		padding-top:50%;
	}

	.container-fluid.content-slider  {
		padding-left: 3rem;
		padding-right: 3rem;
	}

	.content-slider .swiper-pagination-fraction {
		right: 0;
	}

	.btn-next {
		right: 2rem;
	}

	.btn-prev {
		left: 2rem;
	}
}


.hero-slider .swiper-pagination-fraction {
	bottom: 1rem;
	left: 1rem;
	width: 3rem;
	text-align: left;
}


.hero-slider .swiper-container {
	height: calc(95vh - 75px);
}

.slide-info h1, .slide-info h2, .slide-info .h1 {
	margin: 0;
	padding: 0;
	font-size: 10vw;
	font-weight: 400;
	line-height: .9em;
	max-width: 100%;
}

.slide-info {
	position: absolute;
	width: 100%;
	padding: 6rem 1rem;
	height: calc(85vh - 75px);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.single-portfolio .slide-info {
	height: calc(100vh - 75px);
}



.slide-info .tag {
	position: absolute;
	bottom: 1rem;
	left: .9rem;
	margin-bottom: 0;
}

.justice-for-all.slide-info {
	margin: auto 0 2rem;
	align-items: unset;
	justify-content: unset;
}

.slide-info p {
	max-width: 95%;
	margin-bottom: 0;
	position: absolute;
	bottom: -1rem;
	left: 1rem;
	text-align: left;
}
.justice-for-all h1:nth-child(1), .justice-for-all h2:nth-child(1), .justice-for-all .h1:nth-child(1) {
	margin: auto auto 0 0;
}

.justice-for-all h1:nth-child(2), .justice-for-all h2:nth-child(2), .justice-for-all .h1:nth-child(2)  {
	margin: 0 auto 0 0;
}

.slide-image, 
.slide-image-1, 
.slide-image-2 {
	position: absolute;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	top: 0;
}

.slide-image-container {
	position: absolute;
	width: 105%;
	height: 105%;
	background-repeat: no-repeat;
	top: -2.5%;
	left: -2.5%;
}

.hero-slider h1 > div, .hero-slider .h1 > div {
	overflow: hidden;
}

.hero-slider .swiper-slide h1, .hero-slider .swiper-slide .h1 {
	visibility: hidden;
}

.hero-slider .swiper-slide.swiper-slide-active h1, .hero-slider .swiper-slide.swiper-slide-active .h1 {
    visibility: visible;
}

.slide-image p {
	font-family: forma-djr-display, sans-serif;
	font-size: 12px;
	text-transform: uppercase;
	font-weight:400;
	position: absolute;
	bottom: 0;
	left: 0;
	margin: -2rem 0;
}

.slide-link {
	display: none;
	position: absolute;
	display: block;
	width: 80%;
	height:80%;
	top:10%;
	left:10%;
	z-index: 12;
	cursor: pointer;
}

.hero-slider.hero-content-slider  .slide-info {
	z-index: 11;
	padding: 1rem;
}


.swiper-slide-active .slide-link {
	display: initial;
}

.swiper-lazy-preloader {
	pointer-events: none;
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	margin: auto;
	position: absolute;
	z-index: 10;
	opacity: 0.5;
	border: 1px solid transparent;
	-moz-animation: rotate 1s ease-out .5s infinite;
	-webkit-animation: rotate 1s ease-out .5s infinite;
	animation: rotate 1s ease-out .5s infinite;
	-moz-kit-transition: .333s opacity;
	-web-kit-transition: .333s opacity;
	transition: .333s opacity;
	border-left-color: #000;
	border-right-color: #000;
	-webkit-transform-origin: 50%;
	-ms-transform-origin: 50%;
	transform-origin: 50%;
}

.swiper-lazy-preloader:after {
	display: none !important;
}

.cursor {
	display: none;
}

.hero-content-slider .slide-info h1, .hero-content-slider .slide-info h2, .hero-content-slider .slide-info .h1 {
	font-size: 32px;
	max-width: 80%;
}

.hero-content-slider h1:nth-child(1), .hero-content-slider h2:nth-child(1), .hero-content-slider  .h1:nth-child(1) {
	margin-top: 2rem;
}

.hero-content-slider h1:nth-child(2), .hero-content-slider h2:nth-child(2), .hero-content-slider .h1:nth-child(2) {
	margin-top:0;
}

.hero-slider.hero-content-slider .swiper-container {
	height: 100%;
	padding-top: 80%;
}

.hero-slider.hero-content-slider .swiper-container .swiper-wrapper {
	position: absolute;
	top:0;
	left:0;
}

.hero-slider.hero-content-slider .swiper-container .swiper-wrapper .slide-info {
	height:100%;
}

.hero-slider.hero-content-slider .swiper-container .swiper-wrapper .justice-for-all.slide-info {
	margin: auto 0 0;
	align-items: unset;
	justify-content: unset;
}

.hero-content-slider  .slide-info p {
	max-width: 80%;
	margin-bottom: 0;
	position: absolute;
	bottom: 3rem;
	left: 1rem;
	text-align: left;
}

.hero-content-slider .justice-for-all.slide-info {
	margin: auto 0 2rem;
	align-items: unset;
	justify-content: unset;
}

.hero-content-slider .justice-for-all.slide-info p {
	max-width: 95%;
	margin-bottom: 0;
	position: absolute;
	bottom: 3.5rem;
}

.hero-content-slider .justice-for-all h1:nth-child(1), .hero-content-slider .justice-for-all h2:nth-child(1), .hero-content-slider .justice-for-all .h1:nth-child(1) {
	margin: 0 auto 0 0;
}

.hero-content-slider .justice-for-all h1:nth-child(2), .hero-content-slider .justice-for-all h2:nth-child(2), .hero-content-slider .justice-for-all .h1:nth-child(2) {
	margin: 0 auto auto 0;
}

.hero-slider .slide-info.left h1:nth-child(1), .hero-slider .slide-info.left h2:nth-child(1), .hero-slider .slide-info.left .h1:nth-child(1) {
	margin: auto auto 0 0;
	max-width: 66.6%;
}

.hero-slider .slide-info.left h1:nth-child(2), .hero-slider .slide-info.left h2:nth-child(2), .hero-slider .slide-info.left .h1:nth-child(2) {
	margin: 0 auto 10rem 0;
	max-width: 66.6%;
}


@media (min-width : 48em) {

	.hero-content-slider .justice-for-all h1:nth-child(2), .hero-content-slider .justice-for-all h2:nth-child(2), .hero-content-slider .justice-for-all .h1:nth-child(2) {
		margin: 0 0 auto auto;
	}

	.hero-slider .swiper-container {
		height:85vh;
	}

	.slide-info {
		height: 85vh;
		padding: 4rem 1rem;
	}

	.slide-info .tag {
		bottom: 1.5rem;
		left: 2rem;
	}

	.single-portfolio .slide-info {
		height: 85vh;
	}

	.slide-info h1, .slide-info h2, .slide-info .h1 {
		font-size: 6.5vw;
		max-width: 80%;
	}

	.slide-info p {
		max-width: 35%;
		margin-bottom: 0;
		bottom: 2rem;
		left:2rem;
	}

	.hero-content-slider .justice-for-all.slide-info p {
		max-width: 50%;
		margin-bottom: 0;
		position: absolute;
		bottom: 4rem;
	}

	.slide-info.justice-for-all h1, .slide-info.justice-for-all .h1 {
		max-width: 60%;
	}

	.justice-for-all h1:nth-child(1), .justice-for-all .h1:nth-child(1) {
		margin: auto auto -15% 0;
	}

	.justice-for-all h1:nth-child(2), .justice-for-all .h1:nth-child(2) {
		margin: auto 0 0 auto;
		text-align: right;
	}

		.slide-info.justice-for-all .h1 {
		max-width: 60%;
	}

	.justice-for-all .h1:nth-child(1) {
		margin: auto auto -15% 0;
	}

	.justice-for-all .h1:nth-child(2) {
		margin: auto 0 0 auto;
		text-align: right;
	}

	.hero-slider.hero-content-slider .swiper-container {
		padding-top: 50%;
	}



	.hero-content-slider  .slide-info p {
		max-width: 35%;
		margin-bottom: 0;
		position: absolute;
		bottom: 4.5rem;
		left: 2rem;
		min-height: 3rem;
	}

	.hero-content-slider .slide-info h1, .hero-content-slider .slide-info h2, .hero-content-slider .slide-info .h1 {
		font-size: 4vw;
		max-width: 50%;
	}

	.hero-content-slider h1:nth-child(1), .hero-content-slider h2:nth-child(1), .hero-content-slider .h1:nth-child(1) {
		margin-top: auto;
	}

	.hero-content-slider .slide-info.justice-for-all h1, .hero-content-slider .slide-info.justice-for-all h2, .hero-content-slider .slide-info.justice-for-all .h1 {
		max-width: 33.3%;
	}

	.hero-content-slider .justice-for-all h1:nth-child(1), .hero-content-slider .justice-for-all h2:nth-child(1), .hero-content-slider .justice-for-all .h1:nth-child(1) {
		margin: 0 auto auto 0;
	}

	.hero-content-slider .justice-for-all h1:nth-child(2), .hero-content-slider .justice-for-all h2:nth-child(2), .hero-content-slider .justice-for-all .h1:nth-child(2) {
		margin: auto auto 22% calc(50% + 2rem);
		text-align: left;
	}

	.single-portfolio .justice-for-all h1:nth-child(2), .single-portfolio .justice-for-all h2:nth-child(2), .single-portfolio .justice-for-all .h1:nth-child(2) {
		margin: auto 0 0 auto;
	}

	.hero-slider .slide-info.left h1:nth-child(2), .hero-slider .slide-info.left h2:nth-child(2), .hero-slider .slide-info.left .h1:nth-child(2) {
		margin: 0 auto 13rem 0;
		max-width: 66.6%;
	}

	.hero-content-slider .justice-for-all.slide-info p {
		max-width: 33%;
		position: absolute;
	}

	.slide-image-2 p {
		left: 2rem;
	}

	.hero-slider .swiper-pagination-fraction {
		bottom: 8.5rem;
		left: 2rem;
	}

	.slide-info {
		padding: 2rem;
	}

	.cursor {
		position: absolute;
		width: auto;
		top: 0;
		left: 0;
		display: block;
		font-family: forma-djr-display, sans-serif;
		text-transform: uppercase;
		font-size: 10px;
		font-weight: 400;
		border-radius: 1rem;
		padding: 8px 12px;
		border: 1px solid;
		color: #000;
		border-color: #1a1919;
		letter-spacing: .5px;
		background-color: transparent;
		backface-visibility: hidden;
		visibility: hidden;
		z-index: 999;
		pointer-events: none;
		/* transform: translate(-50%, 0); */
	}

	.cursor.arrow {
		border:none;
		padding: 1rem 0 0;
	}

	.cursor.arrow .icon-arrow {
		transform: rotate(90deg);
	}

	body.reverse .cursor {
		color:#fff;
		border-color: #fff;
	}

}

@media (min-width : 64em) {
	.slide-info h1, .slide-info .h1 {
		font-size: 6.5vw;
	}

	.slide-info.justice-for-all h1 , .slide-info.justice-for-all .h1 {
		max-width: 50%;
	}

	.slide-info h2 {
		font-size: 6.5vw;
	}

	.slide-info.justice-for-all h2 {
		max-width: 50%;
	}

	.hero-content-slider .justice-for-all.slide-info p {
		max-width: 40%;
	}
}

@media (min-width : 1400px) {
	.slide-info h1 , .slide-info .h1 {
		font-size: 84px;
	}

	.slide-info h2 {
		font-size: 84px;
	}
}


/* -------------------------------------------------------------- swiper carousel layout */

.carousel .swiper-wrapper {
	display: flex;
	width: 100%;
}

.carousel .swiper-slide {
	flex: 1;
	flex: none;
	height: initial;
}

.carousel .swiper-slide .inner {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 1rem;

}

.carousel .swiper-slide .post-header {

}

.carousel-content .btn-next, .carousel-content .btn-prev {
	height: 100%;
	width: 3rem;
	position: absolute;
	top: 0;
}

.carousel-content .btn-next {
	right: 0;
	background: linear-gradient(90deg, rgba(255,255,255,0) 10%, rgba(255,255,255,1) 60%);
}

.carousel-content .btn-prev {
	left: 0;
	background: linear-gradient(90deg, rgba(255,255,255,0) 10%, rgba(255,255,255,1) 42%);
}

.carousel-content .btn-next svg, .carousel-content .btn-prev svg {
	position: absolute;
	top: calc(50% - (31px /2));
	width: 31px;
	height: 31px;
	z-index: 999;
}

.carousel-content .btn-next svg {
	right: 1rem;
}

.carousel-content .btn-prev svg {
	left: 3rem;
}

.post-carousel .read {
	display: none;
}

@media (min-width : 48em) {
	.carousel .swiper-slide .inner {
		padding: 2rem;
	}

	.carousel-content .btn-next svg {
		right: 2rem;
	}

	.carousel-content .btn-next, .carousel-content .btn-prev {
		width: 7rem;
	}
}

/* -------------------------------------------------------------- swiper carousel layout */

.testimonials-slider{
	border-top: 1px solid;
	border-bottom: 1px solid !important;
}

.carousel.testimonials  .swiper-slide  h2 {
	font-size: 18px;
	padding-bottom: 0;
	line-height: 1.1;
	margin-bottom: 2rem;
}

.carousel.testimonials .swiper-slide h3 {
	padding-bottom: 0;
	margin-bottom: 4rem;
}

.carousel.testimonials .swiper-slide p:last-child {
	margin-bottom: 2rem;
}

@media (min-width : 48em) {
	.carousel.testimonials  .swiper-slide  h2 {
		font-size: 21px;
	}
}

@media (min-width : 1750px) {
	.carousel.testimonials  .swiper-slide  h2 {
		font-size: 21px;
		padding: 0 2rem;
	}
}

/* -------------------------------------------------------------- latest_news layout */

.feature-slider .slideshow {
	height:100%;
}

.feature-slider.feature .inner {
	padding: 1rem;
	height: 100%;
	width:100%;
	position: relative;
	display: flex;
	flex-direction: column;
}

.feature-slider .swiper-slide .inner {
	padding: 0 0 3.5rem;
}

.feature-slider.feature .inner .post-header {
	margin: 0 auto 0;
	max-width: 90%;
	text-align: center;
}

.feature-slider.feature h3 {
	margin: 2.5rem auto 1.5rem;
}

.feature-slider.feature .inner.post-thumb,
.feature-slider.feature .inner.post-thumb:hover {
	background-color: transparent;
}

.feature-slider.feature .inner .post-header img {
	height: auto;
	width: 100%;
}

.feature-slider.feature .inner .post-body {
	margin: 0 auto;
	max-width: 90%;
	text-align: center;
}

.feature-slider .swiper-pagination-fraction { 
	right: 2rem;
	width: 5rem;
	left: unset;
	text-align: right;
	bottom: 0;
	padding: 12px 0 12px;
}

.feature-slider .post-footer ul li {
	margin-bottom: 0;
}

@media (min-width : 48em) {
	.feature-slider.feature .inner {
		padding: 2rem;
	}

	.feature-slider .swiper-slide .inner {
		padding: 2rem 0;
	}

	.feature-slider.feature .inner .post-header {
		max-width: 66.6%;
	}

	.feature-slider.feature .inner .post-header img {
		height: 40vh;
		width: auto;
	}

	.feature-slider.feature .inner .post-body {
		max-width: 50%;
	}

	.feature-slider .swiper-pagination-fraction { 
		bottom: .5rem;
	}
}

/* -------------------------------------------------------------- Beulah Black */

.page-template-template-black #content {
	position: relative;
	opacity: 0;
}

/* -------------------------------------------------------------- colour ways */

.beige {
	color: #000;
	background-color: #dcd3cb;
}

.dust {
	color: #fff;
	background-color: #adacad;
}

.filter {
	background-color: #f7f9f8;
	border-bottom:1px solid #000;
}

.light {
	background-color: #f7f9f8;
}

.dark {
	color: #fff;
	background-color: #202329
}
.white {
	color: #000;
	background-color: #fff
}

.black {
	color: #fff;
	background-color: #000
}

.nav-menu.dark {
	color: #6f6f6f;
	background-color: #202329
}

.grey {
	background-color: #f6f6f6;
}

.txt-white { 
	color: #fff !important;
}

.txt-black {
	color: #000 !important;
}

header.dark {
	border-color: #fff;
	color:#fff;
}

header.dark .loader {
	border-left-color: #fff;
	border-right-color: #fff;
}
header.dark svg {
	fill: #fff;
}

body.reverse header.headroom--top,
.hero-slider .reverse {
	color: #fff;
}

body.reverse header.headroom--top svg {
	fill:#fff;
}

body.reverse header.headroom--top .bodyMenu span,
body.reverse header.headroom--top .bodyMenu span:before,
body.reverse header.headroom--top .bodyMenu span:after,
body.reverse header.headroom--not-top.headroom--unpinned .bodyMenu span,
body.reverse header.headroom--not-top.headroom--unpinned .bodyMenu span:before,
body.reverse header.headroom--not-top.headroom--unpinned .bodyMenu span:after,
body.loading.reverse header.headroom--top .bodyMenu span,
body.loading.reverse header.headroom--top .bodyMenu span:before,
body.loading.reverse header.headroom--top .bodyMenu span:after  {
	background-color: #fff;
}

body.loading.reverse .loader,
body[class*=-black] .loader {
	border-left-color: #fff !important;
	border-right-color: #fff !important;
}

body.loading.reverse header.headroom--not-top .loader {
	border-left-color: #000 !important;
	border-right-color: #000 !important;
}

.hero-slider .reverse [class*=btn] .icon-arrow *,
.hero-slider .reverse .icon-arrow *,
section.reverse [class*=slider] [class*=btn] .icon-arrow * {
	stroke:#fff;
}

body.loading.reverse * {
    cursor: wait !important;
}

.color-toggle img {
	filter: saturate(1) grayscale(0) !important;
	mix-blend-mode: unset !important;
}

.color-toggle:nth-child(odd)  {
	color: #fff;
	background-color: #adacad;
}

.color-toggle:nth-child(even) {
	color: #000;
	background-color: #dcd3cb;
}

.col-sm-4.color-toggle:nth-child(odd)  {
	color: #fff;
	background-color: #adacad;
}

.col-sm-4.color-toggle:nth-child(even) {
	color: #000;
	background-color: #dcd3cb;
}

@media (min-width : 48em) {

	.hero-slider .reverse [class*=btn]:hover .icon-arrow .inni, 
	section.reverse [class*=slider] [class*=btn]:hover .icon-arrow .inni {
		stroke:#000;
	}

	.hero-slider .reverse [class*=btn]:hover .icon-arrow .outy, 
	section.reverse [class*=slider] [class*=btn]:hover .icon-arrow .outy {
		fill:#fff;
	}

	body.reverse header.headroom--top .bodyMenu:hover span,
	body.reverse header.headroom--top .bodyMenu:hover span:before,
	body.reverse header.headroom--top .bodyMenu:hover span:after {
		background:#000;
	}

	body.reverse.menu header.headroom--top .bodyMenu:hover span:before,
	body.reverse.menu header.headroom--top .bodyMenu:hover span:after {
		background:#000 !important;
	}

	body.reverse .bodyMenu:hover {
		background: #fff;
	}

	body.reverse header.headroom--not-top .bodyMenu:hover {
		background: #000;
	}

	.color-toggle:nth-child(1),
	.color-toggle:nth-child(4),
	.color-toggle:nth-child(5)  {
		color: #fff;
		background-color: #adacad;
	}

	.color-toggle:nth-child(2),
	.color-toggle:nth-child(3),
	.color-toggle:nth-child(6) {
		color: #000;
		background-color: #dcd3cb;
	}

	.color-toggle:hover {
		color: #000 !important;
		background-color: #f7f9f8 !important;
	}
}

/* Helper classes --------------------------------------------------------- */

.margin-auto {
	margin-left: auto;
	margin-right: auto;
}

.left {
	text-align: left;
}

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.small {
	font-size: 80%;
}

.no-v-padding {
	padding-top:0 !important;
	padding-bottom:0 !important;
}

.no-padding { 
	padding-left:0 !important;
	padding-right:0 !important;
}

.no-padding > .row > [class*=col-].yes-padding {
	padding: 1rem;
}

.no-padding > .row {
	margin-left: 0;
	margin-right: 0;
}

.no-padding > .row > [class*=col-] {
	padding: 0;
}

.double-x-padding {
	padding-right: 4rem;
	padding-left: 4rem; 
}

.filter-greyscale {
	filter: grayscale(100);
}

.relative {
	position: relative;
}

.normal {
	text-transform: none;
}

.y-padding {
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.y-margin {
	margin: 1.5rem auto;
}


.p-right {
	padding-right:4rem;
}

.v-space {
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.flex-column {
	height: 100%;
	display: flex;
	flex-direction: column;
}

.flex-column .flex-bottom {
	margin-top: auto;
}

.flex-right {
	margin-left: auto !important;
}
.flex-left {
	margin-right: auto !important;
}

.sleeping {
	opacity: 0.33 !important;
	pointer-events: none !important;
}

.locked {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-user-drag: none; 
	-khtml-user-drag: none; 
	-moz-user-drag: none; 
	-o-user-drag: none; 
	cursor: default;
}

.die {
	pointer-events: none;
}

.hide {
	display: none !important;
}

.show {
	display: block;
}

/* Edit post link */

.edit-post {
	display: block;
	position: fixed;
	bottom: 0;
	right: 0;
	text-transform: uppercase;
	z-index: 9999;
	color:#fff;
	font-size: 80%;
	background-color: #000;
	padding: 6px 12px;
	font-family: Arial;
	opacity: 0.2;
}

.edit-post:hover {
	opacity: 1;
}

/* copy paste from word fix */

section.team .grid-item img {
	filter: grayscale(.5);
	mix-blend-mode: multiply;
	-webkit-transition: all 0.1s ease-in;
	-moz-transition: all 0.1s ease-in;
	-ms-transition: all 0.1s ease-in;
	-o-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
}

@media (max-width: 48em) {
	.hide-on-mobile,
	.hide-xs {
		display: none !important;
	}

	.no-mobile-padding {
		padding-left:0 !important;
		padding-right:0 !important;
	}

	.row.no-mobile-padding {
		margin-left: 0;
		margin-right: 0;
	}

	[class*=col-].no-mobile-padding {
		padding: 0;
	}

	.hide-from-list-view {
		display:none;
	}
}

@media (min-width: 48em) { 
	section.team .grid-item:hover img {
		filter: saturate(1.2);
		mix-blend-mode: unset;
		-webkit-transition: all 0.1s ease-in;
		-moz-transition: all 0.1s ease-in;
		-ms-transition: all 0.1s ease-in;
		-o-transition: all 0.1s ease-in;
		transition: all 0.1s ease-in;
	}

	section.team .grid-item:hover {
		background-color: #f7f9f8;
	}

}

.filter span.project,
.filter.hello span.type {

	text-decoration: none;
}
.filter span.type,
.filter.hello span.project {
	text-decoration: underline;
}

/* Map */ 

#map {
	height: 600px;
	width: 100%;
}

/* Beulah Black at the bottom so no !important needed*/

body[class*=-black] {
	color: #fff;
	background-color: #000;
	border-color: rgba(255,255,255,0.666)!important;
}

body[class*=-black] main {
	background-color: #000;
}

body[class*=-black] section {
	background-color: #000;
	border-color: rgba(255,255,255,0.666) !important;
} 

body[class*=-black] svg.logo {
	fill: #fff;
}

body[class*=-black] header.headroom--not-top { 
	background-color: #000;
	border-bottom: 1px solid rgba(255,255,255,0.666);
}

body[class*=-black] .bodyMenu span,
body[class*=-black] .bodyMenu span:before,
body[class*=-black] .bodyMenu span:after {
	background-color: #fff;
}

@media (min-width : 48em) {
	body[class*=-black] .bodyMenu:hover span,
	body[class*=-black] .bodyMenu:hover span:before,
	body[class*=-black] .bodyMenu:hover span:after {
		background-color: #000;
	}

	body[class*=-black] .bodyMenu:hover {
		background-color: #fff;
	}
}