@charset "utf-8";
/* CSS Document */
/* Default Ironside 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 ***************************/

html,body {
	width:100%;
	height:100%;
	font-size:100%;
	font-size:0.833vw;
	font-size:0.825vw;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-text-size-adjust: none;
	-webkit-touch-callout: none;
}

body {
	background:#272727;
	color:#ededed;
	font-family:"Founders Grotesk Web Regular";
	font-weight:normal;
	text-align:left;
}
body.smooth-scroll {
	scroll-behavior: smooth;
}
img {
	width:100%;
	height:auto;
	margin:0px;
	padding:0px;
}
strong {
	font-weight:bold;
}
em {
	font-family:"Founders Grotesk Web Regular Italic";
}
h1 {
	font-weight:normal;
	font-size:5.5rem;
	line-height:1;
	margin-bottom:3.75rem;	
	width:80%;
}
h2 {
	font-weight:normal;
	font-size:4rem;
}
h3 {
	font-weight:normal;
	font-size:2rem;
	margin-bottom:1.625rem;
}
h4 {
	font-weight:normal;
	font-size:1.8rem;
	margin-bottom:2.1875rem;
}
p {
	font-family:"Founders Grotesk Web Regular";
	font-weight:normal;
	font-size:1.4rem;
	margin-bottom:3.5625rem;
	margin-bottom:2.1875rem;
	line-height:1.3;
}
p.last-in-group {
	margin-bottom:3.5625rem;
}
p.half-width {
	width:50%;
}
a {
	text-decoration:none;
	color:inherit;
	transition:color .25s;
}
a:hover {
	text-decoration:none;
	color:#8D8D8D;
}
a.showmap:hover {
	color:#8D8D8D;
}
a.showmap.active {
	color:#8D8D8D;
}

blockquote {
	border:1px solid #ededed;
	border-width: 0 0 0 1px;
	padding-left:2rem;
	font-size:1.4rem;
	width:50%;
	margin-bottom:2.1875rem;
}

blockquote p {
	font-size:1.4rem !important;
}


ul {
	list-style-type: none;
	margin-bottom:2.1875rem;
	font-size:1.2rem;
}

li {
	position:relative;
	margin-left:2rem;
	display:block;
	line-height:1.5;
}

li:before {
	position:absolute;
	left:-2rem;
	top:0;
	content:'-';
}

hr {
	width:100%;
	margin-bottom:1rem;
}

.seo {
	position:absolute;
	left:-10000px
}
.upper {
	text-transform:uppercase;
}

.left {
	float:left;
}
.right {
	float:right;
}
.text-left {
	text-align:left;
}
.text-right {
	text-align:right;
}

.font-light {
	font-family:"Founders Grotesk Web Light";
}

.dark a.button {
	display:inline-block;
	text-align:center;
	font-size:1.1rem;
	border:1px solid #ededed;
	color:#272727;
	background:#ededed;
	height:2.375rem;
	line-height:2.2rem;
	width:9rem;
	transition: background-color .25s, color .25s;
}
.dark a.button:hover {
	color:#272727;
	background:#C4C4C4;	
	border-color:#C4C4C4;	
}

/**** Begin Light Table ****/
.light table {
	border-collapse: collapse;
	border-spacing: 0;
	width:100%;
}
.light tr {
	background-color:transparent;
	transition: background-color 1.5s;
	/*transition-delay:1s;*/
}
.light tbody tr:first-of-type {
	border:1px solid #272727;	
	border-width:2px 0 0 0;
}
.light th,.light td {
	padding:1rem 0 1rem .5rem;
	font-size:1.2rem;
	overflow:hidden;
}
.light th {
	font-size:1.4rem;
}
.light td {
	background-color:transparent;
	color:#272727;
	border:1px solid #272727;
	border-width:0 0 2px 0;
	transition: color .4s, background-color .4s;
	
}
th:hover {
	
}
.light tr:hover td {
	background-color:#272727;
	color:#ededed;
	cursor:pointer;
}
.light tr:hover td:last-of-type {
	background-image:url(IS_Arrow_Right.svg);
	background-position: right .5rem top 1rem;
	background-repeat: no-repeat;
	background-size:1.6875rem 1.375rem;
}

.light tr.selected {
	background-color:#272727;
	transition: background-color 1.5s;
}

.light tr.selected td {
	background-color:#272727;
	color:#ededed;
	cursor:pointer;
	border:0;
}
.light tr.selected td:last-of-type {
	background-image:url(IS_Arrow_Down.svg);
	background-position: right .5rem top .75rem;
	background-repeat: no-repeat;
	background-size:1.4375rem 1.625rem;
}

.light td .short-details {
	position:relative;
	/*display:none;*/
	padding-right:2rem;
	border:none;
	/*margin:2rem 0 2rem 0;*/
	max-height:0;
	overflow:hidden;
	transition: max-height 1s, margin-top 1s, margin-bottom 1s, opacity .5s;
	opacity:0;
}

.light tr.selected td .short-details {
	max-height:25rem;
	margin:6.25rem 0 6.25rem 0;
	transition: max-height 1s, margin-top 1s, margin-bottom 1s, opacity 2.5s;
	opacity:1;
}

.light td .short-details p {
	font-size:1.2rem;
	margin-bottom:3.75rem;
	line-height:1.5;
}
.light td .short-details p:last-of-type {
	margin-bottom:0;
}

.light td .short-details a.button {
	display:inline-block;
	text-align:center;
	font-size:1.1rem;
	border:1px solid #ededed;
	color:#ededed;
	background:transparent;
	height:2.375rem;
	line-height:2.2rem;
	width:8rem;
	transition: background-color .25s, color .25s;
}
.light td .short-details a.button:hover {
	color:#272727;
	background:#ededed;	
}
.light th .date-sort, .light th .location-sort, .light th .status-sort, .light th .type-sort {
	padding-left:1.4rem;
	background:url(IS_Dropdown_Filter_Slim_Arrow_Down.svg) left center no-repeat;
	background-size:0.875rem 0.9375rem;
	cursor:pointer;
}

.light th .date-sort.asc, .light th .location-sort.asc, .light th .status-sort.asc, .light th .type-sort.asc {
	padding-left:1.4rem;
	background:url(IS_Dropdown_Filter_Slim_Arrow_Up.svg) left center no-repeat;
	background-size:0.875rem 0.9375rem;
	cursor:pointer;
}

/**** End Light Table ****/

/**** Begin Dark Table ****/
.dark table {
	border-collapse: collapse;
	border-spacing: 0;
	width:100%;
}
.dark.downloads table {
	margin-bottom:2rem;
}
.dark tr {
	background-color:transparent;
	transition: background-color 1.5s;
	/*transition-delay:1s;*/
}
.dark th,.dark td {
	padding:1rem 0 1rem .5rem;
	font-size:1.2rem;
	overflow:hidden;
}
.dark th {
	font-size:1.4rem;
}
.dark td {
	background-color:transparent;
	color:#ededed;
	border:1px solid #ededed;
	border-width:0 0 2px 0;
	transition: color .2s, background-color .2s;
	
}
.dark.downloads td {
	padding-right:1rem;
}
.dark th:hover {
	
}
.dark tr:hover td {
	background-color:#3E3E3E;
	color:#ededed;
	cursor:pointer;
}
.dark tr:hover td:last-of-type {
	background-image:url(IS_Arrow_Right.svg);
	background-position: right .5rem top 1rem;
	background-repeat: no-repeat;
	background-size:1.6875rem 1.375rem;
}

.dark tr.selected {
	background-color:#272727;
	transition: background-color 1.5s;
}

.dark tr.selected td {
	background-color:#272727;
	color:#ededed;
	cursor:pointer;
	border:0;
}
.dark tr.selected td:last-of-type {
	background-image:url(IS_Arrow_Down.svg);
	background-position: right .5rem top .75rem;
	background-repeat: no-repeat;
	background-size:1.4375rem 1.625rem;
}

.dark td .short-details {
	position:relative;
	/*display:none;*/
	padding-right:2rem;
	border:none;
	/*margin:2rem 0 2rem 0;*/
	max-height:0;
	overflow:hidden;
	transition: max-height 1s, margin-top 1s, margin-bottom 1s, opacity .5s;
	opacity:0;
}

.dark tr.selected td .short-details {
	max-height:20rem;
	margin:2rem 0 2rem 0;
	transition: max-height 1s, margin-top 1s, margin-bottom 1s, opacity 2.5s;
	opacity:1;
}

.dark td .short-details p {
	font-size:1.2rem;
}

.dark td .short-details a.button {
	display:inline-block;
	text-align:center;
	font-size:1.1rem;
	border:1px solid #ededed;
	color:#ededed;
	background:transparent;
	height:2.375rem;
	line-height:2.2rem;
	width:8rem;
	transition: background-color .25s, color .25s;
}
.dark td .short-details a.button:hover {
	color:#272727;
	background:#ededed;	
}
.dark th .date-sort, .dark th .location-sort, .dark th .status-sort, .dark th .type-sort {
	padding-left:1.4rem;
	background:url(IS_Dropdown_Filter_Slim_Arrow_Down.svg) left center no-repeat;
	background-size:0.875rem 0.9375rem;
	cursor:pointer;
}

.dark td a.actionlink:hover {
	color:#8D8D8D;
	text-decoration:underline;
}

/**** End Dark Table ****/

/*************************** End general document styles ***************************/


/*************************** begin structural styles ***************************/

.carousel-video {
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
}

.navigationoverlay {
	position:fixed;
	width:100%;
	left:0;
	top:0;
	height:100%;
	background:rgba(0,0,0,0.80);
	display:none;
	z-index:1002;
}

/*.panelcontent img {
	width:10.78125rem;
	height:auto;
}*/
.panelcontent img:hover {
	opacity:0.75;
}

.menupanelclosebutton {
	position:absolute;
	display:block;
	left:3.125rem;
	top:3.125rem;
	width:1.1875rem;
	height:1.1875rem;
	background:url(IS_Close_Icon.svg) left top no-repeat;
	background-size:cover;
}

.menupanel-info {
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	min-height:10rem;
	outline:1px none red;
	display:flex;
}
.menupanel-info .column {
	position:relative;
	width:33.33%;
	display:inline-block;
	padding-left:3.125rem;
	outline:1px none blue;
	height:100%;
}
.menupanel-info .column p {
	font-size:1.2rem;
	line-height:1.8;
}
.menupanel-info .column a {
	text-decoration:none;
}

.leftpanel {
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100%;
	z-index:1002;
	transform: translateX(-100%);
	transition:transform 0.5s cubic-bezier(0.42, 0, 0.88, 0.19);
	transition:transform 0.5s linear;
	transition:transform 1s cubic-bezier(0.420, 0.000, 0.580, 1.000); /* ease-in-out */
	background-color:transparent;
	opacity:1;
	overflow:auto;
	overflow-x:hidden;
	overflow:hidden;
}
.panelwrap {
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	min-height:100%;
}
.panelcontent {
	position:relative;
	width:50%;
	text-align:left;
	cursor:default;
	transform: translateX(0);
	transition:transform 0.25s linear;	
	min-height:100%;
	padding: 3.125rem 9.5625rem 3.125rem 3.125rem;
	text-align:left;
	background-color:#ededed;
	color:#272727;
}

.leftpanel .closearea {
	position:relative;
	width:calc(50% - 50px);
	background-color:red;
	min-height:100%;
	outline:1px solid red;
	
	position:fixed;
	right:0;
	top:0;
	width:50%;
	background-color:transparent;
	min-height:100%;
	display:none;
	outline:1px none red;
	z-index:1003;
}

.leftpanel.open {
	left:0;
	transform: translateX(0);
	transition:transform 0.25s cubic-bezier(0.42, 0, 0.88, 0.19);
	transition:transform .5s linear;
}
.leftpanel.open.nudge .panelcontent {
	transform: translateX(-10px);
	transition:transform 0.25s linear;	
}

/* Begin Main Menu Styles */

.mainmenu {
	position:absolute;
	list-style:none;
	text-align:left;
	left:3.125rem;
	top:10.5625rem;
	margin-left:0;
}
.mainmenu ul {
	
}
.mainmenu > li {
	opacity:0;
	font-size:2.5rem;
	transform: translateX(-2.5rem);
	transition: transform 1000ms ease, opacity 2000ms ease;
	transition-delay:0;
	margin-bottom:1rem;
	margin-left:0;
	padding-left:0;
	line-height:1.2;
}

.mainmenu > li:before {
	content:'';
	margin-left:0;
	display:none;
	line-height:1.5;
	
}

.menupanel.open .mainmenu > li {
	transform: translateX(0);
	opacity:1;
	transition: transform 1000ms ease, opacity 2000ms ease;
	
}
.menupanel.open .mainmenu > li:nth-child(1) {
	transition-delay: 500ms;
}
.menupanel.open .mainmenu > li:nth-child(2) {
	transition-delay: 600ms;
}
.menupanel.open .mainmenu > li:nth-child(3) {
	transition-delay: 700ms;
}
.menupanel.open .mainmenu > li:nth-child(4) {
	transition-delay: 800ms;
}
.menupanel.open .mainmenu > li:nth-child(5) {
	transition-delay: 900ms;
}
.menupanel.open .mainmenu > li:nth-child(6) {
	transition-delay: 1000ms;
}
.menupanel.open .mainmenu > li:nth-child(7) {
	transition-delay: 1100ms;
}
.mainmenu > li > a {
	display:block;
	text-decoration:none;
	color:#272727;
	transition: color 0.2s ease-in-out;
}
.mainmenu > li:hover > a {
	color:#8D8D8D;
}
.mainmenu > li.selected > a {
	color:#8D8D8D;
}

/* End Main Menu Styles */

/* Begin search styles */

.searchcontainer {
	position:relative;
	margin-top:4rem;
	margin-bottom:3rem;
	border:1px solid #000;
	border-width: 0 0 1px 0;
}

.searchcontainer input[type=text] {
	width:calc(100% - 1.5rem);
	vertical-align:middle;
	font-size:1.2rem;
	margin-bottom:1rem;
	color:#272727;
	border:none;
	background:transparent;
}

.searchcontainer input[type=submit] {
	width:1.1875rem;
	height:1.1875rem;
	background:url(IS_Search_X.svg) center center no-repeat;
	background-size:cover;
	vertical-align:middle;
	border:none;
	padding:0;
	margin-bottom:.5rem;
}
.searchcontainer a#formreset {
	position:relative;
	display:inline-block;
	width:1.1875rem;
	height:1.1875rem;
	background:url(IS_Search_X.svg) center center no-repeat;
	background-size:cover;
	vertical-align:middle;
	border:none;
	padding:0;
	margin-bottom:.5rem;
}
.searchresults p {
	font-size:1rem;
	line-height:1.6;
}
.searchresults .carousel {
	margin-bottom:2rem;
}

.searchresults ul.rig {
	list-style: none;
	font-size: 0px;
	margin-left: -3%; /* should match li left margin */
	margin-bottom:0;
	overflow:hidden;
	outline:1px none red;
}
.searchresults ul.rig li {
	display: inline-block;
	padding: 0px 0px 0px 0px;
	margin: 0 0 0 3%;
	background: #272727;
	font-size: 16px;
	font-size: 1rem;
	vertical-align: top;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	text-align:center;
}
.searchresults ul.rig.threecolumn li {
	width: 24.33%; /* this value + 3.7 should = 33.33% */
	margin-bottom:48px;
}

.searchresults ul.rig.twocolumn li {
	width: 47%; /* this value + 3.7 should = 50% */	
	margin-bottom:16px;
	transition: color .2s;
}

.searchresults ul.rig.twocolumn li:hover * {
	cursor:pointer;
}

.searchresults ul.rig img {
	width:100%;
	height:auto;
	vertical-align:top;
	-moz-transition: all 0.25s;
	-webkit-transition: all 0.25s;
	transition: all 0.25s;
	cursor:pointer;
	opacity:1;
}
.searchresults ul.rig img:hover {
	opacity:0.8;
}
/*.searchresults ul.rig img:hover {
	-moz-transform: scale(1.025);
	-webkit-transform: scale(1.025);
	transform: scale(1.025);	
}*/

.searchresults .panel-grid-item {
	position:relative;
	outline:1px none red;
}

.searchresults .panel-grid-item p {
	position:absolute;
	left:1rem;
	top:.5rem;
	width:auto;
	color:#ededed;
	font-size:1.4rem;
	transition:color .25s;
}
.searchresults .panel-grid-item:hover p {
	color:#ededed;
}

.searchresults .controls {
	float:right;
}
.searchresults .controls span {
	display:inline-block;
	min-width:.7rem;
	outline:1px none red;
	font-size:1.4rem;
	text-align:center;
}
.searchresults .controls .prevbutton, .searchresults .controls .nextbutton {
	display:inline-block;
	width:1.0625rem;
	height: 0.9375rem;
	outline:1px none red;
	cursor:pointer;
	
}
.searchresults .controls .prevbutton {
	background:url(IS_Arrow_Right_Black.svg) center center no-repeat;
	background-size:100%;
	transform:rotate(180deg);
	margin-right:1.3125rem;
}
.searchresults .controls .nextbutton {
	background:url(IS_Arrow_Right_Black.svg) center center no-repeat;
	background-size:100%;
	margin-left:1.3125rem;
}

/* end search styles */

/* wrapper to set minimum width */

#wrapper {
	position:relative;
	min-height:100vh;
	background:#ededed;
	color:#272727;
	z-index:2;
	overflow:hidden;
	min-width:1140px;
}

#wrapper.dark {
	background:#272727;
	color:#ededed;	
}

#wrapper > div:not(.hero-carousel):not(.masthead) {
	transform:translateY(9.375rem);
	opacity:0;
	transition:transform 1s ease, opacity 1s ease-in;
}
#wrapper > div.loaded:not(.hero-carousel):not(.masthead) {
	transform:translateY(0);
	opacity:1;
}

#wrapper > div.loaded.notransition:not(.hero-carousel):not(.masthead) {
	transform:none !important;
	transition:none !important;
}
.spacer {
	position:relative;
	width:1px;
	height:35.25rem;
	background:#272727;
}

/* begin masthead */
.masthead {
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:6.5rem;
	background:transparent;
	color:#999;
	display:flex;
	align-items: center;
	outline:1px none red;
	z-index:200;
	transform: translateY(0);
	transition:transform 1s;
}

.masthead .dark-container {
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:rgba(39,39,39,0.6);
	display:flex;
	align-items: center;
	opacity:0;
	z-index:1;
	transition: opacity 1s;
}
.masthead .light-container {
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:rgba(237,237,237,0.6);
	display:flex;
	align-items: center;	
	opacity:0;
	z-index:1;
	transition: opacity 1s;
}

.masthead.dark-version .dark-container {
	opacity:1;
	z-index:2;	
	background:rgba(39,39,39,0.5) !important;
}

.masthead.light-version .light-container {
	opacity:1;
	z-index:2;	
	background:rgba(237,237,237,0.5) !important;
}

.masthead.nav-up {
	transform: translateY(-100%);
	transition:transform 1s;
}

.masthead .logo {
	width:50%;
	text-align:right;
	padding-right:2.4%;
	outline:1px none red;
}
.masthead .logo a {
	text-decoration:none;
}
.masthead .logo img {
	width:7.6875rem;
	height:auto;
	cursor:pointer;
}
.masthead .logo img:hover {
	opacity:0.75;
}

.masthead .menu {
	display:flex;
	align-items: center;
	width:50%;
	text-align:left;
	padding-left:2.4%;
	height:2rem;
}
.masthead .menu img.menu-control {
	width:2rem;
	height:auto;
	cursor:pointer;
	margin-right:2.8125rem;
}
.masthead .menu img.search-control {
	width:1.6875rem;
	height:auto;
	cursor:pointer;
}

.masthead .menu img:hover {
	opacity:0.75;
}

/* end masthead */

/* begin main content area 
.main {
	position:relative;
	min-height:500px;
}
.main.black {
	background:#000;
}
 end main content area */

/* begin footer */
.footer {
	position:fixed;
	left:0;
	bottom:0;
	width:100%;
	height:35.5rem;
	background:#272727;
	color:#ededed;
	outline:1px none red;
	z-index: 1;	
	font-size:1.4rem;
}
.footer .column1 {
	position:absolute;
	left:0;
	top:10.4375rem;
	width:25%;
	display:block;
	outline:1px none blue;
	padding-left:3.125rem;
	font-size:1.8rem;
}
.footer .column2 {
	position:absolute;
	left:25%;
	top:10.4375rem;
	width:25%;
	display:block;
	outline:1px none blue;
	padding-left:3.125rem;
	font-size:1.8rem;
}
.footer .column3 {
	position:absolute;
	right:0;
	top:10.4375rem;
	width:31.5rem;
	display:block;
	outline:1px none blue;
	padding-right:3.125rem;
	font-size:1.8rem;
}

.footer .column1 p,.footer .column2 p {
	line-height:1.6;
}
.footer .column3 p {
	font-size:1.2rem;
}

.footer .column3 .error {
	font-size:1.2rem;
	color:#CE1E1E;
	display:none;
}

#footersubscribe {
	display:block;
	width:auto;
	text-align:right;
	padding-bottom:1.2rem;
}
#footersubscribe #footer_subscribe_email {
	width:18.7rem;
	display:inline;
	margin-right:0;
	margin-right:0;
	color:#eaeaea;
	font-size:1rem;
	outline:1px none red;
	padding:.75rem;
	border:1px solid #eaeaea;
	background:transparent;
	margin-bottom:.5rem;
}


#footersubscribe #footer_subscribe_email.processing {
	width:0px;
	opacity:0;
	transition: width 1s ease, opacity 1s ease;
}
#footersubscribe #footer_subscribe_submit {
	width:9.625rem;
	display:inline;
	background-color:#eaeaea;
	color:#272727;
	font-size:1rem;
	outline:1px none red;
	padding:.75rem;
	border:1px solid #eaeaea;
	cursor:pointer;
}
#footersubscribe #footer_subscribe_submit:hover {
	background-color:#272727;
	color:#ededed;
}
#footersubscribe #footer_subscribe_submit.submitted {
	width:0px;
	opacity:0;
	transition: width 1s ease, opacity 1s ease;
}
#footersubscribe #footer_subscribe_submit.disabled {

}
#footersubscribe #footer_subscribe_thankyou {
	width:16.5625.rem;
	margin-right:5px;
	margin-right:0.3125rem;
	color:#eaeaea;
	font-size:1.2rem;
	display:none;
	float:left;
}
#footersubscribe #footer_subscribe_thankyou.activated {
	width:16.5625.rem;
	margin-right:0.3125rem;
	opacity:1;
}
#footersubscribe #footer_subscribe_spinner {
	display:inline;
	width:30px;
	height:auto;
	vertical-align:middle;
	margin-right:10px;
	margin-right:0.625rem;
	display:none;
}

.footer .links {
	position:absolute;
	left:0;
	bottom:0;
	width:50%;
	padding-left:3.125rem;
	padding-bottom:4.125rem;
	outline:1px none red;
}

.footer .links a {
	margin-right:5.5rem;
}

.footer .uparrow {
	position:absolute;
	right: 3.125rem;
	bottom: 4.125rem;
	width: 1.5625rem;
	height: 1.875rem;
	background:url(IS_Arrow_Up.svg);
	background-size:cover;
	opacity:1;
	transition:opacity .25s;
}
.footer .uparrow:hover {
	opacity:.5;
}

/* 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); }

.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; }

/* 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%; transform:translateY(calc(-50% - 2rem)); 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; }
.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 li a {
	color:#86888b;
	font-weight:normal;
}
.slick-dots li.slick-active a {
	color:#000;
	/*text-decoration:underline;*/
	border:1px solid #000;
	border-width:0 0 1px 0;
}
.slick-dots li:hover a {
	color:#000;
	/*text-decoration:underline;*/
	border:1px solid #000;
	border-width:0 0 1px 0;
}


[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;
}

/* end main slider over-rides */

.content-object {
	position:relative;
	padding:0 2.4% 0 2.4%;
	padding-bottom:12.5rem;
}
.content-object.slightly-short {
	padding-bottom:10.5rem;
}
.content-object.medium-short {
	padding-bottom:9.625rem;
}
.content-object.short {
	padding-bottom:6.25rem;
}
.content-object.very-short {
	padding-bottom:4em;
}
.content-object.long {
	padding-bottom:13.75rem;
}
.content-object.very-long {
	padding-bottom:20rem;
}
.content-object.top-padded {
	padding-top:12.5rem;
}

.content-object.top-padded.lean {
	padding-top:6.25rem;
}

.content-object:last-of-type {
	padding-bottom:6.25rem;
}

.boxcanvas {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background-color:#1d1d1d;
}

.light {
	background:#ededed;
	color:#272727;	
}
.dark {
	background:#272727;
	color:#ededed;	
}

/*************************** begin content objects ***************************/

/*************************** begin hero carousel ***************************/

.hero-carousel {
	height:100vh;
	padding:0;
	background:#272727;
}
.hero-carousel + div {
	padding-top:10.625rem;
}
.hero-carousel .logo {
	position:absolute;
	right:2.4%;
	top:2.875rem;
	top:2.7rem;
	width:7.6875rem;
	height:auto;
	cursor:pointer;
}
.hero-carousel .downarrow {
	position:absolute;
	left:50%;
	bottom:2.6875rem;
	width:1.625rem;
	height:1.875rem;
	background:url(IS_Arrow_Down.svg) center center no-repeat;
	background-size:cover;
	transform:translateX(-50%);
	cursor:pointer;
	z-index: 4;
}
.hero-carousel .controls {
	position:absolute;
	right:2.5%;
	bottom:2.6875rem;
	width:6.75rem;
	min-height:1.1rem;
	outline:1px none red;
	color:#eaeaea;
	text-align:center;
	vertical-align:top;
}

.hero-carousel .controls span {
	display:inline-block;
	/*min-width:.7rem;*/
	outline:1px none blue;
	font-size:1.4rem;
	text-align:center;
}

.hero-carousel .slidenumbers {
	vertical-align:top;
}

.hero-carousel .controls .prevbutton, .hero-carousel .controls .nextbutton {
	position:absolute;
	display:inline-block;
	width:1.0625rem;
	height: 0.9375rem;
	outline:1px none red;
	cursor:pointer;
	
}
.hero-carousel .controls .prevbutton {
	background:url(IS_Arrow_Right.svg) center center no-repeat;
	background-size:100%;
	transform:translateY(-50%) rotate(180deg);
	margin-right:1.2rem;
	left:0;
	top:50%;
}
.hero-carousel .controls .nextbutton {
	background:url(IS_Arrow_Right.svg) center center no-repeat;
	background-size:100%;
	margin-left:1.2rem;
	right:0;
	top:50%;
	transform:translateY(-50%);
}

.hero-carousel .video-control {
	position:absolute;
	left:2.4%;
	bottom:2.875rem;
	width:1.375rem;
	height:1.5625rem;
	background:url(IS_Play_Icon.svg) center center no-repeat;	
	cursor:pointer;
}
.hero-carousel .video-control.playing {
	background:url(IS_Pause_Button.svg) center center no-repeat;
}

.hero-carousel .slide-image {
	position:relative;
	height:100vh;
}

.hero-carousel .slide-image .slide-text {
	position:absolute;
	left:2.4%;
	top:2.875rem;
	font-size:4rem;
	color:#fff;
	line-height:1.2;
}

.fullscreen-bg__video_carousel {
  object-fit: cover;
  width: 100vw;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  opacity:0;
  transition: opacity 1s;
}
.fullscreen-bg__video_carousel.shown {
	opacity:1;
}

/*************************** begin hero carousel ***************************/

/*************************** begin standard text module ***************************/

.standard-text-module {
	position:relative;
	display:grid;
	grid-template-columns:1fr 1fr;
}
.standard-text-module .column {
	position:relative;
}

.standard-text-module h3 {
	font-size:2rem;
}

.standard-text-module p {
	font-size:2rem;
	width:70%;
	line-height:1;
}
.standard-text-module .column p.small-text {
	font-size:1.2rem;
	line-height:1.5;
}
.standard-text-module p:last-of-type {
	margin-bottom:0;
}

.standard-text-module  a.button {
	display:inline-block;
	text-align:center;
	font-size:1rem !important;
	border:1px solid #272727;
	color:#272727;
	background:ededed;
	height:2.375rem;
	line-height:2.2rem;
	width:9.625rem;
	transition: background-color .25s, color .25s;
	margin-right:1rem;
}

.standard-text-module  a.button:hover {
	color:#ededed;
	background-color:#272727;
}

.standard-text-module.login .column p {
	font-size:1.2rem;
	line-height:1.5;	
}

/*************************** end standard text module ***************************/

/*************************** begin two-column text module ***************************/

.two-column-text-module {
	position:relative;
	display:grid;
	grid-template-columns:1fr 1fr;
}
.two-column-text-module.short {
	padding-bottom:6.875rem;
}
.two-column-text-module .column {
	position:relative;
	outline:1px none red;
}
.two-column-text-module .column img {
	padding-top:.5rem;
}
.two-column-text-module .column.inner {
	display:grid;
	grid-template-columns:1fr 1fr;
	grid-column-gap: 2rem;
}

.two-column-text-module h3 {
	font-size:2rem;
	margin-bottom:0;
}

.two-column-text-module h4 {
	font-family:"Founders Grotesk Web Light";
	font-size:2rem;
	margin-bottom:0;
}

.two-column-text-module p {
	font-size:1.4rem;
}
.two-column-text-module p:last-of-type {
	margin-bottom:0;
}

/*************************** end two-column text module ***************************/

/*************************** begin standard map module ***************************/

.standard-map-module.project {
	position:relative;
	/*padding-bottom:10rem;*/
}

.standard-map-module h3 {
	margin-left:10%;
	margin-bottom: 6.875rem;
}
p.showmapcontainer {
	font-size:1.2rem;
	transform:translate(31.5rem, -7.5rem);
}
.standard-map-module .map-container {
	position:relative;
	width:80%;
	margin:auto;
}
.standard-map-module.project .map-container {
	position:relative;
	width:50%;
	margin:auto;
}
.standard-map-module.project h3 {
	margin-left:25%;
	font-size:1.4rem;
}
.standard-map-module.project .map-container:after {
	padding-top: 56.25%;
	display: block;
	content: '';
}
.standard-map-module.contact h3 {
	margin-left:8.75%;
}
.standard-map-module.contact .map-container {
	position:relative;
	width:82.5%;
	margin:auto;
}
.standard-map-module .map-container img {
	width:100%;
	height:auto;
}

.custom-popup {
	width:280px;
	height:140px;
	outline:1px none red;
	opacity:0;
	animation: fade-in .75s forwards;
	display:grid;
	grid-template-columns:1fr 1fr;
	/*visibility:hidden;*/
	background:#fff;
}
.custom-popup.shown {
	visibility:visible;
}
.custom-popup .popup-column {
	padding:13px;
}
.custom-popup .popup-column h3 {
	font-family:"Founders Grotesk Web Regular";
	margin-bottom:18px;
	font-size:14px;
	color:#000;
	margin-left:0;
}
.custom-popup .popup-column p {
	font-family:"Founders Grotesk Web Light";
	font-size:14px;
	color:#272727;
	line-height:1.2;
}
@keyframes fade-in {
	100% { opacity:1; }
}

/*************************** end standard map module ***************************/

/*************************** begin three column grid module ***************************/
.three-column-grid-module {
	position:relative;
	padding-bottom:10.75rem;

}
.three-column-grid-module h3 {
	font-size:1.4rem;
	margin-bottom:6.25rem;
}
.three-column-grid-module.top-padded {
	padding-top:6.875rem;
}

.three-column-grid-module .grid-container {
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	grid-column-gap: 2rem;
	grid-row-gap: 2rem;
}

.three-column-grid-module .grid-item {
	position:relative;
	overflow:hidden;
	padding:0;
	margin:0;
	outline:1px none red;
}
.three-column-grid-module .grid-item img {
	opacity:.5;
	transition:opacity .5s;
	margin:0;
	padding:0;
	vertical-align:middle;
}
.three-column-grid-module .grid-item:hover img {
	opacity:.9;
}
.three-column-grid-module .grid-item-overlay {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:#000;
	opacity:0.5;
	transition: opacity .5s;
}


.three-column-grid-module .property-title {
	position:absolute;
	left:1.5rem;
	top:1.5rem;
	width:50%;
	margin:0;
}

.three-column-grid-module .property-location {
	position:absolute;
	left:1.5rem;
	bottom:1.5rem;
	width:50%;
	height:auto;
	margin:0;
	opacity:1;
	transition:opacity .5s;
}

.three-column-grid-module .property-cta {
	position:absolute;
	left:1.5rem;
	bottom:1.5rem;
	width:50%;
	height:auto;
	margin:0;
	opacity:0;
	transform:translateY(calc(100% + 1.5rem));
	transition:transform .5s, opacity 1s;
	
}

.three-column-grid-module .grid-item:hover .property-location {
	opacity:0;
}

.three-column-grid-module .grid-item:hover .property-cta {
	transform:translateY(0);
	opacity:1;
	transition-delay:.25s;
}

.three-column-grid-module .grid-item:hover .grid-item-overlay {
	opacity:0;
}

.three-column-grid-module p.loadmore {
	margin-top:8.25rem;
	text-align:center;
}

.three-column-grid-module a:hover {
	color:#ededed;
}

.three-column-grid-module p.loadmore a.button {
	display:inline-block;
	text-align:center;
	font-size:1.2rem;
	border:1px solid #ededed;
	color:#ededed;
	background:transparent;
	height:2.375rem;
	line-height:2.2rem;
	width:17.25rem;
	transition: background-color .25s, color .25s;
}

.three-column-grid-module p.loadmore a.button:hover {
	color:#272727;
	background-color:#ededed;
}

/*************************** begin three column grid module ***************************/

/*************************** begin two column grid module ***************************/
.two-column-grid-module {
	position:relative;
	padding-bottom:10.75rem;

}
.two-column-grid-module h3 {
	font-size:1.4rem;
	margin-bottom:6.25rem;
}
.two-column-grid-module.top-padded {
	padding-top:6.875rem;
}

.two-column-grid-module .grid-container {
	display:grid;
	grid-template-columns:1fr 1fr;
	grid-column-gap: 4rem;
	grid-row-gap: 4rem;
}

.two-column-grid-module .grid-item {
	position:relative;
	overflow:hidden;
	padding:0;
	margin:0;
	outline:1px none red;
	color:#000;
}
.two-column-grid-module .grid-item img {
	opacity:1;
	transition:opacity .5s;
	margin:0;
	padding:0;
	vertical-align:middle;
}

.two-column-grid-module .grid-item .grid-description {
	display:grid;
	grid-template-columns:1fr 1fr;	
	padding-top:1rem;
}

.two-column-grid-module .grid-item .grid-description .description-left p {
	font-size:1.4rem;
	margin-bottom:1rem;
}
.two-column-grid-module .grid-item .grid-description .description-left p.grid-item-date {
	font-size:1rem;
}

.two-column-grid-module .grid-item .grid-description .description-right p {
	font-size:1.2rem;
	margin-bottom:1rem;
}

.two-column-grid-module .grid-item .grid-description .description-right p a:hover {
	color:#8D8D8D;
}

.two-column-grid-module p.loadmore {
	margin-top:8.25rem;
	text-align:center;
}

.two-column-grid-module p.loadmore a.button {
	display:inline-block;
	text-align:center;
	font-size:1.2rem;
	border:1px solid #272727;
	color:#272727;
	background:transparent;
	height:2.375rem;
	line-height:2.2rem;
	width:17.25rem;
	transition: background-color .25s, color .25s;
}

.two-column-grid-module p.loadmore a.button:hover {
	color:#ededed;
	background-color:#272727;
}

/*************************** end two column grid module ***************************/

/*************************** begin instagram module ***************************/

.instagram-module {
	display:grid;
	grid-template-columns:2fr 1fr 1fr 1fr 1fr;
	grid-column-gap: 2rem;	
	padding-top:3.75rem;
}
.instagram-module .module-label {
	position:relative;
}
.instagram-module .module-label h3 {
	font-size:3rem;
	outline:1px none red;
}
.instagram-module .module-label p {
	font-size:1.4rem;
	margin-bottom:0;
	text-align:left;
	outline:1px none red;
	position:absolute;
	left:0;
	bottom:0;

}

.instagram-module .module-item {
	
}

/*************************** begin instagram module ***************************/

/*************************** begin gallery module ***************************/

.gallery-module.no-bottom-padding {
	padding-bottom:0 !important;
}
.gallery-module .gallery-item img, .gallery-module .grid-container  .column-large {
	opacity:1;
	transition:opacity .5s;
}
.gallery-module .grid-container  .column-large {
	position:relative;
}
.gallery-module .grid-container  .column-large img {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.gallery-module .gallery-item:hover img, .gallery-module .grid-container .column-large:hover img {
	opacity:.8;
	transition:opacity .5s;
}

.gallery-module .grid-container.big-left {
	display:grid;
	grid-template-columns: 2fr 1fr;
	grid-column-gap: 2rem;
	width:100%;
	margin-bottom:2rem;
	
}

.gallery-module .grid-container.big-right {
	display:grid;
	grid-template-columns:1fr 2fr;
	grid-column-gap: 2rem;
	width:100%;
	margin-bottom:2rem;
}

.gallery-module .grid-container.big-left .column-large .image-title, .gallery-module .grid-container.big-right .column-large .image-title {
	position:absolute;
	left:1rem;
	top:1rem;
	width:auto;
	font-size:1rem;
	opacity:0;
	transition:opacity .5s;
}

.gallery-module .grid-container.big-left .column-large:hover .image-title, .gallery-module .grid-container.big-right .column-large:hover .image-title {
	opacity:1;
}

.gallery-module .gallery-item {
	position:relative;
	cursor:default;
}
.gallery-module .gallery-item .image-title {
	position:absolute;
	left:1rem;
	top:1rem;
	width:auto;
	font-size:1rem;	
	opacity:0;
	transition:opacity .5s;
}

.gallery-module .gallery-item:hover .image-title {
	opacity:1;
}

.gallery-module h3 {
	margin-bottom:6.875rem;
}

.gallery-module .column-large {
	outline:1px none red;
	position:relative;
	cursor:default;
}

.gallery-module .column-small {
	outline:1px none blue;
	display:grid;
	grid-template-rows:1fr 1fr;
	grid-row-gap: 1rem;
}

.gallery-module .column-small img {
	vertical-align:middle;
}

/*************************** end gallery module ***************************/

/*************************** begin capbilities module ***************************/

.capabilities-module {
	position:relative;
	outline:1px none red;
	display:grid;
	grid-template-columns:1fr 2fr;
}

.capabilities-module h3 {
	margin-bottom:6.875rem;
}

.capabilities-module .column {
	position:relative;
	outline:1px none red;
}

.capabilities-module .menu {
	display:grid;
	/*grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr;*/
	grid-auto-flow: column;
	margin-bottom:2rem;
}

.capabilities-module .menu-item {
	position:relative;
	/*outline:1px solid red;*/
	text-align:center;	
	font-size:1.4rem;
	border:2px solid #8D8D8D;
	border-width:0 0 3px 0;
	cursor:pointer;
	color:#8D8D8D;
	transition: border-color .5s, color .5s;
	font-family:"Founders Grotesk Web Light";
	padding-bottom:1.625rem;
}
.capabilities-module .menu-item.selected {
	border-color:#EDEDED;
	color:#EDEDED;
}
.capabilities-module .menu-item:hover {
	border-color:#EDEDED;
	color:#EDEDED;
}
.capabilities-module .content-container {
	position:relative;
	color:#EDEDED;
}
.capabilities-module .content-box {
	position:relative;
	left:0;
	top:0;
	width:100%;
	height:0;
	opacity:0;
	transition:opacity 0s;
	outline:1px none blue;
	color:#EDEDED;
}
.capabilities-module .content-box.selected {
	opacity:1;
	height:auto;
	transition:opacity 1s;
}

.capabilities-module .content-box .media {
	position:relative;
	margin-bottom:2rem;
}

.capabilities-module .video-control {
	position:absolute;
	left:2.4%;
	bottom:1.4375rem;
	width:1.375rem;
	height:1.5625rem;
	background:url(IS_Play_Icon.svg) center center no-repeat;	
	cursor:pointer;
}
.capabilities-module .video-control.playing {
	background:url(IS_Pause_Button.svg) center center no-repeat;
}

.capabilities-module .content-box .text {
	display:grid;
	grid-template-columns:1fr 1fr;	
	grid-column-gap: 2.3125rem;
}

.capabilities-module .content-box .text .text-column {
	
}
.capabilities-module .content-box .text .text-column p {
	font-size:1.4rem;
}

/*************************** end capbilities module ***************************/

/*************************** begin partners module ***************************/

.partners-module {
	position:relative;
	outline:1px none red;
	display:grid;
	grid-template-columns:1fr 2fr;
}

.partners-module h3 {
	margin-bottom:6.875rem;
}

.partners-module .column {
	position:relative;
	outline:1px none red;
}

.partners-module .column.logos-grid {
	position:relative;
	outline:1px none red;
	display:grid;
	grid-template-columns:1fr 1fr 1fr 1fr;
	grid-column-gap: 12rem;
	grid-row-gap: 10rem;
}
.partners-module .logos-grid-item {
	outline:1px none blue;
	padding:1rem;
}


/*************************** end partners module ***************************/

/*************************** begin projects filter module ***************************/

.filter-module {
	position:relative;
	padding-bottom:4rem;
	font-size:1.4rem;
}

.filter-module .filter-container {
	position:relative;
	display:grid;
	grid-template-columns:1fr 1fr 1fr;	
	grid-column-gap:2rem;
	max-height:0;
	overflow:hidden;
	transition: max-height .5s, padding-top .5s, padding-bottom .5s;
	padding-top:0;
	padding-bottom:0;
}

.filter-module .filter-control {
	position:relative;
	height:2rem;
}

.filter-module .filter-container.shown {
	max-height:4rem;
	overflow:visible;
	padding-top:4rem;
	padding-bottom:4.25rem;
}

.filter-module .filter-container .filter {
	outline:1px none red;
}

.filter-module .filters-off {
	position:absolute;
	left:0;
	width:auto;
	display:inline-block;
	/*max-width:0;
	transition: max-width .5s;*/
	opacity:0;
	transition: opacity 1s;
	transition-delay: 0;
	overflow:hidden;
	white-space:nowrap;
	z-index:1
}
.filter-module .filters-off.shown {
	opacity:1;
	transition: opacity 1s;
	transition-delay: .5s;
	z-index:2
}

.filter-module .filters-on {
	position:absolute;
	left:0;
	width:auto;
	display:inline-block;
	/*max-width:0;
	transition: max-width .5s;*/
	opacity:0;
	transition: opacity 1s;
	transition-delay: 0;
	overflow:hidden;
	white-space:nowrap;
	z-index:1
}
.filter-module .filters-on.shown {
	opacity:1;
	transition: opacity 1s;
	transition-delay: .5s;
	z-index:2
}

/*************************** end projects filter module ***************************/

/*************************** begin headline module ***************************/

.headline-module {
	position:relative;
}

.headline-module .content-text {
	width:36%;
}

.headline-module .content-text h3 {
	margin-bottom:12.5rem;
}

.headline-module .content-text p {
	font-size:2rem;
	line-height:1.2;
}
.headline-module .content-text p:last-of-type {
	margin-bottom:0;
}

/*************************** end headline module ***************************/

/*************************** begin project carousel module ***************************/

.project-carousel-module {
	position:relative;
	font-size:1.4rem;
}

.project-carousel-module .carousel-container {
	position:relative;
	width:86%;
	padding:5rem 12rem 0 0;
	outline:1px none blue;	
}

.project-carousel-module .carousel {
	position:relative;
	outline:1px none red;
}

.project-carousel-module .toolbar {
	position:relative;
	width:100%;
	height:3rem;
	padding-top:1rem;
	outline:1px none red;
}
.project-carousel-module .slide-text {
	display:none;
}
.project-carousel-module .toolbar .slide-description {
	font-size:1.2rem;
}

.project-carousel-module .project-title {
	position:absolute;
	left:rem;
	top:0;
	opacity:0;
	transition: opacity 2s;
	transition-delay:.5s;
}
.project-carousel-module.loaded .project-title {
	opacity:1;
}

.project-carousel-module .project-location {
	position:absolute;
	left:45rem;
	top:0;
	opacity:0;
	transition: opacity 2s;
	transition-delay:1s;
}
.project-carousel-module.loaded .project-location {
	opacity:1;
}

.project-carousel-module .project-client {
	position:absolute;
	right:0;
	top:4.5rem;
	width:11rem;	
	opacity:0;
	transition: opacity 2s;
	transition-delay:1.5s;
}
.project-carousel-module.loaded .project-client {
	opacity:1;
}

.project-carousel-module .project-completion {
	position:absolute;
	right:0;
	bottom:2.75rem;
	width:11rem;
	opacity:0;
	transition: opacity 2s;	
	transition-delay:2s;
}
.project-carousel-module.loaded .project-completion {
	opacity:1;
}

.project-carousel-module .controls {
	position:absolute;
	right:0;
	bottom:.5rem;
	width:6.75rem;
	min-height:1.1rem;
	outline:1px none red;
	color:#eaeaea;
	text-align:center;
	vertical-align:top;
}

.project-carousel-module .controls span {
	display:inline-block;
	/*min-width:.7rem;*/
	outline:1px none blue;
	font-size:1.2rem;
	text-align:center;
}

.project-carousel-module .slidenumbers {
	vertical-align:top;
}

.project-carousel-module .controls .prevbutton, .project-carousel-module .controls .nextbutton {
	position:absolute;
	display:inline-block;
	width:1.0625rem;
	height: 0.9375rem;
	outline:1px none red;
	cursor:pointer;
	
}
.project-carousel-module .controls .prevbutton {
	background:url(IS_Arrow_Right.svg) center center no-repeat;
	background-size:100%;
	transform:translateY(-50%) rotate(180deg);
	margin-right:1.2rem;
	left:0;
	top:50%;
}
.project-carousel-module .controls .nextbutton {
	background:url(IS_Arrow_Right.svg) center center no-repeat;
	background-size:100%;
	margin-left:1.2rem;
	right:0;
	top:50%;
	transform:translateY(-50%);
}

.project-carousel-module .video-control {
	position:absolute;
	left:2.4%;
	bottom:1rem;
	width:1.375rem;
	height:1.5625rem;
	background:url(IS_Play_Icon.svg) center center no-repeat;	
	cursor:pointer;
}
.project-carousel-module .video-control.playing {
	background:url(IS_Pause_Button.svg) center center no-repeat;
}

/*************************** end project carousel module ***************************/

/*************************** begin center text module ***************************/

.center-text-module {
	position:relative;
}

.center-text-module .content-text {
	width:50%;
	margin:auto;
	outline:1px none red;
}


.center-text-module .content-text p {
	font-size:1.2rem;
	line-height:1.2;
}
.center-text-module .content-text p:last-of-type {
	margin-bottom:0;
}

/*************************** end center text module ***************************/

/*************************** begin extended carousel module ***************************/

.extended-carousel {
	position: relative;
	width: 100%;
	height:auto;
	outline:1px none green;
	text-align:left;
	margin-bottom:0 !important;
	padding:0 0 13.125rem 0;
}

.extended-carousel .slick-track {
	margin-left:4rem;
}
.extended-carousel .slick-slide {
	margin-left:2rem;
	opacity:0.25;
	transition:opacity 1s;
	cursor:pointer;
}

.extended-carousel .slick-slide.slick-current {
	opacity:1;
}

.extended-carousel .toolbar {
	position:relative;
	left:31.5rem;
	width:67.25rem;
	height:3rem;
	padding-top:1rem;
	outline:1px none red;
}
.extended-carousel .slide-text {
	display:none;
}
.extended-carousel .toolbar .slide-description {
	font-size:1.2rem;
}

.extended-carousel .controls {
	position:absolute;
	right:0;
	bottom:.5rem;
	width:6.75rem;
	min-height:1.1rem;
	outline:1px none red;
	color:#eaeaea;
	text-align:center;
	vertical-align:top;
}

.extended-carousel .controls span {
	display:inline-block;
	/*min-width:.7rem;*/
	outline:1px none blue;
	font-size:1.2rem;
	text-align:center;
}

.extended-carousel .slidenumbers {
	vertical-align:top;
}

.extended-carousel .controls .prevbutton, .extended-carousel .controls .nextbutton {
	position:absolute;
	display:inline-block;
	width:1.0625rem;
	height: 0.9375rem;
	outline:1px none red;
	cursor:pointer;
	
}
.extended-carousel .controls .prevbutton {
	background:url(IS_Arrow_Right.svg) center center no-repeat;
	background-size:100%;
	transform:translateY(-50%) rotate(180deg);
	margin-right:1.2rem;
	left:0;
	top:50%;
}
.extended-carousel .controls .nextbutton {
	background:url(IS_Arrow_Right.svg) center center no-repeat;
	background-size:100%;
	margin-left:1.2rem;
	right:0;
	top:50%;
	transform:translateY(-50%);
}

.extended-carousel .boxcanvas {
	background-color:#fff;
	background-position: top center;
	background-repeat:no-repeat;
	background-size:cover;
}

.extended-carousel .imageheader {
	position:relative;
	width:100%;
	height:10.5rem;
	text-align:left;
	color:#000;
	outline:1px none red;
	/*transform: translateY(-6.25rem);*/
}

.extended-carousel .imageheader .textcontainer {
	position:relative;
	width:100%;
	height:auto;
	outline:1px none green;
	text-align:center;
	padding:0.78125rem 0% 1.5625rem 0%;
}

.extended-carousel .imageheader h3 {
	font-size:3.6rem;
	font-size:3rem;
	line-height:1;
	margin-bottom:1rem;
	text-align:center;
}
	
.extended-carousel .imageheader p {
	font-family: "Chronicle Display A", "Chronicle Display B";
	font-style: normal;
	font-weight: 200;
	font-size:1.25rem;
	margin-bottom:1rem;
	letter-spacing:1px;
	text-align:center;
}
.extended-carousel .imageheader p:last-of-type {
	margin-bottom:0;
}

.extended-carousel .carouselnav {
	position:relative;
	display:inline-block;
	width:auto;
	height:1.275rem;
	line-height:1.275rem;
	text-align:center;
	text-decoration:none;
	outline:1px none red;
	vertical-align:top;
	font-family: HelveticaNeueLTStd-Lt;
	font-size:1.2rem;
	margin-left:0rem;
	margin-top:2rem;
	margin-right:21.125rem;
	float:right;
	z-index:1001;
}
.extended-carousel .carouselnav .carouselnumber {
	position:relative;
	display:inline-block;
	vertical-align:bottom;
	letter-spacing:2px;
}

.extended-carousel .buttonprev, .extended-carousel .buttonnext {
	position:relative;
	display:inline-block;
	width:0.825rem;
	height:1.275rem;
	outline:1px none blue;
	vertical-align:middle;
	cursor:pointer;
	opacity:1;
	transition:opacity .2s linear;
}
.extended-carousel .buttonprev:hover, .extended-carousel .buttonnext:hover {
	opacity:0.5;
}
.extended-carousel .buttonprev {
	background: url('JWA_Desktop_Side_Menu_Arrow_Left_Off.svg') center center no-repeat; 
	background-size:cover;
	opacity:1;
	margin-right:.5rem;
}
.extended-carousel .buttonnext {
	background: url('JWA_Desktop_Side_Menu_Arrow_Right_Off.svg') center center no-repeat;
	background-size:cover;
	opacity:1;
	margin-left:.5rem;
}

.extended-carousel .video-control {
	position:absolute;
	left:2.4%;
	bottom:1rem;
	width:1.375rem;
	height:1.5625rem;
	background:url(IS_Play_Icon.svg) center center no-repeat;	
	cursor:pointer;
}
.extended-carousel .video-control.playing {
	background:url(IS_Pause_Button.svg) center center no-repeat;
}

/*************************** begin extended carousel module ***************************/

/*************************** begin listview table module ***************************/

.listview-table-module {
	
}

.listview-table-module h3 {
	margin-bottom:6.25rem;
}

/*************************** end listview table module ***************************/

/*************************** begin graduate program module ***************************/

.graduate-program-module {
	display:grid;
	grid-template-columns:1fr 1fr;
	padding-top:12.5rem;
	padding-bottom:12.5rem;
}

.graduate-program-module .column.text-object {
	background:#ededed;
	padding: 0 10.875rem 0 4.125rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.graduate-program-module .column.text-object .text-container p {
	font-size:1.2rem;
}

.graduate-program-module .column.text-object .text-container p:last-of-type {
	margin-bottom:0;
}

.graduate-program-module .column.text-object a.button {
	display:inline-block;
	text-align:center;
	font-size:1rem;
	border:1px solid #272727;
	color:#272727;
	background:ededed;
	height:2.375rem;
	line-height:2.2rem;
	width:8rem;
	transition: background-color .25s, color .25s;
}

.graduate-program-module .column.text-object a.button:hover {
	color:#ededed;
	background-color:#272727;
}

/*************************** end graduate program module ***************************/

/*************************** begin  summary module ***************************/

.summary-module {
	display:grid;
	grid-template-columns:42.5% 57.5%;
}

.summary-module .column p {
	opacity:0;
	transition:opacity 2s;
	transition-delay:0;
}

/*.summary-module.loaded p:nth-of-type(n1 + 1) {
	transition-delay:0;
}*/

.summary-module.loaded .column:first-of-type p:nth-of-type(1) {
	transition-delay:0;
}
.summary-module.loaded .column:last-of-type p:nth-of-type(1) {
	transition-delay:.5s;
}
.summary-module.loaded .column:last-of-type p:nth-of-type(2) {
	transition-delay:1s;
}
.summary-module.loaded .column:last-of-type p:nth-of-type(3) {
	transition-delay:1.5s;
}

.summary-module.loaded  p {
	opacity:1;
}

.summary-module .column {
	position:relative;
	outline:1px none red;
}

.summary-module .column p {
	margin-bottom: 1.6rem;
}

.summary-module .column p:last-of-type {
	margin-bottom: 0;
}

.summary-module .column p.applynow {
	position:absolute;
	right:0;
	bottom:1.6rem;
}

.summary-module.contact p {
	font-size:2rem;
	line-height:1;
	margin-bottom:4rem;
}

/*************************** end  summary module ***************************/

/*************************** begin full description module ***************************/

.full-description-module {
	display:grid;
	grid-template-columns:42.5% 57.5%;	
}

.full-description-module .column {
	position:relative;
	outline:1px none red;
	padding-right:8rem;
}

.full-description-module .column p {
	font-size:1.2rem;
	line-height:1.5;
}

.full-description-module .column p:last-of-type {
	margin-bottom:0;
}

/*.full-description-module .column p:last-of-type {
	margin-bottom:0;
}*/

.full-description-module .column p.small-text.sign-in-button-container {
	margin-top:2rem !important;
	margin-bottom:4rem !important;
}

.full-description-module .column p.tags {
	margin-top:3rem;
	margin-bottom:3rem;
}

.full-description-module .column p.social-media-icons {
	margin-top:3rem;
	font-size:0;
	margin-bottom:0;
}



p.social-media-icons .media-icon {
	display:inline-block;
	width: 1.875rem;
	height:1rem;
}

p.social-media-icons .media-icon.facebook {
	background:url(IS_Facebook_Symbol.svg) left top no-repeat;
	width: 1.4rem;
}
p.social-media-icons .media-icon.facebook:hover {
	background:url(IS_Facebook_Symbol_Hover.svg) left top no-repeat;
}
p.social-media-icons .media-icon.linkedin {
	background:url(IS_LinkedIn_Symbol.svg) left top no-repeat;
}
p.social-media-icons .media-icon.linkedin:hover {
	background:url(IS_LinkedIn_Symbol_Hover.svg) left top no-repeat;
}
p.social-media-icons .media-icon.twitter {
	background:url(IS_Twitter_Symbol.svg) left top no-repeat;
}
p.social-media-icons .media-icon.twitter:hover {
	background:url(IS_Twitter_Symbol_Hover.svg) left top no-repeat;
}
p.social-media-icons .media-icon.instagram {
	background:url(IS_Instagram_Symbol.svg) left top no-repeat;
}
p.social-media-icons .media-icon.instagram:hover {
	background:url(IS_Instagram_Symbol_Hover.svg) left top no-repeat;
}
p.social-media-icons .media-icon.share {
	background:url(IS_URL_Share_Symbol.svg) left top no-repeat;
}
p.social-media-icons .media-icon.share:hover {
	background:url(IS_URL_Share_Symbol_Hover.svg) left top no-repeat;
}


/*************************** end full description module ***************************/

/*************************** begin career details module ***************************/

.career-application-form-module {
	display:grid;
	grid-template-columns:42.5% 57.5%;	
}

.career-application-form-module .column {
	position:relative;
	outline:1px none red;
	padding-right:8rem;
}

.career-application-form-module .column p {
	font-size:1.2rem;
	outline:1px none red;
}
.career-application-form-module .column p.full-width {
	grid-column: span 2;
}

.career-application-form-module .column p.formerrormessage {
	font-size:1rem;
	color:#CE1E1E;
	display:none;
}
.career-application-form-module .column .form-container p.tagline {
	font-size:1.2rem;
	margin-bottom:2.1875rem;
}

.career-application-form-module .column .thankyou-message {
	display:none;
	opacity:0;
	transition:opacity 2s;
	transition-delay:.5s;
}
.career-application-form-module .column .thankyou-message.shown {
	opacity:1;
}

.career-application-form-module .column .form-container {
	display:grid;
	grid-template-columns:1fr 1fr;	
	grid-column-gap: 2rem;
	transition:opacity 1s;
}

.career-application-form-module .column .form-container p {
	margin-bottom:1rem;
}
.career-application-form-module .column .form-container p.submitcontainer {
	margin-top:3.75rem;
	margin-bottom:3.75rem;
}

/*************************** end career details module ***************************/

/*************************** begin tenders content grid module ***************************/

.tenders-register-content-grid-module {
	display:grid;
	grid-template-columns:42.5% 57.5%;	
	/*padding-bottom:6.25rem;*/
}

.tenders-register-content-grid-module .overlay {
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background: #ededed;
	opacity:.5;
}

.tenders-register-content-grid-module.inactive {
	opacity:.5;
}

.tenders-register-content-grid-module.top-padded {
	padding-top:11rem;
}

.tenders-register-content-grid-module .column {
	position:relative;
	outline:1px none red;
	padding-right:8rem;
}

.tenders-register-content-grid-module .column p {
	font-size:1.4rem;
	outline:1px none red;
}

.tenders-register-content-grid-module.intro .column p {
	font-size:2rem;
}

.tenders-register-content-grid-module.intro .column p:last-of-type {
	margin-bottom:0;
}

.tenders-register-content-grid-module .column .form-container {
	display:grid;
	grid-template-columns:1fr 1fr;	
	grid-column-gap: 2rem;
	transition:opacity 1s;
}

.tenders-register-content-grid-module .column .projectslist{
	outline:1px none red;
	margin-top:3.25rem;
}

.tenders-register-content-grid-module .column .projectslist table tr {
	outline:1px none red;
	border:2px solid #272727;
	border-width:0 0 2px 0;
	cursor:default;
}

.tenders-register-content-grid-module .column .projectslist table td {
	border:none;
	background:transparent;
	color:#272727;
	cursor:default;
}
.tenders-register-content-grid-module .column .projectslist table td:hover {
	border:none;
	background:transparent;	
}

.tenders-register-content-grid-module .column .form-container p {
	margin-bottom:1rem;
	font-size:1.2rem;
}

.tenders-register-content-grid-module .column .form-container p.full-width {
	grid-column: span 2;
}

.tenders-register-content-grid-module .column .form-container p.formerrormessage {
	font-size:1rem;
	color:#CE1E1E;
	visibility:hidden;
	display:flex;
	align-items:flex-end;
	padding-top:0;
	margin-bottom:1rem;
	width:120%;
}

.tenders-register-content-grid-module .column .form-container button {
	width:36% !important;
}


#thankyou-message-container {
	display:none;
	opacity:0;
	transition:opacity 2s;
	transition-delay:.5s;
}
#thankyou-message-container.shown {
	opacity:1;
}



/*************************** end tenders content grid module ***************************/

/*************************** begin tender application form module ***************************/

.tender-application-form-module {
	display:grid;
	grid-template-columns:42.5% 57.5%;	
}

.tender-application-form-module .column {
	position:relative;
	outline:1px none red;
	padding-right:8rem;
}

.tender-application-form-module .column p {
	font-size:1.2rem;
	outline:1px none red;
}
.tender-application-form-module .column p.full-width {
	grid-column: span 2;
}

.tender-application-form-module .column p.formerrormessage {
	font-size:1rem;
	color:#CE1E1E;
	display:none;
}
.tender-application-form-module .column .form-container p.tagline {
	margin-bottom:2.1875rem;
	width:100%;
}

.tender-application-form-module .column .form-container p {
	margin-bottom:1.4rem;
	outline:1px none red !important;
}

.tender-application-form-module .column .thankyou-message {
	display:none;
	opacity:0;
	transition:opacity 2s;
	transition-delay:.5s;
}
.tender-application-form-module .column .thankyou-message.shown {
	opacity:1;
}

.tender-application-form-module .column .form-container {
	transition:opacity 1s;
}


.tender-application-form-module .column .form-container p.submitcontainer {
	margin-top:3.75rem;
	margin-bottom:3.75rem;
}

.tender-application-form-module .tender-detail-label {
	display:inline-block;
	width:35%;
}

.tender-application-form-module .tender-detail-data {
	display:inline-block;
	width:auto;
	color:#8D8D8D;	
}
.tender-application-form-module #submit {
	min-width:10rem;
}

/*************************** end tender application form module ***************************/

/*************************** begin right offset carousel module ***************************/

.right-offset-carousel-module {
	display:grid;
	grid-template-columns:26.5% 73.5%;	
}
.right-offset-carousel-module .column {
	outline:1px none red;
	padding-right:8rem;
}

.right-offset-carousel-module .carousel {
	position:relative;
	outline:1px none red;
}

.right-offset-carousel-module .toolbar {
	position:relative;
	width:100%;
	height:3rem;
	padding-top:1rem;
	outline:1px none red;
}
.right-offset-carousel-module .slide-text {
	display:none;
}
.right-offset-carousel-module .toolbar .slide-description {
	font-size:1.2rem;
}

.right-offset-carousel-module .project-title {
	position:absolute;
	left:rem;
	top:0;
	opacity:0;
	transition: opacity 2s;
	transition-delay:.5s;
}
.right-offset-carousel-module.loaded .project-title {
	opacity:1;
}

.right-offset-carousel-module .project-location {
	position:absolute;
	left:45rem;
	top:0;
	opacity:0;
	transition: opacity 2s;
	transition-delay:1s;
}
.right-offset-carousel-module.loaded .project-location {
	opacity:1;
}

.right-offset-carousel-module .project-client {
	position:absolute;
	right:0;
	top:4rem;
	width:11rem;	
	opacity:0;
	transition: opacity 2s;
	transition-delay:1.5s;
}
.right-offset-carousel-module.loaded .project-client {
	opacity:1;
}

.right-offset-carousel-module .project-completion {
	position:absolute;
	right:0;
	bottom:3rem;
	width:11rem;
	opacity:0;
	transition: opacity 2s;	
	transition-delay:2s;
}
.right-offset-carousel-module.loaded .project-completion {
	opacity:1;
}

.right-offset-carousel-module .controls {
	position:absolute;
	right:0;
	bottom:.5rem;
	width:6.75rem;
	min-height:1.1rem;
	outline:1px none red;
	color:#eaeaea;
	text-align:center;
	vertical-align:top;
}

.right-offset-carousel-module .controls span {
	display:inline-block;
	/*min-width:.7rem;*/
	outline:1px none blue;
	font-size:1.2rem;
	text-align:center;
}

.right-offset-carousel-module .slidenumbers {
	vertical-align:top;
}

.right-offset-carousel-module .controls .prevbutton, .right-offset-carousel-module .controls .nextbutton {
	position:absolute;
	display:inline-block;
	width:1.0625rem;
	height: 0.9375rem;
	outline:1px none red;
	cursor:pointer;
	
}
.right-offset-carousel-module .controls .prevbutton {
	background:url(IS_Arrow_Right.svg) center center no-repeat;
	background-size:100%;
	transform:translateY(-50%) rotate(180deg);
	margin-right:1.2rem;
	left:0;
	top:50%;
}
.right-offset-carousel-module .controls .nextbutton {
	background:url(IS_Arrow_Right.svg) center center no-repeat;
	background-size:100%;
	margin-left:1.2rem;
	right:0;
	top:50%;
	transform:translateY(-50%);
}

.right-offset-carousel-module .video-control {
	position:absolute;
	left:2.4%;
	bottom:1rem;
	width:1.375rem;
	height:1.5625rem;
	background:url(IS_Play_Icon.svg) center center no-repeat;	
	cursor:pointer;
}
.right-offset-carousel-module .video-control.playing {
	background:url(IS_Pause_Button.svg) center center no-repeat;
}

/*************************** end right offset carousel module ***************************/

/*************************** begin inline carousel module ***************************/


.inline-carousel-module {
	display:grid;
	grid-template-columns:42.5% 57.5%;	
}

.inline-carousel-module .column {
	position:relative;
	outline:1px none red;
	padding-right:8rem;
}

.inline-carousel-module .toolbar {
	position:relative;
	width:100%;
	height:3rem;
	padding-top:1rem;
	outline:1px none red;
}
.inline-carousel-module .slide-text {
	display:none;
}
.inline-carousel-module .toolbar .slide-description {
	font-size:1.2rem;
}

.inline-carousel-module .project-title {
	position:absolute;
	left:rem;
	top:0;
	opacity:0;
	transition: opacity 2s;
	transition-delay:.5s;
}
.inline-carousel-module.loaded .project-title {
	opacity:1;
}

.inline-carousel-module .project-location {
	position:absolute;
	left:45rem;
	top:0;
	opacity:0;
	transition: opacity 2s;
	transition-delay:1s;
}
.inline-carousel-module.loaded .project-location {
	opacity:1;
}

.inline-carousel-module .project-client {
	position:absolute;
	right:0;
	top:4rem;
	width:11rem;	
	opacity:0;
	transition: opacity 2s;
	transition-delay:1.5s;
}
.inline-carousel-module.loaded .project-client {
	opacity:1;
}

.inline-carousel-module .project-completion {
	position:absolute;
	right:0;
	bottom:3rem;
	width:11rem;
	opacity:0;
	transition: opacity 2s;	
	transition-delay:2s;
}
.inline-carousel-module.loaded .project-completion {
	opacity:1;
}

.inline-carousel-module .controls {
	position:absolute;
	right:0;
	bottom:.5rem;
	width:6.75rem;
	min-height:1.1rem;
	outline:1px none red;
	color:#eaeaea;
	text-align:center;
	vertical-align:top;
}

.inline-carousel-module .controls span {
	display:inline-block;
	/*min-width:.7rem;*/
	outline:1px none blue;
	font-size:1.2rem;
	text-align:center;
}

.inline-carousel-module .slidenumbers {
	vertical-align:top;
}

.inline-carousel-module .controls .prevbutton, .inline-carousel-module .controls .nextbutton {
	position:absolute;
	display:inline-block;
	width:1.0625rem;
	height: 0.9375rem;
	outline:1px none red;
	cursor:pointer;
	
}
.inline-carousel-module .controls .prevbutton {
	background:url(IS_Arrow_Right.svg) center center no-repeat;
	background-size:100%;
	transform:translateY(-50%) rotate(180deg);
	margin-right:1.2rem;
	left:0;
	top:50%;
}
.inline-carousel-module .controls .nextbutton {
	background:url(IS_Arrow_Right.svg) center center no-repeat;
	background-size:100%;
	margin-left:1.2rem;
	right:0;
	top:50%;
	transform:translateY(-50%);
}

.inline-carousel-module .video-control {
	position:absolute;
	left:2.4%;
	bottom:1rem;
	width:1.375rem;
	height:1.5625rem;
	background:url(IS_Play_Icon.svg) center center no-repeat;	
	cursor:pointer;
}
.inline-carousel-module .video-control.playing {
	background:url(IS_Pause_Button.svg) center center no-repeat;
}

/*************************** end inline carousel module ***************************/

/*************************** begin right offset two column image module ***************************/

.right-offset-2column-image-module {
	display:grid;
	grid-template-columns:26.5% 73.5%;	
}
.right-offset-2column-image-module .column {
	outline:1px none red;
	padding-right:8rem;
}

.right-offset-2column-image-module .column.imagegrid {
	display:grid;
	grid-template-columns:1fr 1fr;
	grid-column-gap: 2rem;
	grid-row-gap: 2rem;	
}

.right-offset-2column-image-module .column.imagegrid .imagegrid-item {
	position:relative;
}
.right-offset-2column-image-module .column.imagegrid .imagegrid-item .description {
	position:absolute;
	left:1rem;
	top:1rem;
	width:auto;
	opacity:0;
	transition:opacity .25s;
}

.right-offset-2column-image-module .column.imagegrid .imagegrid-item:hover .description {
	opacity:1;
}

/*************************** end right offset two column image module ***************************/

/*************************** begin next page module ***************************/

.next-page-module {
	display:grid;
	grid-template-columns:42.5% 57.5%;	
}

.next-page-module .column {
	position:relative;
	outline:1px none red;
	padding-right:8rem;
}
.next-page-module .column.with-top-line {
	padding-top:6.25rem;
}

.next-page-module .column.with-top-line:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	height:1px;
	width:65%;
	background:#ededed;
}

.next-page-module .column p {
	font-size:1.2rem;
	width:70%;
}
.next-page-module .column p.news-date {
	color:#8d8d8d;
}
.next-page-module .column h4 {
	font-size:1.4rem;
	margin-bottom:0;
}
/*************************** end next page module ***************************/

/*************************** begin enquiry form module ***************************/

.enquiry-form-module {
	display:grid;
	grid-template-columns:42.5% 57.5%;	
}

.enquiry-form-module .column {
	position:relative;
	outline:1px none red;
	padding-right:10rem;
}

.enquiry-form-module .column p {
	font-size:1.2rem;
	outline:1px none red;
}
.enquiry-form-module .column p.full-width {
	grid-column: span 2;
}

.enquiry-form-module .column p.formerrormessage {
	font-size:1rem;
	color:#CE1E1E;
	display:none;
}

.enquiry-form-module .column .thankyou-message {
	display:none;
	opacity:0;
	transition:opacity 2s;
	transition-delay:.5s;
}
.enquiry-form-module .column .thankyou-message.shown {
	opacity:1;
}

.enquiry-form-module .column .thankyou-message p {
	font-size:1.4rem;
}

.enquiry-form-module .column .form-container {
	position:relative;
	display:grid;
	grid-template-columns:1fr 1fr;	
	grid-column-gap: 2rem;
	transition:opacity 1s;
}

.enquiry-form-module .column .form-container .overlay {
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background: #ededed;
	opacity:.5;
}

.enquiry-form-module .column .form-container.submitting {
	opacity:.5;
}

.enquiry-form-module .column .form-container p {
	margin-bottom:1rem;
}
.enquiry-form-module .column .form-container p.submitcontainer {

}

/*************************** end enquiry form module ***************************/

/*************************** begin sign in popup ***************************/

.sign-in-popup {
	position:absolute;
	left:50%;
	top:50%;
	width:26%;
	height:auto;
	min-height:20%;
	transform: translate(-50%,-50%);
	background:#ededed;
	padding: 6.25rem 2rem 2rem 2rem;
}

.sign-in-popup .close-button {
	position:absolute;
	right:2.875rem;
	top: 2rem;
	width:1.25rem;
	height:1.375rem;
	background:url(IS_Close_Icon.svg) center center no-repeat;
	cursor:pointer;
}

.sign-in-popup .form-container {
	display:grid;
	grid-template-columns:1fr 1fr;	
	grid-column-gap: 2rem;
}

.sign-in-popup p {
	font-size:1rem;
	margin-bottom:1.2rem;
	outline:1px none red;
}
.sign-in-popup p.formerrormessage {
	font-size:1rem;
	color:#CE1E1E;
	display:none;
}

.sign-in-popup p:last-of-type {	
	margin-bottom:0;
}

.forgot-password {
	 display:flex;
	 align-items:flex-end;
}

.sign-in-popup a {
	text-decoration:underline;
	vertical-align:middle;
}

.sign-in-popup a.button {
	display:inline-block;
	text-align:center;
	font-size:1.1rem;
	border:1px solid #272727;
	color:#272727;
	background:transparent;
	height:2.375rem;
	line-height:2.2rem;
	width:100%;
	transition: background-color .25s, color .25s;
	text-decoration:none;
}
.sign-in-popup a.button:hover {
	color:#ededed;
	background:#272727;	
}

.sign-in-popup button {
	font-size:.85rem !important;
	min-width:9.5rem !important;
}

.sign-in-popup .full-width {
	grid-column: span 2;
}

/*************************** end sign in popup ***************************/

/*************************** end content objects ***************************/

/*************************** begin form field styles ***************************/

/******* Begin Dark Styles *******/

/* begin pseudoselect control */

.dark .pseudoselect.filter {
	position:relative;
	display:inline-block;
	width:100%;
	padding: 0 0 .75rem .75rem;
	font-size:1.4rem;
	color:#ededed;
	border: 1px solid #ededed;
	border-width: 0 0 1px 0;
	background:transparent;
	outline:none;
	margin-bottom:.5em;
	background: transparent url(IS_Arrow_Down.svg) right .5rem top .25rem no-repeat;
	background-size: 1.3125rem 1.5625rem;
	cursor:default;
	text-align:left;
}
.dark .pseudoselect.filter:hover {
	color:#acacac;
}
.dark .pseudoselect.filter.open {
	background: transparent url(IS_Arrow_Up.svg) right .5rem top .25rem no-repeat;
	background-size: 1.3125rem 1.5625rem;
}
.dark .pseudoselect.filter .psselections {
	position:absolute;
	max-height:350px;
	left:0;
	/*right:0;*/
	width:100%;
	top:2.5rem;
	margin: 0;
	padding:0;
	font-size:1rem;
	color:#ededed;
	background:#272727;
	overflow:auto;
	display:none;
	z-index:10000;
	outline:1px none red;
}
.dark .pseudoselect.filter .psselections label {
	display:block;
	font-size:1rem;
	cursor:pointer;
	text-align:left;
	border: 1px solid #ededed;
	border-width: 0 0 1px 0;
	color:#ededed;
	height:3.5rem;
	line-height:3.5rem;
	vertical-align:middle;
}

.dark .pseudoselect.filter .selectioncount {
	font-size:.9rem;
}

/* end pseudoselect control */

.dark input[type=radio].single-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

.dark input[type=radio].single-check + span {
	font-size:1.2rem;
	color:#ededed;
	cursor:pointer;
	padding-left:.75rem;
}
.dark .psselections label:hover input[type=radio].single-check + span {
	color:#8D8D8D;
}
.dark input[type=radio].single-check:checked + span {
	color:#8D8D8D;
}


input, textarea, select {
	-webkit-appearance: none;
	border-radius:0;
}

.dark input[type=text],.dark input[type=email],.dark input[type=password],.dark input[type=number],.dark input[type=tel],.dark input[type=submit],.dark textarea,.dark select {
	font-family:"Founders Grotesk Web Regular";
	width:100%;
	padding:.75rem;
	font-size:1rem;
	color:#ededed;
	border:1px solid #ededed;
	background:transparent;
	outline:none;
	/*margin-bottom:.5rem;*/
}
.dark input[type=text].errorstate,.dark input[type=email].errorstate,.dark input[type=password].errorstate,.dark input[type=number].errorstate,.dark input[type=tel].errorstate,.dark input[type=submit].errorstate,.dark textarea.errorstate,.dark select.errorstate {
	color:#CE1E1E;
	border-color:#CE1E1E;
}
.dark textarea {
	font-family:"Founders Grotesk Web Regular";
	font-size:1rem;
	display: block;
	color:#ededed;
	border:1px solid #ededed;
	min-height:13.5rem;
}

.dark input[type=submit] {
	position:relative;
	width:auto;
	background:#ededed;
	color:#272727;
	cursor:pointer;
	border:1px solid #ededed;
	padding:.75rem;
	font-size:1rem
}
.dark input[type=submit]:hover {
	color:#272727;
	background:#D0D0D0;
}
.dark input[type=submit].errorstate {
	width:auto;
	background:transparent;
	color:#CE1E1E;
	cursor:pointer;
	border:1px solid #CE1E1E;
	padding:.75rem;
	font-size:1rem
}
.dark input[type=submit].errorstate:hover {
	color:#ededed;
	background:#CE1E1E;
}

.dark input[type=submit].disabled {
	opacity:0.5;
}

.dark input[type=submit]:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:10px;
	background:red;
	z-index:100;
}


.dark button[type=submit] {
	position:relative;
	width:auto;
	background:#ededed;
	color:#272727;
	cursor:pointer;
	border:1px solid #ededed;
	padding:.75rem;
	font-size:1rem;
	min-width:9rem;
}
.dark button[type=submit]:hover {
	color:#272727;
	background:#D0D0D0;
	border-color:#D0D0D0;
}
.dark button[type=submit].errorstate {
	width:auto;
	background:transparent;
	color:#CE1E1E;
	cursor:pointer;
	border:1px solid #CE1E1E;
	padding:.75rem;
	font-size:1rem
}
.dark button[type=submit].errorstate:hover {
	color:#ededed;
	background:#CE1E1E;
}

.dark button[type=submit].disabled {
	opacity:0.5;
}

.dark button[type=submit] .progress-indicator {
	position:absolute;
	left:-1px;
	top:-1px;
	width:0;
	height:3px;
	background:#272727;
}

/*.dark 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;
}*/
.dark .processing > * {
	opacity:.5;
}
/*.dark .processing button[type=submit]:before {
	width:calc(100% + 1px);
	height:3px;
}*/
/* begin custom checkbox */

.dark label.checkboxcontainer {
	display:inline-block;
	font-size:1rem;
	color:#ededed;
	vertical-align:middle;
	cursor:pointer;
}
.dark label.checkboxcontainer a {
	text-decoration:underline;
}
.dark label.checkboxcontainer:hover {
	color:#ededed;
}
.dark label.checkboxcontainer input[type=checkbox] {
	width:0px;
	height:0px;
	position:absolute;
	left:-9999px;
}
.dark label.checkboxcontainer input[type=checkbox] + span {
	display:inline-block;
	vertical-align:middle;
	width:0.875rem;
	height:0.875rem;
	margin-bottom:1px;
	margin-right:0.625rem;
	/*background:url(CY_Tick_Box.svg) left top no-repeat;
	background-size:100%;*/
	border:1px solid #ededed;
	background:transparent;
	outline:1px none red;
}

.dark label.checkboxcontainer input[type=checkbox]:checked  + span {
	border:1px solid #ededed;
	background:#ededed;
	
}
.dark label.checkboxcontainer input[type=checkbox]:checked  + span.labeltext {
	color:#ededed;
}

.dark label.checkboxcontainer.errorstate {
	color:#CE1E1E;
}

.dark label.checkboxcontainer.errorstate input[type=checkbox] + span {
	border:1px solid #CE1E1E;
	background:transparent;
	
}
.dark label.checkboxcontainer.errorstate input[type=checkbox]  + span.labeltext {
	color:#CE1E1E;
}

/* end custom checkbox */

/* begin custom file input control */

.dark .custom-file-upload {
	display:inline-block;
	font-size:0;
	width:100%;
	height:auto;
	color:#ededed;
	border:1px solid #ededed;
	background:transparent;
	padding:0;
	overflow:hidden;
}

.dark .custom-file-upload .filename-display {
	display:inline-block;
	width:64%;
	font-size:1rem;
	padding:.75rem;
}
.dark .custom-file-upload .btn {
	position:relative;
	display:inline-block;
	width:36%;	
	background:transparent;
	color:#ededed;
	cursor:pointer;
	padding:.75rem;
	font-size:1rem;
	text-align:center;
	border:1px solid #ededed;
	border-width:0 0 0 1px;
	cursor:pointer;
}
.dark .custom-file-upload .btn:hover {
	background:#ededed;
	color:#272727;
}

.dark .custom-file-upload.errorstate {
	color:#CE1E1E;
	border:1px solid #CE1E1E;
}

.dark .custom-file-upload.errorstate .btn {
	border-color:#CE1E1E;
	color:#CE1E1E;
}
.dark .custom-file-upload.errorstate .btn:hover {
	background:#CE1E1E;
	color:#ededed;
}
.dark .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 */

.dark ::-webkit-input-placeholder {
   color:#EDEDED;
}
.dark :hover::-webkit-input-placeholder {
   color:#EDEDED;
}
.dark :focus::-webkit-input-placeholder {
   color:#EDEDED;
}


.dark :-moz-placeholder { /* Firefox 18- */
   color:#EDEDED;
   opacity:1;
}
.dark :hover:-moz-placeholder { /* Firefox 18- */
   color:#EDEDED;
   opacity:1;
}
.dark :focus:-moz-placeholder { /* Firefox 18- */
   color:#EDEDED;
   opacity:1;
}

.dark ::-moz-placeholder {  /* Firefox 19+ */
  color:#EDEDED;
}
.dark :hover::-moz-placeholder {  /* Firefox 19+ */
   color:#EDEDED;
}
.dark :focus::-moz-placeholder {  /* Firefox 19+ */
   color:#EDEDED;
}

.dark :-ms-input-placeholder {  
   color:#EDEDED;
}
.dark :hover:-ms-input-placeholder {  
   color:#EDEDED;
}
.dark :focus:-ms-input-placeholder {  
   color:#EDEDED;
}

.dark .errorstate::-webkit-input-placeholder {
   color:#CE1E1E;
}

.dark .errorstate:-moz-placeholder { /* Firefox 18- */
  color:#CE1E1E;
  opacity:1;
}

.dark .errorstate::-moz-placeholder {  /* Firefox 19+ */
   color:#CE1E1E;
   opacity:1;
}

.dark .errorstate:-ms-input-placeholder {  
   color:#CE1E1E;
}


.dark ::placeholder {
  
   color:#EDEDED;
   opacity:1;
}
.dark :hover::placeholder{
   color:#EDEDED;
   opacity:1;
}
.dark :focus::placeholder {
   color:#EDEDED;
   opacity:1;
}

.dark .errorstate::placeholder {  
   color:#CE1E1E;
   opacity:1;
}

/** begin form field labels extension **/

.dark .field-separator {
	position:relative;
}
.dark .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;
}

.dark .field-separator.field-error:before {
	color:#CE1E1E;
}

.dark .field-separator.label-shown:before {
	content:attr(data-before);
	opacity:.75;
	visibility:visible;
}

.dark .field-separator.textarea-container.label-shown:before {
	content:attr(data-before);
	opacity:.75;
	visibility:visible;
	top:32%;
}

.dark .field-separator.listcontainer.label-shown:before {
	content:attr(data-before);
	opacity:.75;
	visibility:visible;
	top:50%;
}
.dark .field-separator.listcontainer.label-shown.other:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:35%;
}
.dark .field-separator.textcontainer.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:55%;
}
.dark .field-separator.deep.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:77%;
}
.dark .field-separator.deep2.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:95%;
}
/** begin form field labels extension **/


/******* End Dark Styles *******/

/******* Begin Light Styles *******/

/* begin pseudoselect control */

.light .pseudoselect {
	position:relative;
	display:inline-block;
	width:100%;
	padding: 0 0 0 .75rem;
	height:2.75rem;
	line-height:2.75rem;
	font-size:1rem;
	color:#000;
	border: 1px solid #000;
	/*border-width: 0 0 1px 0;*/
	background:transparent;
	outline:none;
	/*margin-bottom:.5em;*/
	background: transparent url(IS_Dropdown_Arrow_Down_Revised.svg) right .75rem center no-repeat;
	background-size: 0.75rem 0.4375rem;
	cursor:default;
	text-align:left;
}
.light .pseudoselect.errorstate {
	border-color:#CE1E1E;
	color:#CE1E1E;
	background: transparent url(IS_Dropdown_Arrow_Down_Error_Revised.svg) right .75rem center no-repeat;
	background-size: 0.75rem 0.4375rem;
}
.light .pseudoselect.open {
	background: transparent url(IS_Dropdown_Arrow_Up_Revised.svg) right .75rem center no-repeat;
	background-size: 0.75rem 0.4375rem;
}
.light .pseudoselect.open.errorstate {
	border-color:#CE1E1E;
	color:#CE1E1E;
	background: transparent url(IS_Dropdown_Arrow_Up_Error_Revised.svg) right .75rem center no-repeat;
	background-size: 0.75rem 0.4375rem;
}
.light .psselections {
	position:absolute;
	max-height:300px;
	left:0;
	/*right:0;*/
	width:100%;
	top:2.70rem;
	margin: 0;
	padding:0 0 1rem 0;
	font-size:1rem;
	color:#000;
	background:#E6E6E6;
	border:1px solid #000;
	border-width:0 1px 1px 1px;
	overflow:auto;
	display:none;
	z-index:10000;
	outline:1px none red;
}
.light .psselections label {
	display:block;
	font-size:1rem;
	cursor:pointer;
	text-align:left;
	/*border: 1px solid #000;
	border-width: 0 0 1px 0;*/
	color:#000;
	height:3.5rem;
	line-height:3.5rem;
	vertical-align:middle;
}
.light .psselections label:hover {
	background:#EDEDED;
}

.light .selectioncount {
	font-size:.9rem;
}

/* end pseudoselect control */

/* begin filter pseudoselect control */

.light .pseudoselect.filter {
	position:relative;
	display:inline-block;
	width:100%;
	padding: 0 0 .75rem .75rem;
	font-size:1.4rem;
	color:#272727;
	border: 1px solid #272727;
	border-width: 0 0 2px 0;
	background:transparent;
	outline:none;
	margin-bottom:.5em;
	background: transparent url(IS_Arrow_Down_Black.png) right .5rem center no-repeat;
	background-size: 1.3125rem 1.5625rem;
	cursor:default;
	text-align:left;
}
.light .pseudoselect.filter:hover {
	color:#8d8d8d;
}
.light .pseudoselect.filter.open {
	background: transparent url(IS_Arrow_Up_Black.png) right .5rem center no-repeat;
	background-size: 1.3125rem 1.5625rem;
}
.light .pseudoselect.filter .psselections {
	position:absolute;
	max-height:300px;
	left:0;
	/*right:0;*/
	width:100%;
	top:2.5rem;
	margin: 0;
	padding:0;
	font-size:1rem;
	color:#272727;
	background:#ededed;
	overflow:auto;
	display:none;
	z-index:10000;
	border:none;
	outline:1px none red;
}
.light .pseudoselect.filter .psselections label {
	display:block;
	font-size:1rem;
	cursor:pointer;
	text-align:left;
	border: 1px solid #272727;
	border-width: 0 0 2px 0;
	color:#272727;
	height:3.5rem;
	line-height:3.5rem;
	vertical-align:middle;
}

.light .pseudoselect.filter .selectioncount {
	font-size:.9rem;
}

.light .pseudoselect.filter input[type=radio].single-check + span {
	font-size:1.2rem;
}

/* end filter pseudoselect control */

.light input[type=radio].single-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

.light input[type=radio].single-check + span {
	font-size:1rem;
	color:#000;
	cursor:pointer;
	padding-left:.75rem;
}
.light .psselections label:hover input[type=radio].single-check + span {
	color:#8D8D8D;
}
.light input[type=radio].single-check:checked + span {
	color:#8D8D8D;
}


input, textarea, select {
	-webkit-appearance: none;
	border-radius:0;
}

.light input[type=text],.light input[type=email],.light input[type=password],.light input[type=number],.light input[type=tel],.light input[type=submit],.light textarea,.light select {
	font-family:"Founders Grotesk Web Regular";
	width:100%;
	padding:.75rem;
	font-size:1rem;
	color:#000;
	border:1px solid #000;
	background:transparent;
	outline:none;
	/*margin-bottom:.5rem;*/
}
.light input[type=text].errorstate,.light input[type=email].errorstate,.light input[type=password].errorstate,.light input[type=number].errorstate,.light input[type=tel].errorstate,.light input[type=submit].errorstate,.light textarea.errorstate,.light select.errorstate {
	color:#CE1E1E;
	border-color:#CE1E1E;
}
.light textarea {
	font-family:"Founders Grotesk Web Regular";
	font-size:1rem;
	display: block;
	color:#000;
	border:1px solid #000;
	min-height:13.5rem;
}

.light input[type=submit] {
	position:relative;
	width:auto;
	min-width:10rem;
	background:#000;
	color:#ededed;
	cursor:pointer;
	border:1px solid #000;
	padding:.75rem;
	font-size:1rem
}
.light input[type=submit]:hover {
	color:#ededed;
	background:#272727;
}
.light input[type=submit].errorstate {
	width:auto;
	background:transparent;
	color:#CE1E1E;
	cursor:pointer;
	border:1px solid #CE1E1E;
	padding:.75rem;
	font-size:1rem
}
.light input[type=submit].errorstate:hover {
	color:#ededed;
	background:#CE1E1E;
}

.light input[type=submit].disabled {
	opacity:0.5;
}

.light input[type=submit]:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:10px;
	background:red;
	z-index:100;
}


.light button[type=submit] {
	position:relative;
	width:auto;
	background:#000;
	color:#ededed;
	cursor:pointer;
	border:1px solid #000;
	padding:.75rem;
	font-size:1rem;
	min-width:9rem;
}
.light button[type=submit]:hover {
	color:#ededed;
	background:#272727;
}
.light button[type=submit].errorstate {
	width:auto;
	background:transparent;
	color:#CE1E1E;
	cursor:pointer;
	border:1px solid #CE1E1E;
	padding:.75rem;
	font-size:1rem
}
.light button[type=submit].errorstate:hover {
	color:#ededed;
	background:#CE1E1E;
}

.light button[type=submit].disabled {
	opacity:0.5;
}

.light button[type=submit] .progress-indicator {
	position:absolute;
	left:-1px;
	top:-1px;
	width:0;
	height:3px;
	background:#ededed;
}

/*.light button[type=submit]:before {
	content:'';
	position:absolute;
	left:-1px;
	top:-1px;
	width:0;
	height:0;
	background:#ededed;
	z-index:100;
	transition: width 4s;
}
.processing button[type=submit] {
	border-top:none;
}*/
.light .processing > * {
	opacity:.5;
}
.light .processing button[type=submit]:before {
	width:calc(100% + 1px);
	height:3px;
}
/* begin custom checkbox */

.light label.checkboxcontainer {
	display:inline-block;
	font-size:1rem;
	color:#000;
	vertical-align:middle;
	cursor:pointer;
}
.light label.checkboxcontainer a {
	text-decoration:underline;
}
.light label.checkboxcontainer:hover {
	color:#272727;
}
.light label.checkboxcontainer input[type=checkbox] {
	width:0px;
	height:0px;
	position:absolute;
	left:-9999px;
}
.light label.checkboxcontainer input[type=checkbox] + span {
	display:inline-block;
	vertical-align:middle;
	width:0.875rem;
	height:0.875rem;
	margin-bottom:1px;
	margin-right:0.625rem;
	/*background:url(CY_Tick_Box.svg) left top no-repeat;
	background-size:100%;*/
	border:1px solid #000;
	background:transparent;
	outline:1px none red;
}

.light label.checkboxcontainer input[type=checkbox]:checked  + span {
	border:1px solid #000;
	background:#000;
	
}
.light label.checkboxcontainer input[type=checkbox]:checked  + span.labeltext {
	color:#000;
}

.light label.checkboxcontainer.errorstate {
	color:#CE1E1E;
}

.light label.checkboxcontainer.errorstate input[type=checkbox] + span {
	border:1px solid #CE1E1E;
	background:transparent;
	
}
.light label.checkboxcontainer.errorstate input[type=checkbox]  + span.labeltext {
	color:#CE1E1E;
}

/* end custom checkbox */

/* begin custom file input control */

.light .custom-file-upload {
	display:inline-block;
	font-size:0;
	width:100%;
	height:auto;
	color:#000;
	border:1px solid #000;
	background:transparent;
	padding:0;
	overflow:hidden;
}

.light .custom-file-upload .filename-display {
	display:inline-block;
	width:64%;
	font-size:1rem;
	padding:.75rem;
}
.light .custom-file-upload .btn {
	position:relative;
	display:inline-block;
	width:36%;	
	background:transparent;
	color:#000;
	cursor:pointer;
	padding:.75rem;
	font-size:1rem;
	text-align:center;
	border:1px solid #000;
	border-width:0 0 0 1px;
	cursor:pointer;
}
.light .custom-file-upload .btn:hover {
	background:#000;
	color:#ededed;
}

.light .custom-file-upload.errorstate {
	color:#CE1E1E;
	border:1px solid #CE1E1E;
}

.light .custom-file-upload.errorstate .btn {
	border-color:#CE1E1E;
	color:#CE1E1E;
}
.light .custom-file-upload.errorstate .btn:hover {
	background:#CE1E1E;
	color:#ededed;
}
.light .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 */

.light ::-webkit-input-placeholder {
  
   color:#000;
}
.light :hover::-webkit-input-placeholder {
   color:#000;
}
.light :focus::-webkit-input-placeholder {
   color:#000;
}


.light :-moz-placeholder { /* Firefox 18- */
   color:#000;
   opacity:1;
}
.light :hover:-moz-placeholder { /* Firefox 18- */
   color:#000;
   opacity:1;
}
.light :focus:-moz-placeholder { /* Firefox 18- */
   color:#000;
   opacity:1;
}

.light ::-moz-placeholder {  /* Firefox 19+ */
  color:#000;
   opacity:1;
}
.light :hover::-moz-placeholder {  /* Firefox 19+ */
   color:#000;
      opacity:1;
}
.light :focus::-moz-placeholder {  /* Firefox 19+ */
   color:#000;
      opacity:1;
}

.light :-ms-input-placeholder {  
   color:#000;
}
.light :hover:-ms-input-placeholder {  
   color:#000;
}
.light :focus:-ms-input-placeholder {  
   color:#000;
}

.light .errorstate::-webkit-input-placeholder {
   color:#CE1E1E;
}

.light .errorstate:-moz-placeholder { /* Firefox 18- */
  color:#CE1E1E;
     opacity:1;
}

.light .errorstate::-moz-placeholder {  /* Firefox 19+ */
   color:#CE1E1E;
      opacity:1;
}

.light .errorstate:-ms-input-placeholder {  
   color:#CE1E1E;
}


.light ::placeholder {
  
   color:#000;
      opacity:1;
}
.light :hover::placeholder{
   color:#000;
      opacity:1;
}
.light :focus::placeholder {
   color:#000;
      opacity:1;
}

.light .errorstate::placeholder {  
   color:#CE1E1E;
      opacity:1;
}


/** begin form field labels extension **/

.light .field-separator {
	position:relative;
}
.light .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;
}

.light .field-separator.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
}

.light .field-separator.field-error:before {
	color:#CE1E1E;
}

.light .field-separator.textarea-container.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:32%;
}

.light .field-separator.listcontainer.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:50%;
}
.light .field-separator.listcontainer.label-shown.other:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:35%;
}
.light .field-separator.textcontainer.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:55%;
}
.light .field-separator.deep.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:77%;
}
.light .field-separator.deep2.label-shown:before {
	content:attr(data-before);
	opacity:.5;
	visibility:visible;
	top:95%;
}
/** begin form field labels extension **/

/******* End Light 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;
	width:100%;
	height:100%;
	left:0px;
	top:0px;
	background:#000;
	background:rgba(0,0,0,.8);
	z-index:10000000000;
	display:none;
}

#fullscreen-overlay4 {
	background:rgba(0,0,0,.8);
}

#fullscreen-overlay4 a.sharebutton {
	display:inline-block;
	width:auto;
	padding: 1.25rem 4rem 1.25rem 3rem;
	font-size: 1.3rem;
	/*text-transform: uppercase;*/
	letter-spacing: 1px;
	color: #fff;
	text-decoration: none !important;
	outline: none;
	margin: 1rem 0 1rem 0;
	border: 1px solid #ededed;
	text-align: center;
	color:#ededed;
	background:transparent;
	transition: background-color .25s, color .25s;
}
#fullscreen-overlay4 a.sharebutton:hover {
	background:#ededed;
	color:#272727;
	opacity: 0.9;
}

#fullscreen-overlay4 .popupformbox .popupformfields {
	position:relative;
	min-height:200px;
}

#fullscreen-overlay4 .popupformbox .popupformfields p {
	text-align:left;
	margin-bottom:1rem;
}

#fullscreen-overlay4 .popupclosebox {
	position:absolute;
	right:40px;
	top:40px;
	width:22px;
	height:22px;
	background:url(Desktop_Popup_Close_Off.png) left top no-repeat;
	background-size:100%;
	cursor:pointer;
}
#fullscreen-overlay4 .popupclosebox:hover {
	background:url(Desktop_Popup_Close_On.png) left top no-repeat;
	background-size:100%;
}

#fullscreen-overlay4 .popupformbox {
	position:absolute;
	left:50%;
	top:50%;
	width:40%;
	max-width:750px;
	transform: translateX(-50%) translateY(-50%);
	text-align:center;
	color:#fff;
	outline:1px none red;
}
#fullscreen-overlay4 .popupformbox h3, #fullscreen-overlay4 .popupformbox p {
	color:#fff;
	margin:auto;
	margin-bottom:3rem;
	/*text-transform:uppercase;*/
}
#fullscreen-overlay4 .popupformbox p {
	width:60%;
}

/* 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 */