:root {
    --ink:#17211d;
    --paper:#f3f0e8;
    --accent:#166649;
    --line:#d9ddd7
}
* {
    box-sizing:border-box
}
body {
    margin:0;
    color:var(--ink);
    background:#fff;
    font:17px/1.7 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif
}
.preview-notice {
    padding:9px 24px;
    background:#17211d;
    color:#cbd6d0;
    text-align:center;
    font-size:13px
}
.preview-notice a {
    margin-left:12px;
    color:#dbff74
}
header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    padding:24px max(30px,7vw);
    border-bottom:1px solid var(--line)
}
.logo {
    color:var(--ink);
    font-size:20px;
    font-weight:800;
    text-decoration:none
}
nav {
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:18px
}
nav a {
    color:#53605a;
    text-decoration:none;
    font-size:14px;
    font-weight:650
}
nav a.active {
    color:var(--accent)
}
.hero {
    padding:clamp(70px,10vw,140px) max(30px,12vw);
    background:var(--paper)
}
.hero>p {
    color:var(--accent);
    font-size:13px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase
}
.hero h1 {
    max-width:900px;
    margin:12px 0 24px;
    font-size:clamp(42px,7vw,86px);
    line-height:1.02;
    letter-spacing:-.055em
}
.hero div {
    max-width:760px;
    color:#53605a;
    font-size:20px
}
.content-section {
    display:grid;
    grid-template-columns:80px minmax(0,760px);
    gap:30px;
    padding:80px max(30px,12vw)
}
.content-section.tinted {
    background:#f6f8f6
}
.content-section>span {
    color:var(--accent);
    font-size:13px;
    font-weight:800
}
.content-section h2 {
    margin:0 0 20px;
    font-size:clamp(30px,4vw,48px);
    line-height:1.1;
    letter-spacing:-.035em
}
.content-section p {
    margin:0;
    color:#53605a
}
footer {
    display:flex;
    justify-content:space-between;
    gap:40px;
    padding:50px max(30px,7vw);
    background:#17211d;
    color:#fff
}
footer div {
    display:grid;
    text-align:right
}
footer a,footer span {
    color:#bbc8c1;
    text-decoration:none
}
@media(max-width:700px) {
    header {
        align-items:flex-start;
        display:grid
    }
    nav {
        justify-content:flex-start
    }
    .content-section {
        grid-template-columns:1fr;
        padding-top:55px;
        padding-bottom:55px
    }
    footer {
        display:grid
    }
    footer div {
        text-align:left
    }
}
.content-section.has-image {
    grid-template-columns:70px minmax(0,1fr) minmax(280px,520px);
    align-items:center;
    max-width:none
}
.content-section.has-image img {
    width:100%;
    max-height:480px;
    border-radius:18px;
    object-fit:cover;
    box-shadow:0 16px 45px rgba(23,33,29,.12)
}
@media(max-width:850px) {
    .content-section.has-image {
        grid-template-columns:55px minmax(0,1fr)
    }
    .content-section.has-image img {
        grid-column:2;
        max-height:380px
    }
}
@media(max-width:700px) {
    .content-section.has-image {
        grid-template-columns:1fr
    }
    .content-section.has-image img {
        grid-column:auto
    }
}
footer {
    align-items:start
}
.footer-brand {
    display:grid;
    gap:3px
}
.footer-brand strong {
    margin-bottom:9px
}
.footer-brand a,.footer-brand span {
    color:#bbc8c1;
    text-decoration:none
}
.footer-links {
    display:grid;
    grid-template-columns:repeat(2,minmax(150px,1fr));
    justify-content:initial;
    gap:8px 24px;
    max-width:620px
}
.footer-links a {
    color:#bbc8c1;
    font-size:13px
}
.footer-links a:hover,.footer-links a.active {
    color:#dbff74
}
@media(max-width:800px) {
    footer {
        grid-template-columns:1fr
    }
    .footer-links {
        grid-template-columns:1fr 1fr;
        justify-content:start
    }
    footer div {
        text-align:left
    }
}
@media(max-width:480px) {
    .footer-links {
        grid-template-columns:1fr
    }
}
main+footer {
    position:relative;
    z-index:2;
    margin-top:-1px
}
:root {
    --site-width:1120px;
    --site-gutter:clamp(22px,4vw,48px);
    --site-pad:max(var(--site-gutter),calc((100vw - var(--site-width))/2))
}
header {
    min-height:82px;
    padding:20px var(--site-pad)
}
header .logo {
    flex:0 0 auto
}
header nav {
    align-items:center;
    max-width:760px
}
.hero {
    padding:clamp(72px,8vw,112px) var(--site-pad) clamp(82px,9vw,124px)
}
.hero>p,.hero>h1,.hero>div {
    margin-left:0;
    margin-right:0
}
.hero h1 {
    max-width:980px;
    font-size:clamp(44px,5.8vw,78px);
    line-height:1.04
}
.hero div {
    max-width:780px
}
.content-section {
    grid-template-columns:58px minmax(0,820px);
    gap:28px;
    padding:clamp(64px,7vw,96px) var(--site-pad)
}
.content-section.has-image {
    grid-template-columns:58px minmax(0,1fr) minmax(280px,480px)
}
footer {
    padding:52px var(--site-pad)
}
@media(max-width:900px) {
    header {
        align-items:flex-start;
        display:grid
    }
    header nav {
        justify-content:flex-start
    }
    .content-section.has-image {
        grid-template-columns:48px minmax(0,1fr)
    }
    .content-section.has-image img {
        grid-column:2
    }
}
@media(max-width:700px) {
    :root {
        --site-gutter:20px
    }
    .hero {
        padding-top:62px;
        padding-bottom:72px
    }
    .hero h1 {
        font-size:clamp(39px,12vw,58px)
    }
    .content-section,.content-section.has-image {
        grid-template-columns:1fr;
        gap:14px
    }
    .content-section.has-image img {
        grid-column:auto
    }
    header nav {
        gap:11px 16px
    }
}
.content-section,.content-section.has-image {
    display:block;
    padding:0;
    background:#fff
}
.content-section.tinted {
    background:#f5f7f5
}
.content-section .section-inner {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:32px;
    align-items:center;
    width:min(var(--site-width),calc(100% - (var(--site-gutter) * 2)));
    margin:0 auto;
    padding:clamp(68px,7vw,104px) 0
}
.content-section.has-image .section-inner {
    grid-template-columns:minmax(0,1fr) minmax(320px,520px);
    gap:clamp(42px,6vw,88px)
}
.content-section.image-left img {
    order:-1
}
.commercial-page .hero h1,.commercial-page .hero>div {
    max-width:var(--site-width)
}
.content-section .section-copy,.content-section.text-only .section-copy {
    width:100%;
    max-width:none
}
.content-section h2 {
    margin:0 0 22px;
    font-size:clamp(32px,4vw,52px);
    line-height:1.1;
    letter-spacing:-.035em
}
.content-section p {
    margin:0;
    color:#53605a;
    font-size:18px;
    line-height:1.75
}
.content-section img {
    display:block;
    width:100%;
    aspect-ratio:3/2;
    max-height:none;
    border-radius:18px;
    object-fit:cover;
    box-shadow:0 18px 50px rgba(23,33,29,.12)
}
.document-page .hero {
    padding-top:70px;
    padding-bottom:72px
}
.document-page .hero h1 {
    max-width:850px;
    font-size:clamp(40px,5vw,62px)
}
.document-page .hero>div {
    max-width:780px
}
.document-page .content-section,.document-page .content-section.tinted {
    background:#fff
}
.document-page .content-section .section-inner,.document-page .content-section.has-image .section-inner {
    display:block;
    width:min(860px,calc(100% - (var(--site-gutter) * 2)));
    padding:38px 0
}
.document-page .content-section:first-child .section-inner {
    padding-top:68px
}
.document-page .content-section:last-child .section-inner {
    padding-bottom:88px
}
.document-page .content-section h2 {
    font-size:clamp(25px,3vw,34px);
    letter-spacing:-.02em
}
.document-page .content-section p {
    font-size:17px
}
.document-page .content-section img {
    margin-top:28px;
    max-width:680px
}
@media(max-width:850px) {
    .content-section.has-image .section-inner {
        grid-template-columns:1fr;
        gap:32px
    }
    .content-section.image-left img {
        order:initial
    }
    .content-section .section-copy {
        max-width:none
    }
    .content-section img {
        max-width:680px
    }
}
@media(max-width:600px) {
    .content-section .section-inner {
        width:calc(100% - 40px);
        padding:56px 0
    }
    .content-section h2 {
        font-size:clamp(29px,9vw,40px)
    }
    .content-section p {
        font-size:17px
    }
    .document-page .content-section .section-inner,.document-page .content-section.has-image .section-inner {
        width:calc(100% - 40px)
    }
}
.commercial-page .content-section .section-inner {
    width: min(var(--site-width), calc(100% - var(--site-gutter) - var(--site-gutter)));
}
.commercial-page .hero h1, .commercial-page .hero > div, .commercial-page .content-section.text-only .section-copy {
    width: 100%;
    max-width: var(--site-width);
}
/* Document pages follow the same outer grid as the header and main pages. */ .document-page .hero {
    padding-right: var(--site-pad) !important;
    padding-left: var(--site-pad) !important;
}
.document-page .hero .hero-inner {
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}
.document-page .content-section .section-inner, .document-page .content-section.has-image .section-inner {
    width: min(var(--site-width), calc(100% - var(--site-gutter) - var(--site-gutter))) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}
/* Keep long legal copy readable without centering it in a narrower container. */ .document-page .hero-copy, .document-page .section-copy {
    width: 100%;
    max-width: 860px;
}
@media (max-width: 600px) {
    .commercial-page .content-section .section-inner, .document-page .content-section .section-inner, .document-page .content-section.has-image .section-inner {
        width: calc(100% - 40px) !important;
    }
}
.commercial-page .hero {
    display:flex;
    min-height:calc(100svh - 122px);
    flex-direction:column;
    justify-content:center
}
.commercial-page .content-section .section-inner {
    min-height:100svh;
    align-content:center
}
.commercial-page .content-section.has-image .section-inner {
    align-items:center
}
@supports not (height:100svh) {
    .commercial-page .hero {
        min-height:calc(100vh - 122px)
    }
    .commercial-page .content-section .section-inner {
        min-height:100vh
    }
}
@media(max-width:700px) {
    .commercial-page .hero {
        min-height:calc(100svh - 150px)
    }
    .commercial-page .content-section .section-inner {
        min-height:100svh;
        padding-top:64px;
        padding-bottom:64px
    }
}
.image-position-label {
    display:grid;
    gap:6px;
    margin-top:10px;
    font-size:13px;
    font-weight:700
}
.image-position-label select {
    height:44px
}
.hero .hero-inner {
    display:grid;
    align-items:center;
    width:min(var(--site-width),calc(100% - var(--site-gutter) - var(--site-gutter)));
    margin:0 auto
}
.hero .hero-copy>p {
    color:var(--accent);
    font-size:13px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase
}
.hero .hero-copy h1 {
    margin:12px 0 24px
}
.hero .hero-copy>div {
    color:#53605a;
    font-size:20px
}
.hero.hero-has-image:not(.hero-image-background) .hero-inner {
    grid-template-columns:minmax(0,1fr) minmax(340px,520px);
    gap:clamp(42px,6vw,82px)
}
.hero.hero-image-left img {
    order:-1
}
.hero.hero-has-image img {
    display:block;
    width:100%;
    aspect-ratio:3/2;
    border-radius:20px;
    object-fit:cover;
    box-shadow:0 20px 60px rgba(23,33,29,.16)
}
.hero.hero-image-background,.content-section.image-background {
    position:relative;
    background-position:center;
    background-size:cover;
    color:#fff
}
.hero.hero-image-background:before,.content-section.image-background:before {
    position:absolute;
    z-index:0;
    inset:0;
    background:linear-gradient(90deg,rgba(8,18,13,.82),rgba(8,18,13,.48));
    content:""
}
.hero.hero-image-background .hero-inner,.content-section.image-background .section-inner {
    position:relative;
    z-index:1
}
.hero.hero-image-background .hero-copy {
    max-width:850px
}
.hero.hero-image-background .hero-copy>p {
    color:#dbff74
}
.hero.hero-image-background .hero-copy>div,.content-section.image-background p {
    color:rgba(255,255,255,.86)
}
.content-section.image-background.tinted {
    background-color:#17211d
}
.content-section.image-background .section-copy {
    max-width:820px
}
.content-section.image-background h2 {
    color:#fff
}
@media(max-width:850px) {
    .hero.hero-has-image:not(.hero-image-background) .hero-inner {
        grid-template-columns:1fr
    }
    .hero.hero-image-left img {
        order:initial
    }
    .hero.hero-has-image img {
        max-width:680px
    }
}
@media(max-width:600px) {
    .hero .hero-inner {
        width:calc(100% - 40px)
    }
    .hero .hero-copy>div {
        font-size:18px
    }
}
.menu-toggle {
    display:none
}
@media(max-width:700px) {
    header {
        position:relative;
        display:flex;
        align-items:flex-start;
        justify-content:flex-start;
        flex-wrap:wrap;
        min-height:auto;
        padding-top:16px;
        padding-bottom:16px
    }
    header #mainNavigation {
        position:static;
        display:flex;
        width:100%;
        flex-wrap:wrap;
        gap:8px 16px;
        margin-top:12px;
        padding:0;
        border:0;
        background:transparent;
        box-shadow:none
    }
    header #mainNavigation a {
        padding:0;
        font-size:14px
    }
}
@media(min-width:701px) {
    header {
        display:flex!important;
        align-items:center!important;
        justify-content:space-between!important;
        min-height:82px;
        padding:20px var(--site-pad)!important
    }
    .menu-toggle {
        display:none!important
    }
    header #mainNavigation {
        position:static!important;
        display:flex!important;
        align-items:center;
        justify-content:flex-end;
        padding:0!important;
        border:0!important;
        background:transparent!important;
        box-shadow:none!important
    }
    .commercial-page .hero {
        min-height:calc(100svh - 122px)
    }
}
@media(max-width:700px) {
    .preview-notice {
        min-height:28px;
        padding:5px 12px;
        font-size:11px;
        line-height:18px
    }
    header {
        position:relative;
        display:flex!important;
        align-items:center!important;
        justify-content:space-between!important;
        min-height:62px!important;
        height:62px;
        padding:8px 20px!important
    }
    header .logo {
        font-size:18px;
        line-height:1.1
    }
    .menu-toggle {
        position:relative;
        display:block!important;
        width:38px;
        height:38px;
        min-height:38px;
        padding:0;
        border-color:#d7ddd9
    }
    .menu-toggle i {
        position:absolute;
        left:9px;
        width:18px;
        height:2px;
        margin:0;
        border-radius:2px;
        transform-origin:center;
        background:var(--ink)
    }
    .menu-toggle i:nth-child(1) {
        top:11px
    }
    .menu-toggle i:nth-child(2) {
        top:17px
    }
    .menu-toggle i:nth-child(3) {
        top:23px
    }
    .menu-open .menu-toggle i:nth-child(1) {
        top:17px;
        transform:rotate(45deg)
    }
    .menu-open .menu-toggle i:nth-child(2) {
        opacity:0;
        transform:scaleX(0)
    }
    .menu-open .menu-toggle i:nth-child(3) {
        top:17px;
        transform:rotate(-45deg)
    }
    header #mainNavigation {
        position:absolute!important;
        z-index:50;
        top:100%;
        right:0;
        left:0;
        display:none!important;
        margin:0;
        padding:8px 20px 14px!important;
        border-top:1px solid var(--line);
        border-bottom:1px solid var(--line);
        background:#fff;
        box-shadow:0 14px 28px rgba(20,30,25,.14)
    }
    .menu-open header #mainNavigation {
        display:grid!important;
        align-items:stretch;
        justify-content:stretch!important
    }
    .menu-open header #mainNavigation a {
        display:block;
        padding:12px 0;
        border-bottom:1px solid #edf0ee;
        font-size:15px
    }
    .menu-open header #mainNavigation a:last-child {
        border-bottom:0
    }
    .commercial-page .hero {
        min-height:calc(100svh - 90px)!important;
        padding-top:48px!important;
        padding-bottom:48px!important
    }
    .document-page .hero {
        min-height:auto!important;
        padding-top:48px!important;
        padding-bottom:48px!important
    }
}
@supports not (height:100svh) {
    @media(min-width:701px) {
        .commercial-page .hero {
            min-height:calc(100vh - 122px)
        }
    }
    @media(max-width:700px) {
        .commercial-page .hero {
            min-height:calc(100vh - 90px)!important
        }
    }
}
.cookie-notice[hidden] {
    display:none!important
}
.cookie-notice {
    z-index:300;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:18px 22px;
    border:1px solid rgba(255,255,255,.22);
    background:var(--ink);
    color:var(--design-background);
    box-shadow:0 16px 45px rgba(0,0,0,.24)
}
.cookie-notice p {
    max-width:760px;
    margin:0;
    font-size:14px;
    line-height:1.5
}
.cookie-notice a {
    color:inherit;
    font-weight:700
}
.cookie-actions {
    display:flex;
    align-items:center;
    gap:8px;
    flex:0 0 auto
}
.cookie-actions button {
    min-height:44px;
    padding:0 16px;
    border:1px solid var(--accent);
    font-family:inherit;
    font-size:14px;
    font-weight:700;
    line-height:1;
    cursor:pointer
}
.cookie-primary {
    background:var(--accent);
    color:var(--design-accent-text)
}
.cookie-secondary {
    background:transparent;
    color:inherit
}
.cookie-bottom,.cookie-top {
    position:fixed;
    right:24px;
    left:24px;
    width:min(1120px,calc(100% - 48px));
    margin:auto
}
.cookie-bottom {
    bottom:24px
}
.cookie-top {
    top:24px
}
.cookie-above_header {
    position:relative;
    width:100%;
    padding-right:var(--site-pad);
    padding-left:var(--site-pad);
    border-right:0;
    border-left:0;
    box-shadow:none
}
@media(max-width:780px) {
    .cookie-notice {
        align-items:stretch;
        display:grid;
        gap:14px;
        padding:16px
    }
    .cookie-above_header {
        padding-right:20px;
        padding-left:20px
    }
    .cookie-actions {
        display:grid;
        grid-template-columns:1fr 1fr 1fr
    }
    .cookie-actions button {
        padding:0 10px
    }
    .cookie-bottom,.cookie-top {
        right:12px;
        left:12px;
        width:calc(100% - 24px)
    }
    .cookie-bottom {
        bottom:12px
    }
    .cookie-top {
        top:12px
    }
}
@media(max-width:480px) {
    .cookie-actions {
        grid-template-columns:1fr
    }
    .cookie-actions button {
        width:100%
    }
}
html.animations-ready .site-reveal {
    opacity:0;
    transition-property:opacity,transform;
    transition-duration:var(--reveal-duration,700ms);
    transition-delay:0ms;
    transition-timing-function:cubic-bezier(.22,.72,.24,1);
    will-change:opacity,transform
}
html.animations-ready .site-reveal.is-visible {
    opacity:1;
    transform:none;
    transition-delay:var(--reveal-delay,0ms)
}
html.animations-ready .reveal-fade {
    transform:none
}
html.animations-ready .reveal-fade-up {
    transform:translate3d(0,52px,0)
}
html.animations-ready .reveal-slide-left {
    transform:translate3d(-72px,0,0)
}
html.animations-ready .reveal-slide-right {
    transform:translate3d(72px,0,0)
}
html.animations-ready .reveal-zoom {
    transform:scale(.9)
}
@media(prefers-reduced-motion:reduce) {
    html.animations-ready .site-reveal {
        opacity:1!important;
        transform:none!important;
        transition:none!important
    }
}
html.animations-ready .content-section.image-background.site-reveal,html.animations-ready .hero.hero-image-background.site-reveal {
    transform:none!important
}
.contact-form-section {
    background:var(--design-background)
}
.contact-form-inner {
    width:min(var(--site-width),calc(100% - (var(--site-gutter) * 2)));
    margin:0 auto;
    padding:clamp(68px,7vw,104px) 0
}
.contact-form-inner h2 {
    margin:0 0 28px;
    font-size:clamp(32px,4vw,52px);
    line-height:1.1
}
.site-contact-form {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    max-width:900px
}
.site-contact-field {
    display:grid;
    gap:7px
}
.site-contact-field.is-wide {
    grid-column:1/-1
}
.site-contact-field span {
    font-size:14px;
    font-weight:700
}
.site-contact-field input,.site-contact-field textarea {
    width:100%;
    border:1px solid var(--line);
    background:var(--design-background);
    color:var(--ink);
    font:inherit
}
.site-contact-field input {
    height:52px;
    padding:0 15px
}
.site-contact-field textarea {
    min-height:150px;
    padding:13px 15px;
    resize:vertical
}
.site-contact-field input:focus,.site-contact-field textarea:focus {
    border-color:var(--accent);
    outline:2px solid color-mix(in srgb,var(--accent) 20%,transparent);
    outline-offset:1px
}
.site-contact-submit {
    justify-self:start;
    min-height:50px;
    padding:0 22px;
    border:1px solid var(--accent);
    background:var(--accent);
    color:var(--design-accent-text);
    font:700 15px inherit;
    cursor:pointer
}
.site-contact-submit:disabled {
    cursor:wait;
    opacity:.65
}
.site-contact-status {
    align-self:center;
    margin:0;
    color:var(--design-muted)
}
.contact-honeypot {
    position:absolute!important;
    left:-10000px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important
}
@media(max-width:650px) {
    .site-contact-form {
        grid-template-columns:1fr
    }
    .site-contact-field.is-wide {
        grid-column:auto
    }
    .contact-form-inner {
        width:calc(100% - 40px);
        padding:56px 0
    }
    .site-contact-submit {
        width:100%
    }
}
.contact-form-inner {
    display:grid;
    gap:0 60px
}
@media(max-width:850px) {
    .contact-form-inner {
        grid-template-columns:1fr!important
    }
    .contact-form-inner::after {
        grid-column:1!important;
        grid-row:auto!important;
        min-height:360px!important;
        margin-top:28px
    }
    .contact-form-inner>h2,.contact-form-inner>.site-contact-form {
        grid-column:1!important
    }
}
.contact-form-inner::after {
    grid-row:1/3
}
:root {
    --site-media-radius:18px;
    --site-media-shadow:0 18px 50px rgba(23,33,29,.12)
}
.hero.hero-has-image:not(.hero-image-background) img, .content-section:not(.image-background) img, .contact-form-inner::after {
    border-radius:var(--site-media-radius)!important;
    box-shadow:var(--site-media-shadow)!important;
}
body>header {
    border-bottom:0!important
}
.site-header-sticky>header {
    position:sticky;
    z-index:200;
    top:0
}
.site-header-shadow>header {
    box-shadow:0 10px 30px rgba(23,33,29,.12)
}
@media(max-width:700px) {
    .hero h1 {
        max-width:100%;
        font-size:clamp(32px,9.5vw,44px)!important;
        line-height:1.04;
        overflow-wrap:anywhere;
        text-wrap:balance;
    }
    .content-section h2, .contact-form-inner h2 {
        max-width:100%;
        font-size:clamp(24px,7.5vw,32px)!important;
        line-height:1.12;
        overflow-wrap:anywhere;
        text-wrap:balance;
    }
}
@media(max-width:380px) {
    .hero h1 {
        font-size:clamp(30px,9vw,36px)!important
    }
    .content-section h2,.contact-form-inner h2 {
        font-size:clamp(23px,7vw,28px)!important
    }
}
.hero, .content-section, .contact-form-section {
    border:0!important;
    outline:0!important;
    background-clip:border-box;
}
.sections>.content-section {
    position:relative;
}
.sections>.content-section:first-child, .sections>.content-section+.content-section, .sections+.contact-form-section {
    margin-top:-1px;
}
.sections>.content-section+.content-section {
    z-index:1;
}
:root {
    --ink:#2F241C;
    --paper:#E8DDCB;
    --accent:#A84B24;
    --design-background:#F6F1E7;
    --design-muted:#2F241C;
    --design-accent-text:#FFFFFF
}
body {
    background:var(--design-background);
    font-family:'Source Sans 3',sans-serif
}
h1,h2,h3,.logo {
    font-family:'Manrope',sans-serif
}
header,.content-section {
    background:var(--design-background)
}
nav a,.hero .hero-copy>div,.content-section p {
    color:var(--design-muted)
}
footer {
    background:var(--ink);
    color:var(--design-background)
}
footer a,footer span {
    color:var(--design-background)
}
.hero.hero-image-background:before,.content-section.image-background:before {
    background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.6))
}
.hero.hero-image-background .hero-copy h1,.hero.hero-image-background .hero-copy>div,.content-section.image-background h2,.content-section.image-background p {
    color:#fff!important;
    text-shadow:0 1px 3px rgba(0,0,0,.35)
}
.hero.hero-image-background .hero-copy>p {
    color:#fff!important
}
.custom-section-colors:not(.hero-image-background) h1,.custom-section-colors:not(.hero-image-background) h2,.custom-section-colors:not(.hero-image-background) p,.custom-section-colors:not(.hero-image-background) .hero-copy>div {
    color:inherit!important
}
