@charset "utf-8";
/* CSS Document */
/* Default Lovell Chen Desktop CSS */
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1.2;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

/* Begin Styles */

/* Set Box Model */
*, *:before, *:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
 }
*:focus {
	outline:none;
}
/*************************** Begin general document styles ***************************/
:root {
    --link-color-light: #ffffff;
	--link-color-dark: #000000;
    --link-underline-padding: .5em;
}
html,body {
/* 	width:100%;
	height:100%; */
	font-size:100%;
	font-size:0.833vw;
/* 	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-text-size-adjust: none;
	-webkit-touch-callout: none; */
}

body {
	background:#fff;
	color:#000;
	font-family:MF-SpazioLC-Medium;
	font-weight:normal;
	text-align:left;
	opacity:0;
	transition:opacity 1.5s;
	padding:0.5rem 0.625rem 0.5rem 0.625rem;
}
body.loaded {
	opacity:1;
}



img {
	width:100%;
	height:auto;
	margin:0px;
	padding:0px;
}
img.zoomable {
	transform-origin:center;
	transform: scale(1);
	transition: transform .5s;
}
img.zoomable:hover {
	transform: scale(1.02);
}

strong {
	font-weight:bold;
}
em {
	font-family:MF-SpazioLC-Medium;
	font-style:italic;
}
h1 {
	position:relative;
	width:100%;
	font-family:MF-SpazioLC-Medium;
	font-size:21.1875rem;
	text-align:center;
	letter-spacing:-20.34px;
	color:#000;
	margin-bottom:1.625rem;
}
h2 {
	position:relative;
	width:100%;
	font-family:MF-SpazioLC-Medium;
	font-size:9.875rem;
	text-align:center;
	letter-spacing:-9.36px;
	color:#000;
	margin-bottom:1.625rem;
}
h3 {
	position:relative;
	width:100%;
	font-family:MF-SpazioLC-Medium;
	font-size:2.75rem;
	text-align:center;
	letter-spacing:-6.6px;
	margin-bottom:1.625rem;
}
h4 {
	position:relative;
	width:100%;
	font-family:MF-SpazioLC-Medium;
	font-size:1.25rem;
	text-align:center;
	color:#000;
	margin-bottom:1.625rem;
}
h5 {
	position:relative;
	width:100%;
	font-family:MF-SpazioLC-Medium;
	font-size:0.8125rem;
	text-align:center;
	color:#000;
	margin-bottom:1.625rem;
}

p {
	font-family:MF-SpazioLC-Medium;
	font-weight:normal;
	font-size:0.875rem;
	letter-spacing:0.476px;
	margin-bottom:1.125rem;
	line-height:1.28;
	color:#000;
}
p.last-in-group {
	margin-bottom:3.5625rem;
}
p.half-width {
	width:50%;
}

a {
	position:relative;
	text-decoration:none;
	color:inherit;
	transition:color .25s;
}

/*a:not(.cta-button):not(.logo-link):before {
	content:'';
	width:0;
	height:1px;
	background-color: var(--link-color-dark);
	position:absolute;
	left:0;
	top:100%;
	transition:width .5s;
}
a:not(.cta-button):not(.logo-link):hover:before {
	width:100%;
}*/

a.cta-button {
	position:relative;
	font-family:MF-SpazioLC-Medium;
	font-size:0.8125rem;
	display:inline-block;
	text-transform:uppercase;
	width:auto;
	height:auto;
	padding:0 0 0 0;
	color:transparent;
	text-decoration:none !important;
	outline:1px none red;
	text-align:center;
	background-color:transparent;
	transition:background-color .25s, color .25s;
	/*min-width:11.25rem;*/
	letter-spacing:0.52px;
	text-transform:lowercase;
	width:0;
	/*height:0.8125rem;
	min-width:1.625rem;/*
	left:-0.8125rem; 
	*/
}

a.cta-button:after {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:0.8125rem;
	height:100%;
	background:url(cta-arrow.svg) right bottom no-repeat;
	background-size:1.625rem 0.4375rem;
	outline:1px none blue;
	overflow:visible;
	transition: width .25s;
	overflow:visible;
}

a.cta-button:hover:after {
	left:0;
	width:1.625rem;
}

.additional-controls {
	position:absolute;
	right:1.25rem;
	top:1.25rem;
	width:4rem;	
	outline:1px none red;
	font-size:0;
	text-align:right;
	z-index:200;
	mix-blend-mode:exclusion;
}
a.lightbox {
	display:inline-block;
	width:1rem;
	height:1rem;
	background:url(lightbox.svg) center center no-repeat;
	background-size:cover;
	vertical-align:top;
}
a.additional-info {
	display:inline-block;
	width:1.125rem;
	height:1.125rem;
	background:url(additional-info-icon.svg) center center no-repeat;
	background-size:cover;
	transform:rotate(0);
	transition: transform .5s;
	margin-left:.5rem;
	
}
a.additional-info.active {
	transform:rotate(45deg);
}
.additional-content-container {
	position:absolute;
	top:2.375rem;
	right:2.375rem;
	max-width:21.25rem;
	cursor:default;
}

.additional-content-container .additional-content-text {
	position:relative;
	border-radius:.5rem;
	background-color:#fff;
	color:#000;
	padding:0.8125rem 0.9375rem 0.75rem 0.9375rem;
	width:21.25rem;
	margin-bottom:0.5rem;
	
}
.additional-content-container .additional-content-text h4 {
	font-family:MF-SpazioLC-Medium;
	font-size:0.75rem;	
	text-align:left;
	text-transform:uppercase;
	margin-bottom:0.5rem;
	letter-spacing:0.408px
}
.additional-content-container .additional-content-text p {
	font-family:MF-SpazioLC-Medium;
	font-size:0.75rem;	
	text-align:left;
	margin-bottom:0.625rem;
	letter-spacing:0.408px
}
.additional-content-container .additional-content-text p:has(+ p.cta) {
	margin-bottom:0;
}
.additional-content-container .additional-content-text p:has(+ p.credits) {
	margin-bottom:1.5rem;
}
.additional-content-container .additional-content-text p.cta {
	margin-bottom:1.5rem;
}
.additional-content-container .additional-content-text p:last-of-type {
	margin-bottom:0;
}
.additional-content-container .additional-content-text p.credits {
	font-family:MF-SpazioLC-Medium;
	font-size:0.625rem;	
	text-align:left;
	text-transform:uppercase;
	letter-spacing:0.34px;
	
}
.additional-content-container .additional-content-text a.cta-button {
/* 	position:absolute;
	bottom:0.8125rem;
	left:0.9375rem; */
	text-align:left;
}
.additional-content-container .additional-content-image {
	border-radius:.5rem;
	background-color:#fff;
	color:#000;
	padding:0.8125rem 0.9375rem 0.8125rem 0.9375rem;
	padding:0;
	overflow:hidden;
}
.additional-content-container .additional-content-image img.additional {
	outline:1px none red;
	display:block;
	width:21.25rem;
	height:auto;
	vertical-align:middle;
}

a.pill {
	display:inline-block;
	position:relative;
	width:auto;
	height:auto;
	text-align:center;
	background-color:transparent;
	color:#000;
	font-size:0.625rem;
	line-height:1;
	border-radius:0.625rem;
	text-transform:uppercase;
	letter-spacing:0.408px;
	overflow:hidden;
	border:1px solid #707070;
	padding:0.3125rem 0.625rem 0.3125rem 0.625rem;
	margin-bottom:.25rem;
	vertical-align:middle;
}

a.pill span {
    position: relative;
    z-index: 2;
    line-height: 1;
}

/*a.pill {
	display:inline-block;
	position:relative;
	width:auto;
	height:1.25rem;
	text-align:center;
	background-color:transparent;
	color:#000;
	font-size:0.625rem;
	line-height:1.25rem;
	border-radius:0.625rem;
	vertical-align:middle;
	text-transform:uppercase;
	letter-spacing:0.408px;
	overflow:hidden;
	border:1px solid #000;
	padding:0 0.625rem 0 0.625rem;
	transition: border-color .5s;
}*/

a.pill:hover {
	border-color:#E2661F;
}

/*a.pill span {
	position:relative;
	z-index:2;
	line-height:1.25rem;
}*/
a.pill:before {
	content:'';
	position:absolute;
	left:-1%;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	border-radius:0.625rem;
	z-index:1;
	transition: width .35s;
}
a.pill:hover:before {
	width:110%;
	border:1px solid #E2661F;
}

a:not(.pill):not(.cta-button):hover {
	color:#E2661F;
}

/*.text-content a {
	text-decoration:underline;
}
.text-container a {
	text-decoration:underline;	
}
.text-content a:hover {
	text-decoration:underline;
}
.text-container a:hover {
	text-decoration:underline;	
}*/

blockquote {
	font-family:MF-SpazioLC-Medium;
	font-size:5.71875rem;
	width:80%;
	text-align:center;
	display:block;
	margin:auto;
	color:#000;
	text-transform:uppercase;
	line-height:1.2;
	letter-spacing:1.5px;
}

.dark blockquote {
	color:#fff;
}


.text-content ul {
	list-style-type: none;
	margin-bottom:1.125rem;
	font-size:0.890625rem;
	font-family:MF-SpazioLC-Medium;
}

.text-content ul:last-of-type {
	margin-bottom:0;
}

.text-content li {
	position:relative;
	margin-left:1rem;
	display:block;
	line-height: 1.3;
	font-size:0.890625rem;
}

.text-content li:before {
	position:absolute;
	left:-1rem;
	top:0;
	content:'\2013';
	font-size:0.890625rem;
}
.text-content p:last-of-type:has(~ ul) {
	margin-bottom:1.125rem !important;
}

hr {
	width:100%;
	margin-bottom:1rem;
}

.seo {
	position:fixed;
	left:-10000px;
	height:0;
}
.upper {
	text-transform:uppercase;
}

.left {
	float:left;
}
.right {
	float:right;
}
.text-left {
	text-align:left;
}
.text-right {
	text-align:right;
}

.font-size1 {
	font-size:1.125rem;
	line-height:1.25;
}

.font-size2 {
	font-size:2.13rem;
	line-height:1.15;
	letter-spacing:1px;	
}

.font-size3 {
	
}

.font-size4 {
	
}

.font-regular {
	font-size:1.42rem;
	line-height:1.3;
}

.font-large {
	font-size:1.75rem;
	line-height:1.33;
}

.grid-span2 {
	grid-column: span 2;	
}
.grid-span3 {
	grid-column: span 3;	
}
.grid-span4 {
	grid-column: span 4;	
}
.grid-span5 {
	grid-column: span 5;	
}
.grid-span6 {
	grid-column: span 6;	
}

.image-zoom-wrapper {
	width:100%;
	position:relative;
	overflow: hidden;
    margin-bottom: 0rem;
	border-radius:.25rem;
}

.social-media-icon {
	display:inline-block;
	width:1.875rem;
	height:1.875rem;
	opacity:1;
	margin-right:.5625rem;
	transition:opacity .5s;
	text-decoration:none !important;
	outline:1px none red;
}
.social-media-icon:hover {
	opacity:.5;
}
.social-media-icon.facebook {
	background:url(Gamuda_Assets_FA_Icons_Social_Media_Facebook.svg) center center no-repeat;
	background-size:cover;
}
.social-media-icon.instagram {
	background:url(Gamuda_Assets_FA_Icons_Social_Media_Instagram.svg) center center no-repeat;
	background-size:cover;
}

.social-media-icon.linkedin {
	background:url(Gamuda_Assets_FA_Icons_Social_Media_LinkedIn.svg) center center no-repeat;
	background-size:cover;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	width:100%;
	font-family: "MF-SpazioLC-Medium";
	font-weight:normal;
	font-size:0.875rem;
	letter-spacing:0.476px;
}
.downloads table {
	margin-bottom:2rem;
}
tr {
	background-color:transparent;
	transition: background-color .5s;
	height:1.875rem;
	position:relative;
}
thead tr:first-of-type {
	border-width:1px 0 1px 0;
}
tbody tr:hover td {
	color:#000;
	transition:color .25s !important;
}
tbody tr.nolink:hover td {
	color:#B9B9B9;
}
tbody tr:last-of-type {
	border:none;
}

th,td {
/* 	border:1px solid #5C5C5C;
	border-width:0 0 1px 0;	 */
	overflow:hidden;
	text-transform:uppercase;
	outline:1px none red;
	
}
th {
	padding-bottom:4.5625rem;
	vertical-align:top;
	color:#000;
	letter-spacing:0.16px;
	cursor:pointer;
}
thead tr.sort-asc th .sort-arrow {
	display:inline-block;
	width:.5rem;
	height:.5rem;
	background:url(sort-arrow.svg) right center no-repeat;
	background-size:0.5rem;
	margin-left:0.5rem;
	transform:rotate(0);
	transform-origin:center;
	transition:transform .25s, opacity .25s;
	vertical-align:middle;
	visibility:hidden;
	opacity:0;
	outline:1px none red;
	margin-bottom:0.0625rem;
}
thead tr.sort-desc th .sort-arrow {
	display:inline-block;
	width:.5rem;
	height:.5rem;
	background:url(sort-arrow.svg) right center no-repeat;
	background-size:0.5rem;
	margin-left:0.5rem;
	transform:rotate(180deg);
	transform-origin:center;
	transition:transform .25s, opacity .25s;
	vertical-align:middle;
	visibility:hidden;
	outline:1px none red;
	margin-bottom:0.0625rem;
	opacity:0;
}
th:hover {
	opacity:0.25 !important;
	transition:opacity .25s;
}
th:hover .sort-arrow {
	visibility:visible !important;
	opacity:1 !important;
}
th.selected .sort-arrow {
	visibility:visible !important;
	opacity:1 !important;
}
/*th .table-header {
	padding-right:1rem;
	outline:1px solid red;

}
th:hover .table-header {
	background:url(sort-arrow.svg) right center no-repeat;
	background-size:0.5rem;
}
th.sort-asc .table-header {
	background:url(sort-arrow.svg) right center no-repeat;
	background-size:0.5rem;
}
th.sort-desc .table-header {
	background:url(sort-arrow-desc.svg) right center no-repeat;
	background-size:0.5rem;
}*/
/*th .sort-asc {
	 display:inline-block;
	 height:0.625rem;
	 font-size:0.625rem;
	 vertical-align:top;
	 padding-left:0.25rem;
	 padding-top:0.15rem;
	 display:none;
}
th:hover .sort-asc {
	display:inline-block;
}
th.sort .sort-asc {
	display:inline-block;
}*/
td {
	background-color:transparent;
	padding:0;
	color:#B9B9B9;
	transition: color .25s, background-color .25s !important;
	vertical-align:top;
	letter-spacing:0.16px;
	
}
td:last-of-type, th:last-of-type {
	text-align:left;
	/* padding-right:4.125rem; */
	padding-left:2rem;
	opacity:1;
	transition:opacity .5s;
}
tbody tr:hover td:last-of-type {
	opacity:1;
}
tbody tr {
	cursor:pointer;
}
tbody tr.nolink {
	cursor:default;
}
tbody tr img {
	position:absolute;
	left:2rem;
	top:0;
	width:auto;
	height:auto;
	max-width:9.375rem;
	max-height:9.375rem;
	transform:translateY(-20%);
	opacity:0;
	transition:opacity .5s;
	pointer-events:none;
	z-index:100;
	border-radius:.25rem;
}

tbody tr:hover img {
	opacity:1;
}

/*************************** End general document styles ***************************/


/*************************** begin structural styles ***************************/

.masthead {
	position:fixed;
	left:1.5625rem;
	top:1.1875rem;
	width:97.39%;
	height:1.75rem;
	line-height:0;
	display:grid;
	grid-template-columns:2fr 1fr 2fr;
	align-items:center;
	z-index:100;
	outline:1px none red;
	color:#fff;
	background-color:transparent;
	transform: translateY(0);
	transition: color 1s, background-color 1s, transform 1s, border-color 1s;
	border-color:transparent;
	padding:0;
	font-size:0;
}


.masthead .masthead-left {
	text-align:left;
}
.masthead .masthead-left a.menu, .masthead .masthead-right a.contact {
	display:inline-block;
	position:relative;
	width:6.875rem;
	height:1.75rem;
	text-align:center;
	background-color:#E9E9E9;
	color:#000;
	font-size:0.75rem;
	line-height:1.75rem;
	border-radius:0.875rem;
	vertical-align:middle;
	text-transform:uppercase;
	margin-right:.5rem;
	letter-spacing:0.408px;
	overflow:hidden;
}
.masthead .masthead-left a.menu span, .masthead .masthead-right a.contact span {
	position:relative;
	z-index:2;
}
.masthead .masthead-left a.menu:before, .masthead .masthead-right a.contact:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	border-radius:0.875rem;
	z-index:1;
	transition: width .2s;
}
.masthead .masthead-left a.menu:hover:before, .masthead .masthead-right a.contact:hover:before {
	width:100%;
}

.masthead .masthead-left .menu {
	position:relative;
	display:inline-block;
	width:6.875rem;
	height:1.75rem;
	text-align:left;
	background:#E9E9E9;
	color:#000;
	font-size:0.75rem;
	line-height:1.75rem;
	border-radius:0.875rem;
	vertical-align:middle;
	text-transform:uppercase;
	margin-right:.5rem;	
	transition: width .5s;
	padding-right:2.375rem;
	overflow:hidden;
	cursor:pointer;
}

.masthead .masthead-left .menu.active {
	width:39.5rem;
}
.masthead .masthead-left .menu.active.expanded {
	transition: width 0s;
}

.masthead .masthead-left .menu .menutrigger {
	display:inline-block;	
	height:1.75rem;
	font-size:0.75rem;
	line-height:1.75rem;
	vertical-align:middle;
	outline:1px none red;
	width:6.875rem;
	text-align:center;
}

.masthead .masthead-left .menu .menutrigger span {
	position:relative;
	z-index:2;	
}

.masthead .masthead-left .menu .menutrigger:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	z-index:1;
	transition: width .2s, opacity .5s;
	border-radius:0.875rem;
}
.masthead .masthead-left .menu .menutrigger:hover:before {
	width:100%;
}

.masthead .masthead-left .menu.active .menutrigger:before {
	opacity:0;
}

.masthead .masthead-left .menu .mainmenu {
	position:absolute;
	left:6.875rem;
	top:0;
	width:calc(100% - 6.875rem);
	height:1.75rem;
	margin-left:1.5625rem;
	outline:1px none red;
	overflow:visible;
}

.masthead .masthead-left .menu .mainmenu .menuitem {
	position:relative;
	display:inline-block;
	height:1.75rem;
	text-align:left;
	color:#000;
	font-size:0.75rem;
	line-height:1.75rem;
	padding-right:3.75rem;
	outline:1px none blue;
	overflow:visible;
	letter-spacing:0.0255rem;
}

.masthead .masthead-left .menu .menutrigger {
	position:relative;
	display:inline-block;
	height:1.75rem;
	text-align:center;
	color:#000;
	font-size:0.75rem;
	line-height:1.75rem;
	outline:1px none blue;
	overflow:hidden;
	vertical-align:top;
}

.masthead .masthead-left .menu .submenu {
	position:absolute;
	left:-0.625rem;
	top:calc(100% + 0.625rem);
	width:max-content;
	outline:1px none red;
	overflow:hidden;
	transition:max-height .1s;
	max-height:0;
	
}
.masthead .masthead-left .menu .menuitem:hover {
	height:calc(100% + 2rem);
	outline:1px none red;
}
.masthead .masthead-left .menu .menuitem:hover .submenu {
	position:absolute;
	left:-0.625rem;
	top:2.375rem;
	width:max-content;
	outline:1px none red;
	overflow:hidden;
	transition:max-height .5s;
	max-height:20rem;
}

.submenu ul {
	list-style-type: none;
	font-size:0.75rem;
	font-family:MF-SpazioLC-Medium;
	margin-bottom:0;
	background-color:#E9E9E9;
	padding:0.625rem 2.5rem 1.25rem 0.625rem;
	border-radius:.5rem;
}

.submenu li {
	position:relative;
	margin-left:0;
	display:block;
	line-height: 1;
	margin-bottom:0;
}

.submenu li:last-of-type {
	margin-bottom:0;
}

.submenu li a {
	display:block;
	color:#000;
	font-size:0.75rem;
	text-transform:uppercase;
	line-height:1.6;
	letter-spacing:0.0255rem;
}

.submenu li a:hover {
	/* color:#E2661F; */
	color:#B9B9B9 !important;
}

.masthead .masthead-left .menu .menuitem:hover {
	color:#B9B9B9;
}

.masthead .masthead-left .menu .menuitem a:hover {
	color:#B9B9B9;
}

.masthead .masthead-left .menu.active .menutrigger:hover {
	color:#B9B9B9;
}
/*
.masthead .masthead-left .menu:has(.menuitem:hover) .menuitem:not(:hover) {
	color:#B9B9B9;
}

.masthead .masthead-left .menu:has(.menuitem:hover) .menuitem:not(:hover), .masthead .masthead-left .menu:has(.menuitem:hover) .menutrigger:not(:hover) {
	color:#B9B9B9;
}

.masthead .masthead-left .menu:has(.menuitem:hover) .menuitem:not(:hover), .masthead .masthead-left .menu:has(.menutrigger:hover) .menuitem:not(:hover) {
	color:#B9B9B9;
}*/

.masthead .masthead-right span.search {
	display:inline-block;
	width:3.125rem;
	/* width:30.375rem; */
	height:1.75rem;
	text-align:left;
	background:#E9E9E9;
/* 	background:#E9E9E9 url(search-icon.svg) left center no-repeat;
	background-size: 1.125rem; */
	color:#000;
	font-size:0.75rem;
	line-height:1.75rem;
	border-radius:0.875rem;
	vertical-align:middle;
	text-transform:uppercase;
	margin-right:.5rem;	
	transition: width .5s;
	padding-left:.685rem;
	/* padding-right:.875rem; */
	overflow:hidden;
}
.masthead .masthead-right span.search:hover {
	width:30.375rem;
}
.masthead .masthead-right span.search.active {
	width:30.375rem;
}
.masthead .masthead-center {
	text-align:center;
}
.masthead .masthead-center a.wordmark {
	display:inline-block;
	position:relative;
	width:10.875rem;
	height:1.75rem;
	text-align:center;
	background-color:#E9E9E9;
	line-height:1.75rem;
	border-radius:0.875rem;
	vertical-align:middle;
	overflow:hidden;
}
.masthead .masthead-center a.wordmark span {
	position:relative;
	z-index:2;
}
.masthead .masthead-center a.wordmark:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	border-radius:0.875rem;
	/* border-radius:0.875rem; */
	z-index:1;
	transition: width .25s;
}
.masthead .masthead-center a.wordmark:hover:before {
	width:100%;
}
.masthead .masthead-center img {
	height:0.705625rem;
	height:0.685rem;
	height:0.625rem;
	height:0.6rem;
	width:auto;
	vertical-align:middle;
}

.masthead .masthead-right {
	text-align:right;
}

.masthead .masthead-right a.featured {
	display:inline-block;
	position:relative;
	width:6.875rem;
	height:1.75rem;
	text-align:center;
	background-color:#E9E9E9;
	color:#000;
	font-size:0.75rem;
	line-height:1.75rem;
	border-radius:0.875rem;
	vertical-align:middle;
	text-transform:uppercase;
	letter-spacing:0.408px;
	overflow:hidden;
}

.masthead .masthead-right a.featured span {
	position:relative;
	z-index:2;
}
.masthead .masthead-right a.featured:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	border-radius:0.875rem;
	/* border-radius:0.875rem; */
	z-index:1;
	transition: width .2s;
}
.masthead .masthead-right a.featured:hover:before {
	width:100%;
}

.masthead a:hover:before {
	/*background-color:#E2661F !important;*/
	width:100%;
}

.search-field-container {
	position:relative;
	height:1.75rem;
}
.search-field-container.done {
	top:0;
	transform:translateY(0);
}

.search-field-container input[type=text] {
	width:calc(100% - 4rem);
	vertical-align:top;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	line-height:0;
	margin-bottom:0;
	color:#000;
	border:none;
	background:transparent;
	padding:0;
	padding-bottom:0;
	outline:1px none red;
	height:1.75rem;
	text-transform:none;
}

.search-field-container input[type=text]::placeholder {
	font-size:1.25rem;
	color:#000;
	/* text-transform:uppercase; */
}

.search-field-container input[type=submit]  {
	width:1.6875rem;
	height:1.75rem;
	background:#E9E9E9 url(search-icon.svg) center center no-repeat;
	background-size: 1.125rem;
	/* background-size:cover; */
	vertical-align:top;
	border:none;
	padding:0;
	outline:1px none blue;
	cursor:pointer;
	opacity:1;
	transition:opacity .25s;
}
.search-field-container input[type=submit]:hover  {
	opacity:1;
}

.search-field-container .search-close {
	display:inline-block;
	width:1.6875rem;
	height:1.75rem;	
	background:url(search-close.svg) center center no-repeat;
	background-size: .75rem;
	cursor:pointer;
}

.carousel-video {
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
}

/* Begin search panel styles */

.searchpanel {
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100vh;	
	background:transparent;
	background:rgba(255,255,255,1);
	z-index:99;
	transform: translateY(-101vh);
	transition:transform 1s cubic-bezier(1.00, 0.00, 0.94, 1.00);
	transition:transform .5s cubic-bezier(.12,0,.39,0);
	padding: 5.125rem 0.625rem .5rem 0.625rem;
	opacity:0;
	color:#000;
	outline:1px none red;
	overflow-y:auto;
}

.searchpanel > * {
	opacity:0;
	transition:opacity .2s;
	/* transition-delay:.4s; */
}


.searchpanel.open {
	transform: translateY(0);
	/*transition:transform 1s cubic-bezier(0.67, 0.01, 0.14, 0.96);
	transition:transform 1s ease-out;
	transition:transform 1s linear(0, 0.75 25%, 1);
	transition:transform 1s;
	transition-timing-function: ease-out;
	transition:transform 1s cubic-bezier(.17,.67,.23,.99);
	transition:transform 1s cubic-bezier(.39,0,.03,.99);
	transition:transform 1s cubic-bezier(.06,0,0,1);
	transition:transform 1s;
	transition:transform 1s cubic-bezier(.06,0,0,1);*/
	transition:transform .5s cubic-bezier(.12,0,.39,0);
	opacity:1;
}

.searchpanel.open > * {
	opacity:1;
	transition: opacity 2s;
	transition-delay:.2s;
}

/* Begin Search Overlay Styles */

.search-results-container {
	position:relative;
	display:grid;
	grid-template-columns:1fr 2fr;
	grid-column-gap:.5rem;
	width:100%;
	height:auto;
	min-height:16.0625rem;
	padding:1.25rem 1.875rem 5rem 1.875rem;
	padding:0;
	color:#fff;
	outline:1px none red;
	background:#fff;
	color:#000;
	min-height:calc(100% - .5rem);
	min-height:100%;
}

.search-results-container .search-meta {
	background:#F2F2F2;
	border-radius:.5rem;
	padding:1.25rem 1.875rem 5rem 1.875rem;
	/* min-height:calc(100% - 5.125rem); */
}

.search-results-container .search-results-content {
	background:#F2F2F2;
	border-radius:.5rem;
	padding:1.25rem 1.875rem 5rem 1.875rem;
	/* min-height:calc(100% - 5.125rem); */
}

.search-results-container .search-close-button {
	position:absolute;
	right:1rem;
	top:1rem;
	width:1.125rem;
	height:1.125rem;
	background:url(search-close.svg) center center no-repeat;
	background-size:0.5rem 0.5rem;
	border:1px solid #000;
	border-radius:50%;
	cursor:pointer;
}

.search-results-container h4 {
	font-family:MF-SpazioLC-Medium;
	font-weight:normal;
	font-size:0.625rem;
	letter-spacing:0.34px;
	margin-bottom:1.875rem;
	line-height:1;
	color:#B9B9B9;
	text-transform:uppercase;
	text-align:left;
}
.search-results-container p {
	font-family:MF-SpazioLC-Medium;
	font-weight:normal;
	font-size:0.875rem;
	letter-spacing:0.476px;
	margin-bottom:1.125rem;
	line-height:1.28;
	color:#000;
	text-transform:uppercase;
}

.search-results-container .result-heading {
	display:grid;
	grid-template-columns: 62.6% 1fr;
	margin-bottom:3.4375rem;
}

.search-results-container .table-container {
	margin-bottom:4.5625rem;
}
.search-results-container .table-container a:hover {
	color:#000;
	transition:color .25s;
}

.search-results-container .search-meta p.heading {
	margin-bottom:4.375rem;
}

.search-results-container .search-meta p.recent-search-item {
	color:#B9B9B9;
}

.search-results-container .search-meta p.recent-search-item a {
	color:#B9B9B9;
}
.search-results-container .search-meta p.recent-search-item a:hover {
	color:#E2661F;
}


/* end search panel styles */

/* begin featured content panel styles */

.featuredcontentpanel {
/* 	position:fixed;
	right:0;
	top:0;
	background-color:#fff;
	width:66%; */
/* 	position:absolute;
	right:0;
	top:0; */
	position:sticky;
	top:0;
	background-color:#fff;
	height:100vh;
	z-index:98;
	overflow-y:auto;
	overflow-x:hidden;
	scrollbar-width:none;
	/* transform:translateX(100%); */
	transition:transform 1s;
	padding-top:4.6875rem;
	
	container-type: inline-size;
	container-name: featured-content;
}


.featuredcontentpanel.open {
	transform:translateX(0);
}

/*.featuredcontentpanel .desktop-grid {
	display:grid;
	width:100%;
	grid-template-columns: 25.41vw 25.41vw 25.41vw;
	grid-column-gap:.5rem;
	padding:0 .5rem .5rem .5rem;
}
#wrapper.partial .featuredcontentpanel .desktop-grid {
	display:block;
	grid-template-columns: 18.79vw 18.79vw 18.79vw;
}
#wrapper.partial.intransition .featuredcontentpanel .desktop-grid {
	display:grid;
	grid-template-columns: 18.79vw 18.79vw 18.79vw;
}
#wrapper.featured.partial .featuredcontentpanel .desktop-grid {
	display:grid;
	grid-template-columns: 25.41vw 25.41vw 25.41vw;
}
#wrapper.intransition .featuredcontentpanel .desktop-grid {
	transition:grid-template-columns .75s;
}

.featuredcontentpanel .desktop-grid .listviewcolumn {
	min-width:20rem !important;
	outline:1px none red;
	transition:min-width .5s;
}*/
.featuredcontentpanel .desktop-grid {
	display:block;
	width:100%;
	padding-bottom:.5rem;
	padding-left:0;
	/* padding:0 1rem .5rem .5rem; */
}

.featuredcontentpanel .grid {
  width: 100%;
}
.featuredcontentpanel  .desktop-grid .grid .grid-item {
	min-width:18.79vw;
}


.featuredcontentpanel .desktop-grid .grid .grid-item {
  width: calc(33.333% - 8px); /* 3 columns minus gutter */
   float: left;
}

.featuredcontentpanel .desktop-grid .grid .grid-sizer {
	width: calc(33.333% - 8px); /* 3 columns minus gutter */
	 float: left;
}

.featuredcontentpanel .grid-item {
  margin-bottom: 0.5rem;
  margin-left: 0;
  float: left;
  box-sizing: border-box;
  border-radius: 10px;
  overflow: hidden;
  background: #ddd;
  transition: transform 0.3s;

}

/* Remove right margin on last column */
.featuredcontentpanel .grid-item:nth-child(3n) {
  margin-left: 0;
}

.featuredcontentpanel .grid-item img {
  display: block;
  width: 100%;
  height: auto; /* natural height */
  border-radius: .25rem;
}

@container featured-content (inline-size < 60vw) {
  .featuredcontentpanel .desktop-grid .grid .grid-sizer,
  .featuredcontentpanel .desktop-grid .grid .grid-item {
	width: calc(18.79vw - 0.25rem);
  }
  .featuredcontentpanel .grid-item:nth-child(3n),
  .featuredcontentpanel .grid-item:nth-child(2n) {
	margin-left: 0;
	 float: left;
  }
}

@container featured-content (inline-size < 25vw) {
  .featuredcontentpanel .desktop-grid .grid .grid-sizer,
  .featuredcontentpanel .desktop-grid .grid .grid-item {
	width: 18.79vw;
	margin-left: 0;
	min-width:16vw;
	 float: left;
  }
}

.featuredcontentpanel .desktop-grid .header {
	position:relative;
	margin-bottom:0;
	z-index:100;
	background:transparent;
	outline:1px none red;
	opacity:0;
	transition:opacity 1s;
	width:calc(100% - .5rem);
	margin-left:.5rem;
}
#wrapper.featured .featuredcontentpanel .desktop-grid .header {
	opacity:1;
}

#wrapper.featured .featuredcontentpanel .desktop-grid .header-contents {
	margin-bottom:.5rem;
}

.featuredcontentpanel .desktop-grid .header-contents {
	position:relative;
    height: 0;
    line-height: 4.6875rem;
    background-color: #E2E2E2;
    color: #000;
    padding-left: 1.875rem;
	padding-right: 2.5rem;
    border-radius: .5rem;
    font-size:0.875rem;
    text-transform: uppercase;
	display:grid;
	grid-template-columns:1fr 1fr;	
}

#wrapper.featured .featuredcontentpanel .desktop-grid .header-contents {
	height: 4.6875rem;
}

#wrapper.intransition .featuredcontentpanel .desktop-grid .header-contents {
	transition:height 1s;
}

.featuredcontentpanel .desktop-grid .header-contents:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:#fff;
	z-index:-1;
}

.featuredcontentpanel .desktop-grid .header-spacer {
	 background-color:#fff;
	 height:.5rem;
	 position:sticky;
	 top:9.6875rem;
	 z-index:100;
	 display:none;
}
.featuredcontentpanel .desktop-grid.sticky .header {
	position:sticky;
	top:5rem;
	margin-bottom: 0;
}
.featuredcontentpanel .desktop-grid.sticky .header-spacer {
	display:block;
}

/* .featuredcontentpanel .desktop-grid .header:before {
	content:'';
	position:absolute;
	left:0;
	top:-5rem;
	width:100%;
	height:5rem;
	background:#fff;
} */
.featuredcontentpanel .desktop-grid .header .controls {
	text-align:right;
}

.featuredcontentpanel .desktop-grid .header .controls .control {
	display:inline-block;
	margin-left:4.375rem;
	cursor:pointer;
}

.featuredcontentpanel .desktop-grid .header .controls .control.listview {
	width:12px;
	height:11px;
	background:url(listview.svg) center center no-repeat;
	background-size:cover;
	cursor:pointer;
}

.featuredcontentpanel .desktop-grid .header .controls .control.gridview {
	width:12px;
	height:11px;
	background:url(gridview.svg) center center no-repeat;
	background-size:cover;
	cursor:pointer;	
}

.featuredcontentpanel .desktop-grid .header .controls .control.viewall {
	position:relative;
	font-family:MF-SpazioLC-Medium;
	font-size:0.8125rem;
	display:inline-block;
	text-transform:uppercase;
	width:auto;
	height:auto;
	padding:0 0 0 0;
	padding-right:0.625rem;
	color:#000;
	text-decoration:none !important;
	outline:1px none red;
	text-align:center;
	background-color:transparent;
	transition:background-color .25s, color .25s;
	/*min-width:11.25rem;*/
	letter-spacing:0.52px;
	text-transform:uppercase;
	min-width:1.625rem;
}

.featuredcontentpanel .desktop-grid .header .controls .control.viewall:after {
	content:'';
	position:absolute;
	left:100%;
	top:0;
	width:0.8125rem;
	height:100%;
	background:url(cta-arrow.svg) right center no-repeat;
	background-size:1.625rem 0.4375rem;
	outline:1px none blue;
	overflow:visible;
	transition: width .25s;
}

.featuredcontentpanel .desktop-grid .header .controls .control.viewall:hover:after {
	left:100%;
	width:1rem;
}

.featuredcontentpanel .desktop-grid .grid-item {
	position:relative;
	background:#F2F2F2;
	border-radius:.5rem;
	padding:0.625rem;
	overflow:hidden;
	margin-bottom:.5rem;
	transition:opacity 1s;
}
.featuredcontentpanel .desktop-grid .listviewcolumn .grid-item:last-of-type {
	margin-bottom:0;
}
.featuredcontentpanel .desktop-grid .grid-item .text-container {
	position:relative;
	height:17.5625rem;
	outline:1px none red;
	padding:1.25rem 0.5625rem 0 0.5625rem;
}
.featuredcontentpanel .desktop-grid a.pill {
	display:inline-block;
	position:relative;
	width:auto;
	height:auto;
	text-align:center;
	background-color:transparent;
	color:#000;
	font-size:0.625rem;
	line-height:1;
	border-radius:0.625rem;
	text-transform:uppercase;
	letter-spacing:0.408px;
	overflow:hidden;
	border:1px solid #707070;
	padding:0.3125rem 0.625rem 0.3125rem 0.625rem;
	margin-bottom:.25rem;
	vertical-align:middle;
}

.featuredcontentpanel .desktop-grid a.pill span {
    position: relative;
    z-index: 2;
    line-height: 1;
}

.featuredcontentpanel .desktop-grid .grid-item img {
	border-radius:.25rem;
	vertical-align:top;
}

.featuredcontentpanel .desktop-grid .grid-item .text-content {
	position:absolute;
	left:0.5625rem;
	bottom:0.5625rem;
	width:calc(100% - 1.125rem);
	width:calc(80%);
	outline:1px none blue;
	text-align:left;
	transition: top 1s;
}
.featuredcontentpanel .desktop-grid .grid-item.active .text-content {
	/* transform:translateY(-calc(height)); */
	top:1.25rem;
	bottom:auto;
	transition: top 1s;
}

.featuredcontentpanel .desktop-grid .grid-item .text-content h4 {
	margin-bottom:0;
	text-transform:uppercase;
	text-align:left;
	font-size:0.875rem;
}

.featuredcontentpanel .desktop-grid .grid-item .text-content h4:has(+ p) {
    margin-bottom: 1.125rem;
}

.featuredcontentpanel .desktop-grid .grid-item .text-content p {
	margin-bottom: 0;
    text-transform: none;	
}

/* end featured content panel styles */

/*

*/

/* wrapper to set minimum width */

#wrapper {
	position:relative;
	background:#fff;
	color:#000;
	z-index:2;
	min-width:1140px;
	outline:1px none red;
	min-height:100vh;
	height:auto;
	padding-top:4.6875rem;
	display:grid;
	grid-template-columns:100% 0%;
	transition: grid-template-columns 2.1s, padding 2.1s;
}
#wrapper.featured {
	grid-template-columns:20% 80%;
	transition: grid-template-columns 2.1s;	
}
#wrapper.partial {
	grid-template-columns:80% 20%;
	transition: grid-template-columns 2.1s;		
}

#wrapper.partial.featured {
	grid-template-columns:20% 80%;
	transition: grid-template-columns 2.1s;	
}
/* .home #wrapper {
	padding-top:5.125rem;
	
} */

#wrapper.featured .main {
	padding-top:4.6875rem;
	transition:padding-top 1s;
}

#wrapper.partial .main {
	padding-top:4.6875rem;
	transition:padding-top 1s;
}

#wrapper.featured .featuredcontentpanel {
	padding-right:1rem;
	transition:padding 2.1s;
}

.main {
	container-type: inline-size;
	container-name: main-site;
	padding-top:0;
	transition:padding-top 1s;
}

/* begin footer */

.footer {
	position:relative;
	width:100%;
	background-color:#F2F2F2;
	border-radius:.5rem;
	padding:1.875rem 1.875rem 1.875rem 1.875rem;
	/* padding:0 1.25rem 0 1.25rem; */
	/* margin-bottom:3rem; */
	display:block;
}

.footer .footer-controls {
	display:grid;
	grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr;
	align-items:center;
	justify-content:start;
	text-transform:uppercase;
	outline:1px none red;
	font-size:.75rem;
	letter-spacing:0.408px;
}

.footer .footer-controls .footer-control {
	cursor:pointer;
}

.footer .footer-content {
	display:grid;
	grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr;
	grid-row-gap:7.125rem;
	align-items:start;
	justify-content:start;
	outline:1px none red;
	font-size:.75rem;
	padding:2.5rem 0 0.625rem 0;
	font-size:.75rem;
	letter-spacing:0.816px;
	line-height:1.25;
}


/* end footer */


/* Masthead Social Media Icons */



/*************************** end structural styles ***************************/





/*************************** begin component styles ***************************/



/* begin slider / carousel component */

/* begin global slick slider styles */

/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-loading .slick-list { background: white url("./ajax-loader.gif") center center no-repeat; }
.slick-list.dragging { cursor: pointer; cursor: hand; }

.slick-slider .slick-list, .slick-track, .slick-slide, .slick-slide img { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0);backface-visibility: hidden; }

.slick-track { position: relative; left: 0; top: 0; display: block; zoom: 1; }
.slick-track:before, .slick-track:after { content: ""; display: table; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }

.slick-slide { float: left; height: 100%; min-height: 1px; display: none; }
.slick-slide img { display: block; width:100%; height:auto; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

.slick-cloned {
   -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

/* Icons */
@font-face { font-family: "slick"; src: url("./fonts/slick.eot"); src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg"); font-weight: normal; font-style: normal; }
/* Arrows */
.slick-prev, .slick-next { position: absolute; display: block; height: 3.125rem; width: 3.375rem; opacity: 1; line-height: 0; font-size: 0; cursor: pointer; background: transparent; color: transparent; top: 50%; padding: 0; border: none; outline: none; z-index: 1000000; }
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { outline: none; opacity: 0.5; color: transparent; }
.slick-prev:hover:before, .slick-next:hover:before { opacity: 0.95; }
.slick-prev:focus:before, .slick-next:focus:before { opacity: 0.95; }
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { opacity: 0.5; }

.slick-prev:before, .slick-next:before { font-family: "slick"; font-size: 20px; line-height: 1; color: white; opacity: 0.5; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.slick-prev { left: -7.5rem; background-image: url('Left_Arrow_Off.svg'); background-size:100%; }
/*.slick-prev:before { content: url('L_Arrow.png'); }*/

.slick-next { right: -7.5rem; background-image: url('Right_Arrow_Off.svg'); background-size:100%; }
/*.slick-next:before { content: url('R_Arrow.png'); }*/

.main-header-carousel .slick-prev { left: 7.5rem; background-image: url('MHC_Left_Arrow.svg'); background-size:100%; }
.main-header-carousel .slick-next { right: 7.5rem; background-image: url('MHC_Right_Arrow.svg'); background-size:100%; }

/* Dots */
.slick-slider { margin-bottom: 30px; }

/*.slick-dots { position: relative; list-style: none; display: block; text-align: center; padding: 0; width: 100%; padding-top:2rem;display:none; }
.slick-dots li { position: relative; display: inline-block; height: 20px; width: 20px; margin: 0 10px; padding: 0; cursor: pointer; outline:1px none red; font-size:1.2rem; }
.slick-dots li button { border: 0; background: transparent; display: block; height: 20px; width: 20px; outline: none; line-height: 0; font-size: 0; color: transparent; padding: 5px; cursor: pointer; }
.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }
.slick-dots li button:hover:before, .slick-dots li button:focus:before { opacity: 1; }
.slick-dots li button:before { position: absolute; top: 0; left: 0; content: "\2022"; width: 20px; height: 20px; font-family: "slick"; font-size: 6px; line-height: 20px; text-align: center; color: black; opacity: 0.25; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-dots li.slick-active button:before { color: black; opacity: 0.75; }*/

.slick-dots { position: absolute; bottom: -4rem; list-style: none; display: block; text-align: center; padding: 0; width: 100%; }
.slick-dots li { position: relative; display: inline-block; height: 20px; width: 20px; margin: 0 2px; padding: 0; cursor: pointer; list-style:none; }
.slick-dots li button { border: 0; background: transparent; display: block; height: 20px; width: 20px; outline: none; line-height: 0; font-size: 0; color: transparent; padding: 5px; cursor: pointer; }
.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }
.slick-dots li button:hover:before, .slick-dots li button:focus:before { opacity: 1; }
.slick-dots li button:before { position: absolute; top: 0; left: 0; content: ""; width: 20px; height: 20px; font-family: "slick"; font-size: 6px; line-height: 20px; text-align: center; color: black; opacity: 0.25; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-dots li.slick-active button:before { color: black; opacity: 0.75; }




.slick-dots li a {
	font-family: "MF-SpazioLC-Medium";
	font-size:13px;
	display:inline-block;
	width:20px;
	height:20px;
	color:#000;
	font-weight:normal;
	text-decoration:none;
	vertical-align:middle;
	padding-top:1px;
	text-align:center;
}
.slick-dots li.slick-active a {
	color:#000;
	/*text-decoration:underline;*/
	border:1px solid #000;
	border-radius:50%;
	/* border-width:0 0 1px 0; */
	
}
.slick-dots li:hover a {
	color:#000;
	/*text-decoration:underline;*/
	border:1px solid #000;
	border-radius:50%;
	text-decoration:none;
	width:20px;
	height:20px;
	/* border-width:0 0 1px 0; */
}

.slick-dots li a:before {
	display:none;
}


[dir="rtl"] .slick-next {right: auto;left: -25px;}
[dir="rtl"] .slick-next:before {content: "\2190";}
[dir="rtl"] .slick-prev {right: -25px;left: auto;}
[dir="rtl"] .slick-prev:before {content: "\2192";}
[dir="rtl"] .slick-slide {float: right;}

/* end global slick slider styles */

/* begin main slider over-rides */

.carousel {
	position:relative;
	margin-bottom:0;
}
.carouselimage {
	position:relative;
	display:block;
}
.carouseltext {

}

.standard_video_carousel {
  object-fit: cover;
  width: 100.5%;
  height: 100.5%;
  position: absolute;
  top: 0;
  left: 0;
  opacity:0;
  transition: opacity 1s;
}
.standard_video_carousel.shown {
	opacity:1;
}

.video-control {
    position: absolute;
    left: calc(50% - 34.5px);
    top: calc(50% - 40.5px);
    width: 69px;
    height: 81px;
	transform-origin:center;
    transform: scale(1);
    opacity: 1;
    transition: opacity .5s, transform .5s;
	background:url(Elita_Web_Desktop_Assets_Play_Button.svg) center center no-repeat;
	background-size:cover;
	cursor:pointer;
}
.video-control:hover {
	opacity:1;
	transform: scale(1.5);
}

.video-control.playing {
	opacity:0;
}

.video-player-bar {
	position:absolute;
	left:0;
	bottom:.5rem;
	width:100%;
	height:6rem;
	background-color:rgba(0,0,0,.5);
	display:grid;
	grid-auto-columns: auto;
	align-items:center;
	padding: 0 3.75rem 0 3.75rem;
	
}

.video-player-bar .play-pause {
	display:inline-block;
	width:1.875rem;
	height:1.875rem;
	background:url(Elita_Web_Desktop_Assets_Video_Bar_Play_Button.svg) center center no-repeat;
	background-size:cover;
	margin-right:3.125rem;
}

.video-player-bar .video-progress-container {
	position:relative;
	display:inline-block;
	width:98.75rem;
	width:50rem;
	height:3px;
	background:transparent;
	z-index:100;
	opacity:0;
	transition:opacity .5s;
}
.video-player-bar .video-progress-container.shown {
	opacity:1;
}
.video-player-bar .video-progress-container .video-total {
	position:absolute;
	width:100%;
	height:1px;
	left:0;
	top:1px;
	background:#737373;
	z-index:101;
}
.video-player-bar .video-progress-container .video-progress {
	position:absolute;
	width:0%;
	height:3px;
	left:0;
	top:0;
	background:white;
	z-index:102;
	transition:none;

}



/* end main slider over-rides */

.content-object {
	position:relative;
	outline:1px none red;
	margin:0;
	padding:0;
	background:#fff;
}
.content-object.parallax {
	position:sticky;
	top:0;
}

.content-object.keyline-top {
	border-style:solid;
	border-color:#E6E6E6;
	border-top-width:1px;
}

.content-object.keyline-bottom {
	border-style:solid;
	border-color:#E6E6E6;
	border-bottom-width:1px;
}

.boxcanvas {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background-color:transparent;
}

/*************************** begin content objects ***************************/


/*************************** begin Standard Text Module (Left Aligned) ***************************/

.standard-text-module {
	position:relative;
	width:100%;
	padding:0;
	font-family: "MF-SpazioLC-Medium";
	background:#fff;
	display:grid;
	grid-template-columns:50% 50%;
	grid-column-gap:0.5rem;
	padding-right:0.5rem;
	padding-bottom:.5rem;
}

.standard-text-module .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
	padding:1.375rem 0 5rem 1.875rem;
}

.standard-text-module .text-container .text-content {
	/* padding:1.375rem 0 5rem 1.875rem; */
	outline:1px none red;
	text-align:left;
	width:32.5rem;
}

.standard-text-module .text-container h3 {
	position:absolute;
	left:1.875rem;
	top:1.375rem;
	width:80%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.standard-text-module .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}

.standard-text-module .text-container p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}

.standard-text-module .text-container p:last-of-type {
	margin-bottom:0;
}

/*************************** end Standard Text Module (Centred) ***************************/

/*************************** begin Survey Form Module (Left Aligned) ***************************/

.survey-form-module {
	position:relative;
	width:100%;
	padding:0;
	font-family: "MF-SpazioLC-Medium";
	background:#fff;

	/* padding-right:0.5rem; */
	/* padding-bottom:.5rem; */
}

.survey-form-module .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
	padding:1.375rem 0 5rem 0;
	margin-bottom:.5rem;
}

.survey-form-module .text-container.intro {
	padding:9.625rem 0 9.625rem 0;
}
.survey-form-module .text-container.white {
	background-color:#fff;
}

.survey-form-module .text-container .text-content {
	/* padding:1.375rem 0 5rem 1.875rem; */
	outline:1px none red;
	text-align:left;
	width:32.5rem;
}

.survey-form-module .text-container h3 {
	position:relative;
	width:100%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:2.5rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:center;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.43;
	letter-spacing:1.36px;
}

.survey-form-module .text-container h4 {
	position:relative;
	width:100%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:center;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.survey-form-module .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:center;
}

.survey-form-module .text-container p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}

.survey-form-module .text-container p:last-of-type {
	margin-bottom:0;
}

.survey-form-module .fieldcontainer {
	padding:2.375rem 0 2.375rem 0;
	background-color:#F2F2F2;
	margin-bottom:0.5rem;
	border-radius: 0.5rem;
}

.survey-form-module .fieldcontainer.white {
	background-color:#fff;
}

.survey-form-module .fieldcontainer.radios {
	padding:2.625rem 0 2.625rem 0;
}

.survey-form-module .fieldcontainer p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.125rem;
	margin-bottom:1.25rem;
	line-height:1;
	letter-spacing:0.612px;
	text-align:center;
	text-transform:uppercase;
}

.survey-form-module .fieldcontainer p.tall {
	margin-bottom:2.1875rem;
}

.survey-form-module input[type=text] {
	display:block;
	margin:auto;
	width:39.5625rem;
	height:2.5625rem;
	background-color:#E2661F;
	color:#fff;
	text-align:center;
	font-size:0.875rem;
	border-radius:.5rem;
	padding-bottom:0.09375rem;
}

.survey-form-module input[type=text].errorstate {
	background-color:red;
	color:#fff;
}

.survey-form-module input[type=text].white {
	background-color:#fff;
	color:#000;	
	border:1px solid #707070;
	border-top-left-radius: 50px; /* Adjust as needed */
	border-bottom-left-radius: 50px; /* Adjust as needed */
	border-top-right-radius: 50px; /* Adjust as needed */
	border-bottom-right-radius: 50px; /* Adjust as needed */
}
.survey-form-module input[type=text]::placeholder {
	color:#fff;
}
.survey-form-module input[type=text]:focus::placeholder {
	color:#E2661F;
}
.survey-form-module input[type=text].errorstate:focus::placeholder {
	color:red;
}
.survey-form-module input[type=text].white::placeholder {
	color:#000;
}
.survey-form-module input[type=text].white:focus::placeholder {
	color:#fff;
}
.survey-form-module .fieldcontainer .radiogroup {
	display:grid;
	width:39.75rem;
	margin:auto;
	grid-template-columns:20% 1fr 20%;
	align-items:center;
}
.survey-form-module .fieldcontainer .radiogroup.narrow {
	width:36.125rem;
}

.survey-form-module .fieldcontainer .radiogroup .left {
	font-size:0.625rem;
	text-align:left;
	text-transform:uppercase;
}
.survey-form-module .fieldcontainer .radiogroup .middle {
	text-align:center;
	font-size:0;
	outline:1px none red;
}
.survey-form-module .fieldcontainer .radiogroup .right {
	font-size:0.625rem;
	text-align:right;
	text-transform:uppercase;
}

.survey-form-module .fieldcontainer .checkboxgroup {
	display:block;
	width:39.75rem;
	margin:auto;
	font-size:0;
}

.survey-form-module input[type=radio].single-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

.survey-form-module input[type=radio].single-check + span {
	display:inline-block;
	font-size: 1rem;
	color:#000;
	cursor:pointer;
	padding-left:0;
	border:1px solid #707070;
	border-radius:50%;
	width:2.625rem;
	height:2.625rem;
	text-transform:none;
	font-family:ReplicaLLWeb-Bold;
	letter-spacing:1px;
	text-transform:uppercase;
	font-family: "MF-SpazioLC-Medium";
	color:#000;
	vertical-align:middle;
	padding-top:.625rem;
	margin-right:1.125rem;
	background-color: #fff;
	transition: background-color .25s, color .25s;
}
.survey-form-module input[type=radio].single-check + span:hover {
	background-color:#E2661F;	
	color:#fff;
	border-color:#E2661F;
}
.survey-form-module input[type=radio].single-check:checked + span {
	background-color:#E2661F;
	color:#fff;
	border-color:#E2661F;
}
.survey-form-module input[type=radio].single-check.errorstate + span {
	border-color:red;
}

.survey-form-module input[type=checkbox].multi-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

.survey-form-module input[type=checkbox].multi-check + span {
    display: inline-block;
    position: relative;
    width: auto;
    height: 1.75rem;
    text-align: center;
    background-color: #fff;
    color: #000;
    font-size: 0.75rem;
    line-height: 1.6rem;
	border:1px solid #707070;
    border-radius: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.408px;
    overflow: hidden;
	margin-bottom:.8125rem;
	margin-right:.5rem;
	transition: background-color .25s, color .25s;
}
.survey-form-module input[type=checkbox].multi-check + span:hover {
	background-color:#E2661F;	
	color:#fff;
	border-color:#E2661F;
}
.survey-form-module input[type=checkbox].multi-check:checked + span {
	background-color:#E2661F;
	color:#fff;
	border-color:#E2661F;
}

.survey-form-module input[type=checkbox].multi-check.errorstate + span {
	border-color:red;
}

.survey-form-module #submit_spinner {
	width:1.2rem;
	height:1.2rem;
	display:none;
	margin-top:.25rem;
}

.survey-form-module #submit_label {
	display:inline;
}

.survey-form-module button[type=submit] {
    position: relative;
	width: 6.6875rem;
    /* line-height: 1; */
    height: 1.75rem;
    font-size: 0.875rem;
    color: #fff;
	background: #000;
    outline: none;
    border: 1px none #6C6C6C;
    letter-spacing: 1px;
    cursor: pointer;
	border-top-left-radius: 50px; /* Adjust as needed */
	border-bottom-left-radius: 50px; /* Adjust as needed */
	border-top-right-radius: 50px; /* Adjust as needed */
	border-bottom-right-radius: 50px; /* Adjust as needed */
    padding: 0;
	padding-bottom:0.0625rem;
    text-transform: uppercase;
    transition: background-color .25s, color .25s;
}
.survey-form-module button[type=submit].errorstate {
	background:red;
}
.survey-form-module button[type=submit].errorstate:hover {
	background:red;
}
.survey-form-module button[type=submit]:hover {
	background: #E2661F;
}

.survey-form-module button[type=submit]:before {
	display:none;
}

#thankyou-message p {
	color:#000;
}


/*************************** end Survey Form Module (Centred) ***************************/

/*************************** Begin Logo Module (Centred) ***************************/

.logo-module .logo-container {
	position:relative;
	/*display:grid;
	grid-template-columns:1fr 1fr 1fr;
	justify-items:center;*/
	width:100%;
	margin-top:0;
	outline:1px none red;
	width:65.71875rem;
	/* min-height:100vh; */
	margin:auto;
	/* padding-bottom:2rem; */
}
.logo-module .logo-container .row {
	display:flex;
	justify-content:center;	
	align-items:center;
}
.logo-module .logo-container .row .logo-item {
	outline:1px none red;
	width:21.875rem;
	width:18rem;
	height:8.6875rem;
	/* min-height:5rem; */
	text-align:center;
}
.logo-module .logo-container .row .logo-item img {
	width:auto;
	height:auto;
	max-height:8.6875rem;
	max-width:21.875rem;
	max-width:18rem;
	outline:1px none blue;
	vertical-align:top;
}

/*************************** End Logo Module (Centred) ***************************/

/*************************** begin Standard Map Module ***************************/

.standard-map-module {
	position:relative;
	width:100%;
	padding:0;
	color:#737373;
	font-family: "MF-SpazioLC-Medium";
	padding:2.5rem 2.25rem 6.3125rem 2.25rem;
}

.standard-map-module h3 {
	font-family: "MF-SpazioLC-Medium";
	text-align:center;
	font-size:1.25rem;
	margin-bottom:2.5rem;
	text-transform:uppercase;
	letter-spacing:normal;
	color:#000;
}

.map-location-wrapper p {
	font-size:16px !important;
	margin-bottom:0;
	text-align:center;
}
@keyframes fade-in {
	100% { opacity:1; }
}

/*************************** end Standard Map Module ***************************/

/*************************** begin Center Text Module ***************************/

.center-text-module {
	padding-bottom:0.5rem;
}

.center-text-module .background-panel {
	position:relative;
	width:100%;
	background:#F2F2F2;
	display:grid;
	grid-template-columns:100%;
	align-items:center;
	justify-items:center;
	border-radius:.5rem;
	padding-top:13.5rem;
	padding-bottom:14.6875rem;	
}


.center-text-module .text-container {
	position:relative;
	width:31.5%;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.center-text-module .text-container .text-content {
	position:relative;
	outline:1px none red;
	text-align:center;
}

.center-text-module .text-container h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:3.75rem;
	letter-spacing:1px;
	text-align:center;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.center-text-module .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:center;
}
.center-text-module .text-container p:last-of-type {
	margin-bottom:0;
}

/*************************** begin Pull Quote Module (Left Aligned or Center Aligned) ***************************/

/*************************** begin Main Header Text Module ***************************/

.main-header-text-module {
	position:relative;
	width:100%;
	background:#fff;
	transition: margin-top 1s;
}

.main-header-text-module .text-content {
	width:43%;
	/* min-height:100vh; */
	margin:auto;
	margin-bottom:0;
	padding:10.5625rem 0 7.625rem 0;
}

.main-header-text-module.with-logos .text-content {
	padding-bottom:3.75rem;
}

.main-header-text-module .text-content h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:6.875rem;
	line-height:1.14;
	margin-bottom:0.875rem;
	letter-spacing:-6.6px;
	text-transform:uppercase;
	text-align:center;
}

.main-header-text-module .text-content h4 {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.125rem;
	line-height:1.05;
	margin-bottom:5.3125rem;
	letter-spacing:-0.27px;
	text-transform:uppercase;
	text-align:center;
}

.main-header-text-module .text-content p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.25rem;
	line-height:1.2;
	letter-spacing:0.2px;
	margin-bottom:1.4375rem;
	text-align:center;
}
.main-header-text-module .text-content p:last-of-type {
	margin-bottom:0;
}

.main-header-text-module .text-content p a {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	line-height:1.3;
	letter-spacing:0.52px;
	text-align:center;
	text-transform:uppercase;
	color:#A2A2A2;
	text-decoration:none;
}
.main-header-text-module .text-content p a:hover {
	color:#000;
}

/*************************** end Main Header Text Module ***************************/

/*************************** begin Pull Quote Module (Left Aligned or Center Aligned) ***************************/

.pull-quote-module {

	padding-bottom:.5rem;
}
.pull-quote-module .background-panel {
	
	position:relative;
	width:100%;
	display:grid;
	justify-items:center;
	align-items:center;
	background:#fff;
	outline:1px none red;
	padding:7.875rem 0 7.4375rem 0;
	background-color:#F2F2F2;
	border-radius:0.5rem;	
}

.pull-quote-module .text-content {
	position:relative;
	/* width:42%; */
	width:50rem;
	outline:1px none blue;
	text-transform:uppercase;
	text-align:center;
	margin:auto;
}

.pull-quote-module .text-content h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.5rem;
	line-height:1.16;
	margin-bottom:1.625rem;
	letter-spacing:0.816px;
	text-align:center;
}

.pull-quote-module p {
	width:100%;
	text-align:center;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.625rem;
	line-height:1;
	letter-spacing:0.34px;
	margin-bottom:0;
	text-transform:uppercase;
}
.pull-quote-module p:last-of-type {
	margin-bottom:0;
}

/*************************** end Pull Quote Module (Centred) ***************************/

/*************************** begin Article Module 2 (Two Column) ***************************/

.article-module-2 {
	position:relative;
	width:100%;
	max-width:100%;
	/* padding: 0 5.8125rem 6.1875rem 5.8125rem; */
	padding:0;
	color:#000;
	background:#fff;
	display:grid;
	grid-template-columns: 50% 50%;
	/* align-items:center; */
	padding-bottom:11.75rem;
	padding:0.9375rem 0 6.5625rem 0;
	outline:1px none red;
}

.article-module-2.parallax {
	position:relative;
}

.article-module-2 h3.module-heading {
    font-family: "MF-SpazioLC-Medium";
    text-align: center;
    padding-top: 3.25rem;
    margin-bottom: 3.25rem;
    color: #000;
    font-size: 1.25rem;
    text-transform: uppercase;
    letter-spacing:normal;
    line-height: 1;	
}

.article-module-2.parallax h3.module-heading {
    font-family: "MF-SpazioLC-Medium";
    text-align: center;
	position:sticky;
	top:0;
	padding-top:3.25rem;
	margin-top:-3.25rem;
	background-color:#fff;
    color: #000;
    font-size: 1.25rem;
    text-transform: uppercase;
    letter-spacing: -0.35px;
    line-height: 1;	
}

.article-module-2.top-padded {
	padding-top:3.1875rem;
}

.article-module-2 .carousel-container {
	position:relative;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	outline:1px none red;
	padding-top:1.1875rem;
}

.article-module-2 .carousel-container.portrait.carousel-left {
	padding-left:12rem;
	outline:1px none red;
}

.article-module-2 .carousel-container.portrait.carousel-right {
	padding-right:12rem;
	outline:1px none red;
}

.article-module-2 .carousel-container.landscape {
	display:grid;
	align-items:center;
	height:100%;
	grid-template-columns:100%;
}
/* .article-module-2 .carousel-container.landscape .caption {
	align-self:start;
} */

.article-module-2 .carousel-container.landscape.carousel-left {
	padding-left:5.875rem;
	outline:1px none red;
}
.article-module-2 .carousel-container.landscape.carousel-right {
	padding-right:5.875rem;
	outline:1px none red;
}


.article-module-2 .carousel-container .carousel {
	display:block;
	width:80%;	
	margin:auto;
}
.article-module-2 .carousel-container.landscape .carousel {
	width:86.625%;	
	width:51.9375rem;
}

.article-module-2 .carousel-container.portrait .carousel {
	width:65.9375%;	
	width:39.5625rem;	
}
.article-module-2 .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;
}
.article-module-2 .carousel-container .carousel .slide-text {
	display:block;
	padding-top:1rem;
	text-align:center;
	outline:1px none blue;
	display:none;
}

.article-module-2 .carousel-container .carousel .slide-text h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	letter-spacing:normal;
	margin-bottom:.5rem;
	text-transform:uppercase;
}
.article-module-2 .carousel-container .carousel .slide-text p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	letter-spacing:0.52px;
	line-height:1.31;
	margin-bottom:1rem;
	text-transform:uppercase;
}

.article-module-2 .carousel-container .caption {
	display:block;
	padding-top:1rem;
	text-align:center;
	outline:1px none blue;
}

.article-module-2 .carousel-container .caption h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	letter-spacing:normal;
	margin-bottom:.5rem;
	text-transform:uppercase;
}
.article-module-2 .carousel-container .caption p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	letter-spacing:0.52px;
	line-height:1.31;
	margin-bottom:1rem;
	text-transform:uppercase;
}


.article-module-2 .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
}

.article-module-2 .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	transition: transform .5s;
	transform: scale(1);
}
.article-module-2 .carousel-container .carousel .slick-slide:hover .image-zoom-wrapper img {
	transition: transform .5s;
	transform: scale(1.02);
}

.article-module-2 .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:difference;
}
.article-module-2 .cursor.shown {
	opacity:1;
}

.article-module-2 .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
	display:none;
}
.article-module-2 .cursor span {
	vertical-align:top;
}
.article-module-2 .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-size:17px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family: "MF-SpazioLC-Medium";
}

.article-module-2 .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-size:17px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family: "MF-SpazioLC-Medium";
	
}

/*.article-module-2 .video-control {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*//*
	left:33%;
	top:0;
	width:33%;
	height:100%;
    opacity: 1;
	cursor:pointer;
	outline:1px none red;
	background:none;
}*/

.article-module-2 .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.article-module-2 .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.article-module-2 .video-control.playing {
	opacity:0;
}

.article-module-2 a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:0;
	top:0;
	width:100%;
	height:100%;
	outline:1px none red;
}

.article-module-2 a.slide-link:hover + .caption {
	text-decoration:underline;
	text-decoration-line: underline;
	text-decoration-thickness: 1px;
	text-underline-offset:3px;
}


/*************************** end Article Module 2 (Two Column) ***************************/

/*************************** begin accordion module ***************************/

.accordion-module {
	position:relative;
	width:100%;
	background:#fff;	
	padding-bottom:.5rem;
}

.accordion-module .accordion-module-heading {
	height:4.6875rem;
	line-height:4.6875rem;
	background-color:#E2E2E2;
	color:#000;
	padding-left:1.875rem;
	margin-bottom:.5rem;
	border-radius:.5rem;
	font-size:0.875rem;
	text-transform:uppercase;
}

.accordion-module .accordion {
	position:relative;
	width:100%;
}



.accordion-module .accordion .accordion-item {
	margin-bottom:.5rem;
}

.accordion-module .accordion .accordion-item:last-of-type {
	margin-bottom:0;
}

.accordion-module .accordion .accordion-item .accordion-item-title {
	height:4.6875rem;
	line-height:4.6875rem;
	background-color:#F2F2F2;
	color:#000;
	padding-left:1.875rem;
	margin-bottom:0;
	border-radius:.5rem;
	font-size:0.875rem;
	letter-spacing:0.476px;
	text-transform:uppercase;
	cursor:pointer;
	background:#F2F2F2 url(plus.svg) center right 1.875rem no-repeat;
	background-size:.75rem;
	transition:background-color .25s;
}

.accordion-module .accordion .accordion-item .accordion-item-title:hover {
	background-color:#E2E2E2;
}

.accordion-module .accordion .accordion-item .accordion-item-title span {
	border:1px solid #B9B9B9;
	border-radius:0.875rem;
	padding:.3125rem 1.25rem .3125rem 1.25rem;
	font-size:0.875rem;
	vertical-align:middle;
	line-height:0.875rem;
}

.accordion-module .accordion .accordion-item .accordion-item-title.selected {
	background:#F2F2F2 url(minus.svg) center right 1.875rem no-repeat;
	background-size:.75rem;	
    border-top-left-radius:.5rem;
    border-top-right-radius:.5rem;
    border-bottom-right-radius:0;
    border-bottom-left-radius:0;

}

.accordion-module .accordion .accordion-item .accordion-item-content {
	position:relative;
	padding:1.25rem 2.5rem 1.25rem 2.5rem;
	background-color:#F2F2F2;
	border-radius:.5rem;
	height:auto;
	display:grid;
	grid-template-columns:1fr 1fr;
	align-items:end;
	padding-top:2.1875rem;
}

.accordion-module .accordion .accordion-item .accordion-item-content p {
	font-size:0.890625rem;
}

.accordion-module .accordion .accordion-item .accordion-item-content.selected {
    border-top-left-radius:0;
    border-top-right-radius:0;
    border-bottom-right-radius:.5rem;
    border-bottom-left-radius:.5rem;
}

.accordion-module .accordion .accordion-item .accordion-item-content .text-content {
	position:relative;
	width:27.4375rem;	
	outline:1px none red;
	text-align:left;	
}

.accordion-module .accordion .accordion-item .accordion-item-content img {
	position:relative;
	width:47rem;
	height:auto;
	border-radius:.5rem;
	justify-self:end;
}

.accordion-module .accordion .accordion-item .accordion-item-content .text-content p:last-of-type {
	margin-bottom:0;
}

/*************************** end accordion module ***************************/

/*************************** begin Contact Details Module ***************************/

.contact-details-module {
	position:relative;
	width:100%;
	padding:0;
	font-family: "MF-SpazioLC-Medium";
	background:#fff;
	display:grid;
	grid-template-columns:50% 50%;
	grid-column-gap:0.5rem;
	min-height:39.375rem;
	padding-right:0.5rem;
	padding-bottom:.5rem;
}

.contact-details-module .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.contact-details-module .text-container .text-content {
	position:relative;
	width:27.4375rem;
	outline:1px none red;
	text-align:left;
	padding:0.625rem 0.625rem 0.625rem 0.9375rem;
}

.contact-details-module .text-container h3 {
	position:relative;
	width:80%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.contact-details-module .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}
.contact-details-module .text-container p:last-of-type {
	margin-bottom:0;
}

.contact-details-module .locations-container {
	position:relative;
	display:block;

}

.contact-details-module .locations-container .location-item {
	display:grid;
	grid-template-columns:1fr 1fr;
	border-radius:0.5rem;
	height:auto;
	background-color:#F2F2F2;
	color:#000;
	margin-bottom:.5rem;
	border-radius:.5rem;
	font-size:0.890625rem;
}
.contact-details-module .locations-container .location-item p {
	font-size:0.890625rem;
}
.contact-details-module .locations-container .location-item .location-name {
	text-transform:uppercase;
	font-size:0.875rem
}
.contact-details-module .locations-container .location-item:last-of-type {
	margin-bottom:0;
}

.contact-details-module .locations-container .location-item .location-text {
	text-align:left;
	padding:0.625rem 0.625rem 0.625rem 0.9375rem;
}

.contact-details-module .locations-container .location-item .display-image {
	text-align:right;
	padding:0.625rem 0.625rem 0.625rem 0.9375rem;
}
.contact-details-module .locations-container .location-item .display-image img {
	width:13.625rem;
	height:auto;
	vertical-align:middle;
	border-radius:.25rem;
}

.contact-details-module a.pill {
    display: inline-block;
    position: relative;
    width: 5rem;
    height: 1.25rem;
    text-align: center;
    background-color: transparent;
    color: #000;
    font-size: 0.625rem;
    line-height: 1.25rem;
	border:1px solid #000;
    border-radius: 0.625rem;
    vertical-align: middle;
    text-transform: uppercase;
    margin-right: .5rem;
    letter-spacing: 0.408px;
    overflow: hidden;
	padding:0 0.625rem 0 0.625rem;
	transition:width .5s, border-color .5s;
	
	display:inline-block;
	position:relative;
	width: 5rem;
	height:auto;
	text-align:center;
	background-color:transparent;
	color:#000;
	font-size:0.625rem;
	line-height:1;
	border-radius:0.625rem;
	text-transform:uppercase;
	letter-spacing:0.408px;
	overflow:hidden;
	border:1px solid #707070;
	padding:0.3125rem 0.625rem 0.3125rem 0.625rem;
	margin-bottom:.25rem;
	vertical-align:middle;
}
.contact-details-module a.pill:hover {
	width:8.875rem;
	border-color:#E2661F;
}
.contact-details-module a.pill span {
	display: inline-block;
	position:relative;
	z-index:2;
	opacity:1;
	transition: opacity .5s;
}

.contact-details-module a.pill:hover span {
	opacity:0;
}

.contact-details-module a.pill:before {
	content:'';
	position:absolute;
	left:-1%;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	z-index:1;
	transition:width .35s;

}
.contact-details-module a.pill:hover:before {
	width:105%;
}

.contact-details-module a.pill:after {
	content:'Open in google maps';
	position:absolute;
	left:0;
	top:0.3125rem;
	height: 1.25rem;
	width:100%;
	transition: opacity .25s;
	transition-delay:0;
	opacity:0;
	z-index:2;
	outline:1px none red;
	vertical-align:middle;
}

.contact-details-module a.pill:hover:after {
	opacity:1;	
	transition: opacity .5s;
	transition-delay:.25s;
}




/*************************** end Contact Details Module ***************************/

/*************************** begin Two Column Text Module ***************************/

.two-column-text-module {
	position:relative;
	width:100%;
	padding:0;
	font-family: "MF-SpazioLC-Medium";
	background:#fff;
	display:grid;
	grid-template-columns:50% 50%;
	grid-column-gap:0.5rem;
	min-height:39.375rem;
	padding-right:0.5rem;
	padding-bottom:.5rem;
}

.two-column-text-module .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.two-column-text-module .text-container .text-content {
	position:absolute;
	left:1.875rem;
	bottom:1.875rem;
	width:27.4375rem;
	outline:1px none red;
	text-align:left;
}

.two-column-text-module .text-container h3 {
	position:absolute;
	left:1.875rem;
	top:1.375rem;
	width:80%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.two-column-text-module .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}

.two-column-text-module .text-container p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}

.two-column-text-module .text-container p:last-of-type {
	margin-bottom:0;
}


/*************************** end Two Column Text Module ***************************/

/*************************** begin Extended Brand Carousel (Portrait) ***************************/

.extended-brand-carousel-portrait {
	position:relative;
	width:100%;
	padding:0;
	color:#0A0A0A;
	font-size:1.125rem;
	height:auto;
}

.extended-brand-carousel-portrait.parallax {
	position:relative;
}

.extended-brand-carousel-portrait h2 {
	font-size:2.25rem;
	text-align:center;
	margin-bottom:7.1875rem;
}

.extended-brand-carousel-portrait .carousel-item {
	height:100vh;
	height:-webkit-fill-available;
	/*border:1px solid #E6E6E6;
	border-width:1px 0 0 0;*/
	background:#fff;
}

.extended-brand-carousel-portrait.parallax .carousel-item, .extended-brand-carousel-portrait.parallax .carousel-item:last-of-type {
	position:sticky;
	top:0;
	left:0;
}

.extended-brand-carousel-portrait .carousel-item:first-of-type {
	border-width:0;
}
.extended-brand-carousel-portrait .carousel-item .image-container {
	width:100%;
	height:100vh;
	margin:auto;
	outline:1px none red;
	text-align:center;
	display:grid;
	align-items:center;

}

.extended-brand-carousel-portrait .carousel-item .image-container .content-wrapper {
	width:auto;
	height:auto;
	margin:auto;
}

.extended-brand-carousel-portrait .carousel-item .top-heading {
	display:block;
	width:auto;
	margin:auto;
	margin-bottom:3.1875rem;
	outline:1px none red;
	text-align:center;
	font-family: "MF-SpazioLC-Medium";
	font-size:6.875rem;
	line-height:1.15;
	letter-spacing:-6.6px;
	text-transform:uppercase;
	/*min-height:47px;*/
}

.extended-brand-carousel-portrait .carousel-item .supporting-text {
	width:auto;
	margin:auto;
	margin-top:2.3125rem;
	outline:1px none red;
	min-height:127px;
	font-size:19px
}

.extended-brand-carousel-portrait .carousel-item .supporting-text p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.125rem;
	line-height:1.05;
	letter-spacing:-0.27px;
	text-transform:uppercase;
	margin-bottom:1.1875rem;
}
.extended-brand-carousel-portrait .carousel-item .supporting-text p:last-of-type {
	margin-bottom:0;
}

.extended-brand-carousel-portrait .carousel-item img {
	display:block;
	width:15.5625rem;
	margin:auto;
}

.extended-brand-carousel-portrait .carousel .slick-track {

}

.extended-brand-carousel-portrait .carousel-item.slide-text {
	position:absolute;
	left:50%;
	top:50%;
	width:100%;
	height:auto;
	text-align:center;
	color:#FAFAFA;
	font-size:2.625rem;
	transform:translate(-50%,-50%);
	outline:1px none red;
}

/*************************** end Extended Brand Carousel (Portrait) ***************************/


/*************************** begin Standard 3:4 Carousel (Portrait) ***************************/

.standard-3-4-portrait-carousel {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 100%;
	background-color:#fff;
	padding-bottom:6.25rem;
}

.standard-3-4-portrait-carousel .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	overflow:visible;
	padding-bottom:5rem;
}

.standard-3-4-portrait-carousel .carousel-container .carousel {
	display:block;
	width:30.83%;	
	margin:auto;
	outline:1px none blue;
}

.standard-3-4-portrait-carousel .carousel-container .carousel .slick-slide .slide-text {
	display:none;
}
.standard-3-4-portrait-carousel .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

}
.standard-3-4-portrait-carousel .carousel-container .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	padding-top:1rem;
	line-height:1;
	text-align:left;
	width:100%;
	max-width:100%;
	/*outline:1px solid blue;
	 background:red; */
	text-transform:uppercase;
	position:relative;
	/* left:22.71%; */
	z-index:100;
	height:auto;
	opacity:1;
	outline:1px none red;
}

.standard-3-4-portrait-carousel .carousel-container .dots-container .slick-dots {
	position:relative;
	outline:1px none blue;
	position:relative;
	bottom:auto;
}

/* .slick-dots { position: absolute; bottom: -4rem; list-style: none; display: block; text-align: center; padding: 0; width: 100%; } */

.standard-3-4-portrait-carousel .carousel-container .dots-container {
	outline:1px none blue;
	position:relative;
	height:2rem;
	margin-top:0.5rem;
	outline:1px none red;
}

.standard-3-4-portrait-carousel .carousel-container .caption h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	letter-spacing:normal;
	text-align:center;
	margin-bottom:0.3125rem;
}

.standard-3-4-portrait-carousel .carousel-container .caption p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	text-align:center;
}

/* .standard-3-4-portrait-carousel .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
} */

.standard-3-4-portrait-carousel .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
}

.standard-3-4-portrait-carousel .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.standard-3-4-portrait-carousel .cursor.shown {
	opacity:1;
}

.standard-3-4-portrait-carousel .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
	display:none;
}
.standard-3-4-portrait-carousel .cursor span {
	vertical-align:top;
}
.standard-3-4-portrait-carousel .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family: "MF-SpazioLC-Medium";
	font-size:17px;
	
}

.standard-3-4-portrait-carousel .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family: "MF-SpazioLC-Medium";
	font-size:17px;
	
}

/*.standard-3-4-portrait-carousel .video-control {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*//*
	left:33%;
	top:0;
	width:33%;
	height:100%;
    opacity: 1;
	cursor:pointer;
	outline:1px none red;
	background:none;
}*/

.standard-3-4-portrait-carousel .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.standard-3-4-portrait-carousel .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.standard-3-4-portrait-carousel .video-control.playing {
	opacity:0;
}

.standard-3-4-portrait-carousel a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}

/*************************** end Standard 3:4 Carousel (Portrait) ***************************/

/*************************** begin Standard 3:2 Carousel (landscape) ***************************/

.standard-3-2-landscape-carousel {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 100%;
	background-color:#fff;
	padding-bottom:2.5rem;
}

.standard-3-2-landscape-carousel.no-bottom-padding {
	padding-bottom:0;
}

.standard-3-2-landscape-carousel.medium-short {
	padding-bottom:2.687rem;
}

.standard-3-2-landscape-carousel.short {
	padding-bottom:0.5625rem;
}

.standard-3-2-landscape-carousel .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	overflow:visible;
	outline:1px none red;
}

.standard-3-2-landscape-carousel .carousel-container .carousel {
	display:block;
	width:50.3125%;	
	margin:auto;
	outline:1px none blue;
}

.standard-3-2-landscape-carousel.medium .carousel-container .carousel {
	width:63.4375%;	
}

.standard-3-2-landscape-carousel.large .carousel-container .carousel {
	width:96.25%;	
}

.standard-3-2-landscape-carousel .carousel-container .carousel .slick-slide .slide-text {
	display:none;
}
.standard-3-2-landscape-carousel .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

}
.standard-3-2-landscape-carousel .carousel-container .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	padding-top:1rem;
	line-height:1;
	text-align:left;
	width:100%;
	max-width:100%;
	/*outline:1px solid blue;
	 background:red; */
	text-transform:uppercase;
	position:relative;
	/* left:22.71%; */
	z-index:100;
	height:auto;
	opacity:1;
	outline:1px none red;
}

.standard-3-2-landscape-carousel .carousel-container .dots-container .slick-dots {
	position:relative;
	outline:1px none blue;
	position:relative;
	bottom:auto;
}

/* .slick-dots { position: absolute; bottom: -4rem; list-style: none; display: block; text-align: center; padding: 0; width: 100%; } */

.standard-3-2-landscape-carousel .carousel-container .dots-container {
	outline:1px none blue;
	position:relative;
	height:2rem;
	margin-top:1rem;
	outline:1px none red;
}

.standard-3-2-landscape-carousel .carousel-container .caption h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	letter-spacing:normal;
	text-align:center;
	margin-bottom:0.3125rem;
}

.standard-3-2-landscape-carousel .carousel-container .caption p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	text-align:center;
}

.standard-3-2-landscape-carousel .carousel-container .caption p:last-of-type {
	margin-bottom:0;
}

/* .standard-3-2-landscape-carousel .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
} */

.standard-3-2-landscape-carousel .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
}

.standard-3-2-landscape-carousel .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.standard-3-2-landscape-carousel .cursor.shown {
	opacity:1;
}

.standard-3-2-landscape-carousel .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
	display:none
}
.standard-3-2-landscape-carousel .cursor span {
	vertical-align:top;
}
.standard-3-2-landscape-carousel .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-family: "MF-SpazioLC-Medium";
	font-size:17px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family: "MF-SpazioLC-Medium";
	font-size:17px;	
}

.standard-3-2-landscape-carousel .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-family: "MF-SpazioLC-Medium";
	font-size:17px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family: "MF-SpazioLC-Medium";
	font-size:17px;	
	
}

/*.standard-3-2-landscape-carousel .video-control {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*//*
	left:33%;
	top:0;
	width:33%;
	height:100%;
    opacity: 1;
	cursor:pointer;
	outline:1px none red;
	background:none;
}*/

.standard-3-2-landscape-carousel .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.standard-3-2-landscape-carousel .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.standard-3-2-landscape-carousel .video-control.playing {
	opacity:0;
}

.standard-3-2-landscape-carousel a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}

/*************************** end Standard 3:2 Carousel (Landscape) ***************************/

/*************************** begin Featured Content Module ***************************/

.featured-content-module {
	position:relative;
	width:100%;
	padding:0;
	color:#000;
	background:#fff;
}

.featured-content-module.filters:before {
	content:'';
	position:absolute;
	left:0;
	/* top:-9.375rem; */
	bottom:100%;
	width:100%;
	height:9.375rem;
	background:white;
	transition:height 1s;
	/* transition-delay:1s; */
}
.featured-content-module.loaded:before {
	height:0;
}



.featured-content-module.parallax {
	position:relative;
}
.featured-content-module .title-and-filters {
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	min-height:6.5rem;
	padding-top:2.8125rem;
	padding-bottom:2.75rem;
	outline:1px none red;
}
.featured-content-module .filter-left {
	padding-left:2.25rem;
	text-align:left;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	letter-spacing:0.13px;
	visibility:hidden;
}
.featured-content-module .filter-right {
	padding-right:2.25rem;
	text-align:right;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	letter-spacing:0.13px;
	visibility:hidden;
}

.featured-content-module.filters .filter-left, .featured-content-module.filters .filter-right {
	visibility:visible;
}



.featured-content-module h3 {
	font-family: "MF-SpazioLC-Medium";
	text-align:center;
/* 	padding-top:3.25rem;
	margin-bottom:3.25rem; */
	margin-bottom:0;
	color:#000;
	font-size:1.25rem;
	text-transform:uppercase;
	letter-spacing:normal;
	line-height:1.8;
}

.featured-content-module.parallax .title-and-filters {
	position:sticky;
	top:0;
	background-color:#fff;
	z-index:2;
	outline:1px none red;
	border:1px solid #E6E6E6;
	border-width:0 0 1px 0;
}

/* .featured-content-module.filters.parallax {
	margin-top:4.8125rem;
}

.nav-up .featured-content-module.filters.parallax {
	margin-top:0;
} */

.featured-content-module .grid-container {

	/*grid-column-gap:3rem;
	grid-row-gap:4.375rem;*/
	border:1px solid #E6E6E6;
	border-width:1px 0 0 0;
}

.featured-content-module.parallax .grid-container {
	border:none;
}

.featured-content-module .grid-container .grid-row {
	display:grid;
	grid-template-columns: 1fr 1fr;
	align-items:center;
	justify-content:center;
	border:1px solid #E6E6E6;
	border-width:0 0 1px 0;
}
.featured-content-module .grid-container .grid-row:last-of-type {
	border-width:0;
}

.featured-content-module .grid-container .grid-item {
	position:relative;
	text-align:center;
	border:1px solid #E6E6E6;
	border-width:0 1px 0 0;
	padding:9.3125rem 0 11.0625rem 0;
}

.featured-content-module .grid-container .grid-row .grid-item:nth-child(2n) {
	border-width:0;
}
.featured-content-module .grid-container .grid-item .image-zoom-wrapper {
	outline:1px none red;
	width:min-content;
	height:auto;
	overflow:hidden;
	margin:auto;
}
.featured-content-module .grid-container .grid-item a {
	position: relative;
    outline: 1px none red;
    overflow: visible;
    width: 44%;
    display: block;
    margin: auto;
	outline:1px none red;
	padding:2rem 0 2rem 0;
}
.featured-content-module .grid-container .grid-item img {
	width:21.375rem;
	height:auto;
	transform: scale(1);
	transform: 1s;
}
.featured-content-module .grid-container .grid-item a:hover img {
	transform: scale(1.02);
}

.featured-content-module .grid-container .grid-item img {
	vertical-align:top;
}

.featured-content-module .grid-container .grid-item .title-container {
	position:absolute;
	left:50%;
	top:50%;
	width:167%;
	height:auto;
	transform:translate(-50%,-52%);
	mix-blend-mode:difference;
	color:#fff;
	font-family: "MF-SpazioLC-Medium";
	font-size:4.375rem;
	letter-spacing:-2.8px;
	line-height:1;
	text-transform:uppercase;
	pointer-events:none;
	opacity:0;
	transition:opacity 1s;
	outline:1px none red;
}
.featured-content-module .grid-container .grid-item a:hover .title-container {
	opacity:1;
}

.featured-content-module .grid-container .grid-item .attributes-container {
	position:absolute;
	left:50%;
	bottom:0.9375rem;
	width:90%;
	height:auto;
	transform:translateX(-50%);
}

.featured-content-module .grid-container .grid-item .attributes-container .page-title {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	text-transform:uppercase;
	padding-bottom:1rem;
}

.featured-content-module .grid-container .grid-item .attributes-container .attribute {
	vertical-align:top;
	padding-right:1rem;
}

.featured-content-module .grid-container .grid-item .attributes-container .attribute-value {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.75rem;
	text-transform:uppercase;
	line-height:1.07;
}

.featured-content-module .grid-container .grid-item .attributes-container .attribute-name {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.5625rem;
	text-transform:uppercase;
	vertical-align:top;
}

.featured-content-module .grid-container .grid-item .heading {
	font-family: "MF-SpazioLC-Medium";
	display:inline-block;
	color:#000;
	font-size:1.25rem;
	padding-top:0.625rem;
	text-transform:uppercase;
	letter-spacing:1px;
}

.featured-content-module .grid-container .grid-item .text-overlay {
	position:absolute;
	left:50%;
	top:50%;
	width:100%;
	height:auto;
	text-align:center;
	color:#FAFAFA;
	font-size:2.625rem;
	transform:translate(-50%,-50%);
	outline:1px none red;
}

.featured-content-module a:before {
	display:none;
}

/*************************** end Featured Content Module ***************************/

/*************************** begin Featured Stories Module ***************************/

.featured-stories-module {
	position:relative;
	outline:1px none red;
	padding:0;
	height:100vh;
}
.featured-stories-module .down-arrow {
	position:absolute;
	left:50%;
	bottom:2rem;
	width:0.375rem;
	height:1.375rem;
	background:url(arrow-down-black.svg) center center no-repeat;
	background-size:cover;
	transform:translateX(-50%);
}
.featured-stories-module .stories-container {
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	height:auto;
	text-align:center;
	outline:1px none blue;
	/* padding:1.25rem 0 5rem 0; */
	width:79.89%;
	overflow:visible;
	outline:1px none red;
}

.featured-stories-module .stories-container .module-title {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	text-transform:uppercase;
	padding-bottom:1.4375rem;
	letter-spacing:0.52px;
	margin-bottom:0;
	
}

.featured-stories-module .stories-container .story-item {
	position:relative;
	vertical-align:top;
	overflow:visible;
	padding-right:1.0625rem;
}

.featured-stories-module .stories-container .story-item a {
	text-decoration:none;
	transition: color .5s
}

.featured-stories-module .stories-container:has(a:hover) a:not(:hover) {
	color:#9b9b9b;
	color:#cbcbcb;
}

.featured-stories-module .stories-container .story-item a:before {
	display:none;
}

.featured-stories-module .stories-container .story-title {
	font-family: "MF-SpazioLC-Medium";
	font-size:2.125rem;
	text-transform:uppercase;
	line-height:1.14;
}

.featured-stories-module .stories-container .story-category {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.6875rem;
	text-transform:uppercase;
	vertical-align:top;
}

.featured-stories-module .stories-container .story-item img {
	position:absolute;
/*  	left:-5rem;
	top:-14rem; */
 	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	width:17.5625rem;
	height:auto;
	z-index:-1;
	pointer-events:none;
	opacity:0;
	transition: opacity 1s;
}

.featured-stories-module .stories-container .story-item:hover img {
/*  	left:-6rem;
	top:-15rem; */
	opacity:1;	
}

/*.featured-stories-module .stories-container .story-item:hover {
	color:#fff;
	mix-blend-mode:difference;
}*/

/*************************** end Featured Content Module ***************************/

/*************************** begin Featured Projects Module ***************************/

.featured-projects-module {

	padding-bottom:.5rem;
}

.featured-projects-module .header {
	position:relative;
	margin-bottom: .5rem;
	z-index:100;
	background:transparent;
	outline:1px none red;
}

.featured-projects-module .header-contents {
	position:relative;
    height: 4.6875rem;
    line-height: 4.6875rem;
    background-color: #E2E2E2;
    color: #000;
    padding-left: 1.875rem;
	padding-right: 2.5rem;
    border-radius: .5rem;
    font-size:0.875rem;
    text-transform: uppercase;
	display:grid;
	grid-template-columns:60% 1fr;	
}

.featured-projects-module .header-contents:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:#fff;
	z-index:-1;
}

.featured-projects-module .header-spacer {
	 background-color:#fff;
	 height:.5rem;
	 position:sticky;
	 top:9.6875rem;
	 z-index:100;
	 display:none;
}
.featured-projects-module.sticky .header {
	position:sticky;
	top:5rem;
	margin-bottom: 0;
}
.featured-projects-module.sticky .header-spacer {
	display:block;
}

/* .featured-projects-module .header:before {
	content:'';
	position:absolute;
	left:0;
	top:-5rem;
	width:100%;
	height:5rem;
	background:#fff;
} */
.featured-projects-module .header .controls {
	text-align:right;
}

.featured-projects-module .header .controls .control {
	display:inline-block;
	margin-left:4.375rem;
	cursor:pointer;
}

.featured-projects-module .header .controls .control.listview {
	width:12px;
	height:11px;
	background:url(listview.svg) center center no-repeat;
	background-size:cover;
	cursor:pointer;
}

.featured-projects-module .header .controls .control.gridview {
	width:12px;
	height:11px;
	background:url(gridview.svg) center center no-repeat;
	background-size:cover;
	cursor:pointer;	
}

.featured-projects-module .header .controls .control.viewall {
	position:relative;
	font-family:MF-SpazioLC-Medium;
	font-size:0.8125rem;
	display:inline-block;
	text-transform:uppercase;
	width:auto;
	height:auto;
	padding:0 0 0 0;
	padding-right:0.625rem;
	color:#000;
	text-decoration:none !important;
	outline:1px none red;
	text-align:center;
	background-color:transparent;
	transition:background-color .25s, color .25s;
	/*min-width:11.25rem;*/
	letter-spacing:0.52px;
	text-transform:uppercase;
	min-width:1.625rem;
}

.featured-projects-module .header .controls .control.viewall:after {
	content:'';
	position:absolute;
	left:100%;
	top:0;
	width:0.8125rem;
	height:100%;
	background:url(cta-arrow.svg) right center no-repeat;
	background-size:1.625rem 0.4375rem;
	outline:1px none blue;
	overflow:visible;
	transition: width .25s;
}

.featured-projects-module .header .controls .control.viewall:hover:after {
	left:100%;
	width:1rem;
}

.featured-projects-module .filters-container {
	position:relative;
	height:16.875rem;
	background:#F2F2F2;
	border-radius:.5rem;
	margin-bottom:.5rem;
	padding:1.25rem 2.5rem 1.25rem 1.875rem;
    margin-bottom: .5rem;
    border-radius: .5rem;
    font-size:0.875rem;
    text-transform: uppercase;
	display:grid;
	grid-template-columns:19.5rem 19.5rem 19.5rem 19.5rem 1fr;
}

.featured-projects-module .filter-column {
	outline:1px none red;
}

.featured-projects-module p.clear-filters {
	position:absolute;
	left:1.875rem;
	bottom:1.25rem;
	margin-bottom:0;
}
.featured-projects-module p.clear-filters a {
	font-size: 0.75rem;
	color:#BFBFBF;
}

.featured-projects-module p.clear-filters a:hover {
	font-size: 0.75rem;
	color:#000;
}


.featured-projects-module .filter-column p.filter-heading {
	font-size: 0.75rem;
	color:#000;
}

.featured-projects-module .filter-column p.filter-items {
	font-size: 0.75rem;
	color:#BFBFBF;
	line-height:1.58;
}

.filter-items input[type=checkbox].multi-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

.filter-items input[type=checkbox].multi-check + span {
	font-size: 0.75rem;
	color:#BFBFBF;
	cursor:pointer;
}
.filter-items  label:hover input[type=checkbox].multi-check + span {
	color:#000;
}
.filter-items input[type=checkbox].multi-check:checked + span {
	color:#000;
}

/*a.viewall {
	position:relative;
	font-family:MF-SpazioLC-Medium;
	font-size:0.8125rem;
	display:inline-block;
	text-transform:uppercase;
	width:auto;
	height:auto;
	padding:0 0 0 0;
	color:#000;
	text-decoration:none !important;
	outline:1px none red;
	text-align:center;
	background-color:transparent;
	transition:background-color .25s, color .25s;
	letter-spacing:0.52px;
	text-transform:uppercase;
	min-width:1.625rem;
}

a.viewall:after {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:0.8125rem;
	height:100%;
	background:url(cta-arrow.svg) right center no-repeat;
	background-size:1.625rem 0.4375rem;
	outline:1px none blue;
	overflow:visible;
	transition: width .25s;
}

a.viewall:hover:after {
	left:0;
	width:1.625rem;
}*/
.featured-projects-module .grid-container {
	display:grid;
	grid-template-columns:1fr 1fr 1fr 1fr;
	grid-column-gap:.5rem;
}

.featured-projects-module .grid-item {
	position:relative;
	background:#F2F2F2;
	border-radius:.5rem;
	padding:0.625rem;
	overflow:hidden;
	margin-bottom:.5rem;
	transition:opacity 1s;
}
.featured-projects-module .listviewcolumn .grid-item:last-of-type {
	margin-bottom:0;
}
.featured-projects-module .grid-item .text-container {
	position:relative;
	height:17.5625rem;
	outline:1px none red;
	padding:1.25rem 0.5625rem 0 0.5625rem;
}
.featured-projects-module a.pill {
	display:inline-block;
	position:relative;
	width:auto;
	height:auto;
	text-align:center;
	background-color:transparent;
	color:#000;
	font-size:0.625rem;
	line-height:1;
	border-radius:0.625rem;
	text-transform:uppercase;
	letter-spacing:0.408px;
	overflow:hidden;
	border:1px solid #707070;
	padding:0.3125rem 0.625rem 0.3125rem 0.625rem;
	margin-bottom:.25rem;
	vertical-align:middle;
}

.featured-projects-module a.pill span {
    position: relative;
    z-index: 2;
    line-height: 1;
}

.featured-projects-module .table-container a.pill {
	display:inline-block;
	position:relative;
	width:auto;
	height:auto;
	text-align:center;
	background-color:transparent;
	color:#B9B9B9;
	font-size:0.625rem;
	line-height:1;
	border-radius:0.625rem;
	text-transform:uppercase;
	letter-spacing:0.408px;
	overflow:hidden;
	border:1px solid #B9B9B9;
	padding:0.3125rem 0.625rem 0.3125rem 0.625rem;
	margin-bottom:.25rem;
	vertical-align:middle;
}
.featured-projects-module .table-container a.pill span {
    position: relative;
    z-index: 2;
    line-height: 1;
}
.featured-projects-module .table-container tr:hover .pill {
	color:#000;
	border:1px solid #000;
}
.featured-projects-module a.pill:hover, .featured-projects-module .table-container a.pill:hover {
	border-color:#E2661F;
}

.featured-projects-module .table-container a:hover {
	color:#000 !important;
}


.featured-projects-module .grid-item p.team-contact {
	margin-top:1.25rem;
	padding-left:0.625rem;
}

.featured-projects-module .grid-item .image-container {
	opacity:1;
	transition:opacity 1s, transform 1s;
	transform:translateY(0);
}

.featured-projects-module .grid-item.active .image-container {
	opacity:1;
	transform:translateY(-120%);
}

.featured-projects-module .grid-item img {
	border-radius:.25rem;
	vertical-align:top;
}

.featured-projects-module .grid-item .text-content {
	position:absolute;
	left:0.5625rem;
	bottom:0.5625rem;
	width:calc(100% - 1.125rem);
	width:calc(80%);
	outline:1px none blue;
	text-align:left;
	transition: top 1s;
}
.featured-projects-module .grid-item.active .text-content {
	/* transform:translateY(-calc(height)); */
	top:1.25rem;
	bottom:auto;
	transition: top 1s;
}

.featured-projects-module .grid-item .text-content h4 {
	margin-bottom:0;
	text-transform:uppercase;
	text-align:left;
	font-size:0.875rem;
}
.featured-projects-module .grid-item .text-content h4:has(+ p) {
	margin-bottom:1.125rem;
}

.featured-projects-module .grid-item .text-content p {
	margin-bottom:0;
	text-transform:none;
	font-size:0.890625rem;
}

.featured-projects-module .table-container {
	width:100%;
	background:#fff;
}

.featured-projects-module .table-container .table-wrapper {
	width:100%;
	padding:1.25rem 2.5rem 3.75rem 1.875rem;
	border-radius:.5rem;
	background:#F2F2F2;
	overflow:hidden;
}


/*************************** end Featured Projects Module ***************************/

/*************************** begin Team Module ***************************/

.team-module {
	padding-bottom:.0;
}

.team-module.expanded {
	padding-bottom:.5rem;
}

.team-module .grid-row {
	display:grid;
	grid-template-columns:1fr 1fr 1fr 1fr;
	grid-column-gap:.5rem;
	margin-bottom:.5rem;
}

.team-module .grid-row:last-of-type {
	margin-bottom:0;
}

.team-module .header {
    height: 4.6875rem;
    line-height: 4.6875rem;
    background-color: #E2E2E2;
    color: #000;
	padding-left: 1.875rem;
	padding-right: 5.5rem;
    margin-bottom: .5rem;
    border-radius: .5rem;
    font-size:0.875rem;
    text-transform: uppercase;	
	display:grid;
	letter-spacing:0.476px;
	grid-template-columns:1fr 1fr;
	align-content:center;
    background: #E2E2E2 url(plus.svg) center right 1.875rem no-repeat;
    background-size: .75rem;
	cursor:pointer;
	transition: background-color .25s;
}

.team-module .header:hover, .team-module.expanded .header:hover  {
	background-color:#F2F2F2;
}

.team-module.expanded .header {
	background:#E2E2E2 url(minus.svg) center right 1.875rem no-repeat;
	background-size:.75rem;		
}

.team-module .header:hover, .team-module.expanded .header:hover  {
	background-color:#F2F2F2;
}

.team-module .header .filterby {
	margin-left:1.875rem;
}

.team-module .header .controls {
	text-align:right;
}

.team-module .header .control.viewall {
	position:relative;
	font-family:MF-SpazioLC-Medium;
	font-size:0.8125rem;
	display:inline-block;
	text-transform:uppercase;
	width:auto;
	height:auto;
	padding:0 0 0 0;
	padding-right:0.625rem;
	color:#000;
	text-decoration:none !important;
	outline:1px none red;
	text-align:center;
	background-color:transparent;
	transition:background-color .25s, color .25s;
	/*min-width:11.25rem;*/
	letter-spacing:0.52px;
	text-transform:uppercase;
	min-width:1.625rem;
	/* margin-left:1.875rem; */
}

.team-module .header .control.viewall:after {
	content:'';
	position:absolute;
	left:100%;
	top:0;
	width:0.8125rem;
	height:100%;
	background:url(cta-arrow.svg) right center no-repeat;
	background-size:1.625rem 0.4375rem;
	outline:1px none blue;
	overflow:visible;
	transition: width .25s;
}

.team-module .header .control.viewall:hover:after {
	left:100%;
	width:1rem;
}

.team-module .grid-item {
	position:relative;
	height:40rem;
	background:#F2F2F2;
	border-radius:.5rem;
	padding:0.625rem;
	overflow:hidden;
}
.team-module .grid-item p.team-contact {
	margin-top:1.25rem;
	padding-left:0.625rem;
}

.team-module .grid-item .image-container {
	opacity:1;
	transition:opacity 1s, transform 1s;
	transform:translateY(0);
}

.team-module .grid-item.active .image-container {
	opacity:1;
	transform:translateY(-120%);
}

.team-module .grid-item img {
	border-radius:.25rem;
	vertical-align:top;
}

.team-module .grid-item .text-content {
	position:absolute;
	left:1.25rem;
	top:36.5625rem;
	width:18rem;
	outline:1px none red;
	text-align:left;
	transition: top 1s;
	font-size:0.875rem;
}
.team-module .grid-item.active .text-content {
	/* transform:translateY(-calc(height)); */
	top:1.25rem;
	bottom:auto;
	transition: top 1s;
}

.team-module .grid-item .text-content p {
	margin-bottom:0;
	text-transform:uppercase;
	font-size:0.875rem;
}

.team-module .grid-item .additional {
	position:absolute;
	right:1.25rem;
	bottom:1.25rem;
	width:1.125rem;
	height:1.125rem;
	background:url(plus-icon-black.svg) center center no-repeat;
	background-size:cover;
	transform:rotate(0);
	transition:transform .5s;
	cursor:pointer;
	
}
.team-module .grid-item .additional.active {
	transform:rotate(45deg);
}
.team-module .grid-item .additional-content {
	position:absolute;
	left:1.25rem;
	bottom:1.25rem;
	width:23.875rem;
	outline:1px none red;
	text-align:left;
	text-transform:none;
	opacity:0;
	transition:opacity 1s;
	pointer-events:none;
	font-size:0.890625rem;
}

.team-module .grid-item.active .additional-content {
	opacity:1;
	/* transition-delay:.2s; */
}

.team-module span.contact-button {
    display: inline-block;
    position: relative;
    width: 5rem;
    height: 1.25rem;
    text-align: center;
    background-color: transparent;
    color: #000;
    font-size: 0.625rem;
    line-height: 1.25rem;
	border:1px solid #000;
    border-radius: 0.625rem;
    vertical-align: middle;
    text-transform: uppercase;
    margin-right: .5rem;
    letter-spacing: 0.408px;
    overflow: hidden;
	
	
	display:inline-block;
	position:relative;
	width: 4.8rem;
	height:1.35rem;
	text-align:center;
	background-color:transparent;
	color:#000;
	font-size:0.625rem;
	line-height:1;
	border-radius:0.625rem;
	text-transform:uppercase;
	letter-spacing:0.408px;
	overflow:hidden;
	border:1px solid #707070;
	padding:0.25rem 0.625rem 0.3125rem 0.625rem;
	padding:0 0.625rem 0 0.625rem;
	line-height:1.30rem;
	/* margin-bottom:.25rem; */
	vertical-align:middle;
	transition:width .5s, border-color .5s;
}
.team-module span.contact-button:hover {
	width:18rem;
	border-color:#E2661F;
}
.team-module span.contact-button span.label {
	position:relative;
	display: inline-block;
	position:relative;
	z-index:2;
	opacity:1;
	transition: opacity .5s;
	vertical-align: top;
}

.team-module span.contact-button:hover span.label {
	position:relative;
	width:0;
	display: inline-block;
	opacity:0;
	z-index:2;
	overflow:hidden;
	vertical-align: top;
}
.team-module span.contact-button span.link-container {
	position:relative;
	display:inline-block;
	width:0;
	overflow:hidden !important;
	margin:0;
	padding:0;
	outline:1px none red;
	vertical-align: top;
}
.team-module span.contact-button:hover span.link-container {
	position:relative;
	display:inline-block;
	width:17rem;
	height:100%;
	overflow:hidden;
	z-index:10;
	vertical-align: top;
}
.team-module span.contact-button span.link-container a:hover {
	color:#000;
}

.team-module span.contact-button:before {
	content:'';
	position:absolute;
	left:-1%;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	z-index:1;
	transition:width .35s;

}
.team-module span.contact-button:hover:before {
	width:105%;
}

/*************************** end Team Module ***************************/

/*************************** begin Four Column Flexi Grid ***************************/

.four-column-flexi-grid {
	padding-bottom:.5rem;
}

.four-column-flexi-grid .grid-row {
	display:grid;
	grid-template-columns:1fr 1fr 1fr 1fr;
	grid-column-gap:.5rem;
	margin-bottom:.5rem;
}

.four-column-flexi-grid .grid-row:last-of-type {
	margin-bottom:0;
}

.four-column-flexi-grid .header {
    height: 4.6875rem;
    line-height: 4.6875rem;
    background-color: #E2E2E2;
    color: #000;
	padding-left: 1.875rem;
    margin-bottom: .5rem;
    border-radius: .5rem;
    font-size:0.875rem;
    text-transform: uppercase;	
}

.four-column-flexi-grid .grid-item {
	position:relative;
	height:40rem;
	background:#F2F2F2;
	border-radius:.5rem;
	padding:0.625rem;
	overflow:hidden;
}
.four-column-flexi-grid .grid-item p.team-contact {
	margin-top:1.25rem;
	padding-left:0.625rem;
}

.four-column-flexi-grid .grid-item .image-container {
	opacity:1;
	transition:opacity 1s, transform 1s;
	transform:translateY(0);
}

.four-column-flexi-grid .grid-item.active .image-container {
	opacity:1;
	transform:translateY(-120%);
}

.four-column-flexi-grid .grid-item img {
	border-radius:.25rem;
	vertical-align:top;
}

.four-column-flexi-grid .grid-item .text-content {
	position:absolute;
	left:1.25rem;
	bottom:1.25rem;
	width:90%;
	outline:1px none red;
	text-align:left;
	transition: top 1s;
}
.four-column-flexi-grid .grid-item.active .text-content {
	/* transform:translateY(-calc(height)); */
	top:1.25rem;
	bottom:auto;
	transition: top 1s;
}

.four-column-flexi-grid .grid-item .text-content p {
	margin-bottom:0;
	text-transform:uppercase;
	font-size: 0.875rem;
}

.four-column-flexi-grid .grid-item .additional {
	position:absolute;
	right:1.25rem;
	bottom:1.25rem;
	width:1.125rem;
	height:1.125rem;
	background:url(plus-icon-black.svg) center center no-repeat;
	background-size:cover;
	transform:rotate(0);
	transition:transform .5s;
	cursor:pointer;
}
.four-column-flexi-grid .grid-item .additional.active {
	transform:rotate(45deg);
}
.four-column-flexi-grid .grid-item .additional-content {
	position:absolute;
	left:1.25rem;
	bottom:1.25rem;
	width:23.875rem;
	outline:1px none red;
	text-align:left;
	text-transform:none;
	opacity:0;
	transition:opacity 1s;
}

.four-column-flexi-grid .grid-item.active .additional-content {
	opacity:1;
	/* transition-delay:.2s; */
}

/*************************** end Four Column Flexi Grid ***************************/

/*************************** begin Contact Details Module ***************************/

.project-leaders-module {
	position:relative;
	width:100%;
	padding:0;
	font-family: "MF-SpazioLC-Medium";
	background:#fff;
	display:grid;
	grid-template-columns:50% 50%;
	grid-column-gap:0.5rem;
	/* min-height:39.375rem; */
	padding-right:0.5rem;
	padding-bottom:.5rem;
}

.project-leaders-module .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.project-leaders-module .text-container .text-content {
	position:relative;
	width:40rem;
	outline:1px none red;
	text-align:left;
	padding:0.625rem 0.625rem 0.625rem 0.9375rem;
	text-transform:uppercase;
	font-size:0.875rem;
	line-height:1.28;
	letter-spacing:0.476px;
	vertical-align:top;
}

.project-leaders-module .text-container h3 {
	position:relative;
	width:80%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.project-leaders-module .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}
.project-leaders-module .text-container p:last-of-type {
	margin-bottom:0;
}

.project-leaders-module .leaders-container {
	position:relative;
	display:block;
}

.project-leaders-module .leaders-container .leader-item {
	display:grid;
	grid-template-columns:40% 60%;
	border-radius:0.5rem;
	height:auto;
	background-color:#F2F2F2;
	color:#000;
	margin-bottom:.5rem;
	border-radius:.5rem;
	font-size:0.875rem;
	position:relative;
	overflow:hidden;
}
.project-leaders-module .leaders-container .leader-item .location-name {
	text-transform:uppercase;
}
.project-leaders-module .leaders-container .leader-item:last-of-type {
	margin-bottom:0;
}

.project-leaders-module .leaders-container .leader-item .leader-text {
	text-align:left;
	padding:0.625rem 0.625rem 0.625rem 0.9375rem;
	outline:1px none red;
	opacity:1;
	text-transform:uppercase;
	position:relative;
}

/*.project-leaders-module .leaders-container .leader-item .leader-text p {
	position:relative;
	transform:translateY(0);	
	transition:transform 1s;
}

.project-leaders-module .leaders-container .leader-item.active .leader-text p {
	opacity:1;
	transform:translateY(-100%);
}*/

.project-leaders-module .leaders-container .leader-item .display-image {
	text-align:right;
	padding:0.625rem 0.625rem 0.625rem 0.9375rem;
}
.project-leaders-module .leaders-container .leader-item .display-image img {
	width:13.625rem;
	height:auto;
	vertical-align:middle;
	border-radius:.25rem;
}

.project-leaders-module .leaders-container .leader-item .additional {
	position:absolute;
	left:1rem;
	bottom:1.25rem;
	width:1.125rem;
	height:1.125rem;
	background:url(plus-icon-black.svg) center center no-repeat;
	background-size:cover;
	transform:rotate(0);
	transition:transform .5s;
	cursor:pointer;
	z-index:2;
}
.project-leaders-module .leaders-container .leader-item .additional.active {
	transform:rotate(45deg);
}
.project-leaders-module .leaders-container .leader-item .additional-content {
	position:relative;
/*	padding-top:4.5rem;
/* 	left:0.9375rem;
	top:0.625rem; */
	padding-bottom:3rem;
	width:23.875rem;
	outline:1px none red;
	text-align:left;
	text-transform:none;
	opacity:0;
	transition:opacity 1s;
	align-self:start;
	font-size:0.890625rem;
}

.project-leaders-module .leaders-container .leader-item.active .additional-content {
	opacity:1;
	transition-delay:.5s;
}


.project-leaders-module span.contact-button {
    display: inline-block;
    position: relative;
    width: 5rem;
    height: 1.25rem;
    text-align: center;
    background-color: transparent;
    color: #000;
    font-size: 0.625rem;
    line-height: 1.25rem;
	border:1px solid #000;
    border-radius: 0.625rem;
    vertical-align: middle;
    text-transform: uppercase;
    margin-right: .5rem;
    letter-spacing: 0.408px;
    overflow: hidden;
	
	
	display:inline-block;
	position:relative;
	width: 4.8rem;
	height:1.35rem;
	text-align:center;
	background-color:transparent;
	color:#000;
	font-size:0.625rem;
	line-height:1;
	border-radius:0.625rem;
	text-transform:uppercase;
	letter-spacing:0.408px;
	overflow:hidden;
	border:1px solid #707070;
	padding:0.25rem 0.625rem 0.3125rem 0.625rem;
	padding:0 0.625rem 0 0.625rem;
	line-height:1.30rem;
	/* margin-bottom:.25rem; */
	vertical-align:middle;
	transition:width .5s, border-color .5s;
}
.project-leaders-module span.contact-button:hover {
	width:18rem;
	border-color:#E2661F;
}
.project-leaders-module span.contact-button span.label {
	position:relative;
	display: inline-block;
	position:relative;
	z-index:2;
	opacity:1;
	transition: opacity .5s;
	vertical-align: top;
}

.project-leaders-module span.contact-button:hover span.label {
	position:relative;
	width:0;
	display: inline-block;
	opacity:0;
	z-index:2;
	overflow:hidden;
	vertical-align: top;
}
.project-leaders-module span.contact-button span.link-container {
	position:relative;
	display:inline-block;
	width:0;
	overflow:hidden !important;
	margin:0;
	padding:0;
	outline:1px none red;
	vertical-align: top;
}
.project-leaders-module span.contact-button:hover span.link-container {
	position:relative;
	display:inline-block;
	width:17rem;
	height:100%;
	overflow:hidden;
	z-index:10;
	vertical-align: top;
}
.project-leaders-module span.contact-button span.link-container a:hover {
	color:#000;
}

.project-leaders-module span.contact-button:before {
	content:'';
	position:absolute;
	left:-1%;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	z-index:1;
	transition:width .35s;

}
.project-leaders-module span.contact-button:hover:before {
	width:105%;
}



/*************************** end Project Leaders Module ***************************/


/*************************** begin Video Module (16:9) ***************************/

.video-module {
	padding-bottom:.5rem;
}

.video-module .background-panel {
	position:relative;
	width:100%;
	padding:0 .5rem 0 .5rem;
	padding:0;
	outline:1px none red;
	background:#F2F2F2;
	border-radius:.5rem;
	
	overflow:hidden;
}

.video-module .videocontainer {
	
}

.video-module h3 {
	font-family: "MF-SpazioLC-Medium";
	text-align:center;
	font-size:2.125rem;
	text-transform:uppercase;
	letter-spacing:1.156px;
	margin-bottom:1.125rem;
}
.video-module p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.1875rem;
	line-height:1.37;
	letter-spacing:0.38px;
	text-align:center;
	margin-bottom:0;
}
.video-module p a {
    display: inline-block;
    position: relative;
    width: 6.875rem;
    height: 1.75rem;
    text-align: center;
    background-color: #E9E9E9;
    color: #000;
    font-size: 0.75rem;
    line-height: 1.75rem;
    border-radius: 0.875rem;
    vertical-align: middle;
    text-transform: uppercase;
    margin-right: .5rem;
    letter-spacing: 0.408px;
    overflow: hidden;
}
.video-module p a:hover {
	color:#000 !important;
}
.video-module p a span {
	display: inline-block;
	position:relative;
	z-index:2;
}

.video-module p a:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	z-index:1;
	transition: width .5s;
}
.video-module p a:hover:before {
	width:100%;
}

.video-module .video-progress-container {
	position:absolute;
	width:90%;
	height:3px;
	left:5%;
	bottom:16px;
	background:transparent;
	z-index:100;
	opacity:0;
	transition:opacity .5s;
}
.video-module .video-progress-container.shown {
	opacity:1;
}
.video-module .video-progress-container .video-total {
	position:absolute;
	width:100%;
	height:1px;
	left:0;
	top:1px;
	background:#afafaf;
	z-index:101;
}
.video-module .video-progress-container .video-progress {
	position:absolute;
	width:0%;
	height:3px;
	left:0;
	top:0;
	background:white;
	z-index:102;
	transition:none;

}

.video-module .video-control {
	position:absolute;
	width:60%;
	height:auto;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	outline:1px none red;
	color:#fff;
	text-align:center;
	font-family: "MF-SpazioLC-Medium";
	letter-spacing:normal;
}


/*************************** end Video Module (16:9) ***************************/

/*************************** begin Four Column Flexi Grid (Landscape) ***************************/

.four-column-flexi-grid-landscape {
	position:relative;
	width:100%;
	padding:2rem 3rem 4.375rem 3rem;
	color:#000;
	background-color:#fff;
}

.four-column-flexi-grid-landscape h3 {
	text-align:center;
	margin-bottom:7.0625rem;
	color:#000;
	font-size:2.1875rem;
}

.four-column-flexi-grid-landscape .grid-container {
	display:grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-column-gap:0;
	grid-row-gap:7rem;
}

.four-column-flexi-grid-landscape .grid-container .grid-item {
	position:relative;
	padding:0 1.25rem 0 1.25rem;
	border:1px solid #E6E6E6;
	border-width:0 1px 0 0;
}

.four-column-flexi-grid-landscape .grid-container .grid-item:first-of-type {
	border-width:0 1px 0 1px;
}

.four-column-flexi-grid-landscape .grid-container .grid-item.left-line {
	border-width:0 1px 0 1px;
}

/*.four-column-flexi-grid-landscape .grid-container .grid-item img {
	transform: scale(1);
	transform .5s;
}
.four-column-flexi-grid-landscape .grid-container .grid-item:hover img {
	transform: scale(1.02);
}*/

.four-column-flexi-grid-landscape .grid-container .grid-item img {
	vertical-align:top;
}

.four-column-flexi-grid-landscape .grid-container .grid-item .description {
	display:inline-block;
	color:#000;
	padding-top:0.9375rem;
}

.four-column-flexi-grid-landscape .grid-container .grid-item.grid-span2 .description {
	width:60%;
}

.four-column-flexi-grid-landscape .grid-container .grid-item .description h3 {
	display:inline-block;
	color:#000;
	font-size:1.1875rem;
	font-family: "MF-SpazioLC-Medium";
	margin-bottom:1rem;
}

.four-column-flexi-grid-landscape .grid-container .grid-item .description p {
	display:inline-block;
	color:#000;
	font-family: "MF-SpazioLC-Medium";
	font-size:1.1875rem;
	text-transform:uppercase;
	margin-bottom:0.875rem;
}
.four-column-flexi-grid-landscape .grid-container .grid-item .description p.download {
	font-size:.75rem;
	cursor:pointer;
}

.four-column-flexi-grid-landscape .grid-container .grid-item .description p:last-of-type {
	margin-bottom:0;
}

.four-column-flexi-grid-landscape .grid-container .grid-item .text-overlay {
	position:absolute;
	left:50%;
	top:50%;
	width:100%;
	height:auto;
	text-align:center;
	color:#FAFAFA;
	font-size:2.625rem;
	transform:translate(-50%,-50%);
	outline:1px none red;
}

/*************************** end Four Column Flexi Grid (Landscape) ***************************/


/*************************** begin careers module ***************************/

.careers-module {
	position:relative;
	width:100%;
	font-family: "MF-SpazioLC-Medium";
	background-color:#fff;
}

.careers-module:before {
	content:'';
	position:absolute;
	left:0;
	top:-9.375rem;
	width:100%;
	height:9.375rem;
	background:white;
	transition:height 1s;
	transition-delay:1s;
}
.careers-module.loaded:before {
	height:0;
}



/*

Title
Description
Published

Position
Location
Status 

*/



/*************************** end careers module ***************************/

/*************************** begin investor resources module ***************************/

.investor-resources-module {
	position:relative;
	width:100%;
	font-family: "MF-SpazioLC-Medium";
	background-color:#fff;
}

.investor-resources-module .text-content {
	width:43%;
	/* min-height:100vh; */
	margin:auto;
	margin-bottom:0;
	padding:11.625rem 0 11.625rem 0;
}

.investor-resources-module.with-logos .text-content {
	padding-bottom:3.75rem;
}

.investor-resources-module .text-content h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.25rem;
	line-height:1.05;
	margin-bottom:1.25rem;
	letter-spacing:normal;
	text-transform:uppercase;
	text-align:center;
}

.investor-resources-module .text-content p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.25rem;
	line-height:1.2;
	letter-spacing:0.2px;
	margin-bottom:1.875rem;
	text-align:center;
}
.investor-resources-module .text-content p:last-of-type {
	margin-bottom:0;
}

.investor-resources-module table {
	border-collapse: collapse;
	border-spacing: 0;
	width:100%;
	background-color:#fff;
}
.investor-resources-module .downloads table {
	margin-bottom:2rem;
}
.investor-resources-module tr {
	background-color:#fff;
	transition: background-color .5s;
	height:3.125rem;
	border:1px solid #E6E6E6;
	border-width:0 0 1px 0;
}
.investor-resources-module thead tr:first-of-type {
	border-width:1px 0 1px 0;
}
.investor-resources-module tbody tr:hover {
	background-color:#F8F8F8;
	cursor:pointer;
}
.investor-resources-module tbody tr:last-of-type {
	border:none;
}
.investor-resources-module th,.investor-resources-module td {
/* 	border:1px solid #5C5C5C;
	border-width:0 0 1px 0;	 */
	overflow:hidden;
	text-transform:uppercase;
	letter-spacing:0.16px;
}
.investor-resources-module th {
	font-size:1rem;
	vertical-align:middle;
	color:#000;
	letter-spacing:0.16px;
	background-color:#fff;
}
.investor-resources-module td {
	background-color:#fff;
	padding:0;
	color:#9B9B9B;
	transition: color .2s, background-color .2s;
	font-family: "MF-SpazioLC-Medium";
	font-size:1rem;
	vertical-align:middle;
	letter-spacing:0.16px;
	
}
.investor-resources-module td:first-of-type, .investor-resources-module th:first-of-type {
	padding-left:4.125rem;
	color:#000;
}
.investor-resources-module td:last-of-type {
	text-align:right;
	padding-right:4.125rem;
	color:#000;
	opacity:0;
	transition:opacity .5s;
}
.investor-resources-module tbody tr:hover td:last-of-type {
	opacity:1;
}



/*************************** end investor resources module ***************************/

/*************************** begin Single Column Text and Carousel Module Landscape ***************************/

.single-column-text-and-carousel-module-landscape {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 100%;
	background-color:#fff;
	padding-bottom:6.375rem;
	padding-bottom:3.75rem;
}

.single-column-text-and-carousel-module-landscape .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	overflow:visible;
	padding-bottom:5rem;
	outline:1px none blue;
}

.single-column-text-and-carousel-module-landscape .carousel-container .carousel {
	display:block;
	width:54.58%;	
	margin:auto;
	outline:1px none blue;
}
.single-column-text-and-carousel-module-landscape .carousel-container .carousel .slick-slide .slide-text {
	display:none;
}
.single-column-text-and-carousel-module-landscape .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

}
.single-column-text-and-carousel-module-landscape .carousel-container .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	padding-top:.5rem;
	line-height:1;
	text-align:center;
	width:54.5%;
	max-width:54.5%;
	/*outline:1px solid blue;
	 background:red; */
	text-transform:uppercase;
	position:absolute;
	left:22.71%;
	top:calc(100% - 2.5rem);
	z-index:100;
	height:auto;
	opacity:1;
	outline:1px none red;
}

.single-column-text-and-carousel-module-landscape .carousel-container .caption.no-dots {
	top:calc(100% - 4rem);
}

/* .single-column-text-and-carousel-module-landscape .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
} */

.single-column-text-and-carousel-module-landscape .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
}

.single-column-text-and-carousel-module-landscape .text-container {
	display:block;
	padding-top:7.1875rem;
	/* padding-top:4.6875rem; */
	padding-bottom:9.1875rem;
	width:43.125%;
	margin:auto;
}

.single-column-text-and-carousel-module-landscape .text-container .text-content {
	/* padding:0 8.1875rem 0 8.1875rem; */
}

.single-column-text-and-carousel-module-landscape .text-container h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:6.875rem;
	margin-bottom:3.25rem;
	line-height:1.02;
	letter-spacing:-6.6px;
	text-align:center;	
	text-transform:uppercase;
}

.single-column-text-and-carousel-module-landscape .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.125rem;
	margin-bottom:1.75rem;
	line-height:1.05;
	letter-spacing:-0.27px;
	text-align:center;
}
.single-column-text-and-carousel-module-landscape .text-container p:last-of-type {
	margin-bottom:0;
}

.single-column-text-and-carousel-module-landscape .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.single-column-text-and-carousel-module-landscape .cursor.shown {
	opacity:1;
}

.single-column-text-and-carousel-module-landscape .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
	display:none;
}
.single-column-text-and-carousel-module-landscape .cursor span {
	vertical-align:top;
}
.single-column-text-and-carousel-module-landscape .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-family: "MF-SpazioLC-Medium";
	font-size:17px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	
}

.single-column-text-and-carousel-module-landscape .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-family: "MF-SpazioLC-Medium";
	font-size:17px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	
	
}

/*.single-column-text-and-carousel-module-landscape .video-control {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*//*
	left:33%;
	top:0;
	width:33%;
	height:100%;
    opacity: 1;
	cursor:pointer;
	outline:1px none red;
	background:none;
}*/

.single-column-text-and-carousel-module-landscape .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.single-column-text-and-carousel-module-landscape .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.single-column-text-and-carousel-module-landscape .video-control.playing {
	opacity:0;
}

.single-column-text-and-carousel-module-landscape a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}

/*************************** end single column carousel and text module landscape ***************************/

/*************************** begin Single Column Text and Carousel Module Portrait ***************************/

.single-column-text-and-carousel-module-portrait {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 100%;
	background-color:#fff;
	padding-bottom:6.375rem;
	padding-bottom:3.75rem;
}

.single-column-text-and-carousel-module-portrait .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	overflow:visible;
	padding-bottom:5rem;
}

.single-column-text-and-carousel-module-portrait .carousel-container .carousel {
	display:block;
	width:30.83%;	
	margin:auto;
	outline:1px none blue;
}
.single-column-text-and-carousel-module-portrait .carousel-container .carousel .slick-slide .slide-text {
	display:none;
}
.single-column-text-and-carousel-module-portrait .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

}

.single-column-text-and-carousel-module-portrait .carousel-container .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	padding-top:.5rem;
	line-height:1;
	text-align:center;
	width:30.83%;
	max-width:30.83%;
	/*outline:1px solid blue;
	 background:red; */
	text-transform:uppercase;
	position:absolute;
	left:34.585%;
	top:calc(100% - 2.5rem);
	z-index:100;
	height:auto;
	opacity:1;
	outline:1px none red;
}
.single-column-text-and-carousel-module-portrait .carousel-container .caption.no-dots {
	top:calc(100% - 4rem);
}

/* .single-column-text-and-carousel-module-portrait .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
} */

.single-column-text-and-carousel-module-portrait .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
}

.single-column-text-and-carousel-module-portrait .text-container {
	display:block;
	padding-top:7.1875rem;
	/* padding-top:4.6875rem; */
	padding-bottom:9.1875rem;
	width:43.125%;
	margin:auto;
}

.single-column-text-and-carousel-module-portrait .text-container .text-content {
	/* padding:0 8.1875rem 0 8.1875rem; */
}

.single-column-text-and-carousel-module-portrait .text-container h3 {	
	font-family: "MF-SpazioLC-Medium";
	font-size:6.875rem;
	margin-bottom:3.25rem;
	line-height:1.02;
	letter-spacing:-6.6px;
	text-align:center;	
	text-transform:uppercase;
}

.single-column-text-and-carousel-module-portrait .text-container p {	
	font-family: "MF-SpazioLC-Medium";
	font-size:1.125rem;
	margin-bottom:1.75rem;
	line-height:1.05;
	letter-spacing:-0.27px;
	text-align:center;
}
.single-column-text-and-carousel-module-portrait .text-container p:last-of-type {
	margin-bottom:0;
}

.single-column-text-and-carousel-module-portrait .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.single-column-text-and-carousel-module-portrait .cursor.shown {
	opacity:1;
}

.single-column-text-and-carousel-module-portrait .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
	display:none;
}
.single-column-text-and-carousel-module-portrait .cursor span {
	vertical-align:top;
}
.single-column-text-and-carousel-module-portrait .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-family: "MF-SpazioLC-Medium";
	font-size:17px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	
}

.single-column-text-and-carousel-module-portrait .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-family: "MF-SpazioLC-Medium";
	font-size:17px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	
	
}

/*.single-column-text-and-carousel-module-portrait .video-control {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*//*
	left:33%;
	top:0;
	width:33%;
	height:100%;
    opacity: 1;
	cursor:pointer;
	outline:1px none red;
	background:none;
}*/

.single-column-text-and-carousel-module-portrait .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.single-column-text-and-carousel-module-portrait .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.single-column-text-and-carousel-module-portrait .video-control.playing {
	opacity:0;
}

.single-column-text-and-carousel-module-portrait a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}

/*************************** end single column carousel and text module portrait ***************************/

/*************************** begin Two Column Text and Image Module Landscape Variable ***************************/

.two-column-text-and-image-module-landscape {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 33.33% 33.33% 33.33%;
	grid-column-gap:0.5rem;
	background-color:#fff;
	padding-bottom:0.5rem;
	padding-right:1rem;
}
/*.two-column-text-and-image-module-landscape > div:first-of-type {
	border:1px solid #E6E6E6;
	border-width:0 1px 0 0;
}*/

.two-column-text-and-image-module-landscape .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.two-column-text-and-image-module-landscape .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.two-column-text-and-image-module-landscape .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.two-column-text-and-image-module-landscape .text-container .text-content {
	position:absolute;
	left:1.875rem;
	bottom:1.875rem;
	width:27.4375rem;
	outline:1px none red;
	text-align:left;
}

.two-column-text-and-image-module-landscape .text-container h3 {
	position:absolute;
	left:1.875rem;
	top:1.375rem;
	width:80%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.two-column-text-and-image-module-landscape .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}

.two-column-text-and-image-module-landscape .text-container p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}

.two-column-text-and-image-module-landscape .text-container p:last-of-type {
	margin-bottom:0;
}


/*************************** end Two Column Text and Image Module Landscape Variable ***************************/

/*************************** begin Two Column Text and Image Module Portrait Variable ***************************/

.two-column-text-and-image-module-portrait {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 33.33% 33.33% 33.33%;
	grid-column-gap:0.5rem;
	background-color:#fff;
	padding-bottom:0.5rem;
	padding-right:1rem;
}
/*.two-column-text-and-image-module-portrait > div:first-of-type {
	border:1px solid #E6E6E6;
	border-width:0 1px 0 0;
}*/

.two-column-text-and-image-module-portrait .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.two-column-text-and-image-module-portrait .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.two-column-text-and-image-module-portrait .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.two-column-text-and-image-module-portrait .text-container .text-content {
	position:absolute;
	left:1.875rem;
	bottom:1.875rem;
	width:27.4375rem;
	outline:1px none red;
	text-align:left;
}

.two-column-text-and-image-module-portrait .text-container h3 {
	position:absolute;
	left:1.875rem;
	top:1.375rem;
	width:80%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.two-column-text-and-image-module-portrait .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}
.two-column-text-and-image-module-portrait .text-container p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}
.two-column-text-and-image-module-portrait .text-container p:last-of-type {
	margin-bottom:0;
}


/*************************** end Two Column Text and Image Module Portrait Variable ***************************/

/*************************** begin Project Details Module ***************************/

.project-details-module {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 33.33% 33.33% 33.33%;
	grid-column-gap:0.5rem;
	background-color:#fff;
	padding-bottom:0.5rem;
	padding-right:1rem;
}
/*.project-details-module > div:first-of-type {
	border:1px solid #E6E6E6;
	border-width:0 1px 0 0;
}*/

.project-details-module .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.project-details-module .carousel-container .carousel {
	display:block;
	width:100%;	
}
.project-details-module .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

	
}
.project-details-module .carousel-container .carousel .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:1.0625rem;
	padding-top:.5rem;
	line-height:1;
	text-align:left;
	max-width:100%;
}

.project-details-module .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
}

.project-details-module .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.project-details-module .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.project-details-module .text-container .text-content {
	position:absolute;
	left:1.875rem;
	bottom:1.875rem;
	width:27.4375rem;
	outline:1px none red;
	text-align:left;
}

.project-details-module .text-container.details .text-content {
	position:absolute;
	left:1.875rem;
	bottom:1.875rem;
	width:calc(100% - 3.75rem);
	outline:1px none red;
	text-align:left;
	display:grid;
	grid-template-columns:1fr 1fr;
	grid-column-gap:2rem;
}
.project-details-module .text-container.details .text-content .column {
	outline:1px none blue;
}

.project-details-module .text-container.details .text-content .column .attribute {
	margin-bottom:1.125rem;
}

.project-details-module .text-container.details .text-content .column .attribute:last-of-type {
	margin-bottom:0;
}

.project-details-module .text-container.details h4 {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
	position:relative;
	left:auto;
	top:auto;
}

.project-details-module .text-container.details p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}

.project-details-module .text-container.details a {
	text-decoration:underline;
}

.project-details-module .text-container h3 {
	position:absolute;
	left:1.875rem;
	top:1.375rem;
	width:50%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.project-details-module .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}
.project-details-module .text-container p:last-of-type {
	margin-bottom:0;
}

.project-details-module .text-container .column p:last-of-type {
	margin-bottom:0;
}

.project-details-module .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.project-details-module .cursor.shown {
	opacity:1;
}

.project-details-module .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
}
.project-details-module .cursor span {
	vertical-align:top;
}
.project-details-module .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.project-details-module .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

/*.project-details-module .video-control {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*//*
	left:33%;
	top:0;
	width:33%;
	height:100%;
    opacity: 1;
	cursor:pointer;
	outline:1px none red;
	background:none;
}*/

.project-details-module .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.project-details-module .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.project-details-module .video-control.playing {
	opacity:0;
}

.project-details-module a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}

/*************************** end Project Details Module ***************************/

/*************************** begin Two Column Text and Carousel Module Landscape ***************************/

.two-column-text-and-carousel-module-landscape {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 50% 50%;
	grid-column-gap:0.5rem;
	background-color:#fff;
	padding-bottom:0.5rem;
	padding-right:0.5rem;
}
/*.two-column-text-and-carousel-module-landscape > div:first-of-type {
	border:1px solid #E6E6E6;
	border-width:0 1px 0 0;
}*/

.two-column-text-and-carousel-module-landscape .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.two-column-text-and-carousel-module-landscape .carousel-container .carousel {
	display:block;
	width:100%;	
}
.two-column-text-and-carousel-module-landscape .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

	
}
.two-column-text-and-carousel-module-landscape .carousel-container .carousel .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:1.0625rem;
	padding-top:.5rem;
	line-height:1;
	text-align:left;
	max-width:100%;
}

.two-column-text-and-carousel-module-landscape .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
}

.two-column-text-and-carousel-module-landscape .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.two-column-text-and-carousel-module-landscape .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.two-column-text-and-carousel-module-landscape .text-container .text-content {
	position:absolute;
	left:1.875rem;
	bottom:1.875rem;
	width:27.4375rem;
	outline:1px none red;
	text-align:left;
}

.two-column-text-and-carousel-module-landscape .text-container h3 {
	position:absolute;
	left:1.875rem;
	top:1.375rem;
	width:50%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.two-column-text-and-carousel-module-landscape .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}

.two-column-text-and-carousel-module-landscape .text-container p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}

.two-column-text-and-carousel-module-landscape .text-container p:last-of-type {
	margin-bottom:0;
}

.two-column-text-and-carousel-module-landscape .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.two-column-text-and-carousel-module-landscape .cursor.shown {
	opacity:1;
}

.two-column-text-and-carousel-module-landscape .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
}
.two-column-text-and-carousel-module-landscape .cursor span {
	vertical-align:top;
}
.two-column-text-and-carousel-module-landscape .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.two-column-text-and-carousel-module-landscape .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

/*.two-column-text-and-carousel-module-landscape .video-control {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*//*
	left:33%;
	top:0;
	width:33%;
	height:100%;
    opacity: 1;
	cursor:pointer;
	outline:1px none red;
	background:none;
}*/

.two-column-text-and-carousel-module-landscape .video-control {
	position: absolute;
    left: calc(50%);
    top: calc(50%);
    width: 10rem;
    height: 10rem;
	display:grid;
	align-items:center;
	/* transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s; */
	/* background:url(video-button.svg) center center no-repeat;
	background-size:cover; */
	outline:1px none red;
	transform:translate(-50%,-50%);
}
/*.two-column-text-and-carousel-module-landscape .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}*/

.two-column-text-and-carousel-module-landscape .video-control.playing {
	opacity:0;
}

.two-column-text-and-carousel-module-landscape .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.two-column-text-and-carousel-module-landscape .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.two-column-text-and-carousel-module-landscape .video-control.playing {
	opacity:0;
}


.two-column-text-and-carousel-module-landscape .video-control p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.1875rem;
	line-height:1.37;
	letter-spacing:0.38px;
	text-align:center;
	margin-bottom:0;
}
.two-column-text-and-carousel-module-landscape .video-control p a {
    display: inline-block;
    position: relative;
    width: 6.875rem;
    height: 1.75rem;
    text-align: center;
    background-color: #E9E9E9;
    color: #000;
    font-size: 0.75rem;
    line-height: 1.75rem;
    border-radius: 0.875rem;
    vertical-align: middle;
    text-transform: uppercase;
    margin-right: .5rem;
    letter-spacing: 0.408px;
    overflow: hidden;
}
.two-column-text-and-carousel-module-landscape .video-control p a span {
	display: inline-block;
	position:relative;
	z-index:2;
}

.two-column-text-and-carousel-module-landscape .video-control p a:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	z-index:1;
	transition: width .5s;
}
.two-column-text-and-carousel-module-landscape .video-control:hover p a:before {
	width:100%;
}

.two-column-text-and-carousel-module-landscape a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}

/*************************** end two column carousel and text module landscape ***************************/

/*************************** begin Two Column Text and Carousel Module Portrait ***************************/

.two-column-text-and-carousel-module-portrait {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 33.33% 33.33% 33.33%;
	grid-column-gap:0.5rem;
	background-color:#fff;
	padding-bottom:0.5rem;
	padding-right:1rem;
}


.two-column-text-and-carousel-module-portrait .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.two-column-text-and-carousel-module-portrait .carousel-container .carousel {
	display:block;
	width:100%;	
}
.two-column-text-and-carousel-module-portrait .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

	
}
.two-column-text-and-carousel-module-portrait .carousel-container .carousel .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:1.0625rem;
	padding-top:.5rem;
	line-height:1;
	text-align:left;
	max-width:100%;
}

.two-column-text-and-carousel-module-portrait .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
}

.two-column-text-and-carousel-module-portrait .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.two-column-text-and-carousel-module-portrait .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.two-column-text-and-carousel-module-portrait .text-container .text-content {
	position:absolute;
	left:1.875rem;
	bottom:1.875rem;
	width:27.4375rem;
	outline:1px none red;
	text-align:left;
}

.two-column-text-and-carousel-module-portrait .text-container h3 {
	position:absolute;
	left:1.875rem;
	top:1.375rem;
	width:50%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.two-column-text-and-carousel-module-portrait .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}


.two-column-text-and-carousel-module-portrait .text-container p:last-of-type {
	margin-bottom:0;
}

.two-column-text-and-carousel-module-portrait.home .text-container {
	position:relative;
	display:grid;
	align-items:center;
	justify-items:center;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.two-column-text-and-carousel-module-portrait.home .text-container .text-content {
	position:relative;
	left:auto;
	bottom:auto;
	width:37.3125rem;
}

.two-column-text-and-carousel-module-portrait.home .text-container h3 {
	position:relative;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:4.0625rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:center !important;	
	text-transform:uppercase;
	outline:1px none red;
	width:auto;
	left:auto;
	top:auto;
}

.two-column-text-and-carousel-module-portrait.home .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:center;
	width:auto;
}
.two-column-text-and-carousel-module-portrait:not(.home) .text-container p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}
.two-column-text-and-carousel-module-portrait.home .text-container p:last-of-type {
	margin-bottom:0;
}
.two-column-text-and-carousel-module-portrait.home .text-container a.cta-button {
	left:-0.40625rem; 
}

.two-column-text-and-carousel-module-portrait .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.two-column-text-and-carousel-module-portrait .cursor.shown {
	opacity:1;
}

.two-column-text-and-carousel-module-portrait .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
}
.two-column-text-and-carousel-module-portrait .cursor span {
	vertical-align:top;
}
.two-column-text-and-carousel-module-portrait .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.two-column-text-and-carousel-module-portrait .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.two-column-text-and-carousel-module-portrait .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.two-column-text-and-carousel-module-portrait .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.two-column-text-and-carousel-module-portrait .video-control.playing {
	opacity:0;
}

.two-column-text-and-carousel-module-portrait a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}

/*************************** end two column carousel and text module Portrait ***************************/

/*************************** begin two column text and carousel module square ***************************/

.two-column-text-and-carousel-module-square {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 50% 50%;
	grid-column-gap:0.5rem;
	background-color:#fff;
	padding-bottom:0.5rem;
	padding-right:0.5rem;
}


.two-column-text-and-carousel-module-square .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.two-column-text-and-carousel-module-square .carousel-container .carousel {
	display:block;
	width:100%;	
}
.two-column-text-and-carousel-module-square .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

	
}
.two-column-text-and-carousel-module-square .carousel-container .carousel .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:1.0625rem;
	padding-top:.5rem;
	line-height:1;
	text-align:left;
	max-width:100%;
}

.two-column-text-and-carousel-module-square .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
}

.two-column-text-and-carousel-module-square .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.two-column-text-and-carousel-module-square .text-container {
	position:relative;
	display:grid;
	align-items:center;
	justify-content:center;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.two-column-text-and-carousel-module-square .text-container .text-content {
	width:37.3125rem;
}

.two-column-text-and-carousel-module-square .text-container h3 {
	position:relative;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:4.0625rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:center;	
	text-transform:uppercase;
	outline:1px none red;
}

.two-column-text-and-carousel-module-square .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:center;
}

.two-column-text-and-carousel-module-square .text-container p:last-of-type {
	margin-bottom:0;
}

.two-column-text-and-carousel-module-square .text-container a.cta-button {
	left:-0.40625rem; 
}

.two-column-text-and-carousel-module-square .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.two-column-text-and-carousel-module-square .cursor.shown {
	opacity:1;
}

.two-column-text-and-carousel-module-square .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
}
.two-column-text-and-carousel-module-square .cursor span {
	vertical-align:top;
}
.two-column-text-and-carousel-module-square .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.two-column-text-and-carousel-module-square .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.two-column-text-and-carousel-module-square .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.two-column-text-and-carousel-module-square .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.two-column-text-and-carousel-module-square .video-control.playing {
	opacity:0;
}

.two-column-text-and-carousel-module-square a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}

/*************************** end two column carousel and text module portrait ***************************/

/*************************** begin two column carousel module ***************************/

.two-column-carousel-module {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 50% 50%;
	grid-column-gap:0.5rem;
	background-color:#fff;
	padding-bottom:0.5rem;
	padding-right:0.5rem;
}


.two-column-carousel-module .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.two-column-carousel-module .carousel-container .carousel {
	display:block;
	width:100%;	
}
.two-column-carousel-module .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

	
}
.two-column-carousel-module .carousel-container .carousel .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:1.0625rem;
	padding-top:.5rem;
	line-height:1;
	text-align:left;
	max-width:100%;
}

.two-column-carousel-module .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
}

.two-column-carousel-module .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.two-column-carousel-module .text-container {
	position:relative;
	display:grid;
	align-items:center;
	justify-content:center;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.two-column-carousel-module .text-container .text-content {
	width:37.3125rem;
}

.two-column-carousel-module .text-container h3 {
	position:relative;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:4.0625rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:center;	
	text-transform:uppercase;
	outline:1px none red;
}

.two-column-carousel-module .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:center;
}

.two-column-carousel-module .text-container p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}

.two-column-carousel-module .text-container p:last-of-type {
	margin-bottom:0;
}

.two-column-carousel-module .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.two-column-carousel-module .cursor.shown {
	opacity:1;
}

.two-column-carousel-module .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
}
.two-column-carousel-module .cursor span {
	vertical-align:top;
}
.two-column-carousel-module .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.two-column-carousel-module .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.two-column-carousel-module .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.two-column-carousel-module .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.two-column-carousel-module .video-control.playing {
	opacity:0;
}

.two-column-carousel-module a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}

/*************************** end two column carousel module ***************************/

/*************************** begin three column carousel module ***************************/

.three-column-carousel-module {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 33.33% 33.33% 33.33%;
	grid-column-gap:0.5rem;
	background-color:#fff;
	padding-bottom:0.5rem;
	padding-right:1rem;
}


.three-column-carousel-module .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.three-column-carousel-module .carousel-container .carousel {
	display:block;
	width:100%;	
}
.three-column-carousel-module .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

	
}
.three-column-carousel-module .carousel-container .carousel .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:1.0625rem;
	padding-top:.5rem;
	line-height:1;
	text-align:left;
	max-width:100%;
}

.three-column-carousel-module .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
}

.three-column-carousel-module .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.three-column-carousel-module .text-container {
	position:relative;
	display:grid;
	align-items:center;
	justify-content:center;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.three-column-carousel-module .text-container .text-content {
	width:37.3125rem;
}

.three-column-carousel-module .text-container h3 {
	position:relative;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:4.0625rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:center;	
	text-transform:uppercase;
	outline:1px none red;
}

.three-column-carousel-module .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:center;
}
.three-column-carousel-module p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}

.three-column-carousel-module .text-container p:last-of-type {
	margin-bottom:0;
}

.three-column-carousel-module .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.three-column-carousel-module .cursor.shown {
	opacity:1;
}

.three-column-carousel-module .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
}
.three-column-carousel-module .cursor span {
	vertical-align:top;
}
.three-column-carousel-module .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.three-column-carousel-module .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.three-column-carousel-module .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.three-column-carousel-module .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.three-column-carousel-module .video-control.playing {
	opacity:0;
}

.three-column-carousel-module a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}
/*************************** end three column carousel module ***************************/

/*************************** begin Two Column Text and Image Module Portrait Variable ***************************/

.two-column-text-and-image-module-portrait {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 33.33% 33.33% 33.33%;
	grid-column-gap:0.5rem;
	background-color:#fff;
	padding-bottom:0.5rem;
	padding-right:1rem;
}
/*.two-column-text-and-image-module-portrait > div:first-of-type {
	border:1px solid #E6E6E6;
	border-width:0 1px 0 0;
}*/

.two-column-text-and-image-module-portrait .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.two-column-text-and-image-module-portrait .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.two-column-text-and-image-module-portrait .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.two-column-text-and-image-module-portrait .text-container .text-content {
	position:absolute;
	left:1.875rem;
	bottom:1.875rem;
	width:27.4375rem;
	outline:1px none red;
	text-align:left;
}

.two-column-text-and-image-module-portrait .text-container h3 {
	position:absolute;
	left:1.875rem;
	top:1.375rem;
	width:80%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.two-column-text-and-image-module-portrait .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}

.two-column-text-and-image-module-portrait p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}

.two-column-text-and-image-module-portrait .text-container p:last-of-type {
	margin-bottom:0;
}


/*************************** end Two Column Text and Image Module Portrait Variable ***************************/

/*************************** begin Three Column Carousel and Text Module ***************************/

.three-column-carousel-and-text-module {
	position:relative;
	width:100%;
	display:grid;
	grid-template-columns: 33.33% 33.33% 33.33%;
	grid-column-gap:0.5rem;
	background-color:#fff;
	padding-bottom:0.5rem;
	padding-right:1rem;
}
/*.three-column-carousel-and-text-module > div:first-of-type {
	border:1px solid #E6E6E6;
	border-width:0 1px 0 0;
}*/

.three-column-carousel-and-text-module .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.three-column-carousel-and-text-module .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.three-column-carousel-and-text-module .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.three-column-carousel-and-text-module .cursor.shown {
	opacity:1;
}

.three-column-carousel-and-text-module .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
}
.three-column-carousel-and-text-module .cursor span {
	vertical-align:top;
}
.three-column-carousel-and-text-module .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.three-column-carousel-and-text-module .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.three-column-carousel-and-text-module .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.three-column-carousel-and-text-module .text-container .text-content {
	position:absolute;
	left:1.875rem;
	bottom:1.875rem;
	width:27.4375rem;
	outline:1px none red;
	text-align:left;
}

.three-column-carousel-and-text-module .text-container h3 {
	position:absolute;
	left:1.875rem;
	top:1.375rem;
	width:80%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.three-column-carousel-and-text-module .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.890625rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}

.three-column-carousel-and-text-module p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}

.three-column-carousel-and-text-module .text-container p:last-of-type {
	margin-bottom:0;
}


/*************************** end Three Column Carousel and Text Module ***************************/

/*************************** begin Main Header Module (Responsive) ***************************/

.main-header-module {
	position:relative;
	width:100%;
	height:100vh;
	padding:0;
	background:#fff;	
	margin-bottom:0;
	height:calc(100vh - 0.5rem);
	/* margin-bottom:0.5rem; */
}

.main-header-module.parallax + .content-object {
	padding-top:.5rem;
}

.main-header-module .carousel-tinted-overlay {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.1);
}

.main-header-module .slider-carousel {
	position:relative;
	border:1px none red;
	/*display:grid;
	grid-auto-flow: column;
	grid-column-gap:0;
	overflow:hidden;*/
}

.main-header-module .slider-carousel .controls {
	position:absolute;
	left:51.25rem;
	bottom:1.5rem;
	width:auto;
	height:auto;
	outline:1px none red;
	display:none;
}

.main-header-module .slider-carousel .controls .prev-button, .main-header-module .slider-carousel .controls .next-button {
	display:inline-block;
	width:2rem;
	height:2rem;
	cursor:pointer;
	opacity:1;
	transition:opacity .5s;
}
.main-header-module .slider-carousel .controls .prev-button:hover, .main-header-module .slider-carousel .controls .next-button:hover {
	opacity:.41;
}
.main-header-module .slider-carousel .controls .prev-button.disabled {
	opacity:.41;
}

.main-header-module .slider-carousel .controls .prev-button {
	background:url(Carousel_Arrow_Left_Static.svg) center center no-repeat;
	background-size:cover;
	margin-right:1.75rem;
}
.main-header-module .slider-carousel .controls .next-button {
	background:url(Carousel_Arrow_Right_Static.svg) center center no-repeat;
	background-size:cover;
}

.main-header-module .slider-carousel .carousel-item {
	display:block;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100vh;
	height:calc(100vh - 1rem);
	outline:1px none blue;
	/*transition: transform 1s;*/
	overflow:hidden;
	padding:0;
	z-index:0;
	border-radius:0.5rem;
}

#wrapper.intransition .main-header-module .slider-carousel .carousel-item {
	transition:height 1s;
}

.main-header-module .slider-carousel .carousel-item.wipeleft {
	clip-path: inset(0 0 0 100%);
	transition: clip-path 0s;
}

.main-header-module .slider-carousel .carousel-item.wiperight {
	 clip-path: inset(0 100% 0 0);
	 transition: clip-path 0s;
}

.main-header-module .slider-carousel .carousel-item.wipeleft.intransition {
	clip-path: inset(0 0 0 0);
	transition: clip-path 2s cubic-bezier(.86,.04,.33,.99);
	z-index:2;
}

.main-header-module .slider-carousel .carousel-item.wiperight.intransition {
	clip-path: inset(0 0 0 0);
	transition: clip-path 2s cubic-bezier(.86,.04,.33,.99);
	z-index:2;
}

.main-header-module .slider-carousel .carousel-item.current {
	z-index:1;
	clip-path: inset(0 0 0 0);
}

.main-header-module .slider-carousel .carousel-item.active {

}

.dark .extended-carousel .carousel-item {
	background-color:#2C2B29;
}

.main-header-module .slider-carousel .carousel-item img {
	display:block;
	width:100%;
	height:auto;
	margin:auto;
}

.main-header-module .slider-carousel .carousel-item img.wordmark {
	position:absolute;
	bottom:2.0625rem;
	left:50%;
	height:14.375rem;
	width:auto;
	transform:translateX(-50%);
}

.main-header-module .slider-carousel .carousel-item .description-text {
	position:absolute;
	left:50%;
	top:2.6875rem;
	transform:translateX(-50%);
	width:41.35%;
	height: auto;
	text-align:center;
	outline:1px none red;
	color:#000;
	opacity:1;
}

.main-header-module .slider-carousel .carousel-item .description-text.text-top {
	top:2.6875rem;	
	bottom:auto;
}
.main-header-module .slider-carousel .carousel-item .description-text.text-bottom {
	top:auto;	
	bottom:2.5rem;	
}

.main-header-module .slider-carousel .carousel-item .description-text.white {
	color:#fff;
}

/*.main-header-module .slider-carousel .carousel-item.current.leaving-left .description-text {
	transform:translate(-70%,-50%);
	opacity:0.25;
	transition: transform 1s ease-in-out, opacity 1s;
	transition-duration: 2s;
}
.main-header-module .slider-carousel .carousel-item.wipeleft .description-text {
	transform:translate(-30%,-50%);
	transition: transform 0s;
	
}
.main-header-module .slider-carousel .carousel-item.wipeleft.intransition .description-text {
	transform:translate(-50%,-50%);
	transition: transform 1s ease-in-out;
	transition-duration:inherit;
}

.main-header-module .slider-carousel .carousel-item.current.leaving-right .description-text {
	transform:translate(-30%,-50%);
	opacity:0.25;
	transition: transform 1s ease-in-out, opacity 1s;
	transition-duration: 2s;
}
.main-header-module .slider-carousel .carousel-item.wiperight .description-text {
	transform:translate(-70%,-50%);
	transition: transform 0s;
}
.main-header-module .slider-carousel .carousel-item.wiperight.intransition .description-text {
	transform:translate(-50%,-50%);
	transition: transform 1s ease-in-out;
	transition-duration:inherit;
}*/

.main-header-module .slider-carousel .carousel-item .description-text p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	letter-spacing:0.476px;
	line-height:1.28;
	text-transform:uppercase;
}
.main-header-module .slider-carousel .carousel-item .description-text.white p {
	color:#fff;
}

.main-header-module .slider-carousel .carousel-item .center-heading {
	position:absolute;
	left:50%;
	top:50%;
	width:60%;
	transform:translate(-50%,-50%);
	text-align:center;
	color:#000;
}
.main-header-module .slider-carousel .carousel-item .center-heading p {
	text-transform:uppercase;
}
.main-header-module .slider-carousel .carousel-item .center-heading.white {
	color:#fff;
}

.main-header-module .slider-carousel .carousel-item .center-heading.white h3 {
	color:#fff;	
}

.main-header-module .slider-carousel .carousel-item .center-heading.white p {
	color:#fff;	
}

.main-header-module .slider-carousel .carousel-item .center-heading h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:2.75rem;
	letter-spacing:1.496px;
	line-height:1.13;
	text-transform:uppercase;	
}

.main-header-module .slider-carousel .carousel-item .center-heading.white {
	color:#fff;
}


.main-header-module .slider-carousel .carousel-item .description-text p:last-of-type {
	margin-bottom:0;
}

.main-header-module .slider-carousel .carousel-item .description-text a.cta-button {
	background-color:transparent;
	color:#fff;
}

.main-header-module .slider-carousel .carousel-item .description-text a.cta-button:hover {
	background-color:#fff;
	color:#000;
}

.main-header-module .slider-carousel .carousel-item.description-shown .description-text {
	opacity:1;
	transition:opacity 1s;
	transition-delay:.25s;
}

.main-header-module .fake-cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:120px;
    height:32px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
    /*pointer-events:none;
    mix-blend-mode:exclusion;*/
	/*display:none;*/
	color:#fff;
	outline:1px none red;
	opacity:0;
	transition:opacity .4s;	
	padding:0;
	overflow:hidden;
	vertical-align:top;
	mix-blend-mode:exclusion;
	/*cursor:none;*/
}

.main-header-module .fake-cursor.shown {
	opacity:1;
}

.main-header-module .fake-cursor span {
	vertical-align:top;
	padding:0;
	margin-top:0;
	line-height:20px;
}

.main-header-module .fake-cursor .slidenumbers {
	font-size:18px;
	font-family: "MF-SpazioLC-Medium";
	line-height:18px;
	vertical-align:top;
	/* display:none; */
}

.main-header-module .fake-cursor .divider {
	font-family: "MF-SpazioLC-Medium";
	line-height:18px;
	font-size:18px;
	vertical-align:top;
	/* display:none; */
}

.main-header-module .fake-cursor .prevbutton {
	font-family: "Arial";
	padding-right:5px;
	font-size:20px;
	line-height:1;
	vertical-align:top;
	width:auto;
}

.main-header-module .fake-cursor .nextbutton {
	font-family: "Arial";
	padding-left:5px;
	font-size:20px;
	line-height:1;
	vertical-align:top;
	width:auto;
}

.main-header-module .view-more {
	font-family: "MF-SpazioLC-Medium";
	position:absolute;
	width:0.375rem;
	height:1.375rem;
	left:50%;
	bottom:1.25rem;
	transform:translateX(-50%);
	z-index:100;
	background:url(arrow-down-white.svg) center center no-repeat;
	background-size:0.375rem 1.375rem;
}

@keyframes wipe-in-left {
  from {
    clip-path: inset(0 0 0 100%);
  }
  to {
    clip-path: inset(0 0 0 0);
  }
}

[transition-style="in:wipe:left"] {
  animation: 2.5s cubic-bezier(.25, 1, .30, 1) wipe-in-left both;
}
@container main-site (inline-size < 70vw) {
/* 	#wrapper .main * {
		opacity:0;
		transition: opacity 1s;
	} */
	#wrapper .main .content-object .text-content {
			/* width:10rem !important; */
			text-overflow: ellipsis !important;
			overflow: hidden !important;
			-webkit-line-clamp: 4 !important;
			display: -webkit-box !important;
			-webkit-box-orient: vertical !important;	
			/* transition: width 1s !important; */
/* 			height:0 !important;
			transition:height 1s !important; */
	}
}
@container main-site (inline-size < 30vw) {
/* 	#wrapper .main * {
		opacity:1;
		transition: opacity 1s;
	} */	
}
@container main-site (inline-size < 50vw) {
	/* begin main header module styles */
	#wrapper .main .content-object.main-header-module {
		 height:auto;
		 aspect-ratio:16 / 9;
		 margin-bottom:.5rem !important;
		 outline:1px none red;
	}
	#wrapper .main .content-object.main-header-module .carousel-item {
		/* height:22.5vh; */
		height:auto;
		width:100%;
		aspect-ratio:16 / 9;
		transition:height 1s;			
	}
	
	#wrapper .main .content-object.main-header-module .slider-carousel .carousel-item .center-heading {
		position:absolute;
		left:1rem;
		top:1rem;
		width:60%;
		transform:none;
		text-align:left;
		transition:left 1s, top 1s;
	}
	#wrapper .main .content-object.main-header-module .slider-carousel .carousel-item .center-heading h3 {
		font-family: "MF-SpazioLC-Medium";
		font-size:.75rem;
		letter-spacing:1.496px;
		line-height:1.13;
		text-transform:uppercase;
		transition:font-size 1s;
		text-align:left;
	}
	#wrapper .main .content-object.main-header-module .slider-carousel .carousel-item .description-text {
		opacity:0;
	}
	/* end main header module styles */
	
	/* begin two column text and carousel module landscape */
	#wrapper .main .content-object.two-column-text-and-carousel-module-landscape {
			grid-template-columns: 100%;
			grid-column-gap:0;
			padding-right:0;
			width:100%;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-landscape .text-content {
			position:relative;
			left:auto;
			bottom:auto;
			width:auto;
			text-overflow: ellipsis;
			overflow: hidden;
			-webkit-line-clamp: 4;
			display: -webkit-box;
			-webkit-box-orient: vertical;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-landscape .text-container {
		padding:1rem;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-landscape .text-container:has(~ .carousel-container) {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-landscape .text-container h3 {
			position:relative;
			left:auto;
			top:auto;
			width:auto;
			margin-bottom:2rem;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-landscape .carousel-container:has(~ .text-container) {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-landscape .carousel img {
		/* max-width:24rem; */
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-landscape .carousel video {
		/* max-width:24rem; */
	}
	/* end two column text and carousel module landscape */
	
	/* begin two column text and image module landscape */
	#wrapper .main .content-object.two-column-text-and-image-module-landscape {
		position:relative;
		width:100%;
		display:grid;
		grid-template-columns:100%;
		grid-column-gap:0;
		padding-right:0;
	}
	#wrapper .main .content-object.two-column-text-and-image-module-landscape .text-container {
		padding:1rem;
	}
	#wrapper .main .content-object.two-column-text-and-image-module-landscape .text-container .text-content {
		position:relative;
		left:auto;
		bottom:auto;
		width:auto;
		text-overflow: ellipsis;
		overflow: hidden;
		-webkit-line-clamp: 4;
		display: -webkit-box;
		-webkit-box-orient: vertical;
	}

	#wrapper .main .content-object.two-column-text-and-image-module-landscape .text-container h3 {
		position:relative;
		left:auto;
		top:auto;
		width:auto;
		margin-bottom:2rem;
	}

	#wrapper .main .content-object.two-column-text-and-image-module-landscape .text-container:has(~ .carousel-container) {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.two-column-text-and-image-module-landscape .carousel-container:has(~ .text-container) {
		margin-bottom:.5rem;
	}	
	/* end two column text and image module landscape */
	
	/* begin two column text and image module portrait */
	#wrapper .main .content-object.two-column-text-and-image-module-portrait {
		position:relative;
		width:100%;
		display:grid;
		grid-template-columns:100%;
		grid-column-gap:0;
		padding-right:0;
	}
	#wrapper .main .content-object.two-column-text-and-image-module-portrait .text-container {
		padding:1rem;
	}
	#wrapper .main .content-object.two-column-text-and-image-module-portrait .text-container .text-content {
		position:relative;
		left:auto;
		bottom:auto;
		width:auto;
		text-overflow: ellipsis;
		overflow: hidden;
		-webkit-line-clamp: 4;
		display: -webkit-box;
		-webkit-box-orient: vertical;
	}

	#wrapper .main .content-object.two-column-text-and-image-module-portrait .text-container h3 {
		position:relative;
		left:auto;
		top:auto;
		width:auto;
		margin-bottom:2rem;
	}

	#wrapper .main .content-object.two-column-text-and-image-module-portrait .text-container:has(~ .carousel-container) {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.two-column-text-and-image-module-portrait .carousel-container:has(~ .text-container) {
		margin-bottom:.5rem;
	}	
	/* end two column text and image module portrait */
	
	/* begin two column text and carousel module portrait */
	#wrapper .main .content-object.two-column-text-and-carousel-module-portrait {
			grid-template-columns: 100%;
			grid-column-gap:0;
			padding-right:0;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-portrait .text-content {
			position:relative;
			left:auto;
			bottom:auto;
			width:auto;
			text-overflow: ellipsis;
			overflow: hidden;
			-webkit-line-clamp: 4;
			display: -webkit-box;
			-webkit-box-orient: vertical;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-portrait .text-container {
		padding:1rem;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-portrait .text-container:has(~ .carousel-container) {
		margin-bottom:.5rem;
	}
	
	#wrapper .main .content-object.two-column-text-and-carousel-module-portrait .carousel-container:has(~ .text-container) {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-portrait .text-container h3 {
			position:relative;
			left:auto;
			top:auto;
			width:auto;
			margin-bottom:2rem;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-portrait .carousel img {
		/* width:24rem; */
	}
	/* end two column text and carousel module portrait */
	
	/* begin two column text and carousel module square */
	#wrapper .main .content-object.two-column-text-and-carousel-module-square {
			grid-template-columns: 100%;
			grid-column-gap:0;
			padding-right:0;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-square .text-content {
			position:relative;
			left:auto;
			bottom:auto;
			width:auto;
			text-overflow: ellipsis;
			overflow: hidden;
			-webkit-line-clamp: 4;
			display: -webkit-box;
			-webkit-box-orient: vertical;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-square .text-container {
		padding:1rem;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-square .text-container:has(~ .carousel-container) {
		margin-bottom:.5rem;
	}
	
	#wrapper .main .content-object.two-column-text-and-carousel-module-square .carousel-container:has(~ .text-container) {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-square .text-container h3 {
			position:relative;
			left:auto;
			top:auto;
			width:auto;
			margin-bottom:2rem;
	}
	#wrapper .main .content-object.two-column-text-and-carousel-module-square .carousel img {
		/* width:24rem; */
	}
	/* end two column text and carousel module square */
	
	/* begin four column flexi grid module */
	#wrapper .main .content-object.four-column-flexi-grid .grid-row {
		display:grid;
		grid-template-columns:100%;
		grid-column-gap:0;
		margin-bottom:.5rem;
		transition:grid-template-columns 1s;
	}
	#wrapper .main .content-object.four-column-flexi-grid .grid-row:last-of-type {
		margin-bottom:0;
	}	
	#wrapper .main .content-object.four-column-flexi-grid .grid-item {
		position:relative;
		height:auto;
		background:#F2F2F2;
		border-radius:.5rem;
		padding:0.625rem;
		overflow:hidden;
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.four-column-flexi-grid .grid-item:last-of-type {
		margin-bottom:0;
	}
	#wrapper .main .content-object.four-column-flexi-grid .grid-item .text-content {
		position:absolute;
		left:1.25rem;
		bottom:1.25rem;
		width:90%;
		height:0;
		outline:1px none red;
		text-align:left;
		transition: top 1s;
		opacity:0;
	}
	/* end four column flexi grid module */
	
	/* begin team module  */
	#wrapper .main .content-object.team-module.expanded {
		padding-bottom:0;
	}
	#wrapper .main .content-object.team-module .grid-row {
		display:grid;
		grid-template-columns:100%;
		grid-column-gap:0;
		margin-bottom:0;
	}
	#wrapper .main .content-object.team-module .grid-row .grid-item {
		height:22rem;
		transition:height 1s;
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.team-module .grid-row .grid-item:empty {
		display:none;
	}
	#wrapper .main .content-object.team-module .grid-item .text-content {
		position:relative;
		left:auto;
		top:auto;
		width:auto;
		outline:1px none red;
		text-align:left;
		transition: top 1s;
		font-size:0.875rem;
		padding:1rem;
	}
	#wrapper .main .content-object.team-module .grid-row .grid-item .additional {
		display:none;
	}
	#wrapper .main .content-object.team-module .grid-row .grid-item p.team-contact {
		display:none;
	}
	#wrapper .main .content-object.team-module .header {
		background-image:none;
		height:0;
		transition:height 1s;
		overflow:hidden;
		margin-bottom:0;
	}
	#wrapper .main .content-object.team-module .header .pseudoselect {
		display:none;
	}

	#wrapper .main .content-object.team-module .header .controls {
		display:none;
	}
	/* end team module  */
	
	/* begin project leaders module  */
	#wrapper .main .content-object.project-leaders-module {
		position:relative;
		width:100%;
		padding:0;
		font-family: "MF-SpazioLC-Medium";
		background:#fff;
		display:grid;
		grid-template-columns:100%;
		grid-column-gap:0;
		padding-right:0;
		padding-bottom:.5rem;
	}	
	#wrapper .main .content-object.project-leaders-module .text-container {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.project-leaders-module .pseudoselect {
		display:none;
	}
	#wrapper .main .content-object.project-leaders-module .leader-item {
		grid-template-columns:100%;
		padding-right:.25rem;
		transition:grid-template-columns 1s;
	}
	#wrapper .main .content-object.project-leaders-module img {
		width:100%;
	}
	#wrapper .main .content-object.project-leaders-module span.contact-button {
		display:none !important;
	}
	/* end project leaders module  */
	
	/* begin pull quote module  */
	#wrapper .main .content-object.pull-quote-module {

		padding-bottom:.5rem;
	}
	#wrapper .main .content-object.pull-quote-module .background-panel {
		
		position:relative;
		width:100%;
		display:grid;
		justify-items:center;
		align-items:center;
		background:#fff;
		outline:1px none red;
		padding:2rem 0 2rem 0;
		background-color:#F2F2F2;
		border-radius:0.5rem;	
	}

	#wrapper .main .content-object.pull-quote-module .text-content {
		position:relative;
		/* width:42%; */
		width:80%;
		outline:1px none blue;
		text-transform:uppercase;
		text-align:center;
		margin:auto;
	}

	#wrapper .main .content-object.pull-quote-module .text-content h3 {
		font-family: "MF-SpazioLC-Medium";
		font-size:1rem;
		line-height:1.16;
		margin-bottom:1.625rem;
		letter-spacing:0.816px;
		text-align:center;
	}

	#wrapper .main .content-object.pull-quote-module p {
		width:100%;
		text-align:center;
		font-family: "MF-SpazioLC-Medium";
		font-size:0.625rem;
		line-height:1;
		letter-spacing:0.34px;
		margin-bottom:0;
		text-transform:uppercase;
	}
	#wrapper .main .content-object.pull-quote-module p:last-of-type {
		margin-bottom:0;
	}	
	/* end pull quote module  */
	
	/* begin two-column text module  */
	#wrapper .main .content-object.two-column-text-module {
		position:relative;
		width:100%;
		padding:0;
		font-family: "MF-SpazioLC-Medium";
		background:#fff;
		display:grid;
		grid-template-columns:100%;
		grid-column-gap:0;
		min-height:2rem;
		padding-right:0;
		padding-bottom:0;
	}
	#wrapper .main .content-object.two-column-text-module .text-container {
		padding:1rem;
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.two-column-text-module .text-container .text-content {
		position:relative;
		left:auto;
		bottom:auto;
		width:auto;
		text-align:left;
		text-overflow: ellipsis;
		overflow: hidden;
		-webkit-line-clamp: 4;
		display: -webkit-box;
		-webkit-box-orient: vertical;
	}

	#wrapper .main .content-object.two-column-text-module .text-container h3 {
		position:relative;
		left:auto;
		top:auto;
		width:100%;
		height:auto;
		font-family: "MF-SpazioLC-Medium";
		font-size:0.875rem;
		margin-bottom:0;
		letter-spacing:1px;
		text-align:left;	
		text-transform:uppercase;
		outline:1px none red;
		line-height:1.28;
		letter-spacing:0.476px;
		margin-bottom:2rem;
	}

	#wrapper .main .content-object.two-column-text-module .text-container p {
		font-family: "MF-SpazioLC-Medium";
		font-size:0.890625rem;
		margin-bottom:1.125rem;
		line-height:1.28;
		letter-spacing:0.476px;
		text-align:left;
	}
	/* end two-column text module  */
	
	/* begin two-column carousel module  */
	#wrapper .main .content-object.two-column-carousel-module {
		position:relative;
		width:100%;
		display:grid;
		grid-template-columns: 100%;
		grid-column-gap:0;
		background-color:#fff;
		padding-bottom:0.5rem;
		padding-right:0;
	}	
	#wrapper .main .content-object.two-column-carousel-module .carousel-container:first-of-type {
		margin-bottom:.5rem;
	}
	/* end two-column carousel module  */
	
	/* begin three-column carousel module  */
	#wrapper .main .content-object.three-column-carousel-module {
		position:relative;
		width:100%;
		display:block;
		grid-template-columns: 100%;
		grid-column-gap:0;
		background-color:#fff;
		padding-bottom:0.5rem;
		padding-right:0;
	}	
	#wrapper .main .content-object.three-column-carousel-module .carousel-container {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.three-column-carousel-module .carousel-container:last-of-type {
		margin-bottom:0;
	}
	/* end three-column carousel module  */
	
	/* begin three-column carousel module portrait  */
	#wrapper .main .content-object.three-column-carousel-module.portrait {
		position:relative;
		width:100%;
		display:block;
		grid-template-columns: 100%;
		grid-column-gap:0;
		background-color:#fff;
		padding-bottom:0.5rem;
		padding-right:0;
	}	
	#wrapper .main .content-object.three-column-carousel-module.portrait .carousel-container {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.three-column-carousel-module.portrait .carousel-container:last-of-type {
		margin-bottom:0;
	}
	/* end three-column carousel module  */
	
	/* begin three-column carousel and text module  */
	#wrapper .main .content-object.three-column-carousel-and-text-module {
		position:relative;
		width:100%;
		display:block;
		grid-template-columns: 100%;
		grid-column-gap:0;
		background-color:#fff;
		padding-bottom:0.5rem;
		padding-right:0;
	}	
	#wrapper .main .content-object.three-column-carousel-and-text-module .carousel-container {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.three-column-carousel-and-text-module .carousel-container:last-of-type {
		margin-bottom:0;
	}
	#wrapper .main .content-object.three-column-carousel-and-text-module .text-container {
		padding:1rem;
	}

	#wrapper .main .content-object.three-column-carousel-and-text-module .text-container .text-content {
		position:relative;
		left:auto;
		bottom:auto;
		width:auto;
		text-overflow: ellipsis;
		overflow: hidden;
		-webkit-line-clamp: 4;
		display: -webkit-box;
		-webkit-box-orient: vertical;
	}

	#wrapper .main .content-object.three-column-carousel-and-text-module .text-container h3 {
			position:relative;
			left:auto;
			top:auto;
			width:auto;
			margin-bottom:2rem;
	}
	/* end three-column carousel and text module  */
	
	/* begin project details module  */
	#wrapper .main .content-object.project-details-module {
		position:relative;
		width:100%;
		display:block;
		background-color:#fff;
		padding-bottom:0.5rem;
		padding-right:0;
	}	
	#wrapper .main .content-object.project-details-module .text-container.details {
		display:none;
	}
	#wrapper .main .content-object.project-details-module .text-container {
		padding:1rem;
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.project-details-module .text-container h3 {
		position:relative;
		left:auto;
		top:auto;
		width:auto;
		margin-bottom:2rem;
	}
	#wrapper .main .content-object.project-details-module .text-container .text-content {
		position:relative;
		left:auto;
		bottom:auto;
		width:auto;
		text-overflow: ellipsis;
		overflow: hidden;
		-webkit-line-clamp: 4;
		display: -webkit-box;
		-webkit-box-orient: vertical;
	}
	/* end project details module  */
	
	/* begin contact details module  */
	#wrapper .main .content-object.contact-details-module {
		position:relative;
		width:100%;
		padding:0;
		font-family: "MF-SpazioLC-Medium";
		background:#fff;
		display:block;
		grid-template-columns:50% 50%;
		grid-column-gap:0.5rem;
		min-height:1rem;
		padding-right:0;
		padding-bottom:.5rem;
	}	
	#wrapper .main .content-object.contact-details-module .text-container {
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.contact-details-module a.pill {
		display:none !important;
	}
	#wrapper .main .content-object.contact-details-module .locations-container .location-item {
		display:block;
		grid-template-columns:1fr 1fr;
		border-radius:0.5rem;
		height:auto;
		background-color:#F2F2F2;
		color:#000;
		margin-bottom:.5rem;
		border-radius:.5rem;
		font-size:0.890625rem;
	}
	#wrapper .main .content-object.contact-details-module .locations-container .location-item .display-image {
		text-align:left;
	}
	#wrapper .main .content-object.contact-details-module .locations-container .location-item.spacer {
		display:none !important;
	}
	/* end contact details module  */
	
	/* begin accordion module  */
	#wrapper .main .content-object.accordion-module .accordion .accordion-item .accordion-item-title span {
		display:inline-block;
		  overflow: hidden;
		  max-width: 80%;
		  text-overflow: ellipsis;
		  width: 100%;
		  white-space: nowrap;
	}	
	/* end accordion module  */
	
	/* begin featured projects module  */
	#wrapper .main .content-object.featured-projects-module .grid-container {
		display:grid;
		grid-template-columns:100%;
		grid-column-gap:0;
	}
	#wrapper .main .content-object.featured-projects-module .header .controls {
		display:none;
	}
	#wrapper .main .content-object.featured-projects-module .grid-item {
		margin-bottom:.5rem !important;
		padding-bottom:1.25rem;
	}
	#wrapper .main .content-object.featured-projects-module .grid-item .text-container {
		position:relative;
		height:auto;
		outline:1px none red;
		padding:1.25rem 0.5625rem 0 0.5625rem;
	}
	#wrapper .main .content-object.featured-projects-module a.pill {
		display:none;
	}
	#wrapper .main .content-object.featured-projects-module .grid-item .text-content {
		position:relative;
		left:auto;
		bottom:auto;
		width:calc(100% - 1.125rem);
		width:calc(80%);
		outline:1px none blue;
		text-align:left;
		transition: top 1s;
	}
	#wrapper .main .content-object.featured-projects-module .grid-item .text-content h4 {
		margin-bottom:0;
		text-transform:uppercase;
		text-align:left;
		font-size:0.875rem;
	}	
	#wrapper .main .content-object.featured-projects-module .grid-item .text-content p {
		display:none;
	}
	/* end featured projects module  */
	
	/* begin center text module  */
	#wrapper .main .content-object.center-text-module {
		padding-bottom:0;
		margin-bottom:.5rem;
	}
	#wrapper .main .content-object.center-text-module .background-panel {
		position:relative;
		width:100%;
		background:#F2F2F2;
		display:grid;
		grid-template-columns:100%;
		align-items:center;
		justify-items:center;
		border-radius:.5rem;
		padding-top:2.5rem;
		padding-bottom:2.5rem;	
	}	
	#wrapper .main .content-object.center-text-module .text-container {
		position:relative;
		width:90%;
		display:block;
		background-color:#F2F2F2;
		border-radius:0.5rem;
		text-overflow: ellipsis;
		overflow: hidden;
		-webkit-line-clamp: 4;
		display: -webkit-box;
		-webkit-box-orient: vertical;
	}
	/* end center text module  */
	
	/* begin standard text module  */
	#wrapper .main .content-object.standard-text-module {
		grid-template-columns:100%;
		padding-right:0;
	}
	#wrapper .main .content-object.standard-text-module .text-container {
		padding:1.25rem;
	}
	#wrapper .main .content-object.standard-text-module .text-container .text-content {
		/* padding:1.375rem 0 5rem 1.875rem; */
		outline:1px none red;
		text-align:left;
		width:auto;
		text-overflow: ellipsis;
		overflow: hidden;
		-webkit-line-clamp: 4;
		display: -webkit-box;
		-webkit-box-orient: vertical;
	}
	#wrapper .main .content-object.standard-text-module .text-container h3 {
		position:relative;
		left:auto;
		top:auto;
		width:80%;
		height:auto;
		font-family: "MF-SpazioLC-Medium";
		font-size:0.875rem;
		margin-bottom:0;
		letter-spacing:1px;
		text-align:left;	
		text-transform:uppercase;
		outline:1px none red;
		line-height:1.28;
		letter-spacing:0.476px;
	}

	#wrapper .main .content-object.standard-text-module .text-container p {
		font-family: "MF-SpazioLC-Medium";
		font-size:0.890625rem;
		margin-bottom:1.125rem;
		line-height:1.28;
		letter-spacing:0.476px;
		text-align:left;

	}
	/* end standard text module  */
	
	/* begin awards page  */
	#wrapper .main table tr th, #wrapper .main table tr td {
		display:none;
	}	
	#wrapper .main table tr th:first-of-type, #wrapper .main table tr td:first-of-type {
		display:block;
		width:100%;
		outline:1px none red;
		white-space: nowrap; 
	}	
	#wrapper .main table colgroup col {
		width:0 !important;
		transition:width 1s !important;
	}
	#wrapper .main table colgroup col:first-of-type {
		width:100% !important;
	}
	/* end awards page  */
	
	/* global */
	#wrapper .main .content-object .additional-info {
		display:none !important;
	}
	#wrapper .main .content-object .additional-content-container {
		display:none !important;
	}
	#wrapper .main .content-object .additional-content {
		display:none !important;
	}
	#wrapper .main .content-object .additional {
		display:none;
	}
	
	#wrapper .main .content-object:after {
		content:'';
		position:absolute;
		left:0;
		top:0;
		width:100%;
		height:100%;
		z-index:100;
		background-color:rgba(0,0,0,0);
		border-radius:.5rem;
	}
	
}

/*************************** end Main Header Module (Responsive) ***************************/

/*************************** begin Large Single Image Module Landscape ***************************/

.large-image-module-landscape {
	position:relative;
}

.large-image-module-landscape .background-panel {
	position:relative;
	border-radius:.5rem !important;
	overflow:hidden;	
	padding-bottom:.5rem;
}

.large-image-module-landscape .image-container {
	position:relative;
	border-radius:.5rem !important;
}

.large-image-module-landscape .image-container img {
	position:relative;
	border-radius:.5rem !important;
}

/*************************** end Large Single Image Module Landscape ***************************/

/*************************** begin Large Promotional Module 16:9 (Responsive) ***************************/

.large-promotional-module-16-9 {
	position:relative;
	width:100%;
	display:block;
	background-color:#fff;
	padding-bottom:0.5rem;
}
/*.large-promotional-module-16-9 > div:first-of-type {
	border:1px solid #E6E6E6;
	border-width:0 1px 0 0;
}*/

.large-promotional-module-16-9 .carousel-container {
	position:relative;
	outline:1px none red;
	/*border: 1px solid #ccc;
	border-width:0 0 0 1px;*/
	padding:0;
	border-radius:0.5rem;
	overflow:hidden;
	
}

.large-promotional-module-16-9 .carousel-container .carousel {
	display:block;
	width:100%;	
}
.large-promotional-module-16-9 .carousel-container .carousel .image-container {
	position:relative;
	display:block;
	width: auto;
	/*max-width: max-content;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:center;*/
	outline:1px none red;
	padding:0 !important;
	margin:0;
	/*margin:auto;*/
	text-align:left;

	
}
.large-promotional-module-16-9 .carousel-container .carousel .caption {
	display:block;
	font-family: "MF-SpazioLC-Medium";
	font-size:1.0625rem;
	padding-top:.5rem;
	line-height:1;
	text-align:left;
	max-width:100%;
}

.large-promotional-module-16-9 .carousel-container .carousel .slick-slide {
	margin:0;
	padding:0;
	text-align:center;
	background-color:white;
}

.large-promotional-module-16-9 .carousel-container img {
	display:block;
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align:top;
	
}

.large-promotional-module-16-9 .text-container {
	position:relative;
	display:block;
	background-color:#F2F2F2;
	border-radius:0.5rem;
}

.large-promotional-module-16-9 .text-container .text-content {
	position:absolute;
	left:1.875rem;
	bottom:1.875rem;
	width:27.4375rem;
	outline:1px none red;
	text-align:left;
}

.large-promotional-module-16-9 .text-container h3 {
	position:absolute;
	left:1.875rem;
	top:1.375rem;
	width:50%;
	height:auto;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:0;
	letter-spacing:1px;
	text-align:left;	
	text-transform:uppercase;
	outline:1px none red;
	line-height:1.28;
	letter-spacing:0.476px;
}

.large-promotional-module-16-9 .text-container p {
	font-family: "MF-SpazioLC-Medium";
	font-size:0.875rem;
	margin-bottom:1.125rem;
	line-height:1.28;
	letter-spacing:0.476px;
	text-align:left;
}

.large-promotional-module-16-9 .text-container p:has(+ p a.cta-button) {
	margin-bottom:.5rem;
}

.large-promotional-module-16-9 .text-container p:last-of-type {
	margin-bottom:0;
}

.large-promotional-module-16-9 .cursor {
    position:fixed;
	left:0;
	top:0;
    text-align:center;
    width:80px;
    height:30px;
    z-index:1000000;
    -webkit-transform-origin:center center;
    transform-origin:center center;
	background:transparent;
	color:#fff;
	outline:1px none red;
	opacity:0;
	pointer-events:none;
	transition:opacity .5s;	
	mix-blend-mode:exclusion;
}
.large-promotional-module-16-9 .cursor.shown {
	opacity:1;
}

.large-promotional-module-16-9 .cursor .slidenumbers {
	font-family:MF-SpazioLC-Medium;
	font-size:14px;
	line-height:1;
	outline:1px none red;
	vertical-align:top;
}
.large-promotional-module-16-9 .cursor span {
	vertical-align:top;
}
.large-promotional-module-16-9 .cursor .prevbutton {
	padding:0;
	padding-right:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

.large-promotional-module-16-9 .cursor .nextbutton {
	padding:0;
	padding-left:5px;
	font-size:8px;
	line-height:2.2;
	outline:1px none red;
	vertical-align:top;
	display:inline-block;
	font-family:Arial;
}

/*.large-promotional-module-16-9 .video-control {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*//*
	left:33%;
	top:0;
	width:33%;
	height:100%;
    opacity: 1;
	cursor:pointer;
	outline:1px none red;
	background:none;
}*/

.large-promotional-module-16-9 .video-control {
	position: absolute;
    left: calc(50%);
    top: calc(50%);
    width: 10rem;
    height: 10rem;
	display:grid;
	align-items:center;
	/* transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s; */
	/* background:url(video-button.svg) center center no-repeat;
	background-size:cover; */
	outline:1px none red;
	transform:translate(-50%,-50%);
}
/*.large-promotional-module-16-9 .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}*/

.large-promotional-module-16-9 .video-control.playing {
	opacity:0;
}

.large-promotional-module-16-9 .video-control {
	position: absolute;
    left: calc(50% - 45px);
    top: calc(50% - 50px);
    width: 90px;
    height: 100px;
	transform-origin:center;
    transform: scale(1);
    transition: transform .5s, opacity .5s;
	background:url(video-button.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;
}
.large-promotional-module-16-9 .video-control:hover {
	opacity:1;
	transform: scale(1.1);
}

.large-promotional-module-16-9 .video-control.playing {
	opacity:0;
}


.large-promotional-module-16-9 .video-control p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.1875rem;
	line-height:1.37;
	letter-spacing:0.38px;
	text-align:center;
	margin-bottom:0;
}
.large-promotional-module-16-9 .video-control p a {
    display: inline-block;
    position: relative;
    width: 6.875rem;
    height: 1.75rem;
    text-align: center;
    background-color: #E9E9E9;
    color: #000;
    font-size: 0.75rem;
    line-height: 1.75rem;
    border-radius: 0.875rem;
    vertical-align: middle;
    text-transform: uppercase;
    margin-right: .5rem;
    letter-spacing: 0.408px;
    overflow: hidden;
}
.large-promotional-module-16-9 .video-control p a span {
	display: inline-block;
	position:relative;
	z-index:2;
}

.large-promotional-module-16-9 .video-control p a:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:0;
	background-color:#E2661F;
	z-index:1;
	transition: width .5s;
}
.large-promotional-module-16-9 .video-control:hover p a:before {
	width:100%;
}

.large-promotional-module-16-9 a.slide-link {
    position: absolute;
    /*left: calc(50% - 30px);
    top: calc(50% - 35px);
    width: 60px;
    height: 70px;*/
	left:33%;
	top:0;
	width:33%;
	height:100%;
	outline:1px none red;
}
}

/*************************** end Large Promotional Module 16:9 (Responsive) ***************************/

/*************************** end content objects ***************************/

/*************************** begin Form Module ***************************/

.form-module {
	position:relative;
	outline:1px none red;
	width:100%;
	height:100%;
	padding:0 3.1875rem 0 3.1875rem;
}

.form-module .form-heading h3 {
	font-family: "MF-SpazioLC-Medium";
	font-size:3.375rem;
	color:#D5D5D5;
	letter-spacing:-2.16px;
	line-height:1;
	text-transform:uppercase;
	margin-top:1.875rem;
	margin-bottom:7.6875rem;
}
.form-module .thank-you-heading h3  {
	font-family: "MF-SpazioLC-Medium";
	font-size:3.375rem;
	color:#D5D5D5;
	letter-spacing:-2.16px;
	line-height:1;
	text-transform:uppercase;
	margin-top:1.875rem;
	margin-bottom:3.0625rem;	
}

.form-module .thank-you-heading p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1rem;
	line-height:1.25;
	letter-spacing:0.16px;
	width:39%;
	margin:auto;
	text-align:center;
	margin-bottom:10.25rem;
}

.form-module p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.1875rem;
	color:#fff;
	letter-spacing:0.38px;
	line-height:1.32;
}


.form-module p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1rem;
	color:#fff;
	letter-spacing:0.38px;
	line-height:1.32;
	margin-bottom:0;
	text-transform:uppercase;
}
.form-module p.forgot-password {
	font-size:1rem;
	color:#fff;
	margin-top:.25rem;
}
.form-module p.forgot-password a {
	text-decoration:underline;
}

.form-module label {
	font-size:1rem;
	color:#fff;
	display:grid;
	grid-template-columns:1fr 1fr;
	align-items:start;
	border:1px solid rgba(255,255,255,0.17);
	border-width:0 0 1px 0;
	min-height:2.875rem;
	text-transform:uppercase;
	padding-top:.85rem;
	padding-left:2px;
	cursor:pointer;
}
.form-module label.first {
	border-width:1px 0 1px 0;
}

.form-module label span.errorstate {
	color:#ff0000;
}

.form-module label.message-label {
	border-width:0;
	align-items:start;
	padding-top:.85rem;
}

.thank-you-message p {
	font-family: "MF-SpazioLC-Medium";
	font-size:1rem;
	color:#fff;
	letter-spacing:0.38px;
	line-height:1.32;
	display:grid;
	grid-template-columns:1fr 1fr;
	align-items:center;
	border:1px solid rgba(255,255,255,0.17);
	border-width:0 0 1px 0;
	height:2.8125rem;
}
.thank-you-message p.first {
	border-width:1px 0 1px 0;
}
.thank-you-message a:before {
	display:none !important;
}
.form-module .thank-you-message label {
	display:block;
	border:none;
	padding:0;
	min-height:0;
	outline:1px none red;
}

.form-module .required-text {
	position:absolute;
	bottom:3.75rem;
	left:3rem;
	color:#fff;
}

.form-module .formerrormessage {
	font-family: "MF-SpazioLC-Medium";
	font-size:1.1875rem;
	color:red;
	letter-spacing:0.38px;
	line-height:1.32;
	margin-bottom:1.625rem;
	display:none;	
}

.form-module .submit-row {
	display:grid;
	grid-template-columns:1fr 1fr;
}

.form-module .submit-container .policy a {
	text-decoration:none !important;
}
.form-module .submit-container .policy a:before {
	background-color:#fff;
}





/*************************** end Form Module ***************************/

/*************************** begin form field styles ***************************/

/******* Begin Form Styles *******/

/* begin pseudoselect control */
.pseudoselect {
	position:relative;
	display:inline-block;
	width:100%;
	padding: 0;
	min-height:1.475rem;
	line-height:1.475rem;
	font-size: 0.9825rem;
	color:#fff;
	/*border: 1px dashed #3B3B3B;
	border-width: 0 0 1px 0;
	background:#000;*/
	outline:none;
	margin-bottom:0;
	/*background: transparent url(IS_Dropdown_Arrow_Down_Revised.svg) right .75rem center no-repeat;
	background-size: 0.75rem 0.4375rem;
	background: transparent url(Plus_Icon_Grey.svg) left 2rem center no-repeat;
	background-size: 0.75rem 0.75rem;*/
	cursor:pointer;
	text-align:left;
	text-transform:none;
	font-family: "MF-SpazioLC-Medium";
	letter-spacing:1px;
}
.selectiontext {
	position:absolute;
	left:0;
	top:0;
	width:50%;
	height:auto;
	outline:1px none red;
	text-transform:uppercase;
	opacity:1;
}
.pseudoselect.open .selectiontext {
	opacity:0;
}
.selectioncount {
	position:absolute;
	left:0;
	top:0;
	width:50%;
	height:auto;
	outline:1px none red;

}
.pseudoselect .activate-button {
	position:absolute;
	right:2px;
	top:0;
	width:0.8125rem;
	height:0.8125rem;
	outline:1px none red;
	background: url(arrow-down.svg) center center no-repeat;
	background-size: cover;
	transform:rotate(0);
	transition:transform .25s;
}
.pseudoselect.errorstate .activate-button {
	background: url(select-arrow.svg) center center no-repeat;
	background-size: cover;	
}
.pseudoselect.errorstate {
	color:#FF0000;
}
.pseudoselect.open .activate-button {
	transform:rotate(180deg);
}
.pseudoselect.open.errorstate {
	color:#FC4A4A;
}
.psselections {
	position:absolute;
	/* max-height:9.375rem; */
	height:0;
	left:0;
	/*right:0;*/
	width:calc(100% - 2rem);
	top: 0;
	margin: 0;
	padding:0;
	font-size: 0.9825rem;
	color:#fff;
	background:transparent;
	
	border-width:0 1px 1px 1px;
	border:none;
	overflow:hidden;
	/* display:none; */
	z-index:10000;
	outline:1px none red;
	font-family: "MF-SpazioLC-Medium";
	letter-spacing:1px;
	text-transform:uppercase;
	margin-bottom:2rem;
	transition:height .5s, padding .5s;
}
.pseudoselect.open .psselections {
	padding:.25rem 2rem 1rem 0;
	margin-bottom:2rem;
	transition:height .5s, padding .5s;
	overflow:auto;
}
.psselections label {
	display:block;
	font-size: 1rem;
	color:#fff;
	cursor:pointer;
	text-align:left;
	background-color:transparent;
	height:1rem;
	line-height:1rem;
	vertical-align:middle;
	text-transform:none;
	font-family: "MF-SpazioLC-Medium";
	border:none;
	padding:0;
	min-height:1.25rem;
}
.psselections label span {
	color:#fff;
}
.psselections label:hover {
	/*background:#000;
	background: transparent url(TM_Web_Assets_Dropdown_Menu_Form_White_Arrow.svg) left 2rem center no-repeat;
	background-size: 0.75rem 0.75rem;*/
	color:#fff;
}

.selectioncount {
	font-size:.9rem;
}


/* end pseudoselect control */

/* begin pseudoselect control */
.pseudoselect.filter {
	position:relative;
	display:inline-block;
	width:25rem;
	top:0;
	padding: 0;
	min-height:1.475rem;
	line-height:1.475rem;
	font-size:0.875rem;
	color:#000;
	border: 1px none #3B3B3B;
	border-width: 0 0 1px 0;
	/*background:#000;*/
	outline:none;
	margin-bottom:0;
	/*background: transparent url(IS_Dropdown_Arrow_Down_Revised.svg) right .75rem center no-repeat;
	background-size: 0.75rem 0.4375rem;
	background: transparent url(Plus_Icon_Grey.svg) left 2rem center no-repeat;
	background-size: 0.75rem 0.75rem;*/
	cursor:pointer;
	text-align:left;
	text-transform:uppercase;
	font-family: "MF-SpazioLC-Medium";
	letter-spacing:0.476px;
	outline:1px none blue;
	margin-left:1.875rem;
}
.filter-right .pseudoselect.filter {
	text-align:right;
}
.pseudoselect.filter:hover {
	/* color:#E2661F; */	
}
.pseudoselect.filter .selectiontext {
	position:absolute;
	left:0;
	top:0;
	width:auto;
	height:auto;
	outline:1px none red;
	text-transform:uppercase;
	opacity:1;
	padding-right:1rem;
	background:url(sort-arrow.svg) right top .5rem no-repeat;
	background-size: .5rem;
}
.filter-right .pseudoselect.filter .selectiontext {
	left:auto;
	right:0;
}

.pseudoselect.filter .selectiontext:before {
	content:'';
	width:100%;
	height:0;
	background-color: #C6C6C6;
	position:absolute;
	left:0;
	top:calc(100% - 4px);
	transition:width .5s;		
}
.pseudoselect.filter:hover .selectiontext:before {
	width:100%;
	/* background-color:#E2661F; */
}
.pseudoselect.filter.open .selectiontext {
	opacity:1;
}
.pseudoselect.filter.selectioncount {
	position:absolute;
	left:0;
	top:0;
	width:50%;
	height:auto;
	outline:1px none red;

}
.pseudoselect.filter .activate-button {
	position:absolute;
	right:0;
	top:0;
	width:1rem;
	height:1rem;
	outline:1px none red;
	background: url(arrow-down.svg) center center no-repeat;
	background-size: cover;
	transform:rotate(0);
	transition:transform .25s;
	display:none;
}
.pseudoselect.filter.errorstate .activate-button {
	background: url(select-arrow.svg) center center no-repeat;
	background-size: cover;	
}
.pseudoselect.filter.errorstate {
	border-color:#FC4A4A;
	color:#FC4A4A;
}
.pseudoselect.filter.open .activate-button {
	transform:rotate(180deg);
}
.pseudoselect.filter.open.errorstate {
	border-color:#FC4A4A;
	color:#FC4A4A;
}
.pseudoselect.filter .psselections {
	position:absolute;
	/* max-height:9.375rem; */
	height:0;
	left:0;
	/*right:0;*/
	width:100%;
	top:1.475rem;
	margin: 0;
	padding:0;
	font-size: 0.8125rem;
	color:#fff;
	background-color: #F2F2F2;
	border-radius:.5rem;
	border-width:0 1px 1px 1px;
	border:none;
	overflow:hidden;
	/* display:none; */
	z-index:10000;
	outline:1px none red;
	font-family: "MF-SpazioLC-Medium";
	letter-spacing:1px;
	text-transform:uppercase;
	margin-bottom:2rem;
	transition:height .5s, padding .5s;
}

.pseudoselect.filter.open .psselections {
/* 	padding:.25rem 0 1rem 0;
	margin-bottom:40px; 
	transition:height .5s, padding .5s; */
	padding-top:1rem;
}

.pseudoselect.filter .psselections label {
	position:relative;
	display:block;
	font-size: 0.75rem;
	color:#000;
	cursor:pointer;
	text-align:left;
	background-color:transparent;
	height:.685rem;
	line-height:1;
	vertical-align:middle;
	text-transform:none;
	font-family: "MF-SpazioLC-Medium";
	border:none;
	padding:0;
	/* min-height:1.5rem; */
	outline:1px none red;
}

/*.pseudoselect.filter .psselections label:before {
	content:'';
	width:100%;
	height:1px;
	background-color: var(--link-color-dark);
	position:absolute;
	left:0;
	top:calc(100% - 6px);
	transition:width .5s;	
}
.pseudoselect.filter .psselections label:hover:before {
	width:100%;
}*/

.filter-right .pseudoselect.filter .psselections label {
	text-align:right;
}
.pseudoselect.filter .psselections label span {
	color:#000;
}
.pseudoselect.filter .psselections label:hover {
	/*background:#000;
	background: transparent url(TM_Web_Assets_Dropdown_Menu_Form_White_Arrow.svg) left 2rem center no-repeat;
	background-size: 0.75rem 0.75rem;*/
	color:#000;
}

.selectioncount {
	font-size:.9rem;
}

.pseudoselect.filter input[type=radio].single-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

.pseudoselect.filter input[type=radio].single-check + span {
	position:relative;
	font-size: 0.75rem;
	color:#000;
	cursor:pointer;
	padding-left:0;
	text-transform:none;
	font-family:ReplicaLLWeb-Bold;
	letter-spacing:0.408px;
	text-transform:uppercase;
	font-family: "MF-SpazioLC-Medium";
}

/*.pseudoselect.filter input[type=radio].single-check + span:before {
	content:'';
	width:0;
	height:1px;
	background-color: var(--link-color-dark);
	position:absolute;
	left:0;
	top:100%;
	transition:width .5s;	
}

.pseudoselect.filter .psselections label:hover input[type=radio].single-check + span:before {
	width:100%;
}*/

.pseudoselect.filter .psselections label:hover input[type=radio].single-check + span {
	color:#BFBFBF;	
}
.pseudoselect.filter input[type=radio].single-check:checked + span {
	color:#BFBFBF;
}


/* end pseudoselect control */

input[type=radio].single-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

input[type=radio].single-check + span {
	font-size: 1rem;
	color:#fff;
	cursor:pointer;
	padding-left:0;
	text-transform:none;
	font-family:ReplicaLLWeb-Bold;
	letter-spacing:1px;
	text-transform:uppercase;
	font-family: "MF-SpazioLC-Medium";
}
.psselections label:hover input[type=radio].single-check + span {
	color:#E2661F;	
}
input[type=radio].single-check:checked + span {
	color:#fff;
}

input[type=checkbox].multi-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

input[type=checkbox].multi-check + span {
	font-size: 0.9825rem;
	color:#8B8B8B;
	cursor:pointer;
	padding-left:0;
}
.psselections label:hover input[type=checkbox].multi-check + span {
	color:#FAFAFA;
}
input[type=checkbox].multi-check:checked + span {
	color:#FAFAFA;
}


input, textarea, select {
	-webkit-appearance: none;
	border-radius:0;
}

input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],textarea,select {
	font-family:MF-SpazioLC-Medium;
	width:100%;
	height:auto;
	padding:0;
	font-size:1rem;
	color:#fff;
	background:transparent;
	outline:1px none red;
/* 	border:1px dashed #3B3B3B;
	border-width:0 0 1px 0; */
	border:none;
	letter-spacing:0.16px;
	text-transform:uppercase;
}
input[type=text].errorstate,input[type=email].errorstate,input[type=password].errorstate,input[type=number].errorstate,input[type=tel].errorstate,input[type=submit].errorstate,textarea.errorstate,select.errorstate {
	color:#ff0000;
}


textarea {
	font-family:MF-SpazioLC-Medium;
	font-size:1rem;
	display: block;
	color:#fff;
	border:1px solid #3B3B3B;
	border-width:0 0 1px 0;
	height:5rem;
	resize: none;
	line-height:1.25;
	letter-spacing:0.16px;
	text-transform:uppercase;
	width:75%;
}

/* begin custom file input control */

.custom-file-upload {
	display:inline-block;
	font-size:0;
	width:100%;
	height:auto;
	color:#FAFAFA;
	border:1px solid #343434;
	border-width:0 0 1px 0;
	background:transparent;
	padding:0;
	overflow:hidden;
	/*padding:0.375rem 0 0.375rem 0;*/
	height:1.85rem;
}

.custom-file-upload .filename-display {
	display:inline-block;
	width:63%;
	font-size: 0.9825rem !important;
	padding:0;
	height:auto;
	outline:1px none red;
	margin:0;
}
.custom-file-upload .btn {
	position:relative;
	display:inline-block;
	width:36%;	
	background:transparent url(Elita_Web_Desktop_Assets_Attachment_Icon.svg) right center no-repeat;
	background-size: 14px 14px;
	color:#FAFAFA;
	cursor:pointer;
	padding:0;
	font-size: 0.9825rem;
	text-align:center;
	border:1px none #FAFAFA;
	border-width:0 0 0 1px;
	cursor:pointer;
	margin:0;
}
/*.custom-file-upload .btn:hover {
	background:#ededed;
	color:#272727;
}*/

.custom-file-upload.errorstate {
	color:#FC4A4A;
	/*border:1px solid #FC4A4A;*/
	border-color:#FC4A4A;
}

/*.custom-file-upload.errorstate .btn {
	border-color:#CE1E1E;
	color:#CE1E1E;
}
.custom-file-upload.errorstate .btn:hover {
	background:#CE1E1E;
	color:#ededed;
}*/
.custom-file-upload .btn input[type=file] {
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	opacity:0;
	cursor:pointer;
}

/*.upload-btn-wrapper {
  position: relative;
  overflow: hidden;
  display: inline-block;
  width:100%;
}

.btn {
  border: 2px solid gray;
  color: gray;
  background-color: white;
  padding: 8px 20px;
  border-radius: 8px;
  font-size: 20px;
  font-weight: bold;
}

.upload-btn-wrapper input[type=file] {
  font-size: 100px;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
}*/

/* end custom file input control */

/*input[type=submit] {
	position:relative;
	width:auto;
	background:#ededed;
	color:#272727;
	cursor:pointer;
	border:1px solid #ededed;
	padding:.75rem;
	font-size:1rem
}
input[type=submit]:hover {
	color:#272727;
	background:#D0D0D0;
}
input[type=submit].errorstate {
	width:auto;
	background:transparent;
	color:#CE1E1E;
	cursor:pointer;
	border:1px solid #CE1E1E;
	padding:.75rem;
	font-size:1rem
}
input[type=submit].errorstate:hover {
	color:#ededed;
	background:#CE1E1E;
}

input[type=submit].disabled {
	opacity:0.5;
}

input[type=submit]:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:10px;
	background:red;
	z-index:100;
}
*/

button[type=submit] { 
	position:relative;
	font-family:MF-SpazioLC-Medium;
	width:11.25rem;
	height:2.0625rem;
	font-size: 0.75rem;
	color:#FFFFFF;
	background-color:rgba(255,255,255,0.1);
	outline:none;
	border:1px none #6C6C6C;
	letter-spacing:1px;
	cursor:pointer;
	/*margin-top:1.25rem;
	margin-left:2.125rem;*/
	padding:0;
	text-transform:uppercase;
	transition: background-color .25s, color .25s;
}
button[type=submit]:before { 
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background-color:rgba(255,255,255,0.4);
	width:0;
	transition: width .5s;
}
button[type=submit]:hover:before {
	width:100%;
}
button[type=submit].errorstate {
	color:#fff;
}
button[type=submit].errorstate:hover {
	color:#fff;
}
/*button[type=submit]:before {
	content:'';
	position:absolute;
	right:2rem;
	top:50%;
	transform:translateY(-50%);
	width:.75rem;
	height:.75rem;
	background:url(TM_Web_Assets_Desktop_Submit_Arrow_Black.svg) center center no-repeat;
	background-size:cover;
	opacity:0;
	transition: opacity .5s;
}

button[type=submit] span {
	position:relative;
	left:0;
	transition: left .5s;
}

button[type=submit]:hover span {
	left: -30%;
}
button[type=submit]:hover:before {
	opacity:1;
}*/

button[type=submit].disabled {
	opacity:0.5;
}

button[type=submit] .progress-indicator {
	position:absolute;
	left:-1px;
	top:-1px;
	width:0;
	height:3px;
	background:#272727;
}

/*button[type=submit]:before {
	content:'';
	position:absolute;
	left:-1px;
	top:-1px;
	width:0;
	height:0;
	background:#272727;
	z-index:100;
	transition: width 4s;
}
*/
/*.processing button[type=submit] {
	border-top:none;
}*/
.processing > * {
	opacity:.5;
}
/*.processing button[type=submit]:before {
	width:calc(100% + 1px);
	height:3px;
}*/
/* begin custom checkbox */

label.checkboxcontainer {
	display:inline-block;
	font-size: .75rem;
	color:#D6D6D6 !important;
	vertical-align:middle;
	cursor:pointer;
}
label.checkboxcontainer a {
	text-decoration:underline;
}
label.checkboxcontainer:hover {
	color:#D6D6D6;
}
label.checkboxcontainer input[type=checkbox] {
	width:0px;
	height:0px;
	position:absolute;
	left:-9999px;
}
label.checkboxcontainer input[type=checkbox] + span {
	display:inline-block;
	vertical-align:middle;
	width:0.75rem;
	height:0.75rem;
	margin-bottom:1px;
	margin-right:0.625rem;
	/*background:url(CY_Tick_Box.svg) left top no-repeat;
	background-size:100%;*/
	border:1px none #D6D6D6;
	background:rgba(255,255,255, 0.1);
	outline:1px none red;
	border-radius:50%;
}

label.checkboxcontainer input[type=checkbox]:checked  + span {
	background:rgba(255,255,255, 0.4);
}

label.checkboxcontainer:hover input[type=checkbox]  + span {
	background:rgba(255,255,255, 0.4);
}

label.checkboxcontainer input[type=checkbox] + span.labeltext {
	color:#D6D6D6 !important;
}

label.checkboxcontainer input[type=checkbox]:checked  + span.labeltext {
	color:#D6D6D6 !important;
}

label.checkboxcontainer:hover input[type=checkbox]  + span.labeltext {
	color:#D6D6D6;
}

label.checkboxcontainer.errorstate {
	color:#FC4A4A;
}

label.checkboxcontainer.errorstate input[type=checkbox] + span {
	border:1px solid #FC4A4A;
	background:transparent;
	
}
label.checkboxcontainer.errorstate input[type=checkbox]  + span.labeltext {
	color:#FC4A4A;
}

/* end custom checkbox */



.searchcontainer ::placeholder {
   color:#000;
}
.searchcontainer :hover::placeholder {
   color:#000;
}
.searchcontainer :focus::placeholder {
   color:#000;
}

::-webkit-input-placeholder {
   color:#2F2F2F;
}
:hover::-webkit-input-placeholder {
   color:#2F2F2F;
}
:focus::-webkit-input-placeholder {
   color:#2F2F2F;
}


:-moz-placeholder { /* Firefox 18- */
   color:#848484;
   opacity:1;
}
:hover:-moz-placeholder { /* Firefox 18- */
   color:#848484;
   opacity:1;
}
:focus:-moz-placeholder { /* Firefox 18- */
   color:#848484;
   opacity:1;
}

::-moz-placeholder {  /* Firefox 19+ */
  color:#848484;
}
:hover::-moz-placeholder {  /* Firefox 19+ */
   color:#848484;
}
:focus::-moz-placeholder {  /* Firefox 19+ */
   color:#848484;
}

:-ms-input-placeholder {  
   color:#848484;
}
:hover:-ms-input-placeholder {  
   color:#848484;
}
:focus:-ms-input-placeholder {  
   color:#848484;
}

.errorstate::-webkit-input-placeholder {
   color:red;
}

.errorstate:-moz-placeholder { /* Firefox 18- */
  color:red;
  opacity:1;
}

.errorstate::-moz-placeholder {  /* Firefox 19+ */
   color:red;
   opacity:1;
}

.errorstate:-ms-input-placeholder {  
   color:red;
}


::placeholder {
  
   color:#000;
   opacity:1;
}
:hover::placeholder{
   color:#000;
   opacity:1;
}
:focus::placeholder {
   color:#000;
   opacity:1;
}

.errorstate::placeholder {  
   color:red;
   opacity:1;
}

/** begin form field labels extension **/

.field-separator {
	position:relative;
}
.field-separator:before {
	content:'';
	position:absolute;
	right:.75rem;
	top:55%;
	width:auto;
	height:50%;
	background:transparent;
	opacity:0;
	transition:opacity 1s;
	padding:2px 5px 2px 5px;
	border:1px solid #ccc;
	border-width: 0;
	text-align:right;
	z-index:2;
	vertical-align:middle;
	transform:translateY(-50%);
	font-size:.75rem;
	visibility:hidden;
}

.field-separator.field-error:before {
	color:#CE1E1E;
}

.field-separator.label-shown:before {
	content:attr(data-before);
	opacity:.75;
	visibility:visible;
}

.field-separator.textarea-container.label-shown:before {
	content:attr(data-before);
	opacity:.75;
	visibility:visible;
	top:32%;
}

.field-separator.listcontainer.label-shown:before {
	content:attr(data-before);
	opacity:.75;
	visibility:visible;
	top:50%;
}
.field-separator.listcontainer.label-shown.other:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:35%;
}
.field-separator.textcontainer.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:55%;
}
.field-separator.deep.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:77%;
}
.field-separator.deep2.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:95%;
}
/** begin form field labels extension **/


/******* End Form Styles *******/

/*#footersubscribe #footer_subscribe_email::placeholder {
	color:#eaeaea !important;
	opacity:1 !important;
}*/

/*************************** end form field styles ***************************/


.slideimage {
	width:100%;
	height:auto;
}

.dummyspacer {
	width:100%;
	height:auto;
}

.logoblocker {
	position:absolute;
	width:100%;
	height:100%;
	background:transparent;
	left:0;
	bottom:0;
}
/*** Begin Video Player Module ***/

.videocontainer {
	padding-bottom:0rem;
	outline:none;
	background:transparent;
}
.videocontainer * {
	outline:none;
}
.video-wrapper {
	position:relative;
	left:-1px;
	width:calc(100% + 1px);
	margin-bottom:0;
	background:transparent;
}

.video-container {
    position: relative;
	width:100%;
    padding-bottom: 56.25%;
    height: 0; overflow: hidden;
	background:transparent;
	outline:1px none red;
}

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

/*.video-container iframe,
.video-container object,
.video-container video,
.video-container embed {
    position: absolute;
    top: 50%;
    left: 50%;
	width:50%;
	height:50%;
	background:transparent;
	transform:translate(-50%,-50%);
}*/

.slidelink.playicon {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: transparent;
    color: transparent;
    z-index: 2;
    background: url(Doma_Desktop_Film_Off.svg) center center no-repeat;
    background-size: 9.375rem 9.375rem;
}

.slidelink.playicon:hover {
    background: url(Doma_Desktop_Film_On.svg) center center no-repeat;
    background-size: 9.375rem 9.375rem;
}

/*** End Video Player Module ***/



/*************************** end component styles ***************************/

/*************************** begin utility styles ***************************/

.fullscreen-overlay {
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100vh;	
/* 	background:#1A1A1A url(fullscreen-background.jpg) center center no-repeat;
	background-size:cover; */
	background:rgba(233,233,233,0.95);
	z-index:1001;
	padding:0;
	/* transform:translateY(-100vh); */
/* 	transition:transform 1s cubic-bezier(.86,.04,.33,.99);
	transition:transform 1s cubic-bezier(0.77, 0.01, 0.83, 0.33);
	transition:transform 1s cubic-bezier(1.00, 0.00, 0.94, 1.00); */
	/* transition:opacity 1s; */
	overflow:hidden;
	display:none;
}

/*.fullscreen-overlay * {
	opacity:0;
	transition:opacity .5s;
}*/

.fullscreen-overlay.shown {
	/* transform:translateY(0) */;
/* 	transition:transform 1s cubic-bezier(0.67, 0.01, 0.14, 0.96);
	transition:transform 1s cubic-bezier(.17,.67,.23,.99);
	transition:transform 1s cubic-bezier(.06,0,0,1); */
	/* opacity:1; */
}

/*.fullscreen-overlay.shown * {
	opacity:1;
}*/

.fullscreen-overlay img.lightbox-image {
	position:absolute;
	left:50%;
	top:50%;
	width:auto;
	height:auto;
	transform:translate(-50%,-50%);
	outline:1px none red;
	max-width:calc(100% - 1rem);
	max-height:calc(100% - 1rem);
	border-radius:0.5rem;
}

.fullscreen-overlay #form-close-button {
	position:absolute;
	right:1.5625rem;
	top:1rem;
	width:1.5625rem;
	height:1.5625rem;
	cursor:pointer;
	z-index:100;
	font-family: "MF-SpazioLC-Medium";
	font-size:0.8125rem;
	color:#fff;
	letter-spacing:0.52px;
	background:url(overlay-close.svg) center center no-repeat;
	background-size:cover;
}

/* Begin clearfix hack */
/* For modern browsers */
.cf:before,
.cf:after {
	content:"";
	display:table;
}
.cf:after {
	clear:both;
}
/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom:1;
}
/* End clearfix hack */


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

	html, body {
		font-size:55%;
	}

}

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

	html, body {
		font-size:100%;
	}

}

/*************************** end utility styles ***************************/

/*************************** begin ie specific styles (bug fixes) ***************************/

/*@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {*/
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) { 

	.searchcontainer input {
		padding-bottom: 3px !important;
		padding-top: 3px !important;
		padding-left: 3px !important;
		padding-right: 3px !important;
	}

}

/*************************** end specific styles ***************************/

/* End Styles */