:root {
            --green: #005c3d;
            --dark: #004a32;
            --gold: #be9b50;
            --champagne: #d4c37d;
            --ink: #303632;
            --muted: #66726b;
            --white: #fff;
            --soft: #f7f7f2;
            --line: #e3e7df;
            --sans: "DM Sans", sans-serif;
            --heading: "Montserrat", sans-serif
        }
* {
            box-sizing: border-box !important
        }
html {
            scroll-behavior: smooth !important;
            scroll-padding-top: 115px !important
        }
body {
            margin: 0 !important;
            background: var(--white) !important;
            color: var(--ink) !important;
            font-family: var(--sans) !important;
            -webkit-font-smoothing: antialiased !important
        }
a {
            color: inherit !important;
            text-decoration: none !important
        }
button, input, select, textarea {
            font: inherit !important
        }
button, a, input, select, textarea {
            touch-action: manipulation !important
        }
button {
            cursor: pointer !important
        }
img {
            display: block !important;
            max-width: 100% !important
        }
h1, h2, h3, p {
            margin: 0 !important
        }
h1, h2, h3 {
            font-family: var(--heading) !important;
            color: var(--dark) !important
        }
h1 {
            font-size: clamp(39px, 4.5vw, 65px) !important;
            line-height: 1.08 !important;
            letter-spacing: -.055em !important;
            font-weight: 800 !important;
            text-transform: uppercase !important
        }
h2 {
            font-size: clamp(27px, 3vw, 42px) !important;
            line-height: 1.15 !important;
            letter-spacing: -.04em !important;
            font-weight: 800 !important
        }
h3 {
            font-size: 19px !important;
            line-height: 1.35 !important;
            letter-spacing: -.025em !important;
            font-weight: 700 !important
        }
p {
            line-height: 1.8 !important
        }
svg {
            width: 20px !important;
            height: 20px !important;
            flex-shrink: 0 !important
        }
.wrap {
            width: min(1320px, calc(100% - 100px)) !important;
            margin: auto !important
        }
.top-rule {
            height: 4px !important;
            background: var(--gold) !important
        }
.header {
            background: rgba(255, 255, 255, .97) !important;
            border-bottom: 1px solid var(--line) !important;
            position: sticky !important;
            top: 0 !important;
            z-index: 30 !important
        }
.header-inner {
            min-height: 96px !important;
            display: flex !important;
            align-items: center !important;
            justify-content: space-between !important;
            gap: 25px !important
        }
.brand {
            display: flex !important;
            align-items: center !important;
            gap: 7px !important
        }
.nav {
            display: flex !important;
            align-items: center !important;
            gap: 30px !important
        }
.nav-link {
            font-size: 11px !important;
            letter-spacing: .1em !important;
            text-transform: uppercase !important;
            font-weight: 700 !important;
            position: relative !important;
            padding: 16px 0 !important
        }
.nav-link.active {
            color: var(--green) !important
        }
.nav-link.active:after {
            content: "" !important;
            position: absolute !important;
            bottom: 5px !important;
            left: 0 !important;
            right: 0 !important;
            height: 2px !important;
            background: var(--gold) !important
        }
.btn {
            border: 1px solid var(--green) !important;
            background: var(--green) !important;
            color: #fff !important;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            gap: 15px !important;
            min-height: 51px !important;
            padding: 0 23px !important;
            font: 700 10px var(--heading) !important;
            text-transform: uppercase !important;
            letter-spacing: .1em !important;
            transition: transform .2s, background .2s !important
        }
.btn:hover {
            transform: translateY(-2px) !important;
            background: var(--dark) !important
        }
.btn.light {
            background: #fff !important;
            color: var(--dark) !important;
            border-color: var(--gold) !important
        }
.btn.light:hover {
            background: #f6f2e8 !important
        }
.btn.gold {
            background: var(--champagne) !important;
            color: var(--dark) !important;
            border-color: var(--champagne) !important
        }
.btn.small {
            min-height: 43px !important;
            padding: 0 18px !important
        }
.menu-btn {
            display: none !important;
            background: #fff !important;
            border: 1px solid var(--line) !important;
            padding: 10px !important;
            color: var(--dark) !important
        }
.eyebrow {
            font: 700 10px var(--heading) !important;
            letter-spacing: .22em !important;
            color: var(--gold) !important;
            text-transform: uppercase !important;
            display: flex !important;
            align-items: center !important;
            gap: 12px !important;
            margin-bottom: 21px !important
        }
.eyebrow:before {
            content: "" !important;
            width: 6px !important;
            height: 6px !important;
            background: var(--gold) !important;
            transform: rotate(45deg) !important;
            flex-shrink: 0 !important
        }
.gold {
            color: var(--gold) !important
        }
.lead {
            font-size: 16px !important;
            color: var(--muted) !important;
            max-width: 570px !important;
            margin-top: 25px !important;
            line-height: 1.85 !important
        }
.crumb {
            padding: 23px 0 0 !important;
            font-size: 11px !important;
            color: var(--muted) !important;
            display: flex !important;
            gap: 9px !important;
            align-items: center !important
        }
.crumb svg {
            width: 12px !important;
            height: 12px !important
        }
.pattern {
            position: relative !important;
            overflow: hidden !important
        }
.pattern:before {
            content: "" !important;
            position: absolute !important;
            inset: 0 !important;
            opacity: .045 !important;
            pointer-events: none !important;
            background-image: repeating-linear-gradient(45deg, transparent 0 17px, var(--champagne) 17px 18px, transparent 18px 35px), repeating-linear-gradient(-45deg, transparent 0 17px, var(--champagne) 17px 18px, transparent 18px 35px) !important
        }
.pattern>* {
            position: relative !important
        }
.section {
            padding: 83px 0 !important
        }
.section.soft {
            background: var(--soft) !important
        }
.section-top {
            display: flex !important;
            align-items: flex-end !important;
            justify-content: space-between !important;
            gap: 35px !important;
            margin-bottom: 36px !important
        }
.section-top p {
            max-width: 430px !important;
            font-size: 14px !important;
            color: var(--muted) !important
        }
.fine-rule {
            height: 1px !important;
            background: var(--gold) !important;
            width: 76px !important;
            margin: 24px 0 !important
        }
.text-link {
            margin-top: auto !important;
            padding-top: 8px !important;
            display: inline-flex !important;
            gap: 10px !important;
            align-items: center !important;
            font-size: 10px !important;
            font-weight: 700 !important;
            letter-spacing: .1em !important;
            text-transform: uppercase !important;
            color: var(--green) !important
        }
.text-link svg {
            width: 16px !important;
            height: 16px !important
        }
.cta {
            background: var(--dark) !important;
            color: #fff !important;
            border-top: 3px solid var(--gold) !important
        }
.cta-inner {
            padding: 51px 0 !important;
            display: flex !important;
            justify-content: space-between !important;
            align-items: center !important;
            gap: 35px !important
        }
.cta h2 {
            color: #fff !important;
            font-size: clamp(26px, 3vw, 39px) !important
        }
.cta p {
            font-size: 13px !important;
            color: #d5dfd8 !important;
            margin-top: 12px !important
        }
.footer {
            background: #fff !important
        }
.footer-main {
            padding: 42px 0 !important;
            display: grid !important;
            grid-template-columns: 1fr 1fr 1.1fr !important;
            gap: 55px !important
        }
.footer .brand {
            width: max-content !important
        }
.footer-tag {
            font: 600 9px var(--heading) !important;
            letter-spacing: .17em !important;
            color: var(--gold) !important;
            text-transform: uppercase !important;
            margin-top: 13px !important
        }
.footer-title {
            font: 700 10px var(--heading) !important;
            letter-spacing: .15em !important;
            text-transform: uppercase !important;
            color: var(--dark) !important;
            margin: 13px 0 18px !important
        }
.contact-item {
            display: flex !important;
            align-items: flex-start !important;
            gap: 10px !important;
            font-size: 12px !important;
            line-height: 1.8 !important;
            color: var(--muted) !important;
            margin-bottom: 11px !important
        }
.contact-item svg {
            width: 15px !important;
            height: 15px !important;
            color: var(--green) !important;
            margin-top: 3px !important
        }
.footer-bottom {
            padding: 18px 0 !important;
            border-top: 1px solid var(--line) !important;
            display: flex !important;
            justify-content: space-between !important;
            gap: 20px !important;
            font-size: 10px !important;
            color: var(--muted) !important
        }
.dialog {
            border: 0 !important;
            padding: 0 !important;
            max-width: calc(100vw - 34px) !important;
            width: 570px !important;
            max-height: 90vh !important;
            background: #fff !important;
            color: var(--ink) !important;
            box-shadow: 0 30px 90px #0004 !important
        }
.dialog::backdrop {
            background: #003021a6 !important;
            backdrop-filter: blur(4px) !important
        }
.dialog-inner {
            padding: 34px !important
        }
.dialog-head {
            display: flex !important;
            justify-content: space-between !important;
            gap: 20px !important;
            align-items: flex-start !important;
            margin-bottom: 24px !important
        }
.dialog h2 {
            font-size: 27px !important
        }
.close-btn {
            border: 1px solid var(--line) !important;
            background: #fff !important;
            padding: 7px !important;
            color: var(--dark) !important
        }
.field {
            display: block !important;
            margin-bottom: 16px !important;
            font-size: 12px !important;
            font-weight: 600 !important
        }
.field input, .field select, .field textarea {
            display: block !important;
            width: 100% !important;
            padding: 11px 12px !important;
            margin-top: 7px !important;
            border: 1px solid #cbd3ca !important;
            background: #fff !important;
            border-radius: 0 !important;
            font-size: 13px !important;
            color: var(--ink) !important
        }
.field textarea {
            min-height: 105px !important;
            resize: vertical !important
        }
.form-note {
            font-size: 11px !important;
            color: var(--muted) !important;
            margin: 14px 0 !important;
            line-height: 1.6 !important
        }
:focus-visible {
            outline: 3px solid var(--gold) !important;
            outline-offset: 4px !important
        }
.skip {
            position: fixed !important;
            top: -100px !important;
            left: 15px !important;
            z-index: 100 !important;
            background: var(--dark) !important;
            color: #fff !important;
            padding: 12px !important
        }
.skip:focus {
            top: 10px !important
        }
@keyframes rise {
            from {
                opacity: 0;
                transform: translateY(14px)
            }

            to {
                opacity: 1;
                transform: translateY(0)
            }
        }
@media (max-width:1100px){.wrap {
                width: calc(100% - 64px) !important
            }
.nav {
                gap: 20px !important
            }
.footer-main {
                gap: 27px !important
            }}
@media (max-width:800px){.wrap {
                width: calc(100% - 44px) !important
            }
.header-inner {
                min-height: 79px !important
            }
.menu-btn {
                display: block !important
            }
.nav {
                display: none !important;
                position: absolute !important;
                left: 0 !important;
                right: 0 !important;
                top: 79px !important;
                background: #fff !important;
                padding: 20px 24px 26px !important;
                border-bottom: 1px solid var(--line) !important;
                flex-direction: column !important;
                align-items: stretch !important;
                gap: 7px !important
            }
.nav.open {
                display: flex !important
            }
.nav-link.active:after {
                right: 80% !important
            }
.lead {
                font-size: 15px !important
            }
.section {
                padding: 56px 0 !important
            }
.section-top {
                align-items: flex-start !important;
                flex-direction: column !important;
                gap: 20px !important
            }
.section-top p {
                max-width: 600px !important
            }
.cta-inner {
                flex-direction: column !important;
                align-items: flex-start !important;
                gap: 25px !important
            }
.footer-main {
                grid-template-columns: 1fr 1fr !important;
                gap: 30px !important
            }
.footer-brand {
                grid-column: 1/-1 !important
            }}
@media (max-width:500px){.wrap {
                width: calc(100% - 38px) !important
            }
.eyebrow {
                font-size: 9px !important;
                letter-spacing: .16em !important
            }
.footer-main {
                grid-template-columns: 1fr !important;
                gap: 18px !important
            }
.footer-brand {
                grid-column: auto !important
            }
.footer-bottom {
                flex-direction: column !important;
                gap: 8px !important
            }
.dialog-inner {
                padding: 24px !important
            }
.section-top {
                margin-bottom: 27px !important
            }
.cta-inner {
                padding: 38px 0 !important
            }}
@media (prefers-reduced-motion:reduce){html {
                scroll-behavior: auto !important
            }
*, *:before, *:after {
                animation: none !important;
                transition: none !important
            }}
/* Official asset sizing carried over from the supplied homepage. */
:root { --emerald: var(--green); --bright: #006847; --paper: var(--white); }
body { overflow-x: clip !important; }
.brand { gap: 0 !important; min-width: 0 !important; }
.brand img { padding-right: 10px !important; height: 87px !important; width: auto !important; object-fit: contain !important; mix-blend-mode: multiply !important; }
.header-inner { min-height: 110px !important; }
.footer .brand { max-width: 100% !important; }
.contact-item span { min-width: 0 !important; overflow-wrap: anywhere !important; }
.nav-link:hover { color: var(--green) !important; }
.footer .text-link { display: inline-flex !important; align-items: center !important; gap: 10px !important; padding-top: 8px !important; font-size: 10px !important; font-weight: 700 !important; letter-spacing: .1em !important; text-transform: uppercase !important; color: var(--green) !important; }
.footer .text-link svg { width: 16px !important; height: 16px !important; }
[hidden] { display: none !important; }
@media (max-width: 1100px) { .brand img { width: 205px !important; } .nav { gap: 19px !important; } }
@media (min-width: 801px) and (max-width: 1100px) { .header-inner { gap: 16px !important; } .header .brand img:first-child { width: 100px !important; } .header .brand img:last-child { width: 190px !important; } }
@media (max-width: 800px) { .header-inner { min-height: 90px !important; } .brand img { width: 190px !important; height: 73px !important; } .nav { top: 90px !important; } }
@media (max-width: 540px) { .header-inner { min-height: 78px !important; gap: 12px !important; } .brand img:first-child { width: 100px !important; height: 66px !important; } .brand img:last-child { width: 168px !important; height: 66px !important; } .nav { top: 78px !important; } .menu-btn { padding: 8px !important; flex-shrink: 0 !important; } }
@media (max-width: 380px) { .header .brand img:first-child { width: 70px !important; } .header .brand img:last-child { width: 145px !important; } }
