.showcase {
    box-sizing: border-box;
    margin-bottom: 2em;
    overflow-wrap: break-word;
}

.showcase .headline {
    font-size: 2em;
    margin: 0 0 0.5em;
    line-height: 1.15;
}

.showcase .text {
    max-width: 60ch;
    font-size: 1.08em;
    margin: 0 0 1em;
}

.showcase img {
    max-width: 100%;
}

.showcase-qh > .shell {
    align-items: center;
    padding-top: 2em;
    gap: 1.5em;
    padding-bottom: 2em;
    display: grid;
    grid-template-columns: minmax(0,1fr);
}

.showcase-qh blockquote {
    font-style: italic;
    font-family: "Noto Serif", Georgia, serif;
    font-size: 1.3em;
    padding: 0.25em 1em;
    margin: 0.5em 0 1em;
    border-left: 4px solid #1C8260;
}

.showcase-qh figure {
    margin: 0;
}

.showcase-qh figure img {
    border-radius: 50%;
    width: 100%;
    aspect-ratio: 1 / 1;
    display: block;
    object-fit: cover;
}

.title-b h1 {
    font-size: 1.5em;
    color: #13201C;
    margin: 0 0 1.25em;
}

.shell {
    max-width: 72em;
    padding-left: 1em;
    box-sizing: border-box;
    margin: 0 auto;
    padding-right: 1em;
}

.grid {
    padding-top: 1.5em;
    padding-bottom: 2.5em;
}

.main {
    min-width: 0;
}

.left {
    margin-top: 2em;
    min-width: 0;
}

.title {
    font-family: "Noto Serif", Georgia, serif;
    font-size: 1.55em;
    margin: 0 0 0.4em;
    line-height: 1.25;
}

.title a {
    text-decoration: none;
    color: #13201C;
}

.title a:hover {
    text-decoration: underline;
    color: #157555;
}

.byline {
    font-size: 0.85em;
    color: #5A6D67;
    margin: 0 0 0.9em;
}

.byline a {
    color: #5A6D67;
}

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

.body h2:not(.title), .dek h2 {
    font-size: 1.15em;
    margin: 1.25em 0 0.5em;
}

.body h3, .dek h3 {
    font-size: 1.02em;
}

.image {
    margin: 0 0 1em;
}

.image img {
    height: auto;
    border-radius: 0;
    width: 100%;
    display: block;
}

.story .title {
    font-size: 2.1em;
    line-height: 1.15;
}

.story {
    border-bottom: 3px solid #13201C;
    padding-bottom: 1.5em;
    margin-bottom: 2em;
}

.post {
    gap: 2em;
    display: grid;
    grid-template-columns: minmax(0,1fr);
    margin-bottom: 2em;
}

.post {
    padding: 0;
    margin: 0;
    list-style: none;
}

.post .article {
    height: 100%;
    background: #E2F3ED;
    border-radius: 0;
    padding: 1.25em;
    box-sizing: border-box;
}

.widget {
    font-size: 0.92em;
    margin-bottom: 1.75em;
}

.heading {
    border-bottom: 2px solid #1C8260;
    font-family: "Noto Serif", Georgia, serif;
    font-size: 1em;
    padding-bottom: 0.35em;
    color: #13201C;
    margin: 0 0 0.6em;
    text-transform: none;
}

.list-two {
    padding: 0;
    margin: 0;
    list-style: none;
}

.list-two li, .list-two > div {
    border-bottom: 1px solid #D2E4DE;
    padding: 0.3em 0;
}

.widget a {
    text-decoration: none;
    color: #157555;
}

.widget a:hover {
    text-decoration: underline;
}

.heading-aux {
    font-family: "Noto Serif", Georgia, serif;
    font-size: 2.1em;
    color: #13201C;
    margin: 0 0 0.5em;
    line-height: 1.2;
}

.meta {
    font-size: 0.88em;
    color: #5A6D67;
    margin: 0 0 1.5em;
}

.meta a {
    color: #5A6D67;
}

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

.foot {
    margin-top: 2.5em;
    padding-top: 1.5em;
    border-top: 1px solid #D2E4DE;
}

.contents {
    background: #E2F3ED;
    border-radius: 0;
    padding: 1em 1.25em;
    margin-bottom: 1.5em;
}

.contents p {
    margin: 0 0 0.4em;
}

.bio {
    border-radius: 0;
    border: 1px solid #D2E4DE;
    padding: 1.25em;
    margin-bottom: 1.5em;
}

.bio p {
    margin: 0 0 0.4em;
}

.further h2 {
    font-size: 1.15em;
}

.pagination {
    margin-top: 1.5em;
    flex-wrap: wrap;
    gap: 1em;
    display: flex;
    justify-content: space-between;
}

.breadcrumb {
    font-size: 0.82em;
    color: #5A6D67;
    margin: 0 0 1em;
}

.breadcrumb a {
    color: #5A6D67;
}

.footer-s2 {
    margin-top: 2.5em;
    border-top: 2px solid #13201C;
    padding: 2em 0 0.5em;
}

.footer-s2 .row {
    gap: 1.5em;
    display: grid;
    grid-template-columns: minmax(0,1fr);
}

.footer-s2 ul, .footer-s2 ol {
    padding: 0;
    margin: 0;
    list-style: none;
}

.footer-s2 .list-two {
    columns: 2;
}

.footer-s2 .credits {
    margin-top: 1.5em;
    font-size: 0.8em;
    color: #5A6D67;
}

.title-aux, h2.title-aux {
    margin: 0 0 1.5em;
}

.title-aux h2, h2.title-aux {
    font-size: 1.9em;
    margin-bottom: 0.35em;
}

.title-aux p {
    color: #5A6D67;
    margin: 0;
}

.card {
    max-width: 100%;
    box-sizing: border-box;
    margin: 1em 0;
}

.card .form {
    gap: 0.6em;
    display: grid;
    grid-template-columns: minmax(0,1fr);
}

.card .group {
    gap: 0.2em;
    display: grid;
    min-width: 0;
}

.card label {
    font-size: 0.85em;
    font-weight: 600;
}

.card input[type=text], .card input[type=tel], .card textarea {
    background: #F4FBF8;
    border-radius: 0;
    width: 100%;
    border: 1px solid #D2E4DE;
    padding: 0.5em 0.6em;
    color: #21302B;
    font: inherit;
    box-sizing: border-box;
}

.card button {
    cursor: pointer;
    background: #1C8260;
    border-radius: 0;
    border: 0;
    padding: 0.65em 1.1em;
    color: #FFFFFF;
    font: inherit;
    font-weight: 700;
}

.card .line {
    font-size: 0.9em;
    margin: 0.6em 0 0;
}

.card .lede {
    margin: 0 0 0.6em;
}

.card-boxed {
    background: #F4FBF8;
    border-radius: 0;
    border: 1px solid #D2E4DE;
    padding: 1.25em;
    color: #21302B;
    box-shadow: 0 10px 30px rgba(0,0,0,.14);
}

.card-inline {
    background: #E2F3ED;
    border-radius: 0;
    padding: 0.9em;
    color: #21302B;
}

.card-tabbed {
    background: #F4FBF8;
    border-top: 4px solid #1C8260;
    padding: 1em;
    color: #21302B;
    box-shadow: 0 6px 20px rgba(0,0,0,.1);
}

.card .group-b {
    border-bottom: 1px solid #D2E4DE;
    flex-wrap: wrap;
    gap: 0;
    display: flex;
}

.card .group-b input {
    height: 1px;
    position: absolute;
    opacity: 0;
    width: 1px;
}

.card .group-b label {
    cursor: pointer;
    border-bottom: 3px solid transparent;
    padding: 0.45em 0.9em;
    color: #5A6D67;
}

.card .group-b input:checked + label {
    color: #13201C;
    border-bottom-color: #1C8260;
}

.card-call {
    background: #E2F3ED;
    border-radius: 0;
    padding: 1em;
    color: #21302B;
    text-align: center;
}

.card .cta {
    background: #1C8260;
    border-radius: 999px;
    text-decoration: none;
    font-size: 1.25em;
    padding: 0.9em 1.6em;
    color: #FFFFFF;
    display: inline-block;
    font-weight: 700;
}

.card-two {
    background: #F4FBF8;
    border-radius: 0;
    border: 2px dashed #D2E4DE;
    padding: 1.1em;
    color: #21302B;
}

.card fieldset {
    border: 0;
    padding: 0;
    gap: 0.5em;
    display: grid;
    margin: 0;
    min-width: 0;
}

.card legend {
    letter-spacing: 0.08em;
    font-size: 0.75em;
    color: #5A6D67;
}

.card details > summary {
    cursor: pointer;
    background: #13201C;
    border-radius: 0;
    padding: 0.5em 1em;
    color: #F4FBF8;
    display: inline-block;
    margin: 0.3em 0;
    list-style: none;
}

.card-compact {
    background: #E2F3ED;
    border-radius: 0;
    border: 1px solid #D2E4DE;
    padding: 1em;
    color: #21302B;
}

.card-fixed {
    background: #E2F3ED;
    border-radius: 0;
    border: 1px solid #D2E4DE;
    padding: 1em;
    color: #21302B;
}

.note {
    background: #E2F3ED;
    border-radius: 0;
    border: 1px solid #D2E4DE;
    padding: 1em 1.15em;
    margin: 0 0 2em;
    border-left: 3px solid #1C8260;
    overflow-wrap: anywhere;
}

.note p {
    margin: 0 0 0.5em;
}

.note ul, .note ol {
    padding-left: 1.25em;
    margin: 0;
}

.note li {
    margin: 0 0 0.35em;
}

.grid.grid-single {
    max-width: 44em;
}

.grid.grid-single {
    padding-top: 1.5em;
    padding-bottom: 2.5em;
}

.grid.grid-single > .main {
    min-width: 0;
}

.head .meta {
    margin: 0 0 1.25em;
}

.entry-dc .head {
    text-align: center;
}

.entry-dc .prose > p:first-of-type::first-letter {
    font-family: "Noto Serif", Georgia, serif;
    font-size: 3.4em;
    color: #1C8260;
    float: left;
    padding-right: 0.4em;
    line-height: 0.9;
}

.brand::before {
    height: 0.9em;
    background: #1C8260;
    content: "";
    border-radius: 0;
    vertical-align: middle;
    width: 0.9em;
    margin-right: 0.45em;
    display: inline-block;
}

.button-aux, .cta, .card button, .search button {
    border-radius: 0;
}

.body a, .prose a {
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
}

.body p, .prose p {
    margin: 0 0 0.6em;
}

body {
    line-height: 1.45;
}

[data-rt]::after {
    content: " · " attr(data-rt);
}

.breadcrumb {
    letter-spacing: 0.08em;
    font-size: 0.72em;
    text-transform: uppercase;
}

.contents {
    background: #E2F3ED;
    border: 1px solid #D2E4DE;
    padding: 1em;
}

.body ul, .prose ul {
    list-style-type: square;
}

.chips a {
    border-radius: 0;
}

.pagination-top {
    margin: 0.5em 0;
    text-align: right;
}

.entry-pg-band .head {
    background: #1C8260;
    border-radius: 0;
    padding: 1.25em 1em;
    color: #FFFFFF;
    margin-bottom: 1.25em;
}

.entry-pg-band .heading-aux {
    color: #FFFFFF;
    margin: 0;
}

table.list-alt td {
    border-bottom: 1px solid #D2E4DE;
    padding: 0.4em 0.75em;
}

.pagination-more a {
    background: #E2F3ED;
    border-radius: 0;
    width: 100%;
    padding: 0.8em;
    display: block;
    text-align: center;
    font-weight: 700;
}

@media (min-width: 720px) {
    .showcase .headline {
        font-size: 2.6em;
    }
    .showcase-qh > .shell {
        grid-template-columns: minmax(0,2fr) minmax(0,1fr);
    }
    .grid {
        align-items: flex-start;
        gap: 2.25em;
        display: flex;
    }
    .main {
        flex: 1 1 0;
        order: 2;
    }
    .left {
        flex: 0 0 17em;
        margin-top: 0;
        order: 1;
    }
    .footer-s2 .row {
        grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    }
    .card-inline .form {
        align-items: end;
        grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto;
    }
    .grid.grid-single {
        display: block;
    }
}

@media (min-width: 1024px) {
    .post {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 719px) {
    .card-fixed {
        z-index: 50;
        position: fixed;
        border-radius: 0;
        left: 0;
        bottom: 0;
        border-top: 2px solid #1C8260;
        border: 0;
        padding: 0.5em 0.6em;
        margin: 0;
        box-shadow: 0 -6px 18px rgba(0,0,0,.15);
        right: 0;
    }
    .card-fixed > .lede {
        display: none;
    }
    .card-fixed .form {
        align-items: center;
        gap: 0.4em;
        grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto;
    }
    .card-fixed .group label {
        clip: rect(0 0 0 0);
        height: 1px;
        position: absolute;
        width: 1px;
        white-space: nowrap;
        overflow: hidden;
    }
    .card-fixed button {
        padding: 0.55em 0.7em;
    }
    body:has(.card-fixed) {
        padding-bottom: 4em;
    }
}
