html, body {
width: 100%;
min-height: 100%;
margin: 0;
padding: 0;
background: #fff;
}

#container {
opacity: 1;
transition: all 250ms ease-in-out;
}

#container.showless {
opacity: 0.25;
transition: all 250ms ease-in-out;
}

#wait {
opacity: 0;
transition: all 250ms ease-in-out;
}

#wait.over {
opacity: 1;
transition: all 250ms ease-in-out;
transition-delay: 2s;
}

.fade {
opacity: 0;
transition: all 250ms ease-in-out;
}
.fade.slick-initialized  {
opacity:1;
transition: all 250ms ease-in-out;
}

.text {
margin-bottom: 60px;
}

#mapCanvas {
width: 100%;
height: 500px;
}

body.blog,
body.single-post {
background: #dedede;
}

hr {
border: 0 none;
border-top:1px solid #969696;
border-radius: 0;
margin: 15px 0 0;
padding:0;
}

h1#seo {
position: absolute;
top: 0;
left: -9999999999px;
}

b, strong {
font-weight: normal;
}

a,
a:visited {
color: #646464;
text-decoration: none;
padding: 0;
border-bottom: 1px solid #dedede;
transition: all 250ms ease-in-out;
outline: 0 none;
}

a:hover,
a:active,
a:focus {
color: inherit;
border-bottom: 1px solid #969696;
transition: all 250ms ease-in-out;
outline: 0 none;
}  


#logo a {
border: 0 none;
}

#logo {
width: 100%;
margin: 0 auto 0;
padding: 100px 0;
}

#hamburger {
position: fixed;
width: 20px;
top: 30px;
left: 30px;
z-index: 9999!important;
}

#logo svg {
display: block;
width: 245px;
margin: 0 auto;
fill: #424242;	
}

#hamburger svg rect {
fill: #969696;	
transition: fill 250ms ease-in-out;
}

#hamburger rect.turn-1,
#hamburger rect.turn-2 {
transform: rotate(0deg);
}

#hamburger.cross rect.disa {
opacity: 0;
}

#hamburger.cross rect.turn-1 {
transform: rotate(45deg);
transform-origin: center center;
/* transition: all 250ms ease-in-out; */
}

#hamburger.cross rect.turn-2 {
transform: rotate(-45deg);
transform-origin: center center;
/* transition: all 2000ms ease-in-out; */
}

#hamburger:hover {
cursor: pointer;
}

#hamburger:hover svg rect {
fill: #424242;
transition: fill 250ms ease-in-out;
}


#strapline {
margin: 0 auto 0;
padding: 30px 0 15px;
}

#subHead {
margin: 0 auto 0;
padding: 15px 0 15px;	
}


.grid-container {
max-width: 768px;
}

.grid-container.expanded {
max-width: 1156px;
}

.full-height {
width: 100%;
height:100%;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
}

.full-width {
width: 100%;
margin: 60px 0 0;
padding: 30px 0;
}

.grey {
background: #dedede;
}

.charcoal,
.footer {
background: #212121;
}

.white {
padding: 0;
}

.valign-container {
display: table;
width: 100%;
height: 100%;
}

.valign {
display: table-cell;
vertical-align: middle;
}

h1, 
h2, 
h3, 
h4, 
h5, 
h6,
p,
p span,
span,
ul,
button,
.page-numbers,
.screen-reader-response,
.wpcf7-response-output,
.wpcf7-validation-errors,
[type='submit'], [type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea, select {
font-family: adobe-garamond-pro, serif;
font-size: 12px;
font-weight: 400;
font-style: normal;
letter-spacing: 2px;
line-height: 1.66;
text-align: center;
text-transform: uppercase;
color: #424242;
margin: 0;
padding: 0;
}

h1, 
h2, 
h3,
h4,
h5 {
font-weight: 700;
text-align: left;
margin: 24px 0 0px;
}



h6 {
font-size: 10px;
}

p,
p span,
textarea,
.screen-reader-response,
.wpcf7-response-output,
.wpcf7-validation-errors {
text-transform: none;
font-size: 16px;
letter-spacing: 0.3px;
text-align: left;
margin: 24px auto 0;
color: #646464;
}

.screen-reader-response,
.wpcf7-response-output,
.wpcf7-validation-errors {
color: red;
}

.screen-reader-response ul {
display: none;
}

.wpcf7-not-valid-tip {
font-size: 6px;
color: red;
}

.wpcf7-response-output,
.wpcf7-validation-errors {
display: none;
}

p.large,
blockquote p,
blockquote p span {
font-size: 21px;
line-height: 1.5;
}

p.small {
font-size: 12px;
}

p.date {
margin: 0;
}

blockquote {
margin: 0;
padding: 0 30px;
border-left: 1px solid #c8c8c8;
}

.footer p,
.footer p a {
margin: 0;
color: #969696;
}

.charcoal p,
.charcoal p a {
color: #dedede;
}

.footer p a:hover,
.charcoal p a:hover,
.charcoal h1,
.charcoal h2,
.charcoal h3,
.charcoal h4,
.charcoal h5,
.charcoal h6 {
color: #dedede;	
}

.footer p.small {
margin: 24px 0 0;
}

ul {
font-size: 10px;
text-align: left;
margin: 0;
padding:
}

ul li {
list-style: none;
line-height: 2;
}

ul li a {
text-decoration: none;
border: 0 none;
}

ul li a:hover {
border: 0 none;	
}

ul.footer {
margin-top: 0;
}

ul.site-map {
margin-top: 24px;
}
	

.footer ul,
.footer ul li a {
color: #969696;
}

.footer ul li a:hover {
color: #fff;
}

nav {
position: fixed;
width: 100%;
height: 80px;
top: -80px;
background: #fff;
/* border-bottom: 1px solid #dedede; */
transition: all 250ms ease-in-out;
z-index: 999!important;
}

nav.open {
top: 0;
transition: all 250ms ease-in-out;
}


nav ul {
font-size: 12px;
text-align: center;
margin: 28px auto 30px;
padding: 0;
} 

nav ul li {
display: inline;
list-style: none;
margin:  0 5px;
/* border-top: 1px solid #c8c8c8; */
}

nav ul li:last-of-type {
/* border-bottom: 1px solid #c8c8c8; */
}

nav ul li a {
text-decoration: none;
}

nav ul li a:active,
nav ul li a:focus {
border: 0;	
}

.accordion {
background: #dedede;
margin: 30px 0 0;
}

.accordion a {
background-color: #dedede;
border: 0 none;
border-top: 1px solid #969696;
}

.accordion-item .accordion-title {
font-size: 12px;
text-align: center;   
padding: 30px 0;
border: 0 none;
border-top: 1px solid #969696;
color: #424242;
}

.accordion-item.is-active .accordion-title {
color: #212121;	
}

.accordion-content {
display: none;
padding: 0 0 30px;
border: 0 none;
background-color: #dedede;
color: #646464;
}

.accordion-content p {
color: #646464;
}

:last-child:not(.is-active) > .accordion-title {
border-bottom: 0 none;
}

:last-child > .accordion-content:last-child {
border-bottom: 0 none;
padding-bottom: 30px;
}

.accordion-title:hover, .accordion-title:focus {
background-color: #dedede;
border: 0 none;
border-top: 1px solid #969696;
color: #212121;
}



button,
[type='submit'] {
font-size: 10px;
display: block;
width: 100%;
border: 1px solid #c8c8c8;
border-radius: 0;
margin: 30px auto;
padding: 15px 5px;
color: #424242;
transition: all 250ms ease-in-out;
}

button:hover,
[type='submit']:hover {
cursor: pointer;
border: 1px solid #969696;	
transition: all 250ms ease-in-out;
}

.paginate {
width: 100%;
margin: 60px auto 0;
display: block;
text-align: center;
}

a.page-numbers,
.page-numbers {
font-size: 16px;
width: 100px;
border: 1px solid #c8c8c8;
border-bottom: 1px solid #c8c8c8;
border-radius: 0;
margin: 0 5px;
padding: 10px 15px;
color: #646464;
transition: all 250ms ease-in-out;
}

.page-numbers.dots,
.page-numbers.next,
.page-numbers.prev {
border: 0 solid #969696;		
}



.page-numbers.current {
border: 1px solid #969696;	
color: #424242;
}

.page-numbers:hover {
cursor: pointer;
border: 1px solid #969696;	
transition: all 250ms ease-in-out;	
background: transparent;
}

.page-numbers.dots:hover {
border: 0 solid #969696;
cursor: default;		
}

.page-numbers.prev:hover,
.page-numbers.next:hover {
border: 0 solid #969696;
color: #212121;
cursor: pointer;		
}

#project-description {
margin-bottom: 30px;
}

.project-outer {
position: relative;
width: 100%;
height: 100%;
}

.project-inner {
display: table;
position: absolute;
width: 100%;
height: 100%;
top:0;
left: 0;
right:0;
bottom: 0;
background: #212121;
opacity: 0;
transition: all 250ms ease-in-out;
}

.project-info {
display: table-cell;
background: #212121;
vertical-align: middle;
background: transparent;
padding: 0 30px;
transition: all 250ms ease-in-out;
}

.project-info h2 {
font-size: 10px;
text-align: center;
color: #fff;	
margin: 0;
padding: 15px;
/*
border-top: 1px solid #424242;
border-bottom: 1px solid #424242;
*/
}

.project-outer:hover .project-inner,
.project-outer:hover .project-info 
{
opacity: 1;
transition: all 250ms ease-in-out;
}

.project-outer:hover .project-inner {
opacity: 0.9;
}

.press-item {
margin: 30px 0 0;
}

.press-item:first-of-type {
margin: 30px 0 0;
}

.press-item h2 {
text-align: center;	
}

.press-item button {
}

img {
width: 100%;
}


img.project,
.press-item img,
.blog-item img {
margin: 30px 0 0;
/* background: #dedede; */
}

.portrait {
width: 50%;
margin: 30px 0;
}


.portrait.odd {
padding-right: 15px;
}

.portrait.even {
padding-left: 15px;
}

.lazy {
opacity: 0;
transition: 150ms opacity ease-in-out;
}



.press-item img {
border: 1px solid #dedede;	
}


.form-wrapper {
width: 100%;
margin: 30px 0 0;
display: none;
}

.page-template-page-contact .form-wrapper {
display: block;
}

.form-group label,
.form-group p {
display: none;
}

.form-text .form-group  {
width: 46%; 
float: left;
margin-top: 4%;
margin-right: 4%;
}

.form-group textarea,
[type='submit'] {
margin-top: 4%;
margin-right: 4%;
float: left;
width: 96%;
}

.form-text .form-group input,
[type='submit'] {
background: transparent;
}

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea, select {
height: 50px;
margin: 0;
padding: 15px;
border: 1px solid #c8c8c8;
background-color: transparent;
box-shadow: inset 0 0 0 rgba(10, 10, 10, 0);
font-family: inherit;
font-size: 10px;
font-weight: normal;
text-align: left;
line-height: 1.66;
color: #0a0a0a;
transition: all 250ms ease-in-out;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
color: #424242;
}

textarea {
font-size: 16px;
text-align: left;
}


[type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus, textarea:focus {
border: 1px solid #969696;
background-color: transparent;
box-shadow: 0 0 0;
transition: all 250ms ease-in-out;
}

select:focus {
border: 1px solid #969696;
background-color: transparent;
box-shadow: 0 0 0;
transition: all 250ms ease-in-out;
}

select {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding: 15px 30px 15px 15px;
}
   
textarea:focus {
border: 1px solid #969696;
background-color: transparent;
box-shadow: 0 0 0;
transition: all 250ms ease-in-out;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
font-size: 10px;
text-transform: uppercase;
letter-spacing: 2px;
color: #646464!important;
opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #646464;
}

::-ms-input-placeholder { /* Microsoft Edge */
  color: #646464;
}

.page-template-page-contact #contact,
.page-template-page-contact #callback {
display: none;
}

.table {
padding: 0 30px 30px;
}

.table.bottom {
border-bottom: 1px solid #424242;
}

.table.right {
border-right: 1px solid #424242;
}

.no-margin-top {
margin: 0;
}

.margin-top {
margin-top: 30px;
}

.article h1,
.article h2,
.article h3,
.article h4,
.article h5,
.article h6,
.single-landing_page .the_content h1, 
.single-landing_page .the_content h2,
.single-landing_page .the_content h3,
.single-landing_page .the_content h4,
.single-landing_page .the_content h5,
.single-landing_page .the_content h6 {
margin-right: 66.66%;
padding-right: calc(0% + 0.9375rem);
}

.article p,
.single-landing_page .the_content p {
margin-left: 33.33%;
padding-left: calc(0% + 0.9375rem);
width: 58.333%;
}

.article p.date {
margin-left: 0%;
padding-left: 0;
margin-right: 66.66%;
padding-right: calc(0% + 0.9375rem);
}

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

.section {
padding: 30px 0;
}

@media only screen and (max-width: 1440px) {
	
#logo {
margin: 0 auto 0;
padding: 110px 0 60px;
}

#strapline {
margin: 0 auto 0;
padding: 30px 0 15px;
}


} @media only screen and (max-width: 737px) { 
	
.grid-container.expanded {
width: 83.33333%;
margin: 0 auto;
}
#hamburger {
left: 12px;	
}

nav {
height: 252px;
top: -252px;
}

nav ul {
font-size: 16px;
margin: 26px 0 0;
padding: 0 12.5%;
text-align: left;
}

nav ul li {
	display: block;
}

button #callback {
margin: 15px 0 0;
}

#contact button {
margin: 15px 0 0;
}

.article h1 {
text-align: left;
margin: 30px 0 0 0;
/*
padding: 15px 0 0;
border-top: 1px solid #969696;	
*/
}


.article h2,
.article h3,
.article h4,
.article h5,
.article h6 {
text-align: left;
margin: 30px 0 0;
padding: 15px 0 0;
border-top: 1px solid #969696;
}

.article p {
width: 100%;
margin-left: 0;
margin-right: 0;
padding-right: 0%;
padding-left: 0%;
}

.article p.date {
text-align: left;
padding: 0;
margin: 0;	
}

ul.footer {
margin-top: 30px;
}

.footer p {
font-size: 15px;
}


.footer p.small {
font-size: 12px;
}


.portrait {
width: 100%;
}


.portrait.odd {
padding-right: 0;
}

.portrait.even {
padding-left: 0;
}

.single-landing_page .the_content h1,
.single-landing_page .the_content h2,
.single-landing_page .the_content h3,
.single-landing_page .the_content h4,
.single-landing_page .the_content h5,
.single-landing_page .the_content h6,
.single-landing_page .the_content p {
width: 100%;
margin-left: 0;
margin-right: 0;
padding-right: 0%;
padding-left: 0%;
}

.table.right,
.table.bottom {
border: 0 none;
border-bottom: 1px solid #424242;
}

#mapCanvas {
width: 100%;
height: 300px;
}










} /*Keep*/