/*
	Theme Name: CDR Partners Site
	Description: Custom site for CDR Partners
	Version: 1.0.0
	Author: Direction Forward (@direction4ward)
	Author URI: https://directionforward.com
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

:root {
	--green: #004D4D;
	--darkgreen: #003E3E;
	--softgreen: #779D9A;
	--white: #EDEDE7;
	--softwhite: #477f7c;
	--cream: #F5B07E;
	--creamfade: #eacfb4;
	--creamcursor: #F7BF97;
	--brown: #522A1A;
	--brownfade: #9e8b7f;
	--black: #000000;
}

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
	overscroll-behavior: none;
}
body {
	overscroll-behavior: none;
	font-family: 'FoundersGrotesk-Light', Helvetica, Arial, sans-serif;
	line-height: 1.25;
	font-size: 24px;
	color: var(--brown);
	background-color: var(--white);
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
}
a {
	color:inherit;
	text-decoration:none;
	outline:none !important;
}






/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

/* wrapper */
.wrapper {
	max-width: 1560px;
	width: 90%;
	margin: 0 auto 0 auto;
	position: relative;
}
.content {
	max-width: 1240px;
	width: 90%;
	margin: 0 auto 0 auto;
	position: relative;
}

/* header */
.header {
	margin-top: 2.5rem;
	min-height: 80px;
	display: flex;
	align-items: end;
	justify-content: start;
}

/* logo */
.footer-logo,
.logo {
    width: auto;
    display: inline-block;
}
.footer-logo a:first-of-type {
	display: block;
	margin-bottom: 1rem;
}
.logo a:first-of-type {
	display: block;
}
.logo-img {
	max-width: 120px;
	width: 100%;
	height: auto;
}
.header .logo-img {
	vertical-align: bottom;
}
.footer .logo-img {
	max-width: 107px;
}
.logo-img path {
	fill: var(--brown);
}
.footer .logo-img path {
	fill: var(--cream);
}
.nav .logo-img path {
	fill: var(--white);
}

/* nav button */
.nav-toggle {
	position: fixed;
	top: 2.5rem;
	right: 2.5rem;
	width: 200px;
	height: 80px;
	border-radius: 15px;
	z-index: 100;
	border: none;
	padding: 0;
	display: flex;
	flex-wrap: nowrap;
    align-items: center;
	justify-content: space-evenly;
	font-size: 14px;
	line-height: 1;;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--white);
	background-color: var(--green);
	font-family: 'FoundersGrotesk-Regular';
}
.nav-toggle span {
	width: 40px;
	height: 7px;
	position: relative;
}
.nav-toggle i {
	position: absolute;
	width: 40px;
	height: 1px;
	background-color: var(--white);
	display: block;
	left: 50%;
	transform: translateX(-50%) rotate(0deg);
	transition: all linear 0.250s;
}
.nav-toggle i:first-of-type {
	top: 0;
}
.nav-toggle i:last-of-type {
	top: 100%;
}
.nav-toggle.opened i:first-of-type {
	top: 50%;
	transform: translateX(-50%) rotate(45deg);
}
.nav-toggle.opened i:last-of-type {
	top: 50%;
	transform: translateX(-50%) rotate(-45deg);
}

/* nav */
.nav {
	top: 2.5rem;
	right: 2.5rem;
	width: 200px;
	height: 80px;
	border-radius: 15px;
	position: fixed;
	z-index: 99;
	background-color: var(--green);
}
.nav-holder {
	opacity: 0;
	visibility: hidden;
	height: 100%;
	display: flex;
    flex-wrap: wrap;
	align-content: space-between;
}
.nav-holder > div {
	flex-basis: 100%;
}


#menu-header a {
    display: inline-block;
}
#menu-header a span {
	overflow: hidden;
    display: block;
    position: relative;
    color: transparent;
	padding-top: 0.25em;
}
#menu-header a span::before {
	color: var(--white);
	content: attr(data-label);
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	transform: translateY(-50%);
	transition: all 0.250s ease-out;
}
#menu-header a:hover span::before {
	top: -50%;
}
#menu-header a span::after {
	color: var(--white);
    content: attr(data-label);
    position: absolute;
    bottom: -50%;
    left: 0;
    width: 100%;
	transform: translateY(50%);
	transition: all 0.250s ease-out;
}
#menu-header a:hover span::after {
	bottom: 50%;
}

.nav-menu {
	font-family: 'Solare-RegularIntense';
	color: var(--white);
	line-height: 1;
	text-align: center;
	position: relative;
	margin: 0 5% 0 5%;
}
.nav-menu-bg {
	position: absolute;
    width: 100%;
    height: 75%;
    top: 50%;
    left: 0;
    z-index: -1;
    object-fit: contain;
    opacity: 0.25;
    transform: translateY(-50%);
}
.nav-menu ul {
	list-style: none;
	margin: 0;
	padding: 2.5rem 0 2.5rem 0;
}
.nav-menu ul li {
	font-size: 0;
}
.nav-menu ul li a {
	font-size: 72px;
	font-size: clamp(38px, 3.5vw, 72px);
	line-height: 1;
}


.nav-contact {
	font-family: 'FoundersGrotesk-Regular';
	font-size: 16px;
    line-height: 1.5;
	padding-bottom: calc(2.5rem + 1em);
}
.nav-contact a {
    color: var(--softgreen);
	transition: color 0.200s ease-in-out;
}
.nav-contact a:hover {
	color: var(--white);
}




/* sidebar */
.sidebar {

}

/* footer */
.footer {
	font-family: 'FoundersGrotesk-Regular';
	margin: 2.5rem;
	border-radius: 15px;
	background-color: var(--green);
	color: var(--softgreen);
	padding: 5em 0 5em 0;
	font-size: 16px;
	line-height: 1.5;
}
.footer-holder {
	display: flex;
	flex-wrap: wrap;
}
.footer-spacer {
	flex: 0.5;
}
.footer-logo,
.footer-company {
	flex: 1.5;
}
.footer-links,
.footer-legal {
	flex: 3;
}
.footer-decal,
.footer-btt {
	flex: 1;
	text-align: right;
}

.footer-legal,
.footer-company {
	font-family: 'FoundersGrotesk-Light';
	align-self: end;
	font-size: 14px;
	line-height: 1;
	color: var(--softwhite);
}

.footer-links-holder {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: start;
}
.footer-logo > p,
.footer-links > p {
	font-family: 'Solare-RegularIntense';
	font-size: 26px;
	line-height: 1;
	color: var(--cream);
}
.footer-logo p {
	display: none;
}
.footer-links-col {
	display: inline-block;
	columns: 190px 2;
}
.footer-links-col ul {
	break-inside: avoid;
	list-style: none;
	padding: 0;
	margin: 0;
}
.footer-links-logo p,
.footer-links-col p {
	color: var(--white);
}
.footer a {
	transition: color 0.200s ease-in-out;
}
.footer a:hover {
	color: var(--white);
}

.footer-spacer {
	position: relative;
	height: 2.5rem;
}



/* sections */
section {
	margin: 0 auto 0 auto;
	padding: 5rem 0 5rem 0;
	position: relative;
}

section.image {

}
.image-holder {
	margin: 2.5rem;
}
.image-holder img {
	border-radius: 15px;
	width: 100%;
	height: auto;
}
.image-wrapper {
	position: relative;
}
.image-caption {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.image-caption span {
	display: inline-block;
	background-color: var(--white);
	font-family: 'FoundersGrotesk-Regular';
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	padding: 10px 1em 0.5em 1em;
}
.image-caption svg {
	vertical-align: middle;
	margin-bottom: 4px;
	margin-right: 1rem;
}
.image-caption svg path {
	fill: var(--cream);
}

section.title {

}
section.title h1 {
	max-width: 920px;
	margin-left: 0;
}

section.masktitle {

}
section.masktitle h1 {
	font-size: 110px;
	font-size: clamp(56px, 7.297vw - 3.84px, 106px);
	line-height: 1.181;
	margin-left: 0;
	opacity: 0;
	visibility: hidden;
}

section.images {

}
.images-holder {
	position: relative;
	width: 50%;
	margin: 0 auto 7.5rem auto;
	max-width: 450px;
}
section.inconversation .images-holder {
	width: auto;
	margin-right: 0;
	max-width: 600px;
}
.images-holder.center {
	margin-left: 0;
}
.images-holder.right {
	margin-right: 0;
}
.images-holder.left {
	margin-left: 0;
}
.images-holder img,
.images-holder video {
	position: relative;
	width: 100%;
    display: block;
	height: auto;
	z-index: 1;
	opacity: 0;
	visibility: hidden;
	object-fit: cover;
	object-position: left;
	border-radius: 0px;
}

.images-holder img.texture {
	position: absolute;
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
	transform: translate(7.5rem, 7.5rem);
	z-index: 0;
}
section.inconversation .images-holder img.texture {
	width: auto;
	height: 100%;
}

section.wysiwyg {

}
.wysiwyg-holder {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	column-gap: 5em;
}
.wysiwyg-main {
	flex: 7.5;
}
.wysiwyg-main h4:first-of-type {
	margin-top: 0;
}
.wysiwyg-main video {
	display: block;
	width: 100%;
	height: auto;
}
.video-holder {
	position: relative;
	width: calc(100% + 5em);
}
.video-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.video-overlay span {
	background-color: rgba(0, 0, 0, 0.25);
	mix-blend-mode: multiply;
	position: absolute;
	width: 100%;
	height: 100%;
}
.video-overlay img {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
    position: absolute;
	cursor: pointer;
}
.video-holder svg {
    position: absolute;
	top: 0;
	right: 0;
    padding: 1em;
    z-index: 2;
    width: calc(40px + (1em * 2));
    height: calc(30px + (1em * 2));
}


.wysiwyg-sidebar {
	flex: 5;
}
.wysiwyg-sidebar-item {
	margin-top: 2.5rem;
	padding-top: 2.5rem;
	border-top: 1px solid #c4c4bf;
	display: flex;
    flex-wrap: nowrap;
	column-gap: 1em;
}
body.single .wysiwyg-sidebar-item {
	display: block;
}
.wysiwyg-sidebar-item:first-of-type {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}
.wysiwyg-sidebar-item .wysiwyg-sidebar-empty {
	display: none;
}
.wysiwyg-sidebar-item > div:first-of-type {

}
.wysiwyg-sidebar-item > div:last-of-type {
	flex: 2;
}
.wysiwyg-sidebar-image {
	flex: 1 0 auto;
    max-width: 134px;
	border-radius: 7.5px;
	overflow: hidden;
	background-color: var(--white);
	transition: background-color 0.250s ease-in-out;
}
body.single .wysiwyg-sidebar-image {
	max-width: 100%;
	margin-bottom: 1em;
	border-radius: 15px;
}
.wysiwyg-sidebar-image img {
    width: 100%;
    height: 100%;
	object-fit: cover;
	mix-blend-mode: luminosity;
    opacity: 0.5;
	transition: opacity 0.250s ease-in-out, mix-blend-mode 0.250s ease-in-out;
}
section.wysiwyg .wysiwyg-sidebar-image img {
	mix-blend-mode: normal;
	opacity: 1;
}
body.single .wysiwyg-sidebar-image img {
	height: auto;
	mix-blend-mode: normal;
	opacity: 1;
}
.wysiwyg-sidebar-item:hover .wysiwyg-sidebar-image {
	background-color: transparent;
}
.wysiwyg-sidebar-item:hover .wysiwyg-sidebar-image img {
	/*mix-blend-mode: normal;*/
	opacity: 1;
}
.wysiwyg-sidebar-name {

}
.wysiwyg-sidebar-name h2 span {
	white-space: nowrap;
}
.wysiwyg-sidebar-icons {
	display: flex;
	flex-wrap: nowrap;
	gap: 0.75em;
}
body.single .wysiwyg-sidebar-icons {
	border-top: 1px solid #c4c4bf;
	padding-top: 1em;
}
.wysiwyg-sidebar-icons a {
	text-align: center;
	font-family: 'FoundersGrotesk-Regular';
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}
.wysiwyg-sidebar-icons a span {
	display: block;
	position: relative;
	margin-bottom: 10px;
}
.wysiwyg-sidebar-icons a span i {
	position: absolute;
	background: conic-gradient(transparent 0deg, var(--white) 0deg);
	width: 100%;
    height: 100%;
    z-index: 1;
	border-radius: 100%;
}
.wysiwyg-sidebar-icons a span img {
	opacity: 0.5;
	transition: opacity 0.250s ease-in-out;
	border: 1px solid var(--white);
}
.wysiwyg-sidebar-icons a:hover span img {
	opacity: 1;
}

section.contact {

}
section.contact p.contact span {
	font-size: 40px;
	font-size: clamp(26px, 1.892vw + 10.48px, 40px);
	line-height: 1.075;
}
section.contact p.contact small {
	font-size: 14px;
	letter-spacing: 0.05em;
	color: var(--cream);
	text-transform: uppercase;
	display: block;
	margin-bottom: 10px;
}
section.contact p a {
	position: relative;
}
section.contact p a::before {
	content: "";
    position: absolute;
	bottom: calc(2.5% + 1px);
    left: 0;
    width: 0;
    height: 1px;
    background-color: var(--brown);
    transition: width 0.250s ease-in-out;
}
section.contact p a:hover::before {
	width: 100%;
}

section.team {

}
section.team p.title {
	font-family: 'Solare-RegularIntense';
	font-size: 110px;
	line-height: 1.181;
	opacity: 0.1;
	max-width: 1080px;
	margin-left: 0;
	margin-bottom: 0;
}
.team-grid {
	margin: 0 2.5rem 0 2.5rem;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(auto-fit, minmax(0, 50vh));
 	grid-auto-rows: minmax(0, 50vh); 
	column-gap: 1em;
	row-gap: 0;
	align-items: center;
}
.team-member {
	position: relative;
	will-change: transform;
	/*transform-style: preserve-3d;*/
}
.team-member a.link {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.team-member a.profile {
	font-family: 'FoundersGrotesk-Regular';
	color: var(--brown);
	font-size: 14px;
	letter-spacing: 0.10em;
	position: relative;
	text-transform: uppercase;
	white-space: nowrap;
}
.team-member a.profile::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1px;
	background-color: var(--brown);
	transition: width 0.250s ease-in-out;
}
.team-member:hover a.profile::before {
	width: 100%;
}
.team-member-image {
	border-radius: 15px;
	overflow: hidden;
	margin-bottom: 1em;
	position: relative;
}
.team-member-image img {
	width: 100%;
 	height: 100%;
	object-fit: cover;
	will-change: transform;
}
.team-member-1 {
    grid-column: 1;
}
.team-member-2 {
	grid-column: 3;
}
.team-member-3 {
	grid-column: 1;
}
.team-member-4 {
	grid-column: 4;
}
.team-member-5 {
	grid-column: 2;
}


section.intro {

}
.intro-holder {
	max-width: 640px;
	margin: 0 auto 0 0;
	transform: translateY(-50%);
}
section.intro h2 {
	margin-bottom: 0;
}
section.intro h2 a {
	display: inline-block;
	color: var(--cream);
	border-bottom: 2px solid;
}
section.intro h2 a span {
	overflow: hidden;
    display: block;
    position: relative;
    color: transparent;
    height: calc(1em - 0.25rem - 2px);
    padding-top: 0.25rem;
}
section.intro h2 a span::before {
	color: var(--cream);
	content: attr(data-label);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: all 0.200s ease-in-out;
}
section.intro h2 a:hover span::before {
	top: calc(-1em * 1);
}
section.intro h2 a span::after {
	color: var(--cream);
    content: attr(data-label);
    position: absolute;
    bottom: calc(-1em * 1);
    left: 0;
    width: 100%;
	height: 100%;
	transition: all 0.200s ease-in-out;
}
section.intro h2 a:hover span::after {
	bottom: 0;
}


section.hometeam {
	
}
.hometeam-holder {
	margin: 0 auto 0 0;
	transform: translateY(100%);
	position: relative;
	z-index: 1;
}
section.hometeam h2 {
	margin-bottom: 0;
}
section.hometeam h2 a {
	display: inline-block;
	color: var(--cream);
	border-bottom: 2px solid;
}
section.hometeam h2 a span {
	overflow: hidden;
    display: block;
    position: relative;
    color: transparent;
    height: calc(1em - 0.25rem - 2px);
    padding-top: 0.25rem;
}
section.hometeam h2 a span::before {
	color: var(--cream);
	content: attr(data-label);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: all 0.200s ease-in-out;
}
section.hometeam h2 a:hover span::before {
	top: calc(-1em * 1);
}
section.hometeam h2 a span::after {
	color: var(--cream);
    content: attr(data-label);
    position: absolute;
    bottom: calc(-1em * 1);
    left: 0;
    width: 100%;
	height: 100%;
	transition: all 0.200s ease-in-out;
}
section.hometeam h2 a:hover span::after {
	bottom: 0;
}
.hometeam-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1em;
}
.hometeam-member {
	border-radius: 15px;
	overflow: hidden;
	position: relative;
	background-color: var(--white);
	transition: background-color 0.250s ease-in-out;
}
.hometeam-member img {
	mix-blend-mode: luminosity;
    opacity: 0.5;
	transition: opacity 0.250s ease-in-out, mix-blend-mode 0.250s ease-in-out;
}
.hometeam-member:hover {
	background-color: transparent;
}
.hometeam-member:hover img {
	/*mix-blend-mode: normal;*/
	opacity: 1;
}
.hometeam-member a.link {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}


section.inconversation {

}
.inconversation-holder {
	display: flex;
	flex-wrap: wrap;
	width: calc(100% - 7.5rem);
	column-gap: 5rem;
}
.inconversation-holder > div {
	flex: 1;
	align-self: center;
}
.inconversation-holder > div:last-of-type {
	flex-basis: 100%;
}
section.inconversation h2 {
	max-width: 480px;
	margin-bottom: 0;
	margin-left: 0;
}
section.inconversation h2 a {
	display: inline-block;
	color: var(--cream);
	border-bottom: 2px solid;
}
section.inconversation h2 a span {
	overflow: hidden;
    display: block;
    position: relative;
    color: transparent;
    height: calc(1em - 0.25rem - 2px);
    padding-top: 0.25rem;
}
section.inconversation h2 a span::before {
	color: var(--cream);
	content: attr(data-label);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: all 0.200s ease-in-out;
}
section.inconversation h2 a:hover span::before {
	top: calc(-1em * 1);
}
section.inconversation h2 a span::after {
	color: var(--cream);
    content: attr(data-label);
    position: absolute;
    bottom: calc(-1em * 1);
    left: 0;
    width: 100%;
	height: 100%;
	transition: all 0.200s ease-in-out;
}
section.inconversation h2 a:hover span::after {
	bottom: 0;
}
section.inconversation p.title {
	font-family: 'Solare-RegularIntense';
	font-size: 110px;
	line-height: 1;
	opacity: 0.1;
	max-width: 1080px;
	margin-left: 0;
	margin-bottom: 0;
	transform: translateY(25%);
}

section.switcherstart,
section.switcherend {
	padding: 0;
}
.switcher-holder {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: start;
	gap: 1em;
}
.switcher-holder button {
	font-size: 35px;
	line-height: 1;
	color: var(--cream);
	position: relative;
	transition: color 0.250s ease-in-out;
}
.switcher-holder button.active {
	color: var(--brown);
}
.switcher-holder button::after {
	content: "";
	position: absolute;
	bottom: 1px;
	left: 0;
	width: 0;
	height: 1px;
	background-color: var(--cream);
	transition: width 0.250s ease-in-out, background-color 0.250s ease-in-out;
}
.switcher-holder button:hover::after {
	width: 100%;
}
.switcher-holder button.active::after {
	background-color: var(--brown);
	width: 100%;
}

section.trustedby {

}
section.trustedby p.tag {
	font-family: 'FoundersGrotesk-Regular';
	font-size: 14px;
	text-transform: uppercase;
	color: var(--cream);
	margin-bottom: 2em;
	letter-spacing: 0.10em;
}
section.trustedby p:not(.tag) {
	font-size: 70px;
	font-size: clamp(30px, 5.405vw - 14.32px, 70px);
	line-height: 1;
}
.trustedby-holder {
	margin: 0 0 0 auto;
	max-width: 920px;
}

/* buttons */
button {
	border: none;
	background: none;
	cursor: pointer;
	margin: 0;
	padding: 0;
	appearance: none;
}


button.backtotop {
	width: 68px;
    height: 68px;
    background-color: var(--darkgreen);
    border-radius: 68px;
    text-align: center;
    box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.4);
}
button.backtotop span {
    width: 34px;
    height: 34px;
    display: block;
    border-radius: 34px;
    background-color: var(--cream);
    margin: 0 auto 0 auto;
    position: relative;
    transition: width 0.250s ease-in-out, height 0.250s ease-in-out, border-radius 0.250s ease-in-out;
}
button.backtotop:hover span {
    width: 46px;
    height: 46px;
    border-radius: 46px;
}
button.backtotop img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

a.linkedin svg {
	vertical-align: middle;
    margin-bottom: 4px;
	margin-right: 1rem;
}
a.linkedin svg path {
	fill: var(--softgreen);
	transition: fill 0.200s ease-in-out;
}
a.linkedin:hover svg path {
	fill: var(--white);
}




/*------------------------------------*\
    PAGES
\*------------------------------------*/



/*------------------------------------*\
    IMAGES
\*------------------------------------*/



/*------------------------------------*\
    FORMS
\*------------------------------------*/

.grecaptcha-badge,
.gform_required_legend,
.gform_validation_errors,
.gfield--type-honeypot {
	display: none !important;
}

.gform_wrapper {
	width: 100%;
}
section.form .gform_wrapper {
	padding: 2.5rem 0 5rem 0;
}

input,
textarea {
	border: none;
	width: 100%;
	background: none;
	color: var(--green);
	border-bottom: 1px solid var(--brownfade);
	padding: 0 0 1em 0;
	transition: border-color 0.1s ease-in-out;
	font-family: 'FoundersGrotesk-Regular';
	font-size: clamp(12px, 2vb, 14px);
	letter-spacing: 0.05em;
	text-transform: uppercase;
	display: block;
	border-radius: unset;
}
label,
legend {
	font-family: 'FoundersGrotesk-Regular';
	font-size: clamp(12px, 2vb, 14px);
	letter-spacing: 0.05em;
	text-transform: uppercase;
	line-height: 1.0em;
	display: block;
	padding: 0 0 1em 0;
}
textarea {
	resize: none;
}
section.form textarea {
	height: calc(1.7rem + 1em + 1px);
}
section.contact textarea {
	background-image: repeating-linear-gradient(transparent, transparent calc(4em - 1px), var(--brownfade) calc(4em - 1px), var(--brownfade) 4em);
    background-attachment: local;
    line-height: 4em;
    height: calc(4em * 3);
	border-bottom: none;
	transition: background-image 0.1s ease-in-out;
	will-change: transform;
    backface-visibility: hidden;
    background-size: 100% 4em;
}
section.contact textarea:focus {
	background-image: repeating-linear-gradient(transparent, transparent calc(4em - 1px), var(--brown) calc(4em - 1px), var(--brown) 4em);
	border-bottom: none;
}
.ginput_container_textarea {

}
section.contact .ginput_container_textarea {
	margin-top: -0.5em;
}
fieldset {
	border: none;
	margin: 0;
	padding: 0;
}
.gform_fields {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	row-gap: 2em;
    column-gap: 1em;
	margin: 0 auto 1em auto;
}
.gfield--width-full {
    grid-column: 1 / span 4;
}
.gfield--width-half {
	grid-column: 1 / span 2;
}
.gfield--type-html p {
	margin-bottom: 0;
}



section.form #field_1_1 {
	grid-area: 1 / 1 / 1 / 1;
}
section.form #field_1_3 {
    grid-area: 1 / 2 / 1 / 2;
}
section.form #field_1_4 {
	grid-area: 1 / 3 / 1 / 3;
}
section.form #field_1_5 {
	grid-area: 1 / 4 / 1 / 4;
}
section.form #field_1_6 {
    grid-area: 2 / 1 / 2 / 4;
}
section.form #field_1_7 {
    grid-area: -2 / 1 / -1 / 4;
}
section.form #field_submit {
    grid-area: 2 / 4 / 2 / 4;
}
section.contact #field_1_1 {
	grid-area: 1 / 1 / 1 / 3;
}
section.contact #field_1_3 {
	grid-area: 1 / 3 / 1 / 5;
}
section.contact #field_1_4 {
	grid-area: 2 / 1 / 2 / 3
}
section.contact #field_1_5 {
	grid-area: 2 / 3 / 2 / 5;
}
section.contact #field_1_6 {
	grid-area: 3 / 1 / 3 / 5;
}
section.contact #field_1_7 {
    grid-area: 5 / 1 / 6 / 5;
}
section.contact #field_submit {
	grid-area: 4 / 1 / 5 / 5;
}





.gfield_checkbox {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	column-gap: 1.5em;
}
.ginput_container_checkbox {
	border-bottom: 1px solid var(--brownfade);
	transition: border-color 0.1s ease-in-out;
	height: 1.333em;
}
.gfield_checkbox .gchoice {

}
.gfield {
	position: relative;
}
.gfield_validation_message {
	font-family: 'FoundersGrotesk-Regular';
	font-size: clamp(12px, 2vb, 14px);
	line-height: 1.0em;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #8d2800;
	position: absolute;
	top: 0;
	right: 0;
}



.gfield_checkbox input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.gfield_checkbox label {
	position: relative;
	cursor: pointer;
	color: var(--cream);
	padding: 0 calc(19px + 0.5em) 0 0;
	transition: color 0.1s ease-in-out;
}
.gfield_checkbox label::before {
	content: "";
	position: absolute;
	right: 0;
	top: -5px;
	width: 19px;
	height: 19px;
	background-color: var(--cream);
	border-radius: 50%;
	transition: background-color 0.1s ease-in-out;
}
.gfield_checkbox label:hover::before {
	background-color: var(--cream);
}
.gfield_checkbox input:checked + label {
	color: var(--green);
}
.gfield_checkbox input:checked + label::before {
	background-color: var(--green);
}

input:focus-visible,
textarea:focus-visible,
input:focus,
textarea:focus {
	outline: none;
	border-bottom-color: var(--brown);
}

::placeholder {
	color: var(--cream);
	transition: color 0.1s ease-in-out;
}
input:focus::placeholder,
textarea:focus::placeholder {
	color: transparent;
}

input[type="submit"] {
	background-color: var(--cream);
	color: var(--brown);
	text-align: left;
	border: none;
	border-radius: 10px;
    height: calc(100% + 1px);
    padding: calc(1em + 5px) 2em 1em 2em;
	background-image: url('img/submit.svg');
	background-repeat: no-repeat;
    background-position: calc(100% - 2em) center;
}
section.contact input[type="submit"] {
    padding: calc(2em + 5px) 2em 2em 2em;
}
input[type="submit"]:hover {

}
input[type="submit"].submitted {
	background-color: var(--textdark);
	color: var(--textlight);
}



/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

@font-face {
    font-family: 'FoundersGrotesk-Light';
    src: url('fonts/FoundersGrotesk-Light.eot') format('embedded-opentype'),
        url('fonts/FoundersGrotesk-Light.woff2') format('woff2'),
        url('fonts/FoundersGrotesk-Light.woff') format('woff'),
        url('fonts/FoundersGrotesk-Light.ttf') format('truetype'),
        url('fonts/FoundersGrotesk-Light.svg') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: fallback;
}
@font-face {
    font-family: 'FoundersGrotesk-Regular';
    src: url('fonts/FoundersGrotesk-Regular.eot') format('embedded-opentype'),
        url('fonts/FoundersGrotesk-Regular.woff2') format('woff2'),
        url('fonts/FoundersGrotesk-Regular.woff') format('woff'),
        url('fonts/FoundersGrotesk-Regular.ttf') format('truetype'),
        url('fonts/FoundersGrotesk-Regular.svg') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: fallback;
}
@font-face {
	font-family: 'FoundersGrotesk-Medium';
	src: url('fonts/FoundersGrotesk-Medium.eot') format('embedded-opentype'),
		url('fonts/FoundersGrotesk-Medium.woff2') format('woff2'),
		url('fonts/FoundersGrotesk-Medium.woff') format('woff'),
		url('fonts/FoundersGrotesk-Medium.ttf') format('truetype'),
		url('fonts/FoundersGrotesk-Medium.svg') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: fallback;
}
@font-face {
	font-family: 'Solare-Black';
	src: url('fonts/Solare-Black.eot') format('embedded-opentype'),
		url('fonts/Solare-Black.woff2') format('woff2'),
		url('fonts/Solare-Black.woff') format('woff'),
		url('fonts/Solare-Black.ttf') format('truetype'),
		url('fonts/Solare-Black.svg') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: fallback;
}
@font-face {
	font-family: 'Solare-BlackIntense';
	src: url('fonts/Solare-BlackIntense.eot') format('embedded-opentype'),
		url('fonts/Solare-BlackIntense.woff2') format('woff2'),
		url('fonts/Solare-BlackIntense.woff') format('woff'),
		url('fonts/Solare-BlackIntense.ttf') format('truetype'),
		url('fonts/Solare-BlackIntense.svg') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: fallback;
}
@font-face {
	font-family: 'Solare-Regular';
	src: url('fonts/Solare-Regular.eot') format('embedded-opentype'),
		url('fonts/Solare-Regular.woff2') format('woff2'),
		url('fonts/Solare-Regular.woff') format('woff'),
		url('fonts/Solare-Regular.ttf') format('truetype'),
		url('fonts/Solare-Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: fallback;
}
@font-face {
	font-family: 'Solare-RegularIntense';
	src: url('fonts/Solare-RegularIntense.eot') format('embedded-opentype'),
		url('fonts/Solare-RegularIntense.woff2') format('woff2'),
		url('fonts/Solare-RegularIntense.woff') format('woff'),
		url('fonts/Solare-RegularIntense.ttf') format('truetype'),
		url('fonts/Solare-RegularIntense.svg') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: fallback;
}
@font-face {
	font-family: 'SolareItalic-Regular';
	src: url('fonts/SolareItalic-Regular.eot') format('embedded-opentype'),
		url('fonts/SolareItalic-Regular.woff2') format('woff2'),
		url('fonts/SolareItalic-Regular.woff') format('woff'),
		url('fonts/SolareItalic-Regular.ttf') format('truetype'),
		url('fonts/SolareItalic-Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: fallback;
}


h1 {
	font-family: 'Solare-RegularIntense';
	font-weight: normal;
	font-size: 67px;
	font-size: clamp(36px, 4.189vw + 1.65px, 67px);
	line-height: 1.1;
	margin: 0 auto 1em auto;
	color: var(--cream);
}
h1 i,
h1 em {
	font-family: 'SolareItalic-Regular';
	font-style: normal;
}
h2 {
	font-family: 'FoundersGrotesk-Light';
	font-weight: normal;
	font-size: 45px;
	font-size: clamp(27px, 2.4324vw + 7.06px, 45px);
	line-height: 1;
	margin: 0 auto 1em auto;
}
h3 {
	font-family: 'Solare-RegularIntense';
	font-weight: normal;
	font-size: 45px;
	line-height: 1;
	margin: 0 auto 1em auto;
}
section.form h3 {
	margin-bottom: 0;
}
h4 {
	font-family: 'FoundersGrotesk-Regular';
	font-weight: normal;
	margin: 1.75em auto 0.75em auto;
	font-size: inherit;
	line-height: inherit;
	color: var(--green);
}
h4 strong,
h4 b {
	font-family: 'FoundersGrotesk-Medium';
	font-weight: normal;
}
h5 {

}
h6 {

}

p {
	margin: 0 auto 1em auto;
}
p strong {
	font-family: 'FoundersGrotesk-Regular';
	font-weight: normal;
}
p b {
	font-family: 'FoundersGrotesk-Medium';
	font-weight: normal;
}
p small {
	font-size: 0.75em;
	display: inline-block;
}
form p a {
	text-decoration: underline;
	white-space: nowrap;
}

blockquote {
	font-family: 'Solare-BlackIntense';
	font-weight: normal;
	margin: 3em auto 3em auto;
	text-transform: uppercase;
	color: var(--cream);
	font-size: 1.15em;
    line-height: 1.1;
}
body.single blockquote {
	margin-top: 0;
	padding-top: 10px;
	border-top: 1px solid #c4c4bf;
}
cite {
	display: block;
	font-size: 14px;
	letter-spacing: 0.10em;
	margin: 6em auto 0 auto;
	font-family: 'FoundersGrotesk-Regular';
	font-weight: normal;
	font-style: normal;
	text-transform: uppercase;
}
cite strong,
cite b {
	font-family: 'FoundersGrotesk-Medium';
	font-weight: normal;
}
cite svg {
	float: left;
	margin-right: 1em;
	margin-top: -4px;
}
cite::after {
	content: "";
	display: block;
	clear: both;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin: 3em auto 2em auto;
	width: 100%;
    height: auto;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

/* don't show first hometeam member on desktop */
.hometeam-member.hometeam-member-0 {
	display: none;
}

/* media query for touch devices */
@media (hover: none) {
	.hometeam-member img {
		mix-blend-mode: unset;
		opacity: 1;
	}

}

@media only screen and (max-height: 920px) {
	.nav-menu ul li a {
		font-size: clamp(38px, 6.5vh, 60px);
	}
	h1 {
		font-size: clamp(36px, 4.189vw + 1.65px, 60px);
	}
	section.masktitle h1 {
		font-size: clamp(54px, 7.297vw - 3.84px, 90px);
		line-height: 1.1
	}
	section.trustedby p:not(.tag) {
		font-size: clamp(30px, 5.405vw - 14.32px, 50px);
	}
	.trustedby-holder {
		max-width: 720px;
	}
	section.inconversation .images-holder {
		max-width: 450px;
	}
	section.title h1 {
		max-width: 720px;
		margin-bottom: 0;
	}

}

@media only screen and (max-width: 1420px) {
	.content {
		max-width: 1080px;
	}
}


@media only screen and (max-width:1280px) {
	.content {
		max-width: 720px;
	}
	.trustedby-holder {
		max-width: 600px;
	}
	.footer-links-col {
		columns: 150px 2;
	}


}

@media only screen and (max-width:1024px) {
	.footer-links-col {
		columns: 120px 2;
	}


}


@media only screen and (max-width:820px) {

	 body {
		font-size: 23px;
	 }

	.header {
		align-items: center;
		min-height: 56px;
	}
	.logo-img {
		max-width: 132px;
	}
	.header .logo-img {
		vertical-align: middle;
	}

	.nav-toggle {
		width: 140px;
		height: 56px;
		right: 5%;
	}
	.nav {
		width: 140px;
		height: 56px;
	}
	.nav-menu ul li a {
		font-size: clamp(35px, 5vh, 50px);
	}

	section {
		padding: 2.5rem 0 2.5rem 0;
	}

	.gform_fields {
		grid-template-columns: repeat(1, 1fr);
	}
	input[type="submit"] {
		padding: calc(2em + 5px) 2em 2em 2em;
	}
	section.contact .gfield,
	section.form .gfield {
		grid-area: unset !important;
	}
	section.contact #field_1_7 {
		order: 9999;
	}
	section.form .gform_wrapper {
		padding-bottom: 0;
	}
	section.contact .wysiwyg-sidebar {
		order: -1;
		padding-bottom: 7.5rem;
	}

	.intro-holder {
		transform: unset;
	}
	.image-holder {
		margin: 0;
	}
	.image-holder img {
		border-radius: 0;
	}
	.image-caption {
		top: 100%;
	}
	.image-caption span {
		padding: 10px 0 0 0;
	}

	section.inconversation .images-holder,
	.images-holder {
		width: calc(100% - 7.5rem);
	}
	section.inconversation .images-holder,
	.images-holder.left,
	.images-holder.right {
        margin-right: auto;
        margin-left: 0;
	}
	.images-holder.center {
		margin-right: 0;
		margin-left: auto;
	}
	.images-holder.center img.texture {
		transform: translate(-7.5rem, 7.5rem);
	}

	section.intro h2 a:hover span::before,
	section.hometeam h2 a:hover span::before,
	section.inconversation h2 a:hover span::before {
		top: 0;
	}
	section.intro h2 a:hover span::after,
	section.hometeam h2 a:hover span::after,
	section.inconversation h2 a:hover span::after {
		bottom: calc(-1em * 1);
	}
	#menu-header a:hover span::before {
		top: 50%;
	}
	#menu-header a:hover span::after {
		bottom: -50%;
	}

	.hometeam-holder {
		transform: unset;
		padding-bottom: 5rem;
	}
	.hometeam-grid {
    	grid-template-columns: repeat(2, 1fr);
	}
	.hometeam-member {
		grid-column: unset !important;
		grid-row: unset !important;
	}
	.hometeam-member.hometeam-member-0 {
		display: block;
	}

	.inconversation-holder {
		width: 100%;
	}
	.inconversation-holder > div {
		flex: 1 0 100%;
	}
	.inconversation-holder > div:first-of-type {
		padding-bottom: 5rem;
	}

	section.team p.title {
		display: none;
	}
	.team-grid {
		grid-template-columns: repeat(1, 1fr);
        grid-template-rows: auto;
        grid-auto-rows: auto;
		row-gap: 2em;
		padding: 7.5rem 0 7.5rem 0;
	}
	.team-member {
		grid-area: unset !important;
	}

	.inconversation-holder > div:last-of-type {
		position: absolute;
		left: -25%;
        bottom: 0;
		z-index: -1;
	}
	section.inconversation p.title {
		white-space: nowrap;
	}

	.wysiwyg-main,
	.wysiwyg-sidebar {
		flex: 1 0 100%;
	}
	.video-holder {
		width: 100%;
	}
	.wysiwyg-sidebar-item {
		flex-wrap: wrap;
	}
	.wysiwyg-sidebar-item > div {
		flex: 1 0 100%;
	}
	.wysiwyg-sidebar-image {
		max-width: 100px;
	}
	.wysiwyg-sidebar-icons a span img {
		width: 62px;
		height: 62px;
		opacity: 0.75;
	}
	body.single section.wysiwyg .wysiwyg-sidebar {
		order: -1;
		padding-bottom: 7.5rem;
	}

	blockquote {
		font-size: 1.0833em;
	}

	.footer {
		padding: 2.5rem 0 2.5rem 0;
	}
	.footer .footer-holder:first-of-type {
		padding-bottom: 2.5rem;
	}
	.footer-links > p,
	.footer-links-col,
	.footer .footer-spacer,
	.footer-decal,
	.footer-legal {
		display: none;
	}
	.footer-links {
		padding-top: 2.5rem;
	}
	.footer-company {
		flex: 1;
	}
	.footer-logo,
	.footer-links {
		flex: 1 0 100%;
	}
	.footer-logo p {
		display: block;
		line-height: 1.181;
	}
	.footer-btt {
		max-height: 68px;
	}

	.alignnone {
    	margin: 1em auto 1em auto;
	}

}


@media only screen and (min-width:320px) {

}
@media only screen and (min-width:480px) {

}
@media only screen and (min-width:768px) {

}
@media only screen and (min-width:1024px) {

}
@media only screen and (min-width:1140px) {

}
@media only screen and (min-width:1280px) {

}
@media only screen and (-webkit-min-device-pixel-ratio:1.5),
	   only screen and (min-resolution:144dpi) {

}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:var(--green);
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:var(--green);
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:var(--green);
	color:#FFF;
	text-shadow:none;
}



/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
