/* TYPOGRAPHY */
/* ----------------------------------------- */

@import url(//fonts.googleapis.com/css?family=Open+Sans:100,300italic,600italic,300,600);

* {
-webkit-font-smoothing: antialiased;
font-smooth: always;
}

img[src$=".gif"], img[src$=".png"], img[src$=".jpg"] {
		image-rendering: pixelated;
		image-rendering: optimizeQuality;
		-ms-interpolation-mode: nearest-neighbor;
}

div { 
		image-rendering: pixelated;
		image-rendering: optimizeQuality;
		-ms-interpolation-mode: nearest-neighbor;
}

body {
font-family: 'Open Sans', sans-serif;
font-weight:100;
font-size:10px;
line-height:2em;
word-spacing:1px;
/*color:#494949;*/
color:#222;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
background: #fcfcfc;
overflow-x:hidden
}

.fade {display:none /* hides page so it can fade in */}

#fontchange {
position: fixed;
right: 10px;
top: 10px;
z-index:9999999
}



h1, h2, h3, h4, h5, h6 { font-weight:bold } 
.infopage h3 {margin-top:1em;}

.jm_menu_top h1 {
letter-spacing: -1px;
}

/* COLOUR SCHEME */
/* ----------------------------------------- */

/* 
.single-portfolio_slideshow {background:#dddddd}
body.home 
{
background: #fafafa;
} 
 */


/* LOADING */
/* ----------------------------------------- */


	#loading { display: block; font-size: 50px; left: 50%; margin-left: -28px; position: absolute; top: 50%; }
	#loading { display: none;  }
	
	@-webkit-keyframes opacity {
		0% { opacity: 1; }
		100% { opacity: 0; }
	}
	@-moz-keyframes opacity {
		0% { opacity: 1; }
		100% { opacity: 0; }
	}
	
	
	#loading span {
		-webkit-animation-name: opacity;
		-webkit-animation-duration: 1s;
		-webkit-animation-iteration-count: infinite;
		
		-moz-animation-name: opacity;
		-moz-animation-duration: 1s;
		-moz-animation-iteration-count: infinite;
	}
	
	#loading span:nth-child(2) {
		-webkit-animation-delay: 100ms;
		-moz-animation-delay: 100ms;
	}
	
	#loading span:nth-child(3) {
		-webkit-animation-delay: 300ms;
		-moz-animation-delay: 300ms;
	}
	

	/* Fade-In Animations */

	@-webkit-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
	@-moz-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
	@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
	 
	#fade {
		opacity:0;  /* make things invisible upon start */
		-webkit-animation:fadeIn ease-in 1;  /* call our keyframe named fadeIn, use animattion ease-in and repeat it only 1 time */
		-moz-animation:fadeIn ease-in 1;
		animation:fadeIn ease-in 1;
	 
		-webkit-animation-fill-mode:forwards;  /* this makes sure that after animation is done we remain at the last keyframe value (opacity: 1)*/
		-moz-animation-fill-mode:forwards;
		animation-fill-mode:forwards;
	 
		-webkit-animation-duration:1s;
		-moz-animation-duration:1s;
		animation-duration:1s;
	}
	 
	#fade:first-child {
		-webkit-animation-delay: 1.6s;
		-moz-animation-delay: 1.6s;
		animation-delay: 1.6s;
	}
	 
	#fade:nth-child(2n) {
		-webkit-animation-delay: 2.6s;
		-moz-animation-delay:2.6s;
		animation-delay: 2.6s;
	}	

/* LINKS */
/* ----------------------------------------- */

a {
text-decoration: none;
color: #757575;
-webkit-transition: all .2s ease-in;
-moz-transition: all .2s ease-in;
-o-transition: all .2s ease-in;
transition: all .2s ease-in;
}

a:hover {
text-decoration: none;
color: #4d4d4d;
}

.alert { background:red; color:white } 


/* ELEMENTS */
/* ----------------------------------------- */

.container
{
position: relative;
width: 1400px;
max-width:96%;
margin: 0 auto;
padding: 20px;
}

.home .container 
{
width:95%;
padding: 2.5%;
}

.hide {display:none;}

/* fade in first image */

img.psp-active {opacity:0;cursor: pointer;}
.home img.psp-active {cursor: default!important;}

.frontpage-slideshow {
right: 100px;
top: 100px;
bottom:100px;
position:fixed;
margin:0;
padding:0;
}

.frontpage-slideshow .slideshow-wrapper, .frontpage-slideshow .slideshow-content, .frontpage-slideshow .slideshow-content a {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
max-height:100%;
}

.frontpage-slideshow  .centered .portfolio-slideshow{
position: absolute!important;
top: 0;
bottom: 0;
left: 0;
right: 0;
height: 100%!important;
margin:0;
}

.info-slides,.frontpage-slideshow {
display:block;
opacity:0; /* FOR FADE IN */
}

.frontpage-slideshow .slideshow-content a {
display:block!important;
/* 
text-align:left!important;
 */
}

.frontpage-slideshow .fluid .slideshow-content img {
position:relative;
text-align:center;
max-height:100%!important;
}

.slideshow-nav {
margin-right: 0!important;
text-align: left!important;
width: 100px!important;
float: left;
position: fixed;
bottom: 25px;
z-index: 99;
margin-left: 165px!important;

}

.slideshow-page-nav {
text-align: left;
width: 110px;
float: left;
position: fixed;
bottom: 25px;
z-index: 99;
}

.slideshow-page-nav a {
width:auto;
margin-right:1em;
float:left;
}

.info-gallery-hide,.info-gallery-show {
position: absolute;
left: 50px;
bottom: 0;
}
 
.info-gallery-home {
position: absolute;
left: 0;
bottom: 0;
}

.info-gallery-caption-hide,.info-gallery-caption-show {
position: absolute;
left: 40px;
bottom: 0;
width:auto;
min-width:70px;
}

.info-gallery,.info-slides {margin-top:50px;}

/* 
.caption-active {z-index:9999999999!important;}
 */

.info-gallery {
margin: 0 auto;
position: absolute;
top: 10%;
left: 15%;
width: 70%!important;
/* display:none; */
}

.jmbox {
width: 100%;
float: left;
height: auto;
display: block;
position: relative;
}

.jmbox.title {
font-weight:bold;
margin-bottom:0.45rem;
}

.jmbox.offset.text {
	padding-left:0.45rem;
}

.jmbox.break {
	
}
	

.infopage {
display:none;
float:left;
min-width:100px;
margin-right:40px;
}

.menu-item a:hover, .jmbox:hover a {
color:#000!important;
-webkit-transition: all .25s ease-in;
-moz-transition: all .25s ease-in;
-o-transition: all .25s ease-in;
transition: all .25s ease-in;
}

/* 
.slideshow-title {text-transform:capitalize;}
 */

.jm_menu_top p {
 	font-family: "open sans";
 	font-weight:100;
	text-transform: uppercase;;
}

.jm_menu_top h1 {
font-size:20px;
line-height:20px;
margin: 0 0 0 0;
font-weight:100;
text-transform: capitalize;
text-align: left;
}

.mini_header h1 {
font-size:16px;
line-height:16px;
margin: 0 0 0 0;
font-weight:100;
text-transform: capitalize;
text-align: left;
float:left;
}

.mini_header h2 {
float:right;
font-weight:100;
text-transform:none;
font-size:1.25em;
}

.mini_header h2.back-top {
float:left;
clear:both;
font-weight:100;
text-transform:capitalize;
font-size:1em;

}


.jm_menu_top {
width: auto;
float: left;
clear: both;
margin-bottom: 2em;
}

.menu-main-menu-container {
margin-top: 2em;
}

.page-parent  .menu-main-menu-container a, .archive .menu-main-menu-container a {
color:#dbdbdb
}

.page-parent  .menu-main-menu-container .current-menu-item a, .archive .menu-main-menu-container .current-menu-item a  {
color:#757575
}

.current-menu-item {
font-weight: 900;  
}

.jm_menu_bottom {
width:200px; margin-left:30px; padding: 20px;
}

.jm_text {
text-transform: none;
position: relative;
width: auto;
float: left;
clear: both;
text-indent: -0.5em;
padding-left:0.5em;
}


.jm_text.child { font-weight: 100;width: 100%;}
.jm_text.parent { font-weight: 900; cursor:pointer;}

.jm_image {
float: none;
position: fixed;
right: 5%;
top: 100px;
bottom: 100px;
width: auto;
clear: both;
display: none;
text-align: center;
}

.jm_image a {
position:absolute;
top:0;right:0;bottom:0;left:0;
}

.jm_frontpageimage {
float: none;
position: fixed;
left: 50%;
top: 100px;
bottom: 100px;
width: auto;
clear: both;
display: block;
margin-left: -200px;
}

.jm_default {
left:290px;
top: 20px;
bottom: 20px;
right: 20px;
position: absolute;
z-index:1;
}

.psp-icon { color: transparent!important; }

.jm_default img,.jm_image img,.jm_frontpageimage img {
height: auto;
max-width: 100%;
width: auto;
max-height:100%;
}

.page_clear {
width:100%;
float:left;
clear:both;
margin:1em 0;
}

#textblock {
font-size: 1.35em;
font-family: georgia, sans-serif;
word-spacing: 1px;
line-height: 1.8em;
width: 84%;
margin: 2em auto;
text-align: justify;
padding: 4% 8%;
border: 1px solid #E1E1E1;
display:inline-block
}

#textblock p {
margin-bottom:0.5em;
}

#textheader {
font-weight: 100;
text-transform: capitalize;
}

.slideshow-meta {text-align:left;}

#footer 
{
position: fixed;
bottom: 20px;
font-weight: 100;
color: #B6B6B6;
font-size: 0.9em;
left: 20px;
width: 500px;
}

#footer a
{
color: #B6B6B6;
}

#frontpage_menu
{
display:none;
position: fixed;
top: 100px;
width: 185px;
left: 20%;
margin-left: -100px;
}

#infopagemenu {
position: fixed;
top: 275px;
left: 20%;
margin-left: -100px;
}

.infopagecontact {
width: 280px;
float: left;
clear:both;
margin-top: 1em;
}

.infopagecontact h3 {
float: left;
width: 41%;
margin-top:0;
min-height: 200px;
}


.slideshow-meta {
/* Firefox */
display:-moz-box;
-moz-box-orient:horizontal;
-moz-box-pack:center;
-moz-box-align:center;

/* Safari and Chrome */
display:-webkit-box;
-webkit-box-orient:horizontal;
-webkit-box-pack:center;
-webkit-box-align:center;

/* W3C */
display:box;
box-orient:horizontal;
box-pack:center;
box-align:center;
}

.slideshow-title {
padding:1em 4em 0.25em;
font-weight:900;
}
.slideshow-caption {
padding: 0 4em;
}

/* 
.about_block {
float:left;
width:30%;
margin-right:3%;
}

.about_info {
float:left;
width:30%;
clear:both;
margin-top:2em;
}
 */

.about_block,.about_info, .static  {
float: left;
width: 60%;
margin: 0 20%;
clear: both;
display: block;
}

.mono1 {
float: left;
width: 70%;
}

.mono1 img {width:auto;max-width:100%;height:auto;}

.mono1, mono1 {margin-bottom:2em;}

.mono2 {
float: left;
clear: right;
width: 25%;
margin-left: 5%;
}


.about_block h2 {
margin-top:2em;float:left;clear:both;width:100%;
}

.about_info ul {width:100%;}
.about_info li, .about_block li {margin-bottom:0.25em 0;} 
.field1of1 {width:100%;float:left;}
.field1of2 {width:10%;float:left;font-style:italic}
.field2of2 {width:85%;margin-left:5%;float:left;}
.field1of3 {width:10%;float:left;font-style:italic}
.field2of3 {width:27.5%;margin-left:5%;float:left;color:#636363}
.field3of3 {width:47.5%;margin-left:5%;float:left;}

.back h2 {
clear: both;
font-size: 11px;
line-height: 16px;
margin: 1em 0;
padding:1em 0;
font-weight: 100;
text-transform: uppercase;
text-align: left;
float: left;
text-decoration: none;
color: #757575;
}

.noscript {
font-weight:900;
padding:0.25em 1em;
text-align:center;
position:fixed;
bottom:0;left:0;right:0;
opacity:0;
-webkit-animation:fadeIn ease-in 1;
-moz-animation:fadeIn ease-in 1;
-o-animation:fadeIn ease-in 1;
animation:fadeIn ease-in 1;
-webkit-animation-fill-mode:forwards;
-moz-animation-fill-mode:forwards;
-o-animation-fill-mode:forwards;
animation-fill-mode:forwards;
-webkit-animation-duration:1s;
-moz-animation-duration:1s;
-o-animation-duration:1s;
animation-duration:1s;
-webkit-animation-delay:2s;
-moz-animation-delay:2s;
-o-animation-delay:2s;
animation-delay:2s;
}

/* GALLERY */

.slideshow-meta {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: 0 auto!important;
padding: 0;
z-index:997;
}
.slideshow-caption {
text-align: left;
position: relative;
background: none;
margin: 0 auto;
display: none;
padding: 2em;
font-size: 1.1em;
z-index: 996;
}

/* DEPRECIATED
.slideshow-caption {
text-align: left;
position: absolute;
background: rgba(221, 221, 221, 0.85);
top: 0;
left: 0;
right: 0;
bottom: 0;
width: 100%;
margin: 0 auto;
display:none;
padding:100px 25px 0 25px;
font-size:1.1em;
z-index:996;
}
 */

.fluid .slideshow-content img {
z-index: 800;
position: relative;
}
.slideshow-title {
bottom: 25px;
position: fixed;
z-index: 1;
bottom: 25px;
padding: 0;
display: block!important;
opacity: 1!important;
width:600px;
text-align:right;
}
.slideshow-title,.slideshow-title p {
padding:0!important;margin:0!important;
}
.slideshow-wrapper p {
margin: 0 auto!important;
}

.slideshow-content .slideshow-next {
z-index:999;
position: relative;
}

.slideshow-content a {
display: table-cell;
vertical-align: middle;
text-align: center;
}

.over-and-over-block {
margin-bottom: 2em;
width:100%;
clear:both;
float:left;
display:block;
font-family: 'Open Sans', sans-serif;
font-weight: 100;
font-size: 11px;
line-height: 2em;
}

.over-and-over-block h2 {
font-size:2em;
}

.halfimage {
float: left;
width: 50%;
margin-right:5%;
}

.over-and-over-block img {
max-width:100%;
height:auto;
}

.halftext {
float: left;
width: 45%;
}

.inner-nav {
    position: absolute;
    top: 0;
    height: 100%;
    width: 50%;
    z-index: 999;
}

.inner-nav.left {
    left: 0;
}

.inner-nav.right {
    right: 0;
}