:root {
    --blue:#262261;
    --green:#00713f;
    --white:#fff;
    --ink:#252b35;
    --muted:#5f6570;
    --line:#e3e6ea;
    --width:1080px;
}

* {
    box-sizing:border-box
}

html {
    scroll-behavior:smooth
}

body {
    margin:0;
    background:var(--white);
    color:var(--ink);
    font:16px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif
}

a {
    color:var(--green)
}

a:hover {
    text-decoration:none
}

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

.container {
    width:min(calc(100% - 48px),var(--width));
    margin:auto
}

.skip {
    position:absolute;
    left:-999px;
    top:0;
    background:#fff;
    padding:12px;
    z-index:10
}

.skip:focus {
    left:12px
}

.site-header {
    border-bottom:1px solid var(--line);
    background:white
}

.header-inner {
     display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 36px;
    min-height: 116px;
    padding: 30px 0 25px;
}

.brand {
    display:inline-flex;
    align-items:center;
    text-decoration:none
}

.brand img {
    width:170px;
    display:block
}

nav {
    display:flex;
    gap:34px;
    align-items:center
}

nav a {
    color:var(--blue);
    font-size:.93rem;
    font-weight:650;
    text-decoration:none
}

nav a:hover,nav a[aria-current="page"] {
    text-decoration:underline;
    text-decoration-color:var(--green);
    text-decoration-thickness:2px;
    text-underline-offset:8px
}

.nav-contactv{
    border:1px solid var(--green);
    border-radius:4px;
    padding:9px 18px
}

.hero {
    padding:30px 0 30px
}

.eyebrow {
    color:var(--green);
    text-transform:uppercase;
    letter-spacing:.15em;
    font-size:.75rem;
    font-weight:750;
    margin:0 0 22px
}

h1,h2,h3 {
    color:var(--blue);
    line-height:1.16;
    letter-spacing:-.035em
}

h1 {
    font-size:clamp(2.8rem,6vw,5rem);
    font-weight:750;
    max-width:830px;
    margin:0 0 25px
}

h2 {
    font-size:clamp(2rem,4vw,2.9rem);
    margin:0 0 18px
}

h3 {
    font-size:1.24rem;
    margin:0 0 10px
}

.lead {
    max-width:650px;
    font-size:1.15rem;
    color:var(--muted);
    margin:0 0 30px
}

.button {
    display:inline-block;
    color:white;
    background:var(--green);
    border:2px solid var(--green);
    border-radius:4px;
    font-weight:700;
    font-size:.94rem;
    text-decoration:none;
    padding:12px 23px;
    cursor:pointer
}

.button:hover {
    background:#00592f;
    border-color:#00592f
}

.secondary {
    background:#fff;
    color:var(--green)
}

.secondary:hover {
    background:#f4f8f5;
    color:var(--green);
    border-color:var(--green)
}

.section {
    padding: 30px 0 30px;
    border-top: 1px solid var(--line);
}

.section-intro {
    max-width:660px;
    color:var(--muted);
    margin:0 0 25px
}

.service-list {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:70px;
    list-style:none;
    padding:0;
    margin:32px 0 0
}

.service-list li {
    padding:16px 0;
    border-bottom:1px solid var(--line);
    color:var(--blue);
    font-weight:600
}

.service-list li:before {
    content:'—';
    color:var(--green);
    margin-right:12px
}

.area {
    display:flex;
    justify-content:space-between;
    gap:44px;
    align-items:center;
}

.area p {
    .area p:not(.eyebrow) {
    max-width: 610px;
    color: var(--muted);
}
}

.counties {
     min-width: 180px;
    white-space: nowrap;
    line-height: 2.2;
    color: var(--blue);
    font-weight: 600;
}

.cta {
    background:var(--blue);
    color:white;
    padding:68px 0
}

.cta h2 {
    color:#fff
}

.cta p {
    color:#e8e7f1;
    max-width:580px
}

.cta .button {
    margin-top:10px
}

.page-head {
    padding:30px 0 30px
}

.page-head h1 {
    font-size:clamp(2.65rem,5vw,4.5rem)
}

.page-head .lead {
    margin-bottom:0
}

.empty-state {
    border-top:1px solid var(--line);
    padding:30px 0 30px;
    max-width:730px
}

.empty-state h2 {
    font-size:1.6rem
}

.empty-state p {
    color:var(--muted)
}

.contact-layout {
    display:grid;
    grid-template-columns:1fr 1.1fr;
    gap:80px;
    padding-bottom:30px
}

.contact-details h2,.contact-form h2 {
    font-size:1.7rem
}

.contact-details p {
    color:var(--muted)
}

.contact-details a {
    overflow-wrap:anywhere
}

.placeholder {
    border-left:3px solid var(--green);
    padding-left:16px
}

.contact-form label {
    display:block;
    color:var(--blue);
    font-weight:650;
    font-size:.9rem;
    margin-bottom:16px
}

.contact-form input,.contact-form textarea {
    display:block;
    width:100%;
    border:1px solid #aeb3bc;
    border-radius:4px;
    font:inherit;
    padding:11px 12px;
    margin-top:6px;
    background:white;
    color:var(--ink)
}

.contact-form input:focus,.contact-form textarea:focus {
    outline:2px solid var(--green);
    outline-offset:2px
}

.contact-form textarea {
    min-height:130px;
    resize:vertical
}

.notice {
    font-size:.87rem;
    color:var(--muted)
}

.site-footer {
    border-top:1px solid var(--line);
    padding:20px 0;
    color:var(--muted);
    font-size:.86rem
}

.footer-inner {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px
}

.footer-inner p {
    margin:0
}

.footer-right {
    text-align:right
}

.footer-right a {
    color:var(--blue)
}

@media(max-width:720px) {
    .container {
        width:min(calc(100% - 36px),var(--width))
    }

    .header-inner {
        flex-direction:column;
        gap:6px;
        padding:18px 0
    }

    .brand {
    display: flex;
    justify-content: center;
    width: 100%;
}
	.logo_header {
    width: 65%;
    max-width: 280px;
    height: auto;
    margin: 0 auto;
}

    nav {
        gap:22px;
        flex-wrap:wrap;
        justify-content:center
    }

    .hero {
        padding:70px 0
    }

    .section {
        padding:56px 0
    }

    .service-list {
        grid-template-columns:1fr;
        margin-top:15px
    }

    .area {
        display:block
    }

    .counties {
        max-width:none
    }

    .contact-layout {
        grid-template-columns:1fr;
        gap:35px
    }

    .page-head {
        padding:60px 0 30px
    }

    .footer-inner {
        display:block
    }

    .footer-right {
        text-align:left;
        margin-top:12px
    }

}
.logo_header {
    width: 43%;
    max-width: 100%;
    height: auto;
    display: block;
}
