/*================= FONTS ====================*/

@font-face {
	font-family: 'icomoon';
	src:url('../fonts/icomoon.eot?-ubijxc');
	src:url('../fonts/icomoon.eot?#iefix-ubijxc') format('embedded-opentype'),
		url('../fonts/icomoon.woff?-ubijxc') format('woff'),
		url('../fonts/icomoon.ttf?-ubijxc') format('truetype'),
		url('../fonts/icomoon.svg?-ubijxc#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
	font-family: 'icomoon';
	speak: none;
	font-size: 14px;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* ============ Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
[class^="icon-"]:before, [class*=" icon-"]:before {
	position: relative;
	font-size: 18px;
	color: #f5f5f5;
	transition: color 200ms ease-in;
	-webkit-transition: color 200ms ease-in;
	-moz-transition: color 200ms ease-in;
	-o-transition: color 200ms ease-in;
}
.noselect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.icon-enlarge:before {
    content: "\e60c";
    color: rgba(250,250,250,0.6);
    font-size: 1rem;
    z-index: 999;
}
span.icon-enlarge {
	position: absolute;
	top: 14px;
	right: 14px;
	padding: 14px;
	border-radius: 100%;
	background-color: rgba(50,50,50,0.4);
	-webkit-transition: all 250ms linear;
	-moz-transition: all 250ms linear;
	-o-transition: all 250ms linear;
	transition: all 250ms linear;
}
.lightbox-anchor:hover span.icon-enlarge {
	background-color: rgba(50,50,50,0.8);
}
.lightbox-anchor:hover span.icon-enlarge:before {
	color: rgba(250,250,250,1);
}
.icon-cross-bold:before {
	content: "\e609";
	color: #333;
}
.lightbox .icon-cross-bold:before {
	color: rgba(250,250,250,0.8);
}

.icon-hamburger:before {
	content: "\e60a";
	color: #333;
}
#main-menu-btn.open .icon-hamburger:before {
	content:"\e609";
}
.icon-sections-toggle:before {
	content: "\e60b";
	color: #333;
	font-size: 24px;
	bottom: 2px;
}
.icon-cross:before {
	content: "\e600";
	top: 2px;
}
.icon-arrow-up:before {
	content: "\e601";
}
.icon-arrow-right:before {
	content: "\e602";
	left: 1px;
}
.icon-arrow-down:before {
	content: "\e603";
}
.icon-arrow-left:before {
	content: "\e604";
	right: 1px;
}
.lightbox .icon-arrow-right:before,
.lightbox .icon-arrow-left:before,
.lightbox .icon-cross-bold:before {
	font-size: 0.8rem;
}
.icon-google-plus:before {
	content: "\e605";
	color: #005387;
	font-size: 15px;
}
.icon-facebook:before {
	content: "\e606";
	color: #005387;
	font-size: 15px;
}
.icon-twitter:before {
	content: "\e607";
	color: #005387;
	font-size: 15px;
	bottom: 2px;
}
.icon-linkedin:before {
	content: "\e608";
	color: #005387;
	font-size: 15px;
	bottom: 2px;
}
.social-media li a:hover > .icon-google-plus:before {
	color: #d34836;
}
.social-media li a:hover > .icon-facebook:before {
	color: #3b5998;
}
.social-media li a:hover > .icon-twitter:before {
	color: #4099FF;
}
.social-media li a:hover > .icon-linkedin:before {
	color: #007bb6;
}
/* ================================== */
* { 
	font-size: 14px; 
	color: #333; 
	margin: 0;
	padding: 0;
	box-sizing: border-box; 
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
body {
	overflow-x: hidden;
	min-width: 320px;
}
a { text-decoration: none; font-family:'Avenir LT W01 65 Medium'; }
a:hover { color:#E33942 }
h1 {
	font-family:'Avenir LT W01 95 Black';
	font-size: 2rem;
	text-transform: uppercase;
	margin: 0px 0px 1rem 0px;
}
h2 {
	font-size: 1.214rem;
	line-height: 1.429rem;
	font-family:'Avenir LT W01 45 Book';
	margin: 1.429rem 0;
	text-transform: uppercase;
} 
h3 {
	margin: 0 0 1rem 0;
}
h3, h3 > a {
	font-size: 1.148rem;
}
p {
	font-family: 'Frutiger Neue W01 Book', sans-serif;
	font-size: 1.0715rem;
	line-height: 1.9rem;
	margin: 1rem 0; 
}
p:first-child {
	margin-top: 0;
}
p:last-child {
	margin-bottom: 0;
}
ul {
	margin: 1.429rem 0;
	padding-left: 1.0715rem;
}
ul:last-child {
	margin-bottom: 0;
}
ul > li {
	line-height: 2rem;
	font-family: 'Frutiger Neue W01 Book', sans-serif;
	font-size: 1.0715rem;
}
img {
	max-width: 100%;
}
button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: transparent;
	border: none;
}
button:focus {outline:0;}

/* ============================= LAYOUT ================================ */
/* Mobile First */
.container {
	width: 100%;
	background: #f0f0f0;
	overflow: hidden;
	height: auto;
	min-height: 98vh;
	position: relative;
	padding: 3rem 0;
}

.portfolio > .container {
	padding-top: 0;
}
#slideshow-container {
	height: 98vh;
	padding: 0;
}
.first-container {
	margin-top: 4rem;
}
.container.white {
	background-color: #fff;
}
.container.blue {
	background-color: #005387;
	color: #fff;
}
.slider, 
.commentary,
.small-col {
	clear: both;
	width: 80%;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.small-col h2 {
	text-transform: none;
}
.commentary { margin-top: 50px; }
div[id*=anchor], div[id^=anchor] {
	width: 100%;
	float: right;
}
.left-aligned-col {
	margin-top: 1rem;
	padding: 0 28px;
	width: 100%;
	min-width: 320px;
	float: left;
}
.left-aligned-col.no-border {
	border-left: none;
}
.full-left-aligned-col {
	float: left;
	width: 100%;
	min-width: 320px;
	margin-top: 28px;
	padding: 0 28px;
}
.full-left-aligned-col > img {
	float: left;
	width: 100%;
}
.full-left-aligned-col > footer {
	float: left;
	display: block;
	padding: 2rem 0;
	font-weight: normal;
	font-size: 1rem;
}
.right-aligned-col {
	float: right;
	width: 100%;
	margin-top: 1rem;
	min-width: 320px;
	padding: 0 28px;
}
.double-col-right {
	margin-top: 1rem;
}
.double-col-right {
	overflow: auto;
}
@media (max-width: 1023px) {
	.double-col-left,
	.double-col-right {
		margin: 1rem;
	}
	.double-col-right {
		margin-top: 2rem;
	}
	.double-col-left:first-child {
		margin-top: 3.5rem;
	}
	.container.padding-top {
		padding-top: 3.5rem;
	}
}

.left-img {
    padding-right:14px;
    display: none;
}
.left-img,
.left-inner {
	float: left;
	width: auto;
}
.left-inner {
	margin-left: 0;
	width: 100%;
}
.inner-half {
	width: 100%;
	float: left;
}
blockquote {
	font-style: italic;
	font-family: Georgia;
	font-size: 1rem;
	margin: 14px 0;
	line-height: 2rem;
}
span.red-quote {
	color: #E33942;
	font-size: 1.1rem;
}
footer {
	float: right;
	font-weight: 400;
	font-family:'Avenir LT W01 55 Roman';
	font-size: 1rem
}
span.strong {
	font-weight: 400;
	font-family:'Avenir LT W01 65 Medium';
	font-size: 1.2rem;
}
b {
	font-family:'Avenir LT W01 65 Medium';
	font-weight: 400;
	font-size: 1.2rem;
}
ul.horizontal-links {
	padding: 14px 0;
	display: block;
	margin: 2rem auto;
	width: 498px;
}
@media (max-width: 499px) {
	ul.horizontal-links {
		width: 100%;
	}
}
ul.horizontal-links li {
	list-style-type: none;
	display: inline-block;
}
ul.horizontal-links li > a {
	color: #2B6F98;
	font-size: 0.9rem;
	font-weight: 800;
	font-family:'Avenir LT W01 85 Heavy';
	padding: 0 7px;
}
ul.horizontal-links li:after {
	content: "";
	display: inline-block;
	height: 1px;
	width: 8px;
	background-color: #2B6F98;
	position: relative;
	bottom: 5px;
}
ul.horizontal-links li:last-child:after {
	display: none;
}
.part-strike {
	border-bottom: 1px solid #dfdfdf; 
	display: block;
	float: left;
	width: 50%;
	color: #dfdfdf;
	height: 2px;
	padding: 0;
	margin-bottom: 28px;
	margin-left: -28px;
}
.img-strike {
	display: none;
}


@media (min-width: 500px) {
	.small-col {
		width: 50%;
		clear: none;
		float: left;
		padding-left: 10%;
		padding-right: 10%;
	}
	.small-col:nth-child(odd) {
		padding-right: 5%;
	}
	.small-col:nth-child(even) {
		padding-left: 5%;
	}
	.left-img {
		display: block;
	}
	.left-inner {
		border-left: 1px solid #dfdfdf;
		padding-left: 28px;
		margin-left: 0;
		width: 78%;
	}
}
/* Desktop Styles Starting 1024px vw */
@media (min-width: 1024px) {
	body {
		margin-right: 8px;
		margin-left: 100px;
	}
	.container {
		height: auto;
		min-height: 98vh;
		width: 100%;
		float: right;
		position: relative;
		padding: 4rem 0;
		margin-top: 8px; /* fallback */
		margin-bottom: 8px; /* fallback */
		margin-top: 1vmin;
		margin-bottom: 1vmin;	
	}
	.container.less-padding {
		padding: 2rem 0 !important;
	}
	.centered {
		margin-top: 5% !important; 
	}
	.small-col {
		clear: none;
		float: left;
		width: 33%;
		padding: 0 5%;
	}
	.small-col:first-child,
	.small-col:nth-child(4n) {
		padding-left: 0;
	}
	.small-col:nth-child(3n) {
		padding-right: 0;
	}
	.small-col:nth-child(3n+2) {
		padding: 0 2.5%;
	}
	.small-container {
		padding: 4rem 8%;
		float: left;
	}
	.left-aligned-col {
		margin: 0 auto;
		width: 60%;
		float: none;
		padding-left: 2rem;
		border-left: 1px solid rgba(223, 223, 223, 0.8);
		overflow: hidden;
	}
	.full-left-aligned-col {
		margin-top: 4rem;
		margin-bottom: 4rem;
		margin-right: auto;
		margin-left: auto;
		left: 10%;
		position: relative;
		border-right: rgba(223, 223, 223, 0.8);
	}
	.full-left-aligned-col > img {
		padding-right: 28px;
		width: auto;
		border-right: 1px solid rgba(223, 223, 223, 0.8);
	}
	.full-left-aligned-col > footer {
		display: inline;
		margin-top: 135px;
		padding: 0 1rem;
		max-width: 170px;
	}
	.img-strike {
		display: block;
		float: left;
		width: 3%;
		margin-left: 0;
		position: relative;
		margin-top: 153px;
	}
	.right-aligned-col {
		width: 50%;
		position: relative;
		overflow: auto;
		right: 20%;
		margin-top: 0;
		border-left: 1px solid rgba(223, 223, 223, 0.8);
	}
	/* Blue & Red Details */
	.blue .right-aligned-col,
	.blue .left-aligned-col,
	.red .right-aligned-col,
	.red .left-aligned-col {
		border-left: 1px solid rgba(223, 223, 223, 0.4);
	}
	.blue .full-left-aligned-col > img,
	.red .full-left-aligned-col > img {
		border-right: 1px solid rgba(223, 223, 223, 0.4);
	}
	.blue .strike > h1:after, .strike > h3:after,
	.red .strike > h1:after, .strike > h3:after {
		background: rgba(223, 223, 223, 0.4);
	}
	.blue .part-strike,
	.red .part-strike {
		border-bottom: 1px solid rgba(223, 223, 223, 0.4);
	}

	.left-inner {
		width: 80%;
	}
	.left-img {
		margin-left: -28px;
	}
	.double-col-left {
		float: left;
		width: 43%;
		margin-left: 6%;
	}
	.double-col-right {
		float: right;
		width: 40%;
		margin-right: 6%;
	}
	#anchor-one {
		padding-top: 0;
	}
}d

@media(min-width: 1200px) {
	.left-inner {
		width: 80%;
		margin-left: 28px;
	}
	.left-aligned-col {
		width: 55%;
	}
	.centered {
		margin-top: 3% !important; 
	}
	.double-col-left {
		float: left;
		width: 42%;
		margin-left: 8%;
	}
	.double-col-right {
		float: right;
		width: 36%;
		margin-right: 10%;
	}
}
@media(min-width: 1920px) {
	.centered {
		margin-top: 7% !important; 
	}
}

.top-border,
.bottom-border {
	display: none;
}

@media(min-width: 1024px) {
/* Classes for Frame Effect */
	.top-border,
	.bottom-border {
		position: fixed;
		height: 8px; /* fallback */
		height: 1vmin;
		width: 100%;
		z-index: 999;
		background: #fff;
		-webkit-transform: translateZ(0);
	}
	.top-border {
		top: 0 !important;
	}
	.bottom-border {
		bottom: 0 !important;
	}
}

/* -------------------------- START OF SIDEBAR --------------------------- */
/* Mobile First */
.sidebar {
	position: fixed;
	width: 100%;
	background: #fff;
	min-height: 70px;
	height: auto;
	top: 0;
	left: 0;
	z-index: 900;
	transform: translateZ(0);
	-webkit-transform: translateZ(0);
}
button.dropdown-btn {
	float: right;
	padding: 20px 7px;
	height: 70px;
	width: auto;
	background-color: #fff;
	font-family:'Avenir LT W01 45 Book';
}
button#sections-menu-btn {
	padding-right: 14px;
}
button.dropdown-btn > span {
	float: left;
	text-transform: uppercase;
}
button.dropdown-btn > span:first-child {
	line-height: 32px;
	font-size: 12px;
}
button.dropdown-btn > span:last-child {
	padding: 6px 7px;
}
button.dropdown-btn.open > span:first-child {
	color: #2B6F98;
	font-weight: 700;
}
#sections-menu-btn.open span.icon-sections-toggle {
	visibility: visible;
	-webkit-transform: rotate(180deg);
	-webkit-transform-origin: 19px 15px;
	-moz-transform: rotate(180deg);
	-moz-transform-origin: 19px 15px;
	-o-transform: rotate(180deg);
	-o-transform-origin: 19px 15px;
	transform: rotate(180deg);
	transform-origin: 19px 15px;
}

#logo-container {
	float: left;
	display: inline-block;
	height: 5rem;
}
.menu-container {
	display: none;
	width: 100%;
	height: auto;
	position: absolute;
	z-index: 990;
	top: 74px;
	width: 180px;
	padding: 28px 42px;
	background-color: #fff;
	-webkit-box-shadow: 7px 3px rgba(51,51,51,0.1);
	-moz-box-shadow: 7px 3px rgba(51,51,51,0.1);
	box-shadow: 7px 3px rgba(51,51,51,0.1);
}
div.menu-container#primary-menu {
	right: 75px;
}
div.menu-container#mobile-sections {
	right: 4px;
}
/* SEIRIM LOGO SVG */
#seirim-logo { 
	margin-top: 4px;
	margin-left: 16px;
}
#seirim-logo:hover  #seirim-logo-fill { fill:#000;}
#logo-helper {
	height: 5rem;
	display: table-cell;
	vertical-align:middle;
}
.menu, 
.sub-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}
.sub-menu {
	font-weight: bold;
}
.menu > li,
.sub-menu > li {
	display: block;
}
.menu > li > a {
	text-transform: uppercase;
	display: block;
	line-height: 38px;
	font-size: 12px;
}
.menu > li > a:hover, 
.menu > li.active > a { 
	text-decoration: none; 
	color: #2B6F98;
	font-weight: bold; 
}
.mob-contact-info {
	margin: 0;
	padding: 0;
	display: block;
	overflow: auto;
}
.mob-contact-info li {
	list-style-type: none;
}
.mob-contact-info li a {
	text-transform: lowercase;
	color: #555;
	font-size: 11px;
	line-height: 42px;
}
@media (min-width: 600px) {
	.hamburger-nav {
		display: none;
	}
	.sidebar {
		width: 100%;
	}
}
/* Sidebar Desktop Styles */
@media (min-width: 1024px) {
	#logo-container {
		float: none;
	}
	.dropdown-nav#main-menu,
	.dropdown-nav#sections-menu,
	.mob-contact-info {
		display: none;
	}
	.menu-container {
		width: 108px;
		display: inline-block;
		margin-top: 0;
		padding: 0;
		background-color: #fff;
		box-shadow: 0px;
		-webkit-box-shadow: 0px 0px;
		-moz-box-shadow: 0px 0px;
		-o-box-shadow: 0px 0px;
	}
	div.menu-container#primary-menu {
		right: 0px;
	}
	.sidebar {
		position: fixed;
		left: 0;
		top: 0;
		min-width: 108px;
		width: 108px;
		height: 100%;
		min-height: 560px;
		overflow: hidden;
	}
	.menu {
		margin-left: 18px; /* fallback */
		margin-left: 1.286rem;
		margin-right: 0px;
		margin-top: 18px; /* fallback */
		margin-top: 1.286rem;
	}
	.menu > li > a {
		color: #2A2B31;
		line-height: 2rem;
		margin: 1rem 0;
		margin-right: 0px;
		letter-spacing: 0.5px;
		border-bottom: none;
	}
	.menu-container {
		float: none;
		position: relative;
		top: 0;
		height: 100%;
	}
	#logo-container {
		display: block;
		height: 50px;
	}
}
/* =================== Sidebar Submenu ================= */
.sub-menu {
	display: none;
	margin: 0;
}
.dummy-item {
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important; 
	visibility: hidden !important;
	overflow: hidden;
}
div#mobile-sections > .sub-menu {
	display: block;
}
@media (min-width: 1024px) {
	.sub-menu {
		display: block;
		padding: 0;
		margin-top: -0.857rem;
		height: 0px;
		overflow: hidden;	
	}
	.mobile-sections > div#mobile-sections {
		display: none;
	}
	ul.menu > li.active > ul.system-sub-menu {
		-webkit-animation-name: openSystemsMenu;
		-webkit-animation-duration: 0.25s;
  		-webkit-transition-timing-function: ease-in;
  		-webkit-animation-fill-mode: both;
	}
	@-webkit-keyframes openSystemsMenu {
		0% { height: 0; }
		100% { height: 220px; }
	}
	ul.menu > li.active > ul.portfolio-sub-menu {
		-webkit-animation-name: openPortfolioMenu;
		-webkit-animation-duration: 0.25s;
  		-webkit-transition-timing-function: ease-in;
  		-webkit-animation-fill-mode: both;
	}
	@-webkit-keyframes openPortfolioMenu {
		0% { height: 0; }
		100% { height: 260px; }
	}
	#main.is-exiting ul.menu > li.active > ul.sub-menu {
		height: 0;
		-webkit-transition: height 300ms linear;
	}
	.sub-menu > li > a {
		text-transform: none;
		line-height: 0.8rem;
		font-size: 0.7rem;
		font-family: 'Avenir LT W01 65 Medium';
		font-weight: 700;
		font-color: #121212;
		display: block;
		padding: 0.416rem;
		border-left: 2px solid rgba(210,210,210,0.5);
	}
	.sub-menu > li > a:hover,
	.sub-menu > li > a.current {
		font-weight: bold;
		color: #e33942;
		border-left: 2px solid #e33942;
	}
}	

/* ================= FRAME NAV ARROWS ================ */
.frame-navs {
	display: none;
}
.frame-navs button {
	width: 28px;
}
.frame-navs button span:before {
	color: #333;
	font-size: 28px;
}
.frame-navs .centered {
	margin: 0 auto;
	width: 60px;
}
@media (min-width: 1024px) {
	.frame-navs {
		display: block;
		position: absolute;
		bottom: 14px;
		left: 0;
		width: 100%;
		z-index: 999;
	}
}

/* ======================= Slideshow SVGs ======================= */
.goto-case-study {
	color: #E33942;
  	margin-top: 1rem;
  	display: inline-block;
}
.slideshow li p.fade-in, .slideshow li a.fade-in {
	opacity: 0;
	-webkit-transition: opacity 300ms ease-in;
	-moz-transition: opacity 300ms ease-in;
	-o-transition: opacity 300ms ease-in;
	transition: opacity 300ms ease-in;	
}	
.slideshow li.current p.fade-in, .slideshow li.current a.fade-in {
	opacity: 1;
}
.slideshow li h2.fade-in {
	opacity: 0;
	-webkit-transition: opacity 200ms linear;
	-moz-transition: opacity 200ms linear;
	-o-transition: opacity 200ms linear;
	transition: opacity 200ms linear;	
}	
.slideshow li.current h2.fade-in {
	opacity: 1;
}
	
.slideshow li .description svg {
	margin: 0.5rem 0 1rem 0;
	padding-left: 1px;
	stroke: #121212;
	stroke-width: 0.5px;
}

@media screen and (max-width:1023px) {
	.slideshow li .description svg {display: none;}
}	

.slideshow li .description svg #left {
		-webkit-transform: translateX(-600px);
		-moz-transform: translateX(-600px);		
		transform: translateX(-600px);
		-webkit-transition: -webkit-transform 300ms linear;
		-moz-transition: -moz-transform 300ms linear;
		-o-transition: -o-transform 300ms linear;		
		transition: transform 300ms linear;
	}
	
.slideshow li.current .description svg #left {
		-webkit-transform: translateX(0px);
		-moz-transform: translateX(0px);	
		transform: translateX(0px);
		-webkit-transition-delay: 300ms;
		-moz-transition-delay: 300ms;
		-o-transition-delay: 300ms;	
		transition-delay: 300ms;
	}	
	
.slideshow li .description svg #right {
		-webkit-transform: translateX(600px);
		-moz-transform: translateX(600px);		
		transform: translateX(600px);
		-webkit-transition: -webkit-transform 300ms linear;
		-moz-transition: -moz-transform 300ms linear;
		-o-transition: -o-transform 300ms linear;			
		transition: transform 300ms linear;
	}	
	
.slideshow li.current .description svg #right {
		-webkit-transform: translateX(0px);
		-moz-transform: translateX(0px);	
		transform: translateX(0px);
		-webkit-transition-delay: 300ms;
		-moz-transition-delay: 300ms;
		-o-transition-delay: 300ms;	
		transition-delay: 300ms;
	}	
		
.slideshow li .description svg #bottom {
		-webkit-transform: translateY(-600px);
		-moz-transform: translateY(-600px);	
		transform: translateY(-600px);
		-webkit-transition: -webkit-transform 300ms linear;
		-moz-transition: -moz-transform 300ms linear;
		-o-transition: -o-transform 300ms linear;				
		transition: transform 300ms linear;
	}	
	
.slideshow li.current .description svg #bottom {
		-webkit-transform: translate(0px);
		-moz-transform: translate(0px);	
		transform: translate(0px);
		-webkit-transition-delay: 300ms;
		-moz-transition-delay: 300ms;
		-o-transition-delay: 300ms;
		transition-delay: 300ms;
	}

/* Animation for First Slide */

.slideshow li:first-child h1 {
	-moz-animation-name: gotoProject;
    -moz-animation-iteration-count: once;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-duration: 1s;	

    -webkit-animation-name: gotoProject;
    -webkit-animation-iteration-count: once;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-duration: 1s;	

    animation-name: gotoProject;
    animation-iteration-count: once;
    animation-timing-function: ease-in-out;
    animation-duration: 1s;
}

@-moz-keyframes gotoProject {
    0% {
        opacity: 0;		
    }
    100% {
        opacity: 1;		
    }
}
	
@-webkit-keyframes gotoProject {
    0% {
        opacity: 0;		
    }
    100% {
        opacity: 1;		
    }
}
	
@keyframes gotoproject {
    0% {
        opacity: 0;		
    }	
    100% {
        opacity: 1;		
    }
}
	
.slideshow li:first-child .description svg #left {
	-moz-animation-name: leftSlide;
    -moz-animation-iteration-count: once;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-duration: 1s;	

    -webkit-animation-name: leftSlide;
    -webkit-animation-iteration-count: once;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-duration: 1s;	

    animation-name: leftSlide;
    animation-iteration-count: once;
    animation-timing-function: ease-in-out;
    animation-duration: 1s;
	}
	
@-moz-keyframes leftSlide {
    0% {
	    -moz-transform: translateX(-600px);	
    }
    100% {
        -moz-transform: translateX(0px);		
    }
}
@-webkit-keyframes leftSlide {
    0% {
        -webkit-transform: translateX(-600px);		
    }
    100% {
        -webkit-transform: translateX(0px);		
    }
}
@keyframes leftSlide {
    0% {
        transform: translateX(-600px);		
    }	
    100% {
        transform: translateX(0px);		
    }
}

.slideshow li:first-child .description svg #right {
	-moz-animation-name: rightSlide;
    -moz-animation-iteration-count: once;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-duration: 1s;	

    -webkit-animation-name: rightSlide;
    -webkit-animation-iteration-count: once;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-duration: 1s;	

    animation-name: rightSlide;
    animation-iteration-count: once;
    animation-timing-function: ease-in-out;
    animation-duration: 1s;
	}
	
@-moz-keyframes rightSlide {
    0% {
	    -moz-transform: translateX(600px);	
    }
    100% {
        -moz-transform: translateX(600px);		
    }
}
@-webkit-keyframes rightSlide {
    0% {
        -webkit-transform: translateX(600px);		
    }	
    100% {
        -webkit-transform: translateX(0px);		
    }
}
@keyframes rightSlide {
    0% {
        transform: translateX(600px);		
    }	
    100% {
        transform: translateX(0px);		
    }
}

.slideshow li:first-child .description svg #bottom {	
	-moz-animation-name: bottomSlide;
    -moz-animation-iteration-count: once;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-duration: 1s;	

    -webkit-animation-name: bottomSlide;
    -webkit-animation-iteration-count: once;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-duration: 1s;

    animation-name: bottomSlide;
    animation-iteration-count: once;
    animation-timing-function: ease-in-out;
    animation-duration: 1s;
	}
		

@-moz-keyframes bottomSlide {
    0% {
		-moz-transform: translateY(600px);
    }
    100% {
        -moz-transform: translateY(0px);		
    }
}
@-webkit-keyframes bottomSlide {
    0% {
        -webkit-transform: translateY(600px);		
    }
    100% {
        -webkit-transform: translateY(0px);		
    }
}
@keyframes bottomSlide {
    0% {
        transform: translateY(600px);	
    }	
    100% {
        transform: translateY(0px);		
    }
}
	
/* ================== Other Desktop Only Homepage SVGs ================== */
.svg-container {
	display: block;
	margin: 50px auto 40px auto;
	padding-bottom: 30px;
	border-bottom: 1px solid #333;
	width: 94%;
}
#services .svg-container {
	border-bottom: 1px solid #fff;
}
.svg-container h2 {
	margin: 0;
}
.svg-container svg {
	display: none;
}
@media (min-width: 480px) {
	.svg-container {
		width: 75%;
		min-width: 420px;
		max-width: 720px;
	}
}
@media (min-width: 1024px) {
	.svg-container {
		height: auto;
		top: 50%;
		margin-top: -16.5rem;
		margin-left: 8%;
		width: 25%;
		min-width: 0;
		position: absolute;
		border: none !important;
		float: left;
	}

	.svg-container h2 {
		margin: 0;
		line-height: 33rem;
	}
	.svg-container h2 a {
		font-family: 'Avenir LT W01 45 Book';
		font-size: 1.125rem;
		text-transform: uppercase;
		display: inline-block;
		float: left;
	}
	.svg-container svg {
		display: block;
		float: right;
		width: 40%;
		height: 33rem;
		position: static;
		transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		-ms-trasnform: rotate(0deg);
	}
}
@media (min-width: 1024px) and (max-width: 1919px) {
	.services.svg-container {
		margin-top: -27.5vh;
		height: 50px;
	}
	.services.svg-container h2 {
		line-height: 55vh;
	}
	.services.svg-container svg {
		width: 51%;
		height: 55vh;
	}
	#services .vertical-centered-460 {
		margin-top: -250px;
		margin-top: -27.5vh;
	}
}
@media (min-width: 1280px) {
	.blog.svg-container svg {
		width: 50%;
	}
	.services.svg-container svg {
		width: 61%;
	}
}
@media (min-width: 1366px) {
	.svg-container {
		margin-left: 10%;
	}
	.blog.svg-container svg {
		width: 55%;
	}
	.services.svg-container svg {
		width: 66%;
	}	
}
@media (min-width: 1600px) {
	.blog.svg-container svg {
		width: 62%;
	}
	.services.svg-container svg {
		width: 73%;
	}
}
@media (min-width: 1920px) {
	.svg-container {
		margin-left: 11.5%;
	}
	.blog.svg-container svg {
		width: 67%;
	}
	.services.svg-container svg {
		width: 77%;
	}
}
.vertical-top {
	transform: translateY(-500px);
	-webkit-transform: translateY(-500px);
}
.vertical-bottom {
	transform: translateY(500px);
}
.horizontal {
	transform: translateX(-500px);
}
div.blog.svg-container.animate .vertical-top,
div.services.svg-container.animate .vertical-top {		
	-webkit-animation-name: verticalTop;
    -webkit-animation-timing-function: linear;
	-webkit-animation-duration: 300ms;
	
	-moz-animation-name: verticalTop;
    -moz-animation-timing-function: linear;
	-moz-animation-duration: 300ms;
	
	-o-animation-name: verticalTop;
    -o-animation-timing-function: linear;
	-o-animation-duration: 300ms;
	
	animation-name: verticalTop;
	animation-timing-function: linear;
	animation-duration: 300ms;

	-webkit-animation-fill-mode: forwards;
	-moz-animation-fill-mode: forwards;
	-ms-animation-fill-mode: forwards;
	-o-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}
	
@-webkit-keyframes verticalTop {
  0%{
    -webkit-transform: translateY(-500px);
  }

  100% {
    -webkit-transform: translateY(0px);
  }
}

@-moz-keyframes verticalTop {
  0%{
    -moz-transform: translateY(-500px);
  }
  
   20%{
    -moz-transform: translateY(-500px);
  }

  100% {
    -moz-transform: translateY(0px);
  }
}

@-o-keyframes verticalTop {
  0%{
    -o-transform: translateY(-500px);
  }
  
   20%{
    -o-transform: translateY(-500px);
  }

  100% {
    -o-transform: translateY(0px);
  }
}

@keyframes verticalTop {
  0% {
    transform: translateY(-500px);
  }

  20% {
    transform: translateY(-500px);
  }  
  
  100% {
    transform: translateY(0px);
  }
}
	
div.blog.svg-container.animate .vertical-bottom,
div.services.svg-container.animate .vertical-bottom {
	-webkit-animation-name: verticalBottom;
    -webkit-animation-timing-function: ease-in-out;
	-webkit-animation-duration: 300ms;	
	
	-moz-animation-name: verticalBottom;
    -moz-animation-timing-function: ease-in-out;
	-moz-animation-duration: 300ms;	

	-o-animation-name: verticalBottom;
    -o-animation-timing-function: ease-in-out;
	-o-animation-duration: 300ms;		
	
	animation-name: verticalBottom;
	animation-timing-function: ease-in-out;
	animation-duration: 300ms;

	-webkit-animation-fill-mode: forwards;
	-moz-animation-fill-mode: forwards;
	-ms-animation-fill-mode: forwards;
	-o-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	}
	
@-webkit-keyframes verticalBottom {
  0%{
    -webkit-transform: translateY(500px);
  }
  
  20%{
    -webkit-transform: translateY(500px);
  }

  100% {
    -webkit-transform: translateY(0px);
  }
}

@-moz-keyframes verticalBottom {
  0%{
    -moz-transform: translateY(500px);
  }
  
  20%{
    -moz-transform: translateY(500px);
  }

  100% {
    -moz-transform: translateY(0px);
  }
}

@-o-keyframes verticalBottom {
  0%{
    -o-transform: translateY(500px);
  }
  
  20%{
    -o-transform: translateY(500px);
  }

  100% {
    -o-transform: translateY(0px);
  }
}

@keyframes verticalBottom {
  0% {
    transform: translateY(500px);
  }
  
  20% {
    transform: translateY(500px);
  }

  100% {
    transform: translateY(0px);
  }
}

div.blog.svg-container.animate .horizontal,
div.services.svg-container.animate .horizontal {
	-webkit-animation-name: Horizontal;
    -webkit-animation-timing-function: ease-in-out;
	-webkit-animation-duration: 0.8s;
	
	-moz-animation-name: Horizontal;
    -moz-animation-timing-function: ease-in-out;
	-moz-animation-duration: 0.8s;
	
	-o-animation-name: Horizontal;
    -o-animation-timing-function: ease-in-out;
	-o-animation-duration: 0.8s;
	
	animation-name: Horizontal;
	animation-timing-function: ease-in-out;
	animation-duration: 0.8s;

	-webkit-animation-fill-mode: forwards;
	-moz-animation-fill-mode: forwards;
	-ms-animation-fill-mode: forwards;
	-o-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	}
	
@-webkit-keyframes Horizontal {
  0%{
    -webkit-transform: translateX(-500px);
  }
  
  20%{
    -webkit-transform: translateX(-500px);
  }

  100% {
    -webkit-transform: translateX(0px);
  }
}

@-moz-keyframes Horizontal {
  0%{
    -moz-transform: translateX(-500px);
  }
  
  20%{
    -moz-transform: translateX(-500px);
  }

  100% {
    -moz-transform: translateX(0px);
  }
}

@-o-keyframes Horizontal {
  0%{
    -o-transform: translateX(-500px);
  }
  
  20%{
    -o-transform: translateX(-500px);
  }

  100% {
    -o-transform: translateX(0px);
  }
}

@keyframes Horizontal {
  0% {
    transform: translateX(-500px);
  }
  
   20% {
    transform: translateX(-500px);
  }

  100% {
    transform: translateX(0px);
  }
}

/* =========================== RESPONSIVE LAYOUT for HOMEPAGE CONTENT ====================== */
.col-third {
	float: left;
	width: 33.33%;
}
.footer {
	display: block;
	position: absolute;
	bottom: 10px;
	color: #BFC1C3;
	font-size: 11px;
	font-family: 'Avenir LT W01 45 Book';
	text-align: center;
	width: 100%;
}
.footer a {
	color: #BFC1C3;
	font-size: 11px;
}
.footer a:hover {
	color: #E33942;
}
.touch-link {
	display: block;
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 4.166rem;
	background: rgba(51, 51, 51, 0.2);
	line-height: 4.166rem;
	text-transform: uppercase;
	text-align: center;
}
@media (min-width: 1024px) {
	.touch-link {
		display: none;
	}
}

/* ================== Homepage News & Blog Sections =================== */
.content-container-1 {
	display: block;
	width: 94%;
	height: auto;
	margin: 0px auto 100px auto;
}
@media (min-width: 480px) {
		.content-container-1 {
		width: 75%;
		min-width: 420px;
		max-width: 720px;
	}
}
@media (min-width: 1024px) {
	.content-container-1 {
		width: 50%;
		float: left;
		margin-left: 50px;
	}
}
@media (min-width: 1280px) {
	.content-container-1 {
		width: 43.33%;
	}
}
@media (min-width: 1366px) {
	.content-container-1 {
		width: 40%;
	}
}
@media (min-width: 1920px) {
	.content-container-1 {
		width: 33.33%;
	}	
}
@media (min-width: 1024px) {
	.vertical-centered-460 {
		position: absolute;
		height: auto;
		top: 50%;
		margin-top: -16.5rem;
		left: 50%;
		margin-left: -10%; 
	}
}
.blog-row {
	min-height: 120px;
	margin-bottom: 2rem;
	display:block;
}
.blog-row img {
	float: left;
	cursor: pointer;
	height: 5.833rem;
	width: auto;
}
.headline-container {
	margin-left: 6.666rem;
}
@media (min-width: 480px) {	
	.blog-row img {
		height: 9rem;
	}
	.headline-container {
		margin-left: 10.833rem;
	}
}
@media (min-width: 1024px) {
	.headline-container {
		margin-left: 10.833rem;
	}
	.headline-container p {
		margin-bottom: 0;
	}
	.blog-row:last-child {
		margin-bottom: 0;
	}
}


/* =============== CUSTOMIZATION for HOMEPAGE SERVICES FRAME ================= */
#services,
#services a,
#services p, 
#services li {
	color: #fff;
}
#services li {
	font-size: 1rem;
}
#services a:hover, 
#services a:focus {
	color: #E33942;
}

.packages {
	width: 100%;
	height: auto;
	overflow: auto;
}
.packages > div {
	width: 100%;
	display: block;
	float: left;
}
.packages > div > a {
	display: block;
	font-size: 1rem;
	font-family: 'Avenir LT W01 45 Book';
	line-height: 2rem;
}
.packages > div > a:hover {
	color: #e33942;
}
.packages > div > a:before {
	content: "\00BB";
	display: inline-block;
	width: 12px;
}
#services .strike > h3 {
	float: none;
	color: #fff;
	text-transform: uppercase;
	font-weight: normal;
	font-size: 18px; 
}
@media (min-width: 680px) {
	.packages > div {
		width: 33.333%;
	}
}
/* =============== ABOUS US/SOLAR TERMINATOR FRAME ============== */
.solar-terminator-container {
	position: relative;
	display: block;
	height: auto;
	z-index: 10;
}
@media (min-width: 1024px) {
	.solar-terminator-container {
		height: 680px;
	}
}
.night {
  stroke: none;
  fill: #161A28;
  fill-opacity: 0.4;
}
.land {
  fill: #B1BFC8;
}
.solar-terminator {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	display: block;
	padding-top: 20px;
	border-top: 1px solid #fff;
	width: 90%;
	clear: both;
	background: url('../images/svg-pin-overlay.png') center center no-repeat;
	background-size: 100%;
	z-index: initial;
}
.solar-terminator svg {
	position: relative;
	z-index: -1;
}
.time-of-day {
	width: 90%;
	display:block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
	font-family: 'Avenir LT W01 45 Book';
	color: #fff; 
}
.time-of-day div {
	margin-bottom: 20px;
}
.time-of-day div h3,
.time-of-day div h4,
.time-of-day div h5 {
	display: block;
	text-align: center;
	margin: 10px 0px;
}
.time {
	font-family: monospace;
	font-size: 16px;
	font-weight: normal;
	color: #fff;
}
.city {
	color: #222;
	font-family:'Avenir LT W01 85 Heavy';
	font-weight: normal;
	text-transform: uppercase;
	font-size: 14px;
}
.day {
	color: #fff;
	font-size: 16px;
	font-weight: normal;
}
@media (min-width: 1600px) {
	.time {
		font-size: 18px;
	}
	.city {
		font-size: 16px;
	}
	.day {
		font-size: 18px;
	}
}
.about {
	width: 90%;
	min-height: 100px;
	display:block;
	margin-left: auto;
	margin-right: auto;
}
.company-info {
	font-size: 11px;
	float: right;
	display: inline-block;
	text-align: right;
	color: #fff;
	margin-top: 30px;
}
.social-media {
	float: left;
	display: inline-block;
	margin-top: 30px;
}
.social-media h6 {
	font-size: 14px;
	font-weight: normal;
	font-family:'Avenir LT W01 65 Medium';
	color: #fff;
	margin: 0 0 10px 0; 
}
.social-media ul {
	padding: 0;
	margin: 0px;
}
.social-media li {
	display: inline-block;
	margin-right: 2px;
}
.social-media li a {
	display: block;
	height: 20px;
	width: 20px;
	border-radius: 1px;
	background-color: #fff;
	text-align: center;
}
@media (min-width: 1024px) {
	.solar-terminator, 
	.about,
	.time-of-day {
		width: 60%;
	}
}
@media (min-width: 1280px) {
	.solar-terminator, 
	.about,
	.time-of-day {
		width: 50%;
	}
}

/* ========================== START of PORTFOLIO CSS =============================== */

#portfolio h1 {
	margin-bottom: 5px;
}
.slider {
	margin-top: 0;
	overflow: hidden;
}
.slider#first-slide {
	margin-top: 5rem;
}
.slider ul {
    position: relative;
    list-style: none;
    margin: 0; padding: 0;
    width: 100%;
    height: 200px;
    overflow: hidden;
  }
.slider ul > li.slide,
.lightbox ul > li.slide { 
	position: absolute;
	width: 100%;
	height: 100%;
	overflow: hidden;
	top: 0;
}
/* overlay to disable links */
.lightox:before {
	content: 'aaa';
	display: block;
	width: 108px;
	height: 100%;
	left: 0;
	top: 0;
	position: fixed;
}
.slider ul > li > img {
	width: 100%;
	height: auto;
}
.slide > h3,
.dials {
   display: none;
}
.dials span {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 1px;
	background-color: #fff;
	cursor: pointer;
	margin: 0 3px;
	transition: background-color 0.2s;
	-webkit-transition: background-color 0.2s;
	-moz-transition: background-color 0.2s;
	-o-transition: background-color 0.2s;
}
.dials span:hover {
	background-color: rgba(43,111,152,0.5);
}
.dials span.current {
	background-color: rgba(43,111,152,1);
}
/* STRIKE BORDER */
.strike {
    display: block;
    overflow: hidden;
}
.strike > h1,
.strike > h3 {
    position: relative;
    display: inline-block;
    float: left;
    bottom: 5px;
}
.strike > h1:after,
.strike > h3:after {
    content: "";
    position: absolute;
    top: 45%;
    width: 999px;
    height: 1px;
    background: rgba(223, 223, 223, 0.8);
}
.strike > h1:after,
.strike > h3:after {
    left: 100%;
    margin-left: 20px;
}
.strike h3:before {
    content: "";
    position: absolute;
    top: 45%;
    width: 999px;
    height: 1px;
    background: #dfdfdf;
    right: 100%;
    margin-right: 20px;
}
@media (min-width: 1024px) {
	.strike {
	    text-align: center;
	    white-space: nowrap; 
	}
}
.small-col ul > li {
	padding-bottom: 14px;
}
.small-col h1 {
	font-size: 1.6rem;
}
.small-col h2 {
	font-size: 1.2rem;
}
.small-col p {
	font-size: 0.8rem;
	line-height: 1.3rem;
}
.tech-used {
	list-style-type: none;
	margin: 0 0 0 -20px;
}
.tech-used li {
	float: left;
	padding: 7px; ;
}
.tech-used img {
	height: 21px;
}
.more-case-studies img {
	padding: 14px 0;
}
.small-container .strike{
	padding-top: 28px;
}
@media (min-width: 400px) {
	.slider ul {
		height: 280px;
	}
}
/* Desktop & Tablet Layout */
@media (min-width: 600px) and (max-width: 1023px) {
	
	.slider ul {
		height: 420px;
	}
}
@media (min-width: 1024px) {
	.slider {
		position: absolute;
		left: 8%;
		width: 38%;
		height: 98vh;
		padding: 120px 0 0 0;
		margin: 0;
		-webkit-transform: translateZ(0); /* Chrome Fix */ 
	}
	.slider#first-slide {
		margin-top: 0px;
	}
	.commentary {
		clear: none;
		float: right;
		width: 36%;
		height: 100%;
		padding: 0;
		margin: 120px 10% 0 4%;
	}
	.slide > h3 {
		display: block;
	}
	.dials {
		display: block;
		position: absolute;
		top: 80vh;
		right: 3px;
	}

}
@media (min-width: 1024px) {
	.slider {
		padding: 4rem 0 0 0;
	}
	.commentary {
		margin: 0 10% 0 4%;
		padding-top: 4rem;
	}
	.slider ul {
		height: 100%;
	} 
}
/* ======~~~! Lightboxes !~~~====== */
.lightbox {
	display: none;
	position: absolute;
	width: 100%;
	height: 101%;
	z-index: 999;
	text-align: center;
	right: 0;
	background: rgba(50,50,50,0.97);
	overflow: hidden;
}

.lightbox img {
	margin: 0;
	padding: 0;
	max-width: 100%;
	margin-top: 0;
	height: 100%;
}
.lightbox ul {
	margin: 0;
	padding: 0;
}
.lightbox ul > li.slide {
	z-index: -1;
}
div.lightbox-nav {
	height: 50px;
	width: 100%;
	position: absolute;
	bottom: calc(50% - 25px);
}
div.lightbox-nav button {
	display: inline-block;
	height: 50px;
	width: 50px;
}
button.prev {
	float: left;
	margin-left: 2rem;
}
button.next {
	float: right;
	margin-right: 2rem;
}
button.exit {
	position: fixed;
	top: 1rem;
	right: 0;
	margin-right: 2rem;
}
.disable-scroll {
	overflow-y: hidden;
}
.on-top {
	z-index: 999;
}
.lightbox ul > li.slide p {
	display: none;
}
@media (max-width: 700px) {
	button.exit,
	button.next,
	button.prev {
		background-color: #333;
		border-radius: 100%;
		padding: 14px;
	}

	.lightbox img {
		width: auto;
		max-width: none;
		position: absolute;
		top: 0;
		left: 0;
	}
	.lightbox ul > li.slide {
		height: 100%;
		width: 100%;
		overflow: scroll;
	}
}
@media (min-width: 1024px) {
	.lightbox {
		border-left: none;
	}
	.lightbox img {
		width: auto;
		height: 100%;
		position: static;
	}
	.lightbox ul > li.slide {
		z-index: -1;
	}
	.lightbox ul > li.slide .note {
		position: absolute;
		top: 5rem;
		left: 5rem;
		max-width: 12%;
	}
	.lightbox ul > li.slide .note p {
		display: block;
		color: #fff;
		text-align: left;
		font-size: 14px;
	}
}

.loading-screen {
	position: absolute;
	display: block;
	z-index: 1000;
	width: 100%;
	height: 100%;
	background-color: #f5f5f5;
	margin-left: -100px;
	border: 8px solid #fff;
}
.dials.loading {
	top: 50%;
	left: calc(50% - 27px);
}
.dials.loading > span.first-anim-dial {
	background-color: #fff;
	-webkit-animation: loading 2s linear 0ms infinite
}
.dials.loading > span.second-anim-dial {
	-webkit-animation: loading 2s linear 666ms infinite
}
.dials.loading > span.third-anim-dial {
	-webkit-animation: loading 2s linear 1333ms infinite	
}
@-webkit-keyframes loading {
	0% { background-color: #fff; }
	5% { background-color: #2B6F98;}
	40%	{ background-color: #2B6F98;}
	45% { background-color: #fff;}
	100% { background-color: #fff; }
}

/* ======= systems page css ====== */
.red {
	background-color: #E33942;
}
.container.blue p,
.container.blue h1,
.container.blue h2,
.container.blue h3,
.container.blue b,
.container.blue footer,
.container.blue ul li,
.red p,
.red h1,
.red h2,
.red h3,
.red b,
.red footer,
.red ul li  {
	color: #fff;
}

/* ======= Forms ======= */
label {
	font-family:'Avenir LT W01 45 Book';
	text-transform: uppercase;
	color: #333;
	font-size: 0.9rem;
}
input, textarea {
	border: none;
	background-color: #fff;
	display: block;
	width: 100%;
	margin-bottom: 2rem;
	margin-top: 0.5rem;
	padding: 0.5rem;
	font-size: 1.071rem;
	font-weight: 300;
	font-family:'Avenir LT W01 45 Book';
}
textarea {
	min-height: 8rem;
}
input[type="checkbox"] {
	width: auto;
	float: left;
}
input[type="radio"] {
	float: left;
	margin: 0;
	width: auto;
	opacity: 0;
}
.radio-buttons {
	margin: 0.5rem 0 1.25rem 0;
	float: left;
}
.radio-buttons label {
	float: left;
	position: relative;
	font-size: 1rem;
	font-weight: 700;
	padding: 0.5rem;
	margin-left: 0.5rem;
}
.radio-buttons label:first-child {
	margin-left: 0;
}
@media (max-width: 1260px) {
	.radio-buttons label {
		margin: 0;
		display: block;
		float: none;
	}
}
.radio-buttons label:before {
	content:'';
	display: inline-block;
	position: absolute;
	left: 0;
	top: 8px;
	height: 0.8rem;
	width: 0.8rem;
	border: 1px solid #E33942;
	border-radius: 100%;
}
input[type="radio"] + span {
	display: inline-block;
	height: 0.8rem;
	width: 0.8rem;
	border-radius: 100%;
	position: absolute;
	left: 1px;
	top: 9px;
	border: 1px solid #fff;
	background-color: #E33942;
	opacity: 0;
}
input[type="radio"]:checked + span {
	opacity: 1;
}
.attachment {
	height: 2rem;
	width: 5rem;
	margin-left: 0.5rem;
	margin-top: 0.5rem;
	position: relative;
	border: 1px solid #333;
	display: inline-block;
	float: left;
	overflow: hidden;
	transition: all 0.2s linear;
}
.attachment:hover {
	background-color: rgba(51,51,51,0.1);
}
.attachment p {
	margin: 0;
	font-size: 0.9rem;
	line-height: 28px;
	text-transform: uppercase;
	text-align: center;
}
.attachment input[type="file"] {
	position: absolute;
	margin: 0;
	padding: 0;
	top: 0px;
	opacity: 0;
	cursor: pointer;
	height: 100%;
	width: 200%;
	left: -100%;
}
.attachment-label {
	margin-top: 0.5rem;
	display: inline-block;
	clear: left;
	float: left;
	text-transform: uppercase;
}
.attachment-label p {
	line-height: 28px;
	font-size: 0.9rem;
}
#attachment-name {
	width: 100%;
	float: left;
	clear: both;
}
form button {
	text-transform: uppercase;
	font-size: 1rem;
	font-family:'Avenir LT W01 65 Medium';
	background-color: rgba(227,57,66,1);
	color: #fff;
	display: inline-block;
	float: right;
	margin-top: -1px;
	margin-left: 1rem;
	height: 3rem;
	width: 30%;
}
@media (max-width: 920px) {
	form button {
		clear: left;
		width: 100%;
		margin: 1rem 0;
	}
}
div.address {
	display: block;
	float: left;
	width: 100%;
	padding: 0.5rem 1rem;
	margin: 1rem 0;
	background-color: #fff;
	text-transform: uppercase;
	font-style: normal;
	font-weight: 800;
	font-color: #333;
}
div.address > div > div,
div.address > div > a {
	display: block;
	margin: 0.5rem 0;
	width: 100%;
}
div.address .header {
	font-size: 1.3rem;
	font-family:'Avenir LT W01 85 Heavy';
	font-weight: 400;
}
div.address .info {
	font-size: 1rem;
	font-family:'Avenir LT W01 65 Medium';
	font-weight: 400;
}
div.address a.email,
div.address .number {
	text-align: right;
}
div.number {
	font-size: 1rem;
	font-family:'Avenir LT W01 65 Medium';
	font-weight: 400;
}
.address a.email {
	font-size: 1.1rem;
	font-family:'Avenir LT W01 85 Heavy';
	font-weight: 400;
	color: #E33942;
}
.pull-left {
	float: left;
	clear: left;
	width: 50%;
}
.push-right {
	float: right;
	width: 50%;
}
.iframe {
	padding: 1rem;
	overflow: hidden;
	width: 100%;
}
@media(min-width: 500px) {
	.iframe {
		width: 50%;
		text-align: right;
	}
}
address {
	font-style: normal;
	font-size: 1rem;
	font-weight: 400;
	font-family:'Avenir LT W01 45 Book';
	color: #575757;
}

/*
 * CSS Animations
 * Don't forget to add vendor prefixes!
 */
.m-scene .scene_element,
.m-scene .scene_element .loading-screen {

  animation-duration: 0.25s;
  transition-timing-function: ease-in-out;
  animation-fill-mode: both;

  -webkit-animation-duration: 0.25s;
  -webkit-transition-timing-function: ease-in-out;
  -webkit-animation-fill-mode: both;

  -moz-animation-duration: 0.25s;
  -moz-transition-timing-function: ease-in-out;
  -moz-animation-fill-mode: both;

  -o-animation-duration: 0.25s;
  -o-transition-timing-function: ease-in-out;
  -o-animation-fill-mode: both;

  -webkit-filter: blur(3px); 
	-moz-filter: blur(3px); 
	-o-filter: blur(3px); 
	-ms-filter: blur(3px);
	filter: blur(3px);
}

.m-scene .scene_element--fadein {
  animation-name: fadeIn;
  -webkit-animation-name: fadeIn;
  -moz-animation-name: fadeIn;
  -o-animation-name: fadeIn;

  -webkit-filter: blur(0px); 
	-moz-filter: blur(0px); 
	-o-filter: blur(0px); 
	-ms-filter: blur(0px);
	filter: blur(0px);
}

.m-scene.is-exiting .scene_element,
.m-scene.is-exiting .scene_element .loading-screen {
  animation-direction: alternate-reverse;
  -webkit-animation-direction: alternate-reverse;
  -moz-animation-direction: alternate-reverse;
  -o-animation-direction: alternate-reverse;
}

.m-scene .scene_element--fadein .loading-screen {
  animation-name: Load;
  -webkit-animation-name: Load;
  -moz-animation-name: Load;
  -o-animation-name: Load;
  border: none !important;

}

/*
 * Keyframes
 */
@keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@-webkit-keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@-moz-keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@-o-keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

