
/* Typography */

* {
  -webkit-font-smoothing: antialiased !important; /* smoothing font throughtout entire site */
  -moz-osx-font-smoothing: grayscale !important;
}

html {
	font-family: nimbus-sans, sans-serif;
    font-size: 16px;
    color: #000;
}

body {
	margin:0;
}

.no-scroll {
	overflow: hidden;
}

p, h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, b, strong, .strong, span, ul, li {
	-webkit-touch-callout: none; 
    -webkit-user-select: none; 
     -khtml-user-select: none; 
       -moz-user-select: none; 
        -ms-user-select: none; 
            user-select: none; 
}

p {
    line-height: 1.48;
    margin: 0 0 1rem 0;
}

p.intro, .intro > p {
	font-size:1.2rem;
	line-height: 1.3em;
	letter-spacing: unset;
}

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

.cms-content ul,
.item-text ul {
	list-style:disc;
	padding-left:20px;
	line-height:2;
}
.cms-content ul ::marker,
.item-text ul ::marker {
	color: var(--color-orange) !important;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: futura-pt-bold;
	font-weight: 700;
	text-transform:uppercase;
	letter-spacing: 0.1em;
    margin: 0;
	line-height:1;
}

h1, .h1 {
	font-size:3.125rem;
	line-height: .95em !important;
}

h2, .h2, .sm-h2 {
	font-size:2.286rem;
}

h3, .h3 {
	font-size:1.875rem;
}

h4, .h4 {
	font-size:1.33rem;
}

h5, .h5 {
	font-size:1.25rem;
}

h6, .h6 {
	font-size:0.93rem;
}

a {
	color:inherit;
	text-decoration:none;
}

.cms-content a,
.news-detail .meta a,
.item-text a,
.news-entry-nav span {
	color:var(--color-orange);
	transition: .28s ease;
}
.cms-content a:hover,
.item-text a:hover,
.news-detail .meta a:hover,
.news-entry-nav span:hover,
.variant-details .buttons a:hover {
	opacity: .8;
	/* transform: translateY(-1px); */
}

b, strong, .strong {
/*	font-family: futura-pt-bold;*/
	font-weight:700;
}

@media(min-width:960px) {
	/* html {
		font-size: 18px;
	} */
	
	h1, .h1, .lg-h1 {
		font-size:3.8rem;
	}
	
	h2, .h2 {
		font-size:2.45rem;
	}
	
	h4, .h4 {
		font-size:1.66rem;
	}
	
	h5, .h5 {
		font-size:1.11rem;
	}
	
	h6, .h6 {
		font-size:1rem;
	}
}

@media(max-width:959px) {
	.h6-sm {
		font-size:0.93rem;
	}
}

/* Colors & Global Vars */
:root {
	--color-orange: #F6931D;
	--color-orange-drk: #FB7100;
	--color-gray: #1f1f1f;
	--color-gray-lt: #EBEBEB;
	--color-gray-txt: #7A7A7A;
	--color-gray-brand: #464646;
	--color-blue: #07A5C3;
	--color-blue-drk: #056C90;
	--color-black-off: #1C191A;
	--color-red: #FF0000;

	--gutter-sm: 20px;
	--gutter-lg: 50px;

	--margin-sm: 8px;
	--margin-md: 32px;
	--margin-lg: 40px;
	--margin-xlg: 60px;
}

.color-orange { color:var(--color-orange); }
.color-orange-drk { color:var(--color-orange-drk); }
.color-gray { color:var(--color-gray); }
.color-gray-lt { color:var(--color-gray-lt); }
.color-gray-txt { color:var(--color-gray-txt); }
.color-gray-brand { color:var(--color-gray-brand); }
.color-blue { color:var(--color-blue); }
.color-blue-drk { color:var(--color-blue-drk); }
.color-black-off { color:var(--color-black-off); }
.color-white { color:#fff; }
.color-red { color:var(--color-red); }

.bg-orange { background-color:var(--color-orange); }
.bg-orange-drk { background-color:var(--color-orange-drk); }
.bg-gray { background-color:var(--color-gray); }
.bg-white { background-color:#fff; }
.bg-blue { background-color:var(--color-blue); }
.bg-blue-drk { background-color:var(--color-blue-drk); }

.color-callouts-orange span { color:var(--color-orange); }
.color-callouts-orange-drk span { color:var(--color-orange-drk); }
.color-callouts-blue span { color:var(--color-blue); }
.color-callouts-blue-drk span { color:var(--color-blue-drk); }
.color-callouts-gray-brand span { color:var(--color-gray-brand); }
.color-callouts-gray-lt span { color:var(--color-gray-lt); }
.color-callouts-black-off span { color:var(--color-black-off); }

::selection {
  background: var(--color-orange);
}

.cms-content a::selection {
  background: #000;
}

hr {
	border:none;
	background-color:var(--color-gray-lt);
	height:2px;
}

/* Buttons */

.buttons {
	display:flex;
	gap:20px;
}

button {
    outline: none;
    box-sizing: border-box;
    font-size: inherit;
    border: none;
    cursor: pointer;
    line-height: inherit;
    overflow: visible;
    display: inline-flex;
    margin: 0;
    padding: 0;
    text-transform: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-appearance: none;
    background: transparent;
}

.btn {
    padding: 0 20px;
	height: 44px;
    display: inline-block;
    line-height: 1;
	border:none;
	cursor:pointer;
    color: #000;
    border: 2.5px solid #000;
    white-space: nowrap;
	font-family: futura-pt-bold;
	font-size:12px;
	text-transform:uppercase;
	letter-spacing:0.1em;
	transition: all 0.28s ease;
	border-radius: unset !important;
}

.btn.circle-btn {
	display:flex;
	text-transform:none;
	padding:0;
	width:42px;
	height:42px;
	text-align:center;
	border-radius:999px !important;
	justify-content:center;
	align-items:center;
}

.btn.circle-btn .share-icon {
	width:11px;
}

.btn.circle-btn .camera-icon {
	width:18px;
}

a.btn {
    line-height: 40px;
}

.btn.btn-theme-orange {
	color: var(--color-orange);
	border-color: var(--color-orange);
}

.btn.btn-theme-orange svg, .btn.btn-theme-orange svg path {
	fill: var(--color-orange) !important;
}

.btn.btn-theme-orange-drk {
	color: var(--color-orange-drk);
	border-color: var(--color-orange-drk);
}

.btn.btn-theme-orange-drk svg, .btn.btn-theme-orange-drk svg path {
	fill: var(--color-orange-drk) !important;
}

.btn.btn-theme-blue {
	color: var(--color-blue);
	border-color: var(--color-blue);
}

.btn.btn-theme-blue svg, .btn.btn-theme-blue svg path {
	fill: var(--color-blue) !important;
}

.btn.btn-theme-blue-drk {
	color: var(--color-blue-drk);
	border-color: var(--color-blue-drk);
}

.btn.btn-theme-blue-drk svg, .btn.btn-theme-blue-drk svg path {
	fill: var(--color-blue-drk) !important;
}

.btn.btn-theme-gray-brand {
	color: var(--color-gray-brand);
	border-color: var(--color-gray-brand);
}

.btn.btn-theme-gray-brand svg, .btn.btn-theme-gray-brand svg path {
	fill: var(--color-gray-brand) !important;
}

.btn.btn-theme-gray-lt {
	color: var(--color-gray-lt);
	border-color: var(--color-gray-lt);
}

.btn.btn-theme-gray-lt svg, .btn.btn-theme-gray-lt svg path {
	fill: var(--color-gray-lt) !important;
}

.btn.btn-theme-white {
	color: #fff;
	border-color: #fff;
}

@media(min-width:960px) {
	
	.btn {
		font-size:15px;
		height:58px;
		padding:0 40px;
	}
	
	a.btn {
	    line-height: 54px;
	}
	
	.btn.circle-btn {
		width:58px;
		height:58px;
	}
	
	.btn:hover {
		transform:translateY(-3px);
		opacity: 0.8;
	}
	
	.btn.circle-btn .share-icon {
		width:17px;
	}
	
	.btn.circle-btn .camera-icon {
		width:24px;
	}
}

.button-group {
	display:flex;
	gap:20px;
}

.link {
	position:relative;
	display:flex;
	align-items:center;
}

.link span {
	display:inline-block;
}

.link:not(.link-back):after {
	content:'›';
	display:inline-block;
	font-size:1.5em;
	line-height:1em;
	transform:translate(4px);
	transition: transform 0.28s ease;
}

.link:hover:after {
	transform:translate(6px);
}

/* 
different arrow version
.link:not(.link-back):after {
	content:url(/resources/img/icon-arrow.svg);;
	display:inline-block;
	transform:translate(3px);
	transition: transform 0.28s ease;
}

.link:hover:after {
	transform:translate(5px);
} */

.link-back {
	gap:8px;
}

.link-back .fa-arrow-left {
	transition: transform 0.28s ease;
}

.link-back:hover .fa-arrow-left {
	transform:translate(-5px);
}

/* Forms */
input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none;
}

input:focus {
	border: unset !important;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    background-color:none !important;
}

.input-wrap input[type="text"]::placeholder,
.input-wrap input[type="email"]::placeholder,
.input-wrap input[type="phone"]::placeholder,
.input-wrap textarea::placeholder {
	color:#B0B0B0;
}

/* Change Autocomplete styles in Chrome*/
.input-wrap input:-webkit-autofill,
.input-wrap input:-webkit-autofill:hover, 
.input-wrap input:-webkit-autofill:focus {
	-webkit-text-fill-color: #666;
	-webkit-box-shadow: 0 0 0 30px #fff inset !important;
}

.input-wrap {
	background:#fff;
/*	border: 1px solid var(--color-gray-lt);*/
	padding:0 16px;
	transition: border-color .25s ease-out;
}

.contact-page .input-wrap, .default .contact-form .input-wrap {
	border: 1px solid var(--color-gray-lt);
}

.input-wrap:focus-within, .contact-page .input-wrap:focus-within,
.default .contact-form .input-wrap:focus-within {
  border: 1px solid var(--color-gray);
}

/* Utility */

.visually-hidden {
    border: 0px;
    clip: rect(0px, 0px, 0px, 0px);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0px;
    overflow: hidden;
    white-space: nowrap;
    position: absolute;
}

.capitalize { text-transform: capitalize; }
.uppercase { text-transform: uppercase; }
.hidden { display:none; }
.clear { clear: both; }
.center { text-align: center; }
.align-left { text-align: left; }
.relative { position: relative; }
.overflow-hidden { overflow: hidden; }
.width-100 { width: 100%; }
.drop-shadow { filter: drop-shadow(0px 1px 1px rgba(0,0,0,0.20)); }

.ratio-height {
    position: relative;
}

.ratio-height:before {
    content: '';
    display: block;
}

.ratio-height.ratio-50:before {
    padding-top: 50%;
}

.ratio-height.ratio-100:before {
    padding-top: 100%;
}

.ratio-height > .ratio-inner {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	z-index:1;
}

img.block {
    display: block;
    width: 100%;
}

img.object-fit-cover {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

img.object-fit-contain {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.bg-cover {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.bg-contain {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

.disable-transitions {
	transition:none !important;
}

.disable-animations {
	animation:none !important;
}

/* Flex */
.flex-container { display:flex; }
.row-wrap { flex-flow: row wrap; }
.row-reverse { flex-direction: row-reverse; }
.space-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.align-center { align-items: center; }
.order-1 { order:1; }
.order-2 { order:2; }

/* General */
* { box-sizing:border-box; }

.container {
	padding:0 var(--gutter-sm);
}

.container.fluid {
	padding:0;
}

.container.max-1550 {
	max-width:1550px;
	margin-left:auto;
	margin-right:auto;
	/* FLAG - width full could be issue */
	width: 100%;
	
}
.netsuite-form .max-1550 {
	max-width: 1200px;
}

.v-margin-lg { margin:var(--margin-lg) 0; }
.v-margin-md { margin:var(--margin-md) 0; }
.v-margin-sm { margin:var(--margin-sm) 0; }

.mb-lg { margin-bottom:var(--margin-lg); }
.mb-md { margin-bottom:var(--margin-md); }
.mb-sm { margin-bottom:var(--margin-sm); }

.mt-lg { margin-top:var(--margin-lg); }
.mt-md { margin-top:var(--margin-md); }
.mt-sm { margin-top:var(--margin-sm); }

.v-pad-lg { padding:var(--margin-lg) 0; }
.v-pad-md { padding:var(--margin-md) 0; }
.v-pad-sm { padding:var(--margin-sm) 0; }


@media(min-width:960px) {
	.hide-min-960 { display:none !important; }
	.container {
		padding:0 var(--gutter-lg);
	}
	
	.v-margin-lg { margin:var(--margin-xlg) 0; }
	.mb-lg { margin-bottom:var(--margin-xlg); }
	.mt-lg { margin-top:var(--margin-xlg); }
	
	.v-pad-lg { padding:var(--margin-xlg) 0; }

}

@media(min-width:1024px) {
	.hide-lg { display:none !important; }
}

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

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

.copy-block {
	margin:40px 0;
}

.copy-block .title {
	line-height:1.1;
}

.copy-block .container > p:last-child {
	margin-bottom:0;
}

.video-embed {
	max-width:793px;
	width:100%;
	height:315px;
	border-radius:10px;
	background:var(--color-gray-lt);
	margin:20px 0;
	display:flex;
	align-items:center;
	justify-content:center;
	position:relative;
	overflow:hidden;
}

.video-embed .play-arrow {
	background-image:url(/resources/img/play-arrow.svg);
	width:48px;
	height:52px;
	position:relative;
	z-index:1;
	transition:transform 0.28s ease;
}

.video-embed:hover .play-arrow {
	transform:scale(1.1);
}

.youtube-embed {
	position:relative;
}

.youtube-embed:before {
	content:'';
	display:block;
	padding-top:56.25%;
}

.youtube-embed iframe {
	position:absolute;
	display:block;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

.youtube-cover,
.youtube-embed iframe,
.youtube-cover:after,
.youtube-cover picture,
.youtube-cover picture img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	top: 0;
	overflow: hidden;
}
.youtube-cover:after {
	content: '';
	background: #000;
	opacity: .3;
	z-index: 2;
}

.youtube-cover {
	min-width: 100%;
	min-height: 100%;
	z-index: 3;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: .4s ease;
}
.youtube-cover.hide {
	transition-delay: .2s;
	opacity: 0;
	visibility: hidden;
}
.youtube-play {
	z-index: 5;
	position: absolute;
	margin: auto;
	max-width: 200px;
	transition: .28s ease;
	cursor: pointer;
}
.youtube-play:hover {
	opacity: .8;
	transform: scale(.98);
}
.video-description {
	max-width: 600px;
	font-size: 14px;
	margin: 15px 0 40px 0;
	letter-spacing: 0;
}

.scroller {
	display:flex;
	overflow-x: auto;
/*	scroll-behavior: smooth;*/
	padding:0 0 45px var(--gutter-sm);
	position:relative;
	z-index:1;
	scrollbar-color: #000 transparent;
	scrollbar-width: thin;
}

.image-gallery {
	margin:20px 0;
}

.image-gallery .item {
	height: auto;
    flex: 0 0 70%;
	max-width:1168px;
	background:var(--color-gray-lt);
	position:relative;
	overflow:hidden;
}

.image-gallery .item:before {
	content:'';
	display:block;
	padding-top:52%;
}

.image-gallery .item:not(:last-child) {
	margin-right:35px;
}

.dot {
	position: absolute;
    z-index: -1;
	opacity: .7;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 90%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 90%, transparent 100%);
}

@media(max-width:959px) {
	.youtube-play {
		max-width: 140px;
	}
	.video-description {
		margin-top: 10px;
		font-size: 12px;
		max-width: 275px;
	}
	.home-hero .background .dot:nth-of-type(1) {
		display: none;
	}
	.dot,
	.home-hero .background .dot:nth-of-type(2) {
	    top: 50px !important;
	    right: 0 !important;
	    overflow: hidden;
	    width: 170vw;
	    -webkit-mask-image: unset;
	    mask-image: unset;
	}
	.image-gallery .item {
	    flex: 0 0 90%;
	}

	.image-gallery .item:before {
		padding-top:56.25%;
	}

	.image-gallery .item:not(:last-child) {
		margin-right:20px;
	}
}

@media(max-width:767px) {
	.dot,
	.home-hero .background .dot:nth-of-type(2) {
	    top: 50px !important;
	    right: 0 !important;
	    overflow: hidden;
	    width: 170vw;
	    -webkit-mask-image: unset;
	    mask-image: unset;
	}
	.dot {
		top: -1% !important;
        right: 0 !important;
        transform: unset !important;
        left: unset !important;
	}
}

/* Safari right padding fix */
.scroller:after {
	content:'';
	display:block;
	flex:0 0 var(--gutter-sm);
}

.scroller::-webkit-scrollbar {
  width: 2.5px;
  height: 2.5px;
}

.scroller::-webkit-scrollbar-thumb {
  background: #000;
  border-radius: 10px;
}

.scroller::-webkit-scrollbar-track {
	background: var(--color-gray-lt);
	margin:0 var(--gutter-sm);
	border-radius: 10px;
}

@media(min-width:960px) {
	
	.center-large {
		text-align:center;
	}
	
	.copy-block {
	    margin: 75px 0;
	}
	
	.copy-block > .container {
		padding:0 10%;
	}
	
	.copy-block .title {
		margin-bottom:65px;
	}
	
	.scroller {
		padding:0 0 45px var(--gutter-lg);
	}
	
	/* Safari right padding fix */
	.scroller:after {
		content:'';
		display:block;
		flex:0 0 var(--gutter-lg);
	}
	
	.scroller::-webkit-scrollbar {
	  width: 2.5px;
	  height: 2.5px;
	}
	
	.scroller::-webkit-scrollbar-track {
		margin:0 var(--gutter-lg);
	}
	
	.scroller.lg-no-scroll {
		overflow-x:hidden;
	}
	
	.video-embed {
		max-width:1543px;
		width:100%;
		height:auto;
		border-radius:10px;
	}
	
	.video-embed:before {
		content:'';
		display:block;
		padding-top:40%;
	}
	
	.image-gallery {
	    margin: 75px 0;
	}
	
	.image-gallery .scroller {
		padding-bottom: 20px;
	}
	
	.alternating-text .alternating-item {
		display:flex;
		gap:80px;
		align-items:center;
	}
	
	.alternating-text .alternating-item:nth-child(even) {
		flex-flow:row-reverse;
	}
	
	.alternating-text .alternating-item .image,
	.alternating-text .alternating-item .item-text {
		flex-basis:50%;
	}
}

/* Top Header */
.top-header {
	position:fixed;
	min-height:75px;
	top:0;
	left:0;
	right:0;
	z-index:100;
	background-color:transparent;
	border-bottom:transparent 1px solid;
	transition:background-color 0.28s ease, border-color 0.28s ease, height 500ms cubic-bezier(0.190, 1.000, 0.220, 1.000);
}

@media(max-width:959px) {
	.top-header {
		height:70px !important;
		min-height:0;
	}
	
	.alternating-text .alternating-item:last-child {
		margin-bottom:0;
	}
	
	.alternating-text .alternating-item .image {
		margin-bottom: var(--margin-md);
	}
}

.top-header > .inner {
	padding-top:27.5px;
	transform: translateY(10px);
	-webkit-transform: translateY(10px);
	transition: transform .28s ease;
	will-change: transform;
}
.top-header.scrolled > .inner {
	transform: translateY(0px);
	-webkit-transform: translateY(0px);
}

.top-header.scrolled, .top-header.active, body.simple-header .top-header {
	background-color:#fff;
	border-color:#d9d9d9;
}

body.simple-header .header-spacer {
	content:'';
	display:block;
	height:75px;
}

.top-header .logo {
	width:30px;
	position:relative;
	z-index:2;
	transition: .28s ease;
}

.top-header .logo .logo-white {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	opacity:0;
}
.top-header .logo:hover {
	opacity: .75;
}


.top-header .logo .logo-white,
.top-header .logo .logo-orange {
	transition:opacity 0.28s ease;
}

.top-header .nav-close {
	position:absolute;
	top:25px;
	right:25px;
	cursor:pointer;
}

.main-nav ul li {
	transition:opacity 0.28s ease;
}

.main-nav ul li a,
.sub-nav a,
.configuration-nav .title,
.configuration-nav .config-select span,
.cms-content a,
.item-text a,
footer p,
footer a,
.news-detail .meta *,
.horizontal .icon,
.small-caps,
.variant-details .buttons a {
	text-transform:uppercase;
	font-family: futura-pt-bold;
	display:inline-block;
	font-size:14px;
	letter-spacing:0.08em;
}
.home-news .news-detail .meta time {
	margin-right: 20px;
}

.cms-content p a {
	font-family: nimbus-sans, sans-serif;
	text-transform: unset;
	font-size: unset;
	letter-spacing: unset;
}

.main-nav ul li a, .sub-nav a {
	position:relative;
	color:var(--color-gray);
	letter-spacing:0.05em !important;
}

.top-header.child-menu-active .main-nav > ul > li:not(.selected),
.top-header .main-nav ul.child-menu-active > li:not(.selected) {
	opacity:0.2;
}

.sub-nav {
	display:flex;
	gap:20px;
	justify-content:center;
}

.sub-nav a:after {
	content:'';
	display:block;
	position:absolute;
	background:var(--color-orange);
	width:100%;
	height:3px;
	bottom:-2px;
	left:0;
	width:0;
	transition: width 0.28s ease;
}

.sub-nav a.subActive:after {
	width:100%;
}

.main-nav .color-callouts-orange span { color:var(--color-orange); }
.main-nav .color-callouts-orange-drk span { color:var(--color-orange-drk); }
.main-nav .color-callouts-blue span { color:var(--color-blue); }
.main-nav .color-callouts-blue-drk span { color:var(--color-blue-drk); }
.main-nav .color-callouts-gray-brand span { color:var(--color-gray-brand); }
.main-nav .color-callouts-gray-lt span { color:var(--color-gray-lt); }
.main-nav .color-callouts-black-off span { color:var(--color-black-off); }


.logo-theme-light .top-header:not(.scrolled):not(.active) .logo .logo-white {
	opacity:1;
}

.logo-theme-light .top-header:not(.scrolled):not(.active) .logo .logo-orange {
	opacity:0;
}

@media(min-width:1024px) {
	
	.sub-nav {
		gap:50px;
	}
	
	.two-column {
		column-count:2;
		column-gap:60px;
	}
	
	.top-header .logo {
		width:35px;
	}
	
	.top-header {
		height:90px;
		overflow:hidden;
	}
	
/*	.top-header > .inner {
		padding:22px 0;
	}*/
	
	.top-header .container {
		padding-right: 60px;
	}
	.main-nav ul li a {
		color: var(--color-gray);
	}
	
	.nav-theme-light .top-header:not(.scrolled):not(.active) .main-nav ul li a {
		color:#fff;
	}
	
	.main-nav ul li a:after, .sub-nav a:after {
		content:'';
		display:block;
		position:absolute;
		background:var(--color-orange);
		width:100%;
		height:2.5px;
		bottom:-2px;
		left:0;
		width:0;
		transition: width 0.28s ease;
	}

	.main-nav ul li.selected > a:after, .main-nav ul li:hover > a:after, .sub-nav a.subActive:after {
		width:100%;
	}
	
	.top-header > .inner, .nav-collapse > .inner > .container {
		display:flex;
		align-items:center;
		
	}
	
	.top-header, .nav-collapse {
		flex-grow:1;
	}
	
	.nav-collapse {
		height:auto !important;
	}
	
	.nav-collapse > .inner > .container {
		justify-content:space-between;
		align-items:center;
		padding:0 45px 0 0;
	}
	
	.main-nav > ul {
		display:flex;
		gap:20px;
	}
	
	.main-nav > ul > li {
		cursor: pointer;
		position:relative;
	}
	
	.main-nav > ul > li > a {
		white-space:nowrap;
	}
	
	.main-nav > ul > li > ul {
		position:absolute;
		opacity:0;
		visibility:hidden;
		top:18px;
		left:0;
		min-width:250px;
		transition: visibility 0s linear 300ms, opacity 300ms;
	}
	
	.main-nav > ul > li > ul > li > ul {
		position:relative;
		opacity:0;
		visibility:hidden;
		padding-top:0;
		padding-left:20px;
		min-width:250px;
		max-height:0px;
		overflow:hidden;
		transition: visibility 0s linear 300ms, opacity 300ms;
	}
	
	.main-nav > ul > li > ul > li > ul li:last-child {
		margin-bottom:3px;
	}
	
	.main-nav ul li.selected > ul {
		opacity:1;
		visibility:visible;
		transition: visibility 0s linear 0s, opacity 300ms;
	}
	
	.main-nav > ul > li > ul > li.selected > ul {
		max-height:600px;
		opacity:1;
		visibility:visible;
		transition: visibility 0s linear 0s, opacity 300ms;
		padding-top:20px;
	}
	
	.main-nav ul li:hover > a:after, .main-nav ul li.current > a:after,
	.main-nav ul li a.current:after {
		width:100%;
	}
	
	.main-nav > ul > li ul {
		padding-top:32px;
	}
	
	.main-nav > ul > li ul li {
		margin-bottom:20px;
		cursor: pointer;
	}
}

/*@media(min-width:1200px) {
	.top-header > .inner {
		padding:16px 0;
	}
}*/

@media(min-width:1440px) {
	.main-nav ul {
		gap:33px;
	}
	
	.main-nav ul li a, .sub-nav a {
		font-size:15px;
	}
	
	.nav-collapse > .inner > .container {
		justify-content:flex-start;

	}
}

@media(max-width:1023px) {
	.top-header > .inner {
		padding-top: 20px;
		transform:translateY(5px);
		-webkit-transform:translateY(5px);
	}
	
	@keyframes navTopBarOpen {
		0% {
			-webkit-transform:translateY(4px);
			transform:translateY(4px);
			animation-timing-function: ease-out;
		}
		50% {
			-webkit-transform:translateY(0px);
			transform:translateY(0px);
			animation-timing-function: ease-out;
		}
		100% {
			-webkit-transform: translateY(0px) rotate3d(0, 0, 1, 45deg);
			transform: translateY(0px) rotate3d(0, 0, 1, 45deg);
			animation-timing-function: ease-out;
		}
	}
	
	@keyframes navTopBarClose {
		0% {
			transform: translateY(0px) rotate3d(0, 0, 1, 45deg);
			-webkit-transform: translateY(0px) rotate3d(0, 0, 1, 45deg);
			animation-timing-function: ease-out;
		}
		50% {
			transform: translateY(0px) rotate3d(0, 0, 1, 0deg);
			-webkit-transform: translateY(0px) rotate3d(0, 0, 1, 0deg);
			animation-timing-function: ease-out;
		}
		
		100% {
			transform:translateY(-4px);
			-webkit-transform:translateY(-4px);
			animation-timing-function: ease-out;
		}
	}
	
	@keyframes navBottomBarOpen {
		0% {
			transform:translateY(-4px);
			-webkit-transform:translateY(-4px);
			animation-timing-function: ease-out;
		}
		50% {
			transform:translateY(0px);
			-webkit-transform:translateY(0px);
			animation-timing-function: ease-out;
		}
		100% {
			transform: translateY(0px) rotate3d(0, 0, 1, -45deg);
			-webkit-transform: translateY(0px) rotate3d(0, 0, 1, -45deg);
			animation-timing-function: ease-out;
		}
	}
	
	@keyframes navBottomBarClose {
		0% {
			transform: translateY(0px) rotate3d(0, 0, 1, -45deg);
			-webkit-transform:transform: translateY(0px) rotate3d(0, 0, 1, -45deg);
			animation-timing-function: ease-out;
		}
		50% {
			transform: translateY(0px) rotate3d(0, 0, 1, 0deg);
			-webkit-transform: transform: translateY(0px) rotate3d(0, 0, 1, 0deg);
			animation-timing-function: ease-out;
		}
		100% {
			transform:translateY(4px);
			-webkit-transform:translateY(4px);
			animation-timing-function: ease-out;
		}
	}
	
	#mobile-nav-cta {
		color:#fff;
		font-size:13px;
		letter-spacing: 0.05em;;
		font-family: futura-pt-bold;
		cursor:pointer;
		padding:0;
		position:relative;
		z-index:100;
		height:30px;
		width:28px;
	}
	
	#mobile-nav-cta:before, #mobile-nav-cta:after {
		content:'';
		display:block;
		width:28px;
		height:2px;
		background:var(--color-gray);
		position:absolute;
		left:0;
		top:50%;
		transition:transform 0.28s ease;
	}
	
	body.nav-theme-light #mobile-nav-cta:not(.open):before, body.nav-theme-light #mobile-nav-cta:not(.open):after {
		background:#fff;
	}
	body.nav-theme-light .scrolled #mobile-nav-cta:not(.open):before,
	body.nav-theme-light .scrolled #mobile-nav-cta:not(.open):after {
		background: var(--color-black-off);
	}
	
	#mobile-nav-cta:before {
		transform:translateY(-4px) rotate3d(0, 0, 1, 0deg);
	}
	
	#mobile-nav-cta:after {
		transform:translateY(4px) rotate3d(0, 0, 1, 0deg);
	}
	
	#mobile-nav-cta.open:before {
/*	  transform: rotate3d(0, 0, 1, 45deg);*/
		animation: navTopBarOpen 0.5s;
		animation-fill-mode: forwards;
	}

	#mobile-nav-cta.open:after {
/*	  transform: rotate3d(0, 0, 1, -45deg);*/
		animation: navBottomBarOpen 0.5s;
		animation-fill-mode: forwards;
	}
	
	#mobile-nav-cta.close:before {
		animation: navTopBarClose 0.3s;
	}
	
	#mobile-nav-cta.close:after {
		animation: navBottomBarClose 0.3s;
	}

	.nav-collapse {
		position:absolute;
		z-index:1;
		top:0;
		left:0;
		right:0;
		background-color:#fff;
		overflow:hidden;
		opacity:0;
		visibility:hidden;
		height:100vh !important;
		transition: visibility 0s linear 300ms, opacity 300ms;
	}
	
	.nav-collapse.open {
		opacity:1;
		visibility:visible;
		transition: visibility 0s linear 0s, opacity 300ms;
	}
	
/*	.nav-collapse.auto {
		height:auto !important;
	}*/

	.nav-collapse > .inner > .container {
		padding-top:140px;
		padding-bottom:12px;
	}

	.main-nav > ul {
		position:relative;
/*		max-width:500px;*/
	}

	.main-nav > ul > li {
/*		width:50%;*/
		display:block;
		position:relative;
		padding-top:8px;
		opacity: 0;
		transition: opacity .5s ease;
	}

	.main-nav > ul > li.revealed {
		opacity: 1;
	}
	
	.main-nav > ul > li:before {
		content:'';
		display:block;
		position:absolute;
		background:var(--color-orange);
		width:0%;
		height:2px;
		top:0px;
		left:0;
		transition: width 0.28s ease;
	}
	
	.main-nav > ul > li.revealed:before {
		width:100%;
	}
	
	.main-nav > ul > li .caret {
		content:'';
		display:block;
		position:absolute;
		background-image:url(/resources/img/caret.svg);
		background-size:contain;
		background-repeat:no-repeat;
		background-position:center;
		width:12px;
		height:8px;
		top:12px;
		right:0px;
		transform:rotate(180deg);
		opacity:0;
		transition: transform 0.28s ease, opacity 0.5s ease;
	}
	
	.main-nav > ul > li.revealed .caret {
		opacity:1;
	}

	.main-nav ul li a {
		display:block;
		font-size:15px;
		position:relative;
		z-index:1;
/*		margin-bottom:26px;*/
	}
	
	.main-nav ul li ul {
/*		padding: 10px 0 30px;*/
	}
	
	.main-nav > ul > li {
		margin-bottom:50px;
	}
	
	.main-nav > ul > li > ul > li:first-child {
		padding-top:30px;
	}
	
	.main-nav > ul > li > ul > li {
		margin-bottom:16px;
	}
	
	.main-nav ul li ul li a {
		font-size:15px;
/*		margin-bottom:16px;*/
	}

	.main-nav > ul > li ul {
		opacity:0;
		visibility:hidden;
		max-height:0;
		transition: visibility 0s linear 300ms, opacity 300ms, max-height 300ms;
	}

	.main-nav ul li.selected > ul {
		opacity:1;
		visibility:visible;
		max-height:300px;
		transition: visibility 0s linear 0s, opacity 300ms, max-height 1s;
	}

	.main-nav ul ul {
		height: 0;
		overflow: hidden;
	}
	.main-nav .selected ul {
		height: 100%;
	}
	
	.main-nav ul li.selected .caret {
		transform:rotate(0deg);
	}
	
}

/* Footer */
.footer {
	background:var(--color-gray);
	padding:40px 0;
	font-size:13px;
	font-family: futura-pt-bold;
}

.footer .title {
	font-size:13px;
	margin-bottom:0.75rem;
}

.footer ul {
	margin:0;
}

.footer ul li {
/*	margin-bottom:1rem;*/
	line-height:2;
}

.footer .logo {
	display:block;
	width:160px;
}

.footer .social-nav {
	display:flex;
	align-items:center;
	gap:24px;
	margin-bottom:1.6rem;
}

.footer .social-nav a {
	display:block;
	width:21px;
	height:21px;
}

.footer .social-nav a img {
	width:100%;
	display:block;
}

.footer .social-nav a.linkedin img {
	width:90%;
}



.footer .columns {
	margin-top:35px;
	display:flex;
	justify-content:space-between;
}

/*.footer .footer-nav {
	flex-grow:1;
}

.footer .footer-nav > ul {
	display:flex;
	justify-content:space-between;
}*/

.footer .copyright {
/*	font-family: nimbus-sans;*/
/*	font-size:10px;*/
/*	margin:1rem 0 0 0;*/
	color:#fff;
}

.footer a {
	transition: opacity 0.28s ease;
}

.footer a:hover {
	opacity:0.6;
}

/*.footer ul ul {
    margin-top: 1rem;
}*/

.footer-nav ul {
	display:flex;
	gap:20px;
}

.footer-nav ul li a {
	color:#fff;
}

@media(min-width:1024px) {
	
/*	.footer .footer-column:first-child {
		display:flex;
		flex-flow:column-reverse;
	}*/
	
	.footer {
		padding:100px 0;
	}
	
	.footer .footer-column .connect {
		display:flex;
		gap:4rem;
		align-items:flex-end;
		margin-bottom:2.5rem;
  	}
	
	.footer .logo {
		display:block;
		width:215px;
	}
	
}

@media(min-width:1300px) {
	
	.footer {
		font-size:16px;
	}
	
	.footer .title {
		font-size:16px;
	}
	
	.footer .social-nav a {
		width:30px;
		height:30px;
	}
	
/*	.footer .copyright {
		font-size:16px;
		margin:2.5rem 0 0 0;
	}*/
}

@media(max-width:1150px) {
	.top-header .container {
		padding-right: 30px;
	}
}

@media(max-width:1023px) {
	
	.footer .footer-column {
		margin-bottom:20px;
	}
	
	.footer .columns {
		flex-flow:wrap;
	}
	
	.footer .footer-column {
		flex:0 0 50%;
		margin-bottom:2rem;
	}
	
	.footer .footer-column:first-child {
		flex:0 0 100%;
	}
}

.page-sections .text-section:not(:last-child) {
/*	border-bottom: var(--color-gray-lt) 2px solid;*/
/*	padding-bottom: var(--margin-lg);*/
}

.page-sections .text-section > div:last-child,
.page-sections .text-section > div:last-child > *:last-child {
	margin-bottom:0;
}

.page-sections .text-section .button-group {
	margin-top: var(--margin-md);
}

.page-sections .text-section .tout .button-group {
	display:block;
	margin:-10px;
}

.page-sections .text-section .tout .button-group .btn {
	margin:10px;
}

.page-sections .text-section h1,
.page-sections .text-section h2,
.page-sections .text-section h3,
.page-sections .text-section h4,
.page-sections .text-section h5,
.page-sections .text-section h6 {
	color: var(--color-gray);
	margin-bottom: var(--margin-sm);
}

.page-sections .text-section p {
	max-width: 800px;
}

.page-sections .text-section h2 {
	max-width: 600px;
}

/* intro utilities */

/* height*/
.height-normal {
	height: unset;
	min-height: 500px;
}
.height-half-screen {
	height: 60svh;
	max-height: 1300px;
	min-height: 700px;
}
.height-full-screen {
	height: 100svh;
	max-height: 1300px;
	min-height: 700px;
}

/* text align */
.text-left .text,
.text-left .text * {
	text-align: left;
}

.text-center .text,
.text-center .text * {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	
}

.text-right .text,
.text-right .text * {
	text-align: right;
}

.intro-section {
	overflow: hidden;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: 250px 0 100px 0;
}
.intro-section.normal-intro {
	padding-top: 50px;
	padding-bottom: unset;
}
.intro-section.normal-intro h1 {
	max-width: 100%;
}
.intro-section.normal-intro * {
	color: var(--color-black-off) !important;
}
.intro-section.normal-intro:before {
	content: unset;
}
.intro-section picture,
.intro-section picture img,
.intro-section video {
	top: 0;
	left: 0;
	position: absolute;
	object-fit: cover;
	margin-bottom: auto;
	z-index: 0;
	width: 100%;
	height: 100%;
}
.intro-section .text {
	position: relative;
	z-index: 2;
}
.intro-section .text * {
	color: #fff;
	max-width: 800px;
}
.intro-section h1 {
    font-size: 100px;
    line-height: 1;
}

.page-intro {
	position:relative;
	max-width:960px;
	margin-left:auto;
	margin-right:auto;
}

.quote-section {
	display: flex;
    position: relative;
    min-height: 500px;
    background: var(--color-orange);
    margin-top: 0;
	max-width: 1450px;
	margin-left: auto;
	margin-right: auto;
}

.quote-section .quote,
.quote-section .image {
	width: 50%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.quote-section .image {
	position: absolute;
    right: 0;
}

.quote-section .quote.no-image {
	width: 100%;
}

.quote-section .quote.no-image p {
	max-width: 1000px;
}

.quote-section picture,
.quote-section img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.quote {
	min-height: inherit;
	padding: 100px;
}

.quote-section .h2 {
	font-size: 1.5em;
	line-height: 1.5em;
}
.quote p {
	color: #fff;
	margin: 0;
}

.quote p:before, .quote p:after {
	display:inline-block;
	position:absolute;
	font-size:1.5em;
	line-height:1em;
}

.quote p:before {
	content:'“';
	transform:translateX(-30px);
	
}

.quote p:after {
	content:'”';
	transform:translateX(3px);
}

@media(min-width:960px) {
	
	.page-sections .text-section:not(:has(.news-post-item)) .text {
		margin-left:10%;
		margin-right:10%;
	}
	
	.page-sections .text-section:not(:last-child) {
		padding-bottom: 0;
		margin-bottom: 0;
	}
	.quote-section{
		margin-top: var(--margin-xlg);
	}
}

@media(max-width:959px) {
	.intro-section .text h1 {
		margin-bottom: 15px;
	}
	.intro-section .text p {
		max-width: 500px;
	}
	.quote-section .quote {
		background: transparent;
		z-index: 2;
	}
	.quote-section .image {
		z-index: 1;
	    opacity: .25;
	    mix-blend-mode: luminosity;
	}
	.quote-section .quote,
	.quote-section .image {
		width: 100%;
	}
	.quote-section {
		min-height: 400px;
	}
}
@media(max-width:630px) {
	.quote-section .quote {
		padding: 60px;
	}
}
@media(max-width:500px) {
	.quote p {
		font-size: 4.75vw;
	}
	.quote-section .quote {
     padding: 50px; 
	}
}

/* Hero */
.hero:before {
	padding-top:800px;
}
.hero.short:before {
	padding-top:56.25%;
}
@media(min-width:960px) {
	.hero:before {
		padding-top:56.25%;
	}
	
	.hero.short:before {
		padding-top:30%;
	}
}
.hero .background {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	z-index:0;
	overflow: hidden;
}
.hero > .ratio-inner {
	display:flex;
	align-items:center;
	z-index:2;
}
.hero > .ratio-inner .text {
	width:100%;
}
.hero .h1 {
	line-height:1;
}
.hero .h1 {
	margin-bottom:1.2rem;
}
@media(max-width:959px) {
	.hero .background {

	}
}

/* Home */

.hero.home-hero > .ratio-inner {
	align-items:flex-end;
}

.hero.home-hero > .ratio-inner > .text {
	margin-bottom:40px;
	text-align:center;
}

.hero.home-hero > .ratio-inner .text .container {
	max-width:1600px;
	margin:0 auto;
}

.hero.home-hero .h1 {
	margin-bottom:0.7rem;
}

.hero.home-hero .h3 {
	margin-bottom:2.2rem;
}

.hero .button-group {
		justify-content:center;
	}

@media(min-width:960px) {
/*	.hero.home-hero > .ratio-inner .text {
		margin-top:10%;
	}*/
	
	.hero.home-hero .h1 {
		max-width:800px;
		margin-bottom:1.6rem;
	}
	
	.hero.home-hero .h3 {
		margin-bottom:2.4rem;
	}
	
/*	.hero:not(.home-hero) .text {
		text-align:center;
		max-width:850px;
		margin:0 auto;
	}*/
	
/*	.hero:not(.home-hero) .button-group {
		justify-content:center;
	}*/
}

@media(max-width:959px) {
	
	.hero.home-hero .h3 {
		font-size:1.428rem;
	}

}

.home-intro {
	margin-top:35px;
}

.home-intro p {
	font-size:16px;
	line-height:1.625;
}


@media(min-width:960px) {
	
	.home-intro {
		display:flex;
		gap:60px;
		align-items:center;
		max-width:1111px;
		margin:80px auto 50px;
	}
	
	.home-intro img.icon-check {
		width:187px;
		margin-bottom:0px;
	}
	
	.home-intro p {
		font-size:30px;
		line-height:1.33;
		margin:0;
	}
}

.slider-header {
	display:flex;
	flex-flow:wrap;
	gap:10px;
	align-items:center;
}

.slider-arrows {
	display:flex;
	gap:10px;
}

.slider-arrows .arrow,
.modal-close {
width:56px;
	height:56px;
	background-color: var(--color-orange);
	border-radius:999px;
	position:relative;
	cursor:pointer;
	transition:filter 0.28s ease, background 0.28s ease;
}

.slider-arrows .arrow .arrow-icon {
	position:absolute;
	top:50%;
	left:50%;
	width:10px;
	height:16px;
	transition:transform 0.28s ease;
}

.slider-arrows .arrow .arrow-icon:before,
.select-variant .arrow-icon:before {
	content:'';
	display:block;
	width:100%;
	height:100%;
	transform:translate(-50%, -50%);
	background-image:url(/resources/img/caret-white.svg);
	background-repeat:no-repeat;
	background-position:center;
	background-size: contain;
}

.slider-arrows .arrow.prev .arrow-icon:before {
	transform:translate(-50%, -50%) rotate(180deg);
}

.slider-arrows .arrow:not(.disabled):not(.glide__arrow--disabled):hover,
.modal-close:hover {
filter:brightness(115%);
}

.slider-arrows .arrow.prev:not(.disabled):not(.glide__arrow--disabled):hover .arrow-icon {
	transform:translateX(-1px);
}

.slider-arrows .arrow.next:not(.disabled):not(.glide__arrow--disabled):hover .arrow-icon {
	transform:translateX(3px);
}

.slider-arrows .arrow.disabled, .slider-arrows .arrow.glide__arrow--disabled {
	cursor:default;
	background-color:#ddd;
	opacity:1;
}

.news-slider {
	overflow:hidden;
	padding-left: var(--gutter-sm);
}

.news-slider .glide .glide__track {
	overflow:visible;
}

/*.news-slider .glide {
	padding-right:40px;
}*/

.news-slider:not(.horizontal-slider) .news-post-item {
	border: var(--color-gray) 2px solid;
	height:100%;
	padding-bottom:40px;
}

.news-slider:not(.horizontal-slider) .news-post-item .text {
	padding:0 20px;
	white-space:normal;
}
.horizontal .news-slider .news-post-item .text {
	margin-left: unset;
	margin-right: unset;
}
.news-slider .news-post-item .feature-image:before {
	padding-top:79.4%;
}
.horizontal .news-slider .news-post-item .feature-image:before {
	padding-top: unset;
}

.news-slider .news-post-item .feature-image img {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:cover;
}

.news-slider .glide__slides li {
	height:auto;
}

@media(min-width:768px) {
	.news-slider:not(.horizontal-slider) .news-post-item .text {
		padding:0 50px;
	}
}

@media(min-width:1025px) {
	.slider-header {
		gap:75px;
	}
}

@media(min-width:960px) {
	.news-slider {
		padding-left: var(--gutter-lg);
	}
}

@media(max-width:959px) {
	.horizontal .news-slider .news-post-item .image {
		margin-bottom: var(--margin-sm);
	}
	.intro-section h1 {
		font-size: 11vw;
	}
	.slider-arrows {
		display:none;
	}
}

/*.news-slider .glide .glide__track {
	overflow:visible;
}*/

/* Video Slider */

.applications-section {
	height: calc(100vh - 90px);
	min-height: 600px;
}
.wall-slider-section {
	height: 100vh;
	min-height: 800px;
}
.wall-slider .glide,
.applications-slider .glide,
.wall-slider .glide__track,
.applications-slider .glide__track,
.wall-slider.video-slider,
.applications-slider.video-slider,
.wall-slider .glide__slides,
.applications-slider .glide__slides {
	height: 100%;
}

.wall-slider .glide,
.applications-slider .glide {
	cursor: unset !important;
}

.video-slider .slide-content-layer.nav-layer {
    position: relative;
    z-index: 2;
    bottom: 62px;
}

.video-slider {
	background:#000;
}

.video-slider .glide__slides li {
	height:auto;
}

.video-slide .background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.video-slide video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    object-fit: cover;
    object-position: center;
	filter: brightness(0.75);
}

.video-slide .background:before,
.intro-section:before {
	content:'';
	display:block;
    position: absolute;
	z-index:1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	background-image:url(/resources/img/video-slide-shadow.jpg);
	background-size:cover;
	background-position:center center;
	mix-blend-mode: multiply;
	opacity:0.9;
}
.intro-section:before {
	filter: brightness(.75);
}

.video-slider .slide-content-layer {
	position:relative;
	z-index:1;
}
.video-slider .slide-content-layer:not(.nav-layer) {
	display:flex;
	align-items:center;
	height: 100%;
}
.applications-slider.video-slider .slide-content-layer:not(.nav-layer) {
	align-items: flex-end;
	bottom: 130px;
}

.video-slider .slide-content-layer .text {
	max-width:760px;
}

.video-slider .glide__bullets {
	position:static;
	transform:none;
	max-width:760px;
	width:100%;
	display:flex;
	gap:15px;
}

.video-slider .glide__bullets .glide__bullet {
	background:rgba(255,255,255,0.25);
	box-shadow:none;
	border-radius:0;
	border:none;
	flex:1 1 100%;
	width:auto;
	height:2.5px;
	position:relative;
	overflow:hidden;
}

.video-slider .glide__bullets .glide__bullet .indicator {
	position:absolute;
	top:0;
	left:0;
	width:0;
	height:100%;
	background:#fff;
/*	transition:width 0.28s ease;*/
}

/* this prevents the usual sliding transition effect from being visible:*/
.video-slider .glide__slides {
  transition: none !important;
}

/* and this creates the fade in/out effect of the slides:*/
.video-slider .glide__slides li {
  opacity: 0;
  transition: opacity 0.7s ease;
}
.video-slider li.glide__slide--active {
  opacity: 1;
}

.tech-text {
	display:none;
}

.docs .container.max-1550 {
	max-width: unset;
	padding:0;
}
.docs .button-group {
	width: 100%;
	overflow: scroll;
}
.docs .text {
	margin: unset !important;
}
.docs h2,
.docs p {
	padding-left: 15vw;
}
.docs .button-group .btn:first-of-type {
	margin-left: 15vw;
}
.docs .button-group .btn:last-of-type {
	margin-right: 5vw;
}
.docs .button-group,
.partner-buttons {
	scrollbar-width: none;
	-ms-overflow-style: none;
	-webkit-overflow-scrolling: touch;
	padding-top: 3px;
}
.docs .button-group::-webkit-scrollbar,
.partner-buttons {
  display: none;
}
.docs .button-group .btn:last-of-type {
	position: relative;
}
.docs .button-group .btn:last-of-type:after {
    content: '';
    position: absolute;
    width: 20px;
    right: -22.5px;
    height: 10px;
}

@media(max-width:1199px) {
	.wall-slider-section {
	    min-height: 700px;
	}
	.applications-section {
		height: calc(100vh - 70px);
		min-height: 600px;
	}
}

@media(max-width:959px) {
	.docs h2,
	.docs p {
		padding-left: 20px;
		padding-right: 20px;
	}
	.docs p {
		max-width: 600px !important;
	}
	.docs .button-group {
		margin-top: 10px !important;
	}
	.docs .button-group .btn:first-of-type {
		margin-left: 20px;
	}
	.docs .button-group .btn:last-of-type {
		margin-right: 20px;
	}
	.wall-slider-section,
	.applications-section {
	    min-height: 550px;
	    max-height: 1000px;
	}
}

@media(max-width:767px) {
	.video-slider .slide-content-layer.nav-layer {
	    bottom: 30px;
	}
	.video-slider .slide-content-layer:not(.nav-layer) {
	    bottom: 90px !important;
	    align-items: flex-end;
	}
	.video-slider .glide__bullets .glide__bullet {
		margin: 0;
	}
	.applications-slider .video-slide .copy p, .applications-slider .video-slide .h4 {
		margin-bottom: 25px;
	}
}

@media(min-width:960px) {
	
	.tech-text {
		display:block;
		font-family: futura-pt,sans-serif;
		font-weight: 300;
		font-style: normal;
		font-size:16px;
		letter-spacing: .05em;
		position:absolute;
		color:var(--color-gray-brand);
	}

	.tech-text b {
		font-weight: normal;
	}

	.tech-text.tech-left {
		transform-origin:top left;
		left:var(--gutter-lg);
		bottom:17px;
		transform:rotate(-90deg);
	}

	.tech-text.tech-right {
		transform-origin:top right;
		right:var(--gutter-lg);
		bottom:0px;
		transform:rotate(90deg);
		text-align:right;
	}

	.tech-text .no-color * {
		color: #7A7A7A !important;
	}
	.product-wall .tech-text .no-color * {
		color: #fff !important;
	}
	.or {
		color: inherit;
		font-size: .6em;
		position: relative;
		top: -.19em;
		margin: 0 .25em;
	}
	.tech-text span {
		margin-right: 18px;
		letter-spacing: .05em;
	}
	.tech-text span.more {
		margin-right: 4.5px;
	}
	.tech-text span.mode {
		margin-right: 9px;
	}

	.tech-text .blink {
		animation: blink 1s steps(5, start) infinite;
	    -webkit-animation: blink 1s steps(5, start) infinite;
	}

	@keyframes blink {
		to {
		  visibility: hidden;
		}
	}
	@-webkit-keyframes blink {
		to {
		  visibility: hidden;
		}
	}

	@property --num {
	  syntax: "<integer>";
	  initial-value: 0;
	  inherits: false;
	}

	@property --nu {
	  syntax: "<integer>";
	  initial-value: 2;
	  inherits: false;
	}

	.animate-number-1 {
	  animation: counter-1 2s infinite alternate ease-in-out;
	  counter-reset: num var(--num);
	}
	.animate-number-2 {
		animation: counter-2 4s infinite alternate ease-in-out;
		counter-reset: num var(--nu);
	}
	.animate-number-1::after,
	.animate-number-2::after {
	  content: counter(num);
	}

	@keyframes counter-1 {
	  from {
	    --num: 0;
	  }
	  to {
	    --num: 5;
	  }
	}

	@keyframes counter-2 {
	  from {
	    --nu: 0;
	  }
	  to {
	    --nu: 9;
	  }
	}
}

@media(max-width:1100px) {
	.home-hero .tech-text {
		display: none;
	}
}

/* Touts Grid */

.touts-grid .tout {
	background: var(--color-gray-lt);
	position:relative;
	overflow:hidden;
}

.touts-grid .tout picture img, .touts-grid .tout video {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
	filter:brightness(0.6);
}

.touts-grid .tout.wide picture img, .touts-grid .tout.wide video {
	filter:brightness(1);
	mix-blend-mode: hard-light;
	opacity:0.25;
}

.touts-grid .tout.tall:before,
.touts-grid .tout.wide:before {
	padding-top:126%;
}

.touts-grid .tout.wide {
	margin-top:8px;
	flex:0 0 100%;
	background:var(--color-orange);
}


/*.touts-grid.split-touts .tout:before {
	padding-top:112%;
}*/

.touts-grid .tout .text {
	position:absolute;
	z-index:1;
	left:35px;
	bottom:45px;
	margin-right: 35px;
}

.touts-grid .tout .text .title {
	margin-bottom:0.6rem;
}

.touts-grid .tout .text .copy {
	max-width:390px;
}

.touts-grid .tout .text.left-top {
	position:absolute;
	z-index:1;
	left:24px;
	top:24px;
	bottom:auto;
}

.touts-grid .tout .text .title {
	font-size:2.33rem;
}

.touts-grid .tout .video-embed {
	padding-top:0;
	width:110%;
	height:110%;
	position:absolute;
	top:-5%;
	left:-5%;
}

@media(min-width:1150px) {
	
	.touts-grid {
		display:flex;
		overflow:hidden;
		gap:50px;
	}
	
	.touts-grid.tall-right {
		flex-flow:row-reverse;
	}
	
	.touts-grid .tout.tall:before {
		padding-top:80%;
	}
	
	.touts-grid .tout.wide:before {
		padding-top:40%;
	}
	
	.touts-grid .column {
		flex:0 1 62%;
	}
	
	.touts-grid .column.column2 {
		flex:0 1 38%;
		display:flex;
		flex-direction:column;
		gap:50px;
	}
	
	.touts-grid .column.column2 .tout {
		flex:0 1 50%;
	}
	
	.touts-grid .tout.wide {
		margin-top:50px;
	}
	
	.touts-grid .tout .text {
		left:48px;
		bottom:48px;
	}
	
	.touts-grid .column.column2 .tout .text {
		right:48px;
		left:auto;
		text-align: right;
		align-items: flex-end;
	    display: flex;
	    flex-direction: column;
	    margin-right: unset;
	}
	.touts-grid .column.column2 .tout .text p {
		max-width: 280px;
	}
	.touts-grid .column .tout .text p {
		margin-bottom: 30px;
	}
	
	.touts-grid .tout.wide .text {
		left:50%;
		top:50%;
		bottom:auto;
		transform:translate(-50%,-50%);
		text-align:center;
	}
	
	.touts-grid .tout.wide .text .copy {
		margin-left:auto;
		margin-right:auto;
	}
	
	.touts-grid .tout.wide .text .buttons {
		justify-content:center;
	}
	
	.touts-grid .tout .text .title {
		font-size:3.5rem;
	}
	
}

@media(max-width:1550px) {
	.touts-grid .tout .text .title {
	    font-size: 3.5vw;
	}
	.touts-grid .column .tout .text p {
	    margin-bottom: 20px;
	}
	.touts-grid .tout.tall:before {
	    padding-top: 90%;
	}
}

@media(max-width:1230px) {
	.touts-grid .tout.tall:before {
	    padding-top: 100%;
	}
}

@media(max-width:1149px) {
	.touts-grid .tout .text .title {
	    font-size: 2.33rem;
	}
	.touts-grid .circle-text {
		display: none !important;
	}
	.touts-grid .tout:before, .touts-grid .tout.tall:before {
		content:'';
		display:block;
	}
	
	.touts-grid .tout.tall:before,
	.touts-grid .tout.wide:before,
	.touts-grid .tout:before,
	.touts-grid .tout.tall:before {
		padding-top: 450px;
	}
	
	.touts-grid .tout {
		margin-bottom:50px;
	}
	
	.touts-grid .tout.wide {
	    margin-top: 50px;
	}
	
	.touts-grid .column.column2 .tout:last-child {
		margin-bottom:0;
	}
	
	.touts-grid .tout .video-embed {
		padding-top:0;
		width:250%;
		height:250%;
		position:absolute;
		top:-75%;
		left:-75%;
	}
	
	.mobile-scroll {
		overflow-x:auto;
		margin-left: -20px !important;
		margin-right: -20px !important;
		padding:0 20px 0;
		scrollbar-width: none;
	  -ms-overflow-style: none;
	  -webkit-overflow-scrolling: touch;
	}
	.mobile-scroll::-webkit-scrollbar {
	  display: none;
	}
}
.mobile-scroll a:last-of-type {
	position: relative;
}
.mobile-scroll a:last-of-type:after {
    content: '';
    position: absolute;
    width: 20px;
    right: -22.5px;
    height: 10px;
}
.horizontal-slider .glide__slide {
  width: 100%;
}
.horizontal {
	min-height: 500px;
	width: 100%;
}
.horizontal .container {
	border: 2px solid var(--color-gray-lt);
}
.horizontal .icons {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.horizontal .name {
	margin-bottom: 15px;
}
.horizontal .icons,
.horizontal .button-group {
	margin-top: 20px;
}
.horizontal .icon {
	display: flex;
	align-items: center;
}
.horizontal .news-detail .text h4,
.horizontal .news-detail .text h3 {
	font-size:1.25rem;
}
.horizontal .news-detail .text p {
	color: var(--color-gray-txt);
}
.horizontal .news-detail .post-title {
	margin-bottom: 15px;
}
@media (min-width: 960px) {
    .horizontal .news-detail .text h4,
	.horizontal .news-detail .text h3 {
        font-size: 1.11rem;
    }
}
.horizontal .icon:first-of-type {
	gap: 13px;
}
.horizontal .icon:nth-of-type(2) {
	gap: 10px;
}
.horizontal .icon:first-of-type img {
	width: 20px;
}
.horizontal .icon:nth-of-type(2) img {
	width: 23px;
}
.horizontal .icon * {
	color: var(--color-black-off);
}

.horizontal .image {
	background-color: var(--color-orange) !important;
}

.horizontal .image img {
	height: 100%;
    object-fit: cover;
}
.horizontal .item-text {
	overflow: scroll;
	scrollbar-width: none;
	-ms-overflow-style: none;
	-webkit-overflow-scrolling: touch;
	display: flex;
    flex-direction: column;
    justify-content: flex-end;
	transition: .5s ease;
}
.horizontal .item-text,
.item-text .full {
	padding: 50px;
}
.read-toggle {
	cursor: pointer	!important;
}
.item-text h2 {
	overflow-wrap: break-word;
    word-break: break-word;
    hyphens: auto;
}
.item-text h2.long {
	font-size: 1.75rem;
}
.item-text > * {
  transition: opacity 0.28s ease;
}

/* Default collapsed state */
.item-text .toggle-content .full {
  display: none;
}

.item-text .toggle-content .preview {
  display: block;
}

.item-text.expanded {
	position: relative;
}

/* Expanded state */
.item-text .full {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transition: opacity 0.28s ease;
}

.item-text .full.mobile {
	display: none;
}

.item-text.expanded .full {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition-delay: 0.2s; /* appears after others fade */
}

/* Fade everything else out */
.item-text.expanded > *:not(.full) {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: 0.28s ease !important;
}
.horizontal .item-text::-webkit-scrollbar {
  display: none;
}
.horizontal .button-group {
	gap: 1rem;
	flex-wrap: wrap;
}
.group-description p {
	max-width: 500px;
	margin-bottom: unset;
}
.partners .slider-header {
	align-items: flex-end;
}
.partner-link {
	line-height: 1em;
	text-decoration: none;
	font-size: 1.11rem !important;
	border-bottom: 2px solid var(--color-black-off);
}
.partner-link * {
	color: var(--color-black-off);
}
.partner .preview p,
.partner .full p {
	margin-bottom: unset;
}
.partner-buttons {
	display: flex;
	gap: 15px;
	margin-right: 20px;
	overflow: scroll;
}
.horizontal .preview a:not(.toggle-button),
.horizontal .full a:not(.toggle-button) {
	text-transform: unset;
    letter-spacing: unset;
    color: inherit;
    font-family: inherit;
    font: inherit;
}
.horizontal .container {
	padding: unset;
}
.horizontal-slider:not(.news-slider) .glide__slides {
	overflow: visible;
	padding-left: var(--gutter-lg);
}

.horizontal .container .image {
	position: relative;
	z-index: 3;
}

.horizontal .container .inner {
	display: flex;
	height: 100%;
}

@media(min-width:960px) {
	.horizontal .container {
		display:flex;
		height: 100%;
		width: 100%;
		min-height: inherit;
	}
	.horizontal .container .news-post-item {
		width: 100%;
	}
	
	.horizontal .container .image {
		flex:1 0 50%;
		/* max-height: 500px; */
	}
}

@media(max-width:1300px) {
	.horizontal .item-text,
	.item-text .full {
		padding: 40px;
	}
}

@media(max-width:959px) {
	.partner-buttons {
		gap: 10px;
		margin: 0 -20px;
		padding: 0 20px;
	}
	.horizontal .container .inner {
		flex-direction: column;
	}
	.item-text .full.mobile {
		display: none;
        position: static;
        opacity: 1;
        visibility: visible;
		padding: unset;
		pointer-events: unset;
	}
	.item-text .full.desktop {
		display: none !important;
	}
	.horizontal .image  {
		margin-bottom:var(--margin-md);
	}
	.touts-grid .tout {
		margin-bottom:20px;
	}
	
	.touts-grid .tout.wide {
	    margin-top: 20px;
	}
	.horizontal .item-text {
		padding: unset;
		overflow: visible;
	}
	.horizontal .container {
		border: unset;
	}
	.horizontal .image {
		height: 300px;
	}
	.horizontal {
		height: unset;
	}
}

@media(max-width:650px) {
	.group-description {
		padding-top: 30px;
		border-top: 1px solid lightgrey;
	}
}

.ccc-banner__title {
	color: var(--color-green);
}

.ccc-banner__label-container {
	display:none !important;
}

.ccc-banner__description a {
	text-decoration:underline;
}

.ccc-banner__button {
    padding: 0 20px ;
	height: 42px;
    display: inline-block;
    line-height: 1;
	border:none;
	cursor:pointer;
    color: #000 !important;
    border: 2px solid #000 !important;
    white-space: nowrap;
	font-family: futura-pt-bold;
	font-size:11px;
	text-transform:uppercase;
	letter-spacing:0.1em;
	transition: all 0.28s ease;
	background:transparent !important;
	border-radius: 0 !important;
}

#mc_embed_signup {
	width: 100% !important;
	max-width: 1550px;
	margin-bottom: auto;
}
#mc_embed_signup * {
	font-family: nimbus-sans, sans-serif !important;
}
#mc_embed_signup .mc-field-group {
	width: 100% !important;
}
#mc_embed_signup form {
	margin: unset !important;
}
#mc_embed_signup input {
	border-radius: unset !important;
}
#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error {
	margin: 0 !important;
    padding: 0 !important;
    font-size: 12px !important;
}
#mc_embed_signup .helper_text {
	padding: 2px !important;
}
#mc_embed_signup h2 {
	font-family: futura-pt-bold !important;
}
#mc_embed_signup .button {
	padding: 0 20px !important;
	height: 42px !important;
    display: inline-block !important;
    line-height: 1 !important;
	border:none !important;
	cursor:pointer !important;
    color: #000 !important;
    border: 2.5px solid #000 !important;
    white-space: nowrap !important;
	font-family: futura-pt-bold !important;
	font-size:11px !important;
	text-transform:uppercase !important;
	letter-spacing:0.1em !important;
	transition: all 0.28s ease !important;
	border-radius: unset !important !important;
	background: transparent !important;
	margin-bottom: 20px !important;
}

@media(min-width:960px) {
	
	.ccc-banner__button {
		font-size:16px;
		height:58px;
		padding:0 40px;
	}
}

@media(max-width:500px) {
	.touts-grid .tout.tall:before,
	.touts-grid .tout.wide:before,
	.touts-grid .tout:before,
	.touts-grid .tout.tall:before {
		padding-top: 450px;
	}
}

.card-carousel .item.glide__slide:not(.container) {
	height:auto;
}

/* new styles for scroll padding left */
@media(min-width:960px) {
	section:not(.home-news):not(.accessories-section) .news-slider,
	section:not(.home-news):not(.accessories-section) .card-carousel,
	.image-gallery .scroller,
	.horizontal-slider {
		padding-left: calc((100% - 1450px) / 2);
	}
}
@media(max-width:1550px) {
	section:not(.home-news):not(.accessories-section) .news-slider,
	section:not(.home-news):not(.accessories-section) .card-carousel,
	.image-gallery .scroller,
	.horizontal-slider {
		padding-left: var(--gutter-lg);
	}
}
@media(max-width:959px) {
	section:not(.home-news):not(.accessories-section) .news-slider,
	section:not(.home-news):not(.accessories-section) .card-carousel,
	.image-gallery .scroller,
	.horizontal-slider {
		padding-left: var(--gutter-sm);
	}
}
/* 
@media (min-width: 1551px) {
	.horizontal-slider {
		width: 100vw;
		overflow: hidden;
	}

	.horizontal-slider .glide__slides {
		display: flex;
		padding-left: calc((100% - 1450px) / 2);
	}
	.horizontal-slider .glide__slides .glide__slide:last-of-type {
		position: relative;
	}
	.horizontal-slider .glide__slides .glide__slide:last-of-type:after {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		transform: translateX(100%);
		height: 100%;
		background-color: rebeccapurple;
	}
}
	 */

