:root {
	--brown: #382f2d;
	--dark-brown: #2c2523;
	--dark-grey: #3d3d3d;
	--red: #f10b29;

	--cream: #F2F0EB;
	--khaki: #E2E1D9;
	--grey: #BCC1C1;
	--gray: var(--grey);
	--dark-gray: var(--dark-grey);
	--black: #000;
	--charcoal: #171717;
	--white: #fff;

	--nav-background: rgba(255, 255, 255, .6);
	--nav-text: var(--white);
	--nav-text-size: clamp(13px, 3.55vw, 15px);
	--nav-underline: var(--white);
	
	--primary-color-hex: var(--navy);
	--primary-color: var(--primary-color-hex);
	--primary-color-text: var(--white);

	--secondary-color-hex: var(--blue);
	--secondary-color: var(--secondary-color-hex);
	--secondary-color-text: var(--white);

	--mobile-menu-background: rgba(255,255,255,0.95);
	--mobile-nav-text-color: var(--charcoal);

	--site-header-height: 110px;
	/* --header_spacer_height: 110px; */
	--header_spacer_height: 110px;

	
	--page-padding-left-right: 70px;
	--section-padding-top: 70px;
	--section-padding-bottom: 70px;
	--left-right-padding: clamp(40px, 3.89vw, 56px);
	/* --left-right-padding: clamp(40px, 9.72vw, 140px); */
	
	--footer-background-color: var(--charcoal);
	--footer-text-color: #fff;

	--copyright-background-color: var(--black);
	
	--font-primary: 'avenir-next-lt-pro', Helvetica, Arial, sans-serif;
	--font-secondary: 'avenir-next-lt-pro', Helvetica, Arial, sans-serif;
	
	--default-h1: clamp(2.5rem, 4.65vw, 4.1875rem); /* 67px */
	--default-h2: clamp(1.8rem, 2.63vw, 2.375rem); /* 38px */
	--default-h3: clamp(1rem, 1.46vw, 1.3125rem); /* 21px */
	--default-h4: clamp(1.4rem, 1.94vw, 1.75rem); /* 21pt, 28px */
	--default-h5: clamp(1.25rem, 2.43vw, 2.188rem); /* 26pt, 35px */
	--default-h6: clamp(1rem, 1.3vw, 1.375rem); /* 16.5pt, 22px */
	--default-p: clamp(.75rem, 1.05vw, 1rem); /* 12pt, 16px */
	--default-btn: clamp(0.75rem, 1.4vw, 0.875rem); /* 10.5pt, 14px */
	--default-lh: 1.25;
	--default-p-weight: 400;

	--max-width: 1920px;


	--deco-line-width: 25px;
	--arrow-button-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 15'%3E%3Cpath d='M28.3735 8.70711C28.764 8.31658 28.764 7.68342 28.3735 7.29289L22.0095 0.928932C21.619 0.538408 20.9858 0.538408 20.5953 0.928932C20.2048 1.31946 20.2048 1.95262 20.5953 2.34315L26.2521 8L20.5953 13.6569C20.2048 14.0474 20.2048 14.6805 20.5953 15.0711C20.9858 15.4616 21.619 15.4616 22.0095 15.0711L28.3735 8.70711ZM0.549072 9H27.6664V7H0.549072V9Z' /%3E%3C/svg%3E");
	--icon-bg: url("/images/layouts/icon-bg.svg");
}


@keyframes divider-hero {
	0% {
		width: 0%;
		height: 4px;
		opacity: 0;
	}
	5% {
		opacity: 1;
	}
	50% {
		width: 100%;
		height: 4px;
	}
	100% {
		width: 100%;
		height: 4px;
		opacity: 1;
	}
}

@keyframes divider-horizontal {
	0% {
		width: 0;
	}
	100% {
		width: var(--divider-width);
	}
}


.divider {
	--divider-size: 4px;
	--divider-color: var(--yellow);

	position: absolute;
}


/* Default Styles test
   ========================================================================== */


article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

a:active,
a:hover,
a:visited:hover,
a:active:hover {
	/* color: inherit; */
    text-decoration: none;
    outline-width: 0
}

b,
strong {
    font-weight: inherit
}

b,
strong {
    font-weight: bolder
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

a img {
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

.p_form {
	line-height: 1.5 !important;
}

.p_form .fld_check input, .p_form .fld_radio input {
	margin-top: 5px !important;
}

button,
input,
select,
textarea {
    font: inherit;
    margin: 0
}

optgroup {
    font-weight: bold
}

button,
input {
    overflow: visible
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText
}

textarea {
    overflow: auto
}

[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    padding: 0
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: 0.54
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

html {
  width: 100%;
  min-height: 100%;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

  *, *:before, *:after {
    box-sizing: inherit;
  }

.wow {
	visibility: hidden;
}
  
  /* Page Layout & Utility0
   ========================================================================== */

body {
  width: 100%;
  min-height: 100%;
  padding: 0;
  margin: 0;
  font-family: var(--font-secondary);
  font-size: 16px;
  font-weight: 400;
  color: var(--charcoal);
  background: var(--white);
}

.main-container {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 400px;
  padding: 0;
  margin: 0 auto;
}

.wide {
  position: relative;
  width: 100%;
  padding: 0;
  margin: 0 auto;
}

.container {
  position: relative;
  width: 90%;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
}

.nowrap {
	text-wrap: nowrap;
}


.mobile {
  display: none !important;
}

@media (max-width: 768px) {
	/* :root {
		--deco-line-width: 15px;
	} */
  .wide, .main-container {
    width: 100%;
    min-width: 0;
  }

/*
  .container {
    width: 540px;
  }
*/
/*
.flex.stacked {
	margin-right: auto !important;
}
*/
}

@media (max-width: 576px) {
  .container {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}

/*  Header
   ========================================================================== */

.scrolled {
	--nav-text: var(--charcoal);
	--nav-underline: var(--charcoal);
	--site-header-height: 90px;
	--header_spacer_height: 90px;
}

.site-header {
	position: absolute;
	height: var(--site-header-height);
	transition: .3s;
}
	
#header_spacer {
	position: relative;
	height: var(--header_spacer_height);
}
#header-gradient {
	position: absolute;
	top: 0;
	width: 100%;
	background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.54) 100%);
    height: 200px;
    z-index: 1;
	pointer-events: none;
}

.primary {
	--thickness: 4px;

	position: fixed;
	/* padding: 15px 0; */
	display: block;
	z-index: 3000;
	/* background-image: linear-gradient(180deg, rgba(0,0,0,0.2), transparent); */
	/* background-color: var(--nav-background); */
	transition: .3s;
}

	.scrolled .primary {
		/* padding: 5px 0; */
		background-image: none;
		/* box-shadow: 0 -5px 10px #000; */
		background-color: var(--nav-background);
		/* backdrop-filter: blur(10px); */

		&::before {
			content: "";
			position: absolute;
      inset: 0;
			height: 200%;
      -webkit-mask-image: linear-gradient(
        to bottom,
        black 0% 50%,
        transparent 50% 100%
      );
      mask-image: linear-gradient(
        to bottom,
        black 0% 50%,
        transparent 50% 100%
      );
      -webkit-backdrop-filter: blur(10px);
      backdrop-filter: blur(10px);
      /* background: linear-gradient(
        to bottom,
        hsl(0deg 0% 95%),
        transparent 50%
      ); */
			
      pointer-events: none;
		}

		&::after {
			content: "";
			position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      height: var(--thickness);
      background: hsl(0deg 0% 100% / 0.1);
      -webkit-backdrop-filter: blur(8px) brightness(0.96);
      backdrop-filter: blur(8px) brightness(0.96);
      transform: translateY(100%);
			-webkit-mask-image: linear-gradient(
        to bottom,
        black 0,
        black var(--thickness),
        transparent var(--thickness)
      );
      mask-image: linear-gradient(
        to bottom,
        black 0,
        black var(--thickness),
        transparent var(--thickness)
      );
      pointer-events: none;
		}
	}

	.mobile_open .scrolled .primary {
		background-color: transparent;
	}


.primary > .container {
  width: 100%;
	height: var(--site-header-height);
  padding-left: var(--left-right-padding);
  padding-right: var(--left-right-padding);
  display: flex;
	align-items: center;
	justify-content: space-between;
	transition: .25s ease-out;
}


#logo {
  transition: .25s ease-out;
  line-height: 1;
}

	.scrolled #logo {
	}

	#logo a {
		display: flex;
		transition: .25s ease-out;
	}

		#logo img {
			width: 100%;
			height: auto;
			transition: .3s;
		}

		#logo svg {
			height: 110px;
			margin-top: 30px;
			transition: .25s ease-out;
		}
		
		#logo_icon {
			transition: .25s ease-out;
		}
		
		.scrolled #logo svg {
			height: 61px;
			margin-top: 0;
			filter: brightness(0);
		}

@media (max-width: 1024px) {
	:root {
	}

	#logo img {
		max-width: 170px;
	}
  .primary {
/*     padding: 10px 0; */
    display: block;
  }
}
  
/*  Navigation
   ========================================================================== */



/*  General Content Styles
   ========================================================================== */

.hero {
  position: relative;
  width: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  overflow: hidden;
}

#content .cb-body img {
  max-width: 100%;
  height: auto;
}


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

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

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


a.btn, a.btn:visited, span.btn, input.btn,
.button, .pill-button,
.white-button, .pill-white-button,
.red-button, .pill-red-button {
	--btn-color: inherit;
	--bg-color: transparent;
	--border-color: var(--green);
	--hover-color: var(--white);
	--hover-bg: var(--border-color);

	position: relative;
	padding: 12px 20px;
	font-size: var(--default-btn);
	font-weight: 500;
	letter-spacing: 1px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	transition: all .4s;
	opacity: 1;
	display: inline-block;
	border: 1px solid #fff;
	border-radius: 2em;
	cursor: pointer;
	overflow: hidden;

	color: var(--btn-color);
	background: var(--bg-color);
	border-color: var(--border-color);

	&::before {
		content: "";
		position: absolute;
		inset: 0;
		background-color: var(--hover-bg);
		transition: .5s;
		clip-path: polygon(0 0, 0 0, -20% 100%, 0 100%);
		z-index: 0;

		.mce-content-body & {
			display: none;
		}
	}

	span {
		position: relative;
		z-index: 1;
	}


	&:hover {
		--hover-border-color: var(--border-color);

		color: var(--hover-color);
		background: var(--hover-bg);
		border-color: var(--hover-border-color);
		filter: brightness(110%);
		cursor: pointer;

		&::before {
			clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
		}

		.mce-content-body & {
			background-color: var(--hover-bg);
		}
	}

	&.white,
	&.white-button, &.pill-white-button {
		--btn-color: var(--white);
		--hover-color: var(--dark-brown);
		--border-color: var(--white);
	}

	&.red,
	&.red-button, &.pill-red-button {
		--border-color: var(--red);
		--hover-color: var(--white);
	}

	&.button, 
	&.pill-button {
		--hover-color: var(--white);
		--hover-bg: var(--charcoal);
	}

}


.cb-icon {}

	.cb-icon svg {
		width: 100%;
		height: 100%;
	}


/*  Footer
   ========================================================================== */

#bottom {
	background: var(--footer-background-color);
	height: auto;
	min-height: 300px;
	padding-top: 70px;
	margin-top: var(--deco-line-height);
	font-size: var(--default-p);
	font-size: .75rem;
	font-weight: 400;
}

	#bottom > .footer-wrapper {
		position: relative;
		padding: 0 var(--left-right-padding);
		display: flex;
		flex-direction: column;
		gap: 40px;
	}

	.footer-wrapper > .container {
		gap: 10px;
	}

	.footer-top {
		display: grid;
		grid-template-columns: 3fr 1fr;
		gap: 120px;
		
		@media (max-width: 815px) {
			grid-template-columns: 1fr;
			gap: 20px;
		}
	}
	.footer-bottom {
		display: grid;
		grid-template-columns: 3fr 1fr;
		gap: 120px;
		
		@media (max-width: 815px) {
			grid-template-columns: 2fr 1fr;
			gap: 50px;
		}
		@media (max-width: 768px) {
			gap: 20px;
			display: flex;
			flex-direction: column-reverse;
		}
	}
	
	#bottom .container {
		width: 100%;
		padding-inline: var(--left-right-padding);
		justify-content: space-between;
		gap: 100px;
	}

	#bottom .column-left {
		display: flex;
		align-items: center;
		gap: 40px;

		@media (max-width: 450px) {
			flex-direction: column;
		}
	}

	#bottom .logo-container {
		max-width: 212px;
		min-width: 90px;
		flex: auto;

		@media (max-width: 450px) {
			width: 100%;
		}
	}
	
	#bottom .footer-search-container {
		flex: auto;

		form {
			display: grid;
			grid-template-columns: .8fr auto;
			gap: 10px;
			
			@media (max-width: 815px) {
				justify-content: end;
			}
		}

		.search-input {
			padding: 10px 15px;
			color: var(--white);
			background-color: transparent;
			border: var(--white) solid 1px;
			border-radius: 50px;
			transition: .2s;

			&:focus {
				color: var(--footer-background-color);
				background-color: var(--white);
			}
		}

		.btn {
			justify-self: start;
		}

		@media (max-width: 450px) {
			width: 100%;

			form {
				justify-content: center;
			}
		}		
	}

	#bottom .footer-columns {
		position: relative;
		display: grid;
		justify-content: space-between;
		align-items: flex-start;
		gap: 10px 40px;
		flex-wrap: wrap;
	}

		.footer-columns .col {
			position: relative;
			height: auto;
			display: flex;
			flex-direction: column;
			justify-content: flex-start;
		}

			.footer-columns .column-four {
				--footer-text-color: var(--blue);

				grid-column: 1 / -1;

				ul {
					padding: 0;
					list-style: none;
					display: flex;
					justify-content: space-between;

					@media (max-width: 768px) {
						flex-wrap: wrap;
						justify-content: center;
						gap: 10px;
					}

					a {
						padding: 10px;
						white-space: nowrap;

						&:hover {
							color: var(--white);
						}
					}
				}
			}

			.site-footer h4 {
				position: relative;
				margin: 0.5em 0 0.5em;
				color: var(--footer-text-color);
				font-family: var(--font-primary);
				font-size: var(--default-p);
				font-weight: 700;
			}



.footer-background {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 75%;
	max-height: 370px;
	background-image: var(--background-image);
	background-position: -1% center;
	background-repeat: no-repeat;
	background-size: contain;
	opacity: .8;
	pointer-events: none;
}


.site-footer a {
		color: var(--footer-text-color);
		text-decoration: none;
}


.site-footer {
	background-image: var(--background-image);
	background-position: center bottom;
	background-size: cover;
  background: var(--footer-background-color);
  color: var(--footer-text-color);
  /* overflow: hidden; */
  padding: 0;
}

.footer-row {
  margin: 5em auto;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
          flex-flow: row;
  -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}

.footer-column {
  font-size: 1.4em;
  line-height: 1.6;
}

.footer-column p {
  margin: .2em 0;
}



.footer-info {
  padding: 2em 0;
}

	#bottom .footer-info .container {
		position: relative;
		width: var(--max-width);
		display: flex;
		align-items: center;
		justify-content: end;
		gap: 10px;
	}

	.footer-info p {
		margin: 0;
	}

	.footer-social-wrapper {
		position: relative;
		display: flex;
	}

		.footer-social-wrapper img {
			width: 215px;
		}

		.social_container {
			padding-top: .5em;
			color: var(--primary-color);
			font-size: clamp(20px, 2.73vw, 30px);
			font-size: 24px;
			display: flex;
			align-items: center;
			gap: .3em;

			@media (max-width: 815px) {
				justify-content: center;
			}
		}
		
			.social_container a:not(.cb-tools) {
				width: 40px;
				aspect-ratio: 1 / 1;
				/* padding: .25em; */
				color: var(--white);
				text-decoration: none;
				transition: .2s;
				display: flex;
				align-items: center;
				justify-content: center;

				&:hover {
					color: var(--primary-color);
					color: var(--red);
					/* background-color: var(--white); */
				}
			}

.partners-wrapper {
	--logo-max-width: 110px;
	position: relative;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(var(--logo-max-width), 1fr));
  gap: 1.5rem;
  align-items: center;
  justify-items: center;
	
	.partner-wrapper {

		img {
			width: 100%;
			height: auto;
			opacity: .4;
		}
	}

	@media (max-width: 1024px) {
		--logo-max-width: 100px;
	}
	@media (max-width: 450px) {
		--logo-max-width: 70px;
	}
}


.footer-info .container .btn {
	font-size: 12px;
}
.footer-copyright {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 12px;
	transform: scale(.8);
	transform-origin: right;
}

.footer-copyright p {
	margin: 0;
	color: #fff;
  font-family: var(--font-primary);
  font-size: 12px;
}

.footer-copyright a,
.footer-copyright a:visited{
  color: #fff;
  text-decoration: none;
} 

.footer-copyright .privacy-policy a:hover {
	text-decoration: underline;
}

.footer-copyright img {
	display: block;
	/* filter: invert(1); */
	opacity: .7;
}
.footer-text {
    font-weight: 100;
    text-transform: none;
}
#bottom .footer-columns {
    max-width: 100%;
		flex: 1;
}


.modalBody.old_redirect {
	position: relative;
	color: var(--black);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	margin-bottom: 50px;
}

.modalBody.old_redirect img,
.modalBody.old_redirect svg {
	max-width: 100%;
	margin: 0 auto;
	filter: brightness(0);
}

	.modalBody.old_redirect img:first-of-type {
		max-width: 80%;
	}

.modalBody.old_redirect .video_embed {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
}
	.modalBody.old_redirect video,
	.modalBody.old_redirect iframe {
		position: absolute;
		width: 100%;
		height: 100%;
	}

	
@media (max-width: 1080px) {

}

@media (max-width: 1024px) {
	#bottom > .container {
		flex-direction: column;
		align-items: center;
		gap: 20px;
	}
	
		#bottom > .container > div {
			width: 100%;
		}

		#bottom .contact_container {
			align-items: center;
		}

}

@media (max-width: 900px) {
	.footer-background {
		max-height: 260px;
	}
}

@media (max-width: 768px) {
	.flex.stacked > img {
	    margin: 0 auto;
	}
	

	body.modal_active #modal_container {
		overflow: hidden;
	}
	
	#modal_container[data-modal] .modal_window {
		width: 100%;
		height: 100%;
		top: 0;
		padding-bottom: 0;
	}
	
	#modal_container .modal_window .modal_body {
		overflow: auto;
	}
}	

@media (max-width: 768px) and (min-width: 641px) {
	.footer-copyright p:first-child {
		position: absolute;
		right: 0;
		bottom: 0;
		transform: scale(.8) translateY(50%);
	}
}
	
@media (max-width: 640px) {
	:root {
		/* --default-p: clamp(10px, 2.19vw, 14px); */
		--left-right-padding: clamp(18px, 7vw, 115px);
	}

	a.btn, a.btn:visited,
	span.btn,
	input.btn {

	}

	.footer-info .container {
		align-items: center;
	}

	.footer-social-wrapper {
		flex-direction: column;
		align-items: center;
		gap: 20px;
	}

	#bottom .footer-columns .col {
		grid-column: 1 / -1;
	}

	.footer-copyright {
		flex-direction: column;
		gap: 20px;
	}

}

@media (max-width: 560px) {
}

@media (max-width: 420px) {
	#logo .logo-wordmark {
		display: none;
	}
}

@keyframes grow {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.05);
	}
}

@keyframes reveal-top-down {
	0% {
		clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
	}
	100% {
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	}
}

@keyframes reveal-center-down {
	0% {
		clip-path: polygon(0 0, 100% 0, 100% 50%, 0 50%);
	}
	100% {
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	}
}
#menu {
	display: none;
	appearance: none;
}


.navigation {
	position: relative;
	width: 100%;
	z-index: 100;
	text-align: right;
}

	.navigation ul {
		position: relative;
		margin: 0 auto;
		padding: 0;
		list-style: none;
		overflow: visible;
		font-size: 0;
	}

		.navigation ul li {
			position: relative;
			padding: 0 20px;
			font-family: var(--font-secondary);
			font-size: 14px;
			text-align: center;
			display: inline-block;
		}

		.scrolled {
		}

			.navigation > ul > li > a,
			.navigation > ul > li > a:visited {
				position: relative;
				margin: 0;
				padding: 15px 0;
				color: var(--nav-text);
				font-size: var(--nav-text-size);
				font-weight: 400;
				line-height: 1;
				letter-spacing: 1px;
				text-align: center;
				text-decoration: none;
				border-top: 3px solid transparent;
				border-bottom: 3px solid transparent;
				display: block;
				transition:.12s cubic-bezier(.4,0,.2,1);

				cursor: pointer;
			}

				.navigation > ul > li > a::before,
				.navigation > ul > li > a::after {
					content: "";
					position: absolute;
					inset-block: 0;
					width: 0;
					border-block: var(--nav-underline) solid 1px;
					transition:.2s cubic-bezier(.4,0,.2,1);
					pointer-events: none;
				}

				.navigation > ul > li > a::before {
					left: 0;
				}
				.navigation > ul > li > a::after {
					right: 0;
					display: none;
				}

					.navigation > ul > li:hover > a::before,
					.navigation > ul > li > a:hover::before,
					.navigation > ul > li > a:focus::before,
					.navigation > ul > li > a.active::before,
					.navigation > ul > li > a.active:hover::before {
						width: 100%;
					}
					
					.navigation > ul > li:hover > a::after,
					.navigation > ul > li > a:hover::after,
					.navigation > ul > li > a:focus::after,
					.navigation > ul > li > a.active::after,
					.navigation > ul > li > a.active:hover::after {
						/* width: 50%; */
					}


				.navigation > ul > li > a:hover,
				.navigation > ul > li > a:focus,
				.navigation > ul > li > a.active,
				.navigation > ul > li > a.active:hover {
					/* border-bottom-color: var(--gold); */
				}
				

				.navigation > ul > li > a:visited:hover,
				.navigation > ul > li > a:visited:focus,
				.navigation > ul > li > a.active:visited,
				.navigation > ul > li > a.active:visited:hover {
					color: var(--nav-text);
				}

				.scrolled .navigation > ul > li > a:hover,
				.scrolled .navigation > ul > li > a:focus,
				.scrolled .navigation > ul > li > a.active,
				.scrolled .navigation > ul > li > a.active:hover {
					/* color: var(--primary-color); */
				}

				#navigation a:hover {
					text-decoration: none;
				}

#navigation > ul > li .subNav {
	position: absolute;
	opacity: 0;
	width: 200px;
	min-width: 230px;
	padding: 8px 0;
	visibility: hidden;
	background: #fff;
	background: rgba(255,255,255,.95);
	box-shadow: 0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);
	transition: transform .15s cubic-bezier(0,0,.2,1), opacity .15s cubic-bezier(0,0,.2,1);
	transform: translateY(-12px);
	overflow: hidden;
}

	#navigation > ul > li:last-child .subNav {
		right: 0;
	}

	#navigation > ul > li:hover .subNav {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
	}

	#navigation > ul > li .subNav li {
		display: block;
		font-size: 15px;
		font-weight: 500;
		text-align: left;
	}

		#navigation > ul > li .subNav li a {
			position: relative;
			display: inline-block;
			padding: 5px 2px 5px;
			font-size: 13px;
			font-weight: 500;
			margin: 0;
			color: #262626;
			line-height: normal;
			text-decoration: none;
			border-bottom: transparent solid 1px;
			transition: .15s cubic-bezier(0,0,.2,1);
		}

			#navigation > ul > li .subNav li.active a,
			#navigation > ul > li .subNav li a:hover {
				color: var(--primary-color);
				border-bottom-color: var(--primary-color);
			}	 


.subnavOpen {
	display: none;
}

.search-container{
	position:absolute;
	right:20px;
	top:20%;
	height:100%;
	z-index:1
}
	.search-container .search {
		position:absolute;
		right:-70px;
		bottom:30%;
		width:40px;
		height:40px;
		background:0 0;
		border-radius:50%;
		transition:all 1s;
		z-index:4;
		font-size:9px;
		transform: scale(60%);
	}
		.search-container .search:hover{
			cursor:pointer
		}
			.search-container .search::before {
				content:"";
				position:absolute;
				margin:auto;
				top:22px;
				right:0;
				bottom:0;
				left:22px;
				width:12px;
				height:2px;
				background:var(--nav-text);
				transform:rotate(45deg);
				transition:all .5s;
				zoom:.7
			}
				.search-container .search::after{
					content:"";
					position:absolute;
					margin:auto;
					top:-5px;
					right:0;
					bottom:0;
					left:-5px;
					width:25px;
					height:25px;
					border-radius:50%;
					border:2px solid var(--nav-text);
					transition:all .5s;
					zoom:.7
				}
					.search-container input{font-family:var(--font-primary);position:absolute;right:-60px;bottom:30%;width:50px;height:39px;outline:0;border:none;background:#fff;color:#fff;padding:0 20px 0 20px;border-radius:3px;transition:all 1s;opacity:0;z-index:5;font-weight:100;letter-spacing:.1em;font-size:13px}
					.search-container input:hover{cursor:pointer}.search-container input:focus{right: -50px;box-shadow: 1px 1px 7px rgb(0 0 0 / 4%);color:#000;width:200px;opacity:1;cursor:text;font-weight:500;font-size:13px;background:#fff;padding:12px;letter-spacing:0}.search-container input:focus~.search{right:-70px;background:var(--secondary-color);z-index:6}.search-container input:focus~.search::before{top:0;left:0;width:25px;background:#fff}.search-container input:focus~.search::after{top:0;left:0;width:25px;height:2px;border:none;background:#fff;border-radius:0;transform:rotate(-45deg)}
					.primary.scrolled .search-container input{background:#fff;color:#000;}
					
					.primary.scrolled #navigation > ul > .search-container > form > .search:before {
						background: #000;
					}
					.primary.scrolled #navigation > ul > .search-container > form > .search:after {
						border-color: #000;
					}
					.primary.scrolled #navigation > ul > .search-container input:focus~.search::before{
						background: #fff;
					}


html.mobile_open {
	overflow: hidden;
}

#mobile-navigation-container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	padding: 80px 7% 60px;
	background-color: var(--mobile-menu-background);
	opacity: 0;
	pointer-events: none;
	clip-path: circle(1.5% at 93% 15%);
	transition: all .4s ease-in-out;
	overflow: hidden;
	z-index: 2;
}

	.mobile_open #mobile-navigation-container {
		opacity: 1;
		pointer-events: all;
		clip-path: circle(100% at 50% 50%);
		overflow: auto;
	}

	.mobile_open #logo {
		opacity: 0;
	}

	.mobile_nav {
		max-width: var(--max-width);
		padding-top: 50px;
		margin: 0 auto;
	}

	.mobile_nav_header {
		position: relative;
		transform: translateY(-20px);
	}

		.mobile_nav_header img {
			max-width: 200px;
			height: auto;
			filter: brightness(0);
		}
	
	.mobile_navigation {
		position: relative;
		padding: 0;
		list-style: none;
		display: flex;
		flex-direction: column;
		align-items: start;
	}

		.mobile_navigation a {
			position: relative;
			padding: 10px;
			color: var(--mobile-nav-text-color);
			font-size: 21px;
			line-height: 1;
			letter-spacing: .14px;
			text-decoration: none;
			display: inline-block;
		}

			.mobile_navigation a::before {
				content: '';
				position: absolute;
				top: 70%;
				left: 50%;
				width: 0;
				height: 2px;
				border-radius: 30px;
				background: var(--mobile-nav-text-color);
				transform: translate(-50%, -50%);
				transition: all .4s;
			}

				.mobile_navigation a:hover::before {
					top: 85%;
					width: 80%;
				}

				.mobile_navigation .subNav {
					--subnav-left: 10px;

					list-style: none;
					padding-left: var(--subnav-left);
					border-left: var(--subnav-left) solid var(--charcoal);
					border-left: 3px solid var(--blue);
					transform: translateX(var(--subnav-left));
				}

					.mobile_navigation .subNav a {
						font-size: 18px;
					}
		
		.mobile_nav_footer {
			margin-top: 40px;
			display: flex;
			flex-direction: column;
			align-items: center;
		}

			.mobile_nav_footer .mobile-social {
				position: relative;
				display: flex;
				justify-content: center;
			}
				
				.mobile_nav_footer a.mobile-social-link {

					margin-bottom: 20px;
					padding-left: 20px;
					padding-right: 20px;
					transition: all .3s ease-in-out;
				}
				
					.mobile_nav_footer a.mobile-social-link:hover {

					}

			.mobile_nav_footer .button_wrapper {
				margin-top: 10px;
			}

				.mobile_nav_footer .button_wrapper a {
					font-size: 15px;
				}
					

@media (max-width: 1375px) {
}

@media (max-width: 1264px) {
}


/* @media (max-width: 1264px) { */
@media (max-width: 1024px) {
	body.navActive {
		height: 100vh;
		overflow: hidden;
	}

	/*
	 * Menu Button
	 */

	#menu {
		z-index: 201;
		font: inherit;
		display: block;
		overflow: visible;
		margin: 0;
		/* padding: 29px 20px; */
		cursor: pointer;
		transition-timing-function: linear;
		transition-duration: .15s;
		transition-property: opacity,filter;
		text-transform: none;
		color: inherit;
		border: 0;
		background-color: transparent;
		appearance: none;


		position: absolute;
		top: 50%;
		right: 0;
		float: none;
		transform: translate(-50%, -50%);
	}
	#menu:focus,
	#menu:active {
		outline: 0;
	}

	.menu-bars {
		position: relative;
			display: block;
			width: 30px;
			height: 20px;
	}

	.menu-bar {
		display: block;
		top: 50%;
		margin-top: -1px;
	}
	.menu-bar,
	.menu-bar::before,
	.menu-bar::after {
		width: 30px;
		height: 2px;
		background-color: var(--nav-text);
		border-radius: 4px;
		position: absolute;
		transition-property: transform;
		transition-duration: 0.15s;
		transition-timing-function: ease;
	}

		.scrolled .menu-bar,
		.scrolled .menu-bar::before,
		.scrolled .menu-bar::after {

		}

		.mobile_open .menu-bar,
		.mobile_open .menu-bar::before,
		.mobile_open .menu-bar::after {
			background-color: var(--mobile-nav-text-color);
		}
	
	.menu-bar::before,
	.menu-bar::after {
		content: "";
		display: block;
	}
	.menu-bar::before {
		top: -8px;
	}
	.menu-bar::after {
		bottom: -8px;
	}

	/*
	 * Menu Animation
	 */
	 
	#menu.active {
		background-color: transparent;
	}
	
	.active .menu-bar,
	.active .menu-bar::before,
	.active .menu-bar::after {
	}
	
	.menu-bar {
		transition-duration: 0.1s;
		transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
	}
	
	.menu-bar::before {
		transition: top 0.1s 0.14s ease, opacity 0.1s ease;
	}
	
	.menu-bar::after {
		transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
	}

	.active .menu-bar,
	.mobile_open .menu-bar {
		transform: rotate(45deg);
		transition-delay: 0.14s;
		transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	
	.active .menu-bar::before,
	.mobile_open .menu-bar::before {
		top: 0;
		opacity: 0;
		transition: top 0.1s ease, opacity 0.1s 0.14s ease;
	}
	
	.active .menu-bar::after,
	.mobile_open .menu-bar::after {
		bottom: 0;
		transform: rotate(-90deg);
		transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	
	.main-container {
		left: 0;
		transition: left .2s cubic-bezier(.4,0,.2,1);
	}
	
		.navActive .main-container {
			/* transform: translate3d(-250px,0,0); */
			/* position: fixed; */
			overflow-x: visible;
			left: -250px;
		}
	
	.navigation {
		position: fixed;
		top: 0;
		right: -250px;
		display: block;
		margin: 0;
		width: 250px;
		max-width: 100%;
		height: 100%;
		max-height: 100%;
		float: none;
		transition: right .2s cubic-bezier(.4,0,.2,1);
		overflow: hidden;
		background: var(--primary-color);
		z-index: -1;
		padding-right: 0;
	}
	
		.navigation.active {
			visibility:visible;
			/* transition:visibility 0s linear 0s; */
			overflow: scroll;
			right: 0;
		}

		.navigation ul {
			position:relative;
			height:auto;
			width:100%;
		}
		
			.navigation > ul > li {
				border-bottom: 1px solid rgba(255, 255, 255, 0.5);
			}
	
				.navigation > ul > li:first-child {
					border-top: 1px solid rgba(255, 255, 255, 0.5);
				}

				.navigation ul li,
				.navigation ul li a {
					width: 100%;
					display: block;
					float: none;
					margin: 0;
					color: var(--primary-color-text);
				}

				.navigation > ul > li > a {
					position: relative;
					width: 100%;
					display: block;
					float: none;
					box-sizing: border-box;
					margin: 0;
					padding: 12px 20px;
					font-size: 17px;
					line-height: 24px;
					text-align: left;
				}
		
					.navigation ul li a:hover {
						border-color: transparent;
					}
					
					.navigation > ul > li > a:hover,
					.navigation > ul > li > a:focus,
					.navigation > ul > li > a.active,
					.navigation > ul > li > a.active:hover {
						color: #fff;
					}
			
			
		.subnavOpen {
			position: absolute;
			top: 50%;
			right: -25px;
			/* width: 60px; */
			font-size: 24px;
			text-align: center;
			transform: translateY(-50%);
		}
				
		.subnavOpen,
		.subnavOpen span {
			display: block;
			/* height: 100%; */
			/* line-height: 48px; */
		}

		.subnavOpen span {
				width: 100%;
				transition: .2s ease-out;
		}
		
		.subnavOpen.active {
			
		}
		
		.subnavOpen.active span {
			transform: rotateX(180deg);
		}
				
		.subnavMask {
			position: relative;
			height: 0;
			overflow: hidden;
			transition: .3s ease-in-out;
		}
		

		#navigation > ul > li .subNav {
			position: relative;
			width: 100%;
			opacity: 1;
			transform: none;
			visibility: visible;
			box-shadow: none;
			background: #fff;
		}
		
		.navigation > ul > li:hover > a, .navigation > ul > li > a.active {
			border-color: transparent;
			background-color: var(--charcoal);
		}
		.navigation > ul > li > a {
			--b: 0;
		}

		.search-container {
			position: relative;
			right: unset;
			top: unset;
			padding-top: 40px;
			height: 100%;
			z-index: 1;
	}

	.search-container form {
			display: block;
			background: white;
	}

	.search-container form input {
		position: relative;
		width: 100%;
		display: block;
		background: transparent;
		color: black;
		opacity: 1;
		letter-spacing: 0;
		top: unset;
		left: unset;
		right: unset;
		bottom: unset;
		font-weight: 500;
	}

		.search-container form input:focus {
			padding: 0 20px;
			right: unset;
		}

		.search-container .search {
			position: absolute;
			bottom: 30%;
			width: 40px;
			left: 0;
			top: 1px;
			height: 40px;
			background: 0 0;
			border-radius: 50%;
			transition: all 1s;
			z-index: 9999999999;
			font-size: 9px;

			display: none;
	}
}
@media (max-width:768px) {

}

@media (max-width: 576px) {
  .container {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}

@font-face {
  font-family: 'SocialIcons';
  src:
    url('/includes/fonts/social-icons/fonts/SocialIcons.ttf?e7e1as') format('truetype'),
    url('/includes/fonts/social-icons/fonts/SocialIcons.woff?e7e1as') format('woff'),
    url('/includes/fonts/social-icons/fonts/SocialIcons.svg?e7e1as#SocialIcons') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

[class^="ico-"], [class*=" ico-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'SocialIcons' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ico-x:before {
  content: "\e905";
}
.ico-twitter:before {
  content: "\e905";
}
.ico-check:before {
  content: "\e5ca";
}
.ico-search:before {
  content: "\e8b6";
}
.ico-arrow_right:before {
  content: "\e904";
}
.ico-youtube:before {
  content: "\ea9d";
}
.ico-arrow-right:before {
  content: "\e903";
}
.ico-arrow-left:before {
  content: "\e901";
}
.ico-arrow-down:before {
  content: "\e902";
}
.ico-wordpress:before {
  content: "\e900";
}
.ico-twitter-square:before {
  content: "\f081";
}
.ico-facebook-square:before {
  content: "\f082";
}
.ico-linkedin-square:before {
  content: "\f08c";
}
.ico-twitter1:before {
  content: "\f099";
}
.ico-facebook:before {
  content: "\f09a";
}
.ico-facebook-f:before {
  content: "\f09a";
}
.ico-feed:before {
  content: "\f09e";
}
.ico-rss:before {
  content: "\f09e";
}
.ico-pinterest-square:before {
  content: "\f0d3";
}
.ico-envelope:before {
  content: "\f0e0";
}
.ico-linkedin:before {
  content: "\f0e1";
}
.ico-rss-square:before {
  content: "\f143";
}
.ico-instagram:before {
  content: "\f16d";
}
.ico-vimeo-square:before {
  content: "\f194";
}
.ico-pinterest:before {
  content: "\f231";
}
.ico-vimeo:before {
  content: "\f27d";
}
.ico-snapchat:before {
  content: "\f2ac";
}

@charset "UTF-8";

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2016 Daniel Eden
 */

.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

.animated.infinite {
  animation-iteration-count: infinite;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  animation-name: fadeIn;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInDown {
  animation-name: fadeInDown;
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInLeft {
  animation-name: fadeInLeft;
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInRight {
  animation-name: fadeInRight;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.fadeInUp {
  animation-name: fadeInUp;
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.fadeOut {
  animation-name: fadeOut;
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
  }
}

.fadeOutDown {
  animation-name: fadeOutDown;
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(-20px, 0, 0);
  }
}

.fadeOutLeft {
  animation-name: fadeOutLeft;
}

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(20px, 0, 0);
  }
}

.fadeOutRight {
  animation-name: fadeOutRight;
}

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    transform: translate3d(0, -20px, 0);
  }
}

.fadeOutUp {
  animation-name: fadeOutUp;
}

@keyframes slideInDown {
  from {
    transform: translate3d(0, -100%, 0);
  }

  to {
    transform: none;
  }
}

.slideInDown {
  animation-name: slideInDown;
}

@keyframes slideInLeft {
  from {
    transform: translate3d(-100%, 0, 0);
  }

  to {
    transform: none;
  }
}

.slideInLeft {
  animation-name: slideInLeft;
}

@keyframes slideInRight {
  from {
    transform: translate3d(100%, 0, 0);
  }

  to {
    transform: none;
  }
}

.slideInRight {
  animation-name: slideInRight;
}

@keyframes slideInUp {
  from {
    transform: translate3d(0, 100%, 0);
  }

  to {
    transform: none;
  }
}

.slideInUp {
  animation-name: slideInUp;
}

@keyframes slideOutDown {
  from {
    transform: none;
  }

  to {
    transform: translate3d(0, 100%, 0);
  }
}

.slideOutDown {
  animation-name: slideOutDown;
}

@keyframes slideOutLeft {
  from {
    transform: none;
  }

  to {
    transform: translate3d(-100%, 0, 0);
  }
}

.slideOutLeft {
  animation-name: slideOutLeft;
}

@keyframes slideOutRight {
  from {
    transform: none;
  }

  to {
    transform: translate3d(100%, 0, 0);
  }
}

.slideOutRight {
  animation-name: slideOutRight;
}

@keyframes slideOutUp {
  from {
    transform: none;
  }

  to {
    transform: translate3d(0, -100%, 0);
  }
}

.slideOutUp {
  animation-name: slideOutUp;
}


#backdrop{
	bottom:0;
	background:rgba(0,0,0,.7);
}

#backdrop,#popup {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
} 

#popup{
	z-index:3500;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-flow:column nowrap;
	    flex-flow:column;
	-ms-flex-pack:center;
	    justify-content:center;
}

	#popupContainer{
	    position: relative;
	    width: 650px;
	    max-width: 88%;
	    max-height: 90%;
	    height: auto;
	    background: rgba(255,255,255,.9);
	    font-size: 22px;
	    line-height: var(--default-lh);
	    color: #3d3d3d;
	    margin: 0 auto;
	}
	
		#popup .wrapper{
		    line-height: 1.2;
/*
		    padding: 40px;
		    max-height: 90%;
		    overflow-y: scroll;
*/
		    padding: 32px 32px 20px;
		    /* max-height: 90%; */
/* 		    height: 500px; */
/* 		    overflow-y: scroll; */
		}
		#popupContainer .wrapper img {
		    max-width: 100%;
		    max-height: 100%;
		    width: auto;
		    height: auto;
		}
		
	#popupClose{
		position:absolute;
		top:-15px;
		right:-15px;
	}
	
/* 	for yt videos */
.yt-container {
	max-width: 720px;
	margin: 0 auto !important;
/* 	padding-top: 30px; */
}
.yt-responsive {
	width: 100%;
	height: 0;
	padding-bottom:56.25%;
	position:relative;
	overflow: hidden;
}
.yt-responsive iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
/*
Or
    position: relative;
    top: 0;
    left: 0;
*/
}

@media (max-height:760px) {
/*
	#popupContainer {
	 overflow-y: scroll;	
	}
*/
		#popup .wrapper{
			overflow-y: scroll;
			-ms-overflow-style: none;
			scrollbar-width: none;
			overflow-style: none;
			height: 100%;
		}	
		#popup .wrapper::-webkit-scrollbar {
			display: none;
		}
}

:root {
	--default-p: clamp(1rem, 1.46vw, 1.3125rem); /* 21px */
	--section-title-size: var(--default-h2);

}

.site-header {
	position: absolute;
	height: var(--site-header-height);
	transition: .3s;
}

.hero-container {
	position: relative;
	min-height: max(100vh, 700px);
	display: grid;
	grid-template-rows: 1fr auto;
	transition: .25s ease-out;
	background-color: var(--brown);
}

	.hero-image {
		position: relative;
		margin-left: 405px;
		margin-left: 442px;
		background-image: var(--background-image);
		background-position: var(--background-position, center);
		background-size: cover;
		overflow: hidden;
		animation: grow 1.5s ease-out forwards;
		grid-column: 1;
		grid-row: 1;
		pointer-events: none;

		&::before {
			content: "";
			position: absolute;
			inset: 0;
			background-image: linear-gradient(40deg, #000, transparent);
			opacity: .6;
			pointer-events: none;
		}

		@media (max-width: 768px) {
			margin-left: 0;
			margin-bottom: 41.5vh;
		}
	}

.hero.wide {
	position: relative;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	overflow: hidden;
	display: grid;
	grid-template-columns: 1fr;
	gap: 60px;
}

.hero-container a.pc-edit {
	top: 100px;
}

.hero-video {
  position: relative;
  width: 100%;
  height: auto;
	margin-left: 405px;
	grid-column: 1;
	grid-row: 1;
  display: block;

	&::before {
		content: "";
		position: absolute;
		inset: 0;
		background-color: rgba(0, 0, 0, .16);
		pointer-events: none;
	}

	video {
		width: 100%;
		height: 100%;
		object-fit: cover;

		&.autoplay-blocked {
			display: none;
		}
	}

	@media (max-width: 768px) {
		margin-left: 0;
		margin-bottom: 40vh;
	}
}

.hero-text-container {
	position: relative;
	width: 500px;
	/* padding-top: var(--site-header-height); */
	padding-bottom: 50px;
	padding-left: var(--left-right-padding);
	color: var(--white);
	align-self: center;
	grid-column: 1;
	grid-row: 1;
	z-index: 2;

	@media (max-width: 768px) {
		width: 100%;
		align-self: end;
	}
}

	.hero-text {
		position: relative;
		font-size: 21px;
	}

	h1 {
		position: relative;
		margin: 0;
		font-family: var(--font-primary);
		font-size: var(--default-h1);
		font-weight: 600;
		line-height: 1.1;
		text-transform: uppercase;
		display: inline-block;
		display: flex;
		flex-direction: column;
	}

		.hero-button-container {
			display: flex;
			gap: 1em;
		}
	
				

#section-container {
	position: relative;
	background-color: var(--white);
	font-size: var(--default-p);
}


section {
	position: relative;
	padding: var(--section-padding-top) 0;
	padding: var(--section-padding-top) var(--left-right-padding);
}

	.section_background_container {
		position: absolute;
		width: 100%;
		height: 100%;
	}
	
		.section_background_container::before {
			content: "";
			position: absolute;
			width: 100%;
			height: 100%;
	
			background-image: var(--background-image);
			background-position: var(--background-position);
			background-size: cover;
		}
	
			.section_background {
				width: 100%;
				height: 100%;
				background-position: center;
				background-size: cover;
				background-repeat: no-repeat;
				background-image: var(--background-image);
			}

	section h2 {
		position: relative;
		margin: 0.25em 0 0.5em;
		font-family: var(--font-primary);
		font-size: var(--default-h2);
		font-weight: 800;
		text-align: left;
		text-transform: uppercase;
		line-height: 1.2;
	}
	
		section .section-title h2 {
			margin: 0;
		}
	
	section h3 {
		margin: 0;
		color: inherit;
		font-family: var(--font-primary);
		font-size: var(--default-h3);
		font-weight: 600;
		line-height: 1.1;
		text-transform: uppercase;
	}
	
	section h4 {
		margin: 0;
		color: var(--charcoal);
		font-family: var(--font-primary);
		font-size: var(--default-h4);
		font-weight: 300;
	}
	
		section h4.active {
		}
		
			section h4:before {
				content: var(--icon-arrow-right-charcoal);
				position: absolute;
				left: 0;
				top: 50%;
				transform: translate(-150%, -50%);
				display: inline-block;
				vertical-align: middle;
				opacity: 0;
				transition: .3s;
			}

				section .active h4:before {
					opacity: 1;
				}

	section .section-title {
		position: relative;
		font-size: var(--section-title-size);
		line-height: 1.2;
	}
	
	section .section-content-wrapper {
		position: relative;
		/* width: 86%; */
		max-width: var(--max-width);
		margin: 0 auto;
	}
	section p {
		position: relative;
		font-size: var(--default-p);
		font-weight: var(--default-p-weight);
		line-height: var(--default-lh);
	}

	section h2 p {
		margin: 0;
		font-size: inherit;
		font-weight: inherit;
		line-height: inherit;
	}


	section .section-header {
		margin-bottom: 3rem;
	}

		section .section-header.centered {
			text-align: center;
		}


	.column-container {
		position: relative;
		width: 100%;
		padding: 60px 100px;
		display: flex;
		justify-content: space-between;
	}
	
		.column-container .column {
			position: relative;
			width: 50%;
		}
		
			.column-container .column-image {
/* 				width: 55%; */
			}
			
/*
			.column-container .column:not(.column-image) {
				padding: 0 9em;
			}
*/
		
			.column.left {
				padding-right: 0;
			}

			.column.right {
				padding-left: 0;
			}
		



		section .left,
		section .right {
			position: relative;
		}

		section .section_button {
			text-align: center;
		}
		
			section .section_button a {
				font-size: 17pt;
			}
		
		section .background_container {
			position: relative;
			height: 0;
			padding-top: 56.25%;
		}

			section .background_container .background {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background-position: center;
				background-size: cover;
			}
	
/*
		.section_action a.btn:first-child {
			margin-left: 0;
		}
		.section_action a.btn:last-child {
			margin-right: 0;
		}
*/


#first-section {
	

	@media (max-width: 640px) {
	}

	.section-content-wrapper {
		display: grid;
		grid-template-columns: 2fr 1fr;
		gap: var(--left-right-padding);
		align-items: center;

		@media (max-width: 640px) {
			grid-template-columns: 1fr;
		}
	}

		.section-image {
			padding-block: .5em;
			border-block: var(--red) solid 1px;

			img {
				width: 100%;
				box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
			}
		}

		.section-text-container {

		}

}



#second-section {
	padding: 0;
	background-color: var(--brown);
	display: grid;

	.section-background {
		position: relative;
		grid-column: 1;
		grid-row: 1;
		margin-right: 460px;
		margin-right: 31.94vw;

		img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}

		&::after {
			content: "";
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			width: 30%;
			background-image: linear-gradient(90deg, transparent, var(--dark-grey));
		}
	}

	.section-content-wrapper {
		margin: 0;
		padding-right: var(--left-right-padding);
		color: var(--white);
		grid-column: 1;
		grid-row: 1;
		justify-self: end;
		display: grid;
		align-items: center;
	}

		.section-text-container {
			width: 36vw;
		}

			/* .section-stat-wrapper {
				display: flex;
				flex-direction: column;
				gap: 1em;
			} */

	.section-stat-display {
		position: relative;
    /* height: 160px; */
    margin-bottom: 30px;
		padding-block: .25em;
		border-block: var(--red) solid 1px;
    overflow: hidden;
		display: grid;
		align-items: center;
	}

	.stat-container-display {
		font-size: clamp(1.87rem, 3.47vw, 3.125rem); /* 50px */
		font-weight: 700;
		grid-column: 1;
		grid-row: 1;

		opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease, transform 0.6s ease;
    pointer-events: none;

		&.active {
			opacity: 1;
			transform: translateY(0);
			pointer-events: auto;
		}
	}


	.section-stat-list {
		display: flex;
    flex-direction: column;
    gap: 14px;
	}

	.stat-container-list {
		font-weight: 300;
		line-height: 1;
		transition: .3s;
		transform-origin: left;
		cursor: pointer;

		&:hover {
			color: rgba(255,255,255,0.85);
			font-weight: 700;
			transform: scale(1.05);
		}

		&.active {
			color: #fff;
			font-weight: 700;
			transform: scale(1.01);
		}
	}

	@media (max-width: 1024px) {
		height: 100vh;

		.section-background {
			position: relative;
			margin-right: unset;
			clip-path: inset(0);
			overflow: hidden;

			img {
				position: fixed;
				top: 0;
				left: 0;
			}
		}

		.section-content-wrapper {
			padding-inline: var(--left-right-padding);
			justify-self: unset;

			&::before {
				content: "";
				position: absolute;
				inset: 0;
				background-color: var(--brown);
				opacity: .7;
			}
		}

		.section-text-container {
			position: relative;
			width: 60%;
			display: grid;
			/* grid-template-columns: auto 1fr; */
			gap: 50px;
		}
	}
	@media (max-width: 640px) {
		.section-text-container {
			width: 90%;
		}
	}
	@media (max-width: 520px) {
		.section-text-container {
			width: 100%;
		}
	}
}


#third-section {
	padding-inline: 0;
	background-color: var(--brown);

	.section-text-container {
		padding-inline: var(--left-right-padding);
	}

	h2 {
		color: var(--white);
	}

	.section-column-container {
		position: relative;
		padding-inline: var(--left-right-padding);
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		gap: 37px;

		&::before {
			content: "";
			position: absolute;
			inset: 100px 0;
			background-color: var(--white);
		}

		@media (max-width: 910px) {
			grid-template-columns: 1fr 1fr;
		}
		@media (max-width: 620px) {
			grid-template-columns: 1fr;
		}
	}

	.column {
		position: relative;
		padding: var(--left-right-padding);
		color: var(--white);
		text-align: center;
		display: flex;
		flex-direction: column;
		gap: .5em;
		justify-content: center;
		aspect-ratio: 209 / 401;

		background-image: var(--background-image);
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		box-shadow: 0 3px 26px rgba(0, 0, 0, .16);

		&::before {
			content: "";
			position: absolute;
			inset: 0;
			background-color: var(--dark-grey);
			opacity: .3;
			transition: .3s;
		}

		&:hover::before {
			background-color: var(--red);
			opacity: .8;
		}

		@media (hover: none) {
			&::before {
				background-color: var(--red);
				opacity: .8;
			}	
		}

		h3 {
			position: relative;
		}

		p:first-child {
			margin-top: 0;
		}

		@media (max-width: 620px) {
			aspect-ratio: 210 / 240;
		}
	}

	.column-text {
		position: relative;
		transition: .3s;
		
		@media (hover: hover) {
			.column:not(:hover) & {
				opacity: 0;
			}
		}

		@media (hover: hover) and (min-width: 1024px) {
			height: 0;
		}
	}

	.column-icon {
		position: relative;

		svg {
			transition: .3s;
			transform-origin: center bottom;
			transform: scale(1);
		}

		@media (hover: hover) {
			.column:hover & svg {
				transform: scale(1.7);
			}
		}
		
		@media (hover: hover) and (min-width: 1024px) {
			.column:hover & svg {
				transform: scale(2.4);
			}
		}
	}
}


#fourth-section {
	--default-p: clamp(16px, 1.39vw, 20px);
	padding-left: 0;
	padding-right: 0;
	background-color: var(--brown);

	.section_content_wrapper {
		color: var(--white);
		padding: 0 var(--left-right-padding) 50px;
		flex-direction: column;
		grid-column: 1 / -1;
	}

	.column-container {
		position: relative;
		padding: 0;
		display: grid;
	}
	
	.column {
		position: relative;
		width: 100%;
		grid-column: 1;
		grid-row: 1;
	
		display: grid;
		grid-template-columns: .33fr .5fr;
		gap: 50px;
		align-items: center;
		justify-content: start;

		background-color: var(--brown);
	
		opacity: 0;
		transition: opacity .3s ease-in-out;
		pointer-events: none;
		z-index: 1;
		
		&.active {
			opacity: 1;
			pointer-events: all;
			z-index: 2;
		}
	
		&.leaving {
			opacity: 1;
		}

		img {
			position: relative;
			width: 100%;
			aspect-ratio: 1 / 1;
			object-fit: cover;
		}

		@media (max-width: 1024px) {
			grid-template-columns: .33fr .7fr;
		}
		@media (max-width: 768px) {
			grid-template-columns: 1fr;
			gap: 0;
		}
	}
	
	.column-image-container {
		padding-block: 12px;
		border-block: var(--red) solid 1px;
	}

	.column-text-wrapper {
		position: relative;
		padding: 68px 40px;
		justify-content: space-between;

		@media (max-width: 768px) {
			padding: 30px 0;
		}
	}
	
		.column-header {
			position: relative;
			margin: 0.5em 0;
			font-size: var(--section-title-size);
			font-weight: 800;
			line-height: 1.2;
			text-transform: uppercase;
		}

		.column-subheader {
			font-size: var(--default-h3);
			font-weight: 500;
			line-height: 1.2;
			text-transform: uppercase;
		}
	
		.column-text {
			font-weight: bold;

			p {
				font-size: var(--default-h3);
			}

			& > *:first-child {
				margin-top: 0;
			}
			& > *:last-child {
				margin-bottom: 0;
			}
		}
	
	.testimonial-navigation {
		position: relative;
		padding-top: 2em;
		display: flex;
		align-items: center;
		gap: 7px;
		justify-content: start;
	
		.rotator-previous,
		.rotator-next {
			color: var(--blue);
			font-size: var(--default-btn);
			cursor: pointer;
			transition: .25s ease-out;
			padding: 0 10px;
			
			aspect-ratio: 1 / 1;
			border-radius: 50%;
			border: var(--red) solid 1px;
			display: grid;
			align-items: center;
			justify-content: center;
	
			&:hover {
				color: var(--light-blue);

				span {
					transform: translate(3px, 0);
				}
			}

			span {
				margin-left: 3px;
				transform: translate(0, 0);
				transition: .2s;
			}
		}
	
		.rotator-previous {
			transform: scaleX(-1);
		}
	
		.testimonial-navigation-item {
			width: 10px;
			aspect-ratio: 1 / 1;
			border-radius: 50%;
			background-color: var(--grey);
			cursor: pointer;
			transition: background-color .2s;
	
			&.active {
				background-color: var(--teal);
			}
	
			&:hover {
				background-color: var(--teal);
				opacity: 0.7;
			}
		}
	}
}

	




#fifth-section {
	padding: 0;

	@media (max-width: 640px) {
	}

	.section-content-wrapper {
		display: grid;
		grid-template-columns: 1fr 2fr;
		gap: var(--left-right-padding);
		align-items: center;
		
		@media (max-width: 768px) {
			display: flex;
			flex-direction: column-reverse;
			align-items: initial;
			gap: 0;
		}
	}


		.section-image {
			img {
				width: 100%;
				box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
			}
		}

		.section-text-container {
			padding: var(--section-padding-top) var(--left-right-padding);
		}

}


#sixth-section {
	/* padding: 0; */
	color: var(--white);
	background-color: var(--brown);

	@media (max-width: 640px) {
	}

	.section-content-wrapper {
		display: grid;
		grid-template-columns: 1fr 2fr;
		gap: var(--left-right-padding);
		align-items: center;

		@media (max-width: 768px) {
			grid-template-columns: 1fr;
		}
	}

	
	/* Constant Contact override styles */
	.ctct-form-defaults {
		background-color: transparent;
		color: var(--white);
		padding: 0;
		font-family: var(--font-secondary);
		font-size: var(--default-p);
		line-height: inherit;

		form.ctct-form-custom {
			display: grid;
			grid-template-columns: 1fr 1fr auto;
			align-items: center;
			justify-content: space-between;
			column-gap: 50px;

			@media (max-width: 640px) {
				column-gap: 10px;
			}
		}

		h2 {
			display: none;
		}

		p {
			color: var(--white);
			font-family: var(--font-secondary);
			line-height: inherit;
		}

		.ctct-form-success {
			min-height: auto;
		}

		.ctct-form-field {

			label {
				color: var(--white);
				font: inherit;
			}

			input {
				border-radius: 50px;
			}
		}

		#gdpr_text {
			grid-row: 4;
			grid-column: 1 / -1;
		}

			.ctct-gdpr-text {
				font-size: 12px;
			}

		#email_address_field_0 {
			grid-column: 1 / 3;
			grid-row: 2;

			margin-bottom: 0;
		}
		button.ctct-form-button {
			grid-row: 2;
			align-self: end;
			margin-bottom: 5px;

			position: relative;
			width: auto;
			padding: 12px 20px;
			font-size: var(--default-btn);
			font-weight: 500;
			letter-spacing: 1px;
			line-height: 1;
			text-align: center;
			text-decoration: none;
			transition: all .4s;
			opacity: 1;
			display: inline-block;
			border: 1px solid #fff;
			border-radius: 2em;
			cursor: pointer;
			overflow: hidden;

			color: var(--white);
			background-color: transparent;
			border-color: var(--red);

			&:hover {
				background-color: var(--red);
			}
		}
	}

}


