html {
line-height: 1.15;
-webkit-text-size-adjust: 100%;
}  body {
margin: 0;
} main {
display: block;
} h1 {
font-size: 2em;
margin: 0.67em 0;
}  hr {
box-sizing: content-box;
height: 0;
overflow: visible;
} pre {
font-family: monospace, monospace;
font-size: 1em;
}  a {
background-color: transparent;
} abbr[title] {
border-bottom: none;
text-decoration: underline;
text-decoration: underline dotted;
} b,
strong {
font-weight: bolder;
} code,
kbd,
samp {
font-family: monospace, monospace;
font-size: 1em;
} small {
font-size: 80%;
} sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}  img {
border-style: none;
}  button,
input,
optgroup,
select,
textarea {
font-family: inherit;
font-size: 100%;
line-height: 1.15;
margin: 0;
} button,
input {
overflow: visible;
} button,
select {
text-transform: none;
} button,
[type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
} button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
border-style: none;
padding: 0;
} button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
outline: 1px dotted ButtonText;
} fieldset {
padding: 0.35em 0.75em 0.625em;
} legend {
box-sizing: border-box;
color: inherit;
display: table;
max-width: 100%;
padding: 0;
white-space: normal;
} progress {
vertical-align: baseline;
} textarea {
overflow: auto;
} [type="checkbox"],
[type="radio"] {
box-sizing: border-box;
padding: 0;
} [type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
} [type="search"] {
-webkit-appearance: textfield;
outline-offset: -2px;
} [type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
} ::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit;
}  details {
display: block;
} summary {
display: list-item;
}  template {
display: none;
} [hidden] {
display: none;
}  *,
*::before,
*::after {
box-sizing: inherit;
}
html {
box-sizing: border-box;
}  .serif,
body,
button,
input,
select,
optgroup,
textarea {
color: #404040;
font-family: "ltc-goudy-oldstyle-pro", serif;
font-weight: 400;
font-style: normal;
font-size: 1rem;
line-height: 1.5;
}
.sans-serif,
button,
h1,
h2,
h3,
h4,
h5,
h6,
nav,
footer {
clear: both;
text-transform: uppercase;
font-family: freight-sans-pro, sans-serif;
font-weight: 400;
font-style: normal;
}
h3,
h4 {
font-weight: 400;
font-size: 0.9em;
letter-spacing: 0.2em;
margin: 0 auto 0.5em;
}
@media screen and (min-width: 60em) and (min-height: 60em) {
h3,
h4 {
font-size: 0.9em;
}
}
h3.large {
font-size: 1em;
}
.sans-serif,
.serif {
text-transform: none;
font-style: italic;
letter-spacing: 0;
font-size: 1em;
}
h3:not(.serif)::before,
h3:not(.serif)::after {
content: "—";
display: inline-block;
margin: 0 0.35em;
}
p {
margin-bottom: 1.5em;
}
dfn,
cite,
em,
i {
font-style: italic;
}
blockquote {
font-size: 1.8em;
letter-spacing: 0.035em;
margin: 0 auto;
text-align: center;
font-style: italic;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
@media screen and (max-width: 50em) {
.home .highlight-quote blockquote { font-size: 1.5em;
margin: 1em 1em 0;
}
}
@media screen and (min-width: 60em) {
blockquote {
font-size: 2.5em;
}
}
.cathy-section {
margin-bottom: 2.5em;
justify-content: center;
}
section.page-content .cathy-section img {
max-width: 100%;
}
@media screen and (min-width: 30em) {
section.page-content .cathy-section img {
max-width: 30em;
}
}
.cathy-section blockquote {
color: #312164;
text-transform: uppercase;
font-size: 1.1em;
letter-spacing: 0.1em;
max-width: 28em;
line-height: 1.8;
margin: 2em auto 0;
text-align: center;
font-style: normal;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
blockquote cite {
text-transform: none;
font-style: italic;
letter-spacing: 0;
color: #2d3537;
}
blockquote.is-quote {
color: #312164;
text-transform: uppercase;
font-size: 1.1em;
letter-spacing: 0.1em;
max-width: 28em;
line-height: 1.8;
margin: 2em auto 0;
text-align: center;
font-style: normal;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
@media screen and (max-width: 60em) {
.home blockquote.is-quote {
padding: 0 6%;
}
}
blockquote cite::before,
blockquote cite::after {
content: "—";
display: inline-block;
margin: 0 0.5em;
}
blockquote p {
margin: 0 auto 1em;
}
#highlights .text-holder {
text-align: center;
}
address {
margin: 0 0 1.5em;
}
pre {
background: #eee;
font-family: "Courier 10 Pitch", Courier, monospace;
font-size: 15px;
font-size: 0.9375rem;
line-height: 1.6;
margin-bottom: 1.6em;
max-width: 100%;
overflow: auto;
padding: 1.6em;
}
code,
kbd,
tt,
var {
font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
font-size: 15px;
font-size: 0.9375rem;
}
abbr,
acronym {
border-bottom: 1px dotted #666;
cursor: help;
}
mark,
ins {
background: #fff9c0;
text-decoration: none;
}
big {
font-size: 125%;
} html { }
body {
background: #fff;  }
hr {
background-color: #ccc;
border: 0;
height: 1px;
margin-bottom: 1.5em;
}
ul,
ol { }
ul {
list-style: disc;
}
ol {
list-style: decimal;
}
li > ul,
li > ol {
margin-bottom: 0;
margin-left: 1.5em;
}
dt {
font-weight: 700;
}
dd {
margin: 0 1.5em 1.5em;
} embed,
iframe,
object {
max-width: 100%;
}
img {
height: auto;
max-width: 100%;
}
figure {
margin: 0;
}
table {
margin: 0 0 1.5em;
width: 100%;
} a {
color: #404040;
text-decoration: none;
}
a:visited {
color: #404040;
}
a:hover {
color: #000;
}
a:focus,
a:hover,
a:active {
outline: 0;
} button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
border: none;
border-color: #ccc #ccc #bbb;
border-radius: 3px;
background: transparent;
color: rgba(0, 0, 0, 0.8);
line-height: 1;
padding: 0.6em 1em 0.4em;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
border-color: #ccc #bbb #aaa;
}
button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
border-color: #aaa #bbb #bbb;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
color: #666;
border: 1px solid #ccc;
border-radius: 3px;
padding: 3px;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
color: #111;
}
select {
border: 1px solid #ccc;
}
textarea {
width: 100%;
}    .sticky {
display: block;
}
.post,
.page { }
.updated:not(.published) {
display: none;
}
.page-content,
.entry-content,
.entry-summary {
margin: 1.5em 0 0;
margin: 0;
}
.page-links {
clear: both;
margin: 0 0 1.5em;
} .comment-content a {
word-wrap: break-word;
}
.bypostauthor {
display: block;
} .widget {
margin: 0 0 1.5em;
}
.widget select {
max-width: 100%;
} .page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
border: none;
margin-bottom: 0;
margin-top: 0;
padding: 0;
} .custom-logo-link {
display: inline-block;
} .wp-caption {
margin-bottom: 1.5em;
max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
display: block;
margin-left: auto;
margin-right: auto;
}
.wp-caption .wp-caption-text {
margin: 0.8075em 0;
}
.wp-caption-text {
text-align: center;
} .gallery {
margin-bottom: 1.5em;
display: grid;
grid-gap: 1.5em;
}
.gallery-item {
display: inline-block;
text-align: center;
width: 100%;
}
.gallery-columns-2 {
grid-template-columns: repeat(2, 1fr);
}
.gallery-columns-3 {
grid-template-columns: repeat(3, 1fr);
}
.gallery-columns-4 {
grid-template-columns: repeat(4, 1fr);
}
.gallery-columns-5 {
grid-template-columns: repeat(5, 1fr);
}
.gallery-columns-6 {
grid-template-columns: repeat(6, 1fr);
}
.gallery-columns-7 {
grid-template-columns: repeat(7, 1fr);
}
.gallery-columns-8 {
grid-template-columns: repeat(8, 1fr);
}
.gallery-columns-9 {
grid-template-columns: repeat(9, 1fr);
}
.gallery-caption {
display: block;
}   .infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
display: none;
} .infinity-end.neverending .site-footer {
display: block;
}   .screen-reader-text {
border: 0;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute !important;
width: 1px;
word-wrap: normal !important;
}
.screen-reader-text:focus {
background-color: #f1f1f1;
border-radius: 3px;
box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
clip: auto !important;
clip-path: none;
color: #21759b;
display: block;
font-size: 0.875rem;
font-weight: 700;
height: auto;
left: 5px;
line-height: normal;
padding: 15px 23px 14px;
text-decoration: none;
top: 5px;
width: auto;
z-index: 100000;
} #primary[tabindex="-1"]:focus {
outline: 0;
} .alignleft { float: left; margin-right: 1.5em;
margin-bottom: 1.5em;
}
.alignright { float: right; margin-left: 1.5em;
margin-bottom: 1.5em;
}
.aligncenter {
clear: both;
display: block;
margin-left: auto;
margin-right: auto;
}
.wp-block-image {
margin-bottom: 0 !important;
}  nav {
letter-spacing: 0.05em;
}
nav ul {
margin: 0;
padding: 0;
list-style-type: none;
}
.sub-nav {
margin: 0 auto 2em;
text-align: center;
}   .term-completed-interiors .sub-nav,
.term-completed-houses .sub-nav,
.term-in-progress-interiors .sub-nav,
.term-in-progress-houses .sub-nav {
padding-left: 0.5rem;
}
.term-completed-interiors .sub-nav ul li:not(.current-parent),
.term-completed-houses .sub-nav ul li:not(.current-parent),
.term-in-progress-interiors .sub-nav ul li:not(.current-parent),
.term-in-progress-houses .sub-nav ul li:not(.current-parent) {
display: none;
}
.term-completed-interiors .sub-nav ul li a,
.term-completed-houses .sub-nav ul li a,
.term-in-progress-interiors .sub-nav ul li a,
.term-in-progress-houses .sub-nav ul li a {
font-family: freight-sans-pro, sans-serif;
font-style: normal;
font-weight: 300;
text-transform: uppercase;
color: #5f5852;
font-size: 0.9em;
letter-spacing: 0.1em;
color: #929190;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
@media screen and (min-width: 45em) {
.term-completed-interiors .sub-nav ul li a,
.term-completed-houses .sub-nav ul li a,
.term-in-progress-interiors .sub-nav ul li a,
.term-in-progress-houses .sub-nav ul li a {
font-size: 0.7em;
letter-spacing: 0.2em;
}
}
.sub-nav ul li a.active + ul li a {
font-size: 0.7em;
letter-spacing: 0.2em;
color: #929190;
transition: color 0.3s ease;
}
.sub-nav ul li a + ul li a {
font-size: 0.7em;
letter-spacing: 0.15em;
color: #929190;
transition: color 0.3s ease;
}
.sub-nav ul li a + ul li:not(:last-child)::after {
content: " ";
margin: 0 0.2em;
}
@media screen and (min-width: 60em) and (min-height: 50em) {
.sub-nav {
font-size: 1.2em;
}
}
.page-template-page_project_index .sub-nav,
.tax-project_type .sub-nav { padding-top: 8rem;
}
@media screen and (min-width: 60em) {
.page-template-page_project_index .sub-nav,
.tax-project_type .sub-nav {
padding-top: 9rem;
margin-bottom: 1rem;
}
}
.sub-nav ul li {
display: inline-block;
}
.sub-nav ul li:not(:last-child)::after {
content: "|";
margin: 0 0.5em 0 0.65em; display: inline-block;
opacity: 0.8;
color: #858585;
}
.term-completed-interiors .sub-nav ul li::after,
.term-completed-houses .sub-nav ul li::after,
.term-in-progress-interiors .sub-nav ul li::after,
.term-in-progress-houses .sub-nav ul li::after {
display: none;
}
.term-completed-interiors .sub-nav ul li:not(:first-child, :nth-child(3))::before,
.term-completed-houses .sub-nav ul li:not(:first-child, :nth-child(3))::before,
.term-in-progress-interiors .sub-nav ul li:not(:first-child, :nth-child(3))::before,
.term-in-progress-houses .sub-nav ul li:not(:first-child, :nth-child(3))::before {
content: "|";
margin: 0 0.5em 0 0.65em;
margin: 0 0.5em 0 0.45em;
display: inline-block;
opacity: 0.8;
color: #858585;
}
.sub-nav ul li a { -webkit-transition: opacity 1.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
transition: opacity 1.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
color: #858585;
transition: color 0.3s ease;
}
.page-template-page_project_index .sub-nav li:last-of-type a,
.sub-nav a:hover,
.sub-nav ul li a.active,
.sub-nav ul li.current_page_item a {
color: #000;
transition: color 0.3s ease;
}
a.page-anchor {
position: absolute;
top: -8em;
} .site-header {
z-index: 1000;
position: fixed;
top: 0;
right: 0;
bottom: auto;
left: 0;
height: auto;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
background: rgba(255, 255, 255, 0.9);
-webkit-transition: -webkit-transform 0.45s linear;
transition: -webkit-transform 0.45s linear;
-webkit-transition: -webkit-transform 0.45s linear;
-webkit-transition: -webkit-transform 0.45s linear;
transition: transform 0.45s linear;
transition: transform 0.45s linear, -webkit-transform 0.45s linear;
transition: transform 0.45s linear, -webkit-transform 0.45s linear;
transition: transform 0.45s linear, -webkit-transform 0.45s linear;
}
@media screen and (max-width: 50em) {
button.menu-toggle {
position: absolute;
top: 0;
right: 0;
bottom: auto;
left: auto;
padding: 1.68em 1em 0.4em;
z-index: 2000;
}
.site-header {
padding: 1em;
max-height: 4.5em;
overflow: hidden;
text-align: right;
}
.site-header.toggled {
max-height: 100vh;
background: white;
}
ul#left-menu {
padding: calc(50vh - 11em) 0 0;
}
ul#right-menu {
padding-bottom: 100vh;
}
.main-navigation li {
font-size: 120%;
margin-bottom: 0.75em;
}
span.line {
height: 1px;
background-color: #3d2c6a;
width: 22px;
display: block;
margin-bottom: 3px;
}
.toggled span.line:nth-child(2) {
opacity: 0;
}
.toggled span.line:nth-child(1) {
transform: rotate(135deg) translate(6px, -5px);
}
.toggled span.line:nth-child(3) {
transform: rotate(45deg);
}
}
.main-navigation,
.menu-toggle {
-webkit-transition: -webkit-transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955);
transition: -webkit-transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955);
-webkit-transition: -webkit-transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955);
-webkit-transition: -webkit-transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955);
transition: transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955);
transition: transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955), -webkit-transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955);
transition: transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955), -webkit-transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955);
transition: transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955), -webkit-transform 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
@media screen and (min-width: 50em) {
.main-navigation {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-flex-align: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center; padding: 1em 1em;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
button.menu-toggle {
display: none;
}
}
.scrolling-down .site-header:not(:hover) {
-webkit-transform: translate3d(0, -2em, 0); transform: translate3d(0, -2em, 0);
}
.scrolling-down .site-header:not(:hover) .menu-toggle {
-webkit-transform: translate3d(0, 1.75em, 0);
transform: translate3d(0, 1.75em, 0);
}
.site-header .main-navigation .nav-menu {
transition: transform 0.45s linear, -webkit-transform 0.45s linear;
}
.site-header:not(:hover) .main-navigation .nav-menu {
transform: translateY(0);
transition: transform 0.45s linear, -webkit-transform 0.45s linear;
}
.scrolling-down .site-header:not(:hover) .main-navigation .nav-menu {
transform: translateY(1em);
transition: transform 0.45s linear, -webkit-transform 0.45s linear;
}
.main-navigation ul {
-webkit-box-flex: 1;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
text-align: center; white-space: nowrap;
margin: 0;
padding: 0;
}
@media screen and (min-width: 50em) {
.main-navigation ul {
max-width: 35em;
}
.main-navigation ul#left-menu {
order: 1;
}
.site-branding {
order: 2;
}
.main-navigation ul#right-menu {
order: 3;
}
}
.main-navigation ul li {
text-transform: uppercase;
font-size: 0.9em;
letter-spacing: 0.1em;
}
@media screen and (min-width: 50em) {
.main-navigation ul li {
display: inline-block;
}
}
@media screen and (min-width: 100em) {
.main-navigation ul li {
font-size: 1em;
}
}
@media screen and (min-width: 50em) {
.main-navigation ul li:not(:last-child)::after {
content: "|";
font-size: 1.1em;
color: #8b8179;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
width: 1px;
height: 1em;  margin: auto;
}
}
.main-navigation ul li a {
padding: 0.5em 0;
margin: 0 0.5em;  color: #5f5852;
}
@media screen and (min-width: 60em) {
.main-navigation ul li a {
padding: 0.5em;
}
}
a:hover,
.main-navigation ul li a:hover,
.main-navigation a.current-page {
color: #000;
}
.site-branding {
margin: 0 auto;
position: relative;
-webkit-box-flex: 0;
-ms-flex: 0 1 80%;
flex: 0 1 80%;
padding: 0 2em; max-width: 18.75em;
min-width: 16em;  }
@media screen and (min-width: 50em) {
.site-branding {
padding: 0 2em;
max-width: 24em;
margin: 0 auto;
}
}
.site-branding a {
position: relative;
display: block;
height: 100%;
width: 100%;
}
.logo-holder {
opacity: 1;
-webkit-transition: opacity 0.35s 0.25s ease;
transition: opacity 0.35s 0.25s ease;
display: block;
margin: 0 auto;
max-width: 280px;
}
.logo-holder svg {
display: block;
width: 100%;
height: auto;
display: block;
margin: 0 auto 0.5em;
}
.logo-holder svg .a {
fill: #5f5852;
}
.icon-holder {
position: absolute;
top: auto;
right: 0;
bottom: -0.2rem;
left: 0;
margin: auto auto 0;
height: 2em;
width: 2.1em;
opacity: 0;
-webkit-transition: opacity 0.35s ease;
transition: opacity 0.35s ease;
}
.icon-holder svg {
margin: 0 auto;
height: 100%;
width: 100%;
}
.scrolling-down .site-header:not(:hover) .logo-holder {
opacity: 0;
-webkit-transition: opacity 0.35s ease;
transition: opacity 0.35s ease; }
.scrolling-down .site-header:not(:hover) .icon-holder {
opacity: 1;
-webkit-transition: opacity 0.35s 0.25s ease;
transition: opacity 0.35s 0.25s ease;
}
@media screen and (min-width: 85em) and (min-height: 40em) {
.site-branding { max-width: 22em;
}
}
@media screen and (min-width: 100em) and (min-height: 60em) {
.site-branding { max-width: 22em;
}
}
.site-main {
position: relative;
padding-top: 8em;
}
@media screen and (max-width: 50em) {
.blog .site-main {
padding-top: 7.1em;
}
}
.page-template-page_project_index .site-main,
.page-template-page_landing .site-main,
.tax-project_type .site-main,
.single-portfolio_items .site-main,
.single-portfolio_items .site-main,
.home .site-main {
padding-top: 0;
} #intro {
overflow: hidden;
}
.scroll-to-view {
text-align: center;
position: absolute;
bottom: 0;
left: 0;
right: 0;
z-index: 90;
padding-bottom: 2em;
color: #fff;
opacity: 0;
}
.home .scroll-to-view {
opacity: 0;
-webkit-transition: opacity 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
transition: opacity 3s 1.5s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
.home.remove-anniversary-intro .heart-slideshow.first-image-loaded + .scroll-to-view {
opacity: 1;
}
.hero.hero-loaded .scroll-to-view {
opacity: 1;
}
.home .scroll-to-view::before { }
.first-img-loaded .home .scroll-to-view::before { }
.scroll-to-view::before {
content: "";
position: absolute;
z-index: -1;
top: auto;
right: 0;
bottom: 0;
left: 0;
height: 30vh;
opacity: 0.5;
background: -webkit-gradient(
linear,
left bottom,
left top,
from(hsl(0, 0%, 0%)),
color-stop(8.1%, hsla(0, 0%, 0%, 0.987)),
color-stop(15.5%, hsla(0, 0%, 0%, 0.951)),
color-stop(22.5%, hsla(0, 0%, 0%, 0.896)),
color-stop(29%, hsla(0, 0%, 0%, 0.825)),
color-stop(35.3%, hsla(0, 0%, 0%, 0.741)),
color-stop(41.2%, hsla(0, 0%, 0%, 0.648)),
color-stop(47.1%, hsla(0, 0%, 0%, 0.55)),
color-stop(52.9%, hsla(0, 0%, 0%, 0.45)),
color-stop(58.8%, hsla(0, 0%, 0%, 0.352)),
color-stop(64.7%, hsla(0, 0%, 0%, 0.259)),
color-stop(71%, hsla(0, 0%, 0%, 0.175)),
color-stop(77.5%, hsla(0, 0%, 0%, 0.104)),
color-stop(84.5%, hsla(0, 0%, 0%, 0.049)),
color-stop(91.9%, hsla(0, 0%, 0%, 0.013)),
to(hsla(0, 0%, 0%, 0))
);
background: linear-gradient(
to top,
hsl(0, 0%, 0%) 0%,
hsla(0, 0%, 0%, 0.987) 8.1%,
hsla(0, 0%, 0%, 0.951) 15.5%,
hsla(0, 0%, 0%, 0.896) 22.5%,
hsla(0, 0%, 0%, 0.825) 29%,
hsla(0, 0%, 0%, 0.741) 35.3%,
hsla(0, 0%, 0%, 0.648) 41.2%,
hsla(0, 0%, 0%, 0.55) 47.1%,
hsla(0, 0%, 0%, 0.45) 52.9%,
hsla(0, 0%, 0%, 0.352) 58.8%,
hsla(0, 0%, 0%, 0.259) 64.7%,
hsla(0, 0%, 0%, 0.175) 71%,
hsla(0, 0%, 0%, 0.104) 77.5%,
hsla(0, 0%, 0%, 0.049) 84.5%,
hsla(0, 0%, 0%, 0.013) 91.9%,
hsla(0, 0%, 0%, 0) 100%
);
}
.scroll-to-view .instruct {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
-webkit-transition: opacity 0.6s ease-in-out;
transition: opacity 0.6s ease-in-out;
opacity: 1;
}
.single-portfolio_items .scroll-to-view .instruct {
display: none;
}
@media screen and (min-height: 35vw) and (max-height: 80vw) {
.single-portfolio_items .scroll-to-view .instruct {
display: block;
}
}
.scrolling-down .scroll-to-view .instruct {
opacity: 0;
}
#highlights {
padding: 5% 0;
overflow-x: hidden;
}
.news-banner {
position: absolute;
bottom: auto;
top: 5.45rem;
background-color: rgba(38, 27, 81, 0.65);
padding: 0.5em 0.5em 0.5em;
line-height: 1.3;
font-size: 0.9em;
font-weight: 400;
opacity: 0;
height: auto;
width: 100%;
z-index: 20;
-webkit-transform: translateY(-1rem);
-ms-transform: translateY(-1rem);
transform: translateY(-1rem);
-webkit-transition: opacity 0.75s, transform 0.75s ease;
-o-transition: opacity 0.75s, transform 0.75s ease;
-webkit-transition: opacity 0.75s, -webkit-transform 0.75s ease;
transition: opacity 0.75s, -webkit-transform 0.75s ease;
transition: opacity 0.75s, transform 0.75s ease;
transition: opacity 0.75s, transform 0.75s ease, -webkit-transform 0.75s ease;
}
@media screen and (max-width: 799px) {
.news-banner {
top: 4.5rem !important;
}
.news-banner p {
letter-spacing: 0.075em;
padding: 0.5em 0.6em;
}
} .news-banner p {
color: #fff; margin: 0 auto;
font-size: 0.9em;
letter-spacing: 0.2em;
text-transform: uppercase;
text-align: center;
font-family: freight-sans-pro, sans-serif;
font-style: normal;
font-weight: 400;
opacity: 0.75;
transition: color 0.6s ease, opacity 0.6s ease;
}
.news-banner a:hover p {
opacity: 1;
transition: color 0.3s ease, opacity 0.3s ease;
}
.show-banner.news-banner.display-news {
opacity: 1;
-webkit-transform: translateY(0);
-ms-transform: translateY(0);
transform: translateY(0);
}
.show-banner.news-banner.hide-news {
opacity: 0;
pointer-events: none;
}
.scrolling-down .news-banner {
opacity: 0;
} .highlight-row {
width: 100%;
}
.highlight-row figure,
.highlight-row figure img {
width: 100%;
}
.highlight-row .row-item {
width: 100%;
padding: 2%;
text-align: center;
}
.highlight-row .row-item a {
display: block;
width: 100%;
opacity: 1;
-webkit-transition: opacity 0.8s ease-in-out;
transition: opacity 0.8s ease-in-out;
}
.highlight-row .row-item a:hover {
opacity: 0.7;
}
@media screen and (min-width: 45em) {
.highlight-row {
margin: 0 auto;
max-width: 150vh;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
}
.highlight-row .row-item {
-webkit-box-flex: 1;
-ms-flex: 1 1 48%;
flex: 1 1 48%; display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-flex-align: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.highlight-row .row-item.small {
-webkit-box-flex: 1;
-ms-flex: 1 1 30%;
flex: 1 1 30%;
}
}
@media screen and (min-width: 60em) {
.highlight-row {
width: 96%;
}
}
@media screen and (min-width: 100em) {
.highlight-row {
width: 92%;
}
}
.home .title-holder {
font-size: 1.1em;
} .flex-grid {
padding: 0 6%;
}
.page-template-page_profile .flex-grid.staff-grid {
padding: 0;
}
h3 + .staff-grid.flex-grid {
margin-top: 2em;
}
.grid-item.disable-click {
cursor: not-allowed;
}
a.password-enabled {
pointer-events: none;
}
.grid-item {
margin: 0 0 2em;
position: relative;
}
.project-index h2:not(.child-category-title) {
font-family: ltc-goudy-oldstyle-pro, serif;
text-transform: none;
letter-spacing: normal;
font-style: italic;
font-size: 1.4em;
}
.project-index h2.child-category-title {
font-size: 1em;
letter-spacing: 0.15em; } @media screen and (min-width: 50em) {
.flex-grid {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
width: 96%;
padding: 0 3%;
margin: 0 auto;
max-width: 180vh;
min-width: 55vw;
}
.project-index.flex-grid {
justify-content: center;
}
.grid-item {
-webkit-box-flex: 0;
-ms-flex: 0 1 auto;
flex: 0 1 auto;
width: 100%;
margin: 0 0 3%;
font-size: 0.9em;
}
}
.grid-item figure {
position: relative;
}
.staff-grid { margin: 0 auto 4em;
}
@media screen and (min-width: 50em) {
.staff-grid {
max-width: 130vh;
margin: 6em auto 4em;
}
}
.staff-grid .grid-item {
margin: 0 0 3%;
}
.staff-grid .grid-item .image-holder {
position: relative;
overflow: hidden;
padding-top: 100%;
}
.staff-grid .grid-item .image-holder img {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
font-family: "object-fit: cover;";
}
.profile-text {
color: #878580;
font-size: 1.1em;
margin-top: 0.75em;
}
.tax-project_type .grid-item figure {
margin-bottom: 0;
}
@media screen and (max-width: 50em) {
.highlight-quote br {
display: none;
}
}
.highlights-grid .grid-item .image-holder {
-webkit-transition: opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
transition: opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.highlights-grid .grid-item:hover .image-holder {
opacity: 0.7;
}
@media screen and (min-width: 50em) {
.flex-grid {
width: 92%;
}
.grid-item {
font-size: calc(0.6em + 0.5vh);
width: 48.5%;
margin: 0 0 1.35%;
}
.tax-project_type .grid-item {
width: 49.333%;
}
.project-index .grid-item {
width: 33.3333%;
}
.on-the-boards .flex-grid {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-flow: column;
flex-flow: column;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.on-the-boards .grid-item {
width: 49.333%;
min-width: 80vmin;
}
.highlights-grid .grid-item {
padding: 3% 5%;
margin: 0;
}
.highlight-quote {
width: 80%;
}
.highlights-grid .grid-item.item-1 {
order: 1;
width: 65%;
}
.highlights-grid .grid-item.item-4 {
order: 2;
width: 35%;
-ms-flex-item-align: start;
align-self: flex-start;
-webkit-transform: translateY(-30%);
transform: translateY(-30%);
}
.highlights-grid .grid-item.item-5 {
order: 3;
width: 35%;
align-self: flex-end;
margin-top: 25%;
}
.highlights-grid .grid-item.item-2 {
order: 4;
width: 65%;
}
.highlights-grid .grid-item.item-3 {
order: 5;
width: 65%;
}
.highlights-grid .grid-item.item-6 {
order: 6;
width: 35%;
-ms-flex-item-align: start;
align-self: flex-start;
-webkit-transform: translateY(-20%);
transform: translateY(-20%);
}
#highlights blockquote.is-quote {
width: 80%;
-webkit-transform: translateX(35%);
transform: translateX(35%);
margin-top: 0; }
}
@media screen and (min-width: 80em) and (min-height: 60em) {
.grid-item {
font-size: 1em;
}
.on-the-boards .grid-item {
font-size: 0.9em;
}
.profile-text {
color: #878580;
font-size: 1em;
}
}
@media screen and (min-width: 70em) {
.staff-grid .grid-item {
width: 32%;
}
} .projects a {
display: block;
position: relative;
}
.projects figure {
display: block;
position: relative;
padding-top: 70%;
}
.projects figure img {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
height: 100%;
width: 100%;
-o-object-fit: cover;
object-fit: cover;
font-family: "object-fit: cover;";
}
.projects .overlay {
text-align: center;
}
@media screen and (min-width: 50em) {
.projects .overlay {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
opacity: 0;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-flex-align: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-flow: column;
flex-flow: column;
color: rgba(255, 255, 255, 0.6);
-webkit-transition: opacity 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
transition: opacity 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
background: rgba(46, 53, 56, 0.84);
}
}
.projects p.aspect span:last-of-type {
display: none;
}
.projects p.aspect {
font-weight: 400;
font-size: 0.9em;
letter-spacing: 0.2em;
text-transform: uppercase;
font-family: freight-sans-pro, sans-serif;
color: rgba(000, 000, 000, 0.5);
margin: 0.5em 0 4em;
}
@media screen and (min-width: 50em) {
.projects p.aspect {
position: absolute;
top: auto;
right: 0;
bottom: 2.5em;
left: 0;
margin: auto;
color: rgba(255, 255, 255, 0.6);
}
}
p.aspect:before,
p.aspect:after {
content: "—";
display: inline-block;
margin: 0 0.35em;
}
.title-holder h3.serif,
.grid-item h3.serif {
font-size: 1.7em;
margin-bottom: 0.15em;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
@media screen and (max-width: 50em) {
.title-holder h3.serif,
.grid-item h3.serif {
font-size: 1.3em;
margin-top: 0.5em;
}
}
@media screen and (min-width: 50em) {
.projects h3 {
color: #fff;
}
}
.projects .grid-item:hover .overlay {
opacity: 1;
}
.title-holder {
position: relative;
text-align: center;
padding: 0 0 2.5em;
}
@media screen and (max-width: 50em) {
.single-portfolio_items .title-holder {
padding: 0 0 0.5em;
}
}
@media screen and (min-width: 50em) {
.title-holder {
padding: 1em 0;
}
}  .project-index {
text-align: center;
}
.project-index ul {
list-style-type: none;
margin: 0 0 3rem;
padding: 0;
}
.project-index li {
margin-bottom: 1.15em;
}
.project-index h2 {
font-size: 1.15em;
letter-spacing: 0.04em;
} .project-index h3.serif {
font-size: 1.22em;
margin-bottom: 0.25em;
} .project-index h4 {
font-size: 0.8em;
letter-spacing: 0.2em;
}
.project-index ul li a {
display: inline-block;
}  .term-on-the-boards .grid-item figure {
border: 1px solid rgb(228 226 223);
background-color: rgb(228 226 223);
}
.is-video {
position: relative;
cursor: pointer;
}
.is-video::before,
.is-video::after {
content: "";
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
.is-video::before {
background: rgba(0, 0, 0, 0.6);
opacity: 0.3;
-webkit-transition: opacity 0.35s ease;
transition: opacity 0.35s ease;
}
.is-video::after {
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: auto;
height: 3em;
width: 3em;
border-style: solid;
border-width: 1.5em 0 1.5em 3em;
border-color: transparent transparent transparent #fff;
-webkit-transition: opacity 0.35s ease;
transition: opacity 0.35s ease;
opacity: 0;
}
.is-video:hover::before,
.is-video:hover::after {
opacity: 1;
}  @media screen and (max-width: 50em) {
.portfolio_items-template-default {
margin-top: 88px;
}
}
.hero {
position: relative;
height: 100vh;
min-height: 35vw;
max-height: 80vw;
width: 100%;
}
.hero figure {
height: 100%;
width: 100%;
}
.hero figure img {
height: 100%;
width: 100%;
-o-object-fit: cover;
object-fit: cover;
font-family: "object-fit: cover;";
}
article header {
z-index: 10;
padding-top: 1em;
}
.description {
margin: 0 auto 6%;
max-width: 62em;
color: #8d9394;
text-align: justify;
}
.description.desc-on-the-boards {
margin: 0 auto 4.25%;
}
.description p {
margin: 1em auto 1.5em;
max-width: 62em;
padding: 0 6%;  color: #5f5852;
}
@media screen and (min-width: 50em) {
.description p {
padding: 0;
}
}
.description em { opacity: 0.8;
}
@media screen and (min-width: 60em) {
.description p {
width: 80%;
}
}
.description iframe {
width: 100%;
margin: 1em 0 0;
}
.video-container {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
margin: 0 6%;
width: 100%;
}
@media screen and (min-width: 65em) {
.video-container {
margin: 0;
}
}
.video-container iframe,
.video-container object,
.video-container embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.gallery-rows {
padding: 0 6%;
max-width: 180vh;
margin: 0 auto;
}
.gallery-rows.rows-interiors-progress,
.gallery-rows.rows-on-the-boards {
max-width: 62em;
padding: 0 6%;
}
@media screen and (min-width: 65em) {
.gallery-rows.rows-interiors-progress,
.gallery-rows.rows-on-the-boards {
padding: 0;
}
}
.spacer {
position: relative;
}
button#sketches-btn {
display: block;
width: 2rem;
height: 2rem;
margin: 2rem auto 4rem;
position: relative;
padding: 0.5rem;
background: none;
border: none;
}
button#sketches-btn:after {
content: "";
position: absolute;
top: 3px;
right: 0;
bottom: 0;
left: 7px;
width: 1rem;
height: 1rem;
border-right: 1px solid;
border-bottom: 1px solid;
transform: rotate(45deg);
}
button:focus {
outline: 0px;
}
.sketches-open button#sketches-btn:after {
-webkit-transform: rotate(225deg);
transform: rotate(225deg);
}
.project-image {
margin: 0 0 6%;
}
@media screen and (min-width: 50em) {
.gallery-row:last-of-type .project-image {
margin: 0 0 3% 5%;
}
}
@media screen and (min-width: 50em) {
.gallery-row {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: space-evenly;
-ms-flex-pack: space-evenly;
justify-content: space-evenly;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-flow: row;
flex-flow: row;
}
.project-image {
-webkit-box-flex: 0;
-ms-flex: 0 1 auto;
flex: 0 1 auto;
}
}
.gallery-row:not(.even) .project-image .spacer img {
width: 100%;
height: 100%;
display: block;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
.gallery-row.even .project-image {
flex: 1 !important;
}
.gallery-row.even .project-image .spacer {
padding-top: 0 !important;
height: 100%;
}
.gallery-row.even .project-image .spacer img {
height: 100%;
width: 100%;
object-fit: cover;
font-family: "object-fit: cover;";
}
.project-image .spacer {
position: relative;
}
.project-image.is-vertical figure,
.project-image.is-vertical figure img {
height: 100%;
}
.project-intro.is-vertical figure img {
-o-object-fit: cover;
object-fit: cover;
font-family: "object-fit: cover;";
}
@media screen and (min-width: 50em) {
.gallery-row .project-image:first-child {
margin-left: 0%;
}
.gallery-row .project-image {
margin-left: 2%;
}
}
@media screen and (min-width: 65em) {
.gallery-rows .gallery-row.multi {
padding: 0 5%;
}
.gallery-row .project-image {
margin-left: 5%;
}
.blog-entry .project-image {
margin-bottom: 0.5em;
}
}
.fade-in {
opacity: 0;
-webkit-transition: opacity 1s ease-in-out;
transition: opacity 1s ease-in-out;
}
.fade-in.in-view {
opacity: 1;
}
.credits ul {
text-align: center;
padding: 0;
list-style-type: none;
margin: 2em auto;
}
.sub-nav.compact,
.project-nav {
margin: 4em auto;
text-align: center;
font-style: normal;
text-transform: uppercase;
letter-spacing: 0.1em; font-size: 0.92em;
color: #8d9394;
}
.sub-nav.compact {
margin-top: 0;
}
.sub-nav.compact ul,
.project-nav ul {
padding: 0;
margin: 0 auto 0.5em;
list-style-type: none;
}
.sub-nav.compact ul li,
.project-nav ul li {
display: inline-block;
padding: 0;
margin: 0 0.25em;
}
.sub-nav.compact ul li:not(:last-child)::after,
.project-nav ul li:not(:last-child)::after {
margin: 0 0 0 0.65em;
}
.gallery-row.sketch {
max-height: 0;
overflow: hidden;
opacity: 0;
-webkit-transition: opacity 0.25s ease-in-out, max-height 0.25s 0.25s ease-in;
-webkit-transition: opacity 0.25s ease-in-out, max-height 0.25s 0.25s ease-in;
transition: opacity 0.25s ease-in-out, max-height 0.25s 0.25s ease-in;
padding: 0 5%;
}
.gallery-row.sketch .spacer {
position: relative;
}
.gallery-row.sketch .spacer:after {
content: "";
width: 100%;
height: 100%;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: rgba(000, 000, 000, 0.03);
}
.sketches-open .gallery-row.sketch {
max-height: 9999em;
opacity: 1;
-webkit-transition: opacity 1s 0.25s ease-in-out, max-height 0.25s ease-in;
transition: opacity 1s 0.25s ease-in-out, max-height 0.25s ease-in;
}  .gallery-row.video {
margin: 0 0 6%;
}
.project-navigation li { display: inline-block;
}
.project-navigation li:first-of-type {
text-align: right;
padding-right: 15px; }
.project-navigation li:last-of-type {
text-align: left;
padding-left: 15px;
}
.project-navigation.sub-nav.compact {
margin-bottom: 2em;
}
.project-navigation.sub-nav.compact ul li:not(:last-child)::after {
margin: 0 0 0 15px;
font-size: 1.2em;
color: #5f5852;
opacity: 0.8;
} .background-fade {
position: fixed;
top: 0;
right: 0;
left: 0;
bottom: 0;
height: 100%;
width: 100%;
z-index: -1;
}
.fade-out-on-scroll {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0); }
.color-offwhite {
background: #e5e2e0;
} .news {
background-color: #e5e2e0;
}
section {
position: relative;
}
section.page-content {
width: 100%;
margin: 0 auto;
padding: 0 6%; }
section.page-content img,
section.page-content p {
max-width: 57em;
margin: 0 auto 1.5em;
display: block;
}
section.page-content img {
max-width: 100%;
}
@media screen and (min-width: 60em) {
section.page-content img {
max-width: 57em;
}
}
.single-post section.page-content figure { overflow: hidden;
}
.single-post section.page-content img {
width: 100%;
margin-bottom: 1.5em;
}
.single-post figcaption {
margin-top: -0.5em;
margin-bottom: 1.5em;
font-style: italic;
text-align: center;
}
section.page-content .blocks-gallery-item {
margin-bottom: 0;
}
section.page-content .blocks-gallery-item:first-of-type {
margin-right: 2em;
}
section.page-content .blocks-gallery-item img {
margin: 0 auto 1.5em;
}
section.page-content blockquote p {
margin: 0 auto 1em;
}
section .image-holder,
section .image-holder img {
width: 100%;
}
section .image-holder {
margin-bottom: 1em;
}
figure.size-small,
figure.size-medium {
width: 100%;
max-width: 45em;
margin: 0 auto;
}
figure.size-small {
max-width: 30em;
}
.single figure.size-small,
.single figure.size-medium {
max-width: none;
}
.single .page-content figure img {
border: 1px solid rgb(228 226 223);
}
.serif.h3,
h3.serif.uppercase,
.staff-grid h3.serif {
font-size: 1.1em;
letter-spacing: 0.1em;
line-height: 1.35;
margin: 1.1em auto 0;
text-transform: uppercase;
font-style: normal;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}  .news article {
text-align: center;
}
.page-id-14 article ul {
list-style-type: none;
padding: 0;
margin: 0 auto 3em;
}
.news article ul li {
display: block;
opacity: 0.5;
cursor: pointer;
}
.news article ul li:hover {
opacity: 1;
}  .cherry-holder {
width: 50px;
margin: 0 auto;
}
@media screen and (min-width: 50em) {
.cherry-holder {
margin: 2em auto 0;
width: 50%;
max-width: 6em;
}
}
svg .cherry-a {
fill: #261b51;
}
.title-holder h3 {
color: #261b51;
}
.title-holder h4 { color: #5f5852;
}
.hero.has-centered-content {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-flex-align: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.hero.has-centered-content header {
font-size: 0.85em;
position: absolute;
margin: auto;
color: #fff;
}
@media screen and (min-width: 70em) {
.hero.has-centered-content header {
font-size: 1em;
}
}
.hero.has-centered-content header h3 {
color: #fff;
}
.hero.has-centered-content .scroll-to-view::before {
opacity: 0.1;
}
.posts-navigation {
width: 100%;
}
.blog figure {
border: 1px solid rgb(228 226 223);
background-color: #e5e2e0;
}  .blog-grid h2 {
color: #000;
}
.blog-grid .image-holder {
-webkit-transition: opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
transition: opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.blog-grid a.grid-item:hover .image-holder {
opacity: 0.7;
}
p.excerpt {  color: #5f584b;
font-size: 1.1em;
margin-top: 0.75em;
}
.blog-entry aside {
padding: 2% 6% 1.5em;
}
@media screen and (min-width: 50em) {
.blog-entry {
margin: 2em auto; max-width: 75em; position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
.blog-entry aside {
width: 33.333%;
max-width: 26em;
margin: 0;
padding: 0 0 0 2%;
}
.blog-entry aside {
display: block;
}
.blog-entry section {
width: 66.666%;
margin: 0;
}
}
.blog-entry h1.h3.serif {
margin: 0 0 0.75em;
}
.back-button {
position: -webkit-sticky;
position: sticky;
top: 6em;
}
.back-button {
color: transparent !important;
font-size: 0;
text-indent: -20em;
padding: 1rem 0.25rem;
margin: 3rem 0 0 0;
height: 1rem;
width: 3rem;
display: inline-block;
}
.back-arrow {
position: relative;
display: block;
height: auto;
width: 2rem;
opacity: 0.8;
-webkit-transform: scaleX(-1);
transform: scaleX(-1);
margin-top: 1.75rem;
}
.nav-next .back-arrow {
-webkit-transform: none;
transform: none;
}
.nav-links {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
.back-arrow svg {
stroke: white; fill: #5f584b;
}
.blog-entry h3:first-child {
margin-top: 0;
}
.blog-navigation .image-holder {
position: relative;
padding-top: 95%;
background-color: #e5e2e0;
border: 1px solid rgb(228 226 223);
}
.blog-navigation .image-holder img {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
height: 100%;
width: 100%;
object-fit: cover;
font-family: "object-fit: cover;";
}  .page-id-23 {
background-color: #261b51;
}
.page-id-23 h1.entry-title {
display: none;
}
.contact {
background: #261b51;
height: 100%; min-height: calc(100vh - 18em);
color: rgba(255, 255, 255, 0.7);
text-align: center;
padding: 0 6%;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
.contact a {
color: rgba(255, 255, 255, 0.7);
}
.contact ul.adresses strong {
opacity: 0.7;
}
@media screen and (max-width: 30em) {
.contact ul.adresses a {
display: block;
}
.contact ul.adresses li {
margin-bottom: 1em;
}
.contact ul.adresses strong {
display: none;
}
}
.contact .sans-serif {
font-style: normal;
}
.contact h1 {
font-size: 1.1em;
margin: 0;
}
.contact figure {
margin: 0 auto 2em;
width: 70%; max-width: 15em;
}
@media screen and (min-width: 30em) {
.contact figure {
max-width: 31vh;
}
}
@media screen and (min-width: 70em) {
.contact figure {
min-width: 14em;
}
}
.contact ul {
padding: 0;
list-style: none;
}
.contact .social-icons {
-webkit-filter: invert(1);
filter: invert(1);
}
.contact footer h3,
.contact footer address,
.mailing-list-link {
display: none;
}
.contact .mailing-list-link {
display: block;
text-transform: none;
font-style: italic;
color: rgba(255, 255, 255, 0.7);
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
.mailing-list-link:hover {
color: #fff;
}
.color-selector {
position: fixed;
right: 1em;
top: 5em;
bottom: 0;
display: flex;
justify-content: center;
-webkit-flex-align: center;
align-items: center;
}
.color-selector button {
display: block;
}
.color-selector button {
font-variant-numeric: lining-nums;
border: 0;
background: none;
color: #fff;
opacity: 0.4;
transition: opacity 0.2s ease;
}
.contact[data-color="alt"] .color-selector li:nth-child(1) button,
.contact[data-color="alt-2"] .color-selector li:nth-child(2) button,
.color-selector button:hover {
opacity: 1;
}  footer {
padding: 4em 0 1em 0;
text-align: center;
letter-spacing: 0; }
address {
margin: 0 auto;
font-size: 0.9em;
font-style: normal;
text-transform: none;
}
footer ul {
padding: 0;
margin: 0 auto 0.5em;
list-style-type: none;
}
footer ul li {
display: inline-block;
padding: 0;
margin: 0 0.25em;
}
footer ul.address-links li {
display: block;
}
footer ul.address-links li.footer-link.email {
margin-top: 1em;
}
.page-id-23 footer h3,
.page-id-23 footer address {
display: none;
}
@media screen and (min-width: 50em) {
footer ul.address-links li {
display: inline-block;
}
address li:not(:last-child)::after {
content: "|";
display: inline-block;
margin: 0 0 0 0.65em;
}
footer ul.address-links li.footer-link.email {
margin-top: 0;
}
} .icon svg {
fill: #b3b3b3;
-webkit-transition: fill 0.5s;
-moz-transition: fill 0.5s;
-o-transition: fill 0.5s;
transition: fill 0.5s;
width: 1.35rem;
height: 1.35rem;
}
.icon svg:hover {
fill: #453570;
}
.social-icons {
display: block;
margin: 1.2em auto 0;
}
.social-icons ul li {
margin: 0 0.45em;
}
.social-icons ul li a {
display: block;
text-indent: -9em;
height: 1.4em;
width: 1.4em;
position: relative; }
.page-id-23 .social-icons ul li a {
opacity: 0.4;
}
.social-icons ul li a:hover {
opacity: 0.8;
}
.social-icons svg {
display: block;
width: 100%;
height: 100%;
overflow: visible;
}  .heart-slideshow {
position: relative;
top: 0;
right: 0;
bottom: 0;
left: 0; height: 100vh;
height: calc(var(--vh, 1vh) * 100);
width: 100vw;
overflow: hidden;
z-index: 10;
}
.heart-slideshow .heart-slide {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
height: 100%;
width: 100%;
z-index: -1;
opacity: 0;
-webkit-transition: opacity 0s 3s;
transition: opacity 0s 3s;
}
.heart-slide .image-holder {
height: 100%;
width: 100%;
margin: 0;
}
.heart-slide img {
display: block;
height: 100%;
width: 100%;
visibility: hidden;
}
.heart-slide img[src],
.heart-slide img[srcset] {
visibility: visible;
-o-object-fit: cover;
object-fit: cover;
font-family: "object-fit: cover;";
}
.heart-slide.active {
opacity: 1;
z-index: 20;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
-webkit-backface-visibility: visible;
backface-visibility: visible;
-webkit-transition: opacity 3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
transition: opacity 3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
} .page-template-page_project_index .site-main,
.tax-project_type .site-main,
.content-area {
opacity: 1;
position: relative;
z-index: 10;
-webkit-transition: opacity 1.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
transition: opacity 1.2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.content-area.hidden {
max-height: 0;
overflow: hidden;
}
.transition-out .page-template-page_project_index .site-main,
.transition-out .tax-project_type .site-main,
.transition-out .content-area,
.content-area.hidden,
.transition-out footer {
opacity: 0;
-webkit-transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.transition-out .content-area.page-template-page_project_index,
.transition-out .content-area.tax-project_type {
opacity: 1;
}
.transition-out.transition-to-child .content-area {
-webkit-transition: opacity 0.25s cubic-bezier(0.075, 0.82, 0.165, 1);
transition: opacity 0.25s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.transition-out.transition-back-to-parent .content-area {
-webkit-transition: opacity 0.35s cubic-bezier(0.075, 0.82, 0.165, 1);
transition: opacity 0.35s cubic-bezier(0.075, 0.82, 0.165, 1);
} @media screen and (min-width: 50em) {
.page-id-12 main {
padding-top: 9.3rem;
}
} .page-template-page_profile section {
margin-bottom: 4em;
}
@media screen and (max-width: 50em) {
.page-template-page_profile section:not(.section-team) blockquote {
font-size: 1.5em;
}
}
section.section-philosophy blockquote,
section.section-services blockquote {
max-width: 525px;
}
section.section-services .inset-element {
max-width: 47em;
margin: 0 auto;
}
section.section-services .inset-element figure,
section.section-services .inset-element figure img {
width: 100%;
} .page-id-15 {
background-color: #e5e2e0;
text-align: center;  }
@media screen and (min-width: 50em) {
.page-id-15 main {
padding-top: 8.8rem;
}
}
.page-id-15 .site-main ul {
list-style: none;
margin: 0.5rem 0 3rem;
padding: 0 6%;
}
.page-id-15 .site-main ul li {
color: #777676;
margin-bottom: 0.5em;
}
@media screen and (min-width: 40em) {
.page-id-15 .site-main ul li {
margin-bottom: 0;
}
}
.page-id-15 .site-main ul li a {  color: #5f5852;
}
.page-id-15 .site-main ul li a:hover {
color: #000;
}
.page-id-15 .site-main h2 {
color: #000;
}
.page-id-15 .site-main h3 {
text-transform: none;
font-style: italic;
letter-spacing: 0;
font-size: 1em;
font-family: ltc-goudy-oldstyle-pro, serif;
margin-top: 0;
color: #000;
}
.page-id-15 .site-main h3:before,
.page-id-15 .site-main h3:after {
display: none;
}
.video-container {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.video-container iframe,
.video-container object,
.video-container embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
@media screen and (max-width: 50em) {
.blocks-gallery-grid,
.wp-block-gallery {
display: block;
}
.blocks-gallery-grid .blocks-gallery-image,
.blocks-gallery-grid .blocks-gallery-item,
.wp-block-gallery .blocks-gallery-image,
.wp-block-gallery .blocks-gallery-item {
width: 100%;
}
}
.description h1 {
font-size: 1.7em;
margin-bottom: 0.15em;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
color: #261b51;
font-style: italic;
font-family: "ltc-goudy-oldstyle-pro", serif;
text-transform: capitalize;
} .grid-item h5 {
letter-spacing: 0.1em;
}      #anniversary-intro {
width: 100%;
min-height: 100vh;
min-height: 100svh;
background: #8d8279cc;
position: fixed;
top: 0;
left: 0;
z-index: 1200;
display: flex;
justify-content: center;
align-items: center; }
.remove-anniversary-intro #anniversary-intro {
opacity: 0;
transform: translateX(-100vw);
transition: opacity 1s 0.4s ease-in-out, transform 0s 3s;
}
.skip-anniversary-intro #anniversary-intro {
opacity: 0;
transform: translateX(-100vw);
}
.home.remove-anniversary-intro #masthead {
opacity: 1;
transition: opacity 1s 0.4s ease-in-out, transform 0.45s linear, -webkit-transform 0.45s linear;
}
.home #masthead {
opacity: 0;
}
.skip-anniversary-intro #anniversary-intro {
opacity: 0;
transform: translateX(-100vw);
}
#anniversary-intro svg {
max-width: 14em;
width: 100%;
}
@media screen and (min-width: 40em) {
#anniversary-intro svg {
max-width: 25em;
}
} #primary[data-barba-namespace="book-page"] img[onload] {
opacity: 0;
}
#primary[data-barba-namespace="book-page"] img[onload].image-loaded {
opacity: 1;
transition: opacity 0.55s ease-in;
}
#primary[data-barba-namespace="book-page"] {
overflow-x: hidden;
}
#primary[data-barba-namespace="book-page"] .mobile-thumbnail {
max-width: 80%;
margin: -2rem auto 0;
}
#primary[data-barba-namespace="book-page"] .inner-container .book-description h2 {
font-family: "ltc-goudy-oldstyle-pro", serif;
text-transform: normal;
text-transform: none;
font-style: italic;
line-height: 1.2;
}
#primary[data-barba-namespace="book-page"] .inner-container .book-description h2 em {
font-size: 0.7em;
}
#primary[data-barba-namespace="book-page"] .inner-container .book-description {
padding: 0 1rem;
}
#primary[data-barba-namespace="book-page"] .inner-container .book-description p {
font-size: 0.95rem;
text-align: left;
}
@media screen and (max-width: 59.9999em) {
#primary[data-barba-namespace="book-page"] .inner-container .heart-slideshow {
height: auto;
padding: 0 1rem;
}
#primary[data-barba-namespace="book-page"] .inner-container .heart-slideshow .heart-slide {
position: relative;
opacity: 1;
}
#primary[data-barba-namespace="book-page"] .inner-container .heart-slideshow .heart-slide:first-of-type,
#primary[data-barba-namespace="book-page"] .inner-container .heart-slideshow button {
display: none;
}
}
@media screen and (min-width: 60em) {
#primary[data-barba-namespace="book-page"] .inner-container {
position: relative;
min-height: calc(100vh - 122px - 4rem);
min-height: calc(100svh - 122px - 4rem);
display: flex;
justify-content: flex-start;
align-items: center;
}
#primary[data-barba-namespace="book-page"] .inner-container .mobile-thumbnail {
display: none;
}
#primary[data-barba-namespace="book-page"] .inner-container .book-description {
width: 50%;
margin: auto 0;
padding-left: 6rem;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
transition: opacity 0.3s;
pointer-events: none;
opacity: 0;
transition: opacity 0.3s;
}
#primary[data-barba-namespace="book-page"] .inner-container.first-slide-showing .book-description {
opacity: 1;
pointer-events: all;
transition: opacity 0.3s;
z-index: 300;
}
#primary[data-barba-namespace="book-page"] .inner-container .book-description h2 {
font-family: "ltc-goudy-oldstyle-pro", serif;
text-transform: normal;
text-transform: none;
font-style: italic;
line-height: 1.2;
}
#primary[data-barba-namespace="book-page"] .inner-container .book-description h2 em {
font-size: 0.7em;
}
#primary[data-barba-namespace="book-page"] .inner-container .book-description p {
font-size: 1rem;
text-align: center;
}
#primary[data-barba-namespace="book-page"] .inner-container .book-description .book-inner-container {
max-width: 100%;
max-width: 37rem;
}
#primary[data-barba-namespace="book-page"] .book-slideshow-container {
display: block;
z-index: 10;
position: absolute;
top: 50%;
right: 0;
bottom: auto;
left: 0;
transform: translateY(-50%);
max-width: 140vh;
width: 100%;
margin: 0 auto;
}
#primary[data-barba-namespace="book-page"] .book-slideshow-container .heart-slideshow {
top: auto;
padding-top: 58%;
margin: auto 0.5rem;
width: 100%;
z-index: 10;
height: 0;
overflow: visible;
}
#primary[data-barba-namespace="book-page"] .book-slideshow-container .heart-slideshow .heart-slide:first-of-type img {
width: 62%;
margin-left: auto;
object-position: right;
object-position: 72% 50%;
}
#primary[data-barba-namespace="book-page"] .book-slideshow-container .heart-slideshow .heart-slide img[src],
#primary[data-barba-namespace="book-page"] .book-slideshow-container .heart-slideshow .heart-slide img[srcset] {
object-fit: contain;
}
#primary[data-barba-namespace="book-page"] .first-slide-showing .book-slideshow-container .heart-slideshow .heart-prev {
pointer-events: none;
opacity: 0;
}
#primary[data-barba-namespace="book-page"] .book-slideshow-container .heart-slideshow .heart-next::before,
#primary[data-barba-namespace="book-page"] .book-slideshow-container .heart-slideshow .heart-prev::before {
width: 1em;
height: 1em;
border-right: 1px solid #000;
border-bottom: 1px solid #000;
}
}
.news-sub-nav {
display: none;
}
#primary[data-barba-namespace="news-page"] .news-sub-nav {
display: block;
} .cky-modal {
border-radius: 0 !important;
}
.cky-consent-container .cky-consent-bar {
border-radius: 0 !important;
font-family: freight-sans-pro, sans-serif !important;
background-color: #fffffff3 !important;
}
.cky-consent-bar .cky-notice-des p {
font-family: "ltc-goudy-oldstyle-pro", serif !important;
font-weight: 200 !important;
font-size: 12.7px !important;
}
.cky-notice-btn-wrapper .cky-btn {
border-radius: 0 !important;
font-weight: 300 !important;
font-size: 13px !important;
border-width: 1px !important;
letter-spacing: 1.2px !important;
text-transform: uppercase !important;
}
.cky-notice .cky-title {
text-transform: capitalize !important;
font-family: "ltc-goudy-oldstyle-pro", serif !important; font-weight: 200 !important;
}
.cky-btn-revisit-wrapper.cky-revisit-bottom-left {
background-color: #30225c !important;
opacity: 0.62 !important;
width: 25px !important;
height: 25px !important;
}
.cky-btn-revisit-wrapper .cky-btn-revisit img {
height: 15px !important;
width: 15px !important;
}  .popup-trigger {
position: fixed;
background: #332164;
color: white;
padding: 15px 20px;
border-radius: 50px;
cursor: pointer;
z-index: 9998;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
transition: all 0.3s ease;
font-weight: bold;
}
.popup-trigger.bottom-right {
bottom: 20px;
right: 20px;
}
.popup-trigger.bottom-left {
bottom: 20px;
left: 20px;
}
.popup-trigger:hover {
opacity: 0.7;
transform: translateY(-2px);
} .popup-overlay {
display: flex;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.7);
z-index: 9999;
opacity: 0;
pointer-events: none;
justify-content: center;
align-items: center;
transition: opacity 0.3s ease-in-out;
}
.popup-overlay.active {
opacity: 1;
pointer-events: all;
}
div.wpforms-container-full button[type="submit"] {
border-radius: 0 !important;
} .popup-overlay h3.form-title {
text-align: center;
margin-bottom: 1.2em;
margin-top: 1.2em;
}
.popup-content {
background: white;
padding: 20px;
border-radius: 0;
max-width: 500px;
width: 90%;
max-height: 90vh;
overflow-y: auto;
position: relative;
}
.popup-close {
position: absolute;
top: 15px;
right: 20px;
padding: 0;
background: none;
border: none;
font-size: 30px;
cursor: pointer;
color: #666;
}
.popup-close:hover {
color: #000;
}
.wpforms-container .wpforms-form .wpforms-field-label,
.wpforms-container .wpforms-form .wpforms-field-sublabel,
.wpforms-container .wpforms-form .wpforms-field-description,
.wpforms-container .wpforms-form textarea,
.wpforms-container .wpforms-form li,
.wpforms-container .wpforms-form th {
hyphens: auto;
font-family: "freight-sans-pro";
font-weight: 300;
text-transform: uppercase;
letter-spacing: 1.2px;
font-size: 14px;
margin-bottom: 0.8em;
}
div.wpforms-container-full button[type="submit"] {
font-family: "freight-sans-pro", sans-serif !important;
letter-spacing: 2px !important;
text-transform: uppercase !important;
font-weight: 100 !important;
font-size: 0.9em !important;
}
.wpforms-container .wpforms-field {
padding: 12px 0 !important;
}
div.wpforms-container-full :is(input, select) {
border-radius: 0 !important;
}
div.wpforms-container-full {
margin-top: 0 !important;
}
@media (max-width: 768px) {
.popup-trigger {
bottom: 15px;
right: 15px;
padding: 12px 16px;
font-size: 14px;
}
.popup-content {
padding: 20px;
margin: 20px;
}
}