@charset "UTF-8";

/*
Title:      	Seeded Digital stylesheet for screen media
Author:     	Karl Ridley, falling@happyleaves.com
Updated:    	02nd May 2026
*/


/* PRIMARY COMPONENTS */

*, *::after, *::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  	font-size: 100%;
	}

html * {
  	-webkit-font-smoothing: antialiased;
    /* -moz-osx-font-smoothing: grayscale; */
	/*-webkit-overflow-scrolling: touch; */
	}

#fader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999999;
    pointer-events: none;
    background: #f3f1ec;
    animation-duration: 1500ms;
    animation-timing-function: ease-in-out;
}

@keyframes fade-out {
    from { opacity: 1 }
      to { opacity: 0 }
}

@keyframes fade-in {
    from { opacity: 0 }
      to { opacity: 1 }
}

#fader.fade-out {
    opacity: 0;
    animation-name: fade-out;
}

#fader.fade-in {
    opacity: 1;
    animation-name: fade-in;
}


body {
	font-size: 1.0em;
	line-height: 1.6875em;
  	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
  	color: #151c1d;
    background: #f3f1ec !important;
	}

body, html {
  	/* prevent horizontal scrolling */
  	overflow-x: hidden;
	}

::-moz-selection {
	background: #747237;
    color: #f3f1ec;
    text-shadow: none;
	}

::selection {
	background: #747237;
    color: #f3f1ec;
    text-shadow: none;
	}

img::-moz-selection	{
	background: transparent;
	}

img::selection {
	background: transparent;
	}

a:active {
	outline: none;
	}

a:focus	{
	outline: none;
	}

p {
	margin: 0 0 1.1rem 0;
	text-align: left;
	color: #151c1d;
	font-size: 0.95rem;
	line-height: 1.3rem;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
	}

a {
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
    color: #151c1d;
    text-decoration: none;
	-moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    -webkit-transition: all .3s ease-in;
    transition: all .3s ease-in;

	}
a:hover {
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
    color: #747237;
    text-decoration: none;
	}


ol {
	color: #151c1d;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
	}

ol li {
	padding: 0 0 0.85rem 0;
    font-weight: 600;
	}




em {
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: italic;
	}

strong {
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600 !important;
    font-style: normal;
	}


.clear {
 	clear: both;
	overflow: hidden;
	height: 0;
	display: flow-root;
 	}





h1 {
 	text-align: left;
	font-size: 3.275rem;
	line-height: 3.675rem;
	color: #151c1d;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	margin: 0;
	padding: 0 0 2.0rem 0;
	}
h1 a:link, h1 a:visited {
	color:#151c1d;
    text-decoration: none;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	}
h1 a:active, h1 a:hover {
	color:#151c1d;
	text-decoration: none;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	}
    @media (max-width: 959px) {
        h1 {
            font-size: 2.275rem;
        	line-height: 2.675rem;
            padding: 0 0 1.6rem 0;
        }
    }




h2 {
    text-align: left;
    font-size: 2.2rem;
    line-height: 2.9rem;
    color: #151c1d;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    padding: 0 0 2rem 0;
    }
h2 span {
    border-bottom: 4px solid #cfc493;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}
h2 a {
    color: #151c1d;
    text-decoration: none;
    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-weight: 400;
    font-style: normal;
    }
h2 a span {
    border-bottom: 4px solid #cfc493;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    transition: border-color 0.3s ease;
    }
h2 a:hover span {
    border-bottom-color: #747237;
    }




h3 {
	text-align: left;
	font-size: 1.5rem;
	line-height: 1.8rem;
	color: #151c1d;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	margin: 0;
	padding: 0 0 1.2rem 0;
	}
h3 a:link, h3 a:visited {
	color:#151c1d;
	text-decoration: none;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	}
h3 a:active, h3 a:hover {
	color:#151c1d;
	text-decoration: none;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	}




h4 {
	text-align: left;
	font-size: 0.95rem;
	line-height: 1.3rem;
	color: #747237;
	font-family: "IBM Plex Mono", monospace;
    font-weight: 400;
    font-style: normal;
	margin: 0;
	padding: 0 0 1.5rem 0;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
	}
h4 a:link, h4 a:visited {
	color:#747237;
	text-decoration: none;
	font-family: "IBM Plex Mono", monospace;
    font-weight: 400;
    font-style: normal;
	}
h4 a:active, h4 a:hover {
	color:#747237;
	text-decoration: none;
	font-family: "IBM Plex Mono", monospace;
    font-weight: 400;
    font-style: normal;
	}






/* DIVLINE / BREAKERS COMPONENTS */

.divlinesolidnormal {
	height: 1px;
	margin: 3.0rem 0;
	border-bottom: #d1ccbd solid 1px;
	}

.divlinesolidnormalindent {
	height: 1px;
	margin: 3.0rem 4.166%;
	border-bottom: #d1ccbd solid 1px;
	}



:root {
    --nav-bg: #cfc493;
    --ink: #111820;
    --cream: #f3f1ec;
    --olive: #747237;
    --header-height: 80px;
}





/* HEADER */

.site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--header-height);
    z-index: 3000;
    border-bottom: 1px solid rgba(209, 204, 189, 1);
    background: var(--cream);
    }
body.nav-open .site-header {
    background: transparent;
    border-bottom-color: rgba(243, 241, 236, 0.25);
    }
.site-header__inner {
    height: 100%;
    padding: 0 4.166%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    }
.site-logo img {
    display: block;
    width: 260px;
    height: auto;
    }
.site-header__actions {
    display: flex;
    align-items: center;
    gap: 3rem;
    }



/* BREADCRUMB */

.site-header__breadcrumb {
    padding: 0.45rem 4.166%;
    border-bottom: 1px solid #d1ccbd;
    background: #e4dfc5;
}

.breadcrumb {
    font-family: "IBM Plex Mono", monospace;
    font-size: 0.7rem;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.05rem;
    text-transform: uppercase;
}

.breadcrumb,
.breadcrumb span,
.breadcrumb a,
.breadcrumb .breadcrumb_last {
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 0.7rem !important;
    font-weight: 300 !important;
    line-height: 1;
    letter-spacing: 0.05rem;
    text-transform: uppercase;
}

.breadcrumb a {
    color: #747237;
    text-decoration: none;
    transition: color .25s ease;
}

.breadcrumb a:hover {
    color: #151c1d;
    text-decoration: none;
}

.breadcrumb .breadcrumb_last {
    color: #151c1d;
}

/* Style Yoast's separator */
.breadcrumb .breadcrumb-separator {
    margin: 0 0.65rem;
    color: #cfc493;
}



/* CONTACT PILL */

.contact-pill {
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.15rem 1rem;
    border-radius: 999px;
    background: linear-gradient(to right, #cfc493 0%, #747237 100%);
    font-family: "IBM Plex Mono", monospace !important;
    font-weight: 400 !important;
    color: var(--cream) !important;
    font-size: 0.8rem;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
    text-decoration: none;
    z-index: 0;
    }
.contact-pill::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--olive);
    opacity: 0;
    transition: opacity 0.35s ease;
    border-radius: inherit;
    z-index: -1;
    }
.contact-pill:hover::after {
    opacity: 1;
    }

/* HAMBURGER */

.menu-toggle {
    width: 50px;
    height: 32px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    position: relative;
    z-index: 4000;
    display: block;
}

.menu-toggle span {
    display: block;
    width: 50px;
    height: 2px;
    background: var(--ink);
    position: absolute;
    left: 0;
    opacity: 1;
    transition:
        transform 0.35s ease,
        opacity 0.2s ease,
        top 0.35s ease;
}

.menu-toggle span:nth-child(1) {
    top: 7px;
}

.menu-toggle span:nth-child(2) {
    top: 15px;
}

.menu-toggle span:nth-child(3) {
    top: 23px;
}

body.nav-open .menu-toggle span:nth-child(1) {
    top: 15px;
    transform: rotate(45deg);
}

body.nav-open .menu-toggle span:nth-child(2) {
    opacity: 0;
}

body.nav-open .menu-toggle span:nth-child(3) {
    top: 15px;
    transform: rotate(-45deg);
}



/* FULLSCREEN NAV */

.fullscreen-nav {
    position: fixed;
    inset: 0;
    z-index: 2000;
    width: 100vw;
    height: 100vh;
    min-height: 100vh;
    background: var(--nav-bg);
    color: var(--ink);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity 0.4s ease,
        visibility 0.4s ease;
}

body.nav-open .fullscreen-nav {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    }

.fullscreen-nav__inner {
    width: 100%;
    height: 100%;
    min-height: 100vh;
    padding: calc(var(--header-height) + 3rem) 4.166% 3rem;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    gap: 6rem;
    }



/* LEFT SIDE */

.fullscreen-nav__aside {
    width: 40%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    }
.fullscreen-nav__pattern {
    width: 100%;
    max-width: 700px;
    height: 62vh;
    background-image: url("../svg/pattern.svg");
    background-repeat: repeat;
    background-size: 46px 46px;
    background-position: top left;
    }
.fullscreen-nav__contact {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    }
.fullscreen-nav__contact a {
    font-family: "IBM Plex Mono", monospace;
    font-weight: 400;
    font-size: 1.3rem;
    line-height: 1.3;
    color: #747237;
    text-decoration: none;
    transition: color 0.25s ease;
    }
.fullscreen-nav__contact a:hover {
    color: var(--ink);
    }



/* RIGHT SIDE NAV */

.fullscreen-nav__menu {
    width: 50%;
    display: flex;
    align-items: center;
    }

.seeded-nav {
    width: 100%;
    }
.seeded-nav > li {
    margin: 0;
    }
.seeded-nav > li > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 400;
    font-size: clamp(2.6rem, 3.0vw, 4.0rem);
    line-height: 1.0;
    color: var(--ink);
    padding: 0.5rem 0;
    text-decoration: none;
    }
.seeded-nav > li > a:hover {
    color: var(--ink);
    }
.seeded-nav .nav-arrow {
    font-size: 2.0rem;
    line-height: 1;
    transition: transform 0.35s ease;
    transform-origin: center;
    }
.seeded-nav > li.uk-open > a .nav-arrow {
    transform: rotate(90deg);
    }




/* LEVEL 2 */

.seeded-nav .uk-nav-sub {
    margin: 1.4rem 0 2rem 1.3rem;
    padding: 0 0 0 2rem;
    border-left: 4px solid rgba(243, 241, 236, 0.5);
    }
.seeded-nav .uk-nav-sub > li > a {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 200 !important;
    font-size: clamp(1.3rem, 2.5vw, 2.0rem);
    line-height: 1.3;
    color: var(--ink);
    padding: 0.25rem 0;
    text-decoration: none;
    }
.seeded-nav .uk-nav-sub > li > a:hover {
    color: rgba(17, 24, 32, 0.65);
    }




/* LEVEL 3 */

.seeded-nav .uk-nav-sub .uk-parent > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    }
.seeded-nav .uk-nav-sub .uk-nav-sub {
    margin: 0.75rem 0 1.25rem 0;
    padding-left: 1.0rem;
    border-left: 0 !important;
    }
.seeded-nav .uk-nav-sub .uk-nav-sub > li > a {
    font-size: clamp(1.05rem, 1.1vw, 1.35rem);
    line-height: 1.45;
    opacity: 0.75;
    }

.seeded-nav .nav-arrow--sub {
    font-size: 1.25rem;
    }

body.nav-open {
    overflow: hidden;
    }


/* MOBILE */

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

    :root {
        --header-height: 80px;
        }
    .site-logo img {
        width: 220px;
        }
    .site-header__actions {
        gap: 1.5rem;
        }
    .contact-pill {
        display: none;
        }
    .menu-toggle,
    .menu-toggle span {
        width: 42px;
        }
    .fullscreen-nav__inner {
        padding: calc(var(--header-height) + 2rem) 4.166% 2rem;
        flex-direction: column;
        justify-content: flex-start;
        gap: 1.5rem;
        overflow-y: auto;
        }
    .fullscreen-nav__menu {
        order: 1;
        width: 100%;
        align-items: flex-start;
        }
    .fullscreen-nav__aside {
        order: 2;
        width: 100%;
        gap: 1.5rem;
        }
    .fullscreen-nav__pattern {
        height: 100px;
        max-width: none;
        }
    .fullscreen-nav__contact {
        margin-top: 0;
        }
    .fullscreen-nav__contact a {
        font-size: 1.15rem;
        }
    .seeded-nav .nav-arrow {
        font-size: 2rem;
        }
    .seeded-nav .uk-nav-sub {
        margin: 1.0rem 0 0.5rem 0.5rem;
        padding-left: 1.3rem;
        border-left-width: 3px;
        }
    .seeded-nav .uk-nav-sub > li > a {
        font-size: 1.5rem;
        }
    .seeded-nav .nav-arrow--sub {
        font-size: 1rem;
        }
}








/* SECTIONS COMPONENTS */

.headertitleholder,
#headertitleholder {
	margin: 0;
	padding: 13rem 4.166% 2.0rem 4.166%;
	background: #f3f1ec;
	}
.headertitleholder p,
#headertitleholder p {
	margin: 0 0 1.1rem 0 !important;
	text-align: left;
	color: #151c1d;
	font-size: 1.25rem;
	line-height: 1.6rem;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200 !important;
    font-style: normal;
	}

.headerpatternholder,
#headerpatternholder {
	margin: 0 4.166% 3.0rem 4.166%;
	padding: 0;
    min-height: 15vh;
	background-image: url("../svg/pattern2.svg");
    background-repeat: repeat;
    background-size: 46px 46px;
    background-position: top left;
	}
@media (max-width: 959px) {
    .headertitleholder,
    #headertitleholder {
        padding: 8rem 4.166% 2.0rem 4.166%;
    }
}




.headertitleholderother,
#headertitleholderother {
	margin: 0;
	padding: 8.0rem 4.166% 0 4.166%;
	background: #f3f1ec;
	}
.headertitleholderother p,
#headertitleholderother p {
	margin: 0 0 1.1rem 0;
	text-align: left;
	color: #151c1d;
	font-size: 1.25rem;
	line-height: 1.6rem;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200 !important;
    font-style: normal;
	}

.headertitleholder,
#headertitleholder {
    margin: 0;
    }

.header-title-card,
.header-pattern-card {
    height: 100%;
    box-sizing: border-box;
    }

.header-title-card {
    padding: 5rem 0;
    display: flex;
    align-items: center;
    }

.header-pattern-card {
    padding: 3rem 0;
    }

.headerpatternholder2,
#headerpatternholder2 {
    width: 100%;
    height: 100%;
    background-image: url("../svg/pattern2.svg");
    background-repeat: repeat;
    background-size: 46px 46px;
    background-position: top left;
    }
@media (max-width: 959px) {

    .headertitleholderother .uk-grid,
    #headertitleholderother .uk-grid {
        align-items: flex-start;
        }
    .header-title-card {
        display: block;
        padding: 0 0 1.5rem 0;
        }
    .header-pattern-card {
        padding: 0;
        height: 8rem;
        min-height: 8rem;
        }
    .headerpatternholder2,
    #headerpatternholder2 {
        height: 100%;
        }

     .header-title-card h1 {
    	font-size: 2.275rem;
    	line-height: 2.675rem;
    }

}

@media (max-width: 959px) {
    .mobile-hide {
        display: none !important;
    }
}

.headerheroimageholder,
#headerheroimageholder {
	margin: 0 4.166%;
	padding: 0;
    min-height: 33.333vh;
	}

.headerheroimageholder2,
#headerheroimageholder2 {
	margin: 0 4.166%;
	padding: 0;
    min-height: 33.333vh;
	}

.headerheroimageholder3,
#headerheroimageholder3 {
	margin: 0;
	padding: 0;
    min-height: 33.333vh;
	}


.headertitleholderright {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    margin-bottom: 1.1rem;
}

@media (max-width: 959px) {
    .headertitleholderright {
        justify-content: flex-start;
    }
}


#headerheroimageholder4 {
	margin: 0 33.333% 0 4.166%;
	padding: 0;
	}
@media (max-width: 959px) {
    #headerheroimageholder4 {
        margin: 0 4.166%;
    }
}


.image-normal-dimensions {
    display: flex;
    justify-content: center;
    min-height: 0;
}

.image-normal-dimensions img {
    display: block;
    position: relative;
}

.header-hero-split.hero-height-normal .uk-first-column {
    align-items: center;
    display: flex;
}



/* ARTICLE AUTHOR BOX */

.article-author-box {
    display: flex;
    align-items: stretch;
    margin: 2rem 0 0 0;
    background: #ebe7d2;
    border-right: 3px solid #e2ddc4;
}

.article-author-box__image {
    width: 125px;
    height: 125px;
    object-fit: cover;
    flex-shrink: 0;
    display: block;
}

.article-author-box__content {
    padding: 1rem 1.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.article-author-box h4 {
    margin: 0;
    padding: 0 0 0.75rem 0;
    color: #747237;
    font-size: 0.95rem;
	line-height: 1.3rem;
}

.article-author-box__role {
    margin: 0.35rem 0 1rem 0;
    color: #747237;
    font-family: "IBM Plex Mono", monospace;
    font-size: 0.8rem;
    line-height: 1.2;
    letter-spacing: 0.05rem;
    text-transform: uppercase;
}

.article-author-box__links {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.article-author-box__links a {
    color: #747237;
    text-decoration: none;
    font-family: "IBM Plex Mono", monospace;
    font-size: 0.85rem;
    line-height: 1;
    font-weight: 500;
    transition: color 0.25s ease;
}

.article-author-box__links a:hover {
    color: #151c1d;
    text-decoration: none;
}

.article-author-box__links i {
    font-size: 1.3rem;
}

.article-author-box__bio p {
    font-size: 0.85rem;
}

.article-author-box__bio > :last-child {
    margin-bottom: 0;
}


/* AUDIO PLAYER */

.audio-listen-box {
    width:100%;
    display:flex;
    align-items:center;
    gap:1rem;
    margin:0 0 1.0rem 0;
    padding:1rem 1.25rem;
    background:#ebe7d2;
    border-right:3px solid #e1ddc7;
    }

.audio-play-button {
    width:60px;
    height:60px;
    padding:0;
    border:none;
    border-radius:50%;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    position:relative;
    overflow:hidden;
    background:linear-gradient(to right,#cfc493 0%,#747237 100%);
    }

.audio-play-button::after{
    content:"";
    position:absolute;
    inset:0;
    background:var(--olive);
    opacity:0;
    transition:opacity .35s ease;
    }

.audio-play-button:hover::after {
    opacity:1;
    }

.audio-play-button i {
    position:relative;
    z-index:2;
    font-size:1.75rem;
    color:#f3f2ea;
    }

.audio-listen-box__content {
    flex:1;
    }

.audio-listen-box__content h5 {
    margin:0 0 0.25rem 0;
    font-family:"IBM Plex Mono", monospace;
    font-size:.95rem;
    line-height:1.25rem;
    font-weight:400;
    text-transform:uppercase;
    color:#747237;
    }

.audio-listen-box__content p {
    margin:0;
    font-family:"Plus Jakarta Sans", sans-serif;
    font-size:.95rem;
    line-height:1.35rem;
    font-weight:300;
    color:#151c1d;
    }





/* SPLIT HEADER HERO */

.header-hero-split {
    margin: 0;
    padding: 0;
}

.header-hero-split > .uk-grid {
    min-height: inherit;
}

.header-hero-split > .uk-grid > div {
    min-height: inherit;
}

.header-hero-panel {
    min-height: inherit;
    height: 100%;
}

.header-hero-panel--text {
    display: flex;
    align-items: center;
    padding: 3rem;
    box-sizing: border-box;
    background: #f3f1ec;
}

.header-hero-panel--text h1 {
    margin: 0 0 1rem 0;
}

.header-hero-panel--text p {
    margin: 0;
}





/* HERO HEIGHTS */

.hero-height-xs {
    min-height: 20vh;
}

.hero-height-small {
    min-height: 30vh;
}

.hero-height-medium {
    min-height: 40vh;
}

.hero-height-large {
    min-height: 50vh;
}

.hero-height-xl {
    min-height: 60vh;
}

.hero-height-xxl {
    min-height: 75vh;
}

.hero-height-full {
    min-height: 100vh;
}


/* CONTENT PANEL TYPE 01 */

.contactpaneltype01 {
	margin: 8.0rem 4.166% 8.0rem 4.166%;
	padding: 0;
    border-top: #d1ccbd solid 1px;
    border-bottom: #d1ccbd solid 1px;
	}
.contactpaneltype01 ul {
    list-style: none;
    margin: 0 0 0 0.75rem;
    padding: 0 0 1.0rem 0;
    }
.contactpaneltype01 li {
    position: relative;
    padding-left: 2.5rem;
    margin-bottom: 0.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    font-size: 0.95rem;
	line-height: 1.3rem;
    color: #151c1d;
    }
.contactpaneltype01 li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 1.75rem;
    height: 2px;
    background: #cfc493;
    }

.split-card {
    padding: 3rem 5%;
    display: flex;
    flex-direction: column;
    }
.split-cards > div:first-child {
    border-right: 1px solid #d1ccbd;
    }
.split-cards > div:first-child .split-card {
    padding-left: 0;
    }
.split-cards > div:last-child .split-card {
    padding-right: 0;
    }

.seeded-google-map,
#map {
    margin: 2rem 0 0 0;
    padding: 0;
    width: 100%;
    flex: 1 1 auto;
    min-height: 25vh;
}

@media (max-width: 959px) {

    .contactpaneltype01 {
        margin: 0 4.166% 8.0rem 4.166%;
        border-top: none;
	}

    .split-cards > div:first-child .split-card,
    .split-cards > div:last-child .split-card {
        padding-left: 0;
        padding-right: 0;
    }

    .split-cards > div:first-child {
        border-right: none;
    }

    .split-cards > div:first-child {
        border-bottom: 1px solid #d1ccbd;
    }
    .split-card {
        padding: 2.0rem 4.166%;
    }
     #map {
        flex: none;
        height: 50vh;
        min-height: 50vh;
    }
}





/* CONTENT PANEL TYPE 02 */

.contactpaneltype02 {
	margin: 0 4.166% 8.0rem 4.166%;
	padding: 0;
	}
.contactpaneltype02inner {
	background-color: #ffffff;
    padding: 3.5rem 2.083% 0 2.083%;
	}
@media (max-width: 959px) {
    .contactpaneltype02inner {
        padding: 3.5rem 4.166% 0 4.166%;
    }
}
.contactpaneltype02inner ul {
    list-style: none;
    margin: 0 0 0 0.75rem;
    padding: 0 0 1.0rem 0;
    }
.contactpaneltype02inner li {
    position: relative;
    padding-left: 2.5rem;
    margin-bottom: 0.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    font-size: 0.95rem;
	line-height: 1.3rem;
    color: #151c1d;
    }
.contactpaneltype02inner li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 1.75rem;
    height: 2px;
    background: #cfc493;
    }


.process-panel__top {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-bottom: 1px solid #d1ccbd;
    }

.process-step {
    padding: 0 2.0rem 2.0rem 2.0rem;
    min-height: 200px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 20px;

    }

.process-step + .process-step {
    border-left: 1px solid #d1ccbd;
    }

.process-step i {
    font-size: 4.5rem;
    color: #cfc493;
    /*font-weight: 300;*/
    }

.process-step h3 {
    text-align: left;
    font-size: 2rem;
    line-height: 2.5rem;
    color: #151c1d;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    padding: 0;
    }
.process-step h3 a:link, .process-step h3 a:visited {
	color:#151c1d;
	text-decoration: none;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	}
.process-step h3 a:active, .process-step h3 a:hover {
	color:#747237;
	text-decoration: none;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	}


.process-panel__bottom {
    padding: 3rem 0;
    }


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

    .process-panel__top {
        grid-template-columns: repeat(2, 1fr);
        border-bottom: 0;
        }
    .process-step {
        min-height: 190px;
        padding: 2rem 1.5rem;
        border-left: 0;
        border-top: 0;
        }
    .process-step + .process-step {
        border-left: 0;
        }
    .process-step:nth-child(odd) {
        border-right: 1px solid #d1ccbd;
        }
    .process-step:nth-child(1),
    .process-step:nth-child(2) {
        border-bottom: 1px solid #d1ccbd;
        }
    .process-step i {
        font-size: 3.75rem;
        }

}

@media only screen and (max-width: 599px) {
    .process-step h3 {
    	text-align: left;
    	font-size: 1.2rem;
    	line-height: 2.0rem;
    	color: #151c1d;
    	font-family: "Plus Jakarta Sans", sans-serif;
    	font-weight: 400;
    	font-style: normal;
    	margin: 0;
    	padding: 0;
        text-align: center;
    }

    .process-step {
    	align-items: center;
    	min-height: 120px;
    	padding: 1.5rem 1rem;
    }

    .process-step i {
    	font-size: 2.75rem;
    }

    .contactpaneltype02inner {
    	padding: 1.5rem 4.166% 0 4.166%;
    }

}


/* INITIAL STATE */

.process-step i {
    opacity: 0;
    transform: translateY(1rem);
}

/* ACTIVE STATE */

.process-step.in-view i {
    animation: processIconIn 2s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

/* stagger sequence */

.process-step.in-view:nth-child(1) i { animation-delay: 0.2s; }
.process-step.in-view:nth-child(2) i { animation-delay: 0.5s; }
.process-step.in-view:nth-child(3) i { animation-delay: 0.8s; }
.process-step.in-view:nth-child(4) i { animation-delay: 1.1s; }

@keyframes processIconIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* accessibility */

@media (prefers-reduced-motion: reduce) {
    .process-step i {
        opacity: 1;
        transform: none;
        animation: none;
    }
}









/* CONTENT PANEL TYPE 03 */

.contactpaneltype03 {
    margin: 0 4.166% 8.0rem 4.166%;
    padding: 0;
    border-top: 1px solid #d1ccbd;
    border-bottom: 1px solid #d1ccbd;
    }

.contactpaneltype03 ul {
    list-style: none;
    margin: 0 0 0 0.75rem;
    padding: 0 0 1.0rem 0;
    }

.contactpaneltype03 li {
    position: relative;
    padding-left: 2.5rem;
    margin-bottom: 0.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    font-size: 0.95rem;
    line-height: 1.3rem;
    color: #151c1d;
    }

.contactpaneltype03 li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 1.75rem;
    height: 2px;
    background: #cfc493;
    }




/* CASE STUDY SPLIT PANEL */

.split-cards--case {
    padding: 3rem 4.166%;
    box-sizing: border-box;
}

.split-cards--case > div:first-child {
    border-right: 1px solid #d1ccbd;
}

.split-cards--case .split-card,
.split-cards--case .split-card--case {
    height: 100%;
    padding: 3rem;
    box-sizing: border-box;
}

.split-card--case {
    position: relative;
    overflow: hidden;
    background: #e6e3db;
    display: flex;
    flex-direction: column;
}

.corner-arrow {
    position: absolute;
    top: 0;
    right: 0;
    width: 8rem;
    height: auto;
    pointer-events: none;
}






/* CASE STUDY SLIDER */

.case-slider {
    position: relative;
    flex: 1;
    display: flex;
    flex-direction: column;
    }

.case-slider .uk-slider-items {
    margin: 0;
    flex: 1;
    }

.case-slider .uk-slider-items > div {
    width: 100%;
    }

.case-slide {
    position: relative;
    min-height: 100%;
    padding-bottom: 5rem;
    box-sizing: border-box;
    }

.case-slide__button {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 20;
    }

.slidercontrollerright {
    position: absolute;
    right: 0;
    bottom: 0;
    display: flex;
    gap: 1.5rem;
    z-index: 20;
    }

.slidercontrollerright i {
    font-size: 2.25rem;
    line-height: 1;
    }

.slidercontrollerright a {
    color: #151c1d;
    transition: color 0.25s ease;
    }

.slidercontrollerright a:hover {
    color: #747237 !important;
    }

@media (max-width: 959px) {

    .split-cards--case {
        padding: 2rem 4.166%;
    }
    .split-cards--case > div:first-child {
        border-right: none;
        border-bottom: 1px solid #d1ccbd;
    }
    .split-cards--case .split-card,
    .split-cards--case .split-card--case {
        padding: 2rem;
    }
    .corner-arrow {
        width: 6rem;
    }
    .case-slide {
        padding-bottom: 5rem;
    }
    .morepadding {
	    margin: 0;
	    padding: 8.0rem 0;
	}
}


.slidercontrollerleft {
    position: relative;
    display: flex;
    gap: 1.5rem;
    z-index: 20;
    padding: 0 0 2.0rem 0;
    }

.slidercontrollerleft i {
    font-size: 2.25rem;
    line-height: 1;
    }

.slidercontrollerleft a {
    color: #151c1d;
    transition: color 0.25s ease;
    }

.slidercontrollerleft a:hover {
    color: #747237 !important;
    }







/* SLIDER LOGOS */

.sliderlogo-langcliffe {
    padding: 1.0rem 0 1.5rem 0;
    margin: 0;
    max-width: 250px;
    height: auto;
    }
.sliderlogo-dcd {
    padding: 1.0rem 0 1.5rem 0;
    margin: 0;
    max-width: 280px;
    height: auto;
    }
.sliderlogo-sme {
    padding: 1.0rem 0 1.5rem 0;
    margin: 0;
    max-width: 260px;
    height: auto;
    }






/* CONTENT PANEL TYPE 04 */

.contactpaneltype04 {
    margin: 0 4.166% 4rem 4.166%;
    padding: 0 0 4rem 0;
    border-bottom: 1px solid #d1ccbd;
}

.contactpaneltype04b {
    margin: 4rem 4.166%;
    padding: 4rem 0;
    border-top: 1px solid #d1ccbd;
    border-bottom: 1px solid #d1ccbd;
}

.contactpaneltype04c {
    margin: 4rem 4.166%;
    padding: 6rem 0;
    border-top: 1px solid #d1ccbd;
}

.contactpaneltype04 ul,
.contactpaneltype04b ul,
.contactpaneltype04c ul {
    list-style: none;
    margin: 0 0 0 0.75rem;
    padding: 0 0 1.0rem 0;
}

.contactpaneltype04 li,
.contactpaneltype04b li,
.contactpaneltype04c li {
    position: relative;
    padding-left: 2.5rem;
    margin-bottom: 0.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    font-size: 0.95rem;
    line-height: 1.3rem;
    color: #151c1d;
}
.contactpaneltype04 li::before,
.contactpaneltype04b li::before,
.contactpaneltype04c li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 1.75rem;
    height: 2px;
    background: #cfc493;
    }

.contactpaneltype04b.hide-before-underline {
    border-top: none;
    padding-top: 0;
}

.contactpaneltype04b.hide-after-underline {
    border-bottom: none;
    padding-bottom: 0;
}

.extrapadding {
	margin: 0;
	padding: 0 0 4.0rem 0;
	}

.case-study-button-holder {
    height: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    }
@media (max-width: 959px) {

    .case-study-button-holder {
        justify-content: flex-start;
        margin-top: 1.0rem;
    }

}







/* CONTENT PANEL TYPE 05 */

.contactpaneltype05 {
	margin: 0 4.166% 8.0rem 4.166%;
	padding: 3.0rem 0 0 0;
    border-bottom: 1px solid #d1ccbd;
	}

.quarterpanel {
	margin: 0;
	padding: 0 8.333% 3.0rem 2.1rem;
    border-left: 1px solid #d1ccbd;
	}
.quarterpanelstep i {
    font-size: 4.5rem;
    color: #cfc493;
    padding: 0 0 1.5rem 0;
    }

.contactpaneltype05 .uk-width-1-2\@m {
    display: flex;
    flex-direction: column;
    }
.contactpaneltype05 .uk-width-1-2\@m > div:last-child {
    margin-top: auto;
    }

.panel-cta {
    margin-top: auto;
}

@media (max-width: 959px) {
    .quarterpanelstep i {
        font-size: 3.75rem;
    }
    .quarterpanel {
	    padding: 3.0rem 8.333% 6.0rem 0;
        border-left: none;
	}
}


/* INITIAL STATE */

.quarterpanelstep i {
    opacity: 0;
    transform: translateY(1rem);
}

/* ACTIVE STATE */

.quarterpanel.in-view .quarterpanelstep i {
    animation: quarterPanelIconIn 2s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

/* stagger */

.quarterpanel.in-view:nth-child(1) .quarterpanelstep i {
    animation-delay: 0.2s;
}

.quarterpanel.in-view:nth-child(2) .quarterpanelstep i {
    animation-delay: 0.5s;
}

@keyframes quarterPanelIconIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* accessibility */

@media (prefers-reduced-motion: reduce) {

    .quarterpanelstep i {
        opacity: 1;
        transform: none;
        animation: none;
    }

}







/* CONTENT PANEL TYPE 06 */

.contactpaneltype06 {
    margin: 0;
    padding: 6rem 20%;
    background-color: #e4dfc5;
    }

.contactpaneltype06inner {
    position: relative;
    margin: 0 auto;
    padding: 3.5rem 5rem;
    text-align: center;
    }

.corner-angle {
    position: absolute;
    width: 1.8rem;
    height: auto;
    pointer-events: none;
    }

.corner-angle--top-left {
    top: 0;
    left: 0;
    }
.corner-angle--top-right {
    top: 0;
    right: 0;
    }
.corner-angle--bottom-left {
    bottom: 0;
    left: 0;
    }
.corner-angle--bottom-right {
    bottom: 0;
    right: 0;
    }

.contactpaneltype06button {
    margin: 2.5rem auto 0;
    padding: 0;
    text-align: center;
    }

.contactpaneltype06buttons {
    margin: 2.5rem auto 0;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
    }

.contactpaneltype06inner h2 {
    text-align: center;
    font-size: 2.2rem;
    line-height: 2.9rem;
    color: #151c1d;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 400;
    margin: 0;
    padding: 0 0 2rem 0;
    }

.contactpaneltype06inner h2 span {
    border-bottom: 4px solid #cfc493;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    }

.contactpaneltype06inner p {
    max-width: 34rem;
    margin: 0 auto 1.1rem auto;
    text-align: center;
    color: #151c1d;
    font-size: 0.95rem;
    line-height: 1.3rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 200;
    }

@media (max-width: 960px) {
    .contactpaneltype06 {
        padding: 4rem 4.166%;
    }

    .contactpaneltype06inner {
        padding: 3rem 2rem;
    }

    .corner-angle {
        width: 1.8rem;
    }
}






/* CONTENT PANEL TYPE 07 - FOOTER */

.contactpaneltype07 {
	margin: 6.0rem 0 0 0;
	padding: 0 4.166% 6.0rem 4.166%;
	}

.footerlogo {
	margin: 0;
	padding: 0;
	}
.footerlogo img {
    width: clamp(160px, 18vw, 190px);
    }


.contactpaneltype07 p {
	margin: 0 0 1.1rem 0;
	text-align: left;
	color: #151c1d;
	font-size: 0.85rem;
	line-height: 1.2rem;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
    padding: 0;
    margin: 0;
	}
.contactpaneltype07 ul {
    list-style: none;
    margin: 0;
    padding: 0 0 1.0rem 0;
    }
.contactpaneltype07 li {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    font-size: 0.85rem;
	line-height: 1.2rem;
    color: #151c1d;
    }
.contactpaneltype07 li a {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    text-decoration: none;
    color: #151c1d;
    }
.contactpaneltype07 li a:hover {
    color: #747237;
    }


.footercontactintro {
    margin: 1.5rem 0 0 0;
    padding: 0;
    }
.footercontact ul {
    list-style: none;
    margin: 0;
    padding: 0;
    }
.footercontact li {
    font-family: "IBM Plex Mono", monospace;
    font-weight: 500 !important;
    font-size: 0.9rem;
	line-height: 1.5rem;
    color: #747237;
    }
.footercontact li i {
    font-size: 1.1rem;
    padding: 0 0.25rem 0 0;
    color: #747237;
    }
.footercontact li a {
    font-family: "IBM Plex Mono", monospace;
    font-weight: 500 !important;
    text-decoration: none;
    color: #747237;
    }
.footercontact li a:hover {
    color: #151c1d;
    }

.contactholderlefttop, .contactholderright1top, .contactholderright2top {
	min-height: 10.0rem;
	}
.contactholderleftbot, .contactholderright1bot, .contactholderright2bot {
	margin: 0;
	padding: 0;
	}
@media (max-width: 959px) {
    .contactholderlefttop, .contactholderright1top, .contactholderright2top {
	min-height: 5.0rem;
	}
}



.quarterpanelfooter {
	margin: 0;
	padding: 0 8.333% 0 2.1rem;
    border-left: 1px solid #d1ccbd;
	}
@media (max-width: 959px) {
    .quarterpanelfooter {
	    margin: 4.0rem 0 0 0;
        padding: 0 8.333% 0 1.0rem;
	}
}





/* CONTENT PANEL TYPE 08 */

.contactpaneltype08 {
	margin: 0 4.166% 4.0rem 4.166%;
	padding: 0 0 4.0rem 0;
	}






/* CONTENT PANEL TYPE 09 */

.contactpaneltype09 {
	margin: 8.0rem 4.166% 3.0rem 4.166%;
	padding: 3.0rem 0 0 0;
    border-top: #d1ccbd solid 1px;
    border-bottom: #d1ccbd solid 1px;
	}

    .contactpaneltype09 .intro {
    	max-width: 50%;
        margin: 0 0 2.0rem 0;
    	}
    @media (max-width: 959px) {
        .contactpaneltype09 .intro {
    	    max-width: 100%;
    	}
    }

.contactpaneltype09 .intro p {
	text-align: left;
	font-size: 1.5rem;
	line-height: 1.8rem;
	color: #151c1d;
	font-family: "Plus Jakarta Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	margin: 0;
	padding: 0 0 1.2rem 0;
}

.imageholder {
	padding: 0;
	margin: 0;
    overflow: hidden !important;
	}
.imageholder img {
    display: block;
    width: 100%;
    height: auto;
    }


.insightinfoholdersmall {
	margin: 0;
	padding: 1.0rem 0 0 0;
	}
.insightinfoholdersmall h3 {
	text-align: left;
	font-size: 1.5rem;
	line-height: 1.8rem;
	color: #151c1d;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	margin: 0 0 1.2rem 0;
	padding: 0;
	}
.insightinfoholdersmall h3 a:link, .insightinfoholdersmall h3 a:visited {
	color:#151c1d;
	text-decoration: none;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
	}
.insightinfoholdersmall h3 a:active, .insightinfoholdersmall h3 a:hover {
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
    color: #747237;
    text-decoration: none;
	}


.insightinfoholdersmall p {
	text-align: left;
	color: #151c1d;
	font-size: 0.95rem;
	line-height: 1.3rem;
	font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
	}

.insightdurationholder p {
	margin: 0 0 3.0rem 0;
    padding: 2.0rem 0 0 0;
	text-align: left;
	color: #a69f89;
	font-size: 0.75rem;
	line-height: 0.75rem;
	font-family: "IBM Plex Mono", monospace !important;
    font-weight: 400 !important;
    font-style: normal;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
	}


@media (max-width: 639px) {
    .contactpaneltype09 {
        margin: 8.0rem 4.166% 4.0rem 4.166%;
        border-bottom: none;
        }
}


/* Desktop/tablet: normal grid */

.insights-article-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    }

.insight-slide {
    width: auto;
    }


/* Mobile: off-canvas horizontal slider */

@media (max-width: 639px) {

    .insights-mobile-slider .uk-slider-container {
        overflow: visible;
    }

    .insights-mobile-slider .uk-slider-items {
        display: flex;
    }

    .insight-slide {
        width: 86%;
        padding-right: 1.25rem;
        box-sizing: border-box;
    }

}



@media (max-width: 639px) {

    .slider-progress {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 12px;
        cursor: pointer;
    }

    .slider-progress::before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 4px;
        height: 4px;
        background: rgba(209, 204, 189, 0.6);
    }

    .slider-progress-bar {
        position: absolute;
        top: 4px;
        left: 0;
        height: 4px;
        background: #cfc493;
        transition: left 0.2s ease;
    }

}





/* CONTENT PANEL TYPE 10 */

.contactpaneltype10 {
	margin: 4.0rem 4.166% 8.0rem 4.166%;
	padding: 0;
	}
.contactpaneltype10inner {
	background-color: #ffffff;
    padding: 2.0rem 2.083%;
	}
@media (max-width: 959px) {
    .contactpaneltype10 {
	margin: 4.0rem 4.166% 0 4.166%;
	padding: 0;
	}
    .contactpaneltype10inner {
        padding: 2.75rem 4.166%;
    }
}




/* FEATURE GRID */

.feature-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    }
.feature-panel {
    padding: 2.0rem;
    box-sizing: border-box;
    }
.feature-panel:not(:nth-child(3n)) {
    border-right: 1px solid #dad7cb;
    }
.feature-panel:nth-child(-n+3) {
    border-bottom: 1px solid #dad7cb;
    }

.feature-panel i {
    display: block;
    margin-bottom: 1.5rem;
    font-size: 4.5rem;
    line-height: 1;
    color: #cfc493;
    }

.feature-panel--quote {
    position: relative;
    overflow: hidden;
    background: #747237;
    display: flex;
    flex-direction: column;
    justify-content: center;
    }
.feature-panel--quote blockquote {
    margin: 0 0 1rem;
    font-family: "Cormorant Garamond", serif;
    font-style: italic;
    font-weight: 400;
    font-size: clamp(1.3rem, 2.3vw, 1.6rem);
    line-height: 1.15;
    color: #cfc493;
    }

.feature-panel__client {
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 0.8rem !important;
    line-height: 1.1rem !important;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
    color: #f3f1ec !important;
    }

.feature-panel__corner {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 8rem;
    height: auto;
    pointer-events: none;
    }

@media (max-width: 959px) {

    .feature-grid {
        grid-template-columns: 1fr;
    }

    .feature-panel {
        border-right: none !important;
        border-bottom: 1px solid #dad7cb !important;
        padding: 1.5rem 1rem;
    }

    .feature-panel:last-child {
        border-bottom: none !important;
    }

    .feature-panel i {
        font-size: 3.5rem;
    }

    .feature-panel--quote blockquote {
        font-size: 1.35rem;
    }

}

.feature-panel i {
    opacity: 0;
    transform: translateY(1rem);
}

.feature-panel.in-view i {
    animation: featureIconIn 2s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
.feature-panel.in-view:nth-child(1) i { animation-delay: 0.2s; }
.feature-panel.in-view:nth-child(2) i { animation-delay: 0.5s; }
.feature-panel.in-view:nth-child(3) i { animation-delay: 0.8s; }
.feature-panel.in-view:nth-child(4) i { animation-delay: 1.1s; }
.feature-panel.in-view:nth-child(5) i { animation-delay: 1.4s; }

@keyframes featureIconIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@media (prefers-reduced-motion: reduce) {
    .feature-panel i {
        opacity: 1;
        transform: none;
        animation: none;
    }
}




/* FEATURE GRID ALT */

.feature-grid-alt {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.feature-panel-alt {
    padding: 2rem;
    box-sizing: border-box;
    border-bottom: 1px solid #dad7cb;
}

.feature-panel-alt__button {
    margin-top: 1rem;
}

.feature-panel-alt__content .buttonshollow {
    margin-top: 1.5rem;
}


/* FEATURE PANEL LISTS */

.feature-panel-alt__content ul {
    list-style: none;
    margin: 0 0 0 0.75rem;
    padding: 0 0 1rem 0;
}

.feature-panel-alt__content li {
    position: relative;
    padding-left: 2.5rem;
    margin-bottom: 0.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    font-size: 0.95rem;
    line-height: 1.3rem;
    color: #151c1d;
}

.feature-panel-alt__content li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 1.75rem;
    height: 2px;
    background: #cfc493;
}


/* HIDDEN CONTENT */

.hiddencontent {
    margin-top: 1.5rem;
}

.hiddencontent p:last-child {
    margin-bottom: 0;
}


/* DESKTOP GRID BORDERS */

@media (min-width: 960px) {

    .feature-panel-alt:nth-child(odd) {
        border-right: 1px solid #dad7cb;
    }

    /* If the final panel is odd, make it span both columns */
    .feature-grid-alt > .feature-panel-alt:last-child:nth-child(odd) {
        grid-column: 1 / -1;
        border-right: none;
        border-bottom: none;
    }

    /* If the final panel is even, remove bottom border from the last two */
    .feature-grid-alt > .feature-panel-alt:last-child:nth-child(even),
    .feature-grid-alt > .feature-panel-alt:nth-last-child(2):nth-child(odd) {
        border-bottom: none;
    }

    /* If the final panel is odd/full-width, keep the previous row borders */
    .feature-grid-alt > .feature-panel-alt:nth-last-child(2):nth-child(even),
    .feature-grid-alt > .feature-panel-alt:nth-last-child(3):nth-child(odd) {
        border-bottom: 1px solid #dad7cb;
    }

}


/* STANDALONE FEATURE ICONS */

.feature-panel-alt > i {
    display: block;
    margin-bottom: 1.5rem;
    font-size: 4.5rem;
    line-height: 1;
    color: #cfc493;
    opacity: 0;
    transform: translateY(1rem);
}

.feature-panel-alt.in-view > i {
    animation: featureIconInAlt 2s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}


/* ICON STAGGER */

.feature-panel-alt.in-view:nth-child(1) > i { animation-delay: 0.2s; }
.feature-panel-alt.in-view:nth-child(2) > i { animation-delay: 0.5s; }
.feature-panel-alt.in-view:nth-child(3) > i { animation-delay: 0.8s; }
.feature-panel-alt.in-view:nth-child(4) > i { animation-delay: 1.1s; }
.feature-panel-alt.in-view:nth-child(5) > i { animation-delay: 1.4s; }
.feature-panel-alt.in-view:nth-child(6) > i { animation-delay: 1.7s; }

@keyframes featureIconInAlt {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* QUOTE PANEL */

.feature-panel-alt--quote {
    position: relative;
    overflow: hidden;
    background: #747237;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.feature-panel-alt--quote blockquote {
    margin: 0 0 1rem;
    font-family: "Cormorant Garamond", serif;
    font-style: italic;
    font-weight: 400;
    font-size: clamp(1.3rem, 2.3vw, 1.6rem);
    line-height: 1.15;
    color: #cfc493;
}

.feature-panel-alt__client {
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 0.8rem !important;
    line-height: 1.1rem !important;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
    color: #f3f1ec !important;
}

.feature-panel-alt__corner {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 8rem;
    height: auto;
    pointer-events: none;
}


/* PROMO PANEL */

.feature-panel-alt--promo {
    background: #ebe7d2;
    padding: 3rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.feature-panel-alt--promo h2 {
    text-align: left;
    font-size: 2.2rem;
    line-height: 2.9rem;
    color: #151c1d;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 400;
    margin: 0;
    padding: 0 0 2rem 0;
}

.feature-panel-alt--promo h2 span {
    border-bottom: 4px solid #cfc493;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.feature-panel-alt--promo p {
    margin: 0 0 1.1rem 0;
    text-align: left;
    color: #151c1d;
    font-size: 0.95rem;
    line-height: 1.3rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 200;
}

.feature-panel-alt--promo ul {
    list-style: none;
    margin: 0 0 0 0.75rem;
    padding: 0 0 1rem 0;
}

.feature-panel-alt--promo li {
    position: relative;
    padding-left: 2.5rem;
    margin-bottom: 0.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500;
    font-size: 0.95rem;
    line-height: 1.3rem;
    color: #151c1d;
}

.feature-panel-alt--promo li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 1.75rem;
    height: 2px;
    background: #cfc493;
}

.feature-panel-alt--promo .feature-panel-alt__button {
    margin-top: 1rem;
}


/* MOBILE */

@media (max-width: 959px) {

    .feature-grid-alt {
        grid-template-columns: 1fr;
    }

    .feature-panel-alt {
        border-right: none !important;
        border-bottom: 1px solid #dad7cb !important;
        padding: 1.5rem;
    }

    .feature-panel-alt:last-child {
        border-bottom: none !important;
    }

    .feature-panel-alt > i {
        font-size: 3.5rem;
    }

    .feature-panel-alt--quote blockquote {
        font-size: 1.35rem;
    }

}


/* ACCESSIBILITY */

@media (prefers-reduced-motion: reduce) {

    .feature-panel-alt > i {
        opacity: 1;
        transform: none;
        animation: none;
    }

}










/* CONTENT PANEL TYPE 11 - STANDARD PANEL BAND ADDITIONAL PADDING, NO Top/Bot Borders */

.contactpaneltype11 {
	margin: 0 4.166% ;
	padding: 8.0rem 0 0 0;
	}






/* CONTENT PANEL TYPE 12 - STANDARD PANEL BAND */

.contactpaneltype12 {
    margin: 4rem 4.166% 0 4.166%;
    padding: 4rem 0;
    border-top: 1px solid #d1ccbd;
    border-bottom: 1px solid #d1ccbd;
    }
@media (max-width: 960px) {
    .contactpaneltype12  {
        border-top: none;
        padding: 0 0 4rem 0;
    }
}

.contactpaneltype12 span p {
    font-size: 1.25rem;
	line-height: 1.6rem;
    }

.contactpaneltype12 ul {
    list-style: none;
    margin: 0 0 0 0.75rem;
    padding: 0 0 1.0rem 0;
    }
.contactpaneltype12 li {
    position: relative;
    padding-left: 2.5rem;
    margin-bottom: 0.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    font-size: 0.95rem;
	line-height: 1.3rem;
    color: #151c1d;
    }
.contactpaneltype12 li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 1.75rem;
    height: 2px;
    background: #cfc493;
    }





/* CONTENT PANEL TYPE 13 - ADDITIONAL FOOTER CTA */

.contactpaneltype13 {
    margin: 0 0 6rem 0;
    padding: 4rem 4.166%;
    background-color: #ebe7d2;
    }

.contactpaneltype13 h2 {
    text-align: left;
    font-size: 2.2rem;
    line-height: 2.9rem;
    color: #151c1d;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 400;
    margin: 0;
    padding: 0 0 2rem 0;
    }

.contactpaneltype13 h2 span {
    border-bottom: 4px solid #cfc493;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    }

.contactpaneltype13 p {
    margin: 0 auto 1.1rem auto;
    text-align: left;
    color: #151c1d;
    font-size: 0.95rem;
    line-height: 1.3rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 200;
    }

.contactpaneltype13 ul {
    list-style: none;
    margin: 0 0 0 0.75rem;
    padding: 0 0 1.0rem 0;
    }
.contactpaneltype13 li {
    position: relative;
    padding-left: 2.5rem;
    margin-bottom: 0.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    font-size: 0.95rem;
	line-height: 1.3rem;
    color: #151c1d;
    }
.contactpaneltype13 li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 1.75rem;
    height: 2px;
    background: #cfc493;
    }

@media (max-width: 960px) {
    .contactpaneltype13 {
        padding: 4rem 4.166%;
    }
}





/* CONTENT PANEL TYPE 14 - TEAM */

.contactpaneltype14 {
    margin: 0 4.166%;
    padding: 8rem 0 0 0;
    border-top: 1px solid #d1ccbd;
}

@media (max-width: 960px) {
    .contactpaneltype14 {
        border-top: none;
        padding: 8rem 0;
        border-bottom: 1px solid #d1ccbd;
    }
}


/* TEAM HEADER */

.team-profile-header {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas:
        "title image"
        "content image";
    column-gap: 3rem;
    row-gap: 2rem;
    margin-bottom: 2.5rem;
}

.team-profile-header h2 {
    grid-area: title;
    margin: 0;
}

.team-profile-content {
    grid-area: content;
}

.team-photo {
    grid-area: image;
    width: clamp(220px, 22vw, 300px);
    max-width: 300px;
    height: auto;
    padding: 0;
}

/* CONTACT LINKS */

.team-profile-contact {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.team-profile-contact a {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: #747237;
    text-decoration: none;
    font-family: "IBM Plex Mono", monospace;
    font-size: 0.85rem;
    line-height: 1;
    letter-spacing: 0.025rem;
    font-weight: 500;
    transition: color 0.25s ease;
}

.team-profile-contact a:hover {
    color: #151c1d;
    text-decoration: none;
}

.team-profile-contact i {
    font-size: 1.1rem;
}

/* PROFILE QUOTE */

.team-profile-quote {
    margin: 2rem 0 0 0;
    padding: 0 0 0 1.5rem;
    border-left: 4px solid #cfc493;

    color: #747237;

    font-family: "IBM Plex Mono", monospace;
    font-weight: 400;
    font-size: clamp(1.4rem, 2vw, 2rem);
    line-height: 1.4;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
}


/* TEAM TEXT */

.team-profile-text {
    clear: both;
}


/* TEAM BULLET LIST */

.contactpaneltype14 ul {
    list-style: none;
    margin: 0 0 0 0.75rem;
    padding: 0 0 1rem 0;
}

.contactpaneltype14 li {
    position: relative;
    padding-left: 2.5rem;
    margin-bottom: 0.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    font-size: 0.95rem;
    line-height: 1.3rem;
    color: #151c1d;
}

.contactpaneltype14 li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 1.75rem;
    height: 2px;
    background: #cfc493;
}


@media (max-width: 959px) {

    .team-profile-header {
        grid-template-columns: 1fr;
        grid-template-areas:
            "title"
            "image"
            "content";
        row-gap: 2rem;
    }

    .team-photo {
        width: clamp(200px, 55vw, 260px);
        max-width: 260px;
    }

    .team-profile-contact {
        margin-bottom: 1rem;
    }

}


.team-profile-contact {
    display: flex;
    align-items: center;
    gap: 1.0rem;
    flex-wrap: wrap;
    }

.team-profile-contact a {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: #747237;
    text-decoration: none;
    font-family: "IBM Plex Mono", monospace;
    font-weight: 500 !important;
    font-size: 1.0rem;
    line-height: 1;
    letter-spacing: 0.025rem;
    transition: color 0.25s ease;
    }

.team-profile-contact a:hover {
    color: #151c1d;
    text-decoration: none;
    }

.team-profile-contact i {
    font-size: 1.5rem;
    }

.team-profile-contact span {
    color: #cfc493;
    font-weight: 400;
    }



.team-profile-quote {
    margin: 2.5rem 0 0 0;
    padding-left: 1.5rem;
    border-left: 4px solid #cfc493;
    color: #747237;
    font-family: "IBM Plex Mono", monospace;
    font-weight: 300 !important;
    font-size: clamp(1.4rem, 2vw, 1.8rem);
    line-height: 1.25;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
}



/* CONTENT PANEL TYPE 15 - ACCORDION */

.contactpaneltype15 {
    margin: 0 4.166%;
    padding: 0;
    }
.contactpaneltype15 .accordion-split {
    list-style: none;
    margin: 0;
    padding: 0;
    }
.contactpaneltype15 .accordion-split > li {
    position: relative;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #d1ccbd;
    }
.contactpaneltype15 .accordion-split > li::before {
    content: none;
    }
.contactpaneltype15 .accordion-split > li:last-child {
    border-bottom: none;
    }
@media (max-width: 959px) {
    .contactpaneltype15 .accordion-split > li:last-child {
        border-bottom: 1px solid #d1ccbd ;
    }
}
.contactpaneltype15 .uk-accordion-title {
    position: relative;
    display: grid;
    grid-template-columns: 3rem 1fr;
    align-items: center;
    padding: 1.2rem 0;
    text-decoration: none;
    }
.contactpaneltype15 .uk-accordion-title::before {
    display: none;
    }



/* accordion icon */

.contactpaneltype15 .accordion-icon {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.contactpaneltype15 .accordion-icon i {
    display: inline-block;

    color: #151c1d;
    font-size: 1.4rem;
    line-height: 1;

    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

/* rotate when open */

.contactpaneltype15 .uk-open .accordion-icon i {
    transform: rotate(180deg);
}



.contactpaneltype15 .accordion-title-text {
    text-align: left;
    font-size: 1.5rem;
    line-height: 1.8rem;
    color: #151c1d;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    padding: 0;
    }


.contactpaneltype15 .uk-accordion-content {
    margin: 0;
    padding: 0 0 2rem 0;
    }
.contactpaneltype15 .accordion-content-copy {
    width: 50%;
    /*margin-left: 50%;*/
    margin-left: 3.1rem;
    }



.contactpaneltype15 .accordion-content-copy p {
    margin: 0 0 1.1rem 0;
    text-align: left;
    color: #151c1d;
    font-size: 0.95rem;
    line-height: 1.3rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 200;
    }

.contactpaneltype15 .accordion-content-copy ul {
    list-style: none;
    margin: 0 0 0 0.75rem;
    padding: 0 0 1rem 0;
    }
.contactpaneltype15 .accordion-content-copy li {
    position: relative;
    padding-left: 2.5rem;
    margin-bottom: 0.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-weight: 500 !important;
    font-size: 0.95rem;
    line-height: 1.3rem;
    color: #151c1d;
    }
.contactpaneltype15 .accordion-content-copy li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 1.75rem;
    height: 2px;
    background: #cfc493;
    }

@media (max-width: 959px) {
    .contactpaneltype15 .uk-accordion-title {
        grid-template-columns: 2.5rem 1fr;
    }
    .contactpaneltype15 .accordion-content-copy {
        width: auto;
        margin-left: 2.5rem;
    }
}





/* CONTACT COMPONENTS */

.contactinfo {
    margin: 1.5rem 0 0 0;
    padding: 0;
    }
ul.contactinfo {
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
}

ul.contactinfo li {
    padding-left: 0 !important;
    margin-bottom: 1rem;
    font-family: "IBM Plex Mono", monospace;
    font-weight: 500 !important;
    font-size: 1.25rem;
    line-height: 1.75rem;
    color: #747237;
}

ul.contactinfo li::before {
    display: none !important;
    content: none !important;
}

ul.contactinfo li a {
    font-family: "IBM Plex Mono", monospace;
    font-weight: 500 !important;
    text-decoration: none;
    color: #747237;
}

ul.contactinfo li a:hover {
    color: #151c1d;
}


#contactform {
	padding: 1.0rem 0 0 0;
	margin: 0;
	}
@media (max-width: 960px) {
    #contactform  {
        padding: 0;
    }
}

.contactintrotxt {
    margin: 0;
	padding: 0;
    }
@media screen and (max-width: 960px) {
  .contactintrotxt {
     padding: 0 0 4.0rem 0;
  }
}

#contactform .buttonsnormal {
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.55rem 1.5rem;
    margin: 2.5rem 0 0 0;
    border-radius: 999px;
    background: linear-gradient(to right, #cfc493 0%, #747237 100%);
    font-family: "IBM Plex Mono", monospace !important;
    font-weight: 400 !important;
    color: var(--cream) !important;
    font-size: 0.8rem;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
    text-decoration: none;
    z-index: 0;
    border: 0 !important;
    cursor: pointer;
}
#contactform .buttonsnormal::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--olive);
    opacity: 0;
    transition: opacity 0.35s ease;
    border-radius: inherit;
    z-index: -1;
}

#contactform .buttonsnormal:hover::after {
    opacity: 1;
}




#contactform .uk-input-contact-form {
	font-family: "IBM Plex Mono", monospace !important;
    font-size: 0.95rem !important;
    line-height: 1.25rem !important;
    font-weight: 400;
    text-transform: uppercase;
	padding: 1.75rem 0;
	text-decoration:none;
	color: #161c1e;
	background-color: transparent;
	margin: 0 0 -15px 0;
	border: none !important;
    border-bottom: 1px solid #d1ccbd !important;
	}

#contactform .uk-input-contact-form-first {
	font-family: "IBM Plex Mono", monospace !important;
    font-size: 0.95rem !important;
    line-height: 1.25rem !important;
    font-weight: 400;
    text-transform: uppercase;
	padding: 1.75rem 0;
	text-decoration:none;
	color: #161c1e;
	background-color: transparent;
	margin: 0 0 -15px 0;
	border: none !important;
    border-top: 1px solid #d1ccbd !important;
    border-bottom: 1px solid #d1ccbd !important;
	}
/* Hover + Focus state */
#contactform .uk-input-contact-form:hover,
#contactform .uk-input-contact-form:focus,
#contactform .uk-input-contact-form-first:hover,
#contactform .uk-input-contact-form-first:focus {
    color: #747237;
    border-bottom: 1px solid #747237 !important;
    outline: none;
}

/* Only for the last field (because it has bottom border) */
#contactform .uk-input-contact-form-first:hover,
#contactform .uk-input-contact-form-first:focus {
    border-bottom: 1px solid #747237 !important;
}

/* Default text colour (input + textarea) */
#contactform input.uk-input.uk-input-contact-form,
#contactform input.uk-input.uk-input-contact-form-first,
#contactform textarea.uk-textarea.uk-input-contact-form {
  color: #161c1e !important;
  -webkit-text-fill-color: #161c1e; /* Safari/Chrome autofill edge cases */
}

/* Default placeholder colour */
#contactform input.uk-input.uk-input-contact-form::placeholder,
#contactform input.uk-input.uk-input-contact-form-first::placeholder,
#contactform textarea.uk-textarea.uk-input-contact-form::placeholder {
  color: #161c1e !important;
  opacity: 1; /* Firefox */
}

/* Hover + Focus = white text + white placeholder + white underline */
#contactform input.uk-input.uk-input-contact-form:hover,
#contactform input.uk-input.uk-input-contact-form:focus,
#contactform input.uk-input.uk-input-contact-form-first:hover,
#contactform input.uk-input.uk-input-contact-form-first:focus,
#contactform textarea.uk-textarea.uk-input-contact-form:hover,
#contactform textarea.uk-textarea.uk-input-contact-form:focus {
  color: #747237 !important;
  -webkit-text-fill-color: #747237;
  border-bottom-color: #747237 !important;
  outline: none;
}

#contactform input.uk-input.uk-input-contact-form:hover::placeholder,
#contactform input.uk-input.uk-input-contact-form:focus::placeholder,
#contactform input.uk-input.uk-input-contact-form-first:hover::placeholder,
#contactform input.uk-input.uk-input-contact-form-first:focus::placeholder,
#contactform textarea.uk-textarea.uk-input-contact-form:hover::placeholder,
#contactform textarea.uk-textarea.uk-input-contact-form:focus::placeholder {
  color: #747237 !important;
}

/* If field contains text (not placeholder shown) */
#contactform input.uk-input:not(:placeholder-shown),
#contactform textarea.uk-textarea:not(:placeholder-shown) {
    color: #747237 !important;
    -webkit-text-fill-color: #747237;
    border-bottom-color: #747237 !important;
}







/* CONTENT PANEL THE TEAM */

.contentpaneltheteam {
    margin: 4rem 4.166%;
    padding: 4rem 0;
    border-top: 1px solid #d1ccbd;
    }


.team-profile-grid {
    align-items: flex-start;
}

.team-photo-column,
.team-quote-column,
.team-profile-content {
    align-self: flex-start;
}



.teamphoto {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    }
.teamphoto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    }


.teamquoteholder {
    padding-top: 0.4rem;
}
.teamquote {
    text-align: left;
    font-size: 1.05rem;
    line-height: 1.45rem;
    color: #161c1e;
    font-family: "IBM Plex Mono", monospace;
    font-weight: 400;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
    }
.teamquote-mark {
    display: block;
    font-size: 3.0rem;
    color: #161c1e;
    margin-left: -0.4rem;
    }
.teamquote-text {
    display: block;
    margin: 0.25rem 0;
    }


.teamcontent {
    height: 100%;
    }
.teamsignature img {
    margin: 0;
    padding: 0;
    max-width: 150px;
    }

@media (max-width: 959px) {
    .teamquoteholder {
        align-items: center;
    }
    .teamquote {
        font-size: 0.95rem;
        line-height: 1.4rem;
    }
}






/* BUTTONS COMPONENTS */

.buttonsnormal {
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.15rem 1.5rem;
    margin: 1.5rem 0 0 0;
    border-radius: 999px;
    background: linear-gradient(to right, #cfc493 0%, #747237 100%);
    font-family: "IBM Plex Mono", monospace !important;
    font-weight: 400 !important;
    color: var(--cream) !important;
    font-size: 0.8rem;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
    text-decoration: none;
    z-index: 0;
    }
.buttonsnormal::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--olive);
    opacity: 0;
    transition: opacity 0.35s ease;
    border-radius: inherit;
    z-index: -1;
    }
.buttonsnormal:hover::after {
    opacity: 1;
    }






/* BUTTONS HOLLOW COMPONENTS */

.buttonshollow {
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.025rem 1.0rem;
    margin: 0;
    border-radius: 999px;
    border: 1px solid #151c1d;
    background: transparent;
    font-family: "IBM Plex Mono", monospace !important;
    font-weight: 400 !important;
    color: #151c1d !important;
    font-size: 0.6rem;
    letter-spacing: 0.025rem;
    text-transform: uppercase;
    text-decoration: none;
    z-index: 0;
    transition:
        border-color 0.35s ease,
        color 0.35s ease;
    }
.buttonshollow i {
    display: inline-block !important;
    margin: 0 0 0 0.5rem !important;
    font-size: 0.75rem !important;
    line-height: 1 !important;
    color: #151c1d !important;
    transition: color 0.35s ease;
    }
.buttonshollow i,
.buttonshollow i::before {
    color: #151c1d !important;
}

.buttonshollow:hover i,
.buttonshollow:hover i::before {
    color: #747237 !important;
}

.buttonshollow:hover i {
    color: #747237 !important;
}
.buttonshollow:hover {
    border-color: #747237;
    color: #747237 !important;
    }



/* CIRCLE DOWN BUTTON */

.buttoncircle {
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: linear-gradient(to right, #cfc493 0%, #747237 100%);
    text-decoration: none;
    z-index: 0;
    transition: transform 0.3s ease;
    }
.buttoncircle::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--olive);
    opacity: 0;
    transition: opacity 0.35s ease;
    border-radius: inherit;
    z-index: -1;
    }
.buttoncircle:hover::before {
    opacity: 1;
    }
.buttoncircle i {
    position: relative;
    z-index: 2;
    display: inline-block;
    opacity: 1 !important;
    color: #f3f1ec !important;
    font-size: 1.0rem;
    line-height: 1;
    transition: transform 0.35s ease;
    }
.buttoncircle:hover i {
    transform: translateY(0.05rem);
    }




.contactpaneltype01 p a,
.contactpaneltype02 p a,
.contactpaneltype03 p a,
.contactpaneltype04 p a,
.contactpaneltype04b p a,
.contactpaneltype05 p a,
.contactpaneltype06 p a,
.contactpaneltype09 p a,
.contactpaneltype10 p a,
.contactpaneltype11 p a,
.contactpaneltype14 p a,
.contactpaneltype15 p a,
.contentpaneltheteam p a,
.headertitleholderother p a,
.headertitleholder p a {
    font-weight: 700;
    color: #151c1d;
    text-decoration: underline;
}

.contactpaneltype01 p a:hover,
.contactpaneltype02 p a:hover,
.contactpaneltype03 p a:hover,
.contactpaneltype04 p a:hover,
.contactpaneltype04b p a:hover,
.contactpaneltype05 p a:hover,
.contactpaneltype06 p a:hover,
.contactpaneltype09 p a:hover,
.contactpaneltype10 p a:hover,
.contactpaneltype11 p a:hover,
.contactpaneltype14 p a:hover,
.contactpaneltype15 p a:hover,
.contentpaneltheteam p a:hover,
.headertitleholderother p a:hover,
.headertitleholder p a:hover {
    font-weight: 700;
    color: #747237;
    text-decoration: underline;
}




/* ALIGNMENT COMPONENTS */

.left {
	text-align: left !important;
	}

.center {
	text-align: center !important;
	}
@media screen and (max-width: 960px) {
  .center {
	text-align: left;
  }
}
.right {
	text-align: right !important;
	}




a[href^="http://maps.google.com/maps"]{display:none !important}
a[href^="https://maps.google.com/maps"]{display:none !important}

.gmnoprint a, .gmnoprint span, .gm-style-cc {
    display:none;
	}
.gmnoprint div {
    background:none !important;
	}


/* Mobile */
@media (max-width: 959px) {

    .header-layout {
        display: flex;
        flex-direction: column;
    }

    .headertitleholder {
        order: 1;
    }

    .headerheroimageholder {
        order: 2;
    }

    .headerpatternholder {
        order: 3;
    	margin: 3.0rem 4.166% 1%;
    }

}
