/*
Theme Name: Jonathan Snow 2015
Theme URI: http://www.jonathansnowdesign.com
Description: Theme designed for Jonathan Snow
Author: Oliver Stott
Author URI: http://www.oliverdesigns.com/
Version: 1.0
Tags: responsive, jonathan snow, landscape architect
*/
/* @import url('bootstrap/css/bootstrap.min.css'); */
@import url('css/carousel.css'); 
@import url('image-hover.css'); 
@import url(https://fonts.googleapis.com/css?family=Playfair+Display+SC:400,700,900|Playfair+Display:400,700,900|Open+Sans:400,600,700,300|EB+Garamond|Lora|Martel);

/* -- FIX -- */

.carousel, .home .content, .banner {
	height: 100%;
}

.content {
	min-height: 100%;
}

.houzz {
	display: block;height: auto; text-align: center;
}

.justify-content-center {
    justify-content: center!important;
    display: flex;
}

.btn-primary {
    border-radius: 0!important;
    text-transform: uppercase!important;
    letter-spacing: 0.1em!important;
    font-size: 0.9em!important;
    padding: 1em 2em!important;
}

.btn-primary {
    background: none!important;
    color: #000!important;
    border: thin solid #000!important;
}

.btn-primary:hover {
    background: #000!important;
    color: #fff!important;
}

/* VIDEOS */

.videoWrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
}
.videoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* BLOG */

.entry-title {
	margin-bottom: 0;
}

.text-justify {
	text-align: justify;
}

span.date {
	font-size: 0.8em;
}

span.category {
    text-transform: uppercase;
    letter-spacing: 0.2em;
    font-size: 0.7em;
}

.post h3 {
    font-size: 1.5em;
	margin-bottom: 0;
}

/* -- TRANSITIONS -- */

	.navbar-nav>li>a, ul.socialinks li a, .toplinks a, button.button, .process-text a, header, .option-set li a {
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		-ms-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
	}

/*	.content {
		-webkit-animation: fadein 2s;
		-moz-animation: fadein 2s;
		-ms-animation: fadein 2s;
		-o-animation: fadein 2s;
		animation: fadein 2s;
	}

 --- TOGGLE --- 

.navbar-inverse .navbar-toggler .icon-bar {
	background: #000!important;
}
.navbar-inverse .navbar-toggler, .navbar-inverse .navbar-toggler:hover {
	background: none!important;
}

.navbar-toggler .icon-bar {
  width: 22px;
  transition: all 0.2s;
}
.navbar-toggler .top-bar {
  transform: rotate(-45deg);
  transform-origin: 90% 10%;
}
.navbar-toggler .middle-bar {
  opacity: 0;
}
.navbar-toggler .bottom-bar {
  transform: rotate(45deg);
  transform-origin: 90% 90%;
}
.navbar-toggler.collapsed .top-bar {
  transform: rotate(0);
}
.navbar-toggler.collapsed .middle-bar {
  opacity: 1;
}
.navbar-toggler.collapsed .bottom-bar {
  transform: rotate(0);
} */


.navbar-toggler:not(:disabled):not(.disabled) {
	outline: none!important;
    z-index: 9999;
    position: fixed;
    transform: translateY(-50%);
    right: 0;
    top: 30px;
}

.navbar-toggler {
	border: none;	
	padding: 0px;
	margin-right: .75em;
}

.navbar-toggler:focus {
	box-shadow: none;
}

.animated-bar {
  width: 30px;
  height: 20px;
  position: relative;
  margin: 0px;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer;
}

.animated-bar span {
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

.animated-bar span {
    background: #000;
}

.headroom--top button.headWhite .animated-bar.open span {
    background: #000;
}

.animated-bar span:nth-child(1) {
  top: 0px;
}

.animated-bar span:nth-child(2) {
  top: 10px;
}

.animated-bar span:nth-child(3) {
  top: 20px;
}

.animated-bar.open span:nth-child(1) {
  top: 11px;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}

.animated-bar.open span:nth-child(2) {
  opacity: 0;
  left: -60px;
}

.animated-bar.open span:nth-child(3) {
  top: 11px;
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

/* --- HEADER --- */

.home header {
	position: fixed;
}

.navbar-inverse {
	background: rgba(256,256,256,0.9);
	border: none;
	margin-bottom: 0px;
	position: fixed;
	z-index: 9999;
	width: 100%;
	top: 0px;
	border-radius: 0px;
}

.navbar-inverse.smaller {
	background: rgba(256,256,256,1);
	opacity: 1
}

a.navbar-brand {
	padding: 10px 15px;
	color: #777!important;
	text-transform: uppercase;
	margin-right: 0;
}

a.navbar-brand p {
	font-size: 11px;
	line-height: 0.3em;
	font-weight: 600;
	margin-left: 8px;
	letter-spacing: 0.1em;
	position: absolute;
	margin-top: 30px;
}

a.navbar-brand .site-title {
font-family: 'Martel', serif;
	color: #777!important;
	font-weight: 400;
	text-align: left;
	position: relative;
	margin: 0 auto!important;
	float: left;
	display: inline-block;
	font-size: 22px;
	text-transform: uppercase;
	height: 32px;
}

.navbar-nav>li>a {
	text-transform: uppercase;
	color: #777;
	font-size: 12px;
	font-family: 'Open Sans', sans-serif;
	padding: 5px 10px;
	letter-spacing: 0.1em;
	font-weight: 600;
	text-decoration: none;
}

.navbar-nav li a:hover, .navbar-nav>li.current_page_item>a {
	color: #333!important;
	border-bottom: thin solid #333;
}


h1, h2, h3, h4, h5, h6 {
font-family: 'Martel', serif;
	line-height: 1.5em;
}

h1 {
	color: #4d4d4d;
	font-size: 32px;
	text-align: center;
	font-weight: 300;
}

h2 {
font-family: 'Martel', serif;	
font-weight: 300;
	font-size: 18px;
	margin-top: 0px;
}

#navbar {
	float: right;
	padding: 17px 10px;
}

img {
	max-width: 100%;
}

.my-2 {
	margin: 30px auto;
}

/* --- MENU --- */

header {
	background: #fff;
	-webkit-box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.05);
	-moz-box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.05);
	box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.05);
	opacity:0.5;
}

.home header {
	opacity:1;
}

header:hover {
	opacity:1;
}

header .sidebar-nav {
    padding: 9px 0;
}

header {
    position: relative;
	z-index: 999;
}

/* -- BODY -- */

body {
	font-family: 'Open Sans', sans-serif;
	color: #4c5a51;
	margin-top: 70px;
}

body.home, body.page-template-parallax-page {
	margin-top: 0px;
}

p {
    line-height: 1.4em;
    font-size: 14px;
    font-family: 'Open Sans', sans-serif;
    margin: 20px 0;
}

.container {
	background: #fff;
	padding: 0 30px;
}

.container .container {
	padding: 0;
}

a {
	color: #bdd4b8;
}

/* --- 2 COL SPLIT --- */

.left {
	float: right;
}

.left,.right {
	padding-left: 50px;
}

.left h1 {
	text-align: left;
}

.halfcol {
	padding-right: 0px;
	height: 100%;
	position: fixed;
	right: 0px;
	top: 0px;
}

.right {
	padding-right: 50px;
	height: 100%;
	position: fixed;
	left: 0px;
	top: 0px;
}

.page-template-2colleft-page .right {
	margin-top: 70px;
}

.mosaic {
	padding: 0px;
	border: 2px solid #fff;
	height: 28%;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: none;
	min-height: 180px;
}

.mosaic.col-md-6, .mosaic.col-md-8, .mosaic.col-md-9 {
	padding: 0px;
	border: none;
	height: 100%;
}

/* --- FILTER --- */

ul.option-set {
    list-style: none;
    padding: 0 15px;
	text-align: center;
}

.option-set li {
	display: inline-block
}

.filter-button-group {
	text-align: center;
	margin-bottom: 10px;
}

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

.portfolio {
	margin: 0 5px;
}

button.button, .option-set li a {
    text-transform: uppercase;
    font-weight: 600;
    background: none;
    border: none;
    color: #9d9d9d;
    font-family: 'Open Sans', sans-serif;
    outline: none;
    letter-spacing: 0.1em;
    margin: 0 8px;
    font-size: 12px;
	text-decoration: none;
	padding-bottom: 5px;
}

.option-set li a.selected, .option-set li a:hover {
	border-bottom: thin solid #4d4d4d;
}

button.button.is-checked, button.button:hover, .option-set li a:hover, .option-set li a.selected {
    color: #4d4d4d;
}

.grid .element {
    padding: 0 1.25%;
}

/**** Isotope CSS3 transitions ****/

.isotope,
.isotope .isotope-item {
  -webkit-transition-duration: 0.8s;
     -moz-transition-duration: 0.8s;
      -ms-transition-duration: 0.8s;
       -o-transition-duration: 0.8s;
          transition-duration: 0.8s;
}

.isotope {
  -webkit-transition-property: height, width;
     -moz-transition-property: height, width;
      -ms-transition-property: height, width;
       -o-transition-property: height, width;
          transition-property: height, width;
}

.isotope .isotope-item {
  -webkit-transition-property: -webkit-transform, opacity;
     -moz-transition-property:    -moz-transform, opacity;
      -ms-transition-property:     -ms-transform, opacity;
       -o-transition-property:      -o-transform, opacity;
          transition-property:         transform, opacity;
}


/* --- INDIVIDUAL PROJECT --- */

.pro-desc {
	padding: 40px 0 120px;
	background: #f2f2f2;
	margin-top: 20px;
}

.pro-desc .container {
	background: none;
}

.entry-content {
	padding-top: 60px;
}

.entry-content:before {
	content:'';
	background: url(/wp-content/uploads/2016/01/bd_sing.png) no-repeat;
	width: 121px;
	height: 17px;
	position: absolute;
	left: 50%;
	margin-left: -60px;
	margin-top: -50px;
}

.entry-content:after {
	content:'';
	background: url(/wp-content/uploads/2016/01/bd_sing.png) no-repeat;
	width: 121px;
	height: 17px;
	position: absolute;
	margin-top: 20px;
	left: 50%;
	margin-left: -60px;
}

.imgtxt {
	padding: 0 15px;
}

.split_txt {
	font-size: 13px;
	padding: 0 15px;
}

img.alignleft {
    float: left;
    margin-right: 20px;
	margin-bottom: 20px;
}

.page-id-13 .content img.alignleft {
	float: left;
	clear: both;
}

img.alignright {
    float: right;
    margin-left: 20px;
}

/* === Full-bleed option === */
.jg-fullbleed{ width:100vw; margin-left:50%; transform:translateX(-50%); }

/* === Justified Gallery – core === */
.justified-gallery{ --jg-gap: 4px; }
.justified-gallery .jg-rows{ line-height:0; }
.justified-gallery .jg-row{ display:flex; gap:var(--jg-gap); margin-bottom:var(--jg-gap); }
.justified-gallery .jg-row:last-child{ margin-bottom:0; }
.justified-gallery .jg-item:focus-visible img, .justified-gallery .jg-item:hover img{ transform:scale(1.03); }
	.justified-gallery .jg-item { position: relative; display: block; overflow: hidden; background: #f3f4f6; cursor: pointer; } .justified-gallery .jg-item img { display: block; width: 100%; height: 100%; object-fit: cover; transform: translateZ(0); transition: transform .28s ease; }

/* Optional caption overlay on thumbs */ .justified-gallery .jg-cap { position: absolute; inset: auto 0 0 0; padding: .5rem .65rem; font-size: .9rem; color: #fff; background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.55) 56%, rgba(0,0,0,.75) 100%); opacity: 0; transition: opacity .25s ease; pointer-events: none; } .justified-gallery .jg-item:hover .jg-cap, .justified-gallery .jg-item:focus-visible .jg-cap { opacity: 1; }

/* === Modal/Carousel styling (overlay with WHITE content & blurred backdrop) === */
/* Blur the backdrop behind the modal */
.modal-backdrop.show{ background-color:rgba(255,255,255,1); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }

/* --- PROCESS --- */

.page-template-parallax-page h1 {
	color: #333;
}

section {
    height: 500px;
    padding-top:120px;
    padding-bottom:220px;
    overflow:auto;
}

.pad-section:last-child > a.next {
	display: none;
}

.pad-section:last-child > a.prev {
	width: 100%;
}

.pad-section:first-child > a.prev {
	display: none;
}

.pad-section:first-child > a.next {
	width: 100%;
}

.paralayer {
	height:100%;
}

.lead {
	color: #333;
}

.pad-section.scroll {
	position: relative;
}

.process-text {
	background: rgba(189,218,184,0.85);
	padding: 0 40px 20px;
	outline: 1px solid white;
	outline-offset: -8px;
	margin-top: 10%!important;
}

.process-text a {
    color: #fff;
    padding: 10px 20px;
    text-transform: uppercase;
    display: inline-block;
    text-decoration: none!important;
    font-size: 30px;
	background: none!Important;
}

.process-text a:hover {
    	background: rgba(189,212,184,0.5);
}

a.next, a.prev {
	background: url(/wp-content/uploads/2016/01/arrows.png) no-repeat;
	width: 60px;
	height: 35px;
	text-align: center;
	margin: 0 auto;
	display: block;
	position: absolute;
	left: 50%;
	margin-left: -32px;
}

a.prev {
	top: 100px;
}

a.next {
	background-position: 0 -35px;
	bottom: 50px;
}

/* --- ABOUT --- */

img.alignleft {
    float: left;
    margin-right: 20px;
    margin-bottom: 10px;
    margin-top: 5px;
}

img.alignright {
    float: right;
    margin-left: 20px;
    margin-bottom: 10px;
    margin-top: -10px;
}

/* --- PRESS --- */

.press {
    margin-top: 20px;
}

.press .col-md-2 {
    margin-bottom: 30px;
}

.press a {
    position: relative;
    height: 100%;
    display: block;
}

.press img {
    max-width: 100%;
}

span.pdf {
    position: absolute;
    width: 60px;
    height: 60px;
    background-image: url(/images/pdf_icon.svg);
    bottom: 10px;
    right: 5px;
    background-size: 100%;
    background-position: 50%;
}

/* --- FOOTER --- */

ul.social {
	list-style: none;
	padding-left: 0;
	font-size: 1.5em;
}
ul.social li {
	display: inline-block;
	padding-right: 10px;
}
ul.social li a {
	color: #000;	
}

.anodsite {
	display: none;
}

.page-id-13 .anodsite {
	display: block;
	position: fixed;
	bottom: 20px;
	right: 20px;
}

@media (min-width: 1400px) {
.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1140px!important;
}
}

@media all and (min-width:1600px) {
.split_txt {
       font-size: 16px;
}
}

@media all and (min-width:1024px) {
.paralayer {
       background-attachment: fixed!important;
}
}

@media all and (min-width:970px) {
.grid .col-md-4 {
	width: 33.2%;
}
}

@media all and (min-width:480px) and (max-width:970px) {
.grid .col-md-4 {
	width: 49.5%;
}
}

@media all and (max-width:992px) {
.halfcol, .right {
	height: auto;
	position: relative;	
	padding: 0px;
}
.left,.right {
	padding: 0 15px;
	margin-top: 0px;
		float: left!important;
		width: 100%!important;
}
	.page-id-13 .content img.alignleft {
	    clear: both;
	    float: none;
	    text-align: center;
	    display: inline-block;
	}
.left, .left h1 {
	float: none;
	text-align: center!important;
}
body.page-template-2colright-page, body.page-template-2colleft-page {
	margin-top: 70px;
}
	.navbar-nav>li>a {
		padding: 5px 7px;
		font-size: 11px;
}
	#navbar {
		padding: 17px 5px;
	}
}



@media all and (max-width:767px) {
	h1 {
		font-size: 36px;
	}
.page-template-parallax-page h1 {
		font-size: 28px;
}
	h1.banner-title {
		font-size: 24px;
	}
	.toplinks {
		top: 10px;
		font-size: 14px;
		z-index: 999;
	}
	.navbar-inverse .navbar-toggler {
		margin-right: 0px;
		border: none;
		background: none!important;
		padding: 18px 10px;
	}
	.navbar-inverse .navbar-toggler .icon-bar {
		background: #000;
	}
	ul.socialinks {
		display: none;
	}
	#navbar {
		padding: 0px;
		text-align: center;
		width: 100%;
	}
	.mainnav:before {
		display: none;
	}
	.mainnav {
		padding-top: 10px;
	}
	.navbar-nav>li>a {
		padding: 5px 0;
		font-size: 16px;
		display: inline-block;
	}
	.navbar-nav>li.current_page_item>a {
		border-bottom: none;
	}
	header {
		opacity:1;
	}
}

@media all and (max-width:480px) {
.justified-image-grid div {
	width: 100%!important;
}
.jig-imageContainer img {
	width: 100%!important;
	height: auto!important;
	margin: 0px!important;
    position: relative!important;
    display: block;
	float: left;
}

.jig-overflow {
	height: auto!important;
}

.page-id-266 .content img {
	width: 100%;
	height: auto;
}
.option-set li a {
	float: left;
}

}

@keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Firefox */
@-moz-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Safari and Chrome */
@-webkit-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Internet Explorer */
@-ms-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Opera */
@-o-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}