@charset "utf-8";
/**
 * Global Reset of all HTML Elements
 *
 * Resetting all of our HTML Elements ensures a smoother
 * visual transition between browsers. If you don't believe me,
 * try temporarily commenting out this block of code, then gof
 * and look at Mozilla versus Safari, both good browsers with
 * a good implementation of CSS. The thing is, all browser CSS
 * defaults are different and at the end of the day if visual
 * consistency is what we're shooting for, then we need to
 * make sure we're resetting all spacing elements.
 *
 */

div,span,object,iframe,img,table,
caption,thead,tbody,tfoot,tr,tr,td,
article,aside,canvas,details,figure,
hgroup,menu,nav,footer,header,section,
summary,mark,audio,
video {
  border: 0;
  margin: 0;
  padding: 0;
}

h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abb,address,
cit,code,del,dfn,em,ins,q,samp,small,strong,
sub,sup,b,i,hr,dl,dt,dd,ol,ul,li,fieldset,legend,
label {
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  margin: 0;
  padding: 0;
}

article,aside,canvas,figure,figure img,
figcaption,hgroup,footer,header,
nav,section,audio,
video {
  display: block;
}
a {
	text-decoration: none;
	cursor: pointer;
}

.box a {
	display:inherit;
	width: 100%;
	height: 100%;
	color: inherit;
	flex-direction: inherit;
	justify-content: inherit;
}

.box.sct a {
	display:inherit;
	width: 100%;
	height: 100%;
	color: inherit;
	flex-direction: column;
	justify-content: center;
	-webkit-flex-warp: nowarp;
	-moz-flex-warp: nowarp;
	-o-flex-warp: nowarp;
	-ms-flex-warp: nowarp;
}

.box.square a {
	display: block;
	width: 100%;
	height: 100%;
}

img {
  flex-shrink: 0;
}

h1 {
	font-size: 5em;
    line-height: 0.9em;
	margin-bottom: 20px;
	font-weight: 900;
	width: 450px;
	text-transform: uppercase;
}

@media (max-width:1300px) { h1 { line-height: 1; }}
@media (max-width:900px) { h1 { line-height: 1.1; }}

h2 {
	font-size:3em; 
	font-weight:300;
	text-transform: uppercase;   
}

h3 {
	font-size:3em; 
	font-weight:600;
	text-transform: uppercase;   
}

h4 {
	font-size: 1.3em;
    line-height: 1.5em;
	text-transform: uppercase;
	font-weight: 400;
	max-width: 450px;
}

p {
	margin-top: 20px;
	font-size: 1.3em;
    line-height: 1.6em;
	font-weight: 400;
	max-width: 450px;
}

@media (max-width:900px) { 
	h1 { 
		font-size: 3em; 
	}
	h4 {
		max-width: auto; width:90%;
	} 
}


#facebook, #behance {
	max-width: 20px;
	max-height:	20px;
}

#facebook:hover , #behance:hover {
	fill: #bc2d2d!important;
}

#pointer {
	max-width: 10px;
	max-height:	10px;
}


main.darkbg h1, main.darkbg h2, main.darkbg h3, main.darkbg h4, main.darkbg h5, main.darkbg h6 {
	color: #fff;
}


html {
	padding: 0;
	width: 100%;
}

body {
  border: 0;
  font-family: 'lato', sans-serif;
  line-height: 1.5;
  margin: 0;
  padding: 0;
  box-sizing:border-box;
  
}
  

body {
	width: 100%;
	height: 100%;
	display: block;
	padding: 0;
	font-size: 10px;	
}


body.ready {
	padding: 40px;
}



@media (max-width:1300px) {
	body.ready {
		padding: 20px;
	}
	body {
		font-size: 9px;
	}	

}

@media (max-width:900px) {
	body.ready {
		padding: 10px;
		overflow-x: hidden;
	}
		

}

/** overall **/

main {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	flex-wrap: wrap;
  	background-size:contain;
  	 overflow: hidden;
}
@media (max-width:900px) {.mobf { display: none!important; }}
@media (max-width:600px) { main { flex-direction: column; } }
main.darkbg {
	background-color: #1e0517;
}

main.lightbg {
	/**background-color: #fff; parallax fix **/
}

.row {
	position: relative;
	display: flex;
}

.vc {
	align-items: center;
  	justify-content: center;
}

.border-top, .border-bottom {
	position: fixed;
	width: 100%;
	background-color: #fff;
	z-index: 8888;
}
.border-top {
	top: 0;
}

.border-bottom {
	bottom: 0;
}



/** interface elemenet - close button - cross bar **/
.box span.title-wraper {
	font-size: 11em;
    font-weight: 900;
    line-height: 1em;
	
}

.box.right span.title-wraper {
	text-align: right;
}

@media (max-width:1830px) { .box span.title-wraper { font-size: 10em; }}
@media (max-width:1510px) { .box span.title-wraper { font-size: 9em; }}
@media (max-width:1070px) { .box span.title-wraper { font-size: 8em; }}
@media (max-width:900px) { .box.right span.title-wraper, .box.left span.title-wraper { text-align:center; }}


/** grid box **/

.box {
	position: relative;
	display: flex;
    flex-direction: column;
    justify-content: center;
	z-index: 1111;
	overflow: hidden;
	background-size:  cover;
}
@media (max-width:900px) { 
	.box.fh { height: auto}
}

@media (min-width:900px) { 
	.box.flex_rm, .box.row.flex_rm { display: block; }
	.box.outer .box {height: 50%!important;}
}
.box.row {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
    justify-content: flex-start;
}

@media (max-width:900px) { 
	.box.row { flex-direction: column; justify-content: center; }
	.box.outer, .box.mbh, .box.mbh .box {height: auto!important;}
}

.box.column {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
    justify-content: flex-start;
}

.box.hh {
	height: 50%!important;;
}
.box.space {
	box-sizing: border-box;
}

.box.vsb {
	overflow: visible;

}

.wrapper{
	width: 20%;
	display: flex;
    flex-direction: column;
    justify-content: center;
}
.wrapper .box{
	width: 100%;
}

.col-1 { width: 100%; }

.col-2 { width: 50%; }


.col-20 {
	width: 40%;
}

.col-3 {
	width: 33.3%;
}

.col-3_a {
	width: 66.7%;
}

.col-4 {
	width: 25%;
}

.col-5 {
	width: 20%;
}

.col-6 {
	width: 16.6%;
}

.col-60 {
	width: 60%;
}

.col-40 {
	width: 40%;
}

@media (max-width:1600px) { 
	.col-5, .wrapper { width: 25%; }
	.col-20 { width: 50%; }
}

@media (max-width:1200px) { 
	.col-5, .wrapper { width: 33.3%; }
	.col-20 { width: 66.6%; }
}

@media (max-width:1200px) { 
	.col-5, .wrapper { width: 33.3%; }
	.col-20 { width: 66.6%; }
}

@media (max-width:1100px) { 

	.col-20 { width: 66.6%; }
}

@media (max-width:900px) { 
	.col-2 { width: 100%; }
	.col-3 { width: 100%; }
	.col-4 { width: 50%; }
	.col-60 { width: 100%; }
	.col-40 { width: 100%; }
}

@media (max-width:600px) { 
	.col-4 { width: 100%; }
}

.box.inner {
	padding: 10%;
	box-sizing:border-box;
}

.box.inner.wide.left {
	padding: 10% 10% 10% 0;
	box-sizing:border-box;
	overflow: hidden;
}

.box.inner.wide.right {
	padding: 10% 0 10% 10%;
	box-sizing:border-box;
	overflow: hidden;
}

@media (max-width:900px) { 
	.box.inner.wide.right, .box.inner.wide.left { padding: 10%; box-sizing:border-box; }
}

/** grid style **/

.box.left {
	align-items: flex-start;
}

.box.right {
	align-items: flex-end;
}
.box.center {
	align-items: center;
}
@media (max-width:900px) {
	.box.center{
		height: auto;
		margin: 100px 0;
	}
}

.box.right h1, .box.right h4, .box.right svg, .box.right svg {
	text-align: right;
}
}
.box.left h1, .box.left h4, .box.left svg  {
	text-align: left;
}

.box.center h1, .box.center h4, .box.center svg {
	text-align: center;
}

.box.left p {
	text-align:justify;
	 -moz-text-align-last: left; /* Code for Firefox */
    text-align-last: left;	
}

.box.right p {
	text-align:justify;
	 -moz-text-align-last: right; /* Code for Firefox */
    text-align-last: right;	
}

.box.center p {
	text-align:justify;
	 -moz-text-align-last: center; /* Code for Firefox */
    text-align-last: center;	
}


.box.light h1, .box.light h4, .box.light svg .st0, .box.light svg .arrow, .box.light p, .box.light span.oi,  .box.light span.title-wraper, main.darkbg #bxslider svg .arrow, .box.light ul li {
	color: #fff;
	fill: #fff;
	border-color: #fff;
}
.box.light ul li {font-size: 1.3em; max-width:450px;}
.box.dark h1, .box.dark h4, .box.dark svg .st0, .box.dark svg .arrow, .box.dark span.oi,  .box.dark span.title-wraper,  .box.dark .work-range-wrapper p {
	color: #303030;
	fill: #303030;
	border-color: #303030;

}

@media (max-width:900px) { 
	.box.left, .box.right { align-items: center; }
	.box.right h1, .box.right h4, .box.right svg, .box.left h1, .box.left h4, .box.left svg { text-align: center; }
	.box.left p, .box.right p { text-align:justify; -moz-text-align-last: center; /* Code for Firefox */text-align-last: center;	}
}

@media (max-width:900px) {
	header.box.col-40, header.box.col-60  {
		width: 100%;
	}
}


/** square icon **/

.box span.oi {
	position: relative;
    padding: 15px;
    border: solid 3px;
    width: 15px;
    height: 15px;
    font-size: 13px;
	margin-bottom: 20px;
}

/** single icon **/

.box span.oi.work-range {
	position: relative;
    padding: .5rem;
    display: inline-block;
    border: none;
    font-size: 1.4em;
	margin: 20px 0px 10px 0px;
	cursor: pointer;
}

header.box span.oi.work-range {
	font-size: 1.6em;
}

.box.left span.oi.work-range {
	padding: 15px 30px 15px 0px;
}

.box.right span.oi.work-range {
	padding: 15px 0px 15px 30px;
}

@media (max-width:900px){
	.box.left span.oi.work-range, .box.right span.oi.work-range  {
	padding: 10px;
}

}


/** client logo image **/

img.client-logo {
	margin-bottom: 20px;
}



/** loading page **/

.loader {
	position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 50px;
    box-sizing: border-box;
}

h2#loader {
	font-size:4em;
}

.loader h2 {
	display: none;
}

@media (max-width:900px) {
	.loader span {
		display: block;
		text-align:center;
		line-height: initial;
	}
	
	h2#loader {
		font-size:4em;
	}
	.vc {
    	align-items: center;
    	justify-content: center;
	}
}

/** corner logo **/
.corner-logo {
    position: absolute;
    top: 50px;
    left: 50px;
 	height: 50px;
    z-index: 8888;
    cursor: pointer;
}

.corner-logo.mobile {
    position: fixed;
    top: 40px;
    left: 40px;
}

@media (max-width:900px) {
	.corner-logo {
    	top: 30px;
    	left: 30px;
	}
}

.corner-logo svg{
	width: 40px;
	height: 50px;
}

.corner-logo span{
	font-size: 1.9em;
    font-weight: 300;
    padding: 10px 20px;
    text-transform: uppercase;
}

main.darkbg .corner-logo .st0, main.darkbg .corner-logo .st1, main.darkbg .corner-logo span  {
    fill: #fff;
	color: #fff
}
main.lightbg .corner-logo .st0, main.lightbg .corner-logo .st1, main.lightbg .corner-logo span {
    fill: #000;
	color: #000;
	font-weight: 400;
}

main.darkbg .corner-logo.mobile .st0, main.darkbg .corner-logo.mobile .st1 {
    fill: #000;
}

main.lightbg .corner-logo.mobile .st0, main.lightbg .corner-logo.mobile .st1 {
    fill: #000;
}

.corner-logo svg, .corner-logo span {
	display: inline-block;
	vertical-align: middle;
}

@media (max-width:900px) {
	
		.corner-logo span {
			display: none;
		}
}

/** main menu + sub menu **/

ul.main-menu {
	position: absolute;
    top: 60px;
    right: 50px;
	display: flex;
	justify-content: flex-end;
	list-style:none;
	text-transform: uppercase;
	z-index: 4444;
}

ul.main-menu svg {
	height: 18px;
}

ul.main-menu svg#behance {
	height: 20px;
}

/**
main - document content
main - subclases: darkbg, lightbg
define color scheme on all pages

darkbg - dark background, bright content
lightbg - white background, dark content
**/

main.darkbg ul.main-menu a, 
main.darkbg ul.main-menu #behance, 
main.darkbg ul.main-menu #facebook, 
main.darkbg ul.sub-menu .pointer {
	color: #fff;
	fill: #fff;
}

main.lightbg ul.main-menu a, 
main.lightbg ul.main-menu #behance, 
main.lightbg ul.main-menu #facebook, 
main.lightbg ul.sub-menu .pointer {
	color: #303030;
	fill: #303030;
}

/**
Sub-menu constant color
**/
main.darkbg ul.main-menu.mobile_nav a, 
main.darkbg ul.main-menu.mobile_nav ul.sub-menu .pointer, 
main.darkbg ul.main-menu.mobile_nav #behance,
main.darkbg ul.main-menu.mobile_nav #facebook {
	color: #000;
	fill: #000;
}

/**
Sticky menu constant color
**/
main.darkbg ul.main-menu.sticky a, 
main.darkbg ul.main-menu.sticky ul.sub-menu .pointer, 
main.darkbg ul.main-menu.sticky #behance,
main.darkbg ul.main-menu.sticky #facebook {
	color: #000;
	fill: #000;
}


ul.main-menu > li {
	box-sizing:border-box;
	padding: 9px 35px 9px 0;
	transition: opacity ease-in-out 0.5s;
}


ul.main-menu li a {
	font-size:1.5em;
	text-align: center;
}


@media (min-width:900px) {
	
main.lightbg ul.main-menu ul {
	left: -20px;
	padding: 15px 20px;
	background-color: #fff;
}
}
main.lightbg ul.main-menu.sticky ul{
	left: 0;
	padding: 0px 0px;
	background-color: transparent;
}


ul.main-menu > li:hover > a {
	font-weight: 900;
	letter-spacing: 0px;
}

ul.main-menu li.social {
	padding: 10px 25px 10px 0;
	font-size:1.5em;
	text-align: center;
	cursor: pointer;	
}


ul.main-menu li.social:hover {
	
}

ul.main-menu li {
	position: relative;
}

ul.main-menu ul {
	position: absolute;
    top: 30px;
    left: 0px;
	list-style: none;
	visibility:hidden;
    opacity:0;
	padding-top: 20px;
    filter:alpha(opacity=0);
    -webkit-transition:200ms ease;
    -moz-transition:200ms ease;
    -o-transition:200ms ease;
    transition:200ms ease;
}

@media (min-width:900px) { 
	ul.main-menu ul.sub-menu.open {
    	visibility:visible;
    	opacity:1;
    	filter:alpha(opacity=100);
	}
}


ul.main-menu li ul > li {
	width: 200px;
	font-size:0.8em;
	text-align: left;
	padding: 5px 0;
}

ul.main-menu li ul > li > a {
	padding: 0 0 0 10px;
	transition: 0.3s padding ease;
}

ul.main-menu li ul > li:hover > a {
	padding: 0 0 0 20px;
	font-weight: 900;
}

ul.main-menu li.separator::before {
	content: "";
    width: 2px;
    height: 20px;
    display: inline-block;
    opacity: 0.2;
    vertical-align: top;
	margin-right: 30px;
}

main.darkbg ul.main-menu li.separator::before {
	background-color: #fff;
}

main.lightbg ul.main-menu li.separator::before {
	background-color: #000;
}

ul.sub-menu svg {
	height: 5px;
	vertical-align: text-top;
}

ul.sub-menu .back-arrow {
	display: none;
}

/** main-menu sticky **/
@media (min-width:900px) {
	
		ul.main-menu.sticky {
			position: fixed;
    		top: -1000px;
    		right: 0;
			width: 100%;
			height: 100%;
			display: flex;
			justify-content: center;
			flex-direction: column;
			list-style:none;
			text-transform: uppercase;
			background-color: #fff;
			z-index: 8888;
		}
		ul.main-menu.sticky.open{
    		top: 0;
		}
		
		ul.main-menu.sticky li.separator::before {
    		display: none;
		}
		ul.main-menu > li {
    		text-align: center;
		}
		
		ul.main-menu.sticky ul {
			position: relative;
    		top: 0px;
    		left: 0px;
			max-height:0px;
    		list-style: none;
    		visibility: hidden;
    		padding-top: 0;
			opacity: 1;
    		filter: alpha(opacity=1);
    		-webkit-transition: max-height 100ms ease;
    		-moz-transition: max-height 100ms ease;
    		-o-transition: max-height 100ms ease;
    		transition: max-height 100ms ease;
		}
		
		ul.main-menu.sticky ul.open {
    		max-height: 900px;
		}
		
		ul.main-menu.sticky li ul > li {
    		width: 100%;
    		text-align: center;
		}
		ul.main-menu.sticky li ul > li > a {
    		padding:0; 
		}
		.main-menu.sticky ul.sub-menu svg {
    		display: none;
		}	

}

/** main-menu sticky-toggle **/

.sticky_toggle {
	position: fixed;
	top:100px;
	right: -100px;
	height: 28px;
	width: 28px;
    cursor: pointer;
	z-index:9999;
	-webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.sticky_toggle span {
    display: inline-block;
    width: 28px;
    height: 4px;
    transform: rotate(0deg);
    transition: all .3s ease-in-out;
}

.sticky_toggle span, .sticky_toggle.open span {
	background-color: #000;
}

.sticky_toggle span::before, .sticky_toggle span::after,  .sticky_toggle.open span::before, .sticky_toggle.open span::after, .sticky_toggle.light.open span::before, .sticky_toggle.light.open span::after  {
    content: '';
    background: #000;
}

.sticky_toggle.light span {
	background-color: #fff;
}

.sticky_toggle.light span::before, .sticky_toggle.light span::after {
    content: '';
    background: #fff;
}

@media (max-width:900px) { 
	.sticky_toggle { display: none; }
}

/** sticky-logo **/
.sticky-logo {
    position: fixed;
    top: 90px;
    left: -100px;
 	height: 50px;
    z-index: 9999;
    cursor: pointer;
	-webkit-transition: all 0.2s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.sticky-logo.open {
    left: 100px;
}
.sticky-logo svg {
    width: 40px;
    height: 50px;
}

.sticky-logo .st0, .sticky-logo .st1 {
    fill: #000;
    color: #000;
}
.sticky-logo.light.open .st0, .sticky-logo.light.open  .st1 {
    fill: #000;
    color: #000;
}

.sticky-logo.light .st0, .sticky-logo.light .st1 {
    fill: #fff;
    color: #fff;
}

@media (max-width:900px) { 
	.sticky-logo { display: none; }
}

/** main-menu mobile-nav **/

.mobile_toggle.close_toggle {
	position: fixed; 
	top: 75px;
	right: 50px;
	display: none;
	z-index:9999;
}

@media (max-width:900px) { 
		body.mobile .mobile_toggle.close_toggle {
			display: block;
			top: 60px;
    		right: 40px;
		}
}

.mobile_toggle.close_toggle {
	height: 30px;
	width: 30px;
}

.mobile_toggle.close_toggle.open span::before, .mobile_toggle.close_toggle.open span::after {
    content: '';
    background: #000;
}

.mobile_toggle.close_toggle.open span {
    background: #000;
}

.mobile_toggle.close_toggle.open span::before, .mobile_toggle.close_toggle.open span::after {
    content: '';
    background: #000;
}



		
/**	main.darkbg ul.main-menu a, main.darkbg ul.main-menu #behance, 
		main.darkbg ul.main-menu #facebook, main.darkbg ul.sub-menu .pointer, 
		.corner-logo .st0, .corner-logo .st1 {
			color: #000;
			fill: #000;
		}**/


@media (max-width:900px) {
	
		ul.main-menu {
    		position: fixed;
    		top: 0;
    		right: 0;
			width: 100%;
			height: 100%;
			padding: 10px;
			box-sizing: border-box;
    		display: none;
    		flex-direction: column;
    		align-items: left;
    		justify-content: center;
    		list-style: none;
    		text-transform: uppercase;
    		z-index: 7777;
			background-clip: content-box;
			background-color: #e2e2e2;
		}
		ul.main-menu.open {
			display: flex;
		}
										
		ul.main-menu > li {
    		padding: 9px 35px 9px 35px;
		}
		ul.main-menu li.social {
    		padding: 9px 35px 9px 35px;
		}
		ul.main-menu li.separator::before {
			display: none;
		}
		
		ul.main-menu ul {
    		position: fixed;
    		top: 0;
    		right: -1000px;
			left: auto;
			width: 100%;
			height: 100%;
			padding: 10px;
			box-sizing: border-box;
			display: flex;
    		flex-direction: column;
    		align-items: left;
    		justify-content: center;
    		list-style: none;
    		text-transform: uppercase;
			background-clip: content-box;
			background-color: #e2e2e2;
			opacity: 1;
			visibility:visible;
    		z-index: 7888;
    		-webkit-transition: right 300ms ease-in-out;
    		-moz-transition: right 300ms ease-in-out;
    		-o-transition: right 300ms ease-in-out;
    		transition: right 300ms ease-in-out;

		}
		
		.sub-menu.open {
			right: 0px;
		}
		
		ul.main-menu li ul > li {
			padding: 9px 35px 9px 35px;
			font-size: 1em;
		}
		
		ul.sub-menu .back-arrow {
			display: block;
		}
}

@media (max-width:900px) and (orientation: landscape) {
		ul.main-menu, ul.main-menu ul  {
    
			align-items: center;
		}
}


/** main-slider / video **/

ul.bxslider li {
	height: 100%;
	overflow:hidden;
}

ul.bxslider li video {
	position: absolute;
	width: 100%;
	opacity: 0.2;
	z-index: 1111;
}

/** main-slider / inner headers **/

.slider-spreader {
	position:relative;
	display: block;
}

.slider-inner {
	position: absolute;
	width: 600px;
	max-height: 200px;
	right: 10%;
	top: 0;
	bottom: 0;
	margin:auto;
	z-index: 2222;
}

@media (max-width:900px) {		
	.slider-inner {
		left:0;
		right: 0;
		margin: auto;
		width: 300px;
	}
}
@media (max-width:900px) and (orientation: landscape) {
		.slider-inner {
			max-height: 130px;
		}
}


.slider-arrow svg {
	margin-top:20px;
	width: 10px
}

@media (max-width:900px) and (orientation: landscape) {
		.slider-arrow svg{
			display: none;
		}
}

/** main-slider / pager **/

.bx-pager {
	position: absolute;
    bottom: 40px;
    left: 40px;
} 
.bx-pager ul {
	list-style: none;
	font-size: 1.5em;	
	font-weight:300;
	text-transform:uppercase;
} 
.bx-pager a {
	position: relative;
    padding: 25px;
    color: #fff;
    text-decoration: none;
    height: 70px;
    width: 70px;
	box-sizing:border-box;
    display: block;
	background-color:transparent;
}
.bx-pager a.active {
	background-color: #bc2d2d;
	transition: all 0.2s ease-in-out 0s;
}
.bx-pager a span {
	position: absolute;
	top:0;
	left: 0;
	max-width: 0;
	overflow: hidden;
	white-space: nowrap;
	height: 70px;
	padding: 24px 24px 24px 0;
	box-sizing:border-box;
	opacity:0;
	transition: all 0.3s ease-in-out 0s;
}
.bx-pager a.active span {
	background-color: #bc2d2d;
	max-width: 500px;
	left:100%;
	opacity:1;
}


@media (max-width:1100px) {
		
		.bx-pager a span {
			display: none;
		}
		.bx-pager ul {
    		font-size: 1.9em;
		}
}

@media (max-width:900px) {
		
		.bx-pager a span {
			display: none;
		}
		.bx-pager a {
    		display: inline-block;
		}
		.bx-pager {
			left: 0;
			right: 0;
			margin: auto;
			width: 300px;
		}
		.bx-pager ul {
    		font-size: 2.3em;
		}

}

@media (max-width:900px) and (orientation: landscape) {
		.bx-pager a {
    		display: block;
		}
		.bx-pager {
			right: auto;
			left: 10px;
			bottom: 10px;
			width: 300px;
		}
		.bx-pager a {
			padding: 10px;
    		height: 30px;
    		width: 30px;
		}
		.bx-pager ul {
    		font-size: 1.2em;
		}
}

@media (max-width:600px) {
		.bx-pager {
   			 width: 170px;
		}
		.bx-pager ul {
    		font-size: 1.3em;
		}

		.bx-pager a {
    		display: inline-block;
			padding: 15px;
    		height: 40px;
    		width: 40px;
		}
}

/** custom elements -  cookie **/


.information {
	position: absolute;
    top: 200px;
    left: 50px;
    font-size: 1.2em;
    text-align: left;
    z-index: 6666;
}


body.animations .information {
	
}

.information svg {
	padding: 10px 10px 10px 0;
	height:40px;
	display: inline-block;
	vertical-align: top;
}

.information span {
	display: inline-block;
    min-width: 200px;
	vertical-align: top;
	font-size: 1.2em;
}

.information .button, .information .button:hover  {
	padding: 0;
	background: none;
}

main.darkbg .information, main.darkbg .information svg .st0, main.darkbg .information a  {
	 color: #fff;
	 fill: #fff;
}

main.lightbg .information, main.lightbg .information svg .st0, main.darkbg .information.mobile svg .st0, main.darkbg .information.mobile, main.darkbg .information.mobile a    {
	 color: #000;
	 fill: #000;
}

@media (max-width:900px) {
		
		.information {
			position: fixed;
    		top: inherit;
    		bottom: 0;
    		left: 0;
    		right: 0;
    		margin: auto;
    		width: 80%;
    		height: 100px;
    		color: #000;
    		font-size: 1.2em;
    		text-align: left;
    		z-index: 9999;
    		display: none;
		}
		
		.information.open {
			display: block;
		}
		
		.cancel_information {
			display: none;
		}
		
		.information span {
			display: inline-block;
    		max-width: 70%;
			vertical-align: middle;
		}
		.information svg {
			vertical-align: middle;
		}
		
		main.darkbg .information svg .st0, main.lightbg .information svg .st0 {
    		fill: #000;
		}

}

/** custom elements -  rounded thumbs **/

.employees ul{
	list-style:none;	
}

.employees ul div { z-index: 9999; }

.employees ul li span:first-child {
	position: relative;
	display: inline-block;
	width: 60px;
	height: 60px;
	cursor: pointer;
	border-radius: 50%;
	background-color: #000;
	background-size: cover;
	-webkit-transition: transform 100ms ease-in-out;
    -moz-transition: transform 100ms ease-in-out;
    -o-transition: transform 100ms ease-in-out;
    transition: transform 100ms ease-in-out;
}

@media (max-width:1500px) {
	.employees ul li span:first-child {
	width: 50px;
	height: 50px;
	}
}


.employees ul li span:first-child {
	z-index: 2222;
}

.employees ul li {
		position: relative;
		display: inline-block;
	}

@media (max-width:900px) {
	.employees ul li {
		position: relative;
		display: block;
	}
	.employees ul li:nth-child(1) { z-index: 4444; }
	.employees ul li:nth-child(2) { z-index: 3333; }
	.employees ul li:nth-child(3) { z-index: 2222; }
	.employees ul li:nth-child(4) { z-index: 1111; }
}

.employees ul li:hover {
	transform:scale(1.1); 
	-webkit-transform:scale(1.1); 
	-moz-transform:scale(1.1); 
	-o-transform:scale(1.1);
}

.employees ul li div {
	position:absolute;
	left: -70px;
	right: -50%;
	top: 200%;
	width: 200px;
    box-sizing: border-box;
    padding: 20px 20px;
	text-align: center;
	background-color: #303030;
	color: #fff;
	font-size: 1.2em;
	opacity: 0;
	-webkit-transition: all 200ms ease-in-out;
    -moz-transition: all 200ms ease-in-out;
    -o-transition: all 200ms ease-in-out;
    transition: all 200ms ease-in-out;
    visibility: hidden;
    
}

.employees ul li div span.oi {
	border: 0;
	padding: 0;
	font-size: 0.8em;
	margin-right: 5px;
}



.employees ul li div::after {
	content: '';
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: -14px;
    width: 0;
    height: 0;
    border-left: 12px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid #303030;
}


.employees ul li:hover div {
	top: 110%;
	opacity: 1;
	visibility: visible;
}


.employees .box.right ul li {
	margin: 60px 0 0 40px;
}

.employees .box.left ul li {
	margin: 30px 0 0 20px;
	padding-bottom: 10px;
}

@media (max-width:900px) {
	.employees .box.left ul li, .employees .box.right ul li {
		margin: 40px 20px 0 20px;
	}
}

.employees.box {
	z-index: 2222; 
	overflow: visible;
}

.employees.box .box {
	overflow: inherit;
}


div#modal {
	position:absolute;
	width: 200px;
    box-sizing: border-box;
    padding: 20px 20px;
	text-align: center;
	background-color: #303030;
	color: #fff;
	font-size: 1.2em;
	transition: all .2s ease;
    transform: translate(0px,100px); 
    opacity: 0;
    visibility: hidden;
}

div#modal.vsb {
    transform: translate(0px,0px); 
    transition: all .2s ease;
    opacity: 1;
    visibility: visible;
}

div#modal::after {
	content: '';
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: -14px;
    width: 0;
    height: 0;
    border-left: 12px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid #303030;
}



/** custom elements -  rounded thumbs **/
.tip-wraper {
	position: absolute;
	top: 100px;
	width: 100%;
	text-align:center;
	font-size: 1.8em;
	font-weight:900;
}

.box.dark .tip-wraper {
	color: #303030;
}
.box.light .tip-wraper {
	color: #fff;
}

@media (max-width:900px) {
	.tip-wraper { top:10%;}
}

/** custom elements -  box images push left or right **/

.box img.push {
	position: relative;
}

.box.left img.push {
	left: -12%;
}

.box.right img.push {
	right: -12%;
}

@media (max-width:900px) {
	.box.left img.push, .box.right img.push {
		left: 0;
		right: 0;
		margin: 0 auto;
	} 
}


/** custom elements -  box images and backgrounds center **/

@media (max-width:900px) {
	header .box img {
		width: 40%;
	} 
} 
.box.centered {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.box img.centered-in {
	position: relative;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 0;
}

.box img.centered-out {
	position: absolute;
	top: 0;
    left: -50%;
    right: -50%;
    margin: auto;
    z-index: 0;
}

@media (max-width:900px) {
	.box img.centered {
		left: 0;
		right: 0;
    	width: 100%;
	}
	.box img.centered-out {
		position: relative;
		top: 0;
    	left: 0;
    	right: auto;
    	margin: auto;
    	z-index: 0;
    	width: 100%;
	}
	.box img.centered-in {
		position: relative;
    	left: 0;
    	right: 0;
    	margin: 0 auto;
    	z-index: 0;
	}
}
/** custom elements - image sizing depending on row width **/
@media (max-width:900px) {
	.box.col-1 img.vertical.centered-in { width:60%;}
	.box.col-1 img.horizontal.centered-in { width:90%;}

	.box.col-2 img.vertical.centered-in { width:60%; }
	.box.col-2 img.horizontal.centered-in { width:90%; }


	section.box img.centered-in {
		margin: 70px auto;
	}
}

/** custom elements - image scaling **/

img.scale_10 { -webkit-transform: scale(1); -moz-transform: scale(1); -o-transform: scale(1); -ms-transform: scale(1); transform: scale(1);}
img.scale_07 { -webkit-transform: scale(0.7); -moz-transform: scale(0.7); -o-transform: scale(0.7); -ms-transform: scale(0.7); transform: scale(0.7);}
img.scale_06 { -webkit-transform: scale(0.6); -moz-transform: scale(0.6); -o-transform: scale(0.6); -ms-transform: scale(0.6); transform: scale(0.6);}
img.scale_05 { -webkit-transform: scale(0.5); -moz-transform: scale(0.5); -o-transform: scale(0.5); -ms-transform: scale(0.5); transform: scale(0.5);}
img.scale_04 { -webkit-transform: scale(0.4); -moz-transform: scale(0.4); -o-transform: scale(0.4); -ms-transform: scale(0.4); transform: scale(0.4);}
img.scale_03 { -webkit-transform: scale(0.3); -moz-transform: scale(0.3); -o-transform: scale(0.3); -ms-transform: scale(0.3); transform: scale(0.3);}
img.scale_01 { -webkit-transform: scale(0.1); -moz-transform: scale(0.1); -o-transform: scale(0.1); -ms-transform: scale(0.1); transform: scale(0.1);}


img.scale_10.center, img.scale_09.center, img.scale_08.center, img.scale_07.center, img.scale_06.center, img.scale_05.center, img.scale_04.center, img.scale_03.center, img.scale_02.center  { margin: 0 auto;}

.grid2_0 {
	display:block;
}
/** custom elements -  box images center **/

@media (max-width:900px) {
	.scroller {
		transform: translateY(0px)!important;
	}
}
/** custom elements -  cookie close button **/
.cancel_information {
	position:absolute;
	top: 0;
	right:0;
}

.cancel_information.close_toggle {
	height: 18px;
	width: 18px;
}

.cancel_information.close_toggle span, .cancel_information.close_toggle span::before, .cancel_information.close_toggle span::after {
    width: 12px;
    height: 3px;
}

.cancel_information.close_toggle.open span::after {
    transform: rotate(-45deg);
    top: -9px;
}

/** custom elements -  next-arrow **/

.arrow-next {
	position: absolute;
	bottom: 15%;
	left: 0;
	right: 0;
	width:80px;
	margin: 0 auto;
	height:20px;
}


.next-arrow svg:hover{
	left: 5%;
}

/** custom elements -  back-arrow **/

.back-arrow svg{
	-ms-transform: rotate(90deg); /* IE 9 */
    -webkit-transform: rotate(90deg); /* Safari */
    transform: rotate(90deg);
	-webkit-transition: all 200ms ease-in-out;
    -moz-transition: all 200ms ease-in-out;
    -o-transition: all 200ms ease-in-out;
    transition: left 200ms ease-in-out;
}

ul.sub-menu .back-arrow svg {
	height: 50px;
	margin-left: 20px;
}


.back-arrow svg .st0 {
	fill: #000;
}


@media (max-width:900px) {
	.next-arrow svg{ top:0; padding: 20px 0;}
	.next-arrow {text-align: center;}
}


/** custom elements - browser **/

.box.browser div {
	position: relative;
	display: block;
	width: 80%;
	background-color: #d7dfe4;
	height: 50px;
	padding: 5px;
}

.box.browser img {
	border:  5px solid #d7dfe4;
}

.box.col-3.browser div {
	width: 60%;
	margin: 0 auto;
	height: 40px;
}

.box.browser span:nth-child(1){
	position: absolute;
	display: inline-block;
	width: 20px;
	height: 20px;
	background: red;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	border-radius: 50px;
	background-color: #0271b8;
	margin: 19px 25px;
}

.box.browser span:nth-child(1)::after {
	position: absolute;
	display: block;
	top: 0;
	left: 60px;
	content: '';
	background-color: #0271b8;
	width: 20px;
	height: 20px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	border-radius: 50px;
}

.box.browser span:nth-child(1)::before {
	position: absolute;
	display: block;
	top: 0;
	left: 30px;
	content: '';
	background-color: #0271b8;
	width: 20px;
	height: 20px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	border-radius: 50px;
}

.box.browser span:nth-child(2) {
	position: relative;
	display: inline-block;
	left: 200px;
	width: 27px;
	height: 27px;
	background-color:  #fff;
	margin: 15px 0;
} 

.box.browser span:nth-child(3) {
	position: absolute;
	display: inline-block;
	left: 250px;
	width: 76%;
	height: 27px;
	background-color:  #fff;
	margin: 15px 0;
} 

.box.col-3.browser span:nth-child(1)::after {
	left: 50px;
}
.box.col-3.browser span:nth-child(1)::before {
	left: 25px;
}

.box.col-3.browser span:nth-child(1)::before,  .box.col-3.browser span:nth-child(1)::after, .box.col-3.browser span:nth-child(1) {
	width: 15px;
	height: 15px;
}

.box.col-3.browser span:nth-child(2) {
	width: 22px;
    height: 22px;
	left: 120px;
	display: none;
}

.box.col-3.browser span:nth-child(3) {
	left: 120px;
	width: 50%;
	height: 22px;
} 

@media (max-width:900px) {
	.box.browser span:nth-child(1), .box.browser span:nth-child(1)::after, .box.browser span:nth-child(1)::before {
		width: 15px;
		height: 15px;
    }
	
	.box.col-1.browser img.vertical.centered-in {
		margin: 0;
		width: 90%;
	}
	
	.box.col-3.browser {
		margin-top: 20px;
	}
	
	.box.col-3.browser img.vertical.centered-in {
		margin: 0 auto;
	}
	
	.box.browser div {
    	width: 90%;
		height: 30px;
	}
	
}



/** custom elements - work range icons **/

 .work-range-wrapper.dsc{
 	width: 850px;
 	height: 90px;
 }


.box .work-range-wrapper.appear {
    position: absolute;
    margin-top:20%;
 }
 
 .box.dark .work-range-wrapper pv {
    color: #303030;
 }


 @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	.box .work-range-wrapper.appear {
    	position: relative;
    	margin-top: -20px;
    	height: 20px;
 	}
}

 .work-range-wrapper.dsc p {
 	font-size: 1.5em;
	font-weight: 600;
	text-transform: uppercase;
	display: inline-block;
	padding-right: 40px;
	color:#fff;
 }

@media (max-width:900px) {
	.box.left .work-range-wrapper , .box.right .work-range-wrapper {
		margin: 0;
	}
	.work-range-wrapper.dsc {
		width: auto;
	}
	.work-range-wrapper.dsc p {
		display: none;
	}
}





/** interface elemenet - close button - cross bar **/
.close_toggle{
    height: 28px;
	width: 28px;
    cursor: pointer;
    z-index: 99;
}

.close_toggle span::before, .close_toggle span::after, .sticky_toggle span::before, .sticky_toggle span::after {
    content: '';
    width: 28px;
    height: 4px;
    display: block;
    margin-top: -10px;
    position: relative;
    transition: all .3s ease-in-out;
}
.close_toggle span{
    display: inline-block;
    background: #e1e2e1;
    width: 28px;
    height: 4px;
    transform: rotate(0deg);
    transition: all .3s ease-in-out;
}
.close_toggle span::after, .sticky_toggle span:after {
    margin-top: 16px;
}

.close_toggle.open span, main.lightbg .close_toggle.open span, main.darkbg .close_toggle.open span, .sticky_toggle.open span, main.lightbg .mobile_toggle.light.open span {
    background: transparent;
    transition: all .3s ease-in-out;
}
.close_toggle.open span::before, .sticky_toggle.open span::before {
    transform: rotate(45deg);
    top: 10px;
}
.close_toggle.open span::after, .sticky_toggle.open span::after {
    transform: rotate(-45deg);
    top: -10px;
}
main.darkbg .close_toggle span, main.darkbg .close_toggle span::before, main.darkbg .close_toggle span::after,main.lightbg .mobile_toggle.light span,main.lightbg .mobile_toggle.light span::before,main.lightbg .mobile_toggle.light span::after  {
    background: #fff;
}
main.lightbg .close_toggle span, main.lightbg .close_toggle span::before, main.lightbg .close_toggle span::after, .mobile_toggle.light span, main.lightbg .mobile_toggle.open.light span::before, main.lightbg .mobile_toggle.open.light span::after  {
    background: #000;
}

@media (max-width:900px) {	
	main.darkbg .mobile_toggle.light span, main.darkbg .mobile_toggle.light span::before, main.darkbg .mobile_toggle.light span::after {
		background: #fff;
	}
	main.darkbg .mobile_toggle span, main.darkbg .mobile_toggle span::before, main.darkbg .mobile_toggle span::after, main.darkbg .mobile_toggle.open.light span::before, main.darkbg .mobile_toggle.open.light span::after  {
		background: #000;
	}
	.close_toggle.open span, main.lightbg .close_toggle.open span, main.darkbg .close_toggle.open span, .sticky_toggle.open span, main.lightbg .mobile_toggle.light.open span {
    	background: transparent;
    	transition: all .3s ease-in-out;
	}

	main.lightbg.dv-head .mobile_toggle.over-header span, main.lightbg.dv-head .mobile_toggle.over-header span::before, main.lightbg.dv-head .mobile_toggle.over-header span::after {
		background: #fff;
	}
	main.lightbg.dv-head .mobile_toggle.open.over-header span::before, main.lightbg.dv-head .mobile_toggle.open.over-header span::after {
		background: #000;
	}
	main.lightbg.dv-head .mobile_toggle.open.over-header span {
		background: transparent;
	}
}

/** basic button **/

a.button {
	width: auto;
	height:auto;
	display: block;
}

button, .button.link {
    margin-top: 40px;
    padding: 20px 50px;
    border: none;
	cursor: pointer;
	font-size: 1.3em;
	transition: padding 100ms ease-in-out;
}

.button:hover {
	padding: 20px 60px;
}


.dark .button.link {
    background-color: #bc2d2d;
    color: #fff;
}

.button {
	background-color: #fff;
	color: #bc2d2d;
	font-weight:900;
}

.button.orange, button.orange {
	background-color: #bc2d2d;
	color: #fff;
	font-weight:400;
}

button.basic {
    padding: 20px 50px;
    border: none;
    background-color: #bc2d2d;
    color: #fff;
    width: 300px;
	transition:all 0.5s ease-in-out;
}


button.close {
	position: absolute;
    bottom: 0px;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding: 20px 50px;
    border: none;
    background-color: #bc2d2d;
    color: #fff;
    width: 300px;
    z-index: 6666;
	opacity: 0;
	transition:all 0.5s ease-in-out;
}


   .portfolio_filter {
        	position: absolute;
        	top: 57px;
        	left: 300px;
        	z-index: 2222;
        	cursor:pointer;
            padding: 10px 0px;
        	background-color: #fff;
            display: none;
        }

        .portfolio_filter span {
        	font-size: 1.2em;
        	font-weight: 900;
            padding: 10px 15px 10px 15px;
        	text-transform: uppercase;
        }

        .portfolio_filter ul.sub-menu {
        	position: absolute;
        	visibility: hidden;
            width: 170px;
            background-color: #fff;
            list-style: none;
            top: 38px;
        }
        .portfolio_filter ul.sub-menu.open {
            position: absolute;
            visibility: visible;
        }

        .portfolio_filter ul.sub-menu li {
            cursor: pointer;
            padding: 10px 0px 0px 10px;
            font-size: 1.1em;
            text-transform: uppercase; 
        }
        .portfolio_filter ul.sub-menu li {
            cursor: pointer;
            padding: 10px 0px 0px 10px;
            font-size: 1.1em;
            text-transform: uppercase; 
        }
        .portfolio_filter ul.sub-menu a:last-child li {
            padding: 10px 0px 10px 10px;
        }
         .portfolio_filter ul.sub-menu a{
            color: inherit;
        }
        .portfolio_filter ul.sub-menu li:hover {
            font-weight: 900;
        }

        main.darkbg .portfolio_filter span {
        	color: #000;
        }
#se {width:100%; height:auto; box-sizing:border-box; padding:10%;}#se h1, #se p {color:#fff; width:100%; max-width:none; text-align:justify; }#se h1, #se h2, #se h3 {margin: 25px 0; font-weight: 900; text-align:left;}#se p {margin:10px 0;}
 .se h1 {font-size: 4em; width:100%; }
 .se p {text-align:justify; max-width:none; width:100%; }
.se ul {max-width:450px; margin-top:20px; padding-left:20px; box-sizing:border-box;}.se ul li {font-size: 1.3em; text-align:justify;}.se ul li a {float:left;}#sehome {width:100%; min-height:calc(100vh - 80px); box-sizing:border-box; padding:5% 10%;}#sehome h1 {width:100%;}#sehome h1, #sehome h2, #sehome h3 {margin: 25px 0;    font-weight: 900;    font-size: 3.5em;    text-align: center;}#sehome p, #sehome li {color:#fff; width:100%; max-width:none; text-align:justify;     font-size: 1.3em;}#sehome p {margin:10px 0;}#sehome ul {margin-left:30px;}
.imgfit img {width:100%; height:100%; object-fit: cover;}
#se.li ul li {color:#fff; font-size: 1.3em;}
#se.li ul {margin-top:20px; padding-left:20px; box-sizing:border-box;}



.cookie-bar {
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 9999;
	background: #fff;
	display: flex;
	color: #000;
	left: 0;
	padding: 20px;
	box-sizing: border-box;
}

.cookie-bar > div {
	flex-grow: 2;
}

.cookie-bar p {
	max-width: 100%;
}

.cookie-bar svg {
	height: 50px;
	padding: 20px;
	fill: #000;
}

.cookie-bar .close_toggle {
	padding: 0;
	top: 25px;
	right: 25px;
}

.cookie-bar .close_toggle span {
	color: #000;
}

.cookie-bar span::before, span::after {
	background-color: #000;
}




.information .close_toggle span::before,
.information .close_toggle span::after {
	background-color: #fff;
} 